authorgravatar for hello@nektro.netMeghan Denny <hello@nektro.net> 2026-01-20 23:08:53 -08:00
committergravatar for hello@nektro.netMeghan Denny <hello@nektro.net> 2026-01-20 23:08:53 -08:00
log4135860076538f7718ec2a6dd8e06c40c0449c11
tree056bfc1e1023a088133a66d4bdcbb8af3d779364
parentf592a52d3d49814e12d9311974bdc4d844c7c510

pass toAsciiFail

All 19176 tests passed.

3 files changed, 11557 insertions(+), 2 deletions(-)

generate.ts+2-2
...@@ -243,8 +243,8 @@ fn toAsciiFail(...@@ -243,8 +243,8 @@ fn toAsciiFail(
243 if (toAsciiTStatus === "[]") w.write(`test { try toAsciiPass("${E(source)}", "${E(toAsciiT)}", true); }\n`);243 if (toAsciiTStatus === "[]") w.write(`test { try toAsciiPass("${E(source)}", "${E(toAsciiT)}", true); }\n`);
244244
245 if (toUnicodeStatus !== "[]") w.write(`test { try toUnicodeFail("${E(source)}"); } // ${toUnicodeStatus}\n`);245 if (toUnicodeStatus !== "[]") w.write(`test { try toUnicodeFail("${E(source)}"); } // ${toUnicodeStatus}\n`);
246 // if (toAsciiNStatus !== "[]") w.write(`test { try toAsciiFail("${E(source)}", false); } // ${toAsciiNStatus}\n`);246 if (toAsciiNStatus !== "[]") w.write(`test { try toAsciiFail("${E(source)}", false); } // ${toAsciiNStatus}\n`);
247 // if (toAsciiTStatus !== "[]") w.write(`test { try toAsciiFail("${E(source)}", true); } // ${toAsciiTStatus}\n`);247 if (toAsciiTStatus !== "[]") w.write(`test { try toAsciiFail("${E(source)}", true); } // ${toAsciiTStatus}\n`);
248 }248 }
249249
250 w.flush();250 w.flush();
idna.zig+1
...@@ -41,6 +41,7 @@ pub fn ToASCII(...@@ -41,6 +41,7 @@ pub fn ToASCII(
4141
42 if (VerifyDnsLength) {42 if (VerifyDnsLength) {
43 // 1. The length of the domain name, excluding the root label and its dot, is from 1 to 253.43 // 1. The length of the domain name, excluding the root label and its dot, is from 1 to 253.
44 if (map.list.items.len > 253) return error.IDNAFailure;
44 // 2. The length of each label is from 1 to 63.45 // 2. The length of each label is from 1 to 63.
45 for (map.lengths.items, 0..) |l, n| {46 for (map.lengths.items, 0..) |l, n| {
46 if (n % 2 == 1) continue;47 if (n % 2 == 1) continue;
testv2.zig+11554
...@@ -69,15 +69,35 @@ test { try toUnicodePass("xn--fa-hia.de", "fa\xc3\x9f.de"); }...@@ -69,15 +69,35 @@ test { try toUnicodePass("xn--fa-hia.de", "fa\xc3\x9f.de"); }
69test { try toAsciiPass("xn--fa-hia.de", "xn--fa-hia.de", false); }69test { try toAsciiPass("xn--fa-hia.de", "xn--fa-hia.de", false); }
70test { try toAsciiPass("xn--fa-hia.de", "xn--fa-hia.de", true); }70test { try toAsciiPass("xn--fa-hia.de", "xn--fa-hia.de", true); }
71test { try toUnicodeFail("\xc3\xa0\xd7\x90"); } // [B5, B6]71test { try toUnicodeFail("\xc3\xa0\xd7\x90"); } // [B5, B6]
72test { try toAsciiFail("\xc3\xa0\xd7\x90", false); } // [B5, B6]
73test { try toAsciiFail("\xc3\xa0\xd7\x90", true); } // [B5, B6]
72test { try toUnicodeFail("a\xcc\x80\xd7\x90"); } // [B5, B6]74test { try toUnicodeFail("a\xcc\x80\xd7\x90"); } // [B5, B6]
75test { try toAsciiFail("a\xcc\x80\xd7\x90", false); } // [B5, B6]
76test { try toAsciiFail("a\xcc\x80\xd7\x90", true); } // [B5, B6]
73test { try toUnicodeFail("A\xcc\x80\xd7\x90"); } // [B5, B6]77test { try toUnicodeFail("A\xcc\x80\xd7\x90"); } // [B5, B6]
78test { try toAsciiFail("A\xcc\x80\xd7\x90", false); } // [B5, B6]
79test { try toAsciiFail("A\xcc\x80\xd7\x90", true); } // [B5, B6]
74test { try toUnicodeFail("\xc3\x80\xd7\x90"); } // [B5, B6]80test { try toUnicodeFail("\xc3\x80\xd7\x90"); } // [B5, B6]
81test { try toAsciiFail("\xc3\x80\xd7\x90", false); } // [B5, B6]
82test { try toAsciiFail("\xc3\x80\xd7\x90", true); } // [B5, B6]
75test { try toUnicodeFail("xn--0ca24w"); } // [B5, B6]83test { try toUnicodeFail("xn--0ca24w"); } // [B5, B6]
84test { try toAsciiFail("xn--0ca24w", false); } // [B5, B6]
85test { try toAsciiFail("xn--0ca24w", true); } // [B5, B6]
76test { try toUnicodeFail("0\xc3\xa0.\xd7\x90"); } // [B1]86test { try toUnicodeFail("0\xc3\xa0.\xd7\x90"); } // [B1]
87test { try toAsciiFail("0\xc3\xa0.\xd7\x90", false); } // [B1]
88test { try toAsciiFail("0\xc3\xa0.\xd7\x90", true); } // [B1]
77test { try toUnicodeFail("0a\xcc\x80.\xd7\x90"); } // [B1]89test { try toUnicodeFail("0a\xcc\x80.\xd7\x90"); } // [B1]
90test { try toAsciiFail("0a\xcc\x80.\xd7\x90", false); } // [B1]
91test { try toAsciiFail("0a\xcc\x80.\xd7\x90", true); } // [B1]
78test { try toUnicodeFail("0A\xcc\x80.\xd7\x90"); } // [B1]92test { try toUnicodeFail("0A\xcc\x80.\xd7\x90"); } // [B1]
93test { try toAsciiFail("0A\xcc\x80.\xd7\x90", false); } // [B1]
94test { try toAsciiFail("0A\xcc\x80.\xd7\x90", true); } // [B1]
79test { try toUnicodeFail("0\xc3\x80.\xd7\x90"); } // [B1]95test { try toUnicodeFail("0\xc3\x80.\xd7\x90"); } // [B1]
96test { try toAsciiFail("0\xc3\x80.\xd7\x90", false); } // [B1]
97test { try toAsciiFail("0\xc3\x80.\xd7\x90", true); } // [B1]
80test { try toUnicodeFail("xn--0-sfa.xn--4db"); } // [B1]98test { try toUnicodeFail("xn--0-sfa.xn--4db"); } // [B1]
99test { try toAsciiFail("xn--0-sfa.xn--4db", false); } // [B1]
100test { try toAsciiFail("xn--0-sfa.xn--4db", true); } // [B1]
81test { try toUnicodePass("\xc3\xa0.\xd7\x90\xcc\x88", "\xc3\xa0.\xd7\x90\xcc\x88"); }101test { try toUnicodePass("\xc3\xa0.\xd7\x90\xcc\x88", "\xc3\xa0.\xd7\x90\xcc\x88"); }
82test { try toAsciiPass("\xc3\xa0.\xd7\x90\xcc\x88", "xn--0ca.xn--ssa73l", false); }102test { try toAsciiPass("\xc3\xa0.\xd7\x90\xcc\x88", "xn--0ca.xn--ssa73l", false); }
83test { try toAsciiPass("\xc3\xa0.\xd7\x90\xcc\x88", "xn--0ca.xn--ssa73l", true); }103test { try toAsciiPass("\xc3\xa0.\xd7\x90\xcc\x88", "xn--0ca.xn--ssa73l", true); }
...@@ -94,22 +114,56 @@ test { try toUnicodePass("xn--0ca.xn--ssa73l", "\xc3\xa0.\xd7\x90\xcc\x88"); }...@@ -94,22 +114,56 @@ test { try toUnicodePass("xn--0ca.xn--ssa73l", "\xc3\xa0.\xd7\x90\xcc\x88"); }
94test { try toAsciiPass("xn--0ca.xn--ssa73l", "xn--0ca.xn--ssa73l", false); }114test { try toAsciiPass("xn--0ca.xn--ssa73l", "xn--0ca.xn--ssa73l", false); }
95test { try toAsciiPass("xn--0ca.xn--ssa73l", "xn--0ca.xn--ssa73l", true); }115test { try toAsciiPass("xn--0ca.xn--ssa73l", "xn--0ca.xn--ssa73l", true); }
96test { try toUnicodeFail("\xc3\xa0.\xd7\x900\xd9\xa0\xd7\x90"); } // [B4]116test { try toUnicodeFail("\xc3\xa0.\xd7\x900\xd9\xa0\xd7\x90"); } // [B4]
117test { try toAsciiFail("\xc3\xa0.\xd7\x900\xd9\xa0\xd7\x90", false); } // [B4]
118test { try toAsciiFail("\xc3\xa0.\xd7\x900\xd9\xa0\xd7\x90", true); } // [B4]
97test { try toUnicodeFail("a\xcc\x80.\xd7\x900\xd9\xa0\xd7\x90"); } // [B4]119test { try toUnicodeFail("a\xcc\x80.\xd7\x900\xd9\xa0\xd7\x90"); } // [B4]
120test { try toAsciiFail("a\xcc\x80.\xd7\x900\xd9\xa0\xd7\x90", false); } // [B4]
121test { try toAsciiFail("a\xcc\x80.\xd7\x900\xd9\xa0\xd7\x90", true); } // [B4]
98test { try toUnicodeFail("A\xcc\x80.\xd7\x900\xd9\xa0\xd7\x90"); } // [B4]122test { try toUnicodeFail("A\xcc\x80.\xd7\x900\xd9\xa0\xd7\x90"); } // [B4]
123test { try toAsciiFail("A\xcc\x80.\xd7\x900\xd9\xa0\xd7\x90", false); } // [B4]
124test { try toAsciiFail("A\xcc\x80.\xd7\x900\xd9\xa0\xd7\x90", true); } // [B4]
99test { try toUnicodeFail("\xc3\x80.\xd7\x900\xd9\xa0\xd7\x90"); } // [B4]125test { try toUnicodeFail("\xc3\x80.\xd7\x900\xd9\xa0\xd7\x90"); } // [B4]
126test { try toAsciiFail("\xc3\x80.\xd7\x900\xd9\xa0\xd7\x90", false); } // [B4]
127test { try toAsciiFail("\xc3\x80.\xd7\x900\xd9\xa0\xd7\x90", true); } // [B4]
100test { try toUnicodeFail("xn--0ca.xn--0-zhcb98c"); } // [B4]128test { try toUnicodeFail("xn--0ca.xn--0-zhcb98c"); } // [B4]
129test { try toAsciiFail("xn--0ca.xn--0-zhcb98c", false); } // [B4]
130test { try toAsciiFail("xn--0ca.xn--0-zhcb98c", true); } // [B4]
101test { try toUnicodeFail("\xcc\x88.\xd7\x90"); } // [B1, V6]131test { try toUnicodeFail("\xcc\x88.\xd7\x90"); } // [B1, V6]
132test { try toAsciiFail("\xcc\x88.\xd7\x90", false); } // [B1, V6]
133test { try toAsciiFail("\xcc\x88.\xd7\x90", true); } // [B1, V6]
102test { try toUnicodeFail("xn--ssa.xn--4db"); } // [B1, V6]134test { try toUnicodeFail("xn--ssa.xn--4db"); } // [B1, V6]
135test { try toAsciiFail("xn--ssa.xn--4db", false); } // [B1, V6]
136test { try toAsciiFail("xn--ssa.xn--4db", true); } // [B1, V6]
103test { try toUnicodeFail("\xc3\xa0.\xd7\x900\xd9\xa0"); } // [B4]137test { try toUnicodeFail("\xc3\xa0.\xd7\x900\xd9\xa0"); } // [B4]
138test { try toAsciiFail("\xc3\xa0.\xd7\x900\xd9\xa0", false); } // [B4]
139test { try toAsciiFail("\xc3\xa0.\xd7\x900\xd9\xa0", true); } // [B4]
104test { try toUnicodeFail("a\xcc\x80.\xd7\x900\xd9\xa0"); } // [B4]140test { try toUnicodeFail("a\xcc\x80.\xd7\x900\xd9\xa0"); } // [B4]
141test { try toAsciiFail("a\xcc\x80.\xd7\x900\xd9\xa0", false); } // [B4]
142test { try toAsciiFail("a\xcc\x80.\xd7\x900\xd9\xa0", true); } // [B4]
105test { try toUnicodeFail("A\xcc\x80.\xd7\x900\xd9\xa0"); } // [B4]143test { try toUnicodeFail("A\xcc\x80.\xd7\x900\xd9\xa0"); } // [B4]
144test { try toAsciiFail("A\xcc\x80.\xd7\x900\xd9\xa0", false); } // [B4]
145test { try toAsciiFail("A\xcc\x80.\xd7\x900\xd9\xa0", true); } // [B4]
106test { try toUnicodeFail("\xc3\x80.\xd7\x900\xd9\xa0"); } // [B4]146test { try toUnicodeFail("\xc3\x80.\xd7\x900\xd9\xa0"); } // [B4]
147test { try toAsciiFail("\xc3\x80.\xd7\x900\xd9\xa0", false); } // [B4]
148test { try toAsciiFail("\xc3\x80.\xd7\x900\xd9\xa0", true); } // [B4]
107test { try toUnicodeFail("xn--0ca.xn--0-zhc74b"); } // [B4]149test { try toUnicodeFail("xn--0ca.xn--0-zhc74b"); } // [B4]
150test { try toAsciiFail("xn--0ca.xn--0-zhc74b", false); } // [B4]
151test { try toAsciiFail("xn--0ca.xn--0-zhc74b", true); } // [B4]
108test { try toUnicodeFail("\xc3\xa0\xcb\x87.\xd7\x90"); } // [B6]152test { try toUnicodeFail("\xc3\xa0\xcb\x87.\xd7\x90"); } // [B6]
153test { try toAsciiFail("\xc3\xa0\xcb\x87.\xd7\x90", false); } // [B6]
154test { try toAsciiFail("\xc3\xa0\xcb\x87.\xd7\x90", true); } // [B6]
109test { try toUnicodeFail("a\xcc\x80\xcb\x87.\xd7\x90"); } // [B6]155test { try toUnicodeFail("a\xcc\x80\xcb\x87.\xd7\x90"); } // [B6]
156test { try toAsciiFail("a\xcc\x80\xcb\x87.\xd7\x90", false); } // [B6]
157test { try toAsciiFail("a\xcc\x80\xcb\x87.\xd7\x90", true); } // [B6]
110test { try toUnicodeFail("A\xcc\x80\xcb\x87.\xd7\x90"); } // [B6]158test { try toUnicodeFail("A\xcc\x80\xcb\x87.\xd7\x90"); } // [B6]
159test { try toAsciiFail("A\xcc\x80\xcb\x87.\xd7\x90", false); } // [B6]
160test { try toAsciiFail("A\xcc\x80\xcb\x87.\xd7\x90", true); } // [B6]
111test { try toUnicodeFail("\xc3\x80\xcb\x87.\xd7\x90"); } // [B6]161test { try toUnicodeFail("\xc3\x80\xcb\x87.\xd7\x90"); } // [B6]
162test { try toAsciiFail("\xc3\x80\xcb\x87.\xd7\x90", false); } // [B6]
163test { try toAsciiFail("\xc3\x80\xcb\x87.\xd7\x90", true); } // [B6]
112test { try toUnicodeFail("xn--0ca88g.xn--4db"); } // [B6]164test { try toUnicodeFail("xn--0ca88g.xn--4db"); } // [B6]
165test { try toAsciiFail("xn--0ca88g.xn--4db", false); } // [B6]
166test { try toAsciiFail("xn--0ca88g.xn--4db", true); } // [B6]
113test { try toUnicodePass("\xc3\xa0\xcc\x88.\xd7\x90", "\xc3\xa0\xcc\x88.\xd7\x90"); }167test { try toUnicodePass("\xc3\xa0\xcc\x88.\xd7\x90", "\xc3\xa0\xcc\x88.\xd7\x90"); }
114test { try toAsciiPass("\xc3\xa0\xcc\x88.\xd7\x90", "xn--0ca81i.xn--4db", false); }168test { try toAsciiPass("\xc3\xa0\xcc\x88.\xd7\x90", "xn--0ca81i.xn--4db", false); }
115test { try toAsciiPass("\xc3\xa0\xcc\x88.\xd7\x90", "xn--0ca81i.xn--4db", true); }169test { try toAsciiPass("\xc3\xa0\xcc\x88.\xd7\x90", "xn--0ca81i.xn--4db", true); }
...@@ -127,14 +181,19 @@ test { try toAsciiPass("xn--0ca81i.xn--4db", "xn--0ca81i.xn--4db", false); }...@@ -127,14 +181,19 @@ test { try toAsciiPass("xn--0ca81i.xn--4db", "xn--0ca81i.xn--4db", false); }
127test { try toAsciiPass("xn--0ca81i.xn--4db", "xn--0ca81i.xn--4db", true); }181test { try toAsciiPass("xn--0ca81i.xn--4db", "xn--0ca81i.xn--4db", true); }
128test { try toAsciiPass("a\xe2\x80\x8cb", "ab", true); }182test { try toAsciiPass("a\xe2\x80\x8cb", "ab", true); }
129test { try toUnicodeFail("a\xe2\x80\x8cb"); } // [C1]183test { try toUnicodeFail("a\xe2\x80\x8cb"); } // [C1]
184test { try toAsciiFail("a\xe2\x80\x8cb", false); } // [C1]
130test { try toAsciiPass("A\xe2\x80\x8cB", "ab", true); }185test { try toAsciiPass("A\xe2\x80\x8cB", "ab", true); }
131test { try toUnicodeFail("A\xe2\x80\x8cB"); } // [C1]186test { try toUnicodeFail("A\xe2\x80\x8cB"); } // [C1]
187test { try toAsciiFail("A\xe2\x80\x8cB", false); } // [C1]
132test { try toAsciiPass("A\xe2\x80\x8cb", "ab", true); }188test { try toAsciiPass("A\xe2\x80\x8cb", "ab", true); }
133test { try toUnicodeFail("A\xe2\x80\x8cb"); } // [C1]189test { try toUnicodeFail("A\xe2\x80\x8cb"); } // [C1]
190test { try toAsciiFail("A\xe2\x80\x8cb", false); } // [C1]
134test { try toUnicodePass("ab", "ab"); }191test { try toUnicodePass("ab", "ab"); }
135test { try toAsciiPass("ab", "ab", false); }192test { try toAsciiPass("ab", "ab", false); }
136test { try toAsciiPass("ab", "ab", true); }193test { try toAsciiPass("ab", "ab", true); }
137test { try toUnicodeFail("xn--ab-j1t"); } // [C1]194test { try toUnicodeFail("xn--ab-j1t"); } // [C1]
195test { try toAsciiFail("xn--ab-j1t", false); } // [C1]
196test { try toAsciiFail("xn--ab-j1t", true); } // [C1]
138test { try toUnicodePass("a\xe0\xa5\x8d\xe2\x80\x8cb", "a\xe0\xa5\x8d\xe2\x80\x8cb"); }197test { try toUnicodePass("a\xe0\xa5\x8d\xe2\x80\x8cb", "a\xe0\xa5\x8d\xe2\x80\x8cb"); }
139test { try toAsciiPass("a\xe0\xa5\x8d\xe2\x80\x8cb", "xn--ab-fsf604u", false); }198test { try toAsciiPass("a\xe0\xa5\x8d\xe2\x80\x8cb", "xn--ab-fsf604u", false); }
140test { try toAsciiPass("a\xe0\xa5\x8d\xe2\x80\x8cb", "xn--ab-fsf", true); }199test { try toAsciiPass("a\xe0\xa5\x8d\xe2\x80\x8cb", "xn--ab-fsf", true); }
...@@ -160,25 +219,56 @@ test { try toUnicodePass("xn--ab-fsf604u", "a\xe0\xa5\x8d\xe2\x80\x8cb"); }...@@ -160,25 +219,56 @@ test { try toUnicodePass("xn--ab-fsf604u", "a\xe0\xa5\x8d\xe2\x80\x8cb"); }
160test { try toAsciiPass("xn--ab-fsf604u", "xn--ab-fsf604u", false); }219test { try toAsciiPass("xn--ab-fsf604u", "xn--ab-fsf604u", false); }
161test { try toAsciiPass("xn--ab-fsf604u", "xn--ab-fsf604u", true); }220test { try toAsciiPass("xn--ab-fsf604u", "xn--ab-fsf604u", true); }
162test { try toUnicodeFail("\xcc\x88\xe2\x80\x8c\xcc\x88\xd8\xa8b"); } // [B1, C1, V6]221test { try toUnicodeFail("\xcc\x88\xe2\x80\x8c\xcc\x88\xd8\xa8b"); } // [B1, C1, V6]
222test { try toAsciiFail("\xcc\x88\xe2\x80\x8c\xcc\x88\xd8\xa8b", false); } // [B1, C1, V6]
223test { try toAsciiFail("\xcc\x88\xe2\x80\x8c\xcc\x88\xd8\xa8b", true); } // [B1, V6]
163test { try toUnicodeFail("\xcc\x88\xe2\x80\x8c\xcc\x88\xd8\xa8B"); } // [B1, C1, V6]224test { try toUnicodeFail("\xcc\x88\xe2\x80\x8c\xcc\x88\xd8\xa8B"); } // [B1, C1, V6]
225test { try toAsciiFail("\xcc\x88\xe2\x80\x8c\xcc\x88\xd8\xa8B", false); } // [B1, C1, V6]
226test { try toAsciiFail("\xcc\x88\xe2\x80\x8c\xcc\x88\xd8\xa8B", true); } // [B1, V6]
164test { try toUnicodeFail("xn--b-bcba413a"); } // [B1, V6]227test { try toUnicodeFail("xn--b-bcba413a"); } // [B1, V6]
228test { try toAsciiFail("xn--b-bcba413a", false); } // [B1, V6]
229test { try toAsciiFail("xn--b-bcba413a", true); } // [B1, V6]
165test { try toUnicodeFail("xn--b-bcba413a2w8b"); } // [B1, C1, V6]230test { try toUnicodeFail("xn--b-bcba413a2w8b"); } // [B1, C1, V6]
231test { try toAsciiFail("xn--b-bcba413a2w8b", false); } // [B1, C1, V6]
232test { try toAsciiFail("xn--b-bcba413a2w8b", true); } // [B1, C1, V6]
166test { try toUnicodeFail("a\xd8\xa8\xcc\x88\xe2\x80\x8c\xcc\x88"); } // [B5, B6, C1]233test { try toUnicodeFail("a\xd8\xa8\xcc\x88\xe2\x80\x8c\xcc\x88"); } // [B5, B6, C1]
234test { try toAsciiFail("a\xd8\xa8\xcc\x88\xe2\x80\x8c\xcc\x88", false); } // [B5, B6, C1]
235test { try toAsciiFail("a\xd8\xa8\xcc\x88\xe2\x80\x8c\xcc\x88", true); } // [B5, B6]
167test { try toUnicodeFail("A\xd8\xa8\xcc\x88\xe2\x80\x8c\xcc\x88"); } // [B5, B6, C1]236test { try toUnicodeFail("A\xd8\xa8\xcc\x88\xe2\x80\x8c\xcc\x88"); } // [B5, B6, C1]
237test { try toAsciiFail("A\xd8\xa8\xcc\x88\xe2\x80\x8c\xcc\x88", false); } // [B5, B6, C1]
238test { try toAsciiFail("A\xd8\xa8\xcc\x88\xe2\x80\x8c\xcc\x88", true); } // [B5, B6]
168test { try toUnicodeFail("xn--a-ccba213a"); } // [B5, B6]239test { try toUnicodeFail("xn--a-ccba213a"); } // [B5, B6]
240test { try toAsciiFail("xn--a-ccba213a", false); } // [B5, B6]
241test { try toAsciiFail("xn--a-ccba213a", true); } // [B5, B6]
169test { try toUnicodeFail("xn--a-ccba213a5w8b"); } // [B5, B6, C1]242test { try toUnicodeFail("xn--a-ccba213a5w8b"); } // [B5, B6, C1]
243test { try toAsciiFail("xn--a-ccba213a5w8b", false); } // [B5, B6, C1]
244test { try toAsciiFail("xn--a-ccba213a5w8b", true); } // [B5, B6, C1]
170test { try toUnicodeFail("a\xd8\xa8\xcc\x88\xe2\x80\x8c\xcc\x88\xd8\xa8b"); } // [B5]245test { try toUnicodeFail("a\xd8\xa8\xcc\x88\xe2\x80\x8c\xcc\x88\xd8\xa8b"); } // [B5]
246test { try toAsciiFail("a\xd8\xa8\xcc\x88\xe2\x80\x8c\xcc\x88\xd8\xa8b", false); } // [B5]
247test { try toAsciiFail("a\xd8\xa8\xcc\x88\xe2\x80\x8c\xcc\x88\xd8\xa8b", true); } // [B5]
171test { try toUnicodeFail("A\xd8\xa8\xcc\x88\xe2\x80\x8c\xcc\x88\xd8\xa8B"); } // [B5]248test { try toUnicodeFail("A\xd8\xa8\xcc\x88\xe2\x80\x8c\xcc\x88\xd8\xa8B"); } // [B5]
249test { try toAsciiFail("A\xd8\xa8\xcc\x88\xe2\x80\x8c\xcc\x88\xd8\xa8B", false); } // [B5]
250test { try toAsciiFail("A\xd8\xa8\xcc\x88\xe2\x80\x8c\xcc\x88\xd8\xa8B", true); } // [B5]
172test { try toUnicodeFail("A\xd8\xa8\xcc\x88\xe2\x80\x8c\xcc\x88\xd8\xa8b"); } // [B5]251test { try toUnicodeFail("A\xd8\xa8\xcc\x88\xe2\x80\x8c\xcc\x88\xd8\xa8b"); } // [B5]
252test { try toAsciiFail("A\xd8\xa8\xcc\x88\xe2\x80\x8c\xcc\x88\xd8\xa8b", false); } // [B5]
253test { try toAsciiFail("A\xd8\xa8\xcc\x88\xe2\x80\x8c\xcc\x88\xd8\xa8b", true); } // [B5]
173test { try toUnicodeFail("xn--ab-uuba211bca"); } // [B5]254test { try toUnicodeFail("xn--ab-uuba211bca"); } // [B5]
255test { try toAsciiFail("xn--ab-uuba211bca", false); } // [B5]
256test { try toAsciiFail("xn--ab-uuba211bca", true); } // [B5]
174test { try toUnicodeFail("xn--ab-uuba211bca8057b"); } // [B5]257test { try toUnicodeFail("xn--ab-uuba211bca8057b"); } // [B5]
258test { try toAsciiFail("xn--ab-uuba211bca8057b", false); } // [B5]
259test { try toAsciiFail("xn--ab-uuba211bca8057b", true); } // [B5]
175test { try toAsciiPass("a\xe2\x80\x8db", "ab", true); }260test { try toAsciiPass("a\xe2\x80\x8db", "ab", true); }
176test { try toUnicodeFail("a\xe2\x80\x8db"); } // [C2]261test { try toUnicodeFail("a\xe2\x80\x8db"); } // [C2]
262test { try toAsciiFail("a\xe2\x80\x8db", false); } // [C2]
177test { try toAsciiPass("A\xe2\x80\x8dB", "ab", true); }263test { try toAsciiPass("A\xe2\x80\x8dB", "ab", true); }
178test { try toUnicodeFail("A\xe2\x80\x8dB"); } // [C2]264test { try toUnicodeFail("A\xe2\x80\x8dB"); } // [C2]
265test { try toAsciiFail("A\xe2\x80\x8dB", false); } // [C2]
179test { try toAsciiPass("A\xe2\x80\x8db", "ab", true); }266test { try toAsciiPass("A\xe2\x80\x8db", "ab", true); }
180test { try toUnicodeFail("A\xe2\x80\x8db"); } // [C2]267test { try toUnicodeFail("A\xe2\x80\x8db"); } // [C2]
268test { try toAsciiFail("A\xe2\x80\x8db", false); } // [C2]
181test { try toUnicodeFail("xn--ab-m1t"); } // [C2]269test { try toUnicodeFail("xn--ab-m1t"); } // [C2]
270test { try toAsciiFail("xn--ab-m1t", false); } // [C2]
271test { try toAsciiFail("xn--ab-m1t", true); } // [C2]
182test { try toUnicodePass("a\xe0\xa5\x8d\xe2\x80\x8db", "a\xe0\xa5\x8d\xe2\x80\x8db"); }272test { try toUnicodePass("a\xe0\xa5\x8d\xe2\x80\x8db", "a\xe0\xa5\x8d\xe2\x80\x8db"); }
183test { try toAsciiPass("a\xe0\xa5\x8d\xe2\x80\x8db", "xn--ab-fsf014u", false); }273test { try toAsciiPass("a\xe0\xa5\x8d\xe2\x80\x8db", "xn--ab-fsf014u", false); }
184test { try toAsciiPass("a\xe0\xa5\x8d\xe2\x80\x8db", "xn--ab-fsf", true); }274test { try toAsciiPass("a\xe0\xa5\x8d\xe2\x80\x8db", "xn--ab-fsf", true); }
...@@ -192,15 +282,35 @@ test { try toUnicodePass("xn--ab-fsf014u", "a\xe0\xa5\x8d\xe2\x80\x8db"); }...@@ -192,15 +282,35 @@ test { try toUnicodePass("xn--ab-fsf014u", "a\xe0\xa5\x8d\xe2\x80\x8db"); }
192test { try toAsciiPass("xn--ab-fsf014u", "xn--ab-fsf014u", false); }282test { try toAsciiPass("xn--ab-fsf014u", "xn--ab-fsf014u", false); }
193test { try toAsciiPass("xn--ab-fsf014u", "xn--ab-fsf014u", true); }283test { try toAsciiPass("xn--ab-fsf014u", "xn--ab-fsf014u", true); }
194test { try toUnicodeFail("\xcc\x88\xe2\x80\x8d\xcc\x88\xd8\xa8b"); } // [B1, C2, V6]284test { try toUnicodeFail("\xcc\x88\xe2\x80\x8d\xcc\x88\xd8\xa8b"); } // [B1, C2, V6]
285test { try toAsciiFail("\xcc\x88\xe2\x80\x8d\xcc\x88\xd8\xa8b", false); } // [B1, C2, V6]
286test { try toAsciiFail("\xcc\x88\xe2\x80\x8d\xcc\x88\xd8\xa8b", true); } // [B1, V6]
195test { try toUnicodeFail("\xcc\x88\xe2\x80\x8d\xcc\x88\xd8\xa8B"); } // [B1, C2, V6]287test { try toUnicodeFail("\xcc\x88\xe2\x80\x8d\xcc\x88\xd8\xa8B"); } // [B1, C2, V6]
288test { try toAsciiFail("\xcc\x88\xe2\x80\x8d\xcc\x88\xd8\xa8B", false); } // [B1, C2, V6]
289test { try toAsciiFail("\xcc\x88\xe2\x80\x8d\xcc\x88\xd8\xa8B", true); } // [B1, V6]
196test { try toUnicodeFail("xn--b-bcba413a7w8b"); } // [B1, C2, V6]290test { try toUnicodeFail("xn--b-bcba413a7w8b"); } // [B1, C2, V6]
291test { try toAsciiFail("xn--b-bcba413a7w8b", false); } // [B1, C2, V6]
292test { try toAsciiFail("xn--b-bcba413a7w8b", true); } // [B1, C2, V6]
197test { try toUnicodeFail("a\xd8\xa8\xcc\x88\xe2\x80\x8d\xcc\x88"); } // [B5, B6, C2]293test { try toUnicodeFail("a\xd8\xa8\xcc\x88\xe2\x80\x8d\xcc\x88"); } // [B5, B6, C2]
294test { try toAsciiFail("a\xd8\xa8\xcc\x88\xe2\x80\x8d\xcc\x88", false); } // [B5, B6, C2]
295test { try toAsciiFail("a\xd8\xa8\xcc\x88\xe2\x80\x8d\xcc\x88", true); } // [B5, B6]
198test { try toUnicodeFail("A\xd8\xa8\xcc\x88\xe2\x80\x8d\xcc\x88"); } // [B5, B6, C2]296test { try toUnicodeFail("A\xd8\xa8\xcc\x88\xe2\x80\x8d\xcc\x88"); } // [B5, B6, C2]
297test { try toAsciiFail("A\xd8\xa8\xcc\x88\xe2\x80\x8d\xcc\x88", false); } // [B5, B6, C2]
298test { try toAsciiFail("A\xd8\xa8\xcc\x88\xe2\x80\x8d\xcc\x88", true); } // [B5, B6]
199test { try toUnicodeFail("xn--a-ccba213abx8b"); } // [B5, B6, C2]299test { try toUnicodeFail("xn--a-ccba213abx8b"); } // [B5, B6, C2]
300test { try toAsciiFail("xn--a-ccba213abx8b", false); } // [B5, B6, C2]
301test { try toAsciiFail("xn--a-ccba213abx8b", true); } // [B5, B6, C2]
200test { try toUnicodeFail("a\xd8\xa8\xcc\x88\xe2\x80\x8d\xcc\x88\xd8\xa8b"); } // [B5, C2]302test { try toUnicodeFail("a\xd8\xa8\xcc\x88\xe2\x80\x8d\xcc\x88\xd8\xa8b"); } // [B5, C2]
303test { try toAsciiFail("a\xd8\xa8\xcc\x88\xe2\x80\x8d\xcc\x88\xd8\xa8b", false); } // [B5, C2]
304test { try toAsciiFail("a\xd8\xa8\xcc\x88\xe2\x80\x8d\xcc\x88\xd8\xa8b", true); } // [B5]
201test { try toUnicodeFail("A\xd8\xa8\xcc\x88\xe2\x80\x8d\xcc\x88\xd8\xa8B"); } // [B5, C2]305test { try toUnicodeFail("A\xd8\xa8\xcc\x88\xe2\x80\x8d\xcc\x88\xd8\xa8B"); } // [B5, C2]
306test { try toAsciiFail("A\xd8\xa8\xcc\x88\xe2\x80\x8d\xcc\x88\xd8\xa8B", false); } // [B5, C2]
307test { try toAsciiFail("A\xd8\xa8\xcc\x88\xe2\x80\x8d\xcc\x88\xd8\xa8B", true); } // [B5]
202test { try toUnicodeFail("A\xd8\xa8\xcc\x88\xe2\x80\x8d\xcc\x88\xd8\xa8b"); } // [B5, C2]308test { try toUnicodeFail("A\xd8\xa8\xcc\x88\xe2\x80\x8d\xcc\x88\xd8\xa8b"); } // [B5, C2]
309test { try toAsciiFail("A\xd8\xa8\xcc\x88\xe2\x80\x8d\xcc\x88\xd8\xa8b", false); } // [B5, C2]
310test { try toAsciiFail("A\xd8\xa8\xcc\x88\xe2\x80\x8d\xcc\x88\xd8\xa8b", true); } // [B5]
203test { try toUnicodeFail("xn--ab-uuba211bca5157b"); } // [B5, C2]311test { try toUnicodeFail("xn--ab-uuba211bca5157b"); } // [B5, C2]
312test { try toAsciiFail("xn--ab-uuba211bca5157b", false); } // [B5, C2]
313test { try toAsciiFail("xn--ab-uuba211bca5157b", true); } // [B5, C2]
204test { try toUnicodePass("\xc2\xa1", "\xc2\xa1"); }314test { try toUnicodePass("\xc2\xa1", "\xc2\xa1"); }
205test { try toAsciiPass("\xc2\xa1", "xn--7a", false); }315test { try toAsciiPass("\xc2\xa1", "xn--7a", false); }
206test { try toAsciiPass("\xc2\xa1", "xn--7a", true); }316test { try toAsciiPass("\xc2\xa1", "xn--7a", true); }
...@@ -214,8 +324,14 @@ test { try toUnicodePass("xn--pkf", "\xe1\xa7\x9a"); }...@@ -214,8 +324,14 @@ test { try toUnicodePass("xn--pkf", "\xe1\xa7\x9a"); }
214test { try toAsciiPass("xn--pkf", "xn--pkf", false); }324test { try toAsciiPass("xn--pkf", "xn--pkf", false); }
215test { try toAsciiPass("xn--pkf", "xn--pkf", true); }325test { try toAsciiPass("xn--pkf", "xn--pkf", true); }
216test { try toUnicodeFail("\"\""); } // [X4_2]326test { try toUnicodeFail("\"\""); } // [X4_2]
327test { try toAsciiFail("\"\"", false); } // [A4_1, A4_2]
328test { try toAsciiFail("\"\"", true); } // [A4_1, A4_2]
217test { try toUnicodeFail("\xe3\x80\x82"); } // [X4_2]329test { try toUnicodeFail("\xe3\x80\x82"); } // [X4_2]
330test { try toAsciiFail("\xe3\x80\x82", false); } // [A4_1, A4_2]
331test { try toAsciiFail("\xe3\x80\x82", true); } // [A4_1, A4_2]
218test { try toUnicodeFail("."); } // [X4_2]332test { try toUnicodeFail("."); } // [X4_2]
333test { try toAsciiFail(".", false); } // [A4_1, A4_2]
334test { try toAsciiFail(".", true); } // [A4_1, A4_2]
219test { try toUnicodePass("\xea\xad\xa0", "\xea\xad\xa0"); }335test { try toUnicodePass("\xea\xad\xa0", "\xea\xad\xa0"); }
220test { try toAsciiPass("\xea\xad\xa0", "xn--3y9a", false); }336test { try toAsciiPass("\xea\xad\xa0", "xn--3y9a", false); }
221test { try toAsciiPass("\xea\xad\xa0", "xn--3y9a", true); }337test { try toAsciiPass("\xea\xad\xa0", "xn--3y9a", true); }
...@@ -223,10 +339,20 @@ test { try toUnicodePass("xn--3y9a", "\xea\xad\xa0"); }...@@ -223,10 +339,20 @@ test { try toUnicodePass("xn--3y9a", "\xea\xad\xa0"); }
223test { try toAsciiPass("xn--3y9a", "xn--3y9a", false); }339test { try toAsciiPass("xn--3y9a", "xn--3y9a", false); }
224test { try toAsciiPass("xn--3y9a", "xn--3y9a", true); }340test { try toAsciiPass("xn--3y9a", "xn--3y9a", true); }
225test { try toUnicodePass("1234567890\xc3\xa41234567890123456789012345678901234567890123456", "1234567890\xc3\xa41234567890123456789012345678901234567890123456"); }341test { try toUnicodePass("1234567890\xc3\xa41234567890123456789012345678901234567890123456", "1234567890\xc3\xa41234567890123456789012345678901234567890123456"); }
342test { try toAsciiFail("1234567890\xc3\xa41234567890123456789012345678901234567890123456", false); } // [A4_2]
343test { try toAsciiFail("1234567890\xc3\xa41234567890123456789012345678901234567890123456", true); } // [A4_2]
226test { try toUnicodePass("1234567890a\xcc\x881234567890123456789012345678901234567890123456", "1234567890\xc3\xa41234567890123456789012345678901234567890123456"); }344test { try toUnicodePass("1234567890a\xcc\x881234567890123456789012345678901234567890123456", "1234567890\xc3\xa41234567890123456789012345678901234567890123456"); }
345test { try toAsciiFail("1234567890a\xcc\x881234567890123456789012345678901234567890123456", false); } // [A4_2]
346test { try toAsciiFail("1234567890a\xcc\x881234567890123456789012345678901234567890123456", true); } // [A4_2]
227test { try toUnicodePass("1234567890A\xcc\x881234567890123456789012345678901234567890123456", "1234567890\xc3\xa41234567890123456789012345678901234567890123456"); }347test { try toUnicodePass("1234567890A\xcc\x881234567890123456789012345678901234567890123456", "1234567890\xc3\xa41234567890123456789012345678901234567890123456"); }
348test { try toAsciiFail("1234567890A\xcc\x881234567890123456789012345678901234567890123456", false); } // [A4_2]
349test { try toAsciiFail("1234567890A\xcc\x881234567890123456789012345678901234567890123456", true); } // [A4_2]
228test { try toUnicodePass("1234567890\xc3\x841234567890123456789012345678901234567890123456", "1234567890\xc3\xa41234567890123456789012345678901234567890123456"); }350test { try toUnicodePass("1234567890\xc3\x841234567890123456789012345678901234567890123456", "1234567890\xc3\xa41234567890123456789012345678901234567890123456"); }
351test { try toAsciiFail("1234567890\xc3\x841234567890123456789012345678901234567890123456", false); } // [A4_2]
352test { try toAsciiFail("1234567890\xc3\x841234567890123456789012345678901234567890123456", true); } // [A4_2]
229test { try toUnicodePass("xn--12345678901234567890123456789012345678901234567890123456-fxe", "1234567890\xc3\xa41234567890123456789012345678901234567890123456"); }353test { try toUnicodePass("xn--12345678901234567890123456789012345678901234567890123456-fxe", "1234567890\xc3\xa41234567890123456789012345678901234567890123456"); }
354test { try toAsciiFail("xn--12345678901234567890123456789012345678901234567890123456-fxe", false); } // [A4_2]
355test { try toAsciiFail("xn--12345678901234567890123456789012345678901234567890123456-fxe", true); } // [A4_2]
230test { try toUnicodePass("www.eXample.cOm", "www.example.com"); }356test { try toUnicodePass("www.eXample.cOm", "www.example.com"); }
231test { try toAsciiPass("www.eXample.cOm", "www.example.com", false); }357test { try toAsciiPass("www.eXample.cOm", "www.example.com", false); }
232test { try toAsciiPass("www.eXample.cOm", "www.example.com", true); }358test { try toAsciiPass("www.eXample.cOm", "www.example.com", true); }
...@@ -405,12 +531,26 @@ test { try toUnicodePass("\xd9\x86\xd8\xa7\xd9\x85\xd9\x87\xd8\xa7\xdb\x8c.COM",...@@ -405,12 +531,26 @@ test { try toUnicodePass("\xd9\x86\xd8\xa7\xd9\x85\xd9\x87\xd8\xa7\xdb\x8c.COM",
405test { try toAsciiPass("\xd9\x86\xd8\xa7\xd9\x85\xd9\x87\xd8\xa7\xdb\x8c.COM", "xn--mgba3gch31f.com", false); }531test { try toAsciiPass("\xd9\x86\xd8\xa7\xd9\x85\xd9\x87\xd8\xa7\xdb\x8c.COM", "xn--mgba3gch31f.com", false); }
406test { try toAsciiPass("\xd9\x86\xd8\xa7\xd9\x85\xd9\x87\xd8\xa7\xdb\x8c.COM", "xn--mgba3gch31f.com", true); }532test { try toAsciiPass("\xd9\x86\xd8\xa7\xd9\x85\xd9\x87\xd8\xa7\xdb\x8c.COM", "xn--mgba3gch31f.com", true); }
407test { try toUnicodePass("a.b\xef\xbc\x8ec\xe3\x80\x82d\xef\xbd\xa1", "a.b.c.d."); }533test { try toUnicodePass("a.b\xef\xbc\x8ec\xe3\x80\x82d\xef\xbd\xa1", "a.b.c.d."); }
534test { try toAsciiFail("a.b\xef\xbc\x8ec\xe3\x80\x82d\xef\xbd\xa1", false); } // [A4_2]
535test { try toAsciiFail("a.b\xef\xbc\x8ec\xe3\x80\x82d\xef\xbd\xa1", true); } // [A4_2]
408test { try toUnicodePass("a.b.c\xe3\x80\x82d\xe3\x80\x82", "a.b.c.d."); }536test { try toUnicodePass("a.b.c\xe3\x80\x82d\xe3\x80\x82", "a.b.c.d."); }
537test { try toAsciiFail("a.b.c\xe3\x80\x82d\xe3\x80\x82", false); } // [A4_2]
538test { try toAsciiFail("a.b.c\xe3\x80\x82d\xe3\x80\x82", true); } // [A4_2]
409test { try toUnicodePass("A.B.C\xe3\x80\x82D\xe3\x80\x82", "a.b.c.d."); }539test { try toUnicodePass("A.B.C\xe3\x80\x82D\xe3\x80\x82", "a.b.c.d."); }
540test { try toAsciiFail("A.B.C\xe3\x80\x82D\xe3\x80\x82", false); } // [A4_2]
541test { try toAsciiFail("A.B.C\xe3\x80\x82D\xe3\x80\x82", true); } // [A4_2]
410test { try toUnicodePass("A.b.c\xe3\x80\x82D\xe3\x80\x82", "a.b.c.d."); }542test { try toUnicodePass("A.b.c\xe3\x80\x82D\xe3\x80\x82", "a.b.c.d."); }
543test { try toAsciiFail("A.b.c\xe3\x80\x82D\xe3\x80\x82", false); } // [A4_2]
544test { try toAsciiFail("A.b.c\xe3\x80\x82D\xe3\x80\x82", true); } // [A4_2]
411test { try toUnicodePass("a.b.c.d.", "a.b.c.d."); }545test { try toUnicodePass("a.b.c.d.", "a.b.c.d."); }
546test { try toAsciiFail("a.b.c.d.", false); } // [A4_2]
547test { try toAsciiFail("a.b.c.d.", true); } // [A4_2]
412test { try toUnicodePass("A.B\xef\xbc\x8eC\xe3\x80\x82D\xef\xbd\xa1", "a.b.c.d."); }548test { try toUnicodePass("A.B\xef\xbc\x8eC\xe3\x80\x82D\xef\xbd\xa1", "a.b.c.d."); }
549test { try toAsciiFail("A.B\xef\xbc\x8eC\xe3\x80\x82D\xef\xbd\xa1", false); } // [A4_2]
550test { try toAsciiFail("A.B\xef\xbc\x8eC\xe3\x80\x82D\xef\xbd\xa1", true); } // [A4_2]
413test { try toUnicodePass("A.b\xef\xbc\x8ec\xe3\x80\x82D\xef\xbd\xa1", "a.b.c.d."); }551test { try toUnicodePass("A.b\xef\xbc\x8ec\xe3\x80\x82D\xef\xbd\xa1", "a.b.c.d."); }
552test { try toAsciiFail("A.b\xef\xbc\x8ec\xe3\x80\x82D\xef\xbd\xa1", false); } // [A4_2]
553test { try toAsciiFail("A.b\xef\xbc\x8ec\xe3\x80\x82D\xef\xbd\xa1", true); } // [A4_2]
414test { try toUnicodePass("U\xcc\x88.xn--tda", "\xc3\xbc.\xc3\xbc"); }554test { try toUnicodePass("U\xcc\x88.xn--tda", "\xc3\xbc.\xc3\xbc"); }
415test { try toAsciiPass("U\xcc\x88.xn--tda", "xn--tda.xn--tda", false); }555test { try toAsciiPass("U\xcc\x88.xn--tda", "xn--tda.xn--tda", false); }
416test { try toAsciiPass("U\xcc\x88.xn--tda", "xn--tda.xn--tda", true); }556test { try toAsciiPass("U\xcc\x88.xn--tda", "xn--tda.xn--tda", true); }
...@@ -457,25 +597,59 @@ test { try toUnicodePass("U\xcc\x88.u\xcc\x88", "\xc3\xbc.\xc3\xbc"); }...@@ -457,25 +597,59 @@ test { try toUnicodePass("U\xcc\x88.u\xcc\x88", "\xc3\xbc.\xc3\xbc"); }
457test { try toAsciiPass("U\xcc\x88.u\xcc\x88", "xn--tda.xn--tda", false); }597test { try toAsciiPass("U\xcc\x88.u\xcc\x88", "xn--tda.xn--tda", false); }
458test { try toAsciiPass("U\xcc\x88.u\xcc\x88", "xn--tda.xn--tda", true); }598test { try toAsciiPass("U\xcc\x88.u\xcc\x88", "xn--tda.xn--tda", true); }
459test { try toUnicodeFail("xn--u-ccb"); } // [V1]599test { try toUnicodeFail("xn--u-ccb"); } // [V1]
600test { try toAsciiFail("xn--u-ccb", false); } // [V1]
601test { try toAsciiFail("xn--u-ccb", true); } // [V1]
460test { try toUnicodeFail("a\xe2\x92\x88com"); } // [V7]602test { try toUnicodeFail("a\xe2\x92\x88com"); } // [V7]
603test { try toAsciiFail("a\xe2\x92\x88com", false); } // [V7]
604test { try toAsciiFail("a\xe2\x92\x88com", true); } // [V7]
461test { try toUnicodePass("a1.com", "a1.com"); }605test { try toUnicodePass("a1.com", "a1.com"); }
462test { try toAsciiPass("a1.com", "a1.com", false); }606test { try toAsciiPass("a1.com", "a1.com", false); }
463test { try toAsciiPass("a1.com", "a1.com", true); }607test { try toAsciiPass("a1.com", "a1.com", true); }
464test { try toUnicodeFail("A\xe2\x92\x88COM"); } // [V7]608test { try toUnicodeFail("A\xe2\x92\x88COM"); } // [V7]
609test { try toAsciiFail("A\xe2\x92\x88COM", false); } // [V7]
610test { try toAsciiFail("A\xe2\x92\x88COM", true); } // [V7]
465test { try toUnicodeFail("A\xe2\x92\x88Com"); } // [V7]611test { try toUnicodeFail("A\xe2\x92\x88Com"); } // [V7]
612test { try toAsciiFail("A\xe2\x92\x88Com", false); } // [V7]
613test { try toAsciiFail("A\xe2\x92\x88Com", true); } // [V7]
466test { try toUnicodeFail("xn--acom-0w1b"); } // [V7]614test { try toUnicodeFail("xn--acom-0w1b"); } // [V7]
615test { try toAsciiFail("xn--acom-0w1b", false); } // [V7]
616test { try toAsciiFail("xn--acom-0w1b", true); } // [V7]
467test { try toUnicodeFail("xn--a-ecp.ru"); } // [V7]617test { try toUnicodeFail("xn--a-ecp.ru"); } // [V7]
618test { try toAsciiFail("xn--a-ecp.ru", false); } // [V7]
619test { try toAsciiFail("xn--a-ecp.ru", true); } // [V7]
468test { try toUnicodeFail("xn--0.pt"); } // [P4]620test { try toUnicodeFail("xn--0.pt"); } // [P4]
621test { try toAsciiFail("xn--0.pt", false); } // [P4]
622test { try toAsciiFail("xn--0.pt", true); } // [P4]
469test { try toUnicodeFail("xn--a.pt"); } // [V7]623test { try toUnicodeFail("xn--a.pt"); } // [V7]
624test { try toAsciiFail("xn--a.pt", false); } // [V7]
625test { try toAsciiFail("xn--a.pt", true); } // [V7]
470test { try toUnicodeFail("xn--a-\xc3\x84.pt"); } // [P4]626test { try toUnicodeFail("xn--a-\xc3\x84.pt"); } // [P4]
627test { try toAsciiFail("xn--a-\xc3\x84.pt", false); } // [P4]
628test { try toAsciiFail("xn--a-\xc3\x84.pt", true); } // [P4]
471test { try toUnicodeFail("xn--a-A\xcc\x88.pt"); } // [P4]629test { try toUnicodeFail("xn--a-A\xcc\x88.pt"); } // [P4]
630test { try toAsciiFail("xn--a-A\xcc\x88.pt", false); } // [P4]
631test { try toAsciiFail("xn--a-A\xcc\x88.pt", true); } // [P4]
472test { try toUnicodeFail("xn--a-a\xcc\x88.pt"); } // [P4]632test { try toUnicodeFail("xn--a-a\xcc\x88.pt"); } // [P4]
633test { try toAsciiFail("xn--a-a\xcc\x88.pt", false); } // [P4]
634test { try toAsciiFail("xn--a-a\xcc\x88.pt", true); } // [P4]
473test { try toUnicodeFail("xn--a-\xc3\xa4.pt"); } // [P4]635test { try toUnicodeFail("xn--a-\xc3\xa4.pt"); } // [P4]
636test { try toAsciiFail("xn--a-\xc3\xa4.pt", false); } // [P4]
637test { try toAsciiFail("xn--a-\xc3\xa4.pt", true); } // [P4]
474test { try toUnicodeFail("XN--A-\xc3\x84.PT"); } // [P4]638test { try toUnicodeFail("XN--A-\xc3\x84.PT"); } // [P4]
639test { try toAsciiFail("XN--A-\xc3\x84.PT", false); } // [P4]
640test { try toAsciiFail("XN--A-\xc3\x84.PT", true); } // [P4]
475test { try toUnicodeFail("XN--A-A\xcc\x88.PT"); } // [P4]641test { try toUnicodeFail("XN--A-A\xcc\x88.PT"); } // [P4]
642test { try toAsciiFail("XN--A-A\xcc\x88.PT", false); } // [P4]
643test { try toAsciiFail("XN--A-A\xcc\x88.PT", true); } // [P4]
476test { try toUnicodeFail("Xn--A-A\xcc\x88.pt"); } // [P4]644test { try toUnicodeFail("Xn--A-A\xcc\x88.pt"); } // [P4]
645test { try toAsciiFail("Xn--A-A\xcc\x88.pt", false); } // [P4]
646test { try toAsciiFail("Xn--A-A\xcc\x88.pt", true); } // [P4]
477test { try toUnicodeFail("Xn--A-\xc3\x84.pt"); } // [P4]647test { try toUnicodeFail("Xn--A-\xc3\x84.pt"); } // [P4]
648test { try toAsciiFail("Xn--A-\xc3\x84.pt", false); } // [P4]
649test { try toAsciiFail("Xn--A-\xc3\x84.pt", true); } // [P4]
478test { try toUnicodeFail("xn--xn--a--gua.pt"); } // [V2, V4]650test { try toUnicodeFail("xn--xn--a--gua.pt"); } // [V2, V4]
651test { try toAsciiFail("xn--xn--a--gua.pt", false); } // [V2, V4]
652test { try toAsciiFail("xn--xn--a--gua.pt", true); } // [V2, V4]
479test { try toUnicodePass("\xe6\x97\xa5\xe6\x9c\xac\xe8\xaa\x9e\xe3\x80\x82\xef\xbc\xaa\xef\xbc\xb0", "\xe6\x97\xa5\xe6\x9c\xac\xe8\xaa\x9e.jp"); }653test { try toUnicodePass("\xe6\x97\xa5\xe6\x9c\xac\xe8\xaa\x9e\xe3\x80\x82\xef\xbc\xaa\xef\xbc\xb0", "\xe6\x97\xa5\xe6\x9c\xac\xe8\xaa\x9e.jp"); }
480test { try toAsciiPass("\xe6\x97\xa5\xe6\x9c\xac\xe8\xaa\x9e\xe3\x80\x82\xef\xbc\xaa\xef\xbc\xb0", "xn--wgv71a119e.jp", false); }654test { try toAsciiPass("\xe6\x97\xa5\xe6\x9c\xac\xe8\xaa\x9e\xe3\x80\x82\xef\xbc\xaa\xef\xbc\xb0", "xn--wgv71a119e.jp", false); }
481test { try toAsciiPass("\xe6\x97\xa5\xe6\x9c\xac\xe8\xaa\x9e\xe3\x80\x82\xef\xbc\xaa\xef\xbc\xb0", "xn--wgv71a119e.jp", true); }655test { try toAsciiPass("\xe6\x97\xa5\xe6\x9c\xac\xe8\xaa\x9e\xe3\x80\x82\xef\xbc\xaa\xef\xbc\xb0", "xn--wgv71a119e.jp", true); }
...@@ -513,30 +687,68 @@ test { try toUnicodePass("xn--53h", "\xe2\x98\x95"); }...@@ -513,30 +687,68 @@ test { try toUnicodePass("xn--53h", "\xe2\x98\x95"); }
513test { try toAsciiPass("xn--53h", "xn--53h", false); }687test { try toAsciiPass("xn--53h", "xn--53h", false); }
514test { try toAsciiPass("xn--53h", "xn--53h", true); }688test { try toAsciiPass("xn--53h", "xn--53h", true); }
515test { try toUnicodeFail("1.a\xc3\x9f\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dc\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fd\xcf\x82\xcf\x83\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fe\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fx\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fy\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xcc\x82\xc3\x9fz"); } // [C1, C2]689test { try toUnicodeFail("1.a\xc3\x9f\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dc\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fd\xcf\x82\xcf\x83\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fe\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fx\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fy\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xcc\x82\xc3\x9fz"); } // [C1, C2]
690test { try toAsciiFail("1.a\xc3\x9f\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dc\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fd\xcf\x82\xcf\x83\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fe\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fx\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fy\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xcc\x82\xc3\x9fz", false); } // [C1, C2, A4_2]
691test { try toAsciiFail("1.a\xc3\x9f\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dc\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fd\xcf\x82\xcf\x83\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fe\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fx\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fy\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xcc\x82\xc3\x9fz", true); } // [A4_2]
516test { try toUnicodeFail("1.ASS\xe2\x80\x8c\xe2\x80\x8dB\xe2\x80\x8c\xe2\x80\x8dCSSSSSSSSD\xce\xa3\xce\xa3SSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSSS\xcc\x82SSZ"); } // [C1, C2]692test { try toUnicodeFail("1.ASS\xe2\x80\x8c\xe2\x80\x8dB\xe2\x80\x8c\xe2\x80\x8dCSSSSSSSSD\xce\xa3\xce\xa3SSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSSS\xcc\x82SSZ"); } // [C1, C2]
693test { try toAsciiFail("1.ASS\xe2\x80\x8c\xe2\x80\x8dB\xe2\x80\x8c\xe2\x80\x8dCSSSSSSSSD\xce\xa3\xce\xa3SSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSSS\xcc\x82SSZ", false); } // [C1, C2, A4_2]
694test { try toAsciiFail("1.ASS\xe2\x80\x8c\xe2\x80\x8dB\xe2\x80\x8c\xe2\x80\x8dCSSSSSSSSD\xce\xa3\xce\xa3SSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSSS\xcc\x82SSZ", true); } // [A4_2]
517test { try toUnicodeFail("1.ASS\xe2\x80\x8c\xe2\x80\x8dB\xe2\x80\x8c\xe2\x80\x8dCSSSSSSSSD\xce\xa3\xce\xa3SSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSS\xc5\x9cSSZ"); } // [C1, C2]695test { try toUnicodeFail("1.ASS\xe2\x80\x8c\xe2\x80\x8dB\xe2\x80\x8c\xe2\x80\x8dCSSSSSSSSD\xce\xa3\xce\xa3SSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSS\xc5\x9cSSZ"); } // [C1, C2]
696test { try toAsciiFail("1.ASS\xe2\x80\x8c\xe2\x80\x8dB\xe2\x80\x8c\xe2\x80\x8dCSSSSSSSSD\xce\xa3\xce\xa3SSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSS\xc5\x9cSSZ", false); } // [C1, C2, A4_2]
697test { try toAsciiFail("1.ASS\xe2\x80\x8c\xe2\x80\x8dB\xe2\x80\x8c\xe2\x80\x8dCSSSSSSSSD\xce\xa3\xce\xa3SSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSS\xc5\x9cSSZ", true); } // [A4_2]
518test { try toUnicodeFail("1.ass\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz"); } // [C1, C2]698test { try toUnicodeFail("1.ass\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz"); } // [C1, C2]
699test { try toAsciiFail("1.ass\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz", false); } // [C1, C2, A4_2]
700test { try toAsciiFail("1.ass\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz", true); } // [A4_2]
519test { try toUnicodeFail("1.ass\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssyssssssssssssssss\xcc\x82ssz"); } // [C1, C2]701test { try toUnicodeFail("1.ass\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssyssssssssssssssss\xcc\x82ssz"); } // [C1, C2]
702test { try toAsciiFail("1.ass\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssyssssssssssssssss\xcc\x82ssz", false); } // [C1, C2, A4_2]
703test { try toAsciiFail("1.ass\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssyssssssssssssssss\xcc\x82ssz", true); } // [A4_2]
520test { try toUnicodeFail("1.Ass\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssyssssssssssssssss\xcc\x82ssz"); } // [C1, C2]704test { try toUnicodeFail("1.Ass\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssyssssssssssssssss\xcc\x82ssz"); } // [C1, C2]
705test { try toAsciiFail("1.Ass\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssyssssssssssssssss\xcc\x82ssz", false); } // [C1, C2, A4_2]
706test { try toAsciiFail("1.Ass\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssyssssssssssssssss\xcc\x82ssz", true); } // [A4_2]
521test { try toUnicodeFail("1.Ass\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz"); } // [C1, C2]707test { try toUnicodeFail("1.Ass\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz"); } // [C1, C2]
708test { try toAsciiFail("1.Ass\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz", false); } // [C1, C2, A4_2]
709test { try toAsciiFail("1.Ass\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz", true); } // [A4_2]
522test { try toUnicodePass("1.xn--assbcssssssssdssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssssz-pxq1419aa", "1.assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz"); }710test { try toUnicodePass("1.xn--assbcssssssssdssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssssz-pxq1419aa", "1.assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz"); }
711test { try toAsciiFail("1.xn--assbcssssssssdssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssssz-pxq1419aa", false); } // [A4_2]
712test { try toAsciiFail("1.xn--assbcssssssssdssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssssz-pxq1419aa", true); } // [A4_2]
523test { try toUnicodePass("1.assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz", "1.assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz"); }713test { try toUnicodePass("1.assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz", "1.assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz"); }
714test { try toAsciiFail("1.assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz", false); } // [A4_2]
715test { try toAsciiFail("1.assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz", true); } // [A4_2]
524test { try toUnicodePass("1.assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssyssssssssssssssss\xcc\x82ssz", "1.assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz"); }716test { try toUnicodePass("1.assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssyssssssssssssssss\xcc\x82ssz", "1.assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz"); }
717test { try toAsciiFail("1.assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssyssssssssssssssss\xcc\x82ssz", false); } // [A4_2]
718test { try toAsciiFail("1.assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssyssssssssssssssss\xcc\x82ssz", true); } // [A4_2]
525test { try toUnicodePass("1.ASSBCSSSSSSSSD\xce\xa3\xce\xa3SSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSSS\xcc\x82SSZ", "1.assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz"); }719test { try toUnicodePass("1.ASSBCSSSSSSSSD\xce\xa3\xce\xa3SSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSSS\xcc\x82SSZ", "1.assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz"); }
720test { try toAsciiFail("1.ASSBCSSSSSSSSD\xce\xa3\xce\xa3SSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSSS\xcc\x82SSZ", false); } // [A4_2]
721test { try toAsciiFail("1.ASSBCSSSSSSSSD\xce\xa3\xce\xa3SSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSSS\xcc\x82SSZ", true); } // [A4_2]
526test { try toUnicodePass("1.ASSBCSSSSSSSSD\xce\xa3\xce\xa3SSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSS\xc5\x9cSSZ", "1.assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz"); }722test { try toUnicodePass("1.ASSBCSSSSSSSSD\xce\xa3\xce\xa3SSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSS\xc5\x9cSSZ", "1.assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz"); }
723test { try toAsciiFail("1.ASSBCSSSSSSSSD\xce\xa3\xce\xa3SSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSS\xc5\x9cSSZ", false); } // [A4_2]
724test { try toAsciiFail("1.ASSBCSSSSSSSSD\xce\xa3\xce\xa3SSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSS\xc5\x9cSSZ", true); } // [A4_2]
527test { try toUnicodePass("1.Assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz", "1.assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz"); }725test { try toUnicodePass("1.Assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz", "1.assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz"); }
726test { try toAsciiFail("1.Assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz", false); } // [A4_2]
727test { try toAsciiFail("1.Assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz", true); } // [A4_2]
528test { try toUnicodePass("1.Assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssyssssssssssssssss\xcc\x82ssz", "1.assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz"); }728test { try toUnicodePass("1.Assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssyssssssssssssssss\xcc\x82ssz", "1.assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\xc5\x9dssz"); }
729test { try toAsciiFail("1.Assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssyssssssssssssssss\xcc\x82ssz", false); } // [A4_2]
730test { try toAsciiFail("1.Assbcssssssssd\xcf\x83\xcf\x83ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssyssssssssssssssss\xcc\x82ssz", true); } // [A4_2]
529test { try toUnicodeFail("1.xn--assbcssssssssdssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssssz-pxq1419aa69989dba9gc"); } // [C1, C2]731test { try toUnicodeFail("1.xn--assbcssssssssdssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssssz-pxq1419aa69989dba9gc"); } // [C1, C2]
732test { try toAsciiFail("1.xn--assbcssssssssdssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssssz-pxq1419aa69989dba9gc", false); } // [C1, C2, A4_2]
733test { try toAsciiFail("1.xn--assbcssssssssdssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssssz-pxq1419aa69989dba9gc", true); } // [C1, C2, A4_2]
530test { try toUnicodeFail("1.A\xc3\x9f\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dc\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fd\xcf\x82\xcf\x83\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fe\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fx\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fy\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xcc\x82\xc3\x9fz"); } // [C1, C2]734test { try toUnicodeFail("1.A\xc3\x9f\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dc\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fd\xcf\x82\xcf\x83\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fe\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fx\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fy\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xcc\x82\xc3\x9fz"); } // [C1, C2]
735test { try toAsciiFail("1.A\xc3\x9f\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dc\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fd\xcf\x82\xcf\x83\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fe\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fx\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fy\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xcc\x82\xc3\x9fz", false); } // [C1, C2, A4_2]
736test { try toAsciiFail("1.A\xc3\x9f\xe2\x80\x8c\xe2\x80\x8db\xe2\x80\x8c\xe2\x80\x8dc\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fd\xcf\x82\xcf\x83\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fe\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fx\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9fy\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xc3\x9f\xcc\x82\xc3\x9fz", true); } // [A4_2]
531test { try toUnicodeFail("1.xn--abcdexyz-qyacaaabaaaaaaabaaaaaaaaabaaaaaaaaabaaaaaaaa010ze2isb1140zba8cc"); } // [C1, C2]737test { try toUnicodeFail("1.xn--abcdexyz-qyacaaabaaaaaaabaaaaaaaaabaaaaaaaaabaaaaaaaa010ze2isb1140zba8cc"); } // [C1, C2]
738test { try toAsciiFail("1.xn--abcdexyz-qyacaaabaaaaaaabaaaaaaaaabaaaaaaaaabaaaaaaaa010ze2isb1140zba8cc", false); } // [C1, C2, A4_2]
739test { try toAsciiFail("1.xn--abcdexyz-qyacaaabaaaaaaabaaaaaaaaabaaaaaaaaabaaaaaaaa010ze2isb1140zba8cc", true); } // [C1, C2, A4_2]
532test { try toAsciiPass("\xe2\x80\x8cx\xe2\x80\x8dn\xe2\x80\x8c-\xe2\x80\x8d-b\xc3\x9f", "xn--bss", true); }740test { try toAsciiPass("\xe2\x80\x8cx\xe2\x80\x8dn\xe2\x80\x8c-\xe2\x80\x8d-b\xc3\x9f", "xn--bss", true); }
533test { try toUnicodeFail("\xe2\x80\x8cx\xe2\x80\x8dn\xe2\x80\x8c-\xe2\x80\x8d-b\xc3\x9f"); } // [C1, C2]741test { try toUnicodeFail("\xe2\x80\x8cx\xe2\x80\x8dn\xe2\x80\x8c-\xe2\x80\x8d-b\xc3\x9f"); } // [C1, C2]
742test { try toAsciiFail("\xe2\x80\x8cx\xe2\x80\x8dn\xe2\x80\x8c-\xe2\x80\x8d-b\xc3\x9f", false); } // [C1, C2]
534test { try toAsciiPass("\xe2\x80\x8cX\xe2\x80\x8dN\xe2\x80\x8c-\xe2\x80\x8d-BSS", "xn--bss", true); }743test { try toAsciiPass("\xe2\x80\x8cX\xe2\x80\x8dN\xe2\x80\x8c-\xe2\x80\x8d-BSS", "xn--bss", true); }
535test { try toUnicodeFail("\xe2\x80\x8cX\xe2\x80\x8dN\xe2\x80\x8c-\xe2\x80\x8d-BSS"); } // [C1, C2]744test { try toUnicodeFail("\xe2\x80\x8cX\xe2\x80\x8dN\xe2\x80\x8c-\xe2\x80\x8d-BSS"); } // [C1, C2]
745test { try toAsciiFail("\xe2\x80\x8cX\xe2\x80\x8dN\xe2\x80\x8c-\xe2\x80\x8d-BSS", false); } // [C1, C2]
536test { try toAsciiPass("\xe2\x80\x8cx\xe2\x80\x8dn\xe2\x80\x8c-\xe2\x80\x8d-bss", "xn--bss", true); }746test { try toAsciiPass("\xe2\x80\x8cx\xe2\x80\x8dn\xe2\x80\x8c-\xe2\x80\x8d-bss", "xn--bss", true); }
537test { try toUnicodeFail("\xe2\x80\x8cx\xe2\x80\x8dn\xe2\x80\x8c-\xe2\x80\x8d-bss"); } // [C1, C2]747test { try toUnicodeFail("\xe2\x80\x8cx\xe2\x80\x8dn\xe2\x80\x8c-\xe2\x80\x8d-bss"); } // [C1, C2]
748test { try toAsciiFail("\xe2\x80\x8cx\xe2\x80\x8dn\xe2\x80\x8c-\xe2\x80\x8d-bss", false); } // [C1, C2]
538test { try toAsciiPass("\xe2\x80\x8cX\xe2\x80\x8dn\xe2\x80\x8c-\xe2\x80\x8d-Bss", "xn--bss", true); }749test { try toAsciiPass("\xe2\x80\x8cX\xe2\x80\x8dn\xe2\x80\x8c-\xe2\x80\x8d-Bss", "xn--bss", true); }
539test { try toUnicodeFail("\xe2\x80\x8cX\xe2\x80\x8dn\xe2\x80\x8c-\xe2\x80\x8d-Bss"); } // [C1, C2]750test { try toUnicodeFail("\xe2\x80\x8cX\xe2\x80\x8dn\xe2\x80\x8c-\xe2\x80\x8d-Bss"); } // [C1, C2]
751test { try toAsciiFail("\xe2\x80\x8cX\xe2\x80\x8dn\xe2\x80\x8c-\xe2\x80\x8d-Bss", false); } // [C1, C2]
540test { try toUnicodePass("xn--bss", "\xe5\xa4\x99"); }752test { try toUnicodePass("xn--bss", "\xe5\xa4\x99"); }
541test { try toAsciiPass("xn--bss", "xn--bss", false); }753test { try toAsciiPass("xn--bss", "xn--bss", false); }
542test { try toAsciiPass("xn--bss", "xn--bss", true); }754test { try toAsciiPass("xn--bss", "xn--bss", true); }
...@@ -544,9 +756,14 @@ test { try toUnicodePass("\xe5\xa4\x99", "\xe5\xa4\x99"); }...@@ -544,9 +756,14 @@ test { try toUnicodePass("\xe5\xa4\x99", "\xe5\xa4\x99"); }
544test { try toAsciiPass("\xe5\xa4\x99", "xn--bss", false); }756test { try toAsciiPass("\xe5\xa4\x99", "xn--bss", false); }
545test { try toAsciiPass("\xe5\xa4\x99", "xn--bss", true); }757test { try toAsciiPass("\xe5\xa4\x99", "xn--bss", true); }
546test { try toUnicodeFail("xn--xn--bss-7z6ccid"); } // [C1, C2]758test { try toUnicodeFail("xn--xn--bss-7z6ccid"); } // [C1, C2]
759test { try toAsciiFail("xn--xn--bss-7z6ccid", false); } // [C1, C2]
760test { try toAsciiFail("xn--xn--bss-7z6ccid", true); } // [C1, C2]
547test { try toAsciiPass("\xe2\x80\x8cX\xe2\x80\x8dn\xe2\x80\x8c-\xe2\x80\x8d-B\xc3\x9f", "xn--bss", true); }761test { try toAsciiPass("\xe2\x80\x8cX\xe2\x80\x8dn\xe2\x80\x8c-\xe2\x80\x8d-B\xc3\x9f", "xn--bss", true); }
548test { try toUnicodeFail("\xe2\x80\x8cX\xe2\x80\x8dn\xe2\x80\x8c-\xe2\x80\x8d-B\xc3\x9f"); } // [C1, C2]762test { try toUnicodeFail("\xe2\x80\x8cX\xe2\x80\x8dn\xe2\x80\x8c-\xe2\x80\x8d-B\xc3\x9f"); } // [C1, C2]
763test { try toAsciiFail("\xe2\x80\x8cX\xe2\x80\x8dn\xe2\x80\x8c-\xe2\x80\x8d-B\xc3\x9f", false); } // [C1, C2]
549test { try toUnicodeFail("xn--xn--b-pqa5796ccahd"); } // [C1, C2]764test { try toUnicodeFail("xn--xn--b-pqa5796ccahd"); } // [C1, C2]
765test { try toAsciiFail("xn--xn--b-pqa5796ccahd", false); } // [C1, C2]
766test { try toAsciiFail("xn--xn--b-pqa5796ccahd", true); } // [C1, C2]
550test { try toUnicodePass("\xcb\xa3\xcd\x8f\xe2\x84\x95\xe2\x80\x8b\xef\xb9\xa3\xc2\xad\xef\xbc\x8d\xe1\xa0\x8c\xe2\x84\xac\xef\xb8\x80\xc5\xbf\xe2\x81\xa4\xf0\x9d\x94\xb0\xf3\xa0\x87\xaf\xef\xac\x84", "\xe5\xa4\xa1\xe5\xa4\x9e\xe5\xa4\x9c\xe5\xa4\x99"); }767test { try toUnicodePass("\xcb\xa3\xcd\x8f\xe2\x84\x95\xe2\x80\x8b\xef\xb9\xa3\xc2\xad\xef\xbc\x8d\xe1\xa0\x8c\xe2\x84\xac\xef\xb8\x80\xc5\xbf\xe2\x81\xa4\xf0\x9d\x94\xb0\xf3\xa0\x87\xaf\xef\xac\x84", "\xe5\xa4\xa1\xe5\xa4\x9e\xe5\xa4\x9c\xe5\xa4\x99"); }
551test { try toAsciiPass("\xcb\xa3\xcd\x8f\xe2\x84\x95\xe2\x80\x8b\xef\xb9\xa3\xc2\xad\xef\xbc\x8d\xe1\xa0\x8c\xe2\x84\xac\xef\xb8\x80\xc5\xbf\xe2\x81\xa4\xf0\x9d\x94\xb0\xf3\xa0\x87\xaf\xef\xac\x84", "xn--bssffl", false); }768test { try toAsciiPass("\xcb\xa3\xcd\x8f\xe2\x84\x95\xe2\x80\x8b\xef\xb9\xa3\xc2\xad\xef\xbc\x8d\xe1\xa0\x8c\xe2\x84\xac\xef\xb8\x80\xc5\xbf\xe2\x81\xa4\xf0\x9d\x94\xb0\xf3\xa0\x87\xaf\xef\xac\x84", "xn--bssffl", false); }
552test { try toAsciiPass("\xcb\xa3\xcd\x8f\xe2\x84\x95\xe2\x80\x8b\xef\xb9\xa3\xc2\xad\xef\xbc\x8d\xe1\xa0\x8c\xe2\x84\xac\xef\xb8\x80\xc5\xbf\xe2\x81\xa4\xf0\x9d\x94\xb0\xf3\xa0\x87\xaf\xef\xac\x84", "xn--bssffl", true); }769test { try toAsciiPass("\xcb\xa3\xcd\x8f\xe2\x84\x95\xe2\x80\x8b\xef\xb9\xa3\xc2\xad\xef\xbc\x8d\xe1\xa0\x8c\xe2\x84\xac\xef\xb8\x80\xc5\xbf\xe2\x81\xa4\xf0\x9d\x94\xb0\xf3\xa0\x87\xaf\xef\xac\x84", "xn--bssffl", true); }
...@@ -581,10 +798,20 @@ test { try toUnicodePass("123456789012345678901234567890123456789012345678901234...@@ -581,10 +798,20 @@ test { try toUnicodePass("123456789012345678901234567890123456789012345678901234
581test { try toAsciiPass("123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", false); }798test { try toAsciiPass("123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", false); }
582test { try toAsciiPass("123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", true); }799test { try toAsciiPass("123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", true); }
583test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", "123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."); }800test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", "123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."); }
801test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", false); } // [A4_2]
802test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", true); } // [A4_2]
584test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", "123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"); }803test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", "123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"); }
804test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", false); } // [A4_1]
805test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", true); } // [A4_1]
585test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", "123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"); }806test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", "123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"); }
807test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", false); } // [A4_2]
808test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", true); } // [A4_2]
586test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", "123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."); }809test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", "123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."); }
810test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", false); } // [A4_2]
811test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", true); } // [A4_2]
587test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"); }812test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"); }
813test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", false); } // [A4_1, A4_2]
814test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", true); } // [A4_1, A4_2]
588test { try toUnicodePass("\xc3\xa41234567890123456789012345678901234567890123456789012345", "\xc3\xa41234567890123456789012345678901234567890123456789012345"); }815test { try toUnicodePass("\xc3\xa41234567890123456789012345678901234567890123456789012345", "\xc3\xa41234567890123456789012345678901234567890123456789012345"); }
589test { try toAsciiPass("\xc3\xa41234567890123456789012345678901234567890123456789012345", "xn--1234567890123456789012345678901234567890123456789012345-9te", false); }816test { try toAsciiPass("\xc3\xa41234567890123456789012345678901234567890123456789012345", "xn--1234567890123456789012345678901234567890123456789012345-9te", false); }
590test { try toAsciiPass("\xc3\xa41234567890123456789012345678901234567890123456789012345", "xn--1234567890123456789012345678901234567890123456789012345-9te", true); }817test { try toAsciiPass("\xc3\xa41234567890123456789012345678901234567890123456789012345", "xn--1234567890123456789012345678901234567890123456789012345-9te", true); }
...@@ -616,77 +843,221 @@ test { try toUnicodePass("123456789012345678901234567890123456789012345678901234...@@ -616,77 +843,221 @@ test { try toUnicodePass("123456789012345678901234567890123456789012345678901234
616test { try toAsciiPass("123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", false); }843test { try toAsciiPass("123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", false); }
617test { try toAsciiPass("123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", true); }844test { try toAsciiPass("123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", true); }
618test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."); }845test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."); }
846test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", false); } // [A4_2]
847test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", true); } // [A4_2]
619test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890a\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."); }848test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890a\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."); }
849test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890a\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", false); } // [A4_2]
850test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890a\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", true); } // [A4_2]
620test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."); }851test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."); }
852test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B.", false); } // [A4_2]
853test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B.", true); } // [A4_2]
621test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x84123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."); }854test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x84123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."); }
855test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x84123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B.", false); } // [A4_2]
856test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x84123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B.", true); } // [A4_2]
622test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."); }857test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."); }
858test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", false); } // [A4_2]
859test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", true); } // [A4_2]
623test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"); }860test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"); }
861test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", false); } // [A4_1]
862test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", true); } // [A4_1]
624test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890a\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"); }863test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890a\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"); }
864test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890a\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", false); } // [A4_1]
865test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890a\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", true); } // [A4_1]
625test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901C", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"); }866test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901C", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"); }
867test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901C", false); } // [A4_1]
868test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901C", true); } // [A4_1]
626test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x84123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901C", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"); }869test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x84123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901C", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"); }
870test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x84123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901C", false); } // [A4_1]
871test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x84123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901C", true); } // [A4_1]
627test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"); }872test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"); }
873test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", false); } // [A4_1]
874test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", true); } // [A4_1]
628test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"); }875test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"); }
876test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", false); } // [A4_2]
877test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", true); } // [A4_2]
629test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890a\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"); }878test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890a\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"); }
879test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890a\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", false); } // [A4_2]
880test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890a\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", true); } // [A4_2]
630test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"); }881test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"); }
882test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A", false); } // [A4_2]
883test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A", true); } // [A4_2]
631test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"); }884test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"); }
885test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A", false); } // [A4_2]
886test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A", true); } // [A4_2]
632test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"); }887test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"); }
888test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", false); } // [A4_2]
889test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", true); } // [A4_2]
633test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."); }890test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."); }
891test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", false); } // [A4_2]
892test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", true); } // [A4_2]
634test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890a\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."); }893test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890a\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."); }
894test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890a\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", false); } // [A4_2]
895test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890a\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", true); } // [A4_2]
635test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."); }896test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."); }
897test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A.", false); } // [A4_2]
898test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A.", true); } // [A4_2]
636test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."); }899test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."); }
900test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A.", false); } // [A4_2]
901test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A.", true); } // [A4_2]
637test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."); }902test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."); }
903test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", false); } // [A4_2]
904test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", true); } // [A4_2]
638test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"); }905test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"); }
906test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", false); } // [A4_1, A4_2]
907test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", true); } // [A4_1, A4_2]
639test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890a\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"); }908test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890a\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"); }
909test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890a\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", false); } // [A4_1, A4_2]
910test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890a\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", true); } // [A4_1, A4_2]
640test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"); }911test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"); }
912test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B", false); } // [A4_1, A4_2]
913test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B", true); } // [A4_1, A4_2]
641test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"); }914test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"); }
915test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B", false); } // [A4_1, A4_2]
916test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B", true); } // [A4_1, A4_2]
642test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"); }917test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"); }
918test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", false); } // [A4_1, A4_2]
919test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", true); } // [A4_1, A4_2]
643test { try toUnicodeFail("a.b..-q--a-.e"); } // [V2, V3, X4_2]920test { try toUnicodeFail("a.b..-q--a-.e"); } // [V2, V3, X4_2]
921test { try toAsciiFail("a.b..-q--a-.e", false); } // [V2, V3, A4_2]
922test { try toAsciiFail("a.b..-q--a-.e", true); } // [V2, V3, A4_2]
644test { try toUnicodeFail("a.b..-q--\xc3\xa4-.e"); } // [V2, V3, X4_2]923test { try toUnicodeFail("a.b..-q--\xc3\xa4-.e"); } // [V2, V3, X4_2]
924test { try toAsciiFail("a.b..-q--\xc3\xa4-.e", false); } // [V2, V3, A4_2]
925test { try toAsciiFail("a.b..-q--\xc3\xa4-.e", true); } // [V2, V3, A4_2]
645test { try toUnicodeFail("a.b..-q--a\xcc\x88-.e"); } // [V2, V3, X4_2]926test { try toUnicodeFail("a.b..-q--a\xcc\x88-.e"); } // [V2, V3, X4_2]
927test { try toAsciiFail("a.b..-q--a\xcc\x88-.e", false); } // [V2, V3, A4_2]
928test { try toAsciiFail("a.b..-q--a\xcc\x88-.e", true); } // [V2, V3, A4_2]
646test { try toUnicodeFail("A.B..-Q--A\xcc\x88-.E"); } // [V2, V3, X4_2]929test { try toUnicodeFail("A.B..-Q--A\xcc\x88-.E"); } // [V2, V3, X4_2]
930test { try toAsciiFail("A.B..-Q--A\xcc\x88-.E", false); } // [V2, V3, A4_2]
931test { try toAsciiFail("A.B..-Q--A\xcc\x88-.E", true); } // [V2, V3, A4_2]
647test { try toUnicodeFail("A.B..-Q--\xc3\x84-.E"); } // [V2, V3, X4_2]932test { try toUnicodeFail("A.B..-Q--\xc3\x84-.E"); } // [V2, V3, X4_2]
933test { try toAsciiFail("A.B..-Q--\xc3\x84-.E", false); } // [V2, V3, A4_2]
934test { try toAsciiFail("A.B..-Q--\xc3\x84-.E", true); } // [V2, V3, A4_2]
648test { try toUnicodeFail("A.b..-Q--\xc3\x84-.E"); } // [V2, V3, X4_2]935test { try toUnicodeFail("A.b..-Q--\xc3\x84-.E"); } // [V2, V3, X4_2]
936test { try toAsciiFail("A.b..-Q--\xc3\x84-.E", false); } // [V2, V3, A4_2]
937test { try toAsciiFail("A.b..-Q--\xc3\x84-.E", true); } // [V2, V3, A4_2]
649test { try toUnicodeFail("A.b..-Q--A\xcc\x88-.E"); } // [V2, V3, X4_2]938test { try toUnicodeFail("A.b..-Q--A\xcc\x88-.E"); } // [V2, V3, X4_2]
939test { try toAsciiFail("A.b..-Q--A\xcc\x88-.E", false); } // [V2, V3, A4_2]
940test { try toAsciiFail("A.b..-Q--A\xcc\x88-.E", true); } // [V2, V3, A4_2]
650test { try toUnicodeFail("a.b..xn---q----jra.e"); } // [V2, V3, X4_2]941test { try toUnicodeFail("a.b..xn---q----jra.e"); } // [V2, V3, X4_2]
942test { try toAsciiFail("a.b..xn---q----jra.e", false); } // [V2, V3, A4_2]
943test { try toAsciiFail("a.b..xn---q----jra.e", true); } // [V2, V3, A4_2]
651test { try toUnicodeFail("a..c"); } // [X4_2]944test { try toUnicodeFail("a..c"); } // [X4_2]
945test { try toAsciiFail("a..c", false); } // [A4_2]
946test { try toAsciiFail("a..c", true); } // [A4_2]
652test { try toUnicodeFail("a.-b."); } // [V3]947test { try toUnicodeFail("a.-b."); } // [V3]
948test { try toAsciiFail("a.-b.", false); } // [V3, A4_2]
949test { try toAsciiFail("a.-b.", true); } // [V3, A4_2]
653test { try toUnicodeFail("a.b-.c"); } // [V3]950test { try toUnicodeFail("a.b-.c"); } // [V3]
951test { try toAsciiFail("a.b-.c", false); } // [V3]
952test { try toAsciiFail("a.b-.c", true); } // [V3]
654test { try toUnicodeFail("a.-.c"); } // [V3]953test { try toUnicodeFail("a.-.c"); } // [V3]
954test { try toAsciiFail("a.-.c", false); } // [V3]
955test { try toAsciiFail("a.-.c", true); } // [V3]
655test { try toUnicodeFail("a.bc--de.f"); } // [V2]956test { try toUnicodeFail("a.bc--de.f"); } // [V2]
957test { try toAsciiFail("a.bc--de.f", false); } // [V2]
958test { try toAsciiFail("a.bc--de.f", true); } // [V2]
656test { try toUnicodeFail("xn--xn---epa"); } // [V2, V4]959test { try toUnicodeFail("xn--xn---epa"); } // [V2, V4]
960test { try toAsciiFail("xn--xn---epa", false); } // [V2, V4]
961test { try toAsciiFail("xn--xn---epa", true); } // [V2, V4]
657test { try toUnicodeFail("\xc3\xa4.\xc2\xad.c"); } // [X4_2]962test { try toUnicodeFail("\xc3\xa4.\xc2\xad.c"); } // [X4_2]
963test { try toAsciiFail("\xc3\xa4.\xc2\xad.c", false); } // [A4_2]
964test { try toAsciiFail("\xc3\xa4.\xc2\xad.c", true); } // [A4_2]
658test { try toUnicodeFail("a\xcc\x88.\xc2\xad.c"); } // [X4_2]965test { try toUnicodeFail("a\xcc\x88.\xc2\xad.c"); } // [X4_2]
966test { try toAsciiFail("a\xcc\x88.\xc2\xad.c", false); } // [A4_2]
967test { try toAsciiFail("a\xcc\x88.\xc2\xad.c", true); } // [A4_2]
659test { try toUnicodeFail("A\xcc\x88.\xc2\xad.C"); } // [X4_2]968test { try toUnicodeFail("A\xcc\x88.\xc2\xad.C"); } // [X4_2]
969test { try toAsciiFail("A\xcc\x88.\xc2\xad.C", false); } // [A4_2]
970test { try toAsciiFail("A\xcc\x88.\xc2\xad.C", true); } // [A4_2]
660test { try toUnicodeFail("\xc3\x84.\xc2\xad.C"); } // [X4_2]971test { try toUnicodeFail("\xc3\x84.\xc2\xad.C"); } // [X4_2]
972test { try toAsciiFail("\xc3\x84.\xc2\xad.C", false); } // [A4_2]
973test { try toAsciiFail("\xc3\x84.\xc2\xad.C", true); } // [A4_2]
661test { try toUnicodeFail("xn--4ca..c"); } // [X4_2]974test { try toUnicodeFail("xn--4ca..c"); } // [X4_2]
975test { try toAsciiFail("xn--4ca..c", false); } // [A4_2]
976test { try toAsciiFail("xn--4ca..c", true); } // [A4_2]
662test { try toUnicodeFail("\xc3\xa4.-b."); } // [V3]977test { try toUnicodeFail("\xc3\xa4.-b."); } // [V3]
978test { try toAsciiFail("\xc3\xa4.-b.", false); } // [V3, A4_2]
979test { try toAsciiFail("\xc3\xa4.-b.", true); } // [V3, A4_2]
663test { try toUnicodeFail("a\xcc\x88.-b."); } // [V3]980test { try toUnicodeFail("a\xcc\x88.-b."); } // [V3]
981test { try toAsciiFail("a\xcc\x88.-b.", false); } // [V3, A4_2]
982test { try toAsciiFail("a\xcc\x88.-b.", true); } // [V3, A4_2]
664test { try toUnicodeFail("A\xcc\x88.-B."); } // [V3]983test { try toUnicodeFail("A\xcc\x88.-B."); } // [V3]
984test { try toAsciiFail("A\xcc\x88.-B.", false); } // [V3, A4_2]
985test { try toAsciiFail("A\xcc\x88.-B.", true); } // [V3, A4_2]
665test { try toUnicodeFail("\xc3\x84.-B."); } // [V3]986test { try toUnicodeFail("\xc3\x84.-B."); } // [V3]
987test { try toAsciiFail("\xc3\x84.-B.", false); } // [V3, A4_2]
988test { try toAsciiFail("\xc3\x84.-B.", true); } // [V3, A4_2]
666test { try toUnicodeFail("xn--4ca.-b."); } // [V3]989test { try toUnicodeFail("xn--4ca.-b."); } // [V3]
990test { try toAsciiFail("xn--4ca.-b.", false); } // [V3, A4_2]
991test { try toAsciiFail("xn--4ca.-b.", true); } // [V3, A4_2]
667test { try toUnicodeFail("\xc3\xa4.b-.c"); } // [V3]992test { try toUnicodeFail("\xc3\xa4.b-.c"); } // [V3]
993test { try toAsciiFail("\xc3\xa4.b-.c", false); } // [V3]
994test { try toAsciiFail("\xc3\xa4.b-.c", true); } // [V3]
668test { try toUnicodeFail("a\xcc\x88.b-.c"); } // [V3]995test { try toUnicodeFail("a\xcc\x88.b-.c"); } // [V3]
996test { try toAsciiFail("a\xcc\x88.b-.c", false); } // [V3]
997test { try toAsciiFail("a\xcc\x88.b-.c", true); } // [V3]
669test { try toUnicodeFail("A\xcc\x88.B-.C"); } // [V3]998test { try toUnicodeFail("A\xcc\x88.B-.C"); } // [V3]
999test { try toAsciiFail("A\xcc\x88.B-.C", false); } // [V3]
1000test { try toAsciiFail("A\xcc\x88.B-.C", true); } // [V3]
670test { try toUnicodeFail("\xc3\x84.B-.C"); } // [V3]1001test { try toUnicodeFail("\xc3\x84.B-.C"); } // [V3]
1002test { try toAsciiFail("\xc3\x84.B-.C", false); } // [V3]
1003test { try toAsciiFail("\xc3\x84.B-.C", true); } // [V3]
671test { try toUnicodeFail("\xc3\x84.b-.C"); } // [V3]1004test { try toUnicodeFail("\xc3\x84.b-.C"); } // [V3]
1005test { try toAsciiFail("\xc3\x84.b-.C", false); } // [V3]
1006test { try toAsciiFail("\xc3\x84.b-.C", true); } // [V3]
672test { try toUnicodeFail("A\xcc\x88.b-.C"); } // [V3]1007test { try toUnicodeFail("A\xcc\x88.b-.C"); } // [V3]
1008test { try toAsciiFail("A\xcc\x88.b-.C", false); } // [V3]
1009test { try toAsciiFail("A\xcc\x88.b-.C", true); } // [V3]
673test { try toUnicodeFail("xn--4ca.b-.c"); } // [V3]1010test { try toUnicodeFail("xn--4ca.b-.c"); } // [V3]
1011test { try toAsciiFail("xn--4ca.b-.c", false); } // [V3]
1012test { try toAsciiFail("xn--4ca.b-.c", true); } // [V3]
674test { try toUnicodeFail("\xc3\xa4.-.c"); } // [V3]1013test { try toUnicodeFail("\xc3\xa4.-.c"); } // [V3]
1014test { try toAsciiFail("\xc3\xa4.-.c", false); } // [V3]
1015test { try toAsciiFail("\xc3\xa4.-.c", true); } // [V3]
675test { try toUnicodeFail("a\xcc\x88.-.c"); } // [V3]1016test { try toUnicodeFail("a\xcc\x88.-.c"); } // [V3]
1017test { try toAsciiFail("a\xcc\x88.-.c", false); } // [V3]
1018test { try toAsciiFail("a\xcc\x88.-.c", true); } // [V3]
676test { try toUnicodeFail("A\xcc\x88.-.C"); } // [V3]1019test { try toUnicodeFail("A\xcc\x88.-.C"); } // [V3]
1020test { try toAsciiFail("A\xcc\x88.-.C", false); } // [V3]
1021test { try toAsciiFail("A\xcc\x88.-.C", true); } // [V3]
677test { try toUnicodeFail("\xc3\x84.-.C"); } // [V3]1022test { try toUnicodeFail("\xc3\x84.-.C"); } // [V3]
1023test { try toAsciiFail("\xc3\x84.-.C", false); } // [V3]
1024test { try toAsciiFail("\xc3\x84.-.C", true); } // [V3]
678test { try toUnicodeFail("xn--4ca.-.c"); } // [V3]1025test { try toUnicodeFail("xn--4ca.-.c"); } // [V3]
1026test { try toAsciiFail("xn--4ca.-.c", false); } // [V3]
1027test { try toAsciiFail("xn--4ca.-.c", true); } // [V3]
679test { try toUnicodeFail("\xc3\xa4.bc--de.f"); } // [V2]1028test { try toUnicodeFail("\xc3\xa4.bc--de.f"); } // [V2]
1029test { try toAsciiFail("\xc3\xa4.bc--de.f", false); } // [V2]
1030test { try toAsciiFail("\xc3\xa4.bc--de.f", true); } // [V2]
680test { try toUnicodeFail("a\xcc\x88.bc--de.f"); } // [V2]1031test { try toUnicodeFail("a\xcc\x88.bc--de.f"); } // [V2]
1032test { try toAsciiFail("a\xcc\x88.bc--de.f", false); } // [V2]
1033test { try toAsciiFail("a\xcc\x88.bc--de.f", true); } // [V2]
681test { try toUnicodeFail("A\xcc\x88.BC--DE.F"); } // [V2]1034test { try toUnicodeFail("A\xcc\x88.BC--DE.F"); } // [V2]
1035test { try toAsciiFail("A\xcc\x88.BC--DE.F", false); } // [V2]
1036test { try toAsciiFail("A\xcc\x88.BC--DE.F", true); } // [V2]
682test { try toUnicodeFail("\xc3\x84.BC--DE.F"); } // [V2]1037test { try toUnicodeFail("\xc3\x84.BC--DE.F"); } // [V2]
1038test { try toAsciiFail("\xc3\x84.BC--DE.F", false); } // [V2]
1039test { try toAsciiFail("\xc3\x84.BC--DE.F", true); } // [V2]
683test { try toUnicodeFail("\xc3\x84.bc--De.f"); } // [V2]1040test { try toUnicodeFail("\xc3\x84.bc--De.f"); } // [V2]
1041test { try toAsciiFail("\xc3\x84.bc--De.f", false); } // [V2]
1042test { try toAsciiFail("\xc3\x84.bc--De.f", true); } // [V2]
684test { try toUnicodeFail("A\xcc\x88.bc--De.f"); } // [V2]1043test { try toUnicodeFail("A\xcc\x88.bc--De.f"); } // [V2]
1044test { try toAsciiFail("A\xcc\x88.bc--De.f", false); } // [V2]
1045test { try toAsciiFail("A\xcc\x88.bc--De.f", true); } // [V2]
685test { try toUnicodeFail("xn--4ca.bc--de.f"); } // [V2]1046test { try toUnicodeFail("xn--4ca.bc--de.f"); } // [V2]
1047test { try toAsciiFail("xn--4ca.bc--de.f", false); } // [V2]
1048test { try toAsciiFail("xn--4ca.bc--de.f", true); } // [V2]
686test { try toUnicodeFail("a.b.\xcc\x88c.d"); } // [V6]1049test { try toUnicodeFail("a.b.\xcc\x88c.d"); } // [V6]
1050test { try toAsciiFail("a.b.\xcc\x88c.d", false); } // [V6]
1051test { try toAsciiFail("a.b.\xcc\x88c.d", true); } // [V6]
687test { try toUnicodeFail("A.B.\xcc\x88C.D"); } // [V6]1052test { try toUnicodeFail("A.B.\xcc\x88C.D"); } // [V6]
1053test { try toAsciiFail("A.B.\xcc\x88C.D", false); } // [V6]
1054test { try toAsciiFail("A.B.\xcc\x88C.D", true); } // [V6]
688test { try toUnicodeFail("A.b.\xcc\x88c.d"); } // [V6]1055test { try toUnicodeFail("A.b.\xcc\x88c.d"); } // [V6]
1056test { try toAsciiFail("A.b.\xcc\x88c.d", false); } // [V6]
1057test { try toAsciiFail("A.b.\xcc\x88c.d", true); } // [V6]
689test { try toUnicodeFail("a.b.xn--c-bcb.d"); } // [V6]1058test { try toUnicodeFail("a.b.xn--c-bcb.d"); } // [V6]
1059test { try toAsciiFail("a.b.xn--c-bcb.d", false); } // [V6]
1060test { try toAsciiFail("a.b.xn--c-bcb.d", true); } // [V6]
690test { try toUnicodePass("A0", "a0"); }1061test { try toUnicodePass("A0", "a0"); }
691test { try toAsciiPass("A0", "a0", false); }1062test { try toAsciiPass("A0", "a0", false); }
692test { try toAsciiPass("A0", "a0", true); }1063test { try toAsciiPass("A0", "a0", true); }
...@@ -694,16 +1065,38 @@ test { try toUnicodePass("0A", "0a"); }...@@ -694,16 +1065,38 @@ test { try toUnicodePass("0A", "0a"); }
694test { try toAsciiPass("0A", "0a", false); }1065test { try toAsciiPass("0A", "0a", false); }
695test { try toAsciiPass("0A", "0a", true); }1066test { try toAsciiPass("0A", "0a", true); }
696test { try toUnicodeFail("0A.\xd7\x90"); } // [B1]1067test { try toUnicodeFail("0A.\xd7\x90"); } // [B1]
1068test { try toAsciiFail("0A.\xd7\x90", false); } // [B1]
1069test { try toAsciiFail("0A.\xd7\x90", true); } // [B1]
697test { try toUnicodeFail("0a.\xd7\x90"); } // [B1]1070test { try toUnicodeFail("0a.\xd7\x90"); } // [B1]
1071test { try toAsciiFail("0a.\xd7\x90", false); } // [B1]
1072test { try toAsciiFail("0a.\xd7\x90", true); } // [B1]
698test { try toUnicodeFail("0a.xn--4db"); } // [B1]1073test { try toUnicodeFail("0a.xn--4db"); } // [B1]
1074test { try toAsciiFail("0a.xn--4db", false); } // [B1]
1075test { try toAsciiFail("0a.xn--4db", true); } // [B1]
699test { try toUnicodeFail("c.xn--0-eha.xn--4db"); } // [B1]1076test { try toUnicodeFail("c.xn--0-eha.xn--4db"); } // [B1]
1077test { try toAsciiFail("c.xn--0-eha.xn--4db", false); } // [B1]
1078test { try toAsciiFail("c.xn--0-eha.xn--4db", true); } // [B1]
700test { try toUnicodeFail("b-.\xd7\x90"); } // [B6, V3]1079test { try toUnicodeFail("b-.\xd7\x90"); } // [B6, V3]
1080test { try toAsciiFail("b-.\xd7\x90", false); } // [B6, V3]
1081test { try toAsciiFail("b-.\xd7\x90", true); } // [B6, V3]
701test { try toUnicodeFail("B-.\xd7\x90"); } // [B6, V3]1082test { try toUnicodeFail("B-.\xd7\x90"); } // [B6, V3]
1083test { try toAsciiFail("B-.\xd7\x90", false); } // [B6, V3]
1084test { try toAsciiFail("B-.\xd7\x90", true); } // [B6, V3]
702test { try toUnicodeFail("b-.xn--4db"); } // [B6, V3]1085test { try toUnicodeFail("b-.xn--4db"); } // [B6, V3]
1086test { try toAsciiFail("b-.xn--4db", false); } // [B6, V3]
1087test { try toAsciiFail("b-.xn--4db", true); } // [B6, V3]
703test { try toUnicodeFail("d.xn----dha.xn--4db"); } // [B6, V3]1088test { try toUnicodeFail("d.xn----dha.xn--4db"); } // [B6, V3]
1089test { try toAsciiFail("d.xn----dha.xn--4db", false); } // [B6, V3]
1090test { try toAsciiFail("d.xn----dha.xn--4db", true); } // [B6, V3]
704test { try toUnicodeFail("a\xd7\x90"); } // [B5, B6]1091test { try toUnicodeFail("a\xd7\x90"); } // [B5, B6]
1092test { try toAsciiFail("a\xd7\x90", false); } // [B5, B6]
1093test { try toAsciiFail("a\xd7\x90", true); } // [B5, B6]
705test { try toUnicodeFail("A\xd7\x90"); } // [B5, B6]1094test { try toUnicodeFail("A\xd7\x90"); } // [B5, B6]
1095test { try toAsciiFail("A\xd7\x90", false); } // [B5, B6]
1096test { try toAsciiFail("A\xd7\x90", true); } // [B5, B6]
706test { try toUnicodeFail("xn--a-0hc"); } // [B5, B6]1097test { try toUnicodeFail("xn--a-0hc"); } // [B5, B6]
1098test { try toAsciiFail("xn--a-0hc", false); } // [B5, B6]
1099test { try toAsciiFail("xn--a-0hc", true); } // [B5, B6]
707test { try toUnicodePass("\xd7\x90\xd7\x87", "\xd7\x90\xd7\x87"); }1100test { try toUnicodePass("\xd7\x90\xd7\x87", "\xd7\x90\xd7\x87"); }
708test { try toAsciiPass("\xd7\x90\xd7\x87", "xn--vdbr", false); }1101test { try toAsciiPass("\xd7\x90\xd7\x87", "xn--vdbr", false); }
709test { try toAsciiPass("\xd7\x90\xd7\x87", "xn--vdbr", true); }1102test { try toAsciiPass("\xd7\x90\xd7\x87", "xn--vdbr", true); }
...@@ -717,8 +1110,14 @@ test { try toUnicodePass("xn--9-ihcz", "\xd7\x909\xd7\x87"); }...@@ -717,8 +1110,14 @@ test { try toUnicodePass("xn--9-ihcz", "\xd7\x909\xd7\x87"); }
717test { try toAsciiPass("xn--9-ihcz", "xn--9-ihcz", false); }1110test { try toAsciiPass("xn--9-ihcz", "xn--9-ihcz", false); }
718test { try toAsciiPass("xn--9-ihcz", "xn--9-ihcz", true); }1111test { try toAsciiPass("xn--9-ihcz", "xn--9-ihcz", true); }
719test { try toUnicodeFail("\xd7\x90a\xd7\x87"); } // [B2, B3]1112test { try toUnicodeFail("\xd7\x90a\xd7\x87"); } // [B2, B3]
1113test { try toAsciiFail("\xd7\x90a\xd7\x87", false); } // [B2, B3]
1114test { try toAsciiFail("\xd7\x90a\xd7\x87", true); } // [B2, B3]
720test { try toUnicodeFail("\xd7\x90A\xd7\x87"); } // [B2, B3]1115test { try toUnicodeFail("\xd7\x90A\xd7\x87"); } // [B2, B3]
1116test { try toAsciiFail("\xd7\x90A\xd7\x87", false); } // [B2, B3]
1117test { try toAsciiFail("\xd7\x90A\xd7\x87", true); } // [B2, B3]
721test { try toUnicodeFail("xn--a-ihcz"); } // [B2, B3]1118test { try toUnicodeFail("xn--a-ihcz"); } // [B2, B3]
1119test { try toAsciiFail("xn--a-ihcz", false); } // [B2, B3]
1120test { try toAsciiFail("xn--a-ihcz", true); } // [B2, B3]
722test { try toUnicodePass("\xd7\x90\xd7\xaa", "\xd7\x90\xd7\xaa"); }1121test { try toUnicodePass("\xd7\x90\xd7\xaa", "\xd7\x90\xd7\xaa"); }
723test { try toAsciiPass("\xd7\x90\xd7\xaa", "xn--4db6c", false); }1122test { try toAsciiPass("\xd7\x90\xd7\xaa", "xn--4db6c", false); }
724test { try toAsciiPass("\xd7\x90\xd7\xaa", "xn--4db6c", true); }1123test { try toAsciiPass("\xd7\x90\xd7\xaa", "xn--4db6c", true); }
...@@ -732,13 +1131,29 @@ test { try toUnicodePass("xn--4db6c0a", "\xd7\x90\xd7\xb3\xd7\xaa"); }...@@ -732,13 +1131,29 @@ test { try toUnicodePass("xn--4db6c0a", "\xd7\x90\xd7\xb3\xd7\xaa"); }
732test { try toAsciiPass("xn--4db6c0a", "xn--4db6c0a", false); }1131test { try toAsciiPass("xn--4db6c0a", "xn--4db6c0a", false); }
733test { try toAsciiPass("xn--4db6c0a", "xn--4db6c0a", true); }1132test { try toAsciiPass("xn--4db6c0a", "xn--4db6c0a", true); }
734test { try toUnicodeFail("a\xd7\x90Tz"); } // [B5]1133test { try toUnicodeFail("a\xd7\x90Tz"); } // [B5]
1134test { try toAsciiFail("a\xd7\x90Tz", false); } // [B5]
1135test { try toAsciiFail("a\xd7\x90Tz", true); } // [B5]
735test { try toUnicodeFail("a\xd7\x90tz"); } // [B5]1136test { try toUnicodeFail("a\xd7\x90tz"); } // [B5]
1137test { try toAsciiFail("a\xd7\x90tz", false); } // [B5]
1138test { try toAsciiFail("a\xd7\x90tz", true); } // [B5]
736test { try toUnicodeFail("A\xd7\x90TZ"); } // [B5]1139test { try toUnicodeFail("A\xd7\x90TZ"); } // [B5]
1140test { try toAsciiFail("A\xd7\x90TZ", false); } // [B5]
1141test { try toAsciiFail("A\xd7\x90TZ", true); } // [B5]
737test { try toUnicodeFail("A\xd7\x90tz"); } // [B5]1142test { try toUnicodeFail("A\xd7\x90tz"); } // [B5]
1143test { try toAsciiFail("A\xd7\x90tz", false); } // [B5]
1144test { try toAsciiFail("A\xd7\x90tz", true); } // [B5]
738test { try toUnicodeFail("xn--atz-qpe"); } // [B5]1145test { try toUnicodeFail("xn--atz-qpe"); } // [B5]
1146test { try toAsciiFail("xn--atz-qpe", false); } // [B5]
1147test { try toAsciiFail("xn--atz-qpe", true); } // [B5]
739test { try toUnicodeFail("\xd7\x90T\xd7\xaa"); } // [B2]1148test { try toUnicodeFail("\xd7\x90T\xd7\xaa"); } // [B2]
1149test { try toAsciiFail("\xd7\x90T\xd7\xaa", false); } // [B2]
1150test { try toAsciiFail("\xd7\x90T\xd7\xaa", true); } // [B2]
740test { try toUnicodeFail("\xd7\x90t\xd7\xaa"); } // [B2]1151test { try toUnicodeFail("\xd7\x90t\xd7\xaa"); } // [B2]
1152test { try toAsciiFail("\xd7\x90t\xd7\xaa", false); } // [B2]
1153test { try toAsciiFail("\xd7\x90t\xd7\xaa", true); } // [B2]
741test { try toUnicodeFail("xn--t-zhc3f"); } // [B2]1154test { try toUnicodeFail("xn--t-zhc3f"); } // [B2]
1155test { try toAsciiFail("xn--t-zhc3f", false); } // [B2]
1156test { try toAsciiFail("xn--t-zhc3f", true); } // [B2]
742test { try toUnicodePass("\xd7\x907\xd7\xaa", "\xd7\x907\xd7\xaa"); }1157test { try toUnicodePass("\xd7\x907\xd7\xaa", "\xd7\x907\xd7\xaa"); }
743test { try toAsciiPass("\xd7\x907\xd7\xaa", "xn--7-zhc3f", false); }1158test { try toAsciiPass("\xd7\x907\xd7\xaa", "xn--7-zhc3f", false); }
744test { try toAsciiPass("\xd7\x907\xd7\xaa", "xn--7-zhc3f", true); }1159test { try toAsciiPass("\xd7\x907\xd7\xaa", "xn--7-zhc3f", true); }
...@@ -752,11 +1167,23 @@ test { try toUnicodePass("xn--4db6c6t", "\xd7\x90\xd9\xa7\xd7\xaa"); }...@@ -752,11 +1167,23 @@ test { try toUnicodePass("xn--4db6c6t", "\xd7\x90\xd9\xa7\xd7\xaa"); }
752test { try toAsciiPass("xn--4db6c6t", "xn--4db6c6t", false); }1167test { try toAsciiPass("xn--4db6c6t", "xn--4db6c6t", false); }
753test { try toAsciiPass("xn--4db6c6t", "xn--4db6c6t", true); }1168test { try toAsciiPass("xn--4db6c6t", "xn--4db6c6t", true); }
754test { try toUnicodeFail("a7\xd9\xa7z"); } // [B5]1169test { try toUnicodeFail("a7\xd9\xa7z"); } // [B5]
1170test { try toAsciiFail("a7\xd9\xa7z", false); } // [B5]
1171test { try toAsciiFail("a7\xd9\xa7z", true); } // [B5]
755test { try toUnicodeFail("A7\xd9\xa7Z"); } // [B5]1172test { try toUnicodeFail("A7\xd9\xa7Z"); } // [B5]
1173test { try toAsciiFail("A7\xd9\xa7Z", false); } // [B5]
1174test { try toAsciiFail("A7\xd9\xa7Z", true); } // [B5]
756test { try toUnicodeFail("A7\xd9\xa7z"); } // [B5]1175test { try toUnicodeFail("A7\xd9\xa7z"); } // [B5]
1176test { try toAsciiFail("A7\xd9\xa7z", false); } // [B5]
1177test { try toAsciiFail("A7\xd9\xa7z", true); } // [B5]
757test { try toUnicodeFail("xn--a7z-06e"); } // [B5]1178test { try toUnicodeFail("xn--a7z-06e"); } // [B5]
1179test { try toAsciiFail("xn--a7z-06e", false); } // [B5]
1180test { try toAsciiFail("xn--a7z-06e", true); } // [B5]
758test { try toUnicodeFail("\xd7\x907\xd9\xa7\xd7\xaa"); } // [B4]1181test { try toUnicodeFail("\xd7\x907\xd9\xa7\xd7\xaa"); } // [B4]
1182test { try toAsciiFail("\xd7\x907\xd9\xa7\xd7\xaa", false); } // [B4]
1183test { try toAsciiFail("\xd7\x907\xd9\xa7\xd7\xaa", true); } // [B4]
759test { try toUnicodeFail("xn--7-zhc3fty"); } // [B4]1184test { try toUnicodeFail("xn--7-zhc3fty"); } // [B4]
1185test { try toAsciiFail("xn--7-zhc3fty", false); } // [B4]
1186test { try toAsciiFail("xn--7-zhc3fty", true); } // [B4]
760test { try toUnicodePass("\xe0\xae\xb9\xe0\xaf\x8d\xe2\x80\x8d", "\xe0\xae\xb9\xe0\xaf\x8d\xe2\x80\x8d"); }1187test { try toUnicodePass("\xe0\xae\xb9\xe0\xaf\x8d\xe2\x80\x8d", "\xe0\xae\xb9\xe0\xaf\x8d\xe2\x80\x8d"); }
761test { try toAsciiPass("\xe0\xae\xb9\xe0\xaf\x8d\xe2\x80\x8d", "xn--dmc4b194h", false); }1188test { try toAsciiPass("\xe0\xae\xb9\xe0\xaf\x8d\xe2\x80\x8d", "xn--dmc4b194h", false); }
762test { try toAsciiPass("\xe0\xae\xb9\xe0\xaf\x8d\xe2\x80\x8d", "xn--dmc4b", true); }1189test { try toAsciiPass("\xe0\xae\xb9\xe0\xaf\x8d\xe2\x80\x8d", "xn--dmc4b", true); }
...@@ -771,6 +1198,7 @@ test { try toAsciiPass("xn--dmc4b194h", "xn--dmc4b194h", false); }...@@ -771,6 +1198,7 @@ test { try toAsciiPass("xn--dmc4b194h", "xn--dmc4b194h", false); }
771test { try toAsciiPass("xn--dmc4b194h", "xn--dmc4b194h", true); }1198test { try toAsciiPass("xn--dmc4b194h", "xn--dmc4b194h", true); }
772test { try toAsciiPass("\xe0\xae\xb9\xe2\x80\x8d", "xn--dmc", true); }1199test { try toAsciiPass("\xe0\xae\xb9\xe2\x80\x8d", "xn--dmc", true); }
773test { try toUnicodeFail("\xe0\xae\xb9\xe2\x80\x8d"); } // [C2]1200test { try toUnicodeFail("\xe0\xae\xb9\xe2\x80\x8d"); } // [C2]
1201test { try toAsciiFail("\xe0\xae\xb9\xe2\x80\x8d", false); } // [C2]
774test { try toUnicodePass("xn--dmc", "\xe0\xae\xb9"); }1202test { try toUnicodePass("xn--dmc", "\xe0\xae\xb9"); }
775test { try toAsciiPass("xn--dmc", "xn--dmc", false); }1203test { try toAsciiPass("xn--dmc", "xn--dmc", false); }
776test { try toAsciiPass("xn--dmc", "xn--dmc", true); }1204test { try toAsciiPass("xn--dmc", "xn--dmc", true); }
...@@ -778,8 +1206,14 @@ test { try toUnicodePass("\xe0\xae\xb9", "\xe0\xae\xb9"); }...@@ -778,8 +1206,14 @@ test { try toUnicodePass("\xe0\xae\xb9", "\xe0\xae\xb9"); }
778test { try toAsciiPass("\xe0\xae\xb9", "xn--dmc", false); }1206test { try toAsciiPass("\xe0\xae\xb9", "xn--dmc", false); }
779test { try toAsciiPass("\xe0\xae\xb9", "xn--dmc", true); }1207test { try toAsciiPass("\xe0\xae\xb9", "xn--dmc", true); }
780test { try toUnicodeFail("xn--dmc225h"); } // [C2]1208test { try toUnicodeFail("xn--dmc225h"); } // [C2]
1209test { try toAsciiFail("xn--dmc225h", false); } // [C2]
1210test { try toAsciiFail("xn--dmc225h", true); } // [C2]
781test { try toUnicodeFail("\xe2\x80\x8d"); } // [C2]1211test { try toUnicodeFail("\xe2\x80\x8d"); } // [C2]
1212test { try toAsciiFail("\xe2\x80\x8d", false); } // [C2]
1213test { try toAsciiFail("\xe2\x80\x8d", true); } // [A4_1, A4_2]
782test { try toUnicodeFail("xn--1ug"); } // [C2]1214test { try toUnicodeFail("xn--1ug"); } // [C2]
1215test { try toAsciiFail("xn--1ug", false); } // [C2]
1216test { try toAsciiFail("xn--1ug", true); } // [C2]
783test { try toUnicodePass("\xe0\xae\xb9\xe0\xaf\x8d\xe2\x80\x8c", "\xe0\xae\xb9\xe0\xaf\x8d\xe2\x80\x8c"); }1217test { try toUnicodePass("\xe0\xae\xb9\xe0\xaf\x8d\xe2\x80\x8c", "\xe0\xae\xb9\xe0\xaf\x8d\xe2\x80\x8c"); }
784test { try toAsciiPass("\xe0\xae\xb9\xe0\xaf\x8d\xe2\x80\x8c", "xn--dmc4by94h", false); }1218test { try toAsciiPass("\xe0\xae\xb9\xe0\xaf\x8d\xe2\x80\x8c", "xn--dmc4by94h", false); }
785test { try toAsciiPass("\xe0\xae\xb9\xe0\xaf\x8d\xe2\x80\x8c", "xn--dmc4b", true); }1219test { try toAsciiPass("\xe0\xae\xb9\xe0\xaf\x8d\xe2\x80\x8c", "xn--dmc4b", true); }
...@@ -788,9 +1222,16 @@ test { try toAsciiPass("xn--dmc4by94h", "xn--dmc4by94h", false); }...@@ -788,9 +1222,16 @@ test { try toAsciiPass("xn--dmc4by94h", "xn--dmc4by94h", false); }
788test { try toAsciiPass("xn--dmc4by94h", "xn--dmc4by94h", true); }1222test { try toAsciiPass("xn--dmc4by94h", "xn--dmc4by94h", true); }
789test { try toAsciiPass("\xe0\xae\xb9\xe2\x80\x8c", "xn--dmc", true); }1223test { try toAsciiPass("\xe0\xae\xb9\xe2\x80\x8c", "xn--dmc", true); }
790test { try toUnicodeFail("\xe0\xae\xb9\xe2\x80\x8c"); } // [C1]1224test { try toUnicodeFail("\xe0\xae\xb9\xe2\x80\x8c"); } // [C1]
1225test { try toAsciiFail("\xe0\xae\xb9\xe2\x80\x8c", false); } // [C1]
791test { try toUnicodeFail("xn--dmc025h"); } // [C1]1226test { try toUnicodeFail("xn--dmc025h"); } // [C1]
1227test { try toAsciiFail("xn--dmc025h", false); } // [C1]
1228test { try toAsciiFail("xn--dmc025h", true); } // [C1]
792test { try toUnicodeFail("\xe2\x80\x8c"); } // [C1]1229test { try toUnicodeFail("\xe2\x80\x8c"); } // [C1]
1230test { try toAsciiFail("\xe2\x80\x8c", false); } // [C1]
1231test { try toAsciiFail("\xe2\x80\x8c", true); } // [A4_1, A4_2]
793test { try toUnicodeFail("xn--0ug"); } // [C1]1232test { try toUnicodeFail("xn--0ug"); } // [C1]
1233test { try toAsciiFail("xn--0ug", false); } // [C1]
1234test { try toAsciiFail("xn--0ug", true); } // [C1]
794test { try toUnicodePass("\xd9\x84\xd9\xb0\xe2\x80\x8c\xdb\xad\xdb\xaf", "\xd9\x84\xd9\xb0\xe2\x80\x8c\xdb\xad\xdb\xaf"); }1235test { try toUnicodePass("\xd9\x84\xd9\xb0\xe2\x80\x8c\xdb\xad\xdb\xaf", "\xd9\x84\xd9\xb0\xe2\x80\x8c\xdb\xad\xdb\xaf"); }
795test { try toAsciiPass("\xd9\x84\xd9\xb0\xe2\x80\x8c\xdb\xad\xdb\xaf", "xn--ghb2gxqia7523a", false); }1236test { try toAsciiPass("\xd9\x84\xd9\xb0\xe2\x80\x8c\xdb\xad\xdb\xaf", "xn--ghb2gxqia7523a", false); }
796test { try toAsciiPass("\xd9\x84\xd9\xb0\xe2\x80\x8c\xdb\xad\xdb\xaf", "xn--ghb2gxqia", true); }1237test { try toAsciiPass("\xd9\x84\xd9\xb0\xe2\x80\x8c\xdb\xad\xdb\xaf", "xn--ghb2gxqia", true); }
...@@ -841,6 +1282,7 @@ test { try toAsciiPass("xn--ghb65a953d", "xn--ghb65a953d", false); }...@@ -841,6 +1282,7 @@ test { try toAsciiPass("xn--ghb65a953d", "xn--ghb65a953d", false); }
841test { try toAsciiPass("xn--ghb65a953d", "xn--ghb65a953d", true); }1282test { try toAsciiPass("xn--ghb65a953d", "xn--ghb65a953d", true); }
842test { try toAsciiPass("\xd9\x84\xd9\xb0\xe2\x80\x8c\xdb\xad", "xn--ghb2gxq", true); }1283test { try toAsciiPass("\xd9\x84\xd9\xb0\xe2\x80\x8c\xdb\xad", "xn--ghb2gxq", true); }
843test { try toUnicodeFail("\xd9\x84\xd9\xb0\xe2\x80\x8c\xdb\xad"); } // [B3, C1]1284test { try toUnicodeFail("\xd9\x84\xd9\xb0\xe2\x80\x8c\xdb\xad"); } // [B3, C1]
1285test { try toAsciiFail("\xd9\x84\xd9\xb0\xe2\x80\x8c\xdb\xad", false); } // [B3, C1]
844test { try toUnicodePass("xn--ghb2gxq", "\xd9\x84\xd9\xb0\xdb\xad"); }1286test { try toUnicodePass("xn--ghb2gxq", "\xd9\x84\xd9\xb0\xdb\xad"); }
845test { try toAsciiPass("xn--ghb2gxq", "xn--ghb2gxq", false); }1287test { try toAsciiPass("xn--ghb2gxq", "xn--ghb2gxq", false); }
846test { try toAsciiPass("xn--ghb2gxq", "xn--ghb2gxq", true); }1288test { try toAsciiPass("xn--ghb2gxq", "xn--ghb2gxq", true); }
...@@ -848,8 +1290,11 @@ test { try toUnicodePass("\xd9\x84\xd9\xb0\xdb\xad", "\xd9\x84\xd9\xb0\xdb\xad")...@@ -848,8 +1290,11 @@ test { try toUnicodePass("\xd9\x84\xd9\xb0\xdb\xad", "\xd9\x84\xd9\xb0\xdb\xad")
848test { try toAsciiPass("\xd9\x84\xd9\xb0\xdb\xad", "xn--ghb2gxq", false); }1290test { try toAsciiPass("\xd9\x84\xd9\xb0\xdb\xad", "xn--ghb2gxq", false); }
849test { try toAsciiPass("\xd9\x84\xd9\xb0\xdb\xad", "xn--ghb2gxq", true); }1291test { try toAsciiPass("\xd9\x84\xd9\xb0\xdb\xad", "xn--ghb2gxq", true); }
850test { try toUnicodeFail("xn--ghb2gxqy34f"); } // [B3, C1]1292test { try toUnicodeFail("xn--ghb2gxqy34f"); } // [B3, C1]
1293test { try toAsciiFail("xn--ghb2gxqy34f", false); } // [B3, C1]
1294test { try toAsciiFail("xn--ghb2gxqy34f", true); } // [B3, C1]
851test { try toAsciiPass("\xdb\xaf\xe2\x80\x8c\xdb\xaf", "xn--cmba", true); }1295test { try toAsciiPass("\xdb\xaf\xe2\x80\x8c\xdb\xaf", "xn--cmba", true); }
852test { try toUnicodeFail("\xdb\xaf\xe2\x80\x8c\xdb\xaf"); } // [C1]1296test { try toUnicodeFail("\xdb\xaf\xe2\x80\x8c\xdb\xaf"); } // [C1]
1297test { try toAsciiFail("\xdb\xaf\xe2\x80\x8c\xdb\xaf", false); } // [C1]
853test { try toUnicodePass("xn--cmba", "\xdb\xaf\xdb\xaf"); }1298test { try toUnicodePass("xn--cmba", "\xdb\xaf\xdb\xaf"); }
854test { try toAsciiPass("xn--cmba", "xn--cmba", false); }1299test { try toAsciiPass("xn--cmba", "xn--cmba", false); }
855test { try toAsciiPass("xn--cmba", "xn--cmba", true); }1300test { try toAsciiPass("xn--cmba", "xn--cmba", true); }
...@@ -857,8 +1302,11 @@ test { try toUnicodePass("\xdb\xaf\xdb\xaf", "\xdb\xaf\xdb\xaf"); }...@@ -857,8 +1302,11 @@ test { try toUnicodePass("\xdb\xaf\xdb\xaf", "\xdb\xaf\xdb\xaf"); }
857test { try toAsciiPass("\xdb\xaf\xdb\xaf", "xn--cmba", false); }1302test { try toAsciiPass("\xdb\xaf\xdb\xaf", "xn--cmba", false); }
858test { try toAsciiPass("\xdb\xaf\xdb\xaf", "xn--cmba", true); }1303test { try toAsciiPass("\xdb\xaf\xdb\xaf", "xn--cmba", true); }
859test { try toUnicodeFail("xn--cmba004q"); } // [C1]1304test { try toUnicodeFail("xn--cmba004q"); } // [C1]
1305test { try toAsciiFail("xn--cmba004q", false); } // [C1]
1306test { try toAsciiFail("xn--cmba004q", true); } // [C1]
860test { try toAsciiPass("\xd9\x84\xe2\x80\x8c", "xn--ghb", true); }1307test { try toAsciiPass("\xd9\x84\xe2\x80\x8c", "xn--ghb", true); }
861test { try toUnicodeFail("\xd9\x84\xe2\x80\x8c"); } // [B3, C1]1308test { try toUnicodeFail("\xd9\x84\xe2\x80\x8c"); } // [B3, C1]
1309test { try toAsciiFail("\xd9\x84\xe2\x80\x8c", false); } // [B3, C1]
862test { try toUnicodePass("xn--ghb", "\xd9\x84"); }1310test { try toUnicodePass("xn--ghb", "\xd9\x84"); }
863test { try toAsciiPass("xn--ghb", "xn--ghb", false); }1311test { try toAsciiPass("xn--ghb", "xn--ghb", false); }
864test { try toAsciiPass("xn--ghb", "xn--ghb", true); }1312test { try toAsciiPass("xn--ghb", "xn--ghb", true); }
...@@ -866,28 +1314,68 @@ test { try toUnicodePass("\xd9\x84", "\xd9\x84"); }...@@ -866,28 +1314,68 @@ test { try toUnicodePass("\xd9\x84", "\xd9\x84"); }
866test { try toAsciiPass("\xd9\x84", "xn--ghb", false); }1314test { try toAsciiPass("\xd9\x84", "xn--ghb", false); }
867test { try toAsciiPass("\xd9\x84", "xn--ghb", true); }1315test { try toAsciiPass("\xd9\x84", "xn--ghb", true); }
868test { try toUnicodeFail("xn--ghb413k"); } // [B3, C1]1316test { try toUnicodeFail("xn--ghb413k"); } // [B3, C1]
1317test { try toAsciiFail("xn--ghb413k", false); } // [B3, C1]
1318test { try toAsciiFail("xn--ghb413k", true); } // [B3, C1]
869test { try toUnicodeFail("a\xe3\x80\x82\xe3\x80\x82b"); } // [X4_2]1319test { try toUnicodeFail("a\xe3\x80\x82\xe3\x80\x82b"); } // [X4_2]
1320test { try toAsciiFail("a\xe3\x80\x82\xe3\x80\x82b", false); } // [A4_2]
1321test { try toAsciiFail("a\xe3\x80\x82\xe3\x80\x82b", true); } // [A4_2]
870test { try toUnicodeFail("A\xe3\x80\x82\xe3\x80\x82B"); } // [X4_2]1322test { try toUnicodeFail("A\xe3\x80\x82\xe3\x80\x82B"); } // [X4_2]
1323test { try toAsciiFail("A\xe3\x80\x82\xe3\x80\x82B", false); } // [A4_2]
1324test { try toAsciiFail("A\xe3\x80\x82\xe3\x80\x82B", true); } // [A4_2]
871test { try toUnicodeFail("a..b"); } // [X4_2]1325test { try toUnicodeFail("a..b"); } // [X4_2]
1326test { try toAsciiFail("a..b", false); } // [A4_2]
1327test { try toAsciiFail("a..b", true); } // [A4_2]
872test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xe3\x80\x82\xda\xb9\xe2\x80\x8c"); } // [B1, B3, C1, C2, X4_2]1328test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xe3\x80\x82\xda\xb9\xe2\x80\x8c"); } // [B1, B3, C1, C2, X4_2]
1329test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xe3\x80\x82\xda\xb9\xe2\x80\x8c", false); } // [B1, B3, C1, C2, A4_2]
1330test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xe3\x80\x82\xda\xb9\xe2\x80\x8c", true); } // [A4_2]
873test { try toUnicodeFail("..xn--skb"); } // [X4_2]1331test { try toUnicodeFail("..xn--skb"); } // [X4_2]
1332test { try toAsciiFail("..xn--skb", false); } // [A4_2]
1333test { try toAsciiFail("..xn--skb", true); } // [A4_2]
874test { try toUnicodeFail("xn--1ug..xn--skb080k"); } // [B1, B3, C1, C2, X4_2]1334test { try toUnicodeFail("xn--1ug..xn--skb080k"); } // [B1, B3, C1, C2, X4_2]
1335test { try toAsciiFail("xn--1ug..xn--skb080k", false); } // [B1, B3, C1, C2, A4_2]
1336test { try toAsciiFail("xn--1ug..xn--skb080k", true); } // [B1, B3, C1, C2, A4_2]
875test { try toUnicodeFail("\xd7\x900\xd9\xa0"); } // [B4]1337test { try toUnicodeFail("\xd7\x900\xd9\xa0"); } // [B4]
1338test { try toAsciiFail("\xd7\x900\xd9\xa0", false); } // [B4]
1339test { try toAsciiFail("\xd7\x900\xd9\xa0", true); } // [B4]
876test { try toUnicodeFail("xn--0-zhc74b"); } // [B4]1340test { try toUnicodeFail("xn--0-zhc74b"); } // [B4]
1341test { try toAsciiFail("xn--0-zhc74b", false); } // [B4]
1342test { try toAsciiFail("xn--0-zhc74b", true); } // [B4]
877test { try toUnicodeFail("$"); } // [U1]1343test { try toUnicodeFail("$"); } // [U1]
1344test { try toAsciiFail("$", false); } // [U1]
1345test { try toAsciiFail("$", true); } // [U1]
878test { try toUnicodeFail("\xe2\x91\xb7.four"); } // [U1]1346test { try toUnicodeFail("\xe2\x91\xb7.four"); } // [U1]
1347test { try toAsciiFail("\xe2\x91\xb7.four", false); } // [U1]
1348test { try toAsciiFail("\xe2\x91\xb7.four", true); } // [U1]
879test { try toUnicodeFail("(4).four"); } // [U1]1349test { try toUnicodeFail("(4).four"); } // [U1]
1350test { try toAsciiFail("(4).four", false); } // [U1]
1351test { try toAsciiFail("(4).four", true); } // [U1]
880test { try toUnicodeFail("\xe2\x91\xb7.FOUR"); } // [U1]1352test { try toUnicodeFail("\xe2\x91\xb7.FOUR"); } // [U1]
1353test { try toAsciiFail("\xe2\x91\xb7.FOUR", false); } // [U1]
1354test { try toAsciiFail("\xe2\x91\xb7.FOUR", true); } // [U1]
881test { try toUnicodeFail("\xe2\x91\xb7.Four"); } // [U1]1355test { try toUnicodeFail("\xe2\x91\xb7.Four"); } // [U1]
1356test { try toAsciiFail("\xe2\x91\xb7.Four", false); } // [U1]
1357test { try toAsciiFail("\xe2\x91\xb7.Four", true); } // [U1]
882test { try toUnicodeFail("a\xef\xbf\xbdz"); } // [V7]1358test { try toUnicodeFail("a\xef\xbf\xbdz"); } // [V7]
1359test { try toAsciiFail("a\xef\xbf\xbdz", false); } // [V7, A3]
1360test { try toAsciiFail("a\xef\xbf\xbdz", true); } // [V7, A3]
883test { try toUnicodeFail("A\xef\xbf\xbdZ"); } // [V7]1361test { try toUnicodeFail("A\xef\xbf\xbdZ"); } // [V7]
1362test { try toAsciiFail("A\xef\xbf\xbdZ", false); } // [V7, A3]
1363test { try toAsciiFail("A\xef\xbf\xbdZ", true); } // [V7, A3]
884test { try toUnicodeFail("xn--"); } // [P4, X4_2]1364test { try toUnicodeFail("xn--"); } // [P4, X4_2]
1365test { try toAsciiFail("xn--", false); } // [P4, A4_1, A4_2]
1366test { try toAsciiFail("xn--", true); } // [P4, A4_1, A4_2]
885test { try toUnicodeFail("xn---"); } // [P4]1367test { try toUnicodeFail("xn---"); } // [P4]
1368test { try toAsciiFail("xn---", false); } // [P4]
1369test { try toAsciiFail("xn---", true); } // [P4]
886test { try toUnicodeFail("xn--ASCII-"); } // [P4]1370test { try toUnicodeFail("xn--ASCII-"); } // [P4]
1371test { try toAsciiFail("xn--ASCII-", false); } // [P4]
1372test { try toAsciiFail("xn--ASCII-", true); } // [P4]
887test { try toUnicodePass("ascii", "ascii"); }1373test { try toUnicodePass("ascii", "ascii"); }
888test { try toAsciiPass("ascii", "ascii", false); }1374test { try toAsciiPass("ascii", "ascii", false); }
889test { try toAsciiPass("ascii", "ascii", true); }1375test { try toAsciiPass("ascii", "ascii", true); }
890test { try toUnicodeFail("xn--unicode-.org"); } // [P4]1376test { try toUnicodeFail("xn--unicode-.org"); } // [P4]
1377test { try toAsciiFail("xn--unicode-.org", false); } // [P4]
1378test { try toAsciiFail("xn--unicode-.org", true); } // [P4]
891test { try toUnicodePass("unicode.org", "unicode.org"); }1379test { try toUnicodePass("unicode.org", "unicode.org"); }
892test { try toAsciiPass("unicode.org", "unicode.org", false); }1380test { try toAsciiPass("unicode.org", "unicode.org", false); }
893test { try toAsciiPass("unicode.org", "unicode.org", true); }1381test { try toAsciiPass("unicode.org", "unicode.org", true); }
...@@ -946,25 +1434,65 @@ test { try toUnicodePass("123456789012345678901234567890123456789012345678901234...@@ -946,25 +1434,65 @@ test { try toUnicodePass("123456789012345678901234567890123456789012345678901234
946test { try toAsciiPass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x84123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", false); }1434test { try toAsciiPass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x84123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", false); }
947test { try toAsciiPass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x84123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", true); }1435test { try toAsciiPass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x84123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", true); }
948test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."); }1436test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."); }
1437test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", false); } // [A4_2]
1438test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", true); } // [A4_2]
949test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x84123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."); }1439test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x84123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."); }
1440test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x84123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", false); } // [A4_2]
1441test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x84123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.", true); } // [A4_2]
950test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"); }1442test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"); }
1443test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", false); } // [A4_1]
1444test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x88123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", true); } // [A4_1]
951test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x84123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"); }1445test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x84123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"); }
1446test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x84123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", false); } // [A4_1]
1447test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x84123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c", true); } // [A4_1]
952test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"); }1448test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"); }
1449test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", false); } // [A4_2]
1450test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", true); } // [A4_2]
953test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"); }1451test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"); }
1452test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", false); } // [A4_2]
1453test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a", true); } // [A4_2]
954test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."); }1454test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."); }
1455test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", false); } // [A4_2]
1456test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", true); } // [A4_2]
955test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."); }1457test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."); }
1458test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", false); } // [A4_2]
1459test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.", true); } // [A4_2]
956test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"); }1460test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"); }
1461test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", false); } // [A4_1, A4_2]
1462test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890A\xcc\x881234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", true); } // [A4_1, A4_2]
957test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"); }1463test { try toUnicodePass("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", "123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\xa41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"); }
1464test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", false); } // [A4_1, A4_2]
1465test { try toAsciiFail("123456789012345678901234567890123456789012345678901234567890123.1234567890\xc3\x841234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b", true); } // [A4_1, A4_2]
958test { try toUnicodeFail("c.0\xc3\xbc.\xd7\x90"); } // [B1]1466test { try toUnicodeFail("c.0\xc3\xbc.\xd7\x90"); } // [B1]
1467test { try toAsciiFail("c.0\xc3\xbc.\xd7\x90", false); } // [B1]
1468test { try toAsciiFail("c.0\xc3\xbc.\xd7\x90", true); } // [B1]
959test { try toUnicodeFail("c.0u\xcc\x88.\xd7\x90"); } // [B1]1469test { try toUnicodeFail("c.0u\xcc\x88.\xd7\x90"); } // [B1]
1470test { try toAsciiFail("c.0u\xcc\x88.\xd7\x90", false); } // [B1]
1471test { try toAsciiFail("c.0u\xcc\x88.\xd7\x90", true); } // [B1]
960test { try toUnicodeFail("C.0U\xcc\x88.\xd7\x90"); } // [B1]1472test { try toUnicodeFail("C.0U\xcc\x88.\xd7\x90"); } // [B1]
1473test { try toAsciiFail("C.0U\xcc\x88.\xd7\x90", false); } // [B1]
1474test { try toAsciiFail("C.0U\xcc\x88.\xd7\x90", true); } // [B1]
961test { try toUnicodeFail("C.0\xc3\x9c.\xd7\x90"); } // [B1]1475test { try toUnicodeFail("C.0\xc3\x9c.\xd7\x90"); } // [B1]
1476test { try toAsciiFail("C.0\xc3\x9c.\xd7\x90", false); } // [B1]
1477test { try toAsciiFail("C.0\xc3\x9c.\xd7\x90", true); } // [B1]
962test { try toUnicodeFail("C.0\xc3\xbc.\xd7\x90"); } // [B1]1478test { try toUnicodeFail("C.0\xc3\xbc.\xd7\x90"); } // [B1]
1479test { try toAsciiFail("C.0\xc3\xbc.\xd7\x90", false); } // [B1]
1480test { try toAsciiFail("C.0\xc3\xbc.\xd7\x90", true); } // [B1]
963test { try toUnicodeFail("C.0u\xcc\x88.\xd7\x90"); } // [B1]1481test { try toUnicodeFail("C.0u\xcc\x88.\xd7\x90"); } // [B1]
1482test { try toAsciiFail("C.0u\xcc\x88.\xd7\x90", false); } // [B1]
1483test { try toAsciiFail("C.0u\xcc\x88.\xd7\x90", true); } // [B1]
964test { try toUnicodeFail("\xe2\x92\x95\xe2\x88\x9d\xd9\x9f\xf2\x93\xa4\xa6\xef\xbc\x8e-\xf3\xa0\x84\xaf"); } // [V3, V7]1484test { try toUnicodeFail("\xe2\x92\x95\xe2\x88\x9d\xd9\x9f\xf2\x93\xa4\xa6\xef\xbc\x8e-\xf3\xa0\x84\xaf"); } // [V3, V7]
1485test { try toAsciiFail("\xe2\x92\x95\xe2\x88\x9d\xd9\x9f\xf2\x93\xa4\xa6\xef\xbc\x8e-\xf3\xa0\x84\xaf", false); } // [V3, V7]
1486test { try toAsciiFail("\xe2\x92\x95\xe2\x88\x9d\xd9\x9f\xf2\x93\xa4\xa6\xef\xbc\x8e-\xf3\xa0\x84\xaf", true); } // [V3, V7]
965test { try toUnicodeFail("14.\xe2\x88\x9d\xd9\x9f\xf2\x93\xa4\xa6.-\xf3\xa0\x84\xaf"); } // [V3, V7]1487test { try toUnicodeFail("14.\xe2\x88\x9d\xd9\x9f\xf2\x93\xa4\xa6.-\xf3\xa0\x84\xaf"); } // [V3, V7]
1488test { try toAsciiFail("14.\xe2\x88\x9d\xd9\x9f\xf2\x93\xa4\xa6.-\xf3\xa0\x84\xaf", false); } // [V3, V7]
1489test { try toAsciiFail("14.\xe2\x88\x9d\xd9\x9f\xf2\x93\xa4\xa6.-\xf3\xa0\x84\xaf", true); } // [V3, V7]
966test { try toUnicodeFail("14.xn--7hb713l3v90n.-"); } // [V3, V7]1490test { try toUnicodeFail("14.xn--7hb713l3v90n.-"); } // [V3, V7]
1491test { try toAsciiFail("14.xn--7hb713l3v90n.-", false); } // [V3, V7]
1492test { try toAsciiFail("14.xn--7hb713l3v90n.-", true); } // [V3, V7]
967test { try toUnicodeFail("xn--7hb713lfwbi1311b.-"); } // [V3, V7]1493test { try toUnicodeFail("xn--7hb713lfwbi1311b.-"); } // [V3, V7]
1494test { try toAsciiFail("xn--7hb713lfwbi1311b.-", false); } // [V3, V7]
1495test { try toAsciiFail("xn--7hb713lfwbi1311b.-", true); } // [V3, V7]
968test { try toUnicodePass("\xea\xa1\xa3.\xdf\x8f", "\xea\xa1\xa3.\xdf\x8f"); }1496test { try toUnicodePass("\xea\xa1\xa3.\xdf\x8f", "\xea\xa1\xa3.\xdf\x8f"); }
969test { try toAsciiPass("\xea\xa1\xa3.\xdf\x8f", "xn--8c9a.xn--qsb", false); }1497test { try toAsciiPass("\xea\xa1\xa3.\xdf\x8f", "xn--8c9a.xn--qsb", false); }
970test { try toAsciiPass("\xea\xa1\xa3.\xdf\x8f", "xn--8c9a.xn--qsb", true); }1498test { try toAsciiPass("\xea\xa1\xa3.\xdf\x8f", "xn--8c9a.xn--qsb", true); }
...@@ -972,34 +1500,80 @@ test { try toUnicodePass("xn--8c9a.xn--qsb", "\xea\xa1\xa3.\xdf\x8f"); }...@@ -972,34 +1500,80 @@ test { try toUnicodePass("xn--8c9a.xn--qsb", "\xea\xa1\xa3.\xdf\x8f"); }
972test { try toAsciiPass("xn--8c9a.xn--qsb", "xn--8c9a.xn--qsb", false); }1500test { try toAsciiPass("xn--8c9a.xn--qsb", "xn--8c9a.xn--qsb", false); }
973test { try toAsciiPass("xn--8c9a.xn--qsb", "xn--8c9a.xn--qsb", true); }1501test { try toAsciiPass("xn--8c9a.xn--qsb", "xn--8c9a.xn--qsb", true); }
974test { try toUnicodeFail("\xe2\x89\xaf\xd8\x83\xef\xbd\xa1-"); } // [B1, V3, V7]1502test { try toUnicodeFail("\xe2\x89\xaf\xd8\x83\xef\xbd\xa1-"); } // [B1, V3, V7]
1503test { try toAsciiFail("\xe2\x89\xaf\xd8\x83\xef\xbd\xa1-", false); } // [B1, V3, V7]
1504test { try toAsciiFail("\xe2\x89\xaf\xd8\x83\xef\xbd\xa1-", true); } // [B1, V3, V7]
975test { try toUnicodeFail(">\xcc\xb8\xd8\x83\xef\xbd\xa1-"); } // [B1, V3, V7]1505test { try toUnicodeFail(">\xcc\xb8\xd8\x83\xef\xbd\xa1-"); } // [B1, V3, V7]
1506test { try toAsciiFail(">\xcc\xb8\xd8\x83\xef\xbd\xa1-", false); } // [B1, V3, V7]
1507test { try toAsciiFail(">\xcc\xb8\xd8\x83\xef\xbd\xa1-", true); } // [B1, V3, V7]
976test { try toUnicodeFail("\xe2\x89\xaf\xd8\x83\xe3\x80\x82-"); } // [B1, V3, V7]1508test { try toUnicodeFail("\xe2\x89\xaf\xd8\x83\xe3\x80\x82-"); } // [B1, V3, V7]
1509test { try toAsciiFail("\xe2\x89\xaf\xd8\x83\xe3\x80\x82-", false); } // [B1, V3, V7]
1510test { try toAsciiFail("\xe2\x89\xaf\xd8\x83\xe3\x80\x82-", true); } // [B1, V3, V7]
977test { try toUnicodeFail(">\xcc\xb8\xd8\x83\xe3\x80\x82-"); } // [B1, V3, V7]1511test { try toUnicodeFail(">\xcc\xb8\xd8\x83\xe3\x80\x82-"); } // [B1, V3, V7]
1512test { try toAsciiFail(">\xcc\xb8\xd8\x83\xe3\x80\x82-", false); } // [B1, V3, V7]
1513test { try toAsciiFail(">\xcc\xb8\xd8\x83\xe3\x80\x82-", true); } // [B1, V3, V7]
978test { try toUnicodeFail("xn--lfb566l.-"); } // [B1, V3, V7]1514test { try toUnicodeFail("xn--lfb566l.-"); } // [B1, V3, V7]
1515test { try toAsciiFail("xn--lfb566l.-", false); } // [B1, V3, V7]
1516test { try toAsciiFail("xn--lfb566l.-", true); } // [B1, V3, V7]
979test { try toUnicodeFail("\xe2\xbe\x9b\xf0\x90\xb9\xa7\xe2\xbe\x95.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x82\xe1\x82\xad"); } // [B1, B5, V7]1517test { try toUnicodeFail("\xe2\xbe\x9b\xf0\x90\xb9\xa7\xe2\xbe\x95.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x82\xe1\x82\xad"); } // [B1, B5, V7]
1518test { try toAsciiFail("\xe2\xbe\x9b\xf0\x90\xb9\xa7\xe2\xbe\x95.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x82\xe1\x82\xad", false); } // [B1, B5, V7]
1519test { try toAsciiFail("\xe2\xbe\x9b\xf0\x90\xb9\xa7\xe2\xbe\x95.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x82\xe1\x82\xad", true); } // [B1, B5, V7]
980test { try toUnicodeFail("\xe8\xb5\xb0\xf0\x90\xb9\xa7\xe8\xb0\xb7.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x82\xe1\x82\xad"); } // [B1, B5, V7]1520test { try toUnicodeFail("\xe8\xb5\xb0\xf0\x90\xb9\xa7\xe8\xb0\xb7.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x82\xe1\x82\xad"); } // [B1, B5, V7]
1521test { try toAsciiFail("\xe8\xb5\xb0\xf0\x90\xb9\xa7\xe8\xb0\xb7.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x82\xe1\x82\xad", false); } // [B1, B5, V7]
1522test { try toAsciiFail("\xe8\xb5\xb0\xf0\x90\xb9\xa7\xe8\xb0\xb7.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x82\xe1\x82\xad", true); } // [B1, B5, V7]
981test { try toUnicodeFail("\xe8\xb5\xb0\xf0\x90\xb9\xa7\xe8\xb0\xb7.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x82\xe2\xb4\x8d"); } // [B1, B5, V7]1523test { try toUnicodeFail("\xe8\xb5\xb0\xf0\x90\xb9\xa7\xe8\xb0\xb7.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x82\xe2\xb4\x8d"); } // [B1, B5, V7]
1524test { try toAsciiFail("\xe8\xb5\xb0\xf0\x90\xb9\xa7\xe8\xb0\xb7.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x82\xe2\xb4\x8d", false); } // [B1, B5, V7]
1525test { try toAsciiFail("\xe8\xb5\xb0\xf0\x90\xb9\xa7\xe8\xb0\xb7.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x82\xe2\xb4\x8d", true); } // [B1, B5, V7]
982test { try toUnicodeFail("\xe8\xb5\xb0\xf0\x90\xb9\xa7\xe8\xb0\xb7.\xe1\x85\x9f\xf3\xa0\x97\xb0\xce\xa3\xe1\x82\xad"); } // [B1, B5, V7]1526test { try toUnicodeFail("\xe8\xb5\xb0\xf0\x90\xb9\xa7\xe8\xb0\xb7.\xe1\x85\x9f\xf3\xa0\x97\xb0\xce\xa3\xe1\x82\xad"); } // [B1, B5, V7]
1527test { try toAsciiFail("\xe8\xb5\xb0\xf0\x90\xb9\xa7\xe8\xb0\xb7.\xe1\x85\x9f\xf3\xa0\x97\xb0\xce\xa3\xe1\x82\xad", false); } // [B1, B5, V7]
1528test { try toAsciiFail("\xe8\xb5\xb0\xf0\x90\xb9\xa7\xe8\xb0\xb7.\xe1\x85\x9f\xf3\xa0\x97\xb0\xce\xa3\xe1\x82\xad", true); } // [B1, B5, V7]
983test { try toUnicodeFail("\xe8\xb5\xb0\xf0\x90\xb9\xa7\xe8\xb0\xb7.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x83\xe2\xb4\x8d"); } // [B1, B5, V7]1529test { try toUnicodeFail("\xe8\xb5\xb0\xf0\x90\xb9\xa7\xe8\xb0\xb7.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x83\xe2\xb4\x8d"); } // [B1, B5, V7]
1530test { try toAsciiFail("\xe8\xb5\xb0\xf0\x90\xb9\xa7\xe8\xb0\xb7.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x83\xe2\xb4\x8d", false); } // [B1, B5, V7]
1531test { try toAsciiFail("\xe8\xb5\xb0\xf0\x90\xb9\xa7\xe8\xb0\xb7.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x83\xe2\xb4\x8d", true); } // [B1, B5, V7]
984test { try toUnicodeFail("\xe8\xb5\xb0\xf0\x90\xb9\xa7\xe8\xb0\xb7.\xe1\x85\x9f\xf3\xa0\x97\xb0\xce\xa3\xe2\xb4\x8d"); } // [B1, B5, V7]1532test { try toUnicodeFail("\xe8\xb5\xb0\xf0\x90\xb9\xa7\xe8\xb0\xb7.\xe1\x85\x9f\xf3\xa0\x97\xb0\xce\xa3\xe2\xb4\x8d"); } // [B1, B5, V7]
1533test { try toAsciiFail("\xe8\xb5\xb0\xf0\x90\xb9\xa7\xe8\xb0\xb7.\xe1\x85\x9f\xf3\xa0\x97\xb0\xce\xa3\xe2\xb4\x8d", false); } // [B1, B5, V7]
1534test { try toAsciiFail("\xe8\xb5\xb0\xf0\x90\xb9\xa7\xe8\xb0\xb7.\xe1\x85\x9f\xf3\xa0\x97\xb0\xce\xa3\xe2\xb4\x8d", true); } // [B1, B5, V7]
985test { try toUnicodeFail("xn--6g3a1x434z.xn--4xa452s5d17u"); } // [B1, B5, V7]1535test { try toUnicodeFail("xn--6g3a1x434z.xn--4xa452s5d17u"); } // [B1, B5, V7]
1536test { try toAsciiFail("xn--6g3a1x434z.xn--4xa452s5d17u", false); } // [B1, B5, V7]
1537test { try toAsciiFail("xn--6g3a1x434z.xn--4xa452s5d17u", true); } // [B1, B5, V7]
986test { try toUnicodeFail("xn--6g3a1x434z.xn--3xa652s5d17u"); } // [B1, B5, V7]1538test { try toUnicodeFail("xn--6g3a1x434z.xn--3xa652s5d17u"); } // [B1, B5, V7]
1539test { try toAsciiFail("xn--6g3a1x434z.xn--3xa652s5d17u", false); } // [B1, B5, V7]
1540test { try toAsciiFail("xn--6g3a1x434z.xn--3xa652s5d17u", true); } // [B1, B5, V7]
987test { try toUnicodeFail("\xe2\xbe\x9b\xf0\x90\xb9\xa7\xe2\xbe\x95.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x82\xe2\xb4\x8d"); } // [B1, B5, V7]1541test { try toUnicodeFail("\xe2\xbe\x9b\xf0\x90\xb9\xa7\xe2\xbe\x95.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x82\xe2\xb4\x8d"); } // [B1, B5, V7]
1542test { try toAsciiFail("\xe2\xbe\x9b\xf0\x90\xb9\xa7\xe2\xbe\x95.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x82\xe2\xb4\x8d", false); } // [B1, B5, V7]
1543test { try toAsciiFail("\xe2\xbe\x9b\xf0\x90\xb9\xa7\xe2\xbe\x95.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x82\xe2\xb4\x8d", true); } // [B1, B5, V7]
988test { try toUnicodeFail("\xe2\xbe\x9b\xf0\x90\xb9\xa7\xe2\xbe\x95.\xe1\x85\x9f\xf3\xa0\x97\xb0\xce\xa3\xe1\x82\xad"); } // [B1, B5, V7]1544test { try toUnicodeFail("\xe2\xbe\x9b\xf0\x90\xb9\xa7\xe2\xbe\x95.\xe1\x85\x9f\xf3\xa0\x97\xb0\xce\xa3\xe1\x82\xad"); } // [B1, B5, V7]
1545test { try toAsciiFail("\xe2\xbe\x9b\xf0\x90\xb9\xa7\xe2\xbe\x95.\xe1\x85\x9f\xf3\xa0\x97\xb0\xce\xa3\xe1\x82\xad", false); } // [B1, B5, V7]
1546test { try toAsciiFail("\xe2\xbe\x9b\xf0\x90\xb9\xa7\xe2\xbe\x95.\xe1\x85\x9f\xf3\xa0\x97\xb0\xce\xa3\xe1\x82\xad", true); } // [B1, B5, V7]
989test { try toUnicodeFail("\xe2\xbe\x9b\xf0\x90\xb9\xa7\xe2\xbe\x95.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x83\xe2\xb4\x8d"); } // [B1, B5, V7]1547test { try toUnicodeFail("\xe2\xbe\x9b\xf0\x90\xb9\xa7\xe2\xbe\x95.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x83\xe2\xb4\x8d"); } // [B1, B5, V7]
1548test { try toAsciiFail("\xe2\xbe\x9b\xf0\x90\xb9\xa7\xe2\xbe\x95.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x83\xe2\xb4\x8d", false); } // [B1, B5, V7]
1549test { try toAsciiFail("\xe2\xbe\x9b\xf0\x90\xb9\xa7\xe2\xbe\x95.\xe1\x85\x9f\xf3\xa0\x97\xb0\xcf\x83\xe2\xb4\x8d", true); } // [B1, B5, V7]
990test { try toUnicodeFail("\xe2\xbe\x9b\xf0\x90\xb9\xa7\xe2\xbe\x95.\xe1\x85\x9f\xf3\xa0\x97\xb0\xce\xa3\xe2\xb4\x8d"); } // [B1, B5, V7]1550test { try toUnicodeFail("\xe2\xbe\x9b\xf0\x90\xb9\xa7\xe2\xbe\x95.\xe1\x85\x9f\xf3\xa0\x97\xb0\xce\xa3\xe2\xb4\x8d"); } // [B1, B5, V7]
1551test { try toAsciiFail("\xe2\xbe\x9b\xf0\x90\xb9\xa7\xe2\xbe\x95.\xe1\x85\x9f\xf3\xa0\x97\xb0\xce\xa3\xe2\xb4\x8d", false); } // [B1, B5, V7]
1552test { try toAsciiFail("\xe2\xbe\x9b\xf0\x90\xb9\xa7\xe2\xbe\x95.\xe1\x85\x9f\xf3\xa0\x97\xb0\xce\xa3\xe2\xb4\x8d", true); } // [B1, B5, V7]
991test { try toUnicodeFail("xn--6g3a1x434z.xn--4xa180eotvh7453a"); } // [B5, V7]1553test { try toUnicodeFail("xn--6g3a1x434z.xn--4xa180eotvh7453a"); } // [B5, V7]
1554test { try toAsciiFail("xn--6g3a1x434z.xn--4xa180eotvh7453a", false); } // [B5, V7]
1555test { try toAsciiFail("xn--6g3a1x434z.xn--4xa180eotvh7453a", true); } // [B5, V7]
992test { try toUnicodeFail("xn--6g3a1x434z.xn--4xa627dhpae6345i"); } // [B5, V7]1556test { try toUnicodeFail("xn--6g3a1x434z.xn--4xa627dhpae6345i"); } // [B5, V7]
1557test { try toAsciiFail("xn--6g3a1x434z.xn--4xa627dhpae6345i", false); } // [B5, V7]
1558test { try toAsciiFail("xn--6g3a1x434z.xn--4xa627dhpae6345i", true); } // [B5, V7]
993test { try toUnicodeFail("xn--6g3a1x434z.xn--3xa380eotvh7453a"); } // [B5, V7]1559test { try toUnicodeFail("xn--6g3a1x434z.xn--3xa380eotvh7453a"); } // [B5, V7]
1560test { try toAsciiFail("xn--6g3a1x434z.xn--3xa380eotvh7453a", false); } // [B5, V7]
1561test { try toAsciiFail("xn--6g3a1x434z.xn--3xa380eotvh7453a", true); } // [B5, V7]
994test { try toUnicodeFail("xn--6g3a1x434z.xn--3xa827dhpae6345i"); } // [B5, V7]1562test { try toUnicodeFail("xn--6g3a1x434z.xn--3xa827dhpae6345i"); } // [B5, V7]
1563test { try toAsciiFail("xn--6g3a1x434z.xn--3xa827dhpae6345i", false); } // [B5, V7]
1564test { try toAsciiFail("xn--6g3a1x434z.xn--3xa827dhpae6345i", true); } // [B5, V7]
995test { try toAsciiPass("\xe2\x80\x8d\xe2\x89\xa0\xe1\xa2\x99\xe2\x89\xaf.\xec\x86\xa3-\xe1\xa1\xb4\xe1\x82\xa0", "xn--jbf911clb.xn----p9j493ivi4l", true); }1565test { try toAsciiPass("\xe2\x80\x8d\xe2\x89\xa0\xe1\xa2\x99\xe2\x89\xaf.\xec\x86\xa3-\xe1\xa1\xb4\xe1\x82\xa0", "xn--jbf911clb.xn----p9j493ivi4l", true); }
996test { try toUnicodeFail("\xe2\x80\x8d\xe2\x89\xa0\xe1\xa2\x99\xe2\x89\xaf.\xec\x86\xa3-\xe1\xa1\xb4\xe1\x82\xa0"); } // [C2]1566test { try toUnicodeFail("\xe2\x80\x8d\xe2\x89\xa0\xe1\xa2\x99\xe2\x89\xaf.\xec\x86\xa3-\xe1\xa1\xb4\xe1\x82\xa0"); } // [C2]
1567test { try toAsciiFail("\xe2\x80\x8d\xe2\x89\xa0\xe1\xa2\x99\xe2\x89\xaf.\xec\x86\xa3-\xe1\xa1\xb4\xe1\x82\xa0", false); } // [C2]
997test { try toAsciiPass("\xe2\x80\x8d=\xcc\xb8\xe1\xa2\x99>\xcc\xb8.\xe1\x84\x89\xe1\x85\xa9\xe1\x86\xbe-\xe1\xa1\xb4\xe1\x82\xa0", "xn--jbf911clb.xn----p9j493ivi4l", true); }1568test { try toAsciiPass("\xe2\x80\x8d=\xcc\xb8\xe1\xa2\x99>\xcc\xb8.\xe1\x84\x89\xe1\x85\xa9\xe1\x86\xbe-\xe1\xa1\xb4\xe1\x82\xa0", "xn--jbf911clb.xn----p9j493ivi4l", true); }
998test { try toUnicodeFail("\xe2\x80\x8d=\xcc\xb8\xe1\xa2\x99>\xcc\xb8.\xe1\x84\x89\xe1\x85\xa9\xe1\x86\xbe-\xe1\xa1\xb4\xe1\x82\xa0"); } // [C2]1569test { try toUnicodeFail("\xe2\x80\x8d=\xcc\xb8\xe1\xa2\x99>\xcc\xb8.\xe1\x84\x89\xe1\x85\xa9\xe1\x86\xbe-\xe1\xa1\xb4\xe1\x82\xa0"); } // [C2]
1570test { try toAsciiFail("\xe2\x80\x8d=\xcc\xb8\xe1\xa2\x99>\xcc\xb8.\xe1\x84\x89\xe1\x85\xa9\xe1\x86\xbe-\xe1\xa1\xb4\xe1\x82\xa0", false); } // [C2]
999test { try toAsciiPass("\xe2\x80\x8d=\xcc\xb8\xe1\xa2\x99>\xcc\xb8.\xe1\x84\x89\xe1\x85\xa9\xe1\x86\xbe-\xe1\xa1\xb4\xe2\xb4\x80", "xn--jbf911clb.xn----p9j493ivi4l", true); }1571test { try toAsciiPass("\xe2\x80\x8d=\xcc\xb8\xe1\xa2\x99>\xcc\xb8.\xe1\x84\x89\xe1\x85\xa9\xe1\x86\xbe-\xe1\xa1\xb4\xe2\xb4\x80", "xn--jbf911clb.xn----p9j493ivi4l", true); }
1000test { try toUnicodeFail("\xe2\x80\x8d=\xcc\xb8\xe1\xa2\x99>\xcc\xb8.\xe1\x84\x89\xe1\x85\xa9\xe1\x86\xbe-\xe1\xa1\xb4\xe2\xb4\x80"); } // [C2]1572test { try toUnicodeFail("\xe2\x80\x8d=\xcc\xb8\xe1\xa2\x99>\xcc\xb8.\xe1\x84\x89\xe1\x85\xa9\xe1\x86\xbe-\xe1\xa1\xb4\xe2\xb4\x80"); } // [C2]
1573test { try toAsciiFail("\xe2\x80\x8d=\xcc\xb8\xe1\xa2\x99>\xcc\xb8.\xe1\x84\x89\xe1\x85\xa9\xe1\x86\xbe-\xe1\xa1\xb4\xe2\xb4\x80", false); } // [C2]
1001test { try toAsciiPass("\xe2\x80\x8d\xe2\x89\xa0\xe1\xa2\x99\xe2\x89\xaf.\xec\x86\xa3-\xe1\xa1\xb4\xe2\xb4\x80", "xn--jbf911clb.xn----p9j493ivi4l", true); }1574test { try toAsciiPass("\xe2\x80\x8d\xe2\x89\xa0\xe1\xa2\x99\xe2\x89\xaf.\xec\x86\xa3-\xe1\xa1\xb4\xe2\xb4\x80", "xn--jbf911clb.xn----p9j493ivi4l", true); }
1002test { try toUnicodeFail("\xe2\x80\x8d\xe2\x89\xa0\xe1\xa2\x99\xe2\x89\xaf.\xec\x86\xa3-\xe1\xa1\xb4\xe2\xb4\x80"); } // [C2]1575test { try toUnicodeFail("\xe2\x80\x8d\xe2\x89\xa0\xe1\xa2\x99\xe2\x89\xaf.\xec\x86\xa3-\xe1\xa1\xb4\xe2\xb4\x80"); } // [C2]
1576test { try toAsciiFail("\xe2\x80\x8d\xe2\x89\xa0\xe1\xa2\x99\xe2\x89\xaf.\xec\x86\xa3-\xe1\xa1\xb4\xe2\xb4\x80", false); } // [C2]
1003test { try toUnicodePass("xn--jbf911clb.xn----p9j493ivi4l", "\xe2\x89\xa0\xe1\xa2\x99\xe2\x89\xaf.\xec\x86\xa3-\xe1\xa1\xb4\xe2\xb4\x80"); }1577test { try toUnicodePass("xn--jbf911clb.xn----p9j493ivi4l", "\xe2\x89\xa0\xe1\xa2\x99\xe2\x89\xaf.\xec\x86\xa3-\xe1\xa1\xb4\xe2\xb4\x80"); }
1004test { try toAsciiPass("xn--jbf911clb.xn----p9j493ivi4l", "xn--jbf911clb.xn----p9j493ivi4l", false); }1578test { try toAsciiPass("xn--jbf911clb.xn----p9j493ivi4l", "xn--jbf911clb.xn----p9j493ivi4l", false); }
1005test { try toAsciiPass("xn--jbf911clb.xn----p9j493ivi4l", "xn--jbf911clb.xn----p9j493ivi4l", true); }1579test { try toAsciiPass("xn--jbf911clb.xn----p9j493ivi4l", "xn--jbf911clb.xn----p9j493ivi4l", true); }
...@@ -1016,269 +1590,797 @@ test { try toUnicodePass("\xe2\x89\xa0\xe1\xa2\x99\xe2\x89\xaf.\xec\x86\xa3-\xe1...@@ -1016,269 +1590,797 @@ test { try toUnicodePass("\xe2\x89\xa0\xe1\xa2\x99\xe2\x89\xaf.\xec\x86\xa3-\xe1
1016test { try toAsciiPass("\xe2\x89\xa0\xe1\xa2\x99\xe2\x89\xaf.\xec\x86\xa3-\xe1\xa1\xb4\xe1\x82\xa0", "xn--jbf911clb.xn----p9j493ivi4l", false); }1590test { try toAsciiPass("\xe2\x89\xa0\xe1\xa2\x99\xe2\x89\xaf.\xec\x86\xa3-\xe1\xa1\xb4\xe1\x82\xa0", "xn--jbf911clb.xn----p9j493ivi4l", false); }
1017test { try toAsciiPass("\xe2\x89\xa0\xe1\xa2\x99\xe2\x89\xaf.\xec\x86\xa3-\xe1\xa1\xb4\xe1\x82\xa0", "xn--jbf911clb.xn----p9j493ivi4l", true); }1591test { try toAsciiPass("\xe2\x89\xa0\xe1\xa2\x99\xe2\x89\xaf.\xec\x86\xa3-\xe1\xa1\xb4\xe1\x82\xa0", "xn--jbf911clb.xn----p9j493ivi4l", true); }
1018test { try toUnicodeFail("xn--jbf929a90b0b.xn----p9j493ivi4l"); } // [C2]1592test { try toUnicodeFail("xn--jbf929a90b0b.xn----p9j493ivi4l"); } // [C2]
1593test { try toAsciiFail("xn--jbf929a90b0b.xn----p9j493ivi4l", false); } // [C2]
1594test { try toAsciiFail("xn--jbf929a90b0b.xn----p9j493ivi4l", true); } // [C2]
1019test { try toUnicodeFail("xn--jbf911clb.xn----6zg521d196p"); } // [V7]1595test { try toUnicodeFail("xn--jbf911clb.xn----6zg521d196p"); } // [V7]
1596test { try toAsciiFail("xn--jbf911clb.xn----6zg521d196p", false); } // [V7]
1597test { try toAsciiFail("xn--jbf911clb.xn----6zg521d196p", true); } // [V7]
1020test { try toUnicodeFail("xn--jbf929a90b0b.xn----6zg521d196p"); } // [C2, V7]1598test { try toUnicodeFail("xn--jbf929a90b0b.xn----6zg521d196p"); } // [C2, V7]
1599test { try toAsciiFail("xn--jbf929a90b0b.xn----6zg521d196p", false); } // [C2, V7]
1600test { try toAsciiFail("xn--jbf929a90b0b.xn----6zg521d196p", true); } // [C2, V7]
1021test { try toUnicodeFail("\xf1\xaf\x9e\x9c\xef\xbc\x8e\xf0\x90\xbf\x87\xe0\xbe\xa2\xdd\xbd\xd8\x80"); } // [V7]1601test { try toUnicodeFail("\xf1\xaf\x9e\x9c\xef\xbc\x8e\xf0\x90\xbf\x87\xe0\xbe\xa2\xdd\xbd\xd8\x80"); } // [V7]
1602test { try toAsciiFail("\xf1\xaf\x9e\x9c\xef\xbc\x8e\xf0\x90\xbf\x87\xe0\xbe\xa2\xdd\xbd\xd8\x80", false); } // [V7]
1603test { try toAsciiFail("\xf1\xaf\x9e\x9c\xef\xbc\x8e\xf0\x90\xbf\x87\xe0\xbe\xa2\xdd\xbd\xd8\x80", true); } // [V7]
1022test { try toUnicodeFail("\xf1\xaf\x9e\x9c\xef\xbc\x8e\xf0\x90\xbf\x87\xe0\xbe\xa1\xe0\xbe\xb7\xdd\xbd\xd8\x80"); } // [V7]1604test { try toUnicodeFail("\xf1\xaf\x9e\x9c\xef\xbc\x8e\xf0\x90\xbf\x87\xe0\xbe\xa1\xe0\xbe\xb7\xdd\xbd\xd8\x80"); } // [V7]
1605test { try toAsciiFail("\xf1\xaf\x9e\x9c\xef\xbc\x8e\xf0\x90\xbf\x87\xe0\xbe\xa1\xe0\xbe\xb7\xdd\xbd\xd8\x80", false); } // [V7]
1606test { try toAsciiFail("\xf1\xaf\x9e\x9c\xef\xbc\x8e\xf0\x90\xbf\x87\xe0\xbe\xa1\xe0\xbe\xb7\xdd\xbd\xd8\x80", true); } // [V7]
1023test { try toUnicodeFail("\xf1\xaf\x9e\x9c.\xf0\x90\xbf\x87\xe0\xbe\xa1\xe0\xbe\xb7\xdd\xbd\xd8\x80"); } // [V7]1607test { try toUnicodeFail("\xf1\xaf\x9e\x9c.\xf0\x90\xbf\x87\xe0\xbe\xa1\xe0\xbe\xb7\xdd\xbd\xd8\x80"); } // [V7]
1608test { try toAsciiFail("\xf1\xaf\x9e\x9c.\xf0\x90\xbf\x87\xe0\xbe\xa1\xe0\xbe\xb7\xdd\xbd\xd8\x80", false); } // [V7]
1609test { try toAsciiFail("\xf1\xaf\x9e\x9c.\xf0\x90\xbf\x87\xe0\xbe\xa1\xe0\xbe\xb7\xdd\xbd\xd8\x80", true); } // [V7]
1024test { try toUnicodeFail("xn--gw68a.xn--ifb57ev2psc6027m"); } // [V7]1610test { try toUnicodeFail("xn--gw68a.xn--ifb57ev2psc6027m"); } // [V7]
1611test { try toAsciiFail("xn--gw68a.xn--ifb57ev2psc6027m", false); } // [V7]
1612test { try toAsciiFail("xn--gw68a.xn--ifb57ev2psc6027m", true); } // [V7]
1025test { try toUnicodeFail("\xf0\xa3\xb3\x94\xcc\x83.\xf0\x91\x93\x82"); } // [V6]1613test { try toUnicodeFail("\xf0\xa3\xb3\x94\xcc\x83.\xf0\x91\x93\x82"); } // [V6]
1614test { try toAsciiFail("\xf0\xa3\xb3\x94\xcc\x83.\xf0\x91\x93\x82", false); } // [V6]
1615test { try toAsciiFail("\xf0\xa3\xb3\x94\xcc\x83.\xf0\x91\x93\x82", true); } // [V6]
1026test { try toUnicodeFail("xn--nsa95820a.xn--wz1d"); } // [V6]1616test { try toUnicodeFail("xn--nsa95820a.xn--wz1d"); } // [V6]
1617test { try toAsciiFail("xn--nsa95820a.xn--wz1d", false); } // [V6]
1618test { try toAsciiFail("xn--nsa95820a.xn--wz1d", true); } // [V6]
1027test { try toUnicodeFail("\xf0\x9e\xa4\x80\xf0\x9e\xa5\x85\xf1\x98\x90\xb1\xe3\x80\x82\xf3\xa0\x84\x8c\xe1\x83\x83\xea\xa1\xa5"); } // [B2, B3, V7]1619test { try toUnicodeFail("\xf0\x9e\xa4\x80\xf0\x9e\xa5\x85\xf1\x98\x90\xb1\xe3\x80\x82\xf3\xa0\x84\x8c\xe1\x83\x83\xea\xa1\xa5"); } // [B2, B3, V7]
1620test { try toAsciiFail("\xf0\x9e\xa4\x80\xf0\x9e\xa5\x85\xf1\x98\x90\xb1\xe3\x80\x82\xf3\xa0\x84\x8c\xe1\x83\x83\xea\xa1\xa5", false); } // [B2, B3, V7]
1621test { try toAsciiFail("\xf0\x9e\xa4\x80\xf0\x9e\xa5\x85\xf1\x98\x90\xb1\xe3\x80\x82\xf3\xa0\x84\x8c\xe1\x83\x83\xea\xa1\xa5", true); } // [B2, B3, V7]
1028test { try toUnicodeFail("\xf0\x9e\xa4\xa2\xf0\x9e\xa5\x85\xf1\x98\x90\xb1\xe3\x80\x82\xf3\xa0\x84\x8c\xe2\xb4\xa3\xea\xa1\xa5"); } // [B2, B3, V7]1622test { try toUnicodeFail("\xf0\x9e\xa4\xa2\xf0\x9e\xa5\x85\xf1\x98\x90\xb1\xe3\x80\x82\xf3\xa0\x84\x8c\xe2\xb4\xa3\xea\xa1\xa5"); } // [B2, B3, V7]
1623test { try toAsciiFail("\xf0\x9e\xa4\xa2\xf0\x9e\xa5\x85\xf1\x98\x90\xb1\xe3\x80\x82\xf3\xa0\x84\x8c\xe2\xb4\xa3\xea\xa1\xa5", false); } // [B2, B3, V7]
1624test { try toAsciiFail("\xf0\x9e\xa4\xa2\xf0\x9e\xa5\x85\xf1\x98\x90\xb1\xe3\x80\x82\xf3\xa0\x84\x8c\xe2\xb4\xa3\xea\xa1\xa5", true); } // [B2, B3, V7]
1029test { try toUnicodeFail("xn--9d6hgcy3556a.xn--rlju750b"); } // [B2, B3, V7]1625test { try toUnicodeFail("xn--9d6hgcy3556a.xn--rlju750b"); } // [B2, B3, V7]
1626test { try toAsciiFail("xn--9d6hgcy3556a.xn--rlju750b", false); } // [B2, B3, V7]
1627test { try toAsciiFail("xn--9d6hgcy3556a.xn--rlju750b", true); } // [B2, B3, V7]
1030test { try toUnicodeFail("xn--9d6hgcy3556a.xn--7nd0578e"); } // [B2, B3, V7]1628test { try toUnicodeFail("xn--9d6hgcy3556a.xn--7nd0578e"); } // [B2, B3, V7]
1629test { try toAsciiFail("xn--9d6hgcy3556a.xn--7nd0578e", false); } // [B2, B3, V7]
1630test { try toAsciiFail("xn--9d6hgcy3556a.xn--7nd0578e", true); } // [B2, B3, V7]
1031test { try toUnicodeFail("\xf0\x9e\xa4\x80\xf0\x9e\xa5\x85\xf1\x98\x90\xb1\xe3\x80\x82\xf3\xa0\x84\x8c\xe2\xb4\xa3\xea\xa1\xa5"); } // [B2, B3, V7]1631test { try toUnicodeFail("\xf0\x9e\xa4\x80\xf0\x9e\xa5\x85\xf1\x98\x90\xb1\xe3\x80\x82\xf3\xa0\x84\x8c\xe2\xb4\xa3\xea\xa1\xa5"); } // [B2, B3, V7]
1632test { try toAsciiFail("\xf0\x9e\xa4\x80\xf0\x9e\xa5\x85\xf1\x98\x90\xb1\xe3\x80\x82\xf3\xa0\x84\x8c\xe2\xb4\xa3\xea\xa1\xa5", false); } // [B2, B3, V7]
1633test { try toAsciiFail("\xf0\x9e\xa4\x80\xf0\x9e\xa5\x85\xf1\x98\x90\xb1\xe3\x80\x82\xf3\xa0\x84\x8c\xe2\xb4\xa3\xea\xa1\xa5", true); } // [B2, B3, V7]
1032test { try toUnicodeFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xcf\x82\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xeb\xa0\xa7"); } // [B1, V7]1634test { try toUnicodeFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xcf\x82\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xeb\xa0\xa7"); } // [B1, V7]
1635test { try toAsciiFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xcf\x82\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xeb\xa0\xa7", false); } // [B1, V7]
1636test { try toAsciiFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xcf\x82\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xeb\xa0\xa7", true); } // [B1, V7]
1033test { try toUnicodeFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xcf\x82\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xe1\x84\x85\xe1\x85\xa7\xe1\x86\xaa"); } // [B1, V7]1637test { try toUnicodeFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xcf\x82\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xe1\x84\x85\xe1\x85\xa7\xe1\x86\xaa"); } // [B1, V7]
1638test { try toAsciiFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xcf\x82\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xe1\x84\x85\xe1\x85\xa7\xe1\x86\xaa", false); } // [B1, V7]
1639test { try toAsciiFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xcf\x82\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xe1\x84\x85\xe1\x85\xa7\xe1\x86\xaa", true); } // [B1, V7]
1034test { try toUnicodeFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xce\xa3\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xe1\x84\x85\xe1\x85\xa7\xe1\x86\xaa"); } // [B1, V7]1640test { try toUnicodeFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xce\xa3\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xe1\x84\x85\xe1\x85\xa7\xe1\x86\xaa"); } // [B1, V7]
1641test { try toAsciiFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xce\xa3\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xe1\x84\x85\xe1\x85\xa7\xe1\x86\xaa", false); } // [B1, V7]
1642test { try toAsciiFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xce\xa3\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xe1\x84\x85\xe1\x85\xa7\xe1\x86\xaa", true); } // [B1, V7]
1035test { try toUnicodeFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xce\xa3\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xeb\xa0\xa7"); } // [B1, V7]1643test { try toUnicodeFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xce\xa3\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xeb\xa0\xa7"); } // [B1, V7]
1644test { try toAsciiFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xce\xa3\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xeb\xa0\xa7", false); } // [B1, V7]
1645test { try toAsciiFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xce\xa3\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xeb\xa0\xa7", true); } // [B1, V7]
1036test { try toUnicodeFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xcf\x83\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xeb\xa0\xa7"); } // [B1, V7]1646test { try toUnicodeFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xcf\x83\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xeb\xa0\xa7"); } // [B1, V7]
1647test { try toAsciiFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xcf\x83\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xeb\xa0\xa7", false); } // [B1, V7]
1648test { try toAsciiFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xcf\x83\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xeb\xa0\xa7", true); } // [B1, V7]
1037test { try toUnicodeFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xcf\x83\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xe1\x84\x85\xe1\x85\xa7\xe1\x86\xaa"); } // [B1, V7]1649test { try toUnicodeFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xcf\x83\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xe1\x84\x85\xe1\x85\xa7\xe1\x86\xaa"); } // [B1, V7]
1650test { try toAsciiFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xcf\x83\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xe1\x84\x85\xe1\x85\xa7\xe1\x86\xaa", false); } // [B1, V7]
1651test { try toAsciiFail("\xe0\xa3\xa2\xf0\x91\x81\xbf\xcf\x83\xf0\x96\xac\xb1\xe3\x80\x82\xf3\xa0\x85\xa1\xe1\x84\x85\xe1\x85\xa7\xe1\x86\xaa", true); } // [B1, V7]
1038test { try toUnicodeFail("xn--4xa53xp48ys2xc.xn--kn2b"); } // [B1, V7]1652test { try toUnicodeFail("xn--4xa53xp48ys2xc.xn--kn2b"); } // [B1, V7]
1653test { try toAsciiFail("xn--4xa53xp48ys2xc.xn--kn2b", false); } // [B1, V7]
1654test { try toAsciiFail("xn--4xa53xp48ys2xc.xn--kn2b", true); } // [B1, V7]
1039test { try toUnicodeFail("xn--3xa73xp48ys2xc.xn--kn2b"); } // [B1, V7]1655test { try toUnicodeFail("xn--3xa73xp48ys2xc.xn--kn2b"); } // [B1, V7]
1656test { try toAsciiFail("xn--3xa73xp48ys2xc.xn--kn2b", false); } // [B1, V7]
1657test { try toAsciiFail("xn--3xa73xp48ys2xc.xn--kn2b", true); } // [B1, V7]
1040test { try toUnicodeFail("-\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\x8d\xe2\x80\x8c\xe2\x80\x8d\xe2\x92\x88"); } // [B1, C1, C2, V3, V7]1658test { try toUnicodeFail("-\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\x8d\xe2\x80\x8c\xe2\x80\x8d\xe2\x92\x88"); } // [B1, C1, C2, V3, V7]
1659test { try toAsciiFail("-\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\x8d\xe2\x80\x8c\xe2\x80\x8d\xe2\x92\x88", false); } // [B1, C1, C2, V3, V7]
1660test { try toAsciiFail("-\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\x8d\xe2\x80\x8c\xe2\x80\x8d\xe2\x92\x88", true); } // [B1, V3, V7]
1041test { try toUnicodeFail("-\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\x8d\xe2\x80\x8c\xe2\x80\x8d1."); } // [B1, C1, C2, V3]1661test { try toUnicodeFail("-\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\x8d\xe2\x80\x8c\xe2\x80\x8d1."); } // [B1, C1, C2, V3]
1662test { try toAsciiFail("-\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\x8d\xe2\x80\x8c\xe2\x80\x8d1.", false); } // [B1, C1, C2, V3, A4_2]
1663test { try toAsciiFail("-\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\x8d\xe2\x80\x8c\xe2\x80\x8d1.", true); } // [B1, V3, A4_2]
1042test { try toUnicodeFail("-\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\xaf\xe2\x80\x8c\xe2\x80\x8d1."); } // [B1, C1, C2, V3]1664test { try toUnicodeFail("-\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\xaf\xe2\x80\x8c\xe2\x80\x8d1."); } // [B1, C1, C2, V3]
1665test { try toAsciiFail("-\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\xaf\xe2\x80\x8c\xe2\x80\x8d1.", false); } // [B1, C1, C2, V3, A4_2]
1666test { try toAsciiFail("-\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\xaf\xe2\x80\x8c\xe2\x80\x8d1.", true); } // [B1, V3, A4_2]
1043test { try toUnicodeFail("-.xn--1-0i8r."); } // [B1, V3]1667test { try toUnicodeFail("-.xn--1-0i8r."); } // [B1, V3]
1668test { try toAsciiFail("-.xn--1-0i8r.", false); } // [B1, V3, A4_2]
1669test { try toAsciiFail("-.xn--1-0i8r.", true); } // [B1, V3, A4_2]
1044test { try toUnicodeFail("xn----ugn.xn--1-rgnd61297b."); } // [B1, C1, C2, V3]1670test { try toUnicodeFail("xn----ugn.xn--1-rgnd61297b."); } // [B1, C1, C2, V3]
1671test { try toAsciiFail("xn----ugn.xn--1-rgnd61297b.", false); } // [B1, C1, C2, V3, A4_2]
1672test { try toAsciiFail("xn----ugn.xn--1-rgnd61297b.", true); } // [B1, C1, C2, V3, A4_2]
1045test { try toUnicodeFail("-\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\xaf\xe2\x80\x8c\xe2\x80\x8d\xe2\x92\x88"); } // [B1, C1, C2, V3, V7]1673test { try toUnicodeFail("-\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\xaf\xe2\x80\x8c\xe2\x80\x8d\xe2\x92\x88"); } // [B1, C1, C2, V3, V7]
1674test { try toAsciiFail("-\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\xaf\xe2\x80\x8c\xe2\x80\x8d\xe2\x92\x88", false); } // [B1, C1, C2, V3, V7]
1675test { try toAsciiFail("-\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\xaf\xe2\x80\x8c\xe2\x80\x8d\xe2\x92\x88", true); } // [B1, V3, V7]
1046test { try toUnicodeFail("-.xn--tsh3666n"); } // [B1, V3, V7]1676test { try toUnicodeFail("-.xn--tsh3666n"); } // [B1, V3, V7]
1677test { try toAsciiFail("-.xn--tsh3666n", false); } // [B1, V3, V7]
1678test { try toAsciiFail("-.xn--tsh3666n", true); } // [B1, V3, V7]
1047test { try toUnicodeFail("xn----ugn.xn--0ugc555aiv51d"); } // [B1, C1, C2, V3, V7]1679test { try toUnicodeFail("xn----ugn.xn--0ugc555aiv51d"); } // [B1, C1, C2, V3, V7]
1680test { try toAsciiFail("xn----ugn.xn--0ugc555aiv51d", false); } // [B1, C1, C2, V3, V7]
1681test { try toAsciiFail("xn----ugn.xn--0ugc555aiv51d", true); } // [B1, C1, C2, V3, V7]
1048test { try toUnicodeFail("\xe2\x80\x8c\xf2\x85\x8e\xad.\xe1\x82\xb2\xf0\x91\x87\x80"); } // [C1, V7]1682test { try toUnicodeFail("\xe2\x80\x8c\xf2\x85\x8e\xad.\xe1\x82\xb2\xf0\x91\x87\x80"); } // [C1, V7]
1683test { try toAsciiFail("\xe2\x80\x8c\xf2\x85\x8e\xad.\xe1\x82\xb2\xf0\x91\x87\x80", false); } // [C1, V7]
1684test { try toAsciiFail("\xe2\x80\x8c\xf2\x85\x8e\xad.\xe1\x82\xb2\xf0\x91\x87\x80", true); } // [V7]
1049test { try toUnicodeFail("\xe2\x80\x8c\xf2\x85\x8e\xad.\xe2\xb4\x92\xf0\x91\x87\x80"); } // [C1, V7]1685test { try toUnicodeFail("\xe2\x80\x8c\xf2\x85\x8e\xad.\xe2\xb4\x92\xf0\x91\x87\x80"); } // [C1, V7]
1686test { try toAsciiFail("\xe2\x80\x8c\xf2\x85\x8e\xad.\xe2\xb4\x92\xf0\x91\x87\x80", false); } // [C1, V7]
1687test { try toAsciiFail("\xe2\x80\x8c\xf2\x85\x8e\xad.\xe2\xb4\x92\xf0\x91\x87\x80", true); } // [V7]
1050test { try toUnicodeFail("xn--bn95b.xn--9kj2034e"); } // [V7]1688test { try toUnicodeFail("xn--bn95b.xn--9kj2034e"); } // [V7]
1689test { try toAsciiFail("xn--bn95b.xn--9kj2034e", false); } // [V7]
1690test { try toAsciiFail("xn--bn95b.xn--9kj2034e", true); } // [V7]
1051test { try toUnicodeFail("xn--0ug15083f.xn--9kj2034e"); } // [C1, V7]1691test { try toUnicodeFail("xn--0ug15083f.xn--9kj2034e"); } // [C1, V7]
1692test { try toAsciiFail("xn--0ug15083f.xn--9kj2034e", false); } // [C1, V7]
1693test { try toAsciiFail("xn--0ug15083f.xn--9kj2034e", true); } // [C1, V7]
1052test { try toUnicodeFail("xn--bn95b.xn--qnd6272k"); } // [V7]1694test { try toUnicodeFail("xn--bn95b.xn--qnd6272k"); } // [V7]
1695test { try toAsciiFail("xn--bn95b.xn--qnd6272k", false); } // [V7]
1696test { try toAsciiFail("xn--bn95b.xn--qnd6272k", true); } // [V7]
1053test { try toUnicodeFail("xn--0ug15083f.xn--qnd6272k"); } // [C1, V7]1697test { try toUnicodeFail("xn--0ug15083f.xn--qnd6272k"); } // [C1, V7]
1698test { try toAsciiFail("xn--0ug15083f.xn--qnd6272k", false); } // [C1, V7]
1699test { try toAsciiFail("xn--0ug15083f.xn--qnd6272k", true); } // [C1, V7]
1054test { try toUnicodeFail("\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.\xef\xbc\x98\xef\xb8\x92"); } // [V7]1700test { try toUnicodeFail("\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.\xef\xbc\x98\xef\xb8\x92"); } // [V7]
1701test { try toAsciiFail("\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.\xef\xbc\x98\xef\xb8\x92", false); } // [V7]
1702test { try toAsciiFail("\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.\xef\xbc\x98\xef\xb8\x92", true); } // [V7]
1055test { try toUnicodePass("\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.8\xe3\x80\x82", "\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.8."); }1703test { try toUnicodePass("\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.8\xe3\x80\x82", "\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.8."); }
1704test { try toAsciiFail("\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.8\xe3\x80\x82", false); } // [A4_2]
1705test { try toAsciiFail("\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.8\xe3\x80\x82", true); } // [A4_2]
1056test { try toUnicodePass("xn--gl0as212a.i.", "\xe7\xb9\xb1\xf0\x91\x96\xbf.i."); }1706test { try toUnicodePass("xn--gl0as212a.i.", "\xe7\xb9\xb1\xf0\x91\x96\xbf.i."); }
1707test { try toAsciiFail("xn--gl0as212a.i.", false); } // [A4_2]
1708test { try toAsciiFail("xn--gl0as212a.i.", true); } // [A4_2]
1057test { try toUnicodePass("\xe7\xb9\xb1\xf0\x91\x96\xbf.i.", "\xe7\xb9\xb1\xf0\x91\x96\xbf.i."); }1709test { try toUnicodePass("\xe7\xb9\xb1\xf0\x91\x96\xbf.i.", "\xe7\xb9\xb1\xf0\x91\x96\xbf.i."); }
1710test { try toAsciiFail("\xe7\xb9\xb1\xf0\x91\x96\xbf.i.", false); } // [A4_2]
1711test { try toAsciiFail("\xe7\xb9\xb1\xf0\x91\x96\xbf.i.", true); } // [A4_2]
1058test { try toUnicodePass("\xe7\xb9\xb1\xf0\x91\x96\xbf.I.", "\xe7\xb9\xb1\xf0\x91\x96\xbf.i."); }1712test { try toUnicodePass("\xe7\xb9\xb1\xf0\x91\x96\xbf.I.", "\xe7\xb9\xb1\xf0\x91\x96\xbf.i."); }
1713test { try toAsciiFail("\xe7\xb9\xb1\xf0\x91\x96\xbf.I.", false); } // [A4_2]
1714test { try toAsciiFail("\xe7\xb9\xb1\xf0\x91\x96\xbf.I.", true); } // [A4_2]
1059test { try toUnicodePass("xn--1ug6928ac48e.i.", "\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.i."); }1715test { try toUnicodePass("xn--1ug6928ac48e.i.", "\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.i."); }
1716test { try toAsciiFail("xn--1ug6928ac48e.i.", false); } // [A4_2]
1717test { try toAsciiFail("xn--1ug6928ac48e.i.", true); } // [A4_2]
1060test { try toUnicodePass("\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.i.", "\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.i."); }1718test { try toUnicodePass("\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.i.", "\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.i."); }
1719test { try toAsciiFail("\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.i.", false); } // [A4_2]
1720test { try toAsciiFail("\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.i.", true); } // [A4_2]
1061test { try toUnicodePass("\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.I.", "\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.i."); }1721test { try toUnicodePass("\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.I.", "\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.i."); }
1722test { try toAsciiFail("\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.I.", false); } // [A4_2]
1723test { try toAsciiFail("\xe7\xb9\xb1\xf0\x91\x96\xbf\xe2\x80\x8d.I.", true); } // [A4_2]
1062test { try toUnicodeFail("xn--gl0as212a.xn--8-o89h"); } // [V7]1724test { try toUnicodeFail("xn--gl0as212a.xn--8-o89h"); } // [V7]
1725test { try toAsciiFail("xn--gl0as212a.xn--8-o89h", false); } // [V7]
1726test { try toAsciiFail("xn--gl0as212a.xn--8-o89h", true); } // [V7]
1063test { try toUnicodeFail("xn--1ug6928ac48e.xn--8-o89h"); } // [V7]1727test { try toUnicodeFail("xn--1ug6928ac48e.xn--8-o89h"); } // [V7]
1728test { try toAsciiFail("xn--1ug6928ac48e.xn--8-o89h", false); } // [V7]
1729test { try toAsciiFail("xn--1ug6928ac48e.xn--8-o89h", true); } // [V7]
1064test { try toUnicodeFail("\xf3\xa0\x86\xbe\xef\xbc\x8e\xf0\x9e\x80\x88"); } // [V6, X4_2]1730test { try toUnicodeFail("\xf3\xa0\x86\xbe\xef\xbc\x8e\xf0\x9e\x80\x88"); } // [V6, X4_2]
1731test { try toAsciiFail("\xf3\xa0\x86\xbe\xef\xbc\x8e\xf0\x9e\x80\x88", false); } // [V6, A4_2]
1732test { try toAsciiFail("\xf3\xa0\x86\xbe\xef\xbc\x8e\xf0\x9e\x80\x88", true); } // [V6, A4_2]
1065test { try toUnicodeFail("\xf3\xa0\x86\xbe.\xf0\x9e\x80\x88"); } // [V6, X4_2]1733test { try toUnicodeFail("\xf3\xa0\x86\xbe.\xf0\x9e\x80\x88"); } // [V6, X4_2]
1734test { try toAsciiFail("\xf3\xa0\x86\xbe.\xf0\x9e\x80\x88", false); } // [V6, A4_2]
1735test { try toAsciiFail("\xf3\xa0\x86\xbe.\xf0\x9e\x80\x88", true); } // [V6, A4_2]
1066test { try toUnicodeFail(".xn--ph4h"); } // [V6, X4_2]1736test { try toUnicodeFail(".xn--ph4h"); } // [V6, X4_2]
1737test { try toAsciiFail(".xn--ph4h", false); } // [V6, A4_2]
1738test { try toAsciiFail(".xn--ph4h", true); } // [V6, A4_2]
1067test { try toUnicodeFail("\xc3\x9f\xdb\xab\xe3\x80\x82\xe2\x80\x8d"); } // [C2]1739test { try toUnicodeFail("\xc3\x9f\xdb\xab\xe3\x80\x82\xe2\x80\x8d"); } // [C2]
1740test { try toAsciiFail("\xc3\x9f\xdb\xab\xe3\x80\x82\xe2\x80\x8d", false); } // [C2]
1741test { try toAsciiFail("\xc3\x9f\xdb\xab\xe3\x80\x82\xe2\x80\x8d", true); } // [A4_2]
1068test { try toUnicodeFail("SS\xdb\xab\xe3\x80\x82\xe2\x80\x8d"); } // [C2]1742test { try toUnicodeFail("SS\xdb\xab\xe3\x80\x82\xe2\x80\x8d"); } // [C2]
1743test { try toAsciiFail("SS\xdb\xab\xe3\x80\x82\xe2\x80\x8d", false); } // [C2]
1744test { try toAsciiFail("SS\xdb\xab\xe3\x80\x82\xe2\x80\x8d", true); } // [A4_2]
1069test { try toUnicodeFail("ss\xdb\xab\xe3\x80\x82\xe2\x80\x8d"); } // [C2]1745test { try toUnicodeFail("ss\xdb\xab\xe3\x80\x82\xe2\x80\x8d"); } // [C2]
1746test { try toAsciiFail("ss\xdb\xab\xe3\x80\x82\xe2\x80\x8d", false); } // [C2]
1747test { try toAsciiFail("ss\xdb\xab\xe3\x80\x82\xe2\x80\x8d", true); } // [A4_2]
1070test { try toUnicodeFail("Ss\xdb\xab\xe3\x80\x82\xe2\x80\x8d"); } // [C2]1748test { try toUnicodeFail("Ss\xdb\xab\xe3\x80\x82\xe2\x80\x8d"); } // [C2]
1749test { try toAsciiFail("Ss\xdb\xab\xe3\x80\x82\xe2\x80\x8d", false); } // [C2]
1750test { try toAsciiFail("Ss\xdb\xab\xe3\x80\x82\xe2\x80\x8d", true); } // [A4_2]
1071test { try toUnicodePass("xn--ss-59d.", "ss\xdb\xab."); }1751test { try toUnicodePass("xn--ss-59d.", "ss\xdb\xab."); }
1752test { try toAsciiFail("xn--ss-59d.", false); } // [A4_2]
1753test { try toAsciiFail("xn--ss-59d.", true); } // [A4_2]
1072test { try toUnicodePass("ss\xdb\xab.", "ss\xdb\xab."); }1754test { try toUnicodePass("ss\xdb\xab.", "ss\xdb\xab."); }
1755test { try toAsciiFail("ss\xdb\xab.", false); } // [A4_2]
1756test { try toAsciiFail("ss\xdb\xab.", true); } // [A4_2]
1073test { try toUnicodePass("SS\xdb\xab.", "ss\xdb\xab."); }1757test { try toUnicodePass("SS\xdb\xab.", "ss\xdb\xab."); }
1758test { try toAsciiFail("SS\xdb\xab.", false); } // [A4_2]
1759test { try toAsciiFail("SS\xdb\xab.", true); } // [A4_2]
1074test { try toUnicodePass("Ss\xdb\xab.", "ss\xdb\xab."); }1760test { try toUnicodePass("Ss\xdb\xab.", "ss\xdb\xab."); }
1761test { try toAsciiFail("Ss\xdb\xab.", false); } // [A4_2]
1762test { try toAsciiFail("Ss\xdb\xab.", true); } // [A4_2]
1075test { try toUnicodeFail("xn--ss-59d.xn--1ug"); } // [C2]1763test { try toUnicodeFail("xn--ss-59d.xn--1ug"); } // [C2]
1764test { try toAsciiFail("xn--ss-59d.xn--1ug", false); } // [C2]
1765test { try toAsciiFail("xn--ss-59d.xn--1ug", true); } // [C2]
1076test { try toUnicodeFail("xn--zca012a.xn--1ug"); } // [C2]1766test { try toUnicodeFail("xn--zca012a.xn--1ug"); } // [C2]
1767test { try toAsciiFail("xn--zca012a.xn--1ug", false); } // [C2]
1768test { try toAsciiFail("xn--zca012a.xn--1ug", true); } // [C2]
1077test { try toUnicodeFail("\xf3\xa0\x90\xb5\xe2\x80\x8c\xe2\x92\x88\xef\xbc\x8e\xf3\xa0\x8e\x87"); } // [C1, V7]1769test { try toUnicodeFail("\xf3\xa0\x90\xb5\xe2\x80\x8c\xe2\x92\x88\xef\xbc\x8e\xf3\xa0\x8e\x87"); } // [C1, V7]
1770test { try toAsciiFail("\xf3\xa0\x90\xb5\xe2\x80\x8c\xe2\x92\x88\xef\xbc\x8e\xf3\xa0\x8e\x87", false); } // [C1, V7]
1771test { try toAsciiFail("\xf3\xa0\x90\xb5\xe2\x80\x8c\xe2\x92\x88\xef\xbc\x8e\xf3\xa0\x8e\x87", true); } // [V7]
1078test { try toUnicodeFail("\xf3\xa0\x90\xb5\xe2\x80\x8c1..\xf3\xa0\x8e\x87"); } // [C1, V7, X4_2]1772test { try toUnicodeFail("\xf3\xa0\x90\xb5\xe2\x80\x8c1..\xf3\xa0\x8e\x87"); } // [C1, V7, X4_2]
1773test { try toAsciiFail("\xf3\xa0\x90\xb5\xe2\x80\x8c1..\xf3\xa0\x8e\x87", false); } // [C1, V7, A4_2]
1774test { try toAsciiFail("\xf3\xa0\x90\xb5\xe2\x80\x8c1..\xf3\xa0\x8e\x87", true); } // [V7, A4_2]
1079test { try toUnicodeFail("xn--1-bs31m..xn--tv36e"); } // [V7, X4_2]1775test { try toUnicodeFail("xn--1-bs31m..xn--tv36e"); } // [V7, X4_2]
1776test { try toAsciiFail("xn--1-bs31m..xn--tv36e", false); } // [V7, A4_2]
1777test { try toAsciiFail("xn--1-bs31m..xn--tv36e", true); } // [V7, A4_2]
1080test { try toUnicodeFail("xn--1-rgn37671n..xn--tv36e"); } // [C1, V7, X4_2]1778test { try toUnicodeFail("xn--1-rgn37671n..xn--tv36e"); } // [C1, V7, X4_2]
1779test { try toAsciiFail("xn--1-rgn37671n..xn--tv36e", false); } // [C1, V7, A4_2]
1780test { try toAsciiFail("xn--1-rgn37671n..xn--tv36e", true); } // [C1, V7, A4_2]
1081test { try toUnicodeFail("xn--tshz2001k.xn--tv36e"); } // [V7]1781test { try toUnicodeFail("xn--tshz2001k.xn--tv36e"); } // [V7]
1782test { try toAsciiFail("xn--tshz2001k.xn--tv36e", false); } // [V7]
1783test { try toAsciiFail("xn--tshz2001k.xn--tv36e", true); } // [V7]
1082test { try toUnicodeFail("xn--0ug88o47900b.xn--tv36e"); } // [C1, V7]1784test { try toUnicodeFail("xn--0ug88o47900b.xn--tv36e"); } // [C1, V7]
1785test { try toAsciiFail("xn--0ug88o47900b.xn--tv36e", false); } // [C1, V7]
1786test { try toAsciiFail("xn--0ug88o47900b.xn--tv36e", true); } // [C1, V7]
1083test { try toUnicodeFail("\xf3\x9f\x88\xa3\xd9\x9f\xea\xaa\xb2\xc3\x9f\xe3\x80\x82\xf3\x8c\x93\xa7"); } // [V7]1787test { try toUnicodeFail("\xf3\x9f\x88\xa3\xd9\x9f\xea\xaa\xb2\xc3\x9f\xe3\x80\x82\xf3\x8c\x93\xa7"); } // [V7]
1788test { try toAsciiFail("\xf3\x9f\x88\xa3\xd9\x9f\xea\xaa\xb2\xc3\x9f\xe3\x80\x82\xf3\x8c\x93\xa7", false); } // [V7]
1789test { try toAsciiFail("\xf3\x9f\x88\xa3\xd9\x9f\xea\xaa\xb2\xc3\x9f\xe3\x80\x82\xf3\x8c\x93\xa7", true); } // [V7]
1084test { try toUnicodeFail("\xf3\x9f\x88\xa3\xd9\x9f\xea\xaa\xb2SS\xe3\x80\x82\xf3\x8c\x93\xa7"); } // [V7]1790test { try toUnicodeFail("\xf3\x9f\x88\xa3\xd9\x9f\xea\xaa\xb2SS\xe3\x80\x82\xf3\x8c\x93\xa7"); } // [V7]
1791test { try toAsciiFail("\xf3\x9f\x88\xa3\xd9\x9f\xea\xaa\xb2SS\xe3\x80\x82\xf3\x8c\x93\xa7", false); } // [V7]
1792test { try toAsciiFail("\xf3\x9f\x88\xa3\xd9\x9f\xea\xaa\xb2SS\xe3\x80\x82\xf3\x8c\x93\xa7", true); } // [V7]
1085test { try toUnicodeFail("\xf3\x9f\x88\xa3\xd9\x9f\xea\xaa\xb2ss\xe3\x80\x82\xf3\x8c\x93\xa7"); } // [V7]1793test { try toUnicodeFail("\xf3\x9f\x88\xa3\xd9\x9f\xea\xaa\xb2ss\xe3\x80\x82\xf3\x8c\x93\xa7"); } // [V7]
1794test { try toAsciiFail("\xf3\x9f\x88\xa3\xd9\x9f\xea\xaa\xb2ss\xe3\x80\x82\xf3\x8c\x93\xa7", false); } // [V7]
1795test { try toAsciiFail("\xf3\x9f\x88\xa3\xd9\x9f\xea\xaa\xb2ss\xe3\x80\x82\xf3\x8c\x93\xa7", true); } // [V7]
1086test { try toUnicodeFail("\xf3\x9f\x88\xa3\xd9\x9f\xea\xaa\xb2Ss\xe3\x80\x82\xf3\x8c\x93\xa7"); } // [V7]1796test { try toUnicodeFail("\xf3\x9f\x88\xa3\xd9\x9f\xea\xaa\xb2Ss\xe3\x80\x82\xf3\x8c\x93\xa7"); } // [V7]
1797test { try toAsciiFail("\xf3\x9f\x88\xa3\xd9\x9f\xea\xaa\xb2Ss\xe3\x80\x82\xf3\x8c\x93\xa7", false); } // [V7]
1798test { try toAsciiFail("\xf3\x9f\x88\xa3\xd9\x9f\xea\xaa\xb2Ss\xe3\x80\x82\xf3\x8c\x93\xa7", true); } // [V7]
1087test { try toUnicodeFail("xn--ss-3xd2839nncy1m.xn--bb79d"); } // [V7]1799test { try toUnicodeFail("xn--ss-3xd2839nncy1m.xn--bb79d"); } // [V7]
1800test { try toAsciiFail("xn--ss-3xd2839nncy1m.xn--bb79d", false); } // [V7]
1801test { try toAsciiFail("xn--ss-3xd2839nncy1m.xn--bb79d", true); } // [V7]
1088test { try toUnicodeFail("xn--zca92z0t7n5w96j.xn--bb79d"); } // [V7]1802test { try toUnicodeFail("xn--zca92z0t7n5w96j.xn--bb79d"); } // [V7]
1803test { try toAsciiFail("xn--zca92z0t7n5w96j.xn--bb79d", false); } // [V7]
1804test { try toAsciiFail("xn--zca92z0t7n5w96j.xn--bb79d", true); } // [V7]
1089test { try toUnicodeFail("\xdd\xb4\xe2\x80\x8c\xf0\x9e\xa4\xbf\xe3\x80\x82\xf0\xbd\x98\x90\xe4\x89\x9c\xe2\x80\x8d\xf1\xbf\xa4\xbc"); } // [C1, C2, V7]1805test { try toUnicodeFail("\xdd\xb4\xe2\x80\x8c\xf0\x9e\xa4\xbf\xe3\x80\x82\xf0\xbd\x98\x90\xe4\x89\x9c\xe2\x80\x8d\xf1\xbf\xa4\xbc"); } // [C1, C2, V7]
1806test { try toAsciiFail("\xdd\xb4\xe2\x80\x8c\xf0\x9e\xa4\xbf\xe3\x80\x82\xf0\xbd\x98\x90\xe4\x89\x9c\xe2\x80\x8d\xf1\xbf\xa4\xbc", false); } // [C1, C2, V7]
1807test { try toAsciiFail("\xdd\xb4\xe2\x80\x8c\xf0\x9e\xa4\xbf\xe3\x80\x82\xf0\xbd\x98\x90\xe4\x89\x9c\xe2\x80\x8d\xf1\xbf\xa4\xbc", true); } // [V7]
1090test { try toUnicodeFail("\xdd\xb4\xe2\x80\x8c\xf0\x9e\xa4\x9d\xe3\x80\x82\xf0\xbd\x98\x90\xe4\x89\x9c\xe2\x80\x8d\xf1\xbf\xa4\xbc"); } // [C1, C2, V7]1808test { try toUnicodeFail("\xdd\xb4\xe2\x80\x8c\xf0\x9e\xa4\x9d\xe3\x80\x82\xf0\xbd\x98\x90\xe4\x89\x9c\xe2\x80\x8d\xf1\xbf\xa4\xbc"); } // [C1, C2, V7]
1809test { try toAsciiFail("\xdd\xb4\xe2\x80\x8c\xf0\x9e\xa4\x9d\xe3\x80\x82\xf0\xbd\x98\x90\xe4\x89\x9c\xe2\x80\x8d\xf1\xbf\xa4\xbc", false); } // [C1, C2, V7]
1810test { try toAsciiFail("\xdd\xb4\xe2\x80\x8c\xf0\x9e\xa4\x9d\xe3\x80\x82\xf0\xbd\x98\x90\xe4\x89\x9c\xe2\x80\x8d\xf1\xbf\xa4\xbc", true); } // [V7]
1091test { try toUnicodeFail("xn--4pb2977v.xn--z0nt555ukbnv"); } // [V7]1811test { try toUnicodeFail("xn--4pb2977v.xn--z0nt555ukbnv"); } // [V7]
1812test { try toAsciiFail("xn--4pb2977v.xn--z0nt555ukbnv", false); } // [V7]
1813test { try toAsciiFail("xn--4pb2977v.xn--z0nt555ukbnv", true); } // [V7]
1092test { try toUnicodeFail("xn--4pb607jjt73a.xn--1ug236ke314donv1a"); } // [C1, C2, V7]1814test { try toUnicodeFail("xn--4pb607jjt73a.xn--1ug236ke314donv1a"); } // [C1, C2, V7]
1815test { try toAsciiFail("xn--4pb607jjt73a.xn--1ug236ke314donv1a", false); } // [C1, C2, V7]
1816test { try toAsciiFail("xn--4pb607jjt73a.xn--1ug236ke314donv1a", true); } // [C1, C2, V7]
1093test { try toUnicodeFail("\xf2\x94\xad\x9c\xcf\x82\xe1\xa1\xb1\xe2\x92\x88.\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7]1817test { try toUnicodeFail("\xf2\x94\xad\x9c\xcf\x82\xe1\xa1\xb1\xe2\x92\x88.\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7]
1818test { try toAsciiFail("\xf2\x94\xad\x9c\xcf\x82\xe1\xa1\xb1\xe2\x92\x88.\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", false); } // [B1, V7]
1819test { try toAsciiFail("\xf2\x94\xad\x9c\xcf\x82\xe1\xa1\xb1\xe2\x92\x88.\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", true); } // [B1, V7]
1094test { try toUnicodeFail("\xf2\x94\xad\x9c\xcf\x82\xe1\xa1\xb1\xe2\x92\x88.<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7]1820test { try toUnicodeFail("\xf2\x94\xad\x9c\xcf\x82\xe1\xa1\xb1\xe2\x92\x88.<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7]
1821test { try toAsciiFail("\xf2\x94\xad\x9c\xcf\x82\xe1\xa1\xb1\xe2\x92\x88.<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", false); } // [B1, V7]
1822test { try toAsciiFail("\xf2\x94\xad\x9c\xcf\x82\xe1\xa1\xb1\xe2\x92\x88.<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", true); } // [B1, V7]
1095test { try toUnicodeFail("\xf2\x94\xad\x9c\xcf\x82\xe1\xa1\xb11..\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7, X4_2]1823test { try toUnicodeFail("\xf2\x94\xad\x9c\xcf\x82\xe1\xa1\xb11..\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7, X4_2]
1824test { try toAsciiFail("\xf2\x94\xad\x9c\xcf\x82\xe1\xa1\xb11..\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", false); } // [B1, V7, A4_2]
1825test { try toAsciiFail("\xf2\x94\xad\x9c\xcf\x82\xe1\xa1\xb11..\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", true); } // [B1, V7, A4_2]
1096test { try toUnicodeFail("\xf2\x94\xad\x9c\xcf\x82\xe1\xa1\xb11..<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7, X4_2]1826test { try toUnicodeFail("\xf2\x94\xad\x9c\xcf\x82\xe1\xa1\xb11..<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7, X4_2]
1827test { try toAsciiFail("\xf2\x94\xad\x9c\xcf\x82\xe1\xa1\xb11..<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", false); } // [B1, V7, A4_2]
1828test { try toAsciiFail("\xf2\x94\xad\x9c\xcf\x82\xe1\xa1\xb11..<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", true); } // [B1, V7, A4_2]
1097test { try toUnicodeFail("\xf2\x94\xad\x9c\xce\xa3\xe1\xa1\xb11..<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7, X4_2]1829test { try toUnicodeFail("\xf2\x94\xad\x9c\xce\xa3\xe1\xa1\xb11..<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7, X4_2]
1830test { try toAsciiFail("\xf2\x94\xad\x9c\xce\xa3\xe1\xa1\xb11..<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", false); } // [B1, V7, A4_2]
1831test { try toAsciiFail("\xf2\x94\xad\x9c\xce\xa3\xe1\xa1\xb11..<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", true); } // [B1, V7, A4_2]
1098test { try toUnicodeFail("\xf2\x94\xad\x9c\xce\xa3\xe1\xa1\xb11..\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7, X4_2]1832test { try toUnicodeFail("\xf2\x94\xad\x9c\xce\xa3\xe1\xa1\xb11..\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7, X4_2]
1833test { try toAsciiFail("\xf2\x94\xad\x9c\xce\xa3\xe1\xa1\xb11..\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", false); } // [B1, V7, A4_2]
1834test { try toAsciiFail("\xf2\x94\xad\x9c\xce\xa3\xe1\xa1\xb11..\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", true); } // [B1, V7, A4_2]
1099test { try toUnicodeFail("\xf2\x94\xad\x9c\xcf\x83\xe1\xa1\xb11..\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7, X4_2]1835test { try toUnicodeFail("\xf2\x94\xad\x9c\xcf\x83\xe1\xa1\xb11..\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7, X4_2]
1836test { try toAsciiFail("\xf2\x94\xad\x9c\xcf\x83\xe1\xa1\xb11..\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", false); } // [B1, V7, A4_2]
1837test { try toAsciiFail("\xf2\x94\xad\x9c\xcf\x83\xe1\xa1\xb11..\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", true); } // [B1, V7, A4_2]
1100test { try toUnicodeFail("\xf2\x94\xad\x9c\xcf\x83\xe1\xa1\xb11..<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7, X4_2]1838test { try toUnicodeFail("\xf2\x94\xad\x9c\xcf\x83\xe1\xa1\xb11..<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7, X4_2]
1839test { try toAsciiFail("\xf2\x94\xad\x9c\xcf\x83\xe1\xa1\xb11..<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", false); } // [B1, V7, A4_2]
1840test { try toAsciiFail("\xf2\x94\xad\x9c\xcf\x83\xe1\xa1\xb11..<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", true); } // [B1, V7, A4_2]
1101test { try toUnicodeFail("xn--1-zmb699meq63t..xn--gdh5392g6sd"); } // [B1, V7, X4_2]1841test { try toUnicodeFail("xn--1-zmb699meq63t..xn--gdh5392g6sd"); } // [B1, V7, X4_2]
1842test { try toAsciiFail("xn--1-zmb699meq63t..xn--gdh5392g6sd", false); } // [B1, V7, A4_2]
1843test { try toAsciiFail("xn--1-zmb699meq63t..xn--gdh5392g6sd", true); } // [B1, V7, A4_2]
1102test { try toUnicodeFail("xn--1-zmb699meq63t..xn--1ug85gn777ahze"); } // [B1, V7, X4_2]1844test { try toUnicodeFail("xn--1-zmb699meq63t..xn--1ug85gn777ahze"); } // [B1, V7, X4_2]
1845test { try toAsciiFail("xn--1-zmb699meq63t..xn--1ug85gn777ahze", false); } // [B1, V7, A4_2]
1846test { try toAsciiFail("xn--1-zmb699meq63t..xn--1ug85gn777ahze", true); } // [B1, V7, A4_2]
1103test { try toUnicodeFail("xn--1-xmb999meq63t..xn--1ug85gn777ahze"); } // [B1, V7, X4_2]1847test { try toUnicodeFail("xn--1-xmb999meq63t..xn--1ug85gn777ahze"); } // [B1, V7, X4_2]
1848test { try toAsciiFail("xn--1-xmb999meq63t..xn--1ug85gn777ahze", false); } // [B1, V7, A4_2]
1849test { try toAsciiFail("xn--1-xmb999meq63t..xn--1ug85gn777ahze", true); } // [B1, V7, A4_2]
1104test { try toUnicodeFail("\xf2\x94\xad\x9c\xce\xa3\xe1\xa1\xb1\xe2\x92\x88.<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7]1850test { try toUnicodeFail("\xf2\x94\xad\x9c\xce\xa3\xe1\xa1\xb1\xe2\x92\x88.<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7]
1851test { try toAsciiFail("\xf2\x94\xad\x9c\xce\xa3\xe1\xa1\xb1\xe2\x92\x88.<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", false); } // [B1, V7]
1852test { try toAsciiFail("\xf2\x94\xad\x9c\xce\xa3\xe1\xa1\xb1\xe2\x92\x88.<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", true); } // [B1, V7]
1105test { try toUnicodeFail("\xf2\x94\xad\x9c\xce\xa3\xe1\xa1\xb1\xe2\x92\x88.\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7]1853test { try toUnicodeFail("\xf2\x94\xad\x9c\xce\xa3\xe1\xa1\xb1\xe2\x92\x88.\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7]
1854test { try toAsciiFail("\xf2\x94\xad\x9c\xce\xa3\xe1\xa1\xb1\xe2\x92\x88.\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", false); } // [B1, V7]
1855test { try toAsciiFail("\xf2\x94\xad\x9c\xce\xa3\xe1\xa1\xb1\xe2\x92\x88.\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", true); } // [B1, V7]
1106test { try toUnicodeFail("\xf2\x94\xad\x9c\xcf\x83\xe1\xa1\xb1\xe2\x92\x88.\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7]1856test { try toUnicodeFail("\xf2\x94\xad\x9c\xcf\x83\xe1\xa1\xb1\xe2\x92\x88.\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7]
1857test { try toAsciiFail("\xf2\x94\xad\x9c\xcf\x83\xe1\xa1\xb1\xe2\x92\x88.\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", false); } // [B1, V7]
1858test { try toAsciiFail("\xf2\x94\xad\x9c\xcf\x83\xe1\xa1\xb1\xe2\x92\x88.\xe2\x89\xae\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", true); } // [B1, V7]
1107test { try toUnicodeFail("\xf2\x94\xad\x9c\xcf\x83\xe1\xa1\xb1\xe2\x92\x88.<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7]1859test { try toUnicodeFail("\xf2\x94\xad\x9c\xcf\x83\xe1\xa1\xb1\xe2\x92\x88.<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d"); } // [B1, V7]
1860test { try toAsciiFail("\xf2\x94\xad\x9c\xcf\x83\xe1\xa1\xb1\xe2\x92\x88.<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", false); } // [B1, V7]
1861test { try toAsciiFail("\xf2\x94\xad\x9c\xcf\x83\xe1\xa1\xb1\xe2\x92\x88.<\xcc\xb8\xf0\x91\x84\xb3\xe2\x80\x8d\xf0\x90\xae\x8d", true); } // [B1, V7]
1108test { try toUnicodeFail("xn--4xa207hkzinr77u.xn--gdh5392g6sd"); } // [B1, V7]1862test { try toUnicodeFail("xn--4xa207hkzinr77u.xn--gdh5392g6sd"); } // [B1, V7]
1863test { try toAsciiFail("xn--4xa207hkzinr77u.xn--gdh5392g6sd", false); } // [B1, V7]
1864test { try toAsciiFail("xn--4xa207hkzinr77u.xn--gdh5392g6sd", true); } // [B1, V7]
1109test { try toUnicodeFail("xn--4xa207hkzinr77u.xn--1ug85gn777ahze"); } // [B1, V7]1865test { try toUnicodeFail("xn--4xa207hkzinr77u.xn--1ug85gn777ahze"); } // [B1, V7]
1866test { try toAsciiFail("xn--4xa207hkzinr77u.xn--1ug85gn777ahze", false); } // [B1, V7]
1867test { try toAsciiFail("xn--4xa207hkzinr77u.xn--1ug85gn777ahze", true); } // [B1, V7]
1110test { try toUnicodeFail("xn--3xa407hkzinr77u.xn--1ug85gn777ahze"); } // [B1, V7]1868test { try toUnicodeFail("xn--3xa407hkzinr77u.xn--1ug85gn777ahze"); } // [B1, V7]
1869test { try toAsciiFail("xn--3xa407hkzinr77u.xn--1ug85gn777ahze", false); } // [B1, V7]
1870test { try toAsciiFail("xn--3xa407hkzinr77u.xn--1ug85gn777ahze", true); } // [B1, V7]
1111test { try toUnicodeFail("\xe3\x85\xa4\xe0\xa5\x8d\xe1\x82\xa0\xe1\x9f\x90.\xe1\xa0\x8b"); } // [V6]1871test { try toUnicodeFail("\xe3\x85\xa4\xe0\xa5\x8d\xe1\x82\xa0\xe1\x9f\x90.\xe1\xa0\x8b"); } // [V6]
1872test { try toAsciiFail("\xe3\x85\xa4\xe0\xa5\x8d\xe1\x82\xa0\xe1\x9f\x90.\xe1\xa0\x8b", false); } // [V6, A4_2]
1873test { try toAsciiFail("\xe3\x85\xa4\xe0\xa5\x8d\xe1\x82\xa0\xe1\x9f\x90.\xe1\xa0\x8b", true); } // [V6, A4_2]
1112test { try toUnicodeFail("\xe1\x85\xa0\xe0\xa5\x8d\xe1\x82\xa0\xe1\x9f\x90.\xe1\xa0\x8b"); } // [V6]1874test { try toUnicodeFail("\xe1\x85\xa0\xe0\xa5\x8d\xe1\x82\xa0\xe1\x9f\x90.\xe1\xa0\x8b"); } // [V6]
1875test { try toAsciiFail("\xe1\x85\xa0\xe0\xa5\x8d\xe1\x82\xa0\xe1\x9f\x90.\xe1\xa0\x8b", false); } // [V6, A4_2]
1876test { try toAsciiFail("\xe1\x85\xa0\xe0\xa5\x8d\xe1\x82\xa0\xe1\x9f\x90.\xe1\xa0\x8b", true); } // [V6, A4_2]
1113test { try toUnicodeFail("\xe1\x85\xa0\xe0\xa5\x8d\xe2\xb4\x80\xe1\x9f\x90.\xe1\xa0\x8b"); } // [V6]1877test { try toUnicodeFail("\xe1\x85\xa0\xe0\xa5\x8d\xe2\xb4\x80\xe1\x9f\x90.\xe1\xa0\x8b"); } // [V6]
1878test { try toAsciiFail("\xe1\x85\xa0\xe0\xa5\x8d\xe2\xb4\x80\xe1\x9f\x90.\xe1\xa0\x8b", false); } // [V6, A4_2]
1879test { try toAsciiFail("\xe1\x85\xa0\xe0\xa5\x8d\xe2\xb4\x80\xe1\x9f\x90.\xe1\xa0\x8b", true); } // [V6, A4_2]
1114test { try toUnicodeFail("xn--n3b445e53p."); } // [V6]1880test { try toUnicodeFail("xn--n3b445e53p."); } // [V6]
1881test { try toAsciiFail("xn--n3b445e53p.", false); } // [V6, A4_2]
1882test { try toAsciiFail("xn--n3b445e53p.", true); } // [V6, A4_2]
1115test { try toUnicodeFail("\xe3\x85\xa4\xe0\xa5\x8d\xe2\xb4\x80\xe1\x9f\x90.\xe1\xa0\x8b"); } // [V6]1883test { try toUnicodeFail("\xe3\x85\xa4\xe0\xa5\x8d\xe2\xb4\x80\xe1\x9f\x90.\xe1\xa0\x8b"); } // [V6]
1884test { try toAsciiFail("\xe3\x85\xa4\xe0\xa5\x8d\xe2\xb4\x80\xe1\x9f\x90.\xe1\xa0\x8b", false); } // [V6, A4_2]
1885test { try toAsciiFail("\xe3\x85\xa4\xe0\xa5\x8d\xe2\xb4\x80\xe1\x9f\x90.\xe1\xa0\x8b", true); } // [V6, A4_2]
1116test { try toUnicodeFail("xn--n3b742bkqf4ty."); } // [V7]1886test { try toUnicodeFail("xn--n3b742bkqf4ty."); } // [V7]
1887test { try toAsciiFail("xn--n3b742bkqf4ty.", false); } // [V7, A4_2]
1888test { try toAsciiFail("xn--n3b742bkqf4ty.", true); } // [V7, A4_2]
1117test { try toUnicodeFail("xn--n3b468aoqa89r."); } // [V7]1889test { try toUnicodeFail("xn--n3b468aoqa89r."); } // [V7]
1890test { try toAsciiFail("xn--n3b468aoqa89r.", false); } // [V7, A4_2]
1891test { try toAsciiFail("xn--n3b468aoqa89r.", true); } // [V7, A4_2]
1118test { try toUnicodeFail("xn--n3b445e53po6d."); } // [V7]1892test { try toUnicodeFail("xn--n3b445e53po6d."); } // [V7]
1893test { try toAsciiFail("xn--n3b445e53po6d.", false); } // [V7, A4_2]
1894test { try toAsciiFail("xn--n3b445e53po6d.", true); } // [V7, A4_2]
1119test { try toUnicodeFail("xn--n3b468azngju2a."); } // [V7]1895test { try toUnicodeFail("xn--n3b468azngju2a."); } // [V7]
1896test { try toAsciiFail("xn--n3b468azngju2a.", false); } // [V7, A4_2]
1897test { try toAsciiFail("xn--n3b468azngju2a.", true); } // [V7, A4_2]
1120test { try toUnicodeFail("\xe2\x9d\xa3\xe2\x80\x8d\xef\xbc\x8e\xe0\xa7\x8d\xf0\x91\xb0\xbd\xd8\x92\xea\xa4\xa9"); } // [C2, V6]1898test { try toUnicodeFail("\xe2\x9d\xa3\xe2\x80\x8d\xef\xbc\x8e\xe0\xa7\x8d\xf0\x91\xb0\xbd\xd8\x92\xea\xa4\xa9"); } // [C2, V6]
1899test { try toAsciiFail("\xe2\x9d\xa3\xe2\x80\x8d\xef\xbc\x8e\xe0\xa7\x8d\xf0\x91\xb0\xbd\xd8\x92\xea\xa4\xa9", false); } // [C2, V6]
1900test { try toAsciiFail("\xe2\x9d\xa3\xe2\x80\x8d\xef\xbc\x8e\xe0\xa7\x8d\xf0\x91\xb0\xbd\xd8\x92\xea\xa4\xa9", true); } // [V6]
1121test { try toUnicodeFail("\xe2\x9d\xa3\xe2\x80\x8d.\xe0\xa7\x8d\xf0\x91\xb0\xbd\xd8\x92\xea\xa4\xa9"); } // [C2, V6]1901test { try toUnicodeFail("\xe2\x9d\xa3\xe2\x80\x8d.\xe0\xa7\x8d\xf0\x91\xb0\xbd\xd8\x92\xea\xa4\xa9"); } // [C2, V6]
1902test { try toAsciiFail("\xe2\x9d\xa3\xe2\x80\x8d.\xe0\xa7\x8d\xf0\x91\xb0\xbd\xd8\x92\xea\xa4\xa9", false); } // [C2, V6]
1903test { try toAsciiFail("\xe2\x9d\xa3\xe2\x80\x8d.\xe0\xa7\x8d\xf0\x91\xb0\xbd\xd8\x92\xea\xa4\xa9", true); } // [V6]
1122test { try toUnicodeFail("xn--pei.xn--0fb32q3w7q2g4d"); } // [V6]1904test { try toUnicodeFail("xn--pei.xn--0fb32q3w7q2g4d"); } // [V6]
1905test { try toAsciiFail("xn--pei.xn--0fb32q3w7q2g4d", false); } // [V6]
1906test { try toAsciiFail("xn--pei.xn--0fb32q3w7q2g4d", true); } // [V6]
1123test { try toUnicodeFail("xn--1ugy10a.xn--0fb32q3w7q2g4d"); } // [C2, V6]1907test { try toUnicodeFail("xn--1ugy10a.xn--0fb32q3w7q2g4d"); } // [C2, V6]
1908test { try toAsciiFail("xn--1ugy10a.xn--0fb32q3w7q2g4d", false); } // [C2, V6]
1909test { try toAsciiFail("xn--1ugy10a.xn--0fb32q3w7q2g4d", true); } // [C2, V6]
1124test { try toUnicodeFail("\xe2\x89\xae\xf0\x90\xb3\xba\xf0\x90\xb9\x84.\xe2\x89\xaf\xf1\xaa\xae\xb8\xea\xa1\x85"); } // [B1, V7]1910test { try toUnicodeFail("\xe2\x89\xae\xf0\x90\xb3\xba\xf0\x90\xb9\x84.\xe2\x89\xaf\xf1\xaa\xae\xb8\xea\xa1\x85"); } // [B1, V7]
1911test { try toAsciiFail("\xe2\x89\xae\xf0\x90\xb3\xba\xf0\x90\xb9\x84.\xe2\x89\xaf\xf1\xaa\xae\xb8\xea\xa1\x85", false); } // [B1, V7]
1912test { try toAsciiFail("\xe2\x89\xae\xf0\x90\xb3\xba\xf0\x90\xb9\x84.\xe2\x89\xaf\xf1\xaa\xae\xb8\xea\xa1\x85", true); } // [B1, V7]
1125test { try toUnicodeFail("<\xcc\xb8\xf0\x90\xb3\xba\xf0\x90\xb9\x84.>\xcc\xb8\xf1\xaa\xae\xb8\xea\xa1\x85"); } // [B1, V7]1913test { try toUnicodeFail("<\xcc\xb8\xf0\x90\xb3\xba\xf0\x90\xb9\x84.>\xcc\xb8\xf1\xaa\xae\xb8\xea\xa1\x85"); } // [B1, V7]
1914test { try toAsciiFail("<\xcc\xb8\xf0\x90\xb3\xba\xf0\x90\xb9\x84.>\xcc\xb8\xf1\xaa\xae\xb8\xea\xa1\x85", false); } // [B1, V7]
1915test { try toAsciiFail("<\xcc\xb8\xf0\x90\xb3\xba\xf0\x90\xb9\x84.>\xcc\xb8\xf1\xaa\xae\xb8\xea\xa1\x85", true); } // [B1, V7]
1126test { try toUnicodeFail("xn--gdh7943gk2a.xn--hdh1383c5e36c"); } // [B1, V7]1916test { try toUnicodeFail("xn--gdh7943gk2a.xn--hdh1383c5e36c"); } // [B1, V7]
1917test { try toAsciiFail("xn--gdh7943gk2a.xn--hdh1383c5e36c", false); } // [B1, V7]
1918test { try toAsciiFail("xn--gdh7943gk2a.xn--hdh1383c5e36c", true); } // [B1, V7]
1127test { try toUnicodeFail("\xe0\xb3\x8c\xf0\x90\xa7\x85\xf0\x90\xb3\x8f\xf3\xa0\xb2\xba\xef\xbd\xa1\xe0\xb3\x8d\xe1\xa0\xa6"); } // [B1, V6, V7]1919test { try toUnicodeFail("\xe0\xb3\x8c\xf0\x90\xa7\x85\xf0\x90\xb3\x8f\xf3\xa0\xb2\xba\xef\xbd\xa1\xe0\xb3\x8d\xe1\xa0\xa6"); } // [B1, V6, V7]
1920test { try toAsciiFail("\xe0\xb3\x8c\xf0\x90\xa7\x85\xf0\x90\xb3\x8f\xf3\xa0\xb2\xba\xef\xbd\xa1\xe0\xb3\x8d\xe1\xa0\xa6", false); } // [B1, V6, V7]
1921test { try toAsciiFail("\xe0\xb3\x8c\xf0\x90\xa7\x85\xf0\x90\xb3\x8f\xf3\xa0\xb2\xba\xef\xbd\xa1\xe0\xb3\x8d\xe1\xa0\xa6", true); } // [B1, V6, V7]
1128test { try toUnicodeFail("\xe0\xb3\x8c\xf0\x90\xa7\x85\xf0\x90\xb3\x8f\xf3\xa0\xb2\xba\xe3\x80\x82\xe0\xb3\x8d\xe1\xa0\xa6"); } // [B1, V6, V7]1922test { try toUnicodeFail("\xe0\xb3\x8c\xf0\x90\xa7\x85\xf0\x90\xb3\x8f\xf3\xa0\xb2\xba\xe3\x80\x82\xe0\xb3\x8d\xe1\xa0\xa6"); } // [B1, V6, V7]
1923test { try toAsciiFail("\xe0\xb3\x8c\xf0\x90\xa7\x85\xf0\x90\xb3\x8f\xf3\xa0\xb2\xba\xe3\x80\x82\xe0\xb3\x8d\xe1\xa0\xa6", false); } // [B1, V6, V7]
1924test { try toAsciiFail("\xe0\xb3\x8c\xf0\x90\xa7\x85\xf0\x90\xb3\x8f\xf3\xa0\xb2\xba\xe3\x80\x82\xe0\xb3\x8d\xe1\xa0\xa6", true); } // [B1, V6, V7]
1129test { try toUnicodeFail("\xe0\xb3\x8c\xf0\x90\xa7\x85\xf0\x90\xb2\x8f\xf3\xa0\xb2\xba\xe3\x80\x82\xe0\xb3\x8d\xe1\xa0\xa6"); } // [B1, V6, V7]1925test { try toUnicodeFail("\xe0\xb3\x8c\xf0\x90\xa7\x85\xf0\x90\xb2\x8f\xf3\xa0\xb2\xba\xe3\x80\x82\xe0\xb3\x8d\xe1\xa0\xa6"); } // [B1, V6, V7]
1926test { try toAsciiFail("\xe0\xb3\x8c\xf0\x90\xa7\x85\xf0\x90\xb2\x8f\xf3\xa0\xb2\xba\xe3\x80\x82\xe0\xb3\x8d\xe1\xa0\xa6", false); } // [B1, V6, V7]
1927test { try toAsciiFail("\xe0\xb3\x8c\xf0\x90\xa7\x85\xf0\x90\xb2\x8f\xf3\xa0\xb2\xba\xe3\x80\x82\xe0\xb3\x8d\xe1\xa0\xa6", true); } // [B1, V6, V7]
1130test { try toUnicodeFail("xn--7tc6360ky5bn2732c.xn--8tc429c"); } // [B1, V6, V7]1928test { try toUnicodeFail("xn--7tc6360ky5bn2732c.xn--8tc429c"); } // [B1, V6, V7]
1929test { try toAsciiFail("xn--7tc6360ky5bn2732c.xn--8tc429c", false); } // [B1, V6, V7]
1930test { try toAsciiFail("xn--7tc6360ky5bn2732c.xn--8tc429c", true); } // [B1, V6, V7]
1131test { try toUnicodeFail("\xe0\xb3\x8c\xf0\x90\xa7\x85\xf0\x90\xb2\x8f\xf3\xa0\xb2\xba\xef\xbd\xa1\xe0\xb3\x8d\xe1\xa0\xa6"); } // [B1, V6, V7]1931test { try toUnicodeFail("\xe0\xb3\x8c\xf0\x90\xa7\x85\xf0\x90\xb2\x8f\xf3\xa0\xb2\xba\xef\xbd\xa1\xe0\xb3\x8d\xe1\xa0\xa6"); } // [B1, V6, V7]
1932test { try toAsciiFail("\xe0\xb3\x8c\xf0\x90\xa7\x85\xf0\x90\xb2\x8f\xf3\xa0\xb2\xba\xef\xbd\xa1\xe0\xb3\x8d\xe1\xa0\xa6", false); } // [B1, V6, V7]
1933test { try toAsciiFail("\xe0\xb3\x8c\xf0\x90\xa7\x85\xf0\x90\xb2\x8f\xf3\xa0\xb2\xba\xef\xbd\xa1\xe0\xb3\x8d\xe1\xa0\xa6", true); } // [B1, V6, V7]
1132test { try toUnicodeFail("\xcd\x89\xe3\x80\x82\xf0\xa7\xa1\xab"); } // [V6]1934test { try toUnicodeFail("\xcd\x89\xe3\x80\x82\xf0\xa7\xa1\xab"); } // [V6]
1935test { try toAsciiFail("\xcd\x89\xe3\x80\x82\xf0\xa7\xa1\xab", false); } // [V6]
1936test { try toAsciiFail("\xcd\x89\xe3\x80\x82\xf0\xa7\xa1\xab", true); } // [V6]
1133test { try toUnicodeFail("xn--nua.xn--bc6k"); } // [V6]1937test { try toUnicodeFail("xn--nua.xn--bc6k"); } // [V6]
1938test { try toAsciiFail("xn--nua.xn--bc6k", false); } // [V6]
1939test { try toAsciiFail("xn--nua.xn--bc6k", true); } // [V6]
1134test { try toUnicodeFail("\xf0\x91\xb0\xbf\xf3\xa0\x85\xa6\xef\xbc\x8e\xe1\x85\xa0"); } // [V6]1940test { try toUnicodeFail("\xf0\x91\xb0\xbf\xf3\xa0\x85\xa6\xef\xbc\x8e\xe1\x85\xa0"); } // [V6]
1941test { try toAsciiFail("\xf0\x91\xb0\xbf\xf3\xa0\x85\xa6\xef\xbc\x8e\xe1\x85\xa0", false); } // [V6, A4_2]
1942test { try toAsciiFail("\xf0\x91\xb0\xbf\xf3\xa0\x85\xa6\xef\xbc\x8e\xe1\x85\xa0", true); } // [V6, A4_2]
1135test { try toUnicodeFail("\xf0\x91\xb0\xbf\xf3\xa0\x85\xa6.\xe1\x85\xa0"); } // [V6]1943test { try toUnicodeFail("\xf0\x91\xb0\xbf\xf3\xa0\x85\xa6.\xe1\x85\xa0"); } // [V6]
1944test { try toAsciiFail("\xf0\x91\xb0\xbf\xf3\xa0\x85\xa6.\xe1\x85\xa0", false); } // [V6, A4_2]
1945test { try toAsciiFail("\xf0\x91\xb0\xbf\xf3\xa0\x85\xa6.\xe1\x85\xa0", true); } // [V6, A4_2]
1136test { try toUnicodeFail("xn--ok3d."); } // [V6]1946test { try toUnicodeFail("xn--ok3d."); } // [V6]
1947test { try toAsciiFail("xn--ok3d.", false); } // [V6, A4_2]
1948test { try toAsciiFail("xn--ok3d.", true); } // [V6, A4_2]
1137test { try toUnicodeFail("xn--ok3d.xn--psd"); } // [V6, V7]1949test { try toUnicodeFail("xn--ok3d.xn--psd"); } // [V6, V7]
1950test { try toAsciiFail("xn--ok3d.xn--psd", false); } // [V6, V7]
1951test { try toAsciiFail("xn--ok3d.xn--psd", true); } // [V6, V7]
1138test { try toUnicodeFail("-\xf0\x9e\xa4\x86\xe2\x80\x8d\xe3\x80\x82\xf3\xb8\xbc\x84\xf0\x9e\xb3\x92"); } // [B1, B5, B6, C2, V3, V7]1952test { try toUnicodeFail("-\xf0\x9e\xa4\x86\xe2\x80\x8d\xe3\x80\x82\xf3\xb8\xbc\x84\xf0\x9e\xb3\x92"); } // [B1, B5, B6, C2, V3, V7]
1953test { try toAsciiFail("-\xf0\x9e\xa4\x86\xe2\x80\x8d\xe3\x80\x82\xf3\xb8\xbc\x84\xf0\x9e\xb3\x92", false); } // [B1, B5, B6, C2, V3, V7]
1954test { try toAsciiFail("-\xf0\x9e\xa4\x86\xe2\x80\x8d\xe3\x80\x82\xf3\xb8\xbc\x84\xf0\x9e\xb3\x92", true); } // [B1, B5, B6, V3, V7]
1139test { try toUnicodeFail("-\xf0\x9e\xa4\xa8\xe2\x80\x8d\xe3\x80\x82\xf3\xb8\xbc\x84\xf0\x9e\xb3\x92"); } // [B1, B5, B6, C2, V3, V7]1955test { try toUnicodeFail("-\xf0\x9e\xa4\xa8\xe2\x80\x8d\xe3\x80\x82\xf3\xb8\xbc\x84\xf0\x9e\xb3\x92"); } // [B1, B5, B6, C2, V3, V7]
1956test { try toAsciiFail("-\xf0\x9e\xa4\xa8\xe2\x80\x8d\xe3\x80\x82\xf3\xb8\xbc\x84\xf0\x9e\xb3\x92", false); } // [B1, B5, B6, C2, V3, V7]
1957test { try toAsciiFail("-\xf0\x9e\xa4\xa8\xe2\x80\x8d\xe3\x80\x82\xf3\xb8\xbc\x84\xf0\x9e\xb3\x92", true); } // [B1, B5, B6, V3, V7]
1140test { try toUnicodeFail("xn----ni8r.xn--846h96596c"); } // [B1, B5, B6, V3, V7]1958test { try toUnicodeFail("xn----ni8r.xn--846h96596c"); } // [B1, B5, B6, V3, V7]
1959test { try toAsciiFail("xn----ni8r.xn--846h96596c", false); } // [B1, B5, B6, V3, V7]
1960test { try toAsciiFail("xn----ni8r.xn--846h96596c", true); } // [B1, B5, B6, V3, V7]
1141test { try toUnicodeFail("xn----ugnx367r.xn--846h96596c"); } // [B1, B5, B6, C2, V3, V7]1961test { try toUnicodeFail("xn----ugnx367r.xn--846h96596c"); } // [B1, B5, B6, C2, V3, V7]
1962test { try toAsciiFail("xn----ugnx367r.xn--846h96596c", false); } // [B1, B5, B6, C2, V3, V7]
1963test { try toAsciiFail("xn----ugnx367r.xn--846h96596c", true); } // [B1, B5, B6, C2, V3, V7]
1142test { try toUnicodeFail("\xea\xa1\x8f\xf3\xa0\x87\xb6\xe2\x89\xaf\xf0\xb3\xbe\xbd\xe3\x80\x82\xe1\xb7\xbd\xe2\xbe\x87\xe6\xbb\xb8\xf0\x90\xb9\xb0"); } // [B1, V6, V7]1964test { try toUnicodeFail("\xea\xa1\x8f\xf3\xa0\x87\xb6\xe2\x89\xaf\xf0\xb3\xbe\xbd\xe3\x80\x82\xe1\xb7\xbd\xe2\xbe\x87\xe6\xbb\xb8\xf0\x90\xb9\xb0"); } // [B1, V6, V7]
1965test { try toAsciiFail("\xea\xa1\x8f\xf3\xa0\x87\xb6\xe2\x89\xaf\xf0\xb3\xbe\xbd\xe3\x80\x82\xe1\xb7\xbd\xe2\xbe\x87\xe6\xbb\xb8\xf0\x90\xb9\xb0", false); } // [B1, V6, V7]
1966test { try toAsciiFail("\xea\xa1\x8f\xf3\xa0\x87\xb6\xe2\x89\xaf\xf0\xb3\xbe\xbd\xe3\x80\x82\xe1\xb7\xbd\xe2\xbe\x87\xe6\xbb\xb8\xf0\x90\xb9\xb0", true); } // [B1, V6, V7]
1143test { try toUnicodeFail("\xea\xa1\x8f\xf3\xa0\x87\xb6>\xcc\xb8\xf0\xb3\xbe\xbd\xe3\x80\x82\xe1\xb7\xbd\xe2\xbe\x87\xe6\xbb\xb8\xf0\x90\xb9\xb0"); } // [B1, V6, V7]1967test { try toUnicodeFail("\xea\xa1\x8f\xf3\xa0\x87\xb6>\xcc\xb8\xf0\xb3\xbe\xbd\xe3\x80\x82\xe1\xb7\xbd\xe2\xbe\x87\xe6\xbb\xb8\xf0\x90\xb9\xb0"); } // [B1, V6, V7]
1968test { try toAsciiFail("\xea\xa1\x8f\xf3\xa0\x87\xb6>\xcc\xb8\xf0\xb3\xbe\xbd\xe3\x80\x82\xe1\xb7\xbd\xe2\xbe\x87\xe6\xbb\xb8\xf0\x90\xb9\xb0", false); } // [B1, V6, V7]
1969test { try toAsciiFail("\xea\xa1\x8f\xf3\xa0\x87\xb6>\xcc\xb8\xf0\xb3\xbe\xbd\xe3\x80\x82\xe1\xb7\xbd\xe2\xbe\x87\xe6\xbb\xb8\xf0\x90\xb9\xb0", true); } // [B1, V6, V7]
1144test { try toUnicodeFail("\xea\xa1\x8f\xf3\xa0\x87\xb6\xe2\x89\xaf\xf0\xb3\xbe\xbd\xe3\x80\x82\xe1\xb7\xbd\xe8\x88\x9b\xe6\xbb\xb8\xf0\x90\xb9\xb0"); } // [B1, V6, V7]1970test { try toUnicodeFail("\xea\xa1\x8f\xf3\xa0\x87\xb6\xe2\x89\xaf\xf0\xb3\xbe\xbd\xe3\x80\x82\xe1\xb7\xbd\xe8\x88\x9b\xe6\xbb\xb8\xf0\x90\xb9\xb0"); } // [B1, V6, V7]
1971test { try toAsciiFail("\xea\xa1\x8f\xf3\xa0\x87\xb6\xe2\x89\xaf\xf0\xb3\xbe\xbd\xe3\x80\x82\xe1\xb7\xbd\xe8\x88\x9b\xe6\xbb\xb8\xf0\x90\xb9\xb0", false); } // [B1, V6, V7]
1972test { try toAsciiFail("\xea\xa1\x8f\xf3\xa0\x87\xb6\xe2\x89\xaf\xf0\xb3\xbe\xbd\xe3\x80\x82\xe1\xb7\xbd\xe8\x88\x9b\xe6\xbb\xb8\xf0\x90\xb9\xb0", true); } // [B1, V6, V7]
1145test { try toUnicodeFail("\xea\xa1\x8f\xf3\xa0\x87\xb6>\xcc\xb8\xf0\xb3\xbe\xbd\xe3\x80\x82\xe1\xb7\xbd\xe8\x88\x9b\xe6\xbb\xb8\xf0\x90\xb9\xb0"); } // [B1, V6, V7]1973test { try toUnicodeFail("\xea\xa1\x8f\xf3\xa0\x87\xb6>\xcc\xb8\xf0\xb3\xbe\xbd\xe3\x80\x82\xe1\xb7\xbd\xe8\x88\x9b\xe6\xbb\xb8\xf0\x90\xb9\xb0"); } // [B1, V6, V7]
1974test { try toAsciiFail("\xea\xa1\x8f\xf3\xa0\x87\xb6>\xcc\xb8\xf0\xb3\xbe\xbd\xe3\x80\x82\xe1\xb7\xbd\xe8\x88\x9b\xe6\xbb\xb8\xf0\x90\xb9\xb0", false); } // [B1, V6, V7]
1975test { try toAsciiFail("\xea\xa1\x8f\xf3\xa0\x87\xb6>\xcc\xb8\xf0\xb3\xbe\xbd\xe3\x80\x82\xe1\xb7\xbd\xe8\x88\x9b\xe6\xbb\xb8\xf0\x90\xb9\xb0", true); } // [B1, V6, V7]
1146test { try toUnicodeFail("xn--hdh7483cu6twwki8e.xn--yfg0765a58l0n6k"); } // [B1, V6, V7]1976test { try toUnicodeFail("xn--hdh7483cu6twwki8e.xn--yfg0765a58l0n6k"); } // [B1, V6, V7]
1977test { try toAsciiFail("xn--hdh7483cu6twwki8e.xn--yfg0765a58l0n6k", false); } // [B1, V6, V7]
1978test { try toAsciiFail("xn--hdh7483cu6twwki8e.xn--yfg0765a58l0n6k", true); } // [B1, V6, V7]
1147test { try toUnicodeFail("\xe8\x94\x8f\xef\xbd\xa1\xf0\x91\xb0\xba"); } // [V6]1979test { try toUnicodeFail("\xe8\x94\x8f\xef\xbd\xa1\xf0\x91\xb0\xba"); } // [V6]
1980test { try toAsciiFail("\xe8\x94\x8f\xef\xbd\xa1\xf0\x91\xb0\xba", false); } // [V6]
1981test { try toAsciiFail("\xe8\x94\x8f\xef\xbd\xa1\xf0\x91\xb0\xba", true); } // [V6]
1148test { try toUnicodeFail("\xe8\x94\x8f\xe3\x80\x82\xf0\x91\xb0\xba"); } // [V6]1982test { try toUnicodeFail("\xe8\x94\x8f\xe3\x80\x82\xf0\x91\xb0\xba"); } // [V6]
1983test { try toAsciiFail("\xe8\x94\x8f\xe3\x80\x82\xf0\x91\xb0\xba", false); } // [V6]
1984test { try toAsciiFail("\xe8\x94\x8f\xe3\x80\x82\xf0\x91\xb0\xba", true); } // [V6]
1149test { try toUnicodeFail("xn--uy1a.xn--jk3d"); } // [V6]1985test { try toUnicodeFail("xn--uy1a.xn--jk3d"); } // [V6]
1986test { try toAsciiFail("xn--uy1a.xn--jk3d", false); } // [V6]
1987test { try toAsciiFail("xn--uy1a.xn--jk3d", true); } // [V6]
1150test { try toUnicodeFail("\xf0\x9d\x9f\xbf\xf0\x90\xae\x8b\xe3\x80\x82\xf3\xa0\x84\x8a"); } // [B1]1988test { try toUnicodeFail("\xf0\x9d\x9f\xbf\xf0\x90\xae\x8b\xe3\x80\x82\xf3\xa0\x84\x8a"); } // [B1]
1989test { try toAsciiFail("\xf0\x9d\x9f\xbf\xf0\x90\xae\x8b\xe3\x80\x82\xf3\xa0\x84\x8a", false); } // [B1, A4_2]
1990test { try toAsciiFail("\xf0\x9d\x9f\xbf\xf0\x90\xae\x8b\xe3\x80\x82\xf3\xa0\x84\x8a", true); } // [B1, A4_2]
1151test { try toUnicodeFail("9\xf0\x90\xae\x8b\xe3\x80\x82\xf3\xa0\x84\x8a"); } // [B1]1991test { try toUnicodeFail("9\xf0\x90\xae\x8b\xe3\x80\x82\xf3\xa0\x84\x8a"); } // [B1]
1992test { try toAsciiFail("9\xf0\x90\xae\x8b\xe3\x80\x82\xf3\xa0\x84\x8a", false); } // [B1, A4_2]
1993test { try toAsciiFail("9\xf0\x90\xae\x8b\xe3\x80\x82\xf3\xa0\x84\x8a", true); } // [B1, A4_2]
1152test { try toUnicodeFail("xn--9-rv5i."); } // [B1]1994test { try toUnicodeFail("xn--9-rv5i."); } // [B1]
1995test { try toAsciiFail("xn--9-rv5i.", false); } // [B1, A4_2]
1996test { try toAsciiFail("xn--9-rv5i.", true); } // [B1, A4_2]
1153test { try toUnicodeFail("\xf3\x9f\x87\x87-\xe4\x9f\x96F\xe3\x80\x82\xdf\x8b\xe2\x92\x88\xd9\xa2"); } // [B4, V7]1997test { try toUnicodeFail("\xf3\x9f\x87\x87-\xe4\x9f\x96F\xe3\x80\x82\xdf\x8b\xe2\x92\x88\xd9\xa2"); } // [B4, V7]
1998test { try toAsciiFail("\xf3\x9f\x87\x87-\xe4\x9f\x96F\xe3\x80\x82\xdf\x8b\xe2\x92\x88\xd9\xa2", false); } // [B4, V7]
1999test { try toAsciiFail("\xf3\x9f\x87\x87-\xe4\x9f\x96F\xe3\x80\x82\xdf\x8b\xe2\x92\x88\xd9\xa2", true); } // [B4, V7]
1154test { try toUnicodeFail("\xf3\x9f\x87\x87-\xe4\x9f\x96F\xe3\x80\x82\xdf\x8b1.\xd9\xa2"); } // [B1, V7]2000test { try toUnicodeFail("\xf3\x9f\x87\x87-\xe4\x9f\x96F\xe3\x80\x82\xdf\x8b1.\xd9\xa2"); } // [B1, V7]
2001test { try toAsciiFail("\xf3\x9f\x87\x87-\xe4\x9f\x96F\xe3\x80\x82\xdf\x8b1.\xd9\xa2", false); } // [B1, V7]
2002test { try toAsciiFail("\xf3\x9f\x87\x87-\xe4\x9f\x96F\xe3\x80\x82\xdf\x8b1.\xd9\xa2", true); } // [B1, V7]
1155test { try toUnicodeFail("\xf3\x9f\x87\x87-\xe4\x9f\x96f\xe3\x80\x82\xdf\x8b1.\xd9\xa2"); } // [B1, V7]2003test { try toUnicodeFail("\xf3\x9f\x87\x87-\xe4\x9f\x96f\xe3\x80\x82\xdf\x8b1.\xd9\xa2"); } // [B1, V7]
2004test { try toAsciiFail("\xf3\x9f\x87\x87-\xe4\x9f\x96f\xe3\x80\x82\xdf\x8b1.\xd9\xa2", false); } // [B1, V7]
2005test { try toAsciiFail("\xf3\x9f\x87\x87-\xe4\x9f\x96f\xe3\x80\x82\xdf\x8b1.\xd9\xa2", true); } // [B1, V7]
1156test { try toUnicodeFail("xn---f-mz8b08788k.xn--1-ybd.xn--bib"); } // [B1, V7]2006test { try toUnicodeFail("xn---f-mz8b08788k.xn--1-ybd.xn--bib"); } // [B1, V7]
2007test { try toAsciiFail("xn---f-mz8b08788k.xn--1-ybd.xn--bib", false); } // [B1, V7]
2008test { try toAsciiFail("xn---f-mz8b08788k.xn--1-ybd.xn--bib", true); } // [B1, V7]
1157test { try toUnicodeFail("\xf3\x9f\x87\x87-\xe4\x9f\x96f\xe3\x80\x82\xdf\x8b\xe2\x92\x88\xd9\xa2"); } // [B4, V7]2009test { try toUnicodeFail("\xf3\x9f\x87\x87-\xe4\x9f\x96f\xe3\x80\x82\xdf\x8b\xe2\x92\x88\xd9\xa2"); } // [B4, V7]
2010test { try toAsciiFail("\xf3\x9f\x87\x87-\xe4\x9f\x96f\xe3\x80\x82\xdf\x8b\xe2\x92\x88\xd9\xa2", false); } // [B4, V7]
2011test { try toAsciiFail("\xf3\x9f\x87\x87-\xe4\x9f\x96f\xe3\x80\x82\xdf\x8b\xe2\x92\x88\xd9\xa2", true); } // [B4, V7]
1158test { try toUnicodeFail("xn---f-mz8b08788k.xn--bib53ev44d"); } // [B4, V7]2012test { try toUnicodeFail("xn---f-mz8b08788k.xn--bib53ev44d"); } // [B4, V7]
2013test { try toAsciiFail("xn---f-mz8b08788k.xn--bib53ev44d", false); } // [B4, V7]
2014test { try toAsciiFail("xn---f-mz8b08788k.xn--bib53ev44d", true); } // [B4, V7]
1159test { try toUnicodeFail("\xe2\x80\x8c\xef\xbd\xa1\xf0\x90\xb9\xba"); } // [B1, C1]2015test { try toUnicodeFail("\xe2\x80\x8c\xef\xbd\xa1\xf0\x90\xb9\xba"); } // [B1, C1]
2016test { try toAsciiFail("\xe2\x80\x8c\xef\xbd\xa1\xf0\x90\xb9\xba", false); } // [B1, C1]
2017test { try toAsciiFail("\xe2\x80\x8c\xef\xbd\xa1\xf0\x90\xb9\xba", true); } // [B1, A4_2]
1160test { try toUnicodeFail("\xe2\x80\x8c\xe3\x80\x82\xf0\x90\xb9\xba"); } // [B1, C1]2018test { try toUnicodeFail("\xe2\x80\x8c\xe3\x80\x82\xf0\x90\xb9\xba"); } // [B1, C1]
2019test { try toAsciiFail("\xe2\x80\x8c\xe3\x80\x82\xf0\x90\xb9\xba", false); } // [B1, C1]
2020test { try toAsciiFail("\xe2\x80\x8c\xe3\x80\x82\xf0\x90\xb9\xba", true); } // [B1, A4_2]
1161test { try toUnicodeFail(".xn--yo0d"); } // [B1, X4_2]2021test { try toUnicodeFail(".xn--yo0d"); } // [B1, X4_2]
2022test { try toAsciiFail(".xn--yo0d", false); } // [B1, A4_2]
2023test { try toAsciiFail(".xn--yo0d", true); } // [B1, A4_2]
1162test { try toUnicodeFail("xn--0ug.xn--yo0d"); } // [B1, C1]2024test { try toUnicodeFail("xn--0ug.xn--yo0d"); } // [B1, C1]
2025test { try toAsciiFail("xn--0ug.xn--yo0d", false); } // [B1, C1]
2026test { try toAsciiFail("xn--0ug.xn--yo0d", true); } // [B1, C1]
1163test { try toUnicodeFail("\xf0\x90\xa1\x86.\xe2\x89\xaf\xe2\x80\x8c-\xf0\x9e\xa5\x80"); } // [B1, C1]2027test { try toUnicodeFail("\xf0\x90\xa1\x86.\xe2\x89\xaf\xe2\x80\x8c-\xf0\x9e\xa5\x80"); } // [B1, C1]
2028test { try toAsciiFail("\xf0\x90\xa1\x86.\xe2\x89\xaf\xe2\x80\x8c-\xf0\x9e\xa5\x80", false); } // [B1, C1]
2029test { try toAsciiFail("\xf0\x90\xa1\x86.\xe2\x89\xaf\xe2\x80\x8c-\xf0\x9e\xa5\x80", true); } // [B1]
1164test { try toUnicodeFail("\xf0\x90\xa1\x86.>\xcc\xb8\xe2\x80\x8c-\xf0\x9e\xa5\x80"); } // [B1, C1]2030test { try toUnicodeFail("\xf0\x90\xa1\x86.>\xcc\xb8\xe2\x80\x8c-\xf0\x9e\xa5\x80"); } // [B1, C1]
2031test { try toAsciiFail("\xf0\x90\xa1\x86.>\xcc\xb8\xe2\x80\x8c-\xf0\x9e\xa5\x80", false); } // [B1, C1]
2032test { try toAsciiFail("\xf0\x90\xa1\x86.>\xcc\xb8\xe2\x80\x8c-\xf0\x9e\xa5\x80", true); } // [B1]
1165test { try toUnicodeFail("\xf0\x90\xa1\x86.>\xcc\xb8\xe2\x80\x8c-\xf0\x9e\xa4\x9e"); } // [B1, C1]2033test { try toUnicodeFail("\xf0\x90\xa1\x86.>\xcc\xb8\xe2\x80\x8c-\xf0\x9e\xa4\x9e"); } // [B1, C1]
2034test { try toAsciiFail("\xf0\x90\xa1\x86.>\xcc\xb8\xe2\x80\x8c-\xf0\x9e\xa4\x9e", false); } // [B1, C1]
2035test { try toAsciiFail("\xf0\x90\xa1\x86.>\xcc\xb8\xe2\x80\x8c-\xf0\x9e\xa4\x9e", true); } // [B1]
1166test { try toUnicodeFail("\xf0\x90\xa1\x86.\xe2\x89\xaf\xe2\x80\x8c-\xf0\x9e\xa4\x9e"); } // [B1, C1]2036test { try toUnicodeFail("\xf0\x90\xa1\x86.\xe2\x89\xaf\xe2\x80\x8c-\xf0\x9e\xa4\x9e"); } // [B1, C1]
2037test { try toAsciiFail("\xf0\x90\xa1\x86.\xe2\x89\xaf\xe2\x80\x8c-\xf0\x9e\xa4\x9e", false); } // [B1, C1]
2038test { try toAsciiFail("\xf0\x90\xa1\x86.\xe2\x89\xaf\xe2\x80\x8c-\xf0\x9e\xa4\x9e", true); } // [B1]
1167test { try toUnicodeFail("xn--le9c.xn----ogo9956r"); } // [B1]2039test { try toUnicodeFail("xn--le9c.xn----ogo9956r"); } // [B1]
2040test { try toAsciiFail("xn--le9c.xn----ogo9956r", false); } // [B1]
2041test { try toAsciiFail("xn--le9c.xn----ogo9956r", true); } // [B1]
1168test { try toUnicodeFail("xn--le9c.xn----rgn40iy359e"); } // [B1, C1]2042test { try toUnicodeFail("xn--le9c.xn----rgn40iy359e"); } // [B1, C1]
2043test { try toAsciiFail("xn--le9c.xn----rgn40iy359e", false); } // [B1, C1]
2044test { try toAsciiFail("xn--le9c.xn----rgn40iy359e", true); } // [B1, C1]
1169test { try toUnicodeFail("\xf3\xa0\x81\x80-\xe3\x80\x82\xe2\x89\xa0\xef\xb3\x97"); } // [B1, V3, V7]2045test { try toUnicodeFail("\xf3\xa0\x81\x80-\xe3\x80\x82\xe2\x89\xa0\xef\xb3\x97"); } // [B1, V3, V7]
2046test { try toAsciiFail("\xf3\xa0\x81\x80-\xe3\x80\x82\xe2\x89\xa0\xef\xb3\x97", false); } // [B1, V3, V7]
2047test { try toAsciiFail("\xf3\xa0\x81\x80-\xe3\x80\x82\xe2\x89\xa0\xef\xb3\x97", true); } // [B1, V3, V7]
1170test { try toUnicodeFail("\xf3\xa0\x81\x80-\xe3\x80\x82=\xcc\xb8\xef\xb3\x97"); } // [B1, V3, V7]2048test { try toUnicodeFail("\xf3\xa0\x81\x80-\xe3\x80\x82=\xcc\xb8\xef\xb3\x97"); } // [B1, V3, V7]
2049test { try toAsciiFail("\xf3\xa0\x81\x80-\xe3\x80\x82=\xcc\xb8\xef\xb3\x97", false); } // [B1, V3, V7]
2050test { try toAsciiFail("\xf3\xa0\x81\x80-\xe3\x80\x82=\xcc\xb8\xef\xb3\x97", true); } // [B1, V3, V7]
1171test { try toUnicodeFail("\xf3\xa0\x81\x80-\xe3\x80\x82\xe2\x89\xa0\xd9\x87\xd8\xac"); } // [B1, V3, V7]2051test { try toUnicodeFail("\xf3\xa0\x81\x80-\xe3\x80\x82\xe2\x89\xa0\xd9\x87\xd8\xac"); } // [B1, V3, V7]
2052test { try toAsciiFail("\xf3\xa0\x81\x80-\xe3\x80\x82\xe2\x89\xa0\xd9\x87\xd8\xac", false); } // [B1, V3, V7]
2053test { try toAsciiFail("\xf3\xa0\x81\x80-\xe3\x80\x82\xe2\x89\xa0\xd9\x87\xd8\xac", true); } // [B1, V3, V7]
1172test { try toUnicodeFail("\xf3\xa0\x81\x80-\xe3\x80\x82=\xcc\xb8\xd9\x87\xd8\xac"); } // [B1, V3, V7]2054test { try toUnicodeFail("\xf3\xa0\x81\x80-\xe3\x80\x82=\xcc\xb8\xd9\x87\xd8\xac"); } // [B1, V3, V7]
2055test { try toAsciiFail("\xf3\xa0\x81\x80-\xe3\x80\x82=\xcc\xb8\xd9\x87\xd8\xac", false); } // [B1, V3, V7]
2056test { try toAsciiFail("\xf3\xa0\x81\x80-\xe3\x80\x82=\xcc\xb8\xd9\x87\xd8\xac", true); } // [B1, V3, V7]
1173test { try toUnicodeFail("xn----f411m.xn--rgb7c611j"); } // [B1, V3, V7]2057test { try toUnicodeFail("xn----f411m.xn--rgb7c611j"); } // [B1, V3, V7]
2058test { try toAsciiFail("xn----f411m.xn--rgb7c611j", false); } // [B1, V3, V7]
2059test { try toAsciiFail("xn----f411m.xn--rgb7c611j", true); } // [B1, V3, V7]
1174test { try toUnicodeFail("\xf1\xbb\xac\xb9\xf0\x91\x88\xb5\xe3\x80\x82\xe2\x80\x8d\xf0\x9e\xa8\xb6"); } // [B1, C2, V7]2060test { try toUnicodeFail("\xf1\xbb\xac\xb9\xf0\x91\x88\xb5\xe3\x80\x82\xe2\x80\x8d\xf0\x9e\xa8\xb6"); } // [B1, C2, V7]
2061test { try toAsciiFail("\xf1\xbb\xac\xb9\xf0\x91\x88\xb5\xe3\x80\x82\xe2\x80\x8d\xf0\x9e\xa8\xb6", false); } // [B1, C2, V7]
2062test { try toAsciiFail("\xf1\xbb\xac\xb9\xf0\x91\x88\xb5\xe3\x80\x82\xe2\x80\x8d\xf0\x9e\xa8\xb6", true); } // [V7]
1175test { try toUnicodeFail("xn--8g1d12120a.xn--5l6h"); } // [V7]2063test { try toUnicodeFail("xn--8g1d12120a.xn--5l6h"); } // [V7]
2064test { try toAsciiFail("xn--8g1d12120a.xn--5l6h", false); } // [V7]
2065test { try toAsciiFail("xn--8g1d12120a.xn--5l6h", true); } // [V7]
1176test { try toUnicodeFail("xn--8g1d12120a.xn--1ug6651p"); } // [B1, C2, V7]2066test { try toUnicodeFail("xn--8g1d12120a.xn--1ug6651p"); } // [B1, C2, V7]
2067test { try toAsciiFail("xn--8g1d12120a.xn--1ug6651p", false); } // [B1, C2, V7]
2068test { try toAsciiFail("xn--8g1d12120a.xn--1ug6651p", true); } // [B1, C2, V7]
1177test { try toUnicodeFail("\xf0\x91\x8b\xa7\xea\xa7\x802\xef\xbd\xa1\xe3\xa7\x89\xf2\x92\x96\x84"); } // [V6, V7]2069test { try toUnicodeFail("\xf0\x91\x8b\xa7\xea\xa7\x802\xef\xbd\xa1\xe3\xa7\x89\xf2\x92\x96\x84"); } // [V6, V7]
2070test { try toAsciiFail("\xf0\x91\x8b\xa7\xea\xa7\x802\xef\xbd\xa1\xe3\xa7\x89\xf2\x92\x96\x84", false); } // [V6, V7]
2071test { try toAsciiFail("\xf0\x91\x8b\xa7\xea\xa7\x802\xef\xbd\xa1\xe3\xa7\x89\xf2\x92\x96\x84", true); } // [V6, V7]
1178test { try toUnicodeFail("\xf0\x91\x8b\xa7\xea\xa7\x802\xe3\x80\x82\xe3\xa7\x89\xf2\x92\x96\x84"); } // [V6, V7]2072test { try toUnicodeFail("\xf0\x91\x8b\xa7\xea\xa7\x802\xe3\x80\x82\xe3\xa7\x89\xf2\x92\x96\x84"); } // [V6, V7]
2073test { try toAsciiFail("\xf0\x91\x8b\xa7\xea\xa7\x802\xe3\x80\x82\xe3\xa7\x89\xf2\x92\x96\x84", false); } // [V6, V7]
2074test { try toAsciiFail("\xf0\x91\x8b\xa7\xea\xa7\x802\xe3\x80\x82\xe3\xa7\x89\xf2\x92\x96\x84", true); } // [V6, V7]
1179test { try toUnicodeFail("xn--2-5z4eu89y.xn--97l02706d"); } // [V6, V7]2075test { try toUnicodeFail("xn--2-5z4eu89y.xn--97l02706d"); } // [V6, V7]
2076test { try toAsciiFail("xn--2-5z4eu89y.xn--97l02706d", false); } // [V6, V7]
2077test { try toAsciiFail("xn--2-5z4eu89y.xn--97l02706d", true); } // [V6, V7]
1180test { try toUnicodeFail("\xe2\x80\x8c\xf0\xbd\xac\x84\xf0\x90\xb9\xb4\xf0\x9e\xa9\xa5\xe3\x80\x82\xe2\x89\xaf6"); } // [B1, C1, V7]2078test { try toUnicodeFail("\xe2\x80\x8c\xf0\xbd\xac\x84\xf0\x90\xb9\xb4\xf0\x9e\xa9\xa5\xe3\x80\x82\xe2\x89\xaf6"); } // [B1, C1, V7]
2079test { try toAsciiFail("\xe2\x80\x8c\xf0\xbd\xac\x84\xf0\x90\xb9\xb4\xf0\x9e\xa9\xa5\xe3\x80\x82\xe2\x89\xaf6", false); } // [B1, C1, V7]
2080test { try toAsciiFail("\xe2\x80\x8c\xf0\xbd\xac\x84\xf0\x90\xb9\xb4\xf0\x9e\xa9\xa5\xe3\x80\x82\xe2\x89\xaf6", true); } // [B1, B5, B6, V7]
1181test { try toUnicodeFail("\xe2\x80\x8c\xf0\xbd\xac\x84\xf0\x90\xb9\xb4\xf0\x9e\xa9\xa5\xe3\x80\x82>\xcc\xb86"); } // [B1, C1, V7]2081test { try toUnicodeFail("\xe2\x80\x8c\xf0\xbd\xac\x84\xf0\x90\xb9\xb4\xf0\x9e\xa9\xa5\xe3\x80\x82>\xcc\xb86"); } // [B1, C1, V7]
2082test { try toAsciiFail("\xe2\x80\x8c\xf0\xbd\xac\x84\xf0\x90\xb9\xb4\xf0\x9e\xa9\xa5\xe3\x80\x82>\xcc\xb86", false); } // [B1, C1, V7]
2083test { try toAsciiFail("\xe2\x80\x8c\xf0\xbd\xac\x84\xf0\x90\xb9\xb4\xf0\x9e\xa9\xa5\xe3\x80\x82>\xcc\xb86", true); } // [B1, B5, B6, V7]
1182test { try toUnicodeFail("xn--so0du768aim9m.xn--6-ogo"); } // [B1, B5, B6, V7]2084test { try toUnicodeFail("xn--so0du768aim9m.xn--6-ogo"); } // [B1, B5, B6, V7]
2085test { try toAsciiFail("xn--so0du768aim9m.xn--6-ogo", false); } // [B1, B5, B6, V7]
2086test { try toAsciiFail("xn--so0du768aim9m.xn--6-ogo", true); } // [B1, B5, B6, V7]
1183test { try toUnicodeFail("xn--0ug7105gf5wfxepq.xn--6-ogo"); } // [B1, C1, V7]2087test { try toUnicodeFail("xn--0ug7105gf5wfxepq.xn--6-ogo"); } // [B1, C1, V7]
2088test { try toAsciiFail("xn--0ug7105gf5wfxepq.xn--6-ogo", false); } // [B1, C1, V7]
2089test { try toAsciiFail("xn--0ug7105gf5wfxepq.xn--6-ogo", true); } // [B1, C1, V7]
1184test { try toUnicodeFail("\xf0\x91\x81\xbf\xef\xbc\x8e\xf0\x90\xb9\xa6\xf0\xbb\x9e\xb5-\xe2\x80\x8d"); } // [B1, C2, V6, V7]2090test { try toUnicodeFail("\xf0\x91\x81\xbf\xef\xbc\x8e\xf0\x90\xb9\xa6\xf0\xbb\x9e\xb5-\xe2\x80\x8d"); } // [B1, C2, V6, V7]
2091test { try toAsciiFail("\xf0\x91\x81\xbf\xef\xbc\x8e\xf0\x90\xb9\xa6\xf0\xbb\x9e\xb5-\xe2\x80\x8d", false); } // [B1, C2, V6, V7]
2092test { try toAsciiFail("\xf0\x91\x81\xbf\xef\xbc\x8e\xf0\x90\xb9\xa6\xf0\xbb\x9e\xb5-\xe2\x80\x8d", true); } // [B1, V3, V6, V7]
1185test { try toUnicodeFail("\xf0\x91\x81\xbf.\xf0\x90\xb9\xa6\xf0\xbb\x9e\xb5-\xe2\x80\x8d"); } // [B1, C2, V6, V7]2093test { try toUnicodeFail("\xf0\x91\x81\xbf.\xf0\x90\xb9\xa6\xf0\xbb\x9e\xb5-\xe2\x80\x8d"); } // [B1, C2, V6, V7]
2094test { try toAsciiFail("\xf0\x91\x81\xbf.\xf0\x90\xb9\xa6\xf0\xbb\x9e\xb5-\xe2\x80\x8d", false); } // [B1, C2, V6, V7]
2095test { try toAsciiFail("\xf0\x91\x81\xbf.\xf0\x90\xb9\xa6\xf0\xbb\x9e\xb5-\xe2\x80\x8d", true); } // [B1, V3, V6, V7]
1186test { try toUnicodeFail("xn--q30d.xn----i26i1299n"); } // [B1, V3, V6, V7]2096test { try toUnicodeFail("xn--q30d.xn----i26i1299n"); } // [B1, V3, V6, V7]
2097test { try toAsciiFail("xn--q30d.xn----i26i1299n", false); } // [B1, V3, V6, V7]
2098test { try toAsciiFail("xn--q30d.xn----i26i1299n", true); } // [B1, V3, V6, V7]
1187test { try toUnicodeFail("xn--q30d.xn----ugn1088hfsxv"); } // [B1, C2, V6, V7]2099test { try toUnicodeFail("xn--q30d.xn----ugn1088hfsxv"); } // [B1, C2, V6, V7]
2100test { try toAsciiFail("xn--q30d.xn----ugn1088hfsxv", false); } // [B1, C2, V6, V7]
2101test { try toAsciiFail("xn--q30d.xn----ugn1088hfsxv", true); } // [B1, C2, V6, V7]
1188test { try toUnicodeFail("\xe2\xa4\xb8\xcf\x82\xf0\xba\xb1\x80\xef\xbd\xa1\xef\xbe\xa0"); } // [V7]2102test { try toUnicodeFail("\xe2\xa4\xb8\xcf\x82\xf0\xba\xb1\x80\xef\xbd\xa1\xef\xbe\xa0"); } // [V7]
2103test { try toAsciiFail("\xe2\xa4\xb8\xcf\x82\xf0\xba\xb1\x80\xef\xbd\xa1\xef\xbe\xa0", false); } // [V7, A4_2]
2104test { try toAsciiFail("\xe2\xa4\xb8\xcf\x82\xf0\xba\xb1\x80\xef\xbd\xa1\xef\xbe\xa0", true); } // [V7, A4_2]
1189test { try toUnicodeFail("\xe2\xa4\xb8\xcf\x82\xf0\xba\xb1\x80\xe3\x80\x82\xe1\x85\xa0"); } // [V7]2105test { try toUnicodeFail("\xe2\xa4\xb8\xcf\x82\xf0\xba\xb1\x80\xe3\x80\x82\xe1\x85\xa0"); } // [V7]
2106test { try toAsciiFail("\xe2\xa4\xb8\xcf\x82\xf0\xba\xb1\x80\xe3\x80\x82\xe1\x85\xa0", false); } // [V7, A4_2]
2107test { try toAsciiFail("\xe2\xa4\xb8\xcf\x82\xf0\xba\xb1\x80\xe3\x80\x82\xe1\x85\xa0", true); } // [V7, A4_2]
1190test { try toUnicodeFail("\xe2\xa4\xb8\xce\xa3\xf0\xba\xb1\x80\xe3\x80\x82\xe1\x85\xa0"); } // [V7]2108test { try toUnicodeFail("\xe2\xa4\xb8\xce\xa3\xf0\xba\xb1\x80\xe3\x80\x82\xe1\x85\xa0"); } // [V7]
2109test { try toAsciiFail("\xe2\xa4\xb8\xce\xa3\xf0\xba\xb1\x80\xe3\x80\x82\xe1\x85\xa0", false); } // [V7, A4_2]
2110test { try toAsciiFail("\xe2\xa4\xb8\xce\xa3\xf0\xba\xb1\x80\xe3\x80\x82\xe1\x85\xa0", true); } // [V7, A4_2]
1191test { try toUnicodeFail("\xe2\xa4\xb8\xcf\x83\xf0\xba\xb1\x80\xe3\x80\x82\xe1\x85\xa0"); } // [V7]2111test { try toUnicodeFail("\xe2\xa4\xb8\xcf\x83\xf0\xba\xb1\x80\xe3\x80\x82\xe1\x85\xa0"); } // [V7]
2112test { try toAsciiFail("\xe2\xa4\xb8\xcf\x83\xf0\xba\xb1\x80\xe3\x80\x82\xe1\x85\xa0", false); } // [V7, A4_2]
2113test { try toAsciiFail("\xe2\xa4\xb8\xcf\x83\xf0\xba\xb1\x80\xe3\x80\x82\xe1\x85\xa0", true); } // [V7, A4_2]
1192test { try toUnicodeFail("xn--4xa192qmp03d."); } // [V7]2114test { try toUnicodeFail("xn--4xa192qmp03d."); } // [V7]
2115test { try toAsciiFail("xn--4xa192qmp03d.", false); } // [V7, A4_2]
2116test { try toAsciiFail("xn--4xa192qmp03d.", true); } // [V7, A4_2]
1193test { try toUnicodeFail("xn--3xa392qmp03d."); } // [V7]2117test { try toUnicodeFail("xn--3xa392qmp03d."); } // [V7]
2118test { try toAsciiFail("xn--3xa392qmp03d.", false); } // [V7, A4_2]
2119test { try toAsciiFail("xn--3xa392qmp03d.", true); } // [V7, A4_2]
1194test { try toUnicodeFail("\xe2\xa4\xb8\xce\xa3\xf0\xba\xb1\x80\xef\xbd\xa1\xef\xbe\xa0"); } // [V7]2120test { try toUnicodeFail("\xe2\xa4\xb8\xce\xa3\xf0\xba\xb1\x80\xef\xbd\xa1\xef\xbe\xa0"); } // [V7]
2121test { try toAsciiFail("\xe2\xa4\xb8\xce\xa3\xf0\xba\xb1\x80\xef\xbd\xa1\xef\xbe\xa0", false); } // [V7, A4_2]
2122test { try toAsciiFail("\xe2\xa4\xb8\xce\xa3\xf0\xba\xb1\x80\xef\xbd\xa1\xef\xbe\xa0", true); } // [V7, A4_2]
1195test { try toUnicodeFail("\xe2\xa4\xb8\xcf\x83\xf0\xba\xb1\x80\xef\xbd\xa1\xef\xbe\xa0"); } // [V7]2123test { try toUnicodeFail("\xe2\xa4\xb8\xcf\x83\xf0\xba\xb1\x80\xef\xbd\xa1\xef\xbe\xa0"); } // [V7]
2124test { try toAsciiFail("\xe2\xa4\xb8\xcf\x83\xf0\xba\xb1\x80\xef\xbd\xa1\xef\xbe\xa0", false); } // [V7, A4_2]
2125test { try toAsciiFail("\xe2\xa4\xb8\xcf\x83\xf0\xba\xb1\x80\xef\xbd\xa1\xef\xbe\xa0", true); } // [V7, A4_2]
1196test { try toUnicodeFail("xn--4xa192qmp03d.xn--psd"); } // [V7]2126test { try toUnicodeFail("xn--4xa192qmp03d.xn--psd"); } // [V7]
2127test { try toAsciiFail("xn--4xa192qmp03d.xn--psd", false); } // [V7]
2128test { try toAsciiFail("xn--4xa192qmp03d.xn--psd", true); } // [V7]
1197test { try toUnicodeFail("xn--3xa392qmp03d.xn--psd"); } // [V7]2129test { try toUnicodeFail("xn--3xa392qmp03d.xn--psd"); } // [V7]
2130test { try toAsciiFail("xn--3xa392qmp03d.xn--psd", false); } // [V7]
2131test { try toAsciiFail("xn--3xa392qmp03d.xn--psd", true); } // [V7]
1198test { try toUnicodeFail("xn--4xa192qmp03d.xn--cl7c"); } // [V7]2132test { try toUnicodeFail("xn--4xa192qmp03d.xn--cl7c"); } // [V7]
2133test { try toAsciiFail("xn--4xa192qmp03d.xn--cl7c", false); } // [V7]
2134test { try toAsciiFail("xn--4xa192qmp03d.xn--cl7c", true); } // [V7]
1199test { try toUnicodeFail("xn--3xa392qmp03d.xn--cl7c"); } // [V7]2135test { try toUnicodeFail("xn--3xa392qmp03d.xn--cl7c"); } // [V7]
2136test { try toAsciiFail("xn--3xa392qmp03d.xn--cl7c", false); } // [V7]
2137test { try toAsciiFail("xn--3xa392qmp03d.xn--cl7c", true); } // [V7]
1200test { try toUnicodeFail("\xdd\xa5\xe1\x80\xb5\xf0\x90\xab\x94\xdb\x95.\xf0\x90\xa6\xac\xf0\x91\x8b\xaa\xe1\x82\xa3"); } // [B2, B3]2138test { try toUnicodeFail("\xdd\xa5\xe1\x80\xb5\xf0\x90\xab\x94\xdb\x95.\xf0\x90\xa6\xac\xf0\x91\x8b\xaa\xe1\x82\xa3"); } // [B2, B3]
2139test { try toAsciiFail("\xdd\xa5\xe1\x80\xb5\xf0\x90\xab\x94\xdb\x95.\xf0\x90\xa6\xac\xf0\x91\x8b\xaa\xe1\x82\xa3", false); } // [B2, B3]
2140test { try toAsciiFail("\xdd\xa5\xe1\x80\xb5\xf0\x90\xab\x94\xdb\x95.\xf0\x90\xa6\xac\xf0\x91\x8b\xaa\xe1\x82\xa3", true); } // [B2, B3]
1201test { try toUnicodeFail("\xdd\xa5\xe1\x80\xb5\xf0\x90\xab\x94\xdb\x95.\xf0\x90\xa6\xac\xf0\x91\x8b\xaa\xe2\xb4\x83"); } // [B2, B3]2141test { try toUnicodeFail("\xdd\xa5\xe1\x80\xb5\xf0\x90\xab\x94\xdb\x95.\xf0\x90\xa6\xac\xf0\x91\x8b\xaa\xe2\xb4\x83"); } // [B2, B3]
2142test { try toAsciiFail("\xdd\xa5\xe1\x80\xb5\xf0\x90\xab\x94\xdb\x95.\xf0\x90\xa6\xac\xf0\x91\x8b\xaa\xe2\xb4\x83", false); } // [B2, B3]
2143test { try toAsciiFail("\xdd\xa5\xe1\x80\xb5\xf0\x90\xab\x94\xdb\x95.\xf0\x90\xa6\xac\xf0\x91\x8b\xaa\xe2\xb4\x83", true); } // [B2, B3]
1202test { try toUnicodeFail("xn--llb10as9tqp5y.xn--ukj7371e21f"); } // [B2, B3]2144test { try toUnicodeFail("xn--llb10as9tqp5y.xn--ukj7371e21f"); } // [B2, B3]
2145test { try toAsciiFail("xn--llb10as9tqp5y.xn--ukj7371e21f", false); } // [B2, B3]
2146test { try toAsciiFail("xn--llb10as9tqp5y.xn--ukj7371e21f", true); } // [B2, B3]
1203test { try toUnicodeFail("xn--llb10as9tqp5y.xn--bnd9168j21f"); } // [B2, B3, V7]2147test { try toUnicodeFail("xn--llb10as9tqp5y.xn--bnd9168j21f"); } // [B2, B3, V7]
2148test { try toAsciiFail("xn--llb10as9tqp5y.xn--bnd9168j21f", false); } // [B2, B3, V7]
2149test { try toAsciiFail("xn--llb10as9tqp5y.xn--bnd9168j21f", true); } // [B2, B3, V7]
1204test { try toUnicodeFail("\xd9\xa1\xe1\xad\x84-\xed\x82\xbc.\xe1\xae\xaa\xd8\x96\xd9\xac\xe2\x89\xaf"); } // [B1, B5, B6, V6]2150test { try toUnicodeFail("\xd9\xa1\xe1\xad\x84-\xed\x82\xbc.\xe1\xae\xaa\xd8\x96\xd9\xac\xe2\x89\xaf"); } // [B1, B5, B6, V6]
2151test { try toAsciiFail("\xd9\xa1\xe1\xad\x84-\xed\x82\xbc.\xe1\xae\xaa\xd8\x96\xd9\xac\xe2\x89\xaf", false); } // [B1, B5, B6, V6]
2152test { try toAsciiFail("\xd9\xa1\xe1\xad\x84-\xed\x82\xbc.\xe1\xae\xaa\xd8\x96\xd9\xac\xe2\x89\xaf", true); } // [B1, B5, B6, V6]
1205test { try toUnicodeFail("\xd9\xa1\xe1\xad\x84-\xe1\x84\x8f\xe1\x85\xb5\xe1\x86\xbf.\xe1\xae\xaa\xd8\x96\xd9\xac>\xcc\xb8"); } // [B1, B5, B6, V6]2153test { try toUnicodeFail("\xd9\xa1\xe1\xad\x84-\xe1\x84\x8f\xe1\x85\xb5\xe1\x86\xbf.\xe1\xae\xaa\xd8\x96\xd9\xac>\xcc\xb8"); } // [B1, B5, B6, V6]
2154test { try toAsciiFail("\xd9\xa1\xe1\xad\x84-\xe1\x84\x8f\xe1\x85\xb5\xe1\x86\xbf.\xe1\xae\xaa\xd8\x96\xd9\xac>\xcc\xb8", false); } // [B1, B5, B6, V6]
2155test { try toAsciiFail("\xd9\xa1\xe1\xad\x84-\xe1\x84\x8f\xe1\x85\xb5\xe1\x86\xbf.\xe1\xae\xaa\xd8\x96\xd9\xac>\xcc\xb8", true); } // [B1, B5, B6, V6]
1206test { try toUnicodeFail("xn----9pc551nk39n.xn--4fb6o571degg"); } // [B1, B5, B6, V6]2156test { try toUnicodeFail("xn----9pc551nk39n.xn--4fb6o571degg"); } // [B1, B5, B6, V6]
2157test { try toAsciiFail("xn----9pc551nk39n.xn--4fb6o571degg", false); } // [B1, B5, B6, V6]
2158test { try toAsciiFail("xn----9pc551nk39n.xn--4fb6o571degg", true); } // [B1, B5, B6, V6]
1207test { try toUnicodeFail("-\xe3\x80\x82\xdb\x82\xd8\x84\xf2\x85\x96\xa1\xf0\x91\x93\x82"); } // [B1, B2, B3, V3, V7]2159test { try toUnicodeFail("-\xe3\x80\x82\xdb\x82\xd8\x84\xf2\x85\x96\xa1\xf0\x91\x93\x82"); } // [B1, B2, B3, V3, V7]
2160test { try toAsciiFail("-\xe3\x80\x82\xdb\x82\xd8\x84\xf2\x85\x96\xa1\xf0\x91\x93\x82", false); } // [B1, B2, B3, V3, V7]
2161test { try toAsciiFail("-\xe3\x80\x82\xdb\x82\xd8\x84\xf2\x85\x96\xa1\xf0\x91\x93\x82", true); } // [B1, B2, B3, V3, V7]
1208test { try toUnicodeFail("-\xe3\x80\x82\xdb\x81\xd9\x94\xd8\x84\xf2\x85\x96\xa1\xf0\x91\x93\x82"); } // [B1, B2, B3, V3, V7]2162test { try toUnicodeFail("-\xe3\x80\x82\xdb\x81\xd9\x94\xd8\x84\xf2\x85\x96\xa1\xf0\x91\x93\x82"); } // [B1, B2, B3, V3, V7]
2163test { try toAsciiFail("-\xe3\x80\x82\xdb\x81\xd9\x94\xd8\x84\xf2\x85\x96\xa1\xf0\x91\x93\x82", false); } // [B1, B2, B3, V3, V7]
2164test { try toAsciiFail("-\xe3\x80\x82\xdb\x81\xd9\x94\xd8\x84\xf2\x85\x96\xa1\xf0\x91\x93\x82", true); } // [B1, B2, B3, V3, V7]
1209test { try toUnicodeFail("-.xn--mfb39a7208dzgs3d"); } // [B1, B2, B3, V3, V7]2165test { try toUnicodeFail("-.xn--mfb39a7208dzgs3d"); } // [B1, B2, B3, V3, V7]
2166test { try toAsciiFail("-.xn--mfb39a7208dzgs3d", false); } // [B1, B2, B3, V3, V7]
2167test { try toAsciiFail("-.xn--mfb39a7208dzgs3d", true); } // [B1, B2, B3, V3, V7]
1210test { try toUnicodeFail("\xe2\x80\x8d\xf3\xaf\x91\x96\xf3\xa0\x81\x90\xef\xbc\x8e\xd6\xbd\xf0\x99\xae\xb0\xea\xa1\x9d\xf0\x90\x8b\xa1"); } // [C2, V6, V7]2168test { try toUnicodeFail("\xe2\x80\x8d\xf3\xaf\x91\x96\xf3\xa0\x81\x90\xef\xbc\x8e\xd6\xbd\xf0\x99\xae\xb0\xea\xa1\x9d\xf0\x90\x8b\xa1"); } // [C2, V6, V7]
2169test { try toAsciiFail("\xe2\x80\x8d\xf3\xaf\x91\x96\xf3\xa0\x81\x90\xef\xbc\x8e\xd6\xbd\xf0\x99\xae\xb0\xea\xa1\x9d\xf0\x90\x8b\xa1", false); } // [C2, V6, V7]
2170test { try toAsciiFail("\xe2\x80\x8d\xf3\xaf\x91\x96\xf3\xa0\x81\x90\xef\xbc\x8e\xd6\xbd\xf0\x99\xae\xb0\xea\xa1\x9d\xf0\x90\x8b\xa1", true); } // [V6, V7]
1211test { try toUnicodeFail("\xe2\x80\x8d\xf3\xaf\x91\x96\xf3\xa0\x81\x90.\xd6\xbd\xf0\x99\xae\xb0\xea\xa1\x9d\xf0\x90\x8b\xa1"); } // [C2, V6, V7]2171test { try toUnicodeFail("\xe2\x80\x8d\xf3\xaf\x91\x96\xf3\xa0\x81\x90.\xd6\xbd\xf0\x99\xae\xb0\xea\xa1\x9d\xf0\x90\x8b\xa1"); } // [C2, V6, V7]
2172test { try toAsciiFail("\xe2\x80\x8d\xf3\xaf\x91\x96\xf3\xa0\x81\x90.\xd6\xbd\xf0\x99\xae\xb0\xea\xa1\x9d\xf0\x90\x8b\xa1", false); } // [C2, V6, V7]
2173test { try toAsciiFail("\xe2\x80\x8d\xf3\xaf\x91\x96\xf3\xa0\x81\x90.\xd6\xbd\xf0\x99\xae\xb0\xea\xa1\x9d\xf0\x90\x8b\xa1", true); } // [V6, V7]
1212test { try toUnicodeFail("xn--b726ey18m.xn--ldb8734fg0qcyzzg"); } // [V6, V7]2174test { try toUnicodeFail("xn--b726ey18m.xn--ldb8734fg0qcyzzg"); } // [V6, V7]
2175test { try toAsciiFail("xn--b726ey18m.xn--ldb8734fg0qcyzzg", false); } // [V6, V7]
2176test { try toAsciiFail("xn--b726ey18m.xn--ldb8734fg0qcyzzg", true); } // [V6, V7]
1213test { try toUnicodeFail("xn--1ug66101lt8me.xn--ldb8734fg0qcyzzg"); } // [C2, V6, V7]2177test { try toUnicodeFail("xn--1ug66101lt8me.xn--ldb8734fg0qcyzzg"); } // [C2, V6, V7]
2178test { try toAsciiFail("xn--1ug66101lt8me.xn--ldb8734fg0qcyzzg", false); } // [C2, V6, V7]
2179test { try toAsciiFail("xn--1ug66101lt8me.xn--ldb8734fg0qcyzzg", true); } // [C2, V6, V7]
1214test { try toUnicodeFail("\xef\xb8\x92\xf4\x83\x88\xb5\xcf\x82\xf1\x80\xa0\x87\xef\xbd\xa1\xf0\x90\xae\x88"); } // [B1, V7]2180test { try toUnicodeFail("\xef\xb8\x92\xf4\x83\x88\xb5\xcf\x82\xf1\x80\xa0\x87\xef\xbd\xa1\xf0\x90\xae\x88"); } // [B1, V7]
2181test { try toAsciiFail("\xef\xb8\x92\xf4\x83\x88\xb5\xcf\x82\xf1\x80\xa0\x87\xef\xbd\xa1\xf0\x90\xae\x88", false); } // [B1, V7]
2182test { try toAsciiFail("\xef\xb8\x92\xf4\x83\x88\xb5\xcf\x82\xf1\x80\xa0\x87\xef\xbd\xa1\xf0\x90\xae\x88", true); } // [B1, V7]
1215test { try toUnicodeFail("\xe3\x80\x82\xf4\x83\x88\xb5\xcf\x82\xf1\x80\xa0\x87\xe3\x80\x82\xf0\x90\xae\x88"); } // [V7, X4_2]2183test { try toUnicodeFail("\xe3\x80\x82\xf4\x83\x88\xb5\xcf\x82\xf1\x80\xa0\x87\xe3\x80\x82\xf0\x90\xae\x88"); } // [V7, X4_2]
2184test { try toAsciiFail("\xe3\x80\x82\xf4\x83\x88\xb5\xcf\x82\xf1\x80\xa0\x87\xe3\x80\x82\xf0\x90\xae\x88", false); } // [V7, A4_2]
2185test { try toAsciiFail("\xe3\x80\x82\xf4\x83\x88\xb5\xcf\x82\xf1\x80\xa0\x87\xe3\x80\x82\xf0\x90\xae\x88", true); } // [V7, A4_2]
1216test { try toUnicodeFail("\xe3\x80\x82\xf4\x83\x88\xb5\xce\xa3\xf1\x80\xa0\x87\xe3\x80\x82\xf0\x90\xae\x88"); } // [V7, X4_2]2186test { try toUnicodeFail("\xe3\x80\x82\xf4\x83\x88\xb5\xce\xa3\xf1\x80\xa0\x87\xe3\x80\x82\xf0\x90\xae\x88"); } // [V7, X4_2]
2187test { try toAsciiFail("\xe3\x80\x82\xf4\x83\x88\xb5\xce\xa3\xf1\x80\xa0\x87\xe3\x80\x82\xf0\x90\xae\x88", false); } // [V7, A4_2]
2188test { try toAsciiFail("\xe3\x80\x82\xf4\x83\x88\xb5\xce\xa3\xf1\x80\xa0\x87\xe3\x80\x82\xf0\x90\xae\x88", true); } // [V7, A4_2]
1217test { try toUnicodeFail("\xe3\x80\x82\xf4\x83\x88\xb5\xcf\x83\xf1\x80\xa0\x87\xe3\x80\x82\xf0\x90\xae\x88"); } // [V7, X4_2]2189test { try toUnicodeFail("\xe3\x80\x82\xf4\x83\x88\xb5\xcf\x83\xf1\x80\xa0\x87\xe3\x80\x82\xf0\x90\xae\x88"); } // [V7, X4_2]
2190test { try toAsciiFail("\xe3\x80\x82\xf4\x83\x88\xb5\xcf\x83\xf1\x80\xa0\x87\xe3\x80\x82\xf0\x90\xae\x88", false); } // [V7, A4_2]
2191test { try toAsciiFail("\xe3\x80\x82\xf4\x83\x88\xb5\xcf\x83\xf1\x80\xa0\x87\xe3\x80\x82\xf0\x90\xae\x88", true); } // [V7, A4_2]
1218test { try toUnicodeFail(".xn--4xa68573c7n64d.xn--f29c"); } // [V7, X4_2]2192test { try toUnicodeFail(".xn--4xa68573c7n64d.xn--f29c"); } // [V7, X4_2]
2193test { try toAsciiFail(".xn--4xa68573c7n64d.xn--f29c", false); } // [V7, A4_2]
2194test { try toAsciiFail(".xn--4xa68573c7n64d.xn--f29c", true); } // [V7, A4_2]
1219test { try toUnicodeFail(".xn--3xa88573c7n64d.xn--f29c"); } // [V7, X4_2]2195test { try toUnicodeFail(".xn--3xa88573c7n64d.xn--f29c"); } // [V7, X4_2]
2196test { try toAsciiFail(".xn--3xa88573c7n64d.xn--f29c", false); } // [V7, A4_2]
2197test { try toAsciiFail(".xn--3xa88573c7n64d.xn--f29c", true); } // [V7, A4_2]
1220test { try toUnicodeFail("\xef\xb8\x92\xf4\x83\x88\xb5\xce\xa3\xf1\x80\xa0\x87\xef\xbd\xa1\xf0\x90\xae\x88"); } // [B1, V7]2198test { try toUnicodeFail("\xef\xb8\x92\xf4\x83\x88\xb5\xce\xa3\xf1\x80\xa0\x87\xef\xbd\xa1\xf0\x90\xae\x88"); } // [B1, V7]
2199test { try toAsciiFail("\xef\xb8\x92\xf4\x83\x88\xb5\xce\xa3\xf1\x80\xa0\x87\xef\xbd\xa1\xf0\x90\xae\x88", false); } // [B1, V7]
2200test { try toAsciiFail("\xef\xb8\x92\xf4\x83\x88\xb5\xce\xa3\xf1\x80\xa0\x87\xef\xbd\xa1\xf0\x90\xae\x88", true); } // [B1, V7]
1221test { try toUnicodeFail("\xef\xb8\x92\xf4\x83\x88\xb5\xcf\x83\xf1\x80\xa0\x87\xef\xbd\xa1\xf0\x90\xae\x88"); } // [B1, V7]2201test { try toUnicodeFail("\xef\xb8\x92\xf4\x83\x88\xb5\xcf\x83\xf1\x80\xa0\x87\xef\xbd\xa1\xf0\x90\xae\x88"); } // [B1, V7]
2202test { try toAsciiFail("\xef\xb8\x92\xf4\x83\x88\xb5\xcf\x83\xf1\x80\xa0\x87\xef\xbd\xa1\xf0\x90\xae\x88", false); } // [B1, V7]
2203test { try toAsciiFail("\xef\xb8\x92\xf4\x83\x88\xb5\xcf\x83\xf1\x80\xa0\x87\xef\xbd\xa1\xf0\x90\xae\x88", true); } // [B1, V7]
1222test { try toUnicodeFail("xn--4xa1729jwz5t7gl5f.xn--f29c"); } // [B1, V7]2204test { try toUnicodeFail("xn--4xa1729jwz5t7gl5f.xn--f29c"); } // [B1, V7]
2205test { try toAsciiFail("xn--4xa1729jwz5t7gl5f.xn--f29c", false); } // [B1, V7]
2206test { try toAsciiFail("xn--4xa1729jwz5t7gl5f.xn--f29c", true); } // [B1, V7]
1223test { try toUnicodeFail("xn--3xa3729jwz5t7gl5f.xn--f29c"); } // [B1, V7]2207test { try toUnicodeFail("xn--3xa3729jwz5t7gl5f.xn--f29c"); } // [B1, V7]
2208test { try toAsciiFail("xn--3xa3729jwz5t7gl5f.xn--f29c", false); } // [B1, V7]
2209test { try toAsciiFail("xn--3xa3729jwz5t7gl5f.xn--f29c", true); } // [B1, V7]
1224test { try toUnicodeFail("\xdf\x99\xef\xbc\x8e\xdb\xae\xf3\x86\xbe\x83\xe2\x89\xaf\xf3\xa0\x85\xb2"); } // [B2, B3, V7]2210test { try toUnicodeFail("\xdf\x99\xef\xbc\x8e\xdb\xae\xf3\x86\xbe\x83\xe2\x89\xaf\xf3\xa0\x85\xb2"); } // [B2, B3, V7]
2211test { try toAsciiFail("\xdf\x99\xef\xbc\x8e\xdb\xae\xf3\x86\xbe\x83\xe2\x89\xaf\xf3\xa0\x85\xb2", false); } // [B2, B3, V7]
2212test { try toAsciiFail("\xdf\x99\xef\xbc\x8e\xdb\xae\xf3\x86\xbe\x83\xe2\x89\xaf\xf3\xa0\x85\xb2", true); } // [B2, B3, V7]
1225test { try toUnicodeFail("\xdf\x99\xef\xbc\x8e\xdb\xae\xf3\x86\xbe\x83>\xcc\xb8\xf3\xa0\x85\xb2"); } // [B2, B3, V7]2213test { try toUnicodeFail("\xdf\x99\xef\xbc\x8e\xdb\xae\xf3\x86\xbe\x83>\xcc\xb8\xf3\xa0\x85\xb2"); } // [B2, B3, V7]
2214test { try toAsciiFail("\xdf\x99\xef\xbc\x8e\xdb\xae\xf3\x86\xbe\x83>\xcc\xb8\xf3\xa0\x85\xb2", false); } // [B2, B3, V7]
2215test { try toAsciiFail("\xdf\x99\xef\xbc\x8e\xdb\xae\xf3\x86\xbe\x83>\xcc\xb8\xf3\xa0\x85\xb2", true); } // [B2, B3, V7]
1226test { try toUnicodeFail("\xdf\x99.\xdb\xae\xf3\x86\xbe\x83\xe2\x89\xaf\xf3\xa0\x85\xb2"); } // [B2, B3, V7]2216test { try toUnicodeFail("\xdf\x99.\xdb\xae\xf3\x86\xbe\x83\xe2\x89\xaf\xf3\xa0\x85\xb2"); } // [B2, B3, V7]
2217test { try toAsciiFail("\xdf\x99.\xdb\xae\xf3\x86\xbe\x83\xe2\x89\xaf\xf3\xa0\x85\xb2", false); } // [B2, B3, V7]
2218test { try toAsciiFail("\xdf\x99.\xdb\xae\xf3\x86\xbe\x83\xe2\x89\xaf\xf3\xa0\x85\xb2", true); } // [B2, B3, V7]
1227test { try toUnicodeFail("\xdf\x99.\xdb\xae\xf3\x86\xbe\x83>\xcc\xb8\xf3\xa0\x85\xb2"); } // [B2, B3, V7]2219test { try toUnicodeFail("\xdf\x99.\xdb\xae\xf3\x86\xbe\x83>\xcc\xb8\xf3\xa0\x85\xb2"); } // [B2, B3, V7]
2220test { try toAsciiFail("\xdf\x99.\xdb\xae\xf3\x86\xbe\x83>\xcc\xb8\xf3\xa0\x85\xb2", false); } // [B2, B3, V7]
2221test { try toAsciiFail("\xdf\x99.\xdb\xae\xf3\x86\xbe\x83>\xcc\xb8\xf3\xa0\x85\xb2", true); } // [B2, B3, V7]
1228test { try toUnicodeFail("xn--0sb.xn--bmb691l0524t"); } // [B2, B3, V7]2222test { try toUnicodeFail("xn--0sb.xn--bmb691l0524t"); } // [B2, B3, V7]
2223test { try toAsciiFail("xn--0sb.xn--bmb691l0524t", false); } // [B2, B3, V7]
2224test { try toAsciiFail("xn--0sb.xn--bmb691l0524t", true); } // [B2, B3, V7]
1229test { try toUnicodeFail("\xe1\xa9\xb3\xf3\x9a\x99\xb8.\xf0\x90\xad\x8d"); } // [B1, V6, V7]2225test { try toUnicodeFail("\xe1\xa9\xb3\xf3\x9a\x99\xb8.\xf0\x90\xad\x8d"); } // [B1, V6, V7]
2226test { try toAsciiFail("\xe1\xa9\xb3\xf3\x9a\x99\xb8.\xf0\x90\xad\x8d", false); } // [B1, V6, V7]
2227test { try toAsciiFail("\xe1\xa9\xb3\xf3\x9a\x99\xb8.\xf0\x90\xad\x8d", true); } // [B1, V6, V7]
1230test { try toUnicodeFail("xn--2of22352n.xn--q09c"); } // [B1, V6, V7]2228test { try toUnicodeFail("xn--2of22352n.xn--q09c"); } // [B1, V6, V7]
2229test { try toAsciiFail("xn--2of22352n.xn--q09c", false); } // [B1, V6, V7]
2230test { try toAsciiFail("xn--2of22352n.xn--q09c", true); } // [B1, V6, V7]
1231test { try toUnicodeFail("\xe2\x92\x89\xf3\xa0\x8a\x93\xe2\x89\xa0\xef\xbd\xa1\xe1\x82\xbf\xe2\xac\xa3\xe1\x82\xa8"); } // [V7]2231test { try toUnicodeFail("\xe2\x92\x89\xf3\xa0\x8a\x93\xe2\x89\xa0\xef\xbd\xa1\xe1\x82\xbf\xe2\xac\xa3\xe1\x82\xa8"); } // [V7]
2232test { try toAsciiFail("\xe2\x92\x89\xf3\xa0\x8a\x93\xe2\x89\xa0\xef\xbd\xa1\xe1\x82\xbf\xe2\xac\xa3\xe1\x82\xa8", false); } // [V7]
2233test { try toAsciiFail("\xe2\x92\x89\xf3\xa0\x8a\x93\xe2\x89\xa0\xef\xbd\xa1\xe1\x82\xbf\xe2\xac\xa3\xe1\x82\xa8", true); } // [V7]
1232test { try toUnicodeFail("\xe2\x92\x89\xf3\xa0\x8a\x93=\xcc\xb8\xef\xbd\xa1\xe1\x82\xbf\xe2\xac\xa3\xe1\x82\xa8"); } // [V7]2234test { try toUnicodeFail("\xe2\x92\x89\xf3\xa0\x8a\x93=\xcc\xb8\xef\xbd\xa1\xe1\x82\xbf\xe2\xac\xa3\xe1\x82\xa8"); } // [V7]
2235test { try toAsciiFail("\xe2\x92\x89\xf3\xa0\x8a\x93=\xcc\xb8\xef\xbd\xa1\xe1\x82\xbf\xe2\xac\xa3\xe1\x82\xa8", false); } // [V7]
2236test { try toAsciiFail("\xe2\x92\x89\xf3\xa0\x8a\x93=\xcc\xb8\xef\xbd\xa1\xe1\x82\xbf\xe2\xac\xa3\xe1\x82\xa8", true); } // [V7]
1233test { try toUnicodeFail("2.\xf3\xa0\x8a\x93\xe2\x89\xa0\xe3\x80\x82\xe1\x82\xbf\xe2\xac\xa3\xe1\x82\xa8"); } // [V7]2237test { try toUnicodeFail("2.\xf3\xa0\x8a\x93\xe2\x89\xa0\xe3\x80\x82\xe1\x82\xbf\xe2\xac\xa3\xe1\x82\xa8"); } // [V7]
2238test { try toAsciiFail("2.\xf3\xa0\x8a\x93\xe2\x89\xa0\xe3\x80\x82\xe1\x82\xbf\xe2\xac\xa3\xe1\x82\xa8", false); } // [V7]
2239test { try toAsciiFail("2.\xf3\xa0\x8a\x93\xe2\x89\xa0\xe3\x80\x82\xe1\x82\xbf\xe2\xac\xa3\xe1\x82\xa8", true); } // [V7]
1234test { try toUnicodeFail("2.\xf3\xa0\x8a\x93=\xcc\xb8\xe3\x80\x82\xe1\x82\xbf\xe2\xac\xa3\xe1\x82\xa8"); } // [V7]2240test { try toUnicodeFail("2.\xf3\xa0\x8a\x93=\xcc\xb8\xe3\x80\x82\xe1\x82\xbf\xe2\xac\xa3\xe1\x82\xa8"); } // [V7]
2241test { try toAsciiFail("2.\xf3\xa0\x8a\x93=\xcc\xb8\xe3\x80\x82\xe1\x82\xbf\xe2\xac\xa3\xe1\x82\xa8", false); } // [V7]
2242test { try toAsciiFail("2.\xf3\xa0\x8a\x93=\xcc\xb8\xe3\x80\x82\xe1\x82\xbf\xe2\xac\xa3\xe1\x82\xa8", true); } // [V7]
1235test { try toUnicodeFail("2.\xf3\xa0\x8a\x93=\xcc\xb8\xe3\x80\x82\xe2\xb4\x9f\xe2\xac\xa3\xe2\xb4\x88"); } // [V7]2243test { try toUnicodeFail("2.\xf3\xa0\x8a\x93=\xcc\xb8\xe3\x80\x82\xe2\xb4\x9f\xe2\xac\xa3\xe2\xb4\x88"); } // [V7]
2244test { try toAsciiFail("2.\xf3\xa0\x8a\x93=\xcc\xb8\xe3\x80\x82\xe2\xb4\x9f\xe2\xac\xa3\xe2\xb4\x88", false); } // [V7]
2245test { try toAsciiFail("2.\xf3\xa0\x8a\x93=\xcc\xb8\xe3\x80\x82\xe2\xb4\x9f\xe2\xac\xa3\xe2\xb4\x88", true); } // [V7]
1236test { try toUnicodeFail("2.\xf3\xa0\x8a\x93\xe2\x89\xa0\xe3\x80\x82\xe2\xb4\x9f\xe2\xac\xa3\xe2\xb4\x88"); } // [V7]2246test { try toUnicodeFail("2.\xf3\xa0\x8a\x93\xe2\x89\xa0\xe3\x80\x82\xe2\xb4\x9f\xe2\xac\xa3\xe2\xb4\x88"); } // [V7]
2247test { try toAsciiFail("2.\xf3\xa0\x8a\x93\xe2\x89\xa0\xe3\x80\x82\xe2\xb4\x9f\xe2\xac\xa3\xe2\xb4\x88", false); } // [V7]
2248test { try toAsciiFail("2.\xf3\xa0\x8a\x93\xe2\x89\xa0\xe3\x80\x82\xe2\xb4\x9f\xe2\xac\xa3\xe2\xb4\x88", true); } // [V7]
1237test { try toUnicodeFail("2.xn--1chz4101l.xn--45iz7d6b"); } // [V7]2249test { try toUnicodeFail("2.xn--1chz4101l.xn--45iz7d6b"); } // [V7]
2250test { try toAsciiFail("2.xn--1chz4101l.xn--45iz7d6b", false); } // [V7]
2251test { try toAsciiFail("2.xn--1chz4101l.xn--45iz7d6b", true); } // [V7]
1238test { try toUnicodeFail("\xe2\x92\x89\xf3\xa0\x8a\x93=\xcc\xb8\xef\xbd\xa1\xe2\xb4\x9f\xe2\xac\xa3\xe2\xb4\x88"); } // [V7]2252test { try toUnicodeFail("\xe2\x92\x89\xf3\xa0\x8a\x93=\xcc\xb8\xef\xbd\xa1\xe2\xb4\x9f\xe2\xac\xa3\xe2\xb4\x88"); } // [V7]
2253test { try toAsciiFail("\xe2\x92\x89\xf3\xa0\x8a\x93=\xcc\xb8\xef\xbd\xa1\xe2\xb4\x9f\xe2\xac\xa3\xe2\xb4\x88", false); } // [V7]
2254test { try toAsciiFail("\xe2\x92\x89\xf3\xa0\x8a\x93=\xcc\xb8\xef\xbd\xa1\xe2\xb4\x9f\xe2\xac\xa3\xe2\xb4\x88", true); } // [V7]
1239test { try toUnicodeFail("\xe2\x92\x89\xf3\xa0\x8a\x93\xe2\x89\xa0\xef\xbd\xa1\xe2\xb4\x9f\xe2\xac\xa3\xe2\xb4\x88"); } // [V7]2255test { try toUnicodeFail("\xe2\x92\x89\xf3\xa0\x8a\x93\xe2\x89\xa0\xef\xbd\xa1\xe2\xb4\x9f\xe2\xac\xa3\xe2\xb4\x88"); } // [V7]
2256test { try toAsciiFail("\xe2\x92\x89\xf3\xa0\x8a\x93\xe2\x89\xa0\xef\xbd\xa1\xe2\xb4\x9f\xe2\xac\xa3\xe2\xb4\x88", false); } // [V7]
2257test { try toAsciiFail("\xe2\x92\x89\xf3\xa0\x8a\x93\xe2\x89\xa0\xef\xbd\xa1\xe2\xb4\x9f\xe2\xac\xa3\xe2\xb4\x88", true); } // [V7]
1240test { try toUnicodeFail("xn--1ch07f91401d.xn--45iz7d6b"); } // [V7]2258test { try toUnicodeFail("xn--1ch07f91401d.xn--45iz7d6b"); } // [V7]
2259test { try toAsciiFail("xn--1ch07f91401d.xn--45iz7d6b", false); } // [V7]
2260test { try toAsciiFail("xn--1ch07f91401d.xn--45iz7d6b", true); } // [V7]
1241test { try toUnicodeFail("2.xn--1chz4101l.xn--gnd9b297j"); } // [V7]2261test { try toUnicodeFail("2.xn--1chz4101l.xn--gnd9b297j"); } // [V7]
2262test { try toAsciiFail("2.xn--1chz4101l.xn--gnd9b297j", false); } // [V7]
2263test { try toAsciiFail("2.xn--1chz4101l.xn--gnd9b297j", true); } // [V7]
1242test { try toUnicodeFail("xn--1ch07f91401d.xn--gnd9b297j"); } // [V7]2264test { try toUnicodeFail("xn--1ch07f91401d.xn--gnd9b297j"); } // [V7]
2265test { try toAsciiFail("xn--1ch07f91401d.xn--gnd9b297j", false); } // [V7]
2266test { try toAsciiFail("xn--1ch07f91401d.xn--gnd9b297j", true); } // [V7]
1243test { try toUnicodeFail("-\xf3\xa0\x89\xb1\xe0\xbe\xb8\xe1\x83\x85\xe3\x80\x82-\xf0\x90\xb9\xbd\xdd\xb4\xf0\x9e\xa3\x91"); } // [B1, V3, V7]2267test { try toUnicodeFail("-\xf3\xa0\x89\xb1\xe0\xbe\xb8\xe1\x83\x85\xe3\x80\x82-\xf0\x90\xb9\xbd\xdd\xb4\xf0\x9e\xa3\x91"); } // [B1, V3, V7]
2268test { try toAsciiFail("-\xf3\xa0\x89\xb1\xe0\xbe\xb8\xe1\x83\x85\xe3\x80\x82-\xf0\x90\xb9\xbd\xdd\xb4\xf0\x9e\xa3\x91", false); } // [B1, V3, V7]
2269test { try toAsciiFail("-\xf3\xa0\x89\xb1\xe0\xbe\xb8\xe1\x83\x85\xe3\x80\x82-\xf0\x90\xb9\xbd\xdd\xb4\xf0\x9e\xa3\x91", true); } // [B1, V3, V7]
1244test { try toUnicodeFail("-\xf3\xa0\x89\xb1\xe0\xbe\xb8\xe2\xb4\xa5\xe3\x80\x82-\xf0\x90\xb9\xbd\xdd\xb4\xf0\x9e\xa3\x91"); } // [B1, V3, V7]2270test { try toUnicodeFail("-\xf3\xa0\x89\xb1\xe0\xbe\xb8\xe2\xb4\xa5\xe3\x80\x82-\xf0\x90\xb9\xbd\xdd\xb4\xf0\x9e\xa3\x91"); } // [B1, V3, V7]
2271test { try toAsciiFail("-\xf3\xa0\x89\xb1\xe0\xbe\xb8\xe2\xb4\xa5\xe3\x80\x82-\xf0\x90\xb9\xbd\xdd\xb4\xf0\x9e\xa3\x91", false); } // [B1, V3, V7]
2272test { try toAsciiFail("-\xf3\xa0\x89\xb1\xe0\xbe\xb8\xe2\xb4\xa5\xe3\x80\x82-\xf0\x90\xb9\xbd\xdd\xb4\xf0\x9e\xa3\x91", true); } // [B1, V3, V7]
1245test { try toUnicodeFail("xn----xmg317tgv352a.xn----05c4213ryr0g"); } // [B1, V3, V7]2273test { try toUnicodeFail("xn----xmg317tgv352a.xn----05c4213ryr0g"); } // [B1, V3, V7]
2274test { try toAsciiFail("xn----xmg317tgv352a.xn----05c4213ryr0g", false); } // [B1, V3, V7]
2275test { try toAsciiFail("xn----xmg317tgv352a.xn----05c4213ryr0g", true); } // [B1, V3, V7]
1246test { try toUnicodeFail("xn----xmg12fm2555h.xn----05c4213ryr0g"); } // [B1, V3, V7]2276test { try toUnicodeFail("xn----xmg12fm2555h.xn----05c4213ryr0g"); } // [B1, V3, V7]
2277test { try toAsciiFail("xn----xmg12fm2555h.xn----05c4213ryr0g", false); } // [B1, V3, V7]
2278test { try toAsciiFail("xn----xmg12fm2555h.xn----05c4213ryr0g", true); } // [B1, V3, V7]
1247test { try toUnicodeFail("\xd9\x99\xe3\x80\x82\xf0\x91\x84\xb4\xef\xb8\x92\xd8\xa7\xdf\x9d"); } // [B1, V6, V7]2279test { try toUnicodeFail("\xd9\x99\xe3\x80\x82\xf0\x91\x84\xb4\xef\xb8\x92\xd8\xa7\xdf\x9d"); } // [B1, V6, V7]
2280test { try toAsciiFail("\xd9\x99\xe3\x80\x82\xf0\x91\x84\xb4\xef\xb8\x92\xd8\xa7\xdf\x9d", false); } // [B1, V6, V7]
2281test { try toAsciiFail("\xd9\x99\xe3\x80\x82\xf0\x91\x84\xb4\xef\xb8\x92\xd8\xa7\xdf\x9d", true); } // [B1, V6, V7]
1248test { try toUnicodeFail("\xd9\x99\xe3\x80\x82\xf0\x91\x84\xb4\xe3\x80\x82\xd8\xa7\xdf\x9d"); } // [B1, V6]2282test { try toUnicodeFail("\xd9\x99\xe3\x80\x82\xf0\x91\x84\xb4\xe3\x80\x82\xd8\xa7\xdf\x9d"); } // [B1, V6]
2283test { try toAsciiFail("\xd9\x99\xe3\x80\x82\xf0\x91\x84\xb4\xe3\x80\x82\xd8\xa7\xdf\x9d", false); } // [B1, V6]
2284test { try toAsciiFail("\xd9\x99\xe3\x80\x82\xf0\x91\x84\xb4\xe3\x80\x82\xd8\xa7\xdf\x9d", true); } // [B1, V6]
1249test { try toUnicodeFail("xn--1hb.xn--w80d.xn--mgb09f"); } // [B1, V6]2285test { try toUnicodeFail("xn--1hb.xn--w80d.xn--mgb09f"); } // [B1, V6]
2286test { try toAsciiFail("xn--1hb.xn--w80d.xn--mgb09f", false); } // [B1, V6]
2287test { try toAsciiFail("xn--1hb.xn--w80d.xn--mgb09f", true); } // [B1, V6]
1250test { try toUnicodeFail("xn--1hb.xn--mgb09fp820c08pa"); } // [B1, V6, V7]2288test { try toUnicodeFail("xn--1hb.xn--mgb09fp820c08pa"); } // [B1, V6, V7]
2289test { try toAsciiFail("xn--1hb.xn--mgb09fp820c08pa", false); } // [B1, V6, V7]
2290test { try toAsciiFail("xn--1hb.xn--mgb09fp820c08pa", true); } // [B1, V6, V7]
1251test { try toUnicodeFail("\xe1\x82\xb9\xd8\xb8.\xf3\xa0\x86\x93\xe2\x80\x8d"); } // [B1, B5, B6, C2]2291test { try toUnicodeFail("\xe1\x82\xb9\xd8\xb8.\xf3\xa0\x86\x93\xe2\x80\x8d"); } // [B1, B5, B6, C2]
2292test { try toAsciiFail("\xe1\x82\xb9\xd8\xb8.\xf3\xa0\x86\x93\xe2\x80\x8d", false); } // [B1, B5, B6, C2]
2293test { try toAsciiFail("\xe1\x82\xb9\xd8\xb8.\xf3\xa0\x86\x93\xe2\x80\x8d", true); } // [B5, B6, A4_2]
1252test { try toUnicodeFail("\xe2\xb4\x99\xd8\xb8.\xf3\xa0\x86\x93\xe2\x80\x8d"); } // [B1, B5, B6, C2]2294test { try toUnicodeFail("\xe2\xb4\x99\xd8\xb8.\xf3\xa0\x86\x93\xe2\x80\x8d"); } // [B1, B5, B6, C2]
2295test { try toAsciiFail("\xe2\xb4\x99\xd8\xb8.\xf3\xa0\x86\x93\xe2\x80\x8d", false); } // [B1, B5, B6, C2]
2296test { try toAsciiFail("\xe2\xb4\x99\xd8\xb8.\xf3\xa0\x86\x93\xe2\x80\x8d", true); } // [B5, B6, A4_2]
1253test { try toUnicodeFail("xn--3gb910r."); } // [B5, B6]2297test { try toUnicodeFail("xn--3gb910r."); } // [B5, B6]
2298test { try toAsciiFail("xn--3gb910r.", false); } // [B5, B6, A4_2]
2299test { try toAsciiFail("xn--3gb910r.", true); } // [B5, B6, A4_2]
1254test { try toUnicodeFail("xn--3gb910r.xn--1ug"); } // [B1, B5, B6, C2]2300test { try toUnicodeFail("xn--3gb910r.xn--1ug"); } // [B1, B5, B6, C2]
2301test { try toAsciiFail("xn--3gb910r.xn--1ug", false); } // [B1, B5, B6, C2]
2302test { try toAsciiFail("xn--3gb910r.xn--1ug", true); } // [B1, B5, B6, C2]
1255test { try toUnicodeFail("xn--3gb194c."); } // [B5, B6, V7]2303test { try toUnicodeFail("xn--3gb194c."); } // [B5, B6, V7]
2304test { try toAsciiFail("xn--3gb194c.", false); } // [B5, B6, V7, A4_2]
2305test { try toAsciiFail("xn--3gb194c.", true); } // [B5, B6, V7, A4_2]
1256test { try toUnicodeFail("xn--3gb194c.xn--1ug"); } // [B1, B5, B6, C2, V7]2306test { try toUnicodeFail("xn--3gb194c.xn--1ug"); } // [B1, B5, B6, C2, V7]
2307test { try toAsciiFail("xn--3gb194c.xn--1ug", false); } // [B1, B5, B6, C2, V7]
2308test { try toAsciiFail("xn--3gb194c.xn--1ug", true); } // [B1, B5, B6, C2, V7]
1257test { try toUnicodeFail("\xf3\xa0\x86\xb8\xef\xbd\xa1\xe2\x82\x86\xef\xbc\x90\xf0\x90\xba\xa7\xdd\x96"); } // [B1, X4_2]2309test { try toUnicodeFail("\xf3\xa0\x86\xb8\xef\xbd\xa1\xe2\x82\x86\xef\xbc\x90\xf0\x90\xba\xa7\xdd\x96"); } // [B1, X4_2]
2310test { try toAsciiFail("\xf3\xa0\x86\xb8\xef\xbd\xa1\xe2\x82\x86\xef\xbc\x90\xf0\x90\xba\xa7\xdd\x96", false); } // [B1, A4_2]
2311test { try toAsciiFail("\xf3\xa0\x86\xb8\xef\xbd\xa1\xe2\x82\x86\xef\xbc\x90\xf0\x90\xba\xa7\xdd\x96", true); } // [B1, A4_2]
1258test { try toUnicodeFail("\xf3\xa0\x86\xb8\xe3\x80\x8260\xf0\x90\xba\xa7\xdd\x96"); } // [B1, X4_2]2312test { try toUnicodeFail("\xf3\xa0\x86\xb8\xe3\x80\x8260\xf0\x90\xba\xa7\xdd\x96"); } // [B1, X4_2]
2313test { try toAsciiFail("\xf3\xa0\x86\xb8\xe3\x80\x8260\xf0\x90\xba\xa7\xdd\x96", false); } // [B1, A4_2]
2314test { try toAsciiFail("\xf3\xa0\x86\xb8\xe3\x80\x8260\xf0\x90\xba\xa7\xdd\x96", true); } // [B1, A4_2]
1259test { try toUnicodeFail(".xn--60-cke9470y"); } // [B1, X4_2]2315test { try toUnicodeFail(".xn--60-cke9470y"); } // [B1, X4_2]
2316test { try toAsciiFail(".xn--60-cke9470y", false); } // [B1, A4_2]
2317test { try toAsciiFail(".xn--60-cke9470y", true); } // [B1, A4_2]
1260test { try toUnicodeFail("6\xe0\xa1\x8f\xef\xbd\xa1-\xf0\x91\x88\xb4"); } // [B1, V3]2318test { try toUnicodeFail("6\xe0\xa1\x8f\xef\xbd\xa1-\xf0\x91\x88\xb4"); } // [B1, V3]
2319test { try toAsciiFail("6\xe0\xa1\x8f\xef\xbd\xa1-\xf0\x91\x88\xb4", false); } // [B1, V3]
2320test { try toAsciiFail("6\xe0\xa1\x8f\xef\xbd\xa1-\xf0\x91\x88\xb4", true); } // [B1, V3]
1261test { try toUnicodeFail("6\xe0\xa1\x8f\xe3\x80\x82-\xf0\x91\x88\xb4"); } // [B1, V3]2321test { try toUnicodeFail("6\xe0\xa1\x8f\xe3\x80\x82-\xf0\x91\x88\xb4"); } // [B1, V3]
2322test { try toAsciiFail("6\xe0\xa1\x8f\xe3\x80\x82-\xf0\x91\x88\xb4", false); } // [B1, V3]
2323test { try toAsciiFail("6\xe0\xa1\x8f\xe3\x80\x82-\xf0\x91\x88\xb4", true); } // [B1, V3]
1262test { try toUnicodeFail("xn--6-jjd.xn----6n8i"); } // [B1, V3]2324test { try toUnicodeFail("xn--6-jjd.xn----6n8i"); } // [B1, V3]
2325test { try toAsciiFail("xn--6-jjd.xn----6n8i", false); } // [B1, V3]
2326test { try toAsciiFail("xn--6-jjd.xn----6n8i", true); } // [B1, V3]
1263test { try toUnicodeFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xef\xbd\xa1\xe0\xab\x8d\xcf\x82\xf0\x9e\xb0\x8e\xe0\xa3\x96"); } // [B1, C2, V6, V7]2327test { try toUnicodeFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xef\xbd\xa1\xe0\xab\x8d\xcf\x82\xf0\x9e\xb0\x8e\xe0\xa3\x96"); } // [B1, C2, V6, V7]
2328test { try toAsciiFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xef\xbd\xa1\xe0\xab\x8d\xcf\x82\xf0\x9e\xb0\x8e\xe0\xa3\x96", false); } // [B1, C2, V6, V7]
2329test { try toAsciiFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xef\xbd\xa1\xe0\xab\x8d\xcf\x82\xf0\x9e\xb0\x8e\xe0\xa3\x96", true); } // [B1, B5, B6, V6, V7]
1264test { try toUnicodeFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xe3\x80\x82\xe0\xab\x8d\xcf\x82\xf0\x9e\xb0\x8e\xe0\xa3\x96"); } // [B1, C2, V6, V7]2330test { try toUnicodeFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xe3\x80\x82\xe0\xab\x8d\xcf\x82\xf0\x9e\xb0\x8e\xe0\xa3\x96"); } // [B1, C2, V6, V7]
2331test { try toAsciiFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xe3\x80\x82\xe0\xab\x8d\xcf\x82\xf0\x9e\xb0\x8e\xe0\xa3\x96", false); } // [B1, C2, V6, V7]
2332test { try toAsciiFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xe3\x80\x82\xe0\xab\x8d\xcf\x82\xf0\x9e\xb0\x8e\xe0\xa3\x96", true); } // [B1, B5, B6, V6, V7]
1265test { try toUnicodeFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xe3\x80\x82\xe0\xab\x8d\xce\xa3\xf0\x9e\xb0\x8e\xe0\xa3\x96"); } // [B1, C2, V6, V7]2333test { try toUnicodeFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xe3\x80\x82\xe0\xab\x8d\xce\xa3\xf0\x9e\xb0\x8e\xe0\xa3\x96"); } // [B1, C2, V6, V7]
2334test { try toAsciiFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xe3\x80\x82\xe0\xab\x8d\xce\xa3\xf0\x9e\xb0\x8e\xe0\xa3\x96", false); } // [B1, C2, V6, V7]
2335test { try toAsciiFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xe3\x80\x82\xe0\xab\x8d\xce\xa3\xf0\x9e\xb0\x8e\xe0\xa3\x96", true); } // [B1, B5, B6, V6, V7]
1266test { try toUnicodeFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xe3\x80\x82\xe0\xab\x8d\xcf\x83\xf0\x9e\xb0\x8e\xe0\xa3\x96"); } // [B1, C2, V6, V7]2336test { try toUnicodeFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xe3\x80\x82\xe0\xab\x8d\xcf\x83\xf0\x9e\xb0\x8e\xe0\xa3\x96"); } // [B1, C2, V6, V7]
2337test { try toAsciiFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xe3\x80\x82\xe0\xab\x8d\xcf\x83\xf0\x9e\xb0\x8e\xe0\xa3\x96", false); } // [B1, C2, V6, V7]
2338test { try toAsciiFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xe3\x80\x82\xe0\xab\x8d\xcf\x83\xf0\x9e\xb0\x8e\xe0\xa3\x96", true); } // [B1, B5, B6, V6, V7]
1267test { try toUnicodeFail("xn--oo0d1330n.xn--4xa21xcwbfz15g"); } // [B1, B5, B6, V6, V7]2339test { try toUnicodeFail("xn--oo0d1330n.xn--4xa21xcwbfz15g"); } // [B1, B5, B6, V6, V7]
2340test { try toAsciiFail("xn--oo0d1330n.xn--4xa21xcwbfz15g", false); } // [B1, B5, B6, V6, V7]
2341test { try toAsciiFail("xn--oo0d1330n.xn--4xa21xcwbfz15g", true); } // [B1, B5, B6, V6, V7]
1268test { try toUnicodeFail("xn--1ugx105gq26y.xn--4xa21xcwbfz15g"); } // [B1, C2, V6, V7]2342test { try toUnicodeFail("xn--1ugx105gq26y.xn--4xa21xcwbfz15g"); } // [B1, C2, V6, V7]
2343test { try toAsciiFail("xn--1ugx105gq26y.xn--4xa21xcwbfz15g", false); } // [B1, C2, V6, V7]
2344test { try toAsciiFail("xn--1ugx105gq26y.xn--4xa21xcwbfz15g", true); } // [B1, C2, V6, V7]
1269test { try toUnicodeFail("xn--1ugx105gq26y.xn--3xa41xcwbfz15g"); } // [B1, C2, V6, V7]2345test { try toUnicodeFail("xn--1ugx105gq26y.xn--3xa41xcwbfz15g"); } // [B1, C2, V6, V7]
2346test { try toAsciiFail("xn--1ugx105gq26y.xn--3xa41xcwbfz15g", false); } // [B1, C2, V6, V7]
2347test { try toAsciiFail("xn--1ugx105gq26y.xn--3xa41xcwbfz15g", true); } // [B1, C2, V6, V7]
1270test { try toUnicodeFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xef\xbd\xa1\xe0\xab\x8d\xce\xa3\xf0\x9e\xb0\x8e\xe0\xa3\x96"); } // [B1, C2, V6, V7]2348test { try toUnicodeFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xef\xbd\xa1\xe0\xab\x8d\xce\xa3\xf0\x9e\xb0\x8e\xe0\xa3\x96"); } // [B1, C2, V6, V7]
2349test { try toAsciiFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xef\xbd\xa1\xe0\xab\x8d\xce\xa3\xf0\x9e\xb0\x8e\xe0\xa3\x96", false); } // [B1, C2, V6, V7]
2350test { try toAsciiFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xef\xbd\xa1\xe0\xab\x8d\xce\xa3\xf0\x9e\xb0\x8e\xe0\xa3\x96", true); } // [B1, B5, B6, V6, V7]
1271test { try toUnicodeFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xef\xbd\xa1\xe0\xab\x8d\xcf\x83\xf0\x9e\xb0\x8e\xe0\xa3\x96"); } // [B1, C2, V6, V7]2351test { try toUnicodeFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xef\xbd\xa1\xe0\xab\x8d\xcf\x83\xf0\x9e\xb0\x8e\xe0\xa3\x96"); } // [B1, C2, V6, V7]
2352test { try toAsciiFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xef\xbd\xa1\xe0\xab\x8d\xcf\x83\xf0\x9e\xb0\x8e\xe0\xa3\x96", false); } // [B1, C2, V6, V7]
2353test { try toAsciiFail("\xe2\x80\x8d\xf1\x8b\x8c\xbf\xf0\x90\xb9\xb0\xef\xbd\xa1\xe0\xab\x8d\xcf\x83\xf0\x9e\xb0\x8e\xe0\xa3\x96", true); } // [B1, B5, B6, V6, V7]
1272test { try toUnicodeFail("\xe2\x92\x88\xf1\x9f\x84\x9c\xe1\x82\xb3\xe2\x92\xaa\xef\xbc\x8e\xe0\xb7\x8a\xf2\x98\x98\xb6\xe0\xa2\x8b\xf0\x90\xb9\xa2"); } // [B1, V6, V7, U1]2354test { try toUnicodeFail("\xe2\x92\x88\xf1\x9f\x84\x9c\xe1\x82\xb3\xe2\x92\xaa\xef\xbc\x8e\xe0\xb7\x8a\xf2\x98\x98\xb6\xe0\xa2\x8b\xf0\x90\xb9\xa2"); } // [B1, V6, V7, U1]
2355test { try toAsciiFail("\xe2\x92\x88\xf1\x9f\x84\x9c\xe1\x82\xb3\xe2\x92\xaa\xef\xbc\x8e\xe0\xb7\x8a\xf2\x98\x98\xb6\xe0\xa2\x8b\xf0\x90\xb9\xa2", false); } // [B1, V6, V7, U1]
2356test { try toAsciiFail("\xe2\x92\x88\xf1\x9f\x84\x9c\xe1\x82\xb3\xe2\x92\xaa\xef\xbc\x8e\xe0\xb7\x8a\xf2\x98\x98\xb6\xe0\xa2\x8b\xf0\x90\xb9\xa2", true); } // [B1, V6, V7, U1]
1273test { try toUnicodeFail("1.\xf1\x9f\x84\x9c\xe1\x82\xb3(o).\xe0\xb7\x8a\xf2\x98\x98\xb6\xe0\xa2\x8b\xf0\x90\xb9\xa2"); } // [B1, B6, V6, V7, U1]2357test { try toUnicodeFail("1.\xf1\x9f\x84\x9c\xe1\x82\xb3(o).\xe0\xb7\x8a\xf2\x98\x98\xb6\xe0\xa2\x8b\xf0\x90\xb9\xa2"); } // [B1, B6, V6, V7, U1]
2358test { try toAsciiFail("1.\xf1\x9f\x84\x9c\xe1\x82\xb3(o).\xe0\xb7\x8a\xf2\x98\x98\xb6\xe0\xa2\x8b\xf0\x90\xb9\xa2", false); } // [B1, B6, V6, V7, U1]
2359test { try toAsciiFail("1.\xf1\x9f\x84\x9c\xe1\x82\xb3(o).\xe0\xb7\x8a\xf2\x98\x98\xb6\xe0\xa2\x8b\xf0\x90\xb9\xa2", true); } // [B1, B6, V6, V7, U1]
1274test { try toUnicodeFail("1.\xf1\x9f\x84\x9c\xe2\xb4\x93(o).\xe0\xb7\x8a\xf2\x98\x98\xb6\xe0\xa2\x8b\xf0\x90\xb9\xa2"); } // [B1, B6, V6, V7, U1]2360test { try toUnicodeFail("1.\xf1\x9f\x84\x9c\xe2\xb4\x93(o).\xe0\xb7\x8a\xf2\x98\x98\xb6\xe0\xa2\x8b\xf0\x90\xb9\xa2"); } // [B1, B6, V6, V7, U1]
2361test { try toAsciiFail("1.\xf1\x9f\x84\x9c\xe2\xb4\x93(o).\xe0\xb7\x8a\xf2\x98\x98\xb6\xe0\xa2\x8b\xf0\x90\xb9\xa2", false); } // [B1, B6, V6, V7, U1]
2362test { try toAsciiFail("1.\xf1\x9f\x84\x9c\xe2\xb4\x93(o).\xe0\xb7\x8a\xf2\x98\x98\xb6\xe0\xa2\x8b\xf0\x90\xb9\xa2", true); } // [B1, B6, V6, V7, U1]
1275test { try toUnicodeFail("1.\xf1\x9f\x84\x9c\xe1\x82\xb3(O).\xe0\xb7\x8a\xf2\x98\x98\xb6\xe0\xa2\x8b\xf0\x90\xb9\xa2"); } // [B1, B6, V6, V7, U1]2363test { try toUnicodeFail("1.\xf1\x9f\x84\x9c\xe1\x82\xb3(O).\xe0\xb7\x8a\xf2\x98\x98\xb6\xe0\xa2\x8b\xf0\x90\xb9\xa2"); } // [B1, B6, V6, V7, U1]
2364test { try toAsciiFail("1.\xf1\x9f\x84\x9c\xe1\x82\xb3(O).\xe0\xb7\x8a\xf2\x98\x98\xb6\xe0\xa2\x8b\xf0\x90\xb9\xa2", false); } // [B1, B6, V6, V7, U1]
2365test { try toAsciiFail("1.\xf1\x9f\x84\x9c\xe1\x82\xb3(O).\xe0\xb7\x8a\xf2\x98\x98\xb6\xe0\xa2\x8b\xf0\x90\xb9\xa2", true); } // [B1, B6, V6, V7, U1]
1276test { try toUnicodeFail("1.xn--(o)-ej1bu5389e.xn--3xb99xpx1yoes3e"); } // [B1, B6, V6, V7, U1]2366test { try toUnicodeFail("1.xn--(o)-ej1bu5389e.xn--3xb99xpx1yoes3e"); } // [B1, B6, V6, V7, U1]
2367test { try toAsciiFail("1.xn--(o)-ej1bu5389e.xn--3xb99xpx1yoes3e", false); } // [B1, B6, V6, V7, U1]
2368test { try toAsciiFail("1.xn--(o)-ej1bu5389e.xn--3xb99xpx1yoes3e", true); } // [B1, B6, V6, V7, U1]
1277test { try toUnicodeFail("\xe2\x92\x88\xf1\x9f\x84\x9c\xe2\xb4\x93\xe2\x92\xaa\xef\xbc\x8e\xe0\xb7\x8a\xf2\x98\x98\xb6\xe0\xa2\x8b\xf0\x90\xb9\xa2"); } // [B1, V6, V7, U1]2369test { try toUnicodeFail("\xe2\x92\x88\xf1\x9f\x84\x9c\xe2\xb4\x93\xe2\x92\xaa\xef\xbc\x8e\xe0\xb7\x8a\xf2\x98\x98\xb6\xe0\xa2\x8b\xf0\x90\xb9\xa2"); } // [B1, V6, V7, U1]
2370test { try toAsciiFail("\xe2\x92\x88\xf1\x9f\x84\x9c\xe2\xb4\x93\xe2\x92\xaa\xef\xbc\x8e\xe0\xb7\x8a\xf2\x98\x98\xb6\xe0\xa2\x8b\xf0\x90\xb9\xa2", false); } // [B1, V6, V7, U1]
2371test { try toAsciiFail("\xe2\x92\x88\xf1\x9f\x84\x9c\xe2\xb4\x93\xe2\x92\xaa\xef\xbc\x8e\xe0\xb7\x8a\xf2\x98\x98\xb6\xe0\xa2\x8b\xf0\x90\xb9\xa2", true); } // [B1, V6, V7, U1]
1278test { try toUnicodeFail("xn--(o)-ge4ax01c3t74t.xn--3xb99xpx1yoes3e"); } // [B1, V6, V7, U1]2372test { try toUnicodeFail("xn--(o)-ge4ax01c3t74t.xn--3xb99xpx1yoes3e"); } // [B1, V6, V7, U1]
2373test { try toAsciiFail("xn--(o)-ge4ax01c3t74t.xn--3xb99xpx1yoes3e", false); } // [B1, V6, V7, U1]
2374test { try toAsciiFail("xn--(o)-ge4ax01c3t74t.xn--3xb99xpx1yoes3e", true); } // [B1, V6, V7, U1]
1279test { try toUnicodeFail("1.xn--(o)-7sn88849j.xn--3xb99xpx1yoes3e"); } // [B1, B6, V6, V7, U1]2375test { try toUnicodeFail("1.xn--(o)-7sn88849j.xn--3xb99xpx1yoes3e"); } // [B1, B6, V6, V7, U1]
2376test { try toAsciiFail("1.xn--(o)-7sn88849j.xn--3xb99xpx1yoes3e", false); } // [B1, B6, V6, V7, U1]
2377test { try toAsciiFail("1.xn--(o)-7sn88849j.xn--3xb99xpx1yoes3e", true); } // [B1, B6, V6, V7, U1]
1280test { try toUnicodeFail("xn--tsh0ds63atl31n.xn--3xb99xpx1yoes3e"); } // [B1, V6, V7]2378test { try toUnicodeFail("xn--tsh0ds63atl31n.xn--3xb99xpx1yoes3e"); } // [B1, V6, V7]
2379test { try toAsciiFail("xn--tsh0ds63atl31n.xn--3xb99xpx1yoes3e", false); } // [B1, V6, V7]
2380test { try toAsciiFail("xn--tsh0ds63atl31n.xn--3xb99xpx1yoes3e", true); } // [B1, V6, V7]
1281test { try toUnicodeFail("xn--rnd762h7cx3027d.xn--3xb99xpx1yoes3e"); } // [B1, V6, V7]2381test { try toUnicodeFail("xn--rnd762h7cx3027d.xn--3xb99xpx1yoes3e"); } // [B1, V6, V7]
2382test { try toAsciiFail("xn--rnd762h7cx3027d.xn--3xb99xpx1yoes3e", false); } // [B1, V6, V7]
2383test { try toAsciiFail("xn--rnd762h7cx3027d.xn--3xb99xpx1yoes3e", true); } // [B1, V6, V7]
1282test { try toUnicodePass("\xf0\x9e\xa4\xb7.\xf0\x90\xae\x90\xf0\x9e\xa2\x81\xf0\x90\xb9\xa0\xd8\xa4", "\xf0\x9e\xa4\xb7.\xf0\x90\xae\x90\xf0\x9e\xa2\x81\xf0\x90\xb9\xa0\xd8\xa4"); }2384test { try toUnicodePass("\xf0\x9e\xa4\xb7.\xf0\x90\xae\x90\xf0\x9e\xa2\x81\xf0\x90\xb9\xa0\xd8\xa4", "\xf0\x9e\xa4\xb7.\xf0\x90\xae\x90\xf0\x9e\xa2\x81\xf0\x90\xb9\xa0\xd8\xa4"); }
1283test { try toAsciiPass("\xf0\x9e\xa4\xb7.\xf0\x90\xae\x90\xf0\x9e\xa2\x81\xf0\x90\xb9\xa0\xd8\xa4", "xn--ve6h.xn--jgb1694kz0b2176a", false); }2385test { try toAsciiPass("\xf0\x9e\xa4\xb7.\xf0\x90\xae\x90\xf0\x9e\xa2\x81\xf0\x90\xb9\xa0\xd8\xa4", "xn--ve6h.xn--jgb1694kz0b2176a", false); }
1284test { try toAsciiPass("\xf0\x9e\xa4\xb7.\xf0\x90\xae\x90\xf0\x9e\xa2\x81\xf0\x90\xb9\xa0\xd8\xa4", "xn--ve6h.xn--jgb1694kz0b2176a", true); }2386test { try toAsciiPass("\xf0\x9e\xa4\xb7.\xf0\x90\xae\x90\xf0\x9e\xa2\x81\xf0\x90\xb9\xa0\xd8\xa4", "xn--ve6h.xn--jgb1694kz0b2176a", true); }
...@@ -1295,32 +2397,86 @@ test { try toUnicodePass("xn--ve6h.xn--jgb1694kz0b2176a", "\xf0\x9e\xa4\xb7.\xf0...@@ -1295,32 +2397,86 @@ test { try toUnicodePass("xn--ve6h.xn--jgb1694kz0b2176a", "\xf0\x9e\xa4\xb7.\xf0
1295test { try toAsciiPass("xn--ve6h.xn--jgb1694kz0b2176a", "xn--ve6h.xn--jgb1694kz0b2176a", false); }2397test { try toAsciiPass("xn--ve6h.xn--jgb1694kz0b2176a", "xn--ve6h.xn--jgb1694kz0b2176a", false); }
1296test { try toAsciiPass("xn--ve6h.xn--jgb1694kz0b2176a", "xn--ve6h.xn--jgb1694kz0b2176a", true); }2398test { try toAsciiPass("xn--ve6h.xn--jgb1694kz0b2176a", "xn--ve6h.xn--jgb1694kz0b2176a", true); }
1297test { try toUnicodeFail("\xf0\x90\xb2\x88-\xef\xbd\xa1\xf0\x91\x84\xb3\xf1\xa2\x8c\xbb"); } // [B1, B3, V3, V6, V7]2399test { try toUnicodeFail("\xf0\x90\xb2\x88-\xef\xbd\xa1\xf0\x91\x84\xb3\xf1\xa2\x8c\xbb"); } // [B1, B3, V3, V6, V7]
2400test { try toAsciiFail("\xf0\x90\xb2\x88-\xef\xbd\xa1\xf0\x91\x84\xb3\xf1\xa2\x8c\xbb", false); } // [B1, B3, V3, V6, V7]
2401test { try toAsciiFail("\xf0\x90\xb2\x88-\xef\xbd\xa1\xf0\x91\x84\xb3\xf1\xa2\x8c\xbb", true); } // [B1, B3, V3, V6, V7]
1298test { try toUnicodeFail("\xf0\x90\xb2\x88-\xe3\x80\x82\xf0\x91\x84\xb3\xf1\xa2\x8c\xbb"); } // [B1, B3, V3, V6, V7]2402test { try toUnicodeFail("\xf0\x90\xb2\x88-\xe3\x80\x82\xf0\x91\x84\xb3\xf1\xa2\x8c\xbb"); } // [B1, B3, V3, V6, V7]
2403test { try toAsciiFail("\xf0\x90\xb2\x88-\xe3\x80\x82\xf0\x91\x84\xb3\xf1\xa2\x8c\xbb", false); } // [B1, B3, V3, V6, V7]
2404test { try toAsciiFail("\xf0\x90\xb2\x88-\xe3\x80\x82\xf0\x91\x84\xb3\xf1\xa2\x8c\xbb", true); } // [B1, B3, V3, V6, V7]
1299test { try toUnicodeFail("\xf0\x90\xb3\x88-\xe3\x80\x82\xf0\x91\x84\xb3\xf1\xa2\x8c\xbb"); } // [B1, B3, V3, V6, V7]2405test { try toUnicodeFail("\xf0\x90\xb3\x88-\xe3\x80\x82\xf0\x91\x84\xb3\xf1\xa2\x8c\xbb"); } // [B1, B3, V3, V6, V7]
2406test { try toAsciiFail("\xf0\x90\xb3\x88-\xe3\x80\x82\xf0\x91\x84\xb3\xf1\xa2\x8c\xbb", false); } // [B1, B3, V3, V6, V7]
2407test { try toAsciiFail("\xf0\x90\xb3\x88-\xe3\x80\x82\xf0\x91\x84\xb3\xf1\xa2\x8c\xbb", true); } // [B1, B3, V3, V6, V7]
1300test { try toUnicodeFail("xn----ue6i.xn--v80d6662t"); } // [B1, B3, V3, V6, V7]2408test { try toUnicodeFail("xn----ue6i.xn--v80d6662t"); } // [B1, B3, V3, V6, V7]
2409test { try toAsciiFail("xn----ue6i.xn--v80d6662t", false); } // [B1, B3, V3, V6, V7]
2410test { try toAsciiFail("xn----ue6i.xn--v80d6662t", true); } // [B1, B3, V3, V6, V7]
1301test { try toUnicodeFail("\xf0\x90\xb3\x88-\xef\xbd\xa1\xf0\x91\x84\xb3\xf1\xa2\x8c\xbb"); } // [B1, B3, V3, V6, V7]2411test { try toUnicodeFail("\xf0\x90\xb3\x88-\xef\xbd\xa1\xf0\x91\x84\xb3\xf1\xa2\x8c\xbb"); } // [B1, B3, V3, V6, V7]
2412test { try toAsciiFail("\xf0\x90\xb3\x88-\xef\xbd\xa1\xf0\x91\x84\xb3\xf1\xa2\x8c\xbb", false); } // [B1, B3, V3, V6, V7]
2413test { try toAsciiFail("\xf0\x90\xb3\x88-\xef\xbd\xa1\xf0\x91\x84\xb3\xf1\xa2\x8c\xbb", true); } // [B1, B3, V3, V6, V7]
1302test { try toUnicodeFail("-\xf3\xa0\x89\x96\xea\xa1\xa7\xef\xbc\x8e\xf3\xa0\x8a\x82\xf1\x87\x86\x83\xf0\x9f\x84\x89"); } // [V3, V7, U1]2414test { try toUnicodeFail("-\xf3\xa0\x89\x96\xea\xa1\xa7\xef\xbc\x8e\xf3\xa0\x8a\x82\xf1\x87\x86\x83\xf0\x9f\x84\x89"); } // [V3, V7, U1]
2415test { try toAsciiFail("-\xf3\xa0\x89\x96\xea\xa1\xa7\xef\xbc\x8e\xf3\xa0\x8a\x82\xf1\x87\x86\x83\xf0\x9f\x84\x89", false); } // [V3, V7, U1]
2416test { try toAsciiFail("-\xf3\xa0\x89\x96\xea\xa1\xa7\xef\xbc\x8e\xf3\xa0\x8a\x82\xf1\x87\x86\x83\xf0\x9f\x84\x89", true); } // [V3, V7, U1]
1303test { try toUnicodeFail("-\xf3\xa0\x89\x96\xea\xa1\xa7.\xf3\xa0\x8a\x82\xf1\x87\x86\x838,"); } // [V3, V7, U1]2417test { try toUnicodeFail("-\xf3\xa0\x89\x96\xea\xa1\xa7.\xf3\xa0\x8a\x82\xf1\x87\x86\x838,"); } // [V3, V7, U1]
2418test { try toAsciiFail("-\xf3\xa0\x89\x96\xea\xa1\xa7.\xf3\xa0\x8a\x82\xf1\x87\x86\x838,", false); } // [V3, V7, U1]
2419test { try toAsciiFail("-\xf3\xa0\x89\x96\xea\xa1\xa7.\xf3\xa0\x8a\x82\xf1\x87\x86\x838,", true); } // [V3, V7, U1]
1304test { try toUnicodeFail("xn----hg4ei0361g.xn--8,-k362evu488a"); } // [V3, V7, U1]2420test { try toUnicodeFail("xn----hg4ei0361g.xn--8,-k362evu488a"); } // [V3, V7, U1]
2421test { try toAsciiFail("xn----hg4ei0361g.xn--8,-k362evu488a", false); } // [V3, V7, U1]
2422test { try toAsciiFail("xn----hg4ei0361g.xn--8,-k362evu488a", true); } // [V3, V7, U1]
1305test { try toUnicodeFail("xn----hg4ei0361g.xn--207ht163h7m94c"); } // [V3, V7]2423test { try toUnicodeFail("xn----hg4ei0361g.xn--207ht163h7m94c"); } // [V3, V7]
2424test { try toAsciiFail("xn----hg4ei0361g.xn--207ht163h7m94c", false); } // [V3, V7]
2425test { try toAsciiFail("xn----hg4ei0361g.xn--207ht163h7m94c", true); } // [V3, V7]
1306test { try toUnicodeFail("\xf3\xa0\xbe\x9b\xf3\xa0\x88\xb4\xe8\x87\xaf\xf0\xa7\x94\xa4.\xdd\xa8\xf0\x9d\x9f\x9d"); } // [B1, V7]2426test { try toUnicodeFail("\xf3\xa0\xbe\x9b\xf3\xa0\x88\xb4\xe8\x87\xaf\xf0\xa7\x94\xa4.\xdd\xa8\xf0\x9d\x9f\x9d"); } // [B1, V7]
2427test { try toAsciiFail("\xf3\xa0\xbe\x9b\xf3\xa0\x88\xb4\xe8\x87\xaf\xf0\xa7\x94\xa4.\xdd\xa8\xf0\x9d\x9f\x9d", false); } // [B1, V7]
2428test { try toAsciiFail("\xf3\xa0\xbe\x9b\xf3\xa0\x88\xb4\xe8\x87\xaf\xf0\xa7\x94\xa4.\xdd\xa8\xf0\x9d\x9f\x9d", true); } // [B1, V7]
1307test { try toUnicodeFail("\xf3\xa0\xbe\x9b\xf3\xa0\x88\xb4\xe8\x87\xaf\xf0\xa7\x94\xa4.\xdd\xa85"); } // [B1, V7]2429test { try toUnicodeFail("\xf3\xa0\xbe\x9b\xf3\xa0\x88\xb4\xe8\x87\xaf\xf0\xa7\x94\xa4.\xdd\xa85"); } // [B1, V7]
2430test { try toAsciiFail("\xf3\xa0\xbe\x9b\xf3\xa0\x88\xb4\xe8\x87\xaf\xf0\xa7\x94\xa4.\xdd\xa85", false); } // [B1, V7]
2431test { try toAsciiFail("\xf3\xa0\xbe\x9b\xf3\xa0\x88\xb4\xe8\x87\xaf\xf0\xa7\x94\xa4.\xdd\xa85", true); } // [B1, V7]
1308test { try toUnicodeFail("xn--zb1at733hm579ddhla.xn--5-b5c"); } // [B1, V7]2432test { try toUnicodeFail("xn--zb1at733hm579ddhla.xn--5-b5c"); } // [B1, V7]
2433test { try toAsciiFail("xn--zb1at733hm579ddhla.xn--5-b5c", false); } // [B1, V7]
2434test { try toAsciiFail("xn--zb1at733hm579ddhla.xn--5-b5c", true); } // [B1, V7]
1309test { try toUnicodeFail("\xe2\x89\xae\xf0\x90\xb9\xa3\xef\xbc\x8e\xf0\x9d\xa8\xbf"); } // [B1, V6]2435test { try toUnicodeFail("\xe2\x89\xae\xf0\x90\xb9\xa3\xef\xbc\x8e\xf0\x9d\xa8\xbf"); } // [B1, V6]
2436test { try toAsciiFail("\xe2\x89\xae\xf0\x90\xb9\xa3\xef\xbc\x8e\xf0\x9d\xa8\xbf", false); } // [B1, V6]
2437test { try toAsciiFail("\xe2\x89\xae\xf0\x90\xb9\xa3\xef\xbc\x8e\xf0\x9d\xa8\xbf", true); } // [B1, V6]
1310test { try toUnicodeFail("<\xcc\xb8\xf0\x90\xb9\xa3\xef\xbc\x8e\xf0\x9d\xa8\xbf"); } // [B1, V6]2438test { try toUnicodeFail("<\xcc\xb8\xf0\x90\xb9\xa3\xef\xbc\x8e\xf0\x9d\xa8\xbf"); } // [B1, V6]
2439test { try toAsciiFail("<\xcc\xb8\xf0\x90\xb9\xa3\xef\xbc\x8e\xf0\x9d\xa8\xbf", false); } // [B1, V6]
2440test { try toAsciiFail("<\xcc\xb8\xf0\x90\xb9\xa3\xef\xbc\x8e\xf0\x9d\xa8\xbf", true); } // [B1, V6]
1311test { try toUnicodeFail("\xe2\x89\xae\xf0\x90\xb9\xa3.\xf0\x9d\xa8\xbf"); } // [B1, V6]2441test { try toUnicodeFail("\xe2\x89\xae\xf0\x90\xb9\xa3.\xf0\x9d\xa8\xbf"); } // [B1, V6]
2442test { try toAsciiFail("\xe2\x89\xae\xf0\x90\xb9\xa3.\xf0\x9d\xa8\xbf", false); } // [B1, V6]
2443test { try toAsciiFail("\xe2\x89\xae\xf0\x90\xb9\xa3.\xf0\x9d\xa8\xbf", true); } // [B1, V6]
1312test { try toUnicodeFail("<\xcc\xb8\xf0\x90\xb9\xa3.\xf0\x9d\xa8\xbf"); } // [B1, V6]2444test { try toUnicodeFail("<\xcc\xb8\xf0\x90\xb9\xa3.\xf0\x9d\xa8\xbf"); } // [B1, V6]
2445test { try toAsciiFail("<\xcc\xb8\xf0\x90\xb9\xa3.\xf0\x9d\xa8\xbf", false); } // [B1, V6]
2446test { try toAsciiFail("<\xcc\xb8\xf0\x90\xb9\xa3.\xf0\x9d\xa8\xbf", true); } // [B1, V6]
1313test { try toUnicodeFail("xn--gdh1504g.xn--e92h"); } // [B1, V6]2447test { try toUnicodeFail("xn--gdh1504g.xn--e92h"); } // [B1, V6]
2448test { try toAsciiFail("xn--gdh1504g.xn--e92h", false); } // [B1, V6]
2449test { try toAsciiFail("xn--gdh1504g.xn--e92h", true); } // [B1, V6]
1314test { try toUnicodeFail("\xf0\x90\xb9\xaf\xe1\xaf\x9b\xe0\xa9\x8d\xef\xbd\xa1\xe8\x84\xa5"); } // [B1]2450test { try toUnicodeFail("\xf0\x90\xb9\xaf\xe1\xaf\x9b\xe0\xa9\x8d\xef\xbd\xa1\xe8\x84\xa5"); } // [B1]
2451test { try toAsciiFail("\xf0\x90\xb9\xaf\xe1\xaf\x9b\xe0\xa9\x8d\xef\xbd\xa1\xe8\x84\xa5", false); } // [B1]
2452test { try toAsciiFail("\xf0\x90\xb9\xaf\xe1\xaf\x9b\xe0\xa9\x8d\xef\xbd\xa1\xe8\x84\xa5", true); } // [B1]
1315test { try toUnicodeFail("\xf0\x90\xb9\xaf\xe1\xaf\x9b\xe0\xa9\x8d\xe3\x80\x82\xe8\x84\xa5"); } // [B1]2453test { try toUnicodeFail("\xf0\x90\xb9\xaf\xe1\xaf\x9b\xe0\xa9\x8d\xe3\x80\x82\xe8\x84\xa5"); } // [B1]
2454test { try toAsciiFail("\xf0\x90\xb9\xaf\xe1\xaf\x9b\xe0\xa9\x8d\xe3\x80\x82\xe8\x84\xa5", false); } // [B1]
2455test { try toAsciiFail("\xf0\x90\xb9\xaf\xe1\xaf\x9b\xe0\xa9\x8d\xe3\x80\x82\xe8\x84\xa5", true); } // [B1]
1316test { try toUnicodeFail("xn--ybc101g3m1p.xn--740a"); } // [B1]2456test { try toUnicodeFail("xn--ybc101g3m1p.xn--740a"); } // [B1]
2457test { try toAsciiFail("xn--ybc101g3m1p.xn--740a", false); } // [B1]
2458test { try toAsciiFail("xn--ybc101g3m1p.xn--740a", true); } // [B1]
1317test { try toUnicodeFail("\xe1\xad\x84\xe1\x85\x9f\xf0\x9e\xb7\xbf\xf2\x83\x80\x8d.-"); } // [B1, B5, V3, V6, V7]2459test { try toUnicodeFail("\xe1\xad\x84\xe1\x85\x9f\xf0\x9e\xb7\xbf\xf2\x83\x80\x8d.-"); } // [B1, B5, V3, V6, V7]
2460test { try toAsciiFail("\xe1\xad\x84\xe1\x85\x9f\xf0\x9e\xb7\xbf\xf2\x83\x80\x8d.-", false); } // [B1, B5, V3, V6, V7]
2461test { try toAsciiFail("\xe1\xad\x84\xe1\x85\x9f\xf0\x9e\xb7\xbf\xf2\x83\x80\x8d.-", true); } // [B1, B5, V3, V6, V7]
1318test { try toUnicodeFail("xn--1uf9538sxny9a.-"); } // [B1, B5, V3, V6, V7]2462test { try toUnicodeFail("xn--1uf9538sxny9a.-"); } // [B1, B5, V3, V6, V7]
2463test { try toAsciiFail("xn--1uf9538sxny9a.-", false); } // [B1, B5, V3, V6, V7]
2464test { try toAsciiFail("xn--1uf9538sxny9a.-", true); } // [B1, B5, V3, V6, V7]
1319test { try toUnicodeFail("xn--osd971cpx70btgt8b.-"); } // [B1, B5, V3, V6, V7]2465test { try toUnicodeFail("xn--osd971cpx70btgt8b.-"); } // [B1, B5, V3, V6, V7]
2466test { try toAsciiFail("xn--osd971cpx70btgt8b.-", false); } // [B1, B5, V3, V6, V7]
2467test { try toAsciiFail("xn--osd971cpx70btgt8b.-", true); } // [B1, B5, V3, V6, V7]
1320test { try toUnicodeFail("\xe2\x80\x8c\xef\xbd\xa1\xcd\x94"); } // [C1, V6]2468test { try toUnicodeFail("\xe2\x80\x8c\xef\xbd\xa1\xcd\x94"); } // [C1, V6]
2469test { try toAsciiFail("\xe2\x80\x8c\xef\xbd\xa1\xcd\x94", false); } // [C1, V6]
2470test { try toAsciiFail("\xe2\x80\x8c\xef\xbd\xa1\xcd\x94", true); } // [V6, A4_2]
1321test { try toUnicodeFail("\xe2\x80\x8c\xe3\x80\x82\xcd\x94"); } // [C1, V6]2471test { try toUnicodeFail("\xe2\x80\x8c\xe3\x80\x82\xcd\x94"); } // [C1, V6]
2472test { try toAsciiFail("\xe2\x80\x8c\xe3\x80\x82\xcd\x94", false); } // [C1, V6]
2473test { try toAsciiFail("\xe2\x80\x8c\xe3\x80\x82\xcd\x94", true); } // [V6, A4_2]
1322test { try toUnicodeFail(".xn--yua"); } // [V6, X4_2]2474test { try toUnicodeFail(".xn--yua"); } // [V6, X4_2]
2475test { try toAsciiFail(".xn--yua", false); } // [V6, A4_2]
2476test { try toAsciiFail(".xn--yua", true); } // [V6, A4_2]
1323test { try toUnicodeFail("xn--0ug.xn--yua"); } // [C1, V6]2477test { try toUnicodeFail("xn--0ug.xn--yua"); } // [C1, V6]
2478test { try toAsciiFail("xn--0ug.xn--yua", false); } // [C1, V6]
2479test { try toAsciiFail("xn--0ug.xn--yua", true); } // [C1, V6]
1324test { try toUnicodePass("\xf0\x9e\xa4\xa5\xf3\xa0\x85\xae\xef\xbc\x8e\xe1\xa1\x84\xe1\x82\xae", "\xf0\x9e\xa4\xa5.\xe1\xa1\x84\xe2\xb4\x8e"); }2480test { try toUnicodePass("\xf0\x9e\xa4\xa5\xf3\xa0\x85\xae\xef\xbc\x8e\xe1\xa1\x84\xe1\x82\xae", "\xf0\x9e\xa4\xa5.\xe1\xa1\x84\xe2\xb4\x8e"); }
1325test { try toAsciiPass("\xf0\x9e\xa4\xa5\xf3\xa0\x85\xae\xef\xbc\x8e\xe1\xa1\x84\xe1\x82\xae", "xn--de6h.xn--37e857h", false); }2481test { try toAsciiPass("\xf0\x9e\xa4\xa5\xf3\xa0\x85\xae\xef\xbc\x8e\xe1\xa1\x84\xe1\x82\xae", "xn--de6h.xn--37e857h", false); }
1326test { try toAsciiPass("\xf0\x9e\xa4\xa5\xf3\xa0\x85\xae\xef\xbc\x8e\xe1\xa1\x84\xe1\x82\xae", "xn--de6h.xn--37e857h", true); }2482test { try toAsciiPass("\xf0\x9e\xa4\xa5\xf3\xa0\x85\xae\xef\xbc\x8e\xe1\xa1\x84\xe1\x82\xae", "xn--de6h.xn--37e857h", true); }
...@@ -1358,290 +2514,842 @@ test { try toUnicodePass("\xf0\x9e\xa4\x83\xf3\xa0\x85\xae\xef\xbc\x8e\xe1\xa1\x...@@ -1358,290 +2514,842 @@ test { try toUnicodePass("\xf0\x9e\xa4\x83\xf3\xa0\x85\xae\xef\xbc\x8e\xe1\xa1\x
1358test { try toAsciiPass("\xf0\x9e\xa4\x83\xf3\xa0\x85\xae\xef\xbc\x8e\xe1\xa1\x84\xe2\xb4\x8e", "xn--de6h.xn--37e857h", false); }2514test { try toAsciiPass("\xf0\x9e\xa4\x83\xf3\xa0\x85\xae\xef\xbc\x8e\xe1\xa1\x84\xe2\xb4\x8e", "xn--de6h.xn--37e857h", false); }
1359test { try toAsciiPass("\xf0\x9e\xa4\x83\xf3\xa0\x85\xae\xef\xbc\x8e\xe1\xa1\x84\xe2\xb4\x8e", "xn--de6h.xn--37e857h", true); }2515test { try toAsciiPass("\xf0\x9e\xa4\x83\xf3\xa0\x85\xae\xef\xbc\x8e\xe1\xa1\x84\xe2\xb4\x8e", "xn--de6h.xn--37e857h", true); }
1360test { try toUnicodeFail("xn--de6h.xn--mnd799a"); } // [V7]2516test { try toUnicodeFail("xn--de6h.xn--mnd799a"); } // [V7]
2517test { try toAsciiFail("xn--de6h.xn--mnd799a", false); } // [V7]
2518test { try toAsciiFail("xn--de6h.xn--mnd799a", true); } // [V7]
1361test { try toUnicodePass("\xf0\x9e\xa4\xa5.\xe1\xa1\x84\xe1\x82\xae", "\xf0\x9e\xa4\xa5.\xe1\xa1\x84\xe2\xb4\x8e"); }2519test { try toUnicodePass("\xf0\x9e\xa4\xa5.\xe1\xa1\x84\xe1\x82\xae", "\xf0\x9e\xa4\xa5.\xe1\xa1\x84\xe2\xb4\x8e"); }
1362test { try toAsciiPass("\xf0\x9e\xa4\xa5.\xe1\xa1\x84\xe1\x82\xae", "xn--de6h.xn--37e857h", false); }2520test { try toAsciiPass("\xf0\x9e\xa4\xa5.\xe1\xa1\x84\xe1\x82\xae", "xn--de6h.xn--37e857h", false); }
1363test { try toAsciiPass("\xf0\x9e\xa4\xa5.\xe1\xa1\x84\xe1\x82\xae", "xn--de6h.xn--37e857h", true); }2521test { try toAsciiPass("\xf0\x9e\xa4\xa5.\xe1\xa1\x84\xe1\x82\xae", "xn--de6h.xn--37e857h", true); }
1364test { try toUnicodeFail("\xf0\x9e\xa4\xa7\xf0\x9d\xa8\xa8\xce\x9e\xef\xbc\x8e\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8"); } // [B2, B3, B6]2522test { try toUnicodeFail("\xf0\x9e\xa4\xa7\xf0\x9d\xa8\xa8\xce\x9e\xef\xbc\x8e\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8"); } // [B2, B3, B6]
2523test { try toAsciiFail("\xf0\x9e\xa4\xa7\xf0\x9d\xa8\xa8\xce\x9e\xef\xbc\x8e\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8", false); } // [B2, B3, B6]
2524test { try toAsciiFail("\xf0\x9e\xa4\xa7\xf0\x9d\xa8\xa8\xce\x9e\xef\xbc\x8e\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8", true); } // [B2, B3, B6]
1365test { try toUnicodeFail("\xf0\x9e\xa4\xa7\xf0\x9d\xa8\xa8\xce\x9e.\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8"); } // [B2, B3, B6]2525test { try toUnicodeFail("\xf0\x9e\xa4\xa7\xf0\x9d\xa8\xa8\xce\x9e.\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8"); } // [B2, B3, B6]
2526test { try toAsciiFail("\xf0\x9e\xa4\xa7\xf0\x9d\xa8\xa8\xce\x9e.\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8", false); } // [B2, B3, B6]
2527test { try toAsciiFail("\xf0\x9e\xa4\xa7\xf0\x9d\xa8\xa8\xce\x9e.\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8", true); } // [B2, B3, B6]
1366test { try toUnicodeFail("\xf0\x9e\xa4\xa7\xf0\x9d\xa8\xa8\xce\xbe.\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8"); } // [B2, B3, B6]2528test { try toUnicodeFail("\xf0\x9e\xa4\xa7\xf0\x9d\xa8\xa8\xce\xbe.\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8"); } // [B2, B3, B6]
2529test { try toAsciiFail("\xf0\x9e\xa4\xa7\xf0\x9d\xa8\xa8\xce\xbe.\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8", false); } // [B2, B3, B6]
2530test { try toAsciiFail("\xf0\x9e\xa4\xa7\xf0\x9d\xa8\xa8\xce\xbe.\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8", true); } // [B2, B3, B6]
1367test { try toUnicodeFail("\xf0\x9e\xa4\x85\xf0\x9d\xa8\xa8\xce\x9e.\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8"); } // [B2, B3, B6]2531test { try toUnicodeFail("\xf0\x9e\xa4\x85\xf0\x9d\xa8\xa8\xce\x9e.\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8"); } // [B2, B3, B6]
2532test { try toAsciiFail("\xf0\x9e\xa4\x85\xf0\x9d\xa8\xa8\xce\x9e.\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8", false); } // [B2, B3, B6]
2533test { try toAsciiFail("\xf0\x9e\xa4\x85\xf0\x9d\xa8\xa8\xce\x9e.\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8", true); } // [B2, B3, B6]
1368test { try toUnicodeFail("\xf0\x9e\xa4\x85\xf0\x9d\xa8\xa8\xce\xbe.\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8"); } // [B2, B3, B6]2534test { try toUnicodeFail("\xf0\x9e\xa4\x85\xf0\x9d\xa8\xa8\xce\xbe.\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8"); } // [B2, B3, B6]
2535test { try toAsciiFail("\xf0\x9e\xa4\x85\xf0\x9d\xa8\xa8\xce\xbe.\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8", false); } // [B2, B3, B6]
2536test { try toAsciiFail("\xf0\x9e\xa4\x85\xf0\x9d\xa8\xa8\xce\xbe.\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8", true); } // [B2, B3, B6]
1369test { try toUnicodeFail("xn--zxa5691vboja.xn--bfi293ci119b"); } // [B2, B3, B6]2537test { try toUnicodeFail("xn--zxa5691vboja.xn--bfi293ci119b"); } // [B2, B3, B6]
2538test { try toAsciiFail("xn--zxa5691vboja.xn--bfi293ci119b", false); } // [B2, B3, B6]
2539test { try toAsciiFail("xn--zxa5691vboja.xn--bfi293ci119b", true); } // [B2, B3, B6]
1370test { try toUnicodeFail("\xf0\x9e\xa4\xa7\xf0\x9d\xa8\xa8\xce\xbe\xef\xbc\x8e\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8"); } // [B2, B3, B6]2540test { try toUnicodeFail("\xf0\x9e\xa4\xa7\xf0\x9d\xa8\xa8\xce\xbe\xef\xbc\x8e\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8"); } // [B2, B3, B6]
2541test { try toAsciiFail("\xf0\x9e\xa4\xa7\xf0\x9d\xa8\xa8\xce\xbe\xef\xbc\x8e\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8", false); } // [B2, B3, B6]
2542test { try toAsciiFail("\xf0\x9e\xa4\xa7\xf0\x9d\xa8\xa8\xce\xbe\xef\xbc\x8e\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8", true); } // [B2, B3, B6]
1371test { try toUnicodeFail("\xf0\x9e\xa4\x85\xf0\x9d\xa8\xa8\xce\x9e\xef\xbc\x8e\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8"); } // [B2, B3, B6]2543test { try toUnicodeFail("\xf0\x9e\xa4\x85\xf0\x9d\xa8\xa8\xce\x9e\xef\xbc\x8e\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8"); } // [B2, B3, B6]
2544test { try toAsciiFail("\xf0\x9e\xa4\x85\xf0\x9d\xa8\xa8\xce\x9e\xef\xbc\x8e\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8", false); } // [B2, B3, B6]
2545test { try toAsciiFail("\xf0\x9e\xa4\x85\xf0\x9d\xa8\xa8\xce\x9e\xef\xbc\x8e\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8", true); } // [B2, B3, B6]
1372test { try toUnicodeFail("\xf0\x9e\xa4\x85\xf0\x9d\xa8\xa8\xce\xbe\xef\xbc\x8e\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8"); } // [B2, B3, B6]2546test { try toUnicodeFail("\xf0\x9e\xa4\x85\xf0\x9d\xa8\xa8\xce\xbe\xef\xbc\x8e\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8"); } // [B2, B3, B6]
2547test { try toAsciiFail("\xf0\x9e\xa4\x85\xf0\x9d\xa8\xa8\xce\xbe\xef\xbc\x8e\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8", false); } // [B2, B3, B6]
2548test { try toAsciiFail("\xf0\x9e\xa4\x85\xf0\x9d\xa8\xa8\xce\xbe\xef\xbc\x8e\xf0\xaa\xba\x8f\xe3\x9b\xa8\xe2\x9d\xb8", true); } // [B2, B3, B6]
1373test { try toUnicodeFail("\xe1\xa0\x86\xeb\xaa\x86\xe2\x80\x8c-\xef\xbd\xa1\xe1\x82\xbb\xf0\x90\xa6\x85\xef\xb8\x92"); } // [B1, B5, B6, C1, V3, V7]2549test { try toUnicodeFail("\xe1\xa0\x86\xeb\xaa\x86\xe2\x80\x8c-\xef\xbd\xa1\xe1\x82\xbb\xf0\x90\xa6\x85\xef\xb8\x92"); } // [B1, B5, B6, C1, V3, V7]
2550test { try toAsciiFail("\xe1\xa0\x86\xeb\xaa\x86\xe2\x80\x8c-\xef\xbd\xa1\xe1\x82\xbb\xf0\x90\xa6\x85\xef\xb8\x92", false); } // [B1, B5, B6, C1, V3, V7]
2551test { try toAsciiFail("\xe1\xa0\x86\xeb\xaa\x86\xe2\x80\x8c-\xef\xbd\xa1\xe1\x82\xbb\xf0\x90\xa6\x85\xef\xb8\x92", true); } // [B1, B5, B6, V3, V7]
1374test { try toUnicodeFail("\xe1\xa0\x86\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xbd\xe2\x80\x8c-\xef\xbd\xa1\xe1\x82\xbb\xf0\x90\xa6\x85\xef\xb8\x92"); } // [B1, B5, B6, C1, V3, V7]2552test { try toUnicodeFail("\xe1\xa0\x86\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xbd\xe2\x80\x8c-\xef\xbd\xa1\xe1\x82\xbb\xf0\x90\xa6\x85\xef\xb8\x92"); } // [B1, B5, B6, C1, V3, V7]
2553test { try toAsciiFail("\xe1\xa0\x86\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xbd\xe2\x80\x8c-\xef\xbd\xa1\xe1\x82\xbb\xf0\x90\xa6\x85\xef\xb8\x92", false); } // [B1, B5, B6, C1, V3, V7]
2554test { try toAsciiFail("\xe1\xa0\x86\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xbd\xe2\x80\x8c-\xef\xbd\xa1\xe1\x82\xbb\xf0\x90\xa6\x85\xef\xb8\x92", true); } // [B1, B5, B6, V3, V7]
1375test { try toUnicodeFail("\xe1\xa0\x86\xeb\xaa\x86\xe2\x80\x8c-\xe3\x80\x82\xe1\x82\xbb\xf0\x90\xa6\x85\xe3\x80\x82"); } // [B1, B5, B6, C1, V3]2555test { try toUnicodeFail("\xe1\xa0\x86\xeb\xaa\x86\xe2\x80\x8c-\xe3\x80\x82\xe1\x82\xbb\xf0\x90\xa6\x85\xe3\x80\x82"); } // [B1, B5, B6, C1, V3]
2556test { try toAsciiFail("\xe1\xa0\x86\xeb\xaa\x86\xe2\x80\x8c-\xe3\x80\x82\xe1\x82\xbb\xf0\x90\xa6\x85\xe3\x80\x82", false); } // [B1, B5, B6, C1, V3, A4_2]
2557test { try toAsciiFail("\xe1\xa0\x86\xeb\xaa\x86\xe2\x80\x8c-\xe3\x80\x82\xe1\x82\xbb\xf0\x90\xa6\x85\xe3\x80\x82", true); } // [B1, B5, B6, V3, A4_2]
1376test { try toUnicodeFail("\xe1\xa0\x86\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xbd\xe2\x80\x8c-\xe3\x80\x82\xe1\x82\xbb\xf0\x90\xa6\x85\xe3\x80\x82"); } // [B1, B5, B6, C1, V3]2558test { try toUnicodeFail("\xe1\xa0\x86\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xbd\xe2\x80\x8c-\xe3\x80\x82\xe1\x82\xbb\xf0\x90\xa6\x85\xe3\x80\x82"); } // [B1, B5, B6, C1, V3]
2559test { try toAsciiFail("\xe1\xa0\x86\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xbd\xe2\x80\x8c-\xe3\x80\x82\xe1\x82\xbb\xf0\x90\xa6\x85\xe3\x80\x82", false); } // [B1, B5, B6, C1, V3, A4_2]
2560test { try toAsciiFail("\xe1\xa0\x86\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xbd\xe2\x80\x8c-\xe3\x80\x82\xe1\x82\xbb\xf0\x90\xa6\x85\xe3\x80\x82", true); } // [B1, B5, B6, V3, A4_2]
1377test { try toUnicodeFail("\xe1\xa0\x86\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xbd\xe2\x80\x8c-\xe3\x80\x82\xe2\xb4\x9b\xf0\x90\xa6\x85\xe3\x80\x82"); } // [B1, B5, B6, C1, V3]2561test { try toUnicodeFail("\xe1\xa0\x86\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xbd\xe2\x80\x8c-\xe3\x80\x82\xe2\xb4\x9b\xf0\x90\xa6\x85\xe3\x80\x82"); } // [B1, B5, B6, C1, V3]
2562test { try toAsciiFail("\xe1\xa0\x86\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xbd\xe2\x80\x8c-\xe3\x80\x82\xe2\xb4\x9b\xf0\x90\xa6\x85\xe3\x80\x82", false); } // [B1, B5, B6, C1, V3, A4_2]
2563test { try toAsciiFail("\xe1\xa0\x86\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xbd\xe2\x80\x8c-\xe3\x80\x82\xe2\xb4\x9b\xf0\x90\xa6\x85\xe3\x80\x82", true); } // [B1, B5, B6, V3, A4_2]
1378test { try toUnicodeFail("\xe1\xa0\x86\xeb\xaa\x86\xe2\x80\x8c-\xe3\x80\x82\xe2\xb4\x9b\xf0\x90\xa6\x85\xe3\x80\x82"); } // [B1, B5, B6, C1, V3]2564test { try toUnicodeFail("\xe1\xa0\x86\xeb\xaa\x86\xe2\x80\x8c-\xe3\x80\x82\xe2\xb4\x9b\xf0\x90\xa6\x85\xe3\x80\x82"); } // [B1, B5, B6, C1, V3]
2565test { try toAsciiFail("\xe1\xa0\x86\xeb\xaa\x86\xe2\x80\x8c-\xe3\x80\x82\xe2\xb4\x9b\xf0\x90\xa6\x85\xe3\x80\x82", false); } // [B1, B5, B6, C1, V3, A4_2]
2566test { try toAsciiFail("\xe1\xa0\x86\xeb\xaa\x86\xe2\x80\x8c-\xe3\x80\x82\xe2\xb4\x9b\xf0\x90\xa6\x85\xe3\x80\x82", true); } // [B1, B5, B6, V3, A4_2]
1379test { try toUnicodeFail("xn----e3j6620g.xn--jlju661e."); } // [B1, B5, B6, V3]2567test { try toUnicodeFail("xn----e3j6620g.xn--jlju661e."); } // [B1, B5, B6, V3]
2568test { try toAsciiFail("xn----e3j6620g.xn--jlju661e.", false); } // [B1, B5, B6, V3, A4_2]
2569test { try toAsciiFail("xn----e3j6620g.xn--jlju661e.", true); } // [B1, B5, B6, V3, A4_2]
1380test { try toUnicodeFail("xn----e3j425bsk1o.xn--jlju661e."); } // [B1, B5, B6, C1, V3]2570test { try toUnicodeFail("xn----e3j425bsk1o.xn--jlju661e."); } // [B1, B5, B6, C1, V3]
2571test { try toAsciiFail("xn----e3j425bsk1o.xn--jlju661e.", false); } // [B1, B5, B6, C1, V3, A4_2]
2572test { try toAsciiFail("xn----e3j425bsk1o.xn--jlju661e.", true); } // [B1, B5, B6, C1, V3, A4_2]
1381test { try toUnicodeFail("\xe1\xa0\x86\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xbd\xe2\x80\x8c-\xef\xbd\xa1\xe2\xb4\x9b\xf0\x90\xa6\x85\xef\xb8\x92"); } // [B1, B5, B6, C1, V3, V7]2573test { try toUnicodeFail("\xe1\xa0\x86\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xbd\xe2\x80\x8c-\xef\xbd\xa1\xe2\xb4\x9b\xf0\x90\xa6\x85\xef\xb8\x92"); } // [B1, B5, B6, C1, V3, V7]
2574test { try toAsciiFail("\xe1\xa0\x86\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xbd\xe2\x80\x8c-\xef\xbd\xa1\xe2\xb4\x9b\xf0\x90\xa6\x85\xef\xb8\x92", false); } // [B1, B5, B6, C1, V3, V7]
2575test { try toAsciiFail("\xe1\xa0\x86\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xbd\xe2\x80\x8c-\xef\xbd\xa1\xe2\xb4\x9b\xf0\x90\xa6\x85\xef\xb8\x92", true); } // [B1, B5, B6, V3, V7]
1382test { try toUnicodeFail("\xe1\xa0\x86\xeb\xaa\x86\xe2\x80\x8c-\xef\xbd\xa1\xe2\xb4\x9b\xf0\x90\xa6\x85\xef\xb8\x92"); } // [B1, B5, B6, C1, V3, V7]2576test { try toUnicodeFail("\xe1\xa0\x86\xeb\xaa\x86\xe2\x80\x8c-\xef\xbd\xa1\xe2\xb4\x9b\xf0\x90\xa6\x85\xef\xb8\x92"); } // [B1, B5, B6, C1, V3, V7]
2577test { try toAsciiFail("\xe1\xa0\x86\xeb\xaa\x86\xe2\x80\x8c-\xef\xbd\xa1\xe2\xb4\x9b\xf0\x90\xa6\x85\xef\xb8\x92", false); } // [B1, B5, B6, C1, V3, V7]
2578test { try toAsciiFail("\xe1\xa0\x86\xeb\xaa\x86\xe2\x80\x8c-\xef\xbd\xa1\xe2\xb4\x9b\xf0\x90\xa6\x85\xef\xb8\x92", true); } // [B1, B5, B6, V3, V7]
1383test { try toUnicodeFail("xn----e3j6620g.xn--jlj4997dhgh"); } // [B1, B5, B6, V3, V7]2579test { try toUnicodeFail("xn----e3j6620g.xn--jlj4997dhgh"); } // [B1, B5, B6, V3, V7]
2580test { try toAsciiFail("xn----e3j6620g.xn--jlj4997dhgh", false); } // [B1, B5, B6, V3, V7]
2581test { try toAsciiFail("xn----e3j6620g.xn--jlj4997dhgh", true); } // [B1, B5, B6, V3, V7]
1384test { try toUnicodeFail("xn----e3j425bsk1o.xn--jlj4997dhgh"); } // [B1, B5, B6, C1, V3, V7]2582test { try toUnicodeFail("xn----e3j425bsk1o.xn--jlj4997dhgh"); } // [B1, B5, B6, C1, V3, V7]
2583test { try toAsciiFail("xn----e3j425bsk1o.xn--jlj4997dhgh", false); } // [B1, B5, B6, C1, V3, V7]
2584test { try toAsciiFail("xn----e3j425bsk1o.xn--jlj4997dhgh", true); } // [B1, B5, B6, C1, V3, V7]
1385test { try toUnicodeFail("xn----e3j6620g.xn--znd4948j."); } // [B1, B5, B6, V3, V7]2585test { try toUnicodeFail("xn----e3j6620g.xn--znd4948j."); } // [B1, B5, B6, V3, V7]
2586test { try toAsciiFail("xn----e3j6620g.xn--znd4948j.", false); } // [B1, B5, B6, V3, V7, A4_2]
2587test { try toAsciiFail("xn----e3j6620g.xn--znd4948j.", true); } // [B1, B5, B6, V3, V7, A4_2]
1386test { try toUnicodeFail("xn----e3j425bsk1o.xn--znd4948j."); } // [B1, B5, B6, C1, V3, V7]2588test { try toUnicodeFail("xn----e3j425bsk1o.xn--znd4948j."); } // [B1, B5, B6, C1, V3, V7]
2589test { try toAsciiFail("xn----e3j425bsk1o.xn--znd4948j.", false); } // [B1, B5, B6, C1, V3, V7, A4_2]
2590test { try toAsciiFail("xn----e3j425bsk1o.xn--znd4948j.", true); } // [B1, B5, B6, C1, V3, V7, A4_2]
1387test { try toUnicodeFail("xn----e3j6620g.xn--znd2362jhgh"); } // [B1, B5, B6, V3, V7]2591test { try toUnicodeFail("xn----e3j6620g.xn--znd2362jhgh"); } // [B1, B5, B6, V3, V7]
2592test { try toAsciiFail("xn----e3j6620g.xn--znd2362jhgh", false); } // [B1, B5, B6, V3, V7]
2593test { try toAsciiFail("xn----e3j6620g.xn--znd2362jhgh", true); } // [B1, B5, B6, V3, V7]
1388test { try toUnicodeFail("xn----e3j425bsk1o.xn--znd2362jhgh"); } // [B1, B5, B6, C1, V3, V7]2594test { try toUnicodeFail("xn----e3j425bsk1o.xn--znd2362jhgh"); } // [B1, B5, B6, C1, V3, V7]
2595test { try toAsciiFail("xn----e3j425bsk1o.xn--znd2362jhgh", false); } // [B1, B5, B6, C1, V3, V7]
2596test { try toAsciiFail("xn----e3j425bsk1o.xn--znd2362jhgh", true); } // [B1, B5, B6, C1, V3, V7]
1389test { try toUnicodeFail("\xf3\xa0\xbe\xb3.\xef\xb8\x92\xe2\xa5\xb1\xe2\x80\x8c\xf0\x90\xb9\xac"); } // [B1, C1, V7]2597test { try toUnicodeFail("\xf3\xa0\xbe\xb3.\xef\xb8\x92\xe2\xa5\xb1\xe2\x80\x8c\xf0\x90\xb9\xac"); } // [B1, C1, V7]
2598test { try toAsciiFail("\xf3\xa0\xbe\xb3.\xef\xb8\x92\xe2\xa5\xb1\xe2\x80\x8c\xf0\x90\xb9\xac", false); } // [B1, C1, V7]
2599test { try toAsciiFail("\xf3\xa0\xbe\xb3.\xef\xb8\x92\xe2\xa5\xb1\xe2\x80\x8c\xf0\x90\xb9\xac", true); } // [B1, V7]
1390test { try toUnicodeFail("\xf3\xa0\xbe\xb3.\xe3\x80\x82\xe2\xa5\xb1\xe2\x80\x8c\xf0\x90\xb9\xac"); } // [B1, C1, V7, X4_2]2600test { try toUnicodeFail("\xf3\xa0\xbe\xb3.\xe3\x80\x82\xe2\xa5\xb1\xe2\x80\x8c\xf0\x90\xb9\xac"); } // [B1, C1, V7, X4_2]
2601test { try toAsciiFail("\xf3\xa0\xbe\xb3.\xe3\x80\x82\xe2\xa5\xb1\xe2\x80\x8c\xf0\x90\xb9\xac", false); } // [B1, C1, V7, A4_2]
2602test { try toAsciiFail("\xf3\xa0\xbe\xb3.\xe3\x80\x82\xe2\xa5\xb1\xe2\x80\x8c\xf0\x90\xb9\xac", true); } // [B1, V7, A4_2]
1391test { try toUnicodeFail("xn--uf66e..xn--qti2829e"); } // [B1, V7, X4_2]2603test { try toUnicodeFail("xn--uf66e..xn--qti2829e"); } // [B1, V7, X4_2]
2604test { try toAsciiFail("xn--uf66e..xn--qti2829e", false); } // [B1, V7, A4_2]
2605test { try toAsciiFail("xn--uf66e..xn--qti2829e", true); } // [B1, V7, A4_2]
1392test { try toUnicodeFail("xn--uf66e..xn--0ugz28as66q"); } // [B1, C1, V7, X4_2]2606test { try toUnicodeFail("xn--uf66e..xn--0ugz28as66q"); } // [B1, C1, V7, X4_2]
2607test { try toAsciiFail("xn--uf66e..xn--0ugz28as66q", false); } // [B1, C1, V7, A4_2]
2608test { try toAsciiFail("xn--uf66e..xn--0ugz28as66q", true); } // [B1, C1, V7, A4_2]
1393test { try toUnicodeFail("xn--uf66e.xn--qtiz073e3ik"); } // [B1, V7]2609test { try toUnicodeFail("xn--uf66e.xn--qtiz073e3ik"); } // [B1, V7]
2610test { try toAsciiFail("xn--uf66e.xn--qtiz073e3ik", false); } // [B1, V7]
2611test { try toAsciiFail("xn--uf66e.xn--qtiz073e3ik", true); } // [B1, V7]
1394test { try toUnicodeFail("xn--uf66e.xn--0ugz28axl3pqxna"); } // [B1, C1, V7]2612test { try toUnicodeFail("xn--uf66e.xn--0ugz28axl3pqxna"); } // [B1, C1, V7]
2613test { try toAsciiFail("xn--uf66e.xn--0ugz28axl3pqxna", false); } // [B1, C1, V7]
2614test { try toAsciiFail("xn--uf66e.xn--0ugz28axl3pqxna", true); } // [B1, C1, V7]
1395test { try toUnicodeFail("\xf0\x90\xaf\x96.\xf0\x90\xb9\xa0\xe1\x82\xb1\xf1\x9a\x87\x9c\xf0\x90\xab\x8a"); } // [B1, V7]2615test { try toUnicodeFail("\xf0\x90\xaf\x96.\xf0\x90\xb9\xa0\xe1\x82\xb1\xf1\x9a\x87\x9c\xf0\x90\xab\x8a"); } // [B1, V7]
2616test { try toAsciiFail("\xf0\x90\xaf\x96.\xf0\x90\xb9\xa0\xe1\x82\xb1\xf1\x9a\x87\x9c\xf0\x90\xab\x8a", false); } // [B1, V7]
2617test { try toAsciiFail("\xf0\x90\xaf\x96.\xf0\x90\xb9\xa0\xe1\x82\xb1\xf1\x9a\x87\x9c\xf0\x90\xab\x8a", true); } // [B1, V7]
1396test { try toUnicodeFail("\xf0\x90\xaf\x96.\xf0\x90\xb9\xa0\xe2\xb4\x91\xf1\x9a\x87\x9c\xf0\x90\xab\x8a"); } // [B1, V7]2618test { try toUnicodeFail("\xf0\x90\xaf\x96.\xf0\x90\xb9\xa0\xe2\xb4\x91\xf1\x9a\x87\x9c\xf0\x90\xab\x8a"); } // [B1, V7]
2619test { try toAsciiFail("\xf0\x90\xaf\x96.\xf0\x90\xb9\xa0\xe2\xb4\x91\xf1\x9a\x87\x9c\xf0\x90\xab\x8a", false); } // [B1, V7]
2620test { try toAsciiFail("\xf0\x90\xaf\x96.\xf0\x90\xb9\xa0\xe2\xb4\x91\xf1\x9a\x87\x9c\xf0\x90\xab\x8a", true); } // [B1, V7]
1397test { try toUnicodeFail("xn--n49c.xn--8kj8702ewicl862o"); } // [B1, V7]2621test { try toUnicodeFail("xn--n49c.xn--8kj8702ewicl862o"); } // [B1, V7]
2622test { try toAsciiFail("xn--n49c.xn--8kj8702ewicl862o", false); } // [B1, V7]
2623test { try toAsciiFail("xn--n49c.xn--8kj8702ewicl862o", true); } // [B1, V7]
1398test { try toUnicodeFail("xn--n49c.xn--pnd4619jwicl862o"); } // [B1, V7]2624test { try toUnicodeFail("xn--n49c.xn--pnd4619jwicl862o"); } // [B1, V7]
2625test { try toAsciiFail("xn--n49c.xn--pnd4619jwicl862o", false); } // [B1, V7]
2626test { try toAsciiFail("xn--n49c.xn--pnd4619jwicl862o", true); } // [B1, V7]
1399test { try toUnicodeFail("\xe0\xbe\xa4\xf1\xb1\xa4\xaf\xef\xbc\x8e\xf0\x9d\x9f\xad\xe1\x82\xbb"); } // [V6, V7]2627test { try toUnicodeFail("\xe0\xbe\xa4\xf1\xb1\xa4\xaf\xef\xbc\x8e\xf0\x9d\x9f\xad\xe1\x82\xbb"); } // [V6, V7]
2628test { try toAsciiFail("\xe0\xbe\xa4\xf1\xb1\xa4\xaf\xef\xbc\x8e\xf0\x9d\x9f\xad\xe1\x82\xbb", false); } // [V6, V7]
2629test { try toAsciiFail("\xe0\xbe\xa4\xf1\xb1\xa4\xaf\xef\xbc\x8e\xf0\x9d\x9f\xad\xe1\x82\xbb", true); } // [V6, V7]
1400test { try toUnicodeFail("\xe0\xbe\xa4\xf1\xb1\xa4\xaf.1\xe1\x82\xbb"); } // [V6, V7]2630test { try toUnicodeFail("\xe0\xbe\xa4\xf1\xb1\xa4\xaf.1\xe1\x82\xbb"); } // [V6, V7]
2631test { try toAsciiFail("\xe0\xbe\xa4\xf1\xb1\xa4\xaf.1\xe1\x82\xbb", false); } // [V6, V7]
2632test { try toAsciiFail("\xe0\xbe\xa4\xf1\xb1\xa4\xaf.1\xe1\x82\xbb", true); } // [V6, V7]
1401test { try toUnicodeFail("\xe0\xbe\xa4\xf1\xb1\xa4\xaf.1\xe2\xb4\x9b"); } // [V6, V7]2633test { try toUnicodeFail("\xe0\xbe\xa4\xf1\xb1\xa4\xaf.1\xe2\xb4\x9b"); } // [V6, V7]
2634test { try toAsciiFail("\xe0\xbe\xa4\xf1\xb1\xa4\xaf.1\xe2\xb4\x9b", false); } // [V6, V7]
2635test { try toAsciiFail("\xe0\xbe\xa4\xf1\xb1\xa4\xaf.1\xe2\xb4\x9b", true); } // [V6, V7]
1402test { try toUnicodeFail("xn--0fd40533g.xn--1-tws"); } // [V6, V7]2636test { try toUnicodeFail("xn--0fd40533g.xn--1-tws"); } // [V6, V7]
2637test { try toAsciiFail("xn--0fd40533g.xn--1-tws", false); } // [V6, V7]
2638test { try toAsciiFail("xn--0fd40533g.xn--1-tws", true); } // [V6, V7]
1403test { try toUnicodeFail("\xe0\xbe\xa4\xf1\xb1\xa4\xaf\xef\xbc\x8e\xf0\x9d\x9f\xad\xe2\xb4\x9b"); } // [V6, V7]2639test { try toUnicodeFail("\xe0\xbe\xa4\xf1\xb1\xa4\xaf\xef\xbc\x8e\xf0\x9d\x9f\xad\xe2\xb4\x9b"); } // [V6, V7]
2640test { try toAsciiFail("\xe0\xbe\xa4\xf1\xb1\xa4\xaf\xef\xbc\x8e\xf0\x9d\x9f\xad\xe2\xb4\x9b", false); } // [V6, V7]
2641test { try toAsciiFail("\xe0\xbe\xa4\xf1\xb1\xa4\xaf\xef\xbc\x8e\xf0\x9d\x9f\xad\xe2\xb4\x9b", true); } // [V6, V7]
1404test { try toUnicodeFail("xn--0fd40533g.xn--1-q1g"); } // [V6, V7]2642test { try toUnicodeFail("xn--0fd40533g.xn--1-q1g"); } // [V6, V7]
2643test { try toAsciiFail("xn--0fd40533g.xn--1-q1g", false); } // [V6, V7]
2644test { try toAsciiFail("xn--0fd40533g.xn--1-q1g", true); } // [V6, V7]
1405test { try toUnicodeFail("-\xe0\xa0\xa6\xe9\xbd\x80\xe3\x80\x82\xeb\xa6\xbf\xf0\x90\xb8\x8b"); } // [B1, B5, B6, V3, V7]2645test { try toUnicodeFail("-\xe0\xa0\xa6\xe9\xbd\x80\xe3\x80\x82\xeb\xa6\xbf\xf0\x90\xb8\x8b"); } // [B1, B5, B6, V3, V7]
2646test { try toAsciiFail("-\xe0\xa0\xa6\xe9\xbd\x80\xe3\x80\x82\xeb\xa6\xbf\xf0\x90\xb8\x8b", false); } // [B1, B5, B6, V3, V7]
2647test { try toAsciiFail("-\xe0\xa0\xa6\xe9\xbd\x80\xe3\x80\x82\xeb\xa6\xbf\xf0\x90\xb8\x8b", true); } // [B1, B5, B6, V3, V7]
1406test { try toUnicodeFail("-\xe0\xa0\xa6\xe9\xbd\x80\xe3\x80\x82\xe1\x84\x85\xe1\x85\xb5\xe1\x86\xba\xf0\x90\xb8\x8b"); } // [B1, B5, B6, V3, V7]2648test { try toUnicodeFail("-\xe0\xa0\xa6\xe9\xbd\x80\xe3\x80\x82\xe1\x84\x85\xe1\x85\xb5\xe1\x86\xba\xf0\x90\xb8\x8b"); } // [B1, B5, B6, V3, V7]
2649test { try toAsciiFail("-\xe0\xa0\xa6\xe9\xbd\x80\xe3\x80\x82\xe1\x84\x85\xe1\x85\xb5\xe1\x86\xba\xf0\x90\xb8\x8b", false); } // [B1, B5, B6, V3, V7]
2650test { try toAsciiFail("-\xe0\xa0\xa6\xe9\xbd\x80\xe3\x80\x82\xe1\x84\x85\xe1\x85\xb5\xe1\x86\xba\xf0\x90\xb8\x8b", true); } // [B1, B5, B6, V3, V7]
1407test { try toUnicodeFail("xn----6gd0617i.xn--7y2bm55m"); } // [B1, B5, B6, V3, V7]2651test { try toUnicodeFail("xn----6gd0617i.xn--7y2bm55m"); } // [B1, B5, B6, V3, V7]
2652test { try toAsciiFail("xn----6gd0617i.xn--7y2bm55m", false); } // [B1, B5, B6, V3, V7]
2653test { try toAsciiFail("xn----6gd0617i.xn--7y2bm55m", true); } // [B1, B5, B6, V3, V7]
1408test { try toUnicodeFail("\xf3\xa0\x94\x8a\xdc\x9c\xe9\xb9\x9d\xea\xbe\x97\xe3\x80\x82\xf1\xbe\xb5\x90\xe2\x80\x8d\xe2\x80\x8d\xe2\x8f\x83"); } // [B1, B6, C2, V7]2654test { try toUnicodeFail("\xf3\xa0\x94\x8a\xdc\x9c\xe9\xb9\x9d\xea\xbe\x97\xe3\x80\x82\xf1\xbe\xb5\x90\xe2\x80\x8d\xe2\x80\x8d\xe2\x8f\x83"); } // [B1, B6, C2, V7]
2655test { try toAsciiFail("\xf3\xa0\x94\x8a\xdc\x9c\xe9\xb9\x9d\xea\xbe\x97\xe3\x80\x82\xf1\xbe\xb5\x90\xe2\x80\x8d\xe2\x80\x8d\xe2\x8f\x83", false); } // [B1, B6, C2, V7]
2656test { try toAsciiFail("\xf3\xa0\x94\x8a\xdc\x9c\xe9\xb9\x9d\xea\xbe\x97\xe3\x80\x82\xf1\xbe\xb5\x90\xe2\x80\x8d\xe2\x80\x8d\xe2\x8f\x83", true); } // [B1, B6, V7]
1409test { try toUnicodeFail("\xf3\xa0\x94\x8a\xdc\x9c\xe9\xb9\x9d\xe1\x84\x81\xe1\x85\xac\xe1\x86\xbe\xe3\x80\x82\xf1\xbe\xb5\x90\xe2\x80\x8d\xe2\x80\x8d\xe2\x8f\x83"); } // [B1, B6, C2, V7]2657test { try toUnicodeFail("\xf3\xa0\x94\x8a\xdc\x9c\xe9\xb9\x9d\xe1\x84\x81\xe1\x85\xac\xe1\x86\xbe\xe3\x80\x82\xf1\xbe\xb5\x90\xe2\x80\x8d\xe2\x80\x8d\xe2\x8f\x83"); } // [B1, B6, C2, V7]
2658test { try toAsciiFail("\xf3\xa0\x94\x8a\xdc\x9c\xe9\xb9\x9d\xe1\x84\x81\xe1\x85\xac\xe1\x86\xbe\xe3\x80\x82\xf1\xbe\xb5\x90\xe2\x80\x8d\xe2\x80\x8d\xe2\x8f\x83", false); } // [B1, B6, C2, V7]
2659test { try toAsciiFail("\xf3\xa0\x94\x8a\xdc\x9c\xe9\xb9\x9d\xe1\x84\x81\xe1\x85\xac\xe1\x86\xbe\xe3\x80\x82\xf1\xbe\xb5\x90\xe2\x80\x8d\xe2\x80\x8d\xe2\x8f\x83", true); } // [B1, B6, V7]
1410test { try toUnicodeFail("xn--mnb6558e91kyq533a.xn--6mh27269e"); } // [B1, B6, V7]2660test { try toUnicodeFail("xn--mnb6558e91kyq533a.xn--6mh27269e"); } // [B1, B6, V7]
2661test { try toAsciiFail("xn--mnb6558e91kyq533a.xn--6mh27269e", false); } // [B1, B6, V7]
2662test { try toAsciiFail("xn--mnb6558e91kyq533a.xn--6mh27269e", true); } // [B1, B6, V7]
1411test { try toUnicodeFail("xn--mnb6558e91kyq533a.xn--1uga46zs309y"); } // [B1, B6, C2, V7]2663test { try toUnicodeFail("xn--mnb6558e91kyq533a.xn--1uga46zs309y"); } // [B1, B6, C2, V7]
2664test { try toAsciiFail("xn--mnb6558e91kyq533a.xn--1uga46zs309y", false); } // [B1, B6, C2, V7]
2665test { try toAsciiFail("xn--mnb6558e91kyq533a.xn--1uga46zs309y", true); } // [B1, B6, C2, V7]
1412test { try toUnicodeFail("\xe2\x89\xae\xef\xbc\x8e-\xdc\x88--"); } // [B1, V2, V3]2666test { try toUnicodeFail("\xe2\x89\xae\xef\xbc\x8e-\xdc\x88--"); } // [B1, V2, V3]
2667test { try toAsciiFail("\xe2\x89\xae\xef\xbc\x8e-\xdc\x88--", false); } // [B1, V2, V3]
2668test { try toAsciiFail("\xe2\x89\xae\xef\xbc\x8e-\xdc\x88--", true); } // [B1, V2, V3]
1413test { try toUnicodeFail("<\xcc\xb8\xef\xbc\x8e-\xdc\x88--"); } // [B1, V2, V3]2669test { try toUnicodeFail("<\xcc\xb8\xef\xbc\x8e-\xdc\x88--"); } // [B1, V2, V3]
2670test { try toAsciiFail("<\xcc\xb8\xef\xbc\x8e-\xdc\x88--", false); } // [B1, V2, V3]
2671test { try toAsciiFail("<\xcc\xb8\xef\xbc\x8e-\xdc\x88--", true); } // [B1, V2, V3]
1414test { try toUnicodeFail("\xe2\x89\xae.-\xdc\x88--"); } // [B1, V2, V3]2672test { try toUnicodeFail("\xe2\x89\xae.-\xdc\x88--"); } // [B1, V2, V3]
2673test { try toAsciiFail("\xe2\x89\xae.-\xdc\x88--", false); } // [B1, V2, V3]
2674test { try toAsciiFail("\xe2\x89\xae.-\xdc\x88--", true); } // [B1, V2, V3]
1415test { try toUnicodeFail("<\xcc\xb8.-\xdc\x88--"); } // [B1, V2, V3]2675test { try toUnicodeFail("<\xcc\xb8.-\xdc\x88--"); } // [B1, V2, V3]
2676test { try toAsciiFail("<\xcc\xb8.-\xdc\x88--", false); } // [B1, V2, V3]
2677test { try toAsciiFail("<\xcc\xb8.-\xdc\x88--", true); } // [B1, V2, V3]
1416test { try toUnicodeFail("xn--gdh.xn------eqf"); } // [B1, V2, V3]2678test { try toUnicodeFail("xn--gdh.xn------eqf"); } // [B1, V2, V3]
2679test { try toAsciiFail("xn--gdh.xn------eqf", false); } // [B1, V2, V3]
2680test { try toAsciiFail("xn--gdh.xn------eqf", true); } // [B1, V2, V3]
1417test { try toUnicodeFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xcf\x82\xf0\x9d\x9f\xa9"); } // [B1, C2, V7]2681test { try toUnicodeFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xcf\x82\xf0\x9d\x9f\xa9"); } // [B1, C2, V7]
2682test { try toAsciiFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xcf\x82\xf0\x9d\x9f\xa9", false); } // [B1, C2, V7]
2683test { try toAsciiFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xcf\x82\xf0\x9d\x9f\xa9", true); } // [B1, V7]
1418test { try toUnicodeFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xcf\x827"); } // [B1, C2, V7]2684test { try toUnicodeFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xcf\x827"); } // [B1, C2, V7]
2685test { try toAsciiFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xcf\x827", false); } // [B1, C2, V7]
2686test { try toAsciiFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xcf\x827", true); } // [B1, V7]
1419test { try toUnicodeFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xce\xa37"); } // [B1, C2, V7]2687test { try toUnicodeFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xce\xa37"); } // [B1, C2, V7]
2688test { try toAsciiFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xce\xa37", false); } // [B1, C2, V7]
2689test { try toAsciiFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xce\xa37", true); } // [B1, V7]
1420test { try toUnicodeFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xcf\x837"); } // [B1, C2, V7]2690test { try toUnicodeFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xcf\x837"); } // [B1, C2, V7]
2691test { try toAsciiFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xcf\x837", false); } // [B1, C2, V7]
2692test { try toAsciiFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xcf\x837", true); } // [B1, V7]
1421test { try toUnicodeFail("xn--wo0di5177c.xn--7-zmb"); } // [B1, V7]2693test { try toUnicodeFail("xn--wo0di5177c.xn--7-zmb"); } // [B1, V7]
2694test { try toAsciiFail("xn--wo0di5177c.xn--7-zmb", false); } // [B1, V7]
2695test { try toAsciiFail("xn--wo0di5177c.xn--7-zmb", true); } // [B1, V7]
1422test { try toUnicodeFail("xn--wo0di5177c.xn--7-zmb938s"); } // [B1, C2, V7]2696test { try toUnicodeFail("xn--wo0di5177c.xn--7-zmb938s"); } // [B1, C2, V7]
2697test { try toAsciiFail("xn--wo0di5177c.xn--7-zmb938s", false); } // [B1, C2, V7]
2698test { try toAsciiFail("xn--wo0di5177c.xn--7-zmb938s", true); } // [B1, C2, V7]
1423test { try toUnicodeFail("xn--wo0di5177c.xn--7-xmb248s"); } // [B1, C2, V7]2699test { try toUnicodeFail("xn--wo0di5177c.xn--7-xmb248s"); } // [B1, C2, V7]
2700test { try toAsciiFail("xn--wo0di5177c.xn--7-xmb248s", false); } // [B1, C2, V7]
2701test { try toAsciiFail("xn--wo0di5177c.xn--7-xmb248s", true); } // [B1, C2, V7]
1424test { try toUnicodeFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xce\xa3\xf0\x9d\x9f\xa9"); } // [B1, C2, V7]2702test { try toUnicodeFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xce\xa3\xf0\x9d\x9f\xa9"); } // [B1, C2, V7]
2703test { try toAsciiFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xce\xa3\xf0\x9d\x9f\xa9", false); } // [B1, C2, V7]
2704test { try toAsciiFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xce\xa3\xf0\x9d\x9f\xa9", true); } // [B1, V7]
1425test { try toUnicodeFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xcf\x83\xf0\x9d\x9f\xa9"); } // [B1, C2, V7]2705test { try toUnicodeFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xcf\x83\xf0\x9d\x9f\xa9"); } // [B1, C2, V7]
2706test { try toAsciiFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xcf\x83\xf0\x9d\x9f\xa9", false); } // [B1, C2, V7]
2707test { try toAsciiFail("\xf0\x90\xb9\xb8\xf3\xa0\x8b\xb3\xe3\x80\x82\xe2\x80\x8d\xcf\x83\xf0\x9d\x9f\xa9", true); } // [B1, V7]
1426test { try toUnicodeFail("\xcf\x82\xf2\x85\x9c\x8c\xef\xbc\x98.\xf0\x9e\xad\xa4"); } // [V7]2708test { try toUnicodeFail("\xcf\x82\xf2\x85\x9c\x8c\xef\xbc\x98.\xf0\x9e\xad\xa4"); } // [V7]
2709test { try toAsciiFail("\xcf\x82\xf2\x85\x9c\x8c\xef\xbc\x98.\xf0\x9e\xad\xa4", false); } // [V7]
2710test { try toAsciiFail("\xcf\x82\xf2\x85\x9c\x8c\xef\xbc\x98.\xf0\x9e\xad\xa4", true); } // [V7]
1427test { try toUnicodeFail("\xcf\x82\xf2\x85\x9c\x8c8.\xf0\x9e\xad\xa4"); } // [V7]2711test { try toUnicodeFail("\xcf\x82\xf2\x85\x9c\x8c8.\xf0\x9e\xad\xa4"); } // [V7]
2712test { try toAsciiFail("\xcf\x82\xf2\x85\x9c\x8c8.\xf0\x9e\xad\xa4", false); } // [V7]
2713test { try toAsciiFail("\xcf\x82\xf2\x85\x9c\x8c8.\xf0\x9e\xad\xa4", true); } // [V7]
1428test { try toUnicodeFail("\xce\xa3\xf2\x85\x9c\x8c8.\xf0\x9e\xad\xa4"); } // [V7]2714test { try toUnicodeFail("\xce\xa3\xf2\x85\x9c\x8c8.\xf0\x9e\xad\xa4"); } // [V7]
2715test { try toAsciiFail("\xce\xa3\xf2\x85\x9c\x8c8.\xf0\x9e\xad\xa4", false); } // [V7]
2716test { try toAsciiFail("\xce\xa3\xf2\x85\x9c\x8c8.\xf0\x9e\xad\xa4", true); } // [V7]
1429test { try toUnicodeFail("\xcf\x83\xf2\x85\x9c\x8c8.\xf0\x9e\xad\xa4"); } // [V7]2717test { try toUnicodeFail("\xcf\x83\xf2\x85\x9c\x8c8.\xf0\x9e\xad\xa4"); } // [V7]
2718test { try toAsciiFail("\xcf\x83\xf2\x85\x9c\x8c8.\xf0\x9e\xad\xa4", false); } // [V7]
2719test { try toAsciiFail("\xcf\x83\xf2\x85\x9c\x8c8.\xf0\x9e\xad\xa4", true); } // [V7]
1430test { try toUnicodeFail("xn--8-zmb14974n.xn--su6h"); } // [V7]2720test { try toUnicodeFail("xn--8-zmb14974n.xn--su6h"); } // [V7]
2721test { try toAsciiFail("xn--8-zmb14974n.xn--su6h", false); } // [V7]
2722test { try toAsciiFail("xn--8-zmb14974n.xn--su6h", true); } // [V7]
1431test { try toUnicodeFail("xn--8-xmb44974n.xn--su6h"); } // [V7]2723test { try toUnicodeFail("xn--8-xmb44974n.xn--su6h"); } // [V7]
2724test { try toAsciiFail("xn--8-xmb44974n.xn--su6h", false); } // [V7]
2725test { try toAsciiFail("xn--8-xmb44974n.xn--su6h", true); } // [V7]
1432test { try toUnicodeFail("\xce\xa3\xf2\x85\x9c\x8c\xef\xbc\x98.\xf0\x9e\xad\xa4"); } // [V7]2726test { try toUnicodeFail("\xce\xa3\xf2\x85\x9c\x8c\xef\xbc\x98.\xf0\x9e\xad\xa4"); } // [V7]
2727test { try toAsciiFail("\xce\xa3\xf2\x85\x9c\x8c\xef\xbc\x98.\xf0\x9e\xad\xa4", false); } // [V7]
2728test { try toAsciiFail("\xce\xa3\xf2\x85\x9c\x8c\xef\xbc\x98.\xf0\x9e\xad\xa4", true); } // [V7]
1433test { try toUnicodeFail("\xcf\x83\xf2\x85\x9c\x8c\xef\xbc\x98.\xf0\x9e\xad\xa4"); } // [V7]2729test { try toUnicodeFail("\xcf\x83\xf2\x85\x9c\x8c\xef\xbc\x98.\xf0\x9e\xad\xa4"); } // [V7]
2730test { try toAsciiFail("\xcf\x83\xf2\x85\x9c\x8c\xef\xbc\x98.\xf0\x9e\xad\xa4", false); } // [V7]
2731test { try toAsciiFail("\xcf\x83\xf2\x85\x9c\x8c\xef\xbc\x98.\xf0\x9e\xad\xa4", true); } // [V7]
1434test { try toUnicodeFail("\xe2\x80\x8c\xe1\xa1\x91\xf0\x9f\x84\x80\xda\x84\xef\xbc\x8e-\xf0\x90\xab\x84\xf0\x91\xb2\xa4"); } // [B1, C1, V3, V7]2732test { try toUnicodeFail("\xe2\x80\x8c\xe1\xa1\x91\xf0\x9f\x84\x80\xda\x84\xef\xbc\x8e-\xf0\x90\xab\x84\xf0\x91\xb2\xa4"); } // [B1, C1, V3, V7]
2733test { try toAsciiFail("\xe2\x80\x8c\xe1\xa1\x91\xf0\x9f\x84\x80\xda\x84\xef\xbc\x8e-\xf0\x90\xab\x84\xf0\x91\xb2\xa4", false); } // [B1, C1, V3, V7]
2734test { try toAsciiFail("\xe2\x80\x8c\xe1\xa1\x91\xf0\x9f\x84\x80\xda\x84\xef\xbc\x8e-\xf0\x90\xab\x84\xf0\x91\xb2\xa4", true); } // [B1, B5, B6, V3, V7]
1435test { try toUnicodeFail("\xe2\x80\x8c\xe1\xa1\x910.\xda\x84.-\xf0\x90\xab\x84\xf0\x91\xb2\xa4"); } // [B1, C1, V3]2735test { try toUnicodeFail("\xe2\x80\x8c\xe1\xa1\x910.\xda\x84.-\xf0\x90\xab\x84\xf0\x91\xb2\xa4"); } // [B1, C1, V3]
2736test { try toAsciiFail("\xe2\x80\x8c\xe1\xa1\x910.\xda\x84.-\xf0\x90\xab\x84\xf0\x91\xb2\xa4", false); } // [B1, C1, V3]
2737test { try toAsciiFail("\xe2\x80\x8c\xe1\xa1\x910.\xda\x84.-\xf0\x90\xab\x84\xf0\x91\xb2\xa4", true); } // [B1, V3]
1436test { try toUnicodeFail("xn--0-o7j.xn--9ib.xn----ek5i065b"); } // [B1, V3]2738test { try toUnicodeFail("xn--0-o7j.xn--9ib.xn----ek5i065b"); } // [B1, V3]
2739test { try toAsciiFail("xn--0-o7j.xn--9ib.xn----ek5i065b", false); } // [B1, V3]
2740test { try toAsciiFail("xn--0-o7j.xn--9ib.xn----ek5i065b", true); } // [B1, V3]
1437test { try toUnicodeFail("xn--0-o7j263b.xn--9ib.xn----ek5i065b"); } // [B1, C1, V3]2741test { try toUnicodeFail("xn--0-o7j263b.xn--9ib.xn----ek5i065b"); } // [B1, C1, V3]
2742test { try toAsciiFail("xn--0-o7j263b.xn--9ib.xn----ek5i065b", false); } // [B1, C1, V3]
2743test { try toAsciiFail("xn--0-o7j263b.xn--9ib.xn----ek5i065b", true); } // [B1, C1, V3]
1438test { try toUnicodeFail("xn--9ib722gbw95a.xn----ek5i065b"); } // [B1, B5, B6, V3, V7]2744test { try toUnicodeFail("xn--9ib722gbw95a.xn----ek5i065b"); } // [B1, B5, B6, V3, V7]
2745test { try toAsciiFail("xn--9ib722gbw95a.xn----ek5i065b", false); } // [B1, B5, B6, V3, V7]
2746test { try toAsciiFail("xn--9ib722gbw95a.xn----ek5i065b", true); } // [B1, B5, B6, V3, V7]
1439test { try toUnicodeFail("xn--9ib722gvtfi563c.xn----ek5i065b"); } // [B1, C1, V3, V7]2747test { try toUnicodeFail("xn--9ib722gvtfi563c.xn----ek5i065b"); } // [B1, C1, V3, V7]
2748test { try toAsciiFail("xn--9ib722gvtfi563c.xn----ek5i065b", false); } // [B1, C1, V3, V7]
2749test { try toAsciiFail("xn--9ib722gvtfi563c.xn----ek5i065b", true); } // [B1, C1, V3, V7]
1440test { try toUnicodeFail("\xf0\x96\xa0\x8d\xe3\x80\x82\xf0\x90\xaa\xbf\xeb\x84\xaf\xf2\x9e\xb5\xb2"); } // [B2, B3, V7]2750test { try toUnicodeFail("\xf0\x96\xa0\x8d\xe3\x80\x82\xf0\x90\xaa\xbf\xeb\x84\xaf\xf2\x9e\xb5\xb2"); } // [B2, B3, V7]
2751test { try toAsciiFail("\xf0\x96\xa0\x8d\xe3\x80\x82\xf0\x90\xaa\xbf\xeb\x84\xaf\xf2\x9e\xb5\xb2", false); } // [B2, B3, V7]
2752test { try toAsciiFail("\xf0\x96\xa0\x8d\xe3\x80\x82\xf0\x90\xaa\xbf\xeb\x84\xaf\xf2\x9e\xb5\xb2", true); } // [B2, B3, V7]
1441test { try toUnicodeFail("\xf0\x96\xa0\x8d\xe3\x80\x82\xf0\x90\xaa\xbf\xe1\x84\x82\xe1\x85\xa6\xe1\x86\xb2\xf2\x9e\xb5\xb2"); } // [B2, B3, V7]2753test { try toUnicodeFail("\xf0\x96\xa0\x8d\xe3\x80\x82\xf0\x90\xaa\xbf\xe1\x84\x82\xe1\x85\xa6\xe1\x86\xb2\xf2\x9e\xb5\xb2"); } // [B2, B3, V7]
2754test { try toAsciiFail("\xf0\x96\xa0\x8d\xe3\x80\x82\xf0\x90\xaa\xbf\xe1\x84\x82\xe1\x85\xa6\xe1\x86\xb2\xf2\x9e\xb5\xb2", false); } // [B2, B3, V7]
2755test { try toAsciiFail("\xf0\x96\xa0\x8d\xe3\x80\x82\xf0\x90\xaa\xbf\xe1\x84\x82\xe1\x85\xa6\xe1\x86\xb2\xf2\x9e\xb5\xb2", true); } // [B2, B3, V7]
1442test { try toUnicodeFail("xn--4e9e.xn--l60bj21opd57g"); } // [B2, B3, V7]2756test { try toUnicodeFail("xn--4e9e.xn--l60bj21opd57g"); } // [B2, B3, V7]
2757test { try toAsciiFail("xn--4e9e.xn--l60bj21opd57g", false); } // [B2, B3, V7]
2758test { try toAsciiFail("xn--4e9e.xn--l60bj21opd57g", true); } // [B2, B3, V7]
1443test { try toUnicodeFail("\xe1\xa0\x87\xe1\x82\xb8\xe3\x80\x82\xd8\x83\xe1\x82\xa8\xf0\x9d\x86\x8a"); } // [B1, V7]2759test { try toUnicodeFail("\xe1\xa0\x87\xe1\x82\xb8\xe3\x80\x82\xd8\x83\xe1\x82\xa8\xf0\x9d\x86\x8a"); } // [B1, V7]
2760test { try toAsciiFail("\xe1\xa0\x87\xe1\x82\xb8\xe3\x80\x82\xd8\x83\xe1\x82\xa8\xf0\x9d\x86\x8a", false); } // [B1, V7]
2761test { try toAsciiFail("\xe1\xa0\x87\xe1\x82\xb8\xe3\x80\x82\xd8\x83\xe1\x82\xa8\xf0\x9d\x86\x8a", true); } // [B1, V7]
1444test { try toUnicodeFail("\xe1\xa0\x87\xe2\xb4\x98\xe3\x80\x82\xd8\x83\xe2\xb4\x88\xf0\x9d\x86\x8a"); } // [B1, V7]2762test { try toUnicodeFail("\xe1\xa0\x87\xe2\xb4\x98\xe3\x80\x82\xd8\x83\xe2\xb4\x88\xf0\x9d\x86\x8a"); } // [B1, V7]
2763test { try toAsciiFail("\xe1\xa0\x87\xe2\xb4\x98\xe3\x80\x82\xd8\x83\xe2\xb4\x88\xf0\x9d\x86\x8a", false); } // [B1, V7]
2764test { try toAsciiFail("\xe1\xa0\x87\xe2\xb4\x98\xe3\x80\x82\xd8\x83\xe2\xb4\x88\xf0\x9d\x86\x8a", true); } // [B1, V7]
1445test { try toUnicodeFail("xn--d6e009h.xn--lfb290rfu3z"); } // [B1, V7]2765test { try toUnicodeFail("xn--d6e009h.xn--lfb290rfu3z"); } // [B1, V7]
2766test { try toAsciiFail("xn--d6e009h.xn--lfb290rfu3z", false); } // [B1, V7]
2767test { try toAsciiFail("xn--d6e009h.xn--lfb290rfu3z", true); } // [B1, V7]
1446test { try toUnicodeFail("xn--wnd558a.xn--lfb465c1v87a"); } // [B1, V7]2768test { try toUnicodeFail("xn--wnd558a.xn--lfb465c1v87a"); } // [B1, V7]
2769test { try toAsciiFail("xn--wnd558a.xn--lfb465c1v87a", false); } // [B1, V7]
2770test { try toAsciiFail("xn--wnd558a.xn--lfb465c1v87a", true); } // [B1, V7]
1447test { try toUnicodeFail("\xe2\x92\x9a\xf3\xa0\x8b\x91\xf0\x9e\xa4\xb0\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe1\x82\xbc\xe1\xa3\xa5"); } // [B1, B5, V7]2771test { try toUnicodeFail("\xe2\x92\x9a\xf3\xa0\x8b\x91\xf0\x9e\xa4\xb0\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe1\x82\xbc\xe1\xa3\xa5"); } // [B1, B5, V7]
2772test { try toAsciiFail("\xe2\x92\x9a\xf3\xa0\x8b\x91\xf0\x9e\xa4\xb0\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe1\x82\xbc\xe1\xa3\xa5", false); } // [B1, B5, V7]
2773test { try toAsciiFail("\xe2\x92\x9a\xf3\xa0\x8b\x91\xf0\x9e\xa4\xb0\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe1\x82\xbc\xe1\xa3\xa5", true); } // [B1, B5, V7]
1448test { try toUnicodeFail("19.\xf3\xa0\x8b\x91\xf0\x9e\xa4\xb0\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe1\x82\xbc\xe1\xa3\xa5"); } // [B1, B5, V7]2774test { try toUnicodeFail("19.\xf3\xa0\x8b\x91\xf0\x9e\xa4\xb0\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe1\x82\xbc\xe1\xa3\xa5"); } // [B1, B5, V7]
2775test { try toAsciiFail("19.\xf3\xa0\x8b\x91\xf0\x9e\xa4\xb0\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe1\x82\xbc\xe1\xa3\xa5", false); } // [B1, B5, V7]
2776test { try toAsciiFail("19.\xf3\xa0\x8b\x91\xf0\x9e\xa4\xb0\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe1\x82\xbc\xe1\xa3\xa5", true); } // [B1, B5, V7]
1449test { try toUnicodeFail("19.\xf3\xa0\x8b\x91\xf0\x9e\xa4\xb0\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe2\xb4\x9c\xe1\xa3\xa5"); } // [B1, B5, V7]2777test { try toUnicodeFail("19.\xf3\xa0\x8b\x91\xf0\x9e\xa4\xb0\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe2\xb4\x9c\xe1\xa3\xa5"); } // [B1, B5, V7]
2778test { try toAsciiFail("19.\xf3\xa0\x8b\x91\xf0\x9e\xa4\xb0\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe2\xb4\x9c\xe1\xa3\xa5", false); } // [B1, B5, V7]
2779test { try toAsciiFail("19.\xf3\xa0\x8b\x91\xf0\x9e\xa4\xb0\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe2\xb4\x9c\xe1\xa3\xa5", true); } // [B1, B5, V7]
1450test { try toUnicodeFail("19.\xf3\xa0\x8b\x91\xf0\x9e\xa4\x8e\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe1\x82\xbc\xe1\xa3\xa5"); } // [B1, B5, V7]2780test { try toUnicodeFail("19.\xf3\xa0\x8b\x91\xf0\x9e\xa4\x8e\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe1\x82\xbc\xe1\xa3\xa5"); } // [B1, B5, V7]
2781test { try toAsciiFail("19.\xf3\xa0\x8b\x91\xf0\x9e\xa4\x8e\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe1\x82\xbc\xe1\xa3\xa5", false); } // [B1, B5, V7]
2782test { try toAsciiFail("19.\xf3\xa0\x8b\x91\xf0\x9e\xa4\x8e\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe1\x82\xbc\xe1\xa3\xa5", true); } // [B1, B5, V7]
1451test { try toUnicodeFail("19.\xf3\xa0\x8b\x91\xf0\x9e\xa4\x8e\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe2\xb4\x9c\xe1\xa3\xa5"); } // [B1, B5, V7]2783test { try toUnicodeFail("19.\xf3\xa0\x8b\x91\xf0\x9e\xa4\x8e\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe2\xb4\x9c\xe1\xa3\xa5"); } // [B1, B5, V7]
2784test { try toAsciiFail("19.\xf3\xa0\x8b\x91\xf0\x9e\xa4\x8e\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe2\xb4\x9c\xe1\xa3\xa5", false); } // [B1, B5, V7]
2785test { try toAsciiFail("19.\xf3\xa0\x8b\x91\xf0\x9e\xa4\x8e\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe2\xb4\x9c\xe1\xa3\xa5", true); } // [B1, B5, V7]
1452test { try toUnicodeFail("19.xn--oe6h75760c.xn--gib285gtxo2l9d"); } // [B1, B5, V7]2786test { try toUnicodeFail("19.xn--oe6h75760c.xn--gib285gtxo2l9d"); } // [B1, B5, V7]
2787test { try toAsciiFail("19.xn--oe6h75760c.xn--gib285gtxo2l9d", false); } // [B1, B5, V7]
2788test { try toAsciiFail("19.xn--oe6h75760c.xn--gib285gtxo2l9d", true); } // [B1, B5, V7]
1453test { try toUnicodeFail("\xe2\x92\x9a\xf3\xa0\x8b\x91\xf0\x9e\xa4\xb0\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe2\xb4\x9c\xe1\xa3\xa5"); } // [B1, B5, V7]2789test { try toUnicodeFail("\xe2\x92\x9a\xf3\xa0\x8b\x91\xf0\x9e\xa4\xb0\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe2\xb4\x9c\xe1\xa3\xa5"); } // [B1, B5, V7]
2790test { try toAsciiFail("\xe2\x92\x9a\xf3\xa0\x8b\x91\xf0\x9e\xa4\xb0\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe2\xb4\x9c\xe1\xa3\xa5", false); } // [B1, B5, V7]
2791test { try toAsciiFail("\xe2\x92\x9a\xf3\xa0\x8b\x91\xf0\x9e\xa4\xb0\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe2\xb4\x9c\xe1\xa3\xa5", true); } // [B1, B5, V7]
1454test { try toUnicodeFail("\xe2\x92\x9a\xf3\xa0\x8b\x91\xf0\x9e\xa4\x8e\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe1\x82\xbc\xe1\xa3\xa5"); } // [B1, B5, V7]2792test { try toUnicodeFail("\xe2\x92\x9a\xf3\xa0\x8b\x91\xf0\x9e\xa4\x8e\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe1\x82\xbc\xe1\xa3\xa5"); } // [B1, B5, V7]
2793test { try toAsciiFail("\xe2\x92\x9a\xf3\xa0\x8b\x91\xf0\x9e\xa4\x8e\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe1\x82\xbc\xe1\xa3\xa5", false); } // [B1, B5, V7]
2794test { try toAsciiFail("\xe2\x92\x9a\xf3\xa0\x8b\x91\xf0\x9e\xa4\x8e\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe1\x82\xbc\xe1\xa3\xa5", true); } // [B1, B5, V7]
1455test { try toUnicodeFail("\xe2\x92\x9a\xf3\xa0\x8b\x91\xf0\x9e\xa4\x8e\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe2\xb4\x9c\xe1\xa3\xa5"); } // [B1, B5, V7]2795test { try toUnicodeFail("\xe2\x92\x9a\xf3\xa0\x8b\x91\xf0\x9e\xa4\x8e\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe2\xb4\x9c\xe1\xa3\xa5"); } // [B1, B5, V7]
2796test { try toAsciiFail("\xe2\x92\x9a\xf3\xa0\x8b\x91\xf0\x9e\xa4\x8e\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe2\xb4\x9c\xe1\xa3\xa5", false); } // [B1, B5, V7]
2797test { try toAsciiFail("\xe2\x92\x9a\xf3\xa0\x8b\x91\xf0\x9e\xa4\x8e\xe3\x80\x82\xe7\x89\xa3\xd9\xa7\xe2\xb4\x9c\xe1\xa3\xa5", true); } // [B1, B5, V7]
1456test { try toUnicodeFail("xn--cthy466n29j3e.xn--gib285gtxo2l9d"); } // [B1, B5, V7]2798test { try toUnicodeFail("xn--cthy466n29j3e.xn--gib285gtxo2l9d"); } // [B1, B5, V7]
2799test { try toAsciiFail("xn--cthy466n29j3e.xn--gib285gtxo2l9d", false); } // [B1, B5, V7]
2800test { try toAsciiFail("xn--cthy466n29j3e.xn--gib285gtxo2l9d", true); } // [B1, B5, V7]
1457test { try toUnicodeFail("19.xn--oe6h75760c.xn--gib404ccxgh00h"); } // [B1, B5, V7]2801test { try toUnicodeFail("19.xn--oe6h75760c.xn--gib404ccxgh00h"); } // [B1, B5, V7]
2802test { try toAsciiFail("19.xn--oe6h75760c.xn--gib404ccxgh00h", false); } // [B1, B5, V7]
2803test { try toAsciiFail("19.xn--oe6h75760c.xn--gib404ccxgh00h", true); } // [B1, B5, V7]
1458test { try toUnicodeFail("xn--cthy466n29j3e.xn--gib404ccxgh00h"); } // [B1, B5, V7]2804test { try toUnicodeFail("xn--cthy466n29j3e.xn--gib404ccxgh00h"); } // [B1, B5, V7]
2805test { try toAsciiFail("xn--cthy466n29j3e.xn--gib404ccxgh00h", false); } // [B1, B5, V7]
2806test { try toAsciiFail("xn--cthy466n29j3e.xn--gib404ccxgh00h", true); } // [B1, B5, V7]
1459test { try toUnicodeFail("-\xf0\x90\x8b\xb1\xf0\x90\xb0\xbd\xe2\x92\x88.\xe1\x82\xb3"); } // [B1, V3, V7]2807test { try toUnicodeFail("-\xf0\x90\x8b\xb1\xf0\x90\xb0\xbd\xe2\x92\x88.\xe1\x82\xb3"); } // [B1, V3, V7]
2808test { try toAsciiFail("-\xf0\x90\x8b\xb1\xf0\x90\xb0\xbd\xe2\x92\x88.\xe1\x82\xb3", false); } // [B1, V3, V7]
2809test { try toAsciiFail("-\xf0\x90\x8b\xb1\xf0\x90\xb0\xbd\xe2\x92\x88.\xe1\x82\xb3", true); } // [B1, V3, V7]
1460test { try toUnicodeFail("-\xf0\x90\x8b\xb1\xf0\x90\xb0\xbd1..\xe1\x82\xb3"); } // [B1, V3, X4_2]2810test { try toUnicodeFail("-\xf0\x90\x8b\xb1\xf0\x90\xb0\xbd1..\xe1\x82\xb3"); } // [B1, V3, X4_2]
2811test { try toAsciiFail("-\xf0\x90\x8b\xb1\xf0\x90\xb0\xbd1..\xe1\x82\xb3", false); } // [B1, V3, A4_2]
2812test { try toAsciiFail("-\xf0\x90\x8b\xb1\xf0\x90\xb0\xbd1..\xe1\x82\xb3", true); } // [B1, V3, A4_2]
1461test { try toUnicodeFail("-\xf0\x90\x8b\xb1\xf0\x90\xb0\xbd1..\xe2\xb4\x93"); } // [B1, V3, X4_2]2813test { try toUnicodeFail("-\xf0\x90\x8b\xb1\xf0\x90\xb0\xbd1..\xe2\xb4\x93"); } // [B1, V3, X4_2]
2814test { try toAsciiFail("-\xf0\x90\x8b\xb1\xf0\x90\xb0\xbd1..\xe2\xb4\x93", false); } // [B1, V3, A4_2]
2815test { try toAsciiFail("-\xf0\x90\x8b\xb1\xf0\x90\xb0\xbd1..\xe2\xb4\x93", true); } // [B1, V3, A4_2]
1462test { try toUnicodeFail("xn---1-895nq11a..xn--blj"); } // [B1, V3, X4_2]2816test { try toUnicodeFail("xn---1-895nq11a..xn--blj"); } // [B1, V3, X4_2]
2817test { try toAsciiFail("xn---1-895nq11a..xn--blj", false); } // [B1, V3, A4_2]
2818test { try toAsciiFail("xn---1-895nq11a..xn--blj", true); } // [B1, V3, A4_2]
1463test { try toUnicodeFail("-\xf0\x90\x8b\xb1\xf0\x90\xb0\xbd\xe2\x92\x88.\xe2\xb4\x93"); } // [B1, V3, V7]2819test { try toUnicodeFail("-\xf0\x90\x8b\xb1\xf0\x90\xb0\xbd\xe2\x92\x88.\xe2\xb4\x93"); } // [B1, V3, V7]
2820test { try toAsciiFail("-\xf0\x90\x8b\xb1\xf0\x90\xb0\xbd\xe2\x92\x88.\xe2\xb4\x93", false); } // [B1, V3, V7]
2821test { try toAsciiFail("-\xf0\x90\x8b\xb1\xf0\x90\xb0\xbd\xe2\x92\x88.\xe2\xb4\x93", true); } // [B1, V3, V7]
1464test { try toUnicodeFail("xn----ecp0206g90h.xn--blj"); } // [B1, V3, V7]2822test { try toUnicodeFail("xn----ecp0206g90h.xn--blj"); } // [B1, V3, V7]
2823test { try toAsciiFail("xn----ecp0206g90h.xn--blj", false); } // [B1, V3, V7]
2824test { try toAsciiFail("xn----ecp0206g90h.xn--blj", true); } // [B1, V3, V7]
1465test { try toUnicodeFail("xn---1-895nq11a..xn--rnd"); } // [B1, V3, V7, X4_2]2825test { try toUnicodeFail("xn---1-895nq11a..xn--rnd"); } // [B1, V3, V7, X4_2]
2826test { try toAsciiFail("xn---1-895nq11a..xn--rnd", false); } // [B1, V3, V7, A4_2]
2827test { try toAsciiFail("xn---1-895nq11a..xn--rnd", true); } // [B1, V3, V7, A4_2]
1466test { try toUnicodeFail("xn----ecp0206g90h.xn--rnd"); } // [B1, V3, V7]2828test { try toUnicodeFail("xn----ecp0206g90h.xn--rnd"); } // [B1, V3, V7]
2829test { try toAsciiFail("xn----ecp0206g90h.xn--rnd", false); } // [B1, V3, V7]
2830test { try toAsciiFail("xn----ecp0206g90h.xn--rnd", true); } // [B1, V3, V7]
1467test { try toUnicodeFail("\xe2\x80\x8c\xea\xb8\x83.\xe6\xa6\xb6-"); } // [C1, V3]2831test { try toUnicodeFail("\xe2\x80\x8c\xea\xb8\x83.\xe6\xa6\xb6-"); } // [C1, V3]
2832test { try toAsciiFail("\xe2\x80\x8c\xea\xb8\x83.\xe6\xa6\xb6-", false); } // [C1, V3]
2833test { try toAsciiFail("\xe2\x80\x8c\xea\xb8\x83.\xe6\xa6\xb6-", true); } // [V3]
1468test { try toUnicodeFail("\xe2\x80\x8c\xe1\x84\x80\xe1\x85\xb3\xe1\x86\xb2.\xe6\xa6\xb6-"); } // [C1, V3]2834test { try toUnicodeFail("\xe2\x80\x8c\xe1\x84\x80\xe1\x85\xb3\xe1\x86\xb2.\xe6\xa6\xb6-"); } // [C1, V3]
2835test { try toAsciiFail("\xe2\x80\x8c\xe1\x84\x80\xe1\x85\xb3\xe1\x86\xb2.\xe6\xa6\xb6-", false); } // [C1, V3]
2836test { try toAsciiFail("\xe2\x80\x8c\xe1\x84\x80\xe1\x85\xb3\xe1\x86\xb2.\xe6\xa6\xb6-", true); } // [V3]
1469test { try toUnicodeFail("xn--ej0b.xn----d87b"); } // [V3]2837test { try toUnicodeFail("xn--ej0b.xn----d87b"); } // [V3]
2838test { try toAsciiFail("xn--ej0b.xn----d87b", false); } // [V3]
2839test { try toAsciiFail("xn--ej0b.xn----d87b", true); } // [V3]
1470test { try toUnicodeFail("xn--0ug3307c.xn----d87b"); } // [C1, V3]2840test { try toUnicodeFail("xn--0ug3307c.xn----d87b"); } // [C1, V3]
2841test { try toAsciiFail("xn--0ug3307c.xn----d87b", false); } // [C1, V3]
2842test { try toAsciiFail("xn--0ug3307c.xn----d87b", true); } // [C1, V3]
1471test { try toUnicodeFail("\xeb\x89\x93\xe6\xb3\x93\xf0\x9c\xb5\xbd.\xe0\xa7\x8d\xe2\x80\x8d"); } // [V6]2843test { try toUnicodeFail("\xeb\x89\x93\xe6\xb3\x93\xf0\x9c\xb5\xbd.\xe0\xa7\x8d\xe2\x80\x8d"); } // [V6]
2844test { try toAsciiFail("\xeb\x89\x93\xe6\xb3\x93\xf0\x9c\xb5\xbd.\xe0\xa7\x8d\xe2\x80\x8d", false); } // [V6]
2845test { try toAsciiFail("\xeb\x89\x93\xe6\xb3\x93\xf0\x9c\xb5\xbd.\xe0\xa7\x8d\xe2\x80\x8d", true); } // [V6]
1472test { try toUnicodeFail("\xe1\x84\x82\xe1\x85\xb0\xe1\x86\xbe\xe6\xb3\x93\xf0\x9c\xb5\xbd.\xe0\xa7\x8d\xe2\x80\x8d"); } // [V6]2846test { try toUnicodeFail("\xe1\x84\x82\xe1\x85\xb0\xe1\x86\xbe\xe6\xb3\x93\xf0\x9c\xb5\xbd.\xe0\xa7\x8d\xe2\x80\x8d"); } // [V6]
2847test { try toAsciiFail("\xe1\x84\x82\xe1\x85\xb0\xe1\x86\xbe\xe6\xb3\x93\xf0\x9c\xb5\xbd.\xe0\xa7\x8d\xe2\x80\x8d", false); } // [V6]
2848test { try toAsciiFail("\xe1\x84\x82\xe1\x85\xb0\xe1\x86\xbe\xe6\xb3\x93\xf0\x9c\xb5\xbd.\xe0\xa7\x8d\xe2\x80\x8d", true); } // [V6]
1473test { try toUnicodeFail("xn--lwwp69lqs7m.xn--b7b"); } // [V6]2849test { try toUnicodeFail("xn--lwwp69lqs7m.xn--b7b"); } // [V6]
2850test { try toAsciiFail("xn--lwwp69lqs7m.xn--b7b", false); } // [V6]
2851test { try toAsciiFail("xn--lwwp69lqs7m.xn--b7b", true); } // [V6]
1474test { try toUnicodeFail("xn--lwwp69lqs7m.xn--b7b605i"); } // [V6]2852test { try toUnicodeFail("xn--lwwp69lqs7m.xn--b7b605i"); } // [V6]
2853test { try toAsciiFail("xn--lwwp69lqs7m.xn--b7b605i", false); } // [V6]
2854test { try toAsciiFail("xn--lwwp69lqs7m.xn--b7b605i", true); } // [V6]
1475test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb4\xc3\x9f\xef\xbd\xa1\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c"); } // [B1, C2, V6, V7]2855test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb4\xc3\x9f\xef\xbd\xa1\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c"); } // [B1, C2, V6, V7]
2856test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb4\xc3\x9f\xef\xbd\xa1\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c", false); } // [B1, C2, V6, V7]
2857test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb4\xc3\x9f\xef\xbd\xa1\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c", true); } // [B1, V6, V7]
1476test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb4\xc3\x9f\xe3\x80\x82\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c"); } // [B1, C2, V6, V7]2858test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb4\xc3\x9f\xe3\x80\x82\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c"); } // [B1, C2, V6, V7]
2859test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb4\xc3\x9f\xe3\x80\x82\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c", false); } // [B1, C2, V6, V7]
2860test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb4\xc3\x9f\xe3\x80\x82\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c", true); } // [B1, V6, V7]
1477test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb4SS\xe3\x80\x82\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c"); } // [B1, C2, V6, V7]2861test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb4SS\xe3\x80\x82\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c"); } // [B1, C2, V6, V7]
2862test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb4SS\xe3\x80\x82\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c", false); } // [B1, C2, V6, V7]
2863test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb4SS\xe3\x80\x82\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c", true); } // [B1, V6, V7]
1478test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb4ss\xe3\x80\x82\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c"); } // [B1, C2, V6, V7]2864test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb4ss\xe3\x80\x82\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c"); } // [B1, C2, V6, V7]
2865test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb4ss\xe3\x80\x82\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c", false); } // [B1, C2, V6, V7]
2866test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb4ss\xe3\x80\x82\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c", true); } // [B1, V6, V7]
1479test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb4Ss\xe3\x80\x82\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c"); } // [B1, C2, V6, V7]2867test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb4Ss\xe3\x80\x82\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c"); } // [B1, C2, V6, V7]
2868test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb4Ss\xe3\x80\x82\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c", false); } // [B1, C2, V6, V7]
2869test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb4Ss\xe3\x80\x82\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c", true); } // [B1, V6, V7]
1480test { try toUnicodeFail("xn--ss-ti3o.xn--57c638l8774i"); } // [B1, V6, V7]2870test { try toUnicodeFail("xn--ss-ti3o.xn--57c638l8774i"); } // [B1, V6, V7]
2871test { try toAsciiFail("xn--ss-ti3o.xn--57c638l8774i", false); } // [B1, V6, V7]
2872test { try toAsciiFail("xn--ss-ti3o.xn--57c638l8774i", true); } // [B1, V6, V7]
1481test { try toUnicodeFail("xn--ss-l1t5169j.xn--57c638l8774i"); } // [B1, C2, V6, V7]2873test { try toUnicodeFail("xn--ss-l1t5169j.xn--57c638l8774i"); } // [B1, C2, V6, V7]
2874test { try toAsciiFail("xn--ss-l1t5169j.xn--57c638l8774i", false); } // [B1, C2, V6, V7]
2875test { try toAsciiFail("xn--ss-l1t5169j.xn--57c638l8774i", true); } // [B1, C2, V6, V7]
1482test { try toUnicodeFail("xn--zca770nip7n.xn--57c638l8774i"); } // [B1, C2, V6, V7]2876test { try toUnicodeFail("xn--zca770nip7n.xn--57c638l8774i"); } // [B1, C2, V6, V7]
2877test { try toAsciiFail("xn--zca770nip7n.xn--57c638l8774i", false); } // [B1, C2, V6, V7]
2878test { try toAsciiFail("xn--zca770nip7n.xn--57c638l8774i", true); } // [B1, C2, V6, V7]
1483test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb4SS\xef\xbd\xa1\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c"); } // [B1, C2, V6, V7]2879test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb4SS\xef\xbd\xa1\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c"); } // [B1, C2, V6, V7]
2880test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb4SS\xef\xbd\xa1\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c", false); } // [B1, C2, V6, V7]
2881test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb4SS\xef\xbd\xa1\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c", true); } // [B1, V6, V7]
1484test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb4ss\xef\xbd\xa1\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c"); } // [B1, C2, V6, V7]2882test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb4ss\xef\xbd\xa1\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c"); } // [B1, C2, V6, V7]
2883test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb4ss\xef\xbd\xa1\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c", false); } // [B1, C2, V6, V7]
2884test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb4ss\xef\xbd\xa1\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c", true); } // [B1, V6, V7]
1485test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb4Ss\xef\xbd\xa1\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c"); } // [B1, C2, V6, V7]2885test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb4Ss\xef\xbd\xa1\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c"); } // [B1, C2, V6, V7]
2886test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb4Ss\xef\xbd\xa1\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c", false); } // [B1, C2, V6, V7]
2887test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb4Ss\xef\xbd\xa1\xe0\xba\xb4\xe2\xad\xb5\xf1\xaa\x85\x8c", true); } // [B1, V6, V7]
1486test { try toUnicodeFail("\xe1\xad\x84\xef\xbc\x8e\xe1\xae\xaa-\xe2\x89\xae\xe2\x89\xa0"); } // [V6]2888test { try toUnicodeFail("\xe1\xad\x84\xef\xbc\x8e\xe1\xae\xaa-\xe2\x89\xae\xe2\x89\xa0"); } // [V6]
2889test { try toAsciiFail("\xe1\xad\x84\xef\xbc\x8e\xe1\xae\xaa-\xe2\x89\xae\xe2\x89\xa0", false); } // [V6]
2890test { try toAsciiFail("\xe1\xad\x84\xef\xbc\x8e\xe1\xae\xaa-\xe2\x89\xae\xe2\x89\xa0", true); } // [V6]
1487test { try toUnicodeFail("\xe1\xad\x84\xef\xbc\x8e\xe1\xae\xaa-<\xcc\xb8=\xcc\xb8"); } // [V6]2891test { try toUnicodeFail("\xe1\xad\x84\xef\xbc\x8e\xe1\xae\xaa-<\xcc\xb8=\xcc\xb8"); } // [V6]
2892test { try toAsciiFail("\xe1\xad\x84\xef\xbc\x8e\xe1\xae\xaa-<\xcc\xb8=\xcc\xb8", false); } // [V6]
2893test { try toAsciiFail("\xe1\xad\x84\xef\xbc\x8e\xe1\xae\xaa-<\xcc\xb8=\xcc\xb8", true); } // [V6]
1488test { try toUnicodeFail("\xe1\xad\x84.\xe1\xae\xaa-\xe2\x89\xae\xe2\x89\xa0"); } // [V6]2894test { try toUnicodeFail("\xe1\xad\x84.\xe1\xae\xaa-\xe2\x89\xae\xe2\x89\xa0"); } // [V6]
2895test { try toAsciiFail("\xe1\xad\x84.\xe1\xae\xaa-\xe2\x89\xae\xe2\x89\xa0", false); } // [V6]
2896test { try toAsciiFail("\xe1\xad\x84.\xe1\xae\xaa-\xe2\x89\xae\xe2\x89\xa0", true); } // [V6]
1489test { try toUnicodeFail("\xe1\xad\x84.\xe1\xae\xaa-<\xcc\xb8=\xcc\xb8"); } // [V6]2897test { try toUnicodeFail("\xe1\xad\x84.\xe1\xae\xaa-<\xcc\xb8=\xcc\xb8"); } // [V6]
2898test { try toAsciiFail("\xe1\xad\x84.\xe1\xae\xaa-<\xcc\xb8=\xcc\xb8", false); } // [V6]
2899test { try toAsciiFail("\xe1\xad\x84.\xe1\xae\xaa-<\xcc\xb8=\xcc\xb8", true); } // [V6]
1490test { try toUnicodeFail("xn--1uf.xn----nmlz65aub"); } // [V6]2900test { try toUnicodeFail("xn--1uf.xn----nmlz65aub"); } // [V6]
2901test { try toAsciiFail("xn--1uf.xn----nmlz65aub", false); } // [V6]
2902test { try toAsciiFail("xn--1uf.xn----nmlz65aub", true); } // [V6]
1491test { try toUnicodeFail("\xe1\xaf\xb3\xe1\x82\xb1\xe1\x85\x9f\xef\xbc\x8e\xf0\x91\x84\xb4\xe2\x84\xb2"); } // [V6]2903test { try toUnicodeFail("\xe1\xaf\xb3\xe1\x82\xb1\xe1\x85\x9f\xef\xbc\x8e\xf0\x91\x84\xb4\xe2\x84\xb2"); } // [V6]
2904test { try toAsciiFail("\xe1\xaf\xb3\xe1\x82\xb1\xe1\x85\x9f\xef\xbc\x8e\xf0\x91\x84\xb4\xe2\x84\xb2", false); } // [V6]
2905test { try toAsciiFail("\xe1\xaf\xb3\xe1\x82\xb1\xe1\x85\x9f\xef\xbc\x8e\xf0\x91\x84\xb4\xe2\x84\xb2", true); } // [V6]
1492test { try toUnicodeFail("\xe1\xaf\xb3\xe1\x82\xb1\xe1\x85\x9f.\xf0\x91\x84\xb4\xe2\x84\xb2"); } // [V6]2906test { try toUnicodeFail("\xe1\xaf\xb3\xe1\x82\xb1\xe1\x85\x9f.\xf0\x91\x84\xb4\xe2\x84\xb2"); } // [V6]
2907test { try toAsciiFail("\xe1\xaf\xb3\xe1\x82\xb1\xe1\x85\x9f.\xf0\x91\x84\xb4\xe2\x84\xb2", false); } // [V6]
2908test { try toAsciiFail("\xe1\xaf\xb3\xe1\x82\xb1\xe1\x85\x9f.\xf0\x91\x84\xb4\xe2\x84\xb2", true); } // [V6]
1493test { try toUnicodeFail("\xe1\xaf\xb3\xe2\xb4\x91\xe1\x85\x9f.\xf0\x91\x84\xb4\xe2\x85\x8e"); } // [V6]2909test { try toUnicodeFail("\xe1\xaf\xb3\xe2\xb4\x91\xe1\x85\x9f.\xf0\x91\x84\xb4\xe2\x85\x8e"); } // [V6]
2910test { try toAsciiFail("\xe1\xaf\xb3\xe2\xb4\x91\xe1\x85\x9f.\xf0\x91\x84\xb4\xe2\x85\x8e", false); } // [V6]
2911test { try toAsciiFail("\xe1\xaf\xb3\xe2\xb4\x91\xe1\x85\x9f.\xf0\x91\x84\xb4\xe2\x85\x8e", true); } // [V6]
1494test { try toUnicodeFail("\xe1\xaf\xb3\xe1\x82\xb1\xe1\x85\x9f.\xf0\x91\x84\xb4\xe2\x85\x8e"); } // [V6]2912test { try toUnicodeFail("\xe1\xaf\xb3\xe1\x82\xb1\xe1\x85\x9f.\xf0\x91\x84\xb4\xe2\x85\x8e"); } // [V6]
2913test { try toAsciiFail("\xe1\xaf\xb3\xe1\x82\xb1\xe1\x85\x9f.\xf0\x91\x84\xb4\xe2\x85\x8e", false); } // [V6]
2914test { try toAsciiFail("\xe1\xaf\xb3\xe1\x82\xb1\xe1\x85\x9f.\xf0\x91\x84\xb4\xe2\x85\x8e", true); } // [V6]
1495test { try toUnicodeFail("xn--1zf224e.xn--73g3065g"); } // [V6]2915test { try toUnicodeFail("xn--1zf224e.xn--73g3065g"); } // [V6]
2916test { try toAsciiFail("xn--1zf224e.xn--73g3065g", false); } // [V6]
2917test { try toAsciiFail("xn--1zf224e.xn--73g3065g", true); } // [V6]
1496test { try toUnicodeFail("\xe1\xaf\xb3\xe2\xb4\x91\xe1\x85\x9f\xef\xbc\x8e\xf0\x91\x84\xb4\xe2\x85\x8e"); } // [V6]2918test { try toUnicodeFail("\xe1\xaf\xb3\xe2\xb4\x91\xe1\x85\x9f\xef\xbc\x8e\xf0\x91\x84\xb4\xe2\x85\x8e"); } // [V6]
2919test { try toAsciiFail("\xe1\xaf\xb3\xe2\xb4\x91\xe1\x85\x9f\xef\xbc\x8e\xf0\x91\x84\xb4\xe2\x85\x8e", false); } // [V6]
2920test { try toAsciiFail("\xe1\xaf\xb3\xe2\xb4\x91\xe1\x85\x9f\xef\xbc\x8e\xf0\x91\x84\xb4\xe2\x85\x8e", true); } // [V6]
1497test { try toUnicodeFail("\xe1\xaf\xb3\xe1\x82\xb1\xe1\x85\x9f\xef\xbc\x8e\xf0\x91\x84\xb4\xe2\x85\x8e"); } // [V6]2921test { try toUnicodeFail("\xe1\xaf\xb3\xe1\x82\xb1\xe1\x85\x9f\xef\xbc\x8e\xf0\x91\x84\xb4\xe2\x85\x8e"); } // [V6]
2922test { try toAsciiFail("\xe1\xaf\xb3\xe1\x82\xb1\xe1\x85\x9f\xef\xbc\x8e\xf0\x91\x84\xb4\xe2\x85\x8e", false); } // [V6]
2923test { try toAsciiFail("\xe1\xaf\xb3\xe1\x82\xb1\xe1\x85\x9f\xef\xbc\x8e\xf0\x91\x84\xb4\xe2\x85\x8e", true); } // [V6]
1498test { try toUnicodeFail("xn--pnd26a55x.xn--73g3065g"); } // [V6, V7]2924test { try toUnicodeFail("xn--pnd26a55x.xn--73g3065g"); } // [V6, V7]
2925test { try toAsciiFail("xn--pnd26a55x.xn--73g3065g", false); } // [V6, V7]
2926test { try toAsciiFail("xn--pnd26a55x.xn--73g3065g", true); } // [V6, V7]
1499test { try toUnicodeFail("xn--osd925cvyn.xn--73g3065g"); } // [V6, V7]2927test { try toUnicodeFail("xn--osd925cvyn.xn--73g3065g"); } // [V6, V7]
2928test { try toAsciiFail("xn--osd925cvyn.xn--73g3065g", false); } // [V6, V7]
2929test { try toAsciiFail("xn--osd925cvyn.xn--73g3065g", true); } // [V6, V7]
1500test { try toUnicodeFail("xn--pnd26a55x.xn--f3g7465g"); } // [V6, V7]2930test { try toUnicodeFail("xn--pnd26a55x.xn--f3g7465g"); } // [V6, V7]
2931test { try toAsciiFail("xn--pnd26a55x.xn--f3g7465g", false); } // [V6, V7]
2932test { try toAsciiFail("xn--pnd26a55x.xn--f3g7465g", true); } // [V6, V7]
1501test { try toUnicodeFail("\xf0\x9c\x89\x86\xe3\x80\x82\xe1\x82\xa3\xf0\x90\xb4\xa3\xf0\x90\xb9\xb9\xeb\x98\xaf"); } // [B5, V7]2933test { try toUnicodeFail("\xf0\x9c\x89\x86\xe3\x80\x82\xe1\x82\xa3\xf0\x90\xb4\xa3\xf0\x90\xb9\xb9\xeb\x98\xaf"); } // [B5, V7]
2934test { try toAsciiFail("\xf0\x9c\x89\x86\xe3\x80\x82\xe1\x82\xa3\xf0\x90\xb4\xa3\xf0\x90\xb9\xb9\xeb\x98\xaf", false); } // [B5, V7]
2935test { try toAsciiFail("\xf0\x9c\x89\x86\xe3\x80\x82\xe1\x82\xa3\xf0\x90\xb4\xa3\xf0\x90\xb9\xb9\xeb\x98\xaf", true); } // [B5, V7]
1502test { try toUnicodeFail("\xf0\x9c\x89\x86\xe3\x80\x82\xe1\x82\xa3\xf0\x90\xb4\xa3\xf0\x90\xb9\xb9\xe1\x84\x84\xe1\x85\xaa\xe1\x86\xaa"); } // [B5, V7]2936test { try toUnicodeFail("\xf0\x9c\x89\x86\xe3\x80\x82\xe1\x82\xa3\xf0\x90\xb4\xa3\xf0\x90\xb9\xb9\xe1\x84\x84\xe1\x85\xaa\xe1\x86\xaa"); } // [B5, V7]
2937test { try toAsciiFail("\xf0\x9c\x89\x86\xe3\x80\x82\xe1\x82\xa3\xf0\x90\xb4\xa3\xf0\x90\xb9\xb9\xe1\x84\x84\xe1\x85\xaa\xe1\x86\xaa", false); } // [B5, V7]
2938test { try toAsciiFail("\xf0\x9c\x89\x86\xe3\x80\x82\xe1\x82\xa3\xf0\x90\xb4\xa3\xf0\x90\xb9\xb9\xe1\x84\x84\xe1\x85\xaa\xe1\x86\xaa", true); } // [B5, V7]
1503test { try toUnicodeFail("\xf0\x9c\x89\x86\xe3\x80\x82\xe2\xb4\x83\xf0\x90\xb4\xa3\xf0\x90\xb9\xb9\xe1\x84\x84\xe1\x85\xaa\xe1\x86\xaa"); } // [B5, V7]2939test { try toUnicodeFail("\xf0\x9c\x89\x86\xe3\x80\x82\xe2\xb4\x83\xf0\x90\xb4\xa3\xf0\x90\xb9\xb9\xe1\x84\x84\xe1\x85\xaa\xe1\x86\xaa"); } // [B5, V7]
2940test { try toAsciiFail("\xf0\x9c\x89\x86\xe3\x80\x82\xe2\xb4\x83\xf0\x90\xb4\xa3\xf0\x90\xb9\xb9\xe1\x84\x84\xe1\x85\xaa\xe1\x86\xaa", false); } // [B5, V7]
2941test { try toAsciiFail("\xf0\x9c\x89\x86\xe3\x80\x82\xe2\xb4\x83\xf0\x90\xb4\xa3\xf0\x90\xb9\xb9\xe1\x84\x84\xe1\x85\xaa\xe1\x86\xaa", true); } // [B5, V7]
1504test { try toUnicodeFail("\xf0\x9c\x89\x86\xe3\x80\x82\xe2\xb4\x83\xf0\x90\xb4\xa3\xf0\x90\xb9\xb9\xeb\x98\xaf"); } // [B5, V7]2942test { try toUnicodeFail("\xf0\x9c\x89\x86\xe3\x80\x82\xe2\xb4\x83\xf0\x90\xb4\xa3\xf0\x90\xb9\xb9\xeb\x98\xaf"); } // [B5, V7]
2943test { try toAsciiFail("\xf0\x9c\x89\x86\xe3\x80\x82\xe2\xb4\x83\xf0\x90\xb4\xa3\xf0\x90\xb9\xb9\xeb\x98\xaf", false); } // [B5, V7]
2944test { try toAsciiFail("\xf0\x9c\x89\x86\xe3\x80\x82\xe2\xb4\x83\xf0\x90\xb4\xa3\xf0\x90\xb9\xb9\xeb\x98\xaf", true); } // [B5, V7]
1505test { try toUnicodeFail("xn--187g.xn--ukjy205b8rscdeb"); } // [B5, V7]2945test { try toUnicodeFail("xn--187g.xn--ukjy205b8rscdeb"); } // [B5, V7]
2946test { try toAsciiFail("xn--187g.xn--ukjy205b8rscdeb", false); } // [B5, V7]
2947test { try toAsciiFail("xn--187g.xn--ukjy205b8rscdeb", true); } // [B5, V7]
1506test { try toUnicodeFail("xn--187g.xn--bnd4785f8r8bdeb"); } // [B5, V7]2948test { try toUnicodeFail("xn--187g.xn--bnd4785f8r8bdeb"); } // [B5, V7]
2949test { try toAsciiFail("xn--187g.xn--bnd4785f8r8bdeb", false); } // [B5, V7]
2950test { try toAsciiFail("xn--187g.xn--bnd4785f8r8bdeb", true); } // [B5, V7]
1507test { try toUnicodeFail("\xf0\x90\xab\x80\xef\xbd\xa1\xe2\xb3\xbb\xf3\xa0\x99\xbe\xf3\xa0\x84\xb7\xe3\x85\xa4"); } // [B1, V7]2951test { try toUnicodeFail("\xf0\x90\xab\x80\xef\xbd\xa1\xe2\xb3\xbb\xf3\xa0\x99\xbe\xf3\xa0\x84\xb7\xe3\x85\xa4"); } // [B1, V7]
2952test { try toAsciiFail("\xf0\x90\xab\x80\xef\xbd\xa1\xe2\xb3\xbb\xf3\xa0\x99\xbe\xf3\xa0\x84\xb7\xe3\x85\xa4", false); } // [B1, V7]
2953test { try toAsciiFail("\xf0\x90\xab\x80\xef\xbd\xa1\xe2\xb3\xbb\xf3\xa0\x99\xbe\xf3\xa0\x84\xb7\xe3\x85\xa4", true); } // [B1, V7]
1508test { try toUnicodeFail("\xf0\x90\xab\x80\xe3\x80\x82\xe2\xb3\xbb\xf3\xa0\x99\xbe\xf3\xa0\x84\xb7\xe1\x85\xa0"); } // [B1, V7]2954test { try toUnicodeFail("\xf0\x90\xab\x80\xe3\x80\x82\xe2\xb3\xbb\xf3\xa0\x99\xbe\xf3\xa0\x84\xb7\xe1\x85\xa0"); } // [B1, V7]
2955test { try toAsciiFail("\xf0\x90\xab\x80\xe3\x80\x82\xe2\xb3\xbb\xf3\xa0\x99\xbe\xf3\xa0\x84\xb7\xe1\x85\xa0", false); } // [B1, V7]
2956test { try toAsciiFail("\xf0\x90\xab\x80\xe3\x80\x82\xe2\xb3\xbb\xf3\xa0\x99\xbe\xf3\xa0\x84\xb7\xe1\x85\xa0", true); } // [B1, V7]
1509test { try toUnicodeFail("xn--pw9c.xn--mkjw9654i"); } // [B1, V7]2957test { try toUnicodeFail("xn--pw9c.xn--mkjw9654i"); } // [B1, V7]
2958test { try toAsciiFail("xn--pw9c.xn--mkjw9654i", false); } // [B1, V7]
2959test { try toAsciiFail("xn--pw9c.xn--mkjw9654i", true); } // [B1, V7]
1510test { try toUnicodeFail("xn--pw9c.xn--psd742lxt32w"); } // [B1, V7]2960test { try toUnicodeFail("xn--pw9c.xn--psd742lxt32w"); } // [B1, V7]
2961test { try toAsciiFail("xn--pw9c.xn--psd742lxt32w", false); } // [B1, V7]
2962test { try toAsciiFail("xn--pw9c.xn--psd742lxt32w", true); } // [B1, V7]
1511test { try toUnicodeFail("xn--pw9c.xn--mkj83l4v899a"); } // [B1, V7]2963test { try toUnicodeFail("xn--pw9c.xn--mkj83l4v899a"); } // [B1, V7]
2964test { try toAsciiFail("xn--pw9c.xn--mkj83l4v899a", false); } // [B1, V7]
2965test { try toAsciiFail("xn--pw9c.xn--mkj83l4v899a", true); } // [B1, V7]
1512test { try toUnicodeFail("\xde\x9a\xe2\xbe\x87\xef\xbc\x8e\xdc\x9e-\xf0\x90\x8b\xb0"); } // [B2, B3]2966test { try toUnicodeFail("\xde\x9a\xe2\xbe\x87\xef\xbc\x8e\xdc\x9e-\xf0\x90\x8b\xb0"); } // [B2, B3]
2967test { try toAsciiFail("\xde\x9a\xe2\xbe\x87\xef\xbc\x8e\xdc\x9e-\xf0\x90\x8b\xb0", false); } // [B2, B3]
2968test { try toAsciiFail("\xde\x9a\xe2\xbe\x87\xef\xbc\x8e\xdc\x9e-\xf0\x90\x8b\xb0", true); } // [B2, B3]
1513test { try toUnicodeFail("\xde\x9a\xe8\x88\x9b.\xdc\x9e-\xf0\x90\x8b\xb0"); } // [B2, B3]2969test { try toUnicodeFail("\xde\x9a\xe8\x88\x9b.\xdc\x9e-\xf0\x90\x8b\xb0"); } // [B2, B3]
2970test { try toAsciiFail("\xde\x9a\xe8\x88\x9b.\xdc\x9e-\xf0\x90\x8b\xb0", false); } // [B2, B3]
2971test { try toAsciiFail("\xde\x9a\xe8\x88\x9b.\xdc\x9e-\xf0\x90\x8b\xb0", true); } // [B2, B3]
1514test { try toUnicodeFail("xn--7qb6383d.xn----20c3154q"); } // [B2, B3]2972test { try toUnicodeFail("xn--7qb6383d.xn----20c3154q"); } // [B2, B3]
2973test { try toAsciiFail("xn--7qb6383d.xn----20c3154q", false); } // [B2, B3]
2974test { try toAsciiFail("xn--7qb6383d.xn----20c3154q", true); } // [B2, B3]
1515test { try toUnicodeFail("\xe1\x82\xa9\xe7\x8c\x95\xf3\xb9\x9b\xab\xe2\x89\xae\xef\xbc\x8e\xef\xb8\x92"); } // [V7]2975test { try toUnicodeFail("\xe1\x82\xa9\xe7\x8c\x95\xf3\xb9\x9b\xab\xe2\x89\xae\xef\xbc\x8e\xef\xb8\x92"); } // [V7]
2976test { try toAsciiFail("\xe1\x82\xa9\xe7\x8c\x95\xf3\xb9\x9b\xab\xe2\x89\xae\xef\xbc\x8e\xef\xb8\x92", false); } // [V7]
2977test { try toAsciiFail("\xe1\x82\xa9\xe7\x8c\x95\xf3\xb9\x9b\xab\xe2\x89\xae\xef\xbc\x8e\xef\xb8\x92", true); } // [V7]
1516test { try toUnicodeFail("\xe1\x82\xa9\xe7\x8c\x95\xf3\xb9\x9b\xab<\xcc\xb8\xef\xbc\x8e\xef\xb8\x92"); } // [V7]2978test { try toUnicodeFail("\xe1\x82\xa9\xe7\x8c\x95\xf3\xb9\x9b\xab<\xcc\xb8\xef\xbc\x8e\xef\xb8\x92"); } // [V7]
2979test { try toAsciiFail("\xe1\x82\xa9\xe7\x8c\x95\xf3\xb9\x9b\xab<\xcc\xb8\xef\xbc\x8e\xef\xb8\x92", false); } // [V7]
2980test { try toAsciiFail("\xe1\x82\xa9\xe7\x8c\x95\xf3\xb9\x9b\xab<\xcc\xb8\xef\xbc\x8e\xef\xb8\x92", true); } // [V7]
1517test { try toUnicodeFail("\xe1\x82\xa9\xe7\x8c\x95\xf3\xb9\x9b\xab\xe2\x89\xae.\xe3\x80\x82"); } // [V7, X4_2]2981test { try toUnicodeFail("\xe1\x82\xa9\xe7\x8c\x95\xf3\xb9\x9b\xab\xe2\x89\xae.\xe3\x80\x82"); } // [V7, X4_2]
2982test { try toAsciiFail("\xe1\x82\xa9\xe7\x8c\x95\xf3\xb9\x9b\xab\xe2\x89\xae.\xe3\x80\x82", false); } // [V7, A4_2]
2983test { try toAsciiFail("\xe1\x82\xa9\xe7\x8c\x95\xf3\xb9\x9b\xab\xe2\x89\xae.\xe3\x80\x82", true); } // [V7, A4_2]
1518test { try toUnicodeFail("\xe1\x82\xa9\xe7\x8c\x95\xf3\xb9\x9b\xab<\xcc\xb8.\xe3\x80\x82"); } // [V7, X4_2]2984test { try toUnicodeFail("\xe1\x82\xa9\xe7\x8c\x95\xf3\xb9\x9b\xab<\xcc\xb8.\xe3\x80\x82"); } // [V7, X4_2]
2985test { try toAsciiFail("\xe1\x82\xa9\xe7\x8c\x95\xf3\xb9\x9b\xab<\xcc\xb8.\xe3\x80\x82", false); } // [V7, A4_2]
2986test { try toAsciiFail("\xe1\x82\xa9\xe7\x8c\x95\xf3\xb9\x9b\xab<\xcc\xb8.\xe3\x80\x82", true); } // [V7, A4_2]
1519test { try toUnicodeFail("\xe2\xb4\x89\xe7\x8c\x95\xf3\xb9\x9b\xab<\xcc\xb8.\xe3\x80\x82"); } // [V7, X4_2]2987test { try toUnicodeFail("\xe2\xb4\x89\xe7\x8c\x95\xf3\xb9\x9b\xab<\xcc\xb8.\xe3\x80\x82"); } // [V7, X4_2]
2988test { try toAsciiFail("\xe2\xb4\x89\xe7\x8c\x95\xf3\xb9\x9b\xab<\xcc\xb8.\xe3\x80\x82", false); } // [V7, A4_2]
2989test { try toAsciiFail("\xe2\xb4\x89\xe7\x8c\x95\xf3\xb9\x9b\xab<\xcc\xb8.\xe3\x80\x82", true); } // [V7, A4_2]
1520test { try toUnicodeFail("\xe2\xb4\x89\xe7\x8c\x95\xf3\xb9\x9b\xab\xe2\x89\xae.\xe3\x80\x82"); } // [V7, X4_2]2990test { try toUnicodeFail("\xe2\xb4\x89\xe7\x8c\x95\xf3\xb9\x9b\xab\xe2\x89\xae.\xe3\x80\x82"); } // [V7, X4_2]
2991test { try toAsciiFail("\xe2\xb4\x89\xe7\x8c\x95\xf3\xb9\x9b\xab\xe2\x89\xae.\xe3\x80\x82", false); } // [V7, A4_2]
2992test { try toAsciiFail("\xe2\xb4\x89\xe7\x8c\x95\xf3\xb9\x9b\xab\xe2\x89\xae.\xe3\x80\x82", true); } // [V7, A4_2]
1521test { try toUnicodeFail("xn--gdh892bbz0d5438s.."); } // [V7, X4_2]2993test { try toUnicodeFail("xn--gdh892bbz0d5438s.."); } // [V7, X4_2]
2994test { try toAsciiFail("xn--gdh892bbz0d5438s..", false); } // [V7, A4_2]
2995test { try toAsciiFail("xn--gdh892bbz0d5438s..", true); } // [V7, A4_2]
1522test { try toUnicodeFail("\xe2\xb4\x89\xe7\x8c\x95\xf3\xb9\x9b\xab<\xcc\xb8\xef\xbc\x8e\xef\xb8\x92"); } // [V7]2996test { try toUnicodeFail("\xe2\xb4\x89\xe7\x8c\x95\xf3\xb9\x9b\xab<\xcc\xb8\xef\xbc\x8e\xef\xb8\x92"); } // [V7]
2997test { try toAsciiFail("\xe2\xb4\x89\xe7\x8c\x95\xf3\xb9\x9b\xab<\xcc\xb8\xef\xbc\x8e\xef\xb8\x92", false); } // [V7]
2998test { try toAsciiFail("\xe2\xb4\x89\xe7\x8c\x95\xf3\xb9\x9b\xab<\xcc\xb8\xef\xbc\x8e\xef\xb8\x92", true); } // [V7]
1523test { try toUnicodeFail("\xe2\xb4\x89\xe7\x8c\x95\xf3\xb9\x9b\xab\xe2\x89\xae\xef\xbc\x8e\xef\xb8\x92"); } // [V7]2999test { try toUnicodeFail("\xe2\xb4\x89\xe7\x8c\x95\xf3\xb9\x9b\xab\xe2\x89\xae\xef\xbc\x8e\xef\xb8\x92"); } // [V7]
3000test { try toAsciiFail("\xe2\xb4\x89\xe7\x8c\x95\xf3\xb9\x9b\xab\xe2\x89\xae\xef\xbc\x8e\xef\xb8\x92", false); } // [V7]
3001test { try toAsciiFail("\xe2\xb4\x89\xe7\x8c\x95\xf3\xb9\x9b\xab\xe2\x89\xae\xef\xbc\x8e\xef\xb8\x92", true); } // [V7]
1524test { try toUnicodeFail("xn--gdh892bbz0d5438s.xn--y86c"); } // [V7]3002test { try toUnicodeFail("xn--gdh892bbz0d5438s.xn--y86c"); } // [V7]
3003test { try toAsciiFail("xn--gdh892bbz0d5438s.xn--y86c", false); } // [V7]
3004test { try toAsciiFail("xn--gdh892bbz0d5438s.xn--y86c", true); } // [V7]
1525test { try toUnicodeFail("xn--hnd212gz32d54x5r.."); } // [V7, X4_2]3005test { try toUnicodeFail("xn--hnd212gz32d54x5r.."); } // [V7, X4_2]
3006test { try toAsciiFail("xn--hnd212gz32d54x5r..", false); } // [V7, A4_2]
3007test { try toAsciiFail("xn--hnd212gz32d54x5r..", true); } // [V7, A4_2]
1526test { try toUnicodeFail("xn--hnd212gz32d54x5r.xn--y86c"); } // [V7]3008test { try toUnicodeFail("xn--hnd212gz32d54x5r.xn--y86c"); } // [V7]
3009test { try toAsciiFail("xn--hnd212gz32d54x5r.xn--y86c", false); } // [V7]
3010test { try toAsciiFail("xn--hnd212gz32d54x5r.xn--y86c", true); } // [V7]
1527test { try toUnicodeFail("\xf0\x9f\x8f\xae\xef\xbd\xa1\xd8\xab\xe9\xb3\xb3\xdf\xa2\xf3\xa0\x85\x89"); } // [B1, B2]3011test { try toUnicodeFail("\xf0\x9f\x8f\xae\xef\xbd\xa1\xd8\xab\xe9\xb3\xb3\xdf\xa2\xf3\xa0\x85\x89"); } // [B1, B2]
3012test { try toAsciiFail("\xf0\x9f\x8f\xae\xef\xbd\xa1\xd8\xab\xe9\xb3\xb3\xdf\xa2\xf3\xa0\x85\x89", false); } // [B1, B2]
3013test { try toAsciiFail("\xf0\x9f\x8f\xae\xef\xbd\xa1\xd8\xab\xe9\xb3\xb3\xdf\xa2\xf3\xa0\x85\x89", true); } // [B1, B2]
1528test { try toUnicodeFail("\xf0\x9f\x8f\xae\xe3\x80\x82\xd8\xab\xe9\xb3\xb3\xdf\xa2\xf3\xa0\x85\x89"); } // [B1, B2]3014test { try toUnicodeFail("\xf0\x9f\x8f\xae\xe3\x80\x82\xd8\xab\xe9\xb3\xb3\xdf\xa2\xf3\xa0\x85\x89"); } // [B1, B2]
3015test { try toAsciiFail("\xf0\x9f\x8f\xae\xe3\x80\x82\xd8\xab\xe9\xb3\xb3\xdf\xa2\xf3\xa0\x85\x89", false); } // [B1, B2]
3016test { try toAsciiFail("\xf0\x9f\x8f\xae\xe3\x80\x82\xd8\xab\xe9\xb3\xb3\xdf\xa2\xf3\xa0\x85\x89", true); } // [B1, B2]
1529test { try toUnicodeFail("xn--8m8h.xn--qgb29f6z90a"); } // [B1, B2]3017test { try toUnicodeFail("xn--8m8h.xn--qgb29f6z90a"); } // [B1, B2]
3018test { try toAsciiFail("xn--8m8h.xn--qgb29f6z90a", false); } // [B1, B2]
3019test { try toAsciiFail("xn--8m8h.xn--qgb29f6z90a", true); } // [B1, B2]
1530test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb6\xe3\x80\x82\xc3\x9f"); } // [B1, C2]3020test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb6\xe3\x80\x82\xc3\x9f"); } // [B1, C2]
3021test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb6\xe3\x80\x82\xc3\x9f", false); } // [B1, C2]
3022test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb6\xe3\x80\x82\xc3\x9f", true); } // [B1]
1531test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb6\xe3\x80\x82SS"); } // [B1, C2]3023test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb6\xe3\x80\x82SS"); } // [B1, C2]
3024test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb6\xe3\x80\x82SS", false); } // [B1, C2]
3025test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb6\xe3\x80\x82SS", true); } // [B1]
1532test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb6\xe3\x80\x82ss"); } // [B1, C2]3026test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb6\xe3\x80\x82ss"); } // [B1, C2]
3027test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb6\xe3\x80\x82ss", false); } // [B1, C2]
3028test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb6\xe3\x80\x82ss", true); } // [B1]
1533test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb6\xe3\x80\x82Ss"); } // [B1, C2]3029test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xb6\xe3\x80\x82Ss"); } // [B1, C2]
3030test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb6\xe3\x80\x82Ss", false); } // [B1, C2]
3031test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xb6\xe3\x80\x82Ss", true); } // [B1]
1534test { try toUnicodeFail("xn--uo0d.ss"); } // [B1]3032test { try toUnicodeFail("xn--uo0d.ss"); } // [B1]
3033test { try toAsciiFail("xn--uo0d.ss", false); } // [B1]
3034test { try toAsciiFail("xn--uo0d.ss", true); } // [B1]
1535test { try toUnicodeFail("xn--1ug9105g.ss"); } // [B1, C2]3035test { try toUnicodeFail("xn--1ug9105g.ss"); } // [B1, C2]
3036test { try toAsciiFail("xn--1ug9105g.ss", false); } // [B1, C2]
3037test { try toAsciiFail("xn--1ug9105g.ss", true); } // [B1, C2]
1536test { try toUnicodeFail("xn--1ug9105g.xn--zca"); } // [B1, C2]3038test { try toUnicodeFail("xn--1ug9105g.xn--zca"); } // [B1, C2]
3039test { try toAsciiFail("xn--1ug9105g.xn--zca", false); } // [B1, C2]
3040test { try toAsciiFail("xn--1ug9105g.xn--zca", true); } // [B1, C2]
1537test { try toUnicodeFail("\xc3\x85\xeb\x91\x84-\xef\xbc\x8e\xe2\x80\x8c"); } // [C1, V3]3041test { try toUnicodeFail("\xc3\x85\xeb\x91\x84-\xef\xbc\x8e\xe2\x80\x8c"); } // [C1, V3]
3042test { try toAsciiFail("\xc3\x85\xeb\x91\x84-\xef\xbc\x8e\xe2\x80\x8c", false); } // [C1, V3]
3043test { try toAsciiFail("\xc3\x85\xeb\x91\x84-\xef\xbc\x8e\xe2\x80\x8c", true); } // [V3, A4_2]
1538test { try toUnicodeFail("A\xcc\x8a\xe1\x84\x83\xe1\x85\xad\xe1\x86\xb7-\xef\xbc\x8e\xe2\x80\x8c"); } // [C1, V3]3044test { try toUnicodeFail("A\xcc\x8a\xe1\x84\x83\xe1\x85\xad\xe1\x86\xb7-\xef\xbc\x8e\xe2\x80\x8c"); } // [C1, V3]
3045test { try toAsciiFail("A\xcc\x8a\xe1\x84\x83\xe1\x85\xad\xe1\x86\xb7-\xef\xbc\x8e\xe2\x80\x8c", false); } // [C1, V3]
3046test { try toAsciiFail("A\xcc\x8a\xe1\x84\x83\xe1\x85\xad\xe1\x86\xb7-\xef\xbc\x8e\xe2\x80\x8c", true); } // [V3, A4_2]
1539test { try toUnicodeFail("\xc3\x85\xeb\x91\x84-.\xe2\x80\x8c"); } // [C1, V3]3047test { try toUnicodeFail("\xc3\x85\xeb\x91\x84-.\xe2\x80\x8c"); } // [C1, V3]
3048test { try toAsciiFail("\xc3\x85\xeb\x91\x84-.\xe2\x80\x8c", false); } // [C1, V3]
3049test { try toAsciiFail("\xc3\x85\xeb\x91\x84-.\xe2\x80\x8c", true); } // [V3, A4_2]
1540test { try toUnicodeFail("A\xcc\x8a\xe1\x84\x83\xe1\x85\xad\xe1\x86\xb7-.\xe2\x80\x8c"); } // [C1, V3]3050test { try toUnicodeFail("A\xcc\x8a\xe1\x84\x83\xe1\x85\xad\xe1\x86\xb7-.\xe2\x80\x8c"); } // [C1, V3]
3051test { try toAsciiFail("A\xcc\x8a\xe1\x84\x83\xe1\x85\xad\xe1\x86\xb7-.\xe2\x80\x8c", false); } // [C1, V3]
3052test { try toAsciiFail("A\xcc\x8a\xe1\x84\x83\xe1\x85\xad\xe1\x86\xb7-.\xe2\x80\x8c", true); } // [V3, A4_2]
1541test { try toUnicodeFail("a\xcc\x8a\xe1\x84\x83\xe1\x85\xad\xe1\x86\xb7-.\xe2\x80\x8c"); } // [C1, V3]3053test { try toUnicodeFail("a\xcc\x8a\xe1\x84\x83\xe1\x85\xad\xe1\x86\xb7-.\xe2\x80\x8c"); } // [C1, V3]
3054test { try toAsciiFail("a\xcc\x8a\xe1\x84\x83\xe1\x85\xad\xe1\x86\xb7-.\xe2\x80\x8c", false); } // [C1, V3]
3055test { try toAsciiFail("a\xcc\x8a\xe1\x84\x83\xe1\x85\xad\xe1\x86\xb7-.\xe2\x80\x8c", true); } // [V3, A4_2]
1542test { try toUnicodeFail("\xc3\xa5\xeb\x91\x84-.\xe2\x80\x8c"); } // [C1, V3]3056test { try toUnicodeFail("\xc3\xa5\xeb\x91\x84-.\xe2\x80\x8c"); } // [C1, V3]
3057test { try toAsciiFail("\xc3\xa5\xeb\x91\x84-.\xe2\x80\x8c", false); } // [C1, V3]
3058test { try toAsciiFail("\xc3\xa5\xeb\x91\x84-.\xe2\x80\x8c", true); } // [V3, A4_2]
1543test { try toUnicodeFail("xn----1fa1788k."); } // [V3]3059test { try toUnicodeFail("xn----1fa1788k."); } // [V3]
3060test { try toAsciiFail("xn----1fa1788k.", false); } // [V3, A4_2]
3061test { try toAsciiFail("xn----1fa1788k.", true); } // [V3, A4_2]
1544test { try toUnicodeFail("xn----1fa1788k.xn--0ug"); } // [C1, V3]3062test { try toUnicodeFail("xn----1fa1788k.xn--0ug"); } // [C1, V3]
3063test { try toAsciiFail("xn----1fa1788k.xn--0ug", false); } // [C1, V3]
3064test { try toAsciiFail("xn----1fa1788k.xn--0ug", true); } // [C1, V3]
1545test { try toUnicodeFail("a\xcc\x8a\xe1\x84\x83\xe1\x85\xad\xe1\x86\xb7-\xef\xbc\x8e\xe2\x80\x8c"); } // [C1, V3]3065test { try toUnicodeFail("a\xcc\x8a\xe1\x84\x83\xe1\x85\xad\xe1\x86\xb7-\xef\xbc\x8e\xe2\x80\x8c"); } // [C1, V3]
3066test { try toAsciiFail("a\xcc\x8a\xe1\x84\x83\xe1\x85\xad\xe1\x86\xb7-\xef\xbc\x8e\xe2\x80\x8c", false); } // [C1, V3]
3067test { try toAsciiFail("a\xcc\x8a\xe1\x84\x83\xe1\x85\xad\xe1\x86\xb7-\xef\xbc\x8e\xe2\x80\x8c", true); } // [V3, A4_2]
1546test { try toUnicodeFail("\xc3\xa5\xeb\x91\x84-\xef\xbc\x8e\xe2\x80\x8c"); } // [C1, V3]3068test { try toUnicodeFail("\xc3\xa5\xeb\x91\x84-\xef\xbc\x8e\xe2\x80\x8c"); } // [C1, V3]
3069test { try toAsciiFail("\xc3\xa5\xeb\x91\x84-\xef\xbc\x8e\xe2\x80\x8c", false); } // [C1, V3]
3070test { try toAsciiFail("\xc3\xa5\xeb\x91\x84-\xef\xbc\x8e\xe2\x80\x8c", true); } // [V3, A4_2]
1547test { try toUnicodeFail("\xe3\x82\x99\xf2\xac\x8e\x91\xe1\xb7\x97\xf0\x9e\xa4\x80.\xf2\xb1\xb2\xa2-\xe0\xa5\x93"); } // [B1, B6, V6, V7]3071test { try toUnicodeFail("\xe3\x82\x99\xf2\xac\x8e\x91\xe1\xb7\x97\xf0\x9e\xa4\x80.\xf2\xb1\xb2\xa2-\xe0\xa5\x93"); } // [B1, B6, V6, V7]
3072test { try toAsciiFail("\xe3\x82\x99\xf2\xac\x8e\x91\xe1\xb7\x97\xf0\x9e\xa4\x80.\xf2\xb1\xb2\xa2-\xe0\xa5\x93", false); } // [B1, B6, V6, V7]
3073test { try toAsciiFail("\xe3\x82\x99\xf2\xac\x8e\x91\xe1\xb7\x97\xf0\x9e\xa4\x80.\xf2\xb1\xb2\xa2-\xe0\xa5\x93", true); } // [B1, B6, V6, V7]
1548test { try toUnicodeFail("\xe3\x82\x99\xf2\xac\x8e\x91\xe1\xb7\x97\xf0\x9e\xa4\xa2.\xf2\xb1\xb2\xa2-\xe0\xa5\x93"); } // [B1, B6, V6, V7]3074test { try toUnicodeFail("\xe3\x82\x99\xf2\xac\x8e\x91\xe1\xb7\x97\xf0\x9e\xa4\xa2.\xf2\xb1\xb2\xa2-\xe0\xa5\x93"); } // [B1, B6, V6, V7]
3075test { try toAsciiFail("\xe3\x82\x99\xf2\xac\x8e\x91\xe1\xb7\x97\xf0\x9e\xa4\xa2.\xf2\xb1\xb2\xa2-\xe0\xa5\x93", false); } // [B1, B6, V6, V7]
3076test { try toAsciiFail("\xe3\x82\x99\xf2\xac\x8e\x91\xe1\xb7\x97\xf0\x9e\xa4\xa2.\xf2\xb1\xb2\xa2-\xe0\xa5\x93", true); } // [B1, B6, V6, V7]
1549test { try toUnicodeFail("xn--veg121fwg63altj9d.xn----eyd92688s"); } // [B1, B6, V6, V7]3077test { try toUnicodeFail("xn--veg121fwg63altj9d.xn----eyd92688s"); } // [B1, B6, V6, V7]
3078test { try toAsciiFail("xn--veg121fwg63altj9d.xn----eyd92688s", false); } // [B1, B6, V6, V7]
3079test { try toAsciiFail("xn--veg121fwg63altj9d.xn----eyd92688s", true); } // [B1, B6, V6, V7]
1550test { try toUnicodeFail("\xcf\x82.\xc3\x9f\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf"); } // [B5, B6, V7]3080test { try toUnicodeFail("\xcf\x82.\xc3\x9f\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf"); } // [B5, B6, V7]
3081test { try toAsciiFail("\xcf\x82.\xc3\x9f\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf", false); } // [B5, B6, V7]
3082test { try toAsciiFail("\xcf\x82.\xc3\x9f\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf", true); } // [B5, B6, V7]
1551test { try toUnicodeFail("\xce\xa3.SS\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf"); } // [B5, B6, V7]3083test { try toUnicodeFail("\xce\xa3.SS\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf"); } // [B5, B6, V7]
3084test { try toAsciiFail("\xce\xa3.SS\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf", false); } // [B5, B6, V7]
3085test { try toAsciiFail("\xce\xa3.SS\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf", true); } // [B5, B6, V7]
1552test { try toUnicodeFail("\xcf\x83.ss\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf"); } // [B5, B6, V7]3086test { try toUnicodeFail("\xcf\x83.ss\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf"); } // [B5, B6, V7]
3087test { try toAsciiFail("\xcf\x83.ss\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf", false); } // [B5, B6, V7]
3088test { try toAsciiFail("\xcf\x83.ss\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf", true); } // [B5, B6, V7]
1553test { try toUnicodeFail("\xce\xa3.ss\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf"); } // [B5, B6, V7]3089test { try toUnicodeFail("\xce\xa3.ss\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf"); } // [B5, B6, V7]
3090test { try toAsciiFail("\xce\xa3.ss\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf", false); } // [B5, B6, V7]
3091test { try toAsciiFail("\xce\xa3.ss\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf", true); } // [B5, B6, V7]
1554test { try toUnicodeFail("xn--4xa.xn--ss-y8d4760biv60n"); } // [B5, B6, V7]3092test { try toUnicodeFail("xn--4xa.xn--ss-y8d4760biv60n"); } // [B5, B6, V7]
3093test { try toAsciiFail("xn--4xa.xn--ss-y8d4760biv60n", false); } // [B5, B6, V7]
3094test { try toAsciiFail("xn--4xa.xn--ss-y8d4760biv60n", true); } // [B5, B6, V7]
1555test { try toUnicodeFail("\xce\xa3.\xc3\x9f\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf"); } // [B5, B6, V7]3095test { try toUnicodeFail("\xce\xa3.\xc3\x9f\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf"); } // [B5, B6, V7]
3096test { try toAsciiFail("\xce\xa3.\xc3\x9f\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf", false); } // [B5, B6, V7]
3097test { try toAsciiFail("\xce\xa3.\xc3\x9f\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf", true); } // [B5, B6, V7]
1556test { try toUnicodeFail("\xcf\x83.\xc3\x9f\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf"); } // [B5, B6, V7]3098test { try toUnicodeFail("\xcf\x83.\xc3\x9f\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf"); } // [B5, B6, V7]
3099test { try toAsciiFail("\xcf\x83.\xc3\x9f\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf", false); } // [B5, B6, V7]
3100test { try toAsciiFail("\xcf\x83.\xc3\x9f\xf1\xb4\xb1\x84\xdb\x9d\xe2\xb5\xbf", true); } // [B5, B6, V7]
1557test { try toUnicodeFail("xn--4xa.xn--zca281az71b8x73m"); } // [B5, B6, V7]3101test { try toUnicodeFail("xn--4xa.xn--zca281az71b8x73m"); } // [B5, B6, V7]
3102test { try toAsciiFail("xn--4xa.xn--zca281az71b8x73m", false); } // [B5, B6, V7]
3103test { try toAsciiFail("xn--4xa.xn--zca281az71b8x73m", true); } // [B5, B6, V7]
1558test { try toUnicodeFail("xn--3xa.xn--zca281az71b8x73m"); } // [B5, B6, V7]3104test { try toUnicodeFail("xn--3xa.xn--zca281az71b8x73m"); } // [B5, B6, V7]
3105test { try toAsciiFail("xn--3xa.xn--zca281az71b8x73m", false); } // [B5, B6, V7]
3106test { try toAsciiFail("xn--3xa.xn--zca281az71b8x73m", true); } // [B5, B6, V7]
1559test { try toUnicodeFail("\xea\xa1\x80\xf0\x9e\x80\x9f\xef\xbd\xa1\xd9\xab\xd6\x99"); } // [B1]3107test { try toUnicodeFail("\xea\xa1\x80\xf0\x9e\x80\x9f\xef\xbd\xa1\xd9\xab\xd6\x99"); } // [B1]
3108test { try toAsciiFail("\xea\xa1\x80\xf0\x9e\x80\x9f\xef\xbd\xa1\xd9\xab\xd6\x99", false); } // [B1]
3109test { try toAsciiFail("\xea\xa1\x80\xf0\x9e\x80\x9f\xef\xbd\xa1\xd9\xab\xd6\x99", true); } // [B1]
1560test { try toUnicodeFail("\xea\xa1\x80\xf0\x9e\x80\x9f\xe3\x80\x82\xd9\xab\xd6\x99"); } // [B1]3110test { try toUnicodeFail("\xea\xa1\x80\xf0\x9e\x80\x9f\xe3\x80\x82\xd9\xab\xd6\x99"); } // [B1]
3111test { try toAsciiFail("\xea\xa1\x80\xf0\x9e\x80\x9f\xe3\x80\x82\xd9\xab\xd6\x99", false); } // [B1]
3112test { try toAsciiFail("\xea\xa1\x80\xf0\x9e\x80\x9f\xe3\x80\x82\xd9\xab\xd6\x99", true); } // [B1]
1561test { try toUnicodeFail("xn--8b9a1720d.xn--kcb33b"); } // [B1]3113test { try toUnicodeFail("xn--8b9a1720d.xn--kcb33b"); } // [B1]
3114test { try toAsciiFail("xn--8b9a1720d.xn--kcb33b", false); } // [B1]
3115test { try toAsciiFail("xn--8b9a1720d.xn--kcb33b", true); } // [B1]
1562test { try toUnicodeFail("\xf2\x88\x9b\x89\xe2\x80\x8c\xe0\xa2\xa9\xef\xbd\xa1\xe2\xa7\x85\xf1\x98\x98\xa1-\xf0\x90\xad\xa1"); } // [B1, B5, B6, C1, V7]3116test { try toUnicodeFail("\xf2\x88\x9b\x89\xe2\x80\x8c\xe0\xa2\xa9\xef\xbd\xa1\xe2\xa7\x85\xf1\x98\x98\xa1-\xf0\x90\xad\xa1"); } // [B1, B5, B6, C1, V7]
3117test { try toAsciiFail("\xf2\x88\x9b\x89\xe2\x80\x8c\xe0\xa2\xa9\xef\xbd\xa1\xe2\xa7\x85\xf1\x98\x98\xa1-\xf0\x90\xad\xa1", false); } // [B1, B5, B6, C1, V7]
3118test { try toAsciiFail("\xf2\x88\x9b\x89\xe2\x80\x8c\xe0\xa2\xa9\xef\xbd\xa1\xe2\xa7\x85\xf1\x98\x98\xa1-\xf0\x90\xad\xa1", true); } // [B1, B5, B6, V7]
1563test { try toUnicodeFail("\xf2\x88\x9b\x89\xe2\x80\x8c\xe0\xa2\xa9\xe3\x80\x82\xe2\xa7\x85\xf1\x98\x98\xa1-\xf0\x90\xad\xa1"); } // [B1, B5, B6, C1, V7]3119test { try toUnicodeFail("\xf2\x88\x9b\x89\xe2\x80\x8c\xe0\xa2\xa9\xe3\x80\x82\xe2\xa7\x85\xf1\x98\x98\xa1-\xf0\x90\xad\xa1"); } // [B1, B5, B6, C1, V7]
3120test { try toAsciiFail("\xf2\x88\x9b\x89\xe2\x80\x8c\xe0\xa2\xa9\xe3\x80\x82\xe2\xa7\x85\xf1\x98\x98\xa1-\xf0\x90\xad\xa1", false); } // [B1, B5, B6, C1, V7]
3121test { try toAsciiFail("\xf2\x88\x9b\x89\xe2\x80\x8c\xe0\xa2\xa9\xe3\x80\x82\xe2\xa7\x85\xf1\x98\x98\xa1-\xf0\x90\xad\xa1", true); } // [B1, B5, B6, V7]
1564test { try toUnicodeFail("xn--yyb56242i.xn----zir1232guu71b"); } // [B1, B5, B6, V7]3122test { try toUnicodeFail("xn--yyb56242i.xn----zir1232guu71b"); } // [B1, B5, B6, V7]
3123test { try toAsciiFail("xn--yyb56242i.xn----zir1232guu71b", false); } // [B1, B5, B6, V7]
3124test { try toAsciiFail("xn--yyb56242i.xn----zir1232guu71b", true); } // [B1, B5, B6, V7]
1565test { try toUnicodeFail("xn--yyb780jll63m.xn----zir1232guu71b"); } // [B1, B5, B6, C1, V7]3125test { try toUnicodeFail("xn--yyb780jll63m.xn----zir1232guu71b"); } // [B1, B5, B6, C1, V7]
3126test { try toAsciiFail("xn--yyb780jll63m.xn----zir1232guu71b", false); } // [B1, B5, B6, C1, V7]
3127test { try toAsciiFail("xn--yyb780jll63m.xn----zir1232guu71b", true); } // [B1, B5, B6, C1, V7]
1566test { try toUnicodeFail("\xeb\xa3\xb1\xe2\x80\x8d\xf0\xb0\x8d\xa8\xe2\x80\x8c\xe3\x80\x82\xf0\x9d\xa8\x96\xef\xb8\x92"); } // [C1, C2, V6, V7]3128test { try toUnicodeFail("\xeb\xa3\xb1\xe2\x80\x8d\xf0\xb0\x8d\xa8\xe2\x80\x8c\xe3\x80\x82\xf0\x9d\xa8\x96\xef\xb8\x92"); } // [C1, C2, V6, V7]
3129test { try toAsciiFail("\xeb\xa3\xb1\xe2\x80\x8d\xf0\xb0\x8d\xa8\xe2\x80\x8c\xe3\x80\x82\xf0\x9d\xa8\x96\xef\xb8\x92", false); } // [C1, C2, V6, V7]
3130test { try toAsciiFail("\xeb\xa3\xb1\xe2\x80\x8d\xf0\xb0\x8d\xa8\xe2\x80\x8c\xe3\x80\x82\xf0\x9d\xa8\x96\xef\xb8\x92", true); } // [V6, V7]
1567test { try toUnicodeFail("\xe1\x84\x85\xe1\x85\xae\xe1\x86\xb0\xe2\x80\x8d\xf0\xb0\x8d\xa8\xe2\x80\x8c\xe3\x80\x82\xf0\x9d\xa8\x96\xef\xb8\x92"); } // [C1, C2, V6, V7]3131test { try toUnicodeFail("\xe1\x84\x85\xe1\x85\xae\xe1\x86\xb0\xe2\x80\x8d\xf0\xb0\x8d\xa8\xe2\x80\x8c\xe3\x80\x82\xf0\x9d\xa8\x96\xef\xb8\x92"); } // [C1, C2, V6, V7]
3132test { try toAsciiFail("\xe1\x84\x85\xe1\x85\xae\xe1\x86\xb0\xe2\x80\x8d\xf0\xb0\x8d\xa8\xe2\x80\x8c\xe3\x80\x82\xf0\x9d\xa8\x96\xef\xb8\x92", false); } // [C1, C2, V6, V7]
3133test { try toAsciiFail("\xe1\x84\x85\xe1\x85\xae\xe1\x86\xb0\xe2\x80\x8d\xf0\xb0\x8d\xa8\xe2\x80\x8c\xe3\x80\x82\xf0\x9d\xa8\x96\xef\xb8\x92", true); } // [V6, V7]
1568test { try toUnicodeFail("\xeb\xa3\xb1\xe2\x80\x8d\xf0\xb0\x8d\xa8\xe2\x80\x8c\xe3\x80\x82\xf0\x9d\xa8\x96\xe3\x80\x82"); } // [C1, C2, V6]3134test { try toUnicodeFail("\xeb\xa3\xb1\xe2\x80\x8d\xf0\xb0\x8d\xa8\xe2\x80\x8c\xe3\x80\x82\xf0\x9d\xa8\x96\xe3\x80\x82"); } // [C1, C2, V6]
3135test { try toAsciiFail("\xeb\xa3\xb1\xe2\x80\x8d\xf0\xb0\x8d\xa8\xe2\x80\x8c\xe3\x80\x82\xf0\x9d\xa8\x96\xe3\x80\x82", false); } // [C1, C2, V6, A4_2]
3136test { try toAsciiFail("\xeb\xa3\xb1\xe2\x80\x8d\xf0\xb0\x8d\xa8\xe2\x80\x8c\xe3\x80\x82\xf0\x9d\xa8\x96\xe3\x80\x82", true); } // [V6, A4_2]
1569test { try toUnicodeFail("\xe1\x84\x85\xe1\x85\xae\xe1\x86\xb0\xe2\x80\x8d\xf0\xb0\x8d\xa8\xe2\x80\x8c\xe3\x80\x82\xf0\x9d\xa8\x96\xe3\x80\x82"); } // [C1, C2, V6]3137test { try toUnicodeFail("\xe1\x84\x85\xe1\x85\xae\xe1\x86\xb0\xe2\x80\x8d\xf0\xb0\x8d\xa8\xe2\x80\x8c\xe3\x80\x82\xf0\x9d\xa8\x96\xe3\x80\x82"); } // [C1, C2, V6]
3138test { try toAsciiFail("\xe1\x84\x85\xe1\x85\xae\xe1\x86\xb0\xe2\x80\x8d\xf0\xb0\x8d\xa8\xe2\x80\x8c\xe3\x80\x82\xf0\x9d\xa8\x96\xe3\x80\x82", false); } // [C1, C2, V6, A4_2]
3139test { try toAsciiFail("\xe1\x84\x85\xe1\x85\xae\xe1\x86\xb0\xe2\x80\x8d\xf0\xb0\x8d\xa8\xe2\x80\x8c\xe3\x80\x82\xf0\x9d\xa8\x96\xe3\x80\x82", true); } // [V6, A4_2]
1570test { try toUnicodeFail("xn--ct2b0738h.xn--772h."); } // [V6]3140test { try toUnicodeFail("xn--ct2b0738h.xn--772h."); } // [V6]
3141test { try toAsciiFail("xn--ct2b0738h.xn--772h.", false); } // [V6, A4_2]
3142test { try toAsciiFail("xn--ct2b0738h.xn--772h.", true); } // [V6, A4_2]
1571test { try toUnicodeFail("xn--0ugb3358ili2v.xn--772h."); } // [C1, C2, V6]3143test { try toUnicodeFail("xn--0ugb3358ili2v.xn--772h."); } // [C1, C2, V6]
3144test { try toAsciiFail("xn--0ugb3358ili2v.xn--772h.", false); } // [C1, C2, V6, A4_2]
3145test { try toAsciiFail("xn--0ugb3358ili2v.xn--772h.", true); } // [C1, C2, V6, A4_2]
1572test { try toUnicodeFail("xn--ct2b0738h.xn--y86cl899a"); } // [V6, V7]3146test { try toUnicodeFail("xn--ct2b0738h.xn--y86cl899a"); } // [V6, V7]
3147test { try toAsciiFail("xn--ct2b0738h.xn--y86cl899a", false); } // [V6, V7]
3148test { try toAsciiFail("xn--ct2b0738h.xn--y86cl899a", true); } // [V6, V7]
1573test { try toUnicodeFail("xn--0ugb3358ili2v.xn--y86cl899a"); } // [C1, C2, V6, V7]3149test { try toUnicodeFail("xn--0ugb3358ili2v.xn--y86cl899a"); } // [C1, C2, V6, V7]
3150test { try toAsciiFail("xn--0ugb3358ili2v.xn--y86cl899a", false); } // [C1, C2, V6, V7]
3151test { try toAsciiFail("xn--0ugb3358ili2v.xn--y86cl899a", true); } // [C1, C2, V6, V7]
1574test { try toUnicodeFail("\xf0\x9f\x84\x84\xef\xbc\x8e\xe1\xb3\x9c\xe2\x92\x88\xc3\x9f"); } // [V6, V7, U1]3152test { try toUnicodeFail("\xf0\x9f\x84\x84\xef\xbc\x8e\xe1\xb3\x9c\xe2\x92\x88\xc3\x9f"); } // [V6, V7, U1]
3153test { try toAsciiFail("\xf0\x9f\x84\x84\xef\xbc\x8e\xe1\xb3\x9c\xe2\x92\x88\xc3\x9f", false); } // [V6, V7, U1]
3154test { try toAsciiFail("\xf0\x9f\x84\x84\xef\xbc\x8e\xe1\xb3\x9c\xe2\x92\x88\xc3\x9f", true); } // [V6, V7, U1]
1575test { try toUnicodeFail("3,.\xe1\xb3\x9c1.\xc3\x9f"); } // [V6, U1]3155test { try toUnicodeFail("3,.\xe1\xb3\x9c1.\xc3\x9f"); } // [V6, U1]
3156test { try toAsciiFail("3,.\xe1\xb3\x9c1.\xc3\x9f", false); } // [V6, U1]
3157test { try toAsciiFail("3,.\xe1\xb3\x9c1.\xc3\x9f", true); } // [V6, U1]
1576test { try toUnicodeFail("3,.\xe1\xb3\x9c1.SS"); } // [V6, U1]3158test { try toUnicodeFail("3,.\xe1\xb3\x9c1.SS"); } // [V6, U1]
3159test { try toAsciiFail("3,.\xe1\xb3\x9c1.SS", false); } // [V6, U1]
3160test { try toAsciiFail("3,.\xe1\xb3\x9c1.SS", true); } // [V6, U1]
1577test { try toUnicodeFail("3,.\xe1\xb3\x9c1.ss"); } // [V6, U1]3161test { try toUnicodeFail("3,.\xe1\xb3\x9c1.ss"); } // [V6, U1]
3162test { try toAsciiFail("3,.\xe1\xb3\x9c1.ss", false); } // [V6, U1]
3163test { try toAsciiFail("3,.\xe1\xb3\x9c1.ss", true); } // [V6, U1]
1578test { try toUnicodeFail("3,.\xe1\xb3\x9c1.Ss"); } // [V6, U1]3164test { try toUnicodeFail("3,.\xe1\xb3\x9c1.Ss"); } // [V6, U1]
3165test { try toAsciiFail("3,.\xe1\xb3\x9c1.Ss", false); } // [V6, U1]
3166test { try toAsciiFail("3,.\xe1\xb3\x9c1.Ss", true); } // [V6, U1]
1579test { try toUnicodeFail("3,.xn--1-43l.ss"); } // [V6, U1]3167test { try toUnicodeFail("3,.xn--1-43l.ss"); } // [V6, U1]
3168test { try toAsciiFail("3,.xn--1-43l.ss", false); } // [V6, U1]
3169test { try toAsciiFail("3,.xn--1-43l.ss", true); } // [V6, U1]
1580test { try toUnicodeFail("3,.xn--1-43l.xn--zca"); } // [V6, U1]3170test { try toUnicodeFail("3,.xn--1-43l.xn--zca"); } // [V6, U1]
3171test { try toAsciiFail("3,.xn--1-43l.xn--zca", false); } // [V6, U1]
3172test { try toAsciiFail("3,.xn--1-43l.xn--zca", true); } // [V6, U1]
1581test { try toUnicodeFail("\xf0\x9f\x84\x84\xef\xbc\x8e\xe1\xb3\x9c\xe2\x92\x88SS"); } // [V6, V7, U1]3173test { try toUnicodeFail("\xf0\x9f\x84\x84\xef\xbc\x8e\xe1\xb3\x9c\xe2\x92\x88SS"); } // [V6, V7, U1]
3174test { try toAsciiFail("\xf0\x9f\x84\x84\xef\xbc\x8e\xe1\xb3\x9c\xe2\x92\x88SS", false); } // [V6, V7, U1]
3175test { try toAsciiFail("\xf0\x9f\x84\x84\xef\xbc\x8e\xe1\xb3\x9c\xe2\x92\x88SS", true); } // [V6, V7, U1]
1582test { try toUnicodeFail("\xf0\x9f\x84\x84\xef\xbc\x8e\xe1\xb3\x9c\xe2\x92\x88ss"); } // [V6, V7, U1]3176test { try toUnicodeFail("\xf0\x9f\x84\x84\xef\xbc\x8e\xe1\xb3\x9c\xe2\x92\x88ss"); } // [V6, V7, U1]
3177test { try toAsciiFail("\xf0\x9f\x84\x84\xef\xbc\x8e\xe1\xb3\x9c\xe2\x92\x88ss", false); } // [V6, V7, U1]
3178test { try toAsciiFail("\xf0\x9f\x84\x84\xef\xbc\x8e\xe1\xb3\x9c\xe2\x92\x88ss", true); } // [V6, V7, U1]
1583test { try toUnicodeFail("\xf0\x9f\x84\x84\xef\xbc\x8e\xe1\xb3\x9c\xe2\x92\x88Ss"); } // [V6, V7, U1]3179test { try toUnicodeFail("\xf0\x9f\x84\x84\xef\xbc\x8e\xe1\xb3\x9c\xe2\x92\x88Ss"); } // [V6, V7, U1]
3180test { try toAsciiFail("\xf0\x9f\x84\x84\xef\xbc\x8e\xe1\xb3\x9c\xe2\x92\x88Ss", false); } // [V6, V7, U1]
3181test { try toAsciiFail("\xf0\x9f\x84\x84\xef\xbc\x8e\xe1\xb3\x9c\xe2\x92\x88Ss", true); } // [V6, V7, U1]
1584test { try toUnicodeFail("3,.xn--ss-k1r094b"); } // [V6, V7, U1]3182test { try toUnicodeFail("3,.xn--ss-k1r094b"); } // [V6, V7, U1]
3183test { try toAsciiFail("3,.xn--ss-k1r094b", false); } // [V6, V7, U1]
3184test { try toAsciiFail("3,.xn--ss-k1r094b", true); } // [V6, V7, U1]
1585test { try toUnicodeFail("3,.xn--zca344lmif"); } // [V6, V7, U1]3185test { try toUnicodeFail("3,.xn--zca344lmif"); } // [V6, V7, U1]
3186test { try toAsciiFail("3,.xn--zca344lmif", false); } // [V6, V7, U1]
3187test { try toAsciiFail("3,.xn--zca344lmif", true); } // [V6, V7, U1]
1586test { try toUnicodeFail("xn--x07h.xn--ss-k1r094b"); } // [V6, V7]3188test { try toUnicodeFail("xn--x07h.xn--ss-k1r094b"); } // [V6, V7]
3189test { try toAsciiFail("xn--x07h.xn--ss-k1r094b", false); } // [V6, V7]
3190test { try toAsciiFail("xn--x07h.xn--ss-k1r094b", true); } // [V6, V7]
1587test { try toUnicodeFail("xn--x07h.xn--zca344lmif"); } // [V6, V7]3191test { try toUnicodeFail("xn--x07h.xn--zca344lmif"); } // [V6, V7]
3192test { try toAsciiFail("xn--x07h.xn--zca344lmif", false); } // [V6, V7]
3193test { try toAsciiFail("xn--x07h.xn--zca344lmif", true); } // [V6, V7]
1588test { try toUnicodeFail("\xf1\x87\x8c\x8d\xe2\xb5\xbf\xef\xbd\xa1\xf0\x9e\xbc\x93\xf2\xa1\x84\xa8\xf0\x91\x90\xba"); } // [B2, B3, V7]3194test { try toUnicodeFail("\xf1\x87\x8c\x8d\xe2\xb5\xbf\xef\xbd\xa1\xf0\x9e\xbc\x93\xf2\xa1\x84\xa8\xf0\x91\x90\xba"); } // [B2, B3, V7]
3195test { try toAsciiFail("\xf1\x87\x8c\x8d\xe2\xb5\xbf\xef\xbd\xa1\xf0\x9e\xbc\x93\xf2\xa1\x84\xa8\xf0\x91\x90\xba", false); } // [B2, B3, V7]
3196test { try toAsciiFail("\xf1\x87\x8c\x8d\xe2\xb5\xbf\xef\xbd\xa1\xf0\x9e\xbc\x93\xf2\xa1\x84\xa8\xf0\x91\x90\xba", true); } // [B2, B3, V7]
1589test { try toUnicodeFail("\xf1\x87\x8c\x8d\xe2\xb5\xbf\xe3\x80\x82\xf0\x9e\xbc\x93\xf2\xa1\x84\xa8\xf0\x91\x90\xba"); } // [B2, B3, V7]3197test { try toUnicodeFail("\xf1\x87\x8c\x8d\xe2\xb5\xbf\xe3\x80\x82\xf0\x9e\xbc\x93\xf2\xa1\x84\xa8\xf0\x91\x90\xba"); } // [B2, B3, V7]
3198test { try toAsciiFail("\xf1\x87\x8c\x8d\xe2\xb5\xbf\xe3\x80\x82\xf0\x9e\xbc\x93\xf2\xa1\x84\xa8\xf0\x91\x90\xba", false); } // [B2, B3, V7]
3199test { try toAsciiFail("\xf1\x87\x8c\x8d\xe2\xb5\xbf\xe3\x80\x82\xf0\x9e\xbc\x93\xf2\xa1\x84\xa8\xf0\x91\x90\xba", true); } // [B2, B3, V7]
1590test { try toUnicodeFail("xn--eoj16016a.xn--0v1d3848a3lr0d"); } // [B2, B3, V7]3200test { try toUnicodeFail("xn--eoj16016a.xn--0v1d3848a3lr0d"); } // [B2, B3, V7]
3201test { try toAsciiFail("xn--eoj16016a.xn--0v1d3848a3lr0d", false); } // [B2, B3, V7]
3202test { try toAsciiFail("xn--eoj16016a.xn--0v1d3848a3lr0d", true); } // [B2, B3, V7]
1591test { try toUnicodeFail("\xe1\xb7\xbd\xe1\x80\xba\xe0\xa5\x8d\xef\xbc\x8e\xe2\x89\xa0\xe2\x80\x8d\xe3\x87\x9b"); } // [C2, V6]3203test { try toUnicodeFail("\xe1\xb7\xbd\xe1\x80\xba\xe0\xa5\x8d\xef\xbc\x8e\xe2\x89\xa0\xe2\x80\x8d\xe3\x87\x9b"); } // [C2, V6]
3204test { try toAsciiFail("\xe1\xb7\xbd\xe1\x80\xba\xe0\xa5\x8d\xef\xbc\x8e\xe2\x89\xa0\xe2\x80\x8d\xe3\x87\x9b", false); } // [C2, V6]
3205test { try toAsciiFail("\xe1\xb7\xbd\xe1\x80\xba\xe0\xa5\x8d\xef\xbc\x8e\xe2\x89\xa0\xe2\x80\x8d\xe3\x87\x9b", true); } // [V6]
1592test { try toUnicodeFail("\xe1\x80\xba\xe0\xa5\x8d\xe1\xb7\xbd\xef\xbc\x8e\xe2\x89\xa0\xe2\x80\x8d\xe3\x87\x9b"); } // [C2, V6]3206test { try toUnicodeFail("\xe1\x80\xba\xe0\xa5\x8d\xe1\xb7\xbd\xef\xbc\x8e\xe2\x89\xa0\xe2\x80\x8d\xe3\x87\x9b"); } // [C2, V6]
3207test { try toAsciiFail("\xe1\x80\xba\xe0\xa5\x8d\xe1\xb7\xbd\xef\xbc\x8e\xe2\x89\xa0\xe2\x80\x8d\xe3\x87\x9b", false); } // [C2, V6]
3208test { try toAsciiFail("\xe1\x80\xba\xe0\xa5\x8d\xe1\xb7\xbd\xef\xbc\x8e\xe2\x89\xa0\xe2\x80\x8d\xe3\x87\x9b", true); } // [V6]
1593test { try toUnicodeFail("\xe1\x80\xba\xe0\xa5\x8d\xe1\xb7\xbd\xef\xbc\x8e=\xcc\xb8\xe2\x80\x8d\xe3\x87\x9b"); } // [C2, V6]3209test { try toUnicodeFail("\xe1\x80\xba\xe0\xa5\x8d\xe1\xb7\xbd\xef\xbc\x8e=\xcc\xb8\xe2\x80\x8d\xe3\x87\x9b"); } // [C2, V6]
3210test { try toAsciiFail("\xe1\x80\xba\xe0\xa5\x8d\xe1\xb7\xbd\xef\xbc\x8e=\xcc\xb8\xe2\x80\x8d\xe3\x87\x9b", false); } // [C2, V6]
3211test { try toAsciiFail("\xe1\x80\xba\xe0\xa5\x8d\xe1\xb7\xbd\xef\xbc\x8e=\xcc\xb8\xe2\x80\x8d\xe3\x87\x9b", true); } // [V6]
1594test { try toUnicodeFail("\xe1\x80\xba\xe0\xa5\x8d\xe1\xb7\xbd.\xe2\x89\xa0\xe2\x80\x8d\xe3\x87\x9b"); } // [C2, V6]3212test { try toUnicodeFail("\xe1\x80\xba\xe0\xa5\x8d\xe1\xb7\xbd.\xe2\x89\xa0\xe2\x80\x8d\xe3\x87\x9b"); } // [C2, V6]
3213test { try toAsciiFail("\xe1\x80\xba\xe0\xa5\x8d\xe1\xb7\xbd.\xe2\x89\xa0\xe2\x80\x8d\xe3\x87\x9b", false); } // [C2, V6]
3214test { try toAsciiFail("\xe1\x80\xba\xe0\xa5\x8d\xe1\xb7\xbd.\xe2\x89\xa0\xe2\x80\x8d\xe3\x87\x9b", true); } // [V6]
1595test { try toUnicodeFail("\xe1\x80\xba\xe0\xa5\x8d\xe1\xb7\xbd.=\xcc\xb8\xe2\x80\x8d\xe3\x87\x9b"); } // [C2, V6]3215test { try toUnicodeFail("\xe1\x80\xba\xe0\xa5\x8d\xe1\xb7\xbd.=\xcc\xb8\xe2\x80\x8d\xe3\x87\x9b"); } // [C2, V6]
3216test { try toAsciiFail("\xe1\x80\xba\xe0\xa5\x8d\xe1\xb7\xbd.=\xcc\xb8\xe2\x80\x8d\xe3\x87\x9b", false); } // [C2, V6]
3217test { try toAsciiFail("\xe1\x80\xba\xe0\xa5\x8d\xe1\xb7\xbd.=\xcc\xb8\xe2\x80\x8d\xe3\x87\x9b", true); } // [V6]
1596test { try toUnicodeFail("xn--n3b956a9zm.xn--1ch912d"); } // [V6]3218test { try toUnicodeFail("xn--n3b956a9zm.xn--1ch912d"); } // [V6]
3219test { try toAsciiFail("xn--n3b956a9zm.xn--1ch912d", false); } // [V6]
3220test { try toAsciiFail("xn--n3b956a9zm.xn--1ch912d", true); } // [V6]
1597test { try toUnicodeFail("xn--n3b956a9zm.xn--1ug63gz5w"); } // [C2, V6]3221test { try toUnicodeFail("xn--n3b956a9zm.xn--1ug63gz5w"); } // [C2, V6]
3222test { try toAsciiFail("xn--n3b956a9zm.xn--1ug63gz5w", false); } // [C2, V6]
3223test { try toAsciiFail("xn--n3b956a9zm.xn--1ug63gz5w", true); } // [C2, V6]
1598test { try toUnicodeFail("\xe1\x82\xa1\xf0\x90\x8b\xa8\xe5\xa8\xa4.\xe2\x80\x8d\xcc\xbc\xd9\xa2\xf0\x91\x96\xbf"); } // [B1, C2]3224test { try toUnicodeFail("\xe1\x82\xa1\xf0\x90\x8b\xa8\xe5\xa8\xa4.\xe2\x80\x8d\xcc\xbc\xd9\xa2\xf0\x91\x96\xbf"); } // [B1, C2]
3225test { try toAsciiFail("\xe1\x82\xa1\xf0\x90\x8b\xa8\xe5\xa8\xa4.\xe2\x80\x8d\xcc\xbc\xd9\xa2\xf0\x91\x96\xbf", false); } // [B1, C2]
3226test { try toAsciiFail("\xe1\x82\xa1\xf0\x90\x8b\xa8\xe5\xa8\xa4.\xe2\x80\x8d\xcc\xbc\xd9\xa2\xf0\x91\x96\xbf", true); } // [B1, V6]
1599test { try toUnicodeFail("\xe2\xb4\x81\xf0\x90\x8b\xa8\xe5\xa8\xa4.\xe2\x80\x8d\xcc\xbc\xd9\xa2\xf0\x91\x96\xbf"); } // [B1, C2]3227test { try toUnicodeFail("\xe2\xb4\x81\xf0\x90\x8b\xa8\xe5\xa8\xa4.\xe2\x80\x8d\xcc\xbc\xd9\xa2\xf0\x91\x96\xbf"); } // [B1, C2]
3228test { try toAsciiFail("\xe2\xb4\x81\xf0\x90\x8b\xa8\xe5\xa8\xa4.\xe2\x80\x8d\xcc\xbc\xd9\xa2\xf0\x91\x96\xbf", false); } // [B1, C2]
3229test { try toAsciiFail("\xe2\xb4\x81\xf0\x90\x8b\xa8\xe5\xa8\xa4.\xe2\x80\x8d\xcc\xbc\xd9\xa2\xf0\x91\x96\xbf", true); } // [B1, V6]
1600test { try toUnicodeFail("xn--skjw75lg29h.xn--9ta62nrv36a"); } // [B1, V6]3230test { try toUnicodeFail("xn--skjw75lg29h.xn--9ta62nrv36a"); } // [B1, V6]
3231test { try toAsciiFail("xn--skjw75lg29h.xn--9ta62nrv36a", false); } // [B1, V6]
3232test { try toAsciiFail("xn--skjw75lg29h.xn--9ta62nrv36a", true); } // [B1, V6]
1601test { try toUnicodeFail("xn--skjw75lg29h.xn--9ta62ngt6aou8t"); } // [B1, C2]3233test { try toUnicodeFail("xn--skjw75lg29h.xn--9ta62ngt6aou8t"); } // [B1, C2]
3234test { try toAsciiFail("xn--skjw75lg29h.xn--9ta62ngt6aou8t", false); } // [B1, C2]
3235test { try toAsciiFail("xn--skjw75lg29h.xn--9ta62ngt6aou8t", true); } // [B1, C2]
1602test { try toUnicodeFail("xn--8md2578ag21g.xn--9ta62nrv36a"); } // [B1, V6, V7]3236test { try toUnicodeFail("xn--8md2578ag21g.xn--9ta62nrv36a"); } // [B1, V6, V7]
3237test { try toAsciiFail("xn--8md2578ag21g.xn--9ta62nrv36a", false); } // [B1, V6, V7]
3238test { try toAsciiFail("xn--8md2578ag21g.xn--9ta62nrv36a", true); } // [B1, V6, V7]
1603test { try toUnicodeFail("xn--8md2578ag21g.xn--9ta62ngt6aou8t"); } // [B1, C2, V7]3239test { try toUnicodeFail("xn--8md2578ag21g.xn--9ta62ngt6aou8t"); } // [B1, C2, V7]
3240test { try toAsciiFail("xn--8md2578ag21g.xn--9ta62ngt6aou8t", false); } // [B1, C2, V7]
3241test { try toAsciiFail("xn--8md2578ag21g.xn--9ta62ngt6aou8t", true); } // [B1, C2, V7]
1604test { try toUnicodeFail("\xf0\x9f\x84\x80\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x82\xe2\x92\x88\xe0\xbe\xb6\xc3\x9f"); } // [B1, V7]3242test { try toUnicodeFail("\xf0\x9f\x84\x80\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x82\xe2\x92\x88\xe0\xbe\xb6\xc3\x9f"); } // [B1, V7]
3243test { try toAsciiFail("\xf0\x9f\x84\x80\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x82\xe2\x92\x88\xe0\xbe\xb6\xc3\x9f", false); } // [B1, V7]
3244test { try toAsciiFail("\xf0\x9f\x84\x80\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x82\xe2\x92\x88\xe0\xbe\xb6\xc3\x9f", true); } // [B1, V7]
1605test { try toUnicodeFail("0.\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x821.\xe0\xbe\xb6\xc3\x9f"); } // [B1, B5, B6, V6]3245test { try toUnicodeFail("0.\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x821.\xe0\xbe\xb6\xc3\x9f"); } // [B1, B5, B6, V6]
3246test { try toAsciiFail("0.\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x821.\xe0\xbe\xb6\xc3\x9f", false); } // [B1, B5, B6, V6]
3247test { try toAsciiFail("0.\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x821.\xe0\xbe\xb6\xc3\x9f", true); } // [B1, B5, B6, V6]
1606test { try toUnicodeFail("0.\xe2\xb4\x84\xd9\xa9\xe0\xa0\xa0\xe3\x80\x821.\xe0\xbe\xb6\xc3\x9f"); } // [B1, B5, B6, V6]3248test { try toUnicodeFail("0.\xe2\xb4\x84\xd9\xa9\xe0\xa0\xa0\xe3\x80\x821.\xe0\xbe\xb6\xc3\x9f"); } // [B1, B5, B6, V6]
3249test { try toAsciiFail("0.\xe2\xb4\x84\xd9\xa9\xe0\xa0\xa0\xe3\x80\x821.\xe0\xbe\xb6\xc3\x9f", false); } // [B1, B5, B6, V6]
3250test { try toAsciiFail("0.\xe2\xb4\x84\xd9\xa9\xe0\xa0\xa0\xe3\x80\x821.\xe0\xbe\xb6\xc3\x9f", true); } // [B1, B5, B6, V6]
1607test { try toUnicodeFail("0.\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x821.\xe0\xbe\xb6SS"); } // [B1, B5, B6, V6]3251test { try toUnicodeFail("0.\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x821.\xe0\xbe\xb6SS"); } // [B1, B5, B6, V6]
3252test { try toAsciiFail("0.\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x821.\xe0\xbe\xb6SS", false); } // [B1, B5, B6, V6]
3253test { try toAsciiFail("0.\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x821.\xe0\xbe\xb6SS", true); } // [B1, B5, B6, V6]
1608test { try toUnicodeFail("0.\xe2\xb4\x84\xd9\xa9\xe0\xa0\xa0\xe3\x80\x821.\xe0\xbe\xb6ss"); } // [B1, B5, B6, V6]3254test { try toUnicodeFail("0.\xe2\xb4\x84\xd9\xa9\xe0\xa0\xa0\xe3\x80\x821.\xe0\xbe\xb6ss"); } // [B1, B5, B6, V6]
3255test { try toAsciiFail("0.\xe2\xb4\x84\xd9\xa9\xe0\xa0\xa0\xe3\x80\x821.\xe0\xbe\xb6ss", false); } // [B1, B5, B6, V6]
3256test { try toAsciiFail("0.\xe2\xb4\x84\xd9\xa9\xe0\xa0\xa0\xe3\x80\x821.\xe0\xbe\xb6ss", true); } // [B1, B5, B6, V6]
1609test { try toUnicodeFail("0.\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x821.\xe0\xbe\xb6Ss"); } // [B1, B5, B6, V6]3257test { try toUnicodeFail("0.\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x821.\xe0\xbe\xb6Ss"); } // [B1, B5, B6, V6]
3258test { try toAsciiFail("0.\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x821.\xe0\xbe\xb6Ss", false); } // [B1, B5, B6, V6]
3259test { try toAsciiFail("0.\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x821.\xe0\xbe\xb6Ss", true); } // [B1, B5, B6, V6]
1610test { try toUnicodeFail("0.xn--iib29fp25e.1.xn--ss-1sj"); } // [B1, B5, B6, V6]3260test { try toUnicodeFail("0.xn--iib29fp25e.1.xn--ss-1sj"); } // [B1, B5, B6, V6]
3261test { try toAsciiFail("0.xn--iib29fp25e.1.xn--ss-1sj", false); } // [B1, B5, B6, V6]
3262test { try toAsciiFail("0.xn--iib29fp25e.1.xn--ss-1sj", true); } // [B1, B5, B6, V6]
1611test { try toUnicodeFail("0.xn--iib29fp25e.1.xn--zca117e"); } // [B1, B5, B6, V6]3263test { try toUnicodeFail("0.xn--iib29fp25e.1.xn--zca117e"); } // [B1, B5, B6, V6]
3264test { try toAsciiFail("0.xn--iib29fp25e.1.xn--zca117e", false); } // [B1, B5, B6, V6]
3265test { try toAsciiFail("0.xn--iib29fp25e.1.xn--zca117e", true); } // [B1, B5, B6, V6]
1612test { try toUnicodeFail("\xf0\x9f\x84\x80\xe2\xb4\x84\xd9\xa9\xe0\xa0\xa0\xe3\x80\x82\xe2\x92\x88\xe0\xbe\xb6\xc3\x9f"); } // [B1, V7]3266test { try toUnicodeFail("\xf0\x9f\x84\x80\xe2\xb4\x84\xd9\xa9\xe0\xa0\xa0\xe3\x80\x82\xe2\x92\x88\xe0\xbe\xb6\xc3\x9f"); } // [B1, V7]
3267test { try toAsciiFail("\xf0\x9f\x84\x80\xe2\xb4\x84\xd9\xa9\xe0\xa0\xa0\xe3\x80\x82\xe2\x92\x88\xe0\xbe\xb6\xc3\x9f", false); } // [B1, V7]
3268test { try toAsciiFail("\xf0\x9f\x84\x80\xe2\xb4\x84\xd9\xa9\xe0\xa0\xa0\xe3\x80\x82\xe2\x92\x88\xe0\xbe\xb6\xc3\x9f", true); } // [B1, V7]
1613test { try toUnicodeFail("\xf0\x9f\x84\x80\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x82\xe2\x92\x88\xe0\xbe\xb6SS"); } // [B1, V7]3269test { try toUnicodeFail("\xf0\x9f\x84\x80\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x82\xe2\x92\x88\xe0\xbe\xb6SS"); } // [B1, V7]
3270test { try toAsciiFail("\xf0\x9f\x84\x80\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x82\xe2\x92\x88\xe0\xbe\xb6SS", false); } // [B1, V7]
3271test { try toAsciiFail("\xf0\x9f\x84\x80\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x82\xe2\x92\x88\xe0\xbe\xb6SS", true); } // [B1, V7]
1614test { try toUnicodeFail("\xf0\x9f\x84\x80\xe2\xb4\x84\xd9\xa9\xe0\xa0\xa0\xe3\x80\x82\xe2\x92\x88\xe0\xbe\xb6ss"); } // [B1, V7]3272test { try toUnicodeFail("\xf0\x9f\x84\x80\xe2\xb4\x84\xd9\xa9\xe0\xa0\xa0\xe3\x80\x82\xe2\x92\x88\xe0\xbe\xb6ss"); } // [B1, V7]
3273test { try toAsciiFail("\xf0\x9f\x84\x80\xe2\xb4\x84\xd9\xa9\xe0\xa0\xa0\xe3\x80\x82\xe2\x92\x88\xe0\xbe\xb6ss", false); } // [B1, V7]
3274test { try toAsciiFail("\xf0\x9f\x84\x80\xe2\xb4\x84\xd9\xa9\xe0\xa0\xa0\xe3\x80\x82\xe2\x92\x88\xe0\xbe\xb6ss", true); } // [B1, V7]
1615test { try toUnicodeFail("\xf0\x9f\x84\x80\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x82\xe2\x92\x88\xe0\xbe\xb6Ss"); } // [B1, V7]3275test { try toUnicodeFail("\xf0\x9f\x84\x80\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x82\xe2\x92\x88\xe0\xbe\xb6Ss"); } // [B1, V7]
3276test { try toAsciiFail("\xf0\x9f\x84\x80\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x82\xe2\x92\x88\xe0\xbe\xb6Ss", false); } // [B1, V7]
3277test { try toAsciiFail("\xf0\x9f\x84\x80\xe1\x82\xa4\xd9\xa9\xe0\xa0\xa0\xe3\x80\x82\xe2\x92\x88\xe0\xbe\xb6Ss", true); } // [B1, V7]
1616test { try toUnicodeFail("xn--iib29fp25e0219a.xn--ss-1sj588o"); } // [B1, V7]3278test { try toUnicodeFail("xn--iib29fp25e0219a.xn--ss-1sj588o"); } // [B1, V7]
3279test { try toAsciiFail("xn--iib29fp25e0219a.xn--ss-1sj588o", false); } // [B1, V7]
3280test { try toAsciiFail("xn--iib29fp25e0219a.xn--ss-1sj588o", true); } // [B1, V7]
1617test { try toUnicodeFail("xn--iib29fp25e0219a.xn--zca117e3vp"); } // [B1, V7]3281test { try toUnicodeFail("xn--iib29fp25e0219a.xn--zca117e3vp"); } // [B1, V7]
3282test { try toAsciiFail("xn--iib29fp25e0219a.xn--zca117e3vp", false); } // [B1, V7]
3283test { try toAsciiFail("xn--iib29fp25e0219a.xn--zca117e3vp", true); } // [B1, V7]
1618test { try toUnicodeFail("0.xn--iib29f26o.1.xn--ss-1sj"); } // [B1, B5, B6, V6, V7]3284test { try toUnicodeFail("0.xn--iib29f26o.1.xn--ss-1sj"); } // [B1, B5, B6, V6, V7]
3285test { try toAsciiFail("0.xn--iib29f26o.1.xn--ss-1sj", false); } // [B1, B5, B6, V6, V7]
3286test { try toAsciiFail("0.xn--iib29f26o.1.xn--ss-1sj", true); } // [B1, B5, B6, V6, V7]
1619test { try toUnicodeFail("0.xn--iib29f26o.1.xn--zca117e"); } // [B1, B5, B6, V6, V7]3287test { try toUnicodeFail("0.xn--iib29f26o.1.xn--zca117e"); } // [B1, B5, B6, V6, V7]
3288test { try toAsciiFail("0.xn--iib29f26o.1.xn--zca117e", false); } // [B1, B5, B6, V6, V7]
3289test { try toAsciiFail("0.xn--iib29f26o.1.xn--zca117e", true); } // [B1, B5, B6, V6, V7]
1620test { try toUnicodeFail("xn--iib29f26o6n43c.xn--ss-1sj588o"); } // [B1, V7]3290test { try toUnicodeFail("xn--iib29f26o6n43c.xn--ss-1sj588o"); } // [B1, V7]
3291test { try toAsciiFail("xn--iib29f26o6n43c.xn--ss-1sj588o", false); } // [B1, V7]
3292test { try toAsciiFail("xn--iib29f26o6n43c.xn--ss-1sj588o", true); } // [B1, V7]
1621test { try toUnicodeFail("xn--iib29f26o6n43c.xn--zca117e3vp"); } // [B1, V7]3293test { try toUnicodeFail("xn--iib29f26o6n43c.xn--zca117e3vp"); } // [B1, V7]
3294test { try toAsciiFail("xn--iib29f26o6n43c.xn--zca117e3vp", false); } // [B1, V7]
3295test { try toAsciiFail("xn--iib29f26o6n43c.xn--zca117e3vp", true); } // [B1, V7]
1622test { try toUnicodeFail("\xe2\x89\xa0.\xe2\x80\x8c-\xd9\xab"); } // [B1, C1]3296test { try toUnicodeFail("\xe2\x89\xa0.\xe2\x80\x8c-\xd9\xab"); } // [B1, C1]
3297test { try toAsciiFail("\xe2\x89\xa0.\xe2\x80\x8c-\xd9\xab", false); } // [B1, C1]
3298test { try toAsciiFail("\xe2\x89\xa0.\xe2\x80\x8c-\xd9\xab", true); } // [B1, V3]
1623test { try toUnicodeFail("=\xcc\xb8.\xe2\x80\x8c-\xd9\xab"); } // [B1, C1]3299test { try toUnicodeFail("=\xcc\xb8.\xe2\x80\x8c-\xd9\xab"); } // [B1, C1]
3300test { try toAsciiFail("=\xcc\xb8.\xe2\x80\x8c-\xd9\xab", false); } // [B1, C1]
3301test { try toAsciiFail("=\xcc\xb8.\xe2\x80\x8c-\xd9\xab", true); } // [B1, V3]
1624test { try toUnicodeFail("xn--1ch.xn----vqc"); } // [B1, V3]3302test { try toUnicodeFail("xn--1ch.xn----vqc"); } // [B1, V3]
3303test { try toAsciiFail("xn--1ch.xn----vqc", false); } // [B1, V3]
3304test { try toAsciiFail("xn--1ch.xn----vqc", true); } // [B1, V3]
1625test { try toUnicodeFail("xn--1ch.xn----vqc597q"); } // [B1, C1]3305test { try toUnicodeFail("xn--1ch.xn----vqc597q"); } // [B1, C1]
3306test { try toAsciiFail("xn--1ch.xn----vqc597q", false); } // [B1, C1]
3307test { try toAsciiFail("xn--1ch.xn----vqc597q", true); } // [B1, C1]
1626test { try toUnicodeFail("\xd9\xa0\xdb\xb1\xef\xbd\xa1\xf3\xa0\xb3\xb6\xf0\x9e\xa0\x81\xd9\xa5"); } // [B1, V7]3308test { try toUnicodeFail("\xd9\xa0\xdb\xb1\xef\xbd\xa1\xf3\xa0\xb3\xb6\xf0\x9e\xa0\x81\xd9\xa5"); } // [B1, V7]
3309test { try toAsciiFail("\xd9\xa0\xdb\xb1\xef\xbd\xa1\xf3\xa0\xb3\xb6\xf0\x9e\xa0\x81\xd9\xa5", false); } // [B1, V7]
3310test { try toAsciiFail("\xd9\xa0\xdb\xb1\xef\xbd\xa1\xf3\xa0\xb3\xb6\xf0\x9e\xa0\x81\xd9\xa5", true); } // [B1, V7]
1627test { try toUnicodeFail("\xd9\xa0\xdb\xb1\xe3\x80\x82\xf3\xa0\xb3\xb6\xf0\x9e\xa0\x81\xd9\xa5"); } // [B1, V7]3311test { try toUnicodeFail("\xd9\xa0\xdb\xb1\xe3\x80\x82\xf3\xa0\xb3\xb6\xf0\x9e\xa0\x81\xd9\xa5"); } // [B1, V7]
3312test { try toAsciiFail("\xd9\xa0\xdb\xb1\xe3\x80\x82\xf3\xa0\xb3\xb6\xf0\x9e\xa0\x81\xd9\xa5", false); } // [B1, V7]
3313test { try toAsciiFail("\xd9\xa0\xdb\xb1\xe3\x80\x82\xf3\xa0\xb3\xb6\xf0\x9e\xa0\x81\xd9\xa5", true); } // [B1, V7]
1628test { try toUnicodeFail("xn--8hb40a.xn--eib7967vner3e"); } // [B1, V7]3314test { try toUnicodeFail("xn--8hb40a.xn--eib7967vner3e"); } // [B1, V7]
3315test { try toAsciiFail("xn--8hb40a.xn--eib7967vner3e", false); } // [B1, V7]
3316test { try toAsciiFail("xn--8hb40a.xn--eib7967vner3e", true); } // [B1, V7]
1629test { try toUnicodeFail("\xe2\x80\x8c\xd9\xa3\xe2\x92\x96\xe3\x80\x82\xf3\xb1\x85\x89\xf0\xbd\xb7\x9b\xe1\xaf\xb3"); } // [B1, C1, V7]3317test { try toUnicodeFail("\xe2\x80\x8c\xd9\xa3\xe2\x92\x96\xe3\x80\x82\xf3\xb1\x85\x89\xf0\xbd\xb7\x9b\xe1\xaf\xb3"); } // [B1, C1, V7]
3318test { try toAsciiFail("\xe2\x80\x8c\xd9\xa3\xe2\x92\x96\xe3\x80\x82\xf3\xb1\x85\x89\xf0\xbd\xb7\x9b\xe1\xaf\xb3", false); } // [B1, C1, V7]
3319test { try toAsciiFail("\xe2\x80\x8c\xd9\xa3\xe2\x92\x96\xe3\x80\x82\xf3\xb1\x85\x89\xf0\xbd\xb7\x9b\xe1\xaf\xb3", true); } // [B1, V7]
1630test { try toUnicodeFail("\xe2\x80\x8c\xd9\xa315.\xe3\x80\x82\xf3\xb1\x85\x89\xf0\xbd\xb7\x9b\xe1\xaf\xb3"); } // [B1, C1, V7, X4_2]3320test { try toUnicodeFail("\xe2\x80\x8c\xd9\xa315.\xe3\x80\x82\xf3\xb1\x85\x89\xf0\xbd\xb7\x9b\xe1\xaf\xb3"); } // [B1, C1, V7, X4_2]
3321test { try toAsciiFail("\xe2\x80\x8c\xd9\xa315.\xe3\x80\x82\xf3\xb1\x85\x89\xf0\xbd\xb7\x9b\xe1\xaf\xb3", false); } // [B1, C1, V7, A4_2]
3322test { try toAsciiFail("\xe2\x80\x8c\xd9\xa315.\xe3\x80\x82\xf3\xb1\x85\x89\xf0\xbd\xb7\x9b\xe1\xaf\xb3", true); } // [B1, V7, A4_2]
1631test { try toUnicodeFail("xn--15-gyd..xn--1zf13512buy41d"); } // [B1, V7, X4_2]3323test { try toUnicodeFail("xn--15-gyd..xn--1zf13512buy41d"); } // [B1, V7, X4_2]
3324test { try toAsciiFail("xn--15-gyd..xn--1zf13512buy41d", false); } // [B1, V7, A4_2]
3325test { try toAsciiFail("xn--15-gyd..xn--1zf13512buy41d", true); } // [B1, V7, A4_2]
1632test { try toUnicodeFail("xn--15-gyd983x..xn--1zf13512buy41d"); } // [B1, C1, V7, X4_2]3326test { try toUnicodeFail("xn--15-gyd983x..xn--1zf13512buy41d"); } // [B1, C1, V7, X4_2]
3327test { try toAsciiFail("xn--15-gyd983x..xn--1zf13512buy41d", false); } // [B1, C1, V7, A4_2]
3328test { try toAsciiFail("xn--15-gyd983x..xn--1zf13512buy41d", true); } // [B1, C1, V7, A4_2]
1633test { try toUnicodeFail("xn--cib675m.xn--1zf13512buy41d"); } // [B1, V7]3329test { try toUnicodeFail("xn--cib675m.xn--1zf13512buy41d"); } // [B1, V7]
3330test { try toAsciiFail("xn--cib675m.xn--1zf13512buy41d", false); } // [B1, V7]
3331test { try toAsciiFail("xn--cib675m.xn--1zf13512buy41d", true); } // [B1, V7]
1634test { try toUnicodeFail("xn--cib152kwgd.xn--1zf13512buy41d"); } // [B1, C1, V7]3332test { try toUnicodeFail("xn--cib152kwgd.xn--1zf13512buy41d"); } // [B1, C1, V7]
3333test { try toAsciiFail("xn--cib152kwgd.xn--1zf13512buy41d", false); } // [B1, C1, V7]
3334test { try toAsciiFail("xn--cib152kwgd.xn--1zf13512buy41d", true); } // [B1, C1, V7]
1635test { try toUnicodeFail("\xe1\xaf\xb3.-\xe9\x80\x8b\xf1\xb3\xa6\xad\xf3\x99\x99\xae"); } // [V3, V6, V7]3335test { try toUnicodeFail("\xe1\xaf\xb3.-\xe9\x80\x8b\xf1\xb3\xa6\xad\xf3\x99\x99\xae"); } // [V3, V6, V7]
3336test { try toAsciiFail("\xe1\xaf\xb3.-\xe9\x80\x8b\xf1\xb3\xa6\xad\xf3\x99\x99\xae", false); } // [V3, V6, V7]
3337test { try toAsciiFail("\xe1\xaf\xb3.-\xe9\x80\x8b\xf1\xb3\xa6\xad\xf3\x99\x99\xae", true); } // [V3, V6, V7]
1636test { try toUnicodeFail("xn--1zf.xn----483d46987byr50b"); } // [V3, V6, V7]3338test { try toUnicodeFail("xn--1zf.xn----483d46987byr50b"); } // [V3, V6, V7]
3339test { try toAsciiFail("xn--1zf.xn----483d46987byr50b", false); } // [V3, V6, V7]
3340test { try toAsciiFail("xn--1zf.xn----483d46987byr50b", true); } // [V3, V6, V7]
1637test { try toAsciiPass("\xdd\x96\xe3\x80\x82\xe3\x85\xa4\xe2\x80\x8d\xcf\x82", "xn--9ob.xn--4xa", true); }3341test { try toAsciiPass("\xdd\x96\xe3\x80\x82\xe3\x85\xa4\xe2\x80\x8d\xcf\x82", "xn--9ob.xn--4xa", true); }
1638test { try toUnicodeFail("\xdd\x96\xe3\x80\x82\xe3\x85\xa4\xe2\x80\x8d\xcf\x82"); } // [B1, C2]3342test { try toUnicodeFail("\xdd\x96\xe3\x80\x82\xe3\x85\xa4\xe2\x80\x8d\xcf\x82"); } // [B1, C2]
3343test { try toAsciiFail("\xdd\x96\xe3\x80\x82\xe3\x85\xa4\xe2\x80\x8d\xcf\x82", false); } // [B1, C2]
1639test { try toAsciiPass("\xdd\x96\xe3\x80\x82\xe1\x85\xa0\xe2\x80\x8d\xcf\x82", "xn--9ob.xn--4xa", true); }3344test { try toAsciiPass("\xdd\x96\xe3\x80\x82\xe1\x85\xa0\xe2\x80\x8d\xcf\x82", "xn--9ob.xn--4xa", true); }
1640test { try toUnicodeFail("\xdd\x96\xe3\x80\x82\xe1\x85\xa0\xe2\x80\x8d\xcf\x82"); } // [B1, C2]3345test { try toUnicodeFail("\xdd\x96\xe3\x80\x82\xe1\x85\xa0\xe2\x80\x8d\xcf\x82"); } // [B1, C2]
3346test { try toAsciiFail("\xdd\x96\xe3\x80\x82\xe1\x85\xa0\xe2\x80\x8d\xcf\x82", false); } // [B1, C2]
1641test { try toAsciiPass("\xdd\x96\xe3\x80\x82\xe1\x85\xa0\xe2\x80\x8d\xce\xa3", "xn--9ob.xn--4xa", true); }3347test { try toAsciiPass("\xdd\x96\xe3\x80\x82\xe1\x85\xa0\xe2\x80\x8d\xce\xa3", "xn--9ob.xn--4xa", true); }
1642test { try toUnicodeFail("\xdd\x96\xe3\x80\x82\xe1\x85\xa0\xe2\x80\x8d\xce\xa3"); } // [B1, C2]3348test { try toUnicodeFail("\xdd\x96\xe3\x80\x82\xe1\x85\xa0\xe2\x80\x8d\xce\xa3"); } // [B1, C2]
3349test { try toAsciiFail("\xdd\x96\xe3\x80\x82\xe1\x85\xa0\xe2\x80\x8d\xce\xa3", false); } // [B1, C2]
1643test { try toAsciiPass("\xdd\x96\xe3\x80\x82\xe1\x85\xa0\xe2\x80\x8d\xcf\x83", "xn--9ob.xn--4xa", true); }3350test { try toAsciiPass("\xdd\x96\xe3\x80\x82\xe1\x85\xa0\xe2\x80\x8d\xcf\x83", "xn--9ob.xn--4xa", true); }
1644test { try toUnicodeFail("\xdd\x96\xe3\x80\x82\xe1\x85\xa0\xe2\x80\x8d\xcf\x83"); } // [B1, C2]3351test { try toUnicodeFail("\xdd\x96\xe3\x80\x82\xe1\x85\xa0\xe2\x80\x8d\xcf\x83"); } // [B1, C2]
3352test { try toAsciiFail("\xdd\x96\xe3\x80\x82\xe1\x85\xa0\xe2\x80\x8d\xcf\x83", false); } // [B1, C2]
1645test { try toUnicodePass("xn--9ob.xn--4xa", "\xdd\x96.\xcf\x83"); }3353test { try toUnicodePass("xn--9ob.xn--4xa", "\xdd\x96.\xcf\x83"); }
1646test { try toAsciiPass("xn--9ob.xn--4xa", "xn--9ob.xn--4xa", false); }3354test { try toAsciiPass("xn--9ob.xn--4xa", "xn--9ob.xn--4xa", false); }
1647test { try toAsciiPass("xn--9ob.xn--4xa", "xn--9ob.xn--4xa", true); }3355test { try toAsciiPass("xn--9ob.xn--4xa", "xn--9ob.xn--4xa", true); }
...@@ -1652,102 +3360,290 @@ test { try toUnicodePass("\xdd\x96.\xce\xa3", "\xdd\x96.\xcf\x83"); }...@@ -1652,102 +3360,290 @@ test { try toUnicodePass("\xdd\x96.\xce\xa3", "\xdd\x96.\xcf\x83"); }
1652test { try toAsciiPass("\xdd\x96.\xce\xa3", "xn--9ob.xn--4xa", false); }3360test { try toAsciiPass("\xdd\x96.\xce\xa3", "xn--9ob.xn--4xa", false); }
1653test { try toAsciiPass("\xdd\x96.\xce\xa3", "xn--9ob.xn--4xa", true); }3361test { try toAsciiPass("\xdd\x96.\xce\xa3", "xn--9ob.xn--4xa", true); }
1654test { try toUnicodeFail("xn--9ob.xn--4xa795l"); } // [B1, C2]3362test { try toUnicodeFail("xn--9ob.xn--4xa795l"); } // [B1, C2]
3363test { try toAsciiFail("xn--9ob.xn--4xa795l", false); } // [B1, C2]
3364test { try toAsciiFail("xn--9ob.xn--4xa795l", true); } // [B1, C2]
1655test { try toUnicodeFail("xn--9ob.xn--3xa995l"); } // [B1, C2]3365test { try toUnicodeFail("xn--9ob.xn--3xa995l"); } // [B1, C2]
3366test { try toAsciiFail("xn--9ob.xn--3xa995l", false); } // [B1, C2]
3367test { try toAsciiFail("xn--9ob.xn--3xa995l", true); } // [B1, C2]
1656test { try toAsciiPass("\xdd\x96\xe3\x80\x82\xe3\x85\xa4\xe2\x80\x8d\xce\xa3", "xn--9ob.xn--4xa", true); }3368test { try toAsciiPass("\xdd\x96\xe3\x80\x82\xe3\x85\xa4\xe2\x80\x8d\xce\xa3", "xn--9ob.xn--4xa", true); }
1657test { try toUnicodeFail("\xdd\x96\xe3\x80\x82\xe3\x85\xa4\xe2\x80\x8d\xce\xa3"); } // [B1, C2]3369test { try toUnicodeFail("\xdd\x96\xe3\x80\x82\xe3\x85\xa4\xe2\x80\x8d\xce\xa3"); } // [B1, C2]
3370test { try toAsciiFail("\xdd\x96\xe3\x80\x82\xe3\x85\xa4\xe2\x80\x8d\xce\xa3", false); } // [B1, C2]
1658test { try toAsciiPass("\xdd\x96\xe3\x80\x82\xe3\x85\xa4\xe2\x80\x8d\xcf\x83", "xn--9ob.xn--4xa", true); }3371test { try toAsciiPass("\xdd\x96\xe3\x80\x82\xe3\x85\xa4\xe2\x80\x8d\xcf\x83", "xn--9ob.xn--4xa", true); }
1659test { try toUnicodeFail("\xdd\x96\xe3\x80\x82\xe3\x85\xa4\xe2\x80\x8d\xcf\x83"); } // [B1, C2]3372test { try toUnicodeFail("\xdd\x96\xe3\x80\x82\xe3\x85\xa4\xe2\x80\x8d\xcf\x83"); } // [B1, C2]
3373test { try toAsciiFail("\xdd\x96\xe3\x80\x82\xe3\x85\xa4\xe2\x80\x8d\xcf\x83", false); } // [B1, C2]
1660test { try toUnicodeFail("xn--9ob.xn--4xa380e"); } // [V7]3374test { try toUnicodeFail("xn--9ob.xn--4xa380e"); } // [V7]
3375test { try toAsciiFail("xn--9ob.xn--4xa380e", false); } // [V7]
3376test { try toAsciiFail("xn--9ob.xn--4xa380e", true); } // [V7]
1661test { try toUnicodeFail("xn--9ob.xn--4xa380ebol"); } // [C2, V7]3377test { try toUnicodeFail("xn--9ob.xn--4xa380ebol"); } // [C2, V7]
3378test { try toAsciiFail("xn--9ob.xn--4xa380ebol", false); } // [C2, V7]
3379test { try toAsciiFail("xn--9ob.xn--4xa380ebol", true); } // [C2, V7]
1662test { try toUnicodeFail("xn--9ob.xn--3xa580ebol"); } // [C2, V7]3380test { try toUnicodeFail("xn--9ob.xn--3xa580ebol"); } // [C2, V7]
3381test { try toAsciiFail("xn--9ob.xn--3xa580ebol", false); } // [C2, V7]
3382test { try toAsciiFail("xn--9ob.xn--3xa580ebol", true); } // [C2, V7]
1663test { try toUnicodeFail("xn--9ob.xn--4xa574u"); } // [V7]3383test { try toUnicodeFail("xn--9ob.xn--4xa574u"); } // [V7]
3384test { try toAsciiFail("xn--9ob.xn--4xa574u", false); } // [V7]
3385test { try toAsciiFail("xn--9ob.xn--4xa574u", true); } // [V7]
1664test { try toUnicodeFail("xn--9ob.xn--4xa795lq2l"); } // [C2, V7]3386test { try toUnicodeFail("xn--9ob.xn--4xa795lq2l"); } // [C2, V7]
3387test { try toAsciiFail("xn--9ob.xn--4xa795lq2l", false); } // [C2, V7]
3388test { try toAsciiFail("xn--9ob.xn--4xa795lq2l", true); } // [C2, V7]
1665test { try toUnicodeFail("xn--9ob.xn--3xa995lq2l"); } // [C2, V7]3389test { try toUnicodeFail("xn--9ob.xn--3xa995lq2l"); } // [C2, V7]
3390test { try toAsciiFail("xn--9ob.xn--3xa995lq2l", false); } // [C2, V7]
3391test { try toAsciiFail("xn--9ob.xn--3xa995lq2l", true); } // [C2, V7]
1666test { try toUnicodeFail("\xe1\xa1\x86\xe1\x82\xa3\xef\xbd\xa1\xf3\x9e\xa2\xa7\xcc\x95\xe2\x80\x8d\xe2\x80\x8d"); } // [C2, V7]3392test { try toUnicodeFail("\xe1\xa1\x86\xe1\x82\xa3\xef\xbd\xa1\xf3\x9e\xa2\xa7\xcc\x95\xe2\x80\x8d\xe2\x80\x8d"); } // [C2, V7]
3393test { try toAsciiFail("\xe1\xa1\x86\xe1\x82\xa3\xef\xbd\xa1\xf3\x9e\xa2\xa7\xcc\x95\xe2\x80\x8d\xe2\x80\x8d", false); } // [C2, V7]
3394test { try toAsciiFail("\xe1\xa1\x86\xe1\x82\xa3\xef\xbd\xa1\xf3\x9e\xa2\xa7\xcc\x95\xe2\x80\x8d\xe2\x80\x8d", true); } // [V7]
1667test { try toUnicodeFail("\xe1\xa1\x86\xe1\x82\xa3\xe3\x80\x82\xf3\x9e\xa2\xa7\xcc\x95\xe2\x80\x8d\xe2\x80\x8d"); } // [C2, V7]3395test { try toUnicodeFail("\xe1\xa1\x86\xe1\x82\xa3\xe3\x80\x82\xf3\x9e\xa2\xa7\xcc\x95\xe2\x80\x8d\xe2\x80\x8d"); } // [C2, V7]
3396test { try toAsciiFail("\xe1\xa1\x86\xe1\x82\xa3\xe3\x80\x82\xf3\x9e\xa2\xa7\xcc\x95\xe2\x80\x8d\xe2\x80\x8d", false); } // [C2, V7]
3397test { try toAsciiFail("\xe1\xa1\x86\xe1\x82\xa3\xe3\x80\x82\xf3\x9e\xa2\xa7\xcc\x95\xe2\x80\x8d\xe2\x80\x8d", true); } // [V7]
1668test { try toUnicodeFail("\xe1\xa1\x86\xe2\xb4\x83\xe3\x80\x82\xf3\x9e\xa2\xa7\xcc\x95\xe2\x80\x8d\xe2\x80\x8d"); } // [C2, V7]3398test { try toUnicodeFail("\xe1\xa1\x86\xe2\xb4\x83\xe3\x80\x82\xf3\x9e\xa2\xa7\xcc\x95\xe2\x80\x8d\xe2\x80\x8d"); } // [C2, V7]
3399test { try toAsciiFail("\xe1\xa1\x86\xe2\xb4\x83\xe3\x80\x82\xf3\x9e\xa2\xa7\xcc\x95\xe2\x80\x8d\xe2\x80\x8d", false); } // [C2, V7]
3400test { try toAsciiFail("\xe1\xa1\x86\xe2\xb4\x83\xe3\x80\x82\xf3\x9e\xa2\xa7\xcc\x95\xe2\x80\x8d\xe2\x80\x8d", true); } // [V7]
1669test { try toUnicodeFail("xn--57e237h.xn--5sa98523p"); } // [V7]3401test { try toUnicodeFail("xn--57e237h.xn--5sa98523p"); } // [V7]
3402test { try toAsciiFail("xn--57e237h.xn--5sa98523p", false); } // [V7]
3403test { try toAsciiFail("xn--57e237h.xn--5sa98523p", true); } // [V7]
1670test { try toUnicodeFail("xn--57e237h.xn--5sa649la993427a"); } // [C2, V7]3404test { try toUnicodeFail("xn--57e237h.xn--5sa649la993427a"); } // [C2, V7]
3405test { try toAsciiFail("xn--57e237h.xn--5sa649la993427a", false); } // [C2, V7]
3406test { try toAsciiFail("xn--57e237h.xn--5sa649la993427a", true); } // [C2, V7]
1671test { try toUnicodeFail("\xe1\xa1\x86\xe2\xb4\x83\xef\xbd\xa1\xf3\x9e\xa2\xa7\xcc\x95\xe2\x80\x8d\xe2\x80\x8d"); } // [C2, V7]3407test { try toUnicodeFail("\xe1\xa1\x86\xe2\xb4\x83\xef\xbd\xa1\xf3\x9e\xa2\xa7\xcc\x95\xe2\x80\x8d\xe2\x80\x8d"); } // [C2, V7]
3408test { try toAsciiFail("\xe1\xa1\x86\xe2\xb4\x83\xef\xbd\xa1\xf3\x9e\xa2\xa7\xcc\x95\xe2\x80\x8d\xe2\x80\x8d", false); } // [C2, V7]
3409test { try toAsciiFail("\xe1\xa1\x86\xe2\xb4\x83\xef\xbd\xa1\xf3\x9e\xa2\xa7\xcc\x95\xe2\x80\x8d\xe2\x80\x8d", true); } // [V7]
1672test { try toUnicodeFail("xn--bnd320b.xn--5sa98523p"); } // [V7]3410test { try toUnicodeFail("xn--bnd320b.xn--5sa98523p"); } // [V7]
3411test { try toAsciiFail("xn--bnd320b.xn--5sa98523p", false); } // [V7]
3412test { try toAsciiFail("xn--bnd320b.xn--5sa98523p", true); } // [V7]
1673test { try toUnicodeFail("xn--bnd320b.xn--5sa649la993427a"); } // [C2, V7]3413test { try toUnicodeFail("xn--bnd320b.xn--5sa649la993427a"); } // [C2, V7]
3414test { try toAsciiFail("xn--bnd320b.xn--5sa649la993427a", false); } // [C2, V7]
3415test { try toAsciiFail("xn--bnd320b.xn--5sa649la993427a", true); } // [C2, V7]
1674test { try toUnicodeFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5\xef\xbc\x8e\xcf\x82\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d"); } // [B5, B6, C1, C2]3416test { try toUnicodeFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5\xef\xbc\x8e\xcf\x82\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d"); } // [B5, B6, C1, C2]
3417test { try toAsciiFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5\xef\xbc\x8e\xcf\x82\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d", false); } // [B5, B6, C1, C2]
3418test { try toAsciiFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5\xef\xbc\x8e\xcf\x82\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d", true); } // [B5, B6]
1675test { try toUnicodeFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5.\xcf\x82\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d"); } // [B5, B6, C1, C2]3419test { try toUnicodeFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5.\xcf\x82\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d"); } // [B5, B6, C1, C2]
3420test { try toAsciiFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5.\xcf\x82\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d", false); } // [B5, B6, C1, C2]
3421test { try toAsciiFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5.\xcf\x82\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d", true); } // [B5, B6]
1676test { try toUnicodeFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5.\xce\xa3\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d"); } // [B5, B6, C1, C2]3422test { try toUnicodeFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5.\xce\xa3\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d"); } // [B5, B6, C1, C2]
3423test { try toAsciiFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5.\xce\xa3\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d", false); } // [B5, B6, C1, C2]
3424test { try toAsciiFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5.\xce\xa3\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d", true); } // [B5, B6]
1677test { try toUnicodeFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5.\xcf\x83\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d"); } // [B5, B6, C1, C2]3425test { try toUnicodeFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5.\xcf\x83\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d"); } // [B5, B6, C1, C2]
3426test { try toAsciiFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5.\xcf\x83\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d", false); } // [B5, B6, C1, C2]
3427test { try toAsciiFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5.\xcf\x83\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d", true); } // [B5, B6]
1678test { try toUnicodeFail("xn--ewb302xhu1l.xn--4xa0426k"); } // [B5, B6]3428test { try toUnicodeFail("xn--ewb302xhu1l.xn--4xa0426k"); } // [B5, B6]
3429test { try toAsciiFail("xn--ewb302xhu1l.xn--4xa0426k", false); } // [B5, B6]
3430test { try toAsciiFail("xn--ewb302xhu1l.xn--4xa0426k", true); } // [B5, B6]
1679test { try toUnicodeFail("xn--ewb962jfitku4r.xn--4xa695lda6932v"); } // [B5, B6, C1, C2]3431test { try toUnicodeFail("xn--ewb962jfitku4r.xn--4xa695lda6932v"); } // [B5, B6, C1, C2]
3432test { try toAsciiFail("xn--ewb962jfitku4r.xn--4xa695lda6932v", false); } // [B5, B6, C1, C2]
3433test { try toAsciiFail("xn--ewb962jfitku4r.xn--4xa695lda6932v", true); } // [B5, B6, C1, C2]
1680test { try toUnicodeFail("xn--ewb962jfitku4r.xn--3xa895lda6932v"); } // [B5, B6, C1, C2]3434test { try toUnicodeFail("xn--ewb962jfitku4r.xn--3xa895lda6932v"); } // [B5, B6, C1, C2]
3435test { try toAsciiFail("xn--ewb962jfitku4r.xn--3xa895lda6932v", false); } // [B5, B6, C1, C2]
3436test { try toAsciiFail("xn--ewb962jfitku4r.xn--3xa895lda6932v", true); } // [B5, B6, C1, C2]
1681test { try toUnicodeFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5\xef\xbc\x8e\xce\xa3\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d"); } // [B5, B6, C1, C2]3437test { try toUnicodeFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5\xef\xbc\x8e\xce\xa3\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d"); } // [B5, B6, C1, C2]
3438test { try toAsciiFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5\xef\xbc\x8e\xce\xa3\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d", false); } // [B5, B6, C1, C2]
3439test { try toAsciiFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5\xef\xbc\x8e\xce\xa3\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d", true); } // [B5, B6]
1682test { try toUnicodeFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5\xef\xbc\x8e\xcf\x83\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d"); } // [B5, B6, C1, C2]3440test { try toUnicodeFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5\xef\xbc\x8e\xcf\x83\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d"); } // [B5, B6, C1, C2]
3441test { try toAsciiFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5\xef\xbc\x8e\xcf\x83\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d", false); } // [B5, B6, C1, C2]
3442test { try toAsciiFail("\xe3\xad\x84\xe2\x80\x8d\xe0\xa1\x8f\xf0\x91\x9a\xb5\xef\xbc\x8e\xcf\x83\xf0\x90\xae\xae\xe2\x80\x8c\xe2\x80\x8d", true); } // [B5, B6]
1683test { try toUnicodeFail("\xe1\x9e\xb5\xe3\x80\x82\xf0\x9e\xaf\xb8\xea\xa1\x80\xf0\x9f\x84\x8b"); } // [B2, B3, V7, X4_2]3443test { try toUnicodeFail("\xe1\x9e\xb5\xe3\x80\x82\xf0\x9e\xaf\xb8\xea\xa1\x80\xf0\x9f\x84\x8b"); } // [B2, B3, V7, X4_2]
3444test { try toAsciiFail("\xe1\x9e\xb5\xe3\x80\x82\xf0\x9e\xaf\xb8\xea\xa1\x80\xf0\x9f\x84\x8b", false); } // [B2, B3, V7, A4_2]
3445test { try toAsciiFail("\xe1\x9e\xb5\xe3\x80\x82\xf0\x9e\xaf\xb8\xea\xa1\x80\xf0\x9f\x84\x8b", true); } // [B2, B3, V7, A4_2]
1684test { try toUnicodeFail(".xn--8b9ar252dngd"); } // [B2, B3, V7, X4_2]3446test { try toUnicodeFail(".xn--8b9ar252dngd"); } // [B2, B3, V7, X4_2]
3447test { try toAsciiFail(".xn--8b9ar252dngd", false); } // [B2, B3, V7, A4_2]
3448test { try toAsciiFail(".xn--8b9ar252dngd", true); } // [B2, B3, V7, A4_2]
1685test { try toUnicodeFail("xn--03e.xn--8b9ar252dngd"); } // [B1, B2, B3, V6, V7]3449test { try toUnicodeFail("xn--03e.xn--8b9ar252dngd"); } // [B1, B2, B3, V6, V7]
3450test { try toAsciiFail("xn--03e.xn--8b9ar252dngd", false); } // [B1, B2, B3, V6, V7]
3451test { try toAsciiFail("xn--03e.xn--8b9ar252dngd", true); } // [B1, B2, B3, V6, V7]
1686test { try toUnicodeFail("\xf3\x90\xaa\xba\xe6\x9a\x91\xef\xbc\x8e\xe2\xbe\x91\xd9\xa8"); } // [B5, B6, V7]3452test { try toUnicodeFail("\xf3\x90\xaa\xba\xe6\x9a\x91\xef\xbc\x8e\xe2\xbe\x91\xd9\xa8"); } // [B5, B6, V7]
3453test { try toAsciiFail("\xf3\x90\xaa\xba\xe6\x9a\x91\xef\xbc\x8e\xe2\xbe\x91\xd9\xa8", false); } // [B5, B6, V7]
3454test { try toAsciiFail("\xf3\x90\xaa\xba\xe6\x9a\x91\xef\xbc\x8e\xe2\xbe\x91\xd9\xa8", true); } // [B5, B6, V7]
1687test { try toUnicodeFail("\xf3\x90\xaa\xba\xe6\x9a\x91.\xe8\xa5\xbe\xd9\xa8"); } // [B5, B6, V7]3455test { try toUnicodeFail("\xf3\x90\xaa\xba\xe6\x9a\x91.\xe8\xa5\xbe\xd9\xa8"); } // [B5, B6, V7]
3456test { try toAsciiFail("\xf3\x90\xaa\xba\xe6\x9a\x91.\xe8\xa5\xbe\xd9\xa8", false); } // [B5, B6, V7]
3457test { try toAsciiFail("\xf3\x90\xaa\xba\xe6\x9a\x91.\xe8\xa5\xbe\xd9\xa8", true); } // [B5, B6, V7]
1688test { try toUnicodeFail("xn--tlvq3513e.xn--hib9228d"); } // [B5, B6, V7]3458test { try toUnicodeFail("xn--tlvq3513e.xn--hib9228d"); } // [B5, B6, V7]
3459test { try toAsciiFail("xn--tlvq3513e.xn--hib9228d", false); } // [B5, B6, V7]
3460test { try toAsciiFail("xn--tlvq3513e.xn--hib9228d", true); } // [B5, B6, V7]
1689test { try toUnicodeFail("\xf3\xa0\x84\x9a\xe2\x89\xaf\xea\xa1\xa2\xe3\x80\x82\xe0\xa2\x91\xe1\xb7\xbf"); } // [B1, V7]3461test { try toUnicodeFail("\xf3\xa0\x84\x9a\xe2\x89\xaf\xea\xa1\xa2\xe3\x80\x82\xe0\xa2\x91\xe1\xb7\xbf"); } // [B1, V7]
3462test { try toAsciiFail("\xf3\xa0\x84\x9a\xe2\x89\xaf\xea\xa1\xa2\xe3\x80\x82\xe0\xa2\x91\xe1\xb7\xbf", false); } // [B1, V7]
3463test { try toAsciiFail("\xf3\xa0\x84\x9a\xe2\x89\xaf\xea\xa1\xa2\xe3\x80\x82\xe0\xa2\x91\xe1\xb7\xbf", true); } // [B1, V7]
1690test { try toUnicodeFail("\xf3\xa0\x84\x9a>\xcc\xb8\xea\xa1\xa2\xe3\x80\x82\xe0\xa2\x91\xe1\xb7\xbf"); } // [B1, V7]3464test { try toUnicodeFail("\xf3\xa0\x84\x9a>\xcc\xb8\xea\xa1\xa2\xe3\x80\x82\xe0\xa2\x91\xe1\xb7\xbf"); } // [B1, V7]
3465test { try toAsciiFail("\xf3\xa0\x84\x9a>\xcc\xb8\xea\xa1\xa2\xe3\x80\x82\xe0\xa2\x91\xe1\xb7\xbf", false); } // [B1, V7]
3466test { try toAsciiFail("\xf3\xa0\x84\x9a>\xcc\xb8\xea\xa1\xa2\xe3\x80\x82\xe0\xa2\x91\xe1\xb7\xbf", true); } // [B1, V7]
1691test { try toUnicodeFail("xn--hdh7783c.xn--9xb680i"); } // [B1, V7]3467test { try toUnicodeFail("xn--hdh7783c.xn--9xb680i"); } // [B1, V7]
3468test { try toAsciiFail("xn--hdh7783c.xn--9xb680i", false); } // [B1, V7]
3469test { try toAsciiFail("xn--hdh7783c.xn--9xb680i", true); } // [B1, V7]
1692test { try toUnicodeFail("\xef\xb7\x83\xf0\xae\x81\xb1\xe0\xad\x8d\xf0\x90\xa8\xbf.\xf3\x90\xa7\xa4\xe1\x82\xb7"); } // [B2, B3, V7]3470test { try toUnicodeFail("\xef\xb7\x83\xf0\xae\x81\xb1\xe0\xad\x8d\xf0\x90\xa8\xbf.\xf3\x90\xa7\xa4\xe1\x82\xb7"); } // [B2, B3, V7]
3471test { try toAsciiFail("\xef\xb7\x83\xf0\xae\x81\xb1\xe0\xad\x8d\xf0\x90\xa8\xbf.\xf3\x90\xa7\xa4\xe1\x82\xb7", false); } // [B2, B3, V7]
3472test { try toAsciiFail("\xef\xb7\x83\xf0\xae\x81\xb1\xe0\xad\x8d\xf0\x90\xa8\xbf.\xf3\x90\xa7\xa4\xe1\x82\xb7", true); } // [B2, B3, V7]
1693test { try toUnicodeFail("\xd9\x83\xd9\x85\xd9\x85\xf0\xae\x81\xb1\xe0\xad\x8d\xf0\x90\xa8\xbf.\xf3\x90\xa7\xa4\xe1\x82\xb7"); } // [B2, B3, V7]3473test { try toUnicodeFail("\xd9\x83\xd9\x85\xd9\x85\xf0\xae\x81\xb1\xe0\xad\x8d\xf0\x90\xa8\xbf.\xf3\x90\xa7\xa4\xe1\x82\xb7"); } // [B2, B3, V7]
3474test { try toAsciiFail("\xd9\x83\xd9\x85\xd9\x85\xf0\xae\x81\xb1\xe0\xad\x8d\xf0\x90\xa8\xbf.\xf3\x90\xa7\xa4\xe1\x82\xb7", false); } // [B2, B3, V7]
3475test { try toAsciiFail("\xd9\x83\xd9\x85\xd9\x85\xf0\xae\x81\xb1\xe0\xad\x8d\xf0\x90\xa8\xbf.\xf3\x90\xa7\xa4\xe1\x82\xb7", true); } // [B2, B3, V7]
1694test { try toUnicodeFail("\xd9\x83\xd9\x85\xd9\x85\xf0\xae\x81\xb1\xe0\xad\x8d\xf0\x90\xa8\xbf.\xf3\x90\xa7\xa4\xe2\xb4\x97"); } // [B2, B3, V7]3476test { try toUnicodeFail("\xd9\x83\xd9\x85\xd9\x85\xf0\xae\x81\xb1\xe0\xad\x8d\xf0\x90\xa8\xbf.\xf3\x90\xa7\xa4\xe2\xb4\x97"); } // [B2, B3, V7]
3477test { try toAsciiFail("\xd9\x83\xd9\x85\xd9\x85\xf0\xae\x81\xb1\xe0\xad\x8d\xf0\x90\xa8\xbf.\xf3\x90\xa7\xa4\xe2\xb4\x97", false); } // [B2, B3, V7]
3478test { try toAsciiFail("\xd9\x83\xd9\x85\xd9\x85\xf0\xae\x81\xb1\xe0\xad\x8d\xf0\x90\xa8\xbf.\xf3\x90\xa7\xa4\xe2\xb4\x97", true); } // [B2, B3, V7]
1695test { try toUnicodeFail("xn--fhbea662czx68a2tju.xn--fljz2846h"); } // [B2, B3, V7]3479test { try toUnicodeFail("xn--fhbea662czx68a2tju.xn--fljz2846h"); } // [B2, B3, V7]
3480test { try toAsciiFail("xn--fhbea662czx68a2tju.xn--fljz2846h", false); } // [B2, B3, V7]
3481test { try toAsciiFail("xn--fhbea662czx68a2tju.xn--fljz2846h", true); } // [B2, B3, V7]
1696test { try toUnicodeFail("\xef\xb7\x83\xf0\xae\x81\xb1\xe0\xad\x8d\xf0\x90\xa8\xbf.\xf3\x90\xa7\xa4\xe2\xb4\x97"); } // [B2, B3, V7]3482test { try toUnicodeFail("\xef\xb7\x83\xf0\xae\x81\xb1\xe0\xad\x8d\xf0\x90\xa8\xbf.\xf3\x90\xa7\xa4\xe2\xb4\x97"); } // [B2, B3, V7]
3483test { try toAsciiFail("\xef\xb7\x83\xf0\xae\x81\xb1\xe0\xad\x8d\xf0\x90\xa8\xbf.\xf3\x90\xa7\xa4\xe2\xb4\x97", false); } // [B2, B3, V7]
3484test { try toAsciiFail("\xef\xb7\x83\xf0\xae\x81\xb1\xe0\xad\x8d\xf0\x90\xa8\xbf.\xf3\x90\xa7\xa4\xe2\xb4\x97", true); } // [B2, B3, V7]
1697test { try toUnicodeFail("xn--fhbea662czx68a2tju.xn--vnd55511o"); } // [B2, B3, V7]3485test { try toUnicodeFail("xn--fhbea662czx68a2tju.xn--vnd55511o"); } // [B2, B3, V7]
3486test { try toAsciiFail("xn--fhbea662czx68a2tju.xn--vnd55511o", false); } // [B2, B3, V7]
3487test { try toAsciiFail("xn--fhbea662czx68a2tju.xn--vnd55511o", true); } // [B2, B3, V7]
1698test { try toUnicodeFail("\xf0\x9e\x80\xa8\xef\xbd\xa1\xe1\xad\x84\xf2\xa1\x9b\xa8\xf0\x9e\x8e\x87"); } // [V6, V7]3488test { try toUnicodeFail("\xf0\x9e\x80\xa8\xef\xbd\xa1\xe1\xad\x84\xf2\xa1\x9b\xa8\xf0\x9e\x8e\x87"); } // [V6, V7]
3489test { try toAsciiFail("\xf0\x9e\x80\xa8\xef\xbd\xa1\xe1\xad\x84\xf2\xa1\x9b\xa8\xf0\x9e\x8e\x87", false); } // [V6, V7]
3490test { try toAsciiFail("\xf0\x9e\x80\xa8\xef\xbd\xa1\xe1\xad\x84\xf2\xa1\x9b\xa8\xf0\x9e\x8e\x87", true); } // [V6, V7]
1699test { try toUnicodeFail("\xf0\x9e\x80\xa8\xe3\x80\x82\xe1\xad\x84\xf2\xa1\x9b\xa8\xf0\x9e\x8e\x87"); } // [V6, V7]3491test { try toUnicodeFail("\xf0\x9e\x80\xa8\xe3\x80\x82\xe1\xad\x84\xf2\xa1\x9b\xa8\xf0\x9e\x8e\x87"); } // [V6, V7]
3492test { try toAsciiFail("\xf0\x9e\x80\xa8\xe3\x80\x82\xe1\xad\x84\xf2\xa1\x9b\xa8\xf0\x9e\x8e\x87", false); } // [V6, V7]
3493test { try toAsciiFail("\xf0\x9e\x80\xa8\xe3\x80\x82\xe1\xad\x84\xf2\xa1\x9b\xa8\xf0\x9e\x8e\x87", true); } // [V6, V7]
1700test { try toUnicodeFail("xn--mi4h.xn--1uf6843smg20c"); } // [V6, V7]3494test { try toUnicodeFail("xn--mi4h.xn--1uf6843smg20c"); } // [V6, V7]
3495test { try toAsciiFail("xn--mi4h.xn--1uf6843smg20c", false); } // [V6, V7]
3496test { try toAsciiFail("xn--mi4h.xn--1uf6843smg20c", true); } // [V6, V7]
1701test { try toUnicodeFail("\xf3\xa0\xa3\xbc\xe2\x80\x8c\xef\xbc\x8e\xf0\x90\xba\xb0\xe2\x80\x8c\xe1\xa1\x9f"); } // [B1, B2, B3, C1, V7]3497test { try toUnicodeFail("\xf3\xa0\xa3\xbc\xe2\x80\x8c\xef\xbc\x8e\xf0\x90\xba\xb0\xe2\x80\x8c\xe1\xa1\x9f"); } // [B1, B2, B3, C1, V7]
3498test { try toAsciiFail("\xf3\xa0\xa3\xbc\xe2\x80\x8c\xef\xbc\x8e\xf0\x90\xba\xb0\xe2\x80\x8c\xe1\xa1\x9f", false); } // [B1, B2, B3, C1, V7]
3499test { try toAsciiFail("\xf3\xa0\xa3\xbc\xe2\x80\x8c\xef\xbc\x8e\xf0\x90\xba\xb0\xe2\x80\x8c\xe1\xa1\x9f", true); } // [B1, B2, B3, V7]
1702test { try toUnicodeFail("\xf3\xa0\xa3\xbc\xe2\x80\x8c.\xf0\x90\xba\xb0\xe2\x80\x8c\xe1\xa1\x9f"); } // [B1, B2, B3, C1, V7]3500test { try toUnicodeFail("\xf3\xa0\xa3\xbc\xe2\x80\x8c.\xf0\x90\xba\xb0\xe2\x80\x8c\xe1\xa1\x9f"); } // [B1, B2, B3, C1, V7]
3501test { try toAsciiFail("\xf3\xa0\xa3\xbc\xe2\x80\x8c.\xf0\x90\xba\xb0\xe2\x80\x8c\xe1\xa1\x9f", false); } // [B1, B2, B3, C1, V7]
3502test { try toAsciiFail("\xf3\xa0\xa3\xbc\xe2\x80\x8c.\xf0\x90\xba\xb0\xe2\x80\x8c\xe1\xa1\x9f", true); } // [B1, B2, B3, V7]
1703test { try toUnicodeFail("xn--q046e.xn--v8e7227j"); } // [B1, B2, B3, V7]3503test { try toUnicodeFail("xn--q046e.xn--v8e7227j"); } // [B1, B2, B3, V7]
3504test { try toAsciiFail("xn--q046e.xn--v8e7227j", false); } // [B1, B2, B3, V7]
3505test { try toAsciiFail("xn--q046e.xn--v8e7227j", true); } // [B1, B2, B3, V7]
1704test { try toUnicodeFail("xn--0ug18531l.xn--v8e340bp21t"); } // [B1, B2, B3, C1, V7]3506test { try toUnicodeFail("xn--0ug18531l.xn--v8e340bp21t"); } // [B1, B2, B3, C1, V7]
3507test { try toAsciiFail("xn--0ug18531l.xn--v8e340bp21t", false); } // [B1, B2, B3, C1, V7]
3508test { try toAsciiFail("xn--0ug18531l.xn--v8e340bp21t", true); } // [B1, B2, B3, C1, V7]
1705test { try toUnicodeFail("\xe1\xa2\x9b\xf3\xa8\x85\x9f\xc3\x9f.\xe1\x8c\xa7"); } // [V7]3509test { try toUnicodeFail("\xe1\xa2\x9b\xf3\xa8\x85\x9f\xc3\x9f.\xe1\x8c\xa7"); } // [V7]
3510test { try toAsciiFail("\xe1\xa2\x9b\xf3\xa8\x85\x9f\xc3\x9f.\xe1\x8c\xa7", false); } // [V7]
3511test { try toAsciiFail("\xe1\xa2\x9b\xf3\xa8\x85\x9f\xc3\x9f.\xe1\x8c\xa7", true); } // [V7]
1706test { try toUnicodeFail("\xe1\xa2\x9b\xf3\xa8\x85\x9fSS.\xe1\x8c\xa7"); } // [V7]3512test { try toUnicodeFail("\xe1\xa2\x9b\xf3\xa8\x85\x9fSS.\xe1\x8c\xa7"); } // [V7]
3513test { try toAsciiFail("\xe1\xa2\x9b\xf3\xa8\x85\x9fSS.\xe1\x8c\xa7", false); } // [V7]
3514test { try toAsciiFail("\xe1\xa2\x9b\xf3\xa8\x85\x9fSS.\xe1\x8c\xa7", true); } // [V7]
1707test { try toUnicodeFail("\xe1\xa2\x9b\xf3\xa8\x85\x9fss.\xe1\x8c\xa7"); } // [V7]3515test { try toUnicodeFail("\xe1\xa2\x9b\xf3\xa8\x85\x9fss.\xe1\x8c\xa7"); } // [V7]
3516test { try toAsciiFail("\xe1\xa2\x9b\xf3\xa8\x85\x9fss.\xe1\x8c\xa7", false); } // [V7]
3517test { try toAsciiFail("\xe1\xa2\x9b\xf3\xa8\x85\x9fss.\xe1\x8c\xa7", true); } // [V7]
1708test { try toUnicodeFail("\xe1\xa2\x9b\xf3\xa8\x85\x9fSs.\xe1\x8c\xa7"); } // [V7]3518test { try toUnicodeFail("\xe1\xa2\x9b\xf3\xa8\x85\x9fSs.\xe1\x8c\xa7"); } // [V7]
3519test { try toAsciiFail("\xe1\xa2\x9b\xf3\xa8\x85\x9fSs.\xe1\x8c\xa7", false); } // [V7]
3520test { try toAsciiFail("\xe1\xa2\x9b\xf3\xa8\x85\x9fSs.\xe1\x8c\xa7", true); } // [V7]
1709test { try toUnicodeFail("xn--ss-7dp66033t.xn--p5d"); } // [V7]3521test { try toUnicodeFail("xn--ss-7dp66033t.xn--p5d"); } // [V7]
3522test { try toAsciiFail("xn--ss-7dp66033t.xn--p5d", false); } // [V7]
3523test { try toAsciiFail("xn--ss-7dp66033t.xn--p5d", true); } // [V7]
1710test { try toUnicodeFail("xn--zca562jc642x.xn--p5d"); } // [V7]3524test { try toUnicodeFail("xn--zca562jc642x.xn--p5d"); } // [V7]
3525test { try toAsciiFail("xn--zca562jc642x.xn--p5d", false); } // [V7]
3526test { try toAsciiFail("xn--zca562jc642x.xn--p5d", true); } // [V7]
1711test { try toUnicodeFail("\xe2\xae\x92\xe2\x80\x8c.\xf1\x92\x9a\x97\xe2\x80\x8c"); } // [C1, V7]3527test { try toUnicodeFail("\xe2\xae\x92\xe2\x80\x8c.\xf1\x92\x9a\x97\xe2\x80\x8c"); } // [C1, V7]
3528test { try toAsciiFail("\xe2\xae\x92\xe2\x80\x8c.\xf1\x92\x9a\x97\xe2\x80\x8c", false); } // [C1, V7]
3529test { try toAsciiFail("\xe2\xae\x92\xe2\x80\x8c.\xf1\x92\x9a\x97\xe2\x80\x8c", true); } // [V7]
1712test { try toUnicodeFail("xn--b9i.xn--5p9y"); } // [V7]3530test { try toUnicodeFail("xn--b9i.xn--5p9y"); } // [V7]
3531test { try toAsciiFail("xn--b9i.xn--5p9y", false); } // [V7]
3532test { try toAsciiFail("xn--b9i.xn--5p9y", true); } // [V7]
1713test { try toUnicodeFail("xn--0ugx66b.xn--0ugz2871c"); } // [C1, V7]3533test { try toUnicodeFail("xn--0ugx66b.xn--0ugz2871c"); } // [C1, V7]
3534test { try toAsciiFail("xn--0ugx66b.xn--0ugz2871c", false); } // [C1, V7]
3535test { try toAsciiFail("xn--0ugx66b.xn--0ugz2871c", true); } // [C1, V7]
1714test { try toUnicodeFail("\xf0\x9e\xa4\x82\xf1\xb9\x9e\x81\xf0\x90\xb9\xaf\xe3\x80\x82\xe1\x82\xbc"); } // [B2, V7]3536test { try toUnicodeFail("\xf0\x9e\xa4\x82\xf1\xb9\x9e\x81\xf0\x90\xb9\xaf\xe3\x80\x82\xe1\x82\xbc"); } // [B2, V7]
3537test { try toAsciiFail("\xf0\x9e\xa4\x82\xf1\xb9\x9e\x81\xf0\x90\xb9\xaf\xe3\x80\x82\xe1\x82\xbc", false); } // [B2, V7]
3538test { try toAsciiFail("\xf0\x9e\xa4\x82\xf1\xb9\x9e\x81\xf0\x90\xb9\xaf\xe3\x80\x82\xe1\x82\xbc", true); } // [B2, V7]
1715test { try toUnicodeFail("\xf0\x9e\xa4\xa4\xf1\xb9\x9e\x81\xf0\x90\xb9\xaf\xe3\x80\x82\xe2\xb4\x9c"); } // [B2, V7]3539test { try toUnicodeFail("\xf0\x9e\xa4\xa4\xf1\xb9\x9e\x81\xf0\x90\xb9\xaf\xe3\x80\x82\xe2\xb4\x9c"); } // [B2, V7]
3540test { try toAsciiFail("\xf0\x9e\xa4\xa4\xf1\xb9\x9e\x81\xf0\x90\xb9\xaf\xe3\x80\x82\xe2\xb4\x9c", false); } // [B2, V7]
3541test { try toAsciiFail("\xf0\x9e\xa4\xa4\xf1\xb9\x9e\x81\xf0\x90\xb9\xaf\xe3\x80\x82\xe2\xb4\x9c", true); } // [B2, V7]
1716test { try toUnicodeFail("xn--no0dr648a51o3b.xn--klj"); } // [B2, V7]3542test { try toUnicodeFail("xn--no0dr648a51o3b.xn--klj"); } // [B2, V7]
3543test { try toAsciiFail("xn--no0dr648a51o3b.xn--klj", false); } // [B2, V7]
3544test { try toAsciiFail("xn--no0dr648a51o3b.xn--klj", true); } // [B2, V7]
1717test { try toUnicodeFail("xn--no0dr648a51o3b.xn--0nd"); } // [B2, V7]3545test { try toUnicodeFail("xn--no0dr648a51o3b.xn--0nd"); } // [B2, V7]
3546test { try toAsciiFail("xn--no0dr648a51o3b.xn--0nd", false); } // [B2, V7]
3547test { try toAsciiFail("xn--no0dr648a51o3b.xn--0nd", true); } // [B2, V7]
1718test { try toUnicodeFail("\xf0\x9e\xa4\x82\xf1\xb9\x9e\x81\xf0\x90\xb9\xaf\xe3\x80\x82\xe2\xb4\x9c"); } // [B2, V7]3548test { try toUnicodeFail("\xf0\x9e\xa4\x82\xf1\xb9\x9e\x81\xf0\x90\xb9\xaf\xe3\x80\x82\xe2\xb4\x9c"); } // [B2, V7]
3549test { try toAsciiFail("\xf0\x9e\xa4\x82\xf1\xb9\x9e\x81\xf0\x90\xb9\xaf\xe3\x80\x82\xe2\xb4\x9c", false); } // [B2, V7]
3550test { try toAsciiFail("\xf0\x9e\xa4\x82\xf1\xb9\x9e\x81\xf0\x90\xb9\xaf\xe3\x80\x82\xe2\xb4\x9c", true); } // [B2, V7]
1719test { try toUnicodeFail("\xf0\x90\xb9\xb5\xe2\xae\xa3\xe2\x80\x8c\xf0\x91\x84\xb0\xef\xbd\xa1\xf1\xb7\xb4\xbf\xef\xb2\xb7"); } // [B1, B5, B6, C1, V7]3551test { try toUnicodeFail("\xf0\x90\xb9\xb5\xe2\xae\xa3\xe2\x80\x8c\xf0\x91\x84\xb0\xef\xbd\xa1\xf1\xb7\xb4\xbf\xef\xb2\xb7"); } // [B1, B5, B6, C1, V7]
3552test { try toAsciiFail("\xf0\x90\xb9\xb5\xe2\xae\xa3\xe2\x80\x8c\xf0\x91\x84\xb0\xef\xbd\xa1\xf1\xb7\xb4\xbf\xef\xb2\xb7", false); } // [B1, B5, B6, C1, V7]
3553test { try toAsciiFail("\xf0\x90\xb9\xb5\xe2\xae\xa3\xe2\x80\x8c\xf0\x91\x84\xb0\xef\xbd\xa1\xf1\xb7\xb4\xbf\xef\xb2\xb7", true); } // [B1, B5, B6, V7]
1720test { try toUnicodeFail("\xf0\x90\xb9\xb5\xe2\xae\xa3\xe2\x80\x8c\xf0\x91\x84\xb0\xe3\x80\x82\xf1\xb7\xb4\xbf\xd8\xb6\xd9\x85"); } // [B1, B5, B6, C1, V7]3554test { try toUnicodeFail("\xf0\x90\xb9\xb5\xe2\xae\xa3\xe2\x80\x8c\xf0\x91\x84\xb0\xe3\x80\x82\xf1\xb7\xb4\xbf\xd8\xb6\xd9\x85"); } // [B1, B5, B6, C1, V7]
3555test { try toAsciiFail("\xf0\x90\xb9\xb5\xe2\xae\xa3\xe2\x80\x8c\xf0\x91\x84\xb0\xe3\x80\x82\xf1\xb7\xb4\xbf\xd8\xb6\xd9\x85", false); } // [B1, B5, B6, C1, V7]
3556test { try toAsciiFail("\xf0\x90\xb9\xb5\xe2\xae\xa3\xe2\x80\x8c\xf0\x91\x84\xb0\xe3\x80\x82\xf1\xb7\xb4\xbf\xd8\xb6\xd9\x85", true); } // [B1, B5, B6, V7]
1721test { try toUnicodeFail("xn--s9i5458e7yb.xn--1gb4a66004i"); } // [B1, B5, B6, V7]3557test { try toUnicodeFail("xn--s9i5458e7yb.xn--1gb4a66004i"); } // [B1, B5, B6, V7]
3558test { try toAsciiFail("xn--s9i5458e7yb.xn--1gb4a66004i", false); } // [B1, B5, B6, V7]
3559test { try toAsciiFail("xn--s9i5458e7yb.xn--1gb4a66004i", true); } // [B1, B5, B6, V7]
1722test { try toUnicodeFail("xn--0ug586bcj8p7jc.xn--1gb4a66004i"); } // [B1, B5, B6, C1, V7]3560test { try toUnicodeFail("xn--0ug586bcj8p7jc.xn--1gb4a66004i"); } // [B1, B5, B6, C1, V7]
3561test { try toAsciiFail("xn--0ug586bcj8p7jc.xn--1gb4a66004i", false); } // [B1, B5, B6, C1, V7]
3562test { try toAsciiFail("xn--0ug586bcj8p7jc.xn--1gb4a66004i", true); } // [B1, B5, B6, C1, V7]
1723test { try toUnicodeFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x87\xc3\x9f\xf0\x9e\xa4\xb5\xe0\xb1\x8d"); } // [B5, B6]3563test { try toUnicodeFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x87\xc3\x9f\xf0\x9e\xa4\xb5\xe0\xb1\x8d"); } // [B5, B6]
3564test { try toAsciiFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x87\xc3\x9f\xf0\x9e\xa4\xb5\xe0\xb1\x8d", false); } // [B5, B6]
3565test { try toAsciiFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x87\xc3\x9f\xf0\x9e\xa4\xb5\xe0\xb1\x8d", true); } // [B5, B6]
1724test { try toUnicodeFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99\xc3\x9f\xf0\x9e\xa4\xb5\xe0\xb1\x8d"); } // [B5, B6]3566test { try toUnicodeFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99\xc3\x9f\xf0\x9e\xa4\xb5\xe0\xb1\x8d"); } // [B5, B6]
3567test { try toAsciiFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99\xc3\x9f\xf0\x9e\xa4\xb5\xe0\xb1\x8d", false); } // [B5, B6]
3568test { try toAsciiFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99\xc3\x9f\xf0\x9e\xa4\xb5\xe0\xb1\x8d", true); } // [B5, B6]
1725test { try toUnicodeFail("\xe2\xb4\x92\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99\xc3\x9f\xf0\x9e\xa4\xb5\xe0\xb1\x8d"); } // [B5, B6]3569test { try toUnicodeFail("\xe2\xb4\x92\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99\xc3\x9f\xf0\x9e\xa4\xb5\xe0\xb1\x8d"); } // [B5, B6]
3570test { try toAsciiFail("\xe2\xb4\x92\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99\xc3\x9f\xf0\x9e\xa4\xb5\xe0\xb1\x8d", false); } // [B5, B6]
3571test { try toAsciiFail("\xe2\xb4\x92\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99\xc3\x9f\xf0\x9e\xa4\xb5\xe0\xb1\x8d", true); } // [B5, B6]
1726test { try toUnicodeFail("\xe2\xb4\x92\xe3\x80\x82\xe3\x83\x87\xc3\x9f\xf0\x9e\xa4\xb5\xe0\xb1\x8d"); } // [B5, B6]3572test { try toUnicodeFail("\xe2\xb4\x92\xe3\x80\x82\xe3\x83\x87\xc3\x9f\xf0\x9e\xa4\xb5\xe0\xb1\x8d"); } // [B5, B6]
3573test { try toAsciiFail("\xe2\xb4\x92\xe3\x80\x82\xe3\x83\x87\xc3\x9f\xf0\x9e\xa4\xb5\xe0\xb1\x8d", false); } // [B5, B6]
3574test { try toAsciiFail("\xe2\xb4\x92\xe3\x80\x82\xe3\x83\x87\xc3\x9f\xf0\x9e\xa4\xb5\xe0\xb1\x8d", true); } // [B5, B6]
1727test { try toUnicodeFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x87SS\xf0\x9e\xa4\x93\xe0\xb1\x8d"); } // [B5, B6]3575test { try toUnicodeFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x87SS\xf0\x9e\xa4\x93\xe0\xb1\x8d"); } // [B5, B6]
3576test { try toAsciiFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x87SS\xf0\x9e\xa4\x93\xe0\xb1\x8d", false); } // [B5, B6]
3577test { try toAsciiFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x87SS\xf0\x9e\xa4\x93\xe0\xb1\x8d", true); } // [B5, B6]
1728test { try toUnicodeFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99SS\xf0\x9e\xa4\x93\xe0\xb1\x8d"); } // [B5, B6]3578test { try toUnicodeFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99SS\xf0\x9e\xa4\x93\xe0\xb1\x8d"); } // [B5, B6]
3579test { try toAsciiFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99SS\xf0\x9e\xa4\x93\xe0\xb1\x8d", false); } // [B5, B6]
3580test { try toAsciiFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99SS\xf0\x9e\xa4\x93\xe0\xb1\x8d", true); } // [B5, B6]
1729test { try toUnicodeFail("\xe2\xb4\x92\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99ss\xf0\x9e\xa4\xb5\xe0\xb1\x8d"); } // [B5, B6]3581test { try toUnicodeFail("\xe2\xb4\x92\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99ss\xf0\x9e\xa4\xb5\xe0\xb1\x8d"); } // [B5, B6]
3582test { try toAsciiFail("\xe2\xb4\x92\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99ss\xf0\x9e\xa4\xb5\xe0\xb1\x8d", false); } // [B5, B6]
3583test { try toAsciiFail("\xe2\xb4\x92\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99ss\xf0\x9e\xa4\xb5\xe0\xb1\x8d", true); } // [B5, B6]
1730test { try toUnicodeFail("\xe2\xb4\x92\xe3\x80\x82\xe3\x83\x87ss\xf0\x9e\xa4\xb5\xe0\xb1\x8d"); } // [B5, B6]3584test { try toUnicodeFail("\xe2\xb4\x92\xe3\x80\x82\xe3\x83\x87ss\xf0\x9e\xa4\xb5\xe0\xb1\x8d"); } // [B5, B6]
3585test { try toAsciiFail("\xe2\xb4\x92\xe3\x80\x82\xe3\x83\x87ss\xf0\x9e\xa4\xb5\xe0\xb1\x8d", false); } // [B5, B6]
3586test { try toAsciiFail("\xe2\xb4\x92\xe3\x80\x82\xe3\x83\x87ss\xf0\x9e\xa4\xb5\xe0\xb1\x8d", true); } // [B5, B6]
1731test { try toUnicodeFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x87Ss\xf0\x9e\xa4\xb5\xe0\xb1\x8d"); } // [B5, B6]3587test { try toUnicodeFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x87Ss\xf0\x9e\xa4\xb5\xe0\xb1\x8d"); } // [B5, B6]
3588test { try toAsciiFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x87Ss\xf0\x9e\xa4\xb5\xe0\xb1\x8d", false); } // [B5, B6]
3589test { try toAsciiFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x87Ss\xf0\x9e\xa4\xb5\xe0\xb1\x8d", true); } // [B5, B6]
1732test { try toUnicodeFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99Ss\xf0\x9e\xa4\xb5\xe0\xb1\x8d"); } // [B5, B6]3590test { try toUnicodeFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99Ss\xf0\x9e\xa4\xb5\xe0\xb1\x8d"); } // [B5, B6]
3591test { try toAsciiFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99Ss\xf0\x9e\xa4\xb5\xe0\xb1\x8d", false); } // [B5, B6]
3592test { try toAsciiFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99Ss\xf0\x9e\xa4\xb5\xe0\xb1\x8d", true); } // [B5, B6]
1733test { try toUnicodeFail("xn--9kj.xn--ss-9nh3648ahh20b"); } // [B5, B6]3593test { try toUnicodeFail("xn--9kj.xn--ss-9nh3648ahh20b"); } // [B5, B6]
3594test { try toAsciiFail("xn--9kj.xn--ss-9nh3648ahh20b", false); } // [B5, B6]
3595test { try toAsciiFail("xn--9kj.xn--ss-9nh3648ahh20b", true); } // [B5, B6]
1734test { try toUnicodeFail("xn--9kj.xn--zca669cmr3a0f28a"); } // [B5, B6]3596test { try toUnicodeFail("xn--9kj.xn--zca669cmr3a0f28a"); } // [B5, B6]
3597test { try toAsciiFail("xn--9kj.xn--zca669cmr3a0f28a", false); } // [B5, B6]
3598test { try toAsciiFail("xn--9kj.xn--zca669cmr3a0f28a", true); } // [B5, B6]
1735test { try toUnicodeFail("xn--qnd.xn--ss-9nh3648ahh20b"); } // [B5, B6, V7]3599test { try toUnicodeFail("xn--qnd.xn--ss-9nh3648ahh20b"); } // [B5, B6, V7]
3600test { try toAsciiFail("xn--qnd.xn--ss-9nh3648ahh20b", false); } // [B5, B6, V7]
3601test { try toAsciiFail("xn--qnd.xn--ss-9nh3648ahh20b", true); } // [B5, B6, V7]
1736test { try toUnicodeFail("xn--qnd.xn--zca669cmr3a0f28a"); } // [B5, B6, V7]3602test { try toUnicodeFail("xn--qnd.xn--zca669cmr3a0f28a"); } // [B5, B6, V7]
3603test { try toAsciiFail("xn--qnd.xn--zca669cmr3a0f28a", false); } // [B5, B6, V7]
3604test { try toAsciiFail("xn--qnd.xn--zca669cmr3a0f28a", true); } // [B5, B6, V7]
1737test { try toUnicodeFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x87SS\xf0\x9e\xa4\xb5\xe0\xb1\x8d"); } // [B5, B6]3605test { try toUnicodeFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x87SS\xf0\x9e\xa4\xb5\xe0\xb1\x8d"); } // [B5, B6]
3606test { try toAsciiFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x87SS\xf0\x9e\xa4\xb5\xe0\xb1\x8d", false); } // [B5, B6]
3607test { try toAsciiFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x87SS\xf0\x9e\xa4\xb5\xe0\xb1\x8d", true); } // [B5, B6]
1738test { try toUnicodeFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99SS\xf0\x9e\xa4\xb5\xe0\xb1\x8d"); } // [B5, B6]3608test { try toUnicodeFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99SS\xf0\x9e\xa4\xb5\xe0\xb1\x8d"); } // [B5, B6]
3609test { try toAsciiFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99SS\xf0\x9e\xa4\xb5\xe0\xb1\x8d", false); } // [B5, B6]
3610test { try toAsciiFail("\xe1\x82\xb2\xe3\x80\x82\xe3\x83\x86\xe3\x82\x99SS\xf0\x9e\xa4\xb5\xe0\xb1\x8d", true); } // [B5, B6]
1739test { try toUnicodeFail("\xf0\x91\x81\xbf\xe0\xb5\x8d\xef\xbc\x8e\xef\xbc\x97-\xdf\x92"); } // [B1, V6]3611test { try toUnicodeFail("\xf0\x91\x81\xbf\xe0\xb5\x8d\xef\xbc\x8e\xef\xbc\x97-\xdf\x92"); } // [B1, V6]
3612test { try toAsciiFail("\xf0\x91\x81\xbf\xe0\xb5\x8d\xef\xbc\x8e\xef\xbc\x97-\xdf\x92", false); } // [B1, V6]
3613test { try toAsciiFail("\xf0\x91\x81\xbf\xe0\xb5\x8d\xef\xbc\x8e\xef\xbc\x97-\xdf\x92", true); } // [B1, V6]
1740test { try toUnicodeFail("\xf0\x91\x81\xbf\xe0\xb5\x8d.7-\xdf\x92"); } // [B1, V6]3614test { try toUnicodeFail("\xf0\x91\x81\xbf\xe0\xb5\x8d.7-\xdf\x92"); } // [B1, V6]
3615test { try toAsciiFail("\xf0\x91\x81\xbf\xe0\xb5\x8d.7-\xdf\x92", false); } // [B1, V6]
3616test { try toAsciiFail("\xf0\x91\x81\xbf\xe0\xb5\x8d.7-\xdf\x92", true); } // [B1, V6]
1741test { try toUnicodeFail("xn--wxc1283k.xn--7--yue"); } // [B1, V6]3617test { try toUnicodeFail("xn--wxc1283k.xn--7--yue"); } // [B1, V6]
3618test { try toAsciiFail("xn--wxc1283k.xn--7--yue", false); } // [B1, V6]
3619test { try toAsciiFail("xn--wxc1283k.xn--7--yue", true); } // [B1, V6]
1742test { try toUnicodeFail("\xe2\x89\xaf\xf0\x91\x9c\xab\xf3\xa0\xad\x87.\xe1\x9c\xb4\xf1\x92\x9e\xa4\xf0\x91\x8d\xac\xe1\xa2\xa7"); } // [V6, V7]3620test { try toUnicodeFail("\xe2\x89\xaf\xf0\x91\x9c\xab\xf3\xa0\xad\x87.\xe1\x9c\xb4\xf1\x92\x9e\xa4\xf0\x91\x8d\xac\xe1\xa2\xa7"); } // [V6, V7]
3621test { try toAsciiFail("\xe2\x89\xaf\xf0\x91\x9c\xab\xf3\xa0\xad\x87.\xe1\x9c\xb4\xf1\x92\x9e\xa4\xf0\x91\x8d\xac\xe1\xa2\xa7", false); } // [V6, V7]
3622test { try toAsciiFail("\xe2\x89\xaf\xf0\x91\x9c\xab\xf3\xa0\xad\x87.\xe1\x9c\xb4\xf1\x92\x9e\xa4\xf0\x91\x8d\xac\xe1\xa2\xa7", true); } // [V6, V7]
1743test { try toUnicodeFail(">\xcc\xb8\xf0\x91\x9c\xab\xf3\xa0\xad\x87.\xe1\x9c\xb4\xf1\x92\x9e\xa4\xf0\x91\x8d\xac\xe1\xa2\xa7"); } // [V6, V7]3623test { try toUnicodeFail(">\xcc\xb8\xf0\x91\x9c\xab\xf3\xa0\xad\x87.\xe1\x9c\xb4\xf1\x92\x9e\xa4\xf0\x91\x8d\xac\xe1\xa2\xa7"); } // [V6, V7]
3624test { try toAsciiFail(">\xcc\xb8\xf0\x91\x9c\xab\xf3\xa0\xad\x87.\xe1\x9c\xb4\xf1\x92\x9e\xa4\xf0\x91\x8d\xac\xe1\xa2\xa7", false); } // [V6, V7]
3625test { try toAsciiFail(">\xcc\xb8\xf0\x91\x9c\xab\xf3\xa0\xad\x87.\xe1\x9c\xb4\xf1\x92\x9e\xa4\xf0\x91\x8d\xac\xe1\xa2\xa7", true); } // [V6, V7]
1744test { try toUnicodeFail("xn--hdhx157g68o0g.xn--c0e65eu616c34o7a"); } // [V6, V7]3626test { try toUnicodeFail("xn--hdhx157g68o0g.xn--c0e65eu616c34o7a"); } // [V6, V7]
3627test { try toAsciiFail("xn--hdhx157g68o0g.xn--c0e65eu616c34o7a", false); } // [V6, V7]
3628test { try toAsciiFail("xn--hdhx157g68o0g.xn--c0e65eu616c34o7a", true); } // [V6, V7]
1745test { try toUnicodeFail("\xe1\xb7\x9b\xf2\x8e\x90\x99\xe1\x82\xb7\xec\x8f\x94\xe3\x80\x82\xde\x81"); } // [B1, V6, V7]3629test { try toUnicodeFail("\xe1\xb7\x9b\xf2\x8e\x90\x99\xe1\x82\xb7\xec\x8f\x94\xe3\x80\x82\xde\x81"); } // [B1, V6, V7]
3630test { try toAsciiFail("\xe1\xb7\x9b\xf2\x8e\x90\x99\xe1\x82\xb7\xec\x8f\x94\xe3\x80\x82\xde\x81", false); } // [B1, V6, V7]
3631test { try toAsciiFail("\xe1\xb7\x9b\xf2\x8e\x90\x99\xe1\x82\xb7\xec\x8f\x94\xe3\x80\x82\xde\x81", true); } // [B1, V6, V7]
1746test { try toUnicodeFail("\xe1\xb7\x9b\xf2\x8e\x90\x99\xe1\x82\xb7\xe1\x84\x8a\xe1\x85\xa8\xe1\x86\xbf\xe3\x80\x82\xde\x81"); } // [B1, V6, V7]3632test { try toUnicodeFail("\xe1\xb7\x9b\xf2\x8e\x90\x99\xe1\x82\xb7\xe1\x84\x8a\xe1\x85\xa8\xe1\x86\xbf\xe3\x80\x82\xde\x81"); } // [B1, V6, V7]
3633test { try toAsciiFail("\xe1\xb7\x9b\xf2\x8e\x90\x99\xe1\x82\xb7\xe1\x84\x8a\xe1\x85\xa8\xe1\x86\xbf\xe3\x80\x82\xde\x81", false); } // [B1, V6, V7]
3634test { try toAsciiFail("\xe1\xb7\x9b\xf2\x8e\x90\x99\xe1\x82\xb7\xe1\x84\x8a\xe1\x85\xa8\xe1\x86\xbf\xe3\x80\x82\xde\x81", true); } // [B1, V6, V7]
1747test { try toUnicodeFail("\xe1\xb7\x9b\xf2\x8e\x90\x99\xe2\xb4\x97\xe1\x84\x8a\xe1\x85\xa8\xe1\x86\xbf\xe3\x80\x82\xde\x81"); } // [B1, V6, V7]3635test { try toUnicodeFail("\xe1\xb7\x9b\xf2\x8e\x90\x99\xe2\xb4\x97\xe1\x84\x8a\xe1\x85\xa8\xe1\x86\xbf\xe3\x80\x82\xde\x81"); } // [B1, V6, V7]
3636test { try toAsciiFail("\xe1\xb7\x9b\xf2\x8e\x90\x99\xe2\xb4\x97\xe1\x84\x8a\xe1\x85\xa8\xe1\x86\xbf\xe3\x80\x82\xde\x81", false); } // [B1, V6, V7]
3637test { try toAsciiFail("\xe1\xb7\x9b\xf2\x8e\x90\x99\xe2\xb4\x97\xe1\x84\x8a\xe1\x85\xa8\xe1\x86\xbf\xe3\x80\x82\xde\x81", true); } // [B1, V6, V7]
1748test { try toUnicodeFail("\xe1\xb7\x9b\xf2\x8e\x90\x99\xe2\xb4\x97\xec\x8f\x94\xe3\x80\x82\xde\x81"); } // [B1, V6, V7]3638test { try toUnicodeFail("\xe1\xb7\x9b\xf2\x8e\x90\x99\xe2\xb4\x97\xec\x8f\x94\xe3\x80\x82\xde\x81"); } // [B1, V6, V7]
3639test { try toAsciiFail("\xe1\xb7\x9b\xf2\x8e\x90\x99\xe2\xb4\x97\xec\x8f\x94\xe3\x80\x82\xde\x81", false); } // [B1, V6, V7]
3640test { try toAsciiFail("\xe1\xb7\x9b\xf2\x8e\x90\x99\xe2\xb4\x97\xec\x8f\x94\xe3\x80\x82\xde\x81", true); } // [B1, V6, V7]
1749test { try toUnicodeFail("xn--zegy26dw47iy6w2f.xn--iqb"); } // [B1, V6, V7]3641test { try toUnicodeFail("xn--zegy26dw47iy6w2f.xn--iqb"); } // [B1, V6, V7]
3642test { try toAsciiFail("xn--zegy26dw47iy6w2f.xn--iqb", false); } // [B1, V6, V7]
3643test { try toAsciiFail("xn--zegy26dw47iy6w2f.xn--iqb", true); } // [B1, V6, V7]
1750test { try toUnicodeFail("xn--vnd148d733ky6n9e.xn--iqb"); } // [B1, V6, V7]3644test { try toUnicodeFail("xn--vnd148d733ky6n9e.xn--iqb"); } // [B1, V6, V7]
3645test { try toAsciiFail("xn--vnd148d733ky6n9e.xn--iqb", false); } // [B1, V6, V7]
3646test { try toAsciiFail("xn--vnd148d733ky6n9e.xn--iqb", true); } // [B1, V6, V7]
1751test { try toUnicodePass("\xc3\x9f\xef\xbd\xa1\xf0\x90\x8b\xb3\xe1\x82\xac\xe0\xbe\xb8", "\xc3\x9f.\xf0\x90\x8b\xb3\xe2\xb4\x8c\xe0\xbe\xb8"); }3647test { try toUnicodePass("\xc3\x9f\xef\xbd\xa1\xf0\x90\x8b\xb3\xe1\x82\xac\xe0\xbe\xb8", "\xc3\x9f.\xf0\x90\x8b\xb3\xe2\xb4\x8c\xe0\xbe\xb8"); }
1752test { try toAsciiPass("\xc3\x9f\xef\xbd\xa1\xf0\x90\x8b\xb3\xe1\x82\xac\xe0\xbe\xb8", "xn--zca.xn--lgd921mvv0m", false); }3648test { try toAsciiPass("\xc3\x9f\xef\xbd\xa1\xf0\x90\x8b\xb3\xe1\x82\xac\xe0\xbe\xb8", "xn--zca.xn--lgd921mvv0m", false); }
1753test { try toAsciiPass("\xc3\x9f\xef\xbd\xa1\xf0\x90\x8b\xb3\xe1\x82\xac\xe0\xbe\xb8", "ss.xn--lgd921mvv0m", true); }3649test { try toAsciiPass("\xc3\x9f\xef\xbd\xa1\xf0\x90\x8b\xb3\xe1\x82\xac\xe0\xbe\xb8", "ss.xn--lgd921mvv0m", true); }
...@@ -1797,244 +3693,722 @@ test { try toUnicodePass("Ss\xef\xbd\xa1\xf0\x90\x8b\xb3\xe1\x82\xac\xe0\xbe\xb8...@@ -1797,244 +3693,722 @@ test { try toUnicodePass("Ss\xef\xbd\xa1\xf0\x90\x8b\xb3\xe1\x82\xac\xe0\xbe\xb8
1797test { try toAsciiPass("Ss\xef\xbd\xa1\xf0\x90\x8b\xb3\xe1\x82\xac\xe0\xbe\xb8", "ss.xn--lgd921mvv0m", false); }3693test { try toAsciiPass("Ss\xef\xbd\xa1\xf0\x90\x8b\xb3\xe1\x82\xac\xe0\xbe\xb8", "ss.xn--lgd921mvv0m", false); }
1798test { try toAsciiPass("Ss\xef\xbd\xa1\xf0\x90\x8b\xb3\xe1\x82\xac\xe0\xbe\xb8", "ss.xn--lgd921mvv0m", true); }3694test { try toAsciiPass("Ss\xef\xbd\xa1\xf0\x90\x8b\xb3\xe1\x82\xac\xe0\xbe\xb8", "ss.xn--lgd921mvv0m", true); }
1799test { try toUnicodeFail("ss.xn--lgd10cu829c"); } // [V7]3695test { try toUnicodeFail("ss.xn--lgd10cu829c"); } // [V7]
3696test { try toAsciiFail("ss.xn--lgd10cu829c", false); } // [V7]
3697test { try toAsciiFail("ss.xn--lgd10cu829c", true); } // [V7]
1800test { try toUnicodeFail("xn--zca.xn--lgd10cu829c"); } // [V7]3698test { try toUnicodeFail("xn--zca.xn--lgd10cu829c"); } // [V7]
3699test { try toAsciiFail("xn--zca.xn--lgd10cu829c", false); } // [V7]
3700test { try toAsciiFail("xn--zca.xn--lgd10cu829c", true); } // [V7]
1801test { try toUnicodeFail("-\xda\x9e\xf0\x90\xb6\xa1.\xe2\x80\x8c\xe2\xbe\x9d\xe0\xa7\x8d"); } // [B1, C1, V3, V7]3701test { try toUnicodeFail("-\xda\x9e\xf0\x90\xb6\xa1.\xe2\x80\x8c\xe2\xbe\x9d\xe0\xa7\x8d"); } // [B1, C1, V3, V7]
3702test { try toAsciiFail("-\xda\x9e\xf0\x90\xb6\xa1.\xe2\x80\x8c\xe2\xbe\x9d\xe0\xa7\x8d", false); } // [B1, C1, V3, V7]
3703test { try toAsciiFail("-\xda\x9e\xf0\x90\xb6\xa1.\xe2\x80\x8c\xe2\xbe\x9d\xe0\xa7\x8d", true); } // [B1, V3, V7]
1802test { try toUnicodeFail("-\xda\x9e\xf0\x90\xb6\xa1.\xe2\x80\x8c\xe8\xba\xab\xe0\xa7\x8d"); } // [B1, C1, V3, V7]3704test { try toUnicodeFail("-\xda\x9e\xf0\x90\xb6\xa1.\xe2\x80\x8c\xe8\xba\xab\xe0\xa7\x8d"); } // [B1, C1, V3, V7]
3705test { try toAsciiFail("-\xda\x9e\xf0\x90\xb6\xa1.\xe2\x80\x8c\xe8\xba\xab\xe0\xa7\x8d", false); } // [B1, C1, V3, V7]
3706test { try toAsciiFail("-\xda\x9e\xf0\x90\xb6\xa1.\xe2\x80\x8c\xe8\xba\xab\xe0\xa7\x8d", true); } // [B1, V3, V7]
1803test { try toUnicodeFail("xn----stc7013r.xn--b7b1419d"); } // [B1, V3, V7]3707test { try toUnicodeFail("xn----stc7013r.xn--b7b1419d"); } // [B1, V3, V7]
3708test { try toAsciiFail("xn----stc7013r.xn--b7b1419d", false); } // [B1, V3, V7]
3709test { try toAsciiFail("xn----stc7013r.xn--b7b1419d", true); } // [B1, V3, V7]
1804test { try toUnicodeFail("xn----stc7013r.xn--b7b305imj2f"); } // [B1, C1, V3, V7]3710test { try toUnicodeFail("xn----stc7013r.xn--b7b305imj2f"); } // [B1, C1, V3, V7]
3711test { try toAsciiFail("xn----stc7013r.xn--b7b305imj2f", false); } // [B1, C1, V3, V7]
3712test { try toAsciiFail("xn----stc7013r.xn--b7b305imj2f", true); } // [B1, C1, V3, V7]
1805test { try toUnicodeFail("\xf0\x9f\x98\xae\xdd\xa4\xf0\x9e\x80\x96\xf0\x91\x88\xb5.\xf0\x9f\x92\x85\xe2\x80\x8d"); } // [B1, C2]3713test { try toUnicodeFail("\xf0\x9f\x98\xae\xdd\xa4\xf0\x9e\x80\x96\xf0\x91\x88\xb5.\xf0\x9f\x92\x85\xe2\x80\x8d"); } // [B1, C2]
3714test { try toAsciiFail("\xf0\x9f\x98\xae\xdd\xa4\xf0\x9e\x80\x96\xf0\x91\x88\xb5.\xf0\x9f\x92\x85\xe2\x80\x8d", false); } // [B1, C2]
3715test { try toAsciiFail("\xf0\x9f\x98\xae\xdd\xa4\xf0\x9e\x80\x96\xf0\x91\x88\xb5.\xf0\x9f\x92\x85\xe2\x80\x8d", true); } // [B1]
1806test { try toUnicodeFail("\xf0\x9f\x98\xae\xdd\xa4\xf0\x91\x88\xb5\xf0\x9e\x80\x96.\xf0\x9f\x92\x85\xe2\x80\x8d"); } // [B1, C2]3716test { try toUnicodeFail("\xf0\x9f\x98\xae\xdd\xa4\xf0\x91\x88\xb5\xf0\x9e\x80\x96.\xf0\x9f\x92\x85\xe2\x80\x8d"); } // [B1, C2]
3717test { try toAsciiFail("\xf0\x9f\x98\xae\xdd\xa4\xf0\x91\x88\xb5\xf0\x9e\x80\x96.\xf0\x9f\x92\x85\xe2\x80\x8d", false); } // [B1, C2]
3718test { try toAsciiFail("\xf0\x9f\x98\xae\xdd\xa4\xf0\x91\x88\xb5\xf0\x9e\x80\x96.\xf0\x9f\x92\x85\xe2\x80\x8d", true); } // [B1]
1807test { try toUnicodeFail("xn--opb4277kuc7elqsa.xn--kr8h"); } // [B1]3719test { try toUnicodeFail("xn--opb4277kuc7elqsa.xn--kr8h"); } // [B1]
3720test { try toAsciiFail("xn--opb4277kuc7elqsa.xn--kr8h", false); } // [B1]
3721test { try toAsciiFail("xn--opb4277kuc7elqsa.xn--kr8h", true); } // [B1]
1808test { try toUnicodeFail("xn--opb4277kuc7elqsa.xn--1ug5265p"); } // [B1, C2]3722test { try toUnicodeFail("xn--opb4277kuc7elqsa.xn--1ug5265p"); } // [B1, C2]
3723test { try toAsciiFail("xn--opb4277kuc7elqsa.xn--1ug5265p", false); } // [B1, C2]
3724test { try toAsciiFail("xn--opb4277kuc7elqsa.xn--1ug5265p", true); } // [B1, C2]
1809test { try toUnicodeFail("\xe0\xa3\xb2\xe2\x80\x8d\xea\x99\xb3\xdc\x92.\xe1\xa2\x8f\xe2\x80\x8c\xf3\xa0\x8d\x84"); } // [B1, B6, C1, C2, V6, V7]3725test { try toUnicodeFail("\xe0\xa3\xb2\xe2\x80\x8d\xea\x99\xb3\xdc\x92.\xe1\xa2\x8f\xe2\x80\x8c\xf3\xa0\x8d\x84"); } // [B1, B6, C1, C2, V6, V7]
3726test { try toAsciiFail("\xe0\xa3\xb2\xe2\x80\x8d\xea\x99\xb3\xdc\x92.\xe1\xa2\x8f\xe2\x80\x8c\xf3\xa0\x8d\x84", false); } // [B1, B6, C1, C2, V6, V7]
3727test { try toAsciiFail("\xe0\xa3\xb2\xe2\x80\x8d\xea\x99\xb3\xdc\x92.\xe1\xa2\x8f\xe2\x80\x8c\xf3\xa0\x8d\x84", true); } // [B1, B6, V6, V7]
1810test { try toUnicodeFail("xn--cnb37gdy00a.xn--89e02253p"); } // [B1, B6, V6, V7]3728test { try toUnicodeFail("xn--cnb37gdy00a.xn--89e02253p"); } // [B1, B6, V6, V7]
3729test { try toAsciiFail("xn--cnb37gdy00a.xn--89e02253p", false); } // [B1, B6, V6, V7]
3730test { try toAsciiFail("xn--cnb37gdy00a.xn--89e02253p", true); } // [B1, B6, V6, V7]
1811test { try toUnicodeFail("xn--cnb37g904be26j.xn--89e849ax9363a"); } // [B1, B6, C1, C2, V6, V7]3731test { try toUnicodeFail("xn--cnb37g904be26j.xn--89e849ax9363a"); } // [B1, B6, C1, C2, V6, V7]
3732test { try toAsciiFail("xn--cnb37g904be26j.xn--89e849ax9363a", false); } // [B1, B6, C1, C2, V6, V7]
3733test { try toAsciiFail("xn--cnb37g904be26j.xn--89e849ax9363a", true); } // [B1, B6, C1, C2, V6, V7]
1812test { try toUnicodeFail("\xe1\x82\xb1\xef\xbc\x8e\xda\xbf\xf0\x9e\xaf\x93\xe1\xa0\xb2"); } // [B2, B3, V7]3734test { try toUnicodeFail("\xe1\x82\xb1\xef\xbc\x8e\xda\xbf\xf0\x9e\xaf\x93\xe1\xa0\xb2"); } // [B2, B3, V7]
3735test { try toAsciiFail("\xe1\x82\xb1\xef\xbc\x8e\xda\xbf\xf0\x9e\xaf\x93\xe1\xa0\xb2", false); } // [B2, B3, V7]
3736test { try toAsciiFail("\xe1\x82\xb1\xef\xbc\x8e\xda\xbf\xf0\x9e\xaf\x93\xe1\xa0\xb2", true); } // [B2, B3, V7]
1813test { try toUnicodeFail("\xe1\x82\xb1.\xda\xbf\xf0\x9e\xaf\x93\xe1\xa0\xb2"); } // [B2, B3, V7]3737test { try toUnicodeFail("\xe1\x82\xb1.\xda\xbf\xf0\x9e\xaf\x93\xe1\xa0\xb2"); } // [B2, B3, V7]
3738test { try toAsciiFail("\xe1\x82\xb1.\xda\xbf\xf0\x9e\xaf\x93\xe1\xa0\xb2", false); } // [B2, B3, V7]
3739test { try toAsciiFail("\xe1\x82\xb1.\xda\xbf\xf0\x9e\xaf\x93\xe1\xa0\xb2", true); } // [B2, B3, V7]
1814test { try toUnicodeFail("\xe2\xb4\x91.\xda\xbf\xf0\x9e\xaf\x93\xe1\xa0\xb2"); } // [B2, B3, V7]3740test { try toUnicodeFail("\xe2\xb4\x91.\xda\xbf\xf0\x9e\xaf\x93\xe1\xa0\xb2"); } // [B2, B3, V7]
3741test { try toAsciiFail("\xe2\xb4\x91.\xda\xbf\xf0\x9e\xaf\x93\xe1\xa0\xb2", false); } // [B2, B3, V7]
3742test { try toAsciiFail("\xe2\xb4\x91.\xda\xbf\xf0\x9e\xaf\x93\xe1\xa0\xb2", true); } // [B2, B3, V7]
1815test { try toUnicodeFail("xn--8kj.xn--ykb840gd555a"); } // [B2, B3, V7]3743test { try toUnicodeFail("xn--8kj.xn--ykb840gd555a"); } // [B2, B3, V7]
3744test { try toAsciiFail("xn--8kj.xn--ykb840gd555a", false); } // [B2, B3, V7]
3745test { try toAsciiFail("xn--8kj.xn--ykb840gd555a", true); } // [B2, B3, V7]
1816test { try toUnicodeFail("\xe2\xb4\x91\xef\xbc\x8e\xda\xbf\xf0\x9e\xaf\x93\xe1\xa0\xb2"); } // [B2, B3, V7]3746test { try toUnicodeFail("\xe2\xb4\x91\xef\xbc\x8e\xda\xbf\xf0\x9e\xaf\x93\xe1\xa0\xb2"); } // [B2, B3, V7]
3747test { try toAsciiFail("\xe2\xb4\x91\xef\xbc\x8e\xda\xbf\xf0\x9e\xaf\x93\xe1\xa0\xb2", false); } // [B2, B3, V7]
3748test { try toAsciiFail("\xe2\xb4\x91\xef\xbc\x8e\xda\xbf\xf0\x9e\xaf\x93\xe1\xa0\xb2", true); } // [B2, B3, V7]
1817test { try toUnicodeFail("xn--pnd.xn--ykb840gd555a"); } // [B2, B3, V7]3749test { try toUnicodeFail("xn--pnd.xn--ykb840gd555a"); } // [B2, B3, V7]
3750test { try toAsciiFail("xn--pnd.xn--ykb840gd555a", false); } // [B2, B3, V7]
3751test { try toAsciiFail("xn--pnd.xn--ykb840gd555a", true); } // [B2, B3, V7]
1818test { try toUnicodeFail("\xe1\xa9\x9a\xf0\x9b\xa6\x9d\xe0\xb1\x8d\xe3\x80\x82\xf0\x9a\x9d\xac\xf0\x9d\x9f\xb5"); } // [V6, V7]3752test { try toUnicodeFail("\xe1\xa9\x9a\xf0\x9b\xa6\x9d\xe0\xb1\x8d\xe3\x80\x82\xf0\x9a\x9d\xac\xf0\x9d\x9f\xb5"); } // [V6, V7]
3753test { try toAsciiFail("\xe1\xa9\x9a\xf0\x9b\xa6\x9d\xe0\xb1\x8d\xe3\x80\x82\xf0\x9a\x9d\xac\xf0\x9d\x9f\xb5", false); } // [V6, V7]
3754test { try toAsciiFail("\xe1\xa9\x9a\xf0\x9b\xa6\x9d\xe0\xb1\x8d\xe3\x80\x82\xf0\x9a\x9d\xac\xf0\x9d\x9f\xb5", true); } // [V6, V7]
1819test { try toUnicodeFail("\xe1\xa9\x9a\xf0\x9b\xa6\x9d\xe0\xb1\x8d\xe3\x80\x82\xf0\x9a\x9d\xac9"); } // [V6, V7]3755test { try toUnicodeFail("\xe1\xa9\x9a\xf0\x9b\xa6\x9d\xe0\xb1\x8d\xe3\x80\x82\xf0\x9a\x9d\xac9"); } // [V6, V7]
3756test { try toAsciiFail("\xe1\xa9\x9a\xf0\x9b\xa6\x9d\xe0\xb1\x8d\xe3\x80\x82\xf0\x9a\x9d\xac9", false); } // [V6, V7]
3757test { try toAsciiFail("\xe1\xa9\x9a\xf0\x9b\xa6\x9d\xe0\xb1\x8d\xe3\x80\x82\xf0\x9a\x9d\xac9", true); } // [V6, V7]
1820test { try toUnicodeFail("xn--lqc703ebm93a.xn--9-000p"); } // [V6, V7]3758test { try toUnicodeFail("xn--lqc703ebm93a.xn--9-000p"); } // [V6, V7]
3759test { try toAsciiFail("xn--lqc703ebm93a.xn--9-000p", false); } // [V6, V7]
3760test { try toAsciiFail("xn--lqc703ebm93a.xn--9-000p", true); } // [V6, V7]
1821test { try toUnicodeFail("\xe2\x80\x8c\xda\xa0\xf0\xbf\xba\x86\xf0\x9d\x9f\x97\xef\xbd\xa1\xe1\x83\x83\xea\x92\x98\xef\xb3\x90\xf1\x90\x98\x96"); } // [B1, B5, C1, V7]3761test { try toUnicodeFail("\xe2\x80\x8c\xda\xa0\xf0\xbf\xba\x86\xf0\x9d\x9f\x97\xef\xbd\xa1\xe1\x83\x83\xea\x92\x98\xef\xb3\x90\xf1\x90\x98\x96"); } // [B1, B5, C1, V7]
3762test { try toAsciiFail("\xe2\x80\x8c\xda\xa0\xf0\xbf\xba\x86\xf0\x9d\x9f\x97\xef\xbd\xa1\xe1\x83\x83\xea\x92\x98\xef\xb3\x90\xf1\x90\x98\x96", false); } // [B1, B5, C1, V7]
3763test { try toAsciiFail("\xe2\x80\x8c\xda\xa0\xf0\xbf\xba\x86\xf0\x9d\x9f\x97\xef\xbd\xa1\xe1\x83\x83\xea\x92\x98\xef\xb3\x90\xf1\x90\x98\x96", true); } // [B2, B5, V7]
1822test { try toUnicodeFail("\xe2\x80\x8c\xda\xa0\xf0\xbf\xba\x869\xe3\x80\x82\xe1\x83\x83\xea\x92\x98\xd9\x85\xd8\xae\xf1\x90\x98\x96"); } // [B1, B5, C1, V7]3764test { try toUnicodeFail("\xe2\x80\x8c\xda\xa0\xf0\xbf\xba\x869\xe3\x80\x82\xe1\x83\x83\xea\x92\x98\xd9\x85\xd8\xae\xf1\x90\x98\x96"); } // [B1, B5, C1, V7]
3765test { try toAsciiFail("\xe2\x80\x8c\xda\xa0\xf0\xbf\xba\x869\xe3\x80\x82\xe1\x83\x83\xea\x92\x98\xd9\x85\xd8\xae\xf1\x90\x98\x96", false); } // [B1, B5, C1, V7]
3766test { try toAsciiFail("\xe2\x80\x8c\xda\xa0\xf0\xbf\xba\x869\xe3\x80\x82\xe1\x83\x83\xea\x92\x98\xd9\x85\xd8\xae\xf1\x90\x98\x96", true); } // [B2, B5, V7]
1823test { try toUnicodeFail("\xe2\x80\x8c\xda\xa0\xf0\xbf\xba\x869\xe3\x80\x82\xe2\xb4\xa3\xea\x92\x98\xd9\x85\xd8\xae\xf1\x90\x98\x96"); } // [B1, B5, C1, V7]3767test { try toUnicodeFail("\xe2\x80\x8c\xda\xa0\xf0\xbf\xba\x869\xe3\x80\x82\xe2\xb4\xa3\xea\x92\x98\xd9\x85\xd8\xae\xf1\x90\x98\x96"); } // [B1, B5, C1, V7]
3768test { try toAsciiFail("\xe2\x80\x8c\xda\xa0\xf0\xbf\xba\x869\xe3\x80\x82\xe2\xb4\xa3\xea\x92\x98\xd9\x85\xd8\xae\xf1\x90\x98\x96", false); } // [B1, B5, C1, V7]
3769test { try toAsciiFail("\xe2\x80\x8c\xda\xa0\xf0\xbf\xba\x869\xe3\x80\x82\xe2\xb4\xa3\xea\x92\x98\xd9\x85\xd8\xae\xf1\x90\x98\x96", true); } // [B2, B5, V7]
1824test { try toUnicodeFail("xn--9-vtc42319e.xn--tgb9bz87p833hw316c"); } // [B2, B5, V7]3770test { try toUnicodeFail("xn--9-vtc42319e.xn--tgb9bz87p833hw316c"); } // [B2, B5, V7]
3771test { try toAsciiFail("xn--9-vtc42319e.xn--tgb9bz87p833hw316c", false); } // [B2, B5, V7]
3772test { try toAsciiFail("xn--9-vtc42319e.xn--tgb9bz87p833hw316c", true); } // [B2, B5, V7]
1825test { try toUnicodeFail("xn--9-vtc736qts91g.xn--tgb9bz87p833hw316c"); } // [B1, B5, C1, V7]3773test { try toUnicodeFail("xn--9-vtc736qts91g.xn--tgb9bz87p833hw316c"); } // [B1, B5, C1, V7]
3774test { try toAsciiFail("xn--9-vtc736qts91g.xn--tgb9bz87p833hw316c", false); } // [B1, B5, C1, V7]
3775test { try toAsciiFail("xn--9-vtc736qts91g.xn--tgb9bz87p833hw316c", true); } // [B1, B5, C1, V7]
1826test { try toUnicodeFail("\xe2\x80\x8c\xda\xa0\xf0\xbf\xba\x86\xf0\x9d\x9f\x97\xef\xbd\xa1\xe2\xb4\xa3\xea\x92\x98\xef\xb3\x90\xf1\x90\x98\x96"); } // [B1, B5, C1, V7]3776test { try toUnicodeFail("\xe2\x80\x8c\xda\xa0\xf0\xbf\xba\x86\xf0\x9d\x9f\x97\xef\xbd\xa1\xe2\xb4\xa3\xea\x92\x98\xef\xb3\x90\xf1\x90\x98\x96"); } // [B1, B5, C1, V7]
3777test { try toAsciiFail("\xe2\x80\x8c\xda\xa0\xf0\xbf\xba\x86\xf0\x9d\x9f\x97\xef\xbd\xa1\xe2\xb4\xa3\xea\x92\x98\xef\xb3\x90\xf1\x90\x98\x96", false); } // [B1, B5, C1, V7]
3778test { try toAsciiFail("\xe2\x80\x8c\xda\xa0\xf0\xbf\xba\x86\xf0\x9d\x9f\x97\xef\xbd\xa1\xe2\xb4\xa3\xea\x92\x98\xef\xb3\x90\xf1\x90\x98\x96", true); } // [B2, B5, V7]
1827test { try toUnicodeFail("xn--9-vtc42319e.xn--tgb9bz61cfn8mw3t2c"); } // [B2, B5, V7]3779test { try toUnicodeFail("xn--9-vtc42319e.xn--tgb9bz61cfn8mw3t2c"); } // [B2, B5, V7]
3780test { try toAsciiFail("xn--9-vtc42319e.xn--tgb9bz61cfn8mw3t2c", false); } // [B2, B5, V7]
3781test { try toAsciiFail("xn--9-vtc42319e.xn--tgb9bz61cfn8mw3t2c", true); } // [B2, B5, V7]
1828test { try toUnicodeFail("xn--9-vtc736qts91g.xn--tgb9bz61cfn8mw3t2c"); } // [B1, B5, C1, V7]3782test { try toUnicodeFail("xn--9-vtc736qts91g.xn--tgb9bz61cfn8mw3t2c"); } // [B1, B5, C1, V7]
3783test { try toAsciiFail("xn--9-vtc736qts91g.xn--tgb9bz61cfn8mw3t2c", false); } // [B1, B5, C1, V7]
3784test { try toAsciiFail("xn--9-vtc736qts91g.xn--tgb9bz61cfn8mw3t2c", true); } // [B1, B5, C1, V7]
1829test { try toUnicodeFail("\xe1\xa1\x96\xef\xbd\xa1\xcc\x9f\xf1\x97\x9b\xa8\xe0\xae\x82-"); } // [V3, V6, V7]3785test { try toUnicodeFail("\xe1\xa1\x96\xef\xbd\xa1\xcc\x9f\xf1\x97\x9b\xa8\xe0\xae\x82-"); } // [V3, V6, V7]
3786test { try toAsciiFail("\xe1\xa1\x96\xef\xbd\xa1\xcc\x9f\xf1\x97\x9b\xa8\xe0\xae\x82-", false); } // [V3, V6, V7]
3787test { try toAsciiFail("\xe1\xa1\x96\xef\xbd\xa1\xcc\x9f\xf1\x97\x9b\xa8\xe0\xae\x82-", true); } // [V3, V6, V7]
1830test { try toUnicodeFail("\xe1\xa1\x96\xe3\x80\x82\xcc\x9f\xf1\x97\x9b\xa8\xe0\xae\x82-"); } // [V3, V6, V7]3788test { try toUnicodeFail("\xe1\xa1\x96\xe3\x80\x82\xcc\x9f\xf1\x97\x9b\xa8\xe0\xae\x82-"); } // [V3, V6, V7]
3789test { try toAsciiFail("\xe1\xa1\x96\xe3\x80\x82\xcc\x9f\xf1\x97\x9b\xa8\xe0\xae\x82-", false); } // [V3, V6, V7]
3790test { try toAsciiFail("\xe1\xa1\x96\xe3\x80\x82\xcc\x9f\xf1\x97\x9b\xa8\xe0\xae\x82-", true); } // [V3, V6, V7]
1831test { try toUnicodeFail("xn--m8e.xn----mdb555dkk71m"); } // [V3, V6, V7]3791test { try toUnicodeFail("xn--m8e.xn----mdb555dkk71m"); } // [V3, V6, V7]
3792test { try toAsciiFail("xn--m8e.xn----mdb555dkk71m", false); } // [V3, V6, V7]
3793test { try toAsciiFail("xn--m8e.xn----mdb555dkk71m", true); } // [V3, V6, V7]
1832test { try toUnicodeFail("\xf0\x9e\xa0\xa0\xe6\xb5\x98\xe3\x80\x82\xe7\xb5\xa7\xf0\x9e\x80\x80"); } // [B2, B3]3794test { try toUnicodeFail("\xf0\x9e\xa0\xa0\xe6\xb5\x98\xe3\x80\x82\xe7\xb5\xa7\xf0\x9e\x80\x80"); } // [B2, B3]
3795test { try toAsciiFail("\xf0\x9e\xa0\xa0\xe6\xb5\x98\xe3\x80\x82\xe7\xb5\xa7\xf0\x9e\x80\x80", false); } // [B2, B3]
3796test { try toAsciiFail("\xf0\x9e\xa0\xa0\xe6\xb5\x98\xe3\x80\x82\xe7\xb5\xa7\xf0\x9e\x80\x80", true); } // [B2, B3]
1833test { try toUnicodeFail("xn--e0wp491f.xn--ud0a3573e"); } // [B2, B3]3797test { try toUnicodeFail("xn--e0wp491f.xn--ud0a3573e"); } // [B2, B3]
3798test { try toAsciiFail("xn--e0wp491f.xn--ud0a3573e", false); } // [B2, B3]
3799test { try toAsciiFail("xn--e0wp491f.xn--ud0a3573e", true); } // [B2, B3]
1834test { try toUnicodeFail("\xd6\x96\xe1\x82\xab\xef\xbc\x8e\xf0\x9d\x9f\xb3\xe2\x89\xaf\xef\xb8\x92\xef\xb8\x8a"); } // [V6, V7]3800test { try toUnicodeFail("\xd6\x96\xe1\x82\xab\xef\xbc\x8e\xf0\x9d\x9f\xb3\xe2\x89\xaf\xef\xb8\x92\xef\xb8\x8a"); } // [V6, V7]
3801test { try toAsciiFail("\xd6\x96\xe1\x82\xab\xef\xbc\x8e\xf0\x9d\x9f\xb3\xe2\x89\xaf\xef\xb8\x92\xef\xb8\x8a", false); } // [V6, V7]
3802test { try toAsciiFail("\xd6\x96\xe1\x82\xab\xef\xbc\x8e\xf0\x9d\x9f\xb3\xe2\x89\xaf\xef\xb8\x92\xef\xb8\x8a", true); } // [V6, V7]
1835test { try toUnicodeFail("\xd6\x96\xe1\x82\xab\xef\xbc\x8e\xf0\x9d\x9f\xb3>\xcc\xb8\xef\xb8\x92\xef\xb8\x8a"); } // [V6, V7]3803test { try toUnicodeFail("\xd6\x96\xe1\x82\xab\xef\xbc\x8e\xf0\x9d\x9f\xb3>\xcc\xb8\xef\xb8\x92\xef\xb8\x8a"); } // [V6, V7]
3804test { try toAsciiFail("\xd6\x96\xe1\x82\xab\xef\xbc\x8e\xf0\x9d\x9f\xb3>\xcc\xb8\xef\xb8\x92\xef\xb8\x8a", false); } // [V6, V7]
3805test { try toAsciiFail("\xd6\x96\xe1\x82\xab\xef\xbc\x8e\xf0\x9d\x9f\xb3>\xcc\xb8\xef\xb8\x92\xef\xb8\x8a", true); } // [V6, V7]
1836test { try toUnicodeFail("\xd6\x96\xe1\x82\xab.7\xe2\x89\xaf\xe3\x80\x82\xef\xb8\x8a"); } // [V6]3806test { try toUnicodeFail("\xd6\x96\xe1\x82\xab.7\xe2\x89\xaf\xe3\x80\x82\xef\xb8\x8a"); } // [V6]
3807test { try toAsciiFail("\xd6\x96\xe1\x82\xab.7\xe2\x89\xaf\xe3\x80\x82\xef\xb8\x8a", false); } // [V6, A4_2]
3808test { try toAsciiFail("\xd6\x96\xe1\x82\xab.7\xe2\x89\xaf\xe3\x80\x82\xef\xb8\x8a", true); } // [V6, A4_2]
1837test { try toUnicodeFail("\xd6\x96\xe1\x82\xab.7>\xcc\xb8\xe3\x80\x82\xef\xb8\x8a"); } // [V6]3809test { try toUnicodeFail("\xd6\x96\xe1\x82\xab.7>\xcc\xb8\xe3\x80\x82\xef\xb8\x8a"); } // [V6]
3810test { try toAsciiFail("\xd6\x96\xe1\x82\xab.7>\xcc\xb8\xe3\x80\x82\xef\xb8\x8a", false); } // [V6, A4_2]
3811test { try toAsciiFail("\xd6\x96\xe1\x82\xab.7>\xcc\xb8\xe3\x80\x82\xef\xb8\x8a", true); } // [V6, A4_2]
1838test { try toUnicodeFail("\xd6\x96\xe2\xb4\x8b.7>\xcc\xb8\xe3\x80\x82\xef\xb8\x8a"); } // [V6]3812test { try toUnicodeFail("\xd6\x96\xe2\xb4\x8b.7>\xcc\xb8\xe3\x80\x82\xef\xb8\x8a"); } // [V6]
3813test { try toAsciiFail("\xd6\x96\xe2\xb4\x8b.7>\xcc\xb8\xe3\x80\x82\xef\xb8\x8a", false); } // [V6, A4_2]
3814test { try toAsciiFail("\xd6\x96\xe2\xb4\x8b.7>\xcc\xb8\xe3\x80\x82\xef\xb8\x8a", true); } // [V6, A4_2]
1839test { try toUnicodeFail("\xd6\x96\xe2\xb4\x8b.7\xe2\x89\xaf\xe3\x80\x82\xef\xb8\x8a"); } // [V6]3815test { try toUnicodeFail("\xd6\x96\xe2\xb4\x8b.7\xe2\x89\xaf\xe3\x80\x82\xef\xb8\x8a"); } // [V6]
3816test { try toAsciiFail("\xd6\x96\xe2\xb4\x8b.7\xe2\x89\xaf\xe3\x80\x82\xef\xb8\x8a", false); } // [V6, A4_2]
3817test { try toAsciiFail("\xd6\x96\xe2\xb4\x8b.7\xe2\x89\xaf\xe3\x80\x82\xef\xb8\x8a", true); } // [V6, A4_2]
1840test { try toUnicodeFail("xn--hcb613r.xn--7-pgo."); } // [V6]3818test { try toUnicodeFail("xn--hcb613r.xn--7-pgo."); } // [V6]
3819test { try toAsciiFail("xn--hcb613r.xn--7-pgo.", false); } // [V6, A4_2]
3820test { try toAsciiFail("xn--hcb613r.xn--7-pgo.", true); } // [V6, A4_2]
1841test { try toUnicodeFail("\xd6\x96\xe2\xb4\x8b\xef\xbc\x8e\xf0\x9d\x9f\xb3>\xcc\xb8\xef\xb8\x92\xef\xb8\x8a"); } // [V6, V7]3821test { try toUnicodeFail("\xd6\x96\xe2\xb4\x8b\xef\xbc\x8e\xf0\x9d\x9f\xb3>\xcc\xb8\xef\xb8\x92\xef\xb8\x8a"); } // [V6, V7]
3822test { try toAsciiFail("\xd6\x96\xe2\xb4\x8b\xef\xbc\x8e\xf0\x9d\x9f\xb3>\xcc\xb8\xef\xb8\x92\xef\xb8\x8a", false); } // [V6, V7]
3823test { try toAsciiFail("\xd6\x96\xe2\xb4\x8b\xef\xbc\x8e\xf0\x9d\x9f\xb3>\xcc\xb8\xef\xb8\x92\xef\xb8\x8a", true); } // [V6, V7]
1842test { try toUnicodeFail("\xd6\x96\xe2\xb4\x8b\xef\xbc\x8e\xf0\x9d\x9f\xb3\xe2\x89\xaf\xef\xb8\x92\xef\xb8\x8a"); } // [V6, V7]3824test { try toUnicodeFail("\xd6\x96\xe2\xb4\x8b\xef\xbc\x8e\xf0\x9d\x9f\xb3\xe2\x89\xaf\xef\xb8\x92\xef\xb8\x8a"); } // [V6, V7]
3825test { try toAsciiFail("\xd6\x96\xe2\xb4\x8b\xef\xbc\x8e\xf0\x9d\x9f\xb3\xe2\x89\xaf\xef\xb8\x92\xef\xb8\x8a", false); } // [V6, V7]
3826test { try toAsciiFail("\xd6\x96\xe2\xb4\x8b\xef\xbc\x8e\xf0\x9d\x9f\xb3\xe2\x89\xaf\xef\xb8\x92\xef\xb8\x8a", true); } // [V6, V7]
1843test { try toUnicodeFail("xn--hcb613r.xn--7-pgoy530h"); } // [V6, V7]3827test { try toUnicodeFail("xn--hcb613r.xn--7-pgoy530h"); } // [V6, V7]
3828test { try toAsciiFail("xn--hcb613r.xn--7-pgoy530h", false); } // [V6, V7]
3829test { try toAsciiFail("xn--hcb613r.xn--7-pgoy530h", true); } // [V6, V7]
1844test { try toUnicodeFail("xn--hcb887c.xn--7-pgo."); } // [V6, V7]3830test { try toUnicodeFail("xn--hcb887c.xn--7-pgo."); } // [V6, V7]
3831test { try toAsciiFail("xn--hcb887c.xn--7-pgo.", false); } // [V6, V7, A4_2]
3832test { try toAsciiFail("xn--hcb887c.xn--7-pgo.", true); } // [V6, V7, A4_2]
1845test { try toUnicodeFail("xn--hcb887c.xn--7-pgoy530h"); } // [V6, V7]3833test { try toUnicodeFail("xn--hcb887c.xn--7-pgoy530h"); } // [V6, V7]
3834test { try toAsciiFail("xn--hcb887c.xn--7-pgoy530h", false); } // [V6, V7]
3835test { try toAsciiFail("xn--hcb887c.xn--7-pgoy530h", true); } // [V6, V7]
1846test { try toUnicodeFail("\xe2\x80\x8dF\xf0\x91\x93\x82\xe3\x80\x82\xf3\xa0\xba\xa8\xef\xb8\x92\xdd\xbe\xf0\x90\xb9\xa2"); } // [B1, C2, V7]3836test { try toUnicodeFail("\xe2\x80\x8dF\xf0\x91\x93\x82\xe3\x80\x82\xf3\xa0\xba\xa8\xef\xb8\x92\xdd\xbe\xf0\x90\xb9\xa2"); } // [B1, C2, V7]
3837test { try toAsciiFail("\xe2\x80\x8dF\xf0\x91\x93\x82\xe3\x80\x82\xf3\xa0\xba\xa8\xef\xb8\x92\xdd\xbe\xf0\x90\xb9\xa2", false); } // [B1, C2, V7]
3838test { try toAsciiFail("\xe2\x80\x8dF\xf0\x91\x93\x82\xe3\x80\x82\xf3\xa0\xba\xa8\xef\xb8\x92\xdd\xbe\xf0\x90\xb9\xa2", true); } // [B1, V7]
1847test { try toUnicodeFail("\xe2\x80\x8dF\xf0\x91\x93\x82\xe3\x80\x82\xf3\xa0\xba\xa8\xe3\x80\x82\xdd\xbe\xf0\x90\xb9\xa2"); } // [B1, C2, V7]3839test { try toUnicodeFail("\xe2\x80\x8dF\xf0\x91\x93\x82\xe3\x80\x82\xf3\xa0\xba\xa8\xe3\x80\x82\xdd\xbe\xf0\x90\xb9\xa2"); } // [B1, C2, V7]
3840test { try toAsciiFail("\xe2\x80\x8dF\xf0\x91\x93\x82\xe3\x80\x82\xf3\xa0\xba\xa8\xe3\x80\x82\xdd\xbe\xf0\x90\xb9\xa2", false); } // [B1, C2, V7]
3841test { try toAsciiFail("\xe2\x80\x8dF\xf0\x91\x93\x82\xe3\x80\x82\xf3\xa0\xba\xa8\xe3\x80\x82\xdd\xbe\xf0\x90\xb9\xa2", true); } // [B1, V7]
1848test { try toUnicodeFail("\xe2\x80\x8df\xf0\x91\x93\x82\xe3\x80\x82\xf3\xa0\xba\xa8\xe3\x80\x82\xdd\xbe\xf0\x90\xb9\xa2"); } // [B1, C2, V7]3842test { try toUnicodeFail("\xe2\x80\x8df\xf0\x91\x93\x82\xe3\x80\x82\xf3\xa0\xba\xa8\xe3\x80\x82\xdd\xbe\xf0\x90\xb9\xa2"); } // [B1, C2, V7]
3843test { try toAsciiFail("\xe2\x80\x8df\xf0\x91\x93\x82\xe3\x80\x82\xf3\xa0\xba\xa8\xe3\x80\x82\xdd\xbe\xf0\x90\xb9\xa2", false); } // [B1, C2, V7]
3844test { try toAsciiFail("\xe2\x80\x8df\xf0\x91\x93\x82\xe3\x80\x82\xf3\xa0\xba\xa8\xe3\x80\x82\xdd\xbe\xf0\x90\xb9\xa2", true); } // [B1, V7]
1849test { try toUnicodeFail("xn--f-kq9i.xn--7656e.xn--fqb4175k"); } // [B1, V7]3845test { try toUnicodeFail("xn--f-kq9i.xn--7656e.xn--fqb4175k"); } // [B1, V7]
3846test { try toAsciiFail("xn--f-kq9i.xn--7656e.xn--fqb4175k", false); } // [B1, V7]
3847test { try toAsciiFail("xn--f-kq9i.xn--7656e.xn--fqb4175k", true); } // [B1, V7]
1850test { try toUnicodeFail("xn--f-tgn9761i.xn--7656e.xn--fqb4175k"); } // [B1, C2, V7]3848test { try toUnicodeFail("xn--f-tgn9761i.xn--7656e.xn--fqb4175k"); } // [B1, C2, V7]
3849test { try toAsciiFail("xn--f-tgn9761i.xn--7656e.xn--fqb4175k", false); } // [B1, C2, V7]
3850test { try toAsciiFail("xn--f-tgn9761i.xn--7656e.xn--fqb4175k", true); } // [B1, C2, V7]
1851test { try toUnicodeFail("\xe2\x80\x8df\xf0\x91\x93\x82\xe3\x80\x82\xf3\xa0\xba\xa8\xef\xb8\x92\xdd\xbe\xf0\x90\xb9\xa2"); } // [B1, C2, V7]3851test { try toUnicodeFail("\xe2\x80\x8df\xf0\x91\x93\x82\xe3\x80\x82\xf3\xa0\xba\xa8\xef\xb8\x92\xdd\xbe\xf0\x90\xb9\xa2"); } // [B1, C2, V7]
3852test { try toAsciiFail("\xe2\x80\x8df\xf0\x91\x93\x82\xe3\x80\x82\xf3\xa0\xba\xa8\xef\xb8\x92\xdd\xbe\xf0\x90\xb9\xa2", false); } // [B1, C2, V7]
3853test { try toAsciiFail("\xe2\x80\x8df\xf0\x91\x93\x82\xe3\x80\x82\xf3\xa0\xba\xa8\xef\xb8\x92\xdd\xbe\xf0\x90\xb9\xa2", true); } // [B1, V7]
1852test { try toUnicodeFail("xn--f-kq9i.xn--fqb1637j8hky9452a"); } // [B1, V7]3854test { try toUnicodeFail("xn--f-kq9i.xn--fqb1637j8hky9452a"); } // [B1, V7]
3855test { try toAsciiFail("xn--f-kq9i.xn--fqb1637j8hky9452a", false); } // [B1, V7]
3856test { try toAsciiFail("xn--f-kq9i.xn--fqb1637j8hky9452a", true); } // [B1, V7]
1853test { try toUnicodeFail("xn--f-tgn9761i.xn--fqb1637j8hky9452a"); } // [B1, C2, V7]3857test { try toUnicodeFail("xn--f-tgn9761i.xn--fqb1637j8hky9452a"); } // [B1, C2, V7]
3858test { try toAsciiFail("xn--f-tgn9761i.xn--fqb1637j8hky9452a", false); } // [B1, C2, V7]
3859test { try toAsciiFail("xn--f-tgn9761i.xn--fqb1637j8hky9452a", true); } // [B1, C2, V7]
1854test { try toUnicodeFail("\xe0\xa1\x85\xf0\x9f\x84\x87\xf0\x90\xbc\x97\xef\xb8\x92\xef\xbd\xa1\xf0\x90\xb9\xbb\xf0\x91\x9c\xab"); } // [B1, B3, V7, U1]3860test { try toUnicodeFail("\xe0\xa1\x85\xf0\x9f\x84\x87\xf0\x90\xbc\x97\xef\xb8\x92\xef\xbd\xa1\xf0\x90\xb9\xbb\xf0\x91\x9c\xab"); } // [B1, B3, V7, U1]
3861test { try toAsciiFail("\xe0\xa1\x85\xf0\x9f\x84\x87\xf0\x90\xbc\x97\xef\xb8\x92\xef\xbd\xa1\xf0\x90\xb9\xbb\xf0\x91\x9c\xab", false); } // [B1, B3, V7, U1]
3862test { try toAsciiFail("\xe0\xa1\x85\xf0\x9f\x84\x87\xf0\x90\xbc\x97\xef\xb8\x92\xef\xbd\xa1\xf0\x90\xb9\xbb\xf0\x91\x9c\xab", true); } // [B1, B3, V7, U1]
1855test { try toUnicodeFail("\xe0\xa1\x856,\xf0\x90\xbc\x97\xe3\x80\x82\xe3\x80\x82\xf0\x90\xb9\xbb\xf0\x91\x9c\xab"); } // [B1, U1, X4_2]3863test { try toUnicodeFail("\xe0\xa1\x856,\xf0\x90\xbc\x97\xe3\x80\x82\xe3\x80\x82\xf0\x90\xb9\xbb\xf0\x91\x9c\xab"); } // [B1, U1, X4_2]
3864test { try toAsciiFail("\xe0\xa1\x856,\xf0\x90\xbc\x97\xe3\x80\x82\xe3\x80\x82\xf0\x90\xb9\xbb\xf0\x91\x9c\xab", false); } // [B1, U1, A4_2]
3865test { try toAsciiFail("\xe0\xa1\x856,\xf0\x90\xbc\x97\xe3\x80\x82\xe3\x80\x82\xf0\x90\xb9\xbb\xf0\x91\x9c\xab", true); } // [B1, U1, A4_2]
1856test { try toUnicodeFail("xn--6,-r4e4420y..xn--zo0di2m"); } // [B1, U1, X4_2]3866test { try toUnicodeFail("xn--6,-r4e4420y..xn--zo0di2m"); } // [B1, U1, X4_2]
3867test { try toAsciiFail("xn--6,-r4e4420y..xn--zo0di2m", false); } // [B1, U1, A4_2]
3868test { try toAsciiFail("xn--6,-r4e4420y..xn--zo0di2m", true); } // [B1, U1, A4_2]
1857test { try toUnicodeFail("xn--6,-r4e6182wo1ra.xn--zo0di2m"); } // [B1, B3, V7, U1]3869test { try toUnicodeFail("xn--6,-r4e6182wo1ra.xn--zo0di2m"); } // [B1, B3, V7, U1]
3870test { try toAsciiFail("xn--6,-r4e6182wo1ra.xn--zo0di2m", false); } // [B1, B3, V7, U1]
3871test { try toAsciiFail("xn--6,-r4e6182wo1ra.xn--zo0di2m", true); } // [B1, B3, V7, U1]
1858test { try toUnicodeFail("xn--3vb4696jpxkjh7s.xn--zo0di2m"); } // [B1, B3, V7]3872test { try toUnicodeFail("xn--3vb4696jpxkjh7s.xn--zo0di2m"); } // [B1, B3, V7]
3873test { try toAsciiFail("xn--3vb4696jpxkjh7s.xn--zo0di2m", false); } // [B1, B3, V7]
3874test { try toAsciiFail("xn--3vb4696jpxkjh7s.xn--zo0di2m", true); } // [B1, B3, V7]
1859test { try toUnicodeFail("\xf0\x90\xb9\x88.\xe1\xb7\x80\xf0\x91\x88\xb1\xf0\x90\xa6\xad"); } // [B1, V6, V7]3875test { try toUnicodeFail("\xf0\x90\xb9\x88.\xe1\xb7\x80\xf0\x91\x88\xb1\xf0\x90\xa6\xad"); } // [B1, V6, V7]
3876test { try toAsciiFail("\xf0\x90\xb9\x88.\xe1\xb7\x80\xf0\x91\x88\xb1\xf0\x90\xa6\xad", false); } // [B1, V6, V7]
3877test { try toAsciiFail("\xf0\x90\xb9\x88.\xe1\xb7\x80\xf0\x91\x88\xb1\xf0\x90\xa6\xad", true); } // [B1, V6, V7]
1860test { try toUnicodeFail("xn--jn0d.xn--7dg0871h3lf"); } // [B1, V6, V7]3878test { try toUnicodeFail("xn--jn0d.xn--7dg0871h3lf"); } // [B1, V6, V7]
3879test { try toAsciiFail("xn--jn0d.xn--7dg0871h3lf", false); } // [B1, V6, V7]
3880test { try toAsciiFail("xn--jn0d.xn--7dg0871h3lf", true); } // [B1, V6, V7]
1861test { try toUnicodeFail("\xe1\x82\xa2\xe4\xa0\xba\xe3\x80\x82\xf0\x9e\xa4\x83\xf1\x85\x8f\x8e\xf3\x99\xae\xa6\xda\x93"); } // [B2, V7]3881test { try toUnicodeFail("\xe1\x82\xa2\xe4\xa0\xba\xe3\x80\x82\xf0\x9e\xa4\x83\xf1\x85\x8f\x8e\xf3\x99\xae\xa6\xda\x93"); } // [B2, V7]
3882test { try toAsciiFail("\xe1\x82\xa2\xe4\xa0\xba\xe3\x80\x82\xf0\x9e\xa4\x83\xf1\x85\x8f\x8e\xf3\x99\xae\xa6\xda\x93", false); } // [B2, V7]
3883test { try toAsciiFail("\xe1\x82\xa2\xe4\xa0\xba\xe3\x80\x82\xf0\x9e\xa4\x83\xf1\x85\x8f\x8e\xf3\x99\xae\xa6\xda\x93", true); } // [B2, V7]
1862test { try toUnicodeFail("\xe2\xb4\x82\xe4\xa0\xba\xe3\x80\x82\xf0\x9e\xa4\xa5\xf1\x85\x8f\x8e\xf3\x99\xae\xa6\xda\x93"); } // [B2, V7]3884test { try toUnicodeFail("\xe2\xb4\x82\xe4\xa0\xba\xe3\x80\x82\xf0\x9e\xa4\xa5\xf1\x85\x8f\x8e\xf3\x99\xae\xa6\xda\x93"); } // [B2, V7]
3885test { try toAsciiFail("\xe2\xb4\x82\xe4\xa0\xba\xe3\x80\x82\xf0\x9e\xa4\xa5\xf1\x85\x8f\x8e\xf3\x99\xae\xa6\xda\x93", false); } // [B2, V7]
3886test { try toAsciiFail("\xe2\xb4\x82\xe4\xa0\xba\xe3\x80\x82\xf0\x9e\xa4\xa5\xf1\x85\x8f\x8e\xf3\x99\xae\xa6\xda\x93", true); } // [B2, V7]
1863test { try toUnicodeFail("xn--tkj638f.xn--pjb9818vg4xno967d"); } // [B2, V7]3887test { try toUnicodeFail("xn--tkj638f.xn--pjb9818vg4xno967d"); } // [B2, V7]
3888test { try toAsciiFail("xn--tkj638f.xn--pjb9818vg4xno967d", false); } // [B2, V7]
3889test { try toAsciiFail("xn--tkj638f.xn--pjb9818vg4xno967d", true); } // [B2, V7]
1864test { try toUnicodeFail("xn--9md875z.xn--pjb9818vg4xno967d"); } // [B2, V7]3890test { try toUnicodeFail("xn--9md875z.xn--pjb9818vg4xno967d"); } // [B2, V7]
3891test { try toAsciiFail("xn--9md875z.xn--pjb9818vg4xno967d", false); } // [B2, V7]
3892test { try toAsciiFail("xn--9md875z.xn--pjb9818vg4xno967d", true); } // [B2, V7]
1865test { try toUnicodeFail("\xe2\xb4\x82\xe4\xa0\xba\xe3\x80\x82\xf0\x9e\xa4\x83\xf1\x85\x8f\x8e\xf3\x99\xae\xa6\xda\x93"); } // [B2, V7]3893test { try toUnicodeFail("\xe2\xb4\x82\xe4\xa0\xba\xe3\x80\x82\xf0\x9e\xa4\x83\xf1\x85\x8f\x8e\xf3\x99\xae\xa6\xda\x93"); } // [B2, V7]
3894test { try toAsciiFail("\xe2\xb4\x82\xe4\xa0\xba\xe3\x80\x82\xf0\x9e\xa4\x83\xf1\x85\x8f\x8e\xf3\x99\xae\xa6\xda\x93", false); } // [B2, V7]
3895test { try toAsciiFail("\xe2\xb4\x82\xe4\xa0\xba\xe3\x80\x82\xf0\x9e\xa4\x83\xf1\x85\x8f\x8e\xf3\x99\xae\xa6\xda\x93", true); } // [B2, V7]
1866test { try toUnicodeFail("\xf0\x9f\x84\x87\xe4\xbc\x90\xef\xb8\x92.\xf0\x9c\x99\x9a\xea\xa3\x84"); } // [V7, U1]3896test { try toUnicodeFail("\xf0\x9f\x84\x87\xe4\xbc\x90\xef\xb8\x92.\xf0\x9c\x99\x9a\xea\xa3\x84"); } // [V7, U1]
3897test { try toAsciiFail("\xf0\x9f\x84\x87\xe4\xbc\x90\xef\xb8\x92.\xf0\x9c\x99\x9a\xea\xa3\x84", false); } // [V7, U1]
3898test { try toAsciiFail("\xf0\x9f\x84\x87\xe4\xbc\x90\xef\xb8\x92.\xf0\x9c\x99\x9a\xea\xa3\x84", true); } // [V7, U1]
1867test { try toUnicodeFail("6,\xe4\xbc\x90\xe3\x80\x82.\xf0\x9c\x99\x9a\xea\xa3\x84"); } // [V7, U1, X4_2]3899test { try toUnicodeFail("6,\xe4\xbc\x90\xe3\x80\x82.\xf0\x9c\x99\x9a\xea\xa3\x84"); } // [V7, U1, X4_2]
3900test { try toAsciiFail("6,\xe4\xbc\x90\xe3\x80\x82.\xf0\x9c\x99\x9a\xea\xa3\x84", false); } // [V7, U1, A4_2]
3901test { try toAsciiFail("6,\xe4\xbc\x90\xe3\x80\x82.\xf0\x9c\x99\x9a\xea\xa3\x84", true); } // [V7, U1, A4_2]
1868test { try toUnicodeFail("xn--6,-7i3c..xn--0f9ao925c"); } // [V7, U1, X4_2]3902test { try toUnicodeFail("xn--6,-7i3c..xn--0f9ao925c"); } // [V7, U1, X4_2]
3903test { try toAsciiFail("xn--6,-7i3c..xn--0f9ao925c", false); } // [V7, U1, A4_2]
3904test { try toAsciiFail("xn--6,-7i3c..xn--0f9ao925c", true); } // [V7, U1, A4_2]
1869test { try toUnicodeFail("xn--6,-7i3cj157d.xn--0f9ao925c"); } // [V7, U1]3905test { try toUnicodeFail("xn--6,-7i3cj157d.xn--0f9ao925c"); } // [V7, U1]
3906test { try toAsciiFail("xn--6,-7i3cj157d.xn--0f9ao925c", false); } // [V7, U1]
3907test { try toAsciiFail("xn--6,-7i3cj157d.xn--0f9ao925c", true); } // [V7, U1]
1870test { try toUnicodeFail("xn--woqs083bel0g.xn--0f9ao925c"); } // [V7]3908test { try toUnicodeFail("xn--woqs083bel0g.xn--0f9ao925c"); } // [V7]
3909test { try toAsciiFail("xn--woqs083bel0g.xn--0f9ao925c", false); } // [V7]
3910test { try toAsciiFail("xn--woqs083bel0g.xn--0f9ao925c", true); } // [V7]
1871test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xa0\xea\xaf\xad\xef\xbf\xbb\xe3\x80\x82\xe2\x80\x8d\xf0\x90\xab\x93\xe1\x82\xba\xf0\x91\x82\xb9"); } // [B1, C2, V7]3911test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xa0\xea\xaf\xad\xef\xbf\xbb\xe3\x80\x82\xe2\x80\x8d\xf0\x90\xab\x93\xe1\x82\xba\xf0\x91\x82\xb9"); } // [B1, C2, V7]
3912test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xa0\xea\xaf\xad\xef\xbf\xbb\xe3\x80\x82\xe2\x80\x8d\xf0\x90\xab\x93\xe1\x82\xba\xf0\x91\x82\xb9", false); } // [B1, C2, V7]
3913test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xa0\xea\xaf\xad\xef\xbf\xbb\xe3\x80\x82\xe2\x80\x8d\xf0\x90\xab\x93\xe1\x82\xba\xf0\x91\x82\xb9", true); } // [B1, B2, B3, V7]
1872test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xa0\xea\xaf\xad\xef\xbf\xbb\xe3\x80\x82\xe2\x80\x8d\xf0\x90\xab\x93\xe2\xb4\x9a\xf0\x91\x82\xb9"); } // [B1, C2, V7]3914test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xb9\xa0\xea\xaf\xad\xef\xbf\xbb\xe3\x80\x82\xe2\x80\x8d\xf0\x90\xab\x93\xe2\xb4\x9a\xf0\x91\x82\xb9"); } // [B1, C2, V7]
3915test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xa0\xea\xaf\xad\xef\xbf\xbb\xe3\x80\x82\xe2\x80\x8d\xf0\x90\xab\x93\xe2\xb4\x9a\xf0\x91\x82\xb9", false); } // [B1, C2, V7]
3916test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xb9\xa0\xea\xaf\xad\xef\xbf\xbb\xe3\x80\x82\xe2\x80\x8d\xf0\x90\xab\x93\xe2\xb4\x9a\xf0\x91\x82\xb9", true); } // [B1, B2, B3, V7]
1873test { try toUnicodeFail("xn--429az70n29i.xn--ilj7702eqyd"); } // [B1, B2, B3, V7]3917test { try toUnicodeFail("xn--429az70n29i.xn--ilj7702eqyd"); } // [B1, B2, B3, V7]
3918test { try toAsciiFail("xn--429az70n29i.xn--ilj7702eqyd", false); } // [B1, B2, B3, V7]
3919test { try toAsciiFail("xn--429az70n29i.xn--ilj7702eqyd", true); } // [B1, B2, B3, V7]
1874test { try toUnicodeFail("xn--1ugz126coy7bdbm.xn--1ug062chv7ov6e"); } // [B1, C2, V7]3920test { try toUnicodeFail("xn--1ugz126coy7bdbm.xn--1ug062chv7ov6e"); } // [B1, C2, V7]
3921test { try toAsciiFail("xn--1ugz126coy7bdbm.xn--1ug062chv7ov6e", false); } // [B1, C2, V7]
3922test { try toAsciiFail("xn--1ugz126coy7bdbm.xn--1ug062chv7ov6e", true); } // [B1, C2, V7]
1875test { try toUnicodeFail("xn--429az70n29i.xn--ynd3619jqyd"); } // [B1, B2, B3, V7]3923test { try toUnicodeFail("xn--429az70n29i.xn--ynd3619jqyd"); } // [B1, B2, B3, V7]
3924test { try toAsciiFail("xn--429az70n29i.xn--ynd3619jqyd", false); } // [B1, B2, B3, V7]
3925test { try toAsciiFail("xn--429az70n29i.xn--ynd3619jqyd", true); } // [B1, B2, B3, V7]
1876test { try toUnicodeFail("xn--1ugz126coy7bdbm.xn--ynd959evs1pv6e"); } // [B1, C2, V7]3926test { try toUnicodeFail("xn--1ugz126coy7bdbm.xn--ynd959evs1pv6e"); } // [B1, C2, V7]
3927test { try toAsciiFail("xn--1ugz126coy7bdbm.xn--ynd959evs1pv6e", false); } // [B1, C2, V7]
3928test { try toAsciiFail("xn--1ugz126coy7bdbm.xn--ynd959evs1pv6e", true); } // [B1, C2, V7]
1877test { try toUnicodeFail("\xf3\xa0\x86\xa0\xef\xbc\x8e\xf1\xb7\x90\xb4\xf3\x8c\x9f\x88"); } // [V7, X4_2]3929test { try toUnicodeFail("\xf3\xa0\x86\xa0\xef\xbc\x8e\xf1\xb7\x90\xb4\xf3\x8c\x9f\x88"); } // [V7, X4_2]
3930test { try toAsciiFail("\xf3\xa0\x86\xa0\xef\xbc\x8e\xf1\xb7\x90\xb4\xf3\x8c\x9f\x88", false); } // [V7, A4_2]
3931test { try toAsciiFail("\xf3\xa0\x86\xa0\xef\xbc\x8e\xf1\xb7\x90\xb4\xf3\x8c\x9f\x88", true); } // [V7, A4_2]
1878test { try toUnicodeFail("\xf3\xa0\x86\xa0.\xf1\xb7\x90\xb4\xf3\x8c\x9f\x88"); } // [V7, X4_2]3932test { try toUnicodeFail("\xf3\xa0\x86\xa0.\xf1\xb7\x90\xb4\xf3\x8c\x9f\x88"); } // [V7, X4_2]
3933test { try toAsciiFail("\xf3\xa0\x86\xa0.\xf1\xb7\x90\xb4\xf3\x8c\x9f\x88", false); } // [V7, A4_2]
3934test { try toAsciiFail("\xf3\xa0\x86\xa0.\xf1\xb7\x90\xb4\xf3\x8c\x9f\x88", true); } // [V7, A4_2]
1879test { try toUnicodeFail(".xn--rx21bhv12i"); } // [V7, X4_2]3935test { try toUnicodeFail(".xn--rx21bhv12i"); } // [V7, X4_2]
3936test { try toAsciiFail(".xn--rx21bhv12i", false); } // [V7, A4_2]
3937test { try toAsciiFail(".xn--rx21bhv12i", true); } // [V7, A4_2]
1880test { try toUnicodeFail("\xf0\x90\xab\x83\xe2\x80\x8c\xe1\x82\xa6.\xe2\x89\xa0\xf0\x9e\xb7\x99"); } // [B1, B2, B3, C1, V7]3938test { try toUnicodeFail("\xf0\x90\xab\x83\xe2\x80\x8c\xe1\x82\xa6.\xe2\x89\xa0\xf0\x9e\xb7\x99"); } // [B1, B2, B3, C1, V7]
3939test { try toAsciiFail("\xf0\x90\xab\x83\xe2\x80\x8c\xe1\x82\xa6.\xe2\x89\xa0\xf0\x9e\xb7\x99", false); } // [B1, B2, B3, C1, V7]
3940test { try toAsciiFail("\xf0\x90\xab\x83\xe2\x80\x8c\xe1\x82\xa6.\xe2\x89\xa0\xf0\x9e\xb7\x99", true); } // [B1, B2, B3, V7]
1881test { try toUnicodeFail("\xf0\x90\xab\x83\xe2\x80\x8c\xe1\x82\xa6.=\xcc\xb8\xf0\x9e\xb7\x99"); } // [B1, B2, B3, C1, V7]3941test { try toUnicodeFail("\xf0\x90\xab\x83\xe2\x80\x8c\xe1\x82\xa6.=\xcc\xb8\xf0\x9e\xb7\x99"); } // [B1, B2, B3, C1, V7]
3942test { try toAsciiFail("\xf0\x90\xab\x83\xe2\x80\x8c\xe1\x82\xa6.=\xcc\xb8\xf0\x9e\xb7\x99", false); } // [B1, B2, B3, C1, V7]
3943test { try toAsciiFail("\xf0\x90\xab\x83\xe2\x80\x8c\xe1\x82\xa6.=\xcc\xb8\xf0\x9e\xb7\x99", true); } // [B1, B2, B3, V7]
1882test { try toUnicodeFail("\xf0\x90\xab\x83\xe2\x80\x8c\xe2\xb4\x86.=\xcc\xb8\xf0\x9e\xb7\x99"); } // [B1, B2, B3, C1, V7]3944test { try toUnicodeFail("\xf0\x90\xab\x83\xe2\x80\x8c\xe2\xb4\x86.=\xcc\xb8\xf0\x9e\xb7\x99"); } // [B1, B2, B3, C1, V7]
3945test { try toAsciiFail("\xf0\x90\xab\x83\xe2\x80\x8c\xe2\xb4\x86.=\xcc\xb8\xf0\x9e\xb7\x99", false); } // [B1, B2, B3, C1, V7]
3946test { try toAsciiFail("\xf0\x90\xab\x83\xe2\x80\x8c\xe2\xb4\x86.=\xcc\xb8\xf0\x9e\xb7\x99", true); } // [B1, B2, B3, V7]
1883test { try toUnicodeFail("\xf0\x90\xab\x83\xe2\x80\x8c\xe2\xb4\x86.\xe2\x89\xa0\xf0\x9e\xb7\x99"); } // [B1, B2, B3, C1, V7]3947test { try toUnicodeFail("\xf0\x90\xab\x83\xe2\x80\x8c\xe2\xb4\x86.\xe2\x89\xa0\xf0\x9e\xb7\x99"); } // [B1, B2, B3, C1, V7]
3948test { try toAsciiFail("\xf0\x90\xab\x83\xe2\x80\x8c\xe2\xb4\x86.\xe2\x89\xa0\xf0\x9e\xb7\x99", false); } // [B1, B2, B3, C1, V7]
3949test { try toAsciiFail("\xf0\x90\xab\x83\xe2\x80\x8c\xe2\xb4\x86.\xe2\x89\xa0\xf0\x9e\xb7\x99", true); } // [B1, B2, B3, V7]
1884test { try toUnicodeFail("xn--xkjz802e.xn--1ch2802p"); } // [B1, B2, B3, V7]3950test { try toUnicodeFail("xn--xkjz802e.xn--1ch2802p"); } // [B1, B2, B3, V7]
3951test { try toAsciiFail("xn--xkjz802e.xn--1ch2802p", false); } // [B1, B2, B3, V7]
3952test { try toAsciiFail("xn--xkjz802e.xn--1ch2802p", true); } // [B1, B2, B3, V7]
1885test { try toUnicodeFail("xn--0ug132csv7o.xn--1ch2802p"); } // [B1, B2, B3, C1, V7]3953test { try toUnicodeFail("xn--0ug132csv7o.xn--1ch2802p"); } // [B1, B2, B3, C1, V7]
3954test { try toAsciiFail("xn--0ug132csv7o.xn--1ch2802p", false); } // [B1, B2, B3, C1, V7]
3955test { try toAsciiFail("xn--0ug132csv7o.xn--1ch2802p", true); } // [B1, B2, B3, C1, V7]
1886test { try toUnicodeFail("xn--end1719j.xn--1ch2802p"); } // [B1, B2, B3, V7]3956test { try toUnicodeFail("xn--end1719j.xn--1ch2802p"); } // [B1, B2, B3, V7]
3957test { try toAsciiFail("xn--end1719j.xn--1ch2802p", false); } // [B1, B2, B3, V7]
3958test { try toAsciiFail("xn--end1719j.xn--1ch2802p", true); } // [B1, B2, B3, V7]
1887test { try toUnicodeFail("xn--end799ekr1p.xn--1ch2802p"); } // [B1, B2, B3, C1, V7]3959test { try toUnicodeFail("xn--end799ekr1p.xn--1ch2802p"); } // [B1, B2, B3, C1, V7]
3960test { try toAsciiFail("xn--end799ekr1p.xn--1ch2802p", false); } // [B1, B2, B3, C1, V7]
3961test { try toAsciiFail("xn--end799ekr1p.xn--1ch2802p", true); } // [B1, B2, B3, C1, V7]
1888test { try toUnicodeFail("\xf3\xa0\x81\xb2\xf0\x99\xa9\xa2\xf0\x9d\x9f\xa5\xea\x98\x8c\xef\xbc\x8e\xe0\xa1\x81"); } // [B1, V7]3962test { try toUnicodeFail("\xf3\xa0\x81\xb2\xf0\x99\xa9\xa2\xf0\x9d\x9f\xa5\xea\x98\x8c\xef\xbc\x8e\xe0\xa1\x81"); } // [B1, V7]
3963test { try toAsciiFail("\xf3\xa0\x81\xb2\xf0\x99\xa9\xa2\xf0\x9d\x9f\xa5\xea\x98\x8c\xef\xbc\x8e\xe0\xa1\x81", false); } // [B1, V7]
3964test { try toAsciiFail("\xf3\xa0\x81\xb2\xf0\x99\xa9\xa2\xf0\x9d\x9f\xa5\xea\x98\x8c\xef\xbc\x8e\xe0\xa1\x81", true); } // [B1, V7]
1889test { try toUnicodeFail("\xf3\xa0\x81\xb2\xf0\x99\xa9\xa23\xea\x98\x8c.\xe0\xa1\x81"); } // [B1, V7]3965test { try toUnicodeFail("\xf3\xa0\x81\xb2\xf0\x99\xa9\xa23\xea\x98\x8c.\xe0\xa1\x81"); } // [B1, V7]
3966test { try toAsciiFail("\xf3\xa0\x81\xb2\xf0\x99\xa9\xa23\xea\x98\x8c.\xe0\xa1\x81", false); } // [B1, V7]
3967test { try toAsciiFail("\xf3\xa0\x81\xb2\xf0\x99\xa9\xa23\xea\x98\x8c.\xe0\xa1\x81", true); } // [B1, V7]
1890test { try toUnicodeFail("xn--3-0g3es485d8i15h.xn--zvb"); } // [B1, V7]3968test { try toUnicodeFail("xn--3-0g3es485d8i15h.xn--zvb"); } // [B1, V7]
3969test { try toAsciiFail("xn--3-0g3es485d8i15h.xn--zvb", false); } // [B1, V7]
3970test { try toAsciiFail("xn--3-0g3es485d8i15h.xn--zvb", true); } // [B1, V7]
1891test { try toUnicodeFail("-.\xe1\xa2\x86\xf3\xa1\xb2\xa3-"); } // [V3, V6, V7]3971test { try toUnicodeFail("-.\xe1\xa2\x86\xf3\xa1\xb2\xa3-"); } // [V3, V6, V7]
3972test { try toAsciiFail("-.\xe1\xa2\x86\xf3\xa1\xb2\xa3-", false); } // [V3, V6, V7]
3973test { try toAsciiFail("-.\xe1\xa2\x86\xf3\xa1\xb2\xa3-", true); } // [V3, V6, V7]
1892test { try toUnicodeFail("-.xn----pbkx6497q"); } // [V3, V6, V7]3974test { try toUnicodeFail("-.xn----pbkx6497q"); } // [V3, V6, V7]
3975test { try toAsciiFail("-.xn----pbkx6497q", false); } // [V3, V6, V7]
3976test { try toAsciiFail("-.xn----pbkx6497q", true); } // [V3, V6, V7]
1893test { try toUnicodeFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xef\xbd\xa1\xe2\x80\x8c\xf0\x9e\xb0\x86\xcf\x82"); } // [B1, B6, C1, V7]3977test { try toUnicodeFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xef\xbd\xa1\xe2\x80\x8c\xf0\x9e\xb0\x86\xcf\x82"); } // [B1, B6, C1, V7]
3978test { try toAsciiFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xef\xbd\xa1\xe2\x80\x8c\xf0\x9e\xb0\x86\xcf\x82", false); } // [B1, B6, C1, V7]
3979test { try toAsciiFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xef\xbd\xa1\xe2\x80\x8c\xf0\x9e\xb0\x86\xcf\x82", true); } // [B2, B3, V7]
1894test { try toUnicodeFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xe3\x80\x82\xe2\x80\x8c\xf0\x9e\xb0\x86\xcf\x82"); } // [B1, B6, C1, V7]3980test { try toUnicodeFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xe3\x80\x82\xe2\x80\x8c\xf0\x9e\xb0\x86\xcf\x82"); } // [B1, B6, C1, V7]
3981test { try toAsciiFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xe3\x80\x82\xe2\x80\x8c\xf0\x9e\xb0\x86\xcf\x82", false); } // [B1, B6, C1, V7]
3982test { try toAsciiFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xe3\x80\x82\xe2\x80\x8c\xf0\x9e\xb0\x86\xcf\x82", true); } // [B2, B3, V7]
1895test { try toUnicodeFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xe3\x80\x82\xe2\x80\x8c\xf0\x9e\xb0\x86\xce\xa3"); } // [B1, B6, C1, V7]3983test { try toUnicodeFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xe3\x80\x82\xe2\x80\x8c\xf0\x9e\xb0\x86\xce\xa3"); } // [B1, B6, C1, V7]
3984test { try toAsciiFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xe3\x80\x82\xe2\x80\x8c\xf0\x9e\xb0\x86\xce\xa3", false); } // [B1, B6, C1, V7]
3985test { try toAsciiFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xe3\x80\x82\xe2\x80\x8c\xf0\x9e\xb0\x86\xce\xa3", true); } // [B2, B3, V7]
1896test { try toUnicodeFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xe3\x80\x82\xe2\x80\x8c\xf0\x9e\xb0\x86\xcf\x83"); } // [B1, B6, C1, V7]3986test { try toUnicodeFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xe3\x80\x82\xe2\x80\x8c\xf0\x9e\xb0\x86\xcf\x83"); } // [B1, B6, C1, V7]
3987test { try toAsciiFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xe3\x80\x82\xe2\x80\x8c\xf0\x9e\xb0\x86\xcf\x83", false); } // [B1, B6, C1, V7]
3988test { try toAsciiFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xe3\x80\x82\xe2\x80\x8c\xf0\x9e\xb0\x86\xcf\x83", true); } // [B2, B3, V7]
1897test { try toUnicodeFail("xn--qp42f.xn--4xa3011w"); } // [B2, B3, V7]3989test { try toUnicodeFail("xn--qp42f.xn--4xa3011w"); } // [B2, B3, V7]
3990test { try toAsciiFail("xn--qp42f.xn--4xa3011w", false); } // [B2, B3, V7]
3991test { try toAsciiFail("xn--qp42f.xn--4xa3011w", true); } // [B2, B3, V7]
1898test { try toUnicodeFail("xn--0ug76062m.xn--4xa595lhn92a"); } // [B1, B6, C1, V7]3992test { try toUnicodeFail("xn--0ug76062m.xn--4xa595lhn92a"); } // [B1, B6, C1, V7]
3993test { try toAsciiFail("xn--0ug76062m.xn--4xa595lhn92a", false); } // [B1, B6, C1, V7]
3994test { try toAsciiFail("xn--0ug76062m.xn--4xa595lhn92a", true); } // [B1, B6, C1, V7]
1899test { try toUnicodeFail("xn--0ug76062m.xn--3xa795lhn92a"); } // [B1, B6, C1, V7]3995test { try toUnicodeFail("xn--0ug76062m.xn--3xa795lhn92a"); } // [B1, B6, C1, V7]
3996test { try toAsciiFail("xn--0ug76062m.xn--3xa795lhn92a", false); } // [B1, B6, C1, V7]
3997test { try toAsciiFail("xn--0ug76062m.xn--3xa795lhn92a", true); } // [B1, B6, C1, V7]
1900test { try toUnicodeFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xef\xbd\xa1\xe2\x80\x8c\xf0\x9e\xb0\x86\xce\xa3"); } // [B1, B6, C1, V7]3998test { try toUnicodeFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xef\xbd\xa1\xe2\x80\x8c\xf0\x9e\xb0\x86\xce\xa3"); } // [B1, B6, C1, V7]
3999test { try toAsciiFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xef\xbd\xa1\xe2\x80\x8c\xf0\x9e\xb0\x86\xce\xa3", false); } // [B1, B6, C1, V7]
4000test { try toAsciiFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xef\xbd\xa1\xe2\x80\x8c\xf0\x9e\xb0\x86\xce\xa3", true); } // [B2, B3, V7]
1901test { try toUnicodeFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xef\xbd\xa1\xe2\x80\x8c\xf0\x9e\xb0\x86\xcf\x83"); } // [B1, B6, C1, V7]4001test { try toUnicodeFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xef\xbd\xa1\xe2\x80\x8c\xf0\x9e\xb0\x86\xcf\x83"); } // [B1, B6, C1, V7]
4002test { try toAsciiFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xef\xbd\xa1\xe2\x80\x8c\xf0\x9e\xb0\x86\xcf\x83", false); } // [B1, B6, C1, V7]
4003test { try toAsciiFail("\xf3\xb2\x9a\x97\xe2\x80\x8c\xef\xbd\xa1\xe2\x80\x8c\xf0\x9e\xb0\x86\xcf\x83", true); } // [B2, B3, V7]
1902test { try toUnicodeFail("\xe5\xa0\x95\xf0\x91\x93\x82\xe1\xac\x82\xe3\x80\x82\xf0\x90\xae\x87\xf0\x9e\xa4\xbd\xe2\x80\x8c-"); } // [B3, C1, V3]4004test { try toUnicodeFail("\xe5\xa0\x95\xf0\x91\x93\x82\xe1\xac\x82\xe3\x80\x82\xf0\x90\xae\x87\xf0\x9e\xa4\xbd\xe2\x80\x8c-"); } // [B3, C1, V3]
4005test { try toAsciiFail("\xe5\xa0\x95\xf0\x91\x93\x82\xe1\xac\x82\xe3\x80\x82\xf0\x90\xae\x87\xf0\x9e\xa4\xbd\xe2\x80\x8c-", false); } // [B3, C1, V3]
4006test { try toAsciiFail("\xe5\xa0\x95\xf0\x91\x93\x82\xe1\xac\x82\xe3\x80\x82\xf0\x90\xae\x87\xf0\x9e\xa4\xbd\xe2\x80\x8c-", true); } // [B3, V3]
1903test { try toUnicodeFail("\xe5\xa0\x95\xf0\x91\x93\x82\xe1\xac\x82\xe3\x80\x82\xf0\x90\xae\x87\xf0\x9e\xa4\x9b\xe2\x80\x8c-"); } // [B3, C1, V3]4007test { try toUnicodeFail("\xe5\xa0\x95\xf0\x91\x93\x82\xe1\xac\x82\xe3\x80\x82\xf0\x90\xae\x87\xf0\x9e\xa4\x9b\xe2\x80\x8c-"); } // [B3, C1, V3]
4008test { try toAsciiFail("\xe5\xa0\x95\xf0\x91\x93\x82\xe1\xac\x82\xe3\x80\x82\xf0\x90\xae\x87\xf0\x9e\xa4\x9b\xe2\x80\x8c-", false); } // [B3, C1, V3]
4009test { try toAsciiFail("\xe5\xa0\x95\xf0\x91\x93\x82\xe1\xac\x82\xe3\x80\x82\xf0\x90\xae\x87\xf0\x9e\xa4\x9b\xe2\x80\x8c-", true); } // [B3, V3]
1904test { try toUnicodeFail("xn--5sf345zdk8h.xn----iv5iw606c"); } // [B3, V3]4010test { try toUnicodeFail("xn--5sf345zdk8h.xn----iv5iw606c"); } // [B3, V3]
4011test { try toAsciiFail("xn--5sf345zdk8h.xn----iv5iw606c", false); } // [B3, V3]
4012test { try toAsciiFail("xn--5sf345zdk8h.xn----iv5iw606c", true); } // [B3, V3]
1905test { try toUnicodeFail("xn--5sf345zdk8h.xn----rgnt157hwl9g"); } // [B3, C1, V3]4013test { try toUnicodeFail("xn--5sf345zdk8h.xn----rgnt157hwl9g"); } // [B3, C1, V3]
4014test { try toAsciiFail("xn--5sf345zdk8h.xn----rgnt157hwl9g", false); } // [B3, C1, V3]
4015test { try toAsciiFail("xn--5sf345zdk8h.xn----rgnt157hwl9g", true); } // [B3, C1, V3]
1906test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xcf\x82\xd8\xaa\xcf\x82"); } // [B1, B5]4016test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xcf\x82\xd8\xaa\xcf\x82"); } // [B1, B5]
4017test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xcf\x82\xd8\xaa\xcf\x82", false); } // [B1, B5]
4018test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xcf\x82\xd8\xaa\xcf\x82", true); } // [B1, B5]
1907test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xcf\x82\xd8\xaa\xcf\x82"); } // [B1, B5]4019test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xcf\x82\xd8\xaa\xcf\x82"); } // [B1, B5]
4020test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xcf\x82\xd8\xaa\xcf\x82", false); } // [B1, B5]
4021test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xcf\x82\xd8\xaa\xcf\x82", true); } // [B1, B5]
1908test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\x80\xe3\x80\x82\xe1\xa1\xa5\xce\xa3\xd8\xaa\xce\xa3"); } // [B1, B5]4022test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\x80\xe3\x80\x82\xe1\xa1\xa5\xce\xa3\xd8\xaa\xce\xa3"); } // [B1, B5]
4023test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\x80\xe3\x80\x82\xe1\xa1\xa5\xce\xa3\xd8\xaa\xce\xa3", false); } // [B1, B5]
4024test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\x80\xe3\x80\x82\xe1\xa1\xa5\xce\xa3\xd8\xaa\xce\xa3", true); } // [B1, B5]
1909test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xcf\x83\xd8\xaa\xcf\x83"); } // [B1, B5]4025test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xcf\x83\xd8\xaa\xcf\x83"); } // [B1, B5]
4026test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xcf\x83\xd8\xaa\xcf\x83", false); } // [B1, B5]
4027test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xcf\x83\xd8\xaa\xcf\x83", true); } // [B1, B5]
1910test { try toUnicodeFail("xn--l8e1317j1ebz456b.xn--4xaa85plx4a"); } // [B1, B5]4028test { try toUnicodeFail("xn--l8e1317j1ebz456b.xn--4xaa85plx4a"); } // [B1, B5]
4029test { try toAsciiFail("xn--l8e1317j1ebz456b.xn--4xaa85plx4a", false); } // [B1, B5]
4030test { try toAsciiFail("xn--l8e1317j1ebz456b.xn--4xaa85plx4a", true); } // [B1, B5]
1911test { try toUnicodeFail("xn--l8e1317j1ebz456b.xn--3xaa16plx4a"); } // [B1, B5]4031test { try toUnicodeFail("xn--l8e1317j1ebz456b.xn--3xaa16plx4a"); } // [B1, B5]
4032test { try toAsciiFail("xn--l8e1317j1ebz456b.xn--3xaa16plx4a", false); } // [B1, B5]
4033test { try toAsciiFail("xn--l8e1317j1ebz456b.xn--3xaa16plx4a", true); } // [B1, B5]
1912test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\x80\xef\xbd\xa1\xe1\xa1\xa5\xce\xa3\xd8\xaa\xce\xa3"); } // [B1, B5]4034test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\x80\xef\xbd\xa1\xe1\xa1\xa5\xce\xa3\xd8\xaa\xce\xa3"); } // [B1, B5]
4035test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\x80\xef\xbd\xa1\xe1\xa1\xa5\xce\xa3\xd8\xaa\xce\xa3", false); } // [B1, B5]
4036test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\x80\xef\xbd\xa1\xe1\xa1\xa5\xce\xa3\xd8\xaa\xce\xa3", true); } // [B1, B5]
1913test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xcf\x83\xd8\xaa\xcf\x83"); } // [B1, B5]4037test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xcf\x83\xd8\xaa\xcf\x83"); } // [B1, B5]
4038test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xcf\x83\xd8\xaa\xcf\x83", false); } // [B1, B5]
4039test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xcf\x83\xd8\xaa\xcf\x83", true); } // [B1, B5]
1914test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xce\xa3\xd8\xaa\xce\xa3"); } // [B1, B5]4040test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xce\xa3\xd8\xaa\xce\xa3"); } // [B1, B5]
4041test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xce\xa3\xd8\xaa\xce\xa3", false); } // [B1, B5]
4042test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xce\xa3\xd8\xaa\xce\xa3", true); } // [B1, B5]
1915test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xce\xa3\xd8\xaa\xcf\x83"); } // [B1, B5]4043test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xce\xa3\xd8\xaa\xcf\x83"); } // [B1, B5]
4044test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xce\xa3\xd8\xaa\xcf\x83", false); } // [B1, B5]
4045test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xce\xa3\xd8\xaa\xcf\x83", true); } // [B1, B5]
1916test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xce\xa3\xd8\xaa\xcf\x82"); } // [B1, B5]4046test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xce\xa3\xd8\xaa\xcf\x82"); } // [B1, B5]
4047test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xce\xa3\xd8\xaa\xcf\x82", false); } // [B1, B5]
4048test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xce\xa3\xd8\xaa\xcf\x82", true); } // [B1, B5]
1917test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xcf\x83\xd8\xaa\xcf\x82"); } // [B1, B5]4049test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xcf\x83\xd8\xaa\xcf\x82"); } // [B1, B5]
4050test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xcf\x83\xd8\xaa\xcf\x82", false); } // [B1, B5]
4051test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xe3\x80\x82\xe1\xa1\xa5\xcf\x83\xd8\xaa\xcf\x82", true); } // [B1, B5]
1918test { try toUnicodeFail("xn--l8e1317j1ebz456b.xn--3xab95plx4a"); } // [B1, B5]4052test { try toUnicodeFail("xn--l8e1317j1ebz456b.xn--3xab95plx4a"); } // [B1, B5]
4053test { try toAsciiFail("xn--l8e1317j1ebz456b.xn--3xab95plx4a", false); } // [B1, B5]
4054test { try toAsciiFail("xn--l8e1317j1ebz456b.xn--3xab95plx4a", true); } // [B1, B5]
1919test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xce\xa3\xd8\xaa\xce\xa3"); } // [B1, B5]4055test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xce\xa3\xd8\xaa\xce\xa3"); } // [B1, B5]
4056test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xce\xa3\xd8\xaa\xce\xa3", false); } // [B1, B5]
4057test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xce\xa3\xd8\xaa\xce\xa3", true); } // [B1, B5]
1920test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xce\xa3\xd8\xaa\xcf\x83"); } // [B1, B5]4058test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xce\xa3\xd8\xaa\xcf\x83"); } // [B1, B5]
4059test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xce\xa3\xd8\xaa\xcf\x83", false); } // [B1, B5]
4060test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xce\xa3\xd8\xaa\xcf\x83", true); } // [B1, B5]
1921test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xce\xa3\xd8\xaa\xcf\x82"); } // [B1, B5]4061test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xce\xa3\xd8\xaa\xcf\x82"); } // [B1, B5]
4062test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xce\xa3\xd8\xaa\xcf\x82", false); } // [B1, B5]
4063test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xce\xa3\xd8\xaa\xcf\x82", true); } // [B1, B5]
1922test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xcf\x83\xd8\xaa\xcf\x82"); } // [B1, B5]4064test { try toUnicodeFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xcf\x83\xd8\xaa\xcf\x82"); } // [B1, B5]
4065test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xcf\x83\xd8\xaa\xcf\x82", false); } // [B1, B5]
4066test { try toAsciiFail("\xf0\x90\xb9\xb6\xf0\x91\x81\x86\xe1\xa1\x95\xf0\x9e\xa4\xa2\xef\xbd\xa1\xe1\xa1\xa5\xcf\x83\xd8\xaa\xcf\x82", true); } // [B1, B5]
1923test { try toUnicodeFail("\xf3\x8f\x92\xb0\xef\xbc\x8e-\xf0\x9d\x9f\xbb\xc3\x9f"); } // [V3, V7]4067test { try toUnicodeFail("\xf3\x8f\x92\xb0\xef\xbc\x8e-\xf0\x9d\x9f\xbb\xc3\x9f"); } // [V3, V7]
4068test { try toAsciiFail("\xf3\x8f\x92\xb0\xef\xbc\x8e-\xf0\x9d\x9f\xbb\xc3\x9f", false); } // [V3, V7]
4069test { try toAsciiFail("\xf3\x8f\x92\xb0\xef\xbc\x8e-\xf0\x9d\x9f\xbb\xc3\x9f", true); } // [V3, V7]
1924test { try toUnicodeFail("\xf3\x8f\x92\xb0.-5\xc3\x9f"); } // [V3, V7]4070test { try toUnicodeFail("\xf3\x8f\x92\xb0.-5\xc3\x9f"); } // [V3, V7]
4071test { try toAsciiFail("\xf3\x8f\x92\xb0.-5\xc3\x9f", false); } // [V3, V7]
4072test { try toAsciiFail("\xf3\x8f\x92\xb0.-5\xc3\x9f", true); } // [V3, V7]
1925test { try toUnicodeFail("\xf3\x8f\x92\xb0.-5SS"); } // [V3, V7]4073test { try toUnicodeFail("\xf3\x8f\x92\xb0.-5SS"); } // [V3, V7]
4074test { try toAsciiFail("\xf3\x8f\x92\xb0.-5SS", false); } // [V3, V7]
4075test { try toAsciiFail("\xf3\x8f\x92\xb0.-5SS", true); } // [V3, V7]
1926test { try toUnicodeFail("\xf3\x8f\x92\xb0.-5ss"); } // [V3, V7]4076test { try toUnicodeFail("\xf3\x8f\x92\xb0.-5ss"); } // [V3, V7]
4077test { try toAsciiFail("\xf3\x8f\x92\xb0.-5ss", false); } // [V3, V7]
4078test { try toAsciiFail("\xf3\x8f\x92\xb0.-5ss", true); } // [V3, V7]
1927test { try toUnicodeFail("xn--t960e.-5ss"); } // [V3, V7]4079test { try toUnicodeFail("xn--t960e.-5ss"); } // [V3, V7]
4080test { try toAsciiFail("xn--t960e.-5ss", false); } // [V3, V7]
4081test { try toAsciiFail("xn--t960e.-5ss", true); } // [V3, V7]
1928test { try toUnicodeFail("xn--t960e.xn---5-hia"); } // [V3, V7]4082test { try toUnicodeFail("xn--t960e.xn---5-hia"); } // [V3, V7]
4083test { try toAsciiFail("xn--t960e.xn---5-hia", false); } // [V3, V7]
4084test { try toAsciiFail("xn--t960e.xn---5-hia", true); } // [V3, V7]
1929test { try toUnicodeFail("\xf3\x8f\x92\xb0\xef\xbc\x8e-\xf0\x9d\x9f\xbbSS"); } // [V3, V7]4085test { try toUnicodeFail("\xf3\x8f\x92\xb0\xef\xbc\x8e-\xf0\x9d\x9f\xbbSS"); } // [V3, V7]
4086test { try toAsciiFail("\xf3\x8f\x92\xb0\xef\xbc\x8e-\xf0\x9d\x9f\xbbSS", false); } // [V3, V7]
4087test { try toAsciiFail("\xf3\x8f\x92\xb0\xef\xbc\x8e-\xf0\x9d\x9f\xbbSS", true); } // [V3, V7]
1930test { try toUnicodeFail("\xf3\x8f\x92\xb0\xef\xbc\x8e-\xf0\x9d\x9f\xbbss"); } // [V3, V7]4088test { try toUnicodeFail("\xf3\x8f\x92\xb0\xef\xbc\x8e-\xf0\x9d\x9f\xbbss"); } // [V3, V7]
4089test { try toAsciiFail("\xf3\x8f\x92\xb0\xef\xbc\x8e-\xf0\x9d\x9f\xbbss", false); } // [V3, V7]
4090test { try toAsciiFail("\xf3\x8f\x92\xb0\xef\xbc\x8e-\xf0\x9d\x9f\xbbss", true); } // [V3, V7]
1931test { try toUnicodeFail("\xf3\x8f\x92\xb0\xef\xbc\x8e-\xf0\x9d\x9f\xbbSs"); } // [V3, V7]4091test { try toUnicodeFail("\xf3\x8f\x92\xb0\xef\xbc\x8e-\xf0\x9d\x9f\xbbSs"); } // [V3, V7]
4092test { try toAsciiFail("\xf3\x8f\x92\xb0\xef\xbc\x8e-\xf0\x9d\x9f\xbbSs", false); } // [V3, V7]
4093test { try toAsciiFail("\xf3\x8f\x92\xb0\xef\xbc\x8e-\xf0\x9d\x9f\xbbSs", true); } // [V3, V7]
1932test { try toUnicodeFail("\xf3\x8f\x92\xb0.-5Ss"); } // [V3, V7]4094test { try toUnicodeFail("\xf3\x8f\x92\xb0.-5Ss"); } // [V3, V7]
4095test { try toAsciiFail("\xf3\x8f\x92\xb0.-5Ss", false); } // [V3, V7]
4096test { try toAsciiFail("\xf3\x8f\x92\xb0.-5Ss", true); } // [V3, V7]
1933test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xa8\xbf.\xf0\x9f\xa4\x92\xe1\x83\x85\xf2\x91\xae\xb6"); } // [C2, V7]4097test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xa8\xbf.\xf0\x9f\xa4\x92\xe1\x83\x85\xf2\x91\xae\xb6"); } // [C2, V7]
4098test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xa8\xbf.\xf0\x9f\xa4\x92\xe1\x83\x85\xf2\x91\xae\xb6", false); } // [C2, V7]
4099test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xa8\xbf.\xf0\x9f\xa4\x92\xe1\x83\x85\xf2\x91\xae\xb6", true); } // [V6, V7]
1934test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xa8\xbf.\xf0\x9f\xa4\x92\xe2\xb4\xa5\xf2\x91\xae\xb6"); } // [C2, V7]4100test { try toUnicodeFail("\xe2\x80\x8d\xf0\x90\xa8\xbf.\xf0\x9f\xa4\x92\xe2\xb4\xa5\xf2\x91\xae\xb6"); } // [C2, V7]
4101test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xa8\xbf.\xf0\x9f\xa4\x92\xe2\xb4\xa5\xf2\x91\xae\xb6", false); } // [C2, V7]
4102test { try toAsciiFail("\xe2\x80\x8d\xf0\x90\xa8\xbf.\xf0\x9f\xa4\x92\xe2\xb4\xa5\xf2\x91\xae\xb6", true); } // [V6, V7]
1935test { try toUnicodeFail("xn--0s9c.xn--tljz038l0gz4b"); } // [V6, V7]4103test { try toUnicodeFail("xn--0s9c.xn--tljz038l0gz4b"); } // [V6, V7]
4104test { try toAsciiFail("xn--0s9c.xn--tljz038l0gz4b", false); } // [V6, V7]
4105test { try toAsciiFail("xn--0s9c.xn--tljz038l0gz4b", true); } // [V6, V7]
1936test { try toUnicodeFail("xn--1ug9533g.xn--tljz038l0gz4b"); } // [C2, V7]4106test { try toUnicodeFail("xn--1ug9533g.xn--tljz038l0gz4b"); } // [C2, V7]
4107test { try toAsciiFail("xn--1ug9533g.xn--tljz038l0gz4b", false); } // [C2, V7]
4108test { try toAsciiFail("xn--1ug9533g.xn--tljz038l0gz4b", true); } // [C2, V7]
1937test { try toUnicodeFail("xn--0s9c.xn--9nd3211w0gz4b"); } // [V6, V7]4109test { try toUnicodeFail("xn--0s9c.xn--9nd3211w0gz4b"); } // [V6, V7]
4110test { try toAsciiFail("xn--0s9c.xn--9nd3211w0gz4b", false); } // [V6, V7]
4111test { try toAsciiFail("xn--0s9c.xn--9nd3211w0gz4b", true); } // [V6, V7]
1938test { try toUnicodeFail("xn--1ug9533g.xn--9nd3211w0gz4b"); } // [C2, V7]4112test { try toUnicodeFail("xn--1ug9533g.xn--9nd3211w0gz4b"); } // [C2, V7]
4113test { try toAsciiFail("xn--1ug9533g.xn--9nd3211w0gz4b", false); } // [C2, V7]
4114test { try toAsciiFail("xn--1ug9533g.xn--9nd3211w0gz4b", true); } // [C2, V7]
1939test { try toUnicodeFail("\xf0\xb5\x8b\x85\xe3\x80\x82\xc3\x9f\xf0\xac\xb5\xa9\xe2\x80\x8d"); } // [C2, V7]4115test { try toUnicodeFail("\xf0\xb5\x8b\x85\xe3\x80\x82\xc3\x9f\xf0\xac\xb5\xa9\xe2\x80\x8d"); } // [C2, V7]
4116test { try toAsciiFail("\xf0\xb5\x8b\x85\xe3\x80\x82\xc3\x9f\xf0\xac\xb5\xa9\xe2\x80\x8d", false); } // [C2, V7]
4117test { try toAsciiFail("\xf0\xb5\x8b\x85\xe3\x80\x82\xc3\x9f\xf0\xac\xb5\xa9\xe2\x80\x8d", true); } // [V7]
1940test { try toUnicodeFail("\xf0\xb5\x8b\x85\xe3\x80\x82SS\xf0\xac\xb5\xa9\xe2\x80\x8d"); } // [C2, V7]4118test { try toUnicodeFail("\xf0\xb5\x8b\x85\xe3\x80\x82SS\xf0\xac\xb5\xa9\xe2\x80\x8d"); } // [C2, V7]
4119test { try toAsciiFail("\xf0\xb5\x8b\x85\xe3\x80\x82SS\xf0\xac\xb5\xa9\xe2\x80\x8d", false); } // [C2, V7]
4120test { try toAsciiFail("\xf0\xb5\x8b\x85\xe3\x80\x82SS\xf0\xac\xb5\xa9\xe2\x80\x8d", true); } // [V7]
1941test { try toUnicodeFail("\xf0\xb5\x8b\x85\xe3\x80\x82ss\xf0\xac\xb5\xa9\xe2\x80\x8d"); } // [C2, V7]4121test { try toUnicodeFail("\xf0\xb5\x8b\x85\xe3\x80\x82ss\xf0\xac\xb5\xa9\xe2\x80\x8d"); } // [C2, V7]
4122test { try toAsciiFail("\xf0\xb5\x8b\x85\xe3\x80\x82ss\xf0\xac\xb5\xa9\xe2\x80\x8d", false); } // [C2, V7]
4123test { try toAsciiFail("\xf0\xb5\x8b\x85\xe3\x80\x82ss\xf0\xac\xb5\xa9\xe2\x80\x8d", true); } // [V7]
1942test { try toUnicodeFail("\xf0\xb5\x8b\x85\xe3\x80\x82Ss\xf0\xac\xb5\xa9\xe2\x80\x8d"); } // [C2, V7]4124test { try toUnicodeFail("\xf0\xb5\x8b\x85\xe3\x80\x82Ss\xf0\xac\xb5\xa9\xe2\x80\x8d"); } // [C2, V7]
4125test { try toAsciiFail("\xf0\xb5\x8b\x85\xe3\x80\x82Ss\xf0\xac\xb5\xa9\xe2\x80\x8d", false); } // [C2, V7]
4126test { try toAsciiFail("\xf0\xb5\x8b\x85\xe3\x80\x82Ss\xf0\xac\xb5\xa9\xe2\x80\x8d", true); } // [V7]
1943test { try toUnicodeFail("xn--ey1p.xn--ss-eq36b"); } // [V7]4127test { try toUnicodeFail("xn--ey1p.xn--ss-eq36b"); } // [V7]
4128test { try toAsciiFail("xn--ey1p.xn--ss-eq36b", false); } // [V7]
4129test { try toAsciiFail("xn--ey1p.xn--ss-eq36b", true); } // [V7]
1944test { try toUnicodeFail("xn--ey1p.xn--ss-n1tx0508a"); } // [C2, V7]4130test { try toUnicodeFail("xn--ey1p.xn--ss-n1tx0508a"); } // [C2, V7]
4131test { try toAsciiFail("xn--ey1p.xn--ss-n1tx0508a", false); } // [C2, V7]
4132test { try toAsciiFail("xn--ey1p.xn--ss-n1tx0508a", true); } // [C2, V7]
1945test { try toUnicodeFail("xn--ey1p.xn--zca870nz438b"); } // [C2, V7]4133test { try toUnicodeFail("xn--ey1p.xn--zca870nz438b"); } // [C2, V7]
4134test { try toAsciiFail("xn--ey1p.xn--zca870nz438b", false); } // [C2, V7]
4135test { try toAsciiFail("xn--ey1p.xn--zca870nz438b", true); } // [C2, V7]
1946test { try toUnicodeFail("\xe2\x80\x8c\xf0\xad\x89\x9d\xe3\x80\x82\xdf\xb1\xcc\x81\xf0\x9e\xb9\xbb"); } // [B1, C1, V6]4136test { try toUnicodeFail("\xe2\x80\x8c\xf0\xad\x89\x9d\xe3\x80\x82\xdf\xb1\xcc\x81\xf0\x9e\xb9\xbb"); } // [B1, C1, V6]
4137test { try toAsciiFail("\xe2\x80\x8c\xf0\xad\x89\x9d\xe3\x80\x82\xdf\xb1\xcc\x81\xf0\x9e\xb9\xbb", false); } // [B1, C1, V6]
4138test { try toAsciiFail("\xe2\x80\x8c\xf0\xad\x89\x9d\xe3\x80\x82\xdf\xb1\xcc\x81\xf0\x9e\xb9\xbb", true); } // [B1, V6]
1947test { try toUnicodeFail("\xe2\x80\x8c\xf0\xad\x89\x9d\xe3\x80\x82\xdf\xb1\xcc\x81\xd8\xba"); } // [B1, C1, V6]4139test { try toUnicodeFail("\xe2\x80\x8c\xf0\xad\x89\x9d\xe3\x80\x82\xdf\xb1\xcc\x81\xd8\xba"); } // [B1, C1, V6]
4140test { try toAsciiFail("\xe2\x80\x8c\xf0\xad\x89\x9d\xe3\x80\x82\xdf\xb1\xcc\x81\xd8\xba", false); } // [B1, C1, V6]
4141test { try toAsciiFail("\xe2\x80\x8c\xf0\xad\x89\x9d\xe3\x80\x82\xdf\xb1\xcc\x81\xd8\xba", true); } // [B1, V6]
1948test { try toUnicodeFail("xn--634m.xn--lsa46nuub"); } // [B1, V6]4142test { try toUnicodeFail("xn--634m.xn--lsa46nuub"); } // [B1, V6]
4143test { try toAsciiFail("xn--634m.xn--lsa46nuub", false); } // [B1, V6]
4144test { try toAsciiFail("xn--634m.xn--lsa46nuub", true); } // [B1, V6]
1949test { try toUnicodeFail("xn--0ugy003y.xn--lsa46nuub"); } // [B1, C1, V6]4145test { try toUnicodeFail("xn--0ugy003y.xn--lsa46nuub"); } // [B1, C1, V6]
4146test { try toAsciiFail("xn--0ugy003y.xn--lsa46nuub", false); } // [B1, C1, V6]
4147test { try toAsciiFail("xn--0ugy003y.xn--lsa46nuub", true); } // [B1, C1, V6]
1950test { try toUnicodeFail("\xf0\x9e\xbc\x8c\xe2\x80\x8c\xf0\x91\x88\xb6\xe3\x80\x82\xf0\x90\xb9\xa1"); } // [B1, B3, C1, V7]4148test { try toUnicodeFail("\xf0\x9e\xbc\x8c\xe2\x80\x8c\xf0\x91\x88\xb6\xe3\x80\x82\xf0\x90\xb9\xa1"); } // [B1, B3, C1, V7]
4149test { try toAsciiFail("\xf0\x9e\xbc\x8c\xe2\x80\x8c\xf0\x91\x88\xb6\xe3\x80\x82\xf0\x90\xb9\xa1", false); } // [B1, B3, C1, V7]
4150test { try toAsciiFail("\xf0\x9e\xbc\x8c\xe2\x80\x8c\xf0\x91\x88\xb6\xe3\x80\x82\xf0\x90\xb9\xa1", true); } // [B1, V7]
1951test { try toUnicodeFail("xn--9g1d1288a.xn--8n0d"); } // [B1, V7]4151test { try toUnicodeFail("xn--9g1d1288a.xn--8n0d"); } // [B1, V7]
4152test { try toAsciiFail("xn--9g1d1288a.xn--8n0d", false); } // [B1, V7]
4153test { try toAsciiFail("xn--9g1d1288a.xn--8n0d", true); } // [B1, V7]
1952test { try toUnicodeFail("xn--0ug7946gzpxf.xn--8n0d"); } // [B1, B3, C1, V7]4154test { try toUnicodeFail("xn--0ug7946gzpxf.xn--8n0d"); } // [B1, B3, C1, V7]
4155test { try toAsciiFail("xn--0ug7946gzpxf.xn--8n0d", false); } // [B1, B3, C1, V7]
4156test { try toAsciiFail("xn--0ug7946gzpxf.xn--8n0d", true); } // [B1, B3, C1, V7]
1953test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x82\xe2\x89\xa0"); } // [C1, V6, V7]4157test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x82\xe2\x89\xa0"); } // [C1, V6, V7]
4158test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x82\xe2\x89\xa0", false); } // [C1, V6, V7]
4159test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x82\xe2\x89\xa0", true); } // [V6, V7]
1954test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x82=\xcc\xb8"); } // [C1, V6, V7]4160test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x82=\xcc\xb8"); } // [C1, V6, V7]
4161test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x82=\xcc\xb8", false); } // [C1, V6, V7]
4162test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x82=\xcc\xb8", true); } // [V6, V7]
1955test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x82\xe2\x89\xa0"); } // [C1, V6, V7]4163test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x82\xe2\x89\xa0"); } // [C1, V6, V7]
4164test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x82\xe2\x89\xa0", false); } // [C1, V6, V7]
4165test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x82\xe2\x89\xa0", true); } // [V6, V7]
1956test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x82=\xcc\xb8"); } // [C1, V6, V7]4166test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x82=\xcc\xb8"); } // [C1, V6, V7]
4167test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x82=\xcc\xb8", false); } // [C1, V6, V7]
4168test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x82=\xcc\xb8", true); } // [V6, V7]
1957test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xce\xa3=\xcc\xb8"); } // [C1, V6, V7]4169test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xce\xa3=\xcc\xb8"); } // [C1, V6, V7]
4170test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xce\xa3=\xcc\xb8", false); } // [C1, V6, V7]
4171test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xce\xa3=\xcc\xb8", true); } // [V6, V7]
1958test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xce\xa3\xe2\x89\xa0"); } // [C1, V6, V7]4172test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xce\xa3\xe2\x89\xa0"); } // [C1, V6, V7]
4173test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xce\xa3\xe2\x89\xa0", false); } // [C1, V6, V7]
4174test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xce\xa3\xe2\x89\xa0", true); } // [V6, V7]
1959test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x83\xe2\x89\xa0"); } // [C1, V6, V7]4175test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x83\xe2\x89\xa0"); } // [C1, V6, V7]
4176test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x83\xe2\x89\xa0", false); } // [C1, V6, V7]
4177test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x83\xe2\x89\xa0", true); } // [V6, V7]
1960test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x83=\xcc\xb8"); } // [C1, V6, V7]4178test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x83=\xcc\xb8"); } // [C1, V6, V7]
4179test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x83=\xcc\xb8", false); } // [C1, V6, V7]
4180test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xe3\x80\x82\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x83=\xcc\xb8", true); } // [V6, V7]
1961test { try toUnicodeFail("xn--zb9h5968x.xn--4xa378i1mfjw7y"); } // [V6, V7]4181test { try toUnicodeFail("xn--zb9h5968x.xn--4xa378i1mfjw7y"); } // [V6, V7]
4182test { try toAsciiFail("xn--zb9h5968x.xn--4xa378i1mfjw7y", false); } // [V6, V7]
4183test { try toAsciiFail("xn--zb9h5968x.xn--4xa378i1mfjw7y", true); } // [V6, V7]
1962test { try toUnicodeFail("xn--0ug3766p5nm1b.xn--4xa378i1mfjw7y"); } // [C1, V6, V7]4184test { try toUnicodeFail("xn--0ug3766p5nm1b.xn--4xa378i1mfjw7y"); } // [C1, V6, V7]
4185test { try toAsciiFail("xn--0ug3766p5nm1b.xn--4xa378i1mfjw7y", false); } // [C1, V6, V7]
4186test { try toAsciiFail("xn--0ug3766p5nm1b.xn--4xa378i1mfjw7y", true); } // [C1, V6, V7]
1963test { try toUnicodeFail("xn--0ug3766p5nm1b.xn--3xa578i1mfjw7y"); } // [C1, V6, V7]4187test { try toUnicodeFail("xn--0ug3766p5nm1b.xn--3xa578i1mfjw7y"); } // [C1, V6, V7]
4188test { try toAsciiFail("xn--0ug3766p5nm1b.xn--3xa578i1mfjw7y", false); } // [C1, V6, V7]
4189test { try toAsciiFail("xn--0ug3766p5nm1b.xn--3xa578i1mfjw7y", true); } // [C1, V6, V7]
1964test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xce\xa3=\xcc\xb8"); } // [C1, V6, V7]4190test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xce\xa3=\xcc\xb8"); } // [C1, V6, V7]
4191test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xce\xa3=\xcc\xb8", false); } // [C1, V6, V7]
4192test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xce\xa3=\xcc\xb8", true); } // [V6, V7]
1965test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xce\xa3\xe2\x89\xa0"); } // [C1, V6, V7]4193test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xce\xa3\xe2\x89\xa0"); } // [C1, V6, V7]
4194test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xce\xa3\xe2\x89\xa0", false); } // [C1, V6, V7]
4195test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xce\xa3\xe2\x89\xa0", true); } // [V6, V7]
1966test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x83\xe2\x89\xa0"); } // [C1, V6, V7]4196test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x83\xe2\x89\xa0"); } // [C1, V6, V7]
4197test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x83\xe2\x89\xa0", false); } // [C1, V6, V7]
4198test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x83\xe2\x89\xa0", true); } // [V6, V7]
1967test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x83=\xcc\xb8"); } // [C1, V6, V7]4199test { try toUnicodeFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x83=\xcc\xb8"); } // [C1, V6, V7]
4200test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x83=\xcc\xb8", false); } // [C1, V6, V7]
4201test { try toAsciiFail("\xf3\xa0\x85\xaf\xf2\x87\xbd\xad\xe2\x80\x8c\xf0\x9f\x9c\xad\xef\xbd\xa1\xf0\x91\x96\xbf\xe1\xaa\xbb\xcf\x83=\xcc\xb8", true); } // [V6, V7]
1968test { try toUnicodeFail("\xe2\x92\x8b\xef\xbd\xa1\xe2\x92\x88\xe2\x80\x8d\xf2\xb3\xb4\xa2"); } // [C2, V7]4202test { try toUnicodeFail("\xe2\x92\x8b\xef\xbd\xa1\xe2\x92\x88\xe2\x80\x8d\xf2\xb3\xb4\xa2"); } // [C2, V7]
4203test { try toAsciiFail("\xe2\x92\x8b\xef\xbd\xa1\xe2\x92\x88\xe2\x80\x8d\xf2\xb3\xb4\xa2", false); } // [C2, V7]
4204test { try toAsciiFail("\xe2\x92\x8b\xef\xbd\xa1\xe2\x92\x88\xe2\x80\x8d\xf2\xb3\xb4\xa2", true); } // [V7]
1969test { try toUnicodeFail("4.\xe3\x80\x821.\xe2\x80\x8d\xf2\xb3\xb4\xa2"); } // [C2, V7, X4_2]4205test { try toUnicodeFail("4.\xe3\x80\x821.\xe2\x80\x8d\xf2\xb3\xb4\xa2"); } // [C2, V7, X4_2]
4206test { try toAsciiFail("4.\xe3\x80\x821.\xe2\x80\x8d\xf2\xb3\xb4\xa2", false); } // [C2, V7, A4_2]
4207test { try toAsciiFail("4.\xe3\x80\x821.\xe2\x80\x8d\xf2\xb3\xb4\xa2", true); } // [V7, A4_2]
1970test { try toUnicodeFail("4..1.xn--sf51d"); } // [V7, X4_2]4208test { try toUnicodeFail("4..1.xn--sf51d"); } // [V7, X4_2]
4209test { try toAsciiFail("4..1.xn--sf51d", false); } // [V7, A4_2]
4210test { try toAsciiFail("4..1.xn--sf51d", true); } // [V7, A4_2]
1971test { try toUnicodeFail("4..1.xn--1ug64613i"); } // [C2, V7, X4_2]4211test { try toUnicodeFail("4..1.xn--1ug64613i"); } // [C2, V7, X4_2]
4212test { try toAsciiFail("4..1.xn--1ug64613i", false); } // [C2, V7, A4_2]
4213test { try toAsciiFail("4..1.xn--1ug64613i", true); } // [C2, V7, A4_2]
1972test { try toUnicodeFail("xn--wsh.xn--tsh07994h"); } // [V7]4214test { try toUnicodeFail("xn--wsh.xn--tsh07994h"); } // [V7]
4215test { try toAsciiFail("xn--wsh.xn--tsh07994h", false); } // [V7]
4216test { try toAsciiFail("xn--wsh.xn--tsh07994h", true); } // [V7]
1973test { try toUnicodeFail("xn--wsh.xn--1ug58o74922a"); } // [C2, V7]4217test { try toUnicodeFail("xn--wsh.xn--1ug58o74922a"); } // [C2, V7]
4218test { try toAsciiFail("xn--wsh.xn--1ug58o74922a", false); } // [C2, V7]
4219test { try toAsciiFail("xn--wsh.xn--1ug58o74922a", true); } // [C2, V7]
1974test { try toUnicodeFail("\xd9\x84\xc3\x9f\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]4220test { try toUnicodeFail("\xd9\x84\xc3\x9f\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]
4221test { try toAsciiFail("\xd9\x84\xc3\x9f\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", false); } // [B1, B2, B3, V6, V7]
4222test { try toAsciiFail("\xd9\x84\xc3\x9f\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", true); } // [B1, B2, B3, V6, V7]
1975test { try toUnicodeFail("\xd9\x84\xc3\x9f\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]4223test { try toUnicodeFail("\xd9\x84\xc3\x9f\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]
4224test { try toAsciiFail("\xd9\x84\xc3\x9f\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", false); } // [B1, B2, B3, V6, V7]
4225test { try toAsciiFail("\xd9\x84\xc3\x9f\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", true); } // [B1, B2, B3, V6, V7]
1976test { try toUnicodeFail("\xd9\x84\xc3\x9f\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]4226test { try toUnicodeFail("\xd9\x84\xc3\x9f\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]
4227test { try toAsciiFail("\xd9\x84\xc3\x9f\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", false); } // [B1, B2, B3, V6, V7]
4228test { try toAsciiFail("\xd9\x84\xc3\x9f\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", true); } // [B1, B2, B3, V6, V7]
1977test { try toUnicodeFail("\xd9\x84SS\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c"); } // [B1, B2, B3, V6, V7]4229test { try toUnicodeFail("\xd9\x84SS\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c"); } // [B1, B2, B3, V6, V7]
4230test { try toAsciiFail("\xd9\x84SS\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c", false); } // [B1, B2, B3, V6, V7]
4231test { try toAsciiFail("\xd9\x84SS\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c", true); } // [B1, B2, B3, V6, V7]
1978test { try toUnicodeFail("\xd9\x84ss\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]4232test { try toUnicodeFail("\xd9\x84ss\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]
4233test { try toAsciiFail("\xd9\x84ss\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", false); } // [B1, B2, B3, V6, V7]
4234test { try toAsciiFail("\xd9\x84ss\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", true); } // [B1, B2, B3, V6, V7]
1979test { try toUnicodeFail("\xd9\x84ss\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c"); } // [B1, B2, B3, V6, V7]4235test { try toUnicodeFail("\xd9\x84ss\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c"); } // [B1, B2, B3, V6, V7]
4236test { try toAsciiFail("\xd9\x84ss\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c", false); } // [B1, B2, B3, V6, V7]
4237test { try toAsciiFail("\xd9\x84ss\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c", true); } // [B1, B2, B3, V6, V7]
1980test { try toUnicodeFail("xn--ss-svd.xn--jof2298hn83fln78f"); } // [B1, B2, B3, V6, V7]4238test { try toUnicodeFail("xn--ss-svd.xn--jof2298hn83fln78f"); } // [B1, B2, B3, V6, V7]
4239test { try toAsciiFail("xn--ss-svd.xn--jof2298hn83fln78f", false); } // [B1, B2, B3, V6, V7]
4240test { try toAsciiFail("xn--ss-svd.xn--jof2298hn83fln78f", true); } // [B1, B2, B3, V6, V7]
1981test { try toUnicodeFail("\xd9\x84\xc3\x9f\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c"); } // [B1, B2, B3, V6, V7]4241test { try toUnicodeFail("\xd9\x84\xc3\x9f\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c"); } // [B1, B2, B3, V6, V7]
4242test { try toAsciiFail("\xd9\x84\xc3\x9f\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c", false); } // [B1, B2, B3, V6, V7]
4243test { try toAsciiFail("\xd9\x84\xc3\x9f\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c", true); } // [B1, B2, B3, V6, V7]
1982test { try toUnicodeFail("xn--zca57y.xn--jof2298hn83fln78f"); } // [B1, B2, B3, V6, V7]4244test { try toUnicodeFail("xn--zca57y.xn--jof2298hn83fln78f"); } // [B1, B2, B3, V6, V7]
4245test { try toAsciiFail("xn--zca57y.xn--jof2298hn83fln78f", false); } // [B1, B2, B3, V6, V7]
4246test { try toAsciiFail("xn--zca57y.xn--jof2298hn83fln78f", true); } // [B1, B2, B3, V6, V7]
1983test { try toUnicodeFail("\xd9\x84SS\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c"); } // [B1, B2, B3, V6, V7]4247test { try toUnicodeFail("\xd9\x84SS\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c"); } // [B1, B2, B3, V6, V7]
4248test { try toAsciiFail("\xd9\x84SS\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c", false); } // [B1, B2, B3, V6, V7]
4249test { try toAsciiFail("\xd9\x84SS\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c", true); } // [B1, B2, B3, V6, V7]
1984test { try toUnicodeFail("\xd9\x84ss\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]4250test { try toUnicodeFail("\xd9\x84ss\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]
4251test { try toAsciiFail("\xd9\x84ss\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", false); } // [B1, B2, B3, V6, V7]
4252test { try toAsciiFail("\xd9\x84ss\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", true); } // [B1, B2, B3, V6, V7]
1985test { try toUnicodeFail("\xd9\x84ss\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c"); } // [B1, B2, B3, V6, V7]4253test { try toUnicodeFail("\xd9\x84ss\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c"); } // [B1, B2, B3, V6, V7]
4254test { try toAsciiFail("\xd9\x84ss\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c", false); } // [B1, B2, B3, V6, V7]
4255test { try toAsciiFail("\xd9\x84ss\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c", true); } // [B1, B2, B3, V6, V7]
1986test { try toUnicodeFail("\xd9\x84\xc3\x9f\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c"); } // [B1, B2, B3, V6, V7]4256test { try toUnicodeFail("\xd9\x84\xc3\x9f\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c"); } // [B1, B2, B3, V6, V7]
4257test { try toAsciiFail("\xd9\x84\xc3\x9f\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c", false); } // [B1, B2, B3, V6, V7]
4258test { try toAsciiFail("\xd9\x84\xc3\x9f\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c", true); } // [B1, B2, B3, V6, V7]
1987test { try toUnicodeFail("\xd9\x84SS\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c"); } // [B1, B2, B3, V6, V7]4259test { try toUnicodeFail("\xd9\x84SS\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c"); } // [B1, B2, B3, V6, V7]
4260test { try toAsciiFail("\xd9\x84SS\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c", false); } // [B1, B2, B3, V6, V7]
4261test { try toAsciiFail("\xd9\x84SS\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c", true); } // [B1, B2, B3, V6, V7]
1988test { try toUnicodeFail("\xd9\x84ss\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]4262test { try toUnicodeFail("\xd9\x84ss\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]
4263test { try toAsciiFail("\xd9\x84ss\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", false); } // [B1, B2, B3, V6, V7]
4264test { try toAsciiFail("\xd9\x84ss\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", true); } // [B1, B2, B3, V6, V7]
1989test { try toUnicodeFail("\xd9\x84ss\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c"); } // [B1, B2, B3, V6, V7]4265test { try toUnicodeFail("\xd9\x84ss\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c"); } // [B1, B2, B3, V6, V7]
4266test { try toAsciiFail("\xd9\x84ss\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c", false); } // [B1, B2, B3, V6, V7]
4267test { try toAsciiFail("\xd9\x84ss\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c", true); } // [B1, B2, B3, V6, V7]
1990test { try toUnicodeFail("\xd9\x84\xc3\x9f\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c"); } // [B1, B2, B3, V6, V7]4268test { try toUnicodeFail("\xd9\x84\xc3\x9f\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c"); } // [B1, B2, B3, V6, V7]
4269test { try toAsciiFail("\xd9\x84\xc3\x9f\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c", false); } // [B1, B2, B3, V6, V7]
4270test { try toAsciiFail("\xd9\x84\xc3\x9f\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\x9c", true); } // [B1, B2, B3, V6, V7]
1991test { try toUnicodeFail("\xd9\x84SS\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]4271test { try toUnicodeFail("\xd9\x84SS\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]
4272test { try toAsciiFail("\xd9\x84SS\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", false); } // [B1, B2, B3, V6, V7]
4273test { try toAsciiFail("\xd9\x84SS\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", true); } // [B1, B2, B3, V6, V7]
1992test { try toUnicodeFail("\xd9\x84Ss\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]4274test { try toUnicodeFail("\xd9\x84Ss\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]
4275test { try toAsciiFail("\xd9\x84Ss\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", false); } // [B1, B2, B3, V6, V7]
4276test { try toAsciiFail("\xd9\x84Ss\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", true); } // [B1, B2, B3, V6, V7]
1993test { try toUnicodeFail("\xd9\x84SS\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]4277test { try toUnicodeFail("\xd9\x84SS\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]
4278test { try toAsciiFail("\xd9\x84SS\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", false); } // [B1, B2, B3, V6, V7]
4279test { try toAsciiFail("\xd9\x84SS\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", true); } // [B1, B2, B3, V6, V7]
1994test { try toUnicodeFail("\xd9\x84Ss\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]4280test { try toUnicodeFail("\xd9\x84Ss\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]
4281test { try toAsciiFail("\xd9\x84Ss\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", false); } // [B1, B2, B3, V6, V7]
4282test { try toAsciiFail("\xd9\x84Ss\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\x87\xbd\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", true); } // [B1, B2, B3, V6, V7]
1995test { try toUnicodeFail("\xd9\x84SS\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]4283test { try toUnicodeFail("\xd9\x84SS\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]
4284test { try toAsciiFail("\xd9\x84SS\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", false); } // [B1, B2, B3, V6, V7]
4285test { try toAsciiFail("\xd9\x84SS\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", true); } // [B1, B2, B3, V6, V7]
1996test { try toUnicodeFail("\xd9\x84Ss\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]4286test { try toUnicodeFail("\xd9\x84Ss\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe"); } // [B1, B2, B3, V6, V7]
4287test { try toAsciiFail("\xd9\x84Ss\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", false); } // [B1, B2, B3, V6, V7]
4288test { try toAsciiFail("\xd9\x84Ss\xef\xbd\xa1\xf0\x90\x87\xbd\xe1\xa9\xa0\xf2\xbe\x85\xa2\xf0\x9e\xa4\xbe", true); } // [B1, B2, B3, V6, V7]
1997test { try toUnicodeFail("\xf0\x90\xb9\xbd\xf0\x91\x84\xb3\xf1\xbc\x9c\xb2.\xe1\xb7\x9f\xe1\x9e\xb8\xea\xa0\x86\xf0\x91\x9c\xab"); } // [B1, V6, V7]4289test { try toUnicodeFail("\xf0\x90\xb9\xbd\xf0\x91\x84\xb3\xf1\xbc\x9c\xb2.\xe1\xb7\x9f\xe1\x9e\xb8\xea\xa0\x86\xf0\x91\x9c\xab"); } // [B1, V6, V7]
4290test { try toAsciiFail("\xf0\x90\xb9\xbd\xf0\x91\x84\xb3\xf1\xbc\x9c\xb2.\xe1\xb7\x9f\xe1\x9e\xb8\xea\xa0\x86\xf0\x91\x9c\xab", false); } // [B1, V6, V7]
4291test { try toAsciiFail("\xf0\x90\xb9\xbd\xf0\x91\x84\xb3\xf1\xbc\x9c\xb2.\xe1\xb7\x9f\xe1\x9e\xb8\xea\xa0\x86\xf0\x91\x9c\xab", true); } // [B1, V6, V7]
1998test { try toUnicodeFail("xn--1o0di0c0652w.xn--33e362arr1l153d"); } // [B1, V6, V7]4292test { try toUnicodeFail("xn--1o0di0c0652w.xn--33e362arr1l153d"); } // [B1, V6, V7]
4293test { try toAsciiFail("xn--1o0di0c0652w.xn--33e362arr1l153d", false); } // [B1, V6, V7]
4294test { try toAsciiFail("xn--1o0di0c0652w.xn--33e362arr1l153d", true); } // [B1, V6, V7]
1999test { try toUnicodeFail("\xe1\x82\xb3\xf0\x91\x9c\xab\xe2\x80\x8d\xf2\x97\xad\x93\xef\xbc\x8e\xda\xa7\xf0\x91\xb0\xb6"); } // [V7]4295test { try toUnicodeFail("\xe1\x82\xb3\xf0\x91\x9c\xab\xe2\x80\x8d\xf2\x97\xad\x93\xef\xbc\x8e\xda\xa7\xf0\x91\xb0\xb6"); } // [V7]
4296test { try toAsciiFail("\xe1\x82\xb3\xf0\x91\x9c\xab\xe2\x80\x8d\xf2\x97\xad\x93\xef\xbc\x8e\xda\xa7\xf0\x91\xb0\xb6", false); } // [V7]
4297test { try toAsciiFail("\xe1\x82\xb3\xf0\x91\x9c\xab\xe2\x80\x8d\xf2\x97\xad\x93\xef\xbc\x8e\xda\xa7\xf0\x91\xb0\xb6", true); } // [V7]
2000test { try toUnicodeFail("\xe1\x82\xb3\xf0\x91\x9c\xab\xe2\x80\x8d\xf2\x97\xad\x93.\xda\xa7\xf0\x91\xb0\xb6"); } // [V7]4298test { try toUnicodeFail("\xe1\x82\xb3\xf0\x91\x9c\xab\xe2\x80\x8d\xf2\x97\xad\x93.\xda\xa7\xf0\x91\xb0\xb6"); } // [V7]
4299test { try toAsciiFail("\xe1\x82\xb3\xf0\x91\x9c\xab\xe2\x80\x8d\xf2\x97\xad\x93.\xda\xa7\xf0\x91\xb0\xb6", false); } // [V7]
4300test { try toAsciiFail("\xe1\x82\xb3\xf0\x91\x9c\xab\xe2\x80\x8d\xf2\x97\xad\x93.\xda\xa7\xf0\x91\xb0\xb6", true); } // [V7]
2001test { try toUnicodeFail("\xe2\xb4\x93\xf0\x91\x9c\xab\xe2\x80\x8d\xf2\x97\xad\x93.\xda\xa7\xf0\x91\xb0\xb6"); } // [V7]4301test { try toUnicodeFail("\xe2\xb4\x93\xf0\x91\x9c\xab\xe2\x80\x8d\xf2\x97\xad\x93.\xda\xa7\xf0\x91\xb0\xb6"); } // [V7]
4302test { try toAsciiFail("\xe2\xb4\x93\xf0\x91\x9c\xab\xe2\x80\x8d\xf2\x97\xad\x93.\xda\xa7\xf0\x91\xb0\xb6", false); } // [V7]
4303test { try toAsciiFail("\xe2\xb4\x93\xf0\x91\x9c\xab\xe2\x80\x8d\xf2\x97\xad\x93.\xda\xa7\xf0\x91\xb0\xb6", true); } // [V7]
2002test { try toUnicodeFail("xn--blj6306ey091d.xn--9jb4223l"); } // [V7]4304test { try toUnicodeFail("xn--blj6306ey091d.xn--9jb4223l"); } // [V7]
4305test { try toAsciiFail("xn--blj6306ey091d.xn--9jb4223l", false); } // [V7]
4306test { try toAsciiFail("xn--blj6306ey091d.xn--9jb4223l", true); } // [V7]
2003test { try toUnicodeFail("xn--1ugy52cym7p7xu5e.xn--9jb4223l"); } // [V7]4307test { try toUnicodeFail("xn--1ugy52cym7p7xu5e.xn--9jb4223l"); } // [V7]
4308test { try toAsciiFail("xn--1ugy52cym7p7xu5e.xn--9jb4223l", false); } // [V7]
4309test { try toAsciiFail("xn--1ugy52cym7p7xu5e.xn--9jb4223l", true); } // [V7]
2004test { try toUnicodeFail("\xe2\xb4\x93\xf0\x91\x9c\xab\xe2\x80\x8d\xf2\x97\xad\x93\xef\xbc\x8e\xda\xa7\xf0\x91\xb0\xb6"); } // [V7]4310test { try toUnicodeFail("\xe2\xb4\x93\xf0\x91\x9c\xab\xe2\x80\x8d\xf2\x97\xad\x93\xef\xbc\x8e\xda\xa7\xf0\x91\xb0\xb6"); } // [V7]
4311test { try toAsciiFail("\xe2\xb4\x93\xf0\x91\x9c\xab\xe2\x80\x8d\xf2\x97\xad\x93\xef\xbc\x8e\xda\xa7\xf0\x91\xb0\xb6", false); } // [V7]
4312test { try toAsciiFail("\xe2\xb4\x93\xf0\x91\x9c\xab\xe2\x80\x8d\xf2\x97\xad\x93\xef\xbc\x8e\xda\xa7\xf0\x91\xb0\xb6", true); } // [V7]
2005test { try toUnicodeFail("xn--rnd8945ky009c.xn--9jb4223l"); } // [V7]4313test { try toUnicodeFail("xn--rnd8945ky009c.xn--9jb4223l"); } // [V7]
4314test { try toAsciiFail("xn--rnd8945ky009c.xn--9jb4223l", false); } // [V7]
4315test { try toAsciiFail("xn--rnd8945ky009c.xn--9jb4223l", true); } // [V7]
2006test { try toUnicodeFail("xn--rnd479ep20q7x12e.xn--9jb4223l"); } // [V7]4316test { try toUnicodeFail("xn--rnd479ep20q7x12e.xn--9jb4223l"); } // [V7]
4317test { try toAsciiFail("xn--rnd479ep20q7x12e.xn--9jb4223l", false); } // [V7]
4318test { try toAsciiFail("xn--rnd479ep20q7x12e.xn--9jb4223l", true); } // [V7]
2007test { try toUnicodeFail("\xf0\x90\xa8\xbf.\xf0\x9f\x84\x86\xe2\x80\x94"); } // [V6, U1]4319test { try toUnicodeFail("\xf0\x90\xa8\xbf.\xf0\x9f\x84\x86\xe2\x80\x94"); } // [V6, U1]
4320test { try toAsciiFail("\xf0\x90\xa8\xbf.\xf0\x9f\x84\x86\xe2\x80\x94", false); } // [V6, U1]
4321test { try toAsciiFail("\xf0\x90\xa8\xbf.\xf0\x9f\x84\x86\xe2\x80\x94", true); } // [V6, U1]
2008test { try toUnicodeFail("\xf0\x90\xa8\xbf.5,\xe2\x80\x94"); } // [V6, U1]4322test { try toUnicodeFail("\xf0\x90\xa8\xbf.5,\xe2\x80\x94"); } // [V6, U1]
4323test { try toAsciiFail("\xf0\x90\xa8\xbf.5,\xe2\x80\x94", false); } // [V6, U1]
4324test { try toAsciiFail("\xf0\x90\xa8\xbf.5,\xe2\x80\x94", true); } // [V6, U1]
2009test { try toUnicodeFail("xn--0s9c.xn--5,-81t"); } // [V6, U1]4325test { try toUnicodeFail("xn--0s9c.xn--5,-81t"); } // [V6, U1]
4326test { try toAsciiFail("xn--0s9c.xn--5,-81t", false); } // [V6, U1]
4327test { try toAsciiFail("xn--0s9c.xn--5,-81t", true); } // [V6, U1]
2010test { try toUnicodeFail("xn--0s9c.xn--8ug8324p"); } // [V6, V7]4328test { try toUnicodeFail("xn--0s9c.xn--8ug8324p"); } // [V6, V7]
4329test { try toAsciiFail("xn--0s9c.xn--8ug8324p", false); } // [V6, V7]
4330test { try toAsciiFail("xn--0s9c.xn--8ug8324p", true); } // [V6, V7]
2011test { try toUnicodeFail("\xf2\x94\x8a\xb1\xf1\x81\xa6\xae\xdb\xb8\xe3\x80\x82\xf3\xa0\xbe\xad-"); } // [V3, V7]4331test { try toUnicodeFail("\xf2\x94\x8a\xb1\xf1\x81\xa6\xae\xdb\xb8\xe3\x80\x82\xf3\xa0\xbe\xad-"); } // [V3, V7]
4332test { try toAsciiFail("\xf2\x94\x8a\xb1\xf1\x81\xa6\xae\xdb\xb8\xe3\x80\x82\xf3\xa0\xbe\xad-", false); } // [V3, V7]
4333test { try toAsciiFail("\xf2\x94\x8a\xb1\xf1\x81\xa6\xae\xdb\xb8\xe3\x80\x82\xf3\xa0\xbe\xad-", true); } // [V3, V7]
2012test { try toUnicodeFail("xn--lmb18944c0g2z.xn----2k81m"); } // [V3, V7]4334test { try toUnicodeFail("xn--lmb18944c0g2z.xn----2k81m"); } // [V3, V7]
4335test { try toAsciiFail("xn--lmb18944c0g2z.xn----2k81m", false); } // [V3, V7]
4336test { try toAsciiFail("xn--lmb18944c0g2z.xn----2k81m", true); } // [V3, V7]
2013test { try toUnicodeFail("\xf0\xbc\x97\xb8\xdf\x8d\xf0\x90\xb9\xae\xe3\x80\x82\xdb\x9d\xe1\xa1\x8e\xe1\xa0\xb4"); } // [B1, B5, B6, V7]4337test { try toUnicodeFail("\xf0\xbc\x97\xb8\xdf\x8d\xf0\x90\xb9\xae\xe3\x80\x82\xdb\x9d\xe1\xa1\x8e\xe1\xa0\xb4"); } // [B1, B5, B6, V7]
4338test { try toAsciiFail("\xf0\xbc\x97\xb8\xdf\x8d\xf0\x90\xb9\xae\xe3\x80\x82\xdb\x9d\xe1\xa1\x8e\xe1\xa0\xb4", false); } // [B1, B5, B6, V7]
4339test { try toAsciiFail("\xf0\xbc\x97\xb8\xdf\x8d\xf0\x90\xb9\xae\xe3\x80\x82\xdb\x9d\xe1\xa1\x8e\xe1\xa0\xb4", true); } // [B1, B5, B6, V7]
2014test { try toUnicodeFail("xn--osb0855kcc2r.xn--tlb299fhc"); } // [B1, B5, B6, V7]4340test { try toUnicodeFail("xn--osb0855kcc2r.xn--tlb299fhc"); } // [B1, B5, B6, V7]
4341test { try toAsciiFail("xn--osb0855kcc2r.xn--tlb299fhc", false); } // [B1, B5, B6, V7]
4342test { try toAsciiFail("xn--osb0855kcc2r.xn--tlb299fhc", true); } // [B1, B5, B6, V7]
2015test { try toUnicodeFail("\xe2\x80\x8d\xe1\xa0\xae\xe1\x82\xbe\xf0\x9f\x84\x82.\xf0\x9f\x9a\x97\xe0\xa1\x81\xf0\xae\xb9\x8c\xe2\x80\x8c"); } // [B1, C1, C2, U1]4343test { try toUnicodeFail("\xe2\x80\x8d\xe1\xa0\xae\xe1\x82\xbe\xf0\x9f\x84\x82.\xf0\x9f\x9a\x97\xe0\xa1\x81\xf0\xae\xb9\x8c\xe2\x80\x8c"); } // [B1, C1, C2, U1]
4344test { try toAsciiFail("\xe2\x80\x8d\xe1\xa0\xae\xe1\x82\xbe\xf0\x9f\x84\x82.\xf0\x9f\x9a\x97\xe0\xa1\x81\xf0\xae\xb9\x8c\xe2\x80\x8c", false); } // [B1, C1, C2, U1]
4345test { try toAsciiFail("\xe2\x80\x8d\xe1\xa0\xae\xe1\x82\xbe\xf0\x9f\x84\x82.\xf0\x9f\x9a\x97\xe0\xa1\x81\xf0\xae\xb9\x8c\xe2\x80\x8c", true); } // [B1, B6, U1]
2016test { try toUnicodeFail("\xe2\x80\x8d\xe1\xa0\xae\xe1\x82\xbe1,.\xf0\x9f\x9a\x97\xe0\xa1\x81\xf0\xae\xb9\x8c\xe2\x80\x8c"); } // [B1, C1, C2, U1]4346test { try toUnicodeFail("\xe2\x80\x8d\xe1\xa0\xae\xe1\x82\xbe1,.\xf0\x9f\x9a\x97\xe0\xa1\x81\xf0\xae\xb9\x8c\xe2\x80\x8c"); } // [B1, C1, C2, U1]
4347test { try toAsciiFail("\xe2\x80\x8d\xe1\xa0\xae\xe1\x82\xbe1,.\xf0\x9f\x9a\x97\xe0\xa1\x81\xf0\xae\xb9\x8c\xe2\x80\x8c", false); } // [B1, C1, C2, U1]
4348test { try toAsciiFail("\xe2\x80\x8d\xe1\xa0\xae\xe1\x82\xbe1,.\xf0\x9f\x9a\x97\xe0\xa1\x81\xf0\xae\xb9\x8c\xe2\x80\x8c", true); } // [B1, B6, U1]
2017test { try toUnicodeFail("\xe2\x80\x8d\xe1\xa0\xae\xe2\xb4\x9e1,.\xf0\x9f\x9a\x97\xe0\xa1\x81\xf0\xae\xb9\x8c\xe2\x80\x8c"); } // [B1, C1, C2, U1]4349test { try toUnicodeFail("\xe2\x80\x8d\xe1\xa0\xae\xe2\xb4\x9e1,.\xf0\x9f\x9a\x97\xe0\xa1\x81\xf0\xae\xb9\x8c\xe2\x80\x8c"); } // [B1, C1, C2, U1]
4350test { try toAsciiFail("\xe2\x80\x8d\xe1\xa0\xae\xe2\xb4\x9e1,.\xf0\x9f\x9a\x97\xe0\xa1\x81\xf0\xae\xb9\x8c\xe2\x80\x8c", false); } // [B1, C1, C2, U1]
4351test { try toAsciiFail("\xe2\x80\x8d\xe1\xa0\xae\xe2\xb4\x9e1,.\xf0\x9f\x9a\x97\xe0\xa1\x81\xf0\xae\xb9\x8c\xe2\x80\x8c", true); } // [B1, B6, U1]
2018test { try toUnicodeFail("xn--1,-v3o625k.xn--zvb3124wpkpf"); } // [B1, B6, U1]4352test { try toUnicodeFail("xn--1,-v3o625k.xn--zvb3124wpkpf"); } // [B1, B6, U1]
4353test { try toAsciiFail("xn--1,-v3o625k.xn--zvb3124wpkpf", false); } // [B1, B6, U1]
4354test { try toAsciiFail("xn--1,-v3o625k.xn--zvb3124wpkpf", true); } // [B1, B6, U1]
2019test { try toUnicodeFail("xn--1,-v3o161c53q.xn--zvb692j9664aic1g"); } // [B1, C1, C2, U1]4355test { try toUnicodeFail("xn--1,-v3o161c53q.xn--zvb692j9664aic1g"); } // [B1, C1, C2, U1]
4356test { try toAsciiFail("xn--1,-v3o161c53q.xn--zvb692j9664aic1g", false); } // [B1, C1, C2, U1]
4357test { try toAsciiFail("xn--1,-v3o161c53q.xn--zvb692j9664aic1g", true); } // [B1, C1, C2, U1]
2020test { try toUnicodeFail("\xe2\x80\x8d\xe1\xa0\xae\xe2\xb4\x9e\xf0\x9f\x84\x82.\xf0\x9f\x9a\x97\xe0\xa1\x81\xf0\xae\xb9\x8c\xe2\x80\x8c"); } // [B1, C1, C2, U1]4358test { try toUnicodeFail("\xe2\x80\x8d\xe1\xa0\xae\xe2\xb4\x9e\xf0\x9f\x84\x82.\xf0\x9f\x9a\x97\xe0\xa1\x81\xf0\xae\xb9\x8c\xe2\x80\x8c"); } // [B1, C1, C2, U1]
4359test { try toAsciiFail("\xe2\x80\x8d\xe1\xa0\xae\xe2\xb4\x9e\xf0\x9f\x84\x82.\xf0\x9f\x9a\x97\xe0\xa1\x81\xf0\xae\xb9\x8c\xe2\x80\x8c", false); } // [B1, C1, C2, U1]
4360test { try toAsciiFail("\xe2\x80\x8d\xe1\xa0\xae\xe2\xb4\x9e\xf0\x9f\x84\x82.\xf0\x9f\x9a\x97\xe0\xa1\x81\xf0\xae\xb9\x8c\xe2\x80\x8c", true); } // [B1, B6, U1]
2021test { try toUnicodeFail("xn--1,-ogkx89c.xn--zvb3124wpkpf"); } // [B1, B6, V7, U1]4361test { try toUnicodeFail("xn--1,-ogkx89c.xn--zvb3124wpkpf"); } // [B1, B6, V7, U1]
4362test { try toAsciiFail("xn--1,-ogkx89c.xn--zvb3124wpkpf", false); } // [B1, B6, V7, U1]
4363test { try toAsciiFail("xn--1,-ogkx89c.xn--zvb3124wpkpf", true); } // [B1, B6, V7, U1]
2022test { try toUnicodeFail("xn--1,-ogkx89c39j.xn--zvb692j9664aic1g"); } // [B1, C1, C2, V7, U1]4364test { try toUnicodeFail("xn--1,-ogkx89c39j.xn--zvb692j9664aic1g"); } // [B1, C1, C2, V7, U1]
4365test { try toAsciiFail("xn--1,-ogkx89c39j.xn--zvb692j9664aic1g", false); } // [B1, C1, C2, V7, U1]
4366test { try toAsciiFail("xn--1,-ogkx89c39j.xn--zvb692j9664aic1g", true); } // [B1, C1, C2, V7, U1]
2023test { try toUnicodeFail("xn--h7e438h1p44a.xn--zvb3124wpkpf"); } // [B1, V7]4367test { try toUnicodeFail("xn--h7e438h1p44a.xn--zvb3124wpkpf"); } // [B1, V7]
4368test { try toAsciiFail("xn--h7e438h1p44a.xn--zvb3124wpkpf", false); } // [B1, V7]
4369test { try toAsciiFail("xn--h7e438h1p44a.xn--zvb3124wpkpf", true); } // [B1, V7]
2024test { try toUnicodeFail("xn--h7e341b0wlbv45b.xn--zvb692j9664aic1g"); } // [B1, C1, C2, V7]4370test { try toUnicodeFail("xn--h7e341b0wlbv45b.xn--zvb692j9664aic1g"); } // [B1, C1, C2, V7]
4371test { try toAsciiFail("xn--h7e341b0wlbv45b.xn--zvb692j9664aic1g", false); } // [B1, C1, C2, V7]
4372test { try toAsciiFail("xn--h7e341b0wlbv45b.xn--zvb692j9664aic1g", true); } // [B1, C1, C2, V7]
2025test { try toUnicodeFail("xn--2nd129ai554b.xn--zvb3124wpkpf"); } // [B1, V7]4373test { try toUnicodeFail("xn--2nd129ai554b.xn--zvb3124wpkpf"); } // [B1, V7]
4374test { try toAsciiFail("xn--2nd129ai554b.xn--zvb3124wpkpf", false); } // [B1, V7]
4375test { try toAsciiFail("xn--2nd129ai554b.xn--zvb3124wpkpf", true); } // [B1, V7]
2026test { try toUnicodeFail("xn--2nd129ay2gnw71c.xn--zvb692j9664aic1g"); } // [B1, C1, C2, V7]4376test { try toUnicodeFail("xn--2nd129ay2gnw71c.xn--zvb692j9664aic1g"); } // [B1, C1, C2, V7]
4377test { try toAsciiFail("xn--2nd129ay2gnw71c.xn--zvb692j9664aic1g", false); } // [B1, C1, C2, V7]
4378test { try toAsciiFail("xn--2nd129ay2gnw71c.xn--zvb692j9664aic1g", true); } // [B1, C1, C2, V7]
2027test { try toUnicodeFail("\xd8\x81\xda\x97\xef\xbc\x8e\xf0\x91\x9a\xb6\xf1\xbc\xa1\xb7\xe2\xbe\x86"); } // [B1, V6, V7]4379test { try toUnicodeFail("\xd8\x81\xda\x97\xef\xbc\x8e\xf0\x91\x9a\xb6\xf1\xbc\xa1\xb7\xe2\xbe\x86"); } // [B1, V6, V7]
4380test { try toAsciiFail("\xd8\x81\xda\x97\xef\xbc\x8e\xf0\x91\x9a\xb6\xf1\xbc\xa1\xb7\xe2\xbe\x86", false); } // [B1, V6, V7]
4381test { try toAsciiFail("\xd8\x81\xda\x97\xef\xbc\x8e\xf0\x91\x9a\xb6\xf1\xbc\xa1\xb7\xe2\xbe\x86", true); } // [B1, V6, V7]
2028test { try toUnicodeFail("\xd8\x81\xda\x97.\xf0\x91\x9a\xb6\xf1\xbc\xa1\xb7\xe8\x88\x8c"); } // [B1, V6, V7]4382test { try toUnicodeFail("\xd8\x81\xda\x97.\xf0\x91\x9a\xb6\xf1\xbc\xa1\xb7\xe8\x88\x8c"); } // [B1, V6, V7]
4383test { try toAsciiFail("\xd8\x81\xda\x97.\xf0\x91\x9a\xb6\xf1\xbc\xa1\xb7\xe8\x88\x8c", false); } // [B1, V6, V7]
4384test { try toAsciiFail("\xd8\x81\xda\x97.\xf0\x91\x9a\xb6\xf1\xbc\xa1\xb7\xe8\x88\x8c", true); } // [B1, V6, V7]
2029test { try toUnicodeFail("xn--jfb41a.xn--tc1ap851axo39c"); } // [B1, V6, V7]4385test { try toUnicodeFail("xn--jfb41a.xn--tc1ap851axo39c"); } // [B1, V6, V7]
4386test { try toAsciiFail("xn--jfb41a.xn--tc1ap851axo39c", false); } // [B1, V6, V7]
4387test { try toAsciiFail("xn--jfb41a.xn--tc1ap851axo39c", true); } // [B1, V6, V7]
2030test { try toUnicodeFail("\xf0\x9f\x9e\x85\xf3\xa0\xb3\xa1\xf3\x9c\x8d\x99.\xf1\xb2\x96\xb7"); } // [V7]4388test { try toUnicodeFail("\xf0\x9f\x9e\x85\xf3\xa0\xb3\xa1\xf3\x9c\x8d\x99.\xf1\xb2\x96\xb7"); } // [V7]
4389test { try toAsciiFail("\xf0\x9f\x9e\x85\xf3\xa0\xb3\xa1\xf3\x9c\x8d\x99.\xf1\xb2\x96\xb7", false); } // [V7]
4390test { try toAsciiFail("\xf0\x9f\x9e\x85\xf3\xa0\xb3\xa1\xf3\x9c\x8d\x99.\xf1\xb2\x96\xb7", true); } // [V7]
2031test { try toUnicodeFail("xn--ie9hi1349bqdlb.xn--oj69a"); } // [V7]4391test { try toUnicodeFail("xn--ie9hi1349bqdlb.xn--oj69a"); } // [V7]
4392test { try toAsciiFail("xn--ie9hi1349bqdlb.xn--oj69a", false); } // [V7]
4393test { try toAsciiFail("xn--ie9hi1349bqdlb.xn--oj69a", true); } // [V7]
2032test { try toUnicodeFail("\xe2\x83\xa7\xf1\xaf\xa1\x8e-\xf2\xab\xa3\x9d.4\xe1\x82\xa4\xe2\x80\x8c"); } // [C1, V6, V7]4394test { try toUnicodeFail("\xe2\x83\xa7\xf1\xaf\xa1\x8e-\xf2\xab\xa3\x9d.4\xe1\x82\xa4\xe2\x80\x8c"); } // [C1, V6, V7]
4395test { try toAsciiFail("\xe2\x83\xa7\xf1\xaf\xa1\x8e-\xf2\xab\xa3\x9d.4\xe1\x82\xa4\xe2\x80\x8c", false); } // [C1, V6, V7]
4396test { try toAsciiFail("\xe2\x83\xa7\xf1\xaf\xa1\x8e-\xf2\xab\xa3\x9d.4\xe1\x82\xa4\xe2\x80\x8c", true); } // [V6, V7]
2033test { try toUnicodeFail("\xe2\x83\xa7\xf1\xaf\xa1\x8e-\xf2\xab\xa3\x9d.4\xe2\xb4\x84\xe2\x80\x8c"); } // [C1, V6, V7]4397test { try toUnicodeFail("\xe2\x83\xa7\xf1\xaf\xa1\x8e-\xf2\xab\xa3\x9d.4\xe2\xb4\x84\xe2\x80\x8c"); } // [C1, V6, V7]
4398test { try toAsciiFail("\xe2\x83\xa7\xf1\xaf\xa1\x8e-\xf2\xab\xa3\x9d.4\xe2\xb4\x84\xe2\x80\x8c", false); } // [C1, V6, V7]
4399test { try toAsciiFail("\xe2\x83\xa7\xf1\xaf\xa1\x8e-\xf2\xab\xa3\x9d.4\xe2\xb4\x84\xe2\x80\x8c", true); } // [V6, V7]
2034test { try toUnicodeFail("xn----9snu5320fi76w.xn--4-ivs"); } // [V6, V7]4400test { try toUnicodeFail("xn----9snu5320fi76w.xn--4-ivs"); } // [V6, V7]
4401test { try toAsciiFail("xn----9snu5320fi76w.xn--4-ivs", false); } // [V6, V7]
4402test { try toAsciiFail("xn----9snu5320fi76w.xn--4-ivs", true); } // [V6, V7]
2035test { try toUnicodeFail("xn----9snu5320fi76w.xn--4-sgn589c"); } // [C1, V6, V7]4403test { try toUnicodeFail("xn----9snu5320fi76w.xn--4-sgn589c"); } // [C1, V6, V7]
4404test { try toAsciiFail("xn----9snu5320fi76w.xn--4-sgn589c", false); } // [C1, V6, V7]
4405test { try toAsciiFail("xn----9snu5320fi76w.xn--4-sgn589c", true); } // [C1, V6, V7]
2036test { try toUnicodeFail("xn----9snu5320fi76w.xn--4-f0g"); } // [V6, V7]4406test { try toUnicodeFail("xn----9snu5320fi76w.xn--4-f0g"); } // [V6, V7]
4407test { try toAsciiFail("xn----9snu5320fi76w.xn--4-f0g", false); } // [V6, V7]
4408test { try toAsciiFail("xn----9snu5320fi76w.xn--4-f0g", true); } // [V6, V7]
2037test { try toUnicodeFail("xn----9snu5320fi76w.xn--4-f0g649i"); } // [C1, V6, V7]4409test { try toUnicodeFail("xn----9snu5320fi76w.xn--4-f0g649i"); } // [C1, V6, V7]
4410test { try toAsciiFail("xn----9snu5320fi76w.xn--4-f0g649i", false); } // [C1, V6, V7]
4411test { try toAsciiFail("xn----9snu5320fi76w.xn--4-f0g649i", true); } // [C1, V6, V7]
2038test { try toUnicodePass("\xe1\x9a\xad\xef\xbd\xa1\xf0\x9d\x8c\xa0\xc3\x9f\xf0\x96\xab\xb1", "\xe1\x9a\xad.\xf0\x9d\x8c\xa0\xc3\x9f\xf0\x96\xab\xb1"); }4412test { try toUnicodePass("\xe1\x9a\xad\xef\xbd\xa1\xf0\x9d\x8c\xa0\xc3\x9f\xf0\x96\xab\xb1", "\xe1\x9a\xad.\xf0\x9d\x8c\xa0\xc3\x9f\xf0\x96\xab\xb1"); }
2039test { try toAsciiPass("\xe1\x9a\xad\xef\xbd\xa1\xf0\x9d\x8c\xa0\xc3\x9f\xf0\x96\xab\xb1", "xn--hwe.xn--zca4946pblnc", false); }4413test { try toAsciiPass("\xe1\x9a\xad\xef\xbd\xa1\xf0\x9d\x8c\xa0\xc3\x9f\xf0\x96\xab\xb1", "xn--hwe.xn--zca4946pblnc", false); }
2040test { try toAsciiPass("\xe1\x9a\xad\xef\xbd\xa1\xf0\x9d\x8c\xa0\xc3\x9f\xf0\x96\xab\xb1", "xn--hwe.xn--ss-ci1ub261a", true); }4414test { try toAsciiPass("\xe1\x9a\xad\xef\xbd\xa1\xf0\x9d\x8c\xa0\xc3\x9f\xf0\x96\xab\xb1", "xn--hwe.xn--ss-ci1ub261a", true); }
...@@ -2078,398 +4452,1184 @@ test { try toUnicodePass("\xe1\x9a\xad\xef\xbd\xa1\xf0\x9d\x8c\xa0Ss\xf0\x96\xab...@@ -2078,398 +4452,1184 @@ test { try toUnicodePass("\xe1\x9a\xad\xef\xbd\xa1\xf0\x9d\x8c\xa0Ss\xf0\x96\xab
2078test { try toAsciiPass("\xe1\x9a\xad\xef\xbd\xa1\xf0\x9d\x8c\xa0Ss\xf0\x96\xab\xb1", "xn--hwe.xn--ss-ci1ub261a", false); }4452test { try toAsciiPass("\xe1\x9a\xad\xef\xbd\xa1\xf0\x9d\x8c\xa0Ss\xf0\x96\xab\xb1", "xn--hwe.xn--ss-ci1ub261a", false); }
2079test { try toAsciiPass("\xe1\x9a\xad\xef\xbd\xa1\xf0\x9d\x8c\xa0Ss\xf0\x96\xab\xb1", "xn--hwe.xn--ss-ci1ub261a", true); }4453test { try toAsciiPass("\xe1\x9a\xad\xef\xbd\xa1\xf0\x9d\x8c\xa0Ss\xf0\x96\xab\xb1", "xn--hwe.xn--ss-ci1ub261a", true); }
2080test { try toUnicodeFail("\xe2\x82\x81\xef\xbd\xa1\xf0\x9e\xa4\xab\xea\xa1\xaa"); } // [B1, B2, B3]4454test { try toUnicodeFail("\xe2\x82\x81\xef\xbd\xa1\xf0\x9e\xa4\xab\xea\xa1\xaa"); } // [B1, B2, B3]
4455test { try toAsciiFail("\xe2\x82\x81\xef\xbd\xa1\xf0\x9e\xa4\xab\xea\xa1\xaa", false); } // [B1, B2, B3]
4456test { try toAsciiFail("\xe2\x82\x81\xef\xbd\xa1\xf0\x9e\xa4\xab\xea\xa1\xaa", true); } // [B1, B2, B3]
2081test { try toUnicodeFail("1\xe3\x80\x82\xf0\x9e\xa4\xab\xea\xa1\xaa"); } // [B1, B2, B3]4457test { try toUnicodeFail("1\xe3\x80\x82\xf0\x9e\xa4\xab\xea\xa1\xaa"); } // [B1, B2, B3]
4458test { try toAsciiFail("1\xe3\x80\x82\xf0\x9e\xa4\xab\xea\xa1\xaa", false); } // [B1, B2, B3]
4459test { try toAsciiFail("1\xe3\x80\x82\xf0\x9e\xa4\xab\xea\xa1\xaa", true); } // [B1, B2, B3]
2082test { try toUnicodeFail("1\xe3\x80\x82\xf0\x9e\xa4\x89\xea\xa1\xaa"); } // [B1, B2, B3]4460test { try toUnicodeFail("1\xe3\x80\x82\xf0\x9e\xa4\x89\xea\xa1\xaa"); } // [B1, B2, B3]
4461test { try toAsciiFail("1\xe3\x80\x82\xf0\x9e\xa4\x89\xea\xa1\xaa", false); } // [B1, B2, B3]
4462test { try toAsciiFail("1\xe3\x80\x82\xf0\x9e\xa4\x89\xea\xa1\xaa", true); } // [B1, B2, B3]
2083test { try toUnicodeFail("1.xn--gd9al691d"); } // [B1, B2, B3]4463test { try toUnicodeFail("1.xn--gd9al691d"); } // [B1, B2, B3]
4464test { try toAsciiFail("1.xn--gd9al691d", false); } // [B1, B2, B3]
4465test { try toAsciiFail("1.xn--gd9al691d", true); } // [B1, B2, B3]
2084test { try toUnicodeFail("\xe2\x82\x81\xef\xbd\xa1\xf0\x9e\xa4\x89\xea\xa1\xaa"); } // [B1, B2, B3]4466test { try toUnicodeFail("\xe2\x82\x81\xef\xbd\xa1\xf0\x9e\xa4\x89\xea\xa1\xaa"); } // [B1, B2, B3]
4467test { try toAsciiFail("\xe2\x82\x81\xef\xbd\xa1\xf0\x9e\xa4\x89\xea\xa1\xaa", false); } // [B1, B2, B3]
4468test { try toAsciiFail("\xe2\x82\x81\xef\xbd\xa1\xf0\x9e\xa4\x89\xea\xa1\xaa", true); } // [B1, B2, B3]
2085test { try toUnicodeFail("\xf0\xaf\xbb\xbc\xe2\x80\x8c.\xf0\x9e\xb6\x9e\xf2\xbb\x99\xa4\xf1\xa5\x98\x87"); } // [B2, B3, B6, C1, V7]4469test { try toUnicodeFail("\xf0\xaf\xbb\xbc\xe2\x80\x8c.\xf0\x9e\xb6\x9e\xf2\xbb\x99\xa4\xf1\xa5\x98\x87"); } // [B2, B3, B6, C1, V7]
4470test { try toAsciiFail("\xf0\xaf\xbb\xbc\xe2\x80\x8c.\xf0\x9e\xb6\x9e\xf2\xbb\x99\xa4\xf1\xa5\x98\x87", false); } // [B2, B3, B6, C1, V7]
4471test { try toAsciiFail("\xf0\xaf\xbb\xbc\xe2\x80\x8c.\xf0\x9e\xb6\x9e\xf2\xbb\x99\xa4\xf1\xa5\x98\x87", true); } // [B2, B3, V7]
2086test { try toUnicodeFail("xn--kg4n.xn--2b7hs861pl540a"); } // [B2, B3, V7]4472test { try toUnicodeFail("xn--kg4n.xn--2b7hs861pl540a"); } // [B2, B3, V7]
4473test { try toAsciiFail("xn--kg4n.xn--2b7hs861pl540a", false); } // [B2, B3, V7]
4474test { try toAsciiFail("xn--kg4n.xn--2b7hs861pl540a", true); } // [B2, B3, V7]
2087test { try toUnicodeFail("xn--0ug27500a.xn--2b7hs861pl540a"); } // [B2, B3, B6, C1, V7]4475test { try toUnicodeFail("xn--0ug27500a.xn--2b7hs861pl540a"); } // [B2, B3, B6, C1, V7]
4476test { try toAsciiFail("xn--0ug27500a.xn--2b7hs861pl540a", false); } // [B2, B3, B6, C1, V7]
4477test { try toAsciiFail("xn--0ug27500a.xn--2b7hs861pl540a", true); } // [B2, B3, B6, C1, V7]
2088test { try toUnicodeFail("\xf0\x91\x91\x84\xe2\x89\xaf\xef\xbd\xa1\xf0\x91\x9c\xa4"); } // [V6]4478test { try toUnicodeFail("\xf0\x91\x91\x84\xe2\x89\xaf\xef\xbd\xa1\xf0\x91\x9c\xa4"); } // [V6]
4479test { try toAsciiFail("\xf0\x91\x91\x84\xe2\x89\xaf\xef\xbd\xa1\xf0\x91\x9c\xa4", false); } // [V6]
4480test { try toAsciiFail("\xf0\x91\x91\x84\xe2\x89\xaf\xef\xbd\xa1\xf0\x91\x9c\xa4", true); } // [V6]
2089test { try toUnicodeFail("\xf0\x91\x91\x84>\xcc\xb8\xef\xbd\xa1\xf0\x91\x9c\xa4"); } // [V6]4481test { try toUnicodeFail("\xf0\x91\x91\x84>\xcc\xb8\xef\xbd\xa1\xf0\x91\x9c\xa4"); } // [V6]
4482test { try toAsciiFail("\xf0\x91\x91\x84>\xcc\xb8\xef\xbd\xa1\xf0\x91\x9c\xa4", false); } // [V6]
4483test { try toAsciiFail("\xf0\x91\x91\x84>\xcc\xb8\xef\xbd\xa1\xf0\x91\x9c\xa4", true); } // [V6]
2090test { try toUnicodeFail("\xf0\x91\x91\x84\xe2\x89\xaf\xe3\x80\x82\xf0\x91\x9c\xa4"); } // [V6]4484test { try toUnicodeFail("\xf0\x91\x91\x84\xe2\x89\xaf\xe3\x80\x82\xf0\x91\x9c\xa4"); } // [V6]
4485test { try toAsciiFail("\xf0\x91\x91\x84\xe2\x89\xaf\xe3\x80\x82\xf0\x91\x9c\xa4", false); } // [V6]
4486test { try toAsciiFail("\xf0\x91\x91\x84\xe2\x89\xaf\xe3\x80\x82\xf0\x91\x9c\xa4", true); } // [V6]
2091test { try toUnicodeFail("\xf0\x91\x91\x84>\xcc\xb8\xe3\x80\x82\xf0\x91\x9c\xa4"); } // [V6]4487test { try toUnicodeFail("\xf0\x91\x91\x84>\xcc\xb8\xe3\x80\x82\xf0\x91\x9c\xa4"); } // [V6]
4488test { try toAsciiFail("\xf0\x91\x91\x84>\xcc\xb8\xe3\x80\x82\xf0\x91\x9c\xa4", false); } // [V6]
4489test { try toAsciiFail("\xf0\x91\x91\x84>\xcc\xb8\xe3\x80\x82\xf0\x91\x9c\xa4", true); } // [V6]
2092test { try toUnicodeFail("xn--hdh5636g.xn--ci2d"); } // [V6]4490test { try toUnicodeFail("xn--hdh5636g.xn--ci2d"); } // [V6]
4491test { try toAsciiFail("xn--hdh5636g.xn--ci2d", false); } // [V6]
4492test { try toAsciiFail("xn--hdh5636g.xn--ci2d", true); } // [V6]
2093test { try toUnicodeFail("\xe1\x82\xab\xe2\x89\xae\xf0\xb1\xb2\x86\xe3\x80\x82\xe2\x80\x8d\xde\xa7\xf0\x90\x8b\xa3"); } // [C2]4493test { try toUnicodeFail("\xe1\x82\xab\xe2\x89\xae\xf0\xb1\xb2\x86\xe3\x80\x82\xe2\x80\x8d\xde\xa7\xf0\x90\x8b\xa3"); } // [C2]
4494test { try toAsciiFail("\xe1\x82\xab\xe2\x89\xae\xf0\xb1\xb2\x86\xe3\x80\x82\xe2\x80\x8d\xde\xa7\xf0\x90\x8b\xa3", false); } // [C2]
4495test { try toAsciiFail("\xe1\x82\xab\xe2\x89\xae\xf0\xb1\xb2\x86\xe3\x80\x82\xe2\x80\x8d\xde\xa7\xf0\x90\x8b\xa3", true); } // [V6]
2094test { try toUnicodeFail("\xe1\x82\xab<\xcc\xb8\xf0\xb1\xb2\x86\xe3\x80\x82\xe2\x80\x8d\xde\xa7\xf0\x90\x8b\xa3"); } // [C2]4496test { try toUnicodeFail("\xe1\x82\xab<\xcc\xb8\xf0\xb1\xb2\x86\xe3\x80\x82\xe2\x80\x8d\xde\xa7\xf0\x90\x8b\xa3"); } // [C2]
4497test { try toAsciiFail("\xe1\x82\xab<\xcc\xb8\xf0\xb1\xb2\x86\xe3\x80\x82\xe2\x80\x8d\xde\xa7\xf0\x90\x8b\xa3", false); } // [C2]
4498test { try toAsciiFail("\xe1\x82\xab<\xcc\xb8\xf0\xb1\xb2\x86\xe3\x80\x82\xe2\x80\x8d\xde\xa7\xf0\x90\x8b\xa3", true); } // [V6]
2095test { try toUnicodeFail("\xe2\xb4\x8b<\xcc\xb8\xf0\xb1\xb2\x86\xe3\x80\x82\xe2\x80\x8d\xde\xa7\xf0\x90\x8b\xa3"); } // [C2]4499test { try toUnicodeFail("\xe2\xb4\x8b<\xcc\xb8\xf0\xb1\xb2\x86\xe3\x80\x82\xe2\x80\x8d\xde\xa7\xf0\x90\x8b\xa3"); } // [C2]
4500test { try toAsciiFail("\xe2\xb4\x8b<\xcc\xb8\xf0\xb1\xb2\x86\xe3\x80\x82\xe2\x80\x8d\xde\xa7\xf0\x90\x8b\xa3", false); } // [C2]
4501test { try toAsciiFail("\xe2\xb4\x8b<\xcc\xb8\xf0\xb1\xb2\x86\xe3\x80\x82\xe2\x80\x8d\xde\xa7\xf0\x90\x8b\xa3", true); } // [V6]
2096test { try toUnicodeFail("\xe2\xb4\x8b\xe2\x89\xae\xf0\xb1\xb2\x86\xe3\x80\x82\xe2\x80\x8d\xde\xa7\xf0\x90\x8b\xa3"); } // [C2]4502test { try toUnicodeFail("\xe2\xb4\x8b\xe2\x89\xae\xf0\xb1\xb2\x86\xe3\x80\x82\xe2\x80\x8d\xde\xa7\xf0\x90\x8b\xa3"); } // [C2]
4503test { try toAsciiFail("\xe2\xb4\x8b\xe2\x89\xae\xf0\xb1\xb2\x86\xe3\x80\x82\xe2\x80\x8d\xde\xa7\xf0\x90\x8b\xa3", false); } // [C2]
4504test { try toAsciiFail("\xe2\xb4\x8b\xe2\x89\xae\xf0\xb1\xb2\x86\xe3\x80\x82\xe2\x80\x8d\xde\xa7\xf0\x90\x8b\xa3", true); } // [V6]
2097test { try toUnicodeFail("xn--gdhz03bxt42d.xn--lrb6479j"); } // [V6]4505test { try toUnicodeFail("xn--gdhz03bxt42d.xn--lrb6479j"); } // [V6]
4506test { try toAsciiFail("xn--gdhz03bxt42d.xn--lrb6479j", false); } // [V6]
4507test { try toAsciiFail("xn--gdhz03bxt42d.xn--lrb6479j", true); } // [V6]
2098test { try toUnicodeFail("xn--gdhz03bxt42d.xn--lrb506jqr4n"); } // [C2]4508test { try toUnicodeFail("xn--gdhz03bxt42d.xn--lrb506jqr4n"); } // [C2]
4509test { try toAsciiFail("xn--gdhz03bxt42d.xn--lrb506jqr4n", false); } // [C2]
4510test { try toAsciiFail("xn--gdhz03bxt42d.xn--lrb506jqr4n", true); } // [C2]
2099test { try toUnicodeFail("xn--jnd802gsm17c.xn--lrb6479j"); } // [V6, V7]4511test { try toUnicodeFail("xn--jnd802gsm17c.xn--lrb6479j"); } // [V6, V7]
4512test { try toAsciiFail("xn--jnd802gsm17c.xn--lrb6479j", false); } // [V6, V7]
4513test { try toAsciiFail("xn--jnd802gsm17c.xn--lrb6479j", true); } // [V6, V7]
2100test { try toUnicodeFail("xn--jnd802gsm17c.xn--lrb506jqr4n"); } // [C2, V7]4514test { try toUnicodeFail("xn--jnd802gsm17c.xn--lrb506jqr4n"); } // [C2, V7]
4515test { try toAsciiFail("xn--jnd802gsm17c.xn--lrb506jqr4n", false); } // [C2, V7]
4516test { try toAsciiFail("xn--jnd802gsm17c.xn--lrb506jqr4n", true); } // [C2, V7]
2101test { try toUnicodeFail("\xe1\x9f\x92.\xf2\x86\xbd\x92\xe2\x89\xaf"); } // [V6, V7]4517test { try toUnicodeFail("\xe1\x9f\x92.\xf2\x86\xbd\x92\xe2\x89\xaf"); } // [V6, V7]
4518test { try toAsciiFail("\xe1\x9f\x92.\xf2\x86\xbd\x92\xe2\x89\xaf", false); } // [V6, V7]
4519test { try toAsciiFail("\xe1\x9f\x92.\xf2\x86\xbd\x92\xe2\x89\xaf", true); } // [V6, V7]
2102test { try toUnicodeFail("\xe1\x9f\x92.\xf2\x86\xbd\x92>\xcc\xb8"); } // [V6, V7]4520test { try toUnicodeFail("\xe1\x9f\x92.\xf2\x86\xbd\x92>\xcc\xb8"); } // [V6, V7]
4521test { try toAsciiFail("\xe1\x9f\x92.\xf2\x86\xbd\x92>\xcc\xb8", false); } // [V6, V7]
4522test { try toAsciiFail("\xe1\x9f\x92.\xf2\x86\xbd\x92>\xcc\xb8", true); } // [V6, V7]
2103test { try toUnicodeFail("xn--u4e.xn--hdhx0084f"); } // [V6, V7]4523test { try toUnicodeFail("xn--u4e.xn--hdhx0084f"); } // [V6, V7]
4524test { try toAsciiFail("xn--u4e.xn--hdhx0084f", false); } // [V6, V7]
4525test { try toAsciiFail("xn--u4e.xn--hdhx0084f", true); } // [V6, V7]
2104test { try toUnicodeFail("\xf1\x8f\x81\x87\xe1\x9c\xb4\xef\xbc\x8e\xf0\x90\xa8\xba\xc3\x89\xe2\xac\x93\xf0\x91\x84\xb4"); } // [V6, V7]4526test { try toUnicodeFail("\xf1\x8f\x81\x87\xe1\x9c\xb4\xef\xbc\x8e\xf0\x90\xa8\xba\xc3\x89\xe2\xac\x93\xf0\x91\x84\xb4"); } // [V6, V7]
4527test { try toAsciiFail("\xf1\x8f\x81\x87\xe1\x9c\xb4\xef\xbc\x8e\xf0\x90\xa8\xba\xc3\x89\xe2\xac\x93\xf0\x91\x84\xb4", false); } // [V6, V7]
4528test { try toAsciiFail("\xf1\x8f\x81\x87\xe1\x9c\xb4\xef\xbc\x8e\xf0\x90\xa8\xba\xc3\x89\xe2\xac\x93\xf0\x91\x84\xb4", true); } // [V6, V7]
2105test { try toUnicodeFail("\xf1\x8f\x81\x87\xe1\x9c\xb4\xef\xbc\x8e\xf0\x90\xa8\xbaE\xcc\x81\xe2\xac\x93\xf0\x91\x84\xb4"); } // [V6, V7]4529test { try toUnicodeFail("\xf1\x8f\x81\x87\xe1\x9c\xb4\xef\xbc\x8e\xf0\x90\xa8\xbaE\xcc\x81\xe2\xac\x93\xf0\x91\x84\xb4"); } // [V6, V7]
4530test { try toAsciiFail("\xf1\x8f\x81\x87\xe1\x9c\xb4\xef\xbc\x8e\xf0\x90\xa8\xbaE\xcc\x81\xe2\xac\x93\xf0\x91\x84\xb4", false); } // [V6, V7]
4531test { try toAsciiFail("\xf1\x8f\x81\x87\xe1\x9c\xb4\xef\xbc\x8e\xf0\x90\xa8\xbaE\xcc\x81\xe2\xac\x93\xf0\x91\x84\xb4", true); } // [V6, V7]
2106test { try toUnicodeFail("\xf1\x8f\x81\x87\xe1\x9c\xb4.\xf0\x90\xa8\xba\xc3\x89\xe2\xac\x93\xf0\x91\x84\xb4"); } // [V6, V7]4532test { try toUnicodeFail("\xf1\x8f\x81\x87\xe1\x9c\xb4.\xf0\x90\xa8\xba\xc3\x89\xe2\xac\x93\xf0\x91\x84\xb4"); } // [V6, V7]
4533test { try toAsciiFail("\xf1\x8f\x81\x87\xe1\x9c\xb4.\xf0\x90\xa8\xba\xc3\x89\xe2\xac\x93\xf0\x91\x84\xb4", false); } // [V6, V7]
4534test { try toAsciiFail("\xf1\x8f\x81\x87\xe1\x9c\xb4.\xf0\x90\xa8\xba\xc3\x89\xe2\xac\x93\xf0\x91\x84\xb4", true); } // [V6, V7]
2107test { try toUnicodeFail("\xf1\x8f\x81\x87\xe1\x9c\xb4.\xf0\x90\xa8\xbaE\xcc\x81\xe2\xac\x93\xf0\x91\x84\xb4"); } // [V6, V7]4535test { try toUnicodeFail("\xf1\x8f\x81\x87\xe1\x9c\xb4.\xf0\x90\xa8\xbaE\xcc\x81\xe2\xac\x93\xf0\x91\x84\xb4"); } // [V6, V7]
4536test { try toAsciiFail("\xf1\x8f\x81\x87\xe1\x9c\xb4.\xf0\x90\xa8\xbaE\xcc\x81\xe2\xac\x93\xf0\x91\x84\xb4", false); } // [V6, V7]
4537test { try toAsciiFail("\xf1\x8f\x81\x87\xe1\x9c\xb4.\xf0\x90\xa8\xbaE\xcc\x81\xe2\xac\x93\xf0\x91\x84\xb4", true); } // [V6, V7]
2108test { try toUnicodeFail("\xf1\x8f\x81\x87\xe1\x9c\xb4.\xf0\x90\xa8\xbae\xcc\x81\xe2\xac\x93\xf0\x91\x84\xb4"); } // [V6, V7]4538test { try toUnicodeFail("\xf1\x8f\x81\x87\xe1\x9c\xb4.\xf0\x90\xa8\xbae\xcc\x81\xe2\xac\x93\xf0\x91\x84\xb4"); } // [V6, V7]
4539test { try toAsciiFail("\xf1\x8f\x81\x87\xe1\x9c\xb4.\xf0\x90\xa8\xbae\xcc\x81\xe2\xac\x93\xf0\x91\x84\xb4", false); } // [V6, V7]
4540test { try toAsciiFail("\xf1\x8f\x81\x87\xe1\x9c\xb4.\xf0\x90\xa8\xbae\xcc\x81\xe2\xac\x93\xf0\x91\x84\xb4", true); } // [V6, V7]
2109test { try toUnicodeFail("\xf1\x8f\x81\x87\xe1\x9c\xb4.\xf0\x90\xa8\xba\xc3\xa9\xe2\xac\x93\xf0\x91\x84\xb4"); } // [V6, V7]4541test { try toUnicodeFail("\xf1\x8f\x81\x87\xe1\x9c\xb4.\xf0\x90\xa8\xba\xc3\xa9\xe2\xac\x93\xf0\x91\x84\xb4"); } // [V6, V7]
4542test { try toAsciiFail("\xf1\x8f\x81\x87\xe1\x9c\xb4.\xf0\x90\xa8\xba\xc3\xa9\xe2\xac\x93\xf0\x91\x84\xb4", false); } // [V6, V7]
4543test { try toAsciiFail("\xf1\x8f\x81\x87\xe1\x9c\xb4.\xf0\x90\xa8\xba\xc3\xa9\xe2\xac\x93\xf0\x91\x84\xb4", true); } // [V6, V7]
2110test { try toUnicodeFail("xn--c0e34564d.xn--9ca207st53lg3f"); } // [V6, V7]4544test { try toUnicodeFail("xn--c0e34564d.xn--9ca207st53lg3f"); } // [V6, V7]
4545test { try toAsciiFail("xn--c0e34564d.xn--9ca207st53lg3f", false); } // [V6, V7]
4546test { try toAsciiFail("xn--c0e34564d.xn--9ca207st53lg3f", true); } // [V6, V7]
2111test { try toUnicodeFail("\xf1\x8f\x81\x87\xe1\x9c\xb4\xef\xbc\x8e\xf0\x90\xa8\xbae\xcc\x81\xe2\xac\x93\xf0\x91\x84\xb4"); } // [V6, V7]4547test { try toUnicodeFail("\xf1\x8f\x81\x87\xe1\x9c\xb4\xef\xbc\x8e\xf0\x90\xa8\xbae\xcc\x81\xe2\xac\x93\xf0\x91\x84\xb4"); } // [V6, V7]
4548test { try toAsciiFail("\xf1\x8f\x81\x87\xe1\x9c\xb4\xef\xbc\x8e\xf0\x90\xa8\xbae\xcc\x81\xe2\xac\x93\xf0\x91\x84\xb4", false); } // [V6, V7]
4549test { try toAsciiFail("\xf1\x8f\x81\x87\xe1\x9c\xb4\xef\xbc\x8e\xf0\x90\xa8\xbae\xcc\x81\xe2\xac\x93\xf0\x91\x84\xb4", true); } // [V6, V7]
2112test { try toUnicodeFail("\xf1\x8f\x81\x87\xe1\x9c\xb4\xef\xbc\x8e\xf0\x90\xa8\xba\xc3\xa9\xe2\xac\x93\xf0\x91\x84\xb4"); } // [V6, V7]4550test { try toUnicodeFail("\xf1\x8f\x81\x87\xe1\x9c\xb4\xef\xbc\x8e\xf0\x90\xa8\xba\xc3\xa9\xe2\xac\x93\xf0\x91\x84\xb4"); } // [V6, V7]
4551test { try toAsciiFail("\xf1\x8f\x81\x87\xe1\x9c\xb4\xef\xbc\x8e\xf0\x90\xa8\xba\xc3\xa9\xe2\xac\x93\xf0\x91\x84\xb4", false); } // [V6, V7]
4552test { try toAsciiFail("\xf1\x8f\x81\x87\xe1\x9c\xb4\xef\xbc\x8e\xf0\x90\xa8\xba\xc3\xa9\xe2\xac\x93\xf0\x91\x84\xb4", true); } // [V6, V7]
2113test { try toUnicodeFail("\xe1\xa2\x87\xe2\x80\x8d\xea\xa3\x84\xef\xbd\xa1\xef\xb8\x92\xf0\x9e\xa4\xba"); } // [B1, B6, C2, V7]4553test { try toUnicodeFail("\xe1\xa2\x87\xe2\x80\x8d\xea\xa3\x84\xef\xbd\xa1\xef\xb8\x92\xf0\x9e\xa4\xba"); } // [B1, B6, C2, V7]
4554test { try toAsciiFail("\xe1\xa2\x87\xe2\x80\x8d\xea\xa3\x84\xef\xbd\xa1\xef\xb8\x92\xf0\x9e\xa4\xba", false); } // [B1, B6, C2, V7]
4555test { try toAsciiFail("\xe1\xa2\x87\xe2\x80\x8d\xea\xa3\x84\xef\xbd\xa1\xef\xb8\x92\xf0\x9e\xa4\xba", true); } // [B1, V7]
2114test { try toUnicodeFail("\xe1\xa2\x87\xe2\x80\x8d\xea\xa3\x84\xe3\x80\x82\xe3\x80\x82\xf0\x9e\xa4\xba"); } // [B6, C2, X4_2]4556test { try toUnicodeFail("\xe1\xa2\x87\xe2\x80\x8d\xea\xa3\x84\xe3\x80\x82\xe3\x80\x82\xf0\x9e\xa4\xba"); } // [B6, C2, X4_2]
4557test { try toAsciiFail("\xe1\xa2\x87\xe2\x80\x8d\xea\xa3\x84\xe3\x80\x82\xe3\x80\x82\xf0\x9e\xa4\xba", false); } // [B6, C2, A4_2]
4558test { try toAsciiFail("\xe1\xa2\x87\xe2\x80\x8d\xea\xa3\x84\xe3\x80\x82\xe3\x80\x82\xf0\x9e\xa4\xba", true); } // [A4_2]
2115test { try toUnicodeFail("\xe1\xa2\x87\xe2\x80\x8d\xea\xa3\x84\xe3\x80\x82\xe3\x80\x82\xf0\x9e\xa4\x98"); } // [B6, C2, X4_2]4559test { try toUnicodeFail("\xe1\xa2\x87\xe2\x80\x8d\xea\xa3\x84\xe3\x80\x82\xe3\x80\x82\xf0\x9e\xa4\x98"); } // [B6, C2, X4_2]
4560test { try toAsciiFail("\xe1\xa2\x87\xe2\x80\x8d\xea\xa3\x84\xe3\x80\x82\xe3\x80\x82\xf0\x9e\xa4\x98", false); } // [B6, C2, A4_2]
4561test { try toAsciiFail("\xe1\xa2\x87\xe2\x80\x8d\xea\xa3\x84\xe3\x80\x82\xe3\x80\x82\xf0\x9e\xa4\x98", true); } // [A4_2]
2116test { try toUnicodeFail("xn--09e4694e..xn--ye6h"); } // [X4_2]4562test { try toUnicodeFail("xn--09e4694e..xn--ye6h"); } // [X4_2]
4563test { try toAsciiFail("xn--09e4694e..xn--ye6h", false); } // [A4_2]
4564test { try toAsciiFail("xn--09e4694e..xn--ye6h", true); } // [A4_2]
2117test { try toUnicodeFail("xn--09e669a6x8j..xn--ye6h"); } // [B6, C2, X4_2]4565test { try toUnicodeFail("xn--09e669a6x8j..xn--ye6h"); } // [B6, C2, X4_2]
4566test { try toAsciiFail("xn--09e669a6x8j..xn--ye6h", false); } // [B6, C2, A4_2]
4567test { try toAsciiFail("xn--09e669a6x8j..xn--ye6h", true); } // [B6, C2, A4_2]
2118test { try toUnicodeFail("\xe1\xa2\x87\xe2\x80\x8d\xea\xa3\x84\xef\xbd\xa1\xef\xb8\x92\xf0\x9e\xa4\x98"); } // [B1, B6, C2, V7]4568test { try toUnicodeFail("\xe1\xa2\x87\xe2\x80\x8d\xea\xa3\x84\xef\xbd\xa1\xef\xb8\x92\xf0\x9e\xa4\x98"); } // [B1, B6, C2, V7]
4569test { try toAsciiFail("\xe1\xa2\x87\xe2\x80\x8d\xea\xa3\x84\xef\xbd\xa1\xef\xb8\x92\xf0\x9e\xa4\x98", false); } // [B1, B6, C2, V7]
4570test { try toAsciiFail("\xe1\xa2\x87\xe2\x80\x8d\xea\xa3\x84\xef\xbd\xa1\xef\xb8\x92\xf0\x9e\xa4\x98", true); } // [B1, V7]
2119test { try toUnicodeFail("xn--09e4694e.xn--y86cv562b"); } // [B1, V7]4571test { try toUnicodeFail("xn--09e4694e.xn--y86cv562b"); } // [B1, V7]
4572test { try toAsciiFail("xn--09e4694e.xn--y86cv562b", false); } // [B1, V7]
4573test { try toAsciiFail("xn--09e4694e.xn--y86cv562b", true); } // [B1, V7]
2120test { try toUnicodeFail("xn--09e669a6x8j.xn--y86cv562b"); } // [B1, B6, C2, V7]4574test { try toUnicodeFail("xn--09e669a6x8j.xn--y86cv562b"); } // [B1, B6, C2, V7]
4575test { try toAsciiFail("xn--09e669a6x8j.xn--y86cv562b", false); } // [B1, B6, C2, V7]
4576test { try toAsciiFail("xn--09e669a6x8j.xn--y86cv562b", true); } // [B1, B6, C2, V7]
2121test { try toUnicodeFail("\xf0\x9e\xa9\xac\xf2\x96\x99\xb1\xe1\x9c\x94\xe2\x80\x8c\xef\xbd\xa1\xd8\xb1\xde\xaa\xe2\x89\xae"); } // [B2, B3, V7]4577test { try toUnicodeFail("\xf0\x9e\xa9\xac\xf2\x96\x99\xb1\xe1\x9c\x94\xe2\x80\x8c\xef\xbd\xa1\xd8\xb1\xde\xaa\xe2\x89\xae"); } // [B2, B3, V7]
4578test { try toAsciiFail("\xf0\x9e\xa9\xac\xf2\x96\x99\xb1\xe1\x9c\x94\xe2\x80\x8c\xef\xbd\xa1\xd8\xb1\xde\xaa\xe2\x89\xae", false); } // [B2, B3, V7]
4579test { try toAsciiFail("\xf0\x9e\xa9\xac\xf2\x96\x99\xb1\xe1\x9c\x94\xe2\x80\x8c\xef\xbd\xa1\xd8\xb1\xde\xaa\xe2\x89\xae", true); } // [B2, B3, V7]
2122test { try toUnicodeFail("\xf0\x9e\xa9\xac\xf2\x96\x99\xb1\xe1\x9c\x94\xe2\x80\x8c\xef\xbd\xa1\xd8\xb1\xde\xaa<\xcc\xb8"); } // [B2, B3, V7]4580test { try toUnicodeFail("\xf0\x9e\xa9\xac\xf2\x96\x99\xb1\xe1\x9c\x94\xe2\x80\x8c\xef\xbd\xa1\xd8\xb1\xde\xaa<\xcc\xb8"); } // [B2, B3, V7]
4581test { try toAsciiFail("\xf0\x9e\xa9\xac\xf2\x96\x99\xb1\xe1\x9c\x94\xe2\x80\x8c\xef\xbd\xa1\xd8\xb1\xde\xaa<\xcc\xb8", false); } // [B2, B3, V7]
4582test { try toAsciiFail("\xf0\x9e\xa9\xac\xf2\x96\x99\xb1\xe1\x9c\x94\xe2\x80\x8c\xef\xbd\xa1\xd8\xb1\xde\xaa<\xcc\xb8", true); } // [B2, B3, V7]
2123test { try toUnicodeFail("\xf0\x9e\xa9\xac\xf2\x96\x99\xb1\xe1\x9c\x94\xe2\x80\x8c\xe3\x80\x82\xd8\xb1\xde\xaa\xe2\x89\xae"); } // [B2, B3, V7]4583test { try toUnicodeFail("\xf0\x9e\xa9\xac\xf2\x96\x99\xb1\xe1\x9c\x94\xe2\x80\x8c\xe3\x80\x82\xd8\xb1\xde\xaa\xe2\x89\xae"); } // [B2, B3, V7]
4584test { try toAsciiFail("\xf0\x9e\xa9\xac\xf2\x96\x99\xb1\xe1\x9c\x94\xe2\x80\x8c\xe3\x80\x82\xd8\xb1\xde\xaa\xe2\x89\xae", false); } // [B2, B3, V7]
4585test { try toAsciiFail("\xf0\x9e\xa9\xac\xf2\x96\x99\xb1\xe1\x9c\x94\xe2\x80\x8c\xe3\x80\x82\xd8\xb1\xde\xaa\xe2\x89\xae", true); } // [B2, B3, V7]
2124test { try toUnicodeFail("\xf0\x9e\xa9\xac\xf2\x96\x99\xb1\xe1\x9c\x94\xe2\x80\x8c\xe3\x80\x82\xd8\xb1\xde\xaa<\xcc\xb8"); } // [B2, B3, V7]4586test { try toUnicodeFail("\xf0\x9e\xa9\xac\xf2\x96\x99\xb1\xe1\x9c\x94\xe2\x80\x8c\xe3\x80\x82\xd8\xb1\xde\xaa<\xcc\xb8"); } // [B2, B3, V7]
4587test { try toAsciiFail("\xf0\x9e\xa9\xac\xf2\x96\x99\xb1\xe1\x9c\x94\xe2\x80\x8c\xe3\x80\x82\xd8\xb1\xde\xaa<\xcc\xb8", false); } // [B2, B3, V7]
4588test { try toAsciiFail("\xf0\x9e\xa9\xac\xf2\x96\x99\xb1\xe1\x9c\x94\xe2\x80\x8c\xe3\x80\x82\xd8\xb1\xde\xaa<\xcc\xb8", true); } // [B2, B3, V7]
2125test { try toUnicodeFail("xn--fze3930v7hz6b.xn--wgb86el10d"); } // [B2, B3, V7]4589test { try toUnicodeFail("xn--fze3930v7hz6b.xn--wgb86el10d"); } // [B2, B3, V7]
4590test { try toAsciiFail("xn--fze3930v7hz6b.xn--wgb86el10d", false); } // [B2, B3, V7]
4591test { try toAsciiFail("xn--fze3930v7hz6b.xn--wgb86el10d", true); } // [B2, B3, V7]
2126test { try toUnicodeFail("xn--fze607b9651bjwl7c.xn--wgb86el10d"); } // [B2, B3, V7]4592test { try toUnicodeFail("xn--fze607b9651bjwl7c.xn--wgb86el10d"); } // [B2, B3, V7]
4593test { try toAsciiFail("xn--fze607b9651bjwl7c.xn--wgb86el10d", false); } // [B2, B3, V7]
4594test { try toAsciiFail("xn--fze607b9651bjwl7c.xn--wgb86el10d", true); } // [B2, B3, V7]
2127test { try toUnicodeFail("\xe1\x83\x83\xef\xbc\x8e\xd9\x93\xe1\xa2\xa4"); } // [V6]4595test { try toUnicodeFail("\xe1\x83\x83\xef\xbc\x8e\xd9\x93\xe1\xa2\xa4"); } // [V6]
4596test { try toAsciiFail("\xe1\x83\x83\xef\xbc\x8e\xd9\x93\xe1\xa2\xa4", false); } // [V6]
4597test { try toAsciiFail("\xe1\x83\x83\xef\xbc\x8e\xd9\x93\xe1\xa2\xa4", true); } // [V6]
2128test { try toUnicodeFail("\xe1\x83\x83.\xd9\x93\xe1\xa2\xa4"); } // [V6]4598test { try toUnicodeFail("\xe1\x83\x83.\xd9\x93\xe1\xa2\xa4"); } // [V6]
4599test { try toAsciiFail("\xe1\x83\x83.\xd9\x93\xe1\xa2\xa4", false); } // [V6]
4600test { try toAsciiFail("\xe1\x83\x83.\xd9\x93\xe1\xa2\xa4", true); } // [V6]
2129test { try toUnicodeFail("\xe2\xb4\xa3.\xd9\x93\xe1\xa2\xa4"); } // [V6]4601test { try toUnicodeFail("\xe2\xb4\xa3.\xd9\x93\xe1\xa2\xa4"); } // [V6]
4602test { try toAsciiFail("\xe2\xb4\xa3.\xd9\x93\xe1\xa2\xa4", false); } // [V6]
4603test { try toAsciiFail("\xe2\xb4\xa3.\xd9\x93\xe1\xa2\xa4", true); } // [V6]
2130test { try toUnicodeFail("xn--rlj.xn--vhb294g"); } // [V6]4604test { try toUnicodeFail("xn--rlj.xn--vhb294g"); } // [V6]
4605test { try toAsciiFail("xn--rlj.xn--vhb294g", false); } // [V6]
4606test { try toAsciiFail("xn--rlj.xn--vhb294g", true); } // [V6]
2131test { try toUnicodeFail("\xe2\xb4\xa3\xef\xbc\x8e\xd9\x93\xe1\xa2\xa4"); } // [V6]4607test { try toUnicodeFail("\xe2\xb4\xa3\xef\xbc\x8e\xd9\x93\xe1\xa2\xa4"); } // [V6]
4608test { try toAsciiFail("\xe2\xb4\xa3\xef\xbc\x8e\xd9\x93\xe1\xa2\xa4", false); } // [V6]
4609test { try toAsciiFail("\xe2\xb4\xa3\xef\xbc\x8e\xd9\x93\xe1\xa2\xa4", true); } // [V6]
2132test { try toUnicodeFail("xn--7nd.xn--vhb294g"); } // [V6, V7]4610test { try toUnicodeFail("xn--7nd.xn--vhb294g"); } // [V6, V7]
4611test { try toAsciiFail("xn--7nd.xn--vhb294g", false); } // [V6, V7]
4612test { try toAsciiFail("xn--7nd.xn--vhb294g", true); } // [V6, V7]
2133test { try toUnicodeFail("\xf3\xa0\x84\x88\xe0\xa0\x93\xef\xbc\x8e\xec\x8b\x89\xf2\x84\x86\xbb\xe1\x83\x84\xf2\x82\xa1\x90"); } // [V7]4613test { try toUnicodeFail("\xf3\xa0\x84\x88\xe0\xa0\x93\xef\xbc\x8e\xec\x8b\x89\xf2\x84\x86\xbb\xe1\x83\x84\xf2\x82\xa1\x90"); } // [V7]
4614test { try toAsciiFail("\xf3\xa0\x84\x88\xe0\xa0\x93\xef\xbc\x8e\xec\x8b\x89\xf2\x84\x86\xbb\xe1\x83\x84\xf2\x82\xa1\x90", false); } // [V7]
4615test { try toAsciiFail("\xf3\xa0\x84\x88\xe0\xa0\x93\xef\xbc\x8e\xec\x8b\x89\xf2\x84\x86\xbb\xe1\x83\x84\xf2\x82\xa1\x90", true); } // [V7]
2134test { try toUnicodeFail("\xf3\xa0\x84\x88\xe0\xa0\x93\xef\xbc\x8e\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xb0\xf2\x84\x86\xbb\xe1\x83\x84\xf2\x82\xa1\x90"); } // [V7]4616test { try toUnicodeFail("\xf3\xa0\x84\x88\xe0\xa0\x93\xef\xbc\x8e\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xb0\xf2\x84\x86\xbb\xe1\x83\x84\xf2\x82\xa1\x90"); } // [V7]
4617test { try toAsciiFail("\xf3\xa0\x84\x88\xe0\xa0\x93\xef\xbc\x8e\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xb0\xf2\x84\x86\xbb\xe1\x83\x84\xf2\x82\xa1\x90", false); } // [V7]
4618test { try toAsciiFail("\xf3\xa0\x84\x88\xe0\xa0\x93\xef\xbc\x8e\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xb0\xf2\x84\x86\xbb\xe1\x83\x84\xf2\x82\xa1\x90", true); } // [V7]
2135test { try toUnicodeFail("\xf3\xa0\x84\x88\xe0\xa0\x93.\xec\x8b\x89\xf2\x84\x86\xbb\xe1\x83\x84\xf2\x82\xa1\x90"); } // [V7]4619test { try toUnicodeFail("\xf3\xa0\x84\x88\xe0\xa0\x93.\xec\x8b\x89\xf2\x84\x86\xbb\xe1\x83\x84\xf2\x82\xa1\x90"); } // [V7]
4620test { try toAsciiFail("\xf3\xa0\x84\x88\xe0\xa0\x93.\xec\x8b\x89\xf2\x84\x86\xbb\xe1\x83\x84\xf2\x82\xa1\x90", false); } // [V7]
4621test { try toAsciiFail("\xf3\xa0\x84\x88\xe0\xa0\x93.\xec\x8b\x89\xf2\x84\x86\xbb\xe1\x83\x84\xf2\x82\xa1\x90", true); } // [V7]
2136test { try toUnicodeFail("\xf3\xa0\x84\x88\xe0\xa0\x93.\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xb0\xf2\x84\x86\xbb\xe1\x83\x84\xf2\x82\xa1\x90"); } // [V7]4622test { try toUnicodeFail("\xf3\xa0\x84\x88\xe0\xa0\x93.\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xb0\xf2\x84\x86\xbb\xe1\x83\x84\xf2\x82\xa1\x90"); } // [V7]
4623test { try toAsciiFail("\xf3\xa0\x84\x88\xe0\xa0\x93.\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xb0\xf2\x84\x86\xbb\xe1\x83\x84\xf2\x82\xa1\x90", false); } // [V7]
4624test { try toAsciiFail("\xf3\xa0\x84\x88\xe0\xa0\x93.\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xb0\xf2\x84\x86\xbb\xe1\x83\x84\xf2\x82\xa1\x90", true); } // [V7]
2137test { try toUnicodeFail("\xf3\xa0\x84\x88\xe0\xa0\x93.\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xb0\xf2\x84\x86\xbb\xe2\xb4\xa4\xf2\x82\xa1\x90"); } // [V7]4625test { try toUnicodeFail("\xf3\xa0\x84\x88\xe0\xa0\x93.\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xb0\xf2\x84\x86\xbb\xe2\xb4\xa4\xf2\x82\xa1\x90"); } // [V7]
4626test { try toAsciiFail("\xf3\xa0\x84\x88\xe0\xa0\x93.\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xb0\xf2\x84\x86\xbb\xe2\xb4\xa4\xf2\x82\xa1\x90", false); } // [V7]
4627test { try toAsciiFail("\xf3\xa0\x84\x88\xe0\xa0\x93.\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xb0\xf2\x84\x86\xbb\xe2\xb4\xa4\xf2\x82\xa1\x90", true); } // [V7]
2138test { try toUnicodeFail("\xf3\xa0\x84\x88\xe0\xa0\x93.\xec\x8b\x89\xf2\x84\x86\xbb\xe2\xb4\xa4\xf2\x82\xa1\x90"); } // [V7]4628test { try toUnicodeFail("\xf3\xa0\x84\x88\xe0\xa0\x93.\xec\x8b\x89\xf2\x84\x86\xbb\xe2\xb4\xa4\xf2\x82\xa1\x90"); } // [V7]
4629test { try toAsciiFail("\xf3\xa0\x84\x88\xe0\xa0\x93.\xec\x8b\x89\xf2\x84\x86\xbb\xe2\xb4\xa4\xf2\x82\xa1\x90", false); } // [V7]
4630test { try toAsciiFail("\xf3\xa0\x84\x88\xe0\xa0\x93.\xec\x8b\x89\xf2\x84\x86\xbb\xe2\xb4\xa4\xf2\x82\xa1\x90", true); } // [V7]
2139test { try toUnicodeFail("xn--oub.xn--sljz109bpe25dviva"); } // [V7]4631test { try toUnicodeFail("xn--oub.xn--sljz109bpe25dviva"); } // [V7]
4632test { try toAsciiFail("xn--oub.xn--sljz109bpe25dviva", false); } // [V7]
4633test { try toAsciiFail("xn--oub.xn--sljz109bpe25dviva", true); } // [V7]
2140test { try toUnicodeFail("\xf3\xa0\x84\x88\xe0\xa0\x93\xef\xbc\x8e\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xb0\xf2\x84\x86\xbb\xe2\xb4\xa4\xf2\x82\xa1\x90"); } // [V7]4634test { try toUnicodeFail("\xf3\xa0\x84\x88\xe0\xa0\x93\xef\xbc\x8e\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xb0\xf2\x84\x86\xbb\xe2\xb4\xa4\xf2\x82\xa1\x90"); } // [V7]
4635test { try toAsciiFail("\xf3\xa0\x84\x88\xe0\xa0\x93\xef\xbc\x8e\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xb0\xf2\x84\x86\xbb\xe2\xb4\xa4\xf2\x82\xa1\x90", false); } // [V7]
4636test { try toAsciiFail("\xf3\xa0\x84\x88\xe0\xa0\x93\xef\xbc\x8e\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xb0\xf2\x84\x86\xbb\xe2\xb4\xa4\xf2\x82\xa1\x90", true); } // [V7]
2141test { try toUnicodeFail("\xf3\xa0\x84\x88\xe0\xa0\x93\xef\xbc\x8e\xec\x8b\x89\xf2\x84\x86\xbb\xe2\xb4\xa4\xf2\x82\xa1\x90"); } // [V7]4637test { try toUnicodeFail("\xf3\xa0\x84\x88\xe0\xa0\x93\xef\xbc\x8e\xec\x8b\x89\xf2\x84\x86\xbb\xe2\xb4\xa4\xf2\x82\xa1\x90"); } // [V7]
4638test { try toAsciiFail("\xf3\xa0\x84\x88\xe0\xa0\x93\xef\xbc\x8e\xec\x8b\x89\xf2\x84\x86\xbb\xe2\xb4\xa4\xf2\x82\xa1\x90", false); } // [V7]
4639test { try toAsciiFail("\xf3\xa0\x84\x88\xe0\xa0\x93\xef\xbc\x8e\xec\x8b\x89\xf2\x84\x86\xbb\xe2\xb4\xa4\xf2\x82\xa1\x90", true); } // [V7]
2142test { try toUnicodeFail("xn--oub.xn--8nd9522gpe69cviva"); } // [V7]4640test { try toUnicodeFail("xn--oub.xn--8nd9522gpe69cviva"); } // [V7]
4641test { try toAsciiFail("xn--oub.xn--8nd9522gpe69cviva", false); } // [V7]
4642test { try toAsciiFail("xn--oub.xn--8nd9522gpe69cviva", true); } // [V7]
2143test { try toUnicodeFail("\xea\xa8\xac\xf0\x91\xb2\xab\xe2\x89\xae\xef\xbc\x8e\xe2\xa4\x82"); } // [V6]4643test { try toUnicodeFail("\xea\xa8\xac\xf0\x91\xb2\xab\xe2\x89\xae\xef\xbc\x8e\xe2\xa4\x82"); } // [V6]
4644test { try toAsciiFail("\xea\xa8\xac\xf0\x91\xb2\xab\xe2\x89\xae\xef\xbc\x8e\xe2\xa4\x82", false); } // [V6]
4645test { try toAsciiFail("\xea\xa8\xac\xf0\x91\xb2\xab\xe2\x89\xae\xef\xbc\x8e\xe2\xa4\x82", true); } // [V6]
2144test { try toUnicodeFail("\xea\xa8\xac\xf0\x91\xb2\xab<\xcc\xb8\xef\xbc\x8e\xe2\xa4\x82"); } // [V6]4646test { try toUnicodeFail("\xea\xa8\xac\xf0\x91\xb2\xab<\xcc\xb8\xef\xbc\x8e\xe2\xa4\x82"); } // [V6]
4647test { try toAsciiFail("\xea\xa8\xac\xf0\x91\xb2\xab<\xcc\xb8\xef\xbc\x8e\xe2\xa4\x82", false); } // [V6]
4648test { try toAsciiFail("\xea\xa8\xac\xf0\x91\xb2\xab<\xcc\xb8\xef\xbc\x8e\xe2\xa4\x82", true); } // [V6]
2145test { try toUnicodeFail("\xea\xa8\xac\xf0\x91\xb2\xab\xe2\x89\xae.\xe2\xa4\x82"); } // [V6]4649test { try toUnicodeFail("\xea\xa8\xac\xf0\x91\xb2\xab\xe2\x89\xae.\xe2\xa4\x82"); } // [V6]
4650test { try toAsciiFail("\xea\xa8\xac\xf0\x91\xb2\xab\xe2\x89\xae.\xe2\xa4\x82", false); } // [V6]
4651test { try toAsciiFail("\xea\xa8\xac\xf0\x91\xb2\xab\xe2\x89\xae.\xe2\xa4\x82", true); } // [V6]
2146test { try toUnicodeFail("\xea\xa8\xac\xf0\x91\xb2\xab<\xcc\xb8.\xe2\xa4\x82"); } // [V6]4652test { try toUnicodeFail("\xea\xa8\xac\xf0\x91\xb2\xab<\xcc\xb8.\xe2\xa4\x82"); } // [V6]
4653test { try toAsciiFail("\xea\xa8\xac\xf0\x91\xb2\xab<\xcc\xb8.\xe2\xa4\x82", false); } // [V6]
4654test { try toAsciiFail("\xea\xa8\xac\xf0\x91\xb2\xab<\xcc\xb8.\xe2\xa4\x82", true); } // [V6]
2147test { try toUnicodeFail("xn--gdh1854cn19c.xn--kqi"); } // [V6]4655test { try toUnicodeFail("xn--gdh1854cn19c.xn--kqi"); } // [V6]
4656test { try toAsciiFail("xn--gdh1854cn19c.xn--kqi", false); } // [V6]
4657test { try toAsciiFail("xn--gdh1854cn19c.xn--kqi", true); } // [V6]
2148test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe1\x83\x82\xef\xbc\x8e\xe1\x82\xa3"); } // [B1, V7]4658test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe1\x83\x82\xef\xbc\x8e\xe1\x82\xa3"); } // [B1, V7]
4659test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe1\x83\x82\xef\xbc\x8e\xe1\x82\xa3", false); } // [B1, V7]
4660test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe1\x83\x82\xef\xbc\x8e\xe1\x82\xa3", true); } // [B1, V7]
2149test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe1\x83\x82\xef\xbc\x8e\xe1\x82\xa3"); } // [B1, V7]4661test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe1\x83\x82\xef\xbc\x8e\xe1\x82\xa3"); } // [B1, V7]
4662test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe1\x83\x82\xef\xbc\x8e\xe1\x82\xa3", false); } // [B1, V7]
4663test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe1\x83\x82\xef\xbc\x8e\xe1\x82\xa3", true); } // [B1, V7]
2150test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe1\x83\x82.\xe1\x82\xa3"); } // [B1, V7]4664test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe1\x83\x82.\xe1\x82\xa3"); } // [B1, V7]
4665test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe1\x83\x82.\xe1\x82\xa3", false); } // [B1, V7]
4666test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe1\x83\x82.\xe1\x82\xa3", true); } // [B1, V7]
2151test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe1\x83\x82.\xe1\x82\xa3"); } // [B1, V7]4667test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe1\x83\x82.\xe1\x82\xa3"); } // [B1, V7]
4668test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe1\x83\x82.\xe1\x82\xa3", false); } // [B1, V7]
4669test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe1\x83\x82.\xe1\x82\xa3", true); } // [B1, V7]
2152test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe2\xb4\xa2.\xe2\xb4\x83"); } // [B1, V7]4670test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe2\xb4\xa2.\xe2\xb4\x83"); } // [B1, V7]
4671test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe2\xb4\xa2.\xe2\xb4\x83", false); } // [B1, V7]
4672test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe2\xb4\xa2.\xe2\xb4\x83", true); } // [B1, V7]
2153test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe2\xb4\xa2.\xe2\xb4\x83"); } // [B1, V7]4673test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe2\xb4\xa2.\xe2\xb4\x83"); } // [B1, V7]
4674test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe2\xb4\xa2.\xe2\xb4\x83", false); } // [B1, V7]
4675test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe2\xb4\xa2.\xe2\xb4\x83", true); } // [B1, V7]
2154test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe1\x83\x82.\xe2\xb4\x83"); } // [B1, V7]4676test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe1\x83\x82.\xe2\xb4\x83"); } // [B1, V7]
4677test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe1\x83\x82.\xe2\xb4\x83", false); } // [B1, V7]
4678test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe1\x83\x82.\xe2\xb4\x83", true); } // [B1, V7]
2155test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe1\x83\x82.\xe2\xb4\x83"); } // [B1, V7]4679test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe1\x83\x82.\xe2\xb4\x83"); } // [B1, V7]
4680test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe1\x83\x82.\xe2\xb4\x83", false); } // [B1, V7]
4681test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe1\x83\x82.\xe2\xb4\x83", true); } // [B1, V7]
2156test { try toUnicodeFail("xn--mfb266l4khr54u.xn--ukj"); } // [B1, V7]4682test { try toUnicodeFail("xn--mfb266l4khr54u.xn--ukj"); } // [B1, V7]
4683test { try toAsciiFail("xn--mfb266l4khr54u.xn--ukj", false); } // [B1, V7]
4684test { try toAsciiFail("xn--mfb266l4khr54u.xn--ukj", true); } // [B1, V7]
2157test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe2\xb4\xa2\xef\xbc\x8e\xe2\xb4\x83"); } // [B1, V7]4685test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe2\xb4\xa2\xef\xbc\x8e\xe2\xb4\x83"); } // [B1, V7]
4686test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe2\xb4\xa2\xef\xbc\x8e\xe2\xb4\x83", false); } // [B1, V7]
4687test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe2\xb4\xa2\xef\xbc\x8e\xe2\xb4\x83", true); } // [B1, V7]
2158test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe2\xb4\xa2\xef\xbc\x8e\xe2\xb4\x83"); } // [B1, V7]4688test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe2\xb4\xa2\xef\xbc\x8e\xe2\xb4\x83"); } // [B1, V7]
4689test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe2\xb4\xa2\xef\xbc\x8e\xe2\xb4\x83", false); } // [B1, V7]
4690test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe2\xb4\xa2\xef\xbc\x8e\xe2\xb4\x83", true); } // [B1, V7]
2159test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe1\x83\x82\xef\xbc\x8e\xe2\xb4\x83"); } // [B1, V7]4691test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe1\x83\x82\xef\xbc\x8e\xe2\xb4\x83"); } // [B1, V7]
4692test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe1\x83\x82\xef\xbc\x8e\xe2\xb4\x83", false); } // [B1, V7]
4693test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94\xe2\x89\xae\xe1\x83\x82\xef\xbc\x8e\xe2\xb4\x83", true); } // [B1, V7]
2160test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe1\x83\x82\xef\xbc\x8e\xe2\xb4\x83"); } // [B1, V7]4694test { try toUnicodeFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe1\x83\x82\xef\xbc\x8e\xe2\xb4\x83"); } // [B1, V7]
4695test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe1\x83\x82\xef\xbc\x8e\xe2\xb4\x83", false); } // [B1, V7]
4696test { try toAsciiFail("\xd8\x84\xf0\x90\xa9\x94<\xcc\xb8\xe1\x83\x82\xef\xbc\x8e\xe2\xb4\x83", true); } // [B1, V7]
2161test { try toUnicodeFail("xn--mfb416c0jox02t.xn--ukj"); } // [B1, V7]4697test { try toUnicodeFail("xn--mfb416c0jox02t.xn--ukj"); } // [B1, V7]
4698test { try toAsciiFail("xn--mfb416c0jox02t.xn--ukj", false); } // [B1, V7]
4699test { try toAsciiFail("xn--mfb416c0jox02t.xn--ukj", true); } // [B1, V7]
2162test { try toUnicodeFail("xn--mfb416c0jox02t.xn--bnd"); } // [B1, V7]4700test { try toUnicodeFail("xn--mfb416c0jox02t.xn--bnd"); } // [B1, V7]
4701test { try toAsciiFail("xn--mfb416c0jox02t.xn--bnd", false); } // [B1, V7]
4702test { try toAsciiFail("xn--mfb416c0jox02t.xn--bnd", true); } // [B1, V7]
2163test { try toUnicodeFail("\xf0\x91\x81\x85\xe3\x80\x82-"); } // [V3, V6]4703test { try toUnicodeFail("\xf0\x91\x81\x85\xe3\x80\x82-"); } // [V3, V6]
4704test { try toAsciiFail("\xf0\x91\x81\x85\xe3\x80\x82-", false); } // [V3, V6]
4705test { try toAsciiFail("\xf0\x91\x81\x85\xe3\x80\x82-", true); } // [V3, V6]
2164test { try toUnicodeFail("xn--210d.-"); } // [V3, V6]4706test { try toUnicodeFail("xn--210d.-"); } // [V3, V6]
4707test { try toAsciiFail("xn--210d.-", false); } // [V3, V6]
4708test { try toAsciiFail("xn--210d.-", true); } // [V3, V6]
2165test { try toUnicodeFail("\xe0\xb7\x8a\xf2\x95\xb8\xbd\xf3\xa0\xa7\xb1\xef\xbd\xa1\xe9\xa5\x88\xe2\x89\xa0\xd9\xa4"); } // [B1, B5, B6, V6, V7]4709test { try toUnicodeFail("\xe0\xb7\x8a\xf2\x95\xb8\xbd\xf3\xa0\xa7\xb1\xef\xbd\xa1\xe9\xa5\x88\xe2\x89\xa0\xd9\xa4"); } // [B1, B5, B6, V6, V7]
4710test { try toAsciiFail("\xe0\xb7\x8a\xf2\x95\xb8\xbd\xf3\xa0\xa7\xb1\xef\xbd\xa1\xe9\xa5\x88\xe2\x89\xa0\xd9\xa4", false); } // [B1, B5, B6, V6, V7]
4711test { try toAsciiFail("\xe0\xb7\x8a\xf2\x95\xb8\xbd\xf3\xa0\xa7\xb1\xef\xbd\xa1\xe9\xa5\x88\xe2\x89\xa0\xd9\xa4", true); } // [B1, B5, B6, V6, V7]
2166test { try toUnicodeFail("\xe0\xb7\x8a\xf2\x95\xb8\xbd\xf3\xa0\xa7\xb1\xef\xbd\xa1\xe9\xa5\x88=\xcc\xb8\xd9\xa4"); } // [B1, B5, B6, V6, V7]4712test { try toUnicodeFail("\xe0\xb7\x8a\xf2\x95\xb8\xbd\xf3\xa0\xa7\xb1\xef\xbd\xa1\xe9\xa5\x88=\xcc\xb8\xd9\xa4"); } // [B1, B5, B6, V6, V7]
4713test { try toAsciiFail("\xe0\xb7\x8a\xf2\x95\xb8\xbd\xf3\xa0\xa7\xb1\xef\xbd\xa1\xe9\xa5\x88=\xcc\xb8\xd9\xa4", false); } // [B1, B5, B6, V6, V7]
4714test { try toAsciiFail("\xe0\xb7\x8a\xf2\x95\xb8\xbd\xf3\xa0\xa7\xb1\xef\xbd\xa1\xe9\xa5\x88=\xcc\xb8\xd9\xa4", true); } // [B1, B5, B6, V6, V7]
2167test { try toUnicodeFail("\xe0\xb7\x8a\xf2\x95\xb8\xbd\xf3\xa0\xa7\xb1\xe3\x80\x82\xe9\xa5\x88\xe2\x89\xa0\xd9\xa4"); } // [B1, B5, B6, V6, V7]4715test { try toUnicodeFail("\xe0\xb7\x8a\xf2\x95\xb8\xbd\xf3\xa0\xa7\xb1\xe3\x80\x82\xe9\xa5\x88\xe2\x89\xa0\xd9\xa4"); } // [B1, B5, B6, V6, V7]
4716test { try toAsciiFail("\xe0\xb7\x8a\xf2\x95\xb8\xbd\xf3\xa0\xa7\xb1\xe3\x80\x82\xe9\xa5\x88\xe2\x89\xa0\xd9\xa4", false); } // [B1, B5, B6, V6, V7]
4717test { try toAsciiFail("\xe0\xb7\x8a\xf2\x95\xb8\xbd\xf3\xa0\xa7\xb1\xe3\x80\x82\xe9\xa5\x88\xe2\x89\xa0\xd9\xa4", true); } // [B1, B5, B6, V6, V7]
2168test { try toUnicodeFail("\xe0\xb7\x8a\xf2\x95\xb8\xbd\xf3\xa0\xa7\xb1\xe3\x80\x82\xe9\xa5\x88=\xcc\xb8\xd9\xa4"); } // [B1, B5, B6, V6, V7]4718test { try toUnicodeFail("\xe0\xb7\x8a\xf2\x95\xb8\xbd\xf3\xa0\xa7\xb1\xe3\x80\x82\xe9\xa5\x88=\xcc\xb8\xd9\xa4"); } // [B1, B5, B6, V6, V7]
4719test { try toAsciiFail("\xe0\xb7\x8a\xf2\x95\xb8\xbd\xf3\xa0\xa7\xb1\xe3\x80\x82\xe9\xa5\x88=\xcc\xb8\xd9\xa4", false); } // [B1, B5, B6, V6, V7]
4720test { try toAsciiFail("\xe0\xb7\x8a\xf2\x95\xb8\xbd\xf3\xa0\xa7\xb1\xe3\x80\x82\xe9\xa5\x88=\xcc\xb8\xd9\xa4", true); } // [B1, B5, B6, V6, V7]
2169test { try toUnicodeFail("xn--h1c25913jfwov.xn--dib144ler5f"); } // [B1, B5, B6, V6, V7]4721test { try toUnicodeFail("xn--h1c25913jfwov.xn--dib144ler5f"); } // [B1, B5, B6, V6, V7]
4722test { try toAsciiFail("xn--h1c25913jfwov.xn--dib144ler5f", false); } // [B1, B5, B6, V6, V7]
4723test { try toAsciiFail("xn--h1c25913jfwov.xn--dib144ler5f", true); } // [B1, B5, B6, V6, V7]
2170test { try toUnicodeFail("\xf0\x9e\xa5\x83\xe1\xa0\xa0\xe2\x81\xb7\xef\xbd\xa1\xe2\x89\xaf\xe9\x82\x85\xe2\xac\xbb4"); } // [B1, B2]4724test { try toUnicodeFail("\xf0\x9e\xa5\x83\xe1\xa0\xa0\xe2\x81\xb7\xef\xbd\xa1\xe2\x89\xaf\xe9\x82\x85\xe2\xac\xbb4"); } // [B1, B2]
4725test { try toAsciiFail("\xf0\x9e\xa5\x83\xe1\xa0\xa0\xe2\x81\xb7\xef\xbd\xa1\xe2\x89\xaf\xe9\x82\x85\xe2\xac\xbb4", false); } // [B1, B2]
4726test { try toAsciiFail("\xf0\x9e\xa5\x83\xe1\xa0\xa0\xe2\x81\xb7\xef\xbd\xa1\xe2\x89\xaf\xe9\x82\x85\xe2\xac\xbb4", true); } // [B1, B2]
2171test { try toUnicodeFail("\xf0\x9e\xa5\x83\xe1\xa0\xa0\xe2\x81\xb7\xef\xbd\xa1>\xcc\xb8\xe9\x82\x85\xe2\xac\xbb4"); } // [B1, B2]4727test { try toUnicodeFail("\xf0\x9e\xa5\x83\xe1\xa0\xa0\xe2\x81\xb7\xef\xbd\xa1>\xcc\xb8\xe9\x82\x85\xe2\xac\xbb4"); } // [B1, B2]
4728test { try toAsciiFail("\xf0\x9e\xa5\x83\xe1\xa0\xa0\xe2\x81\xb7\xef\xbd\xa1>\xcc\xb8\xe9\x82\x85\xe2\xac\xbb4", false); } // [B1, B2]
4729test { try toAsciiFail("\xf0\x9e\xa5\x83\xe1\xa0\xa0\xe2\x81\xb7\xef\xbd\xa1>\xcc\xb8\xe9\x82\x85\xe2\xac\xbb4", true); } // [B1, B2]
2172test { try toUnicodeFail("\xf0\x9e\xa5\x83\xe1\xa0\xa07\xe3\x80\x82\xe2\x89\xaf\xe9\x82\x85\xe2\xac\xbb4"); } // [B1, B2]4730test { try toUnicodeFail("\xf0\x9e\xa5\x83\xe1\xa0\xa07\xe3\x80\x82\xe2\x89\xaf\xe9\x82\x85\xe2\xac\xbb4"); } // [B1, B2]
4731test { try toAsciiFail("\xf0\x9e\xa5\x83\xe1\xa0\xa07\xe3\x80\x82\xe2\x89\xaf\xe9\x82\x85\xe2\xac\xbb4", false); } // [B1, B2]
4732test { try toAsciiFail("\xf0\x9e\xa5\x83\xe1\xa0\xa07\xe3\x80\x82\xe2\x89\xaf\xe9\x82\x85\xe2\xac\xbb4", true); } // [B1, B2]
2173test { try toUnicodeFail("\xf0\x9e\xa5\x83\xe1\xa0\xa07\xe3\x80\x82>\xcc\xb8\xe9\x82\x85\xe2\xac\xbb4"); } // [B1, B2]4733test { try toUnicodeFail("\xf0\x9e\xa5\x83\xe1\xa0\xa07\xe3\x80\x82>\xcc\xb8\xe9\x82\x85\xe2\xac\xbb4"); } // [B1, B2]
4734test { try toAsciiFail("\xf0\x9e\xa5\x83\xe1\xa0\xa07\xe3\x80\x82>\xcc\xb8\xe9\x82\x85\xe2\xac\xbb4", false); } // [B1, B2]
4735test { try toAsciiFail("\xf0\x9e\xa5\x83\xe1\xa0\xa07\xe3\x80\x82>\xcc\xb8\xe9\x82\x85\xe2\xac\xbb4", true); } // [B1, B2]
2174test { try toUnicodeFail("\xf0\x9e\xa4\xa1\xe1\xa0\xa07\xe3\x80\x82>\xcc\xb8\xe9\x82\x85\xe2\xac\xbb4"); } // [B1, B2]4736test { try toUnicodeFail("\xf0\x9e\xa4\xa1\xe1\xa0\xa07\xe3\x80\x82>\xcc\xb8\xe9\x82\x85\xe2\xac\xbb4"); } // [B1, B2]
4737test { try toAsciiFail("\xf0\x9e\xa4\xa1\xe1\xa0\xa07\xe3\x80\x82>\xcc\xb8\xe9\x82\x85\xe2\xac\xbb4", false); } // [B1, B2]
4738test { try toAsciiFail("\xf0\x9e\xa4\xa1\xe1\xa0\xa07\xe3\x80\x82>\xcc\xb8\xe9\x82\x85\xe2\xac\xbb4", true); } // [B1, B2]
2175test { try toUnicodeFail("\xf0\x9e\xa4\xa1\xe1\xa0\xa07\xe3\x80\x82\xe2\x89\xaf\xe9\x82\x85\xe2\xac\xbb4"); } // [B1, B2]4739test { try toUnicodeFail("\xf0\x9e\xa4\xa1\xe1\xa0\xa07\xe3\x80\x82\xe2\x89\xaf\xe9\x82\x85\xe2\xac\xbb4"); } // [B1, B2]
4740test { try toAsciiFail("\xf0\x9e\xa4\xa1\xe1\xa0\xa07\xe3\x80\x82\xe2\x89\xaf\xe9\x82\x85\xe2\xac\xbb4", false); } // [B1, B2]
4741test { try toAsciiFail("\xf0\x9e\xa4\xa1\xe1\xa0\xa07\xe3\x80\x82\xe2\x89\xaf\xe9\x82\x85\xe2\xac\xbb4", true); } // [B1, B2]
2176test { try toUnicodeFail("xn--7-v4j2826w.xn--4-ogoy01bou3i"); } // [B1, B2]4742test { try toUnicodeFail("xn--7-v4j2826w.xn--4-ogoy01bou3i"); } // [B1, B2]
4743test { try toAsciiFail("xn--7-v4j2826w.xn--4-ogoy01bou3i", false); } // [B1, B2]
4744test { try toAsciiFail("xn--7-v4j2826w.xn--4-ogoy01bou3i", true); } // [B1, B2]
2177test { try toUnicodeFail("\xf0\x9e\xa4\xa1\xe1\xa0\xa0\xe2\x81\xb7\xef\xbd\xa1>\xcc\xb8\xe9\x82\x85\xe2\xac\xbb4"); } // [B1, B2]4745test { try toUnicodeFail("\xf0\x9e\xa4\xa1\xe1\xa0\xa0\xe2\x81\xb7\xef\xbd\xa1>\xcc\xb8\xe9\x82\x85\xe2\xac\xbb4"); } // [B1, B2]
4746test { try toAsciiFail("\xf0\x9e\xa4\xa1\xe1\xa0\xa0\xe2\x81\xb7\xef\xbd\xa1>\xcc\xb8\xe9\x82\x85\xe2\xac\xbb4", false); } // [B1, B2]
4747test { try toAsciiFail("\xf0\x9e\xa4\xa1\xe1\xa0\xa0\xe2\x81\xb7\xef\xbd\xa1>\xcc\xb8\xe9\x82\x85\xe2\xac\xbb4", true); } // [B1, B2]
2178test { try toUnicodeFail("\xf0\x9e\xa4\xa1\xe1\xa0\xa0\xe2\x81\xb7\xef\xbd\xa1\xe2\x89\xaf\xe9\x82\x85\xe2\xac\xbb4"); } // [B1, B2]4748test { try toUnicodeFail("\xf0\x9e\xa4\xa1\xe1\xa0\xa0\xe2\x81\xb7\xef\xbd\xa1\xe2\x89\xaf\xe9\x82\x85\xe2\xac\xbb4"); } // [B1, B2]
4749test { try toAsciiFail("\xf0\x9e\xa4\xa1\xe1\xa0\xa0\xe2\x81\xb7\xef\xbd\xa1\xe2\x89\xaf\xe9\x82\x85\xe2\xac\xbb4", false); } // [B1, B2]
4750test { try toAsciiFail("\xf0\x9e\xa4\xa1\xe1\xa0\xa0\xe2\x81\xb7\xef\xbd\xa1\xe2\x89\xaf\xe9\x82\x85\xe2\xac\xbb4", true); } // [B1, B2]
2179test { try toUnicodeFail("\xf2\xa0\xbf\xaf\xe1\xa1\xb3-\xf0\x91\x90\xbb.\xf0\x90\xb9\xb4\xf0\x90\x8b\xab\xd8\x85\xf3\x91\x8e\xb3"); } // [B1, B6, V7]4751test { try toUnicodeFail("\xf2\xa0\xbf\xaf\xe1\xa1\xb3-\xf0\x91\x90\xbb.\xf0\x90\xb9\xb4\xf0\x90\x8b\xab\xd8\x85\xf3\x91\x8e\xb3"); } // [B1, B6, V7]
4752test { try toAsciiFail("\xf2\xa0\xbf\xaf\xe1\xa1\xb3-\xf0\x91\x90\xbb.\xf0\x90\xb9\xb4\xf0\x90\x8b\xab\xd8\x85\xf3\x91\x8e\xb3", false); } // [B1, B6, V7]
4753test { try toAsciiFail("\xf2\xa0\xbf\xaf\xe1\xa1\xb3-\xf0\x91\x90\xbb.\xf0\x90\xb9\xb4\xf0\x90\x8b\xab\xd8\x85\xf3\x91\x8e\xb3", true); } // [B1, B6, V7]
2180test { try toUnicodeFail("xn----m9j3429kxmy7e.xn--nfb7950kdihrp812a"); } // [B1, B6, V7]4754test { try toUnicodeFail("xn----m9j3429kxmy7e.xn--nfb7950kdihrp812a"); } // [B1, B6, V7]
4755test { try toAsciiFail("xn----m9j3429kxmy7e.xn--nfb7950kdihrp812a", false); } // [B1, B6, V7]
4756test { try toAsciiFail("xn----m9j3429kxmy7e.xn--nfb7950kdihrp812a", true); } // [B1, B6, V7]
2181test { try toUnicodeFail("\xf2\xa0\xb6\x86\xe0\xa1\x85\xe0\xa9\x91.\xeb\x84\xa8-\xf3\xb6\xa7\x88"); } // [B5, B6, V7]4757test { try toUnicodeFail("\xf2\xa0\xb6\x86\xe0\xa1\x85\xe0\xa9\x91.\xeb\x84\xa8-\xf3\xb6\xa7\x88"); } // [B5, B6, V7]
4758test { try toAsciiFail("\xf2\xa0\xb6\x86\xe0\xa1\x85\xe0\xa9\x91.\xeb\x84\xa8-\xf3\xb6\xa7\x88", false); } // [B5, B6, V7]
4759test { try toAsciiFail("\xf2\xa0\xb6\x86\xe0\xa1\x85\xe0\xa9\x91.\xeb\x84\xa8-\xf3\xb6\xa7\x88", true); } // [B5, B6, V7]
2182test { try toUnicodeFail("\xf2\xa0\xb6\x86\xe0\xa1\x85\xe0\xa9\x91.\xe1\x84\x82\xe1\x85\xa6\xe1\x86\xab-\xf3\xb6\xa7\x88"); } // [B5, B6, V7]4760test { try toUnicodeFail("\xf2\xa0\xb6\x86\xe0\xa1\x85\xe0\xa9\x91.\xe1\x84\x82\xe1\x85\xa6\xe1\x86\xab-\xf3\xb6\xa7\x88"); } // [B5, B6, V7]
4761test { try toAsciiFail("\xf2\xa0\xb6\x86\xe0\xa1\x85\xe0\xa9\x91.\xe1\x84\x82\xe1\x85\xa6\xe1\x86\xab-\xf3\xb6\xa7\x88", false); } // [B5, B6, V7]
4762test { try toAsciiFail("\xf2\xa0\xb6\x86\xe0\xa1\x85\xe0\xa9\x91.\xe1\x84\x82\xe1\x85\xa6\xe1\x86\xab-\xf3\xb6\xa7\x88", true); } // [B5, B6, V7]
2183test { try toUnicodeFail("xn--3vb26hb6834b.xn----i37ez0957g"); } // [B5, B6, V7]4763test { try toUnicodeFail("xn--3vb26hb6834b.xn----i37ez0957g"); } // [B5, B6, V7]
4764test { try toAsciiFail("xn--3vb26hb6834b.xn----i37ez0957g", false); } // [B5, B6, V7]
4765test { try toAsciiFail("xn--3vb26hb6834b.xn----i37ez0957g", true); } // [B5, B6, V7]
2184test { try toUnicodeFail("\xea\xa1\xa6\xe1\xa1\x91\xe2\x80\x8d\xe2\x92\x88\xe3\x80\x82\xf0\x90\x8b\xa3-"); } // [C2, V3, V7]4766test { try toUnicodeFail("\xea\xa1\xa6\xe1\xa1\x91\xe2\x80\x8d\xe2\x92\x88\xe3\x80\x82\xf0\x90\x8b\xa3-"); } // [C2, V3, V7]
4767test { try toAsciiFail("\xea\xa1\xa6\xe1\xa1\x91\xe2\x80\x8d\xe2\x92\x88\xe3\x80\x82\xf0\x90\x8b\xa3-", false); } // [C2, V3, V7]
4768test { try toAsciiFail("\xea\xa1\xa6\xe1\xa1\x91\xe2\x80\x8d\xe2\x92\x88\xe3\x80\x82\xf0\x90\x8b\xa3-", true); } // [V3, V7]
2185test { try toUnicodeFail("\xea\xa1\xa6\xe1\xa1\x91\xe2\x80\x8d1.\xe3\x80\x82\xf0\x90\x8b\xa3-"); } // [C2, V3, X4_2]4769test { try toUnicodeFail("\xea\xa1\xa6\xe1\xa1\x91\xe2\x80\x8d1.\xe3\x80\x82\xf0\x90\x8b\xa3-"); } // [C2, V3, X4_2]
4770test { try toAsciiFail("\xea\xa1\xa6\xe1\xa1\x91\xe2\x80\x8d1.\xe3\x80\x82\xf0\x90\x8b\xa3-", false); } // [C2, V3, A4_2]
4771test { try toAsciiFail("\xea\xa1\xa6\xe1\xa1\x91\xe2\x80\x8d1.\xe3\x80\x82\xf0\x90\x8b\xa3-", true); } // [V3, A4_2]
2186test { try toUnicodeFail("xn--1-o7j0610f..xn----381i"); } // [V3, X4_2]4772test { try toUnicodeFail("xn--1-o7j0610f..xn----381i"); } // [V3, X4_2]
4773test { try toAsciiFail("xn--1-o7j0610f..xn----381i", false); } // [V3, A4_2]
4774test { try toAsciiFail("xn--1-o7j0610f..xn----381i", true); } // [V3, A4_2]
2187test { try toUnicodeFail("xn--1-o7j663bdl7m..xn----381i"); } // [C2, V3, X4_2]4775test { try toUnicodeFail("xn--1-o7j663bdl7m..xn----381i"); } // [C2, V3, X4_2]
4776test { try toAsciiFail("xn--1-o7j663bdl7m..xn----381i", false); } // [C2, V3, A4_2]
4777test { try toAsciiFail("xn--1-o7j663bdl7m..xn----381i", true); } // [C2, V3, A4_2]
2188test { try toUnicodeFail("xn--h8e863drj7h.xn----381i"); } // [V3, V7]4778test { try toUnicodeFail("xn--h8e863drj7h.xn----381i"); } // [V3, V7]
4779test { try toAsciiFail("xn--h8e863drj7h.xn----381i", false); } // [V3, V7]
4780test { try toAsciiFail("xn--h8e863drj7h.xn----381i", true); } // [V3, V7]
2189test { try toUnicodeFail("xn--h8e470bl0d838o.xn----381i"); } // [C2, V3, V7]4781test { try toUnicodeFail("xn--h8e470bl0d838o.xn----381i"); } // [C2, V3, V7]
4782test { try toAsciiFail("xn--h8e470bl0d838o.xn----381i", false); } // [C2, V3, V7]
4783test { try toAsciiFail("xn--h8e470bl0d838o.xn----381i", true); } // [C2, V3, V7]
2190test { try toUnicodeFail("\xe1\x82\xac\xe3\x80\x82\xf4\x8d\xbc\xa0\xef\xad\xa9"); } // [B5, B6, V7]4784test { try toUnicodeFail("\xe1\x82\xac\xe3\x80\x82\xf4\x8d\xbc\xa0\xef\xad\xa9"); } // [B5, B6, V7]
4785test { try toAsciiFail("\xe1\x82\xac\xe3\x80\x82\xf4\x8d\xbc\xa0\xef\xad\xa9", false); } // [B5, B6, V7]
4786test { try toAsciiFail("\xe1\x82\xac\xe3\x80\x82\xf4\x8d\xbc\xa0\xef\xad\xa9", true); } // [B5, B6, V7]
2191test { try toUnicodeFail("\xe1\x82\xac\xe3\x80\x82\xf4\x8d\xbc\xa0\xd9\xb9"); } // [B5, B6, V7]4787test { try toUnicodeFail("\xe1\x82\xac\xe3\x80\x82\xf4\x8d\xbc\xa0\xd9\xb9"); } // [B5, B6, V7]
4788test { try toAsciiFail("\xe1\x82\xac\xe3\x80\x82\xf4\x8d\xbc\xa0\xd9\xb9", false); } // [B5, B6, V7]
4789test { try toAsciiFail("\xe1\x82\xac\xe3\x80\x82\xf4\x8d\xbc\xa0\xd9\xb9", true); } // [B5, B6, V7]
2192test { try toUnicodeFail("\xe2\xb4\x8c\xe3\x80\x82\xf4\x8d\xbc\xa0\xd9\xb9"); } // [B5, B6, V7]4790test { try toUnicodeFail("\xe2\xb4\x8c\xe3\x80\x82\xf4\x8d\xbc\xa0\xd9\xb9"); } // [B5, B6, V7]
4791test { try toAsciiFail("\xe2\xb4\x8c\xe3\x80\x82\xf4\x8d\xbc\xa0\xd9\xb9", false); } // [B5, B6, V7]
4792test { try toAsciiFail("\xe2\xb4\x8c\xe3\x80\x82\xf4\x8d\xbc\xa0\xd9\xb9", true); } // [B5, B6, V7]
2193test { try toUnicodeFail("xn--3kj.xn--yib19191t"); } // [B5, B6, V7]4793test { try toUnicodeFail("xn--3kj.xn--yib19191t"); } // [B5, B6, V7]
4794test { try toAsciiFail("xn--3kj.xn--yib19191t", false); } // [B5, B6, V7]
4795test { try toAsciiFail("xn--3kj.xn--yib19191t", true); } // [B5, B6, V7]
2194test { try toUnicodeFail("\xe2\xb4\x8c\xe3\x80\x82\xf4\x8d\xbc\xa0\xef\xad\xa9"); } // [B5, B6, V7]4796test { try toUnicodeFail("\xe2\xb4\x8c\xe3\x80\x82\xf4\x8d\xbc\xa0\xef\xad\xa9"); } // [B5, B6, V7]
4797test { try toAsciiFail("\xe2\xb4\x8c\xe3\x80\x82\xf4\x8d\xbc\xa0\xef\xad\xa9", false); } // [B5, B6, V7]
4798test { try toAsciiFail("\xe2\xb4\x8c\xe3\x80\x82\xf4\x8d\xbc\xa0\xef\xad\xa9", true); } // [B5, B6, V7]
2195test { try toUnicodeFail("xn--knd.xn--yib19191t"); } // [B5, B6, V7]4799test { try toUnicodeFail("xn--knd.xn--yib19191t"); } // [B5, B6, V7]
4800test { try toAsciiFail("xn--knd.xn--yib19191t", false); } // [B5, B6, V7]
4801test { try toAsciiFail("xn--knd.xn--yib19191t", true); } // [B5, B6, V7]
2196test { try toUnicodeFail("\xf0\x90\xae\x81\xf0\x90\xad\xb1.\xe0\xbe\x84\xe1\x8d\x9e-\xe1\xb3\xba"); } // [B1, V6]4802test { try toUnicodeFail("\xf0\x90\xae\x81\xf0\x90\xad\xb1.\xe0\xbe\x84\xe1\x8d\x9e-\xe1\xb3\xba"); } // [B1, V6]
4803test { try toAsciiFail("\xf0\x90\xae\x81\xf0\x90\xad\xb1.\xe0\xbe\x84\xe1\x8d\x9e-\xe1\xb3\xba", false); } // [B1, V6]
4804test { try toAsciiFail("\xf0\x90\xae\x81\xf0\x90\xad\xb1.\xe0\xbe\x84\xe1\x8d\x9e-\xe1\xb3\xba", true); } // [B1, V6]
2197test { try toUnicodeFail("xn--r19c5a.xn----xjg270ag3m"); } // [B1, V6]4805test { try toUnicodeFail("xn--r19c5a.xn----xjg270ag3m"); } // [B1, V6]
4806test { try toAsciiFail("xn--r19c5a.xn----xjg270ag3m", false); } // [B1, V6]
4807test { try toAsciiFail("xn--r19c5a.xn----xjg270ag3m", true); } // [B1, V6]
2198test { try toUnicodeFail("\xe2\x92\x88\xe4\xb0\xb9\xe2\x80\x8d-\xe3\x80\x82\xec\x9b\x88"); } // [C2, V3, V7]4808test { try toUnicodeFail("\xe2\x92\x88\xe4\xb0\xb9\xe2\x80\x8d-\xe3\x80\x82\xec\x9b\x88"); } // [C2, V3, V7]
4809test { try toAsciiFail("\xe2\x92\x88\xe4\xb0\xb9\xe2\x80\x8d-\xe3\x80\x82\xec\x9b\x88", false); } // [C2, V3, V7]
4810test { try toAsciiFail("\xe2\x92\x88\xe4\xb0\xb9\xe2\x80\x8d-\xe3\x80\x82\xec\x9b\x88", true); } // [V3, V7]
2199test { try toUnicodeFail("\xe2\x92\x88\xe4\xb0\xb9\xe2\x80\x8d-\xe3\x80\x82\xe1\x84\x8b\xe1\x85\xae\xe1\x86\xbf"); } // [C2, V3, V7]4811test { try toUnicodeFail("\xe2\x92\x88\xe4\xb0\xb9\xe2\x80\x8d-\xe3\x80\x82\xe1\x84\x8b\xe1\x85\xae\xe1\x86\xbf"); } // [C2, V3, V7]
4812test { try toAsciiFail("\xe2\x92\x88\xe4\xb0\xb9\xe2\x80\x8d-\xe3\x80\x82\xe1\x84\x8b\xe1\x85\xae\xe1\x86\xbf", false); } // [C2, V3, V7]
4813test { try toAsciiFail("\xe2\x92\x88\xe4\xb0\xb9\xe2\x80\x8d-\xe3\x80\x82\xe1\x84\x8b\xe1\x85\xae\xe1\x86\xbf", true); } // [V3, V7]
2200test { try toUnicodeFail("1.\xe4\xb0\xb9\xe2\x80\x8d-\xe3\x80\x82\xec\x9b\x88"); } // [C2, V3]4814test { try toUnicodeFail("1.\xe4\xb0\xb9\xe2\x80\x8d-\xe3\x80\x82\xec\x9b\x88"); } // [C2, V3]
4815test { try toAsciiFail("1.\xe4\xb0\xb9\xe2\x80\x8d-\xe3\x80\x82\xec\x9b\x88", false); } // [C2, V3]
4816test { try toAsciiFail("1.\xe4\xb0\xb9\xe2\x80\x8d-\xe3\x80\x82\xec\x9b\x88", true); } // [V3]
2201test { try toUnicodeFail("1.\xe4\xb0\xb9\xe2\x80\x8d-\xe3\x80\x82\xe1\x84\x8b\xe1\x85\xae\xe1\x86\xbf"); } // [C2, V3]4817test { try toUnicodeFail("1.\xe4\xb0\xb9\xe2\x80\x8d-\xe3\x80\x82\xe1\x84\x8b\xe1\x85\xae\xe1\x86\xbf"); } // [C2, V3]
4818test { try toAsciiFail("1.\xe4\xb0\xb9\xe2\x80\x8d-\xe3\x80\x82\xe1\x84\x8b\xe1\x85\xae\xe1\x86\xbf", false); } // [C2, V3]
4819test { try toAsciiFail("1.\xe4\xb0\xb9\xe2\x80\x8d-\xe3\x80\x82\xe1\x84\x8b\xe1\x85\xae\xe1\x86\xbf", true); } // [V3]
2202test { try toUnicodeFail("1.xn----zw5a.xn--kp5b"); } // [V3]4820test { try toUnicodeFail("1.xn----zw5a.xn--kp5b"); } // [V3]
4821test { try toAsciiFail("1.xn----zw5a.xn--kp5b", false); } // [V3]
4822test { try toAsciiFail("1.xn----zw5a.xn--kp5b", true); } // [V3]
2203test { try toUnicodeFail("1.xn----tgnz80r.xn--kp5b"); } // [C2, V3]4823test { try toUnicodeFail("1.xn----tgnz80r.xn--kp5b"); } // [C2, V3]
4824test { try toAsciiFail("1.xn----tgnz80r.xn--kp5b", false); } // [C2, V3]
4825test { try toAsciiFail("1.xn----tgnz80r.xn--kp5b", true); } // [C2, V3]
2204test { try toUnicodeFail("xn----dcp160o.xn--kp5b"); } // [V3, V7]4826test { try toUnicodeFail("xn----dcp160o.xn--kp5b"); } // [V3, V7]
4827test { try toAsciiFail("xn----dcp160o.xn--kp5b", false); } // [V3, V7]
4828test { try toAsciiFail("xn----dcp160o.xn--kp5b", true); } // [V3, V7]
2205test { try toUnicodeFail("xn----tgnx5rjr6c.xn--kp5b"); } // [C2, V3, V7]4829test { try toUnicodeFail("xn----tgnx5rjr6c.xn--kp5b"); } // [C2, V3, V7]
4830test { try toAsciiFail("xn----tgnx5rjr6c.xn--kp5b", false); } // [C2, V3, V7]
4831test { try toAsciiFail("xn----tgnx5rjr6c.xn--kp5b", true); } // [C2, V3, V7]
2206test { try toUnicodeFail("\xe3\x81\xa6\xe3\x80\x82\xe2\x80\x8c\xf3\xa0\xb3\xbd\xdf\xb3"); } // [C1, V7]4832test { try toUnicodeFail("\xe3\x81\xa6\xe3\x80\x82\xe2\x80\x8c\xf3\xa0\xb3\xbd\xdf\xb3"); } // [C1, V7]
4833test { try toAsciiFail("\xe3\x81\xa6\xe3\x80\x82\xe2\x80\x8c\xf3\xa0\xb3\xbd\xdf\xb3", false); } // [C1, V7]
4834test { try toAsciiFail("\xe3\x81\xa6\xe3\x80\x82\xe2\x80\x8c\xf3\xa0\xb3\xbd\xdf\xb3", true); } // [V7]
2207test { try toUnicodeFail("xn--m9j.xn--rtb10784p"); } // [V7]4835test { try toUnicodeFail("xn--m9j.xn--rtb10784p"); } // [V7]
4836test { try toAsciiFail("xn--m9j.xn--rtb10784p", false); } // [V7]
4837test { try toAsciiFail("xn--m9j.xn--rtb10784p", true); } // [V7]
2208test { try toUnicodeFail("xn--m9j.xn--rtb154j9l73w"); } // [C1, V7]4838test { try toUnicodeFail("xn--m9j.xn--rtb154j9l73w"); } // [C1, V7]
4839test { try toAsciiFail("xn--m9j.xn--rtb154j9l73w", false); } // [C1, V7]
4840test { try toAsciiFail("xn--m9j.xn--rtb154j9l73w", true); } // [C1, V7]
2209test { try toUnicodeFail("\xcf\x82\xef\xbd\xa1\xea\xa7\x80\xdb\xa7"); } // [V6]4841test { try toUnicodeFail("\xcf\x82\xef\xbd\xa1\xea\xa7\x80\xdb\xa7"); } // [V6]
4842test { try toAsciiFail("\xcf\x82\xef\xbd\xa1\xea\xa7\x80\xdb\xa7", false); } // [V6]
4843test { try toAsciiFail("\xcf\x82\xef\xbd\xa1\xea\xa7\x80\xdb\xa7", true); } // [V6]
2210test { try toUnicodeFail("\xcf\x82\xe3\x80\x82\xea\xa7\x80\xdb\xa7"); } // [V6]4844test { try toUnicodeFail("\xcf\x82\xe3\x80\x82\xea\xa7\x80\xdb\xa7"); } // [V6]
4845test { try toAsciiFail("\xcf\x82\xe3\x80\x82\xea\xa7\x80\xdb\xa7", false); } // [V6]
4846test { try toAsciiFail("\xcf\x82\xe3\x80\x82\xea\xa7\x80\xdb\xa7", true); } // [V6]
2211test { try toUnicodeFail("\xce\xa3\xe3\x80\x82\xea\xa7\x80\xdb\xa7"); } // [V6]4847test { try toUnicodeFail("\xce\xa3\xe3\x80\x82\xea\xa7\x80\xdb\xa7"); } // [V6]
4848test { try toAsciiFail("\xce\xa3\xe3\x80\x82\xea\xa7\x80\xdb\xa7", false); } // [V6]
4849test { try toAsciiFail("\xce\xa3\xe3\x80\x82\xea\xa7\x80\xdb\xa7", true); } // [V6]
2212test { try toUnicodeFail("\xcf\x83\xe3\x80\x82\xea\xa7\x80\xdb\xa7"); } // [V6]4850test { try toUnicodeFail("\xcf\x83\xe3\x80\x82\xea\xa7\x80\xdb\xa7"); } // [V6]
4851test { try toAsciiFail("\xcf\x83\xe3\x80\x82\xea\xa7\x80\xdb\xa7", false); } // [V6]
4852test { try toAsciiFail("\xcf\x83\xe3\x80\x82\xea\xa7\x80\xdb\xa7", true); } // [V6]
2213test { try toUnicodeFail("xn--4xa.xn--3lb1944f"); } // [V6]4853test { try toUnicodeFail("xn--4xa.xn--3lb1944f"); } // [V6]
4854test { try toAsciiFail("xn--4xa.xn--3lb1944f", false); } // [V6]
4855test { try toAsciiFail("xn--4xa.xn--3lb1944f", true); } // [V6]
2214test { try toUnicodeFail("xn--3xa.xn--3lb1944f"); } // [V6]4856test { try toUnicodeFail("xn--3xa.xn--3lb1944f"); } // [V6]
4857test { try toAsciiFail("xn--3xa.xn--3lb1944f", false); } // [V6]
4858test { try toAsciiFail("xn--3xa.xn--3lb1944f", true); } // [V6]
2215test { try toUnicodeFail("\xce\xa3\xef\xbd\xa1\xea\xa7\x80\xdb\xa7"); } // [V6]4859test { try toUnicodeFail("\xce\xa3\xef\xbd\xa1\xea\xa7\x80\xdb\xa7"); } // [V6]
4860test { try toAsciiFail("\xce\xa3\xef\xbd\xa1\xea\xa7\x80\xdb\xa7", false); } // [V6]
4861test { try toAsciiFail("\xce\xa3\xef\xbd\xa1\xea\xa7\x80\xdb\xa7", true); } // [V6]
2216test { try toUnicodeFail("\xcf\x83\xef\xbd\xa1\xea\xa7\x80\xdb\xa7"); } // [V6]4862test { try toUnicodeFail("\xcf\x83\xef\xbd\xa1\xea\xa7\x80\xdb\xa7"); } // [V6]
4863test { try toAsciiFail("\xcf\x83\xef\xbd\xa1\xea\xa7\x80\xdb\xa7", false); } // [V6]
4864test { try toAsciiFail("\xcf\x83\xef\xbd\xa1\xea\xa7\x80\xdb\xa7", true); } // [V6]
2217test { try toUnicodeFail("\xe0\xaf\x8d\xf3\xa5\xab\x85\xf2\x8c\x89\x91.\xe1\x82\xa2\xe1\x82\xb5"); } // [V6, V7]4865test { try toUnicodeFail("\xe0\xaf\x8d\xf3\xa5\xab\x85\xf2\x8c\x89\x91.\xe1\x82\xa2\xe1\x82\xb5"); } // [V6, V7]
4866test { try toAsciiFail("\xe0\xaf\x8d\xf3\xa5\xab\x85\xf2\x8c\x89\x91.\xe1\x82\xa2\xe1\x82\xb5", false); } // [V6, V7]
4867test { try toAsciiFail("\xe0\xaf\x8d\xf3\xa5\xab\x85\xf2\x8c\x89\x91.\xe1\x82\xa2\xe1\x82\xb5", true); } // [V6, V7]
2218test { try toUnicodeFail("\xe0\xaf\x8d\xf3\xa5\xab\x85\xf2\x8c\x89\x91.\xe2\xb4\x82\xe2\xb4\x95"); } // [V6, V7]4868test { try toUnicodeFail("\xe0\xaf\x8d\xf3\xa5\xab\x85\xf2\x8c\x89\x91.\xe2\xb4\x82\xe2\xb4\x95"); } // [V6, V7]
4869test { try toAsciiFail("\xe0\xaf\x8d\xf3\xa5\xab\x85\xf2\x8c\x89\x91.\xe2\xb4\x82\xe2\xb4\x95", false); } // [V6, V7]
4870test { try toAsciiFail("\xe0\xaf\x8d\xf3\xa5\xab\x85\xf2\x8c\x89\x91.\xe2\xb4\x82\xe2\xb4\x95", true); } // [V6, V7]
2219test { try toUnicodeFail("\xe0\xaf\x8d\xf3\xa5\xab\x85\xf2\x8c\x89\x91.\xe1\x82\xa2\xe2\xb4\x95"); } // [V6, V7]4871test { try toUnicodeFail("\xe0\xaf\x8d\xf3\xa5\xab\x85\xf2\x8c\x89\x91.\xe1\x82\xa2\xe2\xb4\x95"); } // [V6, V7]
4872test { try toAsciiFail("\xe0\xaf\x8d\xf3\xa5\xab\x85\xf2\x8c\x89\x91.\xe1\x82\xa2\xe2\xb4\x95", false); } // [V6, V7]
4873test { try toAsciiFail("\xe0\xaf\x8d\xf3\xa5\xab\x85\xf2\x8c\x89\x91.\xe1\x82\xa2\xe2\xb4\x95", true); } // [V6, V7]
2220test { try toUnicodeFail("xn--xmc83135idcxza.xn--tkjwb"); } // [V6, V7]4874test { try toUnicodeFail("xn--xmc83135idcxza.xn--tkjwb"); } // [V6, V7]
4875test { try toAsciiFail("xn--xmc83135idcxza.xn--tkjwb", false); } // [V6, V7]
4876test { try toAsciiFail("xn--xmc83135idcxza.xn--tkjwb", true); } // [V6, V7]
2221test { try toUnicodeFail("xn--xmc83135idcxza.xn--9md086l"); } // [V6, V7]4877test { try toUnicodeFail("xn--xmc83135idcxza.xn--9md086l"); } // [V6, V7]
4878test { try toAsciiFail("xn--xmc83135idcxza.xn--9md086l", false); } // [V6, V7]
4879test { try toAsciiFail("xn--xmc83135idcxza.xn--9md086l", true); } // [V6, V7]
2222test { try toUnicodeFail("xn--xmc83135idcxza.xn--9md2b"); } // [V6, V7]4880test { try toUnicodeFail("xn--xmc83135idcxza.xn--9md2b"); } // [V6, V7]
4881test { try toAsciiFail("xn--xmc83135idcxza.xn--9md2b", false); } // [V6, V7]
4882test { try toAsciiFail("xn--xmc83135idcxza.xn--9md2b", true); } // [V6, V7]
2223test { try toUnicodeFail("\xe1\xb0\xb2\xf0\x9f\x84\x88\xe2\xbe\x9b\xd6\xa6\xef\xbc\x8e\xe2\x80\x8d\xf2\xaf\xa5\xa4\xdf\xbd"); } // [C2, V6, V7, U1]4883test { try toUnicodeFail("\xe1\xb0\xb2\xf0\x9f\x84\x88\xe2\xbe\x9b\xd6\xa6\xef\xbc\x8e\xe2\x80\x8d\xf2\xaf\xa5\xa4\xdf\xbd"); } // [C2, V6, V7, U1]
4884test { try toAsciiFail("\xe1\xb0\xb2\xf0\x9f\x84\x88\xe2\xbe\x9b\xd6\xa6\xef\xbc\x8e\xe2\x80\x8d\xf2\xaf\xa5\xa4\xdf\xbd", false); } // [C2, V6, V7, U1]
4885test { try toAsciiFail("\xe1\xb0\xb2\xf0\x9f\x84\x88\xe2\xbe\x9b\xd6\xa6\xef\xbc\x8e\xe2\x80\x8d\xf2\xaf\xa5\xa4\xdf\xbd", true); } // [V6, V7, U1]
2224test { try toUnicodeFail("\xe1\xb0\xb27,\xe8\xb5\xb0\xd6\xa6.\xe2\x80\x8d\xf2\xaf\xa5\xa4\xdf\xbd"); } // [C2, V6, V7, U1]4886test { try toUnicodeFail("\xe1\xb0\xb27,\xe8\xb5\xb0\xd6\xa6.\xe2\x80\x8d\xf2\xaf\xa5\xa4\xdf\xbd"); } // [C2, V6, V7, U1]
4887test { try toAsciiFail("\xe1\xb0\xb27,\xe8\xb5\xb0\xd6\xa6.\xe2\x80\x8d\xf2\xaf\xa5\xa4\xdf\xbd", false); } // [C2, V6, V7, U1]
4888test { try toAsciiFail("\xe1\xb0\xb27,\xe8\xb5\xb0\xd6\xa6.\xe2\x80\x8d\xf2\xaf\xa5\xa4\xdf\xbd", true); } // [V6, V7, U1]
2225test { try toUnicodeFail("xn--7,-bid991urn3k.xn--1tb13454l"); } // [V6, V7, U1]4889test { try toUnicodeFail("xn--7,-bid991urn3k.xn--1tb13454l"); } // [V6, V7, U1]
4890test { try toAsciiFail("xn--7,-bid991urn3k.xn--1tb13454l", false); } // [V6, V7, U1]
4891test { try toAsciiFail("xn--7,-bid991urn3k.xn--1tb13454l", true); } // [V6, V7, U1]
2226test { try toUnicodeFail("xn--7,-bid991urn3k.xn--1tb334j1197q"); } // [C2, V6, V7, U1]4892test { try toUnicodeFail("xn--7,-bid991urn3k.xn--1tb334j1197q"); } // [C2, V6, V7, U1]
4893test { try toAsciiFail("xn--7,-bid991urn3k.xn--1tb334j1197q", false); } // [C2, V6, V7, U1]
4894test { try toAsciiFail("xn--7,-bid991urn3k.xn--1tb334j1197q", true); } // [C2, V6, V7, U1]
2227test { try toUnicodeFail("xn--xcb756i493fwi5o.xn--1tb13454l"); } // [V6, V7]4895test { try toUnicodeFail("xn--xcb756i493fwi5o.xn--1tb13454l"); } // [V6, V7]
4896test { try toAsciiFail("xn--xcb756i493fwi5o.xn--1tb13454l", false); } // [V6, V7]
4897test { try toAsciiFail("xn--xcb756i493fwi5o.xn--1tb13454l", true); } // [V6, V7]
2228test { try toUnicodeFail("xn--xcb756i493fwi5o.xn--1tb334j1197q"); } // [C2, V6, V7]4898test { try toUnicodeFail("xn--xcb756i493fwi5o.xn--1tb334j1197q"); } // [C2, V6, V7]
4899test { try toAsciiFail("xn--xcb756i493fwi5o.xn--1tb334j1197q", false); } // [C2, V6, V7]
4900test { try toAsciiFail("xn--xcb756i493fwi5o.xn--1tb334j1197q", true); } // [C2, V6, V7]
2229test { try toUnicodeFail("\xe1\xa2\x97\xef\xbd\xa1\xd3\x80\xf1\x9d\x84\xbb"); } // [V7]4901test { try toUnicodeFail("\xe1\xa2\x97\xef\xbd\xa1\xd3\x80\xf1\x9d\x84\xbb"); } // [V7]
4902test { try toAsciiFail("\xe1\xa2\x97\xef\xbd\xa1\xd3\x80\xf1\x9d\x84\xbb", false); } // [V7]
4903test { try toAsciiFail("\xe1\xa2\x97\xef\xbd\xa1\xd3\x80\xf1\x9d\x84\xbb", true); } // [V7]
2230test { try toUnicodeFail("\xe1\xa2\x97\xe3\x80\x82\xd3\x80\xf1\x9d\x84\xbb"); } // [V7]4904test { try toUnicodeFail("\xe1\xa2\x97\xe3\x80\x82\xd3\x80\xf1\x9d\x84\xbb"); } // [V7]
4905test { try toAsciiFail("\xe1\xa2\x97\xe3\x80\x82\xd3\x80\xf1\x9d\x84\xbb", false); } // [V7]
4906test { try toAsciiFail("\xe1\xa2\x97\xe3\x80\x82\xd3\x80\xf1\x9d\x84\xbb", true); } // [V7]
2231test { try toUnicodeFail("\xe1\xa2\x97\xe3\x80\x82\xd3\x8f\xf1\x9d\x84\xbb"); } // [V7]4907test { try toUnicodeFail("\xe1\xa2\x97\xe3\x80\x82\xd3\x8f\xf1\x9d\x84\xbb"); } // [V7]
4908test { try toAsciiFail("\xe1\xa2\x97\xe3\x80\x82\xd3\x8f\xf1\x9d\x84\xbb", false); } // [V7]
4909test { try toAsciiFail("\xe1\xa2\x97\xe3\x80\x82\xd3\x8f\xf1\x9d\x84\xbb", true); } // [V7]
2232test { try toUnicodeFail("xn--hbf.xn--s5a83117e"); } // [V7]4910test { try toUnicodeFail("xn--hbf.xn--s5a83117e"); } // [V7]
4911test { try toAsciiFail("xn--hbf.xn--s5a83117e", false); } // [V7]
4912test { try toAsciiFail("xn--hbf.xn--s5a83117e", true); } // [V7]
2233test { try toUnicodeFail("\xe1\xa2\x97\xef\xbd\xa1\xd3\x8f\xf1\x9d\x84\xbb"); } // [V7]4913test { try toUnicodeFail("\xe1\xa2\x97\xef\xbd\xa1\xd3\x8f\xf1\x9d\x84\xbb"); } // [V7]
4914test { try toAsciiFail("\xe1\xa2\x97\xef\xbd\xa1\xd3\x8f\xf1\x9d\x84\xbb", false); } // [V7]
4915test { try toAsciiFail("\xe1\xa2\x97\xef\xbd\xa1\xd3\x8f\xf1\x9d\x84\xbb", true); } // [V7]
2234test { try toUnicodeFail("xn--hbf.xn--d5a86117e"); } // [V7]4916test { try toUnicodeFail("xn--hbf.xn--d5a86117e"); } // [V7]
4917test { try toAsciiFail("xn--hbf.xn--d5a86117e", false); } // [V7]
4918test { try toAsciiFail("xn--hbf.xn--d5a86117e", true); } // [V7]
2235test { try toUnicodeFail("\xd9\xa8-\xe3\x80\x82\xf1\xa0\x8f\x87\xf0\x9f\x9d\x86\xe1\x84\xbe"); } // [B1, V3, V7]4919test { try toUnicodeFail("\xd9\xa8-\xe3\x80\x82\xf1\xa0\x8f\x87\xf0\x9f\x9d\x86\xe1\x84\xbe"); } // [B1, V3, V7]
4920test { try toAsciiFail("\xd9\xa8-\xe3\x80\x82\xf1\xa0\x8f\x87\xf0\x9f\x9d\x86\xe1\x84\xbe", false); } // [B1, V3, V7]
4921test { try toAsciiFail("\xd9\xa8-\xe3\x80\x82\xf1\xa0\x8f\x87\xf0\x9f\x9d\x86\xe1\x84\xbe", true); } // [B1, V3, V7]
2236test { try toUnicodeFail("xn----oqc.xn--qrd1699v327w"); } // [B1, V3, V7]4922test { try toUnicodeFail("xn----oqc.xn--qrd1699v327w"); } // [B1, V3, V7]
4923test { try toAsciiFail("xn----oqc.xn--qrd1699v327w", false); } // [B1, V3, V7]
4924test { try toAsciiFail("xn----oqc.xn--qrd1699v327w", true); } // [B1, V3, V7]
2237test { try toUnicodeFail("-\xf0\x90\x8b\xb7\xf0\x96\xbe\x91\xe3\x80\x82\xf3\xa0\x86\xac"); } // [V3]4925test { try toUnicodeFail("-\xf0\x90\x8b\xb7\xf0\x96\xbe\x91\xe3\x80\x82\xf3\xa0\x86\xac"); } // [V3]
4926test { try toAsciiFail("-\xf0\x90\x8b\xb7\xf0\x96\xbe\x91\xe3\x80\x82\xf3\xa0\x86\xac", false); } // [V3, A4_2]
4927test { try toAsciiFail("-\xf0\x90\x8b\xb7\xf0\x96\xbe\x91\xe3\x80\x82\xf3\xa0\x86\xac", true); } // [V3, A4_2]
2238test { try toUnicodeFail("xn----991iq40y."); } // [V3]4928test { try toUnicodeFail("xn----991iq40y."); } // [V3]
4929test { try toAsciiFail("xn----991iq40y.", false); } // [V3, A4_2]
4930test { try toAsciiFail("xn----991iq40y.", true); } // [V3, A4_2]
2239test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xb3\xf0\x9f\x90\xb4\xeb\xa9\x88.\xea\xaf\xad\xf1\x90\xa1\xbc"); } // [B1, C1, V6, V7]4931test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xb3\xf0\x9f\x90\xb4\xeb\xa9\x88.\xea\xaf\xad\xf1\x90\xa1\xbc"); } // [B1, C1, V6, V7]
4932test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xb3\xf0\x9f\x90\xb4\xeb\xa9\x88.\xea\xaf\xad\xf1\x90\xa1\xbc", false); } // [B1, C1, V6, V7]
4933test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xb3\xf0\x9f\x90\xb4\xeb\xa9\x88.\xea\xaf\xad\xf1\x90\xa1\xbc", true); } // [B1, V6, V7]
2240test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xb3\xf0\x9f\x90\xb4\xe1\x84\x86\xe1\x85\xa5\xe1\x86\xb7.\xea\xaf\xad\xf1\x90\xa1\xbc"); } // [B1, C1, V6, V7]4934test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xb3\xf0\x9f\x90\xb4\xe1\x84\x86\xe1\x85\xa5\xe1\x86\xb7.\xea\xaf\xad\xf1\x90\xa1\xbc"); } // [B1, C1, V6, V7]
4935test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xb3\xf0\x9f\x90\xb4\xe1\x84\x86\xe1\x85\xa5\xe1\x86\xb7.\xea\xaf\xad\xf1\x90\xa1\xbc", false); } // [B1, C1, V6, V7]
4936test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xb3\xf0\x9f\x90\xb4\xe1\x84\x86\xe1\x85\xa5\xe1\x86\xb7.\xea\xaf\xad\xf1\x90\xa1\xbc", true); } // [B1, V6, V7]
2241test { try toUnicodeFail("xn--422b325mqb6i.xn--429a8682s"); } // [B1, V6, V7]4937test { try toUnicodeFail("xn--422b325mqb6i.xn--429a8682s"); } // [B1, V6, V7]
4938test { try toAsciiFail("xn--422b325mqb6i.xn--429a8682s", false); } // [B1, V6, V7]
4939test { try toAsciiFail("xn--422b325mqb6i.xn--429a8682s", true); } // [B1, V6, V7]
2242test { try toUnicodeFail("xn--0ug6681d406b7bwk.xn--429a8682s"); } // [B1, C1, V6, V7]4940test { try toUnicodeFail("xn--0ug6681d406b7bwk.xn--429a8682s"); } // [B1, C1, V6, V7]
4941test { try toAsciiFail("xn--0ug6681d406b7bwk.xn--429a8682s", false); } // [B1, C1, V6, V7]
4942test { try toAsciiFail("xn--0ug6681d406b7bwk.xn--429a8682s", true); } // [B1, C1, V6, V7]
2243test { try toUnicodeFail("\xe2\x89\xae.\xdd\xa9\xd8\x83"); } // [B1, V7]4943test { try toUnicodeFail("\xe2\x89\xae.\xdd\xa9\xd8\x83"); } // [B1, V7]
4944test { try toAsciiFail("\xe2\x89\xae.\xdd\xa9\xd8\x83", false); } // [B1, V7]
4945test { try toAsciiFail("\xe2\x89\xae.\xdd\xa9\xd8\x83", true); } // [B1, V7]
2244test { try toUnicodeFail("<\xcc\xb8.\xdd\xa9\xd8\x83"); } // [B1, V7]4946test { try toUnicodeFail("<\xcc\xb8.\xdd\xa9\xd8\x83"); } // [B1, V7]
4947test { try toAsciiFail("<\xcc\xb8.\xdd\xa9\xd8\x83", false); } // [B1, V7]
4948test { try toAsciiFail("<\xcc\xb8.\xdd\xa9\xd8\x83", true); } // [B1, V7]
2245test { try toUnicodeFail("xn--gdh.xn--lfb92e"); } // [B1, V7]4949test { try toUnicodeFail("xn--gdh.xn--lfb92e"); } // [B1, V7]
4950test { try toAsciiFail("xn--gdh.xn--lfb92e", false); } // [B1, V7]
4951test { try toAsciiFail("xn--gdh.xn--lfb92e", true); } // [B1, V7]
2246test { try toUnicodeFail("\xf0\x90\xb6\xad\xe2\xbe\x86\xef\xbd\xa1\xe2\x80\x8c\xf0\x91\x9a\xb6\xf2\x9f\xb1\x83\xf0\x9e\xb0\x98"); } // [B1, B2, B3, C1, V7]4952test { try toUnicodeFail("\xf0\x90\xb6\xad\xe2\xbe\x86\xef\xbd\xa1\xe2\x80\x8c\xf0\x91\x9a\xb6\xf2\x9f\xb1\x83\xf0\x9e\xb0\x98"); } // [B1, B2, B3, C1, V7]
4953test { try toAsciiFail("\xf0\x90\xb6\xad\xe2\xbe\x86\xef\xbd\xa1\xe2\x80\x8c\xf0\x91\x9a\xb6\xf2\x9f\xb1\x83\xf0\x9e\xb0\x98", false); } // [B1, B2, B3, C1, V7]
4954test { try toAsciiFail("\xf0\x90\xb6\xad\xe2\xbe\x86\xef\xbd\xa1\xe2\x80\x8c\xf0\x91\x9a\xb6\xf2\x9f\xb1\x83\xf0\x9e\xb0\x98", true); } // [B2, B3, B5, B6, V6, V7]
2247test { try toUnicodeFail("\xf0\x90\xb6\xad\xe8\x88\x8c\xe3\x80\x82\xe2\x80\x8c\xf0\x91\x9a\xb6\xf2\x9f\xb1\x83\xf0\x9e\xb0\x98"); } // [B1, B2, B3, C1, V7]4955test { try toUnicodeFail("\xf0\x90\xb6\xad\xe8\x88\x8c\xe3\x80\x82\xe2\x80\x8c\xf0\x91\x9a\xb6\xf2\x9f\xb1\x83\xf0\x9e\xb0\x98"); } // [B1, B2, B3, C1, V7]
4956test { try toAsciiFail("\xf0\x90\xb6\xad\xe8\x88\x8c\xe3\x80\x82\xe2\x80\x8c\xf0\x91\x9a\xb6\xf2\x9f\xb1\x83\xf0\x9e\xb0\x98", false); } // [B1, B2, B3, C1, V7]
4957test { try toAsciiFail("\xf0\x90\xb6\xad\xe8\x88\x8c\xe3\x80\x82\xe2\x80\x8c\xf0\x91\x9a\xb6\xf2\x9f\xb1\x83\xf0\x9e\xb0\x98", true); } // [B2, B3, B5, B6, V6, V7]
2248test { try toUnicodeFail("xn--tc1ao37z.xn--6e2dw557azds2d"); } // [B2, B3, B5, B6, V6, V7]4958test { try toUnicodeFail("xn--tc1ao37z.xn--6e2dw557azds2d"); } // [B2, B3, B5, B6, V6, V7]
4959test { try toAsciiFail("xn--tc1ao37z.xn--6e2dw557azds2d", false); } // [B2, B3, B5, B6, V6, V7]
4960test { try toAsciiFail("xn--tc1ao37z.xn--6e2dw557azds2d", true); } // [B2, B3, B5, B6, V6, V7]
2249test { try toUnicodeFail("xn--tc1ao37z.xn--0ugx728gi1nfwqz2e"); } // [B1, B2, B3, C1, V7]4961test { try toUnicodeFail("xn--tc1ao37z.xn--0ugx728gi1nfwqz2e"); } // [B1, B2, B3, C1, V7]
4962test { try toAsciiFail("xn--tc1ao37z.xn--0ugx728gi1nfwqz2e", false); } // [B1, B2, B3, C1, V7]
4963test { try toAsciiFail("xn--tc1ao37z.xn--0ugx728gi1nfwqz2e", true); } // [B1, B2, B3, C1, V7]
2250test { try toUnicodeFail("\xe2\x80\x8c\xe1\x83\x80-.\xf0\x9d\x9f\xb7\xcf\x82\xf0\x9e\xb4\xba\xcf\x82"); } // [B1, C1, V3]4964test { try toUnicodeFail("\xe2\x80\x8c\xe1\x83\x80-.\xf0\x9d\x9f\xb7\xcf\x82\xf0\x9e\xb4\xba\xcf\x82"); } // [B1, C1, V3]
4965test { try toAsciiFail("\xe2\x80\x8c\xe1\x83\x80-.\xf0\x9d\x9f\xb7\xcf\x82\xf0\x9e\xb4\xba\xcf\x82", false); } // [B1, C1, V3]
4966test { try toAsciiFail("\xe2\x80\x8c\xe1\x83\x80-.\xf0\x9d\x9f\xb7\xcf\x82\xf0\x9e\xb4\xba\xcf\x82", true); } // [B1, B6, V3]
2251test { try toUnicodeFail("\xe2\x80\x8c\xe1\x83\x80-.1\xcf\x82\xf0\x9e\xb4\xba\xcf\x82"); } // [B1, C1, V3]4967test { try toUnicodeFail("\xe2\x80\x8c\xe1\x83\x80-.1\xcf\x82\xf0\x9e\xb4\xba\xcf\x82"); } // [B1, C1, V3]
4968test { try toAsciiFail("\xe2\x80\x8c\xe1\x83\x80-.1\xcf\x82\xf0\x9e\xb4\xba\xcf\x82", false); } // [B1, C1, V3]
4969test { try toAsciiFail("\xe2\x80\x8c\xe1\x83\x80-.1\xcf\x82\xf0\x9e\xb4\xba\xcf\x82", true); } // [B1, B6, V3]
2252test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\xa0-.1\xcf\x82\xf0\x9e\xb4\xba\xcf\x82"); } // [B1, C1, V3]4970test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\xa0-.1\xcf\x82\xf0\x9e\xb4\xba\xcf\x82"); } // [B1, C1, V3]
4971test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\xa0-.1\xcf\x82\xf0\x9e\xb4\xba\xcf\x82", false); } // [B1, C1, V3]
4972test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\xa0-.1\xcf\x82\xf0\x9e\xb4\xba\xcf\x82", true); } // [B1, B6, V3]
2253test { try toUnicodeFail("\xe2\x80\x8c\xe1\x83\x80-.1\xce\xa3\xf0\x9e\xb4\xba\xce\xa3"); } // [B1, C1, V3]4973test { try toUnicodeFail("\xe2\x80\x8c\xe1\x83\x80-.1\xce\xa3\xf0\x9e\xb4\xba\xce\xa3"); } // [B1, C1, V3]
4974test { try toAsciiFail("\xe2\x80\x8c\xe1\x83\x80-.1\xce\xa3\xf0\x9e\xb4\xba\xce\xa3", false); } // [B1, C1, V3]
4975test { try toAsciiFail("\xe2\x80\x8c\xe1\x83\x80-.1\xce\xa3\xf0\x9e\xb4\xba\xce\xa3", true); } // [B1, B6, V3]
2254test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\xa0-.1\xcf\x83\xf0\x9e\xb4\xba\xcf\x83"); } // [B1, C1, V3]4976test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\xa0-.1\xcf\x83\xf0\x9e\xb4\xba\xcf\x83"); } // [B1, C1, V3]
4977test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\xa0-.1\xcf\x83\xf0\x9e\xb4\xba\xcf\x83", false); } // [B1, C1, V3]
4978test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\xa0-.1\xcf\x83\xf0\x9e\xb4\xba\xcf\x83", true); } // [B1, B6, V3]
2255test { try toUnicodeFail("\xe2\x80\x8c\xe1\x83\x80-.1\xcf\x83\xf0\x9e\xb4\xba\xce\xa3"); } // [B1, C1, V3]4979test { try toUnicodeFail("\xe2\x80\x8c\xe1\x83\x80-.1\xcf\x83\xf0\x9e\xb4\xba\xce\xa3"); } // [B1, C1, V3]
4980test { try toAsciiFail("\xe2\x80\x8c\xe1\x83\x80-.1\xcf\x83\xf0\x9e\xb4\xba\xce\xa3", false); } // [B1, C1, V3]
4981test { try toAsciiFail("\xe2\x80\x8c\xe1\x83\x80-.1\xcf\x83\xf0\x9e\xb4\xba\xce\xa3", true); } // [B1, B6, V3]
2256test { try toUnicodeFail("xn----2ws.xn--1-0mba52321c"); } // [B1, B6, V3]4982test { try toUnicodeFail("xn----2ws.xn--1-0mba52321c"); } // [B1, B6, V3]
4983test { try toAsciiFail("xn----2ws.xn--1-0mba52321c", false); } // [B1, B6, V3]
4984test { try toAsciiFail("xn----2ws.xn--1-0mba52321c", true); } // [B1, B6, V3]
2257test { try toUnicodeFail("xn----rgn530d.xn--1-0mba52321c"); } // [B1, C1, V3]4985test { try toUnicodeFail("xn----rgn530d.xn--1-0mba52321c"); } // [B1, C1, V3]
4986test { try toAsciiFail("xn----rgn530d.xn--1-0mba52321c", false); } // [B1, C1, V3]
4987test { try toAsciiFail("xn----rgn530d.xn--1-0mba52321c", true); } // [B1, C1, V3]
2258test { try toUnicodeFail("\xe2\x80\x8c\xe1\x83\x80-.1\xcf\x82\xf0\x9e\xb4\xba\xce\xa3"); } // [B1, C1, V3]4988test { try toUnicodeFail("\xe2\x80\x8c\xe1\x83\x80-.1\xcf\x82\xf0\x9e\xb4\xba\xce\xa3"); } // [B1, C1, V3]
4989test { try toAsciiFail("\xe2\x80\x8c\xe1\x83\x80-.1\xcf\x82\xf0\x9e\xb4\xba\xce\xa3", false); } // [B1, C1, V3]
4990test { try toAsciiFail("\xe2\x80\x8c\xe1\x83\x80-.1\xcf\x82\xf0\x9e\xb4\xba\xce\xa3", true); } // [B1, B6, V3]
2259test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\xa0-.1\xcf\x82\xf0\x9e\xb4\xba\xcf\x83"); } // [B1, C1, V3]4991test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\xa0-.1\xcf\x82\xf0\x9e\xb4\xba\xcf\x83"); } // [B1, C1, V3]
4992test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\xa0-.1\xcf\x82\xf0\x9e\xb4\xba\xcf\x83", false); } // [B1, C1, V3]
4993test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\xa0-.1\xcf\x82\xf0\x9e\xb4\xba\xcf\x83", true); } // [B1, B6, V3]
2260test { try toUnicodeFail("xn----rgn530d.xn--1-ymbd52321c"); } // [B1, C1, V3]4994test { try toUnicodeFail("xn----rgn530d.xn--1-ymbd52321c"); } // [B1, C1, V3]
4995test { try toAsciiFail("xn----rgn530d.xn--1-ymbd52321c", false); } // [B1, C1, V3]
4996test { try toAsciiFail("xn----rgn530d.xn--1-ymbd52321c", true); } // [B1, C1, V3]
2261test { try toUnicodeFail("xn----rgn530d.xn--1-ymba92321c"); } // [B1, C1, V3]4997test { try toUnicodeFail("xn----rgn530d.xn--1-ymba92321c"); } // [B1, C1, V3]
4998test { try toAsciiFail("xn----rgn530d.xn--1-ymba92321c", false); } // [B1, C1, V3]
4999test { try toAsciiFail("xn----rgn530d.xn--1-ymba92321c", true); } // [B1, C1, V3]
2262test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\xa0-.\xf0\x9d\x9f\xb7\xcf\x82\xf0\x9e\xb4\xba\xcf\x82"); } // [B1, C1, V3]5000test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\xa0-.\xf0\x9d\x9f\xb7\xcf\x82\xf0\x9e\xb4\xba\xcf\x82"); } // [B1, C1, V3]
5001test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\xa0-.\xf0\x9d\x9f\xb7\xcf\x82\xf0\x9e\xb4\xba\xcf\x82", false); } // [B1, C1, V3]
5002test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\xa0-.\xf0\x9d\x9f\xb7\xcf\x82\xf0\x9e\xb4\xba\xcf\x82", true); } // [B1, B6, V3]
2263test { try toUnicodeFail("\xe2\x80\x8c\xe1\x83\x80-.\xf0\x9d\x9f\xb7\xce\xa3\xf0\x9e\xb4\xba\xce\xa3"); } // [B1, C1, V3]5003test { try toUnicodeFail("\xe2\x80\x8c\xe1\x83\x80-.\xf0\x9d\x9f\xb7\xce\xa3\xf0\x9e\xb4\xba\xce\xa3"); } // [B1, C1, V3]
5004test { try toAsciiFail("\xe2\x80\x8c\xe1\x83\x80-.\xf0\x9d\x9f\xb7\xce\xa3\xf0\x9e\xb4\xba\xce\xa3", false); } // [B1, C1, V3]
5005test { try toAsciiFail("\xe2\x80\x8c\xe1\x83\x80-.\xf0\x9d\x9f\xb7\xce\xa3\xf0\x9e\xb4\xba\xce\xa3", true); } // [B1, B6, V3]
2264test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\xa0-.\xf0\x9d\x9f\xb7\xcf\x83\xf0\x9e\xb4\xba\xcf\x83"); } // [B1, C1, V3]5006test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\xa0-.\xf0\x9d\x9f\xb7\xcf\x83\xf0\x9e\xb4\xba\xcf\x83"); } // [B1, C1, V3]
5007test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\xa0-.\xf0\x9d\x9f\xb7\xcf\x83\xf0\x9e\xb4\xba\xcf\x83", false); } // [B1, C1, V3]
5008test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\xa0-.\xf0\x9d\x9f\xb7\xcf\x83\xf0\x9e\xb4\xba\xcf\x83", true); } // [B1, B6, V3]
2265test { try toUnicodeFail("\xe2\x80\x8c\xe1\x83\x80-.\xf0\x9d\x9f\xb7\xcf\x83\xf0\x9e\xb4\xba\xce\xa3"); } // [B1, C1, V3]5009test { try toUnicodeFail("\xe2\x80\x8c\xe1\x83\x80-.\xf0\x9d\x9f\xb7\xcf\x83\xf0\x9e\xb4\xba\xce\xa3"); } // [B1, C1, V3]
5010test { try toAsciiFail("\xe2\x80\x8c\xe1\x83\x80-.\xf0\x9d\x9f\xb7\xcf\x83\xf0\x9e\xb4\xba\xce\xa3", false); } // [B1, C1, V3]
5011test { try toAsciiFail("\xe2\x80\x8c\xe1\x83\x80-.\xf0\x9d\x9f\xb7\xcf\x83\xf0\x9e\xb4\xba\xce\xa3", true); } // [B1, B6, V3]
2266test { try toUnicodeFail("\xe2\x80\x8c\xe1\x83\x80-.\xf0\x9d\x9f\xb7\xcf\x82\xf0\x9e\xb4\xba\xce\xa3"); } // [B1, C1, V3]5012test { try toUnicodeFail("\xe2\x80\x8c\xe1\x83\x80-.\xf0\x9d\x9f\xb7\xcf\x82\xf0\x9e\xb4\xba\xce\xa3"); } // [B1, C1, V3]
5013test { try toAsciiFail("\xe2\x80\x8c\xe1\x83\x80-.\xf0\x9d\x9f\xb7\xcf\x82\xf0\x9e\xb4\xba\xce\xa3", false); } // [B1, C1, V3]
5014test { try toAsciiFail("\xe2\x80\x8c\xe1\x83\x80-.\xf0\x9d\x9f\xb7\xcf\x82\xf0\x9e\xb4\xba\xce\xa3", true); } // [B1, B6, V3]
2267test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\xa0-.\xf0\x9d\x9f\xb7\xcf\x82\xf0\x9e\xb4\xba\xcf\x83"); } // [B1, C1, V3]5015test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\xa0-.\xf0\x9d\x9f\xb7\xcf\x82\xf0\x9e\xb4\xba\xcf\x83"); } // [B1, C1, V3]
5016test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\xa0-.\xf0\x9d\x9f\xb7\xcf\x82\xf0\x9e\xb4\xba\xcf\x83", false); } // [B1, C1, V3]
5017test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\xa0-.\xf0\x9d\x9f\xb7\xcf\x82\xf0\x9e\xb4\xba\xcf\x83", true); } // [B1, B6, V3]
2268test { try toUnicodeFail("xn----z1g.xn--1-0mba52321c"); } // [B1, B6, V3, V7]5018test { try toUnicodeFail("xn----z1g.xn--1-0mba52321c"); } // [B1, B6, V3, V7]
5019test { try toAsciiFail("xn----z1g.xn--1-0mba52321c", false); } // [B1, B6, V3, V7]
5020test { try toAsciiFail("xn----z1g.xn--1-0mba52321c", true); } // [B1, B6, V3, V7]
2269test { try toUnicodeFail("xn----z1g168i.xn--1-0mba52321c"); } // [B1, C1, V3, V7]5021test { try toUnicodeFail("xn----z1g168i.xn--1-0mba52321c"); } // [B1, C1, V3, V7]
5022test { try toAsciiFail("xn----z1g168i.xn--1-0mba52321c", false); } // [B1, C1, V3, V7]
5023test { try toAsciiFail("xn----z1g168i.xn--1-0mba52321c", true); } // [B1, C1, V3, V7]
2270test { try toUnicodeFail("xn----z1g168i.xn--1-ymbd52321c"); } // [B1, C1, V3, V7]5024test { try toUnicodeFail("xn----z1g168i.xn--1-ymbd52321c"); } // [B1, C1, V3, V7]
5025test { try toAsciiFail("xn----z1g168i.xn--1-ymbd52321c", false); } // [B1, C1, V3, V7]
5026test { try toAsciiFail("xn----z1g168i.xn--1-ymbd52321c", true); } // [B1, C1, V3, V7]
2271test { try toUnicodeFail("xn----z1g168i.xn--1-ymba92321c"); } // [B1, C1, V3, V7]5027test { try toUnicodeFail("xn----z1g168i.xn--1-ymba92321c"); } // [B1, C1, V3, V7]
5028test { try toAsciiFail("xn----z1g168i.xn--1-ymba92321c", false); } // [B1, C1, V3, V7]
5029test { try toAsciiFail("xn----z1g168i.xn--1-ymba92321c", true); } // [B1, C1, V3, V7]
2272test { try toUnicodeFail("\xf0\x91\xb2\x98\xf3\xa0\x84\x92\xf0\x93\x91\xa1\xef\xbd\xa1\xf0\x9d\x9f\xaa\xe1\x82\xbc"); } // [V6]5030test { try toUnicodeFail("\xf0\x91\xb2\x98\xf3\xa0\x84\x92\xf0\x93\x91\xa1\xef\xbd\xa1\xf0\x9d\x9f\xaa\xe1\x82\xbc"); } // [V6]
5031test { try toAsciiFail("\xf0\x91\xb2\x98\xf3\xa0\x84\x92\xf0\x93\x91\xa1\xef\xbd\xa1\xf0\x9d\x9f\xaa\xe1\x82\xbc", false); } // [V6]
5032test { try toAsciiFail("\xf0\x91\xb2\x98\xf3\xa0\x84\x92\xf0\x93\x91\xa1\xef\xbd\xa1\xf0\x9d\x9f\xaa\xe1\x82\xbc", true); } // [V6]
2273test { try toUnicodeFail("\xf0\x91\xb2\x98\xf3\xa0\x84\x92\xf0\x93\x91\xa1\xe3\x80\x828\xe1\x82\xbc"); } // [V6]5033test { try toUnicodeFail("\xf0\x91\xb2\x98\xf3\xa0\x84\x92\xf0\x93\x91\xa1\xe3\x80\x828\xe1\x82\xbc"); } // [V6]
5034test { try toAsciiFail("\xf0\x91\xb2\x98\xf3\xa0\x84\x92\xf0\x93\x91\xa1\xe3\x80\x828\xe1\x82\xbc", false); } // [V6]
5035test { try toAsciiFail("\xf0\x91\xb2\x98\xf3\xa0\x84\x92\xf0\x93\x91\xa1\xe3\x80\x828\xe1\x82\xbc", true); } // [V6]
2274test { try toUnicodeFail("\xf0\x91\xb2\x98\xf3\xa0\x84\x92\xf0\x93\x91\xa1\xe3\x80\x828\xe2\xb4\x9c"); } // [V6]5036test { try toUnicodeFail("\xf0\x91\xb2\x98\xf3\xa0\x84\x92\xf0\x93\x91\xa1\xe3\x80\x828\xe2\xb4\x9c"); } // [V6]
5037test { try toAsciiFail("\xf0\x91\xb2\x98\xf3\xa0\x84\x92\xf0\x93\x91\xa1\xe3\x80\x828\xe2\xb4\x9c", false); } // [V6]
5038test { try toAsciiFail("\xf0\x91\xb2\x98\xf3\xa0\x84\x92\xf0\x93\x91\xa1\xe3\x80\x828\xe2\xb4\x9c", true); } // [V6]
2275test { try toUnicodeFail("xn--7m3d291b.xn--8-vws"); } // [V6]5039test { try toUnicodeFail("xn--7m3d291b.xn--8-vws"); } // [V6]
5040test { try toAsciiFail("xn--7m3d291b.xn--8-vws", false); } // [V6]
5041test { try toAsciiFail("xn--7m3d291b.xn--8-vws", true); } // [V6]
2276test { try toUnicodeFail("\xf0\x91\xb2\x98\xf3\xa0\x84\x92\xf0\x93\x91\xa1\xef\xbd\xa1\xf0\x9d\x9f\xaa\xe2\xb4\x9c"); } // [V6]5042test { try toUnicodeFail("\xf0\x91\xb2\x98\xf3\xa0\x84\x92\xf0\x93\x91\xa1\xef\xbd\xa1\xf0\x9d\x9f\xaa\xe2\xb4\x9c"); } // [V6]
5043test { try toAsciiFail("\xf0\x91\xb2\x98\xf3\xa0\x84\x92\xf0\x93\x91\xa1\xef\xbd\xa1\xf0\x9d\x9f\xaa\xe2\xb4\x9c", false); } // [V6]
5044test { try toAsciiFail("\xf0\x91\xb2\x98\xf3\xa0\x84\x92\xf0\x93\x91\xa1\xef\xbd\xa1\xf0\x9d\x9f\xaa\xe2\xb4\x9c", true); } // [V6]
2277test { try toUnicodeFail("xn--7m3d291b.xn--8-s1g"); } // [V6, V7]5045test { try toUnicodeFail("xn--7m3d291b.xn--8-s1g"); } // [V6, V7]
5046test { try toAsciiFail("xn--7m3d291b.xn--8-s1g", false); } // [V6, V7]
5047test { try toAsciiFail("xn--7m3d291b.xn--8-s1g", true); } // [V6, V7]
2278test { try toUnicodeFail("\xe4\xaa\x8f\xda\xab\xdf\xa0\xe0\xa5\x81\xef\xbd\xa1\xeb\xad\x95\xe1\xa2\x9d\xe1\x9e\xb9"); } // [B5, B6]5048test { try toUnicodeFail("\xe4\xaa\x8f\xda\xab\xdf\xa0\xe0\xa5\x81\xef\xbd\xa1\xeb\xad\x95\xe1\xa2\x9d\xe1\x9e\xb9"); } // [B5, B6]
5049test { try toAsciiFail("\xe4\xaa\x8f\xda\xab\xdf\xa0\xe0\xa5\x81\xef\xbd\xa1\xeb\xad\x95\xe1\xa2\x9d\xe1\x9e\xb9", false); } // [B5, B6]
5050test { try toAsciiFail("\xe4\xaa\x8f\xda\xab\xdf\xa0\xe0\xa5\x81\xef\xbd\xa1\xeb\xad\x95\xe1\xa2\x9d\xe1\x9e\xb9", true); } // [B5, B6]
2279test { try toUnicodeFail("\xe4\xaa\x8f\xda\xab\xdf\xa0\xe0\xa5\x81\xef\xbd\xa1\xe1\x84\x86\xe1\x85\xaf\xe1\x86\xac\xe1\xa2\x9d\xe1\x9e\xb9"); } // [B5, B6]5051test { try toUnicodeFail("\xe4\xaa\x8f\xda\xab\xdf\xa0\xe0\xa5\x81\xef\xbd\xa1\xe1\x84\x86\xe1\x85\xaf\xe1\x86\xac\xe1\xa2\x9d\xe1\x9e\xb9"); } // [B5, B6]
5052test { try toAsciiFail("\xe4\xaa\x8f\xda\xab\xdf\xa0\xe0\xa5\x81\xef\xbd\xa1\xe1\x84\x86\xe1\x85\xaf\xe1\x86\xac\xe1\xa2\x9d\xe1\x9e\xb9", false); } // [B5, B6]
5053test { try toAsciiFail("\xe4\xaa\x8f\xda\xab\xdf\xa0\xe0\xa5\x81\xef\xbd\xa1\xe1\x84\x86\xe1\x85\xaf\xe1\x86\xac\xe1\xa2\x9d\xe1\x9e\xb9", true); } // [B5, B6]
2280test { try toUnicodeFail("\xe4\xaa\x8f\xda\xab\xdf\xa0\xe0\xa5\x81\xe3\x80\x82\xeb\xad\x95\xe1\xa2\x9d\xe1\x9e\xb9"); } // [B5, B6]5054test { try toUnicodeFail("\xe4\xaa\x8f\xda\xab\xdf\xa0\xe0\xa5\x81\xe3\x80\x82\xeb\xad\x95\xe1\xa2\x9d\xe1\x9e\xb9"); } // [B5, B6]
5055test { try toAsciiFail("\xe4\xaa\x8f\xda\xab\xdf\xa0\xe0\xa5\x81\xe3\x80\x82\xeb\xad\x95\xe1\xa2\x9d\xe1\x9e\xb9", false); } // [B5, B6]
5056test { try toAsciiFail("\xe4\xaa\x8f\xda\xab\xdf\xa0\xe0\xa5\x81\xe3\x80\x82\xeb\xad\x95\xe1\xa2\x9d\xe1\x9e\xb9", true); } // [B5, B6]
2281test { try toUnicodeFail("\xe4\xaa\x8f\xda\xab\xdf\xa0\xe0\xa5\x81\xe3\x80\x82\xe1\x84\x86\xe1\x85\xaf\xe1\x86\xac\xe1\xa2\x9d\xe1\x9e\xb9"); } // [B5, B6]5057test { try toUnicodeFail("\xe4\xaa\x8f\xda\xab\xdf\xa0\xe0\xa5\x81\xe3\x80\x82\xe1\x84\x86\xe1\x85\xaf\xe1\x86\xac\xe1\xa2\x9d\xe1\x9e\xb9"); } // [B5, B6]
5058test { try toAsciiFail("\xe4\xaa\x8f\xda\xab\xdf\xa0\xe0\xa5\x81\xe3\x80\x82\xe1\x84\x86\xe1\x85\xaf\xe1\x86\xac\xe1\xa2\x9d\xe1\x9e\xb9", false); } // [B5, B6]
5059test { try toAsciiFail("\xe4\xaa\x8f\xda\xab\xdf\xa0\xe0\xa5\x81\xe3\x80\x82\xe1\x84\x86\xe1\x85\xaf\xe1\x86\xac\xe1\xa2\x9d\xe1\x9e\xb9", true); } // [B5, B6]
2282test { try toUnicodeFail("xn--ekb23dj4at01n.xn--43e96bh910b"); } // [B5, B6]5060test { try toUnicodeFail("xn--ekb23dj4at01n.xn--43e96bh910b"); } // [B5, B6]
5061test { try toAsciiFail("xn--ekb23dj4at01n.xn--43e96bh910b", false); } // [B5, B6]
5062test { try toAsciiFail("xn--ekb23dj4at01n.xn--43e96bh910b", true); } // [B5, B6]
2283test { try toUnicodeFail("\xe1\xae\xab\xef\xbd\xa1\xf0\x9f\x82\x89\xf3\xa0\x81\xb0"); } // [V6, V7]5063test { try toUnicodeFail("\xe1\xae\xab\xef\xbd\xa1\xf0\x9f\x82\x89\xf3\xa0\x81\xb0"); } // [V6, V7]
5064test { try toAsciiFail("\xe1\xae\xab\xef\xbd\xa1\xf0\x9f\x82\x89\xf3\xa0\x81\xb0", false); } // [V6, V7]
5065test { try toAsciiFail("\xe1\xae\xab\xef\xbd\xa1\xf0\x9f\x82\x89\xf3\xa0\x81\xb0", true); } // [V6, V7]
2284test { try toUnicodeFail("\xe1\xae\xab\xe3\x80\x82\xf0\x9f\x82\x89\xf3\xa0\x81\xb0"); } // [V6, V7]5066test { try toUnicodeFail("\xe1\xae\xab\xe3\x80\x82\xf0\x9f\x82\x89\xf3\xa0\x81\xb0"); } // [V6, V7]
5067test { try toAsciiFail("\xe1\xae\xab\xe3\x80\x82\xf0\x9f\x82\x89\xf3\xa0\x81\xb0", false); } // [V6, V7]
5068test { try toAsciiFail("\xe1\xae\xab\xe3\x80\x82\xf0\x9f\x82\x89\xf3\xa0\x81\xb0", true); } // [V6, V7]
2285test { try toUnicodeFail("xn--zxf.xn--fx7ho0250c"); } // [V6, V7]5069test { try toUnicodeFail("xn--zxf.xn--fx7ho0250c"); } // [V6, V7]
5070test { try toAsciiFail("xn--zxf.xn--fx7ho0250c", false); } // [V6, V7]
5071test { try toAsciiFail("xn--zxf.xn--fx7ho0250c", true); } // [V6, V7]
2286test { try toUnicodeFail("\xf3\xa9\x8e\x83\xe0\xab\x84\xe3\x80\x82\xcf\x82\xe2\x80\x8d\xf0\x90\xb9\xae\xf0\x91\x88\xb5"); } // [B5, C2, V7]5072test { try toUnicodeFail("\xf3\xa9\x8e\x83\xe0\xab\x84\xe3\x80\x82\xcf\x82\xe2\x80\x8d\xf0\x90\xb9\xae\xf0\x91\x88\xb5"); } // [B5, C2, V7]
5073test { try toAsciiFail("\xf3\xa9\x8e\x83\xe0\xab\x84\xe3\x80\x82\xcf\x82\xe2\x80\x8d\xf0\x90\xb9\xae\xf0\x91\x88\xb5", false); } // [B5, C2, V7]
5074test { try toAsciiFail("\xf3\xa9\x8e\x83\xe0\xab\x84\xe3\x80\x82\xcf\x82\xe2\x80\x8d\xf0\x90\xb9\xae\xf0\x91\x88\xb5", true); } // [B5, V7]
2287test { try toUnicodeFail("\xf3\xa9\x8e\x83\xe0\xab\x84\xe3\x80\x82\xce\xa3\xe2\x80\x8d\xf0\x90\xb9\xae\xf0\x91\x88\xb5"); } // [B5, C2, V7]5075test { try toUnicodeFail("\xf3\xa9\x8e\x83\xe0\xab\x84\xe3\x80\x82\xce\xa3\xe2\x80\x8d\xf0\x90\xb9\xae\xf0\x91\x88\xb5"); } // [B5, C2, V7]
5076test { try toAsciiFail("\xf3\xa9\x8e\x83\xe0\xab\x84\xe3\x80\x82\xce\xa3\xe2\x80\x8d\xf0\x90\xb9\xae\xf0\x91\x88\xb5", false); } // [B5, C2, V7]
5077test { try toAsciiFail("\xf3\xa9\x8e\x83\xe0\xab\x84\xe3\x80\x82\xce\xa3\xe2\x80\x8d\xf0\x90\xb9\xae\xf0\x91\x88\xb5", true); } // [B5, V7]
2288test { try toUnicodeFail("\xf3\xa9\x8e\x83\xe0\xab\x84\xe3\x80\x82\xcf\x83\xe2\x80\x8d\xf0\x90\xb9\xae\xf0\x91\x88\xb5"); } // [B5, C2, V7]5078test { try toUnicodeFail("\xf3\xa9\x8e\x83\xe0\xab\x84\xe3\x80\x82\xcf\x83\xe2\x80\x8d\xf0\x90\xb9\xae\xf0\x91\x88\xb5"); } // [B5, C2, V7]
5079test { try toAsciiFail("\xf3\xa9\x8e\x83\xe0\xab\x84\xe3\x80\x82\xcf\x83\xe2\x80\x8d\xf0\x90\xb9\xae\xf0\x91\x88\xb5", false); } // [B5, C2, V7]
5080test { try toAsciiFail("\xf3\xa9\x8e\x83\xe0\xab\x84\xe3\x80\x82\xcf\x83\xe2\x80\x8d\xf0\x90\xb9\xae\xf0\x91\x88\xb5", true); } // [B5, V7]
2289test { try toUnicodeFail("xn--dfc53161q.xn--4xa8467k5mc"); } // [B5, V7]5081test { try toUnicodeFail("xn--dfc53161q.xn--4xa8467k5mc"); } // [B5, V7]
5082test { try toAsciiFail("xn--dfc53161q.xn--4xa8467k5mc", false); } // [B5, V7]
5083test { try toAsciiFail("xn--dfc53161q.xn--4xa8467k5mc", true); } // [B5, V7]
2290test { try toUnicodeFail("xn--dfc53161q.xn--4xa895lzo7nsfd"); } // [B5, C2, V7]5084test { try toUnicodeFail("xn--dfc53161q.xn--4xa895lzo7nsfd"); } // [B5, C2, V7]
5085test { try toAsciiFail("xn--dfc53161q.xn--4xa895lzo7nsfd", false); } // [B5, C2, V7]
5086test { try toAsciiFail("xn--dfc53161q.xn--4xa895lzo7nsfd", true); } // [B5, C2, V7]
2291test { try toUnicodeFail("xn--dfc53161q.xn--3xa006lzo7nsfd"); } // [B5, C2, V7]5087test { try toUnicodeFail("xn--dfc53161q.xn--3xa006lzo7nsfd"); } // [B5, C2, V7]
5088test { try toAsciiFail("xn--dfc53161q.xn--3xa006lzo7nsfd", false); } // [B5, C2, V7]
5089test { try toAsciiFail("xn--dfc53161q.xn--3xa006lzo7nsfd", true); } // [B5, C2, V7]
2292test { try toUnicodeFail("\xf0\x90\xab\x80\xe1\xa1\x82\xf0\x91\x9c\xab\xef\xbc\x8e\xf0\x91\x98\xbf"); } // [B1, B2, B3, V6]5090test { try toUnicodeFail("\xf0\x90\xab\x80\xe1\xa1\x82\xf0\x91\x9c\xab\xef\xbc\x8e\xf0\x91\x98\xbf"); } // [B1, B2, B3, V6]
5091test { try toAsciiFail("\xf0\x90\xab\x80\xe1\xa1\x82\xf0\x91\x9c\xab\xef\xbc\x8e\xf0\x91\x98\xbf", false); } // [B1, B2, B3, V6]
5092test { try toAsciiFail("\xf0\x90\xab\x80\xe1\xa1\x82\xf0\x91\x9c\xab\xef\xbc\x8e\xf0\x91\x98\xbf", true); } // [B1, B2, B3, V6]
2293test { try toUnicodeFail("\xf0\x90\xab\x80\xe1\xa1\x82\xf0\x91\x9c\xab.\xf0\x91\x98\xbf"); } // [B1, B2, B3, V6]5093test { try toUnicodeFail("\xf0\x90\xab\x80\xe1\xa1\x82\xf0\x91\x9c\xab.\xf0\x91\x98\xbf"); } // [B1, B2, B3, V6]
5094test { try toAsciiFail("\xf0\x90\xab\x80\xe1\xa1\x82\xf0\x91\x9c\xab.\xf0\x91\x98\xbf", false); } // [B1, B2, B3, V6]
5095test { try toAsciiFail("\xf0\x90\xab\x80\xe1\xa1\x82\xf0\x91\x9c\xab.\xf0\x91\x98\xbf", true); } // [B1, B2, B3, V6]
2294test { try toUnicodeFail("xn--17e9625js1h.xn--sb2d"); } // [B1, B2, B3, V6]5096test { try toUnicodeFail("xn--17e9625js1h.xn--sb2d"); } // [B1, B2, B3, V6]
5097test { try toAsciiFail("xn--17e9625js1h.xn--sb2d", false); } // [B1, B2, B3, V6]
5098test { try toAsciiFail("xn--17e9625js1h.xn--sb2d", true); } // [B1, B2, B3, V6]
2295test { try toUnicodeFail("\xf3\xac\x9a\xb6\xf3\xb8\x8b\x96\xf2\x96\xa9\xb0-\xe3\x80\x82\xe2\x80\x8c"); } // [C1, V3, V7]5099test { try toUnicodeFail("\xf3\xac\x9a\xb6\xf3\xb8\x8b\x96\xf2\x96\xa9\xb0-\xe3\x80\x82\xe2\x80\x8c"); } // [C1, V3, V7]
5100test { try toAsciiFail("\xf3\xac\x9a\xb6\xf3\xb8\x8b\x96\xf2\x96\xa9\xb0-\xe3\x80\x82\xe2\x80\x8c", false); } // [C1, V3, V7]
5101test { try toAsciiFail("\xf3\xac\x9a\xb6\xf3\xb8\x8b\x96\xf2\x96\xa9\xb0-\xe3\x80\x82\xe2\x80\x8c", true); } // [V3, V7, A4_2]
2296test { try toUnicodeFail("xn----7i12hu122k9ire."); } // [V3, V7]5102test { try toUnicodeFail("xn----7i12hu122k9ire."); } // [V3, V7]
5103test { try toAsciiFail("xn----7i12hu122k9ire.", false); } // [V3, V7, A4_2]
5104test { try toAsciiFail("xn----7i12hu122k9ire.", true); } // [V3, V7, A4_2]
2297test { try toUnicodeFail("xn----7i12hu122k9ire.xn--0ug"); } // [C1, V3, V7]5105test { try toUnicodeFail("xn----7i12hu122k9ire.xn--0ug"); } // [C1, V3, V7]
5106test { try toAsciiFail("xn----7i12hu122k9ire.xn--0ug", false); } // [C1, V3, V7]
5107test { try toAsciiFail("xn----7i12hu122k9ire.xn--0ug", true); } // [C1, V3, V7]
2298test { try toUnicodeFail("\xf0\x90\xb9\xa3\xef\xbc\x8e\xdf\x82"); } // [B1]5108test { try toUnicodeFail("\xf0\x90\xb9\xa3\xef\xbc\x8e\xdf\x82"); } // [B1]
5109test { try toAsciiFail("\xf0\x90\xb9\xa3\xef\xbc\x8e\xdf\x82", false); } // [B1]
5110test { try toAsciiFail("\xf0\x90\xb9\xa3\xef\xbc\x8e\xdf\x82", true); } // [B1]
2299test { try toUnicodeFail("\xf0\x90\xb9\xa3.\xdf\x82"); } // [B1]5111test { try toUnicodeFail("\xf0\x90\xb9\xa3.\xdf\x82"); } // [B1]
5112test { try toAsciiFail("\xf0\x90\xb9\xa3.\xdf\x82", false); } // [B1]
5113test { try toAsciiFail("\xf0\x90\xb9\xa3.\xdf\x82", true); } // [B1]
2300test { try toUnicodeFail("xn--bo0d.xn--dsb"); } // [B1]5114test { try toUnicodeFail("xn--bo0d.xn--dsb"); } // [B1]
5115test { try toAsciiFail("xn--bo0d.xn--dsb", false); } // [B1]
5116test { try toAsciiFail("xn--bo0d.xn--dsb", true); } // [B1]
2301test { try toUnicodeFail("-\xdf\xa1\xef\xbd\xa1\xe2\x86\x83"); } // [B1, V3]5117test { try toUnicodeFail("-\xdf\xa1\xef\xbd\xa1\xe2\x86\x83"); } // [B1, V3]
5118test { try toAsciiFail("-\xdf\xa1\xef\xbd\xa1\xe2\x86\x83", false); } // [B1, V3]
5119test { try toAsciiFail("-\xdf\xa1\xef\xbd\xa1\xe2\x86\x83", true); } // [B1, V3]
2302test { try toUnicodeFail("-\xdf\xa1\xe3\x80\x82\xe2\x86\x83"); } // [B1, V3]5120test { try toUnicodeFail("-\xdf\xa1\xe3\x80\x82\xe2\x86\x83"); } // [B1, V3]
5121test { try toAsciiFail("-\xdf\xa1\xe3\x80\x82\xe2\x86\x83", false); } // [B1, V3]
5122test { try toAsciiFail("-\xdf\xa1\xe3\x80\x82\xe2\x86\x83", true); } // [B1, V3]
2303test { try toUnicodeFail("-\xdf\xa1\xe3\x80\x82\xe2\x86\x84"); } // [B1, V3]5123test { try toUnicodeFail("-\xdf\xa1\xe3\x80\x82\xe2\x86\x84"); } // [B1, V3]
5124test { try toAsciiFail("-\xdf\xa1\xe3\x80\x82\xe2\x86\x84", false); } // [B1, V3]
5125test { try toAsciiFail("-\xdf\xa1\xe3\x80\x82\xe2\x86\x84", true); } // [B1, V3]
2304test { try toUnicodeFail("xn----8cd.xn--r5g"); } // [B1, V3]5126test { try toUnicodeFail("xn----8cd.xn--r5g"); } // [B1, V3]
5127test { try toAsciiFail("xn----8cd.xn--r5g", false); } // [B1, V3]
5128test { try toAsciiFail("xn----8cd.xn--r5g", true); } // [B1, V3]
2305test { try toUnicodeFail("-\xdf\xa1\xef\xbd\xa1\xe2\x86\x84"); } // [B1, V3]5129test { try toUnicodeFail("-\xdf\xa1\xef\xbd\xa1\xe2\x86\x84"); } // [B1, V3]
5130test { try toAsciiFail("-\xdf\xa1\xef\xbd\xa1\xe2\x86\x84", false); } // [B1, V3]
5131test { try toAsciiFail("-\xdf\xa1\xef\xbd\xa1\xe2\x86\x84", true); } // [B1, V3]
2306test { try toUnicodeFail("xn----8cd.xn--q5g"); } // [B1, V3, V7]5132test { try toUnicodeFail("xn----8cd.xn--q5g"); } // [B1, V3, V7]
5133test { try toAsciiFail("xn----8cd.xn--q5g", false); } // [B1, V3, V7]
5134test { try toAsciiFail("xn----8cd.xn--q5g", true); } // [B1, V3, V7]
2307test { try toUnicodeFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82\xc3\x9f\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf"); } // [B1, B5, B6, C1, C2, V7]5135test { try toUnicodeFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82\xc3\x9f\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf"); } // [B1, B5, B6, C1, C2, V7]
5136test { try toAsciiFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82\xc3\x9f\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf", false); } // [B1, B5, B6, C1, C2, V7]
5137test { try toAsciiFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82\xc3\x9f\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf", true); } // [B1, B5, B6, V3, V7]
2308test { try toUnicodeFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82\xc3\x9f\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf"); } // [B1, B5, B6, C1, C2, V3, X4_2]5138test { try toUnicodeFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82\xc3\x9f\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf"); } // [B1, B5, B6, C1, C2, V3, X4_2]
5139test { try toAsciiFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82\xc3\x9f\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf", false); } // [B1, B5, B6, C1, C2, V3, A4_2]
5140test { try toAsciiFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82\xc3\x9f\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf", true); } // [B1, B5, B6, V3, A4_2]
2309test { try toUnicodeFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82SS\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\x9f"); } // [B1, B5, B6, C1, C2, V3, X4_2]5141test { try toUnicodeFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82SS\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\x9f"); } // [B1, B5, B6, C1, C2, V3, X4_2]
5142test { try toAsciiFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82SS\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\x9f", false); } // [B1, B5, B6, C1, C2, V3, A4_2]
5143test { try toAsciiFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82SS\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\x9f", true); } // [B1, B5, B6, V3, A4_2]
2310test { try toUnicodeFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf"); } // [B1, B5, B6, C1, C2, V3, X4_2]5144test { try toUnicodeFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf"); } // [B1, B5, B6, C1, C2, V3, X4_2]
5145test { try toAsciiFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf", false); } // [B1, B5, B6, C1, C2, V3, A4_2]
5146test { try toAsciiFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf", true); } // [B1, B5, B6, V3, A4_2]
2311test { try toUnicodeFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82Ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\x9f"); } // [B1, B5, B6, C1, C2, V3, X4_2]5147test { try toUnicodeFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82Ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\x9f"); } // [B1, B5, B6, C1, C2, V3, X4_2]
5148test { try toAsciiFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82Ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\x9f", false); } // [B1, B5, B6, C1, C2, V3, A4_2]
5149test { try toAsciiFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82Ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\x9f", true); } // [B1, B5, B6, V3, A4_2]
2312test { try toUnicodeFail("-..xn--ss-h46c5711e"); } // [B1, B5, B6, V3, X4_2]5150test { try toUnicodeFail("-..xn--ss-h46c5711e"); } // [B1, B5, B6, V3, X4_2]
5151test { try toAsciiFail("-..xn--ss-h46c5711e", false); } // [B1, B5, B6, V3, A4_2]
5152test { try toAsciiFail("-..xn--ss-h46c5711e", true); } // [B1, B5, B6, V3, A4_2]
2313test { try toUnicodeFail("xn----tgn..xn--ss-k1ts75zb8ym"); } // [B1, B5, B6, C1, C2, V3, X4_2]5153test { try toUnicodeFail("xn----tgn..xn--ss-k1ts75zb8ym"); } // [B1, B5, B6, C1, C2, V3, X4_2]
5154test { try toAsciiFail("xn----tgn..xn--ss-k1ts75zb8ym", false); } // [B1, B5, B6, C1, C2, V3, A4_2]
5155test { try toAsciiFail("xn----tgn..xn--ss-k1ts75zb8ym", true); } // [B1, B5, B6, C1, C2, V3, A4_2]
2314test { try toUnicodeFail("xn----tgn..xn--zca670n5f0binyk"); } // [B1, B5, B6, C1, C2, V3, X4_2]5156test { try toUnicodeFail("xn----tgn..xn--zca670n5f0binyk"); } // [B1, B5, B6, C1, C2, V3, X4_2]
5157test { try toAsciiFail("xn----tgn..xn--zca670n5f0binyk", false); } // [B1, B5, B6, C1, C2, V3, A4_2]
5158test { try toAsciiFail("xn----tgn..xn--zca670n5f0binyk", true); } // [B1, B5, B6, C1, C2, V3, A4_2]
2315test { try toUnicodeFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82SS\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\x9f"); } // [B1, B5, B6, C1, C2, V7]5159test { try toUnicodeFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82SS\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\x9f"); } // [B1, B5, B6, C1, C2, V7]
5160test { try toAsciiFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82SS\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\x9f", false); } // [B1, B5, B6, C1, C2, V7]
5161test { try toAsciiFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82SS\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\x9f", true); } // [B1, B5, B6, V3, V7]
2316test { try toUnicodeFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf"); } // [B1, B5, B6, C1, C2, V7]5162test { try toUnicodeFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf"); } // [B1, B5, B6, C1, C2, V7]
5163test { try toAsciiFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf", false); } // [B1, B5, B6, C1, C2, V7]
5164test { try toAsciiFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf", true); } // [B1, B5, B6, V3, V7]
2317test { try toUnicodeFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82Ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\x9f"); } // [B1, B5, B6, C1, C2, V7]5165test { try toUnicodeFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82Ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\x9f"); } // [B1, B5, B6, C1, C2, V7]
5166test { try toAsciiFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82Ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\x9f", false); } // [B1, B5, B6, C1, C2, V7]
5167test { try toAsciiFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82Ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\x9f", true); } // [B1, B5, B6, V3, V7]
2318test { try toUnicodeFail("xn----o89h.xn--ss-h46c5711e"); } // [B1, B5, B6, V3, V7]5168test { try toUnicodeFail("xn----o89h.xn--ss-h46c5711e"); } // [B1, B5, B6, V3, V7]
5169test { try toAsciiFail("xn----o89h.xn--ss-h46c5711e", false); } // [B1, B5, B6, V3, V7]
5170test { try toAsciiFail("xn----o89h.xn--ss-h46c5711e", true); } // [B1, B5, B6, V3, V7]
2319test { try toUnicodeFail("xn----tgnt341h.xn--ss-k1ts75zb8ym"); } // [B1, B5, B6, C1, C2, V7]5171test { try toUnicodeFail("xn----tgnt341h.xn--ss-k1ts75zb8ym"); } // [B1, B5, B6, C1, C2, V7]
5172test { try toAsciiFail("xn----tgnt341h.xn--ss-k1ts75zb8ym", false); } // [B1, B5, B6, C1, C2, V7]
5173test { try toAsciiFail("xn----tgnt341h.xn--ss-k1ts75zb8ym", true); } // [B1, B5, B6, C1, C2, V7]
2320test { try toUnicodeFail("xn----tgnt341h.xn--zca670n5f0binyk"); } // [B1, B5, B6, C1, C2, V7]5174test { try toUnicodeFail("xn----tgnt341h.xn--zca670n5f0binyk"); } // [B1, B5, B6, C1, C2, V7]
5175test { try toAsciiFail("xn----tgnt341h.xn--zca670n5f0binyk", false); } // [B1, B5, B6, C1, C2, V7]
5176test { try toAsciiFail("xn----tgnt341h.xn--zca670n5f0binyk", true); } // [B1, B5, B6, C1, C2, V7]
2321test { try toUnicodeFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82SS\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf"); } // [B1, B5, B6, C1, C2, V3, X4_2]5177test { try toUnicodeFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82SS\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf"); } // [B1, B5, B6, C1, C2, V3, X4_2]
5178test { try toAsciiFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82SS\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf", false); } // [B1, B5, B6, C1, C2, V3, A4_2]
5179test { try toAsciiFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82SS\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf", true); } // [B1, B5, B6, V3, A4_2]
2322test { try toUnicodeFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82Ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf"); } // [B1, B5, B6, C1, C2, V3, X4_2]5180test { try toUnicodeFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82Ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf"); } // [B1, B5, B6, C1, C2, V3, X4_2]
5181test { try toAsciiFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82Ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf", false); } // [B1, B5, B6, C1, C2, V3, A4_2]
5182test { try toAsciiFail("\xe2\x80\x8d-\xe3\x80\x82\xf3\xa0\x84\x84\xe3\x80\x82Ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf", true); } // [B1, B5, B6, V3, A4_2]
2323test { try toUnicodeFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82SS\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf"); } // [B1, B5, B6, C1, C2, V7]5183test { try toUnicodeFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82SS\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf"); } // [B1, B5, B6, C1, C2, V7]
5184test { try toAsciiFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82SS\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf", false); } // [B1, B5, B6, C1, C2, V7]
5185test { try toAsciiFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82SS\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf", true); } // [B1, B5, B6, V3, V7]
2324test { try toUnicodeFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82Ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf"); } // [B1, B5, B6, C1, C2, V7]5186test { try toUnicodeFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82Ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf"); } // [B1, B5, B6, C1, C2, V7]
5187test { try toAsciiFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82Ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf", false); } // [B1, B5, B6, C1, C2, V7]
5188test { try toAsciiFail("\xe2\x80\x8d-\xef\xb8\x92\xf3\xa0\x84\x84\xe3\x80\x82Ss\xe5\x93\x91\xe2\x80\x8c\xf0\x90\xb5\xbf", true); } // [B1, B5, B6, V3, V7]
2325test { try toUnicodeFail("\xef\xb8\x92\xef\xbc\x8e\xef\xb8\xaf\xf0\x91\x91\x82"); } // [V6, V7]5189test { try toUnicodeFail("\xef\xb8\x92\xef\xbc\x8e\xef\xb8\xaf\xf0\x91\x91\x82"); } // [V6, V7]
5190test { try toAsciiFail("\xef\xb8\x92\xef\xbc\x8e\xef\xb8\xaf\xf0\x91\x91\x82", false); } // [V6, V7]
5191test { try toAsciiFail("\xef\xb8\x92\xef\xbc\x8e\xef\xb8\xaf\xf0\x91\x91\x82", true); } // [V6, V7]
2326test { try toUnicodeFail("\xef\xb8\x92\xef\xbc\x8e\xf0\x91\x91\x82\xef\xb8\xaf"); } // [V6, V7]5192test { try toUnicodeFail("\xef\xb8\x92\xef\xbc\x8e\xf0\x91\x91\x82\xef\xb8\xaf"); } // [V6, V7]
5193test { try toAsciiFail("\xef\xb8\x92\xef\xbc\x8e\xf0\x91\x91\x82\xef\xb8\xaf", false); } // [V6, V7]
5194test { try toAsciiFail("\xef\xb8\x92\xef\xbc\x8e\xf0\x91\x91\x82\xef\xb8\xaf", true); } // [V6, V7]
2327test { try toUnicodeFail("\xe3\x80\x82.\xf0\x91\x91\x82\xef\xb8\xaf"); } // [V6, X4_2]5195test { try toUnicodeFail("\xe3\x80\x82.\xf0\x91\x91\x82\xef\xb8\xaf"); } // [V6, X4_2]
5196test { try toAsciiFail("\xe3\x80\x82.\xf0\x91\x91\x82\xef\xb8\xaf", false); } // [V6, A4_2]
5197test { try toAsciiFail("\xe3\x80\x82.\xf0\x91\x91\x82\xef\xb8\xaf", true); } // [V6, A4_2]
2328test { try toUnicodeFail("..xn--s96cu30b"); } // [V6, X4_2]5198test { try toUnicodeFail("..xn--s96cu30b"); } // [V6, X4_2]
5199test { try toAsciiFail("..xn--s96cu30b", false); } // [V6, A4_2]
5200test { try toAsciiFail("..xn--s96cu30b", true); } // [V6, A4_2]
2329test { try toUnicodeFail("xn--y86c.xn--s96cu30b"); } // [V6, V7]5201test { try toUnicodeFail("xn--y86c.xn--s96cu30b"); } // [V6, V7]
5202test { try toAsciiFail("xn--y86c.xn--s96cu30b", false); } // [V6, V7]
5203test { try toAsciiFail("xn--y86c.xn--s96cu30b", true); } // [V6, V7]
2330test { try toUnicodeFail("\xea\xa4\xac\xe3\x80\x82\xe2\x80\x8d"); } // [C2, V6]5204test { try toUnicodeFail("\xea\xa4\xac\xe3\x80\x82\xe2\x80\x8d"); } // [C2, V6]
5205test { try toAsciiFail("\xea\xa4\xac\xe3\x80\x82\xe2\x80\x8d", false); } // [C2, V6]
5206test { try toAsciiFail("\xea\xa4\xac\xe3\x80\x82\xe2\x80\x8d", true); } // [V6, A4_2]
2331test { try toUnicodeFail("xn--zi9a."); } // [V6]5207test { try toUnicodeFail("xn--zi9a."); } // [V6]
5208test { try toAsciiFail("xn--zi9a.", false); } // [V6, A4_2]
5209test { try toAsciiFail("xn--zi9a.", true); } // [V6, A4_2]
2332test { try toUnicodeFail("xn--zi9a.xn--1ug"); } // [C2, V6]5210test { try toUnicodeFail("xn--zi9a.xn--1ug"); } // [C2, V6]
5211test { try toAsciiFail("xn--zi9a.xn--1ug", false); } // [C2, V6]
5212test { try toAsciiFail("xn--zi9a.xn--1ug", true); } // [C2, V6]
2333test { try toUnicodeFail("\xe2\x80\x8d\xf3\xa0\xb8\xa1\xef\xbd\xa1\xef\xb3\x97"); } // [B1, C2, V7]5213test { try toUnicodeFail("\xe2\x80\x8d\xf3\xa0\xb8\xa1\xef\xbd\xa1\xef\xb3\x97"); } // [B1, C2, V7]
5214test { try toAsciiFail("\xe2\x80\x8d\xf3\xa0\xb8\xa1\xef\xbd\xa1\xef\xb3\x97", false); } // [B1, C2, V7]
5215test { try toAsciiFail("\xe2\x80\x8d\xf3\xa0\xb8\xa1\xef\xbd\xa1\xef\xb3\x97", true); } // [B1, V7]
2334test { try toUnicodeFail("\xe2\x80\x8d\xf3\xa0\xb8\xa1\xe3\x80\x82\xd9\x87\xd8\xac"); } // [B1, C2, V7]5216test { try toUnicodeFail("\xe2\x80\x8d\xf3\xa0\xb8\xa1\xe3\x80\x82\xd9\x87\xd8\xac"); } // [B1, C2, V7]
5217test { try toAsciiFail("\xe2\x80\x8d\xf3\xa0\xb8\xa1\xe3\x80\x82\xd9\x87\xd8\xac", false); } // [B1, C2, V7]
5218test { try toAsciiFail("\xe2\x80\x8d\xf3\xa0\xb8\xa1\xe3\x80\x82\xd9\x87\xd8\xac", true); } // [B1, V7]
2335test { try toUnicodeFail("xn--d356e.xn--rgb7c"); } // [B1, V7]5219test { try toUnicodeFail("xn--d356e.xn--rgb7c"); } // [B1, V7]
5220test { try toAsciiFail("xn--d356e.xn--rgb7c", false); } // [B1, V7]
5221test { try toAsciiFail("xn--d356e.xn--rgb7c", true); } // [B1, V7]
2336test { try toUnicodeFail("xn--1ug80651l.xn--rgb7c"); } // [B1, C2, V7]5222test { try toUnicodeFail("xn--1ug80651l.xn--rgb7c"); } // [B1, C2, V7]
5223test { try toAsciiFail("xn--1ug80651l.xn--rgb7c", false); } // [B1, C2, V7]
5224test { try toAsciiFail("xn--1ug80651l.xn--rgb7c", true); } // [B1, C2, V7]
2337test { try toUnicodeFail("-\xe1\x82\xa4\xf0\x9d\x9f\xa2\xd9\xa3\xef\xbc\x8e\xf0\x91\x8d\xb4\xcf\x82"); } // [B1, V3, V6]5225test { try toUnicodeFail("-\xe1\x82\xa4\xf0\x9d\x9f\xa2\xd9\xa3\xef\xbc\x8e\xf0\x91\x8d\xb4\xcf\x82"); } // [B1, V3, V6]
5226test { try toAsciiFail("-\xe1\x82\xa4\xf0\x9d\x9f\xa2\xd9\xa3\xef\xbc\x8e\xf0\x91\x8d\xb4\xcf\x82", false); } // [B1, V3, V6]
5227test { try toAsciiFail("-\xe1\x82\xa4\xf0\x9d\x9f\xa2\xd9\xa3\xef\xbc\x8e\xf0\x91\x8d\xb4\xcf\x82", true); } // [B1, V3, V6]
2338test { try toUnicodeFail("-\xe1\x82\xa40\xd9\xa3.\xf0\x91\x8d\xb4\xcf\x82"); } // [B1, V3, V6]5228test { try toUnicodeFail("-\xe1\x82\xa40\xd9\xa3.\xf0\x91\x8d\xb4\xcf\x82"); } // [B1, V3, V6]
5229test { try toAsciiFail("-\xe1\x82\xa40\xd9\xa3.\xf0\x91\x8d\xb4\xcf\x82", false); } // [B1, V3, V6]
5230test { try toAsciiFail("-\xe1\x82\xa40\xd9\xa3.\xf0\x91\x8d\xb4\xcf\x82", true); } // [B1, V3, V6]
2339test { try toUnicodeFail("-\xe2\xb4\x840\xd9\xa3.\xf0\x91\x8d\xb4\xcf\x82"); } // [B1, V3, V6]5231test { try toUnicodeFail("-\xe2\xb4\x840\xd9\xa3.\xf0\x91\x8d\xb4\xcf\x82"); } // [B1, V3, V6]
5232test { try toAsciiFail("-\xe2\xb4\x840\xd9\xa3.\xf0\x91\x8d\xb4\xcf\x82", false); } // [B1, V3, V6]
5233test { try toAsciiFail("-\xe2\xb4\x840\xd9\xa3.\xf0\x91\x8d\xb4\xcf\x82", true); } // [B1, V3, V6]
2340test { try toUnicodeFail("-\xe1\x82\xa40\xd9\xa3.\xf0\x91\x8d\xb4\xce\xa3"); } // [B1, V3, V6]5234test { try toUnicodeFail("-\xe1\x82\xa40\xd9\xa3.\xf0\x91\x8d\xb4\xce\xa3"); } // [B1, V3, V6]
5235test { try toAsciiFail("-\xe1\x82\xa40\xd9\xa3.\xf0\x91\x8d\xb4\xce\xa3", false); } // [B1, V3, V6]
5236test { try toAsciiFail("-\xe1\x82\xa40\xd9\xa3.\xf0\x91\x8d\xb4\xce\xa3", true); } // [B1, V3, V6]
2341test { try toUnicodeFail("-\xe2\xb4\x840\xd9\xa3.\xf0\x91\x8d\xb4\xcf\x83"); } // [B1, V3, V6]5237test { try toUnicodeFail("-\xe2\xb4\x840\xd9\xa3.\xf0\x91\x8d\xb4\xcf\x83"); } // [B1, V3, V6]
5238test { try toAsciiFail("-\xe2\xb4\x840\xd9\xa3.\xf0\x91\x8d\xb4\xcf\x83", false); } // [B1, V3, V6]
5239test { try toAsciiFail("-\xe2\xb4\x840\xd9\xa3.\xf0\x91\x8d\xb4\xcf\x83", true); } // [B1, V3, V6]
2342test { try toUnicodeFail("xn---0-iyd8660b.xn--4xa9120l"); } // [B1, V3, V6]5240test { try toUnicodeFail("xn---0-iyd8660b.xn--4xa9120l"); } // [B1, V3, V6]
5241test { try toAsciiFail("xn---0-iyd8660b.xn--4xa9120l", false); } // [B1, V3, V6]
5242test { try toAsciiFail("xn---0-iyd8660b.xn--4xa9120l", true); } // [B1, V3, V6]
2343test { try toUnicodeFail("xn---0-iyd8660b.xn--3xa1220l"); } // [B1, V3, V6]5243test { try toUnicodeFail("xn---0-iyd8660b.xn--3xa1220l"); } // [B1, V3, V6]
5244test { try toAsciiFail("xn---0-iyd8660b.xn--3xa1220l", false); } // [B1, V3, V6]
5245test { try toAsciiFail("xn---0-iyd8660b.xn--3xa1220l", true); } // [B1, V3, V6]
2344test { try toUnicodeFail("-\xe2\xb4\x84\xf0\x9d\x9f\xa2\xd9\xa3\xef\xbc\x8e\xf0\x91\x8d\xb4\xcf\x82"); } // [B1, V3, V6]5246test { try toUnicodeFail("-\xe2\xb4\x84\xf0\x9d\x9f\xa2\xd9\xa3\xef\xbc\x8e\xf0\x91\x8d\xb4\xcf\x82"); } // [B1, V3, V6]
5247test { try toAsciiFail("-\xe2\xb4\x84\xf0\x9d\x9f\xa2\xd9\xa3\xef\xbc\x8e\xf0\x91\x8d\xb4\xcf\x82", false); } // [B1, V3, V6]
5248test { try toAsciiFail("-\xe2\xb4\x84\xf0\x9d\x9f\xa2\xd9\xa3\xef\xbc\x8e\xf0\x91\x8d\xb4\xcf\x82", true); } // [B1, V3, V6]
2345test { try toUnicodeFail("-\xe1\x82\xa4\xf0\x9d\x9f\xa2\xd9\xa3\xef\xbc\x8e\xf0\x91\x8d\xb4\xce\xa3"); } // [B1, V3, V6]5249test { try toUnicodeFail("-\xe1\x82\xa4\xf0\x9d\x9f\xa2\xd9\xa3\xef\xbc\x8e\xf0\x91\x8d\xb4\xce\xa3"); } // [B1, V3, V6]
5250test { try toAsciiFail("-\xe1\x82\xa4\xf0\x9d\x9f\xa2\xd9\xa3\xef\xbc\x8e\xf0\x91\x8d\xb4\xce\xa3", false); } // [B1, V3, V6]
5251test { try toAsciiFail("-\xe1\x82\xa4\xf0\x9d\x9f\xa2\xd9\xa3\xef\xbc\x8e\xf0\x91\x8d\xb4\xce\xa3", true); } // [B1, V3, V6]
2346test { try toUnicodeFail("-\xe2\xb4\x84\xf0\x9d\x9f\xa2\xd9\xa3\xef\xbc\x8e\xf0\x91\x8d\xb4\xcf\x83"); } // [B1, V3, V6]5252test { try toUnicodeFail("-\xe2\xb4\x84\xf0\x9d\x9f\xa2\xd9\xa3\xef\xbc\x8e\xf0\x91\x8d\xb4\xcf\x83"); } // [B1, V3, V6]
5253test { try toAsciiFail("-\xe2\xb4\x84\xf0\x9d\x9f\xa2\xd9\xa3\xef\xbc\x8e\xf0\x91\x8d\xb4\xcf\x83", false); } // [B1, V3, V6]
5254test { try toAsciiFail("-\xe2\xb4\x84\xf0\x9d\x9f\xa2\xd9\xa3\xef\xbc\x8e\xf0\x91\x8d\xb4\xcf\x83", true); } // [B1, V3, V6]
2347test { try toUnicodeFail("xn---0-iyd216h.xn--4xa9120l"); } // [B1, V3, V6, V7]5255test { try toUnicodeFail("xn---0-iyd216h.xn--4xa9120l"); } // [B1, V3, V6, V7]
5256test { try toAsciiFail("xn---0-iyd216h.xn--4xa9120l", false); } // [B1, V3, V6, V7]
5257test { try toAsciiFail("xn---0-iyd216h.xn--4xa9120l", true); } // [B1, V3, V6, V7]
2348test { try toUnicodeFail("xn---0-iyd216h.xn--3xa1220l"); } // [B1, V3, V6, V7]5258test { try toUnicodeFail("xn---0-iyd216h.xn--3xa1220l"); } // [B1, V3, V6, V7]
5259test { try toAsciiFail("xn---0-iyd216h.xn--3xa1220l", false); } // [B1, V3, V6, V7]
5260test { try toAsciiFail("xn---0-iyd216h.xn--3xa1220l", true); } // [B1, V3, V6, V7]
2349test { try toUnicodeFail("\xf3\xa6\x88\x84\xe3\x80\x82-"); } // [V3, V7]5261test { try toUnicodeFail("\xf3\xa6\x88\x84\xe3\x80\x82-"); } // [V3, V7]
5262test { try toAsciiFail("\xf3\xa6\x88\x84\xe3\x80\x82-", false); } // [V3, V7]
5263test { try toAsciiFail("\xf3\xa6\x88\x84\xe3\x80\x82-", true); } // [V3, V7]
2350test { try toUnicodeFail("xn--xm38e.-"); } // [V3, V7]5264test { try toUnicodeFail("xn--xm38e.-"); } // [V3, V7]
5265test { try toAsciiFail("xn--xm38e.-", false); } // [V3, V7]
5266test { try toAsciiFail("xn--xm38e.-", true); } // [V3, V7]
2351test { try toUnicodeFail("\xe2\x8b\xa0\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98\xc3\x9f\xe2\x89\xaf"); } // [V7]5267test { try toUnicodeFail("\xe2\x8b\xa0\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98\xc3\x9f\xe2\x89\xaf"); } // [V7]
5268test { try toAsciiFail("\xe2\x8b\xa0\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98\xc3\x9f\xe2\x89\xaf", false); } // [V7]
5269test { try toAsciiFail("\xe2\x8b\xa0\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98\xc3\x9f\xe2\x89\xaf", true); } // [V7]
2352test { try toUnicodeFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98\xc3\x9f>\xcc\xb8"); } // [V7]5270test { try toUnicodeFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98\xc3\x9f>\xcc\xb8"); } // [V7]
5271test { try toAsciiFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98\xc3\x9f>\xcc\xb8", false); } // [V7]
5272test { try toAsciiFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98\xc3\x9f>\xcc\xb8", true); } // [V7]
2353test { try toUnicodeFail("\xe2\x8b\xa0\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98\xc3\x9f\xe2\x89\xaf"); } // [V7]5273test { try toUnicodeFail("\xe2\x8b\xa0\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98\xc3\x9f\xe2\x89\xaf"); } // [V7]
5274test { try toAsciiFail("\xe2\x8b\xa0\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98\xc3\x9f\xe2\x89\xaf", false); } // [V7]
5275test { try toAsciiFail("\xe2\x8b\xa0\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98\xc3\x9f\xe2\x89\xaf", true); } // [V7]
2354test { try toUnicodeFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98\xc3\x9f>\xcc\xb8"); } // [V7]5276test { try toUnicodeFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98\xc3\x9f>\xcc\xb8"); } // [V7]
5277test { try toAsciiFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98\xc3\x9f>\xcc\xb8", false); } // [V7]
5278test { try toAsciiFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98\xc3\x9f>\xcc\xb8", true); } // [V7]
2355test { try toUnicodeFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98SS>\xcc\xb8"); } // [V7]5279test { try toUnicodeFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98SS>\xcc\xb8"); } // [V7]
5280test { try toAsciiFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98SS>\xcc\xb8", false); } // [V7]
5281test { try toAsciiFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98SS>\xcc\xb8", true); } // [V7]
2356test { try toUnicodeFail("\xe2\x8b\xa0\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98SS\xe2\x89\xaf"); } // [V7]5282test { try toUnicodeFail("\xe2\x8b\xa0\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98SS\xe2\x89\xaf"); } // [V7]
5283test { try toAsciiFail("\xe2\x8b\xa0\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98SS\xe2\x89\xaf", false); } // [V7]
5284test { try toAsciiFail("\xe2\x8b\xa0\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98SS\xe2\x89\xaf", true); } // [V7]
2357test { try toUnicodeFail("\xe2\x8b\xa0\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98ss\xe2\x89\xaf"); } // [V7]5285test { try toUnicodeFail("\xe2\x8b\xa0\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98ss\xe2\x89\xaf"); } // [V7]
5286test { try toAsciiFail("\xe2\x8b\xa0\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98ss\xe2\x89\xaf", false); } // [V7]
5287test { try toAsciiFail("\xe2\x8b\xa0\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98ss\xe2\x89\xaf", true); } // [V7]
2358test { try toUnicodeFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98ss>\xcc\xb8"); } // [V7]5288test { try toUnicodeFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98ss>\xcc\xb8"); } // [V7]
5289test { try toAsciiFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98ss>\xcc\xb8", false); } // [V7]
5290test { try toAsciiFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98ss>\xcc\xb8", true); } // [V7]
2359test { try toUnicodeFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98Ss>\xcc\xb8"); } // [V7]5291test { try toUnicodeFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98Ss>\xcc\xb8"); } // [V7]
5292test { try toAsciiFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98Ss>\xcc\xb8", false); } // [V7]
5293test { try toAsciiFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98Ss>\xcc\xb8", true); } // [V7]
2360test { try toUnicodeFail("\xe2\x8b\xa0\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98Ss\xe2\x89\xaf"); } // [V7]5294test { try toUnicodeFail("\xe2\x8b\xa0\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98Ss\xe2\x89\xaf"); } // [V7]
5295test { try toAsciiFail("\xe2\x8b\xa0\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98Ss\xe2\x89\xaf", false); } // [V7]
5296test { try toAsciiFail("\xe2\x8b\xa0\xf0\x90\x8b\xae.\xf2\xb6\x88\xae\xe0\xbc\x98Ss\xe2\x89\xaf", true); } // [V7]
2361test { try toUnicodeFail("xn--pgh4639f.xn--ss-ifj426nle504a"); } // [V7]5297test { try toUnicodeFail("xn--pgh4639f.xn--ss-ifj426nle504a"); } // [V7]
5298test { try toAsciiFail("xn--pgh4639f.xn--ss-ifj426nle504a", false); } // [V7]
5299test { try toAsciiFail("xn--pgh4639f.xn--ss-ifj426nle504a", true); } // [V7]
2362test { try toUnicodeFail("xn--pgh4639f.xn--zca593eo6oc013y"); } // [V7]5300test { try toUnicodeFail("xn--pgh4639f.xn--zca593eo6oc013y"); } // [V7]
5301test { try toAsciiFail("xn--pgh4639f.xn--zca593eo6oc013y", false); } // [V7]
5302test { try toAsciiFail("xn--pgh4639f.xn--zca593eo6oc013y", true); } // [V7]
2363test { try toUnicodeFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98SS>\xcc\xb8"); } // [V7]5303test { try toUnicodeFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98SS>\xcc\xb8"); } // [V7]
5304test { try toAsciiFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98SS>\xcc\xb8", false); } // [V7]
5305test { try toAsciiFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98SS>\xcc\xb8", true); } // [V7]
2364test { try toUnicodeFail("\xe2\x8b\xa0\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98SS\xe2\x89\xaf"); } // [V7]5306test { try toUnicodeFail("\xe2\x8b\xa0\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98SS\xe2\x89\xaf"); } // [V7]
5307test { try toAsciiFail("\xe2\x8b\xa0\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98SS\xe2\x89\xaf", false); } // [V7]
5308test { try toAsciiFail("\xe2\x8b\xa0\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98SS\xe2\x89\xaf", true); } // [V7]
2365test { try toUnicodeFail("\xe2\x8b\xa0\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98ss\xe2\x89\xaf"); } // [V7]5309test { try toUnicodeFail("\xe2\x8b\xa0\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98ss\xe2\x89\xaf"); } // [V7]
5310test { try toAsciiFail("\xe2\x8b\xa0\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98ss\xe2\x89\xaf", false); } // [V7]
5311test { try toAsciiFail("\xe2\x8b\xa0\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98ss\xe2\x89\xaf", true); } // [V7]
2366test { try toUnicodeFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98ss>\xcc\xb8"); } // [V7]5312test { try toUnicodeFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98ss>\xcc\xb8"); } // [V7]
5313test { try toAsciiFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98ss>\xcc\xb8", false); } // [V7]
5314test { try toAsciiFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98ss>\xcc\xb8", true); } // [V7]
2367test { try toUnicodeFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98Ss>\xcc\xb8"); } // [V7]5315test { try toUnicodeFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98Ss>\xcc\xb8"); } // [V7]
5316test { try toAsciiFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98Ss>\xcc\xb8", false); } // [V7]
5317test { try toAsciiFail("\xe2\x89\xbc\xcc\xb8\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98Ss>\xcc\xb8", true); } // [V7]
2368test { try toUnicodeFail("\xe2\x8b\xa0\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98Ss\xe2\x89\xaf"); } // [V7]5318test { try toUnicodeFail("\xe2\x8b\xa0\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98Ss\xe2\x89\xaf"); } // [V7]
5319test { try toAsciiFail("\xe2\x8b\xa0\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98Ss\xe2\x89\xaf", false); } // [V7]
5320test { try toAsciiFail("\xe2\x8b\xa0\xf0\x90\x8b\xae\xef\xbc\x8e\xf2\xb6\x88\xae\xe0\xbc\x98Ss\xe2\x89\xaf", true); } // [V7]
2369test { try toUnicodeFail("1\xf0\x90\x8b\xb8\xd9\xa4\xef\xbd\xa1\xf3\xa0\xa2\xae\xef\xae\xa4\xf1\xb7\x9d\x8a"); } // [B1, V7]5321test { try toUnicodeFail("1\xf0\x90\x8b\xb8\xd9\xa4\xef\xbd\xa1\xf3\xa0\xa2\xae\xef\xae\xa4\xf1\xb7\x9d\x8a"); } // [B1, V7]
5322test { try toAsciiFail("1\xf0\x90\x8b\xb8\xd9\xa4\xef\xbd\xa1\xf3\xa0\xa2\xae\xef\xae\xa4\xf1\xb7\x9d\x8a", false); } // [B1, V7]
5323test { try toAsciiFail("1\xf0\x90\x8b\xb8\xd9\xa4\xef\xbd\xa1\xf3\xa0\xa2\xae\xef\xae\xa4\xf1\xb7\x9d\x8a", true); } // [B1, V7]
2370test { try toUnicodeFail("1\xf0\x90\x8b\xb8\xd9\xa4\xe3\x80\x82\xf3\xa0\xa2\xae\xdb\x80\xf1\xb7\x9d\x8a"); } // [B1, V7]5324test { try toUnicodeFail("1\xf0\x90\x8b\xb8\xd9\xa4\xe3\x80\x82\xf3\xa0\xa2\xae\xdb\x80\xf1\xb7\x9d\x8a"); } // [B1, V7]
5325test { try toAsciiFail("1\xf0\x90\x8b\xb8\xd9\xa4\xe3\x80\x82\xf3\xa0\xa2\xae\xdb\x80\xf1\xb7\x9d\x8a", false); } // [B1, V7]
5326test { try toAsciiFail("1\xf0\x90\x8b\xb8\xd9\xa4\xe3\x80\x82\xf3\xa0\xa2\xae\xdb\x80\xf1\xb7\x9d\x8a", true); } // [B1, V7]
2371test { try toUnicodeFail("1\xf0\x90\x8b\xb8\xd9\xa4\xe3\x80\x82\xf3\xa0\xa2\xae\xdb\x95\xd9\x94\xf1\xb7\x9d\x8a"); } // [B1, V7]5327test { try toUnicodeFail("1\xf0\x90\x8b\xb8\xd9\xa4\xe3\x80\x82\xf3\xa0\xa2\xae\xdb\x95\xd9\x94\xf1\xb7\x9d\x8a"); } // [B1, V7]
5328test { try toAsciiFail("1\xf0\x90\x8b\xb8\xd9\xa4\xe3\x80\x82\xf3\xa0\xa2\xae\xdb\x95\xd9\x94\xf1\xb7\x9d\x8a", false); } // [B1, V7]
5329test { try toAsciiFail("1\xf0\x90\x8b\xb8\xd9\xa4\xe3\x80\x82\xf3\xa0\xa2\xae\xdb\x95\xd9\x94\xf1\xb7\x9d\x8a", true); } // [B1, V7]
2372test { try toUnicodeFail("xn--1-hqc3905q.xn--zkb83268gqee4a"); } // [B1, V7]5330test { try toUnicodeFail("xn--1-hqc3905q.xn--zkb83268gqee4a"); } // [B1, V7]
5331test { try toAsciiFail("xn--1-hqc3905q.xn--zkb83268gqee4a", false); } // [B1, V7]
5332test { try toAsciiFail("xn--1-hqc3905q.xn--zkb83268gqee4a", true); } // [B1, V7]
2373test { try toUnicodeFail("\xe5\x84\xad-\xef\xbd\xa1\xf0\x90\xb9\xb4\xe1\x83\x82\xf1\xa5\xb3\xa0\xe2\x80\x8c"); } // [B1, B6, C1, V3, V7]5333test { try toUnicodeFail("\xe5\x84\xad-\xef\xbd\xa1\xf0\x90\xb9\xb4\xe1\x83\x82\xf1\xa5\xb3\xa0\xe2\x80\x8c"); } // [B1, B6, C1, V3, V7]
5334test { try toAsciiFail("\xe5\x84\xad-\xef\xbd\xa1\xf0\x90\xb9\xb4\xe1\x83\x82\xf1\xa5\xb3\xa0\xe2\x80\x8c", false); } // [B1, B6, C1, V3, V7]
5335test { try toAsciiFail("\xe5\x84\xad-\xef\xbd\xa1\xf0\x90\xb9\xb4\xe1\x83\x82\xf1\xa5\xb3\xa0\xe2\x80\x8c", true); } // [B1, B6, V3, V7]
2374test { try toUnicodeFail("\xe5\x84\xad-\xe3\x80\x82\xf0\x90\xb9\xb4\xe1\x83\x82\xf1\xa5\xb3\xa0\xe2\x80\x8c"); } // [B1, B6, C1, V3, V7]5336test { try toUnicodeFail("\xe5\x84\xad-\xe3\x80\x82\xf0\x90\xb9\xb4\xe1\x83\x82\xf1\xa5\xb3\xa0\xe2\x80\x8c"); } // [B1, B6, C1, V3, V7]
5337test { try toAsciiFail("\xe5\x84\xad-\xe3\x80\x82\xf0\x90\xb9\xb4\xe1\x83\x82\xf1\xa5\xb3\xa0\xe2\x80\x8c", false); } // [B1, B6, C1, V3, V7]
5338test { try toAsciiFail("\xe5\x84\xad-\xe3\x80\x82\xf0\x90\xb9\xb4\xe1\x83\x82\xf1\xa5\xb3\xa0\xe2\x80\x8c", true); } // [B1, B6, V3, V7]
2375test { try toUnicodeFail("\xe5\x84\xad-\xe3\x80\x82\xf0\x90\xb9\xb4\xe2\xb4\xa2\xf1\xa5\xb3\xa0\xe2\x80\x8c"); } // [B1, B6, C1, V3, V7]5339test { try toUnicodeFail("\xe5\x84\xad-\xe3\x80\x82\xf0\x90\xb9\xb4\xe2\xb4\xa2\xf1\xa5\xb3\xa0\xe2\x80\x8c"); } // [B1, B6, C1, V3, V7]
5340test { try toAsciiFail("\xe5\x84\xad-\xe3\x80\x82\xf0\x90\xb9\xb4\xe2\xb4\xa2\xf1\xa5\xb3\xa0\xe2\x80\x8c", false); } // [B1, B6, C1, V3, V7]
5341test { try toAsciiFail("\xe5\x84\xad-\xe3\x80\x82\xf0\x90\xb9\xb4\xe2\xb4\xa2\xf1\xa5\xb3\xa0\xe2\x80\x8c", true); } // [B1, B6, V3, V7]
2376test { try toUnicodeFail("xn----gz7a.xn--qlj9223eywx0b"); } // [B1, B6, V3, V7]5342test { try toUnicodeFail("xn----gz7a.xn--qlj9223eywx0b"); } // [B1, B6, V3, V7]
5343test { try toAsciiFail("xn----gz7a.xn--qlj9223eywx0b", false); } // [B1, B6, V3, V7]
5344test { try toAsciiFail("xn----gz7a.xn--qlj9223eywx0b", true); } // [B1, B6, V3, V7]
2377test { try toUnicodeFail("xn----gz7a.xn--0ug472cfq0pus98b"); } // [B1, B6, C1, V3, V7]5345test { try toUnicodeFail("xn----gz7a.xn--0ug472cfq0pus98b"); } // [B1, B6, C1, V3, V7]
5346test { try toAsciiFail("xn----gz7a.xn--0ug472cfq0pus98b", false); } // [B1, B6, C1, V3, V7]
5347test { try toAsciiFail("xn----gz7a.xn--0ug472cfq0pus98b", true); } // [B1, B6, C1, V3, V7]
2378test { try toUnicodeFail("\xe5\x84\xad-\xef\xbd\xa1\xf0\x90\xb9\xb4\xe2\xb4\xa2\xf1\xa5\xb3\xa0\xe2\x80\x8c"); } // [B1, B6, C1, V3, V7]5348test { try toUnicodeFail("\xe5\x84\xad-\xef\xbd\xa1\xf0\x90\xb9\xb4\xe2\xb4\xa2\xf1\xa5\xb3\xa0\xe2\x80\x8c"); } // [B1, B6, C1, V3, V7]
5349test { try toAsciiFail("\xe5\x84\xad-\xef\xbd\xa1\xf0\x90\xb9\xb4\xe2\xb4\xa2\xf1\xa5\xb3\xa0\xe2\x80\x8c", false); } // [B1, B6, C1, V3, V7]
5350test { try toAsciiFail("\xe5\x84\xad-\xef\xbd\xa1\xf0\x90\xb9\xb4\xe2\xb4\xa2\xf1\xa5\xb3\xa0\xe2\x80\x8c", true); } // [B1, B6, V3, V7]
2379test { try toUnicodeFail("xn----gz7a.xn--6nd5001kyw98a"); } // [B1, B6, V3, V7]5351test { try toUnicodeFail("xn----gz7a.xn--6nd5001kyw98a"); } // [B1, B6, V3, V7]
5352test { try toAsciiFail("xn----gz7a.xn--6nd5001kyw98a", false); } // [B1, B6, V3, V7]
5353test { try toAsciiFail("xn----gz7a.xn--6nd5001kyw98a", true); } // [B1, B6, V3, V7]
2380test { try toUnicodeFail("xn----gz7a.xn--6nd249ejl4pusr7b"); } // [B1, B6, C1, V3, V7]5354test { try toUnicodeFail("xn----gz7a.xn--6nd249ejl4pusr7b"); } // [B1, B6, C1, V3, V7]
5355test { try toAsciiFail("xn----gz7a.xn--6nd249ejl4pusr7b", false); } // [B1, B6, C1, V3, V7]
5356test { try toAsciiFail("xn----gz7a.xn--6nd249ejl4pusr7b", true); } // [B1, B6, C1, V3, V7]
2381test { try toUnicodeFail("\xf0\x9d\x9f\xba\xf0\x90\x8b\xb7\xda\xb9\xef\xbc\x8e\xf0\x9e\xa4\xad\xf2\xbf\x8d\xa1"); } // [B1, B2, B3, V7]5357test { try toUnicodeFail("\xf0\x9d\x9f\xba\xf0\x90\x8b\xb7\xda\xb9\xef\xbc\x8e\xf0\x9e\xa4\xad\xf2\xbf\x8d\xa1"); } // [B1, B2, B3, V7]
5358test { try toAsciiFail("\xf0\x9d\x9f\xba\xf0\x90\x8b\xb7\xda\xb9\xef\xbc\x8e\xf0\x9e\xa4\xad\xf2\xbf\x8d\xa1", false); } // [B1, B2, B3, V7]
5359test { try toAsciiFail("\xf0\x9d\x9f\xba\xf0\x90\x8b\xb7\xda\xb9\xef\xbc\x8e\xf0\x9e\xa4\xad\xf2\xbf\x8d\xa1", true); } // [B1, B2, B3, V7]
2382test { try toUnicodeFail("4\xf0\x90\x8b\xb7\xda\xb9.\xf0\x9e\xa4\xad\xf2\xbf\x8d\xa1"); } // [B1, B2, B3, V7]5360test { try toUnicodeFail("4\xf0\x90\x8b\xb7\xda\xb9.\xf0\x9e\xa4\xad\xf2\xbf\x8d\xa1"); } // [B1, B2, B3, V7]
5361test { try toAsciiFail("4\xf0\x90\x8b\xb7\xda\xb9.\xf0\x9e\xa4\xad\xf2\xbf\x8d\xa1", false); } // [B1, B2, B3, V7]
5362test { try toAsciiFail("4\xf0\x90\x8b\xb7\xda\xb9.\xf0\x9e\xa4\xad\xf2\xbf\x8d\xa1", true); } // [B1, B2, B3, V7]
2383test { try toUnicodeFail("4\xf0\x90\x8b\xb7\xda\xb9.\xf0\x9e\xa4\x8b\xf2\xbf\x8d\xa1"); } // [B1, B2, B3, V7]5363test { try toUnicodeFail("4\xf0\x90\x8b\xb7\xda\xb9.\xf0\x9e\xa4\x8b\xf2\xbf\x8d\xa1"); } // [B1, B2, B3, V7]
5364test { try toAsciiFail("4\xf0\x90\x8b\xb7\xda\xb9.\xf0\x9e\xa4\x8b\xf2\xbf\x8d\xa1", false); } // [B1, B2, B3, V7]
5365test { try toAsciiFail("4\xf0\x90\x8b\xb7\xda\xb9.\xf0\x9e\xa4\x8b\xf2\xbf\x8d\xa1", true); } // [B1, B2, B3, V7]
2384test { try toUnicodeFail("xn--4-cvc5384q.xn--le6hi7322b"); } // [B1, B2, B3, V7]5366test { try toUnicodeFail("xn--4-cvc5384q.xn--le6hi7322b"); } // [B1, B2, B3, V7]
5367test { try toAsciiFail("xn--4-cvc5384q.xn--le6hi7322b", false); } // [B1, B2, B3, V7]
5368test { try toAsciiFail("xn--4-cvc5384q.xn--le6hi7322b", true); } // [B1, B2, B3, V7]
2385test { try toUnicodeFail("\xf0\x9d\x9f\xba\xf0\x90\x8b\xb7\xda\xb9\xef\xbc\x8e\xf0\x9e\xa4\x8b\xf2\xbf\x8d\xa1"); } // [B1, B2, B3, V7]5369test { try toUnicodeFail("\xf0\x9d\x9f\xba\xf0\x90\x8b\xb7\xda\xb9\xef\xbc\x8e\xf0\x9e\xa4\x8b\xf2\xbf\x8d\xa1"); } // [B1, B2, B3, V7]
5370test { try toAsciiFail("\xf0\x9d\x9f\xba\xf0\x90\x8b\xb7\xda\xb9\xef\xbc\x8e\xf0\x9e\xa4\x8b\xf2\xbf\x8d\xa1", false); } // [B1, B2, B3, V7]
5371test { try toAsciiFail("\xf0\x9d\x9f\xba\xf0\x90\x8b\xb7\xda\xb9\xef\xbc\x8e\xf0\x9e\xa4\x8b\xf2\xbf\x8d\xa1", true); } // [B1, B2, B3, V7]
2386test { try toUnicodeFail("\xe2\x89\xaf-\xea\xa1\x8b\xf0\x91\xb2\xa3.\xe2\x92\x88\xf0\x90\xb9\xad"); } // [B1, V7]5372test { try toUnicodeFail("\xe2\x89\xaf-\xea\xa1\x8b\xf0\x91\xb2\xa3.\xe2\x92\x88\xf0\x90\xb9\xad"); } // [B1, V7]
5373test { try toAsciiFail("\xe2\x89\xaf-\xea\xa1\x8b\xf0\x91\xb2\xa3.\xe2\x92\x88\xf0\x90\xb9\xad", false); } // [B1, V7]
5374test { try toAsciiFail("\xe2\x89\xaf-\xea\xa1\x8b\xf0\x91\xb2\xa3.\xe2\x92\x88\xf0\x90\xb9\xad", true); } // [B1, V7]
2387test { try toUnicodeFail(">\xcc\xb8-\xea\xa1\x8b\xf0\x91\xb2\xa3.\xe2\x92\x88\xf0\x90\xb9\xad"); } // [B1, V7]5375test { try toUnicodeFail(">\xcc\xb8-\xea\xa1\x8b\xf0\x91\xb2\xa3.\xe2\x92\x88\xf0\x90\xb9\xad"); } // [B1, V7]
5376test { try toAsciiFail(">\xcc\xb8-\xea\xa1\x8b\xf0\x91\xb2\xa3.\xe2\x92\x88\xf0\x90\xb9\xad", false); } // [B1, V7]
5377test { try toAsciiFail(">\xcc\xb8-\xea\xa1\x8b\xf0\x91\xb2\xa3.\xe2\x92\x88\xf0\x90\xb9\xad", true); } // [B1, V7]
2388test { try toUnicodeFail("\xe2\x89\xaf-\xea\xa1\x8b\xf0\x91\xb2\xa3.1.\xf0\x90\xb9\xad"); } // [B1]5378test { try toUnicodeFail("\xe2\x89\xaf-\xea\xa1\x8b\xf0\x91\xb2\xa3.1.\xf0\x90\xb9\xad"); } // [B1]
5379test { try toAsciiFail("\xe2\x89\xaf-\xea\xa1\x8b\xf0\x91\xb2\xa3.1.\xf0\x90\xb9\xad", false); } // [B1]
5380test { try toAsciiFail("\xe2\x89\xaf-\xea\xa1\x8b\xf0\x91\xb2\xa3.1.\xf0\x90\xb9\xad", true); } // [B1]
2389test { try toUnicodeFail(">\xcc\xb8-\xea\xa1\x8b\xf0\x91\xb2\xa3.1.\xf0\x90\xb9\xad"); } // [B1]5381test { try toUnicodeFail(">\xcc\xb8-\xea\xa1\x8b\xf0\x91\xb2\xa3.1.\xf0\x90\xb9\xad"); } // [B1]
5382test { try toAsciiFail(">\xcc\xb8-\xea\xa1\x8b\xf0\x91\xb2\xa3.1.\xf0\x90\xb9\xad", false); } // [B1]
5383test { try toAsciiFail(">\xcc\xb8-\xea\xa1\x8b\xf0\x91\xb2\xa3.1.\xf0\x90\xb9\xad", true); } // [B1]
2390test { try toUnicodeFail("xn----ogox061d5i8d.1.xn--lo0d"); } // [B1]5384test { try toUnicodeFail("xn----ogox061d5i8d.1.xn--lo0d"); } // [B1]
5385test { try toAsciiFail("xn----ogox061d5i8d.1.xn--lo0d", false); } // [B1]
5386test { try toAsciiFail("xn----ogox061d5i8d.1.xn--lo0d", true); } // [B1]
2391test { try toUnicodeFail("xn----ogox061d5i8d.xn--tsh0666f"); } // [B1, V7]5387test { try toUnicodeFail("xn----ogox061d5i8d.xn--tsh0666f"); } // [B1, V7]
5388test { try toAsciiFail("xn----ogox061d5i8d.xn--tsh0666f", false); } // [B1, V7]
5389test { try toAsciiFail("xn----ogox061d5i8d.xn--tsh0666f", true); } // [B1, V7]
2392test { try toUnicodeFail("\xcc\xb0\xef\xbc\x8e\xf3\xb0\x9c\xb1\xe8\x9a\x80"); } // [V6, V7]5390test { try toUnicodeFail("\xcc\xb0\xef\xbc\x8e\xf3\xb0\x9c\xb1\xe8\x9a\x80"); } // [V6, V7]
5391test { try toAsciiFail("\xcc\xb0\xef\xbc\x8e\xf3\xb0\x9c\xb1\xe8\x9a\x80", false); } // [V6, V7]
5392test { try toAsciiFail("\xcc\xb0\xef\xbc\x8e\xf3\xb0\x9c\xb1\xe8\x9a\x80", true); } // [V6, V7]
2393test { try toUnicodeFail("\xcc\xb0.\xf3\xb0\x9c\xb1\xe8\x9a\x80"); } // [V6, V7]5393test { try toUnicodeFail("\xcc\xb0.\xf3\xb0\x9c\xb1\xe8\x9a\x80"); } // [V6, V7]
5394test { try toAsciiFail("\xcc\xb0.\xf3\xb0\x9c\xb1\xe8\x9a\x80", false); } // [V6, V7]
5395test { try toAsciiFail("\xcc\xb0.\xf3\xb0\x9c\xb1\xe8\x9a\x80", true); } // [V6, V7]
2394test { try toUnicodeFail("xn--xta.xn--e91aw9417e"); } // [V6, V7]5396test { try toUnicodeFail("xn--xta.xn--e91aw9417e"); } // [V6, V7]
5397test { try toAsciiFail("xn--xta.xn--e91aw9417e", false); } // [V6, V7]
5398test { try toAsciiFail("xn--xta.xn--e91aw9417e", true); } // [V6, V7]
2395test { try toUnicodeFail("\xef\xac\xb9\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80\xc3\x9f\xe2\x83\x97"); } // [B2, B3]5399test { try toUnicodeFail("\xef\xac\xb9\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80\xc3\x9f\xe2\x83\x97"); } // [B2, B3]
5400test { try toAsciiFail("\xef\xac\xb9\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80\xc3\x9f\xe2\x83\x97", false); } // [B2, B3]
5401test { try toAsciiFail("\xef\xac\xb9\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80\xc3\x9f\xe2\x83\x97", true); } // [B2, B3]
2396test { try toUnicodeFail("\xd7\x99\xd6\xbc\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80\xc3\x9f\xe2\x83\x97"); } // [B2, B3]5402test { try toUnicodeFail("\xd7\x99\xd6\xbc\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80\xc3\x9f\xe2\x83\x97"); } // [B2, B3]
5403test { try toAsciiFail("\xd7\x99\xd6\xbc\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80\xc3\x9f\xe2\x83\x97", false); } // [B2, B3]
5404test { try toAsciiFail("\xd7\x99\xd6\xbc\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80\xc3\x9f\xe2\x83\x97", true); } // [B2, B3]
2397test { try toUnicodeFail("\xd7\x99\xd6\xbc\xe2\xb4\x98.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80\xc3\x9f\xe2\x83\x97"); } // [B2, B3]5405test { try toUnicodeFail("\xd7\x99\xd6\xbc\xe2\xb4\x98.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80\xc3\x9f\xe2\x83\x97"); } // [B2, B3]
5406test { try toAsciiFail("\xd7\x99\xd6\xbc\xe2\xb4\x98.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80\xc3\x9f\xe2\x83\x97", false); } // [B2, B3]
5407test { try toAsciiFail("\xd7\x99\xd6\xbc\xe2\xb4\x98.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80\xc3\x9f\xe2\x83\x97", true); } // [B2, B3]
2398test { try toUnicodeFail("\xd7\x99\xd6\xbc\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80SS\xe2\x83\x97"); } // [B2, B3]5408test { try toUnicodeFail("\xd7\x99\xd6\xbc\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80SS\xe2\x83\x97"); } // [B2, B3]
5409test { try toAsciiFail("\xd7\x99\xd6\xbc\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80SS\xe2\x83\x97", false); } // [B2, B3]
5410test { try toAsciiFail("\xd7\x99\xd6\xbc\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80SS\xe2\x83\x97", true); } // [B2, B3]
2399test { try toUnicodeFail("\xd7\x99\xd6\xbc\xe2\xb4\x98.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80ss\xe2\x83\x97"); } // [B2, B3]5411test { try toUnicodeFail("\xd7\x99\xd6\xbc\xe2\xb4\x98.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80ss\xe2\x83\x97"); } // [B2, B3]
5412test { try toAsciiFail("\xd7\x99\xd6\xbc\xe2\xb4\x98.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80ss\xe2\x83\x97", false); } // [B2, B3]
5413test { try toAsciiFail("\xd7\x99\xd6\xbc\xe2\xb4\x98.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80ss\xe2\x83\x97", true); } // [B2, B3]
2400test { try toUnicodeFail("xn--kdb1d278n.xn--ss-yju5690ken9h"); } // [B2, B3]5414test { try toUnicodeFail("xn--kdb1d278n.xn--ss-yju5690ken9h"); } // [B2, B3]
5415test { try toAsciiFail("xn--kdb1d278n.xn--ss-yju5690ken9h", false); } // [B2, B3]
5416test { try toAsciiFail("xn--kdb1d278n.xn--ss-yju5690ken9h", true); } // [B2, B3]
2401test { try toUnicodeFail("xn--kdb1d278n.xn--zca284nhg9nrrxg"); } // [B2, B3]5417test { try toUnicodeFail("xn--kdb1d278n.xn--zca284nhg9nrrxg"); } // [B2, B3]
5418test { try toAsciiFail("xn--kdb1d278n.xn--zca284nhg9nrrxg", false); } // [B2, B3]
5419test { try toAsciiFail("xn--kdb1d278n.xn--zca284nhg9nrrxg", true); } // [B2, B3]
2402test { try toUnicodeFail("\xef\xac\xb9\xe2\xb4\x98.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80\xc3\x9f\xe2\x83\x97"); } // [B2, B3]5420test { try toUnicodeFail("\xef\xac\xb9\xe2\xb4\x98.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80\xc3\x9f\xe2\x83\x97"); } // [B2, B3]
5421test { try toAsciiFail("\xef\xac\xb9\xe2\xb4\x98.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80\xc3\x9f\xe2\x83\x97", false); } // [B2, B3]
5422test { try toAsciiFail("\xef\xac\xb9\xe2\xb4\x98.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80\xc3\x9f\xe2\x83\x97", true); } // [B2, B3]
2403test { try toUnicodeFail("\xef\xac\xb9\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80SS\xe2\x83\x97"); } // [B2, B3]5423test { try toUnicodeFail("\xef\xac\xb9\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80SS\xe2\x83\x97"); } // [B2, B3]
5424test { try toAsciiFail("\xef\xac\xb9\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80SS\xe2\x83\x97", false); } // [B2, B3]
5425test { try toAsciiFail("\xef\xac\xb9\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80SS\xe2\x83\x97", true); } // [B2, B3]
2404test { try toUnicodeFail("\xef\xac\xb9\xe2\xb4\x98.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80ss\xe2\x83\x97"); } // [B2, B3]5426test { try toUnicodeFail("\xef\xac\xb9\xe2\xb4\x98.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80ss\xe2\x83\x97"); } // [B2, B3]
5427test { try toAsciiFail("\xef\xac\xb9\xe2\xb4\x98.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80ss\xe2\x83\x97", false); } // [B2, B3]
5428test { try toAsciiFail("\xef\xac\xb9\xe2\xb4\x98.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80ss\xe2\x83\x97", true); } // [B2, B3]
2405test { try toUnicodeFail("xn--kdb1d867b.xn--ss-yju5690ken9h"); } // [B2, B3, V7]5429test { try toUnicodeFail("xn--kdb1d867b.xn--ss-yju5690ken9h"); } // [B2, B3, V7]
5430test { try toAsciiFail("xn--kdb1d867b.xn--ss-yju5690ken9h", false); } // [B2, B3, V7]
5431test { try toAsciiFail("xn--kdb1d867b.xn--ss-yju5690ken9h", true); } // [B2, B3, V7]
2406test { try toUnicodeFail("xn--kdb1d867b.xn--zca284nhg9nrrxg"); } // [B2, B3, V7]5432test { try toUnicodeFail("xn--kdb1d867b.xn--zca284nhg9nrrxg"); } // [B2, B3, V7]
5433test { try toAsciiFail("xn--kdb1d867b.xn--zca284nhg9nrrxg", false); } // [B2, B3, V7]
5434test { try toAsciiFail("xn--kdb1d867b.xn--zca284nhg9nrrxg", true); } // [B2, B3, V7]
2407test { try toUnicodeFail("\xd7\x99\xd6\xbc\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80ss\xe2\x83\x97"); } // [B2, B3]5435test { try toUnicodeFail("\xd7\x99\xd6\xbc\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80ss\xe2\x83\x97"); } // [B2, B3]
5436test { try toAsciiFail("\xd7\x99\xd6\xbc\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80ss\xe2\x83\x97", false); } // [B2, B3]
5437test { try toAsciiFail("\xd7\x99\xd6\xbc\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80ss\xe2\x83\x97", true); } // [B2, B3]
2408test { try toUnicodeFail("\xef\xac\xb9\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80ss\xe2\x83\x97"); } // [B2, B3]5438test { try toUnicodeFail("\xef\xac\xb9\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80ss\xe2\x83\x97"); } // [B2, B3]
5439test { try toAsciiFail("\xef\xac\xb9\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80ss\xe2\x83\x97", false); } // [B2, B3]
5440test { try toAsciiFail("\xef\xac\xb9\xe1\x82\xb8.\xf0\x9e\xa1\xbc\xf0\x91\x87\x80ss\xe2\x83\x97", true); } // [B2, B3]
2409test { try toUnicodeFail("\xe1\xae\xa3\xf0\x90\xb9\xb0\xf2\x81\xb1\x93\xef\xbd\xa1\xe5\x87\xac"); } // [B1, V6, V7]5441test { try toUnicodeFail("\xe1\xae\xa3\xf0\x90\xb9\xb0\xf2\x81\xb1\x93\xef\xbd\xa1\xe5\x87\xac"); } // [B1, V6, V7]
5442test { try toAsciiFail("\xe1\xae\xa3\xf0\x90\xb9\xb0\xf2\x81\xb1\x93\xef\xbd\xa1\xe5\x87\xac", false); } // [B1, V6, V7]
5443test { try toAsciiFail("\xe1\xae\xa3\xf0\x90\xb9\xb0\xf2\x81\xb1\x93\xef\xbd\xa1\xe5\x87\xac", true); } // [B1, V6, V7]
2410test { try toUnicodeFail("\xe1\xae\xa3\xf0\x90\xb9\xb0\xf2\x81\xb1\x93\xe3\x80\x82\xe5\x87\xac"); } // [B1, V6, V7]5444test { try toUnicodeFail("\xe1\xae\xa3\xf0\x90\xb9\xb0\xf2\x81\xb1\x93\xe3\x80\x82\xe5\x87\xac"); } // [B1, V6, V7]
5445test { try toAsciiFail("\xe1\xae\xa3\xf0\x90\xb9\xb0\xf2\x81\xb1\x93\xe3\x80\x82\xe5\x87\xac", false); } // [B1, V6, V7]
5446test { try toAsciiFail("\xe1\xae\xa3\xf0\x90\xb9\xb0\xf2\x81\xb1\x93\xe3\x80\x82\xe5\x87\xac", true); } // [B1, V6, V7]
2411test { try toUnicodeFail("xn--rxfz314ilg20c.xn--t9q"); } // [B1, V6, V7]5447test { try toUnicodeFail("xn--rxfz314ilg20c.xn--t9q"); } // [B1, V6, V7]
5448test { try toAsciiFail("xn--rxfz314ilg20c.xn--t9q", false); } // [B1, V6, V7]
5449test { try toAsciiFail("xn--rxfz314ilg20c.xn--t9q", true); } // [B1, V6, V7]
2412test { try toUnicodeFail("\xf0\x9f\xa2\x9f\xf0\x9f\x84\x88\xe2\x80\x8d\xea\xa1\x8e\xef\xbd\xa1\xe0\xbe\x84"); } // [C2, V6, U1]5450test { try toUnicodeFail("\xf0\x9f\xa2\x9f\xf0\x9f\x84\x88\xe2\x80\x8d\xea\xa1\x8e\xef\xbd\xa1\xe0\xbe\x84"); } // [C2, V6, U1]
5451test { try toAsciiFail("\xf0\x9f\xa2\x9f\xf0\x9f\x84\x88\xe2\x80\x8d\xea\xa1\x8e\xef\xbd\xa1\xe0\xbe\x84", false); } // [C2, V6, U1]
5452test { try toAsciiFail("\xf0\x9f\xa2\x9f\xf0\x9f\x84\x88\xe2\x80\x8d\xea\xa1\x8e\xef\xbd\xa1\xe0\xbe\x84", true); } // [V6, U1]
2413test { try toUnicodeFail("\xf0\x9f\xa2\x9f7,\xe2\x80\x8d\xea\xa1\x8e\xe3\x80\x82\xe0\xbe\x84"); } // [C2, V6, U1]5453test { try toUnicodeFail("\xf0\x9f\xa2\x9f7,\xe2\x80\x8d\xea\xa1\x8e\xe3\x80\x82\xe0\xbe\x84"); } // [C2, V6, U1]
5454test { try toAsciiFail("\xf0\x9f\xa2\x9f7,\xe2\x80\x8d\xea\xa1\x8e\xe3\x80\x82\xe0\xbe\x84", false); } // [C2, V6, U1]
5455test { try toAsciiFail("\xf0\x9f\xa2\x9f7,\xe2\x80\x8d\xea\xa1\x8e\xe3\x80\x82\xe0\xbe\x84", true); } // [V6, U1]
2414test { try toUnicodeFail("xn--7,-gh9hg322i.xn--3ed"); } // [V6, U1]5456test { try toUnicodeFail("xn--7,-gh9hg322i.xn--3ed"); } // [V6, U1]
5457test { try toAsciiFail("xn--7,-gh9hg322i.xn--3ed", false); } // [V6, U1]
5458test { try toAsciiFail("xn--7,-gh9hg322i.xn--3ed", true); } // [V6, U1]
2415test { try toUnicodeFail("xn--7,-n1t0654eqo3o.xn--3ed"); } // [C2, V6, U1]5459test { try toUnicodeFail("xn--7,-n1t0654eqo3o.xn--3ed"); } // [C2, V6, U1]
5460test { try toAsciiFail("xn--7,-n1t0654eqo3o.xn--3ed", false); } // [C2, V6, U1]
5461test { try toAsciiFail("xn--7,-n1t0654eqo3o.xn--3ed", true); } // [C2, V6, U1]
2416test { try toUnicodeFail("xn--nc9aq743ds0e.xn--3ed"); } // [V6, V7]5462test { try toUnicodeFail("xn--nc9aq743ds0e.xn--3ed"); } // [V6, V7]
5463test { try toAsciiFail("xn--nc9aq743ds0e.xn--3ed", false); } // [V6, V7]
5464test { try toAsciiFail("xn--nc9aq743ds0e.xn--3ed", true); } // [V6, V7]
2417test { try toUnicodeFail("xn--1ug4874cfd0kbmg.xn--3ed"); } // [C2, V6, V7]5465test { try toUnicodeFail("xn--1ug4874cfd0kbmg.xn--3ed"); } // [C2, V6, V7]
5466test { try toAsciiFail("xn--1ug4874cfd0kbmg.xn--3ed", false); } // [C2, V6, V7]
5467test { try toAsciiFail("xn--1ug4874cfd0kbmg.xn--3ed", true); } // [C2, V6, V7]
2418test { try toUnicodeFail("\xea\xa1\x94\xe3\x80\x82\xe1\x80\xb9\xe1\xa2\x87"); } // [V6]5468test { try toUnicodeFail("\xea\xa1\x94\xe3\x80\x82\xe1\x80\xb9\xe1\xa2\x87"); } // [V6]
5469test { try toAsciiFail("\xea\xa1\x94\xe3\x80\x82\xe1\x80\xb9\xe1\xa2\x87", false); } // [V6]
5470test { try toAsciiFail("\xea\xa1\x94\xe3\x80\x82\xe1\x80\xb9\xe1\xa2\x87", true); } // [V6]
2419test { try toUnicodeFail("xn--tc9a.xn--9jd663b"); } // [V6]5471test { try toUnicodeFail("xn--tc9a.xn--9jd663b"); } // [V6]
5472test { try toAsciiFail("xn--tc9a.xn--9jd663b", false); } // [V6]
5473test { try toAsciiFail("xn--tc9a.xn--9jd663b", true); } // [V6]
2420test { try toUnicodeFail("\xe2\x83\xab\xe2\x89\xae.\xf0\x9d\xa8\x96"); } // [V6]5474test { try toUnicodeFail("\xe2\x83\xab\xe2\x89\xae.\xf0\x9d\xa8\x96"); } // [V6]
5475test { try toAsciiFail("\xe2\x83\xab\xe2\x89\xae.\xf0\x9d\xa8\x96", false); } // [V6]
5476test { try toAsciiFail("\xe2\x83\xab\xe2\x89\xae.\xf0\x9d\xa8\x96", true); } // [V6]
2421test { try toUnicodeFail("\xe2\x83\xab<\xcc\xb8.\xf0\x9d\xa8\x96"); } // [V6]5477test { try toUnicodeFail("\xe2\x83\xab<\xcc\xb8.\xf0\x9d\xa8\x96"); } // [V6]
5478test { try toAsciiFail("\xe2\x83\xab<\xcc\xb8.\xf0\x9d\xa8\x96", false); } // [V6]
5479test { try toAsciiFail("\xe2\x83\xab<\xcc\xb8.\xf0\x9d\xa8\x96", true); } // [V6]
2422test { try toUnicodeFail("xn--e1g71d.xn--772h"); } // [V6]5480test { try toUnicodeFail("xn--e1g71d.xn--772h"); } // [V6]
5481test { try toAsciiFail("xn--e1g71d.xn--772h", false); } // [V6]
5482test { try toAsciiFail("xn--e1g71d.xn--772h", true); } // [V6]
2423test { try toUnicodeFail("\xe1\x83\x82\xe2\x89\xaf\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe1\x82\xbe\xdd\xa7"); } // [B5, B6]5483test { try toUnicodeFail("\xe1\x83\x82\xe2\x89\xaf\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe1\x82\xbe\xdd\xa7"); } // [B5, B6]
5484test { try toAsciiFail("\xe1\x83\x82\xe2\x89\xaf\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe1\x82\xbe\xdd\xa7", false); } // [B5, B6]
5485test { try toAsciiFail("\xe1\x83\x82\xe2\x89\xaf\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe1\x82\xbe\xdd\xa7", true); } // [B5, B6]
2424test { try toUnicodeFail("\xe1\x83\x82>\xcc\xb8\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe1\x82\xbe\xdd\xa7"); } // [B5, B6]5486test { try toUnicodeFail("\xe1\x83\x82>\xcc\xb8\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe1\x82\xbe\xdd\xa7"); } // [B5, B6]
5487test { try toAsciiFail("\xe1\x83\x82>\xcc\xb8\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe1\x82\xbe\xdd\xa7", false); } // [B5, B6]
5488test { try toAsciiFail("\xe1\x83\x82>\xcc\xb8\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe1\x82\xbe\xdd\xa7", true); } // [B5, B6]
2425test { try toUnicodeFail("\xe1\x83\x82\xe2\x89\xaf\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe1\x82\xbe\xdd\xa7"); } // [B5, B6]5489test { try toUnicodeFail("\xe1\x83\x82\xe2\x89\xaf\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe1\x82\xbe\xdd\xa7"); } // [B5, B6]
5490test { try toAsciiFail("\xe1\x83\x82\xe2\x89\xaf\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe1\x82\xbe\xdd\xa7", false); } // [B5, B6]
5491test { try toAsciiFail("\xe1\x83\x82\xe2\x89\xaf\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe1\x82\xbe\xdd\xa7", true); } // [B5, B6]
2426test { try toUnicodeFail("\xe1\x83\x82>\xcc\xb8\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe1\x82\xbe\xdd\xa7"); } // [B5, B6]5492test { try toUnicodeFail("\xe1\x83\x82>\xcc\xb8\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe1\x82\xbe\xdd\xa7"); } // [B5, B6]
5493test { try toAsciiFail("\xe1\x83\x82>\xcc\xb8\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe1\x82\xbe\xdd\xa7", false); } // [B5, B6]
5494test { try toAsciiFail("\xe1\x83\x82>\xcc\xb8\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe1\x82\xbe\xdd\xa7", true); } // [B5, B6]
2427test { try toUnicodeFail("\xe2\xb4\xa2>\xcc\xb8\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7"); } // [B5, B6]5495test { try toUnicodeFail("\xe2\xb4\xa2>\xcc\xb8\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7"); } // [B5, B6]
5496test { try toAsciiFail("\xe2\xb4\xa2>\xcc\xb8\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7", false); } // [B5, B6]
5497test { try toAsciiFail("\xe2\xb4\xa2>\xcc\xb8\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7", true); } // [B5, B6]
2428test { try toUnicodeFail("\xe2\xb4\xa2\xe2\x89\xaf\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7"); } // [B5, B6]5498test { try toUnicodeFail("\xe2\xb4\xa2\xe2\x89\xaf\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7"); } // [B5, B6]
5499test { try toAsciiFail("\xe2\xb4\xa2\xe2\x89\xaf\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7", false); } // [B5, B6]
5500test { try toAsciiFail("\xe2\xb4\xa2\xe2\x89\xaf\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7", true); } // [B5, B6]
2429test { try toUnicodeFail("\xe1\x83\x82\xe2\x89\xaf\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7"); } // [B5, B6]5501test { try toUnicodeFail("\xe1\x83\x82\xe2\x89\xaf\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7"); } // [B5, B6]
5502test { try toAsciiFail("\xe1\x83\x82\xe2\x89\xaf\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7", false); } // [B5, B6]
5503test { try toAsciiFail("\xe1\x83\x82\xe2\x89\xaf\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7", true); } // [B5, B6]
2430test { try toUnicodeFail("\xe1\x83\x82>\xcc\xb8\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7"); } // [B5, B6]5504test { try toUnicodeFail("\xe1\x83\x82>\xcc\xb8\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7"); } // [B5, B6]
5505test { try toAsciiFail("\xe1\x83\x82>\xcc\xb8\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7", false); } // [B5, B6]
5506test { try toAsciiFail("\xe1\x83\x82>\xcc\xb8\xe8\xa4\xa6.\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7", true); } // [B5, B6]
2431test { try toUnicodeFail("xn--hdh433bev8e.xn--rpb5x392bcyt"); } // [B5, B6]5507test { try toUnicodeFail("xn--hdh433bev8e.xn--rpb5x392bcyt"); } // [B5, B6]
5508test { try toAsciiFail("xn--hdh433bev8e.xn--rpb5x392bcyt", false); } // [B5, B6]
5509test { try toAsciiFail("xn--hdh433bev8e.xn--rpb5x392bcyt", true); } // [B5, B6]
2432test { try toUnicodeFail("\xe2\xb4\xa2>\xcc\xb8\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7"); } // [B5, B6]5510test { try toUnicodeFail("\xe2\xb4\xa2>\xcc\xb8\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7"); } // [B5, B6]
5511test { try toAsciiFail("\xe2\xb4\xa2>\xcc\xb8\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7", false); } // [B5, B6]
5512test { try toAsciiFail("\xe2\xb4\xa2>\xcc\xb8\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7", true); } // [B5, B6]
2433test { try toUnicodeFail("\xe2\xb4\xa2\xe2\x89\xaf\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7"); } // [B5, B6]5513test { try toUnicodeFail("\xe2\xb4\xa2\xe2\x89\xaf\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7"); } // [B5, B6]
5514test { try toAsciiFail("\xe2\xb4\xa2\xe2\x89\xaf\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7", false); } // [B5, B6]
5515test { try toAsciiFail("\xe2\xb4\xa2\xe2\x89\xaf\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7", true); } // [B5, B6]
2434test { try toUnicodeFail("\xe1\x83\x82\xe2\x89\xaf\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7"); } // [B5, B6]5516test { try toUnicodeFail("\xe1\x83\x82\xe2\x89\xaf\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7"); } // [B5, B6]
5517test { try toAsciiFail("\xe1\x83\x82\xe2\x89\xaf\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7", false); } // [B5, B6]
5518test { try toAsciiFail("\xe1\x83\x82\xe2\x89\xaf\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7", true); } // [B5, B6]
2435test { try toUnicodeFail("\xe1\x83\x82>\xcc\xb8\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7"); } // [B5, B6]5519test { try toUnicodeFail("\xe1\x83\x82>\xcc\xb8\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7"); } // [B5, B6]
5520test { try toAsciiFail("\xe1\x83\x82>\xcc\xb8\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7", false); } // [B5, B6]
5521test { try toAsciiFail("\xe1\x83\x82>\xcc\xb8\xe8\xa4\xa6\xef\xbc\x8e\xe1\xa0\xaa\xdf\xaa\xe2\xb4\x9e\xdd\xa7", true); } // [B5, B6]
2436test { try toUnicodeFail("xn--6nd461g478e.xn--rpb5x392bcyt"); } // [B5, B6, V7]5522test { try toUnicodeFail("xn--6nd461g478e.xn--rpb5x392bcyt"); } // [B5, B6, V7]
5523test { try toAsciiFail("xn--6nd461g478e.xn--rpb5x392bcyt", false); } // [B5, B6, V7]
5524test { try toAsciiFail("xn--6nd461g478e.xn--rpb5x392bcyt", true); } // [B5, B6, V7]
2437test { try toUnicodeFail("xn--6nd461g478e.xn--rpb5x49td2h"); } // [B5, B6, V7]5525test { try toUnicodeFail("xn--6nd461g478e.xn--rpb5x49td2h"); } // [B5, B6, V7]
5526test { try toAsciiFail("xn--6nd461g478e.xn--rpb5x49td2h", false); } // [B5, B6, V7]
5527test { try toAsciiFail("xn--6nd461g478e.xn--rpb5x49td2h", true); } // [B5, B6, V7]
2438test { try toUnicodeFail("\xf2\x8a\x89\x86\xf3\xa0\x86\x92\xe2\x80\x8c\xea\xa5\x93\xe3\x80\x82\xf0\x9e\xa4\x99\xd9\xbb\xea\xa1\x98"); } // [B2, B3, C1, V7]5528test { try toUnicodeFail("\xf2\x8a\x89\x86\xf3\xa0\x86\x92\xe2\x80\x8c\xea\xa5\x93\xe3\x80\x82\xf0\x9e\xa4\x99\xd9\xbb\xea\xa1\x98"); } // [B2, B3, C1, V7]
5529test { try toAsciiFail("\xf2\x8a\x89\x86\xf3\xa0\x86\x92\xe2\x80\x8c\xea\xa5\x93\xe3\x80\x82\xf0\x9e\xa4\x99\xd9\xbb\xea\xa1\x98", false); } // [B2, B3, C1, V7]
5530test { try toAsciiFail("\xf2\x8a\x89\x86\xf3\xa0\x86\x92\xe2\x80\x8c\xea\xa5\x93\xe3\x80\x82\xf0\x9e\xa4\x99\xd9\xbb\xea\xa1\x98", true); } // [B2, B3, V7]
2439test { try toUnicodeFail("\xf2\x8a\x89\x86\xf3\xa0\x86\x92\xe2\x80\x8c\xea\xa5\x93\xe3\x80\x82\xf0\x9e\xa4\xbb\xd9\xbb\xea\xa1\x98"); } // [B2, B3, C1, V7]5531test { try toUnicodeFail("\xf2\x8a\x89\x86\xf3\xa0\x86\x92\xe2\x80\x8c\xea\xa5\x93\xe3\x80\x82\xf0\x9e\xa4\xbb\xd9\xbb\xea\xa1\x98"); } // [B2, B3, C1, V7]
5532test { try toAsciiFail("\xf2\x8a\x89\x86\xf3\xa0\x86\x92\xe2\x80\x8c\xea\xa5\x93\xe3\x80\x82\xf0\x9e\xa4\xbb\xd9\xbb\xea\xa1\x98", false); } // [B2, B3, C1, V7]
5533test { try toAsciiFail("\xf2\x8a\x89\x86\xf3\xa0\x86\x92\xe2\x80\x8c\xea\xa5\x93\xe3\x80\x82\xf0\x9e\xa4\xbb\xd9\xbb\xea\xa1\x98", true); } // [B2, B3, V7]
2440test { try toUnicodeFail("xn--3j9al6189a.xn--0ib8893fegvj"); } // [B2, B3, V7]5534test { try toUnicodeFail("xn--3j9al6189a.xn--0ib8893fegvj"); } // [B2, B3, V7]
5535test { try toAsciiFail("xn--3j9al6189a.xn--0ib8893fegvj", false); } // [B2, B3, V7]
5536test { try toAsciiFail("xn--3j9al6189a.xn--0ib8893fegvj", true); } // [B2, B3, V7]
2441test { try toUnicodeFail("xn--0ug8815chtz0e.xn--0ib8893fegvj"); } // [B2, B3, C1, V7]5537test { try toUnicodeFail("xn--0ug8815chtz0e.xn--0ib8893fegvj"); } // [B2, B3, C1, V7]
5538test { try toAsciiFail("xn--0ug8815chtz0e.xn--0ib8893fegvj", false); } // [B2, B3, C1, V7]
5539test { try toAsciiFail("xn--0ug8815chtz0e.xn--0ib8893fegvj", true); } // [B2, B3, C1, V7]
2442test { try toUnicodeFail("\xe2\x80\x8c.\xe2\x89\xaf"); } // [C1]5540test { try toUnicodeFail("\xe2\x80\x8c.\xe2\x89\xaf"); } // [C1]
5541test { try toAsciiFail("\xe2\x80\x8c.\xe2\x89\xaf", false); } // [C1]
5542test { try toAsciiFail("\xe2\x80\x8c.\xe2\x89\xaf", true); } // [A4_2]
2443test { try toUnicodeFail("\xe2\x80\x8c.>\xcc\xb8"); } // [C1]5543test { try toUnicodeFail("\xe2\x80\x8c.>\xcc\xb8"); } // [C1]
5544test { try toAsciiFail("\xe2\x80\x8c.>\xcc\xb8", false); } // [C1]
5545test { try toAsciiFail("\xe2\x80\x8c.>\xcc\xb8", true); } // [A4_2]
2444test { try toUnicodeFail(".xn--hdh"); } // [X4_2]5546test { try toUnicodeFail(".xn--hdh"); } // [X4_2]
5547test { try toAsciiFail(".xn--hdh", false); } // [A4_2]
5548test { try toAsciiFail(".xn--hdh", true); } // [A4_2]
2445test { try toUnicodeFail("xn--0ug.xn--hdh"); } // [C1]5549test { try toUnicodeFail("xn--0ug.xn--hdh"); } // [C1]
5550test { try toAsciiFail("xn--0ug.xn--hdh", false); } // [C1]
5551test { try toAsciiFail("xn--0ug.xn--hdh", true); } // [C1]
2446test { try toUnicodeFail("\xf0\xb0\x85\xa7\xf1\xa3\xa9\xa0-\xef\xbc\x8e\xea\xaf\xad-\xe6\x82\x9c"); } // [V3, V6, V7]5552test { try toUnicodeFail("\xf0\xb0\x85\xa7\xf1\xa3\xa9\xa0-\xef\xbc\x8e\xea\xaf\xad-\xe6\x82\x9c"); } // [V3, V6, V7]
5553test { try toAsciiFail("\xf0\xb0\x85\xa7\xf1\xa3\xa9\xa0-\xef\xbc\x8e\xea\xaf\xad-\xe6\x82\x9c", false); } // [V3, V6, V7]
5554test { try toAsciiFail("\xf0\xb0\x85\xa7\xf1\xa3\xa9\xa0-\xef\xbc\x8e\xea\xaf\xad-\xe6\x82\x9c", true); } // [V3, V6, V7]
2447test { try toUnicodeFail("\xf0\xb0\x85\xa7\xf1\xa3\xa9\xa0-.\xea\xaf\xad-\xe6\x82\x9c"); } // [V3, V6, V7]5555test { try toUnicodeFail("\xf0\xb0\x85\xa7\xf1\xa3\xa9\xa0-.\xea\xaf\xad-\xe6\x82\x9c"); } // [V3, V6, V7]
5556test { try toAsciiFail("\xf0\xb0\x85\xa7\xf1\xa3\xa9\xa0-.\xea\xaf\xad-\xe6\x82\x9c", false); } // [V3, V6, V7]
5557test { try toAsciiFail("\xf0\xb0\x85\xa7\xf1\xa3\xa9\xa0-.\xea\xaf\xad-\xe6\x82\x9c", true); } // [V3, V6, V7]
2448test { try toUnicodeFail("xn----7m53aj640l.xn----8f4br83t"); } // [V3, V6, V7]5558test { try toUnicodeFail("xn----7m53aj640l.xn----8f4br83t"); } // [V3, V6, V7]
5559test { try toAsciiFail("xn----7m53aj640l.xn----8f4br83t", false); } // [V3, V6, V7]
5560test { try toAsciiFail("xn----7m53aj640l.xn----8f4br83t", true); } // [V3, V6, V7]
2449test { try toUnicodeFail("\xe1\xa1\x89\xf0\xb6\x93\xa7\xe2\xac\x9e\xe1\xa2\x9c.-\xe2\x80\x8d\xf0\x9e\xa3\x91\xe2\x80\xae"); } // [C2, V3, V7]5561test { try toUnicodeFail("\xe1\xa1\x89\xf0\xb6\x93\xa7\xe2\xac\x9e\xe1\xa2\x9c.-\xe2\x80\x8d\xf0\x9e\xa3\x91\xe2\x80\xae"); } // [C2, V3, V7]
5562test { try toAsciiFail("\xe1\xa1\x89\xf0\xb6\x93\xa7\xe2\xac\x9e\xe1\xa2\x9c.-\xe2\x80\x8d\xf0\x9e\xa3\x91\xe2\x80\xae", false); } // [C2, V3, V7]
5563test { try toAsciiFail("\xe1\xa1\x89\xf0\xb6\x93\xa7\xe2\xac\x9e\xe1\xa2\x9c.-\xe2\x80\x8d\xf0\x9e\xa3\x91\xe2\x80\xae", true); } // [V3, V7]
2450test { try toUnicodeFail("xn--87e0ol04cdl39e.xn----qinu247r"); } // [V3, V7]5564test { try toUnicodeFail("xn--87e0ol04cdl39e.xn----qinu247r"); } // [V3, V7]
5565test { try toAsciiFail("xn--87e0ol04cdl39e.xn----qinu247r", false); } // [V3, V7]
5566test { try toAsciiFail("xn--87e0ol04cdl39e.xn----qinu247r", true); } // [V3, V7]
2451test { try toUnicodeFail("xn--87e0ol04cdl39e.xn----ugn5e3763s"); } // [C2, V3, V7]5567test { try toUnicodeFail("xn--87e0ol04cdl39e.xn----ugn5e3763s"); } // [C2, V3, V7]
5568test { try toAsciiFail("xn--87e0ol04cdl39e.xn----ugn5e3763s", false); } // [C2, V3, V7]
5569test { try toAsciiFail("xn--87e0ol04cdl39e.xn----ugn5e3763s", true); } // [C2, V3, V7]
2452test { try toUnicodeFail("\xe2\x92\x90\xe2\x80\x8c\xe8\xa1\x83\xe1\x82\xbd.\xda\x82\xe1\x82\xb4"); } // [B1, B2, B3, C1, V7]5570test { try toUnicodeFail("\xe2\x92\x90\xe2\x80\x8c\xe8\xa1\x83\xe1\x82\xbd.\xda\x82\xe1\x82\xb4"); } // [B1, B2, B3, C1, V7]
5571test { try toAsciiFail("\xe2\x92\x90\xe2\x80\x8c\xe8\xa1\x83\xe1\x82\xbd.\xda\x82\xe1\x82\xb4", false); } // [B1, B2, B3, C1, V7]
5572test { try toAsciiFail("\xe2\x92\x90\xe2\x80\x8c\xe8\xa1\x83\xe1\x82\xbd.\xda\x82\xe1\x82\xb4", true); } // [B1, B2, B3, V7]
2453test { try toUnicodeFail("9.\xe2\x80\x8c\xe8\xa1\x83\xe1\x82\xbd.\xda\x82\xe1\x82\xb4"); } // [B1, B2, B3, C1]5573test { try toUnicodeFail("9.\xe2\x80\x8c\xe8\xa1\x83\xe1\x82\xbd.\xda\x82\xe1\x82\xb4"); } // [B1, B2, B3, C1]
5574test { try toAsciiFail("9.\xe2\x80\x8c\xe8\xa1\x83\xe1\x82\xbd.\xda\x82\xe1\x82\xb4", false); } // [B1, B2, B3, C1]
5575test { try toAsciiFail("9.\xe2\x80\x8c\xe8\xa1\x83\xe1\x82\xbd.\xda\x82\xe1\x82\xb4", true); } // [B1, B2, B3]
2454test { try toUnicodeFail("9.\xe2\x80\x8c\xe8\xa1\x83\xe2\xb4\x9d.\xda\x82\xe2\xb4\x94"); } // [B1, B2, B3, C1]5576test { try toUnicodeFail("9.\xe2\x80\x8c\xe8\xa1\x83\xe2\xb4\x9d.\xda\x82\xe2\xb4\x94"); } // [B1, B2, B3, C1]
5577test { try toAsciiFail("9.\xe2\x80\x8c\xe8\xa1\x83\xe2\xb4\x9d.\xda\x82\xe2\xb4\x94", false); } // [B1, B2, B3, C1]
5578test { try toAsciiFail("9.\xe2\x80\x8c\xe8\xa1\x83\xe2\xb4\x9d.\xda\x82\xe2\xb4\x94", true); } // [B1, B2, B3]
2455test { try toUnicodeFail("9.\xe2\x80\x8c\xe8\xa1\x83\xe1\x82\xbd.\xda\x82\xe2\xb4\x94"); } // [B1, B2, B3, C1]5579test { try toUnicodeFail("9.\xe2\x80\x8c\xe8\xa1\x83\xe1\x82\xbd.\xda\x82\xe2\xb4\x94"); } // [B1, B2, B3, C1]
5580test { try toAsciiFail("9.\xe2\x80\x8c\xe8\xa1\x83\xe1\x82\xbd.\xda\x82\xe2\xb4\x94", false); } // [B1, B2, B3, C1]
5581test { try toAsciiFail("9.\xe2\x80\x8c\xe8\xa1\x83\xe1\x82\xbd.\xda\x82\xe2\xb4\x94", true); } // [B1, B2, B3]
2456test { try toUnicodeFail("9.xn--llj1920a.xn--7ib268q"); } // [B1, B2, B3]5582test { try toUnicodeFail("9.xn--llj1920a.xn--7ib268q"); } // [B1, B2, B3]
5583test { try toAsciiFail("9.xn--llj1920a.xn--7ib268q", false); } // [B1, B2, B3]
5584test { try toAsciiFail("9.xn--llj1920a.xn--7ib268q", true); } // [B1, B2, B3]
2457test { try toUnicodeFail("9.xn--0ug862cbm5e.xn--7ib268q"); } // [B1, B2, B3, C1]5585test { try toUnicodeFail("9.xn--0ug862cbm5e.xn--7ib268q"); } // [B1, B2, B3, C1]
5586test { try toAsciiFail("9.xn--0ug862cbm5e.xn--7ib268q", false); } // [B1, B2, B3, C1]
5587test { try toAsciiFail("9.xn--0ug862cbm5e.xn--7ib268q", true); } // [B1, B2, B3, C1]
2458test { try toUnicodeFail("\xe2\x92\x90\xe2\x80\x8c\xe8\xa1\x83\xe2\xb4\x9d.\xda\x82\xe2\xb4\x94"); } // [B1, B2, B3, C1, V7]5588test { try toUnicodeFail("\xe2\x92\x90\xe2\x80\x8c\xe8\xa1\x83\xe2\xb4\x9d.\xda\x82\xe2\xb4\x94"); } // [B1, B2, B3, C1, V7]
5589test { try toAsciiFail("\xe2\x92\x90\xe2\x80\x8c\xe8\xa1\x83\xe2\xb4\x9d.\xda\x82\xe2\xb4\x94", false); } // [B1, B2, B3, C1, V7]
5590test { try toAsciiFail("\xe2\x92\x90\xe2\x80\x8c\xe8\xa1\x83\xe2\xb4\x9d.\xda\x82\xe2\xb4\x94", true); } // [B1, B2, B3, V7]
2459test { try toUnicodeFail("\xe2\x92\x90\xe2\x80\x8c\xe8\xa1\x83\xe1\x82\xbd.\xda\x82\xe2\xb4\x94"); } // [B1, B2, B3, C1, V7]5591test { try toUnicodeFail("\xe2\x92\x90\xe2\x80\x8c\xe8\xa1\x83\xe1\x82\xbd.\xda\x82\xe2\xb4\x94"); } // [B1, B2, B3, C1, V7]
5592test { try toAsciiFail("\xe2\x92\x90\xe2\x80\x8c\xe8\xa1\x83\xe1\x82\xbd.\xda\x82\xe2\xb4\x94", false); } // [B1, B2, B3, C1, V7]
5593test { try toAsciiFail("\xe2\x92\x90\xe2\x80\x8c\xe8\xa1\x83\xe1\x82\xbd.\xda\x82\xe2\xb4\x94", true); } // [B1, B2, B3, V7]
2460test { try toUnicodeFail("xn--1shy52abz3f.xn--7ib268q"); } // [B1, B2, B3, V7]5594test { try toUnicodeFail("xn--1shy52abz3f.xn--7ib268q"); } // [B1, B2, B3, V7]
5595test { try toAsciiFail("xn--1shy52abz3f.xn--7ib268q", false); } // [B1, B2, B3, V7]
5596test { try toAsciiFail("xn--1shy52abz3f.xn--7ib268q", true); } // [B1, B2, B3, V7]
2461test { try toUnicodeFail("xn--0ugx0px1izu2h.xn--7ib268q"); } // [B1, B2, B3, C1, V7]5597test { try toUnicodeFail("xn--0ugx0px1izu2h.xn--7ib268q"); } // [B1, B2, B3, C1, V7]
5598test { try toAsciiFail("xn--0ugx0px1izu2h.xn--7ib268q", false); } // [B1, B2, B3, C1, V7]
5599test { try toAsciiFail("xn--0ugx0px1izu2h.xn--7ib268q", true); } // [B1, B2, B3, C1, V7]
2462test { try toUnicodeFail("9.xn--1nd9032d.xn--7ib268q"); } // [B1, B2, B3, V7]5600test { try toUnicodeFail("9.xn--1nd9032d.xn--7ib268q"); } // [B1, B2, B3, V7]
5601test { try toAsciiFail("9.xn--1nd9032d.xn--7ib268q", false); } // [B1, B2, B3, V7]
5602test { try toAsciiFail("9.xn--1nd9032d.xn--7ib268q", true); } // [B1, B2, B3, V7]
2463test { try toUnicodeFail("9.xn--1nd159e1y2f.xn--7ib268q"); } // [B1, B2, B3, C1, V7]5603test { try toUnicodeFail("9.xn--1nd159e1y2f.xn--7ib268q"); } // [B1, B2, B3, C1, V7]
5604test { try toAsciiFail("9.xn--1nd159e1y2f.xn--7ib268q", false); } // [B1, B2, B3, C1, V7]
5605test { try toAsciiFail("9.xn--1nd159e1y2f.xn--7ib268q", true); } // [B1, B2, B3, C1, V7]
2464test { try toUnicodeFail("9.xn--1nd9032d.xn--7ib433c"); } // [B1, B2, B3, V7]5606test { try toUnicodeFail("9.xn--1nd9032d.xn--7ib433c"); } // [B1, B2, B3, V7]
5607test { try toAsciiFail("9.xn--1nd9032d.xn--7ib433c", false); } // [B1, B2, B3, V7]
5608test { try toAsciiFail("9.xn--1nd9032d.xn--7ib433c", true); } // [B1, B2, B3, V7]
2465test { try toUnicodeFail("9.xn--1nd159e1y2f.xn--7ib433c"); } // [B1, B2, B3, C1, V7]5609test { try toUnicodeFail("9.xn--1nd159e1y2f.xn--7ib433c"); } // [B1, B2, B3, C1, V7]
5610test { try toAsciiFail("9.xn--1nd159e1y2f.xn--7ib433c", false); } // [B1, B2, B3, C1, V7]
5611test { try toAsciiFail("9.xn--1nd159e1y2f.xn--7ib433c", true); } // [B1, B2, B3, C1, V7]
2466test { try toUnicodeFail("xn--1nd362hy16e.xn--7ib268q"); } // [B1, B2, B3, V7]5612test { try toUnicodeFail("xn--1nd362hy16e.xn--7ib268q"); } // [B1, B2, B3, V7]
5613test { try toAsciiFail("xn--1nd362hy16e.xn--7ib268q", false); } // [B1, B2, B3, V7]
5614test { try toAsciiFail("xn--1nd362hy16e.xn--7ib268q", true); } // [B1, B2, B3, V7]
2467test { try toUnicodeFail("xn--1nd159ecmd785k.xn--7ib268q"); } // [B1, B2, B3, C1, V7]5615test { try toUnicodeFail("xn--1nd159ecmd785k.xn--7ib268q"); } // [B1, B2, B3, C1, V7]
5616test { try toAsciiFail("xn--1nd159ecmd785k.xn--7ib268q", false); } // [B1, B2, B3, C1, V7]
5617test { try toAsciiFail("xn--1nd159ecmd785k.xn--7ib268q", true); } // [B1, B2, B3, C1, V7]
2468test { try toUnicodeFail("xn--1nd362hy16e.xn--7ib433c"); } // [B1, B2, B3, V7]5618test { try toUnicodeFail("xn--1nd362hy16e.xn--7ib433c"); } // [B1, B2, B3, V7]
5619test { try toAsciiFail("xn--1nd362hy16e.xn--7ib433c", false); } // [B1, B2, B3, V7]
5620test { try toAsciiFail("xn--1nd362hy16e.xn--7ib433c", true); } // [B1, B2, B3, V7]
2469test { try toUnicodeFail("xn--1nd159ecmd785k.xn--7ib433c"); } // [B1, B2, B3, C1, V7]5621test { try toUnicodeFail("xn--1nd159ecmd785k.xn--7ib433c"); } // [B1, B2, B3, C1, V7]
5622test { try toAsciiFail("xn--1nd159ecmd785k.xn--7ib433c", false); } // [B1, B2, B3, C1, V7]
5623test { try toAsciiFail("xn--1nd159ecmd785k.xn--7ib433c", true); } // [B1, B2, B3, C1, V7]
2470test { try toUnicodeFail("\xdf\xa1\xe2\x80\x8c\xe3\x80\x82--\xe2\xb8\xac"); } // [B1, B3, C1, V3]5624test { try toUnicodeFail("\xdf\xa1\xe2\x80\x8c\xe3\x80\x82--\xe2\xb8\xac"); } // [B1, B3, C1, V3]
5625test { try toAsciiFail("\xdf\xa1\xe2\x80\x8c\xe3\x80\x82--\xe2\xb8\xac", false); } // [B1, B3, C1, V3]
5626test { try toAsciiFail("\xdf\xa1\xe2\x80\x8c\xe3\x80\x82--\xe2\xb8\xac", true); } // [B1, V3]
2471test { try toUnicodeFail("xn--8sb.xn-----iw2a"); } // [B1, V3]5627test { try toUnicodeFail("xn--8sb.xn-----iw2a"); } // [B1, V3]
5628test { try toAsciiFail("xn--8sb.xn-----iw2a", false); } // [B1, V3]
5629test { try toAsciiFail("xn--8sb.xn-----iw2a", true); } // [B1, V3]
2472test { try toUnicodeFail("xn--8sb884j.xn-----iw2a"); } // [B1, B3, C1, V3]5630test { try toUnicodeFail("xn--8sb884j.xn-----iw2a"); } // [B1, B3, C1, V3]
5631test { try toAsciiFail("xn--8sb884j.xn-----iw2a", false); } // [B1, B3, C1, V3]
5632test { try toAsciiFail("xn--8sb884j.xn-----iw2a", true); } // [B1, B3, C1, V3]
2473test { try toUnicodePass("\xf0\x9e\xa5\x93\xef\xbc\x8e\xdc\x98", "\xf0\x9e\xa5\x93.\xdc\x98"); }5633test { try toUnicodePass("\xf0\x9e\xa5\x93\xef\xbc\x8e\xdc\x98", "\xf0\x9e\xa5\x93.\xdc\x98"); }
2474test { try toAsciiPass("\xf0\x9e\xa5\x93\xef\xbc\x8e\xdc\x98", "xn--of6h.xn--inb", false); }5634test { try toAsciiPass("\xf0\x9e\xa5\x93\xef\xbc\x8e\xdc\x98", "xn--of6h.xn--inb", false); }
2475test { try toAsciiPass("\xf0\x9e\xa5\x93\xef\xbc\x8e\xdc\x98", "xn--of6h.xn--inb", true); }5635test { try toAsciiPass("\xf0\x9e\xa5\x93\xef\xbc\x8e\xdc\x98", "xn--of6h.xn--inb", true); }
...@@ -2480,20 +5640,50 @@ test { try toUnicodePass("xn--of6h.xn--inb", "\xf0\x9e\xa5\x93.\xdc\x98"); }...@@ -2480,20 +5640,50 @@ test { try toUnicodePass("xn--of6h.xn--inb", "\xf0\x9e\xa5\x93.\xdc\x98"); }
2480test { try toAsciiPass("xn--of6h.xn--inb", "xn--of6h.xn--inb", false); }5640test { try toAsciiPass("xn--of6h.xn--inb", "xn--of6h.xn--inb", false); }
2481test { try toAsciiPass("xn--of6h.xn--inb", "xn--of6h.xn--inb", true); }5641test { try toAsciiPass("xn--of6h.xn--inb", "xn--of6h.xn--inb", true); }
2482test { try toUnicodeFail("\xf3\xa0\x84\xbd-\xef\xbc\x8e-\xe0\xb7\x8a"); } // [V3]5642test { try toUnicodeFail("\xf3\xa0\x84\xbd-\xef\xbc\x8e-\xe0\xb7\x8a"); } // [V3]
5643test { try toAsciiFail("\xf3\xa0\x84\xbd-\xef\xbc\x8e-\xe0\xb7\x8a", false); } // [V3]
5644test { try toAsciiFail("\xf3\xa0\x84\xbd-\xef\xbc\x8e-\xe0\xb7\x8a", true); } // [V3]
2483test { try toUnicodeFail("\xf3\xa0\x84\xbd-.-\xe0\xb7\x8a"); } // [V3]5645test { try toUnicodeFail("\xf3\xa0\x84\xbd-.-\xe0\xb7\x8a"); } // [V3]
5646test { try toAsciiFail("\xf3\xa0\x84\xbd-.-\xe0\xb7\x8a", false); } // [V3]
5647test { try toAsciiFail("\xf3\xa0\x84\xbd-.-\xe0\xb7\x8a", true); } // [V3]
2484test { try toUnicodeFail("-.xn----ptf"); } // [V3]5648test { try toUnicodeFail("-.xn----ptf"); } // [V3]
5649test { try toAsciiFail("-.xn----ptf", false); } // [V3]
5650test { try toAsciiFail("-.xn----ptf", true); } // [V3]
2485test { try toUnicodeFail("\xf3\xa0\x87\x9d\xdd\x9b-.\xe1\xa4\xa7"); } // [B1, B3, V3, V6]5651test { try toUnicodeFail("\xf3\xa0\x87\x9d\xdd\x9b-.\xe1\xa4\xa7"); } // [B1, B3, V3, V6]
5652test { try toAsciiFail("\xf3\xa0\x87\x9d\xdd\x9b-.\xe1\xa4\xa7", false); } // [B1, B3, V3, V6]
5653test { try toAsciiFail("\xf3\xa0\x87\x9d\xdd\x9b-.\xe1\xa4\xa7", true); } // [B1, B3, V3, V6]
2486test { try toUnicodeFail("xn----k4c.xn--lff"); } // [B1, B3, V3, V6]5654test { try toUnicodeFail("xn----k4c.xn--lff"); } // [B1, B3, V3, V6]
5655test { try toAsciiFail("xn----k4c.xn--lff", false); } // [B1, B3, V3, V6]
5656test { try toAsciiFail("xn----k4c.xn--lff", true); } // [B1, B3, V3, V6]
2487test { try toUnicodeFail("\xf0\x9e\xa4\xb4\xf3\xa0\x86\xb9\xe2\xa6\x89\xf0\x90\xb9\xba.\xea\xa0\x86\xe2\x92\x8c\xf3\x98\xa4\xb8"); } // [B1, V6, V7]5657test { try toUnicodeFail("\xf0\x9e\xa4\xb4\xf3\xa0\x86\xb9\xe2\xa6\x89\xf0\x90\xb9\xba.\xea\xa0\x86\xe2\x92\x8c\xf3\x98\xa4\xb8"); } // [B1, V6, V7]
5658test { try toAsciiFail("\xf0\x9e\xa4\xb4\xf3\xa0\x86\xb9\xe2\xa6\x89\xf0\x90\xb9\xba.\xea\xa0\x86\xe2\x92\x8c\xf3\x98\xa4\xb8", false); } // [B1, V6, V7]
5659test { try toAsciiFail("\xf0\x9e\xa4\xb4\xf3\xa0\x86\xb9\xe2\xa6\x89\xf0\x90\xb9\xba.\xea\xa0\x86\xe2\x92\x8c\xf3\x98\xa4\xb8", true); } // [B1, V6, V7]
2488test { try toUnicodeFail("\xf0\x9e\xa4\xb4\xf3\xa0\x86\xb9\xe2\xa6\x89\xf0\x90\xb9\xba.\xea\xa0\x865.\xf3\x98\xa4\xb8"); } // [B1, V6, V7]5660test { try toUnicodeFail("\xf0\x9e\xa4\xb4\xf3\xa0\x86\xb9\xe2\xa6\x89\xf0\x90\xb9\xba.\xea\xa0\x865.\xf3\x98\xa4\xb8"); } // [B1, V6, V7]
5661test { try toAsciiFail("\xf0\x9e\xa4\xb4\xf3\xa0\x86\xb9\xe2\xa6\x89\xf0\x90\xb9\xba.\xea\xa0\x865.\xf3\x98\xa4\xb8", false); } // [B1, V6, V7]
5662test { try toAsciiFail("\xf0\x9e\xa4\xb4\xf3\xa0\x86\xb9\xe2\xa6\x89\xf0\x90\xb9\xba.\xea\xa0\x865.\xf3\x98\xa4\xb8", true); } // [B1, V6, V7]
2489test { try toUnicodeFail("\xf0\x9e\xa4\x92\xf3\xa0\x86\xb9\xe2\xa6\x89\xf0\x90\xb9\xba.\xea\xa0\x865.\xf3\x98\xa4\xb8"); } // [B1, V6, V7]5663test { try toUnicodeFail("\xf0\x9e\xa4\x92\xf3\xa0\x86\xb9\xe2\xa6\x89\xf0\x90\xb9\xba.\xea\xa0\x865.\xf3\x98\xa4\xb8"); } // [B1, V6, V7]
5664test { try toAsciiFail("\xf0\x9e\xa4\x92\xf3\xa0\x86\xb9\xe2\xa6\x89\xf0\x90\xb9\xba.\xea\xa0\x865.\xf3\x98\xa4\xb8", false); } // [B1, V6, V7]
5665test { try toAsciiFail("\xf0\x9e\xa4\x92\xf3\xa0\x86\xb9\xe2\xa6\x89\xf0\x90\xb9\xba.\xea\xa0\x865.\xf3\x98\xa4\xb8", true); } // [B1, V6, V7]
2490test { try toUnicodeFail("xn--fuix729epewf.xn--5-w93e.xn--7b83e"); } // [B1, V6, V7]5666test { try toUnicodeFail("xn--fuix729epewf.xn--5-w93e.xn--7b83e"); } // [B1, V6, V7]
5667test { try toAsciiFail("xn--fuix729epewf.xn--5-w93e.xn--7b83e", false); } // [B1, V6, V7]
5668test { try toAsciiFail("xn--fuix729epewf.xn--5-w93e.xn--7b83e", true); } // [B1, V6, V7]
2491test { try toUnicodeFail("\xf0\x9e\xa4\x92\xf3\xa0\x86\xb9\xe2\xa6\x89\xf0\x90\xb9\xba.\xea\xa0\x86\xe2\x92\x8c\xf3\x98\xa4\xb8"); } // [B1, V6, V7]5669test { try toUnicodeFail("\xf0\x9e\xa4\x92\xf3\xa0\x86\xb9\xe2\xa6\x89\xf0\x90\xb9\xba.\xea\xa0\x86\xe2\x92\x8c\xf3\x98\xa4\xb8"); } // [B1, V6, V7]
5670test { try toAsciiFail("\xf0\x9e\xa4\x92\xf3\xa0\x86\xb9\xe2\xa6\x89\xf0\x90\xb9\xba.\xea\xa0\x86\xe2\x92\x8c\xf3\x98\xa4\xb8", false); } // [B1, V6, V7]
5671test { try toAsciiFail("\xf0\x9e\xa4\x92\xf3\xa0\x86\xb9\xe2\xa6\x89\xf0\x90\xb9\xba.\xea\xa0\x86\xe2\x92\x8c\xf3\x98\xa4\xb8", true); } // [B1, V6, V7]
2492test { try toUnicodeFail("xn--fuix729epewf.xn--xsh5029b6e77i"); } // [B1, V6, V7]5672test { try toUnicodeFail("xn--fuix729epewf.xn--xsh5029b6e77i"); } // [B1, V6, V7]
5673test { try toAsciiFail("xn--fuix729epewf.xn--xsh5029b6e77i", false); } // [B1, V6, V7]
5674test { try toAsciiFail("xn--fuix729epewf.xn--xsh5029b6e77i", true); } // [B1, V6, V7]
2493test { try toUnicodeFail("\xf3\xa0\x84\xb8\xe2\x82\x80\xe3\x80\x82\xf0\x91\x96\xbf\xe2\x80\x8c\xf0\x90\xa6\x82\xe2\x80\x8d"); } // [B1, C2, V6]5675test { try toUnicodeFail("\xf3\xa0\x84\xb8\xe2\x82\x80\xe3\x80\x82\xf0\x91\x96\xbf\xe2\x80\x8c\xf0\x90\xa6\x82\xe2\x80\x8d"); } // [B1, C2, V6]
5676test { try toAsciiFail("\xf3\xa0\x84\xb8\xe2\x82\x80\xe3\x80\x82\xf0\x91\x96\xbf\xe2\x80\x8c\xf0\x90\xa6\x82\xe2\x80\x8d", false); } // [B1, C2, V6]
5677test { try toAsciiFail("\xf3\xa0\x84\xb8\xe2\x82\x80\xe3\x80\x82\xf0\x91\x96\xbf\xe2\x80\x8c\xf0\x90\xa6\x82\xe2\x80\x8d", true); } // [B1, V6]
2494test { try toUnicodeFail("\xf3\xa0\x84\xb80\xe3\x80\x82\xf0\x91\x96\xbf\xe2\x80\x8c\xf0\x90\xa6\x82\xe2\x80\x8d"); } // [B1, C2, V6]5678test { try toUnicodeFail("\xf3\xa0\x84\xb80\xe3\x80\x82\xf0\x91\x96\xbf\xe2\x80\x8c\xf0\x90\xa6\x82\xe2\x80\x8d"); } // [B1, C2, V6]
5679test { try toAsciiFail("\xf3\xa0\x84\xb80\xe3\x80\x82\xf0\x91\x96\xbf\xe2\x80\x8c\xf0\x90\xa6\x82\xe2\x80\x8d", false); } // [B1, C2, V6]
5680test { try toAsciiFail("\xf3\xa0\x84\xb80\xe3\x80\x82\xf0\x91\x96\xbf\xe2\x80\x8c\xf0\x90\xa6\x82\xe2\x80\x8d", true); } // [B1, V6]
2495test { try toUnicodeFail("0.xn--mn9cz2s"); } // [B1, V6]5681test { try toUnicodeFail("0.xn--mn9cz2s"); } // [B1, V6]
5682test { try toAsciiFail("0.xn--mn9cz2s", false); } // [B1, V6]
5683test { try toAsciiFail("0.xn--mn9cz2s", true); } // [B1, V6]
2496test { try toUnicodeFail("0.xn--0ugc8040p9hk"); } // [B1, C2, V6]5684test { try toUnicodeFail("0.xn--0ugc8040p9hk"); } // [B1, C2, V6]
5685test { try toAsciiFail("0.xn--0ugc8040p9hk", false); } // [B1, C2, V6]
5686test { try toAsciiFail("0.xn--0ugc8040p9hk", true); } // [B1, C2, V6]
2497test { try toUnicodePass("\xe1\x82\xba\xf0\x90\x8b\xb8\xf3\xa0\x84\x84\xe3\x80\x82\xf0\x9d\x9f\x9d\xed\x9f\xb6\xe1\x80\xba", "\xe2\xb4\x9a\xf0\x90\x8b\xb8.5\xed\x9f\xb6\xe1\x80\xba"); }5687test { try toUnicodePass("\xe1\x82\xba\xf0\x90\x8b\xb8\xf3\xa0\x84\x84\xe3\x80\x82\xf0\x9d\x9f\x9d\xed\x9f\xb6\xe1\x80\xba", "\xe2\xb4\x9a\xf0\x90\x8b\xb8.5\xed\x9f\xb6\xe1\x80\xba"); }
2498test { try toAsciiPass("\xe1\x82\xba\xf0\x90\x8b\xb8\xf3\xa0\x84\x84\xe3\x80\x82\xf0\x9d\x9f\x9d\xed\x9f\xb6\xe1\x80\xba", "xn--ilj2659d.xn--5-dug9054m", false); }5688test { try toAsciiPass("\xe1\x82\xba\xf0\x90\x8b\xb8\xf3\xa0\x84\x84\xe3\x80\x82\xf0\x9d\x9f\x9d\xed\x9f\xb6\xe1\x80\xba", "xn--ilj2659d.xn--5-dug9054m", false); }
2499test { try toAsciiPass("\xe1\x82\xba\xf0\x90\x8b\xb8\xf3\xa0\x84\x84\xe3\x80\x82\xf0\x9d\x9f\x9d\xed\x9f\xb6\xe1\x80\xba", "xn--ilj2659d.xn--5-dug9054m", true); }5689test { try toAsciiPass("\xe1\x82\xba\xf0\x90\x8b\xb8\xf3\xa0\x84\x84\xe3\x80\x82\xf0\x9d\x9f\x9d\xed\x9f\xb6\xe1\x80\xba", "xn--ilj2659d.xn--5-dug9054m", true); }
...@@ -2516,12 +5706,26 @@ test { try toUnicodePass("\xe2\xb4\x9a\xf0\x90\x8b\xb8\xf3\xa0\x84\x84\xe3\x80\x...@@ -2516,12 +5706,26 @@ test { try toUnicodePass("\xe2\xb4\x9a\xf0\x90\x8b\xb8\xf3\xa0\x84\x84\xe3\x80\x
2516test { try toAsciiPass("\xe2\xb4\x9a\xf0\x90\x8b\xb8\xf3\xa0\x84\x84\xe3\x80\x82\xf0\x9d\x9f\x9d\xed\x9f\xb6\xe1\x80\xba", "xn--ilj2659d.xn--5-dug9054m", false); }5706test { try toAsciiPass("\xe2\xb4\x9a\xf0\x90\x8b\xb8\xf3\xa0\x84\x84\xe3\x80\x82\xf0\x9d\x9f\x9d\xed\x9f\xb6\xe1\x80\xba", "xn--ilj2659d.xn--5-dug9054m", false); }
2517test { try toAsciiPass("\xe2\xb4\x9a\xf0\x90\x8b\xb8\xf3\xa0\x84\x84\xe3\x80\x82\xf0\x9d\x9f\x9d\xed\x9f\xb6\xe1\x80\xba", "xn--ilj2659d.xn--5-dug9054m", true); }5707test { try toAsciiPass("\xe2\xb4\x9a\xf0\x90\x8b\xb8\xf3\xa0\x84\x84\xe3\x80\x82\xf0\x9d\x9f\x9d\xed\x9f\xb6\xe1\x80\xba", "xn--ilj2659d.xn--5-dug9054m", true); }
2518test { try toUnicodeFail("xn--ynd2415j.xn--5-dug9054m"); } // [V7]5708test { try toUnicodeFail("xn--ynd2415j.xn--5-dug9054m"); } // [V7]
5709test { try toAsciiFail("xn--ynd2415j.xn--5-dug9054m", false); } // [V7]
5710test { try toAsciiFail("xn--ynd2415j.xn--5-dug9054m", true); } // [V7]
2519test { try toUnicodeFail("\xe2\x80\x8d-\xe1\xa0\xb9\xef\xb9\xaa.\xe1\xb7\xa1\xe1\xa4\xa2"); } // [C2, V6, U1]5711test { try toUnicodeFail("\xe2\x80\x8d-\xe1\xa0\xb9\xef\xb9\xaa.\xe1\xb7\xa1\xe1\xa4\xa2"); } // [C2, V6, U1]
5712test { try toAsciiFail("\xe2\x80\x8d-\xe1\xa0\xb9\xef\xb9\xaa.\xe1\xb7\xa1\xe1\xa4\xa2", false); } // [C2, V6, U1]
5713test { try toAsciiFail("\xe2\x80\x8d-\xe1\xa0\xb9\xef\xb9\xaa.\xe1\xb7\xa1\xe1\xa4\xa2", true); } // [V3, V6, U1]
2520test { try toUnicodeFail("\xe2\x80\x8d-\xe1\xa0\xb9%.\xe1\xb7\xa1\xe1\xa4\xa2"); } // [C2, V6, U1]5714test { try toUnicodeFail("\xe2\x80\x8d-\xe1\xa0\xb9%.\xe1\xb7\xa1\xe1\xa4\xa2"); } // [C2, V6, U1]
5715test { try toAsciiFail("\xe2\x80\x8d-\xe1\xa0\xb9%.\xe1\xb7\xa1\xe1\xa4\xa2", false); } // [C2, V6, U1]
5716test { try toAsciiFail("\xe2\x80\x8d-\xe1\xa0\xb9%.\xe1\xb7\xa1\xe1\xa4\xa2", true); } // [V3, V6, U1]
2521test { try toUnicodeFail("xn---%-u4o.xn--gff52t"); } // [V3, V6, U1]5717test { try toUnicodeFail("xn---%-u4o.xn--gff52t"); } // [V3, V6, U1]
5718test { try toAsciiFail("xn---%-u4o.xn--gff52t", false); } // [V3, V6, U1]
5719test { try toAsciiFail("xn---%-u4o.xn--gff52t", true); } // [V3, V6, U1]
2522test { try toUnicodeFail("xn---%-u4oy48b.xn--gff52t"); } // [C2, V6, U1]5720test { try toUnicodeFail("xn---%-u4oy48b.xn--gff52t"); } // [C2, V6, U1]
5721test { try toAsciiFail("xn---%-u4oy48b.xn--gff52t", false); } // [C2, V6, U1]
5722test { try toAsciiFail("xn---%-u4oy48b.xn--gff52t", true); } // [C2, V6, U1]
2523test { try toUnicodeFail("xn----c6jx047j.xn--gff52t"); } // [V3, V6, V7]5723test { try toUnicodeFail("xn----c6jx047j.xn--gff52t"); } // [V3, V6, V7]
5724test { try toAsciiFail("xn----c6jx047j.xn--gff52t", false); } // [V3, V6, V7]
5725test { try toAsciiFail("xn----c6jx047j.xn--gff52t", true); } // [V3, V6, V7]
2524test { try toUnicodeFail("xn----c6j614b1z4v.xn--gff52t"); } // [C2, V6, V7]5726test { try toUnicodeFail("xn----c6j614b1z4v.xn--gff52t"); } // [C2, V6, V7]
5727test { try toAsciiFail("xn----c6j614b1z4v.xn--gff52t", false); } // [C2, V6, V7]
5728test { try toAsciiFail("xn----c6j614b1z4v.xn--gff52t", true); } // [C2, V6, V7]
2525test { try toUnicodePass("\xe2\x89\xa0.\xe1\xa0\xbf", "\xe2\x89\xa0.\xe1\xa0\xbf"); }5729test { try toUnicodePass("\xe2\x89\xa0.\xe1\xa0\xbf", "\xe2\x89\xa0.\xe1\xa0\xbf"); }
2526test { try toAsciiPass("\xe2\x89\xa0.\xe1\xa0\xbf", "xn--1ch.xn--y7e", false); }5730test { try toAsciiPass("\xe2\x89\xa0.\xe1\xa0\xbf", "xn--1ch.xn--y7e", false); }
2527test { try toAsciiPass("\xe2\x89\xa0.\xe1\xa0\xbf", "xn--1ch.xn--y7e", true); }5731test { try toAsciiPass("\xe2\x89\xa0.\xe1\xa0\xbf", "xn--1ch.xn--y7e", true); }
...@@ -2544,19 +5748,47 @@ test { try toUnicodePass("\xdc\xa3\xd6\xa3.\xe3\x83\x8f\xe3\x82\xa4\xe3\x83\x84"...@@ -2544,19 +5748,47 @@ test { try toUnicodePass("\xdc\xa3\xd6\xa3.\xe3\x83\x8f\xe3\x82\xa4\xe3\x83\x84"
2544test { try toAsciiPass("\xdc\xa3\xd6\xa3.\xe3\x83\x8f\xe3\x82\xa4\xe3\x83\x84", "xn--ucb18e.xn--eck4c5a", false); }5748test { try toAsciiPass("\xdc\xa3\xd6\xa3.\xe3\x83\x8f\xe3\x82\xa4\xe3\x83\x84", "xn--ucb18e.xn--eck4c5a", false); }
2545test { try toAsciiPass("\xdc\xa3\xd6\xa3.\xe3\x83\x8f\xe3\x82\xa4\xe3\x83\x84", "xn--ucb18e.xn--eck4c5a", true); }5749test { try toAsciiPass("\xdc\xa3\xd6\xa3.\xe3\x83\x8f\xe3\x82\xa4\xe3\x83\x84", "xn--ucb18e.xn--eck4c5a", true); }
2546test { try toUnicodeFail("\xf0\x9e\xb7\xa5\xf3\xa0\x86\x80\xe2\x89\xae.\xe2\xb5\xbf-"); } // [B1, B3, V3, V6, V7]5750test { try toUnicodeFail("\xf0\x9e\xb7\xa5\xf3\xa0\x86\x80\xe2\x89\xae.\xe2\xb5\xbf-"); } // [B1, B3, V3, V6, V7]
5751test { try toAsciiFail("\xf0\x9e\xb7\xa5\xf3\xa0\x86\x80\xe2\x89\xae.\xe2\xb5\xbf-", false); } // [B1, B3, V3, V6, V7]
5752test { try toAsciiFail("\xf0\x9e\xb7\xa5\xf3\xa0\x86\x80\xe2\x89\xae.\xe2\xb5\xbf-", true); } // [B1, B3, V3, V6, V7]
2547test { try toUnicodeFail("\xf0\x9e\xb7\xa5\xf3\xa0\x86\x80<\xcc\xb8.\xe2\xb5\xbf-"); } // [B1, B3, V3, V6, V7]5753test { try toUnicodeFail("\xf0\x9e\xb7\xa5\xf3\xa0\x86\x80<\xcc\xb8.\xe2\xb5\xbf-"); } // [B1, B3, V3, V6, V7]
5754test { try toAsciiFail("\xf0\x9e\xb7\xa5\xf3\xa0\x86\x80<\xcc\xb8.\xe2\xb5\xbf-", false); } // [B1, B3, V3, V6, V7]
5755test { try toAsciiFail("\xf0\x9e\xb7\xa5\xf3\xa0\x86\x80<\xcc\xb8.\xe2\xb5\xbf-", true); } // [B1, B3, V3, V6, V7]
2548test { try toUnicodeFail("xn--gdhx802p.xn----i2s"); } // [B1, B3, V3, V6, V7]5756test { try toUnicodeFail("xn--gdhx802p.xn----i2s"); } // [B1, B3, V3, V6, V7]
5757test { try toAsciiFail("xn--gdhx802p.xn----i2s", false); } // [B1, B3, V3, V6, V7]
5758test { try toAsciiFail("xn--gdhx802p.xn----i2s", true); } // [B1, B3, V3, V6, V7]
2549test { try toUnicodeFail("\xe2\x82\x86\xe6\xa6\x8e\xf2\xa6\x96\x8e\xe0\xb5\x8d\xef\xbd\xa1\xf0\x9e\xa4\x85\xdb\xad\xef\xb1\x9a\xf3\xa0\xae\xa8"); } // [B1, B3, V7]5759test { try toUnicodeFail("\xe2\x82\x86\xe6\xa6\x8e\xf2\xa6\x96\x8e\xe0\xb5\x8d\xef\xbd\xa1\xf0\x9e\xa4\x85\xdb\xad\xef\xb1\x9a\xf3\xa0\xae\xa8"); } // [B1, B3, V7]
5760test { try toAsciiFail("\xe2\x82\x86\xe6\xa6\x8e\xf2\xa6\x96\x8e\xe0\xb5\x8d\xef\xbd\xa1\xf0\x9e\xa4\x85\xdb\xad\xef\xb1\x9a\xf3\xa0\xae\xa8", false); } // [B1, B3, V7]
5761test { try toAsciiFail("\xe2\x82\x86\xe6\xa6\x8e\xf2\xa6\x96\x8e\xe0\xb5\x8d\xef\xbd\xa1\xf0\x9e\xa4\x85\xdb\xad\xef\xb1\x9a\xf3\xa0\xae\xa8", true); } // [B1, B3, V7]
2550test { try toUnicodeFail("6\xe6\xa6\x8e\xf2\xa6\x96\x8e\xe0\xb5\x8d\xe3\x80\x82\xf0\x9e\xa4\x85\xdb\xad\xd9\x8a\xd9\x8a\xf3\xa0\xae\xa8"); } // [B1, B3, V7]5762test { try toUnicodeFail("6\xe6\xa6\x8e\xf2\xa6\x96\x8e\xe0\xb5\x8d\xe3\x80\x82\xf0\x9e\xa4\x85\xdb\xad\xd9\x8a\xd9\x8a\xf3\xa0\xae\xa8"); } // [B1, B3, V7]
5763test { try toAsciiFail("6\xe6\xa6\x8e\xf2\xa6\x96\x8e\xe0\xb5\x8d\xe3\x80\x82\xf0\x9e\xa4\x85\xdb\xad\xd9\x8a\xd9\x8a\xf3\xa0\xae\xa8", false); } // [B1, B3, V7]
5764test { try toAsciiFail("6\xe6\xa6\x8e\xf2\xa6\x96\x8e\xe0\xb5\x8d\xe3\x80\x82\xf0\x9e\xa4\x85\xdb\xad\xd9\x8a\xd9\x8a\xf3\xa0\xae\xa8", true); } // [B1, B3, V7]
2551test { try toUnicodeFail("6\xe6\xa6\x8e\xf2\xa6\x96\x8e\xe0\xb5\x8d\xe3\x80\x82\xf0\x9e\xa4\xa7\xdb\xad\xd9\x8a\xd9\x8a\xf3\xa0\xae\xa8"); } // [B1, B3, V7]5765test { try toUnicodeFail("6\xe6\xa6\x8e\xf2\xa6\x96\x8e\xe0\xb5\x8d\xe3\x80\x82\xf0\x9e\xa4\xa7\xdb\xad\xd9\x8a\xd9\x8a\xf3\xa0\xae\xa8"); } // [B1, B3, V7]
5766test { try toAsciiFail("6\xe6\xa6\x8e\xf2\xa6\x96\x8e\xe0\xb5\x8d\xe3\x80\x82\xf0\x9e\xa4\xa7\xdb\xad\xd9\x8a\xd9\x8a\xf3\xa0\xae\xa8", false); } // [B1, B3, V7]
5767test { try toAsciiFail("6\xe6\xa6\x8e\xf2\xa6\x96\x8e\xe0\xb5\x8d\xe3\x80\x82\xf0\x9e\xa4\xa7\xdb\xad\xd9\x8a\xd9\x8a\xf3\xa0\xae\xa8", true); } // [B1, B3, V7]
2552test { try toUnicodeFail("xn--6-kmf4691ejv41j.xn--mhba10ch545mn8v8h"); } // [B1, B3, V7]5768test { try toUnicodeFail("xn--6-kmf4691ejv41j.xn--mhba10ch545mn8v8h"); } // [B1, B3, V7]
5769test { try toAsciiFail("xn--6-kmf4691ejv41j.xn--mhba10ch545mn8v8h", false); } // [B1, B3, V7]
5770test { try toAsciiFail("xn--6-kmf4691ejv41j.xn--mhba10ch545mn8v8h", true); } // [B1, B3, V7]
2553test { try toUnicodeFail("\xe2\x82\x86\xe6\xa6\x8e\xf2\xa6\x96\x8e\xe0\xb5\x8d\xef\xbd\xa1\xf0\x9e\xa4\xa7\xdb\xad\xef\xb1\x9a\xf3\xa0\xae\xa8"); } // [B1, B3, V7]5771test { try toUnicodeFail("\xe2\x82\x86\xe6\xa6\x8e\xf2\xa6\x96\x8e\xe0\xb5\x8d\xef\xbd\xa1\xf0\x9e\xa4\xa7\xdb\xad\xef\xb1\x9a\xf3\xa0\xae\xa8"); } // [B1, B3, V7]
5772test { try toAsciiFail("\xe2\x82\x86\xe6\xa6\x8e\xf2\xa6\x96\x8e\xe0\xb5\x8d\xef\xbd\xa1\xf0\x9e\xa4\xa7\xdb\xad\xef\xb1\x9a\xf3\xa0\xae\xa8", false); } // [B1, B3, V7]
5773test { try toAsciiFail("\xe2\x82\x86\xe6\xa6\x8e\xf2\xa6\x96\x8e\xe0\xb5\x8d\xef\xbd\xa1\xf0\x9e\xa4\xa7\xdb\xad\xef\xb1\x9a\xf3\xa0\xae\xa8", true); } // [B1, B3, V7]
2554test { try toUnicodeFail("\xf0\xa3\xa9\xab\xef\xbc\x8e\xf2\x8c\x91\xb2"); } // [V7]5774test { try toUnicodeFail("\xf0\xa3\xa9\xab\xef\xbc\x8e\xf2\x8c\x91\xb2"); } // [V7]
5775test { try toAsciiFail("\xf0\xa3\xa9\xab\xef\xbc\x8e\xf2\x8c\x91\xb2", false); } // [V7]
5776test { try toAsciiFail("\xf0\xa3\xa9\xab\xef\xbc\x8e\xf2\x8c\x91\xb2", true); } // [V7]
2555test { try toUnicodeFail("\xf0\xa3\xa9\xab.\xf2\x8c\x91\xb2"); } // [V7]5777test { try toUnicodeFail("\xf0\xa3\xa9\xab.\xf2\x8c\x91\xb2"); } // [V7]
5778test { try toAsciiFail("\xf0\xa3\xa9\xab.\xf2\x8c\x91\xb2", false); } // [V7]
5779test { try toAsciiFail("\xf0\xa3\xa9\xab.\xf2\x8c\x91\xb2", true); } // [V7]
2556test { try toUnicodeFail("xn--td3j.xn--4628b"); } // [V7]5780test { try toUnicodeFail("xn--td3j.xn--4628b"); } // [V7]
5781test { try toAsciiFail("xn--td3j.xn--4628b", false); } // [V7]
5782test { try toAsciiFail("xn--td3j.xn--4628b", true); } // [V7]
2557test { try toUnicodeFail("\xe2\x80\x8d\xef\xb8\x92\xef\xbd\xa1\xda\xb9\xe2\x80\x8c"); } // [B1, B3, C1, C2, V7]5783test { try toUnicodeFail("\xe2\x80\x8d\xef\xb8\x92\xef\xbd\xa1\xda\xb9\xe2\x80\x8c"); } // [B1, B3, C1, C2, V7]
5784test { try toAsciiFail("\xe2\x80\x8d\xef\xb8\x92\xef\xbd\xa1\xda\xb9\xe2\x80\x8c", false); } // [B1, B3, C1, C2, V7]
5785test { try toAsciiFail("\xe2\x80\x8d\xef\xb8\x92\xef\xbd\xa1\xda\xb9\xe2\x80\x8c", true); } // [B1, V7]
2558test { try toUnicodeFail("xn--y86c.xn--skb"); } // [B1, V7]5786test { try toUnicodeFail("xn--y86c.xn--skb"); } // [B1, V7]
5787test { try toAsciiFail("xn--y86c.xn--skb", false); } // [B1, V7]
5788test { try toAsciiFail("xn--y86c.xn--skb", true); } // [B1, V7]
2559test { try toUnicodeFail("xn--1ug2658f.xn--skb080k"); } // [B1, B3, C1, C2, V7]5789test { try toUnicodeFail("xn--1ug2658f.xn--skb080k"); } // [B1, B3, C1, C2, V7]
5790test { try toAsciiFail("xn--1ug2658f.xn--skb080k", false); } // [B1, B3, C1, C2, V7]
5791test { try toAsciiFail("xn--1ug2658f.xn--skb080k", true); } // [B1, B3, C1, C2, V7]
2560test { try toUnicodePass("xn--skb", "\xda\xb9"); }5792test { try toUnicodePass("xn--skb", "\xda\xb9"); }
2561test { try toAsciiPass("xn--skb", "xn--skb", false); }5793test { try toAsciiPass("xn--skb", "xn--skb", false); }
2562test { try toAsciiPass("xn--skb", "xn--skb", true); }5794test { try toAsciiPass("xn--skb", "xn--skb", true); }
...@@ -2564,299 +5796,887 @@ test { try toUnicodePass("\xda\xb9", "\xda\xb9"); }...@@ -2564,299 +5796,887 @@ test { try toUnicodePass("\xda\xb9", "\xda\xb9"); }
2564test { try toAsciiPass("\xda\xb9", "xn--skb", false); }5796test { try toAsciiPass("\xda\xb9", "xn--skb", false); }
2565test { try toAsciiPass("\xda\xb9", "xn--skb", true); }5797test { try toAsciiPass("\xda\xb9", "xn--skb", true); }
2566test { try toUnicodeFail("\xf0\x90\xb9\xa6\xe2\x80\x8c\xf0\x90\xb9\xb6\xe3\x80\x82\xe2\x81\xad"); } // [B1, C1]5798test { try toUnicodeFail("\xf0\x90\xb9\xa6\xe2\x80\x8c\xf0\x90\xb9\xb6\xe3\x80\x82\xe2\x81\xad"); } // [B1, C1]
5799test { try toAsciiFail("\xf0\x90\xb9\xa6\xe2\x80\x8c\xf0\x90\xb9\xb6\xe3\x80\x82\xe2\x81\xad", false); } // [B1, C1, A4_2]
5800test { try toAsciiFail("\xf0\x90\xb9\xa6\xe2\x80\x8c\xf0\x90\xb9\xb6\xe3\x80\x82\xe2\x81\xad", true); } // [B1, A4_2]
2567test { try toUnicodeFail("xn--eo0d6a."); } // [B1]5801test { try toUnicodeFail("xn--eo0d6a."); } // [B1]
5802test { try toAsciiFail("xn--eo0d6a.", false); } // [B1, A4_2]
5803test { try toAsciiFail("xn--eo0d6a.", true); } // [B1, A4_2]
2568test { try toUnicodeFail("xn--0ug4994goba."); } // [B1, C1]5804test { try toUnicodeFail("xn--0ug4994goba."); } // [B1, C1]
5805test { try toAsciiFail("xn--0ug4994goba.", false); } // [B1, C1, A4_2]
5806test { try toAsciiFail("xn--0ug4994goba.", true); } // [B1, C1, A4_2]
2569test { try toUnicodeFail("xn--eo0d6a.xn--sxg"); } // [B1, V7]5807test { try toUnicodeFail("xn--eo0d6a.xn--sxg"); } // [B1, V7]
5808test { try toAsciiFail("xn--eo0d6a.xn--sxg", false); } // [B1, V7]
5809test { try toAsciiFail("xn--eo0d6a.xn--sxg", true); } // [B1, V7]
2570test { try toUnicodeFail("xn--0ug4994goba.xn--sxg"); } // [B1, C1, V7]5810test { try toUnicodeFail("xn--0ug4994goba.xn--sxg"); } // [B1, C1, V7]
5811test { try toAsciiFail("xn--0ug4994goba.xn--sxg", false); } // [B1, C1, V7]
5812test { try toAsciiFail("xn--0ug4994goba.xn--sxg", true); } // [B1, C1, V7]
2571test { try toUnicodeFail("\xe0\xb1\x8d\xf0\x9d\xa8\xbe\xd6\xa9\xf0\x9d\x9f\xad\xe3\x80\x82-\xf0\x91\x9c\xa8"); } // [V3, V6]5813test { try toUnicodeFail("\xe0\xb1\x8d\xf0\x9d\xa8\xbe\xd6\xa9\xf0\x9d\x9f\xad\xe3\x80\x82-\xf0\x91\x9c\xa8"); } // [V3, V6]
5814test { try toAsciiFail("\xe0\xb1\x8d\xf0\x9d\xa8\xbe\xd6\xa9\xf0\x9d\x9f\xad\xe3\x80\x82-\xf0\x91\x9c\xa8", false); } // [V3, V6]
5815test { try toAsciiFail("\xe0\xb1\x8d\xf0\x9d\xa8\xbe\xd6\xa9\xf0\x9d\x9f\xad\xe3\x80\x82-\xf0\x91\x9c\xa8", true); } // [V3, V6]
2572test { try toUnicodeFail("\xe0\xb1\x8d\xf0\x9d\xa8\xbe\xd6\xa91\xe3\x80\x82-\xf0\x91\x9c\xa8"); } // [V3, V6]5816test { try toUnicodeFail("\xe0\xb1\x8d\xf0\x9d\xa8\xbe\xd6\xa91\xe3\x80\x82-\xf0\x91\x9c\xa8"); } // [V3, V6]
5817test { try toAsciiFail("\xe0\xb1\x8d\xf0\x9d\xa8\xbe\xd6\xa91\xe3\x80\x82-\xf0\x91\x9c\xa8", false); } // [V3, V6]
5818test { try toAsciiFail("\xe0\xb1\x8d\xf0\x9d\xa8\xbe\xd6\xa91\xe3\x80\x82-\xf0\x91\x9c\xa8", true); } // [V3, V6]
2573test { try toUnicodeFail("xn--1-rfc312cdp45c.xn----nq0j"); } // [V3, V6]5819test { try toUnicodeFail("xn--1-rfc312cdp45c.xn----nq0j"); } // [V3, V6]
5820test { try toAsciiFail("xn--1-rfc312cdp45c.xn----nq0j", false); } // [V3, V6]
5821test { try toAsciiFail("xn--1-rfc312cdp45c.xn----nq0j", true); } // [V3, V6]
2574test { try toUnicodeFail("\xf2\xa3\xbf\x88\xe3\x80\x82\xeb\x99\x8f"); } // [V7]5822test { try toUnicodeFail("\xf2\xa3\xbf\x88\xe3\x80\x82\xeb\x99\x8f"); } // [V7]
5823test { try toAsciiFail("\xf2\xa3\xbf\x88\xe3\x80\x82\xeb\x99\x8f", false); } // [V7]
5824test { try toAsciiFail("\xf2\xa3\xbf\x88\xe3\x80\x82\xeb\x99\x8f", true); } // [V7]
2575test { try toUnicodeFail("\xf2\xa3\xbf\x88\xe3\x80\x82\xe1\x84\x84\xe1\x85\xab\xe1\x86\xae"); } // [V7]5825test { try toUnicodeFail("\xf2\xa3\xbf\x88\xe3\x80\x82\xe1\x84\x84\xe1\x85\xab\xe1\x86\xae"); } // [V7]
5826test { try toAsciiFail("\xf2\xa3\xbf\x88\xe3\x80\x82\xe1\x84\x84\xe1\x85\xab\xe1\x86\xae", false); } // [V7]
5827test { try toAsciiFail("\xf2\xa3\xbf\x88\xe3\x80\x82\xe1\x84\x84\xe1\x85\xab\xe1\x86\xae", true); } // [V7]
2576test { try toUnicodeFail("xn--ph26c.xn--281b"); } // [V7]5828test { try toUnicodeFail("xn--ph26c.xn--281b"); } // [V7]
5829test { try toAsciiFail("xn--ph26c.xn--281b", false); } // [V7]
5830test { try toAsciiFail("xn--ph26c.xn--281b", true); } // [V7]
2577test { try toUnicodeFail("\xf1\x95\xa8\x9a\xf3\xa0\x84\x8c\xf3\x91\xbd\x80\xe1\xa1\x80.\xe0\xa2\xb6"); } // [V7]5831test { try toUnicodeFail("\xf1\x95\xa8\x9a\xf3\xa0\x84\x8c\xf3\x91\xbd\x80\xe1\xa1\x80.\xe0\xa2\xb6"); } // [V7]
5832test { try toAsciiFail("\xf1\x95\xa8\x9a\xf3\xa0\x84\x8c\xf3\x91\xbd\x80\xe1\xa1\x80.\xe0\xa2\xb6", false); } // [V7]
5833test { try toAsciiFail("\xf1\x95\xa8\x9a\xf3\xa0\x84\x8c\xf3\x91\xbd\x80\xe1\xa1\x80.\xe0\xa2\xb6", true); } // [V7]
2578test { try toUnicodeFail("xn--z7e98100evc01b.xn--czb"); } // [V7]5834test { try toUnicodeFail("xn--z7e98100evc01b.xn--czb"); } // [V7]
5835test { try toAsciiFail("xn--z7e98100evc01b.xn--czb", false); } // [V7]
5836test { try toAsciiFail("xn--z7e98100evc01b.xn--czb", true); } // [V7]
2579test { try toUnicodeFail("\xe2\x80\x8d\xef\xbd\xa1\xf1\x85\x81\x9b"); } // [C2, V7]5837test { try toUnicodeFail("\xe2\x80\x8d\xef\xbd\xa1\xf1\x85\x81\x9b"); } // [C2, V7]
5838test { try toAsciiFail("\xe2\x80\x8d\xef\xbd\xa1\xf1\x85\x81\x9b", false); } // [C2, V7]
5839test { try toAsciiFail("\xe2\x80\x8d\xef\xbd\xa1\xf1\x85\x81\x9b", true); } // [V7, A4_2]
2580test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xf1\x85\x81\x9b"); } // [C2, V7]5840test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xf1\x85\x81\x9b"); } // [C2, V7]
5841test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xf1\x85\x81\x9b", false); } // [C2, V7]
5842test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xf1\x85\x81\x9b", true); } // [V7, A4_2]
2581test { try toUnicodeFail(".xn--6x4u"); } // [V7, X4_2]5843test { try toUnicodeFail(".xn--6x4u"); } // [V7, X4_2]
5844test { try toAsciiFail(".xn--6x4u", false); } // [V7, A4_2]
5845test { try toAsciiFail(".xn--6x4u", true); } // [V7, A4_2]
2582test { try toUnicodeFail("xn--1ug.xn--6x4u"); } // [C2, V7]5846test { try toUnicodeFail("xn--1ug.xn--6x4u"); } // [C2, V7]
5847test { try toAsciiFail("xn--1ug.xn--6x4u", false); } // [C2, V7]
5848test { try toAsciiFail("xn--1ug.xn--6x4u", true); } // [C2, V7]
2583test { try toUnicodeFail("\xe0\xa1\x8b\xe7\x9a\xa5\xef\xbc\x8e-"); } // [B1, B2, B3, V3]5849test { try toUnicodeFail("\xe0\xa1\x8b\xe7\x9a\xa5\xef\xbc\x8e-"); } // [B1, B2, B3, V3]
5850test { try toAsciiFail("\xe0\xa1\x8b\xe7\x9a\xa5\xef\xbc\x8e-", false); } // [B1, B2, B3, V3]
5851test { try toAsciiFail("\xe0\xa1\x8b\xe7\x9a\xa5\xef\xbc\x8e-", true); } // [B1, B2, B3, V3]
2584test { try toUnicodeFail("\xe0\xa1\x8b\xe7\x9a\xa5.-"); } // [B1, B2, B3, V3]5852test { try toUnicodeFail("\xe0\xa1\x8b\xe7\x9a\xa5.-"); } // [B1, B2, B3, V3]
5853test { try toAsciiFail("\xe0\xa1\x8b\xe7\x9a\xa5.-", false); } // [B1, B2, B3, V3]
5854test { try toAsciiFail("\xe0\xa1\x8b\xe7\x9a\xa5.-", true); } // [B1, B2, B3, V3]
2585test { try toUnicodeFail("xn--9vb4167c.-"); } // [B1, B2, B3, V3]5855test { try toUnicodeFail("xn--9vb4167c.-"); } // [B1, B2, B3, V3]
5856test { try toAsciiFail("xn--9vb4167c.-", false); } // [B1, B2, B3, V3]
5857test { try toAsciiFail("xn--9vb4167c.-", true); } // [B1, B2, B3, V3]
2586test { try toUnicodeFail("\xf0\x90\xa3\xb8\xcc\x95\xf0\x90\xae\x87\xef\xbc\x8e\xe2\x92\x88\xea\xa1\xa6"); } // [B1, V7]5858test { try toUnicodeFail("\xf0\x90\xa3\xb8\xcc\x95\xf0\x90\xae\x87\xef\xbc\x8e\xe2\x92\x88\xea\xa1\xa6"); } // [B1, V7]
5859test { try toAsciiFail("\xf0\x90\xa3\xb8\xcc\x95\xf0\x90\xae\x87\xef\xbc\x8e\xe2\x92\x88\xea\xa1\xa6", false); } // [B1, V7]
5860test { try toAsciiFail("\xf0\x90\xa3\xb8\xcc\x95\xf0\x90\xae\x87\xef\xbc\x8e\xe2\x92\x88\xea\xa1\xa6", true); } // [B1, V7]
2587test { try toUnicodeFail("\xf0\x90\xa3\xb8\xcc\x95\xf0\x90\xae\x87.1.\xea\xa1\xa6"); } // [B1, V7]5861test { try toUnicodeFail("\xf0\x90\xa3\xb8\xcc\x95\xf0\x90\xae\x87.1.\xea\xa1\xa6"); } // [B1, V7]
5862test { try toAsciiFail("\xf0\x90\xa3\xb8\xcc\x95\xf0\x90\xae\x87.1.\xea\xa1\xa6", false); } // [B1, V7]
5863test { try toAsciiFail("\xf0\x90\xa3\xb8\xcc\x95\xf0\x90\xae\x87.1.\xea\xa1\xa6", true); } // [B1, V7]
2588test { try toUnicodeFail("xn--5sa9915kgvb.1.xn--cd9a"); } // [B1, V7]5864test { try toUnicodeFail("xn--5sa9915kgvb.1.xn--cd9a"); } // [B1, V7]
5865test { try toAsciiFail("xn--5sa9915kgvb.1.xn--cd9a", false); } // [B1, V7]
5866test { try toAsciiFail("xn--5sa9915kgvb.1.xn--cd9a", true); } // [B1, V7]
2589test { try toUnicodeFail("xn--5sa9915kgvb.xn--tshw539b"); } // [B1, V7]5867test { try toUnicodeFail("xn--5sa9915kgvb.xn--tshw539b"); } // [B1, V7]
5868test { try toAsciiFail("xn--5sa9915kgvb.xn--tshw539b", false); } // [B1, V7]
5869test { try toAsciiFail("xn--5sa9915kgvb.xn--tshw539b", true); } // [B1, V7]
2590test { try toUnicodeFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0\xc4\x81\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]5870test { try toUnicodeFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0\xc4\x81\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]
5871test { try toAsciiFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0\xc4\x81\xf0\x90\xb9\xa6", false); } // [B5, B6, C1, C2]
5872test { try toAsciiFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0\xc4\x81\xf0\x90\xb9\xa6", true); } // [B5, B6]
2591test { try toUnicodeFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0a\xcc\x84\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]5873test { try toUnicodeFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0a\xcc\x84\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]
5874test { try toAsciiFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0a\xcc\x84\xf0\x90\xb9\xa6", false); } // [B5, B6, C1, C2]
5875test { try toAsciiFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0a\xcc\x84\xf0\x90\xb9\xa6", true); } // [B5, B6]
2592test { try toUnicodeFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0\xc4\x81\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]5876test { try toUnicodeFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0\xc4\x81\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]
5877test { try toAsciiFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0\xc4\x81\xf0\x90\xb9\xa6", false); } // [B5, B6, C1, C2]
5878test { try toAsciiFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0\xc4\x81\xf0\x90\xb9\xa6", true); } // [B5, B6]
2593test { try toUnicodeFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0a\xcc\x84\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]5879test { try toUnicodeFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0a\xcc\x84\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]
5880test { try toAsciiFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0a\xcc\x84\xf0\x90\xb9\xa6", false); } // [B5, B6, C1, C2]
5881test { try toAsciiFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0a\xcc\x84\xf0\x90\xb9\xa6", true); } // [B5, B6]
2594test { try toUnicodeFail("\xe2\xb4\x9b\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0a\xcc\x84\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]5882test { try toUnicodeFail("\xe2\xb4\x9b\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0a\xcc\x84\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]
5883test { try toAsciiFail("\xe2\xb4\x9b\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0a\xcc\x84\xf0\x90\xb9\xa6", false); } // [B5, B6, C1, C2]
5884test { try toAsciiFail("\xe2\xb4\x9b\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0a\xcc\x84\xf0\x90\xb9\xa6", true); } // [B5, B6]
2595test { try toUnicodeFail("\xe2\xb4\x9b\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0\xc4\x81\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]5885test { try toUnicodeFail("\xe2\xb4\x9b\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0\xc4\x81\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]
5886test { try toAsciiFail("\xe2\xb4\x9b\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0\xc4\x81\xf0\x90\xb9\xa6", false); } // [B5, B6, C1, C2]
5887test { try toAsciiFail("\xe2\xb4\x9b\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0\xc4\x81\xf0\x90\xb9\xa6", true); } // [B5, B6]
2596test { try toUnicodeFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0\xc4\x80\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]5888test { try toUnicodeFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0\xc4\x80\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]
5889test { try toAsciiFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0\xc4\x80\xf0\x90\xb9\xa6", false); } // [B5, B6, C1, C2]
5890test { try toAsciiFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0\xc4\x80\xf0\x90\xb9\xa6", true); } // [B5, B6]
2597test { try toUnicodeFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0A\xcc\x84\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]5891test { try toUnicodeFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0A\xcc\x84\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]
5892test { try toAsciiFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0A\xcc\x84\xf0\x90\xb9\xa6", false); } // [B5, B6, C1, C2]
5893test { try toAsciiFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xe1\x85\xa0A\xcc\x84\xf0\x90\xb9\xa6", true); } // [B5, B6]
2598test { try toUnicodeFail("xn--tcb323r.xn--yda4409k"); } // [B5, B6]5894test { try toUnicodeFail("xn--tcb323r.xn--yda4409k"); } // [B5, B6]
5895test { try toAsciiFail("xn--tcb323r.xn--yda4409k", false); } // [B5, B6]
5896test { try toAsciiFail("xn--tcb323r.xn--yda4409k", true); } // [B5, B6]
2599test { try toUnicodeFail("xn--tcb736kea974k.xn--yda4409k"); } // [B5, B6, C1, C2]5897test { try toUnicodeFail("xn--tcb736kea974k.xn--yda4409k"); } // [B5, B6, C1, C2]
5898test { try toAsciiFail("xn--tcb736kea974k.xn--yda4409k", false); } // [B5, B6, C1, C2]
5899test { try toAsciiFail("xn--tcb736kea974k.xn--yda4409k", true); } // [B5, B6, C1, C2]
2600test { try toUnicodeFail("\xe2\xb4\x9b\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0a\xcc\x84\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]5900test { try toUnicodeFail("\xe2\xb4\x9b\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0a\xcc\x84\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]
5901test { try toAsciiFail("\xe2\xb4\x9b\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0a\xcc\x84\xf0\x90\xb9\xa6", false); } // [B5, B6, C1, C2]
5902test { try toAsciiFail("\xe2\xb4\x9b\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0a\xcc\x84\xf0\x90\xb9\xa6", true); } // [B5, B6]
2601test { try toUnicodeFail("\xe2\xb4\x9b\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0\xc4\x81\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]5903test { try toUnicodeFail("\xe2\xb4\x9b\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0\xc4\x81\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]
5904test { try toAsciiFail("\xe2\xb4\x9b\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0\xc4\x81\xf0\x90\xb9\xa6", false); } // [B5, B6, C1, C2]
5905test { try toAsciiFail("\xe2\xb4\x9b\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0\xc4\x81\xf0\x90\xb9\xa6", true); } // [B5, B6]
2602test { try toUnicodeFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0\xc4\x80\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]5906test { try toUnicodeFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0\xc4\x80\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]
5907test { try toAsciiFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0\xc4\x80\xf0\x90\xb9\xa6", false); } // [B5, B6, C1, C2]
5908test { try toAsciiFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0\xc4\x80\xf0\x90\xb9\xa6", true); } // [B5, B6]
2603test { try toUnicodeFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0A\xcc\x84\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]5909test { try toUnicodeFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0A\xcc\x84\xf0\x90\xb9\xa6"); } // [B5, B6, C1, C2]
5910test { try toAsciiFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0A\xcc\x84\xf0\x90\xb9\xa6", false); } // [B5, B6, C1, C2]
5911test { try toAsciiFail("\xe1\x82\xbb\xe2\x80\x8c\xd6\xa2\xe2\x80\x8d\xe3\x80\x82\xef\xbe\xa0A\xcc\x84\xf0\x90\xb9\xa6", true); } // [B5, B6]
2604test { try toUnicodeFail("xn--tcb597c.xn--yda594fdn5q"); } // [B5, B6, V7]5912test { try toUnicodeFail("xn--tcb597c.xn--yda594fdn5q"); } // [B5, B6, V7]
5913test { try toAsciiFail("xn--tcb597c.xn--yda594fdn5q", false); } // [B5, B6, V7]
5914test { try toAsciiFail("xn--tcb597c.xn--yda594fdn5q", true); } // [B5, B6, V7]
2605test { try toUnicodeFail("xn--tcb597cdmmfa.xn--yda594fdn5q"); } // [B5, B6, C1, C2, V7]5915test { try toUnicodeFail("xn--tcb597cdmmfa.xn--yda594fdn5q"); } // [B5, B6, C1, C2, V7]
5916test { try toAsciiFail("xn--tcb597cdmmfa.xn--yda594fdn5q", false); } // [B5, B6, C1, C2, V7]
5917test { try toAsciiFail("xn--tcb597cdmmfa.xn--yda594fdn5q", true); } // [B5, B6, C1, C2, V7]
2606test { try toUnicodeFail("xn--tcb323r.xn--yda594fdn5q"); } // [B5, B6, V7]5918test { try toUnicodeFail("xn--tcb323r.xn--yda594fdn5q"); } // [B5, B6, V7]
5919test { try toAsciiFail("xn--tcb323r.xn--yda594fdn5q", false); } // [B5, B6, V7]
5920test { try toAsciiFail("xn--tcb323r.xn--yda594fdn5q", true); } // [B5, B6, V7]
2607test { try toUnicodeFail("xn--tcb736kea974k.xn--yda594fdn5q"); } // [B5, B6, C1, C2, V7]5921test { try toUnicodeFail("xn--tcb736kea974k.xn--yda594fdn5q"); } // [B5, B6, C1, C2, V7]
5922test { try toAsciiFail("xn--tcb736kea974k.xn--yda594fdn5q", false); } // [B5, B6, C1, C2, V7]
5923test { try toAsciiFail("xn--tcb736kea974k.xn--yda594fdn5q", true); } // [B5, B6, C1, C2, V7]
2608test { try toUnicodeFail("xn--tcb597c.xn--yda9741khjj"); } // [B5, B6, V7]5924test { try toUnicodeFail("xn--tcb597c.xn--yda9741khjj"); } // [B5, B6, V7]
5925test { try toAsciiFail("xn--tcb597c.xn--yda9741khjj", false); } // [B5, B6, V7]
5926test { try toAsciiFail("xn--tcb597c.xn--yda9741khjj", true); } // [B5, B6, V7]
2609test { try toUnicodeFail("xn--tcb597cdmmfa.xn--yda9741khjj"); } // [B5, B6, C1, C2, V7]5927test { try toUnicodeFail("xn--tcb597cdmmfa.xn--yda9741khjj"); } // [B5, B6, C1, C2, V7]
5928test { try toAsciiFail("xn--tcb597cdmmfa.xn--yda9741khjj", false); } // [B5, B6, C1, C2, V7]
5929test { try toAsciiFail("xn--tcb597cdmmfa.xn--yda9741khjj", true); } // [B5, B6, C1, C2, V7]
2610test { try toUnicodeFail("xn--tcb323r.xn--yda9741khjj"); } // [B5, B6, V7]5930test { try toUnicodeFail("xn--tcb323r.xn--yda9741khjj"); } // [B5, B6, V7]
5931test { try toAsciiFail("xn--tcb323r.xn--yda9741khjj", false); } // [B5, B6, V7]
5932test { try toAsciiFail("xn--tcb323r.xn--yda9741khjj", true); } // [B5, B6, V7]
2611test { try toUnicodeFail("xn--tcb736kea974k.xn--yda9741khjj"); } // [B5, B6, C1, C2, V7]5933test { try toUnicodeFail("xn--tcb736kea974k.xn--yda9741khjj"); } // [B5, B6, C1, C2, V7]
5934test { try toAsciiFail("xn--tcb736kea974k.xn--yda9741khjj", false); } // [B5, B6, C1, C2, V7]
5935test { try toAsciiFail("xn--tcb736kea974k.xn--yda9741khjj", true); } // [B5, B6, C1, C2, V7]
2612test { try toUnicodeFail("\xef\xbf\xb9\xe2\x80\x8c\xef\xbd\xa1\xe6\x9b\xb3\xe2\xbe\x91\xf0\x90\x8b\xb0\xe2\x89\xaf"); } // [C1, V7]5936test { try toUnicodeFail("\xef\xbf\xb9\xe2\x80\x8c\xef\xbd\xa1\xe6\x9b\xb3\xe2\xbe\x91\xf0\x90\x8b\xb0\xe2\x89\xaf"); } // [C1, V7]
5937test { try toAsciiFail("\xef\xbf\xb9\xe2\x80\x8c\xef\xbd\xa1\xe6\x9b\xb3\xe2\xbe\x91\xf0\x90\x8b\xb0\xe2\x89\xaf", false); } // [C1, V7]
5938test { try toAsciiFail("\xef\xbf\xb9\xe2\x80\x8c\xef\xbd\xa1\xe6\x9b\xb3\xe2\xbe\x91\xf0\x90\x8b\xb0\xe2\x89\xaf", true); } // [V7]
2613test { try toUnicodeFail("\xef\xbf\xb9\xe2\x80\x8c\xef\xbd\xa1\xe6\x9b\xb3\xe2\xbe\x91\xf0\x90\x8b\xb0>\xcc\xb8"); } // [C1, V7]5939test { try toUnicodeFail("\xef\xbf\xb9\xe2\x80\x8c\xef\xbd\xa1\xe6\x9b\xb3\xe2\xbe\x91\xf0\x90\x8b\xb0>\xcc\xb8"); } // [C1, V7]
5940test { try toAsciiFail("\xef\xbf\xb9\xe2\x80\x8c\xef\xbd\xa1\xe6\x9b\xb3\xe2\xbe\x91\xf0\x90\x8b\xb0>\xcc\xb8", false); } // [C1, V7]
5941test { try toAsciiFail("\xef\xbf\xb9\xe2\x80\x8c\xef\xbd\xa1\xe6\x9b\xb3\xe2\xbe\x91\xf0\x90\x8b\xb0>\xcc\xb8", true); } // [V7]
2614test { try toUnicodeFail("\xef\xbf\xb9\xe2\x80\x8c\xe3\x80\x82\xe6\x9b\xb3\xe8\xa5\xbe\xf0\x90\x8b\xb0\xe2\x89\xaf"); } // [C1, V7]5942test { try toUnicodeFail("\xef\xbf\xb9\xe2\x80\x8c\xe3\x80\x82\xe6\x9b\xb3\xe8\xa5\xbe\xf0\x90\x8b\xb0\xe2\x89\xaf"); } // [C1, V7]
5943test { try toAsciiFail("\xef\xbf\xb9\xe2\x80\x8c\xe3\x80\x82\xe6\x9b\xb3\xe8\xa5\xbe\xf0\x90\x8b\xb0\xe2\x89\xaf", false); } // [C1, V7]
5944test { try toAsciiFail("\xef\xbf\xb9\xe2\x80\x8c\xe3\x80\x82\xe6\x9b\xb3\xe8\xa5\xbe\xf0\x90\x8b\xb0\xe2\x89\xaf", true); } // [V7]
2615test { try toUnicodeFail("\xef\xbf\xb9\xe2\x80\x8c\xe3\x80\x82\xe6\x9b\xb3\xe8\xa5\xbe\xf0\x90\x8b\xb0>\xcc\xb8"); } // [C1, V7]5945test { try toUnicodeFail("\xef\xbf\xb9\xe2\x80\x8c\xe3\x80\x82\xe6\x9b\xb3\xe8\xa5\xbe\xf0\x90\x8b\xb0>\xcc\xb8"); } // [C1, V7]
5946test { try toAsciiFail("\xef\xbf\xb9\xe2\x80\x8c\xe3\x80\x82\xe6\x9b\xb3\xe8\xa5\xbe\xf0\x90\x8b\xb0>\xcc\xb8", false); } // [C1, V7]
5947test { try toAsciiFail("\xef\xbf\xb9\xe2\x80\x8c\xe3\x80\x82\xe6\x9b\xb3\xe8\xa5\xbe\xf0\x90\x8b\xb0>\xcc\xb8", true); } // [V7]
2616test { try toUnicodeFail("xn--vn7c.xn--hdh501y8wvfs5h"); } // [V7]5948test { try toUnicodeFail("xn--vn7c.xn--hdh501y8wvfs5h"); } // [V7]
5949test { try toAsciiFail("xn--vn7c.xn--hdh501y8wvfs5h", false); } // [V7]
5950test { try toAsciiFail("xn--vn7c.xn--hdh501y8wvfs5h", true); } // [V7]
2617test { try toUnicodeFail("xn--0ug2139f.xn--hdh501y8wvfs5h"); } // [C1, V7]5951test { try toUnicodeFail("xn--0ug2139f.xn--hdh501y8wvfs5h"); } // [C1, V7]
5952test { try toAsciiFail("xn--0ug2139f.xn--hdh501y8wvfs5h", false); } // [C1, V7]
5953test { try toAsciiFail("xn--0ug2139f.xn--hdh501y8wvfs5h", true); } // [C1, V7]
2618test { try toUnicodeFail("\xe2\x89\xaf\xe2\x92\x88\xe3\x80\x82\xc3\x9f"); } // [V7]5954test { try toUnicodeFail("\xe2\x89\xaf\xe2\x92\x88\xe3\x80\x82\xc3\x9f"); } // [V7]
5955test { try toAsciiFail("\xe2\x89\xaf\xe2\x92\x88\xe3\x80\x82\xc3\x9f", false); } // [V7]
5956test { try toAsciiFail("\xe2\x89\xaf\xe2\x92\x88\xe3\x80\x82\xc3\x9f", true); } // [V7]
2619test { try toUnicodeFail(">\xcc\xb8\xe2\x92\x88\xe3\x80\x82\xc3\x9f"); } // [V7]5957test { try toUnicodeFail(">\xcc\xb8\xe2\x92\x88\xe3\x80\x82\xc3\x9f"); } // [V7]
5958test { try toAsciiFail(">\xcc\xb8\xe2\x92\x88\xe3\x80\x82\xc3\x9f", false); } // [V7]
5959test { try toAsciiFail(">\xcc\xb8\xe2\x92\x88\xe3\x80\x82\xc3\x9f", true); } // [V7]
2620test { try toUnicodeFail("\xe2\x89\xaf1.\xe3\x80\x82\xc3\x9f"); } // [X4_2]5960test { try toUnicodeFail("\xe2\x89\xaf1.\xe3\x80\x82\xc3\x9f"); } // [X4_2]
5961test { try toAsciiFail("\xe2\x89\xaf1.\xe3\x80\x82\xc3\x9f", false); } // [A4_2]
5962test { try toAsciiFail("\xe2\x89\xaf1.\xe3\x80\x82\xc3\x9f", true); } // [A4_2]
2621test { try toUnicodeFail(">\xcc\xb81.\xe3\x80\x82\xc3\x9f"); } // [X4_2]5963test { try toUnicodeFail(">\xcc\xb81.\xe3\x80\x82\xc3\x9f"); } // [X4_2]
5964test { try toAsciiFail(">\xcc\xb81.\xe3\x80\x82\xc3\x9f", false); } // [A4_2]
5965test { try toAsciiFail(">\xcc\xb81.\xe3\x80\x82\xc3\x9f", true); } // [A4_2]
2622test { try toUnicodeFail(">\xcc\xb81.\xe3\x80\x82SS"); } // [X4_2]5966test { try toUnicodeFail(">\xcc\xb81.\xe3\x80\x82SS"); } // [X4_2]
5967test { try toAsciiFail(">\xcc\xb81.\xe3\x80\x82SS", false); } // [A4_2]
5968test { try toAsciiFail(">\xcc\xb81.\xe3\x80\x82SS", true); } // [A4_2]
2623test { try toUnicodeFail("\xe2\x89\xaf1.\xe3\x80\x82SS"); } // [X4_2]5969test { try toUnicodeFail("\xe2\x89\xaf1.\xe3\x80\x82SS"); } // [X4_2]
5970test { try toAsciiFail("\xe2\x89\xaf1.\xe3\x80\x82SS", false); } // [A4_2]
5971test { try toAsciiFail("\xe2\x89\xaf1.\xe3\x80\x82SS", true); } // [A4_2]
2624test { try toUnicodeFail("\xe2\x89\xaf1.\xe3\x80\x82ss"); } // [X4_2]5972test { try toUnicodeFail("\xe2\x89\xaf1.\xe3\x80\x82ss"); } // [X4_2]
5973test { try toAsciiFail("\xe2\x89\xaf1.\xe3\x80\x82ss", false); } // [A4_2]
5974test { try toAsciiFail("\xe2\x89\xaf1.\xe3\x80\x82ss", true); } // [A4_2]
2625test { try toUnicodeFail(">\xcc\xb81.\xe3\x80\x82ss"); } // [X4_2]5975test { try toUnicodeFail(">\xcc\xb81.\xe3\x80\x82ss"); } // [X4_2]
5976test { try toAsciiFail(">\xcc\xb81.\xe3\x80\x82ss", false); } // [A4_2]
5977test { try toAsciiFail(">\xcc\xb81.\xe3\x80\x82ss", true); } // [A4_2]
2626test { try toUnicodeFail(">\xcc\xb81.\xe3\x80\x82Ss"); } // [X4_2]5978test { try toUnicodeFail(">\xcc\xb81.\xe3\x80\x82Ss"); } // [X4_2]
5979test { try toAsciiFail(">\xcc\xb81.\xe3\x80\x82Ss", false); } // [A4_2]
5980test { try toAsciiFail(">\xcc\xb81.\xe3\x80\x82Ss", true); } // [A4_2]
2627test { try toUnicodeFail("\xe2\x89\xaf1.\xe3\x80\x82Ss"); } // [X4_2]5981test { try toUnicodeFail("\xe2\x89\xaf1.\xe3\x80\x82Ss"); } // [X4_2]
5982test { try toAsciiFail("\xe2\x89\xaf1.\xe3\x80\x82Ss", false); } // [A4_2]
5983test { try toAsciiFail("\xe2\x89\xaf1.\xe3\x80\x82Ss", true); } // [A4_2]
2628test { try toUnicodeFail("xn--1-ogo..ss"); } // [X4_2]5984test { try toUnicodeFail("xn--1-ogo..ss"); } // [X4_2]
5985test { try toAsciiFail("xn--1-ogo..ss", false); } // [A4_2]
5986test { try toAsciiFail("xn--1-ogo..ss", true); } // [A4_2]
2629test { try toUnicodeFail("xn--1-ogo..xn--zca"); } // [X4_2]5987test { try toUnicodeFail("xn--1-ogo..xn--zca"); } // [X4_2]
5988test { try toAsciiFail("xn--1-ogo..xn--zca", false); } // [A4_2]
5989test { try toAsciiFail("xn--1-ogo..xn--zca", true); } // [A4_2]
2630test { try toUnicodeFail(">\xcc\xb8\xe2\x92\x88\xe3\x80\x82SS"); } // [V7]5990test { try toUnicodeFail(">\xcc\xb8\xe2\x92\x88\xe3\x80\x82SS"); } // [V7]
5991test { try toAsciiFail(">\xcc\xb8\xe2\x92\x88\xe3\x80\x82SS", false); } // [V7]
5992test { try toAsciiFail(">\xcc\xb8\xe2\x92\x88\xe3\x80\x82SS", true); } // [V7]
2631test { try toUnicodeFail("\xe2\x89\xaf\xe2\x92\x88\xe3\x80\x82SS"); } // [V7]5993test { try toUnicodeFail("\xe2\x89\xaf\xe2\x92\x88\xe3\x80\x82SS"); } // [V7]
5994test { try toAsciiFail("\xe2\x89\xaf\xe2\x92\x88\xe3\x80\x82SS", false); } // [V7]
5995test { try toAsciiFail("\xe2\x89\xaf\xe2\x92\x88\xe3\x80\x82SS", true); } // [V7]
2632test { try toUnicodeFail("\xe2\x89\xaf\xe2\x92\x88\xe3\x80\x82ss"); } // [V7]5996test { try toUnicodeFail("\xe2\x89\xaf\xe2\x92\x88\xe3\x80\x82ss"); } // [V7]
5997test { try toAsciiFail("\xe2\x89\xaf\xe2\x92\x88\xe3\x80\x82ss", false); } // [V7]
5998test { try toAsciiFail("\xe2\x89\xaf\xe2\x92\x88\xe3\x80\x82ss", true); } // [V7]
2633test { try toUnicodeFail(">\xcc\xb8\xe2\x92\x88\xe3\x80\x82ss"); } // [V7]5999test { try toUnicodeFail(">\xcc\xb8\xe2\x92\x88\xe3\x80\x82ss"); } // [V7]
6000test { try toAsciiFail(">\xcc\xb8\xe2\x92\x88\xe3\x80\x82ss", false); } // [V7]
6001test { try toAsciiFail(">\xcc\xb8\xe2\x92\x88\xe3\x80\x82ss", true); } // [V7]
2634test { try toUnicodeFail(">\xcc\xb8\xe2\x92\x88\xe3\x80\x82Ss"); } // [V7]6002test { try toUnicodeFail(">\xcc\xb8\xe2\x92\x88\xe3\x80\x82Ss"); } // [V7]
6003test { try toAsciiFail(">\xcc\xb8\xe2\x92\x88\xe3\x80\x82Ss", false); } // [V7]
6004test { try toAsciiFail(">\xcc\xb8\xe2\x92\x88\xe3\x80\x82Ss", true); } // [V7]
2635test { try toUnicodeFail("\xe2\x89\xaf\xe2\x92\x88\xe3\x80\x82Ss"); } // [V7]6005test { try toUnicodeFail("\xe2\x89\xaf\xe2\x92\x88\xe3\x80\x82Ss"); } // [V7]
6006test { try toAsciiFail("\xe2\x89\xaf\xe2\x92\x88\xe3\x80\x82Ss", false); } // [V7]
6007test { try toAsciiFail("\xe2\x89\xaf\xe2\x92\x88\xe3\x80\x82Ss", true); } // [V7]
2636test { try toUnicodeFail("xn--hdh84f.ss"); } // [V7]6008test { try toUnicodeFail("xn--hdh84f.ss"); } // [V7]
6009test { try toAsciiFail("xn--hdh84f.ss", false); } // [V7]
6010test { try toAsciiFail("xn--hdh84f.ss", true); } // [V7]
2637test { try toUnicodeFail("xn--hdh84f.xn--zca"); } // [V7]6011test { try toUnicodeFail("xn--hdh84f.xn--zca"); } // [V7]
6012test { try toAsciiFail("xn--hdh84f.xn--zca", false); } // [V7]
6013test { try toAsciiFail("xn--hdh84f.xn--zca", true); } // [V7]
2638test { try toUnicodeFail("\xd9\xa7\xe2\x80\x8d\xef\xae\x96\xef\xbd\xa1\xdf\x9a-\xe2\x82\x86\xe1\x82\xb9"); } // [B1, B2, B3, C2]6014test { try toUnicodeFail("\xd9\xa7\xe2\x80\x8d\xef\xae\x96\xef\xbd\xa1\xdf\x9a-\xe2\x82\x86\xe1\x82\xb9"); } // [B1, B2, B3, C2]
6015test { try toAsciiFail("\xd9\xa7\xe2\x80\x8d\xef\xae\x96\xef\xbd\xa1\xdf\x9a-\xe2\x82\x86\xe1\x82\xb9", false); } // [B1, B2, B3, C2]
6016test { try toAsciiFail("\xd9\xa7\xe2\x80\x8d\xef\xae\x96\xef\xbd\xa1\xdf\x9a-\xe2\x82\x86\xe1\x82\xb9", true); } // [B1, B2, B3]
2639test { try toUnicodeFail("\xd9\xa7\xe2\x80\x8d\xda\xb3\xe3\x80\x82\xdf\x9a-6\xe1\x82\xb9"); } // [B1, B2, B3, C2]6017test { try toUnicodeFail("\xd9\xa7\xe2\x80\x8d\xda\xb3\xe3\x80\x82\xdf\x9a-6\xe1\x82\xb9"); } // [B1, B2, B3, C2]
6018test { try toAsciiFail("\xd9\xa7\xe2\x80\x8d\xda\xb3\xe3\x80\x82\xdf\x9a-6\xe1\x82\xb9", false); } // [B1, B2, B3, C2]
6019test { try toAsciiFail("\xd9\xa7\xe2\x80\x8d\xda\xb3\xe3\x80\x82\xdf\x9a-6\xe1\x82\xb9", true); } // [B1, B2, B3]
2640test { try toUnicodeFail("\xd9\xa7\xe2\x80\x8d\xda\xb3\xe3\x80\x82\xdf\x9a-6\xe2\xb4\x99"); } // [B1, B2, B3, C2]6020test { try toUnicodeFail("\xd9\xa7\xe2\x80\x8d\xda\xb3\xe3\x80\x82\xdf\x9a-6\xe2\xb4\x99"); } // [B1, B2, B3, C2]
6021test { try toAsciiFail("\xd9\xa7\xe2\x80\x8d\xda\xb3\xe3\x80\x82\xdf\x9a-6\xe2\xb4\x99", false); } // [B1, B2, B3, C2]
6022test { try toAsciiFail("\xd9\xa7\xe2\x80\x8d\xda\xb3\xe3\x80\x82\xdf\x9a-6\xe2\xb4\x99", true); } // [B1, B2, B3]
2641test { try toUnicodeFail("xn--gib6m.xn---6-lve6529a"); } // [B1, B2, B3]6023test { try toUnicodeFail("xn--gib6m.xn---6-lve6529a"); } // [B1, B2, B3]
6024test { try toAsciiFail("xn--gib6m.xn---6-lve6529a", false); } // [B1, B2, B3]
6025test { try toAsciiFail("xn--gib6m.xn---6-lve6529a", true); } // [B1, B2, B3]
2642test { try toUnicodeFail("xn--gib6m343e.xn---6-lve6529a"); } // [B1, B2, B3, C2]6026test { try toUnicodeFail("xn--gib6m343e.xn---6-lve6529a"); } // [B1, B2, B3, C2]
6027test { try toAsciiFail("xn--gib6m343e.xn---6-lve6529a", false); } // [B1, B2, B3, C2]
6028test { try toAsciiFail("xn--gib6m343e.xn---6-lve6529a", true); } // [B1, B2, B3, C2]
2643test { try toUnicodeFail("\xd9\xa7\xe2\x80\x8d\xef\xae\x96\xef\xbd\xa1\xdf\x9a-\xe2\x82\x86\xe2\xb4\x99"); } // [B1, B2, B3, C2]6029test { try toUnicodeFail("\xd9\xa7\xe2\x80\x8d\xef\xae\x96\xef\xbd\xa1\xdf\x9a-\xe2\x82\x86\xe2\xb4\x99"); } // [B1, B2, B3, C2]
6030test { try toAsciiFail("\xd9\xa7\xe2\x80\x8d\xef\xae\x96\xef\xbd\xa1\xdf\x9a-\xe2\x82\x86\xe2\xb4\x99", false); } // [B1, B2, B3, C2]
6031test { try toAsciiFail("\xd9\xa7\xe2\x80\x8d\xef\xae\x96\xef\xbd\xa1\xdf\x9a-\xe2\x82\x86\xe2\xb4\x99", true); } // [B1, B2, B3]
2644test { try toUnicodeFail("xn--gib6m.xn---6-lve002g"); } // [B1, B2, B3, V7]6032test { try toUnicodeFail("xn--gib6m.xn---6-lve002g"); } // [B1, B2, B3, V7]
6033test { try toAsciiFail("xn--gib6m.xn---6-lve002g", false); } // [B1, B2, B3, V7]
6034test { try toAsciiFail("xn--gib6m.xn---6-lve002g", true); } // [B1, B2, B3, V7]
2645test { try toUnicodeFail("xn--gib6m343e.xn---6-lve002g"); } // [B1, B2, B3, C2, V7]6035test { try toUnicodeFail("xn--gib6m343e.xn---6-lve002g"); } // [B1, B2, B3, C2, V7]
6036test { try toAsciiFail("xn--gib6m343e.xn---6-lve002g", false); } // [B1, B2, B3, C2, V7]
6037test { try toAsciiFail("xn--gib6m343e.xn---6-lve002g", true); } // [B1, B2, B3, C2, V7]
2646test { try toUnicodeFail("\xe2\x80\x8c\xef\xbd\xa1\xe2\x89\xa0"); } // [C1]6038test { try toUnicodeFail("\xe2\x80\x8c\xef\xbd\xa1\xe2\x89\xa0"); } // [C1]
6039test { try toAsciiFail("\xe2\x80\x8c\xef\xbd\xa1\xe2\x89\xa0", false); } // [C1]
6040test { try toAsciiFail("\xe2\x80\x8c\xef\xbd\xa1\xe2\x89\xa0", true); } // [A4_2]
2647test { try toUnicodeFail("\xe2\x80\x8c\xef\xbd\xa1=\xcc\xb8"); } // [C1]6041test { try toUnicodeFail("\xe2\x80\x8c\xef\xbd\xa1=\xcc\xb8"); } // [C1]
6042test { try toAsciiFail("\xe2\x80\x8c\xef\xbd\xa1=\xcc\xb8", false); } // [C1]
6043test { try toAsciiFail("\xe2\x80\x8c\xef\xbd\xa1=\xcc\xb8", true); } // [A4_2]
2648test { try toUnicodeFail("\xe2\x80\x8c\xe3\x80\x82\xe2\x89\xa0"); } // [C1]6044test { try toUnicodeFail("\xe2\x80\x8c\xe3\x80\x82\xe2\x89\xa0"); } // [C1]
6045test { try toAsciiFail("\xe2\x80\x8c\xe3\x80\x82\xe2\x89\xa0", false); } // [C1]
6046test { try toAsciiFail("\xe2\x80\x8c\xe3\x80\x82\xe2\x89\xa0", true); } // [A4_2]
2649test { try toUnicodeFail("\xe2\x80\x8c\xe3\x80\x82=\xcc\xb8"); } // [C1]6047test { try toUnicodeFail("\xe2\x80\x8c\xe3\x80\x82=\xcc\xb8"); } // [C1]
6048test { try toAsciiFail("\xe2\x80\x8c\xe3\x80\x82=\xcc\xb8", false); } // [C1]
6049test { try toAsciiFail("\xe2\x80\x8c\xe3\x80\x82=\xcc\xb8", true); } // [A4_2]
2650test { try toUnicodeFail(".xn--1ch"); } // [X4_2]6050test { try toUnicodeFail(".xn--1ch"); } // [X4_2]
6051test { try toAsciiFail(".xn--1ch", false); } // [A4_2]
6052test { try toAsciiFail(".xn--1ch", true); } // [A4_2]
2651test { try toUnicodeFail("xn--0ug.xn--1ch"); } // [C1]6053test { try toUnicodeFail("xn--0ug.xn--1ch"); } // [C1]
6054test { try toAsciiFail("xn--0ug.xn--1ch", false); } // [C1]
6055test { try toAsciiFail("xn--0ug.xn--1ch", true); } // [C1]
2652test { try toUnicodeFail("\xf0\x91\x96\xbf\xf0\x9d\xa8\x94.\xe1\xa1\x9f\xf0\x91\x96\xbf\xe1\xad\x82\xe2\x80\x8c"); } // [C1, V6]6056test { try toUnicodeFail("\xf0\x91\x96\xbf\xf0\x9d\xa8\x94.\xe1\xa1\x9f\xf0\x91\x96\xbf\xe1\xad\x82\xe2\x80\x8c"); } // [C1, V6]
6057test { try toAsciiFail("\xf0\x91\x96\xbf\xf0\x9d\xa8\x94.\xe1\xa1\x9f\xf0\x91\x96\xbf\xe1\xad\x82\xe2\x80\x8c", false); } // [C1, V6]
6058test { try toAsciiFail("\xf0\x91\x96\xbf\xf0\x9d\xa8\x94.\xe1\xa1\x9f\xf0\x91\x96\xbf\xe1\xad\x82\xe2\x80\x8c", true); } // [V6]
2653test { try toUnicodeFail("xn--461dw464a.xn--v8e29loy65a"); } // [V6]6059test { try toUnicodeFail("xn--461dw464a.xn--v8e29loy65a"); } // [V6]
6060test { try toAsciiFail("xn--461dw464a.xn--v8e29loy65a", false); } // [V6]
6061test { try toAsciiFail("xn--461dw464a.xn--v8e29loy65a", true); } // [V6]
2654test { try toUnicodeFail("xn--461dw464a.xn--v8e29ldzfo952a"); } // [C1, V6]6062test { try toUnicodeFail("xn--461dw464a.xn--v8e29ldzfo952a"); } // [C1, V6]
6063test { try toAsciiFail("xn--461dw464a.xn--v8e29ldzfo952a", false); } // [C1, V6]
6064test { try toAsciiFail("xn--461dw464a.xn--v8e29ldzfo952a", true); } // [C1, V6]
2655test { try toUnicodeFail("\xf2\x94\xa3\xb3\xe2\x80\x8d\xf2\x91\x9d\xb1.\xf0\x96\xac\xb4\xe2\x86\x83\xe2\x89\xa0-"); } // [C2, V3, V6, V7]6065test { try toUnicodeFail("\xf2\x94\xa3\xb3\xe2\x80\x8d\xf2\x91\x9d\xb1.\xf0\x96\xac\xb4\xe2\x86\x83\xe2\x89\xa0-"); } // [C2, V3, V6, V7]
6066test { try toAsciiFail("\xf2\x94\xa3\xb3\xe2\x80\x8d\xf2\x91\x9d\xb1.\xf0\x96\xac\xb4\xe2\x86\x83\xe2\x89\xa0-", false); } // [C2, V3, V6, V7]
6067test { try toAsciiFail("\xf2\x94\xa3\xb3\xe2\x80\x8d\xf2\x91\x9d\xb1.\xf0\x96\xac\xb4\xe2\x86\x83\xe2\x89\xa0-", true); } // [V3, V6, V7]
2656test { try toUnicodeFail("\xf2\x94\xa3\xb3\xe2\x80\x8d\xf2\x91\x9d\xb1.\xf0\x96\xac\xb4\xe2\x86\x83=\xcc\xb8-"); } // [C2, V3, V6, V7]6068test { try toUnicodeFail("\xf2\x94\xa3\xb3\xe2\x80\x8d\xf2\x91\x9d\xb1.\xf0\x96\xac\xb4\xe2\x86\x83=\xcc\xb8-"); } // [C2, V3, V6, V7]
6069test { try toAsciiFail("\xf2\x94\xa3\xb3\xe2\x80\x8d\xf2\x91\x9d\xb1.\xf0\x96\xac\xb4\xe2\x86\x83=\xcc\xb8-", false); } // [C2, V3, V6, V7]
6070test { try toAsciiFail("\xf2\x94\xa3\xb3\xe2\x80\x8d\xf2\x91\x9d\xb1.\xf0\x96\xac\xb4\xe2\x86\x83=\xcc\xb8-", true); } // [V3, V6, V7]
2657test { try toUnicodeFail("\xf2\x94\xa3\xb3\xe2\x80\x8d\xf2\x91\x9d\xb1.\xf0\x96\xac\xb4\xe2\x86\x84=\xcc\xb8-"); } // [C2, V3, V6, V7]6071test { try toUnicodeFail("\xf2\x94\xa3\xb3\xe2\x80\x8d\xf2\x91\x9d\xb1.\xf0\x96\xac\xb4\xe2\x86\x84=\xcc\xb8-"); } // [C2, V3, V6, V7]
6072test { try toAsciiFail("\xf2\x94\xa3\xb3\xe2\x80\x8d\xf2\x91\x9d\xb1.\xf0\x96\xac\xb4\xe2\x86\x84=\xcc\xb8-", false); } // [C2, V3, V6, V7]
6073test { try toAsciiFail("\xf2\x94\xa3\xb3\xe2\x80\x8d\xf2\x91\x9d\xb1.\xf0\x96\xac\xb4\xe2\x86\x84=\xcc\xb8-", true); } // [V3, V6, V7]
2658test { try toUnicodeFail("\xf2\x94\xa3\xb3\xe2\x80\x8d\xf2\x91\x9d\xb1.\xf0\x96\xac\xb4\xe2\x86\x84\xe2\x89\xa0-"); } // [C2, V3, V6, V7]6074test { try toUnicodeFail("\xf2\x94\xa3\xb3\xe2\x80\x8d\xf2\x91\x9d\xb1.\xf0\x96\xac\xb4\xe2\x86\x84\xe2\x89\xa0-"); } // [C2, V3, V6, V7]
6075test { try toAsciiFail("\xf2\x94\xa3\xb3\xe2\x80\x8d\xf2\x91\x9d\xb1.\xf0\x96\xac\xb4\xe2\x86\x84\xe2\x89\xa0-", false); } // [C2, V3, V6, V7]
6076test { try toAsciiFail("\xf2\x94\xa3\xb3\xe2\x80\x8d\xf2\x91\x9d\xb1.\xf0\x96\xac\xb4\xe2\x86\x84\xe2\x89\xa0-", true); } // [V3, V6, V7]
2659test { try toUnicodeFail("xn--6j00chy9a.xn----81n51bt713h"); } // [V3, V6, V7]6077test { try toUnicodeFail("xn--6j00chy9a.xn----81n51bt713h"); } // [V3, V6, V7]
6078test { try toAsciiFail("xn--6j00chy9a.xn----81n51bt713h", false); } // [V3, V6, V7]
6079test { try toAsciiFail("xn--6j00chy9a.xn----81n51bt713h", true); } // [V3, V6, V7]
2660test { try toUnicodeFail("xn--1ug15151gkb5a.xn----81n51bt713h"); } // [C2, V3, V6, V7]6080test { try toUnicodeFail("xn--1ug15151gkb5a.xn----81n51bt713h"); } // [C2, V3, V6, V7]
6081test { try toAsciiFail("xn--1ug15151gkb5a.xn----81n51bt713h", false); } // [C2, V3, V6, V7]
6082test { try toAsciiFail("xn--1ug15151gkb5a.xn----81n51bt713h", true); } // [C2, V3, V6, V7]
2661test { try toUnicodeFail("xn--6j00chy9a.xn----61n81bt713h"); } // [V3, V6, V7]6083test { try toUnicodeFail("xn--6j00chy9a.xn----61n81bt713h"); } // [V3, V6, V7]
6084test { try toAsciiFail("xn--6j00chy9a.xn----61n81bt713h", false); } // [V3, V6, V7]
6085test { try toAsciiFail("xn--6j00chy9a.xn----61n81bt713h", true); } // [V3, V6, V7]
2662test { try toUnicodeFail("xn--1ug15151gkb5a.xn----61n81bt713h"); } // [C2, V3, V6, V7]6086test { try toUnicodeFail("xn--1ug15151gkb5a.xn----61n81bt713h"); } // [C2, V3, V6, V7]
6087test { try toAsciiFail("xn--1ug15151gkb5a.xn----61n81bt713h", false); } // [C2, V3, V6, V7]
6088test { try toAsciiFail("xn--1ug15151gkb5a.xn----61n81bt713h", true); } // [C2, V3, V6, V7]
2663test { try toUnicodeFail("\xdf\xa2\xcf\x82\xe2\x80\x8d\xf0\x9d\x9f\xb3\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2"); } // [B2, C2, V7]6089test { try toUnicodeFail("\xdf\xa2\xcf\x82\xe2\x80\x8d\xf0\x9d\x9f\xb3\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2"); } // [B2, C2, V7]
6090test { try toAsciiFail("\xdf\xa2\xcf\x82\xe2\x80\x8d\xf0\x9d\x9f\xb3\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2", false); } // [B2, C2, V7]
6091test { try toAsciiFail("\xdf\xa2\xcf\x82\xe2\x80\x8d\xf0\x9d\x9f\xb3\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2", true); } // [B2, V7]
2664test { try toUnicodeFail("\xdf\xa2\xcf\x82\xe2\x80\x8d7\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2"); } // [B2, C2, V7]6092test { try toUnicodeFail("\xdf\xa2\xcf\x82\xe2\x80\x8d7\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2"); } // [B2, C2, V7]
6093test { try toAsciiFail("\xdf\xa2\xcf\x82\xe2\x80\x8d7\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2", false); } // [B2, C2, V7]
6094test { try toAsciiFail("\xdf\xa2\xcf\x82\xe2\x80\x8d7\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2", true); } // [B2, V7]
2665test { try toUnicodeFail("\xdf\xa2\xce\xa3\xe2\x80\x8d7\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2"); } // [B2, C2, V7]6095test { try toUnicodeFail("\xdf\xa2\xce\xa3\xe2\x80\x8d7\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2"); } // [B2, C2, V7]
6096test { try toAsciiFail("\xdf\xa2\xce\xa3\xe2\x80\x8d7\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2", false); } // [B2, C2, V7]
6097test { try toAsciiFail("\xdf\xa2\xce\xa3\xe2\x80\x8d7\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2", true); } // [B2, V7]
2666test { try toUnicodeFail("\xdf\xa2\xcf\x83\xe2\x80\x8d7\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2"); } // [B2, C2, V7]6098test { try toUnicodeFail("\xdf\xa2\xcf\x83\xe2\x80\x8d7\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2"); } // [B2, C2, V7]
6099test { try toAsciiFail("\xdf\xa2\xcf\x83\xe2\x80\x8d7\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2", false); } // [B2, C2, V7]
6100test { try toAsciiFail("\xdf\xa2\xcf\x83\xe2\x80\x8d7\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2", true); } // [B2, V7]
2667test { try toUnicodeFail("xn--7-zmb872a.xn--wy1ao4929b"); } // [B2, V7]6101test { try toUnicodeFail("xn--7-zmb872a.xn--wy1ao4929b"); } // [B2, V7]
6102test { try toAsciiFail("xn--7-zmb872a.xn--wy1ao4929b", false); } // [B2, V7]
6103test { try toAsciiFail("xn--7-zmb872a.xn--wy1ao4929b", true); } // [B2, V7]
2668test { try toUnicodeFail("xn--7-zmb872aez5a.xn--wy1ao4929b"); } // [B2, C2, V7]6104test { try toUnicodeFail("xn--7-zmb872aez5a.xn--wy1ao4929b"); } // [B2, C2, V7]
6105test { try toAsciiFail("xn--7-zmb872aez5a.xn--wy1ao4929b", false); } // [B2, C2, V7]
6106test { try toAsciiFail("xn--7-zmb872aez5a.xn--wy1ao4929b", true); } // [B2, C2, V7]
2669test { try toUnicodeFail("xn--7-xmb182aez5a.xn--wy1ao4929b"); } // [B2, C2, V7]6107test { try toUnicodeFail("xn--7-xmb182aez5a.xn--wy1ao4929b"); } // [B2, C2, V7]
6108test { try toAsciiFail("xn--7-xmb182aez5a.xn--wy1ao4929b", false); } // [B2, C2, V7]
6109test { try toAsciiFail("xn--7-xmb182aez5a.xn--wy1ao4929b", true); } // [B2, C2, V7]
2670test { try toUnicodeFail("\xdf\xa2\xce\xa3\xe2\x80\x8d\xf0\x9d\x9f\xb3\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2"); } // [B2, C2, V7]6110test { try toUnicodeFail("\xdf\xa2\xce\xa3\xe2\x80\x8d\xf0\x9d\x9f\xb3\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2"); } // [B2, C2, V7]
6111test { try toAsciiFail("\xdf\xa2\xce\xa3\xe2\x80\x8d\xf0\x9d\x9f\xb3\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2", false); } // [B2, C2, V7]
6112test { try toAsciiFail("\xdf\xa2\xce\xa3\xe2\x80\x8d\xf0\x9d\x9f\xb3\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2", true); } // [B2, V7]
2671test { try toUnicodeFail("\xdf\xa2\xcf\x83\xe2\x80\x8d\xf0\x9d\x9f\xb3\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2"); } // [B2, C2, V7]6113test { try toUnicodeFail("\xdf\xa2\xcf\x83\xe2\x80\x8d\xf0\x9d\x9f\xb3\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2"); } // [B2, C2, V7]
6114test { try toAsciiFail("\xdf\xa2\xcf\x83\xe2\x80\x8d\xf0\x9d\x9f\xb3\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2", false); } // [B2, C2, V7]
6115test { try toAsciiFail("\xdf\xa2\xcf\x83\xe2\x80\x8d\xf0\x9d\x9f\xb3\xe3\x80\x82\xe8\x94\x91\xf2\x9b\x96\xa2", true); } // [B2, V7]
2672test { try toUnicodeFail("\xf0\x90\xb9\xb0.\xd8\x80"); } // [B1, V7]6116test { try toUnicodeFail("\xf0\x90\xb9\xb0.\xd8\x80"); } // [B1, V7]
6117test { try toAsciiFail("\xf0\x90\xb9\xb0.\xd8\x80", false); } // [B1, V7]
6118test { try toAsciiFail("\xf0\x90\xb9\xb0.\xd8\x80", true); } // [B1, V7]
2673test { try toUnicodeFail("xn--oo0d.xn--ifb"); } // [B1, V7]6119test { try toUnicodeFail("xn--oo0d.xn--ifb"); } // [B1, V7]
6120test { try toAsciiFail("xn--oo0d.xn--ifb", false); } // [B1, V7]
6121test { try toAsciiFail("xn--oo0d.xn--ifb", true); } // [B1, V7]
2674test { try toUnicodeFail("-\xe0\xa2\xa8.\xf0\xb1\xa0\x96"); } // [B1, V3]6122test { try toUnicodeFail("-\xe0\xa2\xa8.\xf0\xb1\xa0\x96"); } // [B1, V3]
6123test { try toAsciiFail("-\xe0\xa2\xa8.\xf0\xb1\xa0\x96", false); } // [B1, V3]
6124test { try toAsciiFail("-\xe0\xa2\xa8.\xf0\xb1\xa0\x96", true); } // [B1, V3]
2675test { try toUnicodeFail("xn----mod.xn--5o9n"); } // [B1, V3]6125test { try toUnicodeFail("xn----mod.xn--5o9n"); } // [B1, V3]
6126test { try toAsciiFail("xn----mod.xn--5o9n", false); } // [B1, V3]
6127test { try toAsciiFail("xn----mod.xn--5o9n", true); } // [B1, V3]
2676test { try toUnicodeFail("\xe2\x89\xaf\xf0\x9e\xb1\xb8\xf3\xa0\x87\x80\xe3\x80\x82\xe8\xaa\x86\xe2\x92\x88"); } // [B1, V7]6128test { try toUnicodeFail("\xe2\x89\xaf\xf0\x9e\xb1\xb8\xf3\xa0\x87\x80\xe3\x80\x82\xe8\xaa\x86\xe2\x92\x88"); } // [B1, V7]
6129test { try toAsciiFail("\xe2\x89\xaf\xf0\x9e\xb1\xb8\xf3\xa0\x87\x80\xe3\x80\x82\xe8\xaa\x86\xe2\x92\x88", false); } // [B1, V7]
6130test { try toAsciiFail("\xe2\x89\xaf\xf0\x9e\xb1\xb8\xf3\xa0\x87\x80\xe3\x80\x82\xe8\xaa\x86\xe2\x92\x88", true); } // [B1, V7]
2677test { try toUnicodeFail(">\xcc\xb8\xf0\x9e\xb1\xb8\xf3\xa0\x87\x80\xe3\x80\x82\xe8\xaa\x86\xe2\x92\x88"); } // [B1, V7]6131test { try toUnicodeFail(">\xcc\xb8\xf0\x9e\xb1\xb8\xf3\xa0\x87\x80\xe3\x80\x82\xe8\xaa\x86\xe2\x92\x88"); } // [B1, V7]
6132test { try toAsciiFail(">\xcc\xb8\xf0\x9e\xb1\xb8\xf3\xa0\x87\x80\xe3\x80\x82\xe8\xaa\x86\xe2\x92\x88", false); } // [B1, V7]
6133test { try toAsciiFail(">\xcc\xb8\xf0\x9e\xb1\xb8\xf3\xa0\x87\x80\xe3\x80\x82\xe8\xaa\x86\xe2\x92\x88", true); } // [B1, V7]
2678test { try toUnicodeFail("\xe2\x89\xaf\xf0\x9e\xb1\xb8\xf3\xa0\x87\x80\xe3\x80\x82\xe8\xaa\x861."); } // [B1]6134test { try toUnicodeFail("\xe2\x89\xaf\xf0\x9e\xb1\xb8\xf3\xa0\x87\x80\xe3\x80\x82\xe8\xaa\x861."); } // [B1]
6135test { try toAsciiFail("\xe2\x89\xaf\xf0\x9e\xb1\xb8\xf3\xa0\x87\x80\xe3\x80\x82\xe8\xaa\x861.", false); } // [B1, A4_2]
6136test { try toAsciiFail("\xe2\x89\xaf\xf0\x9e\xb1\xb8\xf3\xa0\x87\x80\xe3\x80\x82\xe8\xaa\x861.", true); } // [B1, A4_2]
2679test { try toUnicodeFail(">\xcc\xb8\xf0\x9e\xb1\xb8\xf3\xa0\x87\x80\xe3\x80\x82\xe8\xaa\x861."); } // [B1]6137test { try toUnicodeFail(">\xcc\xb8\xf0\x9e\xb1\xb8\xf3\xa0\x87\x80\xe3\x80\x82\xe8\xaa\x861."); } // [B1]
6138test { try toAsciiFail(">\xcc\xb8\xf0\x9e\xb1\xb8\xf3\xa0\x87\x80\xe3\x80\x82\xe8\xaa\x861.", false); } // [B1, A4_2]
6139test { try toAsciiFail(">\xcc\xb8\xf0\x9e\xb1\xb8\xf3\xa0\x87\x80\xe3\x80\x82\xe8\xaa\x861.", true); } // [B1, A4_2]
2680test { try toUnicodeFail("xn--hdh7151p.xn--1-dy1d."); } // [B1]6140test { try toUnicodeFail("xn--hdh7151p.xn--1-dy1d."); } // [B1]
6141test { try toAsciiFail("xn--hdh7151p.xn--1-dy1d.", false); } // [B1, A4_2]
6142test { try toAsciiFail("xn--hdh7151p.xn--1-dy1d.", true); } // [B1, A4_2]
2681test { try toUnicodeFail("xn--hdh7151p.xn--tsh1248a"); } // [B1, V7]6143test { try toUnicodeFail("xn--hdh7151p.xn--tsh1248a"); } // [B1, V7]
6144test { try toAsciiFail("xn--hdh7151p.xn--tsh1248a", false); } // [B1, V7]
6145test { try toAsciiFail("xn--hdh7151p.xn--tsh1248a", true); } // [B1, V7]
2682test { try toUnicodeFail("\xd8\x96\xf0\x9e\xa5\x99\xe4\x90\x8a\xd9\x90\xef\xbc\x8e\xef\xb8\x92\xd9\x85\xe2\x86\xba\xda\x9c"); } // [B1, V6, V7]6146test { try toUnicodeFail("\xd8\x96\xf0\x9e\xa5\x99\xe4\x90\x8a\xd9\x90\xef\xbc\x8e\xef\xb8\x92\xd9\x85\xe2\x86\xba\xda\x9c"); } // [B1, V6, V7]
6147test { try toAsciiFail("\xd8\x96\xf0\x9e\xa5\x99\xe4\x90\x8a\xd9\x90\xef\xbc\x8e\xef\xb8\x92\xd9\x85\xe2\x86\xba\xda\x9c", false); } // [B1, V6, V7]
6148test { try toAsciiFail("\xd8\x96\xf0\x9e\xa5\x99\xe4\x90\x8a\xd9\x90\xef\xbc\x8e\xef\xb8\x92\xd9\x85\xe2\x86\xba\xda\x9c", true); } // [B1, V6, V7]
2683test { try toUnicodeFail("\xd8\x96\xf0\x9e\xa5\x99\xe4\x90\x8a\xd9\x90.\xe3\x80\x82\xd9\x85\xe2\x86\xba\xda\x9c"); } // [B1, V6, X4_2]6149test { try toUnicodeFail("\xd8\x96\xf0\x9e\xa5\x99\xe4\x90\x8a\xd9\x90.\xe3\x80\x82\xd9\x85\xe2\x86\xba\xda\x9c"); } // [B1, V6, X4_2]
6150test { try toAsciiFail("\xd8\x96\xf0\x9e\xa5\x99\xe4\x90\x8a\xd9\x90.\xe3\x80\x82\xd9\x85\xe2\x86\xba\xda\x9c", false); } // [B1, V6, A4_2]
6151test { try toAsciiFail("\xd8\x96\xf0\x9e\xa5\x99\xe4\x90\x8a\xd9\x90.\xe3\x80\x82\xd9\x85\xe2\x86\xba\xda\x9c", true); } // [B1, V6, A4_2]
2684test { try toUnicodeFail("xn--4fb0j490qjg4x..xn--hhb8o948e"); } // [B1, V6, X4_2]6152test { try toUnicodeFail("xn--4fb0j490qjg4x..xn--hhb8o948e"); } // [B1, V6, X4_2]
6153test { try toAsciiFail("xn--4fb0j490qjg4x..xn--hhb8o948e", false); } // [B1, V6, A4_2]
6154test { try toAsciiFail("xn--4fb0j490qjg4x..xn--hhb8o948e", true); } // [B1, V6, A4_2]
2685test { try toUnicodeFail("xn--4fb0j490qjg4x.xn--hhb8o948euo5r"); } // [B1, V6, V7]6155test { try toUnicodeFail("xn--4fb0j490qjg4x.xn--hhb8o948euo5r"); } // [B1, V6, V7]
6156test { try toAsciiFail("xn--4fb0j490qjg4x.xn--hhb8o948euo5r", false); } // [B1, V6, V7]
6157test { try toAsciiFail("xn--4fb0j490qjg4x.xn--hhb8o948euo5r", true); } // [B1, V6, V7]
2686test { try toUnicodeFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.\xe2\x80\x8c\xe0\xab\x85\xf3\xa9\xb8\xa4\xdb\xb4"); } // [C1, V7, U1]6158test { try toUnicodeFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.\xe2\x80\x8c\xe0\xab\x85\xf3\xa9\xb8\xa4\xdb\xb4"); } // [C1, V7, U1]
6159test { try toAsciiFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.\xe2\x80\x8c\xe0\xab\x85\xf3\xa9\xb8\xa4\xdb\xb4", false); } // [C1, V7, U1]
6160test { try toAsciiFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.\xe2\x80\x8c\xe0\xab\x85\xf3\xa9\xb8\xa4\xdb\xb4", true); } // [V6, V7, U1]
2687test { try toUnicodeFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.\xe2\x80\x8c\xe0\xab\x85\xf3\xa9\xb8\xa4\xdb\xb4"); } // [C1, V7, U1]6161test { try toUnicodeFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.\xe2\x80\x8c\xe0\xab\x85\xf3\xa9\xb8\xa4\xdb\xb4"); } // [C1, V7, U1]
6162test { try toAsciiFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.\xe2\x80\x8c\xe0\xab\x85\xf3\xa9\xb8\xa4\xdb\xb4", false); } // [C1, V7, U1]
6163test { try toAsciiFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.\xe2\x80\x8c\xe0\xab\x85\xf3\xa9\xb8\xa4\xdb\xb4", true); } // [V6, V7, U1]
2688test { try toUnicodeFail("xn---?-6g4k75207c.xn--hmb76q74166b"); } // [V6, V7, U1]6164test { try toUnicodeFail("xn---?-6g4k75207c.xn--hmb76q74166b"); } // [V6, V7, U1]
6165test { try toAsciiFail("xn---?-6g4k75207c.xn--hmb76q74166b", false); } // [V6, V7, U1]
6166test { try toAsciiFail("xn---?-6g4k75207c.xn--hmb76q74166b", true); } // [V6, V7, U1]
2689test { try toUnicodeFail("xn---?-6g4k75207c.xn--hmb76q48y18505a"); } // [C1, V7, U1]6167test { try toUnicodeFail("xn---?-6g4k75207c.xn--hmb76q48y18505a"); } // [C1, V7, U1]
6168test { try toAsciiFail("xn---?-6g4k75207c.xn--hmb76q48y18505a", false); } // [C1, V7, U1]
6169test { try toAsciiFail("xn---?-6g4k75207c.xn--hmb76q48y18505a", true); } // [C1, V7, U1]
2690test { try toUnicodeFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.xn--hmb76q74166b"); } // [V6, V7, U1]6170test { try toUnicodeFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.xn--hmb76q74166b"); } // [V6, V7, U1]
6171test { try toAsciiFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.xn--hmb76q74166b", false); } // [V6, V7, U1]
6172test { try toAsciiFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.xn--hmb76q74166b", true); } // [V6, V7, U1]
2691test { try toUnicodeFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.xn--hmb76q74166b"); } // [V6, V7, U1]6173test { try toUnicodeFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.xn--hmb76q74166b"); } // [V6, V7, U1]
6174test { try toAsciiFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.xn--hmb76q74166b", false); } // [V6, V7, U1]
6175test { try toAsciiFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.xn--hmb76q74166b", true); } // [V6, V7, U1]
2692test { try toUnicodeFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.XN--HMB76Q74166B"); } // [V6, V7, U1]6176test { try toUnicodeFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.XN--HMB76Q74166B"); } // [V6, V7, U1]
6177test { try toAsciiFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.XN--HMB76Q74166B", false); } // [V6, V7, U1]
6178test { try toAsciiFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.XN--HMB76Q74166B", true); } // [V6, V7, U1]
2693test { try toUnicodeFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.XN--HMB76Q74166B"); } // [V6, V7, U1]6179test { try toUnicodeFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.XN--HMB76Q74166B"); } // [V6, V7, U1]
6180test { try toAsciiFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.XN--HMB76Q74166B", false); } // [V6, V7, U1]
6181test { try toAsciiFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.XN--HMB76Q74166B", true); } // [V6, V7, U1]
2694test { try toUnicodeFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.Xn--Hmb76q74166b"); } // [V6, V7, U1]6182test { try toUnicodeFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.Xn--Hmb76q74166b"); } // [V6, V7, U1]
6183test { try toAsciiFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.Xn--Hmb76q74166b", false); } // [V6, V7, U1]
6184test { try toAsciiFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.Xn--Hmb76q74166b", true); } // [V6, V7, U1]
2695test { try toUnicodeFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.Xn--Hmb76q74166b"); } // [V6, V7, U1]6185test { try toUnicodeFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.Xn--Hmb76q74166b"); } // [V6, V7, U1]
6186test { try toAsciiFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.Xn--Hmb76q74166b", false); } // [V6, V7, U1]
6187test { try toAsciiFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.Xn--Hmb76q74166b", true); } // [V6, V7, U1]
2696test { try toUnicodeFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.xn--hmb76q48y18505a"); } // [C1, V7, U1]6188test { try toUnicodeFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.xn--hmb76q48y18505a"); } // [C1, V7, U1]
6189test { try toAsciiFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.xn--hmb76q48y18505a", false); } // [C1, V7, U1]
6190test { try toAsciiFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.xn--hmb76q48y18505a", true); } // [C1, V7, U1]
2697test { try toUnicodeFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.xn--hmb76q48y18505a"); } // [C1, V7, U1]6191test { try toUnicodeFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.xn--hmb76q48y18505a"); } // [C1, V7, U1]
6192test { try toAsciiFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.xn--hmb76q48y18505a", false); } // [C1, V7, U1]
6193test { try toAsciiFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.xn--hmb76q48y18505a", true); } // [C1, V7, U1]
2698test { try toUnicodeFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.XN--HMB76Q48Y18505A"); } // [C1, V7, U1]6194test { try toUnicodeFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.XN--HMB76Q48Y18505A"); } // [C1, V7, U1]
6195test { try toAsciiFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.XN--HMB76Q48Y18505A", false); } // [C1, V7, U1]
6196test { try toAsciiFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.XN--HMB76Q48Y18505A", true); } // [C1, V7, U1]
2699test { try toUnicodeFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.XN--HMB76Q48Y18505A"); } // [C1, V7, U1]6197test { try toUnicodeFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.XN--HMB76Q48Y18505A"); } // [C1, V7, U1]
6198test { try toAsciiFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.XN--HMB76Q48Y18505A", false); } // [C1, V7, U1]
6199test { try toAsciiFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.XN--HMB76Q48Y18505A", true); } // [C1, V7, U1]
2700test { try toUnicodeFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.Xn--Hmb76q48y18505a"); } // [C1, V7, U1]6200test { try toUnicodeFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.Xn--Hmb76q48y18505a"); } // [C1, V7, U1]
6201test { try toAsciiFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.Xn--Hmb76q48y18505a", false); } // [C1, V7, U1]
6202test { try toAsciiFail("\xed\x80\xac-?\xf1\xb6\xb3\x92.Xn--Hmb76q48y18505a", true); } // [C1, V7, U1]
2701test { try toUnicodeFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.Xn--Hmb76q48y18505a"); } // [C1, V7, U1]6203test { try toUnicodeFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.Xn--Hmb76q48y18505a"); } // [C1, V7, U1]
6204test { try toAsciiFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.Xn--Hmb76q48y18505a", false); } // [C1, V7, U1]
6205test { try toAsciiFail("\xe1\x84\x8f\xe1\x85\xb0\xe1\x86\xbb-?\xf1\xb6\xb3\x92.Xn--Hmb76q48y18505a", true); } // [C1, V7, U1]
2702test { try toUnicodeFail("\xe1\x82\xac.\xf0\x90\xb9\xbe\xef\xb8\x92\xf0\x91\x81\xbf\xf0\x9e\xbe\x84"); } // [B1, V7]6206test { try toUnicodeFail("\xe1\x82\xac.\xf0\x90\xb9\xbe\xef\xb8\x92\xf0\x91\x81\xbf\xf0\x9e\xbe\x84"); } // [B1, V7]
6207test { try toAsciiFail("\xe1\x82\xac.\xf0\x90\xb9\xbe\xef\xb8\x92\xf0\x91\x81\xbf\xf0\x9e\xbe\x84", false); } // [B1, V7]
6208test { try toAsciiFail("\xe1\x82\xac.\xf0\x90\xb9\xbe\xef\xb8\x92\xf0\x91\x81\xbf\xf0\x9e\xbe\x84", true); } // [B1, V7]
2703test { try toUnicodeFail("\xe1\x82\xac.\xf0\x90\xb9\xbe\xe3\x80\x82\xf0\x91\x81\xbf\xf0\x9e\xbe\x84"); } // [B1, V6, V7]6209test { try toUnicodeFail("\xe1\x82\xac.\xf0\x90\xb9\xbe\xe3\x80\x82\xf0\x91\x81\xbf\xf0\x9e\xbe\x84"); } // [B1, V6, V7]
6210test { try toAsciiFail("\xe1\x82\xac.\xf0\x90\xb9\xbe\xe3\x80\x82\xf0\x91\x81\xbf\xf0\x9e\xbe\x84", false); } // [B1, V6, V7]
6211test { try toAsciiFail("\xe1\x82\xac.\xf0\x90\xb9\xbe\xe3\x80\x82\xf0\x91\x81\xbf\xf0\x9e\xbe\x84", true); } // [B1, V6, V7]
2704test { try toUnicodeFail("\xe2\xb4\x8c.\xf0\x90\xb9\xbe\xe3\x80\x82\xf0\x91\x81\xbf\xf0\x9e\xbe\x84"); } // [B1, V6, V7]6212test { try toUnicodeFail("\xe2\xb4\x8c.\xf0\x90\xb9\xbe\xe3\x80\x82\xf0\x91\x81\xbf\xf0\x9e\xbe\x84"); } // [B1, V6, V7]
6213test { try toAsciiFail("\xe2\xb4\x8c.\xf0\x90\xb9\xbe\xe3\x80\x82\xf0\x91\x81\xbf\xf0\x9e\xbe\x84", false); } // [B1, V6, V7]
6214test { try toAsciiFail("\xe2\xb4\x8c.\xf0\x90\xb9\xbe\xe3\x80\x82\xf0\x91\x81\xbf\xf0\x9e\xbe\x84", true); } // [B1, V6, V7]
2705test { try toUnicodeFail("xn--3kj.xn--2o0d.xn--q30dg029a"); } // [B1, V6, V7]6215test { try toUnicodeFail("xn--3kj.xn--2o0d.xn--q30dg029a"); } // [B1, V6, V7]
6216test { try toAsciiFail("xn--3kj.xn--2o0d.xn--q30dg029a", false); } // [B1, V6, V7]
6217test { try toAsciiFail("xn--3kj.xn--2o0d.xn--q30dg029a", true); } // [B1, V6, V7]
2706test { try toUnicodeFail("\xe2\xb4\x8c.\xf0\x90\xb9\xbe\xef\xb8\x92\xf0\x91\x81\xbf\xf0\x9e\xbe\x84"); } // [B1, V7]6218test { try toUnicodeFail("\xe2\xb4\x8c.\xf0\x90\xb9\xbe\xef\xb8\x92\xf0\x91\x81\xbf\xf0\x9e\xbe\x84"); } // [B1, V7]
6219test { try toAsciiFail("\xe2\xb4\x8c.\xf0\x90\xb9\xbe\xef\xb8\x92\xf0\x91\x81\xbf\xf0\x9e\xbe\x84", false); } // [B1, V7]
6220test { try toAsciiFail("\xe2\xb4\x8c.\xf0\x90\xb9\xbe\xef\xb8\x92\xf0\x91\x81\xbf\xf0\x9e\xbe\x84", true); } // [B1, V7]
2707test { try toUnicodeFail("xn--3kj.xn--y86c030a9ob6374b"); } // [B1, V7]6221test { try toUnicodeFail("xn--3kj.xn--y86c030a9ob6374b"); } // [B1, V7]
6222test { try toAsciiFail("xn--3kj.xn--y86c030a9ob6374b", false); } // [B1, V7]
6223test { try toAsciiFail("xn--3kj.xn--y86c030a9ob6374b", true); } // [B1, V7]
2708test { try toUnicodeFail("xn--knd.xn--2o0d.xn--q30dg029a"); } // [B1, V6, V7]6224test { try toUnicodeFail("xn--knd.xn--2o0d.xn--q30dg029a"); } // [B1, V6, V7]
6225test { try toAsciiFail("xn--knd.xn--2o0d.xn--q30dg029a", false); } // [B1, V6, V7]
6226test { try toAsciiFail("xn--knd.xn--2o0d.xn--q30dg029a", true); } // [B1, V6, V7]
2709test { try toUnicodeFail("xn--knd.xn--y86c030a9ob6374b"); } // [B1, V7]6227test { try toUnicodeFail("xn--knd.xn--y86c030a9ob6374b"); } // [B1, V7]
6228test { try toAsciiFail("xn--knd.xn--y86c030a9ob6374b", false); } // [B1, V7]
6229test { try toAsciiFail("xn--knd.xn--y86c030a9ob6374b", true); } // [B1, V7]
2710test { try toUnicodeFail("\xf1\xa7\x9e\xbf\xe2\x95\x8f\xe3\x80\x82\xf0\x9e\xa9\x95\xf3\xa0\x81\xbe"); } // [B3, B6, V7]6230test { try toUnicodeFail("\xf1\xa7\x9e\xbf\xe2\x95\x8f\xe3\x80\x82\xf0\x9e\xa9\x95\xf3\xa0\x81\xbe"); } // [B3, B6, V7]
6231test { try toAsciiFail("\xf1\xa7\x9e\xbf\xe2\x95\x8f\xe3\x80\x82\xf0\x9e\xa9\x95\xf3\xa0\x81\xbe", false); } // [B3, B6, V7]
6232test { try toAsciiFail("\xf1\xa7\x9e\xbf\xe2\x95\x8f\xe3\x80\x82\xf0\x9e\xa9\x95\xf3\xa0\x81\xbe", true); } // [B3, B6, V7]
2711test { try toUnicodeFail("xn--iyh90030d.xn--1m6hs0260c"); } // [B3, B6, V7]6233test { try toUnicodeFail("xn--iyh90030d.xn--1m6hs0260c"); } // [B3, B6, V7]
6234test { try toAsciiFail("xn--iyh90030d.xn--1m6hs0260c", false); } // [B3, B6, V7]
6235test { try toAsciiFail("xn--iyh90030d.xn--1m6hs0260c", true); } // [B3, B6, V7]
2712test { try toUnicodeFail("\xe2\x80\x8d\xe2\x94\xae\xf3\xa0\x87\x90\xef\xbc\x8e\xe0\xb0\x80\xe0\xb1\x8d\xe1\x9c\xb4\xe2\x80\x8d"); } // [C2, V6]6236test { try toUnicodeFail("\xe2\x80\x8d\xe2\x94\xae\xf3\xa0\x87\x90\xef\xbc\x8e\xe0\xb0\x80\xe0\xb1\x8d\xe1\x9c\xb4\xe2\x80\x8d"); } // [C2, V6]
6237test { try toAsciiFail("\xe2\x80\x8d\xe2\x94\xae\xf3\xa0\x87\x90\xef\xbc\x8e\xe0\xb0\x80\xe0\xb1\x8d\xe1\x9c\xb4\xe2\x80\x8d", false); } // [C2, V6]
6238test { try toAsciiFail("\xe2\x80\x8d\xe2\x94\xae\xf3\xa0\x87\x90\xef\xbc\x8e\xe0\xb0\x80\xe0\xb1\x8d\xe1\x9c\xb4\xe2\x80\x8d", true); } // [V6]
2713test { try toUnicodeFail("\xe2\x80\x8d\xe2\x94\xae\xf3\xa0\x87\x90.\xe0\xb0\x80\xe0\xb1\x8d\xe1\x9c\xb4\xe2\x80\x8d"); } // [C2, V6]6239test { try toUnicodeFail("\xe2\x80\x8d\xe2\x94\xae\xf3\xa0\x87\x90.\xe0\xb0\x80\xe0\xb1\x8d\xe1\x9c\xb4\xe2\x80\x8d"); } // [C2, V6]
6240test { try toAsciiFail("\xe2\x80\x8d\xe2\x94\xae\xf3\xa0\x87\x90.\xe0\xb0\x80\xe0\xb1\x8d\xe1\x9c\xb4\xe2\x80\x8d", false); } // [C2, V6]
6241test { try toAsciiFail("\xe2\x80\x8d\xe2\x94\xae\xf3\xa0\x87\x90.\xe0\xb0\x80\xe0\xb1\x8d\xe1\x9c\xb4\xe2\x80\x8d", true); } // [V6]
2714test { try toUnicodeFail("xn--kxh.xn--eoc8m432a"); } // [V6]6242test { try toUnicodeFail("xn--kxh.xn--eoc8m432a"); } // [V6]
6243test { try toAsciiFail("xn--kxh.xn--eoc8m432a", false); } // [V6]
6244test { try toAsciiFail("xn--kxh.xn--eoc8m432a", true); } // [V6]
2715test { try toUnicodeFail("xn--1ug04r.xn--eoc8m432a40i"); } // [C2, V6]6245test { try toUnicodeFail("xn--1ug04r.xn--eoc8m432a40i"); } // [C2, V6]
6246test { try toAsciiFail("xn--1ug04r.xn--eoc8m432a40i", false); } // [C2, V6]
6247test { try toAsciiFail("xn--1ug04r.xn--eoc8m432a40i", true); } // [C2, V6]
2716test { try toUnicodeFail("\xf2\xb9\x9a\xaa\xef\xbd\xa1\xf0\x9f\x84\x82"); } // [V7, U1]6248test { try toUnicodeFail("\xf2\xb9\x9a\xaa\xef\xbd\xa1\xf0\x9f\x84\x82"); } // [V7, U1]
6249test { try toAsciiFail("\xf2\xb9\x9a\xaa\xef\xbd\xa1\xf0\x9f\x84\x82", false); } // [V7, U1]
6250test { try toAsciiFail("\xf2\xb9\x9a\xaa\xef\xbd\xa1\xf0\x9f\x84\x82", true); } // [V7, U1]
2717test { try toUnicodeFail("\xf2\xb9\x9a\xaa\xe3\x80\x821,"); } // [V7, U1]6251test { try toUnicodeFail("\xf2\xb9\x9a\xaa\xe3\x80\x821,"); } // [V7, U1]
6252test { try toAsciiFail("\xf2\xb9\x9a\xaa\xe3\x80\x821,", false); } // [V7, U1]
6253test { try toAsciiFail("\xf2\xb9\x9a\xaa\xe3\x80\x821,", true); } // [V7, U1]
2718test { try toUnicodeFail("xn--n433d.1,"); } // [V7, U1]6254test { try toUnicodeFail("xn--n433d.1,"); } // [V7, U1]
6255test { try toAsciiFail("xn--n433d.1,", false); } // [V7, U1]
6256test { try toAsciiFail("xn--n433d.1,", true); } // [V7, U1]
2719test { try toUnicodeFail("xn--n433d.xn--v07h"); } // [V7]6257test { try toUnicodeFail("xn--n433d.xn--v07h"); } // [V7]
6258test { try toAsciiFail("xn--n433d.xn--v07h", false); } // [V7]
6259test { try toAsciiFail("xn--n433d.xn--v07h", true); } // [V7]
2720test { try toUnicodeFail("\xf0\x91\x8d\xa8\xe5\x88\x8d.\xf0\x9f\x9b\xa6"); } // [V6]6260test { try toUnicodeFail("\xf0\x91\x8d\xa8\xe5\x88\x8d.\xf0\x9f\x9b\xa6"); } // [V6]
6261test { try toAsciiFail("\xf0\x91\x8d\xa8\xe5\x88\x8d.\xf0\x9f\x9b\xa6", false); } // [V6]
6262test { try toAsciiFail("\xf0\x91\x8d\xa8\xe5\x88\x8d.\xf0\x9f\x9b\xa6", true); } // [V6]
2721test { try toUnicodeFail("xn--rbry728b.xn--y88h"); } // [V6]6263test { try toUnicodeFail("xn--rbry728b.xn--y88h"); } // [V6]
6264test { try toAsciiFail("xn--rbry728b.xn--y88h", false); } // [V6]
6265test { try toAsciiFail("xn--rbry728b.xn--y88h", true); } // [V6]
2722test { try toUnicodeFail("\xf3\xa0\x8c\x8f3\xef\xbd\xa1\xe1\xaf\xb1\xf0\x9d\x9f\x92"); } // [V6, V7]6266test { try toUnicodeFail("\xf3\xa0\x8c\x8f3\xef\xbd\xa1\xe1\xaf\xb1\xf0\x9d\x9f\x92"); } // [V6, V7]
6267test { try toAsciiFail("\xf3\xa0\x8c\x8f3\xef\xbd\xa1\xe1\xaf\xb1\xf0\x9d\x9f\x92", false); } // [V6, V7]
6268test { try toAsciiFail("\xf3\xa0\x8c\x8f3\xef\xbd\xa1\xe1\xaf\xb1\xf0\x9d\x9f\x92", true); } // [V6, V7]
2723test { try toUnicodeFail("\xf3\xa0\x8c\x8f3\xe3\x80\x82\xe1\xaf\xb14"); } // [V6, V7]6269test { try toUnicodeFail("\xf3\xa0\x8c\x8f3\xe3\x80\x82\xe1\xaf\xb14"); } // [V6, V7]
6270test { try toAsciiFail("\xf3\xa0\x8c\x8f3\xe3\x80\x82\xe1\xaf\xb14", false); } // [V6, V7]
6271test { try toAsciiFail("\xf3\xa0\x8c\x8f3\xe3\x80\x82\xe1\xaf\xb14", true); } // [V6, V7]
2724test { try toUnicodeFail("xn--3-ib31m.xn--4-pql"); } // [V6, V7]6272test { try toUnicodeFail("xn--3-ib31m.xn--4-pql"); } // [V6, V7]
6273test { try toAsciiFail("xn--3-ib31m.xn--4-pql", false); } // [V6, V7]
6274test { try toAsciiFail("xn--3-ib31m.xn--4-pql", true); } // [V6, V7]
2725test { try toUnicodeFail("\xda\x87\xef\xbc\x96\xe1\x82\xb4\xe8\xbe\x98.\xef\xb4\xa2\xda\x87\xe2\x80\x8c"); } // [B2, B3, C1]6275test { try toUnicodeFail("\xda\x87\xef\xbc\x96\xe1\x82\xb4\xe8\xbe\x98.\xef\xb4\xa2\xda\x87\xe2\x80\x8c"); } // [B2, B3, C1]
6276test { try toAsciiFail("\xda\x87\xef\xbc\x96\xe1\x82\xb4\xe8\xbe\x98.\xef\xb4\xa2\xda\x87\xe2\x80\x8c", false); } // [B2, B3, C1]
6277test { try toAsciiFail("\xda\x87\xef\xbc\x96\xe1\x82\xb4\xe8\xbe\x98.\xef\xb4\xa2\xda\x87\xe2\x80\x8c", true); } // [B2, B3]
2726test { try toUnicodeFail("\xda\x876\xe1\x82\xb4\xe8\xbe\x98.\xd8\xb5\xd9\x8a\xda\x87\xe2\x80\x8c"); } // [B2, B3, C1]6278test { try toUnicodeFail("\xda\x876\xe1\x82\xb4\xe8\xbe\x98.\xd8\xb5\xd9\x8a\xda\x87\xe2\x80\x8c"); } // [B2, B3, C1]
6279test { try toAsciiFail("\xda\x876\xe1\x82\xb4\xe8\xbe\x98.\xd8\xb5\xd9\x8a\xda\x87\xe2\x80\x8c", false); } // [B2, B3, C1]
6280test { try toAsciiFail("\xda\x876\xe1\x82\xb4\xe8\xbe\x98.\xd8\xb5\xd9\x8a\xda\x87\xe2\x80\x8c", true); } // [B2, B3]
2727test { try toUnicodeFail("\xda\x876\xe2\xb4\x94\xe8\xbe\x98.\xd8\xb5\xd9\x8a\xda\x87\xe2\x80\x8c"); } // [B2, B3, C1]6281test { try toUnicodeFail("\xda\x876\xe2\xb4\x94\xe8\xbe\x98.\xd8\xb5\xd9\x8a\xda\x87\xe2\x80\x8c"); } // [B2, B3, C1]
6282test { try toAsciiFail("\xda\x876\xe2\xb4\x94\xe8\xbe\x98.\xd8\xb5\xd9\x8a\xda\x87\xe2\x80\x8c", false); } // [B2, B3, C1]
6283test { try toAsciiFail("\xda\x876\xe2\xb4\x94\xe8\xbe\x98.\xd8\xb5\xd9\x8a\xda\x87\xe2\x80\x8c", true); } // [B2, B3]
2728test { try toUnicodeFail("xn--6-gsc2270akm6f.xn--0gb6bxk"); } // [B2, B3]6284test { try toUnicodeFail("xn--6-gsc2270akm6f.xn--0gb6bxk"); } // [B2, B3]
6285test { try toAsciiFail("xn--6-gsc2270akm6f.xn--0gb6bxk", false); } // [B2, B3]
6286test { try toAsciiFail("xn--6-gsc2270akm6f.xn--0gb6bxk", true); } // [B2, B3]
2729test { try toUnicodeFail("xn--6-gsc2270akm6f.xn--0gb6bxkx18g"); } // [B2, B3, C1]6287test { try toUnicodeFail("xn--6-gsc2270akm6f.xn--0gb6bxkx18g"); } // [B2, B3, C1]
6288test { try toAsciiFail("xn--6-gsc2270akm6f.xn--0gb6bxkx18g", false); } // [B2, B3, C1]
6289test { try toAsciiFail("xn--6-gsc2270akm6f.xn--0gb6bxkx18g", true); } // [B2, B3, C1]
2730test { try toUnicodeFail("\xda\x87\xef\xbc\x96\xe2\xb4\x94\xe8\xbe\x98.\xef\xb4\xa2\xda\x87\xe2\x80\x8c"); } // [B2, B3, C1]6290test { try toUnicodeFail("\xda\x87\xef\xbc\x96\xe2\xb4\x94\xe8\xbe\x98.\xef\xb4\xa2\xda\x87\xe2\x80\x8c"); } // [B2, B3, C1]
6291test { try toAsciiFail("\xda\x87\xef\xbc\x96\xe2\xb4\x94\xe8\xbe\x98.\xef\xb4\xa2\xda\x87\xe2\x80\x8c", false); } // [B2, B3, C1]
6292test { try toAsciiFail("\xda\x87\xef\xbc\x96\xe2\xb4\x94\xe8\xbe\x98.\xef\xb4\xa2\xda\x87\xe2\x80\x8c", true); } // [B2, B3]
2731test { try toUnicodeFail("xn--6-gsc039eqq6k.xn--0gb6bxk"); } // [B2, B3, V7]6293test { try toUnicodeFail("xn--6-gsc039eqq6k.xn--0gb6bxk"); } // [B2, B3, V7]
6294test { try toAsciiFail("xn--6-gsc039eqq6k.xn--0gb6bxk", false); } // [B2, B3, V7]
6295test { try toAsciiFail("xn--6-gsc039eqq6k.xn--0gb6bxk", true); } // [B2, B3, V7]
2732test { try toUnicodeFail("xn--6-gsc039eqq6k.xn--0gb6bxkx18g"); } // [B2, B3, C1, V7]6296test { try toUnicodeFail("xn--6-gsc039eqq6k.xn--0gb6bxkx18g"); } // [B2, B3, C1, V7]
6297test { try toAsciiFail("xn--6-gsc039eqq6k.xn--0gb6bxkx18g", false); } // [B2, B3, C1, V7]
6298test { try toAsciiFail("xn--6-gsc039eqq6k.xn--0gb6bxkx18g", true); } // [B2, B3, C1, V7]
2733test { try toUnicodeFail("\xf3\xa0\x84\x8d.\xf0\x90\xae\xad\xf0\x9e\xb0\xac\xf2\xbb\xab\x9e\xdb\xb9"); } // [B2, V7, X4_2]6299test { try toUnicodeFail("\xf3\xa0\x84\x8d.\xf0\x90\xae\xad\xf0\x9e\xb0\xac\xf2\xbb\xab\x9e\xdb\xb9"); } // [B2, V7, X4_2]
6300test { try toAsciiFail("\xf3\xa0\x84\x8d.\xf0\x90\xae\xad\xf0\x9e\xb0\xac\xf2\xbb\xab\x9e\xdb\xb9", false); } // [B2, V7, A4_2]
6301test { try toAsciiFail("\xf3\xa0\x84\x8d.\xf0\x90\xae\xad\xf0\x9e\xb0\xac\xf2\xbb\xab\x9e\xdb\xb9", true); } // [B2, V7, A4_2]
2734test { try toUnicodeFail(".xn--mmb3954kd0uf1zx7f"); } // [B2, V7, X4_2]6302test { try toUnicodeFail(".xn--mmb3954kd0uf1zx7f"); } // [B2, V7, X4_2]
6303test { try toAsciiFail(".xn--mmb3954kd0uf1zx7f", false); } // [B2, V7, A4_2]
6304test { try toAsciiFail(".xn--mmb3954kd0uf1zx7f", true); } // [B2, V7, A4_2]
2735test { try toUnicodeFail("\xea\xa1\xbd\xe2\x89\xaf\xef\xbc\x8e\xf2\xbb\xb2\x80\xf2\x92\xb3\x84"); } // [V7]6305test { try toUnicodeFail("\xea\xa1\xbd\xe2\x89\xaf\xef\xbc\x8e\xf2\xbb\xb2\x80\xf2\x92\xb3\x84"); } // [V7]
6306test { try toAsciiFail("\xea\xa1\xbd\xe2\x89\xaf\xef\xbc\x8e\xf2\xbb\xb2\x80\xf2\x92\xb3\x84", false); } // [V7]
6307test { try toAsciiFail("\xea\xa1\xbd\xe2\x89\xaf\xef\xbc\x8e\xf2\xbb\xb2\x80\xf2\x92\xb3\x84", true); } // [V7]
2736test { try toUnicodeFail("\xea\xa1\xbd>\xcc\xb8\xef\xbc\x8e\xf2\xbb\xb2\x80\xf2\x92\xb3\x84"); } // [V7]6308test { try toUnicodeFail("\xea\xa1\xbd>\xcc\xb8\xef\xbc\x8e\xf2\xbb\xb2\x80\xf2\x92\xb3\x84"); } // [V7]
6309test { try toAsciiFail("\xea\xa1\xbd>\xcc\xb8\xef\xbc\x8e\xf2\xbb\xb2\x80\xf2\x92\xb3\x84", false); } // [V7]
6310test { try toAsciiFail("\xea\xa1\xbd>\xcc\xb8\xef\xbc\x8e\xf2\xbb\xb2\x80\xf2\x92\xb3\x84", true); } // [V7]
2737test { try toUnicodeFail("\xea\xa1\xbd\xe2\x89\xaf.\xf2\xbb\xb2\x80\xf2\x92\xb3\x84"); } // [V7]6311test { try toUnicodeFail("\xea\xa1\xbd\xe2\x89\xaf.\xf2\xbb\xb2\x80\xf2\x92\xb3\x84"); } // [V7]
6312test { try toAsciiFail("\xea\xa1\xbd\xe2\x89\xaf.\xf2\xbb\xb2\x80\xf2\x92\xb3\x84", false); } // [V7]
6313test { try toAsciiFail("\xea\xa1\xbd\xe2\x89\xaf.\xf2\xbb\xb2\x80\xf2\x92\xb3\x84", true); } // [V7]
2738test { try toUnicodeFail("\xea\xa1\xbd>\xcc\xb8.\xf2\xbb\xb2\x80\xf2\x92\xb3\x84"); } // [V7]6314test { try toUnicodeFail("\xea\xa1\xbd>\xcc\xb8.\xf2\xbb\xb2\x80\xf2\x92\xb3\x84"); } // [V7]
6315test { try toAsciiFail("\xea\xa1\xbd>\xcc\xb8.\xf2\xbb\xb2\x80\xf2\x92\xb3\x84", false); } // [V7]
6316test { try toAsciiFail("\xea\xa1\xbd>\xcc\xb8.\xf2\xbb\xb2\x80\xf2\x92\xb3\x84", true); } // [V7]
2739test { try toUnicodeFail("xn--hdh8193c.xn--5z40cp629b"); } // [V7]6317test { try toUnicodeFail("xn--hdh8193c.xn--5z40cp629b"); } // [V7]
6318test { try toAsciiFail("xn--hdh8193c.xn--5z40cp629b", false); } // [V7]
6319test { try toAsciiFail("xn--hdh8193c.xn--5z40cp629b", true); } // [V7]
2740test { try toUnicodeFail("\xcf\x82\xe1\x83\x9d\xd9\xbb.\xcf\x82\xdc\x94"); } // [B5, B6]6320test { try toUnicodeFail("\xcf\x82\xe1\x83\x9d\xd9\xbb.\xcf\x82\xdc\x94"); } // [B5, B6]
6321test { try toAsciiFail("\xcf\x82\xe1\x83\x9d\xd9\xbb.\xcf\x82\xdc\x94", false); } // [B5, B6]
6322test { try toAsciiFail("\xcf\x82\xe1\x83\x9d\xd9\xbb.\xcf\x82\xdc\x94", true); } // [B5, B6]
2741test { try toUnicodeFail("\xce\xa3\xe1\xb2\x9d\xd9\xbb.\xce\xa3\xdc\x94"); } // [B5, B6]6323test { try toUnicodeFail("\xce\xa3\xe1\xb2\x9d\xd9\xbb.\xce\xa3\xdc\x94"); } // [B5, B6]
6324test { try toAsciiFail("\xce\xa3\xe1\xb2\x9d\xd9\xbb.\xce\xa3\xdc\x94", false); } // [B5, B6]
6325test { try toAsciiFail("\xce\xa3\xe1\xb2\x9d\xd9\xbb.\xce\xa3\xdc\x94", true); } // [B5, B6]
2742test { try toUnicodeFail("\xcf\x83\xe1\x83\x9d\xd9\xbb.\xcf\x83\xdc\x94"); } // [B5, B6]6326test { try toUnicodeFail("\xcf\x83\xe1\x83\x9d\xd9\xbb.\xcf\x83\xdc\x94"); } // [B5, B6]
6327test { try toAsciiFail("\xcf\x83\xe1\x83\x9d\xd9\xbb.\xcf\x83\xdc\x94", false); } // [B5, B6]
6328test { try toAsciiFail("\xcf\x83\xe1\x83\x9d\xd9\xbb.\xcf\x83\xdc\x94", true); } // [B5, B6]
2743test { try toUnicodeFail("\xce\xa3\xe1\x83\x9d\xd9\xbb.\xcf\x83\xdc\x94"); } // [B5, B6]6329test { try toUnicodeFail("\xce\xa3\xe1\x83\x9d\xd9\xbb.\xcf\x83\xdc\x94"); } // [B5, B6]
6330test { try toAsciiFail("\xce\xa3\xe1\x83\x9d\xd9\xbb.\xcf\x83\xdc\x94", false); } // [B5, B6]
6331test { try toAsciiFail("\xce\xa3\xe1\x83\x9d\xd9\xbb.\xcf\x83\xdc\x94", true); } // [B5, B6]
2744test { try toUnicodeFail("xn--4xa60l26n.xn--4xa21o"); } // [B5, B6]6332test { try toUnicodeFail("xn--4xa60l26n.xn--4xa21o"); } // [B5, B6]
6333test { try toAsciiFail("xn--4xa60l26n.xn--4xa21o", false); } // [B5, B6]
6334test { try toAsciiFail("xn--4xa60l26n.xn--4xa21o", true); } // [B5, B6]
2745test { try toUnicodeFail("\xce\xa3\xe1\x83\x9d\xd9\xbb.\xcf\x82\xdc\x94"); } // [B5, B6]6335test { try toUnicodeFail("\xce\xa3\xe1\x83\x9d\xd9\xbb.\xcf\x82\xdc\x94"); } // [B5, B6]
6336test { try toAsciiFail("\xce\xa3\xe1\x83\x9d\xd9\xbb.\xcf\x82\xdc\x94", false); } // [B5, B6]
6337test { try toAsciiFail("\xce\xa3\xe1\x83\x9d\xd9\xbb.\xcf\x82\xdc\x94", true); } // [B5, B6]
2746test { try toUnicodeFail("\xcf\x83\xe1\x83\x9d\xd9\xbb.\xcf\x82\xdc\x94"); } // [B5, B6]6338test { try toUnicodeFail("\xcf\x83\xe1\x83\x9d\xd9\xbb.\xcf\x82\xdc\x94"); } // [B5, B6]
6339test { try toAsciiFail("\xcf\x83\xe1\x83\x9d\xd9\xbb.\xcf\x82\xdc\x94", false); } // [B5, B6]
6340test { try toAsciiFail("\xcf\x83\xe1\x83\x9d\xd9\xbb.\xcf\x82\xdc\x94", true); } // [B5, B6]
2747test { try toUnicodeFail("xn--4xa60l26n.xn--3xa41o"); } // [B5, B6]6341test { try toUnicodeFail("xn--4xa60l26n.xn--3xa41o"); } // [B5, B6]
6342test { try toAsciiFail("xn--4xa60l26n.xn--3xa41o", false); } // [B5, B6]
6343test { try toAsciiFail("xn--4xa60l26n.xn--3xa41o", true); } // [B5, B6]
2748test { try toUnicodeFail("xn--3xa80l26n.xn--3xa41o"); } // [B5, B6]6344test { try toUnicodeFail("xn--3xa80l26n.xn--3xa41o"); } // [B5, B6]
6345test { try toAsciiFail("xn--3xa80l26n.xn--3xa41o", false); } // [B5, B6]
6346test { try toAsciiFail("xn--3xa80l26n.xn--3xa41o", true); } // [B5, B6]
2749test { try toUnicodeFail("\xce\xa3\xe1\x83\x9d\xd9\xbb.\xce\xa3\xdc\x94"); } // [B5, B6]6347test { try toUnicodeFail("\xce\xa3\xe1\x83\x9d\xd9\xbb.\xce\xa3\xdc\x94"); } // [B5, B6]
6348test { try toAsciiFail("\xce\xa3\xe1\x83\x9d\xd9\xbb.\xce\xa3\xdc\x94", false); } // [B5, B6]
6349test { try toAsciiFail("\xce\xa3\xe1\x83\x9d\xd9\xbb.\xce\xa3\xdc\x94", true); } // [B5, B6]
2750test { try toUnicodeFail("\xf2\x84\x96\x9a\xdd\x88\xf0\xa0\x84\xaf\xdd\x9f\xef\xbd\xa1\xf3\xa0\x9b\xa9"); } // [B1, B5, B6, V7]6350test { try toUnicodeFail("\xf2\x84\x96\x9a\xdd\x88\xf0\xa0\x84\xaf\xdd\x9f\xef\xbd\xa1\xf3\xa0\x9b\xa9"); } // [B1, B5, B6, V7]
6351test { try toAsciiFail("\xf2\x84\x96\x9a\xdd\x88\xf0\xa0\x84\xaf\xdd\x9f\xef\xbd\xa1\xf3\xa0\x9b\xa9", false); } // [B1, B5, B6, V7]
6352test { try toAsciiFail("\xf2\x84\x96\x9a\xdd\x88\xf0\xa0\x84\xaf\xdd\x9f\xef\xbd\xa1\xf3\xa0\x9b\xa9", true); } // [B1, B5, B6, V7]
2751test { try toUnicodeFail("\xf2\x84\x96\x9a\xdd\x88\xf0\xa0\x84\xaf\xdd\x9f\xe3\x80\x82\xf3\xa0\x9b\xa9"); } // [B1, B5, B6, V7]6353test { try toUnicodeFail("\xf2\x84\x96\x9a\xdd\x88\xf0\xa0\x84\xaf\xdd\x9f\xe3\x80\x82\xf3\xa0\x9b\xa9"); } // [B1, B5, B6, V7]
6354test { try toAsciiFail("\xf2\x84\x96\x9a\xdd\x88\xf0\xa0\x84\xaf\xdd\x9f\xe3\x80\x82\xf3\xa0\x9b\xa9", false); } // [B1, B5, B6, V7]
6355test { try toAsciiFail("\xf2\x84\x96\x9a\xdd\x88\xf0\xa0\x84\xaf\xdd\x9f\xe3\x80\x82\xf3\xa0\x9b\xa9", true); } // [B1, B5, B6, V7]
2752test { try toUnicodeFail("xn--vob0c4369twfv8b.xn--kl46e"); } // [B1, B5, B6, V7]6356test { try toUnicodeFail("xn--vob0c4369twfv8b.xn--kl46e"); } // [B1, B5, B6, V7]
6357test { try toAsciiFail("xn--vob0c4369twfv8b.xn--kl46e", false); } // [B1, B5, B6, V7]
6358test { try toAsciiFail("xn--vob0c4369twfv8b.xn--kl46e", true); } // [B1, B5, B6, V7]
2753test { try toUnicodeFail("\xf3\xa0\xb3\x9b\xef\xbc\x8e\xe2\x80\x8d\xe4\xa4\xab\xe2\x89\xa0\xe1\x82\xbe"); } // [C2, V7]6359test { try toUnicodeFail("\xf3\xa0\xb3\x9b\xef\xbc\x8e\xe2\x80\x8d\xe4\xa4\xab\xe2\x89\xa0\xe1\x82\xbe"); } // [C2, V7]
6360test { try toAsciiFail("\xf3\xa0\xb3\x9b\xef\xbc\x8e\xe2\x80\x8d\xe4\xa4\xab\xe2\x89\xa0\xe1\x82\xbe", false); } // [C2, V7]
6361test { try toAsciiFail("\xf3\xa0\xb3\x9b\xef\xbc\x8e\xe2\x80\x8d\xe4\xa4\xab\xe2\x89\xa0\xe1\x82\xbe", true); } // [V7]
2754test { try toUnicodeFail("\xf3\xa0\xb3\x9b\xef\xbc\x8e\xe2\x80\x8d\xe4\xa4\xab=\xcc\xb8\xe1\x82\xbe"); } // [C2, V7]6362test { try toUnicodeFail("\xf3\xa0\xb3\x9b\xef\xbc\x8e\xe2\x80\x8d\xe4\xa4\xab=\xcc\xb8\xe1\x82\xbe"); } // [C2, V7]
6363test { try toAsciiFail("\xf3\xa0\xb3\x9b\xef\xbc\x8e\xe2\x80\x8d\xe4\xa4\xab=\xcc\xb8\xe1\x82\xbe", false); } // [C2, V7]
6364test { try toAsciiFail("\xf3\xa0\xb3\x9b\xef\xbc\x8e\xe2\x80\x8d\xe4\xa4\xab=\xcc\xb8\xe1\x82\xbe", true); } // [V7]
2755test { try toUnicodeFail("\xf3\xa0\xb3\x9b.\xe2\x80\x8d\xe4\xa4\xab\xe2\x89\xa0\xe1\x82\xbe"); } // [C2, V7]6365test { try toUnicodeFail("\xf3\xa0\xb3\x9b.\xe2\x80\x8d\xe4\xa4\xab\xe2\x89\xa0\xe1\x82\xbe"); } // [C2, V7]
6366test { try toAsciiFail("\xf3\xa0\xb3\x9b.\xe2\x80\x8d\xe4\xa4\xab\xe2\x89\xa0\xe1\x82\xbe", false); } // [C2, V7]
6367test { try toAsciiFail("\xf3\xa0\xb3\x9b.\xe2\x80\x8d\xe4\xa4\xab\xe2\x89\xa0\xe1\x82\xbe", true); } // [V7]
2756test { try toUnicodeFail("\xf3\xa0\xb3\x9b.\xe2\x80\x8d\xe4\xa4\xab=\xcc\xb8\xe1\x82\xbe"); } // [C2, V7]6368test { try toUnicodeFail("\xf3\xa0\xb3\x9b.\xe2\x80\x8d\xe4\xa4\xab=\xcc\xb8\xe1\x82\xbe"); } // [C2, V7]
6369test { try toAsciiFail("\xf3\xa0\xb3\x9b.\xe2\x80\x8d\xe4\xa4\xab=\xcc\xb8\xe1\x82\xbe", false); } // [C2, V7]
6370test { try toAsciiFail("\xf3\xa0\xb3\x9b.\xe2\x80\x8d\xe4\xa4\xab=\xcc\xb8\xe1\x82\xbe", true); } // [V7]
2757test { try toUnicodeFail("\xf3\xa0\xb3\x9b.\xe2\x80\x8d\xe4\xa4\xab=\xcc\xb8\xe2\xb4\x9e"); } // [C2, V7]6371test { try toUnicodeFail("\xf3\xa0\xb3\x9b.\xe2\x80\x8d\xe4\xa4\xab=\xcc\xb8\xe2\xb4\x9e"); } // [C2, V7]
6372test { try toAsciiFail("\xf3\xa0\xb3\x9b.\xe2\x80\x8d\xe4\xa4\xab=\xcc\xb8\xe2\xb4\x9e", false); } // [C2, V7]
6373test { try toAsciiFail("\xf3\xa0\xb3\x9b.\xe2\x80\x8d\xe4\xa4\xab=\xcc\xb8\xe2\xb4\x9e", true); } // [V7]
2758test { try toUnicodeFail("\xf3\xa0\xb3\x9b.\xe2\x80\x8d\xe4\xa4\xab\xe2\x89\xa0\xe2\xb4\x9e"); } // [C2, V7]6374test { try toUnicodeFail("\xf3\xa0\xb3\x9b.\xe2\x80\x8d\xe4\xa4\xab\xe2\x89\xa0\xe2\xb4\x9e"); } // [C2, V7]
6375test { try toAsciiFail("\xf3\xa0\xb3\x9b.\xe2\x80\x8d\xe4\xa4\xab\xe2\x89\xa0\xe2\xb4\x9e", false); } // [C2, V7]
6376test { try toAsciiFail("\xf3\xa0\xb3\x9b.\xe2\x80\x8d\xe4\xa4\xab\xe2\x89\xa0\xe2\xb4\x9e", true); } // [V7]
2759test { try toUnicodeFail("xn--1t56e.xn--1ch153bqvw"); } // [V7]6377test { try toUnicodeFail("xn--1t56e.xn--1ch153bqvw"); } // [V7]
6378test { try toAsciiFail("xn--1t56e.xn--1ch153bqvw", false); } // [V7]
6379test { try toAsciiFail("xn--1t56e.xn--1ch153bqvw", true); } // [V7]
2760test { try toUnicodeFail("xn--1t56e.xn--1ug73gzzpwi3a"); } // [C2, V7]6380test { try toUnicodeFail("xn--1t56e.xn--1ug73gzzpwi3a"); } // [C2, V7]
6381test { try toAsciiFail("xn--1t56e.xn--1ug73gzzpwi3a", false); } // [C2, V7]
6382test { try toAsciiFail("xn--1t56e.xn--1ug73gzzpwi3a", true); } // [C2, V7]
2761test { try toUnicodeFail("\xf3\xa0\xb3\x9b\xef\xbc\x8e\xe2\x80\x8d\xe4\xa4\xab=\xcc\xb8\xe2\xb4\x9e"); } // [C2, V7]6383test { try toUnicodeFail("\xf3\xa0\xb3\x9b\xef\xbc\x8e\xe2\x80\x8d\xe4\xa4\xab=\xcc\xb8\xe2\xb4\x9e"); } // [C2, V7]
6384test { try toAsciiFail("\xf3\xa0\xb3\x9b\xef\xbc\x8e\xe2\x80\x8d\xe4\xa4\xab=\xcc\xb8\xe2\xb4\x9e", false); } // [C2, V7]
6385test { try toAsciiFail("\xf3\xa0\xb3\x9b\xef\xbc\x8e\xe2\x80\x8d\xe4\xa4\xab=\xcc\xb8\xe2\xb4\x9e", true); } // [V7]
2762test { try toUnicodeFail("\xf3\xa0\xb3\x9b\xef\xbc\x8e\xe2\x80\x8d\xe4\xa4\xab\xe2\x89\xa0\xe2\xb4\x9e"); } // [C2, V7]6386test { try toUnicodeFail("\xf3\xa0\xb3\x9b\xef\xbc\x8e\xe2\x80\x8d\xe4\xa4\xab\xe2\x89\xa0\xe2\xb4\x9e"); } // [C2, V7]
6387test { try toAsciiFail("\xf3\xa0\xb3\x9b\xef\xbc\x8e\xe2\x80\x8d\xe4\xa4\xab\xe2\x89\xa0\xe2\xb4\x9e", false); } // [C2, V7]
6388test { try toAsciiFail("\xf3\xa0\xb3\x9b\xef\xbc\x8e\xe2\x80\x8d\xe4\xa4\xab\xe2\x89\xa0\xe2\xb4\x9e", true); } // [V7]
2763test { try toUnicodeFail("xn--1t56e.xn--2nd141ghl2a"); } // [V7]6389test { try toUnicodeFail("xn--1t56e.xn--2nd141ghl2a"); } // [V7]
6390test { try toAsciiFail("xn--1t56e.xn--2nd141ghl2a", false); } // [V7]
6391test { try toAsciiFail("xn--1t56e.xn--2nd141ghl2a", true); } // [V7]
2764test { try toUnicodeFail("xn--1t56e.xn--2nd159e9vb743e"); } // [C2, V7]6392test { try toUnicodeFail("xn--1t56e.xn--2nd159e9vb743e"); } // [C2, V7]
6393test { try toAsciiFail("xn--1t56e.xn--2nd159e9vb743e", false); } // [C2, V7]
6394test { try toAsciiFail("xn--1t56e.xn--2nd159e9vb743e", true); } // [C2, V7]
2765test { try toUnicodeFail("\xf0\x90\xbd\x98\xf0\x91\x88\xb5\xef\xbc\x8e\xf0\x90\xb9\xa3\xf0\x9f\x95\xa5"); } // [B1, B2, B3]6395test { try toUnicodeFail("\xf0\x90\xbd\x98\xf0\x91\x88\xb5\xef\xbc\x8e\xf0\x90\xb9\xa3\xf0\x9f\x95\xa5"); } // [B1, B2, B3]
6396test { try toAsciiFail("\xf0\x90\xbd\x98\xf0\x91\x88\xb5\xef\xbc\x8e\xf0\x90\xb9\xa3\xf0\x9f\x95\xa5", false); } // [B1, B2, B3]
6397test { try toAsciiFail("\xf0\x90\xbd\x98\xf0\x91\x88\xb5\xef\xbc\x8e\xf0\x90\xb9\xa3\xf0\x9f\x95\xa5", true); } // [B1, B2, B3]
2766test { try toUnicodeFail("\xf0\x90\xbd\x98\xf0\x91\x88\xb5.\xf0\x90\xb9\xa3\xf0\x9f\x95\xa5"); } // [B1, B2, B3]6398test { try toUnicodeFail("\xf0\x90\xbd\x98\xf0\x91\x88\xb5.\xf0\x90\xb9\xa3\xf0\x9f\x95\xa5"); } // [B1, B2, B3]
6399test { try toAsciiFail("\xf0\x90\xbd\x98\xf0\x91\x88\xb5.\xf0\x90\xb9\xa3\xf0\x9f\x95\xa5", false); } // [B1, B2, B3]
6400test { try toAsciiFail("\xf0\x90\xbd\x98\xf0\x91\x88\xb5.\xf0\x90\xb9\xa3\xf0\x9f\x95\xa5", true); } // [B1, B2, B3]
2767test { try toUnicodeFail("xn--bv0d02c.xn--bo0dq650b"); } // [B1, B2, B3]6401test { try toUnicodeFail("xn--bv0d02c.xn--bo0dq650b"); } // [B1, B2, B3]
6402test { try toAsciiFail("xn--bv0d02c.xn--bo0dq650b", false); } // [B1, B2, B3]
6403test { try toAsciiFail("xn--bv0d02c.xn--bo0dq650b", true); } // [B1, B2, B3]
2768test { try toUnicodeFail("\xe2\x92\x8a\xe2\x92\x88\xf0\x91\x81\x84\xe3\x80\x829"); } // [V7]6404test { try toUnicodeFail("\xe2\x92\x8a\xe2\x92\x88\xf0\x91\x81\x84\xe3\x80\x829"); } // [V7]
6405test { try toAsciiFail("\xe2\x92\x8a\xe2\x92\x88\xf0\x91\x81\x84\xe3\x80\x829", false); } // [V7]
6406test { try toAsciiFail("\xe2\x92\x8a\xe2\x92\x88\xf0\x91\x81\x84\xe3\x80\x829", true); } // [V7]
2769test { try toUnicodeFail("3.1.\xf0\x91\x81\x84\xe3\x80\x829"); } // [V6]6407test { try toUnicodeFail("3.1.\xf0\x91\x81\x84\xe3\x80\x829"); } // [V6]
6408test { try toAsciiFail("3.1.\xf0\x91\x81\x84\xe3\x80\x829", false); } // [V6]
6409test { try toAsciiFail("3.1.\xf0\x91\x81\x84\xe3\x80\x829", true); } // [V6]
2770test { try toUnicodeFail("3.1.xn--110d.j"); } // [V6]6410test { try toUnicodeFail("3.1.xn--110d.j"); } // [V6]
6411test { try toAsciiFail("3.1.xn--110d.j", false); } // [V6]
6412test { try toAsciiFail("3.1.xn--110d.j", true); } // [V6]
2771test { try toUnicodeFail("xn--tshd3512p.j"); } // [V7]6413test { try toUnicodeFail("xn--tshd3512p.j"); } // [V7]
6414test { try toAsciiFail("xn--tshd3512p.j", false); } // [V7]
6415test { try toAsciiFail("xn--tshd3512p.j", true); } // [V7]
2772test { try toUnicodeFail("-\xe2\x80\x8c\xe2\xb7\xb1\xe2\x89\xae\xef\xbc\x8e\xf0\x90\xb9\xb1\xf2\xad\x8f\xb44\xe2\x82\x89"); } // [B1, C1, V3, V7]6416test { try toUnicodeFail("-\xe2\x80\x8c\xe2\xb7\xb1\xe2\x89\xae\xef\xbc\x8e\xf0\x90\xb9\xb1\xf2\xad\x8f\xb44\xe2\x82\x89"); } // [B1, C1, V3, V7]
6417test { try toAsciiFail("-\xe2\x80\x8c\xe2\xb7\xb1\xe2\x89\xae\xef\xbc\x8e\xf0\x90\xb9\xb1\xf2\xad\x8f\xb44\xe2\x82\x89", false); } // [B1, C1, V3, V7]
6418test { try toAsciiFail("-\xe2\x80\x8c\xe2\xb7\xb1\xe2\x89\xae\xef\xbc\x8e\xf0\x90\xb9\xb1\xf2\xad\x8f\xb44\xe2\x82\x89", true); } // [B1, V3, V7]
2773test { try toUnicodeFail("-\xe2\x80\x8c\xe2\xb7\xb1<\xcc\xb8\xef\xbc\x8e\xf0\x90\xb9\xb1\xf2\xad\x8f\xb44\xe2\x82\x89"); } // [B1, C1, V3, V7]6419test { try toUnicodeFail("-\xe2\x80\x8c\xe2\xb7\xb1<\xcc\xb8\xef\xbc\x8e\xf0\x90\xb9\xb1\xf2\xad\x8f\xb44\xe2\x82\x89"); } // [B1, C1, V3, V7]
6420test { try toAsciiFail("-\xe2\x80\x8c\xe2\xb7\xb1<\xcc\xb8\xef\xbc\x8e\xf0\x90\xb9\xb1\xf2\xad\x8f\xb44\xe2\x82\x89", false); } // [B1, C1, V3, V7]
6421test { try toAsciiFail("-\xe2\x80\x8c\xe2\xb7\xb1<\xcc\xb8\xef\xbc\x8e\xf0\x90\xb9\xb1\xf2\xad\x8f\xb44\xe2\x82\x89", true); } // [B1, V3, V7]
2774test { try toUnicodeFail("-\xe2\x80\x8c\xe2\xb7\xb1\xe2\x89\xae.\xf0\x90\xb9\xb1\xf2\xad\x8f\xb449"); } // [B1, C1, V3, V7]6422test { try toUnicodeFail("-\xe2\x80\x8c\xe2\xb7\xb1\xe2\x89\xae.\xf0\x90\xb9\xb1\xf2\xad\x8f\xb449"); } // [B1, C1, V3, V7]
6423test { try toAsciiFail("-\xe2\x80\x8c\xe2\xb7\xb1\xe2\x89\xae.\xf0\x90\xb9\xb1\xf2\xad\x8f\xb449", false); } // [B1, C1, V3, V7]
6424test { try toAsciiFail("-\xe2\x80\x8c\xe2\xb7\xb1\xe2\x89\xae.\xf0\x90\xb9\xb1\xf2\xad\x8f\xb449", true); } // [B1, V3, V7]
2775test { try toUnicodeFail("-\xe2\x80\x8c\xe2\xb7\xb1<\xcc\xb8.\xf0\x90\xb9\xb1\xf2\xad\x8f\xb449"); } // [B1, C1, V3, V7]6425test { try toUnicodeFail("-\xe2\x80\x8c\xe2\xb7\xb1<\xcc\xb8.\xf0\x90\xb9\xb1\xf2\xad\x8f\xb449"); } // [B1, C1, V3, V7]
6426test { try toAsciiFail("-\xe2\x80\x8c\xe2\xb7\xb1<\xcc\xb8.\xf0\x90\xb9\xb1\xf2\xad\x8f\xb449", false); } // [B1, C1, V3, V7]
6427test { try toAsciiFail("-\xe2\x80\x8c\xe2\xb7\xb1<\xcc\xb8.\xf0\x90\xb9\xb1\xf2\xad\x8f\xb449", true); } // [B1, V3, V7]
2776test { try toUnicodeFail("xn----ngo823c.xn--49-ki3om2611f"); } // [B1, V3, V7]6428test { try toUnicodeFail("xn----ngo823c.xn--49-ki3om2611f"); } // [B1, V3, V7]
6429test { try toAsciiFail("xn----ngo823c.xn--49-ki3om2611f", false); } // [B1, V3, V7]
6430test { try toAsciiFail("xn----ngo823c.xn--49-ki3om2611f", true); } // [B1, V3, V7]
2777test { try toUnicodeFail("xn----sgn20i14s.xn--49-ki3om2611f"); } // [B1, C1, V3, V7]6431test { try toUnicodeFail("xn----sgn20i14s.xn--49-ki3om2611f"); } // [B1, C1, V3, V7]
6432test { try toAsciiFail("xn----sgn20i14s.xn--49-ki3om2611f", false); } // [B1, C1, V3, V7]
6433test { try toAsciiFail("xn----sgn20i14s.xn--49-ki3om2611f", true); } // [B1, C1, V3, V7]
2778test { try toUnicodeFail("-\xe2\x89\xaf\xeb\x94\xbe\xef\xbd\xa1\xe0\xa1\x87"); } // [B1, V3]6434test { try toUnicodeFail("-\xe2\x89\xaf\xeb\x94\xbe\xef\xbd\xa1\xe0\xa1\x87"); } // [B1, V3]
6435test { try toAsciiFail("-\xe2\x89\xaf\xeb\x94\xbe\xef\xbd\xa1\xe0\xa1\x87", false); } // [B1, V3]
6436test { try toAsciiFail("-\xe2\x89\xaf\xeb\x94\xbe\xef\xbd\xa1\xe0\xa1\x87", true); } // [B1, V3]
2779test { try toUnicodeFail("->\xcc\xb8\xe1\x84\x84\xe1\x85\xa1\xe1\x86\xb5\xef\xbd\xa1\xe0\xa1\x87"); } // [B1, V3]6437test { try toUnicodeFail("->\xcc\xb8\xe1\x84\x84\xe1\x85\xa1\xe1\x86\xb5\xef\xbd\xa1\xe0\xa1\x87"); } // [B1, V3]
6438test { try toAsciiFail("->\xcc\xb8\xe1\x84\x84\xe1\x85\xa1\xe1\x86\xb5\xef\xbd\xa1\xe0\xa1\x87", false); } // [B1, V3]
6439test { try toAsciiFail("->\xcc\xb8\xe1\x84\x84\xe1\x85\xa1\xe1\x86\xb5\xef\xbd\xa1\xe0\xa1\x87", true); } // [B1, V3]
2780test { try toUnicodeFail("-\xe2\x89\xaf\xeb\x94\xbe\xe3\x80\x82\xe0\xa1\x87"); } // [B1, V3]6440test { try toUnicodeFail("-\xe2\x89\xaf\xeb\x94\xbe\xe3\x80\x82\xe0\xa1\x87"); } // [B1, V3]
6441test { try toAsciiFail("-\xe2\x89\xaf\xeb\x94\xbe\xe3\x80\x82\xe0\xa1\x87", false); } // [B1, V3]
6442test { try toAsciiFail("-\xe2\x89\xaf\xeb\x94\xbe\xe3\x80\x82\xe0\xa1\x87", true); } // [B1, V3]
2781test { try toUnicodeFail("->\xcc\xb8\xe1\x84\x84\xe1\x85\xa1\xe1\x86\xb5\xe3\x80\x82\xe0\xa1\x87"); } // [B1, V3]6443test { try toUnicodeFail("->\xcc\xb8\xe1\x84\x84\xe1\x85\xa1\xe1\x86\xb5\xe3\x80\x82\xe0\xa1\x87"); } // [B1, V3]
6444test { try toAsciiFail("->\xcc\xb8\xe1\x84\x84\xe1\x85\xa1\xe1\x86\xb5\xe3\x80\x82\xe0\xa1\x87", false); } // [B1, V3]
6445test { try toAsciiFail("->\xcc\xb8\xe1\x84\x84\xe1\x85\xa1\xe1\x86\xb5\xe3\x80\x82\xe0\xa1\x87", true); } // [B1, V3]
2782test { try toUnicodeFail("xn----pgow547d.xn--5vb"); } // [B1, V3]6446test { try toUnicodeFail("xn----pgow547d.xn--5vb"); } // [B1, V3]
6447test { try toAsciiFail("xn----pgow547d.xn--5vb", false); } // [B1, V3]
6448test { try toAsciiFail("xn----pgow547d.xn--5vb", true); } // [B1, V3]
2783test { try toUnicodeFail("\xf0\x91\x99\xa2\xe2\x92\x88\xf0\x90\xb9\xa0-\xef\xbd\xa1\xf3\xa0\x97\x90\xe2\x80\x8c"); } // [B1, C1, V3, V7]6449test { try toUnicodeFail("\xf0\x91\x99\xa2\xe2\x92\x88\xf0\x90\xb9\xa0-\xef\xbd\xa1\xf3\xa0\x97\x90\xe2\x80\x8c"); } // [B1, C1, V3, V7]
6450test { try toAsciiFail("\xf0\x91\x99\xa2\xe2\x92\x88\xf0\x90\xb9\xa0-\xef\xbd\xa1\xf3\xa0\x97\x90\xe2\x80\x8c", false); } // [B1, C1, V3, V7]
6451test { try toAsciiFail("\xf0\x91\x99\xa2\xe2\x92\x88\xf0\x90\xb9\xa0-\xef\xbd\xa1\xf3\xa0\x97\x90\xe2\x80\x8c", true); } // [B1, V3, V7]
2784test { try toUnicodeFail("\xf0\x91\x99\xa21.\xf0\x90\xb9\xa0-\xe3\x80\x82\xf3\xa0\x97\x90\xe2\x80\x8c"); } // [B1, C1, V3, V7]6452test { try toUnicodeFail("\xf0\x91\x99\xa21.\xf0\x90\xb9\xa0-\xe3\x80\x82\xf3\xa0\x97\x90\xe2\x80\x8c"); } // [B1, C1, V3, V7]
6453test { try toAsciiFail("\xf0\x91\x99\xa21.\xf0\x90\xb9\xa0-\xe3\x80\x82\xf3\xa0\x97\x90\xe2\x80\x8c", false); } // [B1, C1, V3, V7]
6454test { try toAsciiFail("\xf0\x91\x99\xa21.\xf0\x90\xb9\xa0-\xe3\x80\x82\xf3\xa0\x97\x90\xe2\x80\x8c", true); } // [B1, V3, V7]
2785test { try toUnicodeFail("xn--1-bf0j.xn----516i.xn--jd46e"); } // [B1, V3, V7]6455test { try toUnicodeFail("xn--1-bf0j.xn----516i.xn--jd46e"); } // [B1, V3, V7]
6456test { try toAsciiFail("xn--1-bf0j.xn----516i.xn--jd46e", false); } // [B1, V3, V7]
6457test { try toAsciiFail("xn--1-bf0j.xn----516i.xn--jd46e", true); } // [B1, V3, V7]
2786test { try toUnicodeFail("xn--1-bf0j.xn----516i.xn--0ug23321l"); } // [B1, C1, V3, V7]6458test { try toUnicodeFail("xn--1-bf0j.xn----516i.xn--0ug23321l"); } // [B1, C1, V3, V7]
6459test { try toAsciiFail("xn--1-bf0j.xn----516i.xn--0ug23321l", false); } // [B1, C1, V3, V7]
6460test { try toAsciiFail("xn--1-bf0j.xn----516i.xn--0ug23321l", true); } // [B1, C1, V3, V7]
2787test { try toUnicodeFail("xn----dcpy090hiyg.xn--jd46e"); } // [B1, V3, V7]6461test { try toUnicodeFail("xn----dcpy090hiyg.xn--jd46e"); } // [B1, V3, V7]
6462test { try toAsciiFail("xn----dcpy090hiyg.xn--jd46e", false); } // [B1, V3, V7]
6463test { try toAsciiFail("xn----dcpy090hiyg.xn--jd46e", true); } // [B1, V3, V7]
2788test { try toUnicodeFail("xn----dcpy090hiyg.xn--0ug23321l"); } // [B1, C1, V3, V7]6464test { try toUnicodeFail("xn----dcpy090hiyg.xn--0ug23321l"); } // [B1, C1, V3, V7]
6465test { try toAsciiFail("xn----dcpy090hiyg.xn--0ug23321l", false); } // [B1, C1, V3, V7]
6466test { try toAsciiFail("xn----dcpy090hiyg.xn--0ug23321l", true); } // [B1, C1, V3, V7]
2789test { try toUnicodeFail("\xcd\x8a\xef\xbc\x8e\xf0\x90\xa8\x8e"); } // [V6]6467test { try toUnicodeFail("\xcd\x8a\xef\xbc\x8e\xf0\x90\xa8\x8e"); } // [V6]
6468test { try toAsciiFail("\xcd\x8a\xef\xbc\x8e\xf0\x90\xa8\x8e", false); } // [V6]
6469test { try toAsciiFail("\xcd\x8a\xef\xbc\x8e\xf0\x90\xa8\x8e", true); } // [V6]
2790test { try toUnicodeFail("\xcd\x8a.\xf0\x90\xa8\x8e"); } // [V6]6470test { try toUnicodeFail("\xcd\x8a.\xf0\x90\xa8\x8e"); } // [V6]
6471test { try toAsciiFail("\xcd\x8a.\xf0\x90\xa8\x8e", false); } // [V6]
6472test { try toAsciiFail("\xcd\x8a.\xf0\x90\xa8\x8e", true); } // [V6]
2791test { try toUnicodeFail("xn--oua.xn--mr9c"); } // [V6]6473test { try toUnicodeFail("xn--oua.xn--mr9c"); } // [V6]
6474test { try toAsciiFail("xn--oua.xn--mr9c", false); } // [V6]
6475test { try toAsciiFail("xn--oua.xn--mr9c", true); } // [V6]
2792test { try toUnicodeFail("\xed\x9b\x89\xe2\x89\xae\xef\xbd\xa1\xe0\xb8\xb4"); } // [V6]6476test { try toUnicodeFail("\xed\x9b\x89\xe2\x89\xae\xef\xbd\xa1\xe0\xb8\xb4"); } // [V6]
6477test { try toAsciiFail("\xed\x9b\x89\xe2\x89\xae\xef\xbd\xa1\xe0\xb8\xb4", false); } // [V6]
6478test { try toAsciiFail("\xed\x9b\x89\xe2\x89\xae\xef\xbd\xa1\xe0\xb8\xb4", true); } // [V6]
2793test { try toUnicodeFail("\xe1\x84\x92\xe1\x85\xae\xe1\x86\xac<\xcc\xb8\xef\xbd\xa1\xe0\xb8\xb4"); } // [V6]6479test { try toUnicodeFail("\xe1\x84\x92\xe1\x85\xae\xe1\x86\xac<\xcc\xb8\xef\xbd\xa1\xe0\xb8\xb4"); } // [V6]
6480test { try toAsciiFail("\xe1\x84\x92\xe1\x85\xae\xe1\x86\xac<\xcc\xb8\xef\xbd\xa1\xe0\xb8\xb4", false); } // [V6]
6481test { try toAsciiFail("\xe1\x84\x92\xe1\x85\xae\xe1\x86\xac<\xcc\xb8\xef\xbd\xa1\xe0\xb8\xb4", true); } // [V6]
2794test { try toUnicodeFail("\xed\x9b\x89\xe2\x89\xae\xe3\x80\x82\xe0\xb8\xb4"); } // [V6]6482test { try toUnicodeFail("\xed\x9b\x89\xe2\x89\xae\xe3\x80\x82\xe0\xb8\xb4"); } // [V6]
6483test { try toAsciiFail("\xed\x9b\x89\xe2\x89\xae\xe3\x80\x82\xe0\xb8\xb4", false); } // [V6]
6484test { try toAsciiFail("\xed\x9b\x89\xe2\x89\xae\xe3\x80\x82\xe0\xb8\xb4", true); } // [V6]
2795test { try toUnicodeFail("\xe1\x84\x92\xe1\x85\xae\xe1\x86\xac<\xcc\xb8\xe3\x80\x82\xe0\xb8\xb4"); } // [V6]6485test { try toUnicodeFail("\xe1\x84\x92\xe1\x85\xae\xe1\x86\xac<\xcc\xb8\xe3\x80\x82\xe0\xb8\xb4"); } // [V6]
6486test { try toAsciiFail("\xe1\x84\x92\xe1\x85\xae\xe1\x86\xac<\xcc\xb8\xe3\x80\x82\xe0\xb8\xb4", false); } // [V6]
6487test { try toAsciiFail("\xe1\x84\x92\xe1\x85\xae\xe1\x86\xac<\xcc\xb8\xe3\x80\x82\xe0\xb8\xb4", true); } // [V6]
2796test { try toUnicodeFail("xn--gdh2512e.xn--i4c"); } // [V6]6488test { try toUnicodeFail("xn--gdh2512e.xn--i4c"); } // [V6]
6489test { try toAsciiFail("xn--gdh2512e.xn--i4c", false); } // [V6]
6490test { try toAsciiFail("xn--gdh2512e.xn--i4c", true); } // [V6]
2797test { try toUnicodeFail("\xe2\xb7\xb7\xf2\x9e\xa3\x89\xf0\x9f\x83\x98\xef\xbc\x8e\xf0\xb4\x88\x87\xf0\x9d\x9f\xb8\xd9\x99\xf0\x9e\xa4\xaf"); } // [B1, B5, B6, V6, V7]6491test { try toUnicodeFail("\xe2\xb7\xb7\xf2\x9e\xa3\x89\xf0\x9f\x83\x98\xef\xbc\x8e\xf0\xb4\x88\x87\xf0\x9d\x9f\xb8\xd9\x99\xf0\x9e\xa4\xaf"); } // [B1, B5, B6, V6, V7]
6492test { try toAsciiFail("\xe2\xb7\xb7\xf2\x9e\xa3\x89\xf0\x9f\x83\x98\xef\xbc\x8e\xf0\xb4\x88\x87\xf0\x9d\x9f\xb8\xd9\x99\xf0\x9e\xa4\xaf", false); } // [B1, B5, B6, V6, V7]
6493test { try toAsciiFail("\xe2\xb7\xb7\xf2\x9e\xa3\x89\xf0\x9f\x83\x98\xef\xbc\x8e\xf0\xb4\x88\x87\xf0\x9d\x9f\xb8\xd9\x99\xf0\x9e\xa4\xaf", true); } // [B1, B5, B6, V6, V7]
2798test { try toUnicodeFail("\xe2\xb7\xb7\xf2\x9e\xa3\x89\xf0\x9f\x83\x98.\xf0\xb4\x88\x872\xd9\x99\xf0\x9e\xa4\xaf"); } // [B1, B5, B6, V6, V7]6494test { try toUnicodeFail("\xe2\xb7\xb7\xf2\x9e\xa3\x89\xf0\x9f\x83\x98.\xf0\xb4\x88\x872\xd9\x99\xf0\x9e\xa4\xaf"); } // [B1, B5, B6, V6, V7]
6495test { try toAsciiFail("\xe2\xb7\xb7\xf2\x9e\xa3\x89\xf0\x9f\x83\x98.\xf0\xb4\x88\x872\xd9\x99\xf0\x9e\xa4\xaf", false); } // [B1, B5, B6, V6, V7]
6496test { try toAsciiFail("\xe2\xb7\xb7\xf2\x9e\xa3\x89\xf0\x9f\x83\x98.\xf0\xb4\x88\x872\xd9\x99\xf0\x9e\xa4\xaf", true); } // [B1, B5, B6, V6, V7]
2799test { try toUnicodeFail("\xe2\xb7\xb7\xf2\x9e\xa3\x89\xf0\x9f\x83\x98.\xf0\xb4\x88\x872\xd9\x99\xf0\x9e\xa4\x8d"); } // [B1, B5, B6, V6, V7]6497test { try toUnicodeFail("\xe2\xb7\xb7\xf2\x9e\xa3\x89\xf0\x9f\x83\x98.\xf0\xb4\x88\x872\xd9\x99\xf0\x9e\xa4\x8d"); } // [B1, B5, B6, V6, V7]
6498test { try toAsciiFail("\xe2\xb7\xb7\xf2\x9e\xa3\x89\xf0\x9f\x83\x98.\xf0\xb4\x88\x872\xd9\x99\xf0\x9e\xa4\x8d", false); } // [B1, B5, B6, V6, V7]
6499test { try toAsciiFail("\xe2\xb7\xb7\xf2\x9e\xa3\x89\xf0\x9f\x83\x98.\xf0\xb4\x88\x872\xd9\x99\xf0\x9e\xa4\x8d", true); } // [B1, B5, B6, V6, V7]
2800test { try toUnicodeFail("xn--trj8045le6s9b.xn--2-upc23918acjsj"); } // [B1, B5, B6, V6, V7]6500test { try toUnicodeFail("xn--trj8045le6s9b.xn--2-upc23918acjsj"); } // [B1, B5, B6, V6, V7]
6501test { try toAsciiFail("xn--trj8045le6s9b.xn--2-upc23918acjsj", false); } // [B1, B5, B6, V6, V7]
6502test { try toAsciiFail("xn--trj8045le6s9b.xn--2-upc23918acjsj", true); } // [B1, B5, B6, V6, V7]
2801test { try toUnicodeFail("\xe2\xb7\xb7\xf2\x9e\xa3\x89\xf0\x9f\x83\x98\xef\xbc\x8e\xf0\xb4\x88\x87\xf0\x9d\x9f\xb8\xd9\x99\xf0\x9e\xa4\x8d"); } // [B1, B5, B6, V6, V7]6503test { try toUnicodeFail("\xe2\xb7\xb7\xf2\x9e\xa3\x89\xf0\x9f\x83\x98\xef\xbc\x8e\xf0\xb4\x88\x87\xf0\x9d\x9f\xb8\xd9\x99\xf0\x9e\xa4\x8d"); } // [B1, B5, B6, V6, V7]
6504test { try toAsciiFail("\xe2\xb7\xb7\xf2\x9e\xa3\x89\xf0\x9f\x83\x98\xef\xbc\x8e\xf0\xb4\x88\x87\xf0\x9d\x9f\xb8\xd9\x99\xf0\x9e\xa4\x8d", false); } // [B1, B5, B6, V6, V7]
6505test { try toAsciiFail("\xe2\xb7\xb7\xf2\x9e\xa3\x89\xf0\x9f\x83\x98\xef\xbc\x8e\xf0\xb4\x88\x87\xf0\x9d\x9f\xb8\xd9\x99\xf0\x9e\xa4\x8d", true); } // [B1, B5, B6, V6, V7]
2802test { try toUnicodeFail("\xf3\x97\x87\xa9\xc3\x9f\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xef\xb3\x94-"); } // [B1, B6, C1, V3, V7]6506test { try toUnicodeFail("\xf3\x97\x87\xa9\xc3\x9f\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xef\xb3\x94-"); } // [B1, B6, C1, V3, V7]
6507test { try toAsciiFail("\xf3\x97\x87\xa9\xc3\x9f\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xef\xb3\x94-", false); } // [B1, B6, C1, V3, V7]
6508test { try toAsciiFail("\xf3\x97\x87\xa9\xc3\x9f\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xef\xb3\x94-", true); } // [B1, V3, V7]
2803test { try toUnicodeFail("\xf3\x97\x87\xa9\xc3\x9f\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xd9\x86\xd8\xae-"); } // [B1, B6, C1, V3, V7]6509test { try toUnicodeFail("\xf3\x97\x87\xa9\xc3\x9f\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xd9\x86\xd8\xae-"); } // [B1, B6, C1, V3, V7]
6510test { try toAsciiFail("\xf3\x97\x87\xa9\xc3\x9f\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xd9\x86\xd8\xae-", false); } // [B1, B6, C1, V3, V7]
6511test { try toAsciiFail("\xf3\x97\x87\xa9\xc3\x9f\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xd9\x86\xd8\xae-", true); } // [B1, V3, V7]
2804test { try toUnicodeFail("\xf3\x97\x87\xa9SS\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xd9\x86\xd8\xae-"); } // [B1, B6, C1, V3, V7]6512test { try toUnicodeFail("\xf3\x97\x87\xa9SS\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xd9\x86\xd8\xae-"); } // [B1, B6, C1, V3, V7]
6513test { try toAsciiFail("\xf3\x97\x87\xa9SS\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xd9\x86\xd8\xae-", false); } // [B1, B6, C1, V3, V7]
6514test { try toAsciiFail("\xf3\x97\x87\xa9SS\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xd9\x86\xd8\xae-", true); } // [B1, V3, V7]
2805test { try toUnicodeFail("\xf3\x97\x87\xa9ss\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xd9\x86\xd8\xae-"); } // [B1, B6, C1, V3, V7]6515test { try toUnicodeFail("\xf3\x97\x87\xa9ss\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xd9\x86\xd8\xae-"); } // [B1, B6, C1, V3, V7]
6516test { try toAsciiFail("\xf3\x97\x87\xa9ss\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xd9\x86\xd8\xae-", false); } // [B1, B6, C1, V3, V7]
6517test { try toAsciiFail("\xf3\x97\x87\xa9ss\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xd9\x86\xd8\xae-", true); } // [B1, V3, V7]
2806test { try toUnicodeFail("\xf3\x97\x87\xa9Ss\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xd9\x86\xd8\xae-"); } // [B1, B6, C1, V3, V7]6518test { try toUnicodeFail("\xf3\x97\x87\xa9Ss\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xd9\x86\xd8\xae-"); } // [B1, B6, C1, V3, V7]
6519test { try toAsciiFail("\xf3\x97\x87\xa9Ss\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xd9\x86\xd8\xae-", false); } // [B1, B6, C1, V3, V7]
6520test { try toAsciiFail("\xf3\x97\x87\xa9Ss\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xd9\x86\xd8\xae-", true); } // [B1, V3, V7]
2807test { try toUnicodeFail("xn--ss-jepz4596r.xn----dnc5e1er384z"); } // [B1, V3, V7]6521test { try toUnicodeFail("xn--ss-jepz4596r.xn----dnc5e1er384z"); } // [B1, V3, V7]
6522test { try toAsciiFail("xn--ss-jepz4596r.xn----dnc5e1er384z", false); } // [B1, V3, V7]
6523test { try toAsciiFail("xn--ss-jepz4596r.xn----dnc5e1er384z", true); } // [B1, V3, V7]
2808test { try toUnicodeFail("xn--ss-jep006bqt765b.xn----dnc5e1er384z"); } // [B1, B6, C1, V3, V7]6524test { try toUnicodeFail("xn--ss-jep006bqt765b.xn----dnc5e1er384z"); } // [B1, B6, C1, V3, V7]
6525test { try toAsciiFail("xn--ss-jep006bqt765b.xn----dnc5e1er384z", false); } // [B1, B6, C1, V3, V7]
6526test { try toAsciiFail("xn--ss-jep006bqt765b.xn----dnc5e1er384z", true); } // [B1, B6, C1, V3, V7]
2809test { try toUnicodeFail("xn--zca272jbif10059a.xn----dnc5e1er384z"); } // [B1, B6, C1, V3, V7]6527test { try toUnicodeFail("xn--zca272jbif10059a.xn----dnc5e1er384z"); } // [B1, B6, C1, V3, V7]
6528test { try toAsciiFail("xn--zca272jbif10059a.xn----dnc5e1er384z", false); } // [B1, B6, C1, V3, V7]
6529test { try toAsciiFail("xn--zca272jbif10059a.xn----dnc5e1er384z", true); } // [B1, B6, C1, V3, V7]
2810test { try toUnicodeFail("\xf3\x97\x87\xa9SS\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xef\xb3\x94-"); } // [B1, B6, C1, V3, V7]6530test { try toUnicodeFail("\xf3\x97\x87\xa9SS\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xef\xb3\x94-"); } // [B1, B6, C1, V3, V7]
6531test { try toAsciiFail("\xf3\x97\x87\xa9SS\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xef\xb3\x94-", false); } // [B1, B6, C1, V3, V7]
6532test { try toAsciiFail("\xf3\x97\x87\xa9SS\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xef\xb3\x94-", true); } // [B1, V3, V7]
2811test { try toUnicodeFail("\xf3\x97\x87\xa9ss\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xef\xb3\x94-"); } // [B1, B6, C1, V3, V7]6533test { try toUnicodeFail("\xf3\x97\x87\xa9ss\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xef\xb3\x94-"); } // [B1, B6, C1, V3, V7]
6534test { try toAsciiFail("\xf3\x97\x87\xa9ss\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xef\xb3\x94-", false); } // [B1, B6, C1, V3, V7]
6535test { try toAsciiFail("\xf3\x97\x87\xa9ss\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xef\xb3\x94-", true); } // [B1, V3, V7]
2812test { try toUnicodeFail("\xf3\x97\x87\xa9Ss\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xef\xb3\x94-"); } // [B1, B6, C1, V3, V7]6536test { try toUnicodeFail("\xf3\x97\x87\xa9Ss\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xef\xb3\x94-"); } // [B1, B6, C1, V3, V7]
6537test { try toAsciiFail("\xf3\x97\x87\xa9Ss\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xef\xb3\x94-", false); } // [B1, B6, C1, V3, V7]
6538test { try toAsciiFail("\xf3\x97\x87\xa9Ss\xe1\xa2\x9e\xe2\x80\x8c\xe3\x80\x82\xd9\xa0\xf0\x9e\xb7\xbb\xef\xb3\x94-", true); } // [B1, V3, V7]
2813test { try toUnicodeFail("\xea\xa1\x86\xe3\x80\x82\xe2\x86\x83\xe0\xbe\xb5\xeb\x86\xae-"); } // [V3]6539test { try toUnicodeFail("\xea\xa1\x86\xe3\x80\x82\xe2\x86\x83\xe0\xbe\xb5\xeb\x86\xae-"); } // [V3]
6540test { try toAsciiFail("\xea\xa1\x86\xe3\x80\x82\xe2\x86\x83\xe0\xbe\xb5\xeb\x86\xae-", false); } // [V3]
6541test { try toAsciiFail("\xea\xa1\x86\xe3\x80\x82\xe2\x86\x83\xe0\xbe\xb5\xeb\x86\xae-", true); } // [V3]
2814test { try toUnicodeFail("\xea\xa1\x86\xe3\x80\x82\xe2\x86\x83\xe0\xbe\xb5\xe1\x84\x82\xe1\x85\xaa\xe1\x87\x81-"); } // [V3]6542test { try toUnicodeFail("\xea\xa1\x86\xe3\x80\x82\xe2\x86\x83\xe0\xbe\xb5\xe1\x84\x82\xe1\x85\xaa\xe1\x87\x81-"); } // [V3]
6543test { try toAsciiFail("\xea\xa1\x86\xe3\x80\x82\xe2\x86\x83\xe0\xbe\xb5\xe1\x84\x82\xe1\x85\xaa\xe1\x87\x81-", false); } // [V3]
6544test { try toAsciiFail("\xea\xa1\x86\xe3\x80\x82\xe2\x86\x83\xe0\xbe\xb5\xe1\x84\x82\xe1\x85\xaa\xe1\x87\x81-", true); } // [V3]
2815test { try toUnicodeFail("\xea\xa1\x86\xe3\x80\x82\xe2\x86\x84\xe0\xbe\xb5\xe1\x84\x82\xe1\x85\xaa\xe1\x87\x81-"); } // [V3]6545test { try toUnicodeFail("\xea\xa1\x86\xe3\x80\x82\xe2\x86\x84\xe0\xbe\xb5\xe1\x84\x82\xe1\x85\xaa\xe1\x87\x81-"); } // [V3]
6546test { try toAsciiFail("\xea\xa1\x86\xe3\x80\x82\xe2\x86\x84\xe0\xbe\xb5\xe1\x84\x82\xe1\x85\xaa\xe1\x87\x81-", false); } // [V3]
6547test { try toAsciiFail("\xea\xa1\x86\xe3\x80\x82\xe2\x86\x84\xe0\xbe\xb5\xe1\x84\x82\xe1\x85\xaa\xe1\x87\x81-", true); } // [V3]
2816test { try toUnicodeFail("\xea\xa1\x86\xe3\x80\x82\xe2\x86\x84\xe0\xbe\xb5\xeb\x86\xae-"); } // [V3]6548test { try toUnicodeFail("\xea\xa1\x86\xe3\x80\x82\xe2\x86\x84\xe0\xbe\xb5\xeb\x86\xae-"); } // [V3]
6549test { try toAsciiFail("\xea\xa1\x86\xe3\x80\x82\xe2\x86\x84\xe0\xbe\xb5\xeb\x86\xae-", false); } // [V3]
6550test { try toAsciiFail("\xea\xa1\x86\xe3\x80\x82\xe2\x86\x84\xe0\xbe\xb5\xeb\x86\xae-", true); } // [V3]
2817test { try toUnicodeFail("xn--fc9a.xn----qmg097k469k"); } // [V3]6551test { try toUnicodeFail("xn--fc9a.xn----qmg097k469k"); } // [V3]
6552test { try toAsciiFail("xn--fc9a.xn----qmg097k469k", false); } // [V3]
6553test { try toAsciiFail("xn--fc9a.xn----qmg097k469k", true); } // [V3]
2818test { try toUnicodeFail("xn--fc9a.xn----qmg787k869k"); } // [V3, V7]6554test { try toUnicodeFail("xn--fc9a.xn----qmg787k869k"); } // [V3, V7]
6555test { try toAsciiFail("xn--fc9a.xn----qmg787k869k", false); } // [V3, V7]
6556test { try toAsciiFail("xn--fc9a.xn----qmg787k869k", true); } // [V3, V7]
2819test { try toUnicodeFail("\xef\xb6\xad\xe2\x80\x8d.\xf1\xa5\xb0\x8c\xda\xa9"); } // [B3, B5, B6, C2, V7]6557test { try toUnicodeFail("\xef\xb6\xad\xe2\x80\x8d.\xf1\xa5\xb0\x8c\xda\xa9"); } // [B3, B5, B6, C2, V7]
6558test { try toAsciiFail("\xef\xb6\xad\xe2\x80\x8d.\xf1\xa5\xb0\x8c\xda\xa9", false); } // [B3, B5, B6, C2, V7]
6559test { try toAsciiFail("\xef\xb6\xad\xe2\x80\x8d.\xf1\xa5\xb0\x8c\xda\xa9", true); } // [B5, B6, V7]
2820test { try toUnicodeFail("\xd9\x84\xd9\x85\xd9\x8a\xe2\x80\x8d.\xf1\xa5\xb0\x8c\xda\xa9"); } // [B3, B5, B6, C2, V7]6560test { try toUnicodeFail("\xd9\x84\xd9\x85\xd9\x8a\xe2\x80\x8d.\xf1\xa5\xb0\x8c\xda\xa9"); } // [B3, B5, B6, C2, V7]
6561test { try toAsciiFail("\xd9\x84\xd9\x85\xd9\x8a\xe2\x80\x8d.\xf1\xa5\xb0\x8c\xda\xa9", false); } // [B3, B5, B6, C2, V7]
6562test { try toAsciiFail("\xd9\x84\xd9\x85\xd9\x8a\xe2\x80\x8d.\xf1\xa5\xb0\x8c\xda\xa9", true); } // [B5, B6, V7]
2821test { try toUnicodeFail("xn--ghbcp.xn--ckb36214f"); } // [B5, B6, V7]6563test { try toUnicodeFail("xn--ghbcp.xn--ckb36214f"); } // [B5, B6, V7]
6564test { try toAsciiFail("xn--ghbcp.xn--ckb36214f", false); } // [B5, B6, V7]
6565test { try toAsciiFail("xn--ghbcp.xn--ckb36214f", true); } // [B5, B6, V7]
2822test { try toUnicodeFail("xn--ghbcp494x.xn--ckb36214f"); } // [B3, B5, B6, C2, V7]6566test { try toUnicodeFail("xn--ghbcp494x.xn--ckb36214f"); } // [B3, B5, B6, C2, V7]
6567test { try toAsciiFail("xn--ghbcp494x.xn--ckb36214f", false); } // [B3, B5, B6, C2, V7]
6568test { try toAsciiFail("xn--ghbcp494x.xn--ckb36214f", true); } // [B3, B5, B6, C2, V7]
2823test { try toUnicodeFail("\xe1\x82\xbc\xe1\xb0\xaf\xf0\x90\xb3\x92\xe2\x89\xaf\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba"); } // [B1, B5, B6, V6]6569test { try toUnicodeFail("\xe1\x82\xbc\xe1\xb0\xaf\xf0\x90\xb3\x92\xe2\x89\xaf\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba"); } // [B1, B5, B6, V6]
6570test { try toAsciiFail("\xe1\x82\xbc\xe1\xb0\xaf\xf0\x90\xb3\x92\xe2\x89\xaf\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba", false); } // [B1, B5, B6, V6]
6571test { try toAsciiFail("\xe1\x82\xbc\xe1\xb0\xaf\xf0\x90\xb3\x92\xe2\x89\xaf\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba", true); } // [B1, B5, B6, V6]
2824test { try toUnicodeFail("\xe1\x82\xbc\xe1\xb0\xaf\xf0\x90\xb3\x92>\xcc\xb8\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba"); } // [B1, B5, B6, V6]6572test { try toUnicodeFail("\xe1\x82\xbc\xe1\xb0\xaf\xf0\x90\xb3\x92>\xcc\xb8\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba"); } // [B1, B5, B6, V6]
6573test { try toAsciiFail("\xe1\x82\xbc\xe1\xb0\xaf\xf0\x90\xb3\x92>\xcc\xb8\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba", false); } // [B1, B5, B6, V6]
6574test { try toAsciiFail("\xe1\x82\xbc\xe1\xb0\xaf\xf0\x90\xb3\x92>\xcc\xb8\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba", true); } // [B1, B5, B6, V6]
2825test { try toUnicodeFail("\xe2\xb4\x9c\xe1\xb0\xaf\xf0\x90\xb3\x92>\xcc\xb8\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba"); } // [B1, B5, B6, V6]6575test { try toUnicodeFail("\xe2\xb4\x9c\xe1\xb0\xaf\xf0\x90\xb3\x92>\xcc\xb8\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba"); } // [B1, B5, B6, V6]
6576test { try toAsciiFail("\xe2\xb4\x9c\xe1\xb0\xaf\xf0\x90\xb3\x92>\xcc\xb8\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba", false); } // [B1, B5, B6, V6]
6577test { try toAsciiFail("\xe2\xb4\x9c\xe1\xb0\xaf\xf0\x90\xb3\x92>\xcc\xb8\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba", true); } // [B1, B5, B6, V6]
2826test { try toUnicodeFail("\xe2\xb4\x9c\xe1\xb0\xaf\xf0\x90\xb3\x92\xe2\x89\xaf\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba"); } // [B1, B5, B6, V6]6578test { try toUnicodeFail("\xe2\xb4\x9c\xe1\xb0\xaf\xf0\x90\xb3\x92\xe2\x89\xaf\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba"); } // [B1, B5, B6, V6]
6579test { try toAsciiFail("\xe2\xb4\x9c\xe1\xb0\xaf\xf0\x90\xb3\x92\xe2\x89\xaf\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba", false); } // [B1, B5, B6, V6]
6580test { try toAsciiFail("\xe2\xb4\x9c\xe1\xb0\xaf\xf0\x90\xb3\x92\xe2\x89\xaf\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba", true); } // [B1, B5, B6, V6]
2827test { try toUnicodeFail("\xe1\x82\xbc\xe1\xb0\xaf\xf0\x90\xb2\x92\xe2\x89\xaf\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba"); } // [B1, B5, B6, V6]6581test { try toUnicodeFail("\xe1\x82\xbc\xe1\xb0\xaf\xf0\x90\xb2\x92\xe2\x89\xaf\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba"); } // [B1, B5, B6, V6]
6582test { try toAsciiFail("\xe1\x82\xbc\xe1\xb0\xaf\xf0\x90\xb2\x92\xe2\x89\xaf\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba", false); } // [B1, B5, B6, V6]
6583test { try toAsciiFail("\xe1\x82\xbc\xe1\xb0\xaf\xf0\x90\xb2\x92\xe2\x89\xaf\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba", true); } // [B1, B5, B6, V6]
2828test { try toUnicodeFail("\xe1\x82\xbc\xe1\xb0\xaf\xf0\x90\xb2\x92>\xcc\xb8\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba"); } // [B1, B5, B6, V6]6584test { try toUnicodeFail("\xe1\x82\xbc\xe1\xb0\xaf\xf0\x90\xb2\x92>\xcc\xb8\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba"); } // [B1, B5, B6, V6]
6585test { try toAsciiFail("\xe1\x82\xbc\xe1\xb0\xaf\xf0\x90\xb2\x92>\xcc\xb8\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba", false); } // [B1, B5, B6, V6]
6586test { try toAsciiFail("\xe1\x82\xbc\xe1\xb0\xaf\xf0\x90\xb2\x92>\xcc\xb8\xe3\x80\x82\xdb\xa0\xe1\x9c\xb2\xe0\xbe\xba", true); } // [B1, B5, B6, V6]
2829test { try toUnicodeFail("xn--r1f68xh1jgv7u.xn--wlb646b4ng"); } // [B1, B5, B6, V6]6587test { try toUnicodeFail("xn--r1f68xh1jgv7u.xn--wlb646b4ng"); } // [B1, B5, B6, V6]
6588test { try toAsciiFail("xn--r1f68xh1jgv7u.xn--wlb646b4ng", false); } // [B1, B5, B6, V6]
6589test { try toAsciiFail("xn--r1f68xh1jgv7u.xn--wlb646b4ng", true); } // [B1, B5, B6, V6]
2830test { try toUnicodeFail("xn--0nd679cf3eq67y.xn--wlb646b4ng"); } // [B1, B5, B6, V6, V7]6590test { try toUnicodeFail("xn--0nd679cf3eq67y.xn--wlb646b4ng"); } // [B1, B5, B6, V6, V7]
6591test { try toAsciiFail("xn--0nd679cf3eq67y.xn--wlb646b4ng", false); } // [B1, B5, B6, V6, V7]
6592test { try toAsciiFail("xn--0nd679cf3eq67y.xn--wlb646b4ng", true); } // [B1, B5, B6, V6, V7]
2831test { try toUnicodeFail("\xf0\x90\x8b\xb5\xe3\x80\x82\xef\xb3\xac"); } // [B1]6593test { try toUnicodeFail("\xf0\x90\x8b\xb5\xe3\x80\x82\xef\xb3\xac"); } // [B1]
6594test { try toAsciiFail("\xf0\x90\x8b\xb5\xe3\x80\x82\xef\xb3\xac", false); } // [B1]
6595test { try toAsciiFail("\xf0\x90\x8b\xb5\xe3\x80\x82\xef\xb3\xac", true); } // [B1]
2832test { try toUnicodeFail("\xf0\x90\x8b\xb5\xe3\x80\x82\xd9\x83\xd9\x85"); } // [B1]6596test { try toUnicodeFail("\xf0\x90\x8b\xb5\xe3\x80\x82\xd9\x83\xd9\x85"); } // [B1]
6597test { try toAsciiFail("\xf0\x90\x8b\xb5\xe3\x80\x82\xd9\x83\xd9\x85", false); } // [B1]
6598test { try toAsciiFail("\xf0\x90\x8b\xb5\xe3\x80\x82\xd9\x83\xd9\x85", true); } // [B1]
2833test { try toUnicodeFail("xn--p97c.xn--fhbe"); } // [B1]6599test { try toUnicodeFail("xn--p97c.xn--fhbe"); } // [B1]
6600test { try toAsciiFail("xn--p97c.xn--fhbe", false); } // [B1]
6601test { try toAsciiFail("xn--p97c.xn--fhbe", true); } // [B1]
2834test { try toUnicodeFail("\xf0\x90\x8b\xb5.\xd9\x83\xd9\x85"); } // [B1]6602test { try toUnicodeFail("\xf0\x90\x8b\xb5.\xd9\x83\xd9\x85"); } // [B1]
6603test { try toAsciiFail("\xf0\x90\x8b\xb5.\xd9\x83\xd9\x85", false); } // [B1]
6604test { try toAsciiFail("\xf0\x90\x8b\xb5.\xd9\x83\xd9\x85", true); } // [B1]
2835test { try toUnicodeFail("\xe2\x89\xae\xf0\x9d\x85\xb6\xef\xbc\x8e\xf1\xb1\xb2\x81\xea\xab\xac\xe2\xb9\x88\xf3\xb0\xa5\xad"); } // [V7]6605test { try toUnicodeFail("\xe2\x89\xae\xf0\x9d\x85\xb6\xef\xbc\x8e\xf1\xb1\xb2\x81\xea\xab\xac\xe2\xb9\x88\xf3\xb0\xa5\xad"); } // [V7]
6606test { try toAsciiFail("\xe2\x89\xae\xf0\x9d\x85\xb6\xef\xbc\x8e\xf1\xb1\xb2\x81\xea\xab\xac\xe2\xb9\x88\xf3\xb0\xa5\xad", false); } // [V7]
6607test { try toAsciiFail("\xe2\x89\xae\xf0\x9d\x85\xb6\xef\xbc\x8e\xf1\xb1\xb2\x81\xea\xab\xac\xe2\xb9\x88\xf3\xb0\xa5\xad", true); } // [V7]
2836test { try toUnicodeFail("<\xcc\xb8\xf0\x9d\x85\xb6\xef\xbc\x8e\xf1\xb1\xb2\x81\xea\xab\xac\xe2\xb9\x88\xf3\xb0\xa5\xad"); } // [V7]6608test { try toUnicodeFail("<\xcc\xb8\xf0\x9d\x85\xb6\xef\xbc\x8e\xf1\xb1\xb2\x81\xea\xab\xac\xe2\xb9\x88\xf3\xb0\xa5\xad"); } // [V7]
6609test { try toAsciiFail("<\xcc\xb8\xf0\x9d\x85\xb6\xef\xbc\x8e\xf1\xb1\xb2\x81\xea\xab\xac\xe2\xb9\x88\xf3\xb0\xa5\xad", false); } // [V7]
6610test { try toAsciiFail("<\xcc\xb8\xf0\x9d\x85\xb6\xef\xbc\x8e\xf1\xb1\xb2\x81\xea\xab\xac\xe2\xb9\x88\xf3\xb0\xa5\xad", true); } // [V7]
2837test { try toUnicodeFail("\xe2\x89\xae\xf0\x9d\x85\xb6.\xf1\xb1\xb2\x81\xea\xab\xac\xe2\xb9\x88\xf3\xb0\xa5\xad"); } // [V7]6611test { try toUnicodeFail("\xe2\x89\xae\xf0\x9d\x85\xb6.\xf1\xb1\xb2\x81\xea\xab\xac\xe2\xb9\x88\xf3\xb0\xa5\xad"); } // [V7]
6612test { try toAsciiFail("\xe2\x89\xae\xf0\x9d\x85\xb6.\xf1\xb1\xb2\x81\xea\xab\xac\xe2\xb9\x88\xf3\xb0\xa5\xad", false); } // [V7]
6613test { try toAsciiFail("\xe2\x89\xae\xf0\x9d\x85\xb6.\xf1\xb1\xb2\x81\xea\xab\xac\xe2\xb9\x88\xf3\xb0\xa5\xad", true); } // [V7]
2838test { try toUnicodeFail("<\xcc\xb8\xf0\x9d\x85\xb6.\xf1\xb1\xb2\x81\xea\xab\xac\xe2\xb9\x88\xf3\xb0\xa5\xad"); } // [V7]6614test { try toUnicodeFail("<\xcc\xb8\xf0\x9d\x85\xb6.\xf1\xb1\xb2\x81\xea\xab\xac\xe2\xb9\x88\xf3\xb0\xa5\xad"); } // [V7]
6615test { try toAsciiFail("<\xcc\xb8\xf0\x9d\x85\xb6.\xf1\xb1\xb2\x81\xea\xab\xac\xe2\xb9\x88\xf3\xb0\xa5\xad", false); } // [V7]
6616test { try toAsciiFail("<\xcc\xb8\xf0\x9d\x85\xb6.\xf1\xb1\xb2\x81\xea\xab\xac\xe2\xb9\x88\xf3\xb0\xa5\xad", true); } // [V7]
2839test { try toUnicodeFail("xn--gdh.xn--4tjx101bsg00ds9pyc"); } // [V7]6617test { try toUnicodeFail("xn--gdh.xn--4tjx101bsg00ds9pyc"); } // [V7]
6618test { try toAsciiFail("xn--gdh.xn--4tjx101bsg00ds9pyc", false); } // [V7]
6619test { try toAsciiFail("xn--gdh.xn--4tjx101bsg00ds9pyc", true); } // [V7]
2840test { try toUnicodeFail("xn--gdh0880o.xn--4tjx101bsg00ds9pyc"); } // [V7]6620test { try toUnicodeFail("xn--gdh0880o.xn--4tjx101bsg00ds9pyc"); } // [V7]
6621test { try toAsciiFail("xn--gdh0880o.xn--4tjx101bsg00ds9pyc", false); } // [V7]
6622test { try toAsciiFail("xn--gdh0880o.xn--4tjx101bsg00ds9pyc", true); } // [V7]
2841test { try toUnicodeFail("\xe2\xb7\xb0\xcd\x98\xe1\xa2\x95\xef\xbc\x8e\xcd\xa1\xf0\x90\xb9\xb7\xf3\xa0\xb4\x8d"); } // [B1, V6, V7]6623test { try toUnicodeFail("\xe2\xb7\xb0\xcd\x98\xe1\xa2\x95\xef\xbc\x8e\xcd\xa1\xf0\x90\xb9\xb7\xf3\xa0\xb4\x8d"); } // [B1, V6, V7]
6624test { try toAsciiFail("\xe2\xb7\xb0\xcd\x98\xe1\xa2\x95\xef\xbc\x8e\xcd\xa1\xf0\x90\xb9\xb7\xf3\xa0\xb4\x8d", false); } // [B1, V6, V7]
6625test { try toAsciiFail("\xe2\xb7\xb0\xcd\x98\xe1\xa2\x95\xef\xbc\x8e\xcd\xa1\xf0\x90\xb9\xb7\xf3\xa0\xb4\x8d", true); } // [B1, V6, V7]
2842test { try toUnicodeFail("\xe2\xb7\xb0\xcd\x98\xe1\xa2\x95.\xcd\xa1\xf0\x90\xb9\xb7\xf3\xa0\xb4\x8d"); } // [B1, V6, V7]6626test { try toUnicodeFail("\xe2\xb7\xb0\xcd\x98\xe1\xa2\x95.\xcd\xa1\xf0\x90\xb9\xb7\xf3\xa0\xb4\x8d"); } // [B1, V6, V7]
6627test { try toAsciiFail("\xe2\xb7\xb0\xcd\x98\xe1\xa2\x95.\xcd\xa1\xf0\x90\xb9\xb7\xf3\xa0\xb4\x8d", false); } // [B1, V6, V7]
6628test { try toAsciiFail("\xe2\xb7\xb0\xcd\x98\xe1\xa2\x95.\xcd\xa1\xf0\x90\xb9\xb7\xf3\xa0\xb4\x8d", true); } // [B1, V6, V7]
2843test { try toUnicodeFail("xn--2ua889htsp.xn--cva2687k2tv0g"); } // [B1, V6, V7]6629test { try toUnicodeFail("xn--2ua889htsp.xn--cva2687k2tv0g"); } // [B1, V6, V7]
6630test { try toAsciiFail("xn--2ua889htsp.xn--cva2687k2tv0g", false); } // [B1, V6, V7]
6631test { try toAsciiFail("xn--2ua889htsp.xn--cva2687k2tv0g", true); } // [B1, V6, V7]
2844test { try toUnicodeFail("\xef\xb5\xb9\xe1\xa1\x90\xe2\x80\x8c\xda\xad\xef\xbc\x8e\xf0\x91\x8b\xaa\xd7\x87"); } // [B1, B2, V6]6632test { try toUnicodeFail("\xef\xb5\xb9\xe1\xa1\x90\xe2\x80\x8c\xda\xad\xef\xbc\x8e\xf0\x91\x8b\xaa\xd7\x87"); } // [B1, B2, V6]
6633test { try toAsciiFail("\xef\xb5\xb9\xe1\xa1\x90\xe2\x80\x8c\xda\xad\xef\xbc\x8e\xf0\x91\x8b\xaa\xd7\x87", false); } // [B1, B2, V6]
6634test { try toAsciiFail("\xef\xb5\xb9\xe1\xa1\x90\xe2\x80\x8c\xda\xad\xef\xbc\x8e\xf0\x91\x8b\xaa\xd7\x87", true); } // [B1, B2, V6]
2845test { try toUnicodeFail("\xd8\xba\xd9\x85\xd9\x85\xe1\xa1\x90\xe2\x80\x8c\xda\xad.\xf0\x91\x8b\xaa\xd7\x87"); } // [B1, B2, V6]6635test { try toUnicodeFail("\xd8\xba\xd9\x85\xd9\x85\xe1\xa1\x90\xe2\x80\x8c\xda\xad.\xf0\x91\x8b\xaa\xd7\x87"); } // [B1, B2, V6]
6636test { try toAsciiFail("\xd8\xba\xd9\x85\xd9\x85\xe1\xa1\x90\xe2\x80\x8c\xda\xad.\xf0\x91\x8b\xaa\xd7\x87", false); } // [B1, B2, V6]
6637test { try toAsciiFail("\xd8\xba\xd9\x85\xd9\x85\xe1\xa1\x90\xe2\x80\x8c\xda\xad.\xf0\x91\x8b\xaa\xd7\x87", true); } // [B1, B2, V6]
2846test { try toUnicodeFail("xn--5gbwa03bg24e.xn--vdb1198k"); } // [B1, B2, V6]6638test { try toUnicodeFail("xn--5gbwa03bg24e.xn--vdb1198k"); } // [B1, B2, V6]
6639test { try toAsciiFail("xn--5gbwa03bg24e.xn--vdb1198k", false); } // [B1, B2, V6]
6640test { try toAsciiFail("xn--5gbwa03bg24e.xn--vdb1198k", true); } // [B1, B2, V6]
2847test { try toUnicodeFail("xn--5gbwa03bg24eptk.xn--vdb1198k"); } // [B1, B2, V6]6641test { try toUnicodeFail("xn--5gbwa03bg24eptk.xn--vdb1198k"); } // [B1, B2, V6]
6642test { try toAsciiFail("xn--5gbwa03bg24eptk.xn--vdb1198k", false); } // [B1, B2, V6]
6643test { try toAsciiFail("xn--5gbwa03bg24eptk.xn--vdb1198k", true); } // [B1, B2, V6]
2848test { try toUnicodeFail("\xf0\x91\x91\x82\xef\xbd\xa1\xe2\x80\x8d\xf3\xa5\x9e\x80\xf0\x9f\x9e\x95\xf2\xa5\x81\x94"); } // [C2, V6, V7]6644test { try toUnicodeFail("\xf0\x91\x91\x82\xef\xbd\xa1\xe2\x80\x8d\xf3\xa5\x9e\x80\xf0\x9f\x9e\x95\xf2\xa5\x81\x94"); } // [C2, V6, V7]
6645test { try toAsciiFail("\xf0\x91\x91\x82\xef\xbd\xa1\xe2\x80\x8d\xf3\xa5\x9e\x80\xf0\x9f\x9e\x95\xf2\xa5\x81\x94", false); } // [C2, V6, V7]
6646test { try toAsciiFail("\xf0\x91\x91\x82\xef\xbd\xa1\xe2\x80\x8d\xf3\xa5\x9e\x80\xf0\x9f\x9e\x95\xf2\xa5\x81\x94", true); } // [V6, V7]
2849test { try toUnicodeFail("\xf0\x91\x91\x82\xe3\x80\x82\xe2\x80\x8d\xf3\xa5\x9e\x80\xf0\x9f\x9e\x95\xf2\xa5\x81\x94"); } // [C2, V6, V7]6647test { try toUnicodeFail("\xf0\x91\x91\x82\xe3\x80\x82\xe2\x80\x8d\xf3\xa5\x9e\x80\xf0\x9f\x9e\x95\xf2\xa5\x81\x94"); } // [C2, V6, V7]
6648test { try toAsciiFail("\xf0\x91\x91\x82\xe3\x80\x82\xe2\x80\x8d\xf3\xa5\x9e\x80\xf0\x9f\x9e\x95\xf2\xa5\x81\x94", false); } // [C2, V6, V7]
6649test { try toAsciiFail("\xf0\x91\x91\x82\xe3\x80\x82\xe2\x80\x8d\xf3\xa5\x9e\x80\xf0\x9f\x9e\x95\xf2\xa5\x81\x94", true); } // [V6, V7]
2850test { try toUnicodeFail("xn--8v1d.xn--ye9h41035a2qqs"); } // [V6, V7]6650test { try toUnicodeFail("xn--8v1d.xn--ye9h41035a2qqs"); } // [V6, V7]
6651test { try toAsciiFail("xn--8v1d.xn--ye9h41035a2qqs", false); } // [V6, V7]
6652test { try toAsciiFail("xn--8v1d.xn--ye9h41035a2qqs", true); } // [V6, V7]
2851test { try toUnicodeFail("xn--8v1d.xn--1ug1386plvx1cd8vya"); } // [C2, V6, V7]6653test { try toUnicodeFail("xn--8v1d.xn--1ug1386plvx1cd8vya"); } // [C2, V6, V7]
6654test { try toAsciiFail("xn--8v1d.xn--1ug1386plvx1cd8vya", false); } // [C2, V6, V7]
6655test { try toAsciiFail("xn--8v1d.xn--1ug1386plvx1cd8vya", true); } // [C2, V6, V7]
2852test { try toUnicodeFail("-\xd7\xa9\xe3\x80\x82\xe2\x92\x9a"); } // [B1, V3, V7]6656test { try toUnicodeFail("-\xd7\xa9\xe3\x80\x82\xe2\x92\x9a"); } // [B1, V3, V7]
6657test { try toAsciiFail("-\xd7\xa9\xe3\x80\x82\xe2\x92\x9a", false); } // [B1, V3, V7]
6658test { try toAsciiFail("-\xd7\xa9\xe3\x80\x82\xe2\x92\x9a", true); } // [B1, V3, V7]
2853test { try toUnicodeFail("-\xd7\xa9\xe3\x80\x8219."); } // [B1, V3]6659test { try toUnicodeFail("-\xd7\xa9\xe3\x80\x8219."); } // [B1, V3]
6660test { try toAsciiFail("-\xd7\xa9\xe3\x80\x8219.", false); } // [B1, V3, A4_2]
6661test { try toAsciiFail("-\xd7\xa9\xe3\x80\x8219.", true); } // [B1, V3, A4_2]
2854test { try toUnicodeFail("xn----gjc.1j."); } // [B1, V3]6662test { try toUnicodeFail("xn----gjc.1j."); } // [B1, V3]
6663test { try toAsciiFail("xn----gjc.1j.", false); } // [B1, V3, A4_2]
6664test { try toAsciiFail("xn----gjc.1j.", true); } // [B1, V3, A4_2]
2855test { try toUnicodeFail("xn----gjc.xn--cth"); } // [B1, V3, V7]6665test { try toUnicodeFail("xn----gjc.xn--cth"); } // [B1, V3, V7]
6666test { try toAsciiFail("xn----gjc.xn--cth", false); } // [B1, V3, V7]
6667test { try toAsciiFail("xn----gjc.xn--cth", true); } // [B1, V3, V7]
2856test { try toUnicodeFail("\xf4\x8a\xbe\xbb\xe0\xa1\x85\xe2\x80\x8c\xef\xbd\xa1\xe1\xa2\x8e\xe2\x80\x8d"); } // [B5, B6, C1, C2, V7]6668test { try toUnicodeFail("\xf4\x8a\xbe\xbb\xe0\xa1\x85\xe2\x80\x8c\xef\xbd\xa1\xe1\xa2\x8e\xe2\x80\x8d"); } // [B5, B6, C1, C2, V7]
6669test { try toAsciiFail("\xf4\x8a\xbe\xbb\xe0\xa1\x85\xe2\x80\x8c\xef\xbd\xa1\xe1\xa2\x8e\xe2\x80\x8d", false); } // [B5, B6, C1, C2, V7]
6670test { try toAsciiFail("\xf4\x8a\xbe\xbb\xe0\xa1\x85\xe2\x80\x8c\xef\xbd\xa1\xe1\xa2\x8e\xe2\x80\x8d", true); } // [B5, B6, V7]
2857test { try toUnicodeFail("\xf4\x8a\xbe\xbb\xe0\xa1\x85\xe2\x80\x8c\xe3\x80\x82\xe1\xa2\x8e\xe2\x80\x8d"); } // [B5, B6, C1, C2, V7]6671test { try toUnicodeFail("\xf4\x8a\xbe\xbb\xe0\xa1\x85\xe2\x80\x8c\xe3\x80\x82\xe1\xa2\x8e\xe2\x80\x8d"); } // [B5, B6, C1, C2, V7]
6672test { try toAsciiFail("\xf4\x8a\xbe\xbb\xe0\xa1\x85\xe2\x80\x8c\xe3\x80\x82\xe1\xa2\x8e\xe2\x80\x8d", false); } // [B5, B6, C1, C2, V7]
6673test { try toAsciiFail("\xf4\x8a\xbe\xbb\xe0\xa1\x85\xe2\x80\x8c\xe3\x80\x82\xe1\xa2\x8e\xe2\x80\x8d", true); } // [B5, B6, V7]
2858test { try toUnicodeFail("xn--3vb50049s.xn--79e"); } // [B5, B6, V7]6674test { try toUnicodeFail("xn--3vb50049s.xn--79e"); } // [B5, B6, V7]
6675test { try toAsciiFail("xn--3vb50049s.xn--79e", false); } // [B5, B6, V7]
6676test { try toAsciiFail("xn--3vb50049s.xn--79e", true); } // [B5, B6, V7]
2859test { try toUnicodeFail("xn--3vb882jz4411a.xn--79e259a"); } // [B5, B6, C1, C2, V7]6677test { try toUnicodeFail("xn--3vb882jz4411a.xn--79e259a"); } // [B5, B6, C1, C2, V7]
6678test { try toAsciiFail("xn--3vb882jz4411a.xn--79e259a", false); } // [B5, B6, C1, C2, V7]
6679test { try toAsciiFail("xn--3vb882jz4411a.xn--79e259a", true); } // [B5, B6, C1, C2, V7]
2860test { try toUnicodePass("\xc3\x9f\xe0\xa7\x81\xe1\xb7\xad\xe3\x80\x82\xd8\xa08\xe2\x82\x85", "\xc3\x9f\xe0\xa7\x81\xe1\xb7\xad.\xd8\xa085"); }6680test { try toUnicodePass("\xc3\x9f\xe0\xa7\x81\xe1\xb7\xad\xe3\x80\x82\xd8\xa08\xe2\x82\x85", "\xc3\x9f\xe0\xa7\x81\xe1\xb7\xad.\xd8\xa085"); }
2861test { try toAsciiPass("\xc3\x9f\xe0\xa7\x81\xe1\xb7\xad\xe3\x80\x82\xd8\xa08\xe2\x82\x85", "xn--zca266bwrr.xn--85-psd", false); }6681test { try toAsciiPass("\xc3\x9f\xe0\xa7\x81\xe1\xb7\xad\xe3\x80\x82\xd8\xa08\xe2\x82\x85", "xn--zca266bwrr.xn--85-psd", false); }
2862test { try toAsciiPass("\xc3\x9f\xe0\xa7\x81\xe1\xb7\xad\xe3\x80\x82\xd8\xa08\xe2\x82\x85", "xn--ss-e2f077r.xn--85-psd", true); }6682test { try toAsciiPass("\xc3\x9f\xe0\xa7\x81\xe1\xb7\xad\xe3\x80\x82\xd8\xa08\xe2\x82\x85", "xn--ss-e2f077r.xn--85-psd", true); }
...@@ -2900,19 +6720,47 @@ test { try toUnicodePass("Ss\xe0\xa7\x81\xe1\xb7\xad\xe3\x80\x82\xd8\xa08\xe2\x8...@@ -2900,19 +6720,47 @@ test { try toUnicodePass("Ss\xe0\xa7\x81\xe1\xb7\xad\xe3\x80\x82\xd8\xa08\xe2\x8
2900test { try toAsciiPass("Ss\xe0\xa7\x81\xe1\xb7\xad\xe3\x80\x82\xd8\xa08\xe2\x82\x85", "xn--ss-e2f077r.xn--85-psd", false); }6720test { try toAsciiPass("Ss\xe0\xa7\x81\xe1\xb7\xad\xe3\x80\x82\xd8\xa08\xe2\x82\x85", "xn--ss-e2f077r.xn--85-psd", false); }
2901test { try toAsciiPass("Ss\xe0\xa7\x81\xe1\xb7\xad\xe3\x80\x82\xd8\xa08\xe2\x82\x85", "xn--ss-e2f077r.xn--85-psd", true); }6721test { try toAsciiPass("Ss\xe0\xa7\x81\xe1\xb7\xad\xe3\x80\x82\xd8\xa08\xe2\x82\x85", "xn--ss-e2f077r.xn--85-psd", true); }
2902test { try toUnicodeFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x85\xf0\x9d\x9f\xa3\xef\xbc\x8e\xe2\x82\x83\xf0\x90\xb9\xa5\xc3\x9f"); } // [B1, V6]6722test { try toUnicodeFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x85\xf0\x9d\x9f\xa3\xef\xbc\x8e\xe2\x82\x83\xf0\x90\xb9\xa5\xc3\x9f"); } // [B1, V6]
6723test { try toAsciiFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x85\xf0\x9d\x9f\xa3\xef\xbc\x8e\xe2\x82\x83\xf0\x90\xb9\xa5\xc3\x9f", false); } // [B1, V6]
6724test { try toAsciiFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x85\xf0\x9d\x9f\xa3\xef\xbc\x8e\xe2\x82\x83\xf0\x90\xb9\xa5\xc3\x9f", true); } // [B1, V6]
2903test { try toUnicodeFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x851.3\xf0\x90\xb9\xa5\xc3\x9f"); } // [B1, V6]6725test { try toUnicodeFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x851.3\xf0\x90\xb9\xa5\xc3\x9f"); } // [B1, V6]
6726test { try toAsciiFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x851.3\xf0\x90\xb9\xa5\xc3\x9f", false); } // [B1, V6]
6727test { try toAsciiFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x851.3\xf0\x90\xb9\xa5\xc3\x9f", true); } // [B1, V6]
2904test { try toUnicodeFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x851.3\xf0\x90\xb9\xa5SS"); } // [B1, V6]6728test { try toUnicodeFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x851.3\xf0\x90\xb9\xa5SS"); } // [B1, V6]
6729test { try toAsciiFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x851.3\xf0\x90\xb9\xa5SS", false); } // [B1, V6]
6730test { try toAsciiFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x851.3\xf0\x90\xb9\xa5SS", true); } // [B1, V6]
2905test { try toUnicodeFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x851.3\xf0\x90\xb9\xa5ss"); } // [B1, V6]6731test { try toUnicodeFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x851.3\xf0\x90\xb9\xa5ss"); } // [B1, V6]
6732test { try toAsciiFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x851.3\xf0\x90\xb9\xa5ss", false); } // [B1, V6]
6733test { try toAsciiFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x851.3\xf0\x90\xb9\xa5ss", true); } // [B1, V6]
2906test { try toUnicodeFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x851.3\xf0\x90\xb9\xa5Ss"); } // [B1, V6]6734test { try toUnicodeFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x851.3\xf0\x90\xb9\xa5Ss"); } // [B1, V6]
6735test { try toAsciiFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x851.3\xf0\x90\xb9\xa5Ss", false); } // [B1, V6]
6736test { try toAsciiFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x851.3\xf0\x90\xb9\xa5Ss", true); } // [B1, V6]
2907test { try toUnicodeFail("xn--1-0xb049b102o.xn--3ss-nv9t"); } // [B1, V6]6737test { try toUnicodeFail("xn--1-0xb049b102o.xn--3ss-nv9t"); } // [B1, V6]
6738test { try toAsciiFail("xn--1-0xb049b102o.xn--3ss-nv9t", false); } // [B1, V6]
6739test { try toAsciiFail("xn--1-0xb049b102o.xn--3ss-nv9t", true); } // [B1, V6]
2908test { try toUnicodeFail("xn--1-0xb049b102o.xn--3-qfa7018r"); } // [B1, V6]6740test { try toUnicodeFail("xn--1-0xb049b102o.xn--3-qfa7018r"); } // [B1, V6]
6741test { try toAsciiFail("xn--1-0xb049b102o.xn--3-qfa7018r", false); } // [B1, V6]
6742test { try toAsciiFail("xn--1-0xb049b102o.xn--3-qfa7018r", true); } // [B1, V6]
2909test { try toUnicodeFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x85\xf0\x9d\x9f\xa3\xef\xbc\x8e\xe2\x82\x83\xf0\x90\xb9\xa5SS"); } // [B1, V6]6743test { try toUnicodeFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x85\xf0\x9d\x9f\xa3\xef\xbc\x8e\xe2\x82\x83\xf0\x90\xb9\xa5SS"); } // [B1, V6]
6744test { try toAsciiFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x85\xf0\x9d\x9f\xa3\xef\xbc\x8e\xe2\x82\x83\xf0\x90\xb9\xa5SS", false); } // [B1, V6]
6745test { try toAsciiFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x85\xf0\x9d\x9f\xa3\xef\xbc\x8e\xe2\x82\x83\xf0\x90\xb9\xa5SS", true); } // [B1, V6]
2910test { try toUnicodeFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x85\xf0\x9d\x9f\xa3\xef\xbc\x8e\xe2\x82\x83\xf0\x90\xb9\xa5ss"); } // [B1, V6]6746test { try toUnicodeFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x85\xf0\x9d\x9f\xa3\xef\xbc\x8e\xe2\x82\x83\xf0\x90\xb9\xa5ss"); } // [B1, V6]
6747test { try toAsciiFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x85\xf0\x9d\x9f\xa3\xef\xbc\x8e\xe2\x82\x83\xf0\x90\xb9\xa5ss", false); } // [B1, V6]
6748test { try toAsciiFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x85\xf0\x9d\x9f\xa3\xef\xbc\x8e\xe2\x82\x83\xf0\x90\xb9\xa5ss", true); } // [B1, V6]
2911test { try toUnicodeFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x85\xf0\x9d\x9f\xa3\xef\xbc\x8e\xe2\x82\x83\xf0\x90\xb9\xa5Ss"); } // [B1, V6]6749test { try toUnicodeFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x85\xf0\x9d\x9f\xa3\xef\xbc\x8e\xe2\x82\x83\xf0\x90\xb9\xa5Ss"); } // [B1, V6]
6750test { try toAsciiFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x85\xf0\x9d\x9f\xa3\xef\xbc\x8e\xe2\x82\x83\xf0\x90\xb9\xa5Ss", false); } // [B1, V6]
6751test { try toAsciiFail("\xe0\xab\x8d\xd2\x84\xe9\xad\x85\xf0\x9d\x9f\xa3\xef\xbc\x8e\xe2\x82\x83\xf0\x90\xb9\xa5Ss", true); } // [B1, V6]
2912test { try toUnicodeFail("\xdc\xab\xef\xbd\xa1\xf0\x91\x93\x82\xe2\x92\x88\xf0\x91\x9c\xab\xf3\xa0\xbf\xbb"); } // [B1, V6, V7]6752test { try toUnicodeFail("\xdc\xab\xef\xbd\xa1\xf0\x91\x93\x82\xe2\x92\x88\xf0\x91\x9c\xab\xf3\xa0\xbf\xbb"); } // [B1, V6, V7]
6753test { try toAsciiFail("\xdc\xab\xef\xbd\xa1\xf0\x91\x93\x82\xe2\x92\x88\xf0\x91\x9c\xab\xf3\xa0\xbf\xbb", false); } // [B1, V6, V7]
6754test { try toAsciiFail("\xdc\xab\xef\xbd\xa1\xf0\x91\x93\x82\xe2\x92\x88\xf0\x91\x9c\xab\xf3\xa0\xbf\xbb", true); } // [B1, V6, V7]
2913test { try toUnicodeFail("\xdc\xab\xe3\x80\x82\xf0\x91\x93\x821.\xf0\x91\x9c\xab\xf3\xa0\xbf\xbb"); } // [B1, V6, V7]6755test { try toUnicodeFail("\xdc\xab\xe3\x80\x82\xf0\x91\x93\x821.\xf0\x91\x9c\xab\xf3\xa0\xbf\xbb"); } // [B1, V6, V7]
6756test { try toAsciiFail("\xdc\xab\xe3\x80\x82\xf0\x91\x93\x821.\xf0\x91\x9c\xab\xf3\xa0\xbf\xbb", false); } // [B1, V6, V7]
6757test { try toAsciiFail("\xdc\xab\xe3\x80\x82\xf0\x91\x93\x821.\xf0\x91\x9c\xab\xf3\xa0\xbf\xbb", true); } // [B1, V6, V7]
2914test { try toUnicodeFail("xn--1nb.xn--1-jq9i.xn--ji2dg9877c"); } // [B1, V6, V7]6758test { try toUnicodeFail("xn--1nb.xn--1-jq9i.xn--ji2dg9877c"); } // [B1, V6, V7]
6759test { try toAsciiFail("xn--1nb.xn--1-jq9i.xn--ji2dg9877c", false); } // [B1, V6, V7]
6760test { try toAsciiFail("xn--1nb.xn--1-jq9i.xn--ji2dg9877c", true); } // [B1, V6, V7]
2915test { try toUnicodeFail("xn--1nb.xn--tsh7798f6rbrt828c"); } // [B1, V6, V7]6761test { try toUnicodeFail("xn--1nb.xn--tsh7798f6rbrt828c"); } // [B1, V6, V7]
6762test { try toAsciiFail("xn--1nb.xn--tsh7798f6rbrt828c", false); } // [B1, V6, V7]
6763test { try toAsciiFail("xn--1nb.xn--tsh7798f6rbrt828c", true); } // [B1, V6, V7]
2916test { try toUnicodePass("\xef\xb8\x8d\xe0\xaa\x9b\xe3\x80\x82\xe5\xb5\xa8", "\xe0\xaa\x9b.\xe5\xb5\xa8"); }6764test { try toUnicodePass("\xef\xb8\x8d\xe0\xaa\x9b\xe3\x80\x82\xe5\xb5\xa8", "\xe0\xaa\x9b.\xe5\xb5\xa8"); }
2917test { try toAsciiPass("\xef\xb8\x8d\xe0\xaa\x9b\xe3\x80\x82\xe5\xb5\xa8", "xn--6dc.xn--tot", false); }6765test { try toAsciiPass("\xef\xb8\x8d\xe0\xaa\x9b\xe3\x80\x82\xe5\xb5\xa8", "xn--6dc.xn--tot", false); }
2918test { try toAsciiPass("\xef\xb8\x8d\xe0\xaa\x9b\xe3\x80\x82\xe5\xb5\xa8", "xn--6dc.xn--tot", true); }6766test { try toAsciiPass("\xef\xb8\x8d\xe0\xaa\x9b\xe3\x80\x82\xe5\xb5\xa8", "xn--6dc.xn--tot", true); }
...@@ -2923,27 +6771,71 @@ test { try toUnicodePass("\xe0\xaa\x9b.\xe5\xb5\xa8", "\xe0\xaa\x9b.\xe5\xb5\xa8...@@ -2923,27 +6771,71 @@ test { try toUnicodePass("\xe0\xaa\x9b.\xe5\xb5\xa8", "\xe0\xaa\x9b.\xe5\xb5\xa8
2923test { try toAsciiPass("\xe0\xaa\x9b.\xe5\xb5\xa8", "xn--6dc.xn--tot", false); }6771test { try toAsciiPass("\xe0\xaa\x9b.\xe5\xb5\xa8", "xn--6dc.xn--tot", false); }
2924test { try toAsciiPass("\xe0\xaa\x9b.\xe5\xb5\xa8", "xn--6dc.xn--tot", true); }6772test { try toAsciiPass("\xe0\xaa\x9b.\xe5\xb5\xa8", "xn--6dc.xn--tot", true); }
2925test { try toUnicodeFail("\xe1\x82\xb4\xe2\x89\xa0\xe1\x82\xa0.\xf0\x90\xb9\xa5\xf0\x90\xb9\xb0"); } // [B1]6773test { try toUnicodeFail("\xe1\x82\xb4\xe2\x89\xa0\xe1\x82\xa0.\xf0\x90\xb9\xa5\xf0\x90\xb9\xb0"); } // [B1]
6774test { try toAsciiFail("\xe1\x82\xb4\xe2\x89\xa0\xe1\x82\xa0.\xf0\x90\xb9\xa5\xf0\x90\xb9\xb0", false); } // [B1]
6775test { try toAsciiFail("\xe1\x82\xb4\xe2\x89\xa0\xe1\x82\xa0.\xf0\x90\xb9\xa5\xf0\x90\xb9\xb0", true); } // [B1]
2926test { try toUnicodeFail("\xe1\x82\xb4=\xcc\xb8\xe1\x82\xa0.\xf0\x90\xb9\xa5\xf0\x90\xb9\xb0"); } // [B1]6776test { try toUnicodeFail("\xe1\x82\xb4=\xcc\xb8\xe1\x82\xa0.\xf0\x90\xb9\xa5\xf0\x90\xb9\xb0"); } // [B1]
6777test { try toAsciiFail("\xe1\x82\xb4=\xcc\xb8\xe1\x82\xa0.\xf0\x90\xb9\xa5\xf0\x90\xb9\xb0", false); } // [B1]
6778test { try toAsciiFail("\xe1\x82\xb4=\xcc\xb8\xe1\x82\xa0.\xf0\x90\xb9\xa5\xf0\x90\xb9\xb0", true); } // [B1]
2927test { try toUnicodeFail("\xe2\xb4\x94=\xcc\xb8\xe2\xb4\x80.\xf0\x90\xb9\xa5\xf0\x90\xb9\xb0"); } // [B1]6779test { try toUnicodeFail("\xe2\xb4\x94=\xcc\xb8\xe2\xb4\x80.\xf0\x90\xb9\xa5\xf0\x90\xb9\xb0"); } // [B1]
6780test { try toAsciiFail("\xe2\xb4\x94=\xcc\xb8\xe2\xb4\x80.\xf0\x90\xb9\xa5\xf0\x90\xb9\xb0", false); } // [B1]
6781test { try toAsciiFail("\xe2\xb4\x94=\xcc\xb8\xe2\xb4\x80.\xf0\x90\xb9\xa5\xf0\x90\xb9\xb0", true); } // [B1]
2928test { try toUnicodeFail("\xe2\xb4\x94\xe2\x89\xa0\xe2\xb4\x80.\xf0\x90\xb9\xa5\xf0\x90\xb9\xb0"); } // [B1]6782test { try toUnicodeFail("\xe2\xb4\x94\xe2\x89\xa0\xe2\xb4\x80.\xf0\x90\xb9\xa5\xf0\x90\xb9\xb0"); } // [B1]
6783test { try toAsciiFail("\xe2\xb4\x94\xe2\x89\xa0\xe2\xb4\x80.\xf0\x90\xb9\xa5\xf0\x90\xb9\xb0", false); } // [B1]
6784test { try toAsciiFail("\xe2\xb4\x94\xe2\x89\xa0\xe2\xb4\x80.\xf0\x90\xb9\xa5\xf0\x90\xb9\xb0", true); } // [B1]
2929test { try toUnicodeFail("xn--1ch603bxb.xn--do0dwa"); } // [B1]6785test { try toUnicodeFail("xn--1ch603bxb.xn--do0dwa"); } // [B1]
6786test { try toAsciiFail("xn--1ch603bxb.xn--do0dwa", false); } // [B1]
6787test { try toAsciiFail("xn--1ch603bxb.xn--do0dwa", true); } // [B1]
2930test { try toUnicodeFail("xn--7md3b171g.xn--do0dwa"); } // [B1, V7]6788test { try toUnicodeFail("xn--7md3b171g.xn--do0dwa"); } // [B1, V7]
6789test { try toAsciiFail("xn--7md3b171g.xn--do0dwa", false); } // [B1, V7]
6790test { try toAsciiFail("xn--7md3b171g.xn--do0dwa", true); } // [B1, V7]
2931test { try toUnicodeFail("-\xe2\x80\x8c\xe2\x92\x99\xf0\x90\xab\xa5\xef\xbd\xa1\xf0\x9d\xa8\xb5"); } // [C1, V3, V6, V7]6791test { try toUnicodeFail("-\xe2\x80\x8c\xe2\x92\x99\xf0\x90\xab\xa5\xef\xbd\xa1\xf0\x9d\xa8\xb5"); } // [C1, V3, V6, V7]
6792test { try toAsciiFail("-\xe2\x80\x8c\xe2\x92\x99\xf0\x90\xab\xa5\xef\xbd\xa1\xf0\x9d\xa8\xb5", false); } // [C1, V3, V6, V7]
6793test { try toAsciiFail("-\xe2\x80\x8c\xe2\x92\x99\xf0\x90\xab\xa5\xef\xbd\xa1\xf0\x9d\xa8\xb5", true); } // [V3, V6, V7]
2932test { try toUnicodeFail("-\xe2\x80\x8c18.\xf0\x90\xab\xa5\xe3\x80\x82\xf0\x9d\xa8\xb5"); } // [C1, V3, V6]6794test { try toUnicodeFail("-\xe2\x80\x8c18.\xf0\x90\xab\xa5\xe3\x80\x82\xf0\x9d\xa8\xb5"); } // [C1, V3, V6]
6795test { try toAsciiFail("-\xe2\x80\x8c18.\xf0\x90\xab\xa5\xe3\x80\x82\xf0\x9d\xa8\xb5", false); } // [C1, V3, V6]
6796test { try toAsciiFail("-\xe2\x80\x8c18.\xf0\x90\xab\xa5\xe3\x80\x82\xf0\x9d\xa8\xb5", true); } // [V3, V6]
2933test { try toUnicodeFail("-18.xn--rx9c.xn--382h"); } // [V3, V6]6797test { try toUnicodeFail("-18.xn--rx9c.xn--382h"); } // [V3, V6]
6798test { try toAsciiFail("-18.xn--rx9c.xn--382h", false); } // [V3, V6]
6799test { try toAsciiFail("-18.xn--rx9c.xn--382h", true); } // [V3, V6]
2934test { try toUnicodeFail("xn---18-9m0a.xn--rx9c.xn--382h"); } // [C1, V3, V6]6800test { try toUnicodeFail("xn---18-9m0a.xn--rx9c.xn--382h"); } // [C1, V3, V6]
6801test { try toAsciiFail("xn---18-9m0a.xn--rx9c.xn--382h", false); } // [C1, V3, V6]
6802test { try toAsciiFail("xn---18-9m0a.xn--rx9c.xn--382h", true); } // [C1, V3, V6]
2935test { try toUnicodeFail("xn----ddps939g.xn--382h"); } // [V3, V6, V7]6803test { try toUnicodeFail("xn----ddps939g.xn--382h"); } // [V3, V6, V7]
6804test { try toAsciiFail("xn----ddps939g.xn--382h", false); } // [V3, V6, V7]
6805test { try toAsciiFail("xn----ddps939g.xn--382h", true); } // [V3, V6, V7]
2936test { try toUnicodeFail("xn----sgn18r3191a.xn--382h"); } // [C1, V3, V6, V7]6806test { try toUnicodeFail("xn----sgn18r3191a.xn--382h"); } // [C1, V3, V6, V7]
6807test { try toAsciiFail("xn----sgn18r3191a.xn--382h", false); } // [C1, V3, V6, V7]
6808test { try toAsciiFail("xn----sgn18r3191a.xn--382h", true); } // [C1, V3, V6, V7]
2937test { try toUnicodeFail("\xef\xb8\x92.\xca\x8c\xe1\xa0\xa3-\xf0\x90\xb9\xbd"); } // [B1, B5, B6, V7]6809test { try toUnicodeFail("\xef\xb8\x92.\xca\x8c\xe1\xa0\xa3-\xf0\x90\xb9\xbd"); } // [B1, B5, B6, V7]
6810test { try toAsciiFail("\xef\xb8\x92.\xca\x8c\xe1\xa0\xa3-\xf0\x90\xb9\xbd", false); } // [B1, B5, B6, V7]
6811test { try toAsciiFail("\xef\xb8\x92.\xca\x8c\xe1\xa0\xa3-\xf0\x90\xb9\xbd", true); } // [B1, B5, B6, V7]
2938test { try toUnicodeFail("\xe3\x80\x82.\xca\x8c\xe1\xa0\xa3-\xf0\x90\xb9\xbd"); } // [B5, B6, X4_2]6812test { try toUnicodeFail("\xe3\x80\x82.\xca\x8c\xe1\xa0\xa3-\xf0\x90\xb9\xbd"); } // [B5, B6, X4_2]
6813test { try toAsciiFail("\xe3\x80\x82.\xca\x8c\xe1\xa0\xa3-\xf0\x90\xb9\xbd", false); } // [B5, B6, A4_2]
6814test { try toAsciiFail("\xe3\x80\x82.\xca\x8c\xe1\xa0\xa3-\xf0\x90\xb9\xbd", true); } // [B5, B6, A4_2]
2939test { try toUnicodeFail("\xe3\x80\x82.\xc9\x85\xe1\xa0\xa3-\xf0\x90\xb9\xbd"); } // [B5, B6, X4_2]6815test { try toUnicodeFail("\xe3\x80\x82.\xc9\x85\xe1\xa0\xa3-\xf0\x90\xb9\xbd"); } // [B5, B6, X4_2]
6816test { try toAsciiFail("\xe3\x80\x82.\xc9\x85\xe1\xa0\xa3-\xf0\x90\xb9\xbd", false); } // [B5, B6, A4_2]
6817test { try toAsciiFail("\xe3\x80\x82.\xc9\x85\xe1\xa0\xa3-\xf0\x90\xb9\xbd", true); } // [B5, B6, A4_2]
2940test { try toUnicodeFail("..xn----73a596nuh9t"); } // [B5, B6, X4_2]6818test { try toUnicodeFail("..xn----73a596nuh9t"); } // [B5, B6, X4_2]
6819test { try toAsciiFail("..xn----73a596nuh9t", false); } // [B5, B6, A4_2]
6820test { try toAsciiFail("..xn----73a596nuh9t", true); } // [B5, B6, A4_2]
2941test { try toUnicodeFail("\xef\xb8\x92.\xc9\x85\xe1\xa0\xa3-\xf0\x90\xb9\xbd"); } // [B1, B5, B6, V7]6821test { try toUnicodeFail("\xef\xb8\x92.\xc9\x85\xe1\xa0\xa3-\xf0\x90\xb9\xbd"); } // [B1, B5, B6, V7]
6822test { try toAsciiFail("\xef\xb8\x92.\xc9\x85\xe1\xa0\xa3-\xf0\x90\xb9\xbd", false); } // [B1, B5, B6, V7]
6823test { try toAsciiFail("\xef\xb8\x92.\xc9\x85\xe1\xa0\xa3-\xf0\x90\xb9\xbd", true); } // [B1, B5, B6, V7]
2942test { try toUnicodeFail("xn--y86c.xn----73a596nuh9t"); } // [B1, B5, B6, V7]6824test { try toUnicodeFail("xn--y86c.xn----73a596nuh9t"); } // [B1, B5, B6, V7]
6825test { try toAsciiFail("xn--y86c.xn----73a596nuh9t", false); } // [B1, B5, B6, V7]
6826test { try toAsciiFail("xn--y86c.xn----73a596nuh9t", true); } // [B1, B5, B6, V7]
2943test { try toUnicodeFail("\xef\xb8\x85\xef\xb8\x92\xe3\x80\x82\xf0\xa6\x80\xbe\xe1\xb3\xa0"); } // [V7]6827test { try toUnicodeFail("\xef\xb8\x85\xef\xb8\x92\xe3\x80\x82\xf0\xa6\x80\xbe\xe1\xb3\xa0"); } // [V7]
6828test { try toAsciiFail("\xef\xb8\x85\xef\xb8\x92\xe3\x80\x82\xf0\xa6\x80\xbe\xe1\xb3\xa0", false); } // [V7]
6829test { try toAsciiFail("\xef\xb8\x85\xef\xb8\x92\xe3\x80\x82\xf0\xa6\x80\xbe\xe1\xb3\xa0", true); } // [V7]
2944test { try toUnicodeFail("\xef\xb8\x85\xe3\x80\x82\xe3\x80\x82\xf0\xa6\x80\xbe\xe1\xb3\xa0"); } // [X4_2]6830test { try toUnicodeFail("\xef\xb8\x85\xe3\x80\x82\xe3\x80\x82\xf0\xa6\x80\xbe\xe1\xb3\xa0"); } // [X4_2]
6831test { try toAsciiFail("\xef\xb8\x85\xe3\x80\x82\xe3\x80\x82\xf0\xa6\x80\xbe\xe1\xb3\xa0", false); } // [A4_2]
6832test { try toAsciiFail("\xef\xb8\x85\xe3\x80\x82\xe3\x80\x82\xf0\xa6\x80\xbe\xe1\xb3\xa0", true); } // [A4_2]
2945test { try toUnicodeFail("..xn--t6f5138v"); } // [X4_2]6833test { try toUnicodeFail("..xn--t6f5138v"); } // [X4_2]
6834test { try toAsciiFail("..xn--t6f5138v", false); } // [A4_2]
6835test { try toAsciiFail("..xn--t6f5138v", true); } // [A4_2]
2946test { try toUnicodeFail("xn--y86c.xn--t6f5138v"); } // [V7]6836test { try toUnicodeFail("xn--y86c.xn--t6f5138v"); } // [V7]
6837test { try toAsciiFail("xn--y86c.xn--t6f5138v", false); } // [V7]
6838test { try toAsciiFail("xn--y86c.xn--t6f5138v", true); } // [V7]
2947test { try toUnicodePass("xn--t6f5138v", "\xf0\xa6\x80\xbe\xe1\xb3\xa0"); }6839test { try toUnicodePass("xn--t6f5138v", "\xf0\xa6\x80\xbe\xe1\xb3\xa0"); }
2948test { try toAsciiPass("xn--t6f5138v", "xn--t6f5138v", false); }6840test { try toAsciiPass("xn--t6f5138v", "xn--t6f5138v", false); }
2949test { try toAsciiPass("xn--t6f5138v", "xn--t6f5138v", true); }6841test { try toAsciiPass("xn--t6f5138v", "xn--t6f5138v", true); }
...@@ -2951,41 +6843,101 @@ test { try toUnicodePass("\xf0\xa6\x80\xbe\xe1\xb3\xa0", "\xf0\xa6\x80\xbe\xe1\x...@@ -2951,41 +6843,101 @@ test { try toUnicodePass("\xf0\xa6\x80\xbe\xe1\xb3\xa0", "\xf0\xa6\x80\xbe\xe1\x
2951test { try toAsciiPass("\xf0\xa6\x80\xbe\xe1\xb3\xa0", "xn--t6f5138v", false); }6843test { try toAsciiPass("\xf0\xa6\x80\xbe\xe1\xb3\xa0", "xn--t6f5138v", false); }
2952test { try toAsciiPass("\xf0\xa6\x80\xbe\xe1\xb3\xa0", "xn--t6f5138v", true); }6844test { try toAsciiPass("\xf0\xa6\x80\xbe\xe1\xb3\xa0", "xn--t6f5138v", true); }
2953test { try toUnicodeFail("\xf0\x9e\xae\x91\xc3\x9f\xf4\x8f\x9e\x9e\xe3\x80\x82\xe1\xa1\x81"); } // [B2, B3, V7]6845test { try toUnicodeFail("\xf0\x9e\xae\x91\xc3\x9f\xf4\x8f\x9e\x9e\xe3\x80\x82\xe1\xa1\x81"); } // [B2, B3, V7]
6846test { try toAsciiFail("\xf0\x9e\xae\x91\xc3\x9f\xf4\x8f\x9e\x9e\xe3\x80\x82\xe1\xa1\x81", false); } // [B2, B3, V7]
6847test { try toAsciiFail("\xf0\x9e\xae\x91\xc3\x9f\xf4\x8f\x9e\x9e\xe3\x80\x82\xe1\xa1\x81", true); } // [B2, B3, V7]
2954test { try toUnicodeFail("\xf0\x9e\xae\x91SS\xf4\x8f\x9e\x9e\xe3\x80\x82\xe1\xa1\x81"); } // [B2, B3, V7]6848test { try toUnicodeFail("\xf0\x9e\xae\x91SS\xf4\x8f\x9e\x9e\xe3\x80\x82\xe1\xa1\x81"); } // [B2, B3, V7]
6849test { try toAsciiFail("\xf0\x9e\xae\x91SS\xf4\x8f\x9e\x9e\xe3\x80\x82\xe1\xa1\x81", false); } // [B2, B3, V7]
6850test { try toAsciiFail("\xf0\x9e\xae\x91SS\xf4\x8f\x9e\x9e\xe3\x80\x82\xe1\xa1\x81", true); } // [B2, B3, V7]
2955test { try toUnicodeFail("\xf0\x9e\xae\x91ss\xf4\x8f\x9e\x9e\xe3\x80\x82\xe1\xa1\x81"); } // [B2, B3, V7]6851test { try toUnicodeFail("\xf0\x9e\xae\x91ss\xf4\x8f\x9e\x9e\xe3\x80\x82\xe1\xa1\x81"); } // [B2, B3, V7]
6852test { try toAsciiFail("\xf0\x9e\xae\x91ss\xf4\x8f\x9e\x9e\xe3\x80\x82\xe1\xa1\x81", false); } // [B2, B3, V7]
6853test { try toAsciiFail("\xf0\x9e\xae\x91ss\xf4\x8f\x9e\x9e\xe3\x80\x82\xe1\xa1\x81", true); } // [B2, B3, V7]
2956test { try toUnicodeFail("\xf0\x9e\xae\x91Ss\xf4\x8f\x9e\x9e\xe3\x80\x82\xe1\xa1\x81"); } // [B2, B3, V7]6854test { try toUnicodeFail("\xf0\x9e\xae\x91Ss\xf4\x8f\x9e\x9e\xe3\x80\x82\xe1\xa1\x81"); } // [B2, B3, V7]
6855test { try toAsciiFail("\xf0\x9e\xae\x91Ss\xf4\x8f\x9e\x9e\xe3\x80\x82\xe1\xa1\x81", false); } // [B2, B3, V7]
6856test { try toAsciiFail("\xf0\x9e\xae\x91Ss\xf4\x8f\x9e\x9e\xe3\x80\x82\xe1\xa1\x81", true); } // [B2, B3, V7]
2957test { try toUnicodeFail("xn--ss-o412ac6305g.xn--07e"); } // [B2, B3, V7]6857test { try toUnicodeFail("xn--ss-o412ac6305g.xn--07e"); } // [B2, B3, V7]
6858test { try toAsciiFail("xn--ss-o412ac6305g.xn--07e", false); } // [B2, B3, V7]
6859test { try toAsciiFail("xn--ss-o412ac6305g.xn--07e", true); } // [B2, B3, V7]
2958test { try toUnicodeFail("xn--zca9432wb989f.xn--07e"); } // [B2, B3, V7]6860test { try toUnicodeFail("xn--zca9432wb989f.xn--07e"); } // [B2, B3, V7]
6861test { try toAsciiFail("xn--zca9432wb989f.xn--07e", false); } // [B2, B3, V7]
6862test { try toAsciiFail("xn--zca9432wb989f.xn--07e", true); } // [B2, B3, V7]
2959test { try toUnicodeFail("\xea\xa5\x93\xe2\x80\x8d\xd8\xac\xd9\xac\xe3\x80\x82\xf0\xb1\x86\x8e\xf3\xbb\xa1\x9f\xe2\x80\x8c\xf3\xa0\x85\x86"); } // [B5, B6, C1, V6, V7]6863test { try toUnicodeFail("\xea\xa5\x93\xe2\x80\x8d\xd8\xac\xd9\xac\xe3\x80\x82\xf0\xb1\x86\x8e\xf3\xbb\xa1\x9f\xe2\x80\x8c\xf3\xa0\x85\x86"); } // [B5, B6, C1, V6, V7]
6864test { try toAsciiFail("\xea\xa5\x93\xe2\x80\x8d\xd8\xac\xd9\xac\xe3\x80\x82\xf0\xb1\x86\x8e\xf3\xbb\xa1\x9f\xe2\x80\x8c\xf3\xa0\x85\x86", false); } // [B5, B6, C1, V6, V7]
6865test { try toAsciiFail("\xea\xa5\x93\xe2\x80\x8d\xd8\xac\xd9\xac\xe3\x80\x82\xf0\xb1\x86\x8e\xf3\xbb\xa1\x9f\xe2\x80\x8c\xf3\xa0\x85\x86", true); } // [B5, B6, V6, V7]
2960test { try toUnicodeFail("xn--rgb2k6711c.xn--ec8nj3948b"); } // [B5, B6, V6, V7]6866test { try toUnicodeFail("xn--rgb2k6711c.xn--ec8nj3948b"); } // [B5, B6, V6, V7]
6867test { try toAsciiFail("xn--rgb2k6711c.xn--ec8nj3948b", false); } // [B5, B6, V6, V7]
6868test { try toAsciiFail("xn--rgb2k6711c.xn--ec8nj3948b", true); } // [B5, B6, V6, V7]
2961test { try toUnicodeFail("xn--rgb2k500fhq9j.xn--0ug78870a5sp9d"); } // [B5, B6, C1, V6, V7]6869test { try toUnicodeFail("xn--rgb2k500fhq9j.xn--0ug78870a5sp9d"); } // [B5, B6, C1, V6, V7]
6870test { try toAsciiFail("xn--rgb2k500fhq9j.xn--0ug78870a5sp9d", false); } // [B5, B6, C1, V6, V7]
6871test { try toAsciiFail("xn--rgb2k500fhq9j.xn--0ug78870a5sp9d", true); } // [B5, B6, C1, V6, V7]
2962test { try toUnicodeFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-\xc3\x9f\xe2\x80\x8c\xe2\x89\xa0"); } // [C1, V3, V7]6872test { try toUnicodeFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-\xc3\x9f\xe2\x80\x8c\xe2\x89\xa0"); } // [C1, V3, V7]
6873test { try toAsciiFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-\xc3\x9f\xe2\x80\x8c\xe2\x89\xa0", false); } // [C1, V3, V7]
6874test { try toAsciiFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-\xc3\x9f\xe2\x80\x8c\xe2\x89\xa0", true); } // [V3, V7]
2963test { try toUnicodeFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-\xc3\x9f\xe2\x80\x8c=\xcc\xb8"); } // [C1, V3, V7]6875test { try toUnicodeFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-\xc3\x9f\xe2\x80\x8c=\xcc\xb8"); } // [C1, V3, V7]
6876test { try toAsciiFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-\xc3\x9f\xe2\x80\x8c=\xcc\xb8", false); } // [C1, V3, V7]
6877test { try toAsciiFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-\xc3\x9f\xe2\x80\x8c=\xcc\xb8", true); } // [V3, V7]
2964test { try toUnicodeFail("\xf3\xa0\x95\x8f.-\xc3\x9f\xe2\x80\x8c\xe2\x89\xa0"); } // [C1, V3, V7]6878test { try toUnicodeFail("\xf3\xa0\x95\x8f.-\xc3\x9f\xe2\x80\x8c\xe2\x89\xa0"); } // [C1, V3, V7]
6879test { try toAsciiFail("\xf3\xa0\x95\x8f.-\xc3\x9f\xe2\x80\x8c\xe2\x89\xa0", false); } // [C1, V3, V7]
6880test { try toAsciiFail("\xf3\xa0\x95\x8f.-\xc3\x9f\xe2\x80\x8c\xe2\x89\xa0", true); } // [V3, V7]
2965test { try toUnicodeFail("\xf3\xa0\x95\x8f.-\xc3\x9f\xe2\x80\x8c=\xcc\xb8"); } // [C1, V3, V7]6881test { try toUnicodeFail("\xf3\xa0\x95\x8f.-\xc3\x9f\xe2\x80\x8c=\xcc\xb8"); } // [C1, V3, V7]
6882test { try toAsciiFail("\xf3\xa0\x95\x8f.-\xc3\x9f\xe2\x80\x8c=\xcc\xb8", false); } // [C1, V3, V7]
6883test { try toAsciiFail("\xf3\xa0\x95\x8f.-\xc3\x9f\xe2\x80\x8c=\xcc\xb8", true); } // [V3, V7]
2966test { try toUnicodeFail("\xf3\xa0\x95\x8f.-SS\xe2\x80\x8c=\xcc\xb8"); } // [C1, V3, V7]6884test { try toUnicodeFail("\xf3\xa0\x95\x8f.-SS\xe2\x80\x8c=\xcc\xb8"); } // [C1, V3, V7]
6885test { try toAsciiFail("\xf3\xa0\x95\x8f.-SS\xe2\x80\x8c=\xcc\xb8", false); } // [C1, V3, V7]
6886test { try toAsciiFail("\xf3\xa0\x95\x8f.-SS\xe2\x80\x8c=\xcc\xb8", true); } // [V3, V7]
2967test { try toUnicodeFail("\xf3\xa0\x95\x8f.-SS\xe2\x80\x8c\xe2\x89\xa0"); } // [C1, V3, V7]6887test { try toUnicodeFail("\xf3\xa0\x95\x8f.-SS\xe2\x80\x8c\xe2\x89\xa0"); } // [C1, V3, V7]
6888test { try toAsciiFail("\xf3\xa0\x95\x8f.-SS\xe2\x80\x8c\xe2\x89\xa0", false); } // [C1, V3, V7]
6889test { try toAsciiFail("\xf3\xa0\x95\x8f.-SS\xe2\x80\x8c\xe2\x89\xa0", true); } // [V3, V7]
2968test { try toUnicodeFail("\xf3\xa0\x95\x8f.-ss\xe2\x80\x8c\xe2\x89\xa0"); } // [C1, V3, V7]6890test { try toUnicodeFail("\xf3\xa0\x95\x8f.-ss\xe2\x80\x8c\xe2\x89\xa0"); } // [C1, V3, V7]
6891test { try toAsciiFail("\xf3\xa0\x95\x8f.-ss\xe2\x80\x8c\xe2\x89\xa0", false); } // [C1, V3, V7]
6892test { try toAsciiFail("\xf3\xa0\x95\x8f.-ss\xe2\x80\x8c\xe2\x89\xa0", true); } // [V3, V7]
2969test { try toUnicodeFail("\xf3\xa0\x95\x8f.-ss\xe2\x80\x8c=\xcc\xb8"); } // [C1, V3, V7]6893test { try toUnicodeFail("\xf3\xa0\x95\x8f.-ss\xe2\x80\x8c=\xcc\xb8"); } // [C1, V3, V7]
6894test { try toAsciiFail("\xf3\xa0\x95\x8f.-ss\xe2\x80\x8c=\xcc\xb8", false); } // [C1, V3, V7]
6895test { try toAsciiFail("\xf3\xa0\x95\x8f.-ss\xe2\x80\x8c=\xcc\xb8", true); } // [V3, V7]
2970test { try toUnicodeFail("\xf3\xa0\x95\x8f.-Ss\xe2\x80\x8c=\xcc\xb8"); } // [C1, V3, V7]6896test { try toUnicodeFail("\xf3\xa0\x95\x8f.-Ss\xe2\x80\x8c=\xcc\xb8"); } // [C1, V3, V7]
6897test { try toAsciiFail("\xf3\xa0\x95\x8f.-Ss\xe2\x80\x8c=\xcc\xb8", false); } // [C1, V3, V7]
6898test { try toAsciiFail("\xf3\xa0\x95\x8f.-Ss\xe2\x80\x8c=\xcc\xb8", true); } // [V3, V7]
2971test { try toUnicodeFail("\xf3\xa0\x95\x8f.-Ss\xe2\x80\x8c\xe2\x89\xa0"); } // [C1, V3, V7]6899test { try toUnicodeFail("\xf3\xa0\x95\x8f.-Ss\xe2\x80\x8c\xe2\x89\xa0"); } // [C1, V3, V7]
6900test { try toAsciiFail("\xf3\xa0\x95\x8f.-Ss\xe2\x80\x8c\xe2\x89\xa0", false); } // [C1, V3, V7]
6901test { try toAsciiFail("\xf3\xa0\x95\x8f.-Ss\xe2\x80\x8c\xe2\x89\xa0", true); } // [V3, V7]
2972test { try toUnicodeFail("xn--u836e.xn---ss-gl2a"); } // [V3, V7]6902test { try toUnicodeFail("xn--u836e.xn---ss-gl2a"); } // [V3, V7]
6903test { try toAsciiFail("xn--u836e.xn---ss-gl2a", false); } // [V3, V7]
6904test { try toAsciiFail("xn--u836e.xn---ss-gl2a", true); } // [V3, V7]
2973test { try toUnicodeFail("xn--u836e.xn---ss-cn0at5l"); } // [C1, V3, V7]6905test { try toUnicodeFail("xn--u836e.xn---ss-cn0at5l"); } // [C1, V3, V7]
6906test { try toAsciiFail("xn--u836e.xn---ss-cn0at5l", false); } // [C1, V3, V7]
6907test { try toAsciiFail("xn--u836e.xn---ss-cn0at5l", true); } // [C1, V3, V7]
2974test { try toUnicodeFail("xn--u836e.xn----qfa750ve7b"); } // [C1, V3, V7]6908test { try toUnicodeFail("xn--u836e.xn----qfa750ve7b"); } // [C1, V3, V7]
6909test { try toAsciiFail("xn--u836e.xn----qfa750ve7b", false); } // [C1, V3, V7]
6910test { try toAsciiFail("xn--u836e.xn----qfa750ve7b", true); } // [C1, V3, V7]
2975test { try toUnicodeFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-SS\xe2\x80\x8c=\xcc\xb8"); } // [C1, V3, V7]6911test { try toUnicodeFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-SS\xe2\x80\x8c=\xcc\xb8"); } // [C1, V3, V7]
6912test { try toAsciiFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-SS\xe2\x80\x8c=\xcc\xb8", false); } // [C1, V3, V7]
6913test { try toAsciiFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-SS\xe2\x80\x8c=\xcc\xb8", true); } // [V3, V7]
2976test { try toUnicodeFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-SS\xe2\x80\x8c\xe2\x89\xa0"); } // [C1, V3, V7]6914test { try toUnicodeFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-SS\xe2\x80\x8c\xe2\x89\xa0"); } // [C1, V3, V7]
6915test { try toAsciiFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-SS\xe2\x80\x8c\xe2\x89\xa0", false); } // [C1, V3, V7]
6916test { try toAsciiFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-SS\xe2\x80\x8c\xe2\x89\xa0", true); } // [V3, V7]
2977test { try toUnicodeFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-ss\xe2\x80\x8c\xe2\x89\xa0"); } // [C1, V3, V7]6917test { try toUnicodeFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-ss\xe2\x80\x8c\xe2\x89\xa0"); } // [C1, V3, V7]
6918test { try toAsciiFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-ss\xe2\x80\x8c\xe2\x89\xa0", false); } // [C1, V3, V7]
6919test { try toAsciiFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-ss\xe2\x80\x8c\xe2\x89\xa0", true); } // [V3, V7]
2978test { try toUnicodeFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-ss\xe2\x80\x8c=\xcc\xb8"); } // [C1, V3, V7]6920test { try toUnicodeFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-ss\xe2\x80\x8c=\xcc\xb8"); } // [C1, V3, V7]
6921test { try toAsciiFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-ss\xe2\x80\x8c=\xcc\xb8", false); } // [C1, V3, V7]
6922test { try toAsciiFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-ss\xe2\x80\x8c=\xcc\xb8", true); } // [V3, V7]
2979test { try toUnicodeFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-Ss\xe2\x80\x8c=\xcc\xb8"); } // [C1, V3, V7]6923test { try toUnicodeFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-Ss\xe2\x80\x8c=\xcc\xb8"); } // [C1, V3, V7]
6924test { try toAsciiFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-Ss\xe2\x80\x8c=\xcc\xb8", false); } // [C1, V3, V7]
6925test { try toAsciiFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-Ss\xe2\x80\x8c=\xcc\xb8", true); } // [V3, V7]
2980test { try toUnicodeFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-Ss\xe2\x80\x8c\xe2\x89\xa0"); } // [C1, V3, V7]6926test { try toUnicodeFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-Ss\xe2\x80\x8c\xe2\x89\xa0"); } // [C1, V3, V7]
6927test { try toAsciiFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-Ss\xe2\x80\x8c\xe2\x89\xa0", false); } // [C1, V3, V7]
6928test { try toAsciiFail("\xf3\xa0\x95\x8f\xef\xbc\x8e-Ss\xe2\x80\x8c\xe2\x89\xa0", true); } // [V3, V7]
2981test { try toAsciiPass("\xe1\xa1\x99\xe2\x80\x8c\xef\xbd\xa1\xe2\x89\xaf\xf0\x90\x8b\xb2\xe2\x89\xa0", "xn--p8e.xn--1ch3a7084l", true); }6929test { try toAsciiPass("\xe1\xa1\x99\xe2\x80\x8c\xef\xbd\xa1\xe2\x89\xaf\xf0\x90\x8b\xb2\xe2\x89\xa0", "xn--p8e.xn--1ch3a7084l", true); }
2982test { try toUnicodeFail("\xe1\xa1\x99\xe2\x80\x8c\xef\xbd\xa1\xe2\x89\xaf\xf0\x90\x8b\xb2\xe2\x89\xa0"); } // [C1]6930test { try toUnicodeFail("\xe1\xa1\x99\xe2\x80\x8c\xef\xbd\xa1\xe2\x89\xaf\xf0\x90\x8b\xb2\xe2\x89\xa0"); } // [C1]
6931test { try toAsciiFail("\xe1\xa1\x99\xe2\x80\x8c\xef\xbd\xa1\xe2\x89\xaf\xf0\x90\x8b\xb2\xe2\x89\xa0", false); } // [C1]
2983test { try toAsciiPass("\xe1\xa1\x99\xe2\x80\x8c\xef\xbd\xa1>\xcc\xb8\xf0\x90\x8b\xb2=\xcc\xb8", "xn--p8e.xn--1ch3a7084l", true); }6932test { try toAsciiPass("\xe1\xa1\x99\xe2\x80\x8c\xef\xbd\xa1>\xcc\xb8\xf0\x90\x8b\xb2=\xcc\xb8", "xn--p8e.xn--1ch3a7084l", true); }
2984test { try toUnicodeFail("\xe1\xa1\x99\xe2\x80\x8c\xef\xbd\xa1>\xcc\xb8\xf0\x90\x8b\xb2=\xcc\xb8"); } // [C1]6933test { try toUnicodeFail("\xe1\xa1\x99\xe2\x80\x8c\xef\xbd\xa1>\xcc\xb8\xf0\x90\x8b\xb2=\xcc\xb8"); } // [C1]
6934test { try toAsciiFail("\xe1\xa1\x99\xe2\x80\x8c\xef\xbd\xa1>\xcc\xb8\xf0\x90\x8b\xb2=\xcc\xb8", false); } // [C1]
2985test { try toAsciiPass("\xe1\xa1\x99\xe2\x80\x8c\xe3\x80\x82\xe2\x89\xaf\xf0\x90\x8b\xb2\xe2\x89\xa0", "xn--p8e.xn--1ch3a7084l", true); }6935test { try toAsciiPass("\xe1\xa1\x99\xe2\x80\x8c\xe3\x80\x82\xe2\x89\xaf\xf0\x90\x8b\xb2\xe2\x89\xa0", "xn--p8e.xn--1ch3a7084l", true); }
2986test { try toUnicodeFail("\xe1\xa1\x99\xe2\x80\x8c\xe3\x80\x82\xe2\x89\xaf\xf0\x90\x8b\xb2\xe2\x89\xa0"); } // [C1]6936test { try toUnicodeFail("\xe1\xa1\x99\xe2\x80\x8c\xe3\x80\x82\xe2\x89\xaf\xf0\x90\x8b\xb2\xe2\x89\xa0"); } // [C1]
6937test { try toAsciiFail("\xe1\xa1\x99\xe2\x80\x8c\xe3\x80\x82\xe2\x89\xaf\xf0\x90\x8b\xb2\xe2\x89\xa0", false); } // [C1]
2987test { try toAsciiPass("\xe1\xa1\x99\xe2\x80\x8c\xe3\x80\x82>\xcc\xb8\xf0\x90\x8b\xb2=\xcc\xb8", "xn--p8e.xn--1ch3a7084l", true); }6938test { try toAsciiPass("\xe1\xa1\x99\xe2\x80\x8c\xe3\x80\x82>\xcc\xb8\xf0\x90\x8b\xb2=\xcc\xb8", "xn--p8e.xn--1ch3a7084l", true); }
2988test { try toUnicodeFail("\xe1\xa1\x99\xe2\x80\x8c\xe3\x80\x82>\xcc\xb8\xf0\x90\x8b\xb2=\xcc\xb8"); } // [C1]6939test { try toUnicodeFail("\xe1\xa1\x99\xe2\x80\x8c\xe3\x80\x82>\xcc\xb8\xf0\x90\x8b\xb2=\xcc\xb8"); } // [C1]
6940test { try toAsciiFail("\xe1\xa1\x99\xe2\x80\x8c\xe3\x80\x82>\xcc\xb8\xf0\x90\x8b\xb2=\xcc\xb8", false); } // [C1]
2989test { try toUnicodePass("xn--p8e.xn--1ch3a7084l", "\xe1\xa1\x99.\xe2\x89\xaf\xf0\x90\x8b\xb2\xe2\x89\xa0"); }6941test { try toUnicodePass("xn--p8e.xn--1ch3a7084l", "\xe1\xa1\x99.\xe2\x89\xaf\xf0\x90\x8b\xb2\xe2\x89\xa0"); }
2990test { try toAsciiPass("xn--p8e.xn--1ch3a7084l", "xn--p8e.xn--1ch3a7084l", false); }6942test { try toAsciiPass("xn--p8e.xn--1ch3a7084l", "xn--p8e.xn--1ch3a7084l", false); }
2991test { try toAsciiPass("xn--p8e.xn--1ch3a7084l", "xn--p8e.xn--1ch3a7084l", true); }6943test { try toAsciiPass("xn--p8e.xn--1ch3a7084l", "xn--p8e.xn--1ch3a7084l", true); }
...@@ -2996,150 +6948,422 @@ test { try toUnicodePass("\xe1\xa1\x99.>\xcc\xb8\xf0\x90\x8b\xb2=\xcc\xb8", "\xe...@@ -2996,150 +6948,422 @@ test { try toUnicodePass("\xe1\xa1\x99.>\xcc\xb8\xf0\x90\x8b\xb2=\xcc\xb8", "\xe
2996test { try toAsciiPass("\xe1\xa1\x99.>\xcc\xb8\xf0\x90\x8b\xb2=\xcc\xb8", "xn--p8e.xn--1ch3a7084l", false); }6948test { try toAsciiPass("\xe1\xa1\x99.>\xcc\xb8\xf0\x90\x8b\xb2=\xcc\xb8", "xn--p8e.xn--1ch3a7084l", false); }
2997test { try toAsciiPass("\xe1\xa1\x99.>\xcc\xb8\xf0\x90\x8b\xb2=\xcc\xb8", "xn--p8e.xn--1ch3a7084l", true); }6949test { try toAsciiPass("\xe1\xa1\x99.>\xcc\xb8\xf0\x90\x8b\xb2=\xcc\xb8", "xn--p8e.xn--1ch3a7084l", true); }
2998test { try toUnicodeFail("xn--p8e650b.xn--1ch3a7084l"); } // [C1]6950test { try toUnicodeFail("xn--p8e650b.xn--1ch3a7084l"); } // [C1]
6951test { try toAsciiFail("xn--p8e650b.xn--1ch3a7084l", false); } // [C1]
6952test { try toAsciiFail("xn--p8e650b.xn--1ch3a7084l", true); } // [C1]
2999test { try toUnicodeFail("\xf0\x90\xb9\xa7\xf0\x9e\xb2\x84\xf3\xa0\x81\xad\xf1\x86\xbc\xa9\xe3\x80\x82\xcd\x8e\xf0\x9f\x84\x80"); } // [B1, V6, V7]6953test { try toUnicodeFail("\xf0\x90\xb9\xa7\xf0\x9e\xb2\x84\xf3\xa0\x81\xad\xf1\x86\xbc\xa9\xe3\x80\x82\xcd\x8e\xf0\x9f\x84\x80"); } // [B1, V6, V7]
6954test { try toAsciiFail("\xf0\x90\xb9\xa7\xf0\x9e\xb2\x84\xf3\xa0\x81\xad\xf1\x86\xbc\xa9\xe3\x80\x82\xcd\x8e\xf0\x9f\x84\x80", false); } // [B1, V6, V7]
6955test { try toAsciiFail("\xf0\x90\xb9\xa7\xf0\x9e\xb2\x84\xf3\xa0\x81\xad\xf1\x86\xbc\xa9\xe3\x80\x82\xcd\x8e\xf0\x9f\x84\x80", true); } // [B1, V6, V7]
3000test { try toUnicodeFail("\xf0\x90\xb9\xa7\xf0\x9e\xb2\x84\xf3\xa0\x81\xad\xf1\x86\xbc\xa9\xe3\x80\x82\xcd\x8e0."); } // [B1, V6, V7]6956test { try toUnicodeFail("\xf0\x90\xb9\xa7\xf0\x9e\xb2\x84\xf3\xa0\x81\xad\xf1\x86\xbc\xa9\xe3\x80\x82\xcd\x8e0."); } // [B1, V6, V7]
6957test { try toAsciiFail("\xf0\x90\xb9\xa7\xf0\x9e\xb2\x84\xf3\xa0\x81\xad\xf1\x86\xbc\xa9\xe3\x80\x82\xcd\x8e0.", false); } // [B1, V6, V7, A4_2]
6958test { try toAsciiFail("\xf0\x90\xb9\xa7\xf0\x9e\xb2\x84\xf3\xa0\x81\xad\xf1\x86\xbc\xa9\xe3\x80\x82\xcd\x8e0.", true); } // [B1, V6, V7, A4_2]
3001test { try toUnicodeFail("xn--fo0dw409aq58qrn69d.xn--0-bgb."); } // [B1, V6, V7]6959test { try toUnicodeFail("xn--fo0dw409aq58qrn69d.xn--0-bgb."); } // [B1, V6, V7]
6960test { try toAsciiFail("xn--fo0dw409aq58qrn69d.xn--0-bgb.", false); } // [B1, V6, V7, A4_2]
6961test { try toAsciiFail("xn--fo0dw409aq58qrn69d.xn--0-bgb.", true); } // [B1, V6, V7, A4_2]
3002test { try toUnicodeFail("xn--fo0dw409aq58qrn69d.xn--sua6883w"); } // [B1, V6, V7]6962test { try toUnicodeFail("xn--fo0dw409aq58qrn69d.xn--sua6883w"); } // [B1, V6, V7]
6963test { try toAsciiFail("xn--fo0dw409aq58qrn69d.xn--sua6883w", false); } // [B1, V6, V7]
6964test { try toAsciiFail("xn--fo0dw409aq58qrn69d.xn--sua6883w", true); } // [B1, V6, V7]
3003test { try toUnicodeFail("\xe1\x82\xa4\xef\xbc\x8e\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x82"); } // [B1, C2, V7]6965test { try toUnicodeFail("\xe1\x82\xa4\xef\xbc\x8e\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x82"); } // [B1, C2, V7]
6966test { try toAsciiFail("\xe1\x82\xa4\xef\xbc\x8e\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x82", false); } // [B1, C2, V7]
6967test { try toAsciiFail("\xe1\x82\xa4\xef\xbc\x8e\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x82", true); } // [B2, B3, V7]
3004test { try toUnicodeFail("\xe1\x82\xa4.\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x82"); } // [B1, C2, V7]6968test { try toUnicodeFail("\xe1\x82\xa4.\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x82"); } // [B1, C2, V7]
6969test { try toAsciiFail("\xe1\x82\xa4.\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x82", false); } // [B1, C2, V7]
6970test { try toAsciiFail("\xe1\x82\xa4.\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x82", true); } // [B2, B3, V7]
3005test { try toUnicodeFail("\xe2\xb4\x84.\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x82"); } // [B1, C2, V7]6971test { try toUnicodeFail("\xe2\xb4\x84.\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x82"); } // [B1, C2, V7]
6972test { try toAsciiFail("\xe2\xb4\x84.\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x82", false); } // [B1, C2, V7]
6973test { try toAsciiFail("\xe2\xb4\x84.\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x82", true); } // [B2, B3, V7]
3006test { try toUnicodeFail("\xe1\x82\xa4.\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xce\xa3"); } // [B1, C2, V7]6974test { try toUnicodeFail("\xe1\x82\xa4.\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xce\xa3"); } // [B1, C2, V7]
6975test { try toAsciiFail("\xe1\x82\xa4.\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xce\xa3", false); } // [B1, C2, V7]
6976test { try toAsciiFail("\xe1\x82\xa4.\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xce\xa3", true); } // [B2, B3, V7]
3007test { try toUnicodeFail("\xe2\xb4\x84.\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x83"); } // [B1, C2, V7]6977test { try toUnicodeFail("\xe2\xb4\x84.\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x83"); } // [B1, C2, V7]
6978test { try toAsciiFail("\xe2\xb4\x84.\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x83", false); } // [B1, C2, V7]
6979test { try toAsciiFail("\xe2\xb4\x84.\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x83", true); } // [B2, B3, V7]
3008test { try toUnicodeFail("xn--vkj.xn--4xa73ob5892c"); } // [B2, B3, V7]6980test { try toUnicodeFail("xn--vkj.xn--4xa73ob5892c"); } // [B2, B3, V7]
6981test { try toAsciiFail("xn--vkj.xn--4xa73ob5892c", false); } // [B2, B3, V7]
6982test { try toAsciiFail("xn--vkj.xn--4xa73ob5892c", true); } // [B2, B3, V7]
3009test { try toUnicodeFail("xn--vkj.xn--4xa73o3t5ajq467a"); } // [B1, C2, V7]6983test { try toUnicodeFail("xn--vkj.xn--4xa73o3t5ajq467a"); } // [B1, C2, V7]
6984test { try toAsciiFail("xn--vkj.xn--4xa73o3t5ajq467a", false); } // [B1, C2, V7]
6985test { try toAsciiFail("xn--vkj.xn--4xa73o3t5ajq467a", true); } // [B1, C2, V7]
3010test { try toUnicodeFail("xn--vkj.xn--3xa93o3t5ajq467a"); } // [B1, C2, V7]6986test { try toUnicodeFail("xn--vkj.xn--3xa93o3t5ajq467a"); } // [B1, C2, V7]
6987test { try toAsciiFail("xn--vkj.xn--3xa93o3t5ajq467a", false); } // [B1, C2, V7]
6988test { try toAsciiFail("xn--vkj.xn--3xa93o3t5ajq467a", true); } // [B1, C2, V7]
3011test { try toUnicodeFail("\xe2\xb4\x84\xef\xbc\x8e\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x82"); } // [B1, C2, V7]6989test { try toUnicodeFail("\xe2\xb4\x84\xef\xbc\x8e\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x82"); } // [B1, C2, V7]
6990test { try toAsciiFail("\xe2\xb4\x84\xef\xbc\x8e\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x82", false); } // [B1, C2, V7]
6991test { try toAsciiFail("\xe2\xb4\x84\xef\xbc\x8e\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x82", true); } // [B2, B3, V7]
3012test { try toUnicodeFail("\xe1\x82\xa4\xef\xbc\x8e\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xce\xa3"); } // [B1, C2, V7]6992test { try toUnicodeFail("\xe1\x82\xa4\xef\xbc\x8e\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xce\xa3"); } // [B1, C2, V7]
6993test { try toAsciiFail("\xe1\x82\xa4\xef\xbc\x8e\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xce\xa3", false); } // [B1, C2, V7]
6994test { try toAsciiFail("\xe1\x82\xa4\xef\xbc\x8e\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xce\xa3", true); } // [B2, B3, V7]
3013test { try toUnicodeFail("\xe2\xb4\x84\xef\xbc\x8e\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x83"); } // [B1, C2, V7]6995test { try toUnicodeFail("\xe2\xb4\x84\xef\xbc\x8e\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x83"); } // [B1, C2, V7]
6996test { try toAsciiFail("\xe2\xb4\x84\xef\xbc\x8e\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x83", false); } // [B1, C2, V7]
6997test { try toAsciiFail("\xe2\xb4\x84\xef\xbc\x8e\xe2\x80\x8d\xdc\xa1\xf3\xbb\xa3\x8b\xcf\x83", true); } // [B2, B3, V7]
3014test { try toUnicodeFail("xn--cnd.xn--4xa73ob5892c"); } // [B2, B3, V7]6998test { try toUnicodeFail("xn--cnd.xn--4xa73ob5892c"); } // [B2, B3, V7]
6999test { try toAsciiFail("xn--cnd.xn--4xa73ob5892c", false); } // [B2, B3, V7]
7000test { try toAsciiFail("xn--cnd.xn--4xa73ob5892c", true); } // [B2, B3, V7]
3015test { try toUnicodeFail("xn--cnd.xn--4xa73o3t5ajq467a"); } // [B1, C2, V7]7001test { try toUnicodeFail("xn--cnd.xn--4xa73o3t5ajq467a"); } // [B1, C2, V7]
7002test { try toAsciiFail("xn--cnd.xn--4xa73o3t5ajq467a", false); } // [B1, C2, V7]
7003test { try toAsciiFail("xn--cnd.xn--4xa73o3t5ajq467a", true); } // [B1, C2, V7]
3016test { try toUnicodeFail("xn--cnd.xn--3xa93o3t5ajq467a"); } // [B1, C2, V7]7004test { try toUnicodeFail("xn--cnd.xn--3xa93o3t5ajq467a"); } // [B1, C2, V7]
7005test { try toAsciiFail("xn--cnd.xn--3xa93o3t5ajq467a", false); } // [B1, C2, V7]
7006test { try toAsciiFail("xn--cnd.xn--3xa93o3t5ajq467a", true); } // [B1, C2, V7]
3017test { try toUnicodeFail("\xf2\xae\xb5\x9b\xd8\x93.\xe1\x82\xb5"); } // [V7]7007test { try toUnicodeFail("\xf2\xae\xb5\x9b\xd8\x93.\xe1\x82\xb5"); } // [V7]
7008test { try toAsciiFail("\xf2\xae\xb5\x9b\xd8\x93.\xe1\x82\xb5", false); } // [V7]
7009test { try toAsciiFail("\xf2\xae\xb5\x9b\xd8\x93.\xe1\x82\xb5", true); } // [V7]
3018test { try toUnicodeFail("\xf2\xae\xb5\x9b\xd8\x93.\xe2\xb4\x95"); } // [V7]7010test { try toUnicodeFail("\xf2\xae\xb5\x9b\xd8\x93.\xe2\xb4\x95"); } // [V7]
7011test { try toAsciiFail("\xf2\xae\xb5\x9b\xd8\x93.\xe2\xb4\x95", false); } // [V7]
7012test { try toAsciiFail("\xf2\xae\xb5\x9b\xd8\x93.\xe2\xb4\x95", true); } // [V7]
3019test { try toUnicodeFail("xn--1fb94204l.xn--dlj"); } // [V7]7013test { try toUnicodeFail("xn--1fb94204l.xn--dlj"); } // [V7]
7014test { try toAsciiFail("xn--1fb94204l.xn--dlj", false); } // [V7]
7015test { try toAsciiFail("xn--1fb94204l.xn--dlj", true); } // [V7]
3020test { try toUnicodeFail("xn--1fb94204l.xn--tnd"); } // [V7]7016test { try toUnicodeFail("xn--1fb94204l.xn--tnd"); } // [V7]
7017test { try toAsciiFail("xn--1fb94204l.xn--tnd", false); } // [V7]
7018test { try toAsciiFail("xn--1fb94204l.xn--tnd", true); } // [V7]
3021test { try toUnicodeFail("\xe2\x89\xaf\xe1\xb7\xb3\xf0\x9e\xa4\xa5\xe3\x80\x82\xe2\x80\x8c\xea\xa3\x84\xf3\xa0\xaa\x89\xe2\x80\x8d"); } // [B1, C1, C2, V7]7019test { try toUnicodeFail("\xe2\x89\xaf\xe1\xb7\xb3\xf0\x9e\xa4\xa5\xe3\x80\x82\xe2\x80\x8c\xea\xa3\x84\xf3\xa0\xaa\x89\xe2\x80\x8d"); } // [B1, C1, C2, V7]
7020test { try toAsciiFail("\xe2\x89\xaf\xe1\xb7\xb3\xf0\x9e\xa4\xa5\xe3\x80\x82\xe2\x80\x8c\xea\xa3\x84\xf3\xa0\xaa\x89\xe2\x80\x8d", false); } // [B1, C1, C2, V7]
7021test { try toAsciiFail("\xe2\x89\xaf\xe1\xb7\xb3\xf0\x9e\xa4\xa5\xe3\x80\x82\xe2\x80\x8c\xea\xa3\x84\xf3\xa0\xaa\x89\xe2\x80\x8d", true); } // [B1, V6, V7]
3022test { try toUnicodeFail(">\xcc\xb8\xe1\xb7\xb3\xf0\x9e\xa4\xa5\xe3\x80\x82\xe2\x80\x8c\xea\xa3\x84\xf3\xa0\xaa\x89\xe2\x80\x8d"); } // [B1, C1, C2, V7]7022test { try toUnicodeFail(">\xcc\xb8\xe1\xb7\xb3\xf0\x9e\xa4\xa5\xe3\x80\x82\xe2\x80\x8c\xea\xa3\x84\xf3\xa0\xaa\x89\xe2\x80\x8d"); } // [B1, C1, C2, V7]
7023test { try toAsciiFail(">\xcc\xb8\xe1\xb7\xb3\xf0\x9e\xa4\xa5\xe3\x80\x82\xe2\x80\x8c\xea\xa3\x84\xf3\xa0\xaa\x89\xe2\x80\x8d", false); } // [B1, C1, C2, V7]
7024test { try toAsciiFail(">\xcc\xb8\xe1\xb7\xb3\xf0\x9e\xa4\xa5\xe3\x80\x82\xe2\x80\x8c\xea\xa3\x84\xf3\xa0\xaa\x89\xe2\x80\x8d", true); } // [B1, V6, V7]
3023test { try toUnicodeFail(">\xcc\xb8\xe1\xb7\xb3\xf0\x9e\xa4\x83\xe3\x80\x82\xe2\x80\x8c\xea\xa3\x84\xf3\xa0\xaa\x89\xe2\x80\x8d"); } // [B1, C1, C2, V7]7025test { try toUnicodeFail(">\xcc\xb8\xe1\xb7\xb3\xf0\x9e\xa4\x83\xe3\x80\x82\xe2\x80\x8c\xea\xa3\x84\xf3\xa0\xaa\x89\xe2\x80\x8d"); } // [B1, C1, C2, V7]
7026test { try toAsciiFail(">\xcc\xb8\xe1\xb7\xb3\xf0\x9e\xa4\x83\xe3\x80\x82\xe2\x80\x8c\xea\xa3\x84\xf3\xa0\xaa\x89\xe2\x80\x8d", false); } // [B1, C1, C2, V7]
7027test { try toAsciiFail(">\xcc\xb8\xe1\xb7\xb3\xf0\x9e\xa4\x83\xe3\x80\x82\xe2\x80\x8c\xea\xa3\x84\xf3\xa0\xaa\x89\xe2\x80\x8d", true); } // [B1, V6, V7]
3024test { try toUnicodeFail("\xe2\x89\xaf\xe1\xb7\xb3\xf0\x9e\xa4\x83\xe3\x80\x82\xe2\x80\x8c\xea\xa3\x84\xf3\xa0\xaa\x89\xe2\x80\x8d"); } // [B1, C1, C2, V7]7028test { try toUnicodeFail("\xe2\x89\xaf\xe1\xb7\xb3\xf0\x9e\xa4\x83\xe3\x80\x82\xe2\x80\x8c\xea\xa3\x84\xf3\xa0\xaa\x89\xe2\x80\x8d"); } // [B1, C1, C2, V7]
7029test { try toAsciiFail("\xe2\x89\xaf\xe1\xb7\xb3\xf0\x9e\xa4\x83\xe3\x80\x82\xe2\x80\x8c\xea\xa3\x84\xf3\xa0\xaa\x89\xe2\x80\x8d", false); } // [B1, C1, C2, V7]
7030test { try toAsciiFail("\xe2\x89\xaf\xe1\xb7\xb3\xf0\x9e\xa4\x83\xe3\x80\x82\xe2\x80\x8c\xea\xa3\x84\xf3\xa0\xaa\x89\xe2\x80\x8d", true); } // [B1, V6, V7]
3025test { try toUnicodeFail("xn--ofg13qyr21c.xn--0f9au6706d"); } // [B1, V6, V7]7031test { try toUnicodeFail("xn--ofg13qyr21c.xn--0f9au6706d"); } // [B1, V6, V7]
7032test { try toAsciiFail("xn--ofg13qyr21c.xn--0f9au6706d", false); } // [B1, V6, V7]
7033test { try toAsciiFail("xn--ofg13qyr21c.xn--0f9au6706d", true); } // [B1, V6, V7]
3026test { try toUnicodeFail("xn--ofg13qyr21c.xn--0ugc0116hix29k"); } // [B1, C1, C2, V7]7034test { try toUnicodeFail("xn--ofg13qyr21c.xn--0ugc0116hix29k"); } // [B1, C1, C2, V7]
7035test { try toAsciiFail("xn--ofg13qyr21c.xn--0ugc0116hix29k", false); } // [B1, C1, C2, V7]
7036test { try toAsciiFail("xn--ofg13qyr21c.xn--0ugc0116hix29k", true); } // [B1, C1, C2, V7]
3027test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\x84\xb7\xef\xbd\xa1\xf2\x92\x91\x81"); } // [C1, V7]7037test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\x84\xb7\xef\xbd\xa1\xf2\x92\x91\x81"); } // [C1, V7]
7038test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\x84\xb7\xef\xbd\xa1\xf2\x92\x91\x81", false); } // [C1, V7]
7039test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\x84\xb7\xef\xbd\xa1\xf2\x92\x91\x81", true); } // [V7, A4_2]
3028test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\x84\xb7\xe3\x80\x82\xf2\x92\x91\x81"); } // [C1, V7]7040test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\x84\xb7\xe3\x80\x82\xf2\x92\x91\x81"); } // [C1, V7]
7041test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\x84\xb7\xe3\x80\x82\xf2\x92\x91\x81", false); } // [C1, V7]
7042test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\x84\xb7\xe3\x80\x82\xf2\x92\x91\x81", true); } // [V7, A4_2]
3029test { try toUnicodeFail(".xn--w720c"); } // [V7, X4_2]7043test { try toUnicodeFail(".xn--w720c"); } // [V7, X4_2]
7044test { try toAsciiFail(".xn--w720c", false); } // [V7, A4_2]
7045test { try toAsciiFail(".xn--w720c", true); } // [V7, A4_2]
3030test { try toUnicodeFail("xn--0ug.xn--w720c"); } // [C1, V7]7046test { try toUnicodeFail("xn--0ug.xn--w720c"); } // [C1, V7]
7047test { try toAsciiFail("xn--0ug.xn--w720c", false); } // [C1, V7]
7048test { try toAsciiFail("xn--0ug.xn--w720c", true); } // [C1, V7]
3031test { try toUnicodeFail("\xe2\x92\x88\xe0\xb7\x96\xe7\x84\x85.\xf3\x97\xa1\x99\xe2\x80\x8d\xea\xa1\x9f"); } // [C2, V7]7049test { try toUnicodeFail("\xe2\x92\x88\xe0\xb7\x96\xe7\x84\x85.\xf3\x97\xa1\x99\xe2\x80\x8d\xea\xa1\x9f"); } // [C2, V7]
7050test { try toAsciiFail("\xe2\x92\x88\xe0\xb7\x96\xe7\x84\x85.\xf3\x97\xa1\x99\xe2\x80\x8d\xea\xa1\x9f", false); } // [C2, V7]
7051test { try toAsciiFail("\xe2\x92\x88\xe0\xb7\x96\xe7\x84\x85.\xf3\x97\xa1\x99\xe2\x80\x8d\xea\xa1\x9f", true); } // [V7]
3032test { try toUnicodeFail("1.\xe0\xb7\x96\xe7\x84\x85.\xf3\x97\xa1\x99\xe2\x80\x8d\xea\xa1\x9f"); } // [C2, V6, V7]7052test { try toUnicodeFail("1.\xe0\xb7\x96\xe7\x84\x85.\xf3\x97\xa1\x99\xe2\x80\x8d\xea\xa1\x9f"); } // [C2, V6, V7]
7053test { try toAsciiFail("1.\xe0\xb7\x96\xe7\x84\x85.\xf3\x97\xa1\x99\xe2\x80\x8d\xea\xa1\x9f", false); } // [C2, V6, V7]
7054test { try toAsciiFail("1.\xe0\xb7\x96\xe7\x84\x85.\xf3\x97\xa1\x99\xe2\x80\x8d\xea\xa1\x9f", true); } // [V6, V7]
3033test { try toUnicodeFail("1.xn--t1c6981c.xn--4c9a21133d"); } // [V6, V7]7055test { try toUnicodeFail("1.xn--t1c6981c.xn--4c9a21133d"); } // [V6, V7]
7056test { try toAsciiFail("1.xn--t1c6981c.xn--4c9a21133d", false); } // [V6, V7]
7057test { try toAsciiFail("1.xn--t1c6981c.xn--4c9a21133d", true); } // [V6, V7]
3034test { try toUnicodeFail("1.xn--t1c6981c.xn--1ugz184c9lw7i"); } // [C2, V6, V7]7058test { try toUnicodeFail("1.xn--t1c6981c.xn--1ugz184c9lw7i"); } // [C2, V6, V7]
7059test { try toAsciiFail("1.xn--t1c6981c.xn--1ugz184c9lw7i", false); } // [C2, V6, V7]
7060test { try toAsciiFail("1.xn--t1c6981c.xn--1ugz184c9lw7i", true); } // [C2, V6, V7]
3035test { try toUnicodeFail("xn--t1c337io97c.xn--4c9a21133d"); } // [V7]7061test { try toUnicodeFail("xn--t1c337io97c.xn--4c9a21133d"); } // [V7]
7062test { try toAsciiFail("xn--t1c337io97c.xn--4c9a21133d", false); } // [V7]
7063test { try toAsciiFail("xn--t1c337io97c.xn--4c9a21133d", true); } // [V7]
3036test { try toUnicodeFail("xn--t1c337io97c.xn--1ugz184c9lw7i"); } // [C2, V7]7064test { try toUnicodeFail("xn--t1c337io97c.xn--1ugz184c9lw7i"); } // [C2, V7]
7065test { try toAsciiFail("xn--t1c337io97c.xn--1ugz184c9lw7i", false); } // [C2, V7]
7066test { try toAsciiFail("xn--t1c337io97c.xn--1ugz184c9lw7i", true); } // [C2, V7]
3037test { try toUnicodeFail("\xe1\xb7\x8d\xcf\x82\xe2\x89\xae.\xcf\x82\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950"); } // [B1, B5, V6]7067test { try toUnicodeFail("\xe1\xb7\x8d\xcf\x82\xe2\x89\xae.\xcf\x82\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950"); } // [B1, B5, V6]
7068test { try toAsciiFail("\xe1\xb7\x8d\xcf\x82\xe2\x89\xae.\xcf\x82\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950", false); } // [B1, B5, V6]
7069test { try toAsciiFail("\xe1\xb7\x8d\xcf\x82\xe2\x89\xae.\xcf\x82\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950", true); } // [B1, B5, V6]
3038test { try toUnicodeFail("\xe1\xb7\x8d\xcf\x82<\xcc\xb8.\xcf\x82\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950"); } // [B1, B5, V6]7070test { try toUnicodeFail("\xe1\xb7\x8d\xcf\x82<\xcc\xb8.\xcf\x82\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950"); } // [B1, B5, V6]
7071test { try toAsciiFail("\xe1\xb7\x8d\xcf\x82<\xcc\xb8.\xcf\x82\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950", false); } // [B1, B5, V6]
7072test { try toAsciiFail("\xe1\xb7\x8d\xcf\x82<\xcc\xb8.\xcf\x82\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950", true); } // [B1, B5, V6]
3039test { try toUnicodeFail("\xe1\xb7\x8d\xcf\x82<\xcc\xb8.\xcf\x82\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70"); } // [B1, B5, V6]7073test { try toUnicodeFail("\xe1\xb7\x8d\xcf\x82<\xcc\xb8.\xcf\x82\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70"); } // [B1, B5, V6]
7074test { try toAsciiFail("\xe1\xb7\x8d\xcf\x82<\xcc\xb8.\xcf\x82\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70", false); } // [B1, B5, V6]
7075test { try toAsciiFail("\xe1\xb7\x8d\xcf\x82<\xcc\xb8.\xcf\x82\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70", true); } // [B1, B5, V6]
3040test { try toUnicodeFail("\xe1\xb7\x8d\xcf\x82\xe2\x89\xae.\xcf\x82\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70"); } // [B1, B5, V6]7076test { try toUnicodeFail("\xe1\xb7\x8d\xcf\x82\xe2\x89\xae.\xcf\x82\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70"); } // [B1, B5, V6]
7077test { try toAsciiFail("\xe1\xb7\x8d\xcf\x82\xe2\x89\xae.\xcf\x82\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70", false); } // [B1, B5, V6]
7078test { try toAsciiFail("\xe1\xb7\x8d\xcf\x82\xe2\x89\xae.\xcf\x82\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70", true); } // [B1, B5, V6]
3041test { try toUnicodeFail("\xe1\xb7\x8d\xce\xa3\xe2\x89\xae.\xce\xa3\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950"); } // [B1, B5, V6]7079test { try toUnicodeFail("\xe1\xb7\x8d\xce\xa3\xe2\x89\xae.\xce\xa3\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950"); } // [B1, B5, V6]
7080test { try toAsciiFail("\xe1\xb7\x8d\xce\xa3\xe2\x89\xae.\xce\xa3\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950", false); } // [B1, B5, V6]
7081test { try toAsciiFail("\xe1\xb7\x8d\xce\xa3\xe2\x89\xae.\xce\xa3\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950", true); } // [B1, B5, V6]
3042test { try toUnicodeFail("\xe1\xb7\x8d\xce\xa3<\xcc\xb8.\xce\xa3\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950"); } // [B1, B5, V6]7082test { try toUnicodeFail("\xe1\xb7\x8d\xce\xa3<\xcc\xb8.\xce\xa3\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950"); } // [B1, B5, V6]
7083test { try toAsciiFail("\xe1\xb7\x8d\xce\xa3<\xcc\xb8.\xce\xa3\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950", false); } // [B1, B5, V6]
7084test { try toAsciiFail("\xe1\xb7\x8d\xce\xa3<\xcc\xb8.\xce\xa3\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950", true); } // [B1, B5, V6]
3043test { try toUnicodeFail("\xe1\xb7\x8d\xcf\x83<\xcc\xb8.\xcf\x83\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70"); } // [B1, B5, V6]7085test { try toUnicodeFail("\xe1\xb7\x8d\xcf\x83<\xcc\xb8.\xcf\x83\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70"); } // [B1, B5, V6]
7086test { try toAsciiFail("\xe1\xb7\x8d\xcf\x83<\xcc\xb8.\xcf\x83\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70", false); } // [B1, B5, V6]
7087test { try toAsciiFail("\xe1\xb7\x8d\xcf\x83<\xcc\xb8.\xcf\x83\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70", true); } // [B1, B5, V6]
3044test { try toUnicodeFail("\xe1\xb7\x8d\xcf\x83\xe2\x89\xae.\xcf\x83\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70"); } // [B1, B5, V6]7088test { try toUnicodeFail("\xe1\xb7\x8d\xcf\x83\xe2\x89\xae.\xcf\x83\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70"); } // [B1, B5, V6]
7089test { try toAsciiFail("\xe1\xb7\x8d\xcf\x83\xe2\x89\xae.\xcf\x83\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70", false); } // [B1, B5, V6]
7090test { try toAsciiFail("\xe1\xb7\x8d\xcf\x83\xe2\x89\xae.\xcf\x83\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70", true); } // [B1, B5, V6]
3045test { try toUnicodeFail("\xe1\xb7\x8d\xce\xa3\xe2\x89\xae.\xce\xa3\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70"); } // [B1, B5, V6]7091test { try toUnicodeFail("\xe1\xb7\x8d\xce\xa3\xe2\x89\xae.\xce\xa3\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70"); } // [B1, B5, V6]
7092test { try toAsciiFail("\xe1\xb7\x8d\xce\xa3\xe2\x89\xae.\xce\xa3\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70", false); } // [B1, B5, V6]
7093test { try toAsciiFail("\xe1\xb7\x8d\xce\xa3\xe2\x89\xae.\xce\xa3\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70", true); } // [B1, B5, V6]
3046test { try toUnicodeFail("\xe1\xb7\x8d\xce\xa3<\xcc\xb8.\xce\xa3\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70"); } // [B1, B5, V6]7094test { try toUnicodeFail("\xe1\xb7\x8d\xce\xa3<\xcc\xb8.\xce\xa3\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70"); } // [B1, B5, V6]
7095test { try toAsciiFail("\xe1\xb7\x8d\xce\xa3<\xcc\xb8.\xce\xa3\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70", false); } // [B1, B5, V6]
7096test { try toAsciiFail("\xe1\xb7\x8d\xce\xa3<\xcc\xb8.\xce\xa3\xf0\x9d\xaa\xa6\xf0\x9e\xa4\xb70", true); } // [B1, B5, V6]
3047test { try toUnicodeFail("xn--4xa544kvid.xn--0-zmb55727aggma"); } // [B1, B5, V6]7097test { try toUnicodeFail("xn--4xa544kvid.xn--0-zmb55727aggma"); } // [B1, B5, V6]
7098test { try toAsciiFail("xn--4xa544kvid.xn--0-zmb55727aggma", false); } // [B1, B5, V6]
7099test { try toAsciiFail("xn--4xa544kvid.xn--0-zmb55727aggma", true); } // [B1, B5, V6]
3048test { try toUnicodeFail("xn--3xa744kvid.xn--0-xmb85727aggma"); } // [B1, B5, V6]7100test { try toUnicodeFail("xn--3xa744kvid.xn--0-xmb85727aggma"); } // [B1, B5, V6]
7101test { try toAsciiFail("xn--3xa744kvid.xn--0-xmb85727aggma", false); } // [B1, B5, V6]
7102test { try toAsciiFail("xn--3xa744kvid.xn--0-xmb85727aggma", true); } // [B1, B5, V6]
3049test { try toUnicodeFail("\xe1\xb7\x8d\xcf\x83\xe2\x89\xae.\xcf\x83\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950"); } // [B1, B5, V6]7103test { try toUnicodeFail("\xe1\xb7\x8d\xcf\x83\xe2\x89\xae.\xcf\x83\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950"); } // [B1, B5, V6]
7104test { try toAsciiFail("\xe1\xb7\x8d\xcf\x83\xe2\x89\xae.\xcf\x83\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950", false); } // [B1, B5, V6]
7105test { try toAsciiFail("\xe1\xb7\x8d\xcf\x83\xe2\x89\xae.\xcf\x83\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950", true); } // [B1, B5, V6]
3050test { try toUnicodeFail("\xe1\xb7\x8d\xcf\x83<\xcc\xb8.\xcf\x83\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950"); } // [B1, B5, V6]7106test { try toUnicodeFail("\xe1\xb7\x8d\xcf\x83<\xcc\xb8.\xcf\x83\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950"); } // [B1, B5, V6]
7107test { try toAsciiFail("\xe1\xb7\x8d\xcf\x83<\xcc\xb8.\xcf\x83\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950", false); } // [B1, B5, V6]
7108test { try toAsciiFail("\xe1\xb7\x8d\xcf\x83<\xcc\xb8.\xcf\x83\xf0\x9d\xaa\xa6\xf0\x9e\xa4\x950", true); } // [B1, B5, V6]
3051test { try toUnicodeFail("\xf2\xa2\xa6\xbe\xc3\x9f\xd6\xb9\xf0\x90\xab\x99.\xd6\xad\xe0\xa2\xa1"); } // [B1, B5, B6, V6, V7]7109test { try toUnicodeFail("\xf2\xa2\xa6\xbe\xc3\x9f\xd6\xb9\xf0\x90\xab\x99.\xd6\xad\xe0\xa2\xa1"); } // [B1, B5, B6, V6, V7]
7110test { try toAsciiFail("\xf2\xa2\xa6\xbe\xc3\x9f\xd6\xb9\xf0\x90\xab\x99.\xd6\xad\xe0\xa2\xa1", false); } // [B1, B5, B6, V6, V7]
7111test { try toAsciiFail("\xf2\xa2\xa6\xbe\xc3\x9f\xd6\xb9\xf0\x90\xab\x99.\xd6\xad\xe0\xa2\xa1", true); } // [B1, B5, B6, V6, V7]
3052test { try toUnicodeFail("\xf2\xa2\xa6\xbeSS\xd6\xb9\xf0\x90\xab\x99.\xd6\xad\xe0\xa2\xa1"); } // [B1, B5, B6, V6, V7]7112test { try toUnicodeFail("\xf2\xa2\xa6\xbeSS\xd6\xb9\xf0\x90\xab\x99.\xd6\xad\xe0\xa2\xa1"); } // [B1, B5, B6, V6, V7]
7113test { try toAsciiFail("\xf2\xa2\xa6\xbeSS\xd6\xb9\xf0\x90\xab\x99.\xd6\xad\xe0\xa2\xa1", false); } // [B1, B5, B6, V6, V7]
7114test { try toAsciiFail("\xf2\xa2\xa6\xbeSS\xd6\xb9\xf0\x90\xab\x99.\xd6\xad\xe0\xa2\xa1", true); } // [B1, B5, B6, V6, V7]
3053test { try toUnicodeFail("\xf2\xa2\xa6\xbess\xd6\xb9\xf0\x90\xab\x99.\xd6\xad\xe0\xa2\xa1"); } // [B1, B5, B6, V6, V7]7115test { try toUnicodeFail("\xf2\xa2\xa6\xbess\xd6\xb9\xf0\x90\xab\x99.\xd6\xad\xe0\xa2\xa1"); } // [B1, B5, B6, V6, V7]
7116test { try toAsciiFail("\xf2\xa2\xa6\xbess\xd6\xb9\xf0\x90\xab\x99.\xd6\xad\xe0\xa2\xa1", false); } // [B1, B5, B6, V6, V7]
7117test { try toAsciiFail("\xf2\xa2\xa6\xbess\xd6\xb9\xf0\x90\xab\x99.\xd6\xad\xe0\xa2\xa1", true); } // [B1, B5, B6, V6, V7]
3054test { try toUnicodeFail("\xf2\xa2\xa6\xbeSs\xd6\xb9\xf0\x90\xab\x99.\xd6\xad\xe0\xa2\xa1"); } // [B1, B5, B6, V6, V7]7118test { try toUnicodeFail("\xf2\xa2\xa6\xbeSs\xd6\xb9\xf0\x90\xab\x99.\xd6\xad\xe0\xa2\xa1"); } // [B1, B5, B6, V6, V7]
7119test { try toAsciiFail("\xf2\xa2\xa6\xbeSs\xd6\xb9\xf0\x90\xab\x99.\xd6\xad\xe0\xa2\xa1", false); } // [B1, B5, B6, V6, V7]
7120test { try toAsciiFail("\xf2\xa2\xa6\xbeSs\xd6\xb9\xf0\x90\xab\x99.\xd6\xad\xe0\xa2\xa1", true); } // [B1, B5, B6, V6, V7]
3055test { try toUnicodeFail("xn--ss-xjd6058xlz50g.xn--4cb62m"); } // [B1, B5, B6, V6, V7]7121test { try toUnicodeFail("xn--ss-xjd6058xlz50g.xn--4cb62m"); } // [B1, B5, B6, V6, V7]
7122test { try toAsciiFail("xn--ss-xjd6058xlz50g.xn--4cb62m", false); } // [B1, B5, B6, V6, V7]
7123test { try toAsciiFail("xn--ss-xjd6058xlz50g.xn--4cb62m", true); } // [B1, B5, B6, V6, V7]
3056test { try toUnicodeFail("xn--zca89v339zj118e.xn--4cb62m"); } // [B1, B5, B6, V6, V7]7124test { try toUnicodeFail("xn--zca89v339zj118e.xn--4cb62m"); } // [B1, B5, B6, V6, V7]
7125test { try toAsciiFail("xn--zca89v339zj118e.xn--4cb62m", false); } // [B1, B5, B6, V6, V7]
7126test { try toAsciiFail("xn--zca89v339zj118e.xn--4cb62m", true); } // [B1, B5, B6, V6, V7]
3057test { try toUnicodeFail("-\xf0\x9e\xa3\x84\xef\xbd\xa1\xe2\x92\x88"); } // [B1, V3, V7]7127test { try toUnicodeFail("-\xf0\x9e\xa3\x84\xef\xbd\xa1\xe2\x92\x88"); } // [B1, V3, V7]
7128test { try toAsciiFail("-\xf0\x9e\xa3\x84\xef\xbd\xa1\xe2\x92\x88", false); } // [B1, V3, V7]
7129test { try toAsciiFail("-\xf0\x9e\xa3\x84\xef\xbd\xa1\xe2\x92\x88", true); } // [B1, V3, V7]
3058test { try toUnicodeFail("-\xf0\x9e\xa3\x84\xe3\x80\x821."); } // [B1, V3]7130test { try toUnicodeFail("-\xf0\x9e\xa3\x84\xe3\x80\x821."); } // [B1, V3]
7131test { try toAsciiFail("-\xf0\x9e\xa3\x84\xe3\x80\x821.", false); } // [B1, V3, A4_2]
7132test { try toAsciiFail("-\xf0\x9e\xa3\x84\xe3\x80\x821.", true); } // [B1, V3, A4_2]
3059test { try toUnicodeFail("xn----xc8r.b."); } // [B1, V3]7133test { try toUnicodeFail("xn----xc8r.b."); } // [B1, V3]
7134test { try toAsciiFail("xn----xc8r.b.", false); } // [B1, V3, A4_2]
7135test { try toAsciiFail("xn----xc8r.b.", true); } // [B1, V3, A4_2]
3060test { try toUnicodeFail("xn----xc8r.xn--tsh"); } // [B1, V3, V7]7136test { try toUnicodeFail("xn----xc8r.xn--tsh"); } // [B1, V3, V7]
7137test { try toAsciiFail("xn----xc8r.xn--tsh", false); } // [B1, V3, V7]
7138test { try toAsciiFail("xn----xc8r.xn--tsh", true); } // [B1, V3, V7]
3061test { try toUnicodeFail("\xf1\x88\xa0\xa2\xf0\x90\xab\x96\xf0\x9d\x9f\xa1\xe3\x80\x82\xd8\xbe\xf0\x91\x98\xbf"); } // [B5, V7]7139test { try toUnicodeFail("\xf1\x88\xa0\xa2\xf0\x90\xab\x96\xf0\x9d\x9f\xa1\xe3\x80\x82\xd8\xbe\xf0\x91\x98\xbf"); } // [B5, V7]
7140test { try toAsciiFail("\xf1\x88\xa0\xa2\xf0\x90\xab\x96\xf0\x9d\x9f\xa1\xe3\x80\x82\xd8\xbe\xf0\x91\x98\xbf", false); } // [B5, V7]
7141test { try toAsciiFail("\xf1\x88\xa0\xa2\xf0\x90\xab\x96\xf0\x9d\x9f\xa1\xe3\x80\x82\xd8\xbe\xf0\x91\x98\xbf", true); } // [B5, V7]
3062test { try toUnicodeFail("\xf1\x88\xa0\xa2\xf0\x90\xab\x969\xe3\x80\x82\xd8\xbe\xf0\x91\x98\xbf"); } // [B5, V7]7142test { try toUnicodeFail("\xf1\x88\xa0\xa2\xf0\x90\xab\x969\xe3\x80\x82\xd8\xbe\xf0\x91\x98\xbf"); } // [B5, V7]
7143test { try toAsciiFail("\xf1\x88\xa0\xa2\xf0\x90\xab\x969\xe3\x80\x82\xd8\xbe\xf0\x91\x98\xbf", false); } // [B5, V7]
7144test { try toAsciiFail("\xf1\x88\xa0\xa2\xf0\x90\xab\x969\xe3\x80\x82\xd8\xbe\xf0\x91\x98\xbf", true); } // [B5, V7]
3063test { try toUnicodeFail("xn--9-el5iv442t.xn--9gb0830l"); } // [B5, V7]7145test { try toUnicodeFail("xn--9-el5iv442t.xn--9gb0830l"); } // [B5, V7]
7146test { try toAsciiFail("xn--9-el5iv442t.xn--9gb0830l", false); } // [B5, V7]
7147test { try toAsciiFail("xn--9-el5iv442t.xn--9gb0830l", true); } // [B5, V7]
3064test { try toUnicodeFail("\xd9\xa8\xef\xb2\x8c\xd9\xa8\xe1\xa9\x9d.\xe2\x80\x8d"); } // [B1, C2]7148test { try toUnicodeFail("\xd9\xa8\xef\xb2\x8c\xd9\xa8\xe1\xa9\x9d.\xe2\x80\x8d"); } // [B1, C2]
7149test { try toAsciiFail("\xd9\xa8\xef\xb2\x8c\xd9\xa8\xe1\xa9\x9d.\xe2\x80\x8d", false); } // [B1, C2]
7150test { try toAsciiFail("\xd9\xa8\xef\xb2\x8c\xd9\xa8\xe1\xa9\x9d.\xe2\x80\x8d", true); } // [B1, A4_2]
3065test { try toUnicodeFail("\xd9\xa8\xd9\x86\xd9\x85\xd9\xa8\xe1\xa9\x9d.\xe2\x80\x8d"); } // [B1, C2]7151test { try toUnicodeFail("\xd9\xa8\xd9\x86\xd9\x85\xd9\xa8\xe1\xa9\x9d.\xe2\x80\x8d"); } // [B1, C2]
7152test { try toAsciiFail("\xd9\xa8\xd9\x86\xd9\x85\xd9\xa8\xe1\xa9\x9d.\xe2\x80\x8d", false); } // [B1, C2]
7153test { try toAsciiFail("\xd9\xa8\xd9\x86\xd9\x85\xd9\xa8\xe1\xa9\x9d.\xe2\x80\x8d", true); } // [B1, A4_2]
3066test { try toUnicodeFail("xn--hhbb5hc956w."); } // [B1]7154test { try toUnicodeFail("xn--hhbb5hc956w."); } // [B1]
7155test { try toAsciiFail("xn--hhbb5hc956w.", false); } // [B1, A4_2]
7156test { try toAsciiFail("xn--hhbb5hc956w.", true); } // [B1, A4_2]
3067test { try toUnicodeFail("xn--hhbb5hc956w.xn--1ug"); } // [B1, C2]7157test { try toUnicodeFail("xn--hhbb5hc956w.xn--1ug"); } // [B1, C2]
7158test { try toAsciiFail("xn--hhbb5hc956w.xn--1ug", false); } // [B1, C2]
7159test { try toAsciiFail("xn--hhbb5hc956w.xn--1ug", true); } // [B1, C2]
3068test { try toUnicodeFail("\xf0\x9d\x9f\x98\xef\xbc\x8e\xe1\x82\xa7\xf3\x80\xb3\x91\xef\xb5\x90\xf1\xab\x83\xb1"); } // [B1, B5, V7]7160test { try toUnicodeFail("\xf0\x9d\x9f\x98\xef\xbc\x8e\xe1\x82\xa7\xf3\x80\xb3\x91\xef\xb5\x90\xf1\xab\x83\xb1"); } // [B1, B5, V7]
7161test { try toAsciiFail("\xf0\x9d\x9f\x98\xef\xbc\x8e\xe1\x82\xa7\xf3\x80\xb3\x91\xef\xb5\x90\xf1\xab\x83\xb1", false); } // [B1, B5, V7]
7162test { try toAsciiFail("\xf0\x9d\x9f\x98\xef\xbc\x8e\xe1\x82\xa7\xf3\x80\xb3\x91\xef\xb5\x90\xf1\xab\x83\xb1", true); } // [B1, B5, V7]
3069test { try toUnicodeFail("0.\xe1\x82\xa7\xf3\x80\xb3\x91\xd8\xaa\xd8\xac\xd9\x85\xf1\xab\x83\xb1"); } // [B1, B5, V7]7163test { try toUnicodeFail("0.\xe1\x82\xa7\xf3\x80\xb3\x91\xd8\xaa\xd8\xac\xd9\x85\xf1\xab\x83\xb1"); } // [B1, B5, V7]
7164test { try toAsciiFail("0.\xe1\x82\xa7\xf3\x80\xb3\x91\xd8\xaa\xd8\xac\xd9\x85\xf1\xab\x83\xb1", false); } // [B1, B5, V7]
7165test { try toAsciiFail("0.\xe1\x82\xa7\xf3\x80\xb3\x91\xd8\xaa\xd8\xac\xd9\x85\xf1\xab\x83\xb1", true); } // [B1, B5, V7]
3070test { try toUnicodeFail("0.\xe2\xb4\x87\xf3\x80\xb3\x91\xd8\xaa\xd8\xac\xd9\x85\xf1\xab\x83\xb1"); } // [B1, B5, V7]7166test { try toUnicodeFail("0.\xe2\xb4\x87\xf3\x80\xb3\x91\xd8\xaa\xd8\xac\xd9\x85\xf1\xab\x83\xb1"); } // [B1, B5, V7]
7167test { try toAsciiFail("0.\xe2\xb4\x87\xf3\x80\xb3\x91\xd8\xaa\xd8\xac\xd9\x85\xf1\xab\x83\xb1", false); } // [B1, B5, V7]
7168test { try toAsciiFail("0.\xe2\xb4\x87\xf3\x80\xb3\x91\xd8\xaa\xd8\xac\xd9\x85\xf1\xab\x83\xb1", true); } // [B1, B5, V7]
3071test { try toUnicodeFail("0.xn--pgbe9ez79qd207lvff8b"); } // [B1, B5, V7]7169test { try toUnicodeFail("0.xn--pgbe9ez79qd207lvff8b"); } // [B1, B5, V7]
7170test { try toAsciiFail("0.xn--pgbe9ez79qd207lvff8b", false); } // [B1, B5, V7]
7171test { try toAsciiFail("0.xn--pgbe9ez79qd207lvff8b", true); } // [B1, B5, V7]
3072test { try toUnicodeFail("\xf0\x9d\x9f\x98\xef\xbc\x8e\xe2\xb4\x87\xf3\x80\xb3\x91\xef\xb5\x90\xf1\xab\x83\xb1"); } // [B1, B5, V7]7172test { try toUnicodeFail("\xf0\x9d\x9f\x98\xef\xbc\x8e\xe2\xb4\x87\xf3\x80\xb3\x91\xef\xb5\x90\xf1\xab\x83\xb1"); } // [B1, B5, V7]
7173test { try toAsciiFail("\xf0\x9d\x9f\x98\xef\xbc\x8e\xe2\xb4\x87\xf3\x80\xb3\x91\xef\xb5\x90\xf1\xab\x83\xb1", false); } // [B1, B5, V7]
7174test { try toAsciiFail("\xf0\x9d\x9f\x98\xef\xbc\x8e\xe2\xb4\x87\xf3\x80\xb3\x91\xef\xb5\x90\xf1\xab\x83\xb1", true); } // [B1, B5, V7]
3073test { try toUnicodeFail("0.xn--pgbe9e344c2725svff8b"); } // [B1, B5, V7]7175test { try toUnicodeFail("0.xn--pgbe9e344c2725svff8b"); } // [B1, B5, V7]
7176test { try toAsciiFail("0.xn--pgbe9e344c2725svff8b", false); } // [B1, B5, V7]
7177test { try toAsciiFail("0.xn--pgbe9e344c2725svff8b", true); } // [B1, B5, V7]
3074test { try toUnicodeFail("\xf0\x91\x87\x80\xe2\x96\x8d.\xe2\x81\x9e\xe1\xa0\xb0"); } // [V6]7178test { try toUnicodeFail("\xf0\x91\x87\x80\xe2\x96\x8d.\xe2\x81\x9e\xe1\xa0\xb0"); } // [V6]
7179test { try toAsciiFail("\xf0\x91\x87\x80\xe2\x96\x8d.\xe2\x81\x9e\xe1\xa0\xb0", false); } // [V6]
7180test { try toAsciiFail("\xf0\x91\x87\x80\xe2\x96\x8d.\xe2\x81\x9e\xe1\xa0\xb0", true); } // [V6]
3075test { try toUnicodeFail("xn--9zh3057f.xn--j7e103b"); } // [V6]7181test { try toUnicodeFail("xn--9zh3057f.xn--j7e103b"); } // [V6]
7182test { try toAsciiFail("xn--9zh3057f.xn--j7e103b", false); } // [V6]
7183test { try toAsciiFail("xn--9zh3057f.xn--j7e103b", true); } // [V6]
3076test { try toUnicodeFail("\xe2\x80\x8d-\xd9\xba.\xf2\x8f\xaf\xa9"); } // [B1, C2, V7]7184test { try toUnicodeFail("\xe2\x80\x8d-\xd9\xba.\xf2\x8f\xaf\xa9"); } // [B1, C2, V7]
7185test { try toAsciiFail("\xe2\x80\x8d-\xd9\xba.\xf2\x8f\xaf\xa9", false); } // [B1, C2, V7]
7186test { try toAsciiFail("\xe2\x80\x8d-\xd9\xba.\xf2\x8f\xaf\xa9", true); } // [B1, V3, V7]
3077test { try toUnicodeFail("xn----qrc.xn--ts49b"); } // [B1, V3, V7]7187test { try toUnicodeFail("xn----qrc.xn--ts49b"); } // [B1, V3, V7]
7188test { try toAsciiFail("xn----qrc.xn--ts49b", false); } // [B1, V3, V7]
7189test { try toAsciiFail("xn----qrc.xn--ts49b", true); } // [B1, V3, V7]
3078test { try toUnicodeFail("xn----qrc357q.xn--ts49b"); } // [B1, C2, V7]7190test { try toUnicodeFail("xn----qrc357q.xn--ts49b"); } // [B1, C2, V7]
7191test { try toAsciiFail("xn----qrc357q.xn--ts49b", false); } // [B1, C2, V7]
7192test { try toAsciiFail("xn----qrc357q.xn--ts49b", true); } // [B1, C2, V7]
3079test { try toUnicodeFail("\xe1\xa0\xa2\xf0\x90\xae\x82\xf0\x90\xab\x98\xe5\xaf\x90\xef\xbd\xa1\xe2\x80\x8c\xe2\x89\xaf\xe2\x9c\xb3"); } // [B1, B5, C1]7193test { try toUnicodeFail("\xe1\xa0\xa2\xf0\x90\xae\x82\xf0\x90\xab\x98\xe5\xaf\x90\xef\xbd\xa1\xe2\x80\x8c\xe2\x89\xaf\xe2\x9c\xb3"); } // [B1, B5, C1]
7194test { try toAsciiFail("\xe1\xa0\xa2\xf0\x90\xae\x82\xf0\x90\xab\x98\xe5\xaf\x90\xef\xbd\xa1\xe2\x80\x8c\xe2\x89\xaf\xe2\x9c\xb3", false); } // [B1, B5, C1]
7195test { try toAsciiFail("\xe1\xa0\xa2\xf0\x90\xae\x82\xf0\x90\xab\x98\xe5\xaf\x90\xef\xbd\xa1\xe2\x80\x8c\xe2\x89\xaf\xe2\x9c\xb3", true); } // [B1, B5]
3080test { try toUnicodeFail("\xe1\xa0\xa2\xf0\x90\xae\x82\xf0\x90\xab\x98\xe5\xaf\x90\xef\xbd\xa1\xe2\x80\x8c>\xcc\xb8\xe2\x9c\xb3"); } // [B1, B5, C1]7196test { try toUnicodeFail("\xe1\xa0\xa2\xf0\x90\xae\x82\xf0\x90\xab\x98\xe5\xaf\x90\xef\xbd\xa1\xe2\x80\x8c>\xcc\xb8\xe2\x9c\xb3"); } // [B1, B5, C1]
7197test { try toAsciiFail("\xe1\xa0\xa2\xf0\x90\xae\x82\xf0\x90\xab\x98\xe5\xaf\x90\xef\xbd\xa1\xe2\x80\x8c>\xcc\xb8\xe2\x9c\xb3", false); } // [B1, B5, C1]
7198test { try toAsciiFail("\xe1\xa0\xa2\xf0\x90\xae\x82\xf0\x90\xab\x98\xe5\xaf\x90\xef\xbd\xa1\xe2\x80\x8c>\xcc\xb8\xe2\x9c\xb3", true); } // [B1, B5]
3081test { try toUnicodeFail("\xe1\xa0\xa2\xf0\x90\xae\x82\xf0\x90\xab\x98\xe5\xaf\x90\xe3\x80\x82\xe2\x80\x8c\xe2\x89\xaf\xe2\x9c\xb3"); } // [B1, B5, C1]7199test { try toUnicodeFail("\xe1\xa0\xa2\xf0\x90\xae\x82\xf0\x90\xab\x98\xe5\xaf\x90\xe3\x80\x82\xe2\x80\x8c\xe2\x89\xaf\xe2\x9c\xb3"); } // [B1, B5, C1]
7200test { try toAsciiFail("\xe1\xa0\xa2\xf0\x90\xae\x82\xf0\x90\xab\x98\xe5\xaf\x90\xe3\x80\x82\xe2\x80\x8c\xe2\x89\xaf\xe2\x9c\xb3", false); } // [B1, B5, C1]
7201test { try toAsciiFail("\xe1\xa0\xa2\xf0\x90\xae\x82\xf0\x90\xab\x98\xe5\xaf\x90\xe3\x80\x82\xe2\x80\x8c\xe2\x89\xaf\xe2\x9c\xb3", true); } // [B1, B5]
3082test { try toUnicodeFail("\xe1\xa0\xa2\xf0\x90\xae\x82\xf0\x90\xab\x98\xe5\xaf\x90\xe3\x80\x82\xe2\x80\x8c>\xcc\xb8\xe2\x9c\xb3"); } // [B1, B5, C1]7202test { try toUnicodeFail("\xe1\xa0\xa2\xf0\x90\xae\x82\xf0\x90\xab\x98\xe5\xaf\x90\xe3\x80\x82\xe2\x80\x8c>\xcc\xb8\xe2\x9c\xb3"); } // [B1, B5, C1]
7203test { try toAsciiFail("\xe1\xa0\xa2\xf0\x90\xae\x82\xf0\x90\xab\x98\xe5\xaf\x90\xe3\x80\x82\xe2\x80\x8c>\xcc\xb8\xe2\x9c\xb3", false); } // [B1, B5, C1]
7204test { try toAsciiFail("\xe1\xa0\xa2\xf0\x90\xae\x82\xf0\x90\xab\x98\xe5\xaf\x90\xe3\x80\x82\xe2\x80\x8c>\xcc\xb8\xe2\x9c\xb3", true); } // [B1, B5]
3083test { try toUnicodeFail("xn--46e6675axzzhota.xn--hdh99p"); } // [B1, B5]7205test { try toUnicodeFail("xn--46e6675axzzhota.xn--hdh99p"); } // [B1, B5]
7206test { try toAsciiFail("xn--46e6675axzzhota.xn--hdh99p", false); } // [B1, B5]
7207test { try toAsciiFail("xn--46e6675axzzhota.xn--hdh99p", true); } // [B1, B5]
3084test { try toUnicodeFail("xn--46e6675axzzhota.xn--0ug06gu8f"); } // [B1, B5, C1]7208test { try toUnicodeFail("xn--46e6675axzzhota.xn--0ug06gu8f"); } // [B1, B5, C1]
7209test { try toAsciiFail("xn--46e6675axzzhota.xn--0ug06gu8f", false); } // [B1, B5, C1]
7210test { try toAsciiFail("xn--46e6675axzzhota.xn--0ug06gu8f", true); } // [B1, B5, C1]
3085test { try toUnicodeFail("\xe2\x80\x8d\xef\xbd\xa1\xf3\xb8\xb2\x9c\xe1\x82\xba\xe1\x82\xb4\xf0\x9e\xa8\x87"); } // [B1, B5, B6, C2, V7]7211test { try toUnicodeFail("\xe2\x80\x8d\xef\xbd\xa1\xf3\xb8\xb2\x9c\xe1\x82\xba\xe1\x82\xb4\xf0\x9e\xa8\x87"); } // [B1, B5, B6, C2, V7]
7212test { try toAsciiFail("\xe2\x80\x8d\xef\xbd\xa1\xf3\xb8\xb2\x9c\xe1\x82\xba\xe1\x82\xb4\xf0\x9e\xa8\x87", false); } // [B1, B5, B6, C2, V7]
7213test { try toAsciiFail("\xe2\x80\x8d\xef\xbd\xa1\xf3\xb8\xb2\x9c\xe1\x82\xba\xe1\x82\xb4\xf0\x9e\xa8\x87", true); } // [B5, B6, V7, A4_2]
3086test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xf3\xb8\xb2\x9c\xe1\x82\xba\xe1\x82\xb4\xf0\x9e\xa8\x87"); } // [B1, B5, B6, C2, V7]7214test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xf3\xb8\xb2\x9c\xe1\x82\xba\xe1\x82\xb4\xf0\x9e\xa8\x87"); } // [B1, B5, B6, C2, V7]
7215test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xf3\xb8\xb2\x9c\xe1\x82\xba\xe1\x82\xb4\xf0\x9e\xa8\x87", false); } // [B1, B5, B6, C2, V7]
7216test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xf3\xb8\xb2\x9c\xe1\x82\xba\xe1\x82\xb4\xf0\x9e\xa8\x87", true); } // [B5, B6, V7, A4_2]
3087test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xf3\xb8\xb2\x9c\xe2\xb4\x9a\xe2\xb4\x94\xf0\x9e\xa8\x87"); } // [B1, B5, B6, C2, V7]7217test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xf3\xb8\xb2\x9c\xe2\xb4\x9a\xe2\xb4\x94\xf0\x9e\xa8\x87"); } // [B1, B5, B6, C2, V7]
7218test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xf3\xb8\xb2\x9c\xe2\xb4\x9a\xe2\xb4\x94\xf0\x9e\xa8\x87", false); } // [B1, B5, B6, C2, V7]
7219test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xf3\xb8\xb2\x9c\xe2\xb4\x9a\xe2\xb4\x94\xf0\x9e\xa8\x87", true); } // [B5, B6, V7, A4_2]
3088test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xf3\xb8\xb2\x9c\xe1\x82\xba\xe2\xb4\x94\xf0\x9e\xa8\x87"); } // [B1, B5, B6, C2, V7]7220test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xf3\xb8\xb2\x9c\xe1\x82\xba\xe2\xb4\x94\xf0\x9e\xa8\x87"); } // [B1, B5, B6, C2, V7]
7221test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xf3\xb8\xb2\x9c\xe1\x82\xba\xe2\xb4\x94\xf0\x9e\xa8\x87", false); } // [B1, B5, B6, C2, V7]
7222test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xf3\xb8\xb2\x9c\xe1\x82\xba\xe2\xb4\x94\xf0\x9e\xa8\x87", true); } // [B5, B6, V7, A4_2]
3089test { try toUnicodeFail(".xn--cljl81825an3r4h"); } // [B5, B6, V7, X4_2]7223test { try toUnicodeFail(".xn--cljl81825an3r4h"); } // [B5, B6, V7, X4_2]
7224test { try toAsciiFail(".xn--cljl81825an3r4h", false); } // [B5, B6, V7, A4_2]
7225test { try toAsciiFail(".xn--cljl81825an3r4h", true); } // [B5, B6, V7, A4_2]
3090test { try toUnicodeFail("xn--1ug.xn--cljl81825an3r4h"); } // [B1, B5, B6, C2, V7]7226test { try toUnicodeFail("xn--1ug.xn--cljl81825an3r4h"); } // [B1, B5, B6, C2, V7]
7227test { try toAsciiFail("xn--1ug.xn--cljl81825an3r4h", false); } // [B1, B5, B6, C2, V7]
7228test { try toAsciiFail("xn--1ug.xn--cljl81825an3r4h", true); } // [B1, B5, B6, C2, V7]
3091test { try toUnicodeFail("\xe2\x80\x8d\xef\xbd\xa1\xf3\xb8\xb2\x9c\xe2\xb4\x9a\xe2\xb4\x94\xf0\x9e\xa8\x87"); } // [B1, B5, B6, C2, V7]7229test { try toUnicodeFail("\xe2\x80\x8d\xef\xbd\xa1\xf3\xb8\xb2\x9c\xe2\xb4\x9a\xe2\xb4\x94\xf0\x9e\xa8\x87"); } // [B1, B5, B6, C2, V7]
7230test { try toAsciiFail("\xe2\x80\x8d\xef\xbd\xa1\xf3\xb8\xb2\x9c\xe2\xb4\x9a\xe2\xb4\x94\xf0\x9e\xa8\x87", false); } // [B1, B5, B6, C2, V7]
7231test { try toAsciiFail("\xe2\x80\x8d\xef\xbd\xa1\xf3\xb8\xb2\x9c\xe2\xb4\x9a\xe2\xb4\x94\xf0\x9e\xa8\x87", true); } // [B5, B6, V7, A4_2]
3092test { try toUnicodeFail("\xe2\x80\x8d\xef\xbd\xa1\xf3\xb8\xb2\x9c\xe1\x82\xba\xe2\xb4\x94\xf0\x9e\xa8\x87"); } // [B1, B5, B6, C2, V7]7232test { try toUnicodeFail("\xe2\x80\x8d\xef\xbd\xa1\xf3\xb8\xb2\x9c\xe1\x82\xba\xe2\xb4\x94\xf0\x9e\xa8\x87"); } // [B1, B5, B6, C2, V7]
7233test { try toAsciiFail("\xe2\x80\x8d\xef\xbd\xa1\xf3\xb8\xb2\x9c\xe1\x82\xba\xe2\xb4\x94\xf0\x9e\xa8\x87", false); } // [B1, B5, B6, C2, V7]
7234test { try toAsciiFail("\xe2\x80\x8d\xef\xbd\xa1\xf3\xb8\xb2\x9c\xe1\x82\xba\xe2\xb4\x94\xf0\x9e\xa8\x87", true); } // [B5, B6, V7, A4_2]
3093test { try toUnicodeFail(".xn--ynd036lq981an3r4h"); } // [B5, B6, V7, X4_2]7235test { try toUnicodeFail(".xn--ynd036lq981an3r4h"); } // [B5, B6, V7, X4_2]
7236test { try toAsciiFail(".xn--ynd036lq981an3r4h", false); } // [B5, B6, V7, A4_2]
7237test { try toAsciiFail(".xn--ynd036lq981an3r4h", true); } // [B5, B6, V7, A4_2]
3094test { try toUnicodeFail("xn--1ug.xn--ynd036lq981an3r4h"); } // [B1, B5, B6, C2, V7]7238test { try toUnicodeFail("xn--1ug.xn--ynd036lq981an3r4h"); } // [B1, B5, B6, C2, V7]
7239test { try toAsciiFail("xn--1ug.xn--ynd036lq981an3r4h", false); } // [B1, B5, B6, C2, V7]
7240test { try toAsciiFail("xn--1ug.xn--ynd036lq981an3r4h", true); } // [B1, B5, B6, C2, V7]
3095test { try toUnicodeFail(".xn--sndl01647an3h1h"); } // [B5, B6, V7, X4_2]7241test { try toUnicodeFail(".xn--sndl01647an3h1h"); } // [B5, B6, V7, X4_2]
7242test { try toAsciiFail(".xn--sndl01647an3h1h", false); } // [B5, B6, V7, A4_2]
7243test { try toAsciiFail(".xn--sndl01647an3h1h", true); } // [B5, B6, V7, A4_2]
3096test { try toUnicodeFail("xn--1ug.xn--sndl01647an3h1h"); } // [B1, B5, B6, C2, V7]7244test { try toUnicodeFail("xn--1ug.xn--sndl01647an3h1h"); } // [B1, B5, B6, C2, V7]
7245test { try toAsciiFail("xn--1ug.xn--sndl01647an3h1h", false); } // [B1, B5, B6, C2, V7]
7246test { try toAsciiFail("xn--1ug.xn--sndl01647an3h1h", true); } // [B1, B5, B6, C2, V7]
3097test { try toUnicodeFail("-3.\xe2\x80\x8d\xe3\x83\x8c\xe1\xa2\x95"); } // [C2, V3]7247test { try toUnicodeFail("-3.\xe2\x80\x8d\xe3\x83\x8c\xe1\xa2\x95"); } // [C2, V3]
7248test { try toAsciiFail("-3.\xe2\x80\x8d\xe3\x83\x8c\xe1\xa2\x95", false); } // [C2, V3]
7249test { try toAsciiFail("-3.\xe2\x80\x8d\xe3\x83\x8c\xe1\xa2\x95", true); } // [V3]
3098test { try toUnicodeFail("-3.xn--fbf115j"); } // [V3]7250test { try toUnicodeFail("-3.xn--fbf115j"); } // [V3]
7251test { try toAsciiFail("-3.xn--fbf115j", false); } // [V3]
7252test { try toAsciiFail("-3.xn--fbf115j", true); } // [V3]
3099test { try toUnicodeFail("-3.xn--fbf739aq5o"); } // [C2, V3]7253test { try toUnicodeFail("-3.xn--fbf739aq5o"); } // [C2, V3]
7254test { try toAsciiFail("-3.xn--fbf739aq5o", false); } // [C2, V3]
7255test { try toAsciiFail("-3.xn--fbf739aq5o", true); } // [C2, V3]
3100test { try toUnicodeFail("\xf0\x9f\x82\x83\xd9\xa6\xc3\x9f\xe2\x80\x8d\xe3\x80\x82\xf3\xa0\xa0\x82\xf2\xad\xb0\x8d\xf0\x9e\xa9\x92-"); } // [B1, C2, V3, V7]7256test { try toUnicodeFail("\xf0\x9f\x82\x83\xd9\xa6\xc3\x9f\xe2\x80\x8d\xe3\x80\x82\xf3\xa0\xa0\x82\xf2\xad\xb0\x8d\xf0\x9e\xa9\x92-"); } // [B1, C2, V3, V7]
7257test { try toAsciiFail("\xf0\x9f\x82\x83\xd9\xa6\xc3\x9f\xe2\x80\x8d\xe3\x80\x82\xf3\xa0\xa0\x82\xf2\xad\xb0\x8d\xf0\x9e\xa9\x92-", false); } // [B1, C2, V3, V7]
7258test { try toAsciiFail("\xf0\x9f\x82\x83\xd9\xa6\xc3\x9f\xe2\x80\x8d\xe3\x80\x82\xf3\xa0\xa0\x82\xf2\xad\xb0\x8d\xf0\x9e\xa9\x92-", true); } // [B1, V3, V7]
3101test { try toUnicodeFail("\xf0\x9f\x82\x83\xd9\xa6SS\xe2\x80\x8d\xe3\x80\x82\xf3\xa0\xa0\x82\xf2\xad\xb0\x8d\xf0\x9e\xa9\x92-"); } // [B1, C2, V3, V7]7259test { try toUnicodeFail("\xf0\x9f\x82\x83\xd9\xa6SS\xe2\x80\x8d\xe3\x80\x82\xf3\xa0\xa0\x82\xf2\xad\xb0\x8d\xf0\x9e\xa9\x92-"); } // [B1, C2, V3, V7]
7260test { try toAsciiFail("\xf0\x9f\x82\x83\xd9\xa6SS\xe2\x80\x8d\xe3\x80\x82\xf3\xa0\xa0\x82\xf2\xad\xb0\x8d\xf0\x9e\xa9\x92-", false); } // [B1, C2, V3, V7]
7261test { try toAsciiFail("\xf0\x9f\x82\x83\xd9\xa6SS\xe2\x80\x8d\xe3\x80\x82\xf3\xa0\xa0\x82\xf2\xad\xb0\x8d\xf0\x9e\xa9\x92-", true); } // [B1, V3, V7]
3102test { try toUnicodeFail("\xf0\x9f\x82\x83\xd9\xa6ss\xe2\x80\x8d\xe3\x80\x82\xf3\xa0\xa0\x82\xf2\xad\xb0\x8d\xf0\x9e\xa9\x92-"); } // [B1, C2, V3, V7]7262test { try toUnicodeFail("\xf0\x9f\x82\x83\xd9\xa6ss\xe2\x80\x8d\xe3\x80\x82\xf3\xa0\xa0\x82\xf2\xad\xb0\x8d\xf0\x9e\xa9\x92-"); } // [B1, C2, V3, V7]
7263test { try toAsciiFail("\xf0\x9f\x82\x83\xd9\xa6ss\xe2\x80\x8d\xe3\x80\x82\xf3\xa0\xa0\x82\xf2\xad\xb0\x8d\xf0\x9e\xa9\x92-", false); } // [B1, C2, V3, V7]
7264test { try toAsciiFail("\xf0\x9f\x82\x83\xd9\xa6ss\xe2\x80\x8d\xe3\x80\x82\xf3\xa0\xa0\x82\xf2\xad\xb0\x8d\xf0\x9e\xa9\x92-", true); } // [B1, V3, V7]
3103test { try toUnicodeFail("xn--ss-pyd98921c.xn----nz8rh7531csznt"); } // [B1, V3, V7]7265test { try toUnicodeFail("xn--ss-pyd98921c.xn----nz8rh7531csznt"); } // [B1, V3, V7]
7266test { try toAsciiFail("xn--ss-pyd98921c.xn----nz8rh7531csznt", false); } // [B1, V3, V7]
7267test { try toAsciiFail("xn--ss-pyd98921c.xn----nz8rh7531csznt", true); } // [B1, V3, V7]
3104test { try toUnicodeFail("xn--ss-pyd483x5k99b.xn----nz8rh7531csznt"); } // [B1, C2, V3, V7]7268test { try toUnicodeFail("xn--ss-pyd483x5k99b.xn----nz8rh7531csznt"); } // [B1, C2, V3, V7]
7269test { try toAsciiFail("xn--ss-pyd483x5k99b.xn----nz8rh7531csznt", false); } // [B1, C2, V3, V7]
7270test { try toAsciiFail("xn--ss-pyd483x5k99b.xn----nz8rh7531csznt", true); } // [B1, C2, V3, V7]
3105test { try toUnicodeFail("xn--zca34z68yzu83b.xn----nz8rh7531csznt"); } // [B1, C2, V3, V7]7271test { try toUnicodeFail("xn--zca34z68yzu83b.xn----nz8rh7531csznt"); } // [B1, C2, V3, V7]
7272test { try toAsciiFail("xn--zca34z68yzu83b.xn----nz8rh7531csznt", false); } // [B1, C2, V3, V7]
7273test { try toAsciiFail("xn--zca34z68yzu83b.xn----nz8rh7531csznt", true); } // [B1, C2, V3, V7]
3106test { try toUnicodeFail("\xf0\x9f\x82\x83\xd9\xa6Ss\xe2\x80\x8d\xe3\x80\x82\xf3\xa0\xa0\x82\xf2\xad\xb0\x8d\xf0\x9e\xa9\x92-"); } // [B1, C2, V3, V7]7274test { try toUnicodeFail("\xf0\x9f\x82\x83\xd9\xa6Ss\xe2\x80\x8d\xe3\x80\x82\xf3\xa0\xa0\x82\xf2\xad\xb0\x8d\xf0\x9e\xa9\x92-"); } // [B1, C2, V3, V7]
7275test { try toAsciiFail("\xf0\x9f\x82\x83\xd9\xa6Ss\xe2\x80\x8d\xe3\x80\x82\xf3\xa0\xa0\x82\xf2\xad\xb0\x8d\xf0\x9e\xa9\x92-", false); } // [B1, C2, V3, V7]
7276test { try toAsciiFail("\xf0\x9f\x82\x83\xd9\xa6Ss\xe2\x80\x8d\xe3\x80\x82\xf3\xa0\xa0\x82\xf2\xad\xb0\x8d\xf0\x9e\xa9\x92-", true); } // [B1, V3, V7]
3107test { try toUnicodeFail("\xea\x87\x9f-\xf0\x90\xbe\xba\xda\x9f\xe3\x80\x82\xf2\xb0\x80\xba\xe2\x80\x8c"); } // [B5, B6, C1, V7]7277test { try toUnicodeFail("\xea\x87\x9f-\xf0\x90\xbe\xba\xda\x9f\xe3\x80\x82\xf2\xb0\x80\xba\xe2\x80\x8c"); } // [B5, B6, C1, V7]
7278test { try toAsciiFail("\xea\x87\x9f-\xf0\x90\xbe\xba\xda\x9f\xe3\x80\x82\xf2\xb0\x80\xba\xe2\x80\x8c", false); } // [B5, B6, C1, V7]
7279test { try toAsciiFail("\xea\x87\x9f-\xf0\x90\xbe\xba\xda\x9f\xe3\x80\x82\xf2\xb0\x80\xba\xe2\x80\x8c", true); } // [B5, B6, V7]
3108test { try toUnicodeFail("xn----utc4430jd3zd.xn--bp20d"); } // [B5, B6, V7]7280test { try toUnicodeFail("xn----utc4430jd3zd.xn--bp20d"); } // [B5, B6, V7]
7281test { try toAsciiFail("xn----utc4430jd3zd.xn--bp20d", false); } // [B5, B6, V7]
7282test { try toAsciiFail("xn----utc4430jd3zd.xn--bp20d", true); } // [B5, B6, V7]
3109test { try toUnicodeFail("xn----utc4430jd3zd.xn--0ugx6670i"); } // [B5, B6, C1, V7]7283test { try toUnicodeFail("xn----utc4430jd3zd.xn--0ugx6670i"); } // [B5, B6, C1, V7]
7284test { try toAsciiFail("xn----utc4430jd3zd.xn--0ugx6670i", false); } // [B5, B6, C1, V7]
7285test { try toAsciiFail("xn----utc4430jd3zd.xn--0ugx6670i", true); } // [B5, B6, C1, V7]
3110test { try toUnicodeFail("\xd9\xa5.\xd2\x84\xf0\x90\xa8\x97\xf0\x9d\xa9\x8b\xf0\xb4\xa4\x83"); } // [B1, V6, V7]7286test { try toUnicodeFail("\xd9\xa5.\xd2\x84\xf0\x90\xa8\x97\xf0\x9d\xa9\x8b\xf0\xb4\xa4\x83"); } // [B1, V6, V7]
7287test { try toAsciiFail("\xd9\xa5.\xd2\x84\xf0\x90\xa8\x97\xf0\x9d\xa9\x8b\xf0\xb4\xa4\x83", false); } // [B1, V6, V7]
7288test { try toAsciiFail("\xd9\xa5.\xd2\x84\xf0\x90\xa8\x97\xf0\x9d\xa9\x8b\xf0\xb4\xa4\x83", true); } // [B1, V6, V7]
3111test { try toUnicodeFail("xn--eib.xn--n3a0405kus8eft5l"); } // [B1, V6, V7]7289test { try toUnicodeFail("xn--eib.xn--n3a0405kus8eft5l"); } // [B1, V6, V7]
7290test { try toAsciiFail("xn--eib.xn--n3a0405kus8eft5l", false); } // [B1, V6, V7]
7291test { try toAsciiFail("xn--eib.xn--n3a0405kus8eft5l", true); } // [B1, V6, V7]
3112test { try toUnicodeFail("-.\xf1\xb1\xbc\x93\xd9\x89\xf0\x90\xa8\xbf"); } // [B1, B5, B6, V3, V7]7292test { try toUnicodeFail("-.\xf1\xb1\xbc\x93\xd9\x89\xf0\x90\xa8\xbf"); } // [B1, B5, B6, V3, V7]
7293test { try toAsciiFail("-.\xf1\xb1\xbc\x93\xd9\x89\xf0\x90\xa8\xbf", false); } // [B1, B5, B6, V3, V7]
7294test { try toAsciiFail("-.\xf1\xb1\xbc\x93\xd9\x89\xf0\x90\xa8\xbf", true); } // [B1, B5, B6, V3, V7]
3113test { try toUnicodeFail("-.xn--lhb4124khbq4b"); } // [B1, B5, B6, V3, V7]7295test { try toUnicodeFail("-.xn--lhb4124khbq4b"); } // [B1, B5, B6, V3, V7]
7296test { try toAsciiFail("-.xn--lhb4124khbq4b", false); } // [B1, B5, B6, V3, V7]
7297test { try toAsciiFail("-.xn--lhb4124khbq4b", true); } // [B1, B5, B6, V3, V7]
3114test { try toUnicodeFail("\xf3\xbe\xac\xa8\xcf\x82.\xf0\x9e\xb6\x99\xeb\x85\xab\xc3\x9f"); } // [B2, B3, V7]7298test { try toUnicodeFail("\xf3\xbe\xac\xa8\xcf\x82.\xf0\x9e\xb6\x99\xeb\x85\xab\xc3\x9f"); } // [B2, B3, V7]
7299test { try toAsciiFail("\xf3\xbe\xac\xa8\xcf\x82.\xf0\x9e\xb6\x99\xeb\x85\xab\xc3\x9f", false); } // [B2, B3, V7]
7300test { try toAsciiFail("\xf3\xbe\xac\xa8\xcf\x82.\xf0\x9e\xb6\x99\xeb\x85\xab\xc3\x9f", true); } // [B2, B3, V7]
3115test { try toUnicodeFail("\xf3\xbe\xac\xa8\xcf\x82.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6\xc3\x9f"); } // [B2, B3, V7]7301test { try toUnicodeFail("\xf3\xbe\xac\xa8\xcf\x82.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6\xc3\x9f"); } // [B2, B3, V7]
7302test { try toAsciiFail("\xf3\xbe\xac\xa8\xcf\x82.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6\xc3\x9f", false); } // [B2, B3, V7]
7303test { try toAsciiFail("\xf3\xbe\xac\xa8\xcf\x82.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6\xc3\x9f", true); } // [B2, B3, V7]
3116test { try toUnicodeFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6SS"); } // [B2, B3, V7]7304test { try toUnicodeFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6SS"); } // [B2, B3, V7]
7305test { try toAsciiFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6SS", false); } // [B2, B3, V7]
7306test { try toAsciiFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6SS", true); } // [B2, B3, V7]
3117test { try toUnicodeFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xeb\x85\xabSS"); } // [B2, B3, V7]7307test { try toUnicodeFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xeb\x85\xabSS"); } // [B2, B3, V7]
7308test { try toAsciiFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xeb\x85\xabSS", false); } // [B2, B3, V7]
7309test { try toAsciiFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xeb\x85\xabSS", true); } // [B2, B3, V7]
3118test { try toUnicodeFail("\xf3\xbe\xac\xa8\xcf\x83.\xf0\x9e\xb6\x99\xeb\x85\xabss"); } // [B2, B3, V7]7310test { try toUnicodeFail("\xf3\xbe\xac\xa8\xcf\x83.\xf0\x9e\xb6\x99\xeb\x85\xabss"); } // [B2, B3, V7]
7311test { try toAsciiFail("\xf3\xbe\xac\xa8\xcf\x83.\xf0\x9e\xb6\x99\xeb\x85\xabss", false); } // [B2, B3, V7]
7312test { try toAsciiFail("\xf3\xbe\xac\xa8\xcf\x83.\xf0\x9e\xb6\x99\xeb\x85\xabss", true); } // [B2, B3, V7]
3119test { try toUnicodeFail("\xf3\xbe\xac\xa8\xcf\x83.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6ss"); } // [B2, B3, V7]7313test { try toUnicodeFail("\xf3\xbe\xac\xa8\xcf\x83.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6ss"); } // [B2, B3, V7]
7314test { try toAsciiFail("\xf3\xbe\xac\xa8\xcf\x83.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6ss", false); } // [B2, B3, V7]
7315test { try toAsciiFail("\xf3\xbe\xac\xa8\xcf\x83.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6ss", true); } // [B2, B3, V7]
3120test { try toUnicodeFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6ss"); } // [B2, B3, V7]7316test { try toUnicodeFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6ss"); } // [B2, B3, V7]
7317test { try toAsciiFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6ss", false); } // [B2, B3, V7]
7318test { try toAsciiFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6ss", true); } // [B2, B3, V7]
3121test { try toUnicodeFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xeb\x85\xabss"); } // [B2, B3, V7]7319test { try toUnicodeFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xeb\x85\xabss"); } // [B2, B3, V7]
7320test { try toAsciiFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xeb\x85\xabss", false); } // [B2, B3, V7]
7321test { try toAsciiFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xeb\x85\xabss", true); } // [B2, B3, V7]
3122test { try toUnicodeFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xeb\x85\xabSs"); } // [B2, B3, V7]7322test { try toUnicodeFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xeb\x85\xabSs"); } // [B2, B3, V7]
7323test { try toAsciiFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xeb\x85\xabSs", false); } // [B2, B3, V7]
7324test { try toAsciiFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xeb\x85\xabSs", true); } // [B2, B3, V7]
3123test { try toUnicodeFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6Ss"); } // [B2, B3, V7]7325test { try toUnicodeFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6Ss"); } // [B2, B3, V7]
7326test { try toAsciiFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6Ss", false); } // [B2, B3, V7]
7327test { try toAsciiFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6Ss", true); } // [B2, B3, V7]
3124test { try toUnicodeFail("xn--4xa76659r.xn--ss-d64i8755h"); } // [B2, B3, V7]7328test { try toUnicodeFail("xn--4xa76659r.xn--ss-d64i8755h"); } // [B2, B3, V7]
7329test { try toAsciiFail("xn--4xa76659r.xn--ss-d64i8755h", false); } // [B2, B3, V7]
7330test { try toAsciiFail("xn--4xa76659r.xn--ss-d64i8755h", true); } // [B2, B3, V7]
3125test { try toUnicodeFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6\xc3\x9f"); } // [B2, B3, V7]7331test { try toUnicodeFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6\xc3\x9f"); } // [B2, B3, V7]
7332test { try toAsciiFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6\xc3\x9f", false); } // [B2, B3, V7]
7333test { try toAsciiFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6\xc3\x9f", true); } // [B2, B3, V7]
3126test { try toUnicodeFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xeb\x85\xab\xc3\x9f"); } // [B2, B3, V7]7334test { try toUnicodeFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xeb\x85\xab\xc3\x9f"); } // [B2, B3, V7]
7335test { try toAsciiFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xeb\x85\xab\xc3\x9f", false); } // [B2, B3, V7]
7336test { try toAsciiFail("\xf3\xbe\xac\xa8\xce\xa3.\xf0\x9e\xb6\x99\xeb\x85\xab\xc3\x9f", true); } // [B2, B3, V7]
3127test { try toUnicodeFail("\xf3\xbe\xac\xa8\xcf\x83.\xf0\x9e\xb6\x99\xeb\x85\xab\xc3\x9f"); } // [B2, B3, V7]7337test { try toUnicodeFail("\xf3\xbe\xac\xa8\xcf\x83.\xf0\x9e\xb6\x99\xeb\x85\xab\xc3\x9f"); } // [B2, B3, V7]
7338test { try toAsciiFail("\xf3\xbe\xac\xa8\xcf\x83.\xf0\x9e\xb6\x99\xeb\x85\xab\xc3\x9f", false); } // [B2, B3, V7]
7339test { try toAsciiFail("\xf3\xbe\xac\xa8\xcf\x83.\xf0\x9e\xb6\x99\xeb\x85\xab\xc3\x9f", true); } // [B2, B3, V7]
3128test { try toUnicodeFail("\xf3\xbe\xac\xa8\xcf\x83.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6\xc3\x9f"); } // [B2, B3, V7]7340test { try toUnicodeFail("\xf3\xbe\xac\xa8\xcf\x83.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6\xc3\x9f"); } // [B2, B3, V7]
7341test { try toAsciiFail("\xf3\xbe\xac\xa8\xcf\x83.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6\xc3\x9f", false); } // [B2, B3, V7]
7342test { try toAsciiFail("\xf3\xbe\xac\xa8\xcf\x83.\xf0\x9e\xb6\x99\xe1\x84\x82\xe1\x85\xa8\xe1\x86\xb6\xc3\x9f", true); } // [B2, B3, V7]
3129test { try toUnicodeFail("xn--4xa76659r.xn--zca5051g4h4i"); } // [B2, B3, V7]7343test { try toUnicodeFail("xn--4xa76659r.xn--zca5051g4h4i"); } // [B2, B3, V7]
7344test { try toAsciiFail("xn--4xa76659r.xn--zca5051g4h4i", false); } // [B2, B3, V7]
7345test { try toAsciiFail("xn--4xa76659r.xn--zca5051g4h4i", true); } // [B2, B3, V7]
3130test { try toUnicodeFail("xn--3xa96659r.xn--zca5051g4h4i"); } // [B2, B3, V7]7346test { try toUnicodeFail("xn--3xa96659r.xn--zca5051g4h4i"); } // [B2, B3, V7]
7347test { try toAsciiFail("xn--3xa96659r.xn--zca5051g4h4i", false); } // [B2, B3, V7]
7348test { try toAsciiFail("xn--3xa96659r.xn--zca5051g4h4i", true); } // [B2, B3, V7]
3131test { try toAsciiPass("\xe2\x84\xb2\xe1\x9f\x92\xe2\x80\x8d\xef\xbd\xa1\xe2\x89\xa0\xe2\x80\x8d\xe2\x80\x8c", "xn--u4e969b.xn--1ch", true); }7349test { try toAsciiPass("\xe2\x84\xb2\xe1\x9f\x92\xe2\x80\x8d\xef\xbd\xa1\xe2\x89\xa0\xe2\x80\x8d\xe2\x80\x8c", "xn--u4e969b.xn--1ch", true); }
3132test { try toUnicodeFail("\xe2\x84\xb2\xe1\x9f\x92\xe2\x80\x8d\xef\xbd\xa1\xe2\x89\xa0\xe2\x80\x8d\xe2\x80\x8c"); } // [C1, C2]7350test { try toUnicodeFail("\xe2\x84\xb2\xe1\x9f\x92\xe2\x80\x8d\xef\xbd\xa1\xe2\x89\xa0\xe2\x80\x8d\xe2\x80\x8c"); } // [C1, C2]
7351test { try toAsciiFail("\xe2\x84\xb2\xe1\x9f\x92\xe2\x80\x8d\xef\xbd\xa1\xe2\x89\xa0\xe2\x80\x8d\xe2\x80\x8c", false); } // [C1, C2]
3133test { try toAsciiPass("\xe2\x84\xb2\xe1\x9f\x92\xe2\x80\x8d\xef\xbd\xa1=\xcc\xb8\xe2\x80\x8d\xe2\x80\x8c", "xn--u4e969b.xn--1ch", true); }7352test { try toAsciiPass("\xe2\x84\xb2\xe1\x9f\x92\xe2\x80\x8d\xef\xbd\xa1=\xcc\xb8\xe2\x80\x8d\xe2\x80\x8c", "xn--u4e969b.xn--1ch", true); }
3134test { try toUnicodeFail("\xe2\x84\xb2\xe1\x9f\x92\xe2\x80\x8d\xef\xbd\xa1=\xcc\xb8\xe2\x80\x8d\xe2\x80\x8c"); } // [C1, C2]7353test { try toUnicodeFail("\xe2\x84\xb2\xe1\x9f\x92\xe2\x80\x8d\xef\xbd\xa1=\xcc\xb8\xe2\x80\x8d\xe2\x80\x8c"); } // [C1, C2]
7354test { try toAsciiFail("\xe2\x84\xb2\xe1\x9f\x92\xe2\x80\x8d\xef\xbd\xa1=\xcc\xb8\xe2\x80\x8d\xe2\x80\x8c", false); } // [C1, C2]
3135test { try toAsciiPass("\xe2\x84\xb2\xe1\x9f\x92\xe2\x80\x8d\xe3\x80\x82\xe2\x89\xa0\xe2\x80\x8d\xe2\x80\x8c", "xn--u4e969b.xn--1ch", true); }7355test { try toAsciiPass("\xe2\x84\xb2\xe1\x9f\x92\xe2\x80\x8d\xe3\x80\x82\xe2\x89\xa0\xe2\x80\x8d\xe2\x80\x8c", "xn--u4e969b.xn--1ch", true); }
3136test { try toUnicodeFail("\xe2\x84\xb2\xe1\x9f\x92\xe2\x80\x8d\xe3\x80\x82\xe2\x89\xa0\xe2\x80\x8d\xe2\x80\x8c"); } // [C1, C2]7356test { try toUnicodeFail("\xe2\x84\xb2\xe1\x9f\x92\xe2\x80\x8d\xe3\x80\x82\xe2\x89\xa0\xe2\x80\x8d\xe2\x80\x8c"); } // [C1, C2]
7357test { try toAsciiFail("\xe2\x84\xb2\xe1\x9f\x92\xe2\x80\x8d\xe3\x80\x82\xe2\x89\xa0\xe2\x80\x8d\xe2\x80\x8c", false); } // [C1, C2]
3137test { try toAsciiPass("\xe2\x84\xb2\xe1\x9f\x92\xe2\x80\x8d\xe3\x80\x82=\xcc\xb8\xe2\x80\x8d\xe2\x80\x8c", "xn--u4e969b.xn--1ch", true); }7358test { try toAsciiPass("\xe2\x84\xb2\xe1\x9f\x92\xe2\x80\x8d\xe3\x80\x82=\xcc\xb8\xe2\x80\x8d\xe2\x80\x8c", "xn--u4e969b.xn--1ch", true); }
3138test { try toUnicodeFail("\xe2\x84\xb2\xe1\x9f\x92\xe2\x80\x8d\xe3\x80\x82=\xcc\xb8\xe2\x80\x8d\xe2\x80\x8c"); } // [C1, C2]7359test { try toUnicodeFail("\xe2\x84\xb2\xe1\x9f\x92\xe2\x80\x8d\xe3\x80\x82=\xcc\xb8\xe2\x80\x8d\xe2\x80\x8c"); } // [C1, C2]
7360test { try toAsciiFail("\xe2\x84\xb2\xe1\x9f\x92\xe2\x80\x8d\xe3\x80\x82=\xcc\xb8\xe2\x80\x8d\xe2\x80\x8c", false); } // [C1, C2]
3139test { try toAsciiPass("\xe2\x85\x8e\xe1\x9f\x92\xe2\x80\x8d\xe3\x80\x82=\xcc\xb8\xe2\x80\x8d\xe2\x80\x8c", "xn--u4e969b.xn--1ch", true); }7361test { try toAsciiPass("\xe2\x85\x8e\xe1\x9f\x92\xe2\x80\x8d\xe3\x80\x82=\xcc\xb8\xe2\x80\x8d\xe2\x80\x8c", "xn--u4e969b.xn--1ch", true); }
3140test { try toUnicodeFail("\xe2\x85\x8e\xe1\x9f\x92\xe2\x80\x8d\xe3\x80\x82=\xcc\xb8\xe2\x80\x8d\xe2\x80\x8c"); } // [C1, C2]7362test { try toUnicodeFail("\xe2\x85\x8e\xe1\x9f\x92\xe2\x80\x8d\xe3\x80\x82=\xcc\xb8\xe2\x80\x8d\xe2\x80\x8c"); } // [C1, C2]
7363test { try toAsciiFail("\xe2\x85\x8e\xe1\x9f\x92\xe2\x80\x8d\xe3\x80\x82=\xcc\xb8\xe2\x80\x8d\xe2\x80\x8c", false); } // [C1, C2]
3141test { try toAsciiPass("\xe2\x85\x8e\xe1\x9f\x92\xe2\x80\x8d\xe3\x80\x82\xe2\x89\xa0\xe2\x80\x8d\xe2\x80\x8c", "xn--u4e969b.xn--1ch", true); }7364test { try toAsciiPass("\xe2\x85\x8e\xe1\x9f\x92\xe2\x80\x8d\xe3\x80\x82\xe2\x89\xa0\xe2\x80\x8d\xe2\x80\x8c", "xn--u4e969b.xn--1ch", true); }
3142test { try toUnicodeFail("\xe2\x85\x8e\xe1\x9f\x92\xe2\x80\x8d\xe3\x80\x82\xe2\x89\xa0\xe2\x80\x8d\xe2\x80\x8c"); } // [C1, C2]7365test { try toUnicodeFail("\xe2\x85\x8e\xe1\x9f\x92\xe2\x80\x8d\xe3\x80\x82\xe2\x89\xa0\xe2\x80\x8d\xe2\x80\x8c"); } // [C1, C2]
7366test { try toAsciiFail("\xe2\x85\x8e\xe1\x9f\x92\xe2\x80\x8d\xe3\x80\x82\xe2\x89\xa0\xe2\x80\x8d\xe2\x80\x8c", false); } // [C1, C2]
3143test { try toUnicodePass("xn--u4e969b.xn--1ch", "\xe2\x85\x8e\xe1\x9f\x92.\xe2\x89\xa0"); }7367test { try toUnicodePass("xn--u4e969b.xn--1ch", "\xe2\x85\x8e\xe1\x9f\x92.\xe2\x89\xa0"); }
3144test { try toAsciiPass("xn--u4e969b.xn--1ch", "xn--u4e969b.xn--1ch", false); }7368test { try toAsciiPass("xn--u4e969b.xn--1ch", "xn--u4e969b.xn--1ch", false); }
3145test { try toAsciiPass("xn--u4e969b.xn--1ch", "xn--u4e969b.xn--1ch", true); }7369test { try toAsciiPass("xn--u4e969b.xn--1ch", "xn--u4e969b.xn--1ch", true); }
...@@ -3156,291 +7380,851 @@ test { try toUnicodePass("\xe2\x84\xb2\xe1\x9f\x92.\xe2\x89\xa0", "\xe2\x85\x8e\...@@ -3156,291 +7380,851 @@ test { try toUnicodePass("\xe2\x84\xb2\xe1\x9f\x92.\xe2\x89\xa0", "\xe2\x85\x8e\
3156test { try toAsciiPass("\xe2\x84\xb2\xe1\x9f\x92.\xe2\x89\xa0", "xn--u4e969b.xn--1ch", false); }7380test { try toAsciiPass("\xe2\x84\xb2\xe1\x9f\x92.\xe2\x89\xa0", "xn--u4e969b.xn--1ch", false); }
3157test { try toAsciiPass("\xe2\x84\xb2\xe1\x9f\x92.\xe2\x89\xa0", "xn--u4e969b.xn--1ch", true); }7381test { try toAsciiPass("\xe2\x84\xb2\xe1\x9f\x92.\xe2\x89\xa0", "xn--u4e969b.xn--1ch", true); }
3158test { try toUnicodeFail("xn--u4e823bq1a.xn--0ugb89o"); } // [C1, C2]7382test { try toUnicodeFail("xn--u4e823bq1a.xn--0ugb89o"); } // [C1, C2]
7383test { try toAsciiFail("xn--u4e823bq1a.xn--0ugb89o", false); } // [C1, C2]
7384test { try toAsciiFail("xn--u4e823bq1a.xn--0ugb89o", true); } // [C1, C2]
3159test { try toAsciiPass("\xe2\x85\x8e\xe1\x9f\x92\xe2\x80\x8d\xef\xbd\xa1=\xcc\xb8\xe2\x80\x8d\xe2\x80\x8c", "xn--u4e969b.xn--1ch", true); }7385test { try toAsciiPass("\xe2\x85\x8e\xe1\x9f\x92\xe2\x80\x8d\xef\xbd\xa1=\xcc\xb8\xe2\x80\x8d\xe2\x80\x8c", "xn--u4e969b.xn--1ch", true); }
3160test { try toUnicodeFail("\xe2\x85\x8e\xe1\x9f\x92\xe2\x80\x8d\xef\xbd\xa1=\xcc\xb8\xe2\x80\x8d\xe2\x80\x8c"); } // [C1, C2]7386test { try toUnicodeFail("\xe2\x85\x8e\xe1\x9f\x92\xe2\x80\x8d\xef\xbd\xa1=\xcc\xb8\xe2\x80\x8d\xe2\x80\x8c"); } // [C1, C2]
7387test { try toAsciiFail("\xe2\x85\x8e\xe1\x9f\x92\xe2\x80\x8d\xef\xbd\xa1=\xcc\xb8\xe2\x80\x8d\xe2\x80\x8c", false); } // [C1, C2]
3161test { try toAsciiPass("\xe2\x85\x8e\xe1\x9f\x92\xe2\x80\x8d\xef\xbd\xa1\xe2\x89\xa0\xe2\x80\x8d\xe2\x80\x8c", "xn--u4e969b.xn--1ch", true); }7388test { try toAsciiPass("\xe2\x85\x8e\xe1\x9f\x92\xe2\x80\x8d\xef\xbd\xa1\xe2\x89\xa0\xe2\x80\x8d\xe2\x80\x8c", "xn--u4e969b.xn--1ch", true); }
3162test { try toUnicodeFail("\xe2\x85\x8e\xe1\x9f\x92\xe2\x80\x8d\xef\xbd\xa1\xe2\x89\xa0\xe2\x80\x8d\xe2\x80\x8c"); } // [C1, C2]7389test { try toUnicodeFail("\xe2\x85\x8e\xe1\x9f\x92\xe2\x80\x8d\xef\xbd\xa1\xe2\x89\xa0\xe2\x80\x8d\xe2\x80\x8c"); } // [C1, C2]
7390test { try toAsciiFail("\xe2\x85\x8e\xe1\x9f\x92\xe2\x80\x8d\xef\xbd\xa1\xe2\x89\xa0\xe2\x80\x8d\xe2\x80\x8c", false); } // [C1, C2]
3163test { try toUnicodeFail("xn--u4e319b.xn--1ch"); } // [V7]7391test { try toUnicodeFail("xn--u4e319b.xn--1ch"); } // [V7]
7392test { try toAsciiFail("xn--u4e319b.xn--1ch", false); } // [V7]
7393test { try toAsciiFail("xn--u4e319b.xn--1ch", true); } // [V7]
3164test { try toUnicodeFail("xn--u4e823bcza.xn--0ugb89o"); } // [C1, C2, V7]7394test { try toUnicodeFail("xn--u4e823bcza.xn--0ugb89o"); } // [C1, C2, V7]
7395test { try toAsciiFail("xn--u4e823bcza.xn--0ugb89o", false); } // [C1, C2, V7]
7396test { try toAsciiFail("xn--u4e823bcza.xn--0ugb89o", true); } // [C1, C2, V7]
3165test { try toUnicodeFail("\xf0\x90\x8b\xba\xea\xab\xb6\xea\xa5\x93\xf3\xa7\xa6\x89\xef\xbc\x8e\xe2\x80\x8c\xe1\x9c\x94\xda\x8f"); } // [B1, C1, V7]7397test { try toUnicodeFail("\xf0\x90\x8b\xba\xea\xab\xb6\xea\xa5\x93\xf3\xa7\xa6\x89\xef\xbc\x8e\xe2\x80\x8c\xe1\x9c\x94\xda\x8f"); } // [B1, C1, V7]
7398test { try toAsciiFail("\xf0\x90\x8b\xba\xea\xab\xb6\xea\xa5\x93\xf3\xa7\xa6\x89\xef\xbc\x8e\xe2\x80\x8c\xe1\x9c\x94\xda\x8f", false); } // [B1, C1, V7]
7399test { try toAsciiFail("\xf0\x90\x8b\xba\xea\xab\xb6\xea\xa5\x93\xf3\xa7\xa6\x89\xef\xbc\x8e\xe2\x80\x8c\xe1\x9c\x94\xda\x8f", true); } // [B1, V6, V7]
3166test { try toUnicodeFail("\xf0\x90\x8b\xba\xea\xab\xb6\xea\xa5\x93\xf3\xa7\xa6\x89.\xe2\x80\x8c\xe1\x9c\x94\xda\x8f"); } // [B1, C1, V7]7400test { try toUnicodeFail("\xf0\x90\x8b\xba\xea\xab\xb6\xea\xa5\x93\xf3\xa7\xa6\x89.\xe2\x80\x8c\xe1\x9c\x94\xda\x8f"); } // [B1, C1, V7]
7401test { try toAsciiFail("\xf0\x90\x8b\xba\xea\xab\xb6\xea\xa5\x93\xf3\xa7\xa6\x89.\xe2\x80\x8c\xe1\x9c\x94\xda\x8f", false); } // [B1, C1, V7]
7402test { try toAsciiFail("\xf0\x90\x8b\xba\xea\xab\xb6\xea\xa5\x93\xf3\xa7\xa6\x89.\xe2\x80\x8c\xe1\x9c\x94\xda\x8f", true); } // [B1, V6, V7]
3167test { try toUnicodeFail("xn--3j9a14ak27osbz2o.xn--ljb175f"); } // [B1, V6, V7]7403test { try toUnicodeFail("xn--3j9a14ak27osbz2o.xn--ljb175f"); } // [B1, V6, V7]
7404test { try toAsciiFail("xn--3j9a14ak27osbz2o.xn--ljb175f", false); } // [B1, V6, V7]
7405test { try toAsciiFail("xn--3j9a14ak27osbz2o.xn--ljb175f", true); } // [B1, V6, V7]
3168test { try toUnicodeFail("xn--3j9a14ak27osbz2o.xn--ljb175f1wg"); } // [B1, C1, V7]7406test { try toUnicodeFail("xn--3j9a14ak27osbz2o.xn--ljb175f1wg"); } // [B1, C1, V7]
7407test { try toAsciiFail("xn--3j9a14ak27osbz2o.xn--ljb175f1wg", false); } // [B1, C1, V7]
7408test { try toAsciiFail("xn--3j9a14ak27osbz2o.xn--ljb175f1wg", true); } // [B1, C1, V7]
3169test { try toUnicodeFail("\xf1\xba\x94\xaf\xe0\xbe\xa8\xef\xbc\x8e\xe2\x89\xaf"); } // [V7]7409test { try toUnicodeFail("\xf1\xba\x94\xaf\xe0\xbe\xa8\xef\xbc\x8e\xe2\x89\xaf"); } // [V7]
7410test { try toAsciiFail("\xf1\xba\x94\xaf\xe0\xbe\xa8\xef\xbc\x8e\xe2\x89\xaf", false); } // [V7]
7411test { try toAsciiFail("\xf1\xba\x94\xaf\xe0\xbe\xa8\xef\xbc\x8e\xe2\x89\xaf", true); } // [V7]
3170test { try toUnicodeFail("\xf1\xba\x94\xaf\xe0\xbe\xa8\xef\xbc\x8e>\xcc\xb8"); } // [V7]7412test { try toUnicodeFail("\xf1\xba\x94\xaf\xe0\xbe\xa8\xef\xbc\x8e>\xcc\xb8"); } // [V7]
7413test { try toAsciiFail("\xf1\xba\x94\xaf\xe0\xbe\xa8\xef\xbc\x8e>\xcc\xb8", false); } // [V7]
7414test { try toAsciiFail("\xf1\xba\x94\xaf\xe0\xbe\xa8\xef\xbc\x8e>\xcc\xb8", true); } // [V7]
3171test { try toUnicodeFail("\xf1\xba\x94\xaf\xe0\xbe\xa8.\xe2\x89\xaf"); } // [V7]7415test { try toUnicodeFail("\xf1\xba\x94\xaf\xe0\xbe\xa8.\xe2\x89\xaf"); } // [V7]
7416test { try toAsciiFail("\xf1\xba\x94\xaf\xe0\xbe\xa8.\xe2\x89\xaf", false); } // [V7]
7417test { try toAsciiFail("\xf1\xba\x94\xaf\xe0\xbe\xa8.\xe2\x89\xaf", true); } // [V7]
3172test { try toUnicodeFail("\xf1\xba\x94\xaf\xe0\xbe\xa8.>\xcc\xb8"); } // [V7]7418test { try toUnicodeFail("\xf1\xba\x94\xaf\xe0\xbe\xa8.>\xcc\xb8"); } // [V7]
7419test { try toAsciiFail("\xf1\xba\x94\xaf\xe0\xbe\xa8.>\xcc\xb8", false); } // [V7]
7420test { try toAsciiFail("\xf1\xba\x94\xaf\xe0\xbe\xa8.>\xcc\xb8", true); } // [V7]
3173test { try toUnicodeFail("xn--4fd57150h.xn--hdh"); } // [V7]7421test { try toUnicodeFail("xn--4fd57150h.xn--hdh"); } // [V7]
7422test { try toAsciiFail("xn--4fd57150h.xn--hdh", false); } // [V7]
7423test { try toAsciiFail("xn--4fd57150h.xn--hdh", true); } // [V7]
3174test { try toUnicodeFail("\xe2\x80\x8d\xf0\x9e\xa1\x84\xe1\x82\xb3\xef\xbc\x8e\xf0\x90\x87\xbd"); } // [B1, C2, V6]7424test { try toUnicodeFail("\xe2\x80\x8d\xf0\x9e\xa1\x84\xe1\x82\xb3\xef\xbc\x8e\xf0\x90\x87\xbd"); } // [B1, C2, V6]
7425test { try toAsciiFail("\xe2\x80\x8d\xf0\x9e\xa1\x84\xe1\x82\xb3\xef\xbc\x8e\xf0\x90\x87\xbd", false); } // [B1, C2, V6]
7426test { try toAsciiFail("\xe2\x80\x8d\xf0\x9e\xa1\x84\xe1\x82\xb3\xef\xbc\x8e\xf0\x90\x87\xbd", true); } // [B1, B2, B3, V6]
3175test { try toUnicodeFail("\xe2\x80\x8d\xf0\x9e\xa1\x84\xe1\x82\xb3.\xf0\x90\x87\xbd"); } // [B1, C2, V6]7427test { try toUnicodeFail("\xe2\x80\x8d\xf0\x9e\xa1\x84\xe1\x82\xb3.\xf0\x90\x87\xbd"); } // [B1, C2, V6]
7428test { try toAsciiFail("\xe2\x80\x8d\xf0\x9e\xa1\x84\xe1\x82\xb3.\xf0\x90\x87\xbd", false); } // [B1, C2, V6]
7429test { try toAsciiFail("\xe2\x80\x8d\xf0\x9e\xa1\x84\xe1\x82\xb3.\xf0\x90\x87\xbd", true); } // [B1, B2, B3, V6]
3176test { try toUnicodeFail("\xe2\x80\x8d\xf0\x9e\xa1\x84\xe2\xb4\x93.\xf0\x90\x87\xbd"); } // [B1, C2, V6]7430test { try toUnicodeFail("\xe2\x80\x8d\xf0\x9e\xa1\x84\xe2\xb4\x93.\xf0\x90\x87\xbd"); } // [B1, C2, V6]
7431test { try toAsciiFail("\xe2\x80\x8d\xf0\x9e\xa1\x84\xe2\xb4\x93.\xf0\x90\x87\xbd", false); } // [B1, C2, V6]
7432test { try toAsciiFail("\xe2\x80\x8d\xf0\x9e\xa1\x84\xe2\xb4\x93.\xf0\x90\x87\xbd", true); } // [B1, B2, B3, V6]
3177test { try toUnicodeFail("xn--blj7492l.xn--m27c"); } // [B1, B2, B3, V6]7433test { try toUnicodeFail("xn--blj7492l.xn--m27c"); } // [B1, B2, B3, V6]
7434test { try toAsciiFail("xn--blj7492l.xn--m27c", false); } // [B1, B2, B3, V6]
7435test { try toAsciiFail("xn--blj7492l.xn--m27c", true); } // [B1, B2, B3, V6]
3178test { try toUnicodeFail("xn--1ugz52c4i16a.xn--m27c"); } // [B1, C2, V6]7436test { try toUnicodeFail("xn--1ugz52c4i16a.xn--m27c"); } // [B1, C2, V6]
7437test { try toAsciiFail("xn--1ugz52c4i16a.xn--m27c", false); } // [B1, C2, V6]
7438test { try toAsciiFail("xn--1ugz52c4i16a.xn--m27c", true); } // [B1, C2, V6]
3179test { try toUnicodeFail("\xe2\x80\x8d\xf0\x9e\xa1\x84\xe2\xb4\x93\xef\xbc\x8e\xf0\x90\x87\xbd"); } // [B1, C2, V6]7439test { try toUnicodeFail("\xe2\x80\x8d\xf0\x9e\xa1\x84\xe2\xb4\x93\xef\xbc\x8e\xf0\x90\x87\xbd"); } // [B1, C2, V6]
7440test { try toAsciiFail("\xe2\x80\x8d\xf0\x9e\xa1\x84\xe2\xb4\x93\xef\xbc\x8e\xf0\x90\x87\xbd", false); } // [B1, C2, V6]
7441test { try toAsciiFail("\xe2\x80\x8d\xf0\x9e\xa1\x84\xe2\xb4\x93\xef\xbc\x8e\xf0\x90\x87\xbd", true); } // [B1, B2, B3, V6]
3180test { try toUnicodeFail("xn--rnd5552v.xn--m27c"); } // [B1, B2, B3, V6, V7]7442test { try toUnicodeFail("xn--rnd5552v.xn--m27c"); } // [B1, B2, B3, V6, V7]
7443test { try toAsciiFail("xn--rnd5552v.xn--m27c", false); } // [B1, B2, B3, V6, V7]
7444test { try toAsciiFail("xn--rnd5552v.xn--m27c", true); } // [B1, B2, B3, V6, V7]
3181test { try toUnicodeFail("xn--rnd379ex885a.xn--m27c"); } // [B1, C2, V6, V7]7445test { try toUnicodeFail("xn--rnd379ex885a.xn--m27c"); } // [B1, C2, V6, V7]
7446test { try toAsciiFail("xn--rnd379ex885a.xn--m27c", false); } // [B1, C2, V6, V7]
7447test { try toAsciiFail("xn--rnd379ex885a.xn--m27c", true); } // [B1, C2, V6, V7]
3182test { try toUnicodeFail("\xf0\x90\xaa\x92\xc3\x9f\xea\xa3\xaa\xef\xbc\x8e\xe1\xa1\xa4"); } // [B2, B3]7448test { try toUnicodeFail("\xf0\x90\xaa\x92\xc3\x9f\xea\xa3\xaa\xef\xbc\x8e\xe1\xa1\xa4"); } // [B2, B3]
7449test { try toAsciiFail("\xf0\x90\xaa\x92\xc3\x9f\xea\xa3\xaa\xef\xbc\x8e\xe1\xa1\xa4", false); } // [B2, B3]
7450test { try toAsciiFail("\xf0\x90\xaa\x92\xc3\x9f\xea\xa3\xaa\xef\xbc\x8e\xe1\xa1\xa4", true); } // [B2, B3]
3183test { try toUnicodeFail("\xf0\x90\xaa\x92\xc3\x9f\xea\xa3\xaa.\xe1\xa1\xa4"); } // [B2, B3]7451test { try toUnicodeFail("\xf0\x90\xaa\x92\xc3\x9f\xea\xa3\xaa.\xe1\xa1\xa4"); } // [B2, B3]
7452test { try toAsciiFail("\xf0\x90\xaa\x92\xc3\x9f\xea\xa3\xaa.\xe1\xa1\xa4", false); } // [B2, B3]
7453test { try toAsciiFail("\xf0\x90\xaa\x92\xc3\x9f\xea\xa3\xaa.\xe1\xa1\xa4", true); } // [B2, B3]
3184test { try toUnicodeFail("\xf0\x90\xaa\x92SS\xea\xa3\xaa.\xe1\xa1\xa4"); } // [B2, B3]7454test { try toUnicodeFail("\xf0\x90\xaa\x92SS\xea\xa3\xaa.\xe1\xa1\xa4"); } // [B2, B3]
7455test { try toAsciiFail("\xf0\x90\xaa\x92SS\xea\xa3\xaa.\xe1\xa1\xa4", false); } // [B2, B3]
7456test { try toAsciiFail("\xf0\x90\xaa\x92SS\xea\xa3\xaa.\xe1\xa1\xa4", true); } // [B2, B3]
3185test { try toUnicodeFail("\xf0\x90\xaa\x92ss\xea\xa3\xaa.\xe1\xa1\xa4"); } // [B2, B3]7457test { try toUnicodeFail("\xf0\x90\xaa\x92ss\xea\xa3\xaa.\xe1\xa1\xa4"); } // [B2, B3]
7458test { try toAsciiFail("\xf0\x90\xaa\x92ss\xea\xa3\xaa.\xe1\xa1\xa4", false); } // [B2, B3]
7459test { try toAsciiFail("\xf0\x90\xaa\x92ss\xea\xa3\xaa.\xe1\xa1\xa4", true); } // [B2, B3]
3186test { try toUnicodeFail("xn--ss-tu9hw933a.xn--08e"); } // [B2, B3]7460test { try toUnicodeFail("xn--ss-tu9hw933a.xn--08e"); } // [B2, B3]
7461test { try toAsciiFail("xn--ss-tu9hw933a.xn--08e", false); } // [B2, B3]
7462test { try toAsciiFail("xn--ss-tu9hw933a.xn--08e", true); } // [B2, B3]
3187test { try toUnicodeFail("xn--zca2517f2hvc.xn--08e"); } // [B2, B3]7463test { try toUnicodeFail("xn--zca2517f2hvc.xn--08e"); } // [B2, B3]
7464test { try toAsciiFail("xn--zca2517f2hvc.xn--08e", false); } // [B2, B3]
7465test { try toAsciiFail("xn--zca2517f2hvc.xn--08e", true); } // [B2, B3]
3188test { try toUnicodeFail("\xf0\x90\xaa\x92SS\xea\xa3\xaa\xef\xbc\x8e\xe1\xa1\xa4"); } // [B2, B3]7466test { try toUnicodeFail("\xf0\x90\xaa\x92SS\xea\xa3\xaa\xef\xbc\x8e\xe1\xa1\xa4"); } // [B2, B3]
7467test { try toAsciiFail("\xf0\x90\xaa\x92SS\xea\xa3\xaa\xef\xbc\x8e\xe1\xa1\xa4", false); } // [B2, B3]
7468test { try toAsciiFail("\xf0\x90\xaa\x92SS\xea\xa3\xaa\xef\xbc\x8e\xe1\xa1\xa4", true); } // [B2, B3]
3189test { try toUnicodeFail("\xf0\x90\xaa\x92ss\xea\xa3\xaa\xef\xbc\x8e\xe1\xa1\xa4"); } // [B2, B3]7469test { try toUnicodeFail("\xf0\x90\xaa\x92ss\xea\xa3\xaa\xef\xbc\x8e\xe1\xa1\xa4"); } // [B2, B3]
7470test { try toAsciiFail("\xf0\x90\xaa\x92ss\xea\xa3\xaa\xef\xbc\x8e\xe1\xa1\xa4", false); } // [B2, B3]
7471test { try toAsciiFail("\xf0\x90\xaa\x92ss\xea\xa3\xaa\xef\xbc\x8e\xe1\xa1\xa4", true); } // [B2, B3]
3190test { try toUnicodeFail("\xf0\x90\xaa\x92Ss\xea\xa3\xaa.\xe1\xa1\xa4"); } // [B2, B3]7472test { try toUnicodeFail("\xf0\x90\xaa\x92Ss\xea\xa3\xaa.\xe1\xa1\xa4"); } // [B2, B3]
7473test { try toAsciiFail("\xf0\x90\xaa\x92Ss\xea\xa3\xaa.\xe1\xa1\xa4", false); } // [B2, B3]
7474test { try toAsciiFail("\xf0\x90\xaa\x92Ss\xea\xa3\xaa.\xe1\xa1\xa4", true); } // [B2, B3]
3191test { try toUnicodeFail("\xf0\x90\xaa\x92Ss\xea\xa3\xaa\xef\xbc\x8e\xe1\xa1\xa4"); } // [B2, B3]7475test { try toUnicodeFail("\xf0\x90\xaa\x92Ss\xea\xa3\xaa\xef\xbc\x8e\xe1\xa1\xa4"); } // [B2, B3]
7476test { try toAsciiFail("\xf0\x90\xaa\x92Ss\xea\xa3\xaa\xef\xbc\x8e\xe1\xa1\xa4", false); } // [B2, B3]
7477test { try toAsciiFail("\xf0\x90\xaa\x92Ss\xea\xa3\xaa\xef\xbc\x8e\xe1\xa1\xa4", true); } // [B2, B3]
3192test { try toUnicodeFail("\xf0\x90\xa8\xbf\xf3\xa0\x86\x8c\xe9\xb8\xae\xf0\x91\x9a\xb6.\xcf\x82"); } // [V6]7478test { try toUnicodeFail("\xf0\x90\xa8\xbf\xf3\xa0\x86\x8c\xe9\xb8\xae\xf0\x91\x9a\xb6.\xcf\x82"); } // [V6]
7479test { try toAsciiFail("\xf0\x90\xa8\xbf\xf3\xa0\x86\x8c\xe9\xb8\xae\xf0\x91\x9a\xb6.\xcf\x82", false); } // [V6]
7480test { try toAsciiFail("\xf0\x90\xa8\xbf\xf3\xa0\x86\x8c\xe9\xb8\xae\xf0\x91\x9a\xb6.\xcf\x82", true); } // [V6]
3193test { try toUnicodeFail("\xf0\x90\xa8\xbf\xf3\xa0\x86\x8c\xe9\xb8\xae\xf0\x91\x9a\xb6.\xce\xa3"); } // [V6]7481test { try toUnicodeFail("\xf0\x90\xa8\xbf\xf3\xa0\x86\x8c\xe9\xb8\xae\xf0\x91\x9a\xb6.\xce\xa3"); } // [V6]
7482test { try toAsciiFail("\xf0\x90\xa8\xbf\xf3\xa0\x86\x8c\xe9\xb8\xae\xf0\x91\x9a\xb6.\xce\xa3", false); } // [V6]
7483test { try toAsciiFail("\xf0\x90\xa8\xbf\xf3\xa0\x86\x8c\xe9\xb8\xae\xf0\x91\x9a\xb6.\xce\xa3", true); } // [V6]
3194test { try toUnicodeFail("\xf0\x90\xa8\xbf\xf3\xa0\x86\x8c\xe9\xb8\xae\xf0\x91\x9a\xb6.\xcf\x83"); } // [V6]7484test { try toUnicodeFail("\xf0\x90\xa8\xbf\xf3\xa0\x86\x8c\xe9\xb8\xae\xf0\x91\x9a\xb6.\xcf\x83"); } // [V6]
7485test { try toAsciiFail("\xf0\x90\xa8\xbf\xf3\xa0\x86\x8c\xe9\xb8\xae\xf0\x91\x9a\xb6.\xcf\x83", false); } // [V6]
7486test { try toAsciiFail("\xf0\x90\xa8\xbf\xf3\xa0\x86\x8c\xe9\xb8\xae\xf0\x91\x9a\xb6.\xcf\x83", true); } // [V6]
3195test { try toUnicodeFail("xn--l76a726rt2h.xn--4xa"); } // [V6]7487test { try toUnicodeFail("xn--l76a726rt2h.xn--4xa"); } // [V6]
7488test { try toAsciiFail("xn--l76a726rt2h.xn--4xa", false); } // [V6]
7489test { try toAsciiFail("xn--l76a726rt2h.xn--4xa", true); } // [V6]
3196test { try toUnicodeFail("xn--l76a726rt2h.xn--3xa"); } // [V6]7490test { try toUnicodeFail("xn--l76a726rt2h.xn--3xa"); } // [V6]
7491test { try toAsciiFail("xn--l76a726rt2h.xn--3xa", false); } // [V6]
7492test { try toAsciiFail("xn--l76a726rt2h.xn--3xa", true); } // [V6]
3197test { try toUnicodeFail("\xe2\x92\x97\xf0\x9e\xa4\xac\xe3\x80\x82-\xf0\x91\x9a\xb6"); } // [B1, V3, V7]7493test { try toUnicodeFail("\xe2\x92\x97\xf0\x9e\xa4\xac\xe3\x80\x82-\xf0\x91\x9a\xb6"); } // [B1, V3, V7]
7494test { try toAsciiFail("\xe2\x92\x97\xf0\x9e\xa4\xac\xe3\x80\x82-\xf0\x91\x9a\xb6", false); } // [B1, V3, V7]
7495test { try toAsciiFail("\xe2\x92\x97\xf0\x9e\xa4\xac\xe3\x80\x82-\xf0\x91\x9a\xb6", true); } // [B1, V3, V7]
3198test { try toUnicodeFail("16.\xf0\x9e\xa4\xac\xe3\x80\x82-\xf0\x91\x9a\xb6"); } // [B1, V3]7496test { try toUnicodeFail("16.\xf0\x9e\xa4\xac\xe3\x80\x82-\xf0\x91\x9a\xb6"); } // [B1, V3]
7497test { try toAsciiFail("16.\xf0\x9e\xa4\xac\xe3\x80\x82-\xf0\x91\x9a\xb6", false); } // [B1, V3]
7498test { try toAsciiFail("16.\xf0\x9e\xa4\xac\xe3\x80\x82-\xf0\x91\x9a\xb6", true); } // [B1, V3]
3199test { try toUnicodeFail("16.\xf0\x9e\xa4\x8a\xe3\x80\x82-\xf0\x91\x9a\xb6"); } // [B1, V3]7499test { try toUnicodeFail("16.\xf0\x9e\xa4\x8a\xe3\x80\x82-\xf0\x91\x9a\xb6"); } // [B1, V3]
7500test { try toAsciiFail("16.\xf0\x9e\xa4\x8a\xe3\x80\x82-\xf0\x91\x9a\xb6", false); } // [B1, V3]
7501test { try toAsciiFail("16.\xf0\x9e\xa4\x8a\xe3\x80\x82-\xf0\x91\x9a\xb6", true); } // [B1, V3]
3200test { try toUnicodeFail("16.xn--ke6h.xn----4j0j"); } // [B1, V3]7502test { try toUnicodeFail("16.xn--ke6h.xn----4j0j"); } // [B1, V3]
7503test { try toAsciiFail("16.xn--ke6h.xn----4j0j", false); } // [B1, V3]
7504test { try toAsciiFail("16.xn--ke6h.xn----4j0j", true); } // [B1, V3]
3201test { try toUnicodeFail("\xe2\x92\x97\xf0\x9e\xa4\x8a\xe3\x80\x82-\xf0\x91\x9a\xb6"); } // [B1, V3, V7]7505test { try toUnicodeFail("\xe2\x92\x97\xf0\x9e\xa4\x8a\xe3\x80\x82-\xf0\x91\x9a\xb6"); } // [B1, V3, V7]
7506test { try toAsciiFail("\xe2\x92\x97\xf0\x9e\xa4\x8a\xe3\x80\x82-\xf0\x91\x9a\xb6", false); } // [B1, V3, V7]
7507test { try toAsciiFail("\xe2\x92\x97\xf0\x9e\xa4\x8a\xe3\x80\x82-\xf0\x91\x9a\xb6", true); } // [B1, V3, V7]
3202test { try toUnicodeFail("xn--8shw466n.xn----4j0j"); } // [B1, V3, V7]7508test { try toUnicodeFail("xn--8shw466n.xn----4j0j"); } // [B1, V3, V7]
7509test { try toAsciiFail("xn--8shw466n.xn----4j0j", false); } // [B1, V3, V7]
7510test { try toAsciiFail("xn--8shw466n.xn----4j0j", true); } // [B1, V3, V7]
3203test { try toUnicodeFail("\xe0\xa2\xb3\xf0\x9e\xa4\xbf\xe2\xbe\xab\xef\xbd\xa1\xf0\x90\xb9\xa3\xda\x8f\xe2\x92\x88"); } // [B1, B2, B3, V7]7511test { try toUnicodeFail("\xe0\xa2\xb3\xf0\x9e\xa4\xbf\xe2\xbe\xab\xef\xbd\xa1\xf0\x90\xb9\xa3\xda\x8f\xe2\x92\x88"); } // [B1, B2, B3, V7]
7512test { try toAsciiFail("\xe0\xa2\xb3\xf0\x9e\xa4\xbf\xe2\xbe\xab\xef\xbd\xa1\xf0\x90\xb9\xa3\xda\x8f\xe2\x92\x88", false); } // [B1, B2, B3, V7]
7513test { try toAsciiFail("\xe0\xa2\xb3\xf0\x9e\xa4\xbf\xe2\xbe\xab\xef\xbd\xa1\xf0\x90\xb9\xa3\xda\x8f\xe2\x92\x88", true); } // [B1, B2, B3, V7]
3204test { try toUnicodeFail("\xe0\xa2\xb3\xf0\x9e\xa4\xbf\xe9\x9a\xb9\xe3\x80\x82\xf0\x90\xb9\xa3\xda\x8f1."); } // [B1, B2, B3]7514test { try toUnicodeFail("\xe0\xa2\xb3\xf0\x9e\xa4\xbf\xe9\x9a\xb9\xe3\x80\x82\xf0\x90\xb9\xa3\xda\x8f1."); } // [B1, B2, B3]
7515test { try toAsciiFail("\xe0\xa2\xb3\xf0\x9e\xa4\xbf\xe9\x9a\xb9\xe3\x80\x82\xf0\x90\xb9\xa3\xda\x8f1.", false); } // [B1, B2, B3, A4_2]
7516test { try toAsciiFail("\xe0\xa2\xb3\xf0\x9e\xa4\xbf\xe9\x9a\xb9\xe3\x80\x82\xf0\x90\xb9\xa3\xda\x8f1.", true); } // [B1, B2, B3, A4_2]
3205test { try toUnicodeFail("\xe0\xa2\xb3\xf0\x9e\xa4\x9d\xe9\x9a\xb9\xe3\x80\x82\xf0\x90\xb9\xa3\xda\x8f1."); } // [B1, B2, B3]7517test { try toUnicodeFail("\xe0\xa2\xb3\xf0\x9e\xa4\x9d\xe9\x9a\xb9\xe3\x80\x82\xf0\x90\xb9\xa3\xda\x8f1."); } // [B1, B2, B3]
7518test { try toAsciiFail("\xe0\xa2\xb3\xf0\x9e\xa4\x9d\xe9\x9a\xb9\xe3\x80\x82\xf0\x90\xb9\xa3\xda\x8f1.", false); } // [B1, B2, B3, A4_2]
7519test { try toAsciiFail("\xe0\xa2\xb3\xf0\x9e\xa4\x9d\xe9\x9a\xb9\xe3\x80\x82\xf0\x90\xb9\xa3\xda\x8f1.", true); } // [B1, B2, B3, A4_2]
3206test { try toUnicodeFail("xn--8yb0383efiwk.xn--1-wsc3373r."); } // [B1, B2, B3]7520test { try toUnicodeFail("xn--8yb0383efiwk.xn--1-wsc3373r."); } // [B1, B2, B3]
7521test { try toAsciiFail("xn--8yb0383efiwk.xn--1-wsc3373r.", false); } // [B1, B2, B3, A4_2]
7522test { try toAsciiFail("xn--8yb0383efiwk.xn--1-wsc3373r.", true); } // [B1, B2, B3, A4_2]
3207test { try toUnicodeFail("\xe0\xa2\xb3\xf0\x9e\xa4\x9d\xe2\xbe\xab\xef\xbd\xa1\xf0\x90\xb9\xa3\xda\x8f\xe2\x92\x88"); } // [B1, B2, B3, V7]7523test { try toUnicodeFail("\xe0\xa2\xb3\xf0\x9e\xa4\x9d\xe2\xbe\xab\xef\xbd\xa1\xf0\x90\xb9\xa3\xda\x8f\xe2\x92\x88"); } // [B1, B2, B3, V7]
7524test { try toAsciiFail("\xe0\xa2\xb3\xf0\x9e\xa4\x9d\xe2\xbe\xab\xef\xbd\xa1\xf0\x90\xb9\xa3\xda\x8f\xe2\x92\x88", false); } // [B1, B2, B3, V7]
7525test { try toAsciiFail("\xe0\xa2\xb3\xf0\x9e\xa4\x9d\xe2\xbe\xab\xef\xbd\xa1\xf0\x90\xb9\xa3\xda\x8f\xe2\x92\x88", true); } // [B1, B2, B3, V7]
3208test { try toUnicodeFail("xn--8yb0383efiwk.xn--ljb064mol4n"); } // [B1, B2, B3, V7]7526test { try toUnicodeFail("xn--8yb0383efiwk.xn--ljb064mol4n"); } // [B1, B2, B3, V7]
7527test { try toAsciiFail("xn--8yb0383efiwk.xn--ljb064mol4n", false); } // [B1, B2, B3, V7]
7528test { try toAsciiFail("xn--8yb0383efiwk.xn--ljb064mol4n", true); } // [B1, B2, B3, V7]
3209test { try toUnicodeFail("\xe2\x90\xb3\xf0\x9a\x8e\x9b\xf0\x9d\x9f\xa7\xd9\xa1.\xe1\xa1\xa28\xe0\xbd\xb2\xd8\x80"); } // [B5, B6, V7]7529test { try toUnicodeFail("\xe2\x90\xb3\xf0\x9a\x8e\x9b\xf0\x9d\x9f\xa7\xd9\xa1.\xe1\xa1\xa28\xe0\xbd\xb2\xd8\x80"); } // [B5, B6, V7]
7530test { try toAsciiFail("\xe2\x90\xb3\xf0\x9a\x8e\x9b\xf0\x9d\x9f\xa7\xd9\xa1.\xe1\xa1\xa28\xe0\xbd\xb2\xd8\x80", false); } // [B5, B6, V7]
7531test { try toAsciiFail("\xe2\x90\xb3\xf0\x9a\x8e\x9b\xf0\x9d\x9f\xa7\xd9\xa1.\xe1\xa1\xa28\xe0\xbd\xb2\xd8\x80", true); } // [B5, B6, V7]
3210test { try toUnicodeFail("\xe2\x90\xb3\xf0\x9a\x8e\x9b5\xd9\xa1.\xe1\xa1\xa28\xe0\xbd\xb2\xd8\x80"); } // [B5, B6, V7]7532test { try toUnicodeFail("\xe2\x90\xb3\xf0\x9a\x8e\x9b5\xd9\xa1.\xe1\xa1\xa28\xe0\xbd\xb2\xd8\x80"); } // [B5, B6, V7]
7533test { try toAsciiFail("\xe2\x90\xb3\xf0\x9a\x8e\x9b5\xd9\xa1.\xe1\xa1\xa28\xe0\xbd\xb2\xd8\x80", false); } // [B5, B6, V7]
7534test { try toAsciiFail("\xe2\x90\xb3\xf0\x9a\x8e\x9b5\xd9\xa1.\xe1\xa1\xa28\xe0\xbd\xb2\xd8\x80", true); } // [B5, B6, V7]
3211test { try toUnicodeFail("xn--5-bqc410un435a.xn--8-rkc763epjj"); } // [B5, B6, V7]7535test { try toUnicodeFail("xn--5-bqc410un435a.xn--8-rkc763epjj"); } // [B5, B6, V7]
7536test { try toAsciiFail("xn--5-bqc410un435a.xn--8-rkc763epjj", false); } // [B5, B6, V7]
7537test { try toAsciiFail("xn--5-bqc410un435a.xn--8-rkc763epjj", true); } // [B5, B6, V7]
3212test { try toUnicodeFail("\xf0\x90\xb9\xa0.\xf0\x9f\x84\x80\xe2\x92\x92-\xf3\xa8\xb0\x88"); } // [B1, V7]7538test { try toUnicodeFail("\xf0\x90\xb9\xa0.\xf0\x9f\x84\x80\xe2\x92\x92-\xf3\xa8\xb0\x88"); } // [B1, V7]
7539test { try toAsciiFail("\xf0\x90\xb9\xa0.\xf0\x9f\x84\x80\xe2\x92\x92-\xf3\xa8\xb0\x88", false); } // [B1, V7]
7540test { try toAsciiFail("\xf0\x90\xb9\xa0.\xf0\x9f\x84\x80\xe2\x92\x92-\xf3\xa8\xb0\x88", true); } // [B1, V7]
3213test { try toUnicodeFail("\xf0\x90\xb9\xa0.0.11.-\xf3\xa8\xb0\x88"); } // [B1, V3, V7]7541test { try toUnicodeFail("\xf0\x90\xb9\xa0.0.11.-\xf3\xa8\xb0\x88"); } // [B1, V3, V7]
7542test { try toAsciiFail("\xf0\x90\xb9\xa0.0.11.-\xf3\xa8\xb0\x88", false); } // [B1, V3, V7]
7543test { try toAsciiFail("\xf0\x90\xb9\xa0.0.11.-\xf3\xa8\xb0\x88", true); } // [B1, V3, V7]
3214test { try toUnicodeFail("xn--7n0d.0.11.xn----8j07m"); } // [B1, V3, V7]7544test { try toUnicodeFail("xn--7n0d.0.11.xn----8j07m"); } // [B1, V3, V7]
7545test { try toAsciiFail("xn--7n0d.0.11.xn----8j07m", false); } // [B1, V3, V7]
7546test { try toAsciiFail("xn--7n0d.0.11.xn----8j07m", true); } // [B1, V3, V7]
3215test { try toUnicodeFail("xn--7n0d.xn----xcp9757q1s13g"); } // [B1, V7]7547test { try toUnicodeFail("xn--7n0d.xn----xcp9757q1s13g"); } // [B1, V7]
7548test { try toAsciiFail("xn--7n0d.xn----xcp9757q1s13g", false); } // [B1, V7]
7549test { try toAsciiFail("xn--7n0d.xn----xcp9757q1s13g", true); } // [B1, V7]
3216test { try toUnicodeFail("\xcf\x82-\xe3\x80\x82\xe2\x80\x8c\xf0\x9d\x9f\xad-"); } // [C1, V3]7550test { try toUnicodeFail("\xcf\x82-\xe3\x80\x82\xe2\x80\x8c\xf0\x9d\x9f\xad-"); } // [C1, V3]
7551test { try toAsciiFail("\xcf\x82-\xe3\x80\x82\xe2\x80\x8c\xf0\x9d\x9f\xad-", false); } // [C1, V3]
7552test { try toAsciiFail("\xcf\x82-\xe3\x80\x82\xe2\x80\x8c\xf0\x9d\x9f\xad-", true); } // [V3]
3217test { try toUnicodeFail("\xcf\x82-\xe3\x80\x82\xe2\x80\x8c1-"); } // [C1, V3]7553test { try toUnicodeFail("\xcf\x82-\xe3\x80\x82\xe2\x80\x8c1-"); } // [C1, V3]
7554test { try toAsciiFail("\xcf\x82-\xe3\x80\x82\xe2\x80\x8c1-", false); } // [C1, V3]
7555test { try toAsciiFail("\xcf\x82-\xe3\x80\x82\xe2\x80\x8c1-", true); } // [V3]
3218test { try toUnicodeFail("\xce\xa3-\xe3\x80\x82\xe2\x80\x8c1-"); } // [C1, V3]7556test { try toUnicodeFail("\xce\xa3-\xe3\x80\x82\xe2\x80\x8c1-"); } // [C1, V3]
7557test { try toAsciiFail("\xce\xa3-\xe3\x80\x82\xe2\x80\x8c1-", false); } // [C1, V3]
7558test { try toAsciiFail("\xce\xa3-\xe3\x80\x82\xe2\x80\x8c1-", true); } // [V3]
3219test { try toUnicodeFail("\xcf\x83-\xe3\x80\x82\xe2\x80\x8c1-"); } // [C1, V3]7559test { try toUnicodeFail("\xcf\x83-\xe3\x80\x82\xe2\x80\x8c1-"); } // [C1, V3]
7560test { try toAsciiFail("\xcf\x83-\xe3\x80\x82\xe2\x80\x8c1-", false); } // [C1, V3]
7561test { try toAsciiFail("\xcf\x83-\xe3\x80\x82\xe2\x80\x8c1-", true); } // [V3]
3220test { try toUnicodeFail("xn----zmb.1-"); } // [V3]7562test { try toUnicodeFail("xn----zmb.1-"); } // [V3]
7563test { try toAsciiFail("xn----zmb.1-", false); } // [V3]
7564test { try toAsciiFail("xn----zmb.1-", true); } // [V3]
3221test { try toUnicodeFail("xn----zmb.xn--1--i1t"); } // [C1, V3]7565test { try toUnicodeFail("xn----zmb.xn--1--i1t"); } // [C1, V3]
7566test { try toAsciiFail("xn----zmb.xn--1--i1t", false); } // [C1, V3]
7567test { try toAsciiFail("xn----zmb.xn--1--i1t", true); } // [C1, V3]
3222test { try toUnicodeFail("xn----xmb.xn--1--i1t"); } // [C1, V3]7568test { try toUnicodeFail("xn----xmb.xn--1--i1t"); } // [C1, V3]
7569test { try toAsciiFail("xn----xmb.xn--1--i1t", false); } // [C1, V3]
7570test { try toAsciiFail("xn----xmb.xn--1--i1t", true); } // [C1, V3]
3223test { try toUnicodeFail("\xce\xa3-\xe3\x80\x82\xe2\x80\x8c\xf0\x9d\x9f\xad-"); } // [C1, V3]7571test { try toUnicodeFail("\xce\xa3-\xe3\x80\x82\xe2\x80\x8c\xf0\x9d\x9f\xad-"); } // [C1, V3]
7572test { try toAsciiFail("\xce\xa3-\xe3\x80\x82\xe2\x80\x8c\xf0\x9d\x9f\xad-", false); } // [C1, V3]
7573test { try toAsciiFail("\xce\xa3-\xe3\x80\x82\xe2\x80\x8c\xf0\x9d\x9f\xad-", true); } // [V3]
3224test { try toUnicodeFail("\xcf\x83-\xe3\x80\x82\xe2\x80\x8c\xf0\x9d\x9f\xad-"); } // [C1, V3]7574test { try toUnicodeFail("\xcf\x83-\xe3\x80\x82\xe2\x80\x8c\xf0\x9d\x9f\xad-"); } // [C1, V3]
7575test { try toAsciiFail("\xcf\x83-\xe3\x80\x82\xe2\x80\x8c\xf0\x9d\x9f\xad-", false); } // [C1, V3]
7576test { try toAsciiFail("\xcf\x83-\xe3\x80\x82\xe2\x80\x8c\xf0\x9d\x9f\xad-", true); } // [V3]
3225test { try toUnicodeFail("\xe1\x9c\xb4-\xe0\xb3\xa2\xef\xbc\x8e\xf3\xa0\x84\xa9\xe1\x82\xa4"); } // [V6]7577test { try toUnicodeFail("\xe1\x9c\xb4-\xe0\xb3\xa2\xef\xbc\x8e\xf3\xa0\x84\xa9\xe1\x82\xa4"); } // [V6]
7578test { try toAsciiFail("\xe1\x9c\xb4-\xe0\xb3\xa2\xef\xbc\x8e\xf3\xa0\x84\xa9\xe1\x82\xa4", false); } // [V6]
7579test { try toAsciiFail("\xe1\x9c\xb4-\xe0\xb3\xa2\xef\xbc\x8e\xf3\xa0\x84\xa9\xe1\x82\xa4", true); } // [V6]
3226test { try toUnicodeFail("\xe1\x9c\xb4-\xe0\xb3\xa2.\xf3\xa0\x84\xa9\xe1\x82\xa4"); } // [V6]7580test { try toUnicodeFail("\xe1\x9c\xb4-\xe0\xb3\xa2.\xf3\xa0\x84\xa9\xe1\x82\xa4"); } // [V6]
7581test { try toAsciiFail("\xe1\x9c\xb4-\xe0\xb3\xa2.\xf3\xa0\x84\xa9\xe1\x82\xa4", false); } // [V6]
7582test { try toAsciiFail("\xe1\x9c\xb4-\xe0\xb3\xa2.\xf3\xa0\x84\xa9\xe1\x82\xa4", true); } // [V6]
3227test { try toUnicodeFail("\xe1\x9c\xb4-\xe0\xb3\xa2.\xf3\xa0\x84\xa9\xe2\xb4\x84"); } // [V6]7583test { try toUnicodeFail("\xe1\x9c\xb4-\xe0\xb3\xa2.\xf3\xa0\x84\xa9\xe2\xb4\x84"); } // [V6]
7584test { try toAsciiFail("\xe1\x9c\xb4-\xe0\xb3\xa2.\xf3\xa0\x84\xa9\xe2\xb4\x84", false); } // [V6]
7585test { try toAsciiFail("\xe1\x9c\xb4-\xe0\xb3\xa2.\xf3\xa0\x84\xa9\xe2\xb4\x84", true); } // [V6]
3228test { try toUnicodeFail("xn----ggf830f.xn--vkj"); } // [V6]7586test { try toUnicodeFail("xn----ggf830f.xn--vkj"); } // [V6]
7587test { try toAsciiFail("xn----ggf830f.xn--vkj", false); } // [V6]
7588test { try toAsciiFail("xn----ggf830f.xn--vkj", true); } // [V6]
3229test { try toUnicodeFail("\xe1\x9c\xb4-\xe0\xb3\xa2\xef\xbc\x8e\xf3\xa0\x84\xa9\xe2\xb4\x84"); } // [V6]7589test { try toUnicodeFail("\xe1\x9c\xb4-\xe0\xb3\xa2\xef\xbc\x8e\xf3\xa0\x84\xa9\xe2\xb4\x84"); } // [V6]
7590test { try toAsciiFail("\xe1\x9c\xb4-\xe0\xb3\xa2\xef\xbc\x8e\xf3\xa0\x84\xa9\xe2\xb4\x84", false); } // [V6]
7591test { try toAsciiFail("\xe1\x9c\xb4-\xe0\xb3\xa2\xef\xbc\x8e\xf3\xa0\x84\xa9\xe2\xb4\x84", true); } // [V6]
3230test { try toUnicodeFail("xn----ggf830f.xn--cnd"); } // [V6, V7]7592test { try toUnicodeFail("xn----ggf830f.xn--cnd"); } // [V6, V7]
7593test { try toAsciiFail("xn----ggf830f.xn--cnd", false); } // [V6, V7]
7594test { try toAsciiFail("xn----ggf830f.xn--cnd", true); } // [V6, V7]
3231test { try toUnicodeFail("\xf2\xad\x88\x97\xe2\x99\x8b\xda\xbb\xf0\x90\xa6\xa5\xef\xbd\xa1\xe0\xa5\x94\xe2\x92\x88"); } // [B1, B5, B6, V6, V7]7595test { try toUnicodeFail("\xf2\xad\x88\x97\xe2\x99\x8b\xda\xbb\xf0\x90\xa6\xa5\xef\xbd\xa1\xe0\xa5\x94\xe2\x92\x88"); } // [B1, B5, B6, V6, V7]
7596test { try toAsciiFail("\xf2\xad\x88\x97\xe2\x99\x8b\xda\xbb\xf0\x90\xa6\xa5\xef\xbd\xa1\xe0\xa5\x94\xe2\x92\x88", false); } // [B1, B5, B6, V6, V7]
7597test { try toAsciiFail("\xf2\xad\x88\x97\xe2\x99\x8b\xda\xbb\xf0\x90\xa6\xa5\xef\xbd\xa1\xe0\xa5\x94\xe2\x92\x88", true); } // [B1, B5, B6, V6, V7]
3232test { try toUnicodeFail("\xf2\xad\x88\x97\xe2\x99\x8b\xda\xbb\xf0\x90\xa6\xa5\xe3\x80\x82\xe0\xa5\x941."); } // [B1, B5, B6, V6, V7]7598test { try toUnicodeFail("\xf2\xad\x88\x97\xe2\x99\x8b\xda\xbb\xf0\x90\xa6\xa5\xe3\x80\x82\xe0\xa5\x941."); } // [B1, B5, B6, V6, V7]
7599test { try toAsciiFail("\xf2\xad\x88\x97\xe2\x99\x8b\xda\xbb\xf0\x90\xa6\xa5\xe3\x80\x82\xe0\xa5\x941.", false); } // [B1, B5, B6, V6, V7, A4_2]
7600test { try toAsciiFail("\xf2\xad\x88\x97\xe2\x99\x8b\xda\xbb\xf0\x90\xa6\xa5\xe3\x80\x82\xe0\xa5\x941.", true); } // [B1, B5, B6, V6, V7, A4_2]
3233test { try toUnicodeFail("xn--ukb372n129m3rs7f.xn--1-fyd."); } // [B1, B5, B6, V6, V7]7601test { try toUnicodeFail("xn--ukb372n129m3rs7f.xn--1-fyd."); } // [B1, B5, B6, V6, V7]
7602test { try toAsciiFail("xn--ukb372n129m3rs7f.xn--1-fyd.", false); } // [B1, B5, B6, V6, V7, A4_2]
7603test { try toAsciiFail("xn--ukb372n129m3rs7f.xn--1-fyd.", true); } // [B1, B5, B6, V6, V7, A4_2]
3234test { try toUnicodeFail("xn--ukb372n129m3rs7f.xn--u3b240l"); } // [B1, B5, B6, V6, V7]7604test { try toUnicodeFail("xn--ukb372n129m3rs7f.xn--u3b240l"); } // [B1, B5, B6, V6, V7]
7605test { try toAsciiFail("xn--ukb372n129m3rs7f.xn--u3b240l", false); } // [B1, B5, B6, V6, V7]
7606test { try toAsciiFail("xn--ukb372n129m3rs7f.xn--u3b240l", true); } // [B1, B5, B6, V6, V7]
3235test { try toUnicodeFail("\xd6\xa4\xef\xbc\x8e\xdb\x81\xe1\xaa\xb3\xe2\x80\x8c"); } // [B1, B3, C1, V6]7607test { try toUnicodeFail("\xd6\xa4\xef\xbc\x8e\xdb\x81\xe1\xaa\xb3\xe2\x80\x8c"); } // [B1, B3, C1, V6]
7608test { try toAsciiFail("\xd6\xa4\xef\xbc\x8e\xdb\x81\xe1\xaa\xb3\xe2\x80\x8c", false); } // [B1, B3, C1, V6]
7609test { try toAsciiFail("\xd6\xa4\xef\xbc\x8e\xdb\x81\xe1\xaa\xb3\xe2\x80\x8c", true); } // [B1, V6]
3236test { try toUnicodeFail("\xd6\xa4.\xdb\x81\xe1\xaa\xb3\xe2\x80\x8c"); } // [B1, B3, C1, V6]7610test { try toUnicodeFail("\xd6\xa4.\xdb\x81\xe1\xaa\xb3\xe2\x80\x8c"); } // [B1, B3, C1, V6]
7611test { try toAsciiFail("\xd6\xa4.\xdb\x81\xe1\xaa\xb3\xe2\x80\x8c", false); } // [B1, B3, C1, V6]
7612test { try toAsciiFail("\xd6\xa4.\xdb\x81\xe1\xaa\xb3\xe2\x80\x8c", true); } // [B1, V6]
3237test { try toUnicodeFail("xn--vcb.xn--0kb623h"); } // [B1, V6]7613test { try toUnicodeFail("xn--vcb.xn--0kb623h"); } // [B1, V6]
7614test { try toAsciiFail("xn--vcb.xn--0kb623h", false); } // [B1, V6]
7615test { try toAsciiFail("xn--vcb.xn--0kb623h", true); } // [B1, V6]
3238test { try toUnicodeFail("xn--vcb.xn--0kb623hm1d"); } // [B1, B3, C1, V6]7616test { try toUnicodeFail("xn--vcb.xn--0kb623hm1d"); } // [B1, B3, C1, V6]
7617test { try toAsciiFail("xn--vcb.xn--0kb623hm1d", false); } // [B1, B3, C1, V6]
7618test { try toAsciiFail("xn--vcb.xn--0kb623hm1d", true); } // [B1, B3, C1, V6]
3239test { try toUnicodeFail("\xf1\xa2\xad\x8f\xe0\xa1\x86\xe2\x89\xae\xe0\xab\x8d\xef\xbc\x8e\xf0\x9e\xa6\x8a"); } // [B5, B6, V7]7619test { try toUnicodeFail("\xf1\xa2\xad\x8f\xe0\xa1\x86\xe2\x89\xae\xe0\xab\x8d\xef\xbc\x8e\xf0\x9e\xa6\x8a"); } // [B5, B6, V7]
7620test { try toAsciiFail("\xf1\xa2\xad\x8f\xe0\xa1\x86\xe2\x89\xae\xe0\xab\x8d\xef\xbc\x8e\xf0\x9e\xa6\x8a", false); } // [B5, B6, V7]
7621test { try toAsciiFail("\xf1\xa2\xad\x8f\xe0\xa1\x86\xe2\x89\xae\xe0\xab\x8d\xef\xbc\x8e\xf0\x9e\xa6\x8a", true); } // [B5, B6, V7]
3240test { try toUnicodeFail("\xf1\xa2\xad\x8f\xe0\xa1\x86<\xcc\xb8\xe0\xab\x8d\xef\xbc\x8e\xf0\x9e\xa6\x8a"); } // [B5, B6, V7]7622test { try toUnicodeFail("\xf1\xa2\xad\x8f\xe0\xa1\x86<\xcc\xb8\xe0\xab\x8d\xef\xbc\x8e\xf0\x9e\xa6\x8a"); } // [B5, B6, V7]
7623test { try toAsciiFail("\xf1\xa2\xad\x8f\xe0\xa1\x86<\xcc\xb8\xe0\xab\x8d\xef\xbc\x8e\xf0\x9e\xa6\x8a", false); } // [B5, B6, V7]
7624test { try toAsciiFail("\xf1\xa2\xad\x8f\xe0\xa1\x86<\xcc\xb8\xe0\xab\x8d\xef\xbc\x8e\xf0\x9e\xa6\x8a", true); } // [B5, B6, V7]
3241test { try toUnicodeFail("\xf1\xa2\xad\x8f\xe0\xa1\x86\xe2\x89\xae\xe0\xab\x8d.\xf0\x9e\xa6\x8a"); } // [B5, B6, V7]7625test { try toUnicodeFail("\xf1\xa2\xad\x8f\xe0\xa1\x86\xe2\x89\xae\xe0\xab\x8d.\xf0\x9e\xa6\x8a"); } // [B5, B6, V7]
7626test { try toAsciiFail("\xf1\xa2\xad\x8f\xe0\xa1\x86\xe2\x89\xae\xe0\xab\x8d.\xf0\x9e\xa6\x8a", false); } // [B5, B6, V7]
7627test { try toAsciiFail("\xf1\xa2\xad\x8f\xe0\xa1\x86\xe2\x89\xae\xe0\xab\x8d.\xf0\x9e\xa6\x8a", true); } // [B5, B6, V7]
3242test { try toUnicodeFail("\xf1\xa2\xad\x8f\xe0\xa1\x86<\xcc\xb8\xe0\xab\x8d.\xf0\x9e\xa6\x8a"); } // [B5, B6, V7]7628test { try toUnicodeFail("\xf1\xa2\xad\x8f\xe0\xa1\x86<\xcc\xb8\xe0\xab\x8d.\xf0\x9e\xa6\x8a"); } // [B5, B6, V7]
7629test { try toAsciiFail("\xf1\xa2\xad\x8f\xe0\xa1\x86<\xcc\xb8\xe0\xab\x8d.\xf0\x9e\xa6\x8a", false); } // [B5, B6, V7]
7630test { try toAsciiFail("\xf1\xa2\xad\x8f\xe0\xa1\x86<\xcc\xb8\xe0\xab\x8d.\xf0\x9e\xa6\x8a", true); } // [B5, B6, V7]
3243test { try toUnicodeFail("xn--4vb80kq29ayo62l.xn--8g6h"); } // [B5, B6, V7]7631test { try toUnicodeFail("xn--4vb80kq29ayo62l.xn--8g6h"); } // [B5, B6, V7]
7632test { try toAsciiFail("xn--4vb80kq29ayo62l.xn--8g6h", false); } // [B5, B6, V7]
7633test { try toAsciiFail("xn--4vb80kq29ayo62l.xn--8g6h", true); } // [B5, B6, V7]
3244test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\x80\x98\xe2\x92\x88\xea\xa1\x8d\xe6\x93\x89"); } // [C2, V6, V7]7634test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\x80\x98\xe2\x92\x88\xea\xa1\x8d\xe6\x93\x89"); } // [C2, V6, V7]
7635test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\x80\x98\xe2\x92\x88\xea\xa1\x8d\xe6\x93\x89", false); } // [C2, V6, V7]
7636test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\x80\x98\xe2\x92\x88\xea\xa1\x8d\xe6\x93\x89", true); } // [V6, V7, A4_2]
3245test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\x80\x981.\xea\xa1\x8d\xe6\x93\x89"); } // [C2, V6]7637test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\x80\x981.\xea\xa1\x8d\xe6\x93\x89"); } // [C2, V6]
7638test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\x80\x981.\xea\xa1\x8d\xe6\x93\x89", false); } // [C2, V6]
7639test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\x80\x981.\xea\xa1\x8d\xe6\x93\x89", true); } // [V6, A4_2]
3246test { try toUnicodeFail(".xn--1-1p4r.xn--s7uv61m"); } // [V6, X4_2]7640test { try toUnicodeFail(".xn--1-1p4r.xn--s7uv61m"); } // [V6, X4_2]
7641test { try toAsciiFail(".xn--1-1p4r.xn--s7uv61m", false); } // [V6, A4_2]
7642test { try toAsciiFail(".xn--1-1p4r.xn--s7uv61m", true); } // [V6, A4_2]
3247test { try toUnicodeFail("xn--1ug.xn--1-1p4r.xn--s7uv61m"); } // [C2, V6]7643test { try toUnicodeFail("xn--1ug.xn--1-1p4r.xn--s7uv61m"); } // [C2, V6]
7644test { try toAsciiFail("xn--1ug.xn--1-1p4r.xn--s7uv61m", false); } // [C2, V6]
7645test { try toAsciiFail("xn--1ug.xn--1-1p4r.xn--s7uv61m", true); } // [C2, V6]
3248test { try toUnicodeFail(".xn--tsh026uql4bew9p"); } // [V6, V7, X4_2]7646test { try toUnicodeFail(".xn--tsh026uql4bew9p"); } // [V6, V7, X4_2]
7647test { try toAsciiFail(".xn--tsh026uql4bew9p", false); } // [V6, V7, A4_2]
7648test { try toAsciiFail(".xn--tsh026uql4bew9p", true); } // [V6, V7, A4_2]
3249test { try toUnicodeFail("xn--1ug.xn--tsh026uql4bew9p"); } // [C2, V6, V7]7649test { try toUnicodeFail("xn--1ug.xn--tsh026uql4bew9p"); } // [C2, V6, V7]
7650test { try toAsciiFail("xn--1ug.xn--tsh026uql4bew9p", false); } // [C2, V6, V7]
7651test { try toAsciiFail("xn--1ug.xn--tsh026uql4bew9p", true); } // [C2, V6, V7]
3250test { try toUnicodeFail("\xe2\x82\x88\xdf\x8b\xef\xbc\x8e\xef\xad\xa4\xe2\x89\xa0"); } // [B1, B3]7652test { try toUnicodeFail("\xe2\x82\x88\xdf\x8b\xef\xbc\x8e\xef\xad\xa4\xe2\x89\xa0"); } // [B1, B3]
7653test { try toAsciiFail("\xe2\x82\x88\xdf\x8b\xef\xbc\x8e\xef\xad\xa4\xe2\x89\xa0", false); } // [B1, B3]
7654test { try toAsciiFail("\xe2\x82\x88\xdf\x8b\xef\xbc\x8e\xef\xad\xa4\xe2\x89\xa0", true); } // [B1, B3]
3251test { try toUnicodeFail("\xe2\x82\x88\xdf\x8b\xef\xbc\x8e\xef\xad\xa4=\xcc\xb8"); } // [B1, B3]7655test { try toUnicodeFail("\xe2\x82\x88\xdf\x8b\xef\xbc\x8e\xef\xad\xa4=\xcc\xb8"); } // [B1, B3]
7656test { try toAsciiFail("\xe2\x82\x88\xdf\x8b\xef\xbc\x8e\xef\xad\xa4=\xcc\xb8", false); } // [B1, B3]
7657test { try toAsciiFail("\xe2\x82\x88\xdf\x8b\xef\xbc\x8e\xef\xad\xa4=\xcc\xb8", true); } // [B1, B3]
3252test { try toUnicodeFail("8\xdf\x8b.\xd9\xbf\xe2\x89\xa0"); } // [B1, B3]7658test { try toUnicodeFail("8\xdf\x8b.\xd9\xbf\xe2\x89\xa0"); } // [B1, B3]
7659test { try toAsciiFail("8\xdf\x8b.\xd9\xbf\xe2\x89\xa0", false); } // [B1, B3]
7660test { try toAsciiFail("8\xdf\x8b.\xd9\xbf\xe2\x89\xa0", true); } // [B1, B3]
3253test { try toUnicodeFail("8\xdf\x8b.\xd9\xbf=\xcc\xb8"); } // [B1, B3]7661test { try toUnicodeFail("8\xdf\x8b.\xd9\xbf=\xcc\xb8"); } // [B1, B3]
7662test { try toAsciiFail("8\xdf\x8b.\xd9\xbf=\xcc\xb8", false); } // [B1, B3]
7663test { try toAsciiFail("8\xdf\x8b.\xd9\xbf=\xcc\xb8", true); } // [B1, B3]
3254test { try toUnicodeFail("xn--8-zbd.xn--4ib883l"); } // [B1, B3]7664test { try toUnicodeFail("xn--8-zbd.xn--4ib883l"); } // [B1, B3]
7665test { try toAsciiFail("xn--8-zbd.xn--4ib883l", false); } // [B1, B3]
7666test { try toAsciiFail("xn--8-zbd.xn--4ib883l", true); } // [B1, B3]
3255test { try toUnicodeFail("\xe1\xa2\xa1\xdf\x9e\xf2\xb9\x90\xa3.\xe2\x92\x92\xd9\x82\xf0\x91\x8d\xa6"); } // [B1, B5, V7]7667test { try toUnicodeFail("\xe1\xa2\xa1\xdf\x9e\xf2\xb9\x90\xa3.\xe2\x92\x92\xd9\x82\xf0\x91\x8d\xa6"); } // [B1, B5, V7]
7668test { try toAsciiFail("\xe1\xa2\xa1\xdf\x9e\xf2\xb9\x90\xa3.\xe2\x92\x92\xd9\x82\xf0\x91\x8d\xa6", false); } // [B1, B5, V7]
7669test { try toAsciiFail("\xe1\xa2\xa1\xdf\x9e\xf2\xb9\x90\xa3.\xe2\x92\x92\xd9\x82\xf0\x91\x8d\xa6", true); } // [B1, B5, V7]
3256test { try toUnicodeFail("\xe1\xa2\xa1\xdf\x9e\xf2\xb9\x90\xa3.11.\xd9\x82\xf0\x91\x8d\xa6"); } // [B1, B5, V7]7670test { try toUnicodeFail("\xe1\xa2\xa1\xdf\x9e\xf2\xb9\x90\xa3.11.\xd9\x82\xf0\x91\x8d\xa6"); } // [B1, B5, V7]
7671test { try toAsciiFail("\xe1\xa2\xa1\xdf\x9e\xf2\xb9\x90\xa3.11.\xd9\x82\xf0\x91\x8d\xa6", false); } // [B1, B5, V7]
7672test { try toAsciiFail("\xe1\xa2\xa1\xdf\x9e\xf2\xb9\x90\xa3.11.\xd9\x82\xf0\x91\x8d\xa6", true); } // [B1, B5, V7]
3257test { try toUnicodeFail("xn--5sb596fi873t.11.xn--ehb4198k"); } // [B1, B5, V7]7673test { try toUnicodeFail("xn--5sb596fi873t.11.xn--ehb4198k"); } // [B1, B5, V7]
7674test { try toAsciiFail("xn--5sb596fi873t.11.xn--ehb4198k", false); } // [B1, B5, V7]
7675test { try toAsciiFail("xn--5sb596fi873t.11.xn--ehb4198k", true); } // [B1, B5, V7]
3258test { try toUnicodeFail("xn--5sb596fi873t.xn--ehb336mvy7n"); } // [B1, B5, V7]7676test { try toUnicodeFail("xn--5sb596fi873t.xn--ehb336mvy7n"); } // [B1, B5, V7]
7677test { try toAsciiFail("xn--5sb596fi873t.xn--ehb336mvy7n", false); } // [B1, B5, V7]
7678test { try toAsciiFail("xn--5sb596fi873t.xn--ehb336mvy7n", true); } // [B1, B5, V7]
3259test { try toUnicodeFail("\xe0\xb9\x88-\xf0\x90\xb9\xba\xf0\x9d\x9f\x9c.\xcd\xa3\xdb\xa1\xe2\x92\x8f"); } // [B1, V6, V7]7679test { try toUnicodeFail("\xe0\xb9\x88-\xf0\x90\xb9\xba\xf0\x9d\x9f\x9c.\xcd\xa3\xdb\xa1\xe2\x92\x8f"); } // [B1, V6, V7]
7680test { try toAsciiFail("\xe0\xb9\x88-\xf0\x90\xb9\xba\xf0\x9d\x9f\x9c.\xcd\xa3\xdb\xa1\xe2\x92\x8f", false); } // [B1, V6, V7]
7681test { try toAsciiFail("\xe0\xb9\x88-\xf0\x90\xb9\xba\xf0\x9d\x9f\x9c.\xcd\xa3\xdb\xa1\xe2\x92\x8f", true); } // [B1, V6, V7]
3260test { try toUnicodeFail("\xe0\xb9\x88-\xf0\x90\xb9\xba4.\xcd\xa3\xdb\xa18."); } // [B1, V6]7682test { try toUnicodeFail("\xe0\xb9\x88-\xf0\x90\xb9\xba4.\xcd\xa3\xdb\xa18."); } // [B1, V6]
7683test { try toAsciiFail("\xe0\xb9\x88-\xf0\x90\xb9\xba4.\xcd\xa3\xdb\xa18.", false); } // [B1, V6, A4_2]
7684test { try toAsciiFail("\xe0\xb9\x88-\xf0\x90\xb9\xba4.\xcd\xa3\xdb\xa18.", true); } // [B1, V6, A4_2]
3261test { try toUnicodeFail("xn---4-owiz479s.xn--8-ihb69x."); } // [B1, V6]7685test { try toUnicodeFail("xn---4-owiz479s.xn--8-ihb69x."); } // [B1, V6]
7686test { try toAsciiFail("xn---4-owiz479s.xn--8-ihb69x.", false); } // [B1, V6, A4_2]
7687test { try toAsciiFail("xn---4-owiz479s.xn--8-ihb69x.", true); } // [B1, V6, A4_2]
3262test { try toUnicodeFail("xn---4-owiz479s.xn--eva20pjv9a"); } // [B1, V6, V7]7688test { try toUnicodeFail("xn---4-owiz479s.xn--eva20pjv9a"); } // [B1, V6, V7]
7689test { try toAsciiFail("xn---4-owiz479s.xn--eva20pjv9a", false); } // [B1, V6, V7]
7690test { try toAsciiFail("xn---4-owiz479s.xn--eva20pjv9a", true); } // [B1, V6, V7]
3263test { try toUnicodeFail("\xe2\xab\x90\xef\xbd\xa1\xe1\x83\x80-\xf3\x83\x90\xa2"); } // [V7]7691test { try toUnicodeFail("\xe2\xab\x90\xef\xbd\xa1\xe1\x83\x80-\xf3\x83\x90\xa2"); } // [V7]
7692test { try toAsciiFail("\xe2\xab\x90\xef\xbd\xa1\xe1\x83\x80-\xf3\x83\x90\xa2", false); } // [V7]
7693test { try toAsciiFail("\xe2\xab\x90\xef\xbd\xa1\xe1\x83\x80-\xf3\x83\x90\xa2", true); } // [V7]
3264test { try toUnicodeFail("\xe2\xab\x90\xe3\x80\x82\xe1\x83\x80-\xf3\x83\x90\xa2"); } // [V7]7694test { try toUnicodeFail("\xe2\xab\x90\xe3\x80\x82\xe1\x83\x80-\xf3\x83\x90\xa2"); } // [V7]
7695test { try toAsciiFail("\xe2\xab\x90\xe3\x80\x82\xe1\x83\x80-\xf3\x83\x90\xa2", false); } // [V7]
7696test { try toAsciiFail("\xe2\xab\x90\xe3\x80\x82\xe1\x83\x80-\xf3\x83\x90\xa2", true); } // [V7]
3265test { try toUnicodeFail("\xe2\xab\x90\xe3\x80\x82\xe2\xb4\xa0-\xf3\x83\x90\xa2"); } // [V7]7697test { try toUnicodeFail("\xe2\xab\x90\xe3\x80\x82\xe2\xb4\xa0-\xf3\x83\x90\xa2"); } // [V7]
7698test { try toAsciiFail("\xe2\xab\x90\xe3\x80\x82\xe2\xb4\xa0-\xf3\x83\x90\xa2", false); } // [V7]
7699test { try toAsciiFail("\xe2\xab\x90\xe3\x80\x82\xe2\xb4\xa0-\xf3\x83\x90\xa2", true); } // [V7]
3266test { try toUnicodeFail("xn--r3i.xn----2wst7439i"); } // [V7]7700test { try toUnicodeFail("xn--r3i.xn----2wst7439i"); } // [V7]
7701test { try toAsciiFail("xn--r3i.xn----2wst7439i", false); } // [V7]
7702test { try toAsciiFail("xn--r3i.xn----2wst7439i", true); } // [V7]
3267test { try toUnicodeFail("\xe2\xab\x90\xef\xbd\xa1\xe2\xb4\xa0-\xf3\x83\x90\xa2"); } // [V7]7703test { try toUnicodeFail("\xe2\xab\x90\xef\xbd\xa1\xe2\xb4\xa0-\xf3\x83\x90\xa2"); } // [V7]
7704test { try toAsciiFail("\xe2\xab\x90\xef\xbd\xa1\xe2\xb4\xa0-\xf3\x83\x90\xa2", false); } // [V7]
7705test { try toAsciiFail("\xe2\xab\x90\xef\xbd\xa1\xe2\xb4\xa0-\xf3\x83\x90\xa2", true); } // [V7]
3268test { try toUnicodeFail("xn--r3i.xn----z1g58579u"); } // [V7]7706test { try toUnicodeFail("xn--r3i.xn----z1g58579u"); } // [V7]
7707test { try toAsciiFail("xn--r3i.xn----z1g58579u", false); } // [V7]
7708test { try toAsciiFail("xn--r3i.xn----z1g58579u", true); } // [V7]
3269test { try toUnicodeFail("\xf0\x91\x91\x82\xe2\x97\x8a\xef\xbc\x8e\xe2\xa6\x9f\xe2\x88\xa0"); } // [V6]7709test { try toUnicodeFail("\xf0\x91\x91\x82\xe2\x97\x8a\xef\xbc\x8e\xe2\xa6\x9f\xe2\x88\xa0"); } // [V6]
7710test { try toAsciiFail("\xf0\x91\x91\x82\xe2\x97\x8a\xef\xbc\x8e\xe2\xa6\x9f\xe2\x88\xa0", false); } // [V6]
7711test { try toAsciiFail("\xf0\x91\x91\x82\xe2\x97\x8a\xef\xbc\x8e\xe2\xa6\x9f\xe2\x88\xa0", true); } // [V6]
3270test { try toUnicodeFail("\xf0\x91\x91\x82\xe2\x97\x8a.\xe2\xa6\x9f\xe2\x88\xa0"); } // [V6]7712test { try toUnicodeFail("\xf0\x91\x91\x82\xe2\x97\x8a.\xe2\xa6\x9f\xe2\x88\xa0"); } // [V6]
7713test { try toAsciiFail("\xf0\x91\x91\x82\xe2\x97\x8a.\xe2\xa6\x9f\xe2\x88\xa0", false); } // [V6]
7714test { try toAsciiFail("\xf0\x91\x91\x82\xe2\x97\x8a.\xe2\xa6\x9f\xe2\x88\xa0", true); } // [V6]
3271test { try toUnicodeFail("xn--01h3338f.xn--79g270a"); } // [V6]7715test { try toUnicodeFail("xn--01h3338f.xn--79g270a"); } // [V6]
7716test { try toAsciiFail("xn--01h3338f.xn--79g270a", false); } // [V6]
7717test { try toAsciiFail("xn--01h3338f.xn--79g270a", true); } // [V6]
3272test { try toUnicodeFail("\xf0\xbf\x8c\xb0-\xd9\xa2\xe3\x80\x82\xf3\x8b\xb8\x9b\xea\xa1\x82"); } // [B5, B6, V7]7718test { try toUnicodeFail("\xf0\xbf\x8c\xb0-\xd9\xa2\xe3\x80\x82\xf3\x8b\xb8\x9b\xea\xa1\x82"); } // [B5, B6, V7]
7719test { try toAsciiFail("\xf0\xbf\x8c\xb0-\xd9\xa2\xe3\x80\x82\xf3\x8b\xb8\x9b\xea\xa1\x82", false); } // [B5, B6, V7]
7720test { try toAsciiFail("\xf0\xbf\x8c\xb0-\xd9\xa2\xe3\x80\x82\xf3\x8b\xb8\x9b\xea\xa1\x82", true); } // [B5, B6, V7]
3273test { try toUnicodeFail("xn----dqc20828e.xn--bc9an2879c"); } // [B5, B6, V7]7721test { try toUnicodeFail("xn----dqc20828e.xn--bc9an2879c"); } // [B5, B6, V7]
7722test { try toAsciiFail("xn----dqc20828e.xn--bc9an2879c", false); } // [B5, B6, V7]
7723test { try toAsciiFail("xn----dqc20828e.xn--bc9an2879c", true); } // [B5, B6, V7]
3274test { try toUnicodeFail("\xd9\xb8\xe3\x80\x82\xf3\xa0\x8f\xac\xdd\x81\xf0\x9e\xaa\xad\xf0\x90\xb9\xaa"); } // [B1, V7]7724test { try toUnicodeFail("\xd9\xb8\xe3\x80\x82\xf3\xa0\x8f\xac\xdd\x81\xf0\x9e\xaa\xad\xf0\x90\xb9\xaa"); } // [B1, V7]
7725test { try toAsciiFail("\xd9\xb8\xe3\x80\x82\xf3\xa0\x8f\xac\xdd\x81\xf0\x9e\xaa\xad\xf0\x90\xb9\xaa", false); } // [B1, V7]
7726test { try toAsciiFail("\xd9\xb8\xe3\x80\x82\xf3\xa0\x8f\xac\xdd\x81\xf0\x9e\xaa\xad\xf0\x90\xb9\xaa", true); } // [B1, V7]
3275test { try toUnicodeFail("\xd9\x8a\xd9\xb4\xe3\x80\x82\xf3\xa0\x8f\xac\xdd\x81\xf0\x9e\xaa\xad\xf0\x90\xb9\xaa"); } // [B1, V7]7727test { try toUnicodeFail("\xd9\x8a\xd9\xb4\xe3\x80\x82\xf3\xa0\x8f\xac\xdd\x81\xf0\x9e\xaa\xad\xf0\x90\xb9\xaa"); } // [B1, V7]
7728test { try toAsciiFail("\xd9\x8a\xd9\xb4\xe3\x80\x82\xf3\xa0\x8f\xac\xdd\x81\xf0\x9e\xaa\xad\xf0\x90\xb9\xaa", false); } // [B1, V7]
7729test { try toAsciiFail("\xd9\x8a\xd9\xb4\xe3\x80\x82\xf3\xa0\x8f\xac\xdd\x81\xf0\x9e\xaa\xad\xf0\x90\xb9\xaa", true); } // [B1, V7]
3276test { try toUnicodeFail("xn--mhb8f.xn--oob2585kfdsfsbo7h"); } // [B1, V7]7730test { try toUnicodeFail("xn--mhb8f.xn--oob2585kfdsfsbo7h"); } // [B1, V7]
7731test { try toAsciiFail("xn--mhb8f.xn--oob2585kfdsfsbo7h", false); } // [B1, V7]
7732test { try toAsciiFail("xn--mhb8f.xn--oob2585kfdsfsbo7h", true); } // [B1, V7]
3277test { try toUnicodeFail("\xf0\x90\xab\x86\xea\x8c\x84\xef\xbd\xa1\xe2\x80\x8d\xe1\xa3\xac"); } // [B1, B2, B3, C2]7733test { try toUnicodeFail("\xf0\x90\xab\x86\xea\x8c\x84\xef\xbd\xa1\xe2\x80\x8d\xe1\xa3\xac"); } // [B1, B2, B3, C2]
7734test { try toAsciiFail("\xf0\x90\xab\x86\xea\x8c\x84\xef\xbd\xa1\xe2\x80\x8d\xe1\xa3\xac", false); } // [B1, B2, B3, C2]
7735test { try toAsciiFail("\xf0\x90\xab\x86\xea\x8c\x84\xef\xbd\xa1\xe2\x80\x8d\xe1\xa3\xac", true); } // [B2, B3]
3278test { try toUnicodeFail("\xf0\x90\xab\x86\xea\x8c\x84\xe3\x80\x82\xe2\x80\x8d\xe1\xa3\xac"); } // [B1, B2, B3, C2]7736test { try toUnicodeFail("\xf0\x90\xab\x86\xea\x8c\x84\xe3\x80\x82\xe2\x80\x8d\xe1\xa3\xac"); } // [B1, B2, B3, C2]
7737test { try toAsciiFail("\xf0\x90\xab\x86\xea\x8c\x84\xe3\x80\x82\xe2\x80\x8d\xe1\xa3\xac", false); } // [B1, B2, B3, C2]
7738test { try toAsciiFail("\xf0\x90\xab\x86\xea\x8c\x84\xe3\x80\x82\xe2\x80\x8d\xe1\xa3\xac", true); } // [B2, B3]
3279test { try toUnicodeFail("xn--y77ao18q.xn--wdf"); } // [B2, B3]7739test { try toUnicodeFail("xn--y77ao18q.xn--wdf"); } // [B2, B3]
7740test { try toAsciiFail("xn--y77ao18q.xn--wdf", false); } // [B2, B3]
7741test { try toAsciiFail("xn--y77ao18q.xn--wdf", true); } // [B2, B3]
3280test { try toUnicodeFail("xn--y77ao18q.xn--wdf367a"); } // [B1, B2, B3, C2]7742test { try toUnicodeFail("xn--y77ao18q.xn--wdf367a"); } // [B1, B2, B3, C2]
7743test { try toAsciiFail("xn--y77ao18q.xn--wdf367a", false); } // [B1, B2, B3, C2]
7744test { try toAsciiFail("xn--y77ao18q.xn--wdf367a", true); } // [B1, B2, B3, C2]
3281test { try toUnicodeFail("\xe2\x82\x80\xd9\xa2\xe3\x80\x82\xf3\x85\xaa\x9e\xe2\x89\xaf-"); } // [B1, B6, V3, V7]7745test { try toUnicodeFail("\xe2\x82\x80\xd9\xa2\xe3\x80\x82\xf3\x85\xaa\x9e\xe2\x89\xaf-"); } // [B1, B6, V3, V7]
7746test { try toAsciiFail("\xe2\x82\x80\xd9\xa2\xe3\x80\x82\xf3\x85\xaa\x9e\xe2\x89\xaf-", false); } // [B1, B6, V3, V7]
7747test { try toAsciiFail("\xe2\x82\x80\xd9\xa2\xe3\x80\x82\xf3\x85\xaa\x9e\xe2\x89\xaf-", true); } // [B1, B6, V3, V7]
3282test { try toUnicodeFail("\xe2\x82\x80\xd9\xa2\xe3\x80\x82\xf3\x85\xaa\x9e>\xcc\xb8-"); } // [B1, B6, V3, V7]7748test { try toUnicodeFail("\xe2\x82\x80\xd9\xa2\xe3\x80\x82\xf3\x85\xaa\x9e>\xcc\xb8-"); } // [B1, B6, V3, V7]
7749test { try toAsciiFail("\xe2\x82\x80\xd9\xa2\xe3\x80\x82\xf3\x85\xaa\x9e>\xcc\xb8-", false); } // [B1, B6, V3, V7]
7750test { try toAsciiFail("\xe2\x82\x80\xd9\xa2\xe3\x80\x82\xf3\x85\xaa\x9e>\xcc\xb8-", true); } // [B1, B6, V3, V7]
3283test { try toUnicodeFail("0\xd9\xa2\xe3\x80\x82\xf3\x85\xaa\x9e\xe2\x89\xaf-"); } // [B1, B6, V3, V7]7751test { try toUnicodeFail("0\xd9\xa2\xe3\x80\x82\xf3\x85\xaa\x9e\xe2\x89\xaf-"); } // [B1, B6, V3, V7]
7752test { try toAsciiFail("0\xd9\xa2\xe3\x80\x82\xf3\x85\xaa\x9e\xe2\x89\xaf-", false); } // [B1, B6, V3, V7]
7753test { try toAsciiFail("0\xd9\xa2\xe3\x80\x82\xf3\x85\xaa\x9e\xe2\x89\xaf-", true); } // [B1, B6, V3, V7]
3284test { try toUnicodeFail("0\xd9\xa2\xe3\x80\x82\xf3\x85\xaa\x9e>\xcc\xb8-"); } // [B1, B6, V3, V7]7754test { try toUnicodeFail("0\xd9\xa2\xe3\x80\x82\xf3\x85\xaa\x9e>\xcc\xb8-"); } // [B1, B6, V3, V7]
7755test { try toAsciiFail("0\xd9\xa2\xe3\x80\x82\xf3\x85\xaa\x9e>\xcc\xb8-", false); } // [B1, B6, V3, V7]
7756test { try toAsciiFail("0\xd9\xa2\xe3\x80\x82\xf3\x85\xaa\x9e>\xcc\xb8-", true); } // [B1, B6, V3, V7]
3285test { try toUnicodeFail("xn--0-dqc.xn----ogov3342l"); } // [B1, B6, V3, V7]7757test { try toUnicodeFail("xn--0-dqc.xn----ogov3342l"); } // [B1, B6, V3, V7]
7758test { try toAsciiFail("xn--0-dqc.xn----ogov3342l", false); } // [B1, B6, V3, V7]
7759test { try toAsciiFail("xn--0-dqc.xn----ogov3342l", true); } // [B1, B6, V3, V7]
3286test { try toUnicodeFail("\xcc\x9c\xf0\x90\xb9\xab-\xf0\x9e\xaf\x83.\xf0\x90\x8b\xa4\xe0\xa1\x85"); } // [B1, V6, V7]7760test { try toUnicodeFail("\xcc\x9c\xf0\x90\xb9\xab-\xf0\x9e\xaf\x83.\xf0\x90\x8b\xa4\xe0\xa1\x85"); } // [B1, V6, V7]
7761test { try toAsciiFail("\xcc\x9c\xf0\x90\xb9\xab-\xf0\x9e\xaf\x83.\xf0\x90\x8b\xa4\xe0\xa1\x85", false); } // [B1, V6, V7]
7762test { try toAsciiFail("\xcc\x9c\xf0\x90\xb9\xab-\xf0\x9e\xaf\x83.\xf0\x90\x8b\xa4\xe0\xa1\x85", true); } // [B1, V6, V7]
3287test { try toUnicodeFail("xn----gdb7046r692g.xn--3vb1349j"); } // [B1, V6, V7]7763test { try toUnicodeFail("xn----gdb7046r692g.xn--3vb1349j"); } // [B1, V6, V7]
7764test { try toAsciiFail("xn----gdb7046r692g.xn--3vb1349j", false); } // [B1, V6, V7]
7765test { try toAsciiFail("xn----gdb7046r692g.xn--3vb1349j", true); } // [B1, V6, V7]
3288test { try toUnicodeFail("\xe2\x89\xa0\xef\xbd\xa1\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe1\x83\x81\xd6\x94"); } // [B1, V6]7766test { try toUnicodeFail("\xe2\x89\xa0\xef\xbd\xa1\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe1\x83\x81\xd6\x94"); } // [B1, V6]
7767test { try toAsciiFail("\xe2\x89\xa0\xef\xbd\xa1\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe1\x83\x81\xd6\x94", false); } // [B1, V6]
7768test { try toAsciiFail("\xe2\x89\xa0\xef\xbd\xa1\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe1\x83\x81\xd6\x94", true); } // [B1, V6]
3289test { try toUnicodeFail("=\xcc\xb8\xef\xbd\xa1\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe1\x83\x81\xd6\x94"); } // [B1, V6]7769test { try toUnicodeFail("=\xcc\xb8\xef\xbd\xa1\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe1\x83\x81\xd6\x94"); } // [B1, V6]
7770test { try toAsciiFail("=\xcc\xb8\xef\xbd\xa1\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe1\x83\x81\xd6\x94", false); } // [B1, V6]
7771test { try toAsciiFail("=\xcc\xb8\xef\xbd\xa1\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe1\x83\x81\xd6\x94", true); } // [B1, V6]
3290test { try toUnicodeFail("\xe2\x89\xa0\xe3\x80\x82\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe1\x83\x81\xd6\x94"); } // [B1, V6]7772test { try toUnicodeFail("\xe2\x89\xa0\xe3\x80\x82\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe1\x83\x81\xd6\x94"); } // [B1, V6]
7773test { try toAsciiFail("\xe2\x89\xa0\xe3\x80\x82\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe1\x83\x81\xd6\x94", false); } // [B1, V6]
7774test { try toAsciiFail("\xe2\x89\xa0\xe3\x80\x82\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe1\x83\x81\xd6\x94", true); } // [B1, V6]
3291test { try toUnicodeFail("=\xcc\xb8\xe3\x80\x82\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe1\x83\x81\xd6\x94"); } // [B1, V6]7775test { try toUnicodeFail("=\xcc\xb8\xe3\x80\x82\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe1\x83\x81\xd6\x94"); } // [B1, V6]
7776test { try toAsciiFail("=\xcc\xb8\xe3\x80\x82\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe1\x83\x81\xd6\x94", false); } // [B1, V6]
7777test { try toAsciiFail("=\xcc\xb8\xe3\x80\x82\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe1\x83\x81\xd6\x94", true); } // [B1, V6]
3292test { try toUnicodeFail("=\xcc\xb8\xe3\x80\x82\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe2\xb4\xa1\xd6\x94"); } // [B1, V6]7778test { try toUnicodeFail("=\xcc\xb8\xe3\x80\x82\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe2\xb4\xa1\xd6\x94"); } // [B1, V6]
7779test { try toAsciiFail("=\xcc\xb8\xe3\x80\x82\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe2\xb4\xa1\xd6\x94", false); } // [B1, V6]
7780test { try toAsciiFail("=\xcc\xb8\xe3\x80\x82\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe2\xb4\xa1\xd6\x94", true); } // [B1, V6]
3293test { try toUnicodeFail("\xe2\x89\xa0\xe3\x80\x82\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe2\xb4\xa1\xd6\x94"); } // [B1, V6]7781test { try toUnicodeFail("\xe2\x89\xa0\xe3\x80\x82\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe2\xb4\xa1\xd6\x94"); } // [B1, V6]
7782test { try toAsciiFail("\xe2\x89\xa0\xe3\x80\x82\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe2\xb4\xa1\xd6\x94", false); } // [B1, V6]
7783test { try toAsciiFail("\xe2\x89\xa0\xe3\x80\x82\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe2\xb4\xa1\xd6\x94", true); } // [B1, V6]
3294test { try toUnicodeFail("xn--1ch.xn--fcb363rk03mypug"); } // [B1, V6]7784test { try toUnicodeFail("xn--1ch.xn--fcb363rk03mypug"); } // [B1, V6]
7785test { try toAsciiFail("xn--1ch.xn--fcb363rk03mypug", false); } // [B1, V6]
7786test { try toAsciiFail("xn--1ch.xn--fcb363rk03mypug", true); } // [B1, V6]
3295test { try toUnicodeFail("=\xcc\xb8\xef\xbd\xa1\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe2\xb4\xa1\xd6\x94"); } // [B1, V6]7787test { try toUnicodeFail("=\xcc\xb8\xef\xbd\xa1\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe2\xb4\xa1\xd6\x94"); } // [B1, V6]
7788test { try toAsciiFail("=\xcc\xb8\xef\xbd\xa1\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe2\xb4\xa1\xd6\x94", false); } // [B1, V6]
7789test { try toAsciiFail("=\xcc\xb8\xef\xbd\xa1\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe2\xb4\xa1\xd6\x94", true); } // [B1, V6]
3296test { try toUnicodeFail("\xe2\x89\xa0\xef\xbd\xa1\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe2\xb4\xa1\xd6\x94"); } // [B1, V6]7790test { try toUnicodeFail("\xe2\x89\xa0\xef\xbd\xa1\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe2\xb4\xa1\xd6\x94"); } // [B1, V6]
7791test { try toAsciiFail("\xe2\x89\xa0\xef\xbd\xa1\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe2\xb4\xa1\xd6\x94", false); } // [B1, V6]
7792test { try toAsciiFail("\xe2\x89\xa0\xef\xbd\xa1\xf0\x9d\xa9\x91\xf0\x90\xb9\xa9\xe2\xb4\xa1\xd6\x94", true); } // [B1, V6]
3297test { try toUnicodeFail("xn--1ch.xn--fcb538c649rypog"); } // [B1, V6, V7]7793test { try toUnicodeFail("xn--1ch.xn--fcb538c649rypog"); } // [B1, V6, V7]
7794test { try toAsciiFail("xn--1ch.xn--fcb538c649rypog", false); } // [B1, V6, V7]
7795test { try toAsciiFail("xn--1ch.xn--fcb538c649rypog", true); } // [B1, V6, V7]
3298test { try toUnicodeFail("\xf0\x96\xab\xb3\xe2\x89\xa0.\xe1\x82\xa0\xf0\x90\xae\x80"); } // [B1, B5, B6, V6]7796test { try toUnicodeFail("\xf0\x96\xab\xb3\xe2\x89\xa0.\xe1\x82\xa0\xf0\x90\xae\x80"); } // [B1, B5, B6, V6]
7797test { try toAsciiFail("\xf0\x96\xab\xb3\xe2\x89\xa0.\xe1\x82\xa0\xf0\x90\xae\x80", false); } // [B1, B5, B6, V6]
7798test { try toAsciiFail("\xf0\x96\xab\xb3\xe2\x89\xa0.\xe1\x82\xa0\xf0\x90\xae\x80", true); } // [B1, B5, B6, V6]
3299test { try toUnicodeFail("\xf0\x96\xab\xb3=\xcc\xb8.\xe1\x82\xa0\xf0\x90\xae\x80"); } // [B1, B5, B6, V6]7799test { try toUnicodeFail("\xf0\x96\xab\xb3=\xcc\xb8.\xe1\x82\xa0\xf0\x90\xae\x80"); } // [B1, B5, B6, V6]
7800test { try toAsciiFail("\xf0\x96\xab\xb3=\xcc\xb8.\xe1\x82\xa0\xf0\x90\xae\x80", false); } // [B1, B5, B6, V6]
7801test { try toAsciiFail("\xf0\x96\xab\xb3=\xcc\xb8.\xe1\x82\xa0\xf0\x90\xae\x80", true); } // [B1, B5, B6, V6]
3300test { try toUnicodeFail("\xf0\x96\xab\xb3=\xcc\xb8.\xe2\xb4\x80\xf0\x90\xae\x80"); } // [B1, B5, B6, V6]7802test { try toUnicodeFail("\xf0\x96\xab\xb3=\xcc\xb8.\xe2\xb4\x80\xf0\x90\xae\x80"); } // [B1, B5, B6, V6]
7803test { try toAsciiFail("\xf0\x96\xab\xb3=\xcc\xb8.\xe2\xb4\x80\xf0\x90\xae\x80", false); } // [B1, B5, B6, V6]
7804test { try toAsciiFail("\xf0\x96\xab\xb3=\xcc\xb8.\xe2\xb4\x80\xf0\x90\xae\x80", true); } // [B1, B5, B6, V6]
3301test { try toUnicodeFail("\xf0\x96\xab\xb3\xe2\x89\xa0.\xe2\xb4\x80\xf0\x90\xae\x80"); } // [B1, B5, B6, V6]7805test { try toUnicodeFail("\xf0\x96\xab\xb3\xe2\x89\xa0.\xe2\xb4\x80\xf0\x90\xae\x80"); } // [B1, B5, B6, V6]
7806test { try toAsciiFail("\xf0\x96\xab\xb3\xe2\x89\xa0.\xe2\xb4\x80\xf0\x90\xae\x80", false); } // [B1, B5, B6, V6]
7807test { try toAsciiFail("\xf0\x96\xab\xb3\xe2\x89\xa0.\xe2\xb4\x80\xf0\x90\xae\x80", true); } // [B1, B5, B6, V6]
3302test { try toUnicodeFail("xn--1ch9250k.xn--rkj6232e"); } // [B1, B5, B6, V6]7808test { try toUnicodeFail("xn--1ch9250k.xn--rkj6232e"); } // [B1, B5, B6, V6]
7809test { try toAsciiFail("xn--1ch9250k.xn--rkj6232e", false); } // [B1, B5, B6, V6]
7810test { try toAsciiFail("xn--1ch9250k.xn--rkj6232e", true); } // [B1, B5, B6, V6]
3303test { try toUnicodeFail("xn--1ch9250k.xn--7md2659j"); } // [B1, B5, B6, V6, V7]7811test { try toUnicodeFail("xn--1ch9250k.xn--7md2659j"); } // [B1, B5, B6, V6, V7]
7812test { try toAsciiFail("xn--1ch9250k.xn--7md2659j", false); } // [B1, B5, B6, V6, V7]
7813test { try toAsciiFail("xn--1ch9250k.xn--7md2659j", true); } // [B1, B5, B6, V6, V7]
3304test { try toUnicodeFail("\xf3\xa0\x85\xbe\xdc\xb6\xdc\xa6\xef\xbc\x8e\xe1\xa2\x9a\xe9\x96\xaa\xe0\xa3\xa2\xf0\x9d\xa9\x9f"); } // [B1, B5, B6, V6, V7]7814test { try toUnicodeFail("\xf3\xa0\x85\xbe\xdc\xb6\xdc\xa6\xef\xbc\x8e\xe1\xa2\x9a\xe9\x96\xaa\xe0\xa3\xa2\xf0\x9d\xa9\x9f"); } // [B1, B5, B6, V6, V7]
7815test { try toAsciiFail("\xf3\xa0\x85\xbe\xdc\xb6\xdc\xa6\xef\xbc\x8e\xe1\xa2\x9a\xe9\x96\xaa\xe0\xa3\xa2\xf0\x9d\xa9\x9f", false); } // [B1, B5, B6, V6, V7]
7816test { try toAsciiFail("\xf3\xa0\x85\xbe\xdc\xb6\xdc\xa6\xef\xbc\x8e\xe1\xa2\x9a\xe9\x96\xaa\xe0\xa3\xa2\xf0\x9d\xa9\x9f", true); } // [B1, B5, B6, V6, V7]
3305test { try toUnicodeFail("\xf3\xa0\x85\xbe\xdc\xb6\xdc\xa6.\xe1\xa2\x9a\xe9\x96\xaa\xe0\xa3\xa2\xf0\x9d\xa9\x9f"); } // [B1, B5, B6, V6, V7]7817test { try toUnicodeFail("\xf3\xa0\x85\xbe\xdc\xb6\xdc\xa6.\xe1\xa2\x9a\xe9\x96\xaa\xe0\xa3\xa2\xf0\x9d\xa9\x9f"); } // [B1, B5, B6, V6, V7]
7818test { try toAsciiFail("\xf3\xa0\x85\xbe\xdc\xb6\xdc\xa6.\xe1\xa2\x9a\xe9\x96\xaa\xe0\xa3\xa2\xf0\x9d\xa9\x9f", false); } // [B1, B5, B6, V6, V7]
7819test { try toAsciiFail("\xf3\xa0\x85\xbe\xdc\xb6\xdc\xa6.\xe1\xa2\x9a\xe9\x96\xaa\xe0\xa3\xa2\xf0\x9d\xa9\x9f", true); } // [B1, B5, B6, V6, V7]
3306test { try toUnicodeFail("xn--wnb5a.xn--l0b161fis8gbp5m"); } // [B1, B5, B6, V6, V7]7820test { try toUnicodeFail("xn--wnb5a.xn--l0b161fis8gbp5m"); } // [B1, B5, B6, V6, V7]
7821test { try toAsciiFail("xn--wnb5a.xn--l0b161fis8gbp5m", false); } // [B1, B5, B6, V6, V7]
7822test { try toAsciiFail("xn--wnb5a.xn--l0b161fis8gbp5m", true); } // [B1, B5, B6, V6, V7]
3307test { try toUnicodeFail("\xe2\x80\x8d\xf3\xa0\x87\x9c\xdb\x8b\xea\xa3\xa9\xef\xbd\xa1\xe2\x83\x9d\xe0\xbe\xb0-\xe1\x9b\x9f"); } // [B1, C2, V6]7823test { try toUnicodeFail("\xe2\x80\x8d\xf3\xa0\x87\x9c\xdb\x8b\xea\xa3\xa9\xef\xbd\xa1\xe2\x83\x9d\xe0\xbe\xb0-\xe1\x9b\x9f"); } // [B1, C2, V6]
7824test { try toAsciiFail("\xe2\x80\x8d\xf3\xa0\x87\x9c\xdb\x8b\xea\xa3\xa9\xef\xbd\xa1\xe2\x83\x9d\xe0\xbe\xb0-\xe1\x9b\x9f", false); } // [B1, C2, V6]
7825test { try toAsciiFail("\xe2\x80\x8d\xf3\xa0\x87\x9c\xdb\x8b\xea\xa3\xa9\xef\xbd\xa1\xe2\x83\x9d\xe0\xbe\xb0-\xe1\x9b\x9f", true); } // [B1, V6]
3308test { try toUnicodeFail("\xe2\x80\x8d\xf3\xa0\x87\x9c\xdb\x8b\xea\xa3\xa9\xe3\x80\x82\xe2\x83\x9d\xe0\xbe\xb0-\xe1\x9b\x9f"); } // [B1, C2, V6]7826test { try toUnicodeFail("\xe2\x80\x8d\xf3\xa0\x87\x9c\xdb\x8b\xea\xa3\xa9\xe3\x80\x82\xe2\x83\x9d\xe0\xbe\xb0-\xe1\x9b\x9f"); } // [B1, C2, V6]
7827test { try toAsciiFail("\xe2\x80\x8d\xf3\xa0\x87\x9c\xdb\x8b\xea\xa3\xa9\xe3\x80\x82\xe2\x83\x9d\xe0\xbe\xb0-\xe1\x9b\x9f", false); } // [B1, C2, V6]
7828test { try toAsciiFail("\xe2\x80\x8d\xf3\xa0\x87\x9c\xdb\x8b\xea\xa3\xa9\xe3\x80\x82\xe2\x83\x9d\xe0\xbe\xb0-\xe1\x9b\x9f", true); } // [B1, V6]
3309test { try toUnicodeFail("xn--blb8114f.xn----gmg236cj6k"); } // [B1, V6]7829test { try toUnicodeFail("xn--blb8114f.xn----gmg236cj6k"); } // [B1, V6]
7830test { try toAsciiFail("xn--blb8114f.xn----gmg236cj6k", false); } // [B1, V6]
7831test { try toAsciiFail("xn--blb8114f.xn----gmg236cj6k", true); } // [B1, V6]
3310test { try toUnicodeFail("xn--blb540ke10h.xn----gmg236cj6k"); } // [B1, C2, V6]7832test { try toUnicodeFail("xn--blb540ke10h.xn----gmg236cj6k"); } // [B1, C2, V6]
7833test { try toAsciiFail("xn--blb540ke10h.xn----gmg236cj6k", false); } // [B1, C2, V6]
7834test { try toAsciiFail("xn--blb540ke10h.xn----gmg236cj6k", true); } // [B1, C2, V6]
3311test { try toUnicodeFail("\xed\x97\x81\xf3\x98\x96\x99\xe0\xb8\xba\xf3\x9a\x8d\x9a\xe3\x80\x82\xda\xba\xf0\x9d\x9f\x9c"); } // [V7]7835test { try toUnicodeFail("\xed\x97\x81\xf3\x98\x96\x99\xe0\xb8\xba\xf3\x9a\x8d\x9a\xe3\x80\x82\xda\xba\xf0\x9d\x9f\x9c"); } // [V7]
7836test { try toAsciiFail("\xed\x97\x81\xf3\x98\x96\x99\xe0\xb8\xba\xf3\x9a\x8d\x9a\xe3\x80\x82\xda\xba\xf0\x9d\x9f\x9c", false); } // [V7]
7837test { try toAsciiFail("\xed\x97\x81\xf3\x98\x96\x99\xe0\xb8\xba\xf3\x9a\x8d\x9a\xe3\x80\x82\xda\xba\xf0\x9d\x9f\x9c", true); } // [V7]
3312test { try toUnicodeFail("\xe1\x84\x92\xe1\x85\xa4\xe1\x86\xbc\xf3\x98\x96\x99\xe0\xb8\xba\xf3\x9a\x8d\x9a\xe3\x80\x82\xda\xba\xf0\x9d\x9f\x9c"); } // [V7]7838test { try toUnicodeFail("\xe1\x84\x92\xe1\x85\xa4\xe1\x86\xbc\xf3\x98\x96\x99\xe0\xb8\xba\xf3\x9a\x8d\x9a\xe3\x80\x82\xda\xba\xf0\x9d\x9f\x9c"); } // [V7]
7839test { try toAsciiFail("\xe1\x84\x92\xe1\x85\xa4\xe1\x86\xbc\xf3\x98\x96\x99\xe0\xb8\xba\xf3\x9a\x8d\x9a\xe3\x80\x82\xda\xba\xf0\x9d\x9f\x9c", false); } // [V7]
7840test { try toAsciiFail("\xe1\x84\x92\xe1\x85\xa4\xe1\x86\xbc\xf3\x98\x96\x99\xe0\xb8\xba\xf3\x9a\x8d\x9a\xe3\x80\x82\xda\xba\xf0\x9d\x9f\x9c", true); } // [V7]
3313test { try toUnicodeFail("\xed\x97\x81\xf3\x98\x96\x99\xe0\xb8\xba\xf3\x9a\x8d\x9a\xe3\x80\x82\xda\xba4"); } // [V7]7841test { try toUnicodeFail("\xed\x97\x81\xf3\x98\x96\x99\xe0\xb8\xba\xf3\x9a\x8d\x9a\xe3\x80\x82\xda\xba4"); } // [V7]
7842test { try toAsciiFail("\xed\x97\x81\xf3\x98\x96\x99\xe0\xb8\xba\xf3\x9a\x8d\x9a\xe3\x80\x82\xda\xba4", false); } // [V7]
7843test { try toAsciiFail("\xed\x97\x81\xf3\x98\x96\x99\xe0\xb8\xba\xf3\x9a\x8d\x9a\xe3\x80\x82\xda\xba4", true); } // [V7]
3314test { try toUnicodeFail("\xe1\x84\x92\xe1\x85\xa4\xe1\x86\xbc\xf3\x98\x96\x99\xe0\xb8\xba\xf3\x9a\x8d\x9a\xe3\x80\x82\xda\xba4"); } // [V7]7844test { try toUnicodeFail("\xe1\x84\x92\xe1\x85\xa4\xe1\x86\xbc\xf3\x98\x96\x99\xe0\xb8\xba\xf3\x9a\x8d\x9a\xe3\x80\x82\xda\xba4"); } // [V7]
7845test { try toAsciiFail("\xe1\x84\x92\xe1\x85\xa4\xe1\x86\xbc\xf3\x98\x96\x99\xe0\xb8\xba\xf3\x9a\x8d\x9a\xe3\x80\x82\xda\xba4", false); } // [V7]
7846test { try toAsciiFail("\xe1\x84\x92\xe1\x85\xa4\xe1\x86\xbc\xf3\x98\x96\x99\xe0\xb8\xba\xf3\x9a\x8d\x9a\xe3\x80\x82\xda\xba4", true); } // [V7]
3315test { try toUnicodeFail("xn--o4c1723h8g85gt4ya.xn--4-dvc"); } // [V7]7847test { try toUnicodeFail("xn--o4c1723h8g85gt4ya.xn--4-dvc"); } // [V7]
7848test { try toAsciiFail("xn--o4c1723h8g85gt4ya.xn--4-dvc", false); } // [V7]
7849test { try toAsciiFail("xn--o4c1723h8g85gt4ya.xn--4-dvc", true); } // [V7]
3316test { try toUnicodeFail("\xf0\x90\xb9\xad\xef\xbd\xa1\xf3\x83\xb1\x82\xe2\x80\x8c\xe1\x82\xbe"); } // [B1, C1, V7]7850test { try toUnicodeFail("\xf0\x90\xb9\xad\xef\xbd\xa1\xf3\x83\xb1\x82\xe2\x80\x8c\xe1\x82\xbe"); } // [B1, C1, V7]
7851test { try toAsciiFail("\xf0\x90\xb9\xad\xef\xbd\xa1\xf3\x83\xb1\x82\xe2\x80\x8c\xe1\x82\xbe", false); } // [B1, C1, V7]
7852test { try toAsciiFail("\xf0\x90\xb9\xad\xef\xbd\xa1\xf3\x83\xb1\x82\xe2\x80\x8c\xe1\x82\xbe", true); } // [B1, V7]
3317test { try toUnicodeFail("\xf0\x90\xb9\xad\xe3\x80\x82\xf3\x83\xb1\x82\xe2\x80\x8c\xe1\x82\xbe"); } // [B1, C1, V7]7853test { try toUnicodeFail("\xf0\x90\xb9\xad\xe3\x80\x82\xf3\x83\xb1\x82\xe2\x80\x8c\xe1\x82\xbe"); } // [B1, C1, V7]
7854test { try toAsciiFail("\xf0\x90\xb9\xad\xe3\x80\x82\xf3\x83\xb1\x82\xe2\x80\x8c\xe1\x82\xbe", false); } // [B1, C1, V7]
7855test { try toAsciiFail("\xf0\x90\xb9\xad\xe3\x80\x82\xf3\x83\xb1\x82\xe2\x80\x8c\xe1\x82\xbe", true); } // [B1, V7]
3318test { try toUnicodeFail("\xf0\x90\xb9\xad\xe3\x80\x82\xf3\x83\xb1\x82\xe2\x80\x8c\xe2\xb4\x9e"); } // [B1, C1, V7]7856test { try toUnicodeFail("\xf0\x90\xb9\xad\xe3\x80\x82\xf3\x83\xb1\x82\xe2\x80\x8c\xe2\xb4\x9e"); } // [B1, C1, V7]
7857test { try toAsciiFail("\xf0\x90\xb9\xad\xe3\x80\x82\xf3\x83\xb1\x82\xe2\x80\x8c\xe2\xb4\x9e", false); } // [B1, C1, V7]
7858test { try toAsciiFail("\xf0\x90\xb9\xad\xe3\x80\x82\xf3\x83\xb1\x82\xe2\x80\x8c\xe2\xb4\x9e", true); } // [B1, V7]
3319test { try toUnicodeFail("xn--lo0d.xn--mljx1099g"); } // [B1, V7]7859test { try toUnicodeFail("xn--lo0d.xn--mljx1099g"); } // [B1, V7]
7860test { try toAsciiFail("xn--lo0d.xn--mljx1099g", false); } // [B1, V7]
7861test { try toAsciiFail("xn--lo0d.xn--mljx1099g", true); } // [B1, V7]
3320test { try toUnicodeFail("xn--lo0d.xn--0ugx72cwi33v"); } // [B1, C1, V7]7862test { try toUnicodeFail("xn--lo0d.xn--0ugx72cwi33v"); } // [B1, C1, V7]
7863test { try toAsciiFail("xn--lo0d.xn--0ugx72cwi33v", false); } // [B1, C1, V7]
7864test { try toAsciiFail("xn--lo0d.xn--0ugx72cwi33v", true); } // [B1, C1, V7]
3321test { try toUnicodeFail("\xf0\x90\xb9\xad\xef\xbd\xa1\xf3\x83\xb1\x82\xe2\x80\x8c\xe2\xb4\x9e"); } // [B1, C1, V7]7865test { try toUnicodeFail("\xf0\x90\xb9\xad\xef\xbd\xa1\xf3\x83\xb1\x82\xe2\x80\x8c\xe2\xb4\x9e"); } // [B1, C1, V7]
7866test { try toAsciiFail("\xf0\x90\xb9\xad\xef\xbd\xa1\xf3\x83\xb1\x82\xe2\x80\x8c\xe2\xb4\x9e", false); } // [B1, C1, V7]
7867test { try toAsciiFail("\xf0\x90\xb9\xad\xef\xbd\xa1\xf3\x83\xb1\x82\xe2\x80\x8c\xe2\xb4\x9e", true); } // [B1, V7]
3322test { try toUnicodeFail("xn--lo0d.xn--2nd75260n"); } // [B1, V7]7868test { try toUnicodeFail("xn--lo0d.xn--2nd75260n"); } // [B1, V7]
7869test { try toAsciiFail("xn--lo0d.xn--2nd75260n", false); } // [B1, V7]
7870test { try toAsciiFail("xn--lo0d.xn--2nd75260n", true); } // [B1, V7]
3323test { try toUnicodeFail("xn--lo0d.xn--2nd949eqw95u"); } // [B1, C1, V7]7871test { try toUnicodeFail("xn--lo0d.xn--2nd949eqw95u"); } // [B1, C1, V7]
7872test { try toAsciiFail("xn--lo0d.xn--2nd949eqw95u", false); } // [B1, C1, V7]
7873test { try toAsciiFail("xn--lo0d.xn--2nd949eqw95u", true); } // [B1, C1, V7]
3324test { try toUnicodeFail("\xea\xa5\x93.\xcc\xbd\xf0\x91\x82\xbd\xe9\xa6\x8b"); } // [V6, V7]7874test { try toUnicodeFail("\xea\xa5\x93.\xcc\xbd\xf0\x91\x82\xbd\xe9\xa6\x8b"); } // [V6, V7]
7875test { try toAsciiFail("\xea\xa5\x93.\xcc\xbd\xf0\x91\x82\xbd\xe9\xa6\x8b", false); } // [V6, V7]
7876test { try toAsciiFail("\xea\xa5\x93.\xcc\xbd\xf0\x91\x82\xbd\xe9\xa6\x8b", true); } // [V6, V7]
3325test { try toUnicodeFail("xn--3j9a.xn--bua0708eqzrd"); } // [V6, V7]7877test { try toUnicodeFail("xn--3j9a.xn--bua0708eqzrd"); } // [V6, V7]
7878test { try toAsciiFail("xn--3j9a.xn--bua0708eqzrd", false); } // [V6, V7]
7879test { try toAsciiFail("xn--3j9a.xn--bua0708eqzrd", true); } // [V6, V7]
3326test { try toUnicodeFail("\xf3\x88\xab\x9d\xf2\xaa\x9b\xb8\xe2\x80\x8d\xef\xbd\xa1\xe4\x9c\x96"); } // [C2, V7]7880test { try toUnicodeFail("\xf3\x88\xab\x9d\xf2\xaa\x9b\xb8\xe2\x80\x8d\xef\xbd\xa1\xe4\x9c\x96"); } // [C2, V7]
7881test { try toAsciiFail("\xf3\x88\xab\x9d\xf2\xaa\x9b\xb8\xe2\x80\x8d\xef\xbd\xa1\xe4\x9c\x96", false); } // [C2, V7]
7882test { try toAsciiFail("\xf3\x88\xab\x9d\xf2\xaa\x9b\xb8\xe2\x80\x8d\xef\xbd\xa1\xe4\x9c\x96", true); } // [V7]
3327test { try toUnicodeFail("\xf3\x88\xab\x9d\xf2\xaa\x9b\xb8\xe2\x80\x8d\xe3\x80\x82\xe4\x9c\x96"); } // [C2, V7]7883test { try toUnicodeFail("\xf3\x88\xab\x9d\xf2\xaa\x9b\xb8\xe2\x80\x8d\xe3\x80\x82\xe4\x9c\x96"); } // [C2, V7]
7884test { try toAsciiFail("\xf3\x88\xab\x9d\xf2\xaa\x9b\xb8\xe2\x80\x8d\xe3\x80\x82\xe4\x9c\x96", false); } // [C2, V7]
7885test { try toAsciiFail("\xf3\x88\xab\x9d\xf2\xaa\x9b\xb8\xe2\x80\x8d\xe3\x80\x82\xe4\x9c\x96", true); } // [V7]
3328test { try toUnicodeFail("xn--g138cxw05a.xn--k0o"); } // [V7]7886test { try toUnicodeFail("xn--g138cxw05a.xn--k0o"); } // [V7]
7887test { try toAsciiFail("xn--g138cxw05a.xn--k0o", false); } // [V7]
7888test { try toAsciiFail("xn--g138cxw05a.xn--k0o", true); } // [V7]
3329test { try toUnicodeFail("xn--1ug30527h9mxi.xn--k0o"); } // [C2, V7]7889test { try toUnicodeFail("xn--1ug30527h9mxi.xn--k0o"); } // [C2, V7]
7890test { try toAsciiFail("xn--1ug30527h9mxi.xn--k0o", false); } // [C2, V7]
7891test { try toAsciiFail("xn--1ug30527h9mxi.xn--k0o", true); } // [C2, V7]
3330test { try toUnicodeFail("\xe1\xa1\xaf\xe2\x9a\x89\xe5\xa7\xb6\xf0\x9f\x84\x89\xef\xbc\x8e\xdb\xb7\xe2\x80\x8d\xf0\x9f\x8e\xaa\xe2\x80\x8d"); } // [C2, U1]7892test { try toUnicodeFail("\xe1\xa1\xaf\xe2\x9a\x89\xe5\xa7\xb6\xf0\x9f\x84\x89\xef\xbc\x8e\xdb\xb7\xe2\x80\x8d\xf0\x9f\x8e\xaa\xe2\x80\x8d"); } // [C2, U1]
7893test { try toAsciiFail("\xe1\xa1\xaf\xe2\x9a\x89\xe5\xa7\xb6\xf0\x9f\x84\x89\xef\xbc\x8e\xdb\xb7\xe2\x80\x8d\xf0\x9f\x8e\xaa\xe2\x80\x8d", false); } // [C2, U1]
7894test { try toAsciiFail("\xe1\xa1\xaf\xe2\x9a\x89\xe5\xa7\xb6\xf0\x9f\x84\x89\xef\xbc\x8e\xdb\xb7\xe2\x80\x8d\xf0\x9f\x8e\xaa\xe2\x80\x8d", true); } // [U1]
3331test { try toUnicodeFail("\xe1\xa1\xaf\xe2\x9a\x89\xe5\xa7\xb68,.\xdb\xb7\xe2\x80\x8d\xf0\x9f\x8e\xaa\xe2\x80\x8d"); } // [C2, U1]7895test { try toUnicodeFail("\xe1\xa1\xaf\xe2\x9a\x89\xe5\xa7\xb68,.\xdb\xb7\xe2\x80\x8d\xf0\x9f\x8e\xaa\xe2\x80\x8d"); } // [C2, U1]
7896test { try toAsciiFail("\xe1\xa1\xaf\xe2\x9a\x89\xe5\xa7\xb68,.\xdb\xb7\xe2\x80\x8d\xf0\x9f\x8e\xaa\xe2\x80\x8d", false); } // [C2, U1]
7897test { try toAsciiFail("\xe1\xa1\xaf\xe2\x9a\x89\xe5\xa7\xb68,.\xdb\xb7\xe2\x80\x8d\xf0\x9f\x8e\xaa\xe2\x80\x8d", true); } // [U1]
3332test { try toUnicodeFail("xn--8,-g9oy26fzu4d.xn--kmb6733w"); } // [U1]7898test { try toUnicodeFail("xn--8,-g9oy26fzu4d.xn--kmb6733w"); } // [U1]
7899test { try toAsciiFail("xn--8,-g9oy26fzu4d.xn--kmb6733w", false); } // [U1]
7900test { try toAsciiFail("xn--8,-g9oy26fzu4d.xn--kmb6733w", true); } // [U1]
3333test { try toUnicodeFail("xn--8,-g9oy26fzu4d.xn--kmb859ja94998b"); } // [C2, U1]7901test { try toUnicodeFail("xn--8,-g9oy26fzu4d.xn--kmb859ja94998b"); } // [C2, U1]
7902test { try toAsciiFail("xn--8,-g9oy26fzu4d.xn--kmb859ja94998b", false); } // [C2, U1]
7903test { try toAsciiFail("xn--8,-g9oy26fzu4d.xn--kmb859ja94998b", true); } // [C2, U1]
3334test { try toUnicodeFail("xn--c9e433epi4b3j20a.xn--kmb6733w"); } // [V7]7904test { try toUnicodeFail("xn--c9e433epi4b3j20a.xn--kmb6733w"); } // [V7]
7905test { try toAsciiFail("xn--c9e433epi4b3j20a.xn--kmb6733w", false); } // [V7]
7906test { try toAsciiFail("xn--c9e433epi4b3j20a.xn--kmb6733w", true); } // [V7]
3335test { try toUnicodeFail("xn--c9e433epi4b3j20a.xn--kmb859ja94998b"); } // [C2, V7]7907test { try toUnicodeFail("xn--c9e433epi4b3j20a.xn--kmb859ja94998b"); } // [C2, V7]
7908test { try toAsciiFail("xn--c9e433epi4b3j20a.xn--kmb859ja94998b", false); } // [C2, V7]
7909test { try toAsciiFail("xn--c9e433epi4b3j20a.xn--kmb859ja94998b", true); } // [C2, V7]
3336test { try toUnicodeFail("\xf0\x9e\xbd\x80.\xf0\x90\xb9\xb8\xf0\x9f\x9a\x96\xe0\xb8\xba"); } // [B1, V7]7910test { try toUnicodeFail("\xf0\x9e\xbd\x80.\xf0\x90\xb9\xb8\xf0\x9f\x9a\x96\xe0\xb8\xba"); } // [B1, V7]
7911test { try toAsciiFail("\xf0\x9e\xbd\x80.\xf0\x90\xb9\xb8\xf0\x9f\x9a\x96\xe0\xb8\xba", false); } // [B1, V7]
7912test { try toAsciiFail("\xf0\x9e\xbd\x80.\xf0\x90\xb9\xb8\xf0\x9f\x9a\x96\xe0\xb8\xba", true); } // [B1, V7]
3337test { try toUnicodeFail("xn--0n7h.xn--o4c9032klszf"); } // [B1, V7]7913test { try toUnicodeFail("xn--0n7h.xn--o4c9032klszf"); } // [B1, V7]
7914test { try toAsciiFail("xn--0n7h.xn--o4c9032klszf", false); } // [B1, V7]
7915test { try toAsciiFail("xn--0n7h.xn--o4c9032klszf", true); } // [B1, V7]
3338test { try toUnicodeFail("\xe1\x82\xb4\xe1\xa0\xb5\xef\xbd\xa1\xf0\x90\xb9\xa7\xdd\x87\xdb\xb9"); } // [B1]7916test { try toUnicodeFail("\xe1\x82\xb4\xe1\xa0\xb5\xef\xbd\xa1\xf0\x90\xb9\xa7\xdd\x87\xdb\xb9"); } // [B1]
7917test { try toAsciiFail("\xe1\x82\xb4\xe1\xa0\xb5\xef\xbd\xa1\xf0\x90\xb9\xa7\xdd\x87\xdb\xb9", false); } // [B1]
7918test { try toAsciiFail("\xe1\x82\xb4\xe1\xa0\xb5\xef\xbd\xa1\xf0\x90\xb9\xa7\xdd\x87\xdb\xb9", true); } // [B1]
3339test { try toUnicodeFail("\xe1\x82\xb4\xe1\xa0\xb5\xe3\x80\x82\xf0\x90\xb9\xa7\xdd\x87\xdb\xb9"); } // [B1]7919test { try toUnicodeFail("\xe1\x82\xb4\xe1\xa0\xb5\xe3\x80\x82\xf0\x90\xb9\xa7\xdd\x87\xdb\xb9"); } // [B1]
7920test { try toAsciiFail("\xe1\x82\xb4\xe1\xa0\xb5\xe3\x80\x82\xf0\x90\xb9\xa7\xdd\x87\xdb\xb9", false); } // [B1]
7921test { try toAsciiFail("\xe1\x82\xb4\xe1\xa0\xb5\xe3\x80\x82\xf0\x90\xb9\xa7\xdd\x87\xdb\xb9", true); } // [B1]
3340test { try toUnicodeFail("\xe2\xb4\x94\xe1\xa0\xb5\xe3\x80\x82\xf0\x90\xb9\xa7\xdd\x87\xdb\xb9"); } // [B1]7922test { try toUnicodeFail("\xe2\xb4\x94\xe1\xa0\xb5\xe3\x80\x82\xf0\x90\xb9\xa7\xdd\x87\xdb\xb9"); } // [B1]
7923test { try toAsciiFail("\xe2\xb4\x94\xe1\xa0\xb5\xe3\x80\x82\xf0\x90\xb9\xa7\xdd\x87\xdb\xb9", false); } // [B1]
7924test { try toAsciiFail("\xe2\xb4\x94\xe1\xa0\xb5\xe3\x80\x82\xf0\x90\xb9\xa7\xdd\x87\xdb\xb9", true); } // [B1]
3341test { try toUnicodeFail("xn--o7e997h.xn--mmb9ml895e"); } // [B1]7925test { try toUnicodeFail("xn--o7e997h.xn--mmb9ml895e"); } // [B1]
7926test { try toAsciiFail("xn--o7e997h.xn--mmb9ml895e", false); } // [B1]
7927test { try toAsciiFail("xn--o7e997h.xn--mmb9ml895e", true); } // [B1]
3342test { try toUnicodeFail("\xe2\xb4\x94\xe1\xa0\xb5\xef\xbd\xa1\xf0\x90\xb9\xa7\xdd\x87\xdb\xb9"); } // [B1]7928test { try toUnicodeFail("\xe2\xb4\x94\xe1\xa0\xb5\xef\xbd\xa1\xf0\x90\xb9\xa7\xdd\x87\xdb\xb9"); } // [B1]
7929test { try toAsciiFail("\xe2\xb4\x94\xe1\xa0\xb5\xef\xbd\xa1\xf0\x90\xb9\xa7\xdd\x87\xdb\xb9", false); } // [B1]
7930test { try toAsciiFail("\xe2\xb4\x94\xe1\xa0\xb5\xef\xbd\xa1\xf0\x90\xb9\xa7\xdd\x87\xdb\xb9", true); } // [B1]
3343test { try toUnicodeFail("xn--snd659a.xn--mmb9ml895e"); } // [B1, V7]7931test { try toUnicodeFail("xn--snd659a.xn--mmb9ml895e"); } // [B1, V7]
7932test { try toAsciiFail("xn--snd659a.xn--mmb9ml895e", false); } // [B1, V7]
7933test { try toAsciiFail("xn--snd659a.xn--mmb9ml895e", true); } // [B1, V7]
3344test { try toUnicodeFail("\xe1\x8d\x9f\xe1\xa1\x88\xe2\x80\x8c\xef\xbc\x8e\xef\xb8\x92-\xf0\x96\xbe\x90-"); } // [C1, V3, V6, V7]7934test { try toUnicodeFail("\xe1\x8d\x9f\xe1\xa1\x88\xe2\x80\x8c\xef\xbc\x8e\xef\xb8\x92-\xf0\x96\xbe\x90-"); } // [C1, V3, V6, V7]
7935test { try toAsciiFail("\xe1\x8d\x9f\xe1\xa1\x88\xe2\x80\x8c\xef\xbc\x8e\xef\xb8\x92-\xf0\x96\xbe\x90-", false); } // [C1, V3, V6, V7]
7936test { try toAsciiFail("\xe1\x8d\x9f\xe1\xa1\x88\xe2\x80\x8c\xef\xbc\x8e\xef\xb8\x92-\xf0\x96\xbe\x90-", true); } // [V3, V6, V7]
3345test { try toUnicodeFail("\xe1\x8d\x9f\xe1\xa1\x88\xe2\x80\x8c.\xe3\x80\x82-\xf0\x96\xbe\x90-"); } // [C1, V3, V6, X4_2]7937test { try toUnicodeFail("\xe1\x8d\x9f\xe1\xa1\x88\xe2\x80\x8c.\xe3\x80\x82-\xf0\x96\xbe\x90-"); } // [C1, V3, V6, X4_2]
7938test { try toAsciiFail("\xe1\x8d\x9f\xe1\xa1\x88\xe2\x80\x8c.\xe3\x80\x82-\xf0\x96\xbe\x90-", false); } // [C1, V3, V6, A4_2]
7939test { try toAsciiFail("\xe1\x8d\x9f\xe1\xa1\x88\xe2\x80\x8c.\xe3\x80\x82-\xf0\x96\xbe\x90-", true); } // [V3, V6, A4_2]
3346test { try toUnicodeFail("xn--b7d82w..xn-----pe4u"); } // [V3, V6, X4_2]7940test { try toUnicodeFail("xn--b7d82w..xn-----pe4u"); } // [V3, V6, X4_2]
7941test { try toAsciiFail("xn--b7d82w..xn-----pe4u", false); } // [V3, V6, A4_2]
7942test { try toAsciiFail("xn--b7d82w..xn-----pe4u", true); } // [V3, V6, A4_2]
3347test { try toUnicodeFail("xn--b7d82wo4h..xn-----pe4u"); } // [C1, V3, V6, X4_2]7943test { try toUnicodeFail("xn--b7d82wo4h..xn-----pe4u"); } // [C1, V3, V6, X4_2]
7944test { try toAsciiFail("xn--b7d82wo4h..xn-----pe4u", false); } // [C1, V3, V6, A4_2]
7945test { try toAsciiFail("xn--b7d82wo4h..xn-----pe4u", true); } // [C1, V3, V6, A4_2]
3348test { try toUnicodeFail("xn--b7d82w.xn-----c82nz547a"); } // [V3, V6, V7]7946test { try toUnicodeFail("xn--b7d82w.xn-----c82nz547a"); } // [V3, V6, V7]
7947test { try toAsciiFail("xn--b7d82w.xn-----c82nz547a", false); } // [V3, V6, V7]
7948test { try toAsciiFail("xn--b7d82w.xn-----c82nz547a", true); } // [V3, V6, V7]
3349test { try toUnicodeFail("xn--b7d82wo4h.xn-----c82nz547a"); } // [C1, V3, V6, V7]7949test { try toUnicodeFail("xn--b7d82wo4h.xn-----c82nz547a"); } // [C1, V3, V6, V7]
7950test { try toAsciiFail("xn--b7d82wo4h.xn-----c82nz547a", false); } // [C1, V3, V6, V7]
7951test { try toAsciiFail("xn--b7d82wo4h.xn-----c82nz547a", true); } // [C1, V3, V6, V7]
3350test { try toUnicodeFail("\xe2\x92\x88\xd8\x81\xe2\x92\x96\xe2\x80\x8c.\xe1\xb7\xb0\xdf\x9b"); } // [B1, C1, V6, V7]7952test { try toUnicodeFail("\xe2\x92\x88\xd8\x81\xe2\x92\x96\xe2\x80\x8c.\xe1\xb7\xb0\xdf\x9b"); } // [B1, C1, V6, V7]
7953test { try toAsciiFail("\xe2\x92\x88\xd8\x81\xe2\x92\x96\xe2\x80\x8c.\xe1\xb7\xb0\xdf\x9b", false); } // [B1, C1, V6, V7]
7954test { try toAsciiFail("\xe2\x92\x88\xd8\x81\xe2\x92\x96\xe2\x80\x8c.\xe1\xb7\xb0\xdf\x9b", true); } // [B1, V6, V7]
3351test { try toUnicodeFail("1.\xd8\x8115.\xe2\x80\x8c.\xe1\xb7\xb0\xdf\x9b"); } // [B1, C1, V6, V7]7955test { try toUnicodeFail("1.\xd8\x8115.\xe2\x80\x8c.\xe1\xb7\xb0\xdf\x9b"); } // [B1, C1, V6, V7]
7956test { try toAsciiFail("1.\xd8\x8115.\xe2\x80\x8c.\xe1\xb7\xb0\xdf\x9b", false); } // [B1, C1, V6, V7]
7957test { try toAsciiFail("1.\xd8\x8115.\xe2\x80\x8c.\xe1\xb7\xb0\xdf\x9b", true); } // [B1, V6, V7, A4_2]
3352test { try toUnicodeFail("1.xn--15-1pd..xn--2sb914i"); } // [B1, V6, V7, X4_2]7958test { try toUnicodeFail("1.xn--15-1pd..xn--2sb914i"); } // [B1, V6, V7, X4_2]
7959test { try toAsciiFail("1.xn--15-1pd..xn--2sb914i", false); } // [B1, V6, V7, A4_2]
7960test { try toAsciiFail("1.xn--15-1pd..xn--2sb914i", true); } // [B1, V6, V7, A4_2]
3353test { try toUnicodeFail("1.xn--15-1pd.xn--0ug.xn--2sb914i"); } // [B1, C1, V6, V7]7961test { try toUnicodeFail("1.xn--15-1pd.xn--0ug.xn--2sb914i"); } // [B1, C1, V6, V7]
7962test { try toAsciiFail("1.xn--15-1pd.xn--0ug.xn--2sb914i", false); } // [B1, C1, V6, V7]
7963test { try toAsciiFail("1.xn--15-1pd.xn--0ug.xn--2sb914i", true); } // [B1, C1, V6, V7]
3354test { try toUnicodeFail("xn--jfb347mib.xn--2sb914i"); } // [B1, V6, V7]7964test { try toUnicodeFail("xn--jfb347mib.xn--2sb914i"); } // [B1, V6, V7]
7965test { try toAsciiFail("xn--jfb347mib.xn--2sb914i", false); } // [B1, V6, V7]
7966test { try toAsciiFail("xn--jfb347mib.xn--2sb914i", true); } // [B1, V6, V7]
3355test { try toUnicodeFail("xn--jfb844kmfdwb.xn--2sb914i"); } // [B1, C1, V6, V7]7967test { try toUnicodeFail("xn--jfb844kmfdwb.xn--2sb914i"); } // [B1, C1, V6, V7]
7968test { try toAsciiFail("xn--jfb844kmfdwb.xn--2sb914i", false); } // [B1, C1, V6, V7]
7969test { try toAsciiFail("xn--jfb844kmfdwb.xn--2sb914i", true); } // [B1, C1, V6, V7]
3356test { try toUnicodeFail("\xf0\x9d\xa9\x9c\xe3\x80\x82-\xe0\xad\x8d\xe1\x82\xab"); } // [V3, V6]7970test { try toUnicodeFail("\xf0\x9d\xa9\x9c\xe3\x80\x82-\xe0\xad\x8d\xe1\x82\xab"); } // [V3, V6]
7971test { try toAsciiFail("\xf0\x9d\xa9\x9c\xe3\x80\x82-\xe0\xad\x8d\xe1\x82\xab", false); } // [V3, V6]
7972test { try toAsciiFail("\xf0\x9d\xa9\x9c\xe3\x80\x82-\xe0\xad\x8d\xe1\x82\xab", true); } // [V3, V6]
3357test { try toUnicodeFail("\xf0\x9d\xa9\x9c\xe3\x80\x82-\xe0\xad\x8d\xe2\xb4\x8b"); } // [V3, V6]7973test { try toUnicodeFail("\xf0\x9d\xa9\x9c\xe3\x80\x82-\xe0\xad\x8d\xe2\xb4\x8b"); } // [V3, V6]
7974test { try toAsciiFail("\xf0\x9d\xa9\x9c\xe3\x80\x82-\xe0\xad\x8d\xe2\xb4\x8b", false); } // [V3, V6]
7975test { try toAsciiFail("\xf0\x9d\xa9\x9c\xe3\x80\x82-\xe0\xad\x8d\xe2\xb4\x8b", true); } // [V3, V6]
3358test { try toUnicodeFail("xn--792h.xn----bse820x"); } // [V3, V6]7976test { try toUnicodeFail("xn--792h.xn----bse820x"); } // [V3, V6]
7977test { try toAsciiFail("xn--792h.xn----bse820x", false); } // [V3, V6]
7978test { try toAsciiFail("xn--792h.xn----bse820x", true); } // [V3, V6]
3359test { try toUnicodeFail("xn--792h.xn----bse632b"); } // [V3, V6, V7]7979test { try toUnicodeFail("xn--792h.xn----bse632b"); } // [V3, V6, V7]
7980test { try toAsciiFail("xn--792h.xn----bse632b", false); } // [V3, V6, V7]
7981test { try toAsciiFail("xn--792h.xn----bse632b", true); } // [V3, V6, V7]
3360test { try toUnicodeFail("\xc3\x9f\xe1\x83\x80.\xd8\xa0\xe5\x88\xaf\xe1\x82\xbd"); } // [B2, B3]7982test { try toUnicodeFail("\xc3\x9f\xe1\x83\x80.\xd8\xa0\xe5\x88\xaf\xe1\x82\xbd"); } // [B2, B3]
7983test { try toAsciiFail("\xc3\x9f\xe1\x83\x80.\xd8\xa0\xe5\x88\xaf\xe1\x82\xbd", false); } // [B2, B3]
7984test { try toAsciiFail("\xc3\x9f\xe1\x83\x80.\xd8\xa0\xe5\x88\xaf\xe1\x82\xbd", true); } // [B2, B3]
3361test { try toUnicodeFail("\xc3\x9f\xe2\xb4\xa0.\xd8\xa0\xe5\x88\xaf\xe2\xb4\x9d"); } // [B2, B3]7985test { try toUnicodeFail("\xc3\x9f\xe2\xb4\xa0.\xd8\xa0\xe5\x88\xaf\xe2\xb4\x9d"); } // [B2, B3]
7986test { try toAsciiFail("\xc3\x9f\xe2\xb4\xa0.\xd8\xa0\xe5\x88\xaf\xe2\xb4\x9d", false); } // [B2, B3]
7987test { try toAsciiFail("\xc3\x9f\xe2\xb4\xa0.\xd8\xa0\xe5\x88\xaf\xe2\xb4\x9d", true); } // [B2, B3]
3362test { try toUnicodeFail("SS\xe1\x83\x80.\xd8\xa0\xe5\x88\xaf\xe1\x82\xbd"); } // [B2, B3]7988test { try toUnicodeFail("SS\xe1\x83\x80.\xd8\xa0\xe5\x88\xaf\xe1\x82\xbd"); } // [B2, B3]
7989test { try toAsciiFail("SS\xe1\x83\x80.\xd8\xa0\xe5\x88\xaf\xe1\x82\xbd", false); } // [B2, B3]
7990test { try toAsciiFail("SS\xe1\x83\x80.\xd8\xa0\xe5\x88\xaf\xe1\x82\xbd", true); } // [B2, B3]
3363test { try toUnicodeFail("ss\xe2\xb4\xa0.\xd8\xa0\xe5\x88\xaf\xe2\xb4\x9d"); } // [B2, B3]7991test { try toUnicodeFail("ss\xe2\xb4\xa0.\xd8\xa0\xe5\x88\xaf\xe2\xb4\x9d"); } // [B2, B3]
7992test { try toAsciiFail("ss\xe2\xb4\xa0.\xd8\xa0\xe5\x88\xaf\xe2\xb4\x9d", false); } // [B2, B3]
7993test { try toAsciiFail("ss\xe2\xb4\xa0.\xd8\xa0\xe5\x88\xaf\xe2\xb4\x9d", true); } // [B2, B3]
3364test { try toUnicodeFail("Ss\xe2\xb4\xa0.\xd8\xa0\xe5\x88\xaf\xe1\x82\xbd"); } // [B2, B3]7994test { try toUnicodeFail("Ss\xe2\xb4\xa0.\xd8\xa0\xe5\x88\xaf\xe1\x82\xbd"); } // [B2, B3]
7995test { try toAsciiFail("Ss\xe2\xb4\xa0.\xd8\xa0\xe5\x88\xaf\xe1\x82\xbd", false); } // [B2, B3]
7996test { try toAsciiFail("Ss\xe2\xb4\xa0.\xd8\xa0\xe5\x88\xaf\xe1\x82\xbd", true); } // [B2, B3]
3365test { try toUnicodeFail("xn--ss-j81a.xn--fgb670rovy"); } // [B2, B3]7997test { try toUnicodeFail("xn--ss-j81a.xn--fgb670rovy"); } // [B2, B3]
7998test { try toAsciiFail("xn--ss-j81a.xn--fgb670rovy", false); } // [B2, B3]
7999test { try toAsciiFail("xn--ss-j81a.xn--fgb670rovy", true); } // [B2, B3]
3366test { try toUnicodeFail("xn--zca277t.xn--fgb670rovy"); } // [B2, B3]8000test { try toUnicodeFail("xn--zca277t.xn--fgb670rovy"); } // [B2, B3]
8001test { try toAsciiFail("xn--zca277t.xn--fgb670rovy", false); } // [B2, B3]
8002test { try toAsciiFail("xn--zca277t.xn--fgb670rovy", true); } // [B2, B3]
3367test { try toUnicodeFail("xn--ss-j81a.xn--fgb845cb66c"); } // [B2, B3, V7]8003test { try toUnicodeFail("xn--ss-j81a.xn--fgb845cb66c"); } // [B2, B3, V7]
8004test { try toAsciiFail("xn--ss-j81a.xn--fgb845cb66c", false); } // [B2, B3, V7]
8005test { try toAsciiFail("xn--ss-j81a.xn--fgb845cb66c", true); } // [B2, B3, V7]
3368test { try toUnicodeFail("xn--ss-wgk.xn--fgb845cb66c"); } // [B2, B3, V7]8006test { try toUnicodeFail("xn--ss-wgk.xn--fgb845cb66c"); } // [B2, B3, V7]
8007test { try toAsciiFail("xn--ss-wgk.xn--fgb845cb66c", false); } // [B2, B3, V7]
8008test { try toAsciiFail("xn--ss-wgk.xn--fgb845cb66c", true); } // [B2, B3, V7]
3369test { try toUnicodeFail("xn--zca442f.xn--fgb845cb66c"); } // [B2, B3, V7]8009test { try toUnicodeFail("xn--zca442f.xn--fgb845cb66c"); } // [B2, B3, V7]
8010test { try toAsciiFail("xn--zca442f.xn--fgb845cb66c", false); } // [B2, B3, V7]
8011test { try toAsciiFail("xn--zca442f.xn--fgb845cb66c", true); } // [B2, B3, V7]
3370test { try toUnicodeFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x84\xb2\xef\xbd\xa1\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3"); } // [B5, B6, V6]8012test { try toUnicodeFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x84\xb2\xef\xbd\xa1\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3"); } // [B5, B6, V6]
8013test { try toAsciiFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x84\xb2\xef\xbd\xa1\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3", false); } // [B5, B6, V6]
8014test { try toAsciiFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x84\xb2\xef\xbd\xa1\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3", true); } // [B5, B6, V6]
3371test { try toUnicodeFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x84\xb2\xef\xbd\xa1\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3"); } // [B5, B6, V6]8015test { try toUnicodeFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x84\xb2\xef\xbd\xa1\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3"); } // [B5, B6, V6]
8016test { try toAsciiFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x84\xb2\xef\xbd\xa1\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3", false); } // [B5, B6, V6]
8017test { try toAsciiFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x84\xb2\xef\xbd\xa1\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3", true); } // [B5, B6, V6]
3372test { try toUnicodeFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x84\xb2\xe3\x80\x82\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3"); } // [B5, B6, V6]8018test { try toUnicodeFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x84\xb2\xe3\x80\x82\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3"); } // [B5, B6, V6]
8019test { try toAsciiFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x84\xb2\xe3\x80\x82\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3", false); } // [B5, B6, V6]
8020test { try toAsciiFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x84\xb2\xe3\x80\x82\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3", true); } // [B5, B6, V6]
3373test { try toUnicodeFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x84\xb2\xe3\x80\x82\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3"); } // [B5, B6, V6]8021test { try toUnicodeFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x84\xb2\xe3\x80\x82\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3"); } // [B5, B6, V6]
8022test { try toAsciiFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x84\xb2\xe3\x80\x82\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3", false); } // [B5, B6, V6]
8023test { try toAsciiFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x84\xb2\xe3\x80\x82\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3", true); } // [B5, B6, V6]
3374test { try toUnicodeFail("\xe1\xae\xaa\xe2\xb4\x83\xe2\x85\x8e\xe3\x80\x82\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3"); } // [B5, B6, V6]8024test { try toUnicodeFail("\xe1\xae\xaa\xe2\xb4\x83\xe2\x85\x8e\xe3\x80\x82\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3"); } // [B5, B6, V6]
8025test { try toAsciiFail("\xe1\xae\xaa\xe2\xb4\x83\xe2\x85\x8e\xe3\x80\x82\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3", false); } // [B5, B6, V6]
8026test { try toAsciiFail("\xe1\xae\xaa\xe2\xb4\x83\xe2\x85\x8e\xe3\x80\x82\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3", true); } // [B5, B6, V6]
3375test { try toUnicodeFail("\xe1\xae\xaa\xe2\xb4\x83\xe2\x85\x8e\xe3\x80\x82\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3"); } // [B5, B6, V6]8027test { try toUnicodeFail("\xe1\xae\xaa\xe2\xb4\x83\xe2\x85\x8e\xe3\x80\x82\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3"); } // [B5, B6, V6]
8028test { try toAsciiFail("\xe1\xae\xaa\xe2\xb4\x83\xe2\x85\x8e\xe3\x80\x82\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3", false); } // [B5, B6, V6]
8029test { try toAsciiFail("\xe1\xae\xaa\xe2\xb4\x83\xe2\x85\x8e\xe3\x80\x82\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3", true); } // [B5, B6, V6]
3376test { try toUnicodeFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x85\x8e\xe3\x80\x82\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3"); } // [B5, B6, V6]8030test { try toUnicodeFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x85\x8e\xe3\x80\x82\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3"); } // [B5, B6, V6]
8031test { try toAsciiFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x85\x8e\xe3\x80\x82\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3", false); } // [B5, B6, V6]
8032test { try toAsciiFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x85\x8e\xe3\x80\x82\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3", true); } // [B5, B6, V6]
3377test { try toUnicodeFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x85\x8e\xe3\x80\x82\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3"); } // [B5, B6, V6]8033test { try toUnicodeFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x85\x8e\xe3\x80\x82\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3"); } // [B5, B6, V6]
8034test { try toAsciiFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x85\x8e\xe3\x80\x82\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3", false); } // [B5, B6, V6]
8035test { try toAsciiFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x85\x8e\xe3\x80\x82\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3", true); } // [B5, B6, V6]
3378test { try toUnicodeFail("xn--yxf24x4ol.xn--sib102gc69k"); } // [B5, B6, V6]8036test { try toUnicodeFail("xn--yxf24x4ol.xn--sib102gc69k"); } // [B5, B6, V6]
8037test { try toAsciiFail("xn--yxf24x4ol.xn--sib102gc69k", false); } // [B5, B6, V6]
8038test { try toAsciiFail("xn--yxf24x4ol.xn--sib102gc69k", true); } // [B5, B6, V6]
3379test { try toUnicodeFail("\xe1\xae\xaa\xe2\xb4\x83\xe2\x85\x8e\xef\xbd\xa1\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3"); } // [B5, B6, V6]8039test { try toUnicodeFail("\xe1\xae\xaa\xe2\xb4\x83\xe2\x85\x8e\xef\xbd\xa1\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3"); } // [B5, B6, V6]
8040test { try toAsciiFail("\xe1\xae\xaa\xe2\xb4\x83\xe2\x85\x8e\xef\xbd\xa1\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3", false); } // [B5, B6, V6]
8041test { try toAsciiFail("\xe1\xae\xaa\xe2\xb4\x83\xe2\x85\x8e\xef\xbd\xa1\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3", true); } // [B5, B6, V6]
3380test { try toUnicodeFail("\xe1\xae\xaa\xe2\xb4\x83\xe2\x85\x8e\xef\xbd\xa1\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3"); } // [B5, B6, V6]8042test { try toUnicodeFail("\xe1\xae\xaa\xe2\xb4\x83\xe2\x85\x8e\xef\xbd\xa1\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3"); } // [B5, B6, V6]
8043test { try toAsciiFail("\xe1\xae\xaa\xe2\xb4\x83\xe2\x85\x8e\xef\xbd\xa1\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3", false); } // [B5, B6, V6]
8044test { try toAsciiFail("\xe1\xae\xaa\xe2\xb4\x83\xe2\x85\x8e\xef\xbd\xa1\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3", true); } // [B5, B6, V6]
3381test { try toUnicodeFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x85\x8e\xef\xbd\xa1\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3"); } // [B5, B6, V6]8045test { try toUnicodeFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x85\x8e\xef\xbd\xa1\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3"); } // [B5, B6, V6]
8046test { try toAsciiFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x85\x8e\xef\xbd\xa1\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3", false); } // [B5, B6, V6]
8047test { try toAsciiFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x85\x8e\xef\xbd\xa1\xe1\xa0\xb3\xed\x88\xbb\xd9\xb3", true); } // [B5, B6, V6]
3382test { try toUnicodeFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x85\x8e\xef\xbd\xa1\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3"); } // [B5, B6, V6]8048test { try toUnicodeFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x85\x8e\xef\xbd\xa1\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3"); } // [B5, B6, V6]
8049test { try toAsciiFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x85\x8e\xef\xbd\xa1\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3", false); } // [B5, B6, V6]
8050test { try toAsciiFail("\xe1\xae\xaa\xe1\x82\xa3\xe2\x85\x8e\xef\xbd\xa1\xe1\xa0\xb3\xe1\x84\x90\xe1\x85\xae\xe1\x86\xb6\xd9\xb3", true); } // [B5, B6, V6]
3383test { try toUnicodeFail("xn--bnd957c2pe.xn--sib102gc69k"); } // [B5, B6, V6, V7]8051test { try toUnicodeFail("xn--bnd957c2pe.xn--sib102gc69k"); } // [B5, B6, V6, V7]
8052test { try toAsciiFail("xn--bnd957c2pe.xn--sib102gc69k", false); } // [B5, B6, V6, V7]
8053test { try toAsciiFail("xn--bnd957c2pe.xn--sib102gc69k", true); } // [B5, B6, V6, V7]
3384test { try toUnicodeFail("xn--bnd957cone.xn--sib102gc69k"); } // [B5, B6, V6, V7]8054test { try toUnicodeFail("xn--bnd957cone.xn--sib102gc69k"); } // [B5, B6, V6, V7]
8055test { try toAsciiFail("xn--bnd957cone.xn--sib102gc69k", false); } // [B5, B6, V6, V7]
8056test { try toAsciiFail("xn--bnd957cone.xn--sib102gc69k", true); } // [B5, B6, V6, V7]
3385test { try toUnicodeFail("\xdb\xac.\xe0\xa2\xa2\xf0\x90\xb9\xab\xd9\xbc"); } // [B1, V6]8057test { try toUnicodeFail("\xdb\xac.\xe0\xa2\xa2\xf0\x90\xb9\xab\xd9\xbc"); } // [B1, V6]
8058test { try toAsciiFail("\xdb\xac.\xe0\xa2\xa2\xf0\x90\xb9\xab\xd9\xbc", false); } // [B1, V6]
8059test { try toAsciiFail("\xdb\xac.\xe0\xa2\xa2\xf0\x90\xb9\xab\xd9\xbc", true); } // [B1, V6]
3386test { try toUnicodeFail("xn--8lb.xn--1ib31ily45b"); } // [B1, V6]8060test { try toUnicodeFail("xn--8lb.xn--1ib31ily45b"); } // [B1, V6]
8061test { try toAsciiFail("xn--8lb.xn--1ib31ily45b", false); } // [B1, V6]
8062test { try toAsciiFail("xn--8lb.xn--1ib31ily45b", true); } // [B1, V6]
3387test { try toUnicodeFail("\xda\xb6\xdb\x9f\xe3\x80\x82\xe2\x82\x87\xea\xa0\x86"); } // [B1]8063test { try toUnicodeFail("\xda\xb6\xdb\x9f\xe3\x80\x82\xe2\x82\x87\xea\xa0\x86"); } // [B1]
8064test { try toAsciiFail("\xda\xb6\xdb\x9f\xe3\x80\x82\xe2\x82\x87\xea\xa0\x86", false); } // [B1]
8065test { try toAsciiFail("\xda\xb6\xdb\x9f\xe3\x80\x82\xe2\x82\x87\xea\xa0\x86", true); } // [B1]
3388test { try toUnicodeFail("\xda\xb6\xdb\x9f\xe3\x80\x827\xea\xa0\x86"); } // [B1]8066test { try toUnicodeFail("\xda\xb6\xdb\x9f\xe3\x80\x827\xea\xa0\x86"); } // [B1]
8067test { try toAsciiFail("\xda\xb6\xdb\x9f\xe3\x80\x827\xea\xa0\x86", false); } // [B1]
8068test { try toAsciiFail("\xda\xb6\xdb\x9f\xe3\x80\x827\xea\xa0\x86", true); } // [B1]
3389test { try toUnicodeFail("xn--pkb6f.xn--7-x93e"); } // [B1]8069test { try toUnicodeFail("xn--pkb6f.xn--7-x93e"); } // [B1]
8070test { try toAsciiFail("xn--pkb6f.xn--7-x93e", false); } // [B1]
8071test { try toAsciiFail("xn--pkb6f.xn--7-x93e", true); } // [B1]
3390test { try toUnicodeFail("\xda\xb6\xdb\x9f.7\xea\xa0\x86"); } // [B1]8072test { try toUnicodeFail("\xda\xb6\xdb\x9f.7\xea\xa0\x86"); } // [B1]
8073test { try toAsciiFail("\xda\xb6\xdb\x9f.7\xea\xa0\x86", false); } // [B1]
8074test { try toAsciiFail("\xda\xb6\xdb\x9f.7\xea\xa0\x86", true); } // [B1]
3391test { try toUnicodeFail("\xe1\x83\x83\xf0\x90\xb9\xbb.\xe2\x80\x8c\xf0\x9d\xaa\xa3\xe2\x89\xae\xf3\xa0\xa9\x89"); } // [B1, B5, B6, C1, V7]8075test { try toUnicodeFail("\xe1\x83\x83\xf0\x90\xb9\xbb.\xe2\x80\x8c\xf0\x9d\xaa\xa3\xe2\x89\xae\xf3\xa0\xa9\x89"); } // [B1, B5, B6, C1, V7]
8076test { try toAsciiFail("\xe1\x83\x83\xf0\x90\xb9\xbb.\xe2\x80\x8c\xf0\x9d\xaa\xa3\xe2\x89\xae\xf3\xa0\xa9\x89", false); } // [B1, B5, B6, C1, V7]
8077test { try toAsciiFail("\xe1\x83\x83\xf0\x90\xb9\xbb.\xe2\x80\x8c\xf0\x9d\xaa\xa3\xe2\x89\xae\xf3\xa0\xa9\x89", true); } // [B1, B5, B6, V6, V7]
3392test { try toUnicodeFail("\xe1\x83\x83\xf0\x90\xb9\xbb.\xe2\x80\x8c\xf0\x9d\xaa\xa3<\xcc\xb8\xf3\xa0\xa9\x89"); } // [B1, B5, B6, C1, V7]8078test { try toUnicodeFail("\xe1\x83\x83\xf0\x90\xb9\xbb.\xe2\x80\x8c\xf0\x9d\xaa\xa3<\xcc\xb8\xf3\xa0\xa9\x89"); } // [B1, B5, B6, C1, V7]
8079test { try toAsciiFail("\xe1\x83\x83\xf0\x90\xb9\xbb.\xe2\x80\x8c\xf0\x9d\xaa\xa3<\xcc\xb8\xf3\xa0\xa9\x89", false); } // [B1, B5, B6, C1, V7]
8080test { try toAsciiFail("\xe1\x83\x83\xf0\x90\xb9\xbb.\xe2\x80\x8c\xf0\x9d\xaa\xa3<\xcc\xb8\xf3\xa0\xa9\x89", true); } // [B1, B5, B6, V6, V7]
3393test { try toUnicodeFail("\xe2\xb4\xa3\xf0\x90\xb9\xbb.\xe2\x80\x8c\xf0\x9d\xaa\xa3<\xcc\xb8\xf3\xa0\xa9\x89"); } // [B1, B5, B6, C1, V7]8081test { try toUnicodeFail("\xe2\xb4\xa3\xf0\x90\xb9\xbb.\xe2\x80\x8c\xf0\x9d\xaa\xa3<\xcc\xb8\xf3\xa0\xa9\x89"); } // [B1, B5, B6, C1, V7]
8082test { try toAsciiFail("\xe2\xb4\xa3\xf0\x90\xb9\xbb.\xe2\x80\x8c\xf0\x9d\xaa\xa3<\xcc\xb8\xf3\xa0\xa9\x89", false); } // [B1, B5, B6, C1, V7]
8083test { try toAsciiFail("\xe2\xb4\xa3\xf0\x90\xb9\xbb.\xe2\x80\x8c\xf0\x9d\xaa\xa3<\xcc\xb8\xf3\xa0\xa9\x89", true); } // [B1, B5, B6, V6, V7]
3394test { try toUnicodeFail("\xe2\xb4\xa3\xf0\x90\xb9\xbb.\xe2\x80\x8c\xf0\x9d\xaa\xa3\xe2\x89\xae\xf3\xa0\xa9\x89"); } // [B1, B5, B6, C1, V7]8084test { try toUnicodeFail("\xe2\xb4\xa3\xf0\x90\xb9\xbb.\xe2\x80\x8c\xf0\x9d\xaa\xa3\xe2\x89\xae\xf3\xa0\xa9\x89"); } // [B1, B5, B6, C1, V7]
8085test { try toAsciiFail("\xe2\xb4\xa3\xf0\x90\xb9\xbb.\xe2\x80\x8c\xf0\x9d\xaa\xa3\xe2\x89\xae\xf3\xa0\xa9\x89", false); } // [B1, B5, B6, C1, V7]
8086test { try toAsciiFail("\xe2\xb4\xa3\xf0\x90\xb9\xbb.\xe2\x80\x8c\xf0\x9d\xaa\xa3\xe2\x89\xae\xf3\xa0\xa9\x89", true); } // [B1, B5, B6, V6, V7]
3395test { try toUnicodeFail("xn--rlj6323e.xn--gdh4944ob3x3e"); } // [B1, B5, B6, V6, V7]8087test { try toUnicodeFail("xn--rlj6323e.xn--gdh4944ob3x3e"); } // [B1, B5, B6, V6, V7]
8088test { try toAsciiFail("xn--rlj6323e.xn--gdh4944ob3x3e", false); } // [B1, B5, B6, V6, V7]
8089test { try toAsciiFail("xn--rlj6323e.xn--gdh4944ob3x3e", true); } // [B1, B5, B6, V6, V7]
3396test { try toUnicodeFail("xn--rlj6323e.xn--0ugy6gn120eb103g"); } // [B1, B5, B6, C1, V7]8090test { try toUnicodeFail("xn--rlj6323e.xn--0ugy6gn120eb103g"); } // [B1, B5, B6, C1, V7]
8091test { try toAsciiFail("xn--rlj6323e.xn--0ugy6gn120eb103g", false); } // [B1, B5, B6, C1, V7]
8092test { try toAsciiFail("xn--rlj6323e.xn--0ugy6gn120eb103g", true); } // [B1, B5, B6, C1, V7]
3397test { try toUnicodeFail("xn--7nd8101k.xn--gdh4944ob3x3e"); } // [B1, B5, B6, V6, V7]8093test { try toUnicodeFail("xn--7nd8101k.xn--gdh4944ob3x3e"); } // [B1, B5, B6, V6, V7]
8094test { try toAsciiFail("xn--7nd8101k.xn--gdh4944ob3x3e", false); } // [B1, B5, B6, V6, V7]
8095test { try toAsciiFail("xn--7nd8101k.xn--gdh4944ob3x3e", true); } // [B1, B5, B6, V6, V7]
3398test { try toUnicodeFail("xn--7nd8101k.xn--0ugy6gn120eb103g"); } // [B1, B5, B6, C1, V7]8096test { try toUnicodeFail("xn--7nd8101k.xn--0ugy6gn120eb103g"); } // [B1, B5, B6, C1, V7]
8097test { try toAsciiFail("xn--7nd8101k.xn--0ugy6gn120eb103g", false); } // [B1, B5, B6, C1, V7]
8098test { try toAsciiFail("xn--7nd8101k.xn--0ugy6gn120eb103g", true); } // [B1, B5, B6, C1, V7]
3399test { try toUnicodeFail("\xf0\x9d\x9f\xb5\xe9\x9a\x81\xe2\xaf\xae\xef\xbc\x8e\xe1\xa0\x8d\xe2\x80\x8c"); } // [C1]8099test { try toUnicodeFail("\xf0\x9d\x9f\xb5\xe9\x9a\x81\xe2\xaf\xae\xef\xbc\x8e\xe1\xa0\x8d\xe2\x80\x8c"); } // [C1]
8100test { try toAsciiFail("\xf0\x9d\x9f\xb5\xe9\x9a\x81\xe2\xaf\xae\xef\xbc\x8e\xe1\xa0\x8d\xe2\x80\x8c", false); } // [C1]
8101test { try toAsciiFail("\xf0\x9d\x9f\xb5\xe9\x9a\x81\xe2\xaf\xae\xef\xbc\x8e\xe1\xa0\x8d\xe2\x80\x8c", true); } // [A4_2]
3400test { try toUnicodeFail("9\xe9\x9a\x81\xe2\xaf\xae.\xe1\xa0\x8d\xe2\x80\x8c"); } // [C1]8102test { try toUnicodeFail("9\xe9\x9a\x81\xe2\xaf\xae.\xe1\xa0\x8d\xe2\x80\x8c"); } // [C1]
8103test { try toAsciiFail("9\xe9\x9a\x81\xe2\xaf\xae.\xe1\xa0\x8d\xe2\x80\x8c", false); } // [C1]
8104test { try toAsciiFail("9\xe9\x9a\x81\xe2\xaf\xae.\xe1\xa0\x8d\xe2\x80\x8c", true); } // [A4_2]
3401test { try toUnicodePass("xn--9-mfs8024b.", "9\xe9\x9a\x81\xe2\xaf\xae."); }8105test { try toUnicodePass("xn--9-mfs8024b.", "9\xe9\x9a\x81\xe2\xaf\xae."); }
8106test { try toAsciiFail("xn--9-mfs8024b.", false); } // [A4_2]
8107test { try toAsciiFail("xn--9-mfs8024b.", true); } // [A4_2]
3402test { try toUnicodePass("9\xe9\x9a\x81\xe2\xaf\xae.", "9\xe9\x9a\x81\xe2\xaf\xae."); }8108test { try toUnicodePass("9\xe9\x9a\x81\xe2\xaf\xae.", "9\xe9\x9a\x81\xe2\xaf\xae."); }
8109test { try toAsciiFail("9\xe9\x9a\x81\xe2\xaf\xae.", false); } // [A4_2]
8110test { try toAsciiFail("9\xe9\x9a\x81\xe2\xaf\xae.", true); } // [A4_2]
3403test { try toUnicodeFail("xn--9-mfs8024b.xn--0ug"); } // [C1]8111test { try toUnicodeFail("xn--9-mfs8024b.xn--0ug"); } // [C1]
8112test { try toAsciiFail("xn--9-mfs8024b.xn--0ug", false); } // [C1]
8113test { try toAsciiFail("xn--9-mfs8024b.xn--0ug", true); } // [C1]
3404test { try toUnicodeFail("\xe2\x92\x8f\xf0\x90\xb9\xa7\xef\xbd\xa1\xe1\x83\x83\xe0\xbe\x84\xe5\xbd\xa6"); } // [B1, V7]8114test { try toUnicodeFail("\xe2\x92\x8f\xf0\x90\xb9\xa7\xef\xbd\xa1\xe1\x83\x83\xe0\xbe\x84\xe5\xbd\xa6"); } // [B1, V7]
8115test { try toAsciiFail("\xe2\x92\x8f\xf0\x90\xb9\xa7\xef\xbd\xa1\xe1\x83\x83\xe0\xbe\x84\xe5\xbd\xa6", false); } // [B1, V7]
8116test { try toAsciiFail("\xe2\x92\x8f\xf0\x90\xb9\xa7\xef\xbd\xa1\xe1\x83\x83\xe0\xbe\x84\xe5\xbd\xa6", true); } // [B1, V7]
3405test { try toUnicodeFail("8.\xf0\x90\xb9\xa7\xe3\x80\x82\xe1\x83\x83\xe0\xbe\x84\xe5\xbd\xa6"); } // [B1]8117test { try toUnicodeFail("8.\xf0\x90\xb9\xa7\xe3\x80\x82\xe1\x83\x83\xe0\xbe\x84\xe5\xbd\xa6"); } // [B1]
8118test { try toAsciiFail("8.\xf0\x90\xb9\xa7\xe3\x80\x82\xe1\x83\x83\xe0\xbe\x84\xe5\xbd\xa6", false); } // [B1]
8119test { try toAsciiFail("8.\xf0\x90\xb9\xa7\xe3\x80\x82\xe1\x83\x83\xe0\xbe\x84\xe5\xbd\xa6", true); } // [B1]
3406test { try toUnicodeFail("8.\xf0\x90\xb9\xa7\xe3\x80\x82\xe2\xb4\xa3\xe0\xbe\x84\xe5\xbd\xa6"); } // [B1]8120test { try toUnicodeFail("8.\xf0\x90\xb9\xa7\xe3\x80\x82\xe2\xb4\xa3\xe0\xbe\x84\xe5\xbd\xa6"); } // [B1]
8121test { try toAsciiFail("8.\xf0\x90\xb9\xa7\xe3\x80\x82\xe2\xb4\xa3\xe0\xbe\x84\xe5\xbd\xa6", false); } // [B1]
8122test { try toAsciiFail("8.\xf0\x90\xb9\xa7\xe3\x80\x82\xe2\xb4\xa3\xe0\xbe\x84\xe5\xbd\xa6", true); } // [B1]
3407test { try toUnicodeFail("8.xn--fo0d.xn--3ed972m6o8a"); } // [B1]8123test { try toUnicodeFail("8.xn--fo0d.xn--3ed972m6o8a"); } // [B1]
8124test { try toAsciiFail("8.xn--fo0d.xn--3ed972m6o8a", false); } // [B1]
8125test { try toAsciiFail("8.xn--fo0d.xn--3ed972m6o8a", true); } // [B1]
3408test { try toUnicodeFail("\xe2\x92\x8f\xf0\x90\xb9\xa7\xef\xbd\xa1\xe2\xb4\xa3\xe0\xbe\x84\xe5\xbd\xa6"); } // [B1, V7]8126test { try toUnicodeFail("\xe2\x92\x8f\xf0\x90\xb9\xa7\xef\xbd\xa1\xe2\xb4\xa3\xe0\xbe\x84\xe5\xbd\xa6"); } // [B1, V7]
8127test { try toAsciiFail("\xe2\x92\x8f\xf0\x90\xb9\xa7\xef\xbd\xa1\xe2\xb4\xa3\xe0\xbe\x84\xe5\xbd\xa6", false); } // [B1, V7]
8128test { try toAsciiFail("\xe2\x92\x8f\xf0\x90\xb9\xa7\xef\xbd\xa1\xe2\xb4\xa3\xe0\xbe\x84\xe5\xbd\xa6", true); } // [B1, V7]
3409test { try toUnicodeFail("xn--0sh2466f.xn--3ed972m6o8a"); } // [B1, V7]8129test { try toUnicodeFail("xn--0sh2466f.xn--3ed972m6o8a"); } // [B1, V7]
8130test { try toAsciiFail("xn--0sh2466f.xn--3ed972m6o8a", false); } // [B1, V7]
8131test { try toAsciiFail("xn--0sh2466f.xn--3ed972m6o8a", true); } // [B1, V7]
3410test { try toUnicodeFail("8.xn--fo0d.xn--3ed15dt93o"); } // [B1, V7]8132test { try toUnicodeFail("8.xn--fo0d.xn--3ed15dt93o"); } // [B1, V7]
8133test { try toAsciiFail("8.xn--fo0d.xn--3ed15dt93o", false); } // [B1, V7]
8134test { try toAsciiFail("8.xn--fo0d.xn--3ed15dt93o", true); } // [B1, V7]
3411test { try toUnicodeFail("xn--0sh2466f.xn--3ed15dt93o"); } // [B1, V7]8135test { try toUnicodeFail("xn--0sh2466f.xn--3ed15dt93o"); } // [B1, V7]
8136test { try toAsciiFail("xn--0sh2466f.xn--3ed15dt93o", false); } // [B1, V7]
8137test { try toAsciiFail("xn--0sh2466f.xn--3ed15dt93o", true); } // [B1, V7]
3412test { try toUnicodeFail("-\xe9\x97\xae\xf1\xac\xb0\x94\xe2\x92\x9b\xe3\x80\x82\xd8\x84-\xf1\x9c\x97\x89\xe6\xa9\xac"); } // [B1, V3, V7]8138test { try toUnicodeFail("-\xe9\x97\xae\xf1\xac\xb0\x94\xe2\x92\x9b\xe3\x80\x82\xd8\x84-\xf1\x9c\x97\x89\xe6\xa9\xac"); } // [B1, V3, V7]
8139test { try toAsciiFail("-\xe9\x97\xae\xf1\xac\xb0\x94\xe2\x92\x9b\xe3\x80\x82\xd8\x84-\xf1\x9c\x97\x89\xe6\xa9\xac", false); } // [B1, V3, V7]
8140test { try toAsciiFail("-\xe9\x97\xae\xf1\xac\xb0\x94\xe2\x92\x9b\xe3\x80\x82\xd8\x84-\xf1\x9c\x97\x89\xe6\xa9\xac", true); } // [B1, V3, V7]
3413test { try toUnicodeFail("-\xe9\x97\xae\xf1\xac\xb0\x9420.\xe3\x80\x82\xd8\x84-\xf1\x9c\x97\x89\xe6\xa9\xac"); } // [B1, V3, V7, X4_2]8141test { try toUnicodeFail("-\xe9\x97\xae\xf1\xac\xb0\x9420.\xe3\x80\x82\xd8\x84-\xf1\x9c\x97\x89\xe6\xa9\xac"); } // [B1, V3, V7, X4_2]
8142test { try toAsciiFail("-\xe9\x97\xae\xf1\xac\xb0\x9420.\xe3\x80\x82\xd8\x84-\xf1\x9c\x97\x89\xe6\xa9\xac", false); } // [B1, V3, V7, A4_2]
8143test { try toAsciiFail("-\xe9\x97\xae\xf1\xac\xb0\x9420.\xe3\x80\x82\xd8\x84-\xf1\x9c\x97\x89\xe6\xa9\xac", true); } // [B1, V3, V7, A4_2]
3414test { try toUnicodeFail("xn---20-658jx1776d..xn----ykc7228efm46d"); } // [B1, V3, V7, X4_2]8144test { try toUnicodeFail("xn---20-658jx1776d..xn----ykc7228efm46d"); } // [B1, V3, V7, X4_2]
8145test { try toAsciiFail("xn---20-658jx1776d..xn----ykc7228efm46d", false); } // [B1, V3, V7, A4_2]
8146test { try toAsciiFail("xn---20-658jx1776d..xn----ykc7228efm46d", true); } // [B1, V3, V7, A4_2]
3415test { try toUnicodeFail("xn----hdpu849bhis3e.xn----ykc7228efm46d"); } // [B1, V3, V7]8147test { try toUnicodeFail("xn----hdpu849bhis3e.xn----ykc7228efm46d"); } // [B1, V3, V7]
8148test { try toAsciiFail("xn----hdpu849bhis3e.xn----ykc7228efm46d", false); } // [B1, V3, V7]
8149test { try toAsciiFail("xn----hdpu849bhis3e.xn----ykc7228efm46d", true); } // [B1, V3, V7]
3416test { try toUnicodeFail("\xe1\xae\xac\xe1\x82\xac\xe2\x80\x8c\xcc\xa5\xe3\x80\x82\xf0\x9d\x9f\xb8"); } // [C1, V6]8150test { try toUnicodeFail("\xe1\xae\xac\xe1\x82\xac\xe2\x80\x8c\xcc\xa5\xe3\x80\x82\xf0\x9d\x9f\xb8"); } // [C1, V6]
8151test { try toAsciiFail("\xe1\xae\xac\xe1\x82\xac\xe2\x80\x8c\xcc\xa5\xe3\x80\x82\xf0\x9d\x9f\xb8", false); } // [C1, V6]
8152test { try toAsciiFail("\xe1\xae\xac\xe1\x82\xac\xe2\x80\x8c\xcc\xa5\xe3\x80\x82\xf0\x9d\x9f\xb8", true); } // [V6]
3417test { try toUnicodeFail("\xe1\xae\xac\xe1\x82\xac\xe2\x80\x8c\xcc\xa5\xe3\x80\x822"); } // [C1, V6]8153test { try toUnicodeFail("\xe1\xae\xac\xe1\x82\xac\xe2\x80\x8c\xcc\xa5\xe3\x80\x822"); } // [C1, V6]
8154test { try toAsciiFail("\xe1\xae\xac\xe1\x82\xac\xe2\x80\x8c\xcc\xa5\xe3\x80\x822", false); } // [C1, V6]
8155test { try toAsciiFail("\xe1\xae\xac\xe1\x82\xac\xe2\x80\x8c\xcc\xa5\xe3\x80\x822", true); } // [V6]
3418test { try toUnicodeFail("\xe1\xae\xac\xe2\xb4\x8c\xe2\x80\x8c\xcc\xa5\xe3\x80\x822"); } // [C1, V6]8156test { try toUnicodeFail("\xe1\xae\xac\xe2\xb4\x8c\xe2\x80\x8c\xcc\xa5\xe3\x80\x822"); } // [C1, V6]
8157test { try toAsciiFail("\xe1\xae\xac\xe2\xb4\x8c\xe2\x80\x8c\xcc\xa5\xe3\x80\x822", false); } // [C1, V6]
8158test { try toAsciiFail("\xe1\xae\xac\xe2\xb4\x8c\xe2\x80\x8c\xcc\xa5\xe3\x80\x822", true); } // [V6]
3419test { try toUnicodeFail("xn--mta176jjjm.c"); } // [V6]8159test { try toUnicodeFail("xn--mta176jjjm.c"); } // [V6]
8160test { try toAsciiFail("xn--mta176jjjm.c", false); } // [V6]
8161test { try toAsciiFail("xn--mta176jjjm.c", true); } // [V6]
3420test { try toUnicodeFail("xn--mta176j97cl2q.c"); } // [C1, V6]8162test { try toUnicodeFail("xn--mta176j97cl2q.c"); } // [C1, V6]
8163test { try toAsciiFail("xn--mta176j97cl2q.c", false); } // [C1, V6]
8164test { try toAsciiFail("xn--mta176j97cl2q.c", true); } // [C1, V6]
3421test { try toUnicodeFail("\xe1\xae\xac\xe2\xb4\x8c\xe2\x80\x8c\xcc\xa5\xe3\x80\x82\xf0\x9d\x9f\xb8"); } // [C1, V6]8165test { try toUnicodeFail("\xe1\xae\xac\xe2\xb4\x8c\xe2\x80\x8c\xcc\xa5\xe3\x80\x82\xf0\x9d\x9f\xb8"); } // [C1, V6]
8166test { try toAsciiFail("\xe1\xae\xac\xe2\xb4\x8c\xe2\x80\x8c\xcc\xa5\xe3\x80\x82\xf0\x9d\x9f\xb8", false); } // [C1, V6]
8167test { try toAsciiFail("\xe1\xae\xac\xe2\xb4\x8c\xe2\x80\x8c\xcc\xa5\xe3\x80\x82\xf0\x9d\x9f\xb8", true); } // [V6]
3422test { try toUnicodeFail("xn--mta930emri.c"); } // [V6, V7]8168test { try toUnicodeFail("xn--mta930emri.c"); } // [V6, V7]
8169test { try toAsciiFail("xn--mta930emri.c", false); } // [V6, V7]
8170test { try toAsciiFail("xn--mta930emri.c", true); } // [V6, V7]
3423test { try toUnicodeFail("xn--mta930emribme.c"); } // [C1, V6, V7]8171test { try toUnicodeFail("xn--mta930emribme.c"); } // [C1, V6, V7]
8172test { try toAsciiFail("xn--mta930emribme.c", false); } // [C1, V6, V7]
8173test { try toAsciiFail("xn--mta930emribme.c", true); } // [C1, V6, V7]
3424test { try toUnicodeFail("?\xe3\x80\x82\xea\xa0\x86\xd9\xa9\xf3\xa0\x92\xa9"); } // [B1, V6, V7, U1]8174test { try toUnicodeFail("?\xe3\x80\x82\xea\xa0\x86\xd9\xa9\xf3\xa0\x92\xa9"); } // [B1, V6, V7, U1]
8175test { try toAsciiFail("?\xe3\x80\x82\xea\xa0\x86\xd9\xa9\xf3\xa0\x92\xa9", false); } // [B1, V6, V7, U1]
8176test { try toAsciiFail("?\xe3\x80\x82\xea\xa0\x86\xd9\xa9\xf3\xa0\x92\xa9", true); } // [B1, V6, V7, U1]
3425test { try toUnicodeFail("?.xn--iib9583fusy0i"); } // [B1, V6, V7, U1]8177test { try toUnicodeFail("?.xn--iib9583fusy0i"); } // [B1, V6, V7, U1]
8178test { try toAsciiFail("?.xn--iib9583fusy0i", false); } // [B1, V6, V7, U1]
8179test { try toAsciiFail("?.xn--iib9583fusy0i", true); } // [B1, V6, V7, U1]
3426test { try toUnicodeFail("\xf3\xa0\x84\x81\xcd\x9f\xe2\xbe\xb6\xef\xbd\xa1\xe2\x82\x87\xef\xb8\x92\xeb\x88\x87\xe2\x89\xae"); } // [V6, V7]8180test { try toUnicodeFail("\xf3\xa0\x84\x81\xcd\x9f\xe2\xbe\xb6\xef\xbd\xa1\xe2\x82\x87\xef\xb8\x92\xeb\x88\x87\xe2\x89\xae"); } // [V6, V7]
8181test { try toAsciiFail("\xf3\xa0\x84\x81\xcd\x9f\xe2\xbe\xb6\xef\xbd\xa1\xe2\x82\x87\xef\xb8\x92\xeb\x88\x87\xe2\x89\xae", false); } // [V6, V7]
8182test { try toAsciiFail("\xf3\xa0\x84\x81\xcd\x9f\xe2\xbe\xb6\xef\xbd\xa1\xe2\x82\x87\xef\xb8\x92\xeb\x88\x87\xe2\x89\xae", true); } // [V6, V7]
3427test { try toUnicodeFail("\xf3\xa0\x84\x81\xcd\x9f\xe2\xbe\xb6\xef\xbd\xa1\xe2\x82\x87\xef\xb8\x92\xe1\x84\x82\xe1\x85\xae\xe1\x86\xaa<\xcc\xb8"); } // [V6, V7]8183test { try toUnicodeFail("\xf3\xa0\x84\x81\xcd\x9f\xe2\xbe\xb6\xef\xbd\xa1\xe2\x82\x87\xef\xb8\x92\xe1\x84\x82\xe1\x85\xae\xe1\x86\xaa<\xcc\xb8"); } // [V6, V7]
8184test { try toAsciiFail("\xf3\xa0\x84\x81\xcd\x9f\xe2\xbe\xb6\xef\xbd\xa1\xe2\x82\x87\xef\xb8\x92\xe1\x84\x82\xe1\x85\xae\xe1\x86\xaa<\xcc\xb8", false); } // [V6, V7]
8185test { try toAsciiFail("\xf3\xa0\x84\x81\xcd\x9f\xe2\xbe\xb6\xef\xbd\xa1\xe2\x82\x87\xef\xb8\x92\xe1\x84\x82\xe1\x85\xae\xe1\x86\xaa<\xcc\xb8", true); } // [V6, V7]
3428test { try toUnicodeFail("\xf3\xa0\x84\x81\xcd\x9f\xe9\xa3\x9b\xe3\x80\x827\xe3\x80\x82\xeb\x88\x87\xe2\x89\xae"); } // [V6]8186test { try toUnicodeFail("\xf3\xa0\x84\x81\xcd\x9f\xe9\xa3\x9b\xe3\x80\x827\xe3\x80\x82\xeb\x88\x87\xe2\x89\xae"); } // [V6]
8187test { try toAsciiFail("\xf3\xa0\x84\x81\xcd\x9f\xe9\xa3\x9b\xe3\x80\x827\xe3\x80\x82\xeb\x88\x87\xe2\x89\xae", false); } // [V6]
8188test { try toAsciiFail("\xf3\xa0\x84\x81\xcd\x9f\xe9\xa3\x9b\xe3\x80\x827\xe3\x80\x82\xeb\x88\x87\xe2\x89\xae", true); } // [V6]
3429test { try toUnicodeFail("\xf3\xa0\x84\x81\xcd\x9f\xe9\xa3\x9b\xe3\x80\x827\xe3\x80\x82\xe1\x84\x82\xe1\x85\xae\xe1\x86\xaa<\xcc\xb8"); } // [V6]8189test { try toUnicodeFail("\xf3\xa0\x84\x81\xcd\x9f\xe9\xa3\x9b\xe3\x80\x827\xe3\x80\x82\xe1\x84\x82\xe1\x85\xae\xe1\x86\xaa<\xcc\xb8"); } // [V6]
8190test { try toAsciiFail("\xf3\xa0\x84\x81\xcd\x9f\xe9\xa3\x9b\xe3\x80\x827\xe3\x80\x82\xe1\x84\x82\xe1\x85\xae\xe1\x86\xaa<\xcc\xb8", false); } // [V6]
8191test { try toAsciiFail("\xf3\xa0\x84\x81\xcd\x9f\xe9\xa3\x9b\xe3\x80\x827\xe3\x80\x82\xe1\x84\x82\xe1\x85\xae\xe1\x86\xaa<\xcc\xb8", true); } // [V6]
3430test { try toUnicodeFail("xn--9ua0567e.7.xn--gdh6767c"); } // [V6]8192test { try toUnicodeFail("xn--9ua0567e.7.xn--gdh6767c"); } // [V6]
8193test { try toAsciiFail("xn--9ua0567e.7.xn--gdh6767c", false); } // [V6]
8194test { try toAsciiFail("xn--9ua0567e.7.xn--gdh6767c", true); } // [V6]
3431test { try toUnicodeFail("xn--9ua0567e.xn--7-ngou006d1ttc"); } // [V6, V7]8195test { try toUnicodeFail("xn--9ua0567e.xn--7-ngou006d1ttc"); } // [V6, V7]
8196test { try toAsciiFail("xn--9ua0567e.xn--7-ngou006d1ttc", false); } // [V6, V7]
8197test { try toAsciiFail("xn--9ua0567e.xn--7-ngou006d1ttc", true); } // [V6, V7]
3432test { try toUnicodeFail("\xe2\x80\x8c\xef\xb8\x89\xf0\x90\xb9\xb4\xe2\x80\x8d\xef\xbc\x8e\xe2\x80\x8c\xe2\xbf\x83"); } // [B1, C1, C2]8198test { try toUnicodeFail("\xe2\x80\x8c\xef\xb8\x89\xf0\x90\xb9\xb4\xe2\x80\x8d\xef\xbc\x8e\xe2\x80\x8c\xe2\xbf\x83"); } // [B1, C1, C2]
8199test { try toAsciiFail("\xe2\x80\x8c\xef\xb8\x89\xf0\x90\xb9\xb4\xe2\x80\x8d\xef\xbc\x8e\xe2\x80\x8c\xe2\xbf\x83", false); } // [B1, C1, C2]
8200test { try toAsciiFail("\xe2\x80\x8c\xef\xb8\x89\xf0\x90\xb9\xb4\xe2\x80\x8d\xef\xbc\x8e\xe2\x80\x8c\xe2\xbf\x83", true); } // [B1]
3433test { try toUnicodeFail("\xe2\x80\x8c\xef\xb8\x89\xf0\x90\xb9\xb4\xe2\x80\x8d.\xe2\x80\x8c\xe9\xb3\xa5"); } // [B1, C1, C2]8201test { try toUnicodeFail("\xe2\x80\x8c\xef\xb8\x89\xf0\x90\xb9\xb4\xe2\x80\x8d.\xe2\x80\x8c\xe9\xb3\xa5"); } // [B1, C1, C2]
8202test { try toAsciiFail("\xe2\x80\x8c\xef\xb8\x89\xf0\x90\xb9\xb4\xe2\x80\x8d.\xe2\x80\x8c\xe9\xb3\xa5", false); } // [B1, C1, C2]
8203test { try toAsciiFail("\xe2\x80\x8c\xef\xb8\x89\xf0\x90\xb9\xb4\xe2\x80\x8d.\xe2\x80\x8c\xe9\xb3\xa5", true); } // [B1]
3434test { try toUnicodeFail("xn--so0d.xn--6x6a"); } // [B1]8204test { try toUnicodeFail("xn--so0d.xn--6x6a"); } // [B1]
8205test { try toAsciiFail("xn--so0d.xn--6x6a", false); } // [B1]
8206test { try toAsciiFail("xn--so0d.xn--6x6a", true); } // [B1]
3435test { try toUnicodeFail("xn--0ugc6024p.xn--0ug1920c"); } // [B1, C1, C2]8207test { try toUnicodeFail("xn--0ugc6024p.xn--0ug1920c"); } // [B1, C1, C2]
8208test { try toAsciiFail("xn--0ugc6024p.xn--0ug1920c", false); } // [B1, C1, C2]
8209test { try toAsciiFail("xn--0ugc6024p.xn--0ug1920c", true); } // [B1, C1, C2]
3436test { try toUnicodeFail("\xf0\x9f\x8d\xae\xef\xbc\x8e\xe2\x80\x8d\xf3\xa0\x97\x92\xf0\x90\xa6\x81\xf0\x9d\xa8\x9d"); } // [B1, C2, V7]8210test { try toUnicodeFail("\xf0\x9f\x8d\xae\xef\xbc\x8e\xe2\x80\x8d\xf3\xa0\x97\x92\xf0\x90\xa6\x81\xf0\x9d\xa8\x9d"); } // [B1, C2, V7]
8211test { try toAsciiFail("\xf0\x9f\x8d\xae\xef\xbc\x8e\xe2\x80\x8d\xf3\xa0\x97\x92\xf0\x90\xa6\x81\xf0\x9d\xa8\x9d", false); } // [B1, C2, V7]
8212test { try toAsciiFail("\xf0\x9f\x8d\xae\xef\xbc\x8e\xe2\x80\x8d\xf3\xa0\x97\x92\xf0\x90\xa6\x81\xf0\x9d\xa8\x9d", true); } // [B1, V7]
3437test { try toUnicodeFail("\xf0\x9f\x8d\xae.\xe2\x80\x8d\xf3\xa0\x97\x92\xf0\x90\xa6\x81\xf0\x9d\xa8\x9d"); } // [B1, C2, V7]8213test { try toUnicodeFail("\xf0\x9f\x8d\xae.\xe2\x80\x8d\xf3\xa0\x97\x92\xf0\x90\xa6\x81\xf0\x9d\xa8\x9d"); } // [B1, C2, V7]
8214test { try toAsciiFail("\xf0\x9f\x8d\xae.\xe2\x80\x8d\xf3\xa0\x97\x92\xf0\x90\xa6\x81\xf0\x9d\xa8\x9d", false); } // [B1, C2, V7]
8215test { try toAsciiFail("\xf0\x9f\x8d\xae.\xe2\x80\x8d\xf3\xa0\x97\x92\xf0\x90\xa6\x81\xf0\x9d\xa8\x9d", true); } // [B1, V7]
3438test { try toUnicodeFail("xn--lj8h.xn--ln9ci476aqmr2g"); } // [B1, V7]8216test { try toUnicodeFail("xn--lj8h.xn--ln9ci476aqmr2g"); } // [B1, V7]
8217test { try toAsciiFail("xn--lj8h.xn--ln9ci476aqmr2g", false); } // [B1, V7]
8218test { try toAsciiFail("xn--lj8h.xn--ln9ci476aqmr2g", true); } // [B1, V7]
3439test { try toUnicodeFail("xn--lj8h.xn--1ug6603gr1pfwq37h"); } // [B1, C2, V7]8219test { try toUnicodeFail("xn--lj8h.xn--1ug6603gr1pfwq37h"); } // [B1, C2, V7]
8220test { try toAsciiFail("xn--lj8h.xn--1ug6603gr1pfwq37h", false); } // [B1, C2, V7]
8221test { try toAsciiFail("xn--lj8h.xn--1ug6603gr1pfwq37h", true); } // [B1, C2, V7]
3440test { try toAsciiPass("\xd9\xbd\xe0\xa5\x83.\xf0\x9e\xa4\x93\xe2\x80\x8d", "xn--2ib43l.xn--te6h", true); }8222test { try toAsciiPass("\xd9\xbd\xe0\xa5\x83.\xf0\x9e\xa4\x93\xe2\x80\x8d", "xn--2ib43l.xn--te6h", true); }
3441test { try toUnicodeFail("\xd9\xbd\xe0\xa5\x83.\xf0\x9e\xa4\x93\xe2\x80\x8d"); } // [B3, C2]8223test { try toUnicodeFail("\xd9\xbd\xe0\xa5\x83.\xf0\x9e\xa4\x93\xe2\x80\x8d"); } // [B3, C2]
8224test { try toAsciiFail("\xd9\xbd\xe0\xa5\x83.\xf0\x9e\xa4\x93\xe2\x80\x8d", false); } // [B3, C2]
3442test { try toAsciiPass("\xd9\xbd\xe0\xa5\x83.\xf0\x9e\xa4\xb5\xe2\x80\x8d", "xn--2ib43l.xn--te6h", true); }8225test { try toAsciiPass("\xd9\xbd\xe0\xa5\x83.\xf0\x9e\xa4\xb5\xe2\x80\x8d", "xn--2ib43l.xn--te6h", true); }
3443test { try toUnicodeFail("\xd9\xbd\xe0\xa5\x83.\xf0\x9e\xa4\xb5\xe2\x80\x8d"); } // [B3, C2]8226test { try toUnicodeFail("\xd9\xbd\xe0\xa5\x83.\xf0\x9e\xa4\xb5\xe2\x80\x8d"); } // [B3, C2]
8227test { try toAsciiFail("\xd9\xbd\xe0\xa5\x83.\xf0\x9e\xa4\xb5\xe2\x80\x8d", false); } // [B3, C2]
3444test { try toUnicodePass("xn--2ib43l.xn--te6h", "\xd9\xbd\xe0\xa5\x83.\xf0\x9e\xa4\xb5"); }8228test { try toUnicodePass("xn--2ib43l.xn--te6h", "\xd9\xbd\xe0\xa5\x83.\xf0\x9e\xa4\xb5"); }
3445test { try toAsciiPass("xn--2ib43l.xn--te6h", "xn--2ib43l.xn--te6h", false); }8229test { try toAsciiPass("xn--2ib43l.xn--te6h", "xn--2ib43l.xn--te6h", false); }
3446test { try toAsciiPass("xn--2ib43l.xn--te6h", "xn--2ib43l.xn--te6h", true); }8230test { try toAsciiPass("xn--2ib43l.xn--te6h", "xn--2ib43l.xn--te6h", true); }
...@@ -3451,91 +8235,263 @@ test { try toUnicodePass("\xd9\xbd\xe0\xa5\x83.\xf0\x9e\xa4\x93", "\xd9\xbd\xe0\...@@ -3451,91 +8235,263 @@ test { try toUnicodePass("\xd9\xbd\xe0\xa5\x83.\xf0\x9e\xa4\x93", "\xd9\xbd\xe0\
3451test { try toAsciiPass("\xd9\xbd\xe0\xa5\x83.\xf0\x9e\xa4\x93", "xn--2ib43l.xn--te6h", false); }8235test { try toAsciiPass("\xd9\xbd\xe0\xa5\x83.\xf0\x9e\xa4\x93", "xn--2ib43l.xn--te6h", false); }
3452test { try toAsciiPass("\xd9\xbd\xe0\xa5\x83.\xf0\x9e\xa4\x93", "xn--2ib43l.xn--te6h", true); }8236test { try toAsciiPass("\xd9\xbd\xe0\xa5\x83.\xf0\x9e\xa4\x93", "xn--2ib43l.xn--te6h", true); }
3453test { try toUnicodeFail("xn--2ib43l.xn--1ugy711p"); } // [B3, C2]8237test { try toUnicodeFail("xn--2ib43l.xn--1ugy711p"); } // [B3, C2]
8238test { try toAsciiFail("xn--2ib43l.xn--1ugy711p", false); } // [B3, C2]
8239test { try toAsciiFail("xn--2ib43l.xn--1ugy711p", true); } // [B3, C2]
3454test { try toUnicodeFail("\xd9\xa4\xe0\xa9\x8d-\xef\xbc\x8e\xf3\xa5\x9c\xbd\xe1\x80\xb9\xf1\xa6\xa6\x90"); } // [B1, V3, V7]8240test { try toUnicodeFail("\xd9\xa4\xe0\xa9\x8d-\xef\xbc\x8e\xf3\xa5\x9c\xbd\xe1\x80\xb9\xf1\xa6\xa6\x90"); } // [B1, V3, V7]
8241test { try toAsciiFail("\xd9\xa4\xe0\xa9\x8d-\xef\xbc\x8e\xf3\xa5\x9c\xbd\xe1\x80\xb9\xf1\xa6\xa6\x90", false); } // [B1, V3, V7]
8242test { try toAsciiFail("\xd9\xa4\xe0\xa9\x8d-\xef\xbc\x8e\xf3\xa5\x9c\xbd\xe1\x80\xb9\xf1\xa6\xa6\x90", true); } // [B1, V3, V7]
3455test { try toUnicodeFail("\xd9\xa4\xe0\xa9\x8d-.\xf3\xa5\x9c\xbd\xe1\x80\xb9\xf1\xa6\xa6\x90"); } // [B1, V3, V7]8243test { try toUnicodeFail("\xd9\xa4\xe0\xa9\x8d-.\xf3\xa5\x9c\xbd\xe1\x80\xb9\xf1\xa6\xa6\x90"); } // [B1, V3, V7]
8244test { try toAsciiFail("\xd9\xa4\xe0\xa9\x8d-.\xf3\xa5\x9c\xbd\xe1\x80\xb9\xf1\xa6\xa6\x90", false); } // [B1, V3, V7]
8245test { try toAsciiFail("\xd9\xa4\xe0\xa9\x8d-.\xf3\xa5\x9c\xbd\xe1\x80\xb9\xf1\xa6\xa6\x90", true); } // [B1, V3, V7]
3456test { try toUnicodeFail("xn----gqc711a.xn--9jd88234f3qm0b"); } // [B1, V3, V7]8246test { try toUnicodeFail("xn----gqc711a.xn--9jd88234f3qm0b"); } // [B1, V3, V7]
8247test { try toAsciiFail("xn----gqc711a.xn--9jd88234f3qm0b", false); } // [B1, V3, V7]
8248test { try toAsciiFail("xn----gqc711a.xn--9jd88234f3qm0b", true); } // [B1, V3, V7]
3457test { try toUnicodeFail("4\xe1\x80\xba-\xf0\x90\xb9\xb8\xef\xbd\xa1\xea\xa8\xa9\xe2\x80\x8c\xf0\x90\xb9\xb4\xe2\x89\xae"); } // [B1, C1, V6]8249test { try toUnicodeFail("4\xe1\x80\xba-\xf0\x90\xb9\xb8\xef\xbd\xa1\xea\xa8\xa9\xe2\x80\x8c\xf0\x90\xb9\xb4\xe2\x89\xae"); } // [B1, C1, V6]
8250test { try toAsciiFail("4\xe1\x80\xba-\xf0\x90\xb9\xb8\xef\xbd\xa1\xea\xa8\xa9\xe2\x80\x8c\xf0\x90\xb9\xb4\xe2\x89\xae", false); } // [B1, C1, V6]
8251test { try toAsciiFail("4\xe1\x80\xba-\xf0\x90\xb9\xb8\xef\xbd\xa1\xea\xa8\xa9\xe2\x80\x8c\xf0\x90\xb9\xb4\xe2\x89\xae", true); } // [B1, V6]
3458test { try toUnicodeFail("4\xe1\x80\xba-\xf0\x90\xb9\xb8\xef\xbd\xa1\xea\xa8\xa9\xe2\x80\x8c\xf0\x90\xb9\xb4<\xcc\xb8"); } // [B1, C1, V6]8252test { try toUnicodeFail("4\xe1\x80\xba-\xf0\x90\xb9\xb8\xef\xbd\xa1\xea\xa8\xa9\xe2\x80\x8c\xf0\x90\xb9\xb4<\xcc\xb8"); } // [B1, C1, V6]
8253test { try toAsciiFail("4\xe1\x80\xba-\xf0\x90\xb9\xb8\xef\xbd\xa1\xea\xa8\xa9\xe2\x80\x8c\xf0\x90\xb9\xb4<\xcc\xb8", false); } // [B1, C1, V6]
8254test { try toAsciiFail("4\xe1\x80\xba-\xf0\x90\xb9\xb8\xef\xbd\xa1\xea\xa8\xa9\xe2\x80\x8c\xf0\x90\xb9\xb4<\xcc\xb8", true); } // [B1, V6]
3459test { try toUnicodeFail("4\xe1\x80\xba-\xf0\x90\xb9\xb8\xe3\x80\x82\xea\xa8\xa9\xe2\x80\x8c\xf0\x90\xb9\xb4\xe2\x89\xae"); } // [B1, C1, V6]8255test { try toUnicodeFail("4\xe1\x80\xba-\xf0\x90\xb9\xb8\xe3\x80\x82\xea\xa8\xa9\xe2\x80\x8c\xf0\x90\xb9\xb4\xe2\x89\xae"); } // [B1, C1, V6]
8256test { try toAsciiFail("4\xe1\x80\xba-\xf0\x90\xb9\xb8\xe3\x80\x82\xea\xa8\xa9\xe2\x80\x8c\xf0\x90\xb9\xb4\xe2\x89\xae", false); } // [B1, C1, V6]
8257test { try toAsciiFail("4\xe1\x80\xba-\xf0\x90\xb9\xb8\xe3\x80\x82\xea\xa8\xa9\xe2\x80\x8c\xf0\x90\xb9\xb4\xe2\x89\xae", true); } // [B1, V6]
3460test { try toUnicodeFail("4\xe1\x80\xba-\xf0\x90\xb9\xb8\xe3\x80\x82\xea\xa8\xa9\xe2\x80\x8c\xf0\x90\xb9\xb4<\xcc\xb8"); } // [B1, C1, V6]8258test { try toUnicodeFail("4\xe1\x80\xba-\xf0\x90\xb9\xb8\xe3\x80\x82\xea\xa8\xa9\xe2\x80\x8c\xf0\x90\xb9\xb4<\xcc\xb8"); } // [B1, C1, V6]
8259test { try toAsciiFail("4\xe1\x80\xba-\xf0\x90\xb9\xb8\xe3\x80\x82\xea\xa8\xa9\xe2\x80\x8c\xf0\x90\xb9\xb4<\xcc\xb8", false); } // [B1, C1, V6]
8260test { try toAsciiFail("4\xe1\x80\xba-\xf0\x90\xb9\xb8\xe3\x80\x82\xea\xa8\xa9\xe2\x80\x8c\xf0\x90\xb9\xb4<\xcc\xb8", true); } // [B1, V6]
3461test { try toUnicodeFail("xn--4--e4j7831r.xn--gdh8754cz40c"); } // [B1, V6]8261test { try toUnicodeFail("xn--4--e4j7831r.xn--gdh8754cz40c"); } // [B1, V6]
8262test { try toAsciiFail("xn--4--e4j7831r.xn--gdh8754cz40c", false); } // [B1, V6]
8263test { try toAsciiFail("xn--4--e4j7831r.xn--gdh8754cz40c", true); } // [B1, V6]
3462test { try toUnicodeFail("xn--4--e4j7831r.xn--0ugy6gjy5sl3ud"); } // [B1, C1, V6]8264test { try toUnicodeFail("xn--4--e4j7831r.xn--0ugy6gjy5sl3ud"); } // [B1, C1, V6]
8265test { try toAsciiFail("xn--4--e4j7831r.xn--0ugy6gjy5sl3ud", false); } // [B1, C1, V6]
8266test { try toAsciiFail("xn--4--e4j7831r.xn--0ugy6gjy5sl3ud", true); } // [B1, C1, V6]
3463test { try toUnicodeFail("\xe2\x80\x8c\xe3\x80\x82\xef\xbe\xa0\xe0\xbe\x84\xe0\xbe\x96"); } // [C1, V6]8267test { try toUnicodeFail("\xe2\x80\x8c\xe3\x80\x82\xef\xbe\xa0\xe0\xbe\x84\xe0\xbe\x96"); } // [C1, V6]
8268test { try toAsciiFail("\xe2\x80\x8c\xe3\x80\x82\xef\xbe\xa0\xe0\xbe\x84\xe0\xbe\x96", false); } // [C1, V6]
8269test { try toAsciiFail("\xe2\x80\x8c\xe3\x80\x82\xef\xbe\xa0\xe0\xbe\x84\xe0\xbe\x96", true); } // [V6, A4_2]
3464test { try toUnicodeFail("\xe2\x80\x8c\xe3\x80\x82\xe1\x85\xa0\xe0\xbe\x84\xe0\xbe\x96"); } // [C1, V6]8270test { try toUnicodeFail("\xe2\x80\x8c\xe3\x80\x82\xe1\x85\xa0\xe0\xbe\x84\xe0\xbe\x96"); } // [C1, V6]
8271test { try toAsciiFail("\xe2\x80\x8c\xe3\x80\x82\xe1\x85\xa0\xe0\xbe\x84\xe0\xbe\x96", false); } // [C1, V6]
8272test { try toAsciiFail("\xe2\x80\x8c\xe3\x80\x82\xe1\x85\xa0\xe0\xbe\x84\xe0\xbe\x96", true); } // [V6, A4_2]
3465test { try toUnicodeFail(".xn--3ed0b"); } // [V6, X4_2]8273test { try toUnicodeFail(".xn--3ed0b"); } // [V6, X4_2]
8274test { try toAsciiFail(".xn--3ed0b", false); } // [V6, A4_2]
8275test { try toAsciiFail(".xn--3ed0b", true); } // [V6, A4_2]
3466test { try toUnicodeFail("xn--0ug.xn--3ed0b"); } // [C1, V6]8276test { try toUnicodeFail("xn--0ug.xn--3ed0b"); } // [C1, V6]
8277test { try toAsciiFail("xn--0ug.xn--3ed0b", false); } // [C1, V6]
8278test { try toAsciiFail("xn--0ug.xn--3ed0b", true); } // [C1, V6]
3467test { try toUnicodeFail(".xn--3ed0b20h"); } // [V7, X4_2]8279test { try toUnicodeFail(".xn--3ed0b20h"); } // [V7, X4_2]
8280test { try toAsciiFail(".xn--3ed0b20h", false); } // [V7, A4_2]
8281test { try toAsciiFail(".xn--3ed0b20h", true); } // [V7, A4_2]
3468test { try toUnicodeFail("xn--0ug.xn--3ed0b20h"); } // [C1, V7]8282test { try toUnicodeFail("xn--0ug.xn--3ed0b20h"); } // [C1, V7]
8283test { try toAsciiFail("xn--0ug.xn--3ed0b20h", false); } // [C1, V7]
8284test { try toAsciiFail("xn--0ug.xn--3ed0b20h", true); } // [C1, V7]
3469test { try toUnicodeFail(".xn--3ed0by082k"); } // [V7, X4_2]8285test { try toUnicodeFail(".xn--3ed0by082k"); } // [V7, X4_2]
8286test { try toAsciiFail(".xn--3ed0by082k", false); } // [V7, A4_2]
8287test { try toAsciiFail(".xn--3ed0by082k", true); } // [V7, A4_2]
3470test { try toUnicodeFail("xn--0ug.xn--3ed0by082k"); } // [C1, V7]8288test { try toUnicodeFail("xn--0ug.xn--3ed0by082k"); } // [C1, V7]
8289test { try toAsciiFail("xn--0ug.xn--3ed0by082k", false); } // [C1, V7]
8290test { try toAsciiFail("xn--0ug.xn--3ed0by082k", true); } // [C1, V7]
3471test { try toUnicodeFail("\xe2\x89\xaf\xf2\x8d\x98\x85\xef\xbc\x8e\xe2\x80\x8d\xf0\x90\x85\xbc\xf2\xb2\x87\x9b"); } // [C2, V7]8291test { try toUnicodeFail("\xe2\x89\xaf\xf2\x8d\x98\x85\xef\xbc\x8e\xe2\x80\x8d\xf0\x90\x85\xbc\xf2\xb2\x87\x9b"); } // [C2, V7]
8292test { try toAsciiFail("\xe2\x89\xaf\xf2\x8d\x98\x85\xef\xbc\x8e\xe2\x80\x8d\xf0\x90\x85\xbc\xf2\xb2\x87\x9b", false); } // [C2, V7]
8293test { try toAsciiFail("\xe2\x89\xaf\xf2\x8d\x98\x85\xef\xbc\x8e\xe2\x80\x8d\xf0\x90\x85\xbc\xf2\xb2\x87\x9b", true); } // [V7]
3472test { try toUnicodeFail(">\xcc\xb8\xf2\x8d\x98\x85\xef\xbc\x8e\xe2\x80\x8d\xf0\x90\x85\xbc\xf2\xb2\x87\x9b"); } // [C2, V7]8294test { try toUnicodeFail(">\xcc\xb8\xf2\x8d\x98\x85\xef\xbc\x8e\xe2\x80\x8d\xf0\x90\x85\xbc\xf2\xb2\x87\x9b"); } // [C2, V7]
8295test { try toAsciiFail(">\xcc\xb8\xf2\x8d\x98\x85\xef\xbc\x8e\xe2\x80\x8d\xf0\x90\x85\xbc\xf2\xb2\x87\x9b", false); } // [C2, V7]
8296test { try toAsciiFail(">\xcc\xb8\xf2\x8d\x98\x85\xef\xbc\x8e\xe2\x80\x8d\xf0\x90\x85\xbc\xf2\xb2\x87\x9b", true); } // [V7]
3473test { try toUnicodeFail("\xe2\x89\xaf\xf2\x8d\x98\x85.\xe2\x80\x8d\xf0\x90\x85\xbc\xf2\xb2\x87\x9b"); } // [C2, V7]8297test { try toUnicodeFail("\xe2\x89\xaf\xf2\x8d\x98\x85.\xe2\x80\x8d\xf0\x90\x85\xbc\xf2\xb2\x87\x9b"); } // [C2, V7]
8298test { try toAsciiFail("\xe2\x89\xaf\xf2\x8d\x98\x85.\xe2\x80\x8d\xf0\x90\x85\xbc\xf2\xb2\x87\x9b", false); } // [C2, V7]
8299test { try toAsciiFail("\xe2\x89\xaf\xf2\x8d\x98\x85.\xe2\x80\x8d\xf0\x90\x85\xbc\xf2\xb2\x87\x9b", true); } // [V7]
3474test { try toUnicodeFail(">\xcc\xb8\xf2\x8d\x98\x85.\xe2\x80\x8d\xf0\x90\x85\xbc\xf2\xb2\x87\x9b"); } // [C2, V7]8300test { try toUnicodeFail(">\xcc\xb8\xf2\x8d\x98\x85.\xe2\x80\x8d\xf0\x90\x85\xbc\xf2\xb2\x87\x9b"); } // [C2, V7]
8301test { try toAsciiFail(">\xcc\xb8\xf2\x8d\x98\x85.\xe2\x80\x8d\xf0\x90\x85\xbc\xf2\xb2\x87\x9b", false); } // [C2, V7]
8302test { try toAsciiFail(">\xcc\xb8\xf2\x8d\x98\x85.\xe2\x80\x8d\xf0\x90\x85\xbc\xf2\xb2\x87\x9b", true); } // [V7]
3475test { try toUnicodeFail("xn--hdh84488f.xn--xy7cw2886b"); } // [V7]8303test { try toUnicodeFail("xn--hdh84488f.xn--xy7cw2886b"); } // [V7]
8304test { try toAsciiFail("xn--hdh84488f.xn--xy7cw2886b", false); } // [V7]
8305test { try toAsciiFail("xn--hdh84488f.xn--xy7cw2886b", true); } // [V7]
3476test { try toUnicodeFail("xn--hdh84488f.xn--1ug8099fbjp4e"); } // [C2, V7]8306test { try toUnicodeFail("xn--hdh84488f.xn--1ug8099fbjp4e"); } // [C2, V7]
8307test { try toAsciiFail("xn--hdh84488f.xn--1ug8099fbjp4e", false); } // [C2, V7]
8308test { try toAsciiFail("xn--hdh84488f.xn--1ug8099fbjp4e", true); } // [C2, V7]
3477test { try toUnicodeFail("\xd9\x81\xc3\x9f\xf0\x90\xb0\xaf\xef\xbd\xa1\xf0\x9d\x9f\x95\xf0\x90\xab\xab"); } // [B1, B2]8309test { try toUnicodeFail("\xd9\x81\xc3\x9f\xf0\x90\xb0\xaf\xef\xbd\xa1\xf0\x9d\x9f\x95\xf0\x90\xab\xab"); } // [B1, B2]
8310test { try toAsciiFail("\xd9\x81\xc3\x9f\xf0\x90\xb0\xaf\xef\xbd\xa1\xf0\x9d\x9f\x95\xf0\x90\xab\xab", false); } // [B1, B2]
8311test { try toAsciiFail("\xd9\x81\xc3\x9f\xf0\x90\xb0\xaf\xef\xbd\xa1\xf0\x9d\x9f\x95\xf0\x90\xab\xab", true); } // [B1, B2]
3478test { try toUnicodeFail("\xd9\x81\xc3\x9f\xf0\x90\xb0\xaf\xe3\x80\x827\xf0\x90\xab\xab"); } // [B1, B2]8312test { try toUnicodeFail("\xd9\x81\xc3\x9f\xf0\x90\xb0\xaf\xe3\x80\x827\xf0\x90\xab\xab"); } // [B1, B2]
8313test { try toAsciiFail("\xd9\x81\xc3\x9f\xf0\x90\xb0\xaf\xe3\x80\x827\xf0\x90\xab\xab", false); } // [B1, B2]
8314test { try toAsciiFail("\xd9\x81\xc3\x9f\xf0\x90\xb0\xaf\xe3\x80\x827\xf0\x90\xab\xab", true); } // [B1, B2]
3479test { try toUnicodeFail("\xd9\x81SS\xf0\x90\xb0\xaf\xe3\x80\x827\xf0\x90\xab\xab"); } // [B1, B2]8315test { try toUnicodeFail("\xd9\x81SS\xf0\x90\xb0\xaf\xe3\x80\x827\xf0\x90\xab\xab"); } // [B1, B2]
8316test { try toAsciiFail("\xd9\x81SS\xf0\x90\xb0\xaf\xe3\x80\x827\xf0\x90\xab\xab", false); } // [B1, B2]
8317test { try toAsciiFail("\xd9\x81SS\xf0\x90\xb0\xaf\xe3\x80\x827\xf0\x90\xab\xab", true); } // [B1, B2]
3480test { try toUnicodeFail("\xd9\x81ss\xf0\x90\xb0\xaf\xe3\x80\x827\xf0\x90\xab\xab"); } // [B1, B2]8318test { try toUnicodeFail("\xd9\x81ss\xf0\x90\xb0\xaf\xe3\x80\x827\xf0\x90\xab\xab"); } // [B1, B2]
8319test { try toAsciiFail("\xd9\x81ss\xf0\x90\xb0\xaf\xe3\x80\x827\xf0\x90\xab\xab", false); } // [B1, B2]
8320test { try toAsciiFail("\xd9\x81ss\xf0\x90\xb0\xaf\xe3\x80\x827\xf0\x90\xab\xab", true); } // [B1, B2]
3481test { try toUnicodeFail("xn--ss-jvd2339x.xn--7-mm5i"); } // [B1, B2]8321test { try toUnicodeFail("xn--ss-jvd2339x.xn--7-mm5i"); } // [B1, B2]
8322test { try toAsciiFail("xn--ss-jvd2339x.xn--7-mm5i", false); } // [B1, B2]
8323test { try toAsciiFail("xn--ss-jvd2339x.xn--7-mm5i", true); } // [B1, B2]
3482test { try toUnicodeFail("xn--zca96ys96y.xn--7-mm5i"); } // [B1, B2]8324test { try toUnicodeFail("xn--zca96ys96y.xn--7-mm5i"); } // [B1, B2]
8325test { try toAsciiFail("xn--zca96ys96y.xn--7-mm5i", false); } // [B1, B2]
8326test { try toAsciiFail("xn--zca96ys96y.xn--7-mm5i", true); } // [B1, B2]
3483test { try toUnicodeFail("\xd9\x81SS\xf0\x90\xb0\xaf\xef\xbd\xa1\xf0\x9d\x9f\x95\xf0\x90\xab\xab"); } // [B1, B2]8327test { try toUnicodeFail("\xd9\x81SS\xf0\x90\xb0\xaf\xef\xbd\xa1\xf0\x9d\x9f\x95\xf0\x90\xab\xab"); } // [B1, B2]
8328test { try toAsciiFail("\xd9\x81SS\xf0\x90\xb0\xaf\xef\xbd\xa1\xf0\x9d\x9f\x95\xf0\x90\xab\xab", false); } // [B1, B2]
8329test { try toAsciiFail("\xd9\x81SS\xf0\x90\xb0\xaf\xef\xbd\xa1\xf0\x9d\x9f\x95\xf0\x90\xab\xab", true); } // [B1, B2]
3484test { try toUnicodeFail("\xd9\x81ss\xf0\x90\xb0\xaf\xef\xbd\xa1\xf0\x9d\x9f\x95\xf0\x90\xab\xab"); } // [B1, B2]8330test { try toUnicodeFail("\xd9\x81ss\xf0\x90\xb0\xaf\xef\xbd\xa1\xf0\x9d\x9f\x95\xf0\x90\xab\xab"); } // [B1, B2]
8331test { try toAsciiFail("\xd9\x81ss\xf0\x90\xb0\xaf\xef\xbd\xa1\xf0\x9d\x9f\x95\xf0\x90\xab\xab", false); } // [B1, B2]
8332test { try toAsciiFail("\xd9\x81ss\xf0\x90\xb0\xaf\xef\xbd\xa1\xf0\x9d\x9f\x95\xf0\x90\xab\xab", true); } // [B1, B2]
3485test { try toUnicodeFail("\xd9\x81Ss\xf0\x90\xb0\xaf\xe3\x80\x827\xf0\x90\xab\xab"); } // [B1, B2]8333test { try toUnicodeFail("\xd9\x81Ss\xf0\x90\xb0\xaf\xe3\x80\x827\xf0\x90\xab\xab"); } // [B1, B2]
8334test { try toAsciiFail("\xd9\x81Ss\xf0\x90\xb0\xaf\xe3\x80\x827\xf0\x90\xab\xab", false); } // [B1, B2]
8335test { try toAsciiFail("\xd9\x81Ss\xf0\x90\xb0\xaf\xe3\x80\x827\xf0\x90\xab\xab", true); } // [B1, B2]
3486test { try toUnicodeFail("\xd9\x81Ss\xf0\x90\xb0\xaf\xef\xbd\xa1\xf0\x9d\x9f\x95\xf0\x90\xab\xab"); } // [B1, B2]8336test { try toUnicodeFail("\xd9\x81Ss\xf0\x90\xb0\xaf\xef\xbd\xa1\xf0\x9d\x9f\x95\xf0\x90\xab\xab"); } // [B1, B2]
8337test { try toAsciiFail("\xd9\x81Ss\xf0\x90\xb0\xaf\xef\xbd\xa1\xf0\x9d\x9f\x95\xf0\x90\xab\xab", false); } // [B1, B2]
8338test { try toAsciiFail("\xd9\x81Ss\xf0\x90\xb0\xaf\xef\xbd\xa1\xf0\x9d\x9f\x95\xf0\x90\xab\xab", true); } // [B1, B2]
3487test { try toUnicodeFail("\xc3\x9f\xde\xac\xde\xa7\xe0\xa2\xb1\xe3\x80\x82\xf0\x90\xad\x81\xf4\x85\xae\x99\xf0\x90\xb9\xb2"); } // [B2, B5, B6, V7]8339test { try toUnicodeFail("\xc3\x9f\xde\xac\xde\xa7\xe0\xa2\xb1\xe3\x80\x82\xf0\x90\xad\x81\xf4\x85\xae\x99\xf0\x90\xb9\xb2"); } // [B2, B5, B6, V7]
8340test { try toAsciiFail("\xc3\x9f\xde\xac\xde\xa7\xe0\xa2\xb1\xe3\x80\x82\xf0\x90\xad\x81\xf4\x85\xae\x99\xf0\x90\xb9\xb2", false); } // [B2, B5, B6, V7]
8341test { try toAsciiFail("\xc3\x9f\xde\xac\xde\xa7\xe0\xa2\xb1\xe3\x80\x82\xf0\x90\xad\x81\xf4\x85\xae\x99\xf0\x90\xb9\xb2", true); } // [B2, B5, B6, V7]
3488test { try toUnicodeFail("SS\xde\xac\xde\xa7\xe0\xa2\xb1\xe3\x80\x82\xf0\x90\xad\x81\xf4\x85\xae\x99\xf0\x90\xb9\xb2"); } // [B2, B5, B6, V7]8342test { try toUnicodeFail("SS\xde\xac\xde\xa7\xe0\xa2\xb1\xe3\x80\x82\xf0\x90\xad\x81\xf4\x85\xae\x99\xf0\x90\xb9\xb2"); } // [B2, B5, B6, V7]
8343test { try toAsciiFail("SS\xde\xac\xde\xa7\xe0\xa2\xb1\xe3\x80\x82\xf0\x90\xad\x81\xf4\x85\xae\x99\xf0\x90\xb9\xb2", false); } // [B2, B5, B6, V7]
8344test { try toAsciiFail("SS\xde\xac\xde\xa7\xe0\xa2\xb1\xe3\x80\x82\xf0\x90\xad\x81\xf4\x85\xae\x99\xf0\x90\xb9\xb2", true); } // [B2, B5, B6, V7]
3489test { try toUnicodeFail("ss\xde\xac\xde\xa7\xe0\xa2\xb1\xe3\x80\x82\xf0\x90\xad\x81\xf4\x85\xae\x99\xf0\x90\xb9\xb2"); } // [B2, B5, B6, V7]8345test { try toUnicodeFail("ss\xde\xac\xde\xa7\xe0\xa2\xb1\xe3\x80\x82\xf0\x90\xad\x81\xf4\x85\xae\x99\xf0\x90\xb9\xb2"); } // [B2, B5, B6, V7]
8346test { try toAsciiFail("ss\xde\xac\xde\xa7\xe0\xa2\xb1\xe3\x80\x82\xf0\x90\xad\x81\xf4\x85\xae\x99\xf0\x90\xb9\xb2", false); } // [B2, B5, B6, V7]
8347test { try toAsciiFail("ss\xde\xac\xde\xa7\xe0\xa2\xb1\xe3\x80\x82\xf0\x90\xad\x81\xf4\x85\xae\x99\xf0\x90\xb9\xb2", true); } // [B2, B5, B6, V7]
3490test { try toUnicodeFail("Ss\xde\xac\xde\xa7\xe0\xa2\xb1\xe3\x80\x82\xf0\x90\xad\x81\xf4\x85\xae\x99\xf0\x90\xb9\xb2"); } // [B2, B5, B6, V7]8348test { try toUnicodeFail("Ss\xde\xac\xde\xa7\xe0\xa2\xb1\xe3\x80\x82\xf0\x90\xad\x81\xf4\x85\xae\x99\xf0\x90\xb9\xb2"); } // [B2, B5, B6, V7]
8349test { try toAsciiFail("Ss\xde\xac\xde\xa7\xe0\xa2\xb1\xe3\x80\x82\xf0\x90\xad\x81\xf4\x85\xae\x99\xf0\x90\xb9\xb2", false); } // [B2, B5, B6, V7]
8350test { try toAsciiFail("Ss\xde\xac\xde\xa7\xe0\xa2\xb1\xe3\x80\x82\xf0\x90\xad\x81\xf4\x85\xae\x99\xf0\x90\xb9\xb2", true); } // [B2, B5, B6, V7]
3491test { try toUnicodeFail("xn--ss-9qet02k.xn--e09co8cr9861c"); } // [B2, B5, B6, V7]8351test { try toUnicodeFail("xn--ss-9qet02k.xn--e09co8cr9861c"); } // [B2, B5, B6, V7]
8352test { try toAsciiFail("xn--ss-9qet02k.xn--e09co8cr9861c", false); } // [B2, B5, B6, V7]
8353test { try toAsciiFail("xn--ss-9qet02k.xn--e09co8cr9861c", true); } // [B2, B5, B6, V7]
3492test { try toUnicodeFail("xn--zca685aoa95h.xn--e09co8cr9861c"); } // [B2, B5, B6, V7]8354test { try toUnicodeFail("xn--zca685aoa95h.xn--e09co8cr9861c"); } // [B2, B5, B6, V7]
8355test { try toAsciiFail("xn--zca685aoa95h.xn--e09co8cr9861c", false); } // [B2, B5, B6, V7]
8356test { try toAsciiFail("xn--zca685aoa95h.xn--e09co8cr9861c", true); } // [B2, B5, B6, V7]
3493test { try toUnicodeFail("-\xef\xbd\xa1\xf3\xa0\x89\x97\xe2\x92\x8c\xf0\x9e\xaf\x9b"); } // [B1, V3, V7]8357test { try toUnicodeFail("-\xef\xbd\xa1\xf3\xa0\x89\x97\xe2\x92\x8c\xf0\x9e\xaf\x9b"); } // [B1, V3, V7]
8358test { try toAsciiFail("-\xef\xbd\xa1\xf3\xa0\x89\x97\xe2\x92\x8c\xf0\x9e\xaf\x9b", false); } // [B1, V3, V7]
8359test { try toAsciiFail("-\xef\xbd\xa1\xf3\xa0\x89\x97\xe2\x92\x8c\xf0\x9e\xaf\x9b", true); } // [B1, V3, V7]
3494test { try toUnicodeFail("-\xe3\x80\x82\xf3\xa0\x89\x975.\xf0\x9e\xaf\x9b"); } // [B1, V3, V7]8360test { try toUnicodeFail("-\xe3\x80\x82\xf3\xa0\x89\x975.\xf0\x9e\xaf\x9b"); } // [B1, V3, V7]
8361test { try toAsciiFail("-\xe3\x80\x82\xf3\xa0\x89\x975.\xf0\x9e\xaf\x9b", false); } // [B1, V3, V7]
8362test { try toAsciiFail("-\xe3\x80\x82\xf3\xa0\x89\x975.\xf0\x9e\xaf\x9b", true); } // [B1, V3, V7]
3495test { try toUnicodeFail("-.xn--5-zz21m.xn--6x6h"); } // [B1, V3, V7]8363test { try toUnicodeFail("-.xn--5-zz21m.xn--6x6h"); } // [B1, V3, V7]
8364test { try toAsciiFail("-.xn--5-zz21m.xn--6x6h", false); } // [B1, V3, V7]
8365test { try toAsciiFail("-.xn--5-zz21m.xn--6x6h", true); } // [B1, V3, V7]
3496test { try toUnicodeFail("-.xn--xsh6367n1bi3e"); } // [B1, V3, V7]8366test { try toUnicodeFail("-.xn--xsh6367n1bi3e"); } // [B1, V3, V7]
8367test { try toAsciiFail("-.xn--xsh6367n1bi3e", false); } // [B1, V3, V7]
8368test { try toAsciiFail("-.xn--xsh6367n1bi3e", true); } // [B1, V3, V7]
3497test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xcf\x82\xef\xbc\x8e-\xe2\x89\xae\xef\xb2\xab"); } // [B1, V3, V7]8369test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xcf\x82\xef\xbc\x8e-\xe2\x89\xae\xef\xb2\xab"); } // [B1, V3, V7]
8370test { try toAsciiFail("\xf0\xbc\x8e\x8f\xcf\x82\xef\xbc\x8e-\xe2\x89\xae\xef\xb2\xab", false); } // [B1, V3, V7]
8371test { try toAsciiFail("\xf0\xbc\x8e\x8f\xcf\x82\xef\xbc\x8e-\xe2\x89\xae\xef\xb2\xab", true); } // [B1, V3, V7]
3498test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xcf\x82\xef\xbc\x8e-<\xcc\xb8\xef\xb2\xab"); } // [B1, V3, V7]8372test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xcf\x82\xef\xbc\x8e-<\xcc\xb8\xef\xb2\xab"); } // [B1, V3, V7]
8373test { try toAsciiFail("\xf0\xbc\x8e\x8f\xcf\x82\xef\xbc\x8e-<\xcc\xb8\xef\xb2\xab", false); } // [B1, V3, V7]
8374test { try toAsciiFail("\xf0\xbc\x8e\x8f\xcf\x82\xef\xbc\x8e-<\xcc\xb8\xef\xb2\xab", true); } // [B1, V3, V7]
3499test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xcf\x82.-\xe2\x89\xae\xd8\xae\xd8\xac"); } // [B1, V3, V7]8375test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xcf\x82.-\xe2\x89\xae\xd8\xae\xd8\xac"); } // [B1, V3, V7]
8376test { try toAsciiFail("\xf0\xbc\x8e\x8f\xcf\x82.-\xe2\x89\xae\xd8\xae\xd8\xac", false); } // [B1, V3, V7]
8377test { try toAsciiFail("\xf0\xbc\x8e\x8f\xcf\x82.-\xe2\x89\xae\xd8\xae\xd8\xac", true); } // [B1, V3, V7]
3500test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xcf\x82.-<\xcc\xb8\xd8\xae\xd8\xac"); } // [B1, V3, V7]8378test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xcf\x82.-<\xcc\xb8\xd8\xae\xd8\xac"); } // [B1, V3, V7]
8379test { try toAsciiFail("\xf0\xbc\x8e\x8f\xcf\x82.-<\xcc\xb8\xd8\xae\xd8\xac", false); } // [B1, V3, V7]
8380test { try toAsciiFail("\xf0\xbc\x8e\x8f\xcf\x82.-<\xcc\xb8\xd8\xae\xd8\xac", true); } // [B1, V3, V7]
3501test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xce\xa3.-<\xcc\xb8\xd8\xae\xd8\xac"); } // [B1, V3, V7]8381test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xce\xa3.-<\xcc\xb8\xd8\xae\xd8\xac"); } // [B1, V3, V7]
8382test { try toAsciiFail("\xf0\xbc\x8e\x8f\xce\xa3.-<\xcc\xb8\xd8\xae\xd8\xac", false); } // [B1, V3, V7]
8383test { try toAsciiFail("\xf0\xbc\x8e\x8f\xce\xa3.-<\xcc\xb8\xd8\xae\xd8\xac", true); } // [B1, V3, V7]
3502test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xce\xa3.-\xe2\x89\xae\xd8\xae\xd8\xac"); } // [B1, V3, V7]8384test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xce\xa3.-\xe2\x89\xae\xd8\xae\xd8\xac"); } // [B1, V3, V7]
8385test { try toAsciiFail("\xf0\xbc\x8e\x8f\xce\xa3.-\xe2\x89\xae\xd8\xae\xd8\xac", false); } // [B1, V3, V7]
8386test { try toAsciiFail("\xf0\xbc\x8e\x8f\xce\xa3.-\xe2\x89\xae\xd8\xae\xd8\xac", true); } // [B1, V3, V7]
3503test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xcf\x83.-\xe2\x89\xae\xd8\xae\xd8\xac"); } // [B1, V3, V7]8387test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xcf\x83.-\xe2\x89\xae\xd8\xae\xd8\xac"); } // [B1, V3, V7]
8388test { try toAsciiFail("\xf0\xbc\x8e\x8f\xcf\x83.-\xe2\x89\xae\xd8\xae\xd8\xac", false); } // [B1, V3, V7]
8389test { try toAsciiFail("\xf0\xbc\x8e\x8f\xcf\x83.-\xe2\x89\xae\xd8\xae\xd8\xac", true); } // [B1, V3, V7]
3504test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xcf\x83.-<\xcc\xb8\xd8\xae\xd8\xac"); } // [B1, V3, V7]8390test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xcf\x83.-<\xcc\xb8\xd8\xae\xd8\xac"); } // [B1, V3, V7]
8391test { try toAsciiFail("\xf0\xbc\x8e\x8f\xcf\x83.-<\xcc\xb8\xd8\xae\xd8\xac", false); } // [B1, V3, V7]
8392test { try toAsciiFail("\xf0\xbc\x8e\x8f\xcf\x83.-<\xcc\xb8\xd8\xae\xd8\xac", true); } // [B1, V3, V7]
3505test { try toUnicodeFail("xn--4xa92520c.xn----9mcf1400a"); } // [B1, V3, V7]8393test { try toUnicodeFail("xn--4xa92520c.xn----9mcf1400a"); } // [B1, V3, V7]
8394test { try toAsciiFail("xn--4xa92520c.xn----9mcf1400a", false); } // [B1, V3, V7]
8395test { try toAsciiFail("xn--4xa92520c.xn----9mcf1400a", true); } // [B1, V3, V7]
3506test { try toUnicodeFail("xn--3xa13520c.xn----9mcf1400a"); } // [B1, V3, V7]8396test { try toUnicodeFail("xn--3xa13520c.xn----9mcf1400a"); } // [B1, V3, V7]
8397test { try toAsciiFail("xn--3xa13520c.xn----9mcf1400a", false); } // [B1, V3, V7]
8398test { try toAsciiFail("xn--3xa13520c.xn----9mcf1400a", true); } // [B1, V3, V7]
3507test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xce\xa3\xef\xbc\x8e-<\xcc\xb8\xef\xb2\xab"); } // [B1, V3, V7]8399test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xce\xa3\xef\xbc\x8e-<\xcc\xb8\xef\xb2\xab"); } // [B1, V3, V7]
8400test { try toAsciiFail("\xf0\xbc\x8e\x8f\xce\xa3\xef\xbc\x8e-<\xcc\xb8\xef\xb2\xab", false); } // [B1, V3, V7]
8401test { try toAsciiFail("\xf0\xbc\x8e\x8f\xce\xa3\xef\xbc\x8e-<\xcc\xb8\xef\xb2\xab", true); } // [B1, V3, V7]
3508test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xce\xa3\xef\xbc\x8e-\xe2\x89\xae\xef\xb2\xab"); } // [B1, V3, V7]8402test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xce\xa3\xef\xbc\x8e-\xe2\x89\xae\xef\xb2\xab"); } // [B1, V3, V7]
8403test { try toAsciiFail("\xf0\xbc\x8e\x8f\xce\xa3\xef\xbc\x8e-\xe2\x89\xae\xef\xb2\xab", false); } // [B1, V3, V7]
8404test { try toAsciiFail("\xf0\xbc\x8e\x8f\xce\xa3\xef\xbc\x8e-\xe2\x89\xae\xef\xb2\xab", true); } // [B1, V3, V7]
3509test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xcf\x83\xef\xbc\x8e-\xe2\x89\xae\xef\xb2\xab"); } // [B1, V3, V7]8405test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xcf\x83\xef\xbc\x8e-\xe2\x89\xae\xef\xb2\xab"); } // [B1, V3, V7]
8406test { try toAsciiFail("\xf0\xbc\x8e\x8f\xcf\x83\xef\xbc\x8e-\xe2\x89\xae\xef\xb2\xab", false); } // [B1, V3, V7]
8407test { try toAsciiFail("\xf0\xbc\x8e\x8f\xcf\x83\xef\xbc\x8e-\xe2\x89\xae\xef\xb2\xab", true); } // [B1, V3, V7]
3510test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xcf\x83\xef\xbc\x8e-<\xcc\xb8\xef\xb2\xab"); } // [B1, V3, V7]8408test { try toUnicodeFail("\xf0\xbc\x8e\x8f\xcf\x83\xef\xbc\x8e-<\xcc\xb8\xef\xb2\xab"); } // [B1, V3, V7]
8409test { try toAsciiFail("\xf0\xbc\x8e\x8f\xcf\x83\xef\xbc\x8e-<\xcc\xb8\xef\xb2\xab", false); } // [B1, V3, V7]
8410test { try toAsciiFail("\xf0\xbc\x8e\x8f\xcf\x83\xef\xbc\x8e-<\xcc\xb8\xef\xb2\xab", true); } // [B1, V3, V7]
3511test { try toUnicodeFail("\xea\xa1\x97\xe0\xa2\xb8\xdc\x99\xef\xbc\x8e\xf1\x94\xa4\x94\xf3\xa0\x9b\x99\xe0\xb1\x8d\xef\xb0\xbe"); } // [B5, B6, V7]8411test { try toUnicodeFail("\xea\xa1\x97\xe0\xa2\xb8\xdc\x99\xef\xbc\x8e\xf1\x94\xa4\x94\xf3\xa0\x9b\x99\xe0\xb1\x8d\xef\xb0\xbe"); } // [B5, B6, V7]
8412test { try toAsciiFail("\xea\xa1\x97\xe0\xa2\xb8\xdc\x99\xef\xbc\x8e\xf1\x94\xa4\x94\xf3\xa0\x9b\x99\xe0\xb1\x8d\xef\xb0\xbe", false); } // [B5, B6, V7]
8413test { try toAsciiFail("\xea\xa1\x97\xe0\xa2\xb8\xdc\x99\xef\xbc\x8e\xf1\x94\xa4\x94\xf3\xa0\x9b\x99\xe0\xb1\x8d\xef\xb0\xbe", true); } // [B5, B6, V7]
3512test { try toUnicodeFail("\xea\xa1\x97\xe0\xa2\xb8\xdc\x99.\xf1\x94\xa4\x94\xf3\xa0\x9b\x99\xe0\xb1\x8d\xd9\x83\xd9\x8a"); } // [B5, B6, V7]8414test { try toUnicodeFail("\xea\xa1\x97\xe0\xa2\xb8\xdc\x99.\xf1\x94\xa4\x94\xf3\xa0\x9b\x99\xe0\xb1\x8d\xd9\x83\xd9\x8a"); } // [B5, B6, V7]
8415test { try toAsciiFail("\xea\xa1\x97\xe0\xa2\xb8\xdc\x99.\xf1\x94\xa4\x94\xf3\xa0\x9b\x99\xe0\xb1\x8d\xd9\x83\xd9\x8a", false); } // [B5, B6, V7]
8416test { try toAsciiFail("\xea\xa1\x97\xe0\xa2\xb8\xdc\x99.\xf1\x94\xa4\x94\xf3\xa0\x9b\x99\xe0\xb1\x8d\xd9\x83\xd9\x8a", true); } // [B5, B6, V7]
3513test { try toUnicodeFail("xn--jnb34fs003a.xn--fhbo927bk128mpi24d"); } // [B5, B6, V7]8417test { try toUnicodeFail("xn--jnb34fs003a.xn--fhbo927bk128mpi24d"); } // [B5, B6, V7]
8418test { try toAsciiFail("xn--jnb34fs003a.xn--fhbo927bk128mpi24d", false); } // [B5, B6, V7]
8419test { try toAsciiFail("xn--jnb34fs003a.xn--fhbo927bk128mpi24d", true); } // [B5, B6, V7]
3514test { try toUnicodeFail("\xf0\x90\xa0\xb0\xe0\xa2\xb7\xf0\x9e\xa4\x8c\xf0\x90\xab\xad\xe3\x80\x82\xf0\x90\x8b\xa6\xe1\x9f\x8d\xf0\x9d\xa9\x83"); } // [B1]8420test { try toUnicodeFail("\xf0\x90\xa0\xb0\xe0\xa2\xb7\xf0\x9e\xa4\x8c\xf0\x90\xab\xad\xe3\x80\x82\xf0\x90\x8b\xa6\xe1\x9f\x8d\xf0\x9d\xa9\x83"); } // [B1]
8421test { try toAsciiFail("\xf0\x90\xa0\xb0\xe0\xa2\xb7\xf0\x9e\xa4\x8c\xf0\x90\xab\xad\xe3\x80\x82\xf0\x90\x8b\xa6\xe1\x9f\x8d\xf0\x9d\xa9\x83", false); } // [B1]
8422test { try toAsciiFail("\xf0\x90\xa0\xb0\xe0\xa2\xb7\xf0\x9e\xa4\x8c\xf0\x90\xab\xad\xe3\x80\x82\xf0\x90\x8b\xa6\xe1\x9f\x8d\xf0\x9d\xa9\x83", true); } // [B1]
3515test { try toUnicodeFail("\xf0\x90\xa0\xb0\xe0\xa2\xb7\xf0\x9e\xa4\xae\xf0\x90\xab\xad\xe3\x80\x82\xf0\x90\x8b\xa6\xe1\x9f\x8d\xf0\x9d\xa9\x83"); } // [B1]8423test { try toUnicodeFail("\xf0\x90\xa0\xb0\xe0\xa2\xb7\xf0\x9e\xa4\xae\xf0\x90\xab\xad\xe3\x80\x82\xf0\x90\x8b\xa6\xe1\x9f\x8d\xf0\x9d\xa9\x83"); } // [B1]
8424test { try toAsciiFail("\xf0\x90\xa0\xb0\xe0\xa2\xb7\xf0\x9e\xa4\xae\xf0\x90\xab\xad\xe3\x80\x82\xf0\x90\x8b\xa6\xe1\x9f\x8d\xf0\x9d\xa9\x83", false); } // [B1]
8425test { try toAsciiFail("\xf0\x90\xa0\xb0\xe0\xa2\xb7\xf0\x9e\xa4\xae\xf0\x90\xab\xad\xe3\x80\x82\xf0\x90\x8b\xa6\xe1\x9f\x8d\xf0\x9d\xa9\x83", true); } // [B1]
3516test { try toUnicodeFail("xn--dzb5191kezbrw47a.xn--p4e3841jz9tf"); } // [B1]8426test { try toUnicodeFail("xn--dzb5191kezbrw47a.xn--p4e3841jz9tf"); } // [B1]
8427test { try toAsciiFail("xn--dzb5191kezbrw47a.xn--p4e3841jz9tf", false); } // [B1]
8428test { try toAsciiFail("xn--dzb5191kezbrw47a.xn--p4e3841jz9tf", true); } // [B1]
3517test { try toUnicodeFail("\xf0\x90\xa0\xb0\xe0\xa2\xb7\xf0\x9e\xa4\xae\xf0\x90\xab\xad.\xf0\x90\x8b\xa6\xe1\x9f\x8d\xf0\x9d\xa9\x83"); } // [B1]8429test { try toUnicodeFail("\xf0\x90\xa0\xb0\xe0\xa2\xb7\xf0\x9e\xa4\xae\xf0\x90\xab\xad.\xf0\x90\x8b\xa6\xe1\x9f\x8d\xf0\x9d\xa9\x83"); } // [B1]
8430test { try toAsciiFail("\xf0\x90\xa0\xb0\xe0\xa2\xb7\xf0\x9e\xa4\xae\xf0\x90\xab\xad.\xf0\x90\x8b\xa6\xe1\x9f\x8d\xf0\x9d\xa9\x83", false); } // [B1]
8431test { try toAsciiFail("\xf0\x90\xa0\xb0\xe0\xa2\xb7\xf0\x9e\xa4\xae\xf0\x90\xab\xad.\xf0\x90\x8b\xa6\xe1\x9f\x8d\xf0\x9d\xa9\x83", true); } // [B1]
3518test { try toUnicodeFail("\xf0\x90\xa0\xb0\xe0\xa2\xb7\xf0\x9e\xa4\x8c\xf0\x90\xab\xad.\xf0\x90\x8b\xa6\xe1\x9f\x8d\xf0\x9d\xa9\x83"); } // [B1]8432test { try toUnicodeFail("\xf0\x90\xa0\xb0\xe0\xa2\xb7\xf0\x9e\xa4\x8c\xf0\x90\xab\xad.\xf0\x90\x8b\xa6\xe1\x9f\x8d\xf0\x9d\xa9\x83"); } // [B1]
8433test { try toAsciiFail("\xf0\x90\xa0\xb0\xe0\xa2\xb7\xf0\x9e\xa4\x8c\xf0\x90\xab\xad.\xf0\x90\x8b\xa6\xe1\x9f\x8d\xf0\x9d\xa9\x83", false); } // [B1]
8434test { try toAsciiFail("\xf0\x90\xa0\xb0\xe0\xa2\xb7\xf0\x9e\xa4\x8c\xf0\x90\xab\xad.\xf0\x90\x8b\xa6\xe1\x9f\x8d\xf0\x9d\xa9\x83", true); } // [B1]
3519test { try toUnicodeFail("\xe2\x82\x82\xe3\x98\xb7--\xe3\x80\x82\xdb\x93\xe2\x80\x8c\xf0\x90\xab\x86\xf0\x91\x96\xbf"); } // [B1, C1, V2, V3]8435test { try toUnicodeFail("\xe2\x82\x82\xe3\x98\xb7--\xe3\x80\x82\xdb\x93\xe2\x80\x8c\xf0\x90\xab\x86\xf0\x91\x96\xbf"); } // [B1, C1, V2, V3]
8436test { try toAsciiFail("\xe2\x82\x82\xe3\x98\xb7--\xe3\x80\x82\xdb\x93\xe2\x80\x8c\xf0\x90\xab\x86\xf0\x91\x96\xbf", false); } // [B1, C1, V2, V3]
8437test { try toAsciiFail("\xe2\x82\x82\xe3\x98\xb7--\xe3\x80\x82\xdb\x93\xe2\x80\x8c\xf0\x90\xab\x86\xf0\x91\x96\xbf", true); } // [B1, V2, V3]
3520test { try toUnicodeFail("\xe2\x82\x82\xe3\x98\xb7--\xe3\x80\x82\xdb\x92\xd9\x94\xe2\x80\x8c\xf0\x90\xab\x86\xf0\x91\x96\xbf"); } // [B1, C1, V2, V3]8438test { try toUnicodeFail("\xe2\x82\x82\xe3\x98\xb7--\xe3\x80\x82\xdb\x92\xd9\x94\xe2\x80\x8c\xf0\x90\xab\x86\xf0\x91\x96\xbf"); } // [B1, C1, V2, V3]
8439test { try toAsciiFail("\xe2\x82\x82\xe3\x98\xb7--\xe3\x80\x82\xdb\x92\xd9\x94\xe2\x80\x8c\xf0\x90\xab\x86\xf0\x91\x96\xbf", false); } // [B1, C1, V2, V3]
8440test { try toAsciiFail("\xe2\x82\x82\xe3\x98\xb7--\xe3\x80\x82\xdb\x92\xd9\x94\xe2\x80\x8c\xf0\x90\xab\x86\xf0\x91\x96\xbf", true); } // [B1, V2, V3]
3521test { try toUnicodeFail("2\xe3\x98\xb7--\xe3\x80\x82\xdb\x93\xe2\x80\x8c\xf0\x90\xab\x86\xf0\x91\x96\xbf"); } // [B1, C1, V2, V3]8441test { try toUnicodeFail("2\xe3\x98\xb7--\xe3\x80\x82\xdb\x93\xe2\x80\x8c\xf0\x90\xab\x86\xf0\x91\x96\xbf"); } // [B1, C1, V2, V3]
8442test { try toAsciiFail("2\xe3\x98\xb7--\xe3\x80\x82\xdb\x93\xe2\x80\x8c\xf0\x90\xab\x86\xf0\x91\x96\xbf", false); } // [B1, C1, V2, V3]
8443test { try toAsciiFail("2\xe3\x98\xb7--\xe3\x80\x82\xdb\x93\xe2\x80\x8c\xf0\x90\xab\x86\xf0\x91\x96\xbf", true); } // [B1, V2, V3]
3522test { try toUnicodeFail("2\xe3\x98\xb7--\xe3\x80\x82\xdb\x92\xd9\x94\xe2\x80\x8c\xf0\x90\xab\x86\xf0\x91\x96\xbf"); } // [B1, C1, V2, V3]8444test { try toUnicodeFail("2\xe3\x98\xb7--\xe3\x80\x82\xdb\x92\xd9\x94\xe2\x80\x8c\xf0\x90\xab\x86\xf0\x91\x96\xbf"); } // [B1, C1, V2, V3]
8445test { try toAsciiFail("2\xe3\x98\xb7--\xe3\x80\x82\xdb\x92\xd9\x94\xe2\x80\x8c\xf0\x90\xab\x86\xf0\x91\x96\xbf", false); } // [B1, C1, V2, V3]
8446test { try toAsciiFail("2\xe3\x98\xb7--\xe3\x80\x82\xdb\x92\xd9\x94\xe2\x80\x8c\xf0\x90\xab\x86\xf0\x91\x96\xbf", true); } // [B1, V2, V3]
3523test { try toUnicodeFail("xn--2---u58b.xn--jlb8024k14g"); } // [B1, V2, V3]8447test { try toUnicodeFail("xn--2---u58b.xn--jlb8024k14g"); } // [B1, V2, V3]
8448test { try toAsciiFail("xn--2---u58b.xn--jlb8024k14g", false); } // [B1, V2, V3]
8449test { try toAsciiFail("xn--2---u58b.xn--jlb8024k14g", true); } // [B1, V2, V3]
3524test { try toUnicodeFail("xn--2---u58b.xn--jlb820ku99nbgj"); } // [B1, C1, V2, V3]8450test { try toUnicodeFail("xn--2---u58b.xn--jlb820ku99nbgj"); } // [B1, C1, V2, V3]
8451test { try toAsciiFail("xn--2---u58b.xn--jlb820ku99nbgj", false); } // [B1, C1, V2, V3]
8452test { try toAsciiFail("xn--2---u58b.xn--jlb820ku99nbgj", true); } // [B1, C1, V2, V3]
3525test { try toUnicodeFail("-\xf0\x98\x8a\xbb\xef\xbc\x8e\xe1\xa1\xae\xd8\xad-"); } // [B1, B5, B6, V3]8453test { try toUnicodeFail("-\xf0\x98\x8a\xbb\xef\xbc\x8e\xe1\xa1\xae\xd8\xad-"); } // [B1, B5, B6, V3]
8454test { try toAsciiFail("-\xf0\x98\x8a\xbb\xef\xbc\x8e\xe1\xa1\xae\xd8\xad-", false); } // [B1, B5, B6, V3]
8455test { try toAsciiFail("-\xf0\x98\x8a\xbb\xef\xbc\x8e\xe1\xa1\xae\xd8\xad-", true); } // [B1, B5, B6, V3]
3526test { try toUnicodeFail("-\xf0\x98\x8a\xbb.\xe1\xa1\xae\xd8\xad-"); } // [B1, B5, B6, V3]8456test { try toUnicodeFail("-\xf0\x98\x8a\xbb.\xe1\xa1\xae\xd8\xad-"); } // [B1, B5, B6, V3]
8457test { try toAsciiFail("-\xf0\x98\x8a\xbb.\xe1\xa1\xae\xd8\xad-", false); } // [B1, B5, B6, V3]
8458test { try toAsciiFail("-\xf0\x98\x8a\xbb.\xe1\xa1\xae\xd8\xad-", true); } // [B1, B5, B6, V3]
3527test { try toUnicodeFail("xn----bp5n.xn----bnc231l"); } // [B1, B5, B6, V3]8459test { try toUnicodeFail("xn----bp5n.xn----bnc231l"); } // [B1, B5, B6, V3]
8460test { try toAsciiFail("xn----bp5n.xn----bnc231l", false); } // [B1, B5, B6, V3]
8461test { try toAsciiFail("xn----bp5n.xn----bnc231l", true); } // [B1, B5, B6, V3]
3528test { try toUnicodeFail("\xe2\x80\x8c-\xc3\x9f\xef\xbd\xa1\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf"); } // [B1, B5, B6, C1]8462test { try toUnicodeFail("\xe2\x80\x8c-\xc3\x9f\xef\xbd\xa1\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf"); } // [B1, B5, B6, C1]
8463test { try toAsciiFail("\xe2\x80\x8c-\xc3\x9f\xef\xbd\xa1\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf", false); } // [B1, B5, B6, C1]
8464test { try toAsciiFail("\xe2\x80\x8c-\xc3\x9f\xef\xbd\xa1\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf", true); } // [B1, B5, B6, V3]
3529test { try toUnicodeFail("\xe2\x80\x8c-\xc3\x9f\xe3\x80\x82\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf"); } // [B1, B5, B6, C1]8465test { try toUnicodeFail("\xe2\x80\x8c-\xc3\x9f\xe3\x80\x82\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf"); } // [B1, B5, B6, C1]
8466test { try toAsciiFail("\xe2\x80\x8c-\xc3\x9f\xe3\x80\x82\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf", false); } // [B1, B5, B6, C1]
8467test { try toAsciiFail("\xe2\x80\x8c-\xc3\x9f\xe3\x80\x82\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf", true); } // [B1, B5, B6, V3]
3530test { try toUnicodeFail("\xe2\x80\x8c-SS\xe3\x80\x82\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf"); } // [B1, B5, B6, C1]8468test { try toUnicodeFail("\xe2\x80\x8c-SS\xe3\x80\x82\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf"); } // [B1, B5, B6, C1]
8469test { try toAsciiFail("\xe2\x80\x8c-SS\xe3\x80\x82\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf", false); } // [B1, B5, B6, C1]
8470test { try toAsciiFail("\xe2\x80\x8c-SS\xe3\x80\x82\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf", true); } // [B1, B5, B6, V3]
3531test { try toUnicodeFail("\xe2\x80\x8c-ss\xe3\x80\x82\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf"); } // [B1, B5, B6, C1]8471test { try toUnicodeFail("\xe2\x80\x8c-ss\xe3\x80\x82\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf"); } // [B1, B5, B6, C1]
8472test { try toAsciiFail("\xe2\x80\x8c-ss\xe3\x80\x82\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf", false); } // [B1, B5, B6, C1]
8473test { try toAsciiFail("\xe2\x80\x8c-ss\xe3\x80\x82\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf", true); } // [B1, B5, B6, V3]
3532test { try toUnicodeFail("\xe2\x80\x8c-Ss\xe3\x80\x82\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf"); } // [B1, B5, B6, C1]8474test { try toUnicodeFail("\xe2\x80\x8c-Ss\xe3\x80\x82\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf"); } // [B1, B5, B6, C1]
8475test { try toAsciiFail("\xe2\x80\x8c-Ss\xe3\x80\x82\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf", false); } // [B1, B5, B6, C1]
8476test { try toAsciiFail("\xe2\x80\x8c-Ss\xe3\x80\x82\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf", true); } // [B1, B5, B6, V3]
3533test { try toUnicodeFail("-ss.xn--bhb925glx3p"); } // [B1, B5, B6, V3]8477test { try toUnicodeFail("-ss.xn--bhb925glx3p"); } // [B1, B5, B6, V3]
8478test { try toAsciiFail("-ss.xn--bhb925glx3p", false); } // [B1, B5, B6, V3]
8479test { try toAsciiFail("-ss.xn--bhb925glx3p", true); } // [B1, B5, B6, V3]
3534test { try toUnicodeFail("xn---ss-8m0a.xn--bhb925glx3p"); } // [B1, B5, B6, C1]8480test { try toUnicodeFail("xn---ss-8m0a.xn--bhb925glx3p"); } // [B1, B5, B6, C1]
8481test { try toAsciiFail("xn---ss-8m0a.xn--bhb925glx3p", false); } // [B1, B5, B6, C1]
8482test { try toAsciiFail("xn---ss-8m0a.xn--bhb925glx3p", true); } // [B1, B5, B6, C1]
3535test { try toUnicodeFail("xn----qfa550v.xn--bhb925glx3p"); } // [B1, B5, B6, C1]8483test { try toUnicodeFail("xn----qfa550v.xn--bhb925glx3p"); } // [B1, B5, B6, C1]
8484test { try toAsciiFail("xn----qfa550v.xn--bhb925glx3p", false); } // [B1, B5, B6, C1]
8485test { try toAsciiFail("xn----qfa550v.xn--bhb925glx3p", true); } // [B1, B5, B6, C1]
3536test { try toUnicodeFail("\xe2\x80\x8c-SS\xef\xbd\xa1\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf"); } // [B1, B5, B6, C1]8486test { try toUnicodeFail("\xe2\x80\x8c-SS\xef\xbd\xa1\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf"); } // [B1, B5, B6, C1]
8487test { try toAsciiFail("\xe2\x80\x8c-SS\xef\xbd\xa1\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf", false); } // [B1, B5, B6, C1]
8488test { try toAsciiFail("\xe2\x80\x8c-SS\xef\xbd\xa1\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf", true); } // [B1, B5, B6, V3]
3537test { try toUnicodeFail("\xe2\x80\x8c-ss\xef\xbd\xa1\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf"); } // [B1, B5, B6, C1]8489test { try toUnicodeFail("\xe2\x80\x8c-ss\xef\xbd\xa1\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf"); } // [B1, B5, B6, C1]
8490test { try toAsciiFail("\xe2\x80\x8c-ss\xef\xbd\xa1\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf", false); } // [B1, B5, B6, C1]
8491test { try toAsciiFail("\xe2\x80\x8c-ss\xef\xbd\xa1\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf", true); } // [B1, B5, B6, V3]
3538test { try toUnicodeFail("\xe2\x80\x8c-Ss\xef\xbd\xa1\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf"); } // [B1, B5, B6, C1]8492test { try toUnicodeFail("\xe2\x80\x8c-Ss\xef\xbd\xa1\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf"); } // [B1, B5, B6, C1]
8493test { try toAsciiFail("\xe2\x80\x8c-Ss\xef\xbd\xa1\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf", false); } // [B1, B5, B6, C1]
8494test { try toAsciiFail("\xe2\x80\x8c-Ss\xef\xbd\xa1\xe1\xa2\xa3\xf0\x90\xb9\xad\xd8\xbf", true); } // [B1, B5, B6, V3]
3539test { try toUnicodePass("\xea\xa7\x90\xd3\x80\xe1\xae\xaa\xe0\xa3\xb6\xef\xbc\x8e\xeb\x88\xb5", "\xea\xa7\x90\xd3\x8f\xe1\xae\xaa\xe0\xa3\xb6.\xeb\x88\xb5"); }8495test { try toUnicodePass("\xea\xa7\x90\xd3\x80\xe1\xae\xaa\xe0\xa3\xb6\xef\xbc\x8e\xeb\x88\xb5", "\xea\xa7\x90\xd3\x8f\xe1\xae\xaa\xe0\xa3\xb6.\xeb\x88\xb5"); }
3540test { try toAsciiPass("\xea\xa7\x90\xd3\x80\xe1\xae\xaa\xe0\xa3\xb6\xef\xbc\x8e\xeb\x88\xb5", "xn--s5a04sn4u297k.xn--2e1b", false); }8496test { try toAsciiPass("\xea\xa7\x90\xd3\x80\xe1\xae\xaa\xe0\xa3\xb6\xef\xbc\x8e\xeb\x88\xb5", "xn--s5a04sn4u297k.xn--2e1b", false); }
3541test { try toAsciiPass("\xea\xa7\x90\xd3\x80\xe1\xae\xaa\xe0\xa3\xb6\xef\xbc\x8e\xeb\x88\xb5", "xn--s5a04sn4u297k.xn--2e1b", true); }8497test { try toAsciiPass("\xea\xa7\x90\xd3\x80\xe1\xae\xaa\xe0\xa3\xb6\xef\xbc\x8e\xeb\x88\xb5", "xn--s5a04sn4u297k.xn--2e1b", true); }
...@@ -3564,173 +8520,509 @@ test { try toUnicodePass("\xea\xa7\x90\xd3\x8f\xe1\xae\xaa\xe0\xa3\xb6\xef\xbc\x...@@ -3564,173 +8520,509 @@ test { try toUnicodePass("\xea\xa7\x90\xd3\x8f\xe1\xae\xaa\xe0\xa3\xb6\xef\xbc\x
3564test { try toAsciiPass("\xea\xa7\x90\xd3\x8f\xe1\xae\xaa\xe0\xa3\xb6\xef\xbc\x8e\xeb\x88\xb5", "xn--s5a04sn4u297k.xn--2e1b", false); }8520test { try toAsciiPass("\xea\xa7\x90\xd3\x8f\xe1\xae\xaa\xe0\xa3\xb6\xef\xbc\x8e\xeb\x88\xb5", "xn--s5a04sn4u297k.xn--2e1b", false); }
3565test { try toAsciiPass("\xea\xa7\x90\xd3\x8f\xe1\xae\xaa\xe0\xa3\xb6\xef\xbc\x8e\xeb\x88\xb5", "xn--s5a04sn4u297k.xn--2e1b", true); }8521test { try toAsciiPass("\xea\xa7\x90\xd3\x8f\xe1\xae\xaa\xe0\xa3\xb6\xef\xbc\x8e\xeb\x88\xb5", "xn--s5a04sn4u297k.xn--2e1b", true); }
3566test { try toUnicodeFail("xn--d5a07sn4u297k.xn--2e1b"); } // [V7]8522test { try toUnicodeFail("xn--d5a07sn4u297k.xn--2e1b"); } // [V7]
8523test { try toAsciiFail("xn--d5a07sn4u297k.xn--2e1b", false); } // [V7]
8524test { try toAsciiFail("xn--d5a07sn4u297k.xn--2e1b", true); } // [V7]
3567test { try toUnicodeFail("\xea\xa3\xaa\xef\xbd\xa1\xf0\x96\x84\xbf\xf0\x91\x86\xbe\xf3\xa0\x87\x97"); } // [V6, V7]8525test { try toUnicodeFail("\xea\xa3\xaa\xef\xbd\xa1\xf0\x96\x84\xbf\xf0\x91\x86\xbe\xf3\xa0\x87\x97"); } // [V6, V7]
8526test { try toAsciiFail("\xea\xa3\xaa\xef\xbd\xa1\xf0\x96\x84\xbf\xf0\x91\x86\xbe\xf3\xa0\x87\x97", false); } // [V6, V7]
8527test { try toAsciiFail("\xea\xa3\xaa\xef\xbd\xa1\xf0\x96\x84\xbf\xf0\x91\x86\xbe\xf3\xa0\x87\x97", true); } // [V6, V7]
3568test { try toUnicodeFail("\xea\xa3\xaa\xe3\x80\x82\xf0\x96\x84\xbf\xf0\x91\x86\xbe\xf3\xa0\x87\x97"); } // [V6, V7]8528test { try toUnicodeFail("\xea\xa3\xaa\xe3\x80\x82\xf0\x96\x84\xbf\xf0\x91\x86\xbe\xf3\xa0\x87\x97"); } // [V6, V7]
8529test { try toAsciiFail("\xea\xa3\xaa\xe3\x80\x82\xf0\x96\x84\xbf\xf0\x91\x86\xbe\xf3\xa0\x87\x97", false); } // [V6, V7]
8530test { try toAsciiFail("\xea\xa3\xaa\xe3\x80\x82\xf0\x96\x84\xbf\xf0\x91\x86\xbe\xf3\xa0\x87\x97", true); } // [V6, V7]
3569test { try toUnicodeFail("xn--3g9a.xn--ud1dz07k"); } // [V6, V7]8531test { try toUnicodeFail("xn--3g9a.xn--ud1dz07k"); } // [V6, V7]
8532test { try toAsciiFail("xn--3g9a.xn--ud1dz07k", false); } // [V6, V7]
8533test { try toAsciiFail("xn--3g9a.xn--ud1dz07k", true); } // [V6, V7]
3570test { try toUnicodeFail("\xf3\x87\x93\x93\xf0\x91\x9a\xb3\xe3\x80\x82\xf1\x90\xb7\xbf\xe2\x89\xaf\xe2\xbe\x87"); } // [V7]8534test { try toUnicodeFail("\xf3\x87\x93\x93\xf0\x91\x9a\xb3\xe3\x80\x82\xf1\x90\xb7\xbf\xe2\x89\xaf\xe2\xbe\x87"); } // [V7]
8535test { try toAsciiFail("\xf3\x87\x93\x93\xf0\x91\x9a\xb3\xe3\x80\x82\xf1\x90\xb7\xbf\xe2\x89\xaf\xe2\xbe\x87", false); } // [V7]
8536test { try toAsciiFail("\xf3\x87\x93\x93\xf0\x91\x9a\xb3\xe3\x80\x82\xf1\x90\xb7\xbf\xe2\x89\xaf\xe2\xbe\x87", true); } // [V7]
3571test { try toUnicodeFail("\xf3\x87\x93\x93\xf0\x91\x9a\xb3\xe3\x80\x82\xf1\x90\xb7\xbf>\xcc\xb8\xe2\xbe\x87"); } // [V7]8537test { try toUnicodeFail("\xf3\x87\x93\x93\xf0\x91\x9a\xb3\xe3\x80\x82\xf1\x90\xb7\xbf>\xcc\xb8\xe2\xbe\x87"); } // [V7]
8538test { try toAsciiFail("\xf3\x87\x93\x93\xf0\x91\x9a\xb3\xe3\x80\x82\xf1\x90\xb7\xbf>\xcc\xb8\xe2\xbe\x87", false); } // [V7]
8539test { try toAsciiFail("\xf3\x87\x93\x93\xf0\x91\x9a\xb3\xe3\x80\x82\xf1\x90\xb7\xbf>\xcc\xb8\xe2\xbe\x87", true); } // [V7]
3572test { try toUnicodeFail("\xf3\x87\x93\x93\xf0\x91\x9a\xb3\xe3\x80\x82\xf1\x90\xb7\xbf\xe2\x89\xaf\xe8\x88\x9b"); } // [V7]8540test { try toUnicodeFail("\xf3\x87\x93\x93\xf0\x91\x9a\xb3\xe3\x80\x82\xf1\x90\xb7\xbf\xe2\x89\xaf\xe8\x88\x9b"); } // [V7]
8541test { try toAsciiFail("\xf3\x87\x93\x93\xf0\x91\x9a\xb3\xe3\x80\x82\xf1\x90\xb7\xbf\xe2\x89\xaf\xe8\x88\x9b", false); } // [V7]
8542test { try toAsciiFail("\xf3\x87\x93\x93\xf0\x91\x9a\xb3\xe3\x80\x82\xf1\x90\xb7\xbf\xe2\x89\xaf\xe8\x88\x9b", true); } // [V7]
3573test { try toUnicodeFail("\xf3\x87\x93\x93\xf0\x91\x9a\xb3\xe3\x80\x82\xf1\x90\xb7\xbf>\xcc\xb8\xe8\x88\x9b"); } // [V7]8543test { try toUnicodeFail("\xf3\x87\x93\x93\xf0\x91\x9a\xb3\xe3\x80\x82\xf1\x90\xb7\xbf>\xcc\xb8\xe8\x88\x9b"); } // [V7]
8544test { try toAsciiFail("\xf3\x87\x93\x93\xf0\x91\x9a\xb3\xe3\x80\x82\xf1\x90\xb7\xbf>\xcc\xb8\xe8\x88\x9b", false); } // [V7]
8545test { try toAsciiFail("\xf3\x87\x93\x93\xf0\x91\x9a\xb3\xe3\x80\x82\xf1\x90\xb7\xbf>\xcc\xb8\xe8\x88\x9b", true); } // [V7]
3574test { try toUnicodeFail("xn--3e2d79770c.xn--hdh0088abyy1c"); } // [V7]8546test { try toUnicodeFail("xn--3e2d79770c.xn--hdh0088abyy1c"); } // [V7]
8547test { try toAsciiFail("xn--3e2d79770c.xn--hdh0088abyy1c", false); } // [V7]
8548test { try toAsciiFail("xn--3e2d79770c.xn--hdh0088abyy1c", true); } // [V7]
3575test { try toUnicodeFail("\xf0\x90\xab\x87\xd9\xa1\xe2\x80\x8c\xef\xbc\x8e\xe2\x80\x8d\xe2\x80\x8c"); } // [B1, B3, C1, C2]8549test { try toUnicodeFail("\xf0\x90\xab\x87\xd9\xa1\xe2\x80\x8c\xef\xbc\x8e\xe2\x80\x8d\xe2\x80\x8c"); } // [B1, B3, C1, C2]
8550test { try toAsciiFail("\xf0\x90\xab\x87\xd9\xa1\xe2\x80\x8c\xef\xbc\x8e\xe2\x80\x8d\xe2\x80\x8c", false); } // [B1, B3, C1, C2]
8551test { try toAsciiFail("\xf0\x90\xab\x87\xd9\xa1\xe2\x80\x8c\xef\xbc\x8e\xe2\x80\x8d\xe2\x80\x8c", true); } // [A4_2]
3576test { try toUnicodeFail("\xf0\x90\xab\x87\xd9\xa1\xe2\x80\x8c.\xe2\x80\x8d\xe2\x80\x8c"); } // [B1, B3, C1, C2]8552test { try toUnicodeFail("\xf0\x90\xab\x87\xd9\xa1\xe2\x80\x8c.\xe2\x80\x8d\xe2\x80\x8c"); } // [B1, B3, C1, C2]
8553test { try toAsciiFail("\xf0\x90\xab\x87\xd9\xa1\xe2\x80\x8c.\xe2\x80\x8d\xe2\x80\x8c", false); } // [B1, B3, C1, C2]
8554test { try toAsciiFail("\xf0\x90\xab\x87\xd9\xa1\xe2\x80\x8c.\xe2\x80\x8d\xe2\x80\x8c", true); } // [A4_2]
3577test { try toUnicodePass("xn--9hb7344k.", "\xf0\x90\xab\x87\xd9\xa1."); }8555test { try toUnicodePass("xn--9hb7344k.", "\xf0\x90\xab\x87\xd9\xa1."); }
8556test { try toAsciiFail("xn--9hb7344k.", false); } // [A4_2]
8557test { try toAsciiFail("xn--9hb7344k.", true); } // [A4_2]
3578test { try toUnicodePass("\xf0\x90\xab\x87\xd9\xa1.", "\xf0\x90\xab\x87\xd9\xa1."); }8558test { try toUnicodePass("\xf0\x90\xab\x87\xd9\xa1.", "\xf0\x90\xab\x87\xd9\xa1."); }
8559test { try toAsciiFail("\xf0\x90\xab\x87\xd9\xa1.", false); } // [A4_2]
8560test { try toAsciiFail("\xf0\x90\xab\x87\xd9\xa1.", true); } // [A4_2]
3579test { try toUnicodeFail("xn--9hb652kv99n.xn--0ugb"); } // [B1, B3, C1, C2]8561test { try toUnicodeFail("xn--9hb652kv99n.xn--0ugb"); } // [B1, B3, C1, C2]
8562test { try toAsciiFail("xn--9hb652kv99n.xn--0ugb", false); } // [B1, B3, C1, C2]
8563test { try toAsciiFail("xn--9hb652kv99n.xn--0ugb", true); } // [B1, B3, C1, C2]
3580test { try toUnicodeFail("\xf1\xa1\x85\x88\xe7\xa0\xaa\xe2\x89\xaf\xe1\xa2\x91\xef\xbd\xa1\xe2\x89\xaf\xf0\x9d\xa9\x9a\xf2\x93\xb4\x94\xe2\x80\x8c"); } // [C1, V7]8564test { try toUnicodeFail("\xf1\xa1\x85\x88\xe7\xa0\xaa\xe2\x89\xaf\xe1\xa2\x91\xef\xbd\xa1\xe2\x89\xaf\xf0\x9d\xa9\x9a\xf2\x93\xb4\x94\xe2\x80\x8c"); } // [C1, V7]
8565test { try toAsciiFail("\xf1\xa1\x85\x88\xe7\xa0\xaa\xe2\x89\xaf\xe1\xa2\x91\xef\xbd\xa1\xe2\x89\xaf\xf0\x9d\xa9\x9a\xf2\x93\xb4\x94\xe2\x80\x8c", false); } // [C1, V7]
8566test { try toAsciiFail("\xf1\xa1\x85\x88\xe7\xa0\xaa\xe2\x89\xaf\xe1\xa2\x91\xef\xbd\xa1\xe2\x89\xaf\xf0\x9d\xa9\x9a\xf2\x93\xb4\x94\xe2\x80\x8c", true); } // [V7]
3581test { try toUnicodeFail("\xf1\xa1\x85\x88\xe7\xa0\xaa>\xcc\xb8\xe1\xa2\x91\xef\xbd\xa1>\xcc\xb8\xf0\x9d\xa9\x9a\xf2\x93\xb4\x94\xe2\x80\x8c"); } // [C1, V7]8567test { try toUnicodeFail("\xf1\xa1\x85\x88\xe7\xa0\xaa>\xcc\xb8\xe1\xa2\x91\xef\xbd\xa1>\xcc\xb8\xf0\x9d\xa9\x9a\xf2\x93\xb4\x94\xe2\x80\x8c"); } // [C1, V7]
8568test { try toAsciiFail("\xf1\xa1\x85\x88\xe7\xa0\xaa>\xcc\xb8\xe1\xa2\x91\xef\xbd\xa1>\xcc\xb8\xf0\x9d\xa9\x9a\xf2\x93\xb4\x94\xe2\x80\x8c", false); } // [C1, V7]
8569test { try toAsciiFail("\xf1\xa1\x85\x88\xe7\xa0\xaa>\xcc\xb8\xe1\xa2\x91\xef\xbd\xa1>\xcc\xb8\xf0\x9d\xa9\x9a\xf2\x93\xb4\x94\xe2\x80\x8c", true); } // [V7]
3582test { try toUnicodeFail("\xf1\xa1\x85\x88\xe7\xa0\xaa\xe2\x89\xaf\xe1\xa2\x91\xe3\x80\x82\xe2\x89\xaf\xf0\x9d\xa9\x9a\xf2\x93\xb4\x94\xe2\x80\x8c"); } // [C1, V7]8570test { try toUnicodeFail("\xf1\xa1\x85\x88\xe7\xa0\xaa\xe2\x89\xaf\xe1\xa2\x91\xe3\x80\x82\xe2\x89\xaf\xf0\x9d\xa9\x9a\xf2\x93\xb4\x94\xe2\x80\x8c"); } // [C1, V7]
8571test { try toAsciiFail("\xf1\xa1\x85\x88\xe7\xa0\xaa\xe2\x89\xaf\xe1\xa2\x91\xe3\x80\x82\xe2\x89\xaf\xf0\x9d\xa9\x9a\xf2\x93\xb4\x94\xe2\x80\x8c", false); } // [C1, V7]
8572test { try toAsciiFail("\xf1\xa1\x85\x88\xe7\xa0\xaa\xe2\x89\xaf\xe1\xa2\x91\xe3\x80\x82\xe2\x89\xaf\xf0\x9d\xa9\x9a\xf2\x93\xb4\x94\xe2\x80\x8c", true); } // [V7]
3583test { try toUnicodeFail("\xf1\xa1\x85\x88\xe7\xa0\xaa>\xcc\xb8\xe1\xa2\x91\xe3\x80\x82>\xcc\xb8\xf0\x9d\xa9\x9a\xf2\x93\xb4\x94\xe2\x80\x8c"); } // [C1, V7]8573test { try toUnicodeFail("\xf1\xa1\x85\x88\xe7\xa0\xaa>\xcc\xb8\xe1\xa2\x91\xe3\x80\x82>\xcc\xb8\xf0\x9d\xa9\x9a\xf2\x93\xb4\x94\xe2\x80\x8c"); } // [C1, V7]
8574test { try toAsciiFail("\xf1\xa1\x85\x88\xe7\xa0\xaa>\xcc\xb8\xe1\xa2\x91\xe3\x80\x82>\xcc\xb8\xf0\x9d\xa9\x9a\xf2\x93\xb4\x94\xe2\x80\x8c", false); } // [C1, V7]
8575test { try toAsciiFail("\xf1\xa1\x85\x88\xe7\xa0\xaa>\xcc\xb8\xe1\xa2\x91\xe3\x80\x82>\xcc\xb8\xf0\x9d\xa9\x9a\xf2\x93\xb4\x94\xe2\x80\x8c", true); } // [V7]
3584test { try toUnicodeFail("xn--bbf561cf95e57y3e.xn--hdh0834o7mj6b"); } // [V7]8576test { try toUnicodeFail("xn--bbf561cf95e57y3e.xn--hdh0834o7mj6b"); } // [V7]
8577test { try toAsciiFail("xn--bbf561cf95e57y3e.xn--hdh0834o7mj6b", false); } // [V7]
8578test { try toAsciiFail("xn--bbf561cf95e57y3e.xn--hdh0834o7mj6b", true); } // [V7]
3585test { try toUnicodeFail("xn--bbf561cf95e57y3e.xn--0ugz6gc910ejro8c"); } // [C1, V7]8579test { try toUnicodeFail("xn--bbf561cf95e57y3e.xn--0ugz6gc910ejro8c"); } // [C1, V7]
8580test { try toAsciiFail("xn--bbf561cf95e57y3e.xn--0ugz6gc910ejro8c", false); } // [C1, V7]
8581test { try toAsciiFail("xn--bbf561cf95e57y3e.xn--0ugz6gc910ejro8c", true); } // [C1, V7]
3586test { try toUnicodeFail("\xe1\x83\x85.\xf0\x91\x84\xb3\xe3\x8a\xb8"); } // [V6]8582test { try toUnicodeFail("\xe1\x83\x85.\xf0\x91\x84\xb3\xe3\x8a\xb8"); } // [V6]
8583test { try toAsciiFail("\xe1\x83\x85.\xf0\x91\x84\xb3\xe3\x8a\xb8", false); } // [V6]
8584test { try toAsciiFail("\xe1\x83\x85.\xf0\x91\x84\xb3\xe3\x8a\xb8", true); } // [V6]
3587test { try toUnicodeFail("\xe1\x83\x85.\xf0\x91\x84\xb343"); } // [V6]8585test { try toUnicodeFail("\xe1\x83\x85.\xf0\x91\x84\xb343"); } // [V6]
8586test { try toAsciiFail("\xe1\x83\x85.\xf0\x91\x84\xb343", false); } // [V6]
8587test { try toAsciiFail("\xe1\x83\x85.\xf0\x91\x84\xb343", true); } // [V6]
3588test { try toUnicodeFail("\xe2\xb4\xa5.\xf0\x91\x84\xb343"); } // [V6]8588test { try toUnicodeFail("\xe2\xb4\xa5.\xf0\x91\x84\xb343"); } // [V6]
8589test { try toAsciiFail("\xe2\xb4\xa5.\xf0\x91\x84\xb343", false); } // [V6]
8590test { try toAsciiFail("\xe2\xb4\xa5.\xf0\x91\x84\xb343", true); } // [V6]
3589test { try toUnicodeFail("xn--tlj.xn--43-274o"); } // [V6]8591test { try toUnicodeFail("xn--tlj.xn--43-274o"); } // [V6]
8592test { try toAsciiFail("xn--tlj.xn--43-274o", false); } // [V6]
8593test { try toAsciiFail("xn--tlj.xn--43-274o", true); } // [V6]
3590test { try toUnicodeFail("\xe2\xb4\xa5.\xf0\x91\x84\xb3\xe3\x8a\xb8"); } // [V6]8594test { try toUnicodeFail("\xe2\xb4\xa5.\xf0\x91\x84\xb3\xe3\x8a\xb8"); } // [V6]
8595test { try toAsciiFail("\xe2\xb4\xa5.\xf0\x91\x84\xb3\xe3\x8a\xb8", false); } // [V6]
8596test { try toAsciiFail("\xe2\xb4\xa5.\xf0\x91\x84\xb3\xe3\x8a\xb8", true); } // [V6]
3591test { try toUnicodeFail("xn--9nd.xn--43-274o"); } // [V6, V7]8597test { try toUnicodeFail("xn--9nd.xn--43-274o"); } // [V6, V7]
8598test { try toAsciiFail("xn--9nd.xn--43-274o", false); } // [V6, V7]
8599test { try toAsciiFail("xn--9nd.xn--43-274o", true); } // [V6, V7]
3592test { try toUnicodeFail("\xf0\x9d\x9f\x8e\xd9\xa3\xe3\x80\x82\xe1\x82\xb2\xe1\xa1\x87\xe0\xa3\xb2\xf0\x90\xb9\xa0"); } // [B1, B5, B6]8600test { try toUnicodeFail("\xf0\x9d\x9f\x8e\xd9\xa3\xe3\x80\x82\xe1\x82\xb2\xe1\xa1\x87\xe0\xa3\xb2\xf0\x90\xb9\xa0"); } // [B1, B5, B6]
8601test { try toAsciiFail("\xf0\x9d\x9f\x8e\xd9\xa3\xe3\x80\x82\xe1\x82\xb2\xe1\xa1\x87\xe0\xa3\xb2\xf0\x90\xb9\xa0", false); } // [B1, B5, B6]
8602test { try toAsciiFail("\xf0\x9d\x9f\x8e\xd9\xa3\xe3\x80\x82\xe1\x82\xb2\xe1\xa1\x87\xe0\xa3\xb2\xf0\x90\xb9\xa0", true); } // [B1, B5, B6]
3593test { try toUnicodeFail("0\xd9\xa3\xe3\x80\x82\xe1\x82\xb2\xe1\xa1\x87\xe0\xa3\xb2\xf0\x90\xb9\xa0"); } // [B1, B5, B6]8603test { try toUnicodeFail("0\xd9\xa3\xe3\x80\x82\xe1\x82\xb2\xe1\xa1\x87\xe0\xa3\xb2\xf0\x90\xb9\xa0"); } // [B1, B5, B6]
8604test { try toAsciiFail("0\xd9\xa3\xe3\x80\x82\xe1\x82\xb2\xe1\xa1\x87\xe0\xa3\xb2\xf0\x90\xb9\xa0", false); } // [B1, B5, B6]
8605test { try toAsciiFail("0\xd9\xa3\xe3\x80\x82\xe1\x82\xb2\xe1\xa1\x87\xe0\xa3\xb2\xf0\x90\xb9\xa0", true); } // [B1, B5, B6]
3594test { try toUnicodeFail("0\xd9\xa3\xe3\x80\x82\xe2\xb4\x92\xe1\xa1\x87\xe0\xa3\xb2\xf0\x90\xb9\xa0"); } // [B1, B5, B6]8606test { try toUnicodeFail("0\xd9\xa3\xe3\x80\x82\xe2\xb4\x92\xe1\xa1\x87\xe0\xa3\xb2\xf0\x90\xb9\xa0"); } // [B1, B5, B6]
8607test { try toAsciiFail("0\xd9\xa3\xe3\x80\x82\xe2\xb4\x92\xe1\xa1\x87\xe0\xa3\xb2\xf0\x90\xb9\xa0", false); } // [B1, B5, B6]
8608test { try toAsciiFail("0\xd9\xa3\xe3\x80\x82\xe2\xb4\x92\xe1\xa1\x87\xe0\xa3\xb2\xf0\x90\xb9\xa0", true); } // [B1, B5, B6]
3595test { try toUnicodeFail("xn--0-fqc.xn--10b369eivp359r"); } // [B1, B5, B6]8609test { try toUnicodeFail("xn--0-fqc.xn--10b369eivp359r"); } // [B1, B5, B6]
8610test { try toAsciiFail("xn--0-fqc.xn--10b369eivp359r", false); } // [B1, B5, B6]
8611test { try toAsciiFail("xn--0-fqc.xn--10b369eivp359r", true); } // [B1, B5, B6]
3596test { try toUnicodeFail("\xf0\x9d\x9f\x8e\xd9\xa3\xe3\x80\x82\xe2\xb4\x92\xe1\xa1\x87\xe0\xa3\xb2\xf0\x90\xb9\xa0"); } // [B1, B5, B6]8612test { try toUnicodeFail("\xf0\x9d\x9f\x8e\xd9\xa3\xe3\x80\x82\xe2\xb4\x92\xe1\xa1\x87\xe0\xa3\xb2\xf0\x90\xb9\xa0"); } // [B1, B5, B6]
8613test { try toAsciiFail("\xf0\x9d\x9f\x8e\xd9\xa3\xe3\x80\x82\xe2\xb4\x92\xe1\xa1\x87\xe0\xa3\xb2\xf0\x90\xb9\xa0", false); } // [B1, B5, B6]
8614test { try toAsciiFail("\xf0\x9d\x9f\x8e\xd9\xa3\xe3\x80\x82\xe2\xb4\x92\xe1\xa1\x87\xe0\xa3\xb2\xf0\x90\xb9\xa0", true); } // [B1, B5, B6]
3597test { try toUnicodeFail("xn--0-fqc.xn--10b180bnwgfy0z"); } // [B1, B5, B6, V7]8615test { try toUnicodeFail("xn--0-fqc.xn--10b180bnwgfy0z"); } // [B1, B5, B6, V7]
8616test { try toAsciiFail("xn--0-fqc.xn--10b180bnwgfy0z", false); } // [B1, B5, B6, V7]
8617test { try toAsciiFail("xn--0-fqc.xn--10b180bnwgfy0z", true); } // [B1, B5, B6, V7]
3598test { try toUnicodeFail("\xf1\x97\xaa\xa8\xf3\xa0\x84\x89\xef\xbe\xa0\xe0\xbe\xb7.\xf1\xb8\x9e\xb0\xea\xa5\x93"); } // [V7]8618test { try toUnicodeFail("\xf1\x97\xaa\xa8\xf3\xa0\x84\x89\xef\xbe\xa0\xe0\xbe\xb7.\xf1\xb8\x9e\xb0\xea\xa5\x93"); } // [V7]
8619test { try toAsciiFail("\xf1\x97\xaa\xa8\xf3\xa0\x84\x89\xef\xbe\xa0\xe0\xbe\xb7.\xf1\xb8\x9e\xb0\xea\xa5\x93", false); } // [V7]
8620test { try toAsciiFail("\xf1\x97\xaa\xa8\xf3\xa0\x84\x89\xef\xbe\xa0\xe0\xbe\xb7.\xf1\xb8\x9e\xb0\xea\xa5\x93", true); } // [V7]
3599test { try toUnicodeFail("\xf1\x97\xaa\xa8\xf3\xa0\x84\x89\xe1\x85\xa0\xe0\xbe\xb7.\xf1\xb8\x9e\xb0\xea\xa5\x93"); } // [V7]8621test { try toUnicodeFail("\xf1\x97\xaa\xa8\xf3\xa0\x84\x89\xe1\x85\xa0\xe0\xbe\xb7.\xf1\xb8\x9e\xb0\xea\xa5\x93"); } // [V7]
8622test { try toAsciiFail("\xf1\x97\xaa\xa8\xf3\xa0\x84\x89\xe1\x85\xa0\xe0\xbe\xb7.\xf1\xb8\x9e\xb0\xea\xa5\x93", false); } // [V7]
8623test { try toAsciiFail("\xf1\x97\xaa\xa8\xf3\xa0\x84\x89\xe1\x85\xa0\xe0\xbe\xb7.\xf1\xb8\x9e\xb0\xea\xa5\x93", true); } // [V7]
3600test { try toUnicodeFail("xn--kgd72212e.xn--3j9au7544a"); } // [V7]8624test { try toUnicodeFail("xn--kgd72212e.xn--3j9au7544a"); } // [V7]
8625test { try toAsciiFail("xn--kgd72212e.xn--3j9au7544a", false); } // [V7]
8626test { try toAsciiFail("xn--kgd72212e.xn--3j9au7544a", true); } // [V7]
3601test { try toUnicodeFail("xn--kgd36f9z57y.xn--3j9au7544a"); } // [V7]8627test { try toUnicodeFail("xn--kgd36f9z57y.xn--3j9au7544a"); } // [V7]
8628test { try toAsciiFail("xn--kgd36f9z57y.xn--3j9au7544a", false); } // [V7]
8629test { try toAsciiFail("xn--kgd36f9z57y.xn--3j9au7544a", true); } // [V7]
3602test { try toUnicodeFail("xn--kgd7493jee34a.xn--3j9au7544a"); } // [V7]8630test { try toUnicodeFail("xn--kgd7493jee34a.xn--3j9au7544a"); } // [V7]
8631test { try toAsciiFail("xn--kgd7493jee34a.xn--3j9au7544a", false); } // [V7]
8632test { try toAsciiFail("xn--kgd7493jee34a.xn--3j9au7544a", true); } // [V7]
3603test { try toUnicodeFail("\xd8\x98.\xdb\xb3\xe2\x80\x8c\xea\xa5\x93"); } // [C1, V6]8633test { try toUnicodeFail("\xd8\x98.\xdb\xb3\xe2\x80\x8c\xea\xa5\x93"); } // [C1, V6]
8634test { try toAsciiFail("\xd8\x98.\xdb\xb3\xe2\x80\x8c\xea\xa5\x93", false); } // [C1, V6]
8635test { try toAsciiFail("\xd8\x98.\xdb\xb3\xe2\x80\x8c\xea\xa5\x93", true); } // [V6]
3604test { try toUnicodeFail("xn--6fb.xn--gmb0524f"); } // [V6]8636test { try toUnicodeFail("xn--6fb.xn--gmb0524f"); } // [V6]
8637test { try toAsciiFail("xn--6fb.xn--gmb0524f", false); } // [V6]
8638test { try toAsciiFail("xn--6fb.xn--gmb0524f", true); } // [V6]
3605test { try toUnicodeFail("xn--6fb.xn--gmb469jjf1h"); } // [C1, V6]8639test { try toUnicodeFail("xn--6fb.xn--gmb469jjf1h"); } // [C1, V6]
8640test { try toAsciiFail("xn--6fb.xn--gmb469jjf1h", false); } // [C1, V6]
8641test { try toAsciiFail("xn--6fb.xn--gmb469jjf1h", true); } // [C1, V6]
3606test { try toUnicodeFail("\xe1\xa1\x8c\xef\xbc\x8e\xef\xb8\x92\xe1\xa2\x91"); } // [V7]8642test { try toUnicodeFail("\xe1\xa1\x8c\xef\xbc\x8e\xef\xb8\x92\xe1\xa2\x91"); } // [V7]
8643test { try toAsciiFail("\xe1\xa1\x8c\xef\xbc\x8e\xef\xb8\x92\xe1\xa2\x91", false); } // [V7]
8644test { try toAsciiFail("\xe1\xa1\x8c\xef\xbc\x8e\xef\xb8\x92\xe1\xa2\x91", true); } // [V7]
3607test { try toUnicodeFail("\xe1\xa1\x8c.\xe3\x80\x82\xe1\xa2\x91"); } // [X4_2]8645test { try toUnicodeFail("\xe1\xa1\x8c.\xe3\x80\x82\xe1\xa2\x91"); } // [X4_2]
8646test { try toAsciiFail("\xe1\xa1\x8c.\xe3\x80\x82\xe1\xa2\x91", false); } // [A4_2]
8647test { try toAsciiFail("\xe1\xa1\x8c.\xe3\x80\x82\xe1\xa2\x91", true); } // [A4_2]
3608test { try toUnicodeFail("xn--c8e..xn--bbf"); } // [X4_2]8648test { try toUnicodeFail("xn--c8e..xn--bbf"); } // [X4_2]
8649test { try toAsciiFail("xn--c8e..xn--bbf", false); } // [A4_2]
8650test { try toAsciiFail("xn--c8e..xn--bbf", true); } // [A4_2]
3609test { try toUnicodeFail("xn--c8e.xn--bbf9168i"); } // [V7]8651test { try toUnicodeFail("xn--c8e.xn--bbf9168i"); } // [V7]
8652test { try toAsciiFail("xn--c8e.xn--bbf9168i", false); } // [V7]
8653test { try toAsciiFail("xn--c8e.xn--bbf9168i", true); } // [V7]
3610test { try toUnicodeFail("\xf0\x91\x8b\xaa\xe1\x81\xb3\xef\xbd\xa1\xf0\x9e\xbd\xa7"); } // [B1, V6, V7]8654test { try toUnicodeFail("\xf0\x91\x8b\xaa\xe1\x81\xb3\xef\xbd\xa1\xf0\x9e\xbd\xa7"); } // [B1, V6, V7]
8655test { try toAsciiFail("\xf0\x91\x8b\xaa\xe1\x81\xb3\xef\xbd\xa1\xf0\x9e\xbd\xa7", false); } // [B1, V6, V7]
8656test { try toAsciiFail("\xf0\x91\x8b\xaa\xe1\x81\xb3\xef\xbd\xa1\xf0\x9e\xbd\xa7", true); } // [B1, V6, V7]
3611test { try toUnicodeFail("\xf0\x91\x8b\xaa\xe1\x81\xb3\xe3\x80\x82\xf0\x9e\xbd\xa7"); } // [B1, V6, V7]8657test { try toUnicodeFail("\xf0\x91\x8b\xaa\xe1\x81\xb3\xe3\x80\x82\xf0\x9e\xbd\xa7"); } // [B1, V6, V7]
8658test { try toAsciiFail("\xf0\x91\x8b\xaa\xe1\x81\xb3\xe3\x80\x82\xf0\x9e\xbd\xa7", false); } // [B1, V6, V7]
8659test { try toAsciiFail("\xf0\x91\x8b\xaa\xe1\x81\xb3\xe3\x80\x82\xf0\x9e\xbd\xa7", true); } // [B1, V6, V7]
3612test { try toUnicodeFail("xn--xld7443k.xn--4o7h"); } // [B1, V6, V7]8660test { try toUnicodeFail("xn--xld7443k.xn--4o7h"); } // [B1, V6, V7]
8661test { try toAsciiFail("xn--xld7443k.xn--4o7h", false); } // [B1, V6, V7]
8662test { try toAsciiFail("xn--xld7443k.xn--4o7h", true); } // [B1, V6, V7]
3613test { try toUnicodeFail("\xf0\x9e\xb7\x8f\xe3\x80\x82\xe1\xa0\xa2\xf2\x93\x98\x86"); } // [V7]8663test { try toUnicodeFail("\xf0\x9e\xb7\x8f\xe3\x80\x82\xe1\xa0\xa2\xf2\x93\x98\x86"); } // [V7]
8664test { try toAsciiFail("\xf0\x9e\xb7\x8f\xe3\x80\x82\xe1\xa0\xa2\xf2\x93\x98\x86", false); } // [V7]
8665test { try toAsciiFail("\xf0\x9e\xb7\x8f\xe3\x80\x82\xe1\xa0\xa2\xf2\x93\x98\x86", true); } // [V7]
3614test { try toUnicodeFail("xn--hd7h.xn--46e66060j"); } // [V7]8666test { try toUnicodeFail("xn--hd7h.xn--46e66060j"); } // [V7]
8667test { try toAsciiFail("xn--hd7h.xn--46e66060j", false); } // [V7]
8668test { try toAsciiFail("xn--hd7h.xn--46e66060j", true); } // [V7]
3615test { try toUnicodeFail("\xf0\x91\x84\xb3\xe3\xb4\xbc\xef\xbc\x8e\xe2\x80\x8c\xf0\x90\xb9\xa1\xe2\x83\xab\xf1\xab\xba\xa6"); } // [B1, C1, V6, V7]8669test { try toUnicodeFail("\xf0\x91\x84\xb3\xe3\xb4\xbc\xef\xbc\x8e\xe2\x80\x8c\xf0\x90\xb9\xa1\xe2\x83\xab\xf1\xab\xba\xa6"); } // [B1, C1, V6, V7]
8670test { try toAsciiFail("\xf0\x91\x84\xb3\xe3\xb4\xbc\xef\xbc\x8e\xe2\x80\x8c\xf0\x90\xb9\xa1\xe2\x83\xab\xf1\xab\xba\xa6", false); } // [B1, C1, V6, V7]
8671test { try toAsciiFail("\xf0\x91\x84\xb3\xe3\xb4\xbc\xef\xbc\x8e\xe2\x80\x8c\xf0\x90\xb9\xa1\xe2\x83\xab\xf1\xab\xba\xa6", true); } // [B1, V6, V7]
3616test { try toUnicodeFail("\xf0\x91\x84\xb3\xe3\xb4\xbc.\xe2\x80\x8c\xf0\x90\xb9\xa1\xe2\x83\xab\xf1\xab\xba\xa6"); } // [B1, C1, V6, V7]8672test { try toUnicodeFail("\xf0\x91\x84\xb3\xe3\xb4\xbc.\xe2\x80\x8c\xf0\x90\xb9\xa1\xe2\x83\xab\xf1\xab\xba\xa6"); } // [B1, C1, V6, V7]
8673test { try toAsciiFail("\xf0\x91\x84\xb3\xe3\xb4\xbc.\xe2\x80\x8c\xf0\x90\xb9\xa1\xe2\x83\xab\xf1\xab\xba\xa6", false); } // [B1, C1, V6, V7]
8674test { try toAsciiFail("\xf0\x91\x84\xb3\xe3\xb4\xbc.\xe2\x80\x8c\xf0\x90\xb9\xa1\xe2\x83\xab\xf1\xab\xba\xa6", true); } // [B1, V6, V7]
3617test { try toUnicodeFail("xn--iym9428c.xn--e1g3464g08p3b"); } // [B1, V6, V7]8675test { try toUnicodeFail("xn--iym9428c.xn--e1g3464g08p3b"); } // [B1, V6, V7]
8676test { try toAsciiFail("xn--iym9428c.xn--e1g3464g08p3b", false); } // [B1, V6, V7]
8677test { try toAsciiFail("xn--iym9428c.xn--e1g3464g08p3b", true); } // [B1, V6, V7]
3618test { try toUnicodeFail("xn--iym9428c.xn--0ug46a7218cllv0c"); } // [B1, C1, V6, V7]8678test { try toUnicodeFail("xn--iym9428c.xn--0ug46a7218cllv0c"); } // [B1, C1, V6, V7]
8679test { try toAsciiFail("xn--iym9428c.xn--0ug46a7218cllv0c", false); } // [B1, C1, V6, V7]
8680test { try toAsciiFail("xn--iym9428c.xn--0ug46a7218cllv0c", true); } // [B1, C1, V6, V7]
3619test { try toUnicodeFail("\xf1\xa0\xbb\x9f\xf0\x90\xb9\xb3\xf0\x91\x88\xaf\xef\xbd\xa1\xcc\x9d"); } // [B1, B5, B6, V6, V7]8681test { try toUnicodeFail("\xf1\xa0\xbb\x9f\xf0\x90\xb9\xb3\xf0\x91\x88\xaf\xef\xbd\xa1\xcc\x9d"); } // [B1, B5, B6, V6, V7]
8682test { try toAsciiFail("\xf1\xa0\xbb\x9f\xf0\x90\xb9\xb3\xf0\x91\x88\xaf\xef\xbd\xa1\xcc\x9d", false); } // [B1, B5, B6, V6, V7]
8683test { try toAsciiFail("\xf1\xa0\xbb\x9f\xf0\x90\xb9\xb3\xf0\x91\x88\xaf\xef\xbd\xa1\xcc\x9d", true); } // [B1, B5, B6, V6, V7]
3620test { try toUnicodeFail("\xf1\xa0\xbb\x9f\xf0\x90\xb9\xb3\xf0\x91\x88\xaf\xe3\x80\x82\xcc\x9d"); } // [B1, B5, B6, V6, V7]8684test { try toUnicodeFail("\xf1\xa0\xbb\x9f\xf0\x90\xb9\xb3\xf0\x91\x88\xaf\xe3\x80\x82\xcc\x9d"); } // [B1, B5, B6, V6, V7]
8685test { try toAsciiFail("\xf1\xa0\xbb\x9f\xf0\x90\xb9\xb3\xf0\x91\x88\xaf\xe3\x80\x82\xcc\x9d", false); } // [B1, B5, B6, V6, V7]
8686test { try toAsciiFail("\xf1\xa0\xbb\x9f\xf0\x90\xb9\xb3\xf0\x91\x88\xaf\xe3\x80\x82\xcc\x9d", true); } // [B1, B5, B6, V6, V7]
3621test { try toUnicodeFail("xn--ro0dw7dey96m.xn--eta"); } // [B1, B5, B6, V6, V7]8687test { try toUnicodeFail("xn--ro0dw7dey96m.xn--eta"); } // [B1, B5, B6, V6, V7]
8688test { try toAsciiFail("xn--ro0dw7dey96m.xn--eta", false); } // [B1, B5, B6, V6, V7]
8689test { try toAsciiFail("xn--ro0dw7dey96m.xn--eta", true); } // [B1, B5, B6, V6, V7]
3622test { try toUnicodeFail("\xe1\xa2\x8a\xeb\xbe\x9c\xf3\xa0\xb1\xb4\xf0\x91\x9a\xb6\xe3\x80\x82\xe0\xa2\x9d\xf0\x90\xb9\xa5"); } // [B1, V6, V7]8690test { try toUnicodeFail("\xe1\xa2\x8a\xeb\xbe\x9c\xf3\xa0\xb1\xb4\xf0\x91\x9a\xb6\xe3\x80\x82\xe0\xa2\x9d\xf0\x90\xb9\xa5"); } // [B1, V6, V7]
8691test { try toAsciiFail("\xe1\xa2\x8a\xeb\xbe\x9c\xf3\xa0\xb1\xb4\xf0\x91\x9a\xb6\xe3\x80\x82\xe0\xa2\x9d\xf0\x90\xb9\xa5", false); } // [B1, V6, V7]
8692test { try toAsciiFail("\xe1\xa2\x8a\xeb\xbe\x9c\xf3\xa0\xb1\xb4\xf0\x91\x9a\xb6\xe3\x80\x82\xe0\xa2\x9d\xf0\x90\xb9\xa5", true); } // [B1, V6, V7]
3623test { try toUnicodeFail("\xe1\xa2\x8a\xe1\x84\x88\xe1\x85\xac\xe1\x86\xaf\xf3\xa0\xb1\xb4\xf0\x91\x9a\xb6\xe3\x80\x82\xe0\xa2\x9d\xf0\x90\xb9\xa5"); } // [B1, V6, V7]8693test { try toUnicodeFail("\xe1\xa2\x8a\xe1\x84\x88\xe1\x85\xac\xe1\x86\xaf\xf3\xa0\xb1\xb4\xf0\x91\x9a\xb6\xe3\x80\x82\xe0\xa2\x9d\xf0\x90\xb9\xa5"); } // [B1, V6, V7]
8694test { try toAsciiFail("\xe1\xa2\x8a\xe1\x84\x88\xe1\x85\xac\xe1\x86\xaf\xf3\xa0\xb1\xb4\xf0\x91\x9a\xb6\xe3\x80\x82\xe0\xa2\x9d\xf0\x90\xb9\xa5", false); } // [B1, V6, V7]
8695test { try toAsciiFail("\xe1\xa2\x8a\xe1\x84\x88\xe1\x85\xac\xe1\x86\xaf\xf3\xa0\xb1\xb4\xf0\x91\x9a\xb6\xe3\x80\x82\xe0\xa2\x9d\xf0\x90\xb9\xa5", true); } // [B1, V6, V7]
3624test { try toUnicodeFail("xn--39e4566fjv8bwmt6n.xn--myb6415k"); } // [B1, V6, V7]8696test { try toUnicodeFail("xn--39e4566fjv8bwmt6n.xn--myb6415k"); } // [B1, V6, V7]
8697test { try toAsciiFail("xn--39e4566fjv8bwmt6n.xn--myb6415k", false); } // [B1, V6, V7]
8698test { try toAsciiFail("xn--39e4566fjv8bwmt6n.xn--myb6415k", true); } // [B1, V6, V7]
3625test { try toUnicodeFail("\xf0\x90\xb9\xa5\xe2\x89\xa0\xef\xbd\xa1\xf0\x90\x8b\xb2\xf3\xa0\xa7\xa0\xe2\x80\x8c"); } // [B1, C1, V7]8699test { try toUnicodeFail("\xf0\x90\xb9\xa5\xe2\x89\xa0\xef\xbd\xa1\xf0\x90\x8b\xb2\xf3\xa0\xa7\xa0\xe2\x80\x8c"); } // [B1, C1, V7]
8700test { try toAsciiFail("\xf0\x90\xb9\xa5\xe2\x89\xa0\xef\xbd\xa1\xf0\x90\x8b\xb2\xf3\xa0\xa7\xa0\xe2\x80\x8c", false); } // [B1, C1, V7]
8701test { try toAsciiFail("\xf0\x90\xb9\xa5\xe2\x89\xa0\xef\xbd\xa1\xf0\x90\x8b\xb2\xf3\xa0\xa7\xa0\xe2\x80\x8c", true); } // [B1, V7]
3626test { try toUnicodeFail("\xf0\x90\xb9\xa5=\xcc\xb8\xef\xbd\xa1\xf0\x90\x8b\xb2\xf3\xa0\xa7\xa0\xe2\x80\x8c"); } // [B1, C1, V7]8702test { try toUnicodeFail("\xf0\x90\xb9\xa5=\xcc\xb8\xef\xbd\xa1\xf0\x90\x8b\xb2\xf3\xa0\xa7\xa0\xe2\x80\x8c"); } // [B1, C1, V7]
8703test { try toAsciiFail("\xf0\x90\xb9\xa5=\xcc\xb8\xef\xbd\xa1\xf0\x90\x8b\xb2\xf3\xa0\xa7\xa0\xe2\x80\x8c", false); } // [B1, C1, V7]
8704test { try toAsciiFail("\xf0\x90\xb9\xa5=\xcc\xb8\xef\xbd\xa1\xf0\x90\x8b\xb2\xf3\xa0\xa7\xa0\xe2\x80\x8c", true); } // [B1, V7]
3627test { try toUnicodeFail("\xf0\x90\xb9\xa5\xe2\x89\xa0\xe3\x80\x82\xf0\x90\x8b\xb2\xf3\xa0\xa7\xa0\xe2\x80\x8c"); } // [B1, C1, V7]8705test { try toUnicodeFail("\xf0\x90\xb9\xa5\xe2\x89\xa0\xe3\x80\x82\xf0\x90\x8b\xb2\xf3\xa0\xa7\xa0\xe2\x80\x8c"); } // [B1, C1, V7]
8706test { try toAsciiFail("\xf0\x90\xb9\xa5\xe2\x89\xa0\xe3\x80\x82\xf0\x90\x8b\xb2\xf3\xa0\xa7\xa0\xe2\x80\x8c", false); } // [B1, C1, V7]
8707test { try toAsciiFail("\xf0\x90\xb9\xa5\xe2\x89\xa0\xe3\x80\x82\xf0\x90\x8b\xb2\xf3\xa0\xa7\xa0\xe2\x80\x8c", true); } // [B1, V7]
3628test { try toUnicodeFail("\xf0\x90\xb9\xa5=\xcc\xb8\xe3\x80\x82\xf0\x90\x8b\xb2\xf3\xa0\xa7\xa0\xe2\x80\x8c"); } // [B1, C1, V7]8708test { try toUnicodeFail("\xf0\x90\xb9\xa5=\xcc\xb8\xe3\x80\x82\xf0\x90\x8b\xb2\xf3\xa0\xa7\xa0\xe2\x80\x8c"); } // [B1, C1, V7]
8709test { try toAsciiFail("\xf0\x90\xb9\xa5=\xcc\xb8\xe3\x80\x82\xf0\x90\x8b\xb2\xf3\xa0\xa7\xa0\xe2\x80\x8c", false); } // [B1, C1, V7]
8710test { try toAsciiFail("\xf0\x90\xb9\xa5=\xcc\xb8\xe3\x80\x82\xf0\x90\x8b\xb2\xf3\xa0\xa7\xa0\xe2\x80\x8c", true); } // [B1, V7]
3629test { try toUnicodeFail("xn--1ch6704g.xn--m97cw2999c"); } // [B1, V7]8711test { try toUnicodeFail("xn--1ch6704g.xn--m97cw2999c"); } // [B1, V7]
8712test { try toAsciiFail("xn--1ch6704g.xn--m97cw2999c", false); } // [B1, V7]
8713test { try toAsciiFail("xn--1ch6704g.xn--m97cw2999c", true); } // [B1, V7]
3630test { try toUnicodeFail("xn--1ch6704g.xn--0ug3840g51u4g"); } // [B1, C1, V7]8714test { try toUnicodeFail("xn--1ch6704g.xn--0ug3840g51u4g"); } // [B1, C1, V7]
8715test { try toAsciiFail("xn--1ch6704g.xn--0ug3840g51u4g", false); } // [B1, C1, V7]
8716test { try toAsciiFail("xn--1ch6704g.xn--0ug3840g51u4g", true); } // [B1, C1, V7]
3631test { try toUnicodeFail("\xe1\x85\x9f\xf1\x99\xaf\xa0\xe0\xa5\x8d\xef\xbc\x8e\xe2\x80\x8d\xea\xa5\x93\xf0\x90\xaa\xa4"); } // [B1, C2, V7]8717test { try toUnicodeFail("\xe1\x85\x9f\xf1\x99\xaf\xa0\xe0\xa5\x8d\xef\xbc\x8e\xe2\x80\x8d\xea\xa5\x93\xf0\x90\xaa\xa4"); } // [B1, C2, V7]
8718test { try toAsciiFail("\xe1\x85\x9f\xf1\x99\xaf\xa0\xe0\xa5\x8d\xef\xbc\x8e\xe2\x80\x8d\xea\xa5\x93\xf0\x90\xaa\xa4", false); } // [B1, C2, V7]
8719test { try toAsciiFail("\xe1\x85\x9f\xf1\x99\xaf\xa0\xe0\xa5\x8d\xef\xbc\x8e\xe2\x80\x8d\xea\xa5\x93\xf0\x90\xaa\xa4", true); } // [B5, B6, V6, V7]
3632test { try toUnicodeFail("\xe1\x85\x9f\xf1\x99\xaf\xa0\xe0\xa5\x8d.\xe2\x80\x8d\xea\xa5\x93\xf0\x90\xaa\xa4"); } // [B1, C2, V7]8720test { try toUnicodeFail("\xe1\x85\x9f\xf1\x99\xaf\xa0\xe0\xa5\x8d.\xe2\x80\x8d\xea\xa5\x93\xf0\x90\xaa\xa4"); } // [B1, C2, V7]
8721test { try toAsciiFail("\xe1\x85\x9f\xf1\x99\xaf\xa0\xe0\xa5\x8d.\xe2\x80\x8d\xea\xa5\x93\xf0\x90\xaa\xa4", false); } // [B1, C2, V7]
8722test { try toAsciiFail("\xe1\x85\x9f\xf1\x99\xaf\xa0\xe0\xa5\x8d.\xe2\x80\x8d\xea\xa5\x93\xf0\x90\xaa\xa4", true); } // [B5, B6, V6, V7]
3633test { try toUnicodeFail("xn--n3b91514e.xn--3j9al95p"); } // [B5, B6, V6, V7]8723test { try toUnicodeFail("xn--n3b91514e.xn--3j9al95p"); } // [B5, B6, V6, V7]
8724test { try toAsciiFail("xn--n3b91514e.xn--3j9al95p", false); } // [B5, B6, V6, V7]
8725test { try toAsciiFail("xn--n3b91514e.xn--3j9al95p", true); } // [B5, B6, V6, V7]
3634test { try toUnicodeFail("xn--n3b91514e.xn--1ug6815co9wc"); } // [B1, C2, V7]8726test { try toUnicodeFail("xn--n3b91514e.xn--1ug6815co9wc"); } // [B1, C2, V7]
8727test { try toAsciiFail("xn--n3b91514e.xn--1ug6815co9wc", false); } // [B1, C2, V7]
8728test { try toAsciiFail("xn--n3b91514e.xn--1ug6815co9wc", true); } // [B1, C2, V7]
3635test { try toUnicodeFail("xn--n3b542bb085j.xn--3j9al95p"); } // [B5, B6, V6, V7]8729test { try toUnicodeFail("xn--n3b542bb085j.xn--3j9al95p"); } // [B5, B6, V6, V7]
8730test { try toAsciiFail("xn--n3b542bb085j.xn--3j9al95p", false); } // [B5, B6, V6, V7]
8731test { try toAsciiFail("xn--n3b542bb085j.xn--3j9al95p", true); } // [B5, B6, V6, V7]
3636test { try toUnicodeFail("xn--n3b542bb085j.xn--1ug6815co9wc"); } // [B1, C2, V7]8732test { try toUnicodeFail("xn--n3b542bb085j.xn--1ug6815co9wc"); } // [B1, C2, V7]
8733test { try toAsciiFail("xn--n3b542bb085j.xn--1ug6815co9wc", false); } // [B1, C2, V7]
8734test { try toAsciiFail("xn--n3b542bb085j.xn--1ug6815co9wc", true); } // [B1, C2, V7]
3637test { try toUnicodeFail("\xf2\x8c\x8b\x94\xf3\xa0\x86\x8e\xf3\xa0\x86\x97\xf0\x91\xb2\x95\xe3\x80\x82\xe2\x89\xae"); } // [V7]8735test { try toUnicodeFail("\xf2\x8c\x8b\x94\xf3\xa0\x86\x8e\xf3\xa0\x86\x97\xf0\x91\xb2\x95\xe3\x80\x82\xe2\x89\xae"); } // [V7]
8736test { try toAsciiFail("\xf2\x8c\x8b\x94\xf3\xa0\x86\x8e\xf3\xa0\x86\x97\xf0\x91\xb2\x95\xe3\x80\x82\xe2\x89\xae", false); } // [V7]
8737test { try toAsciiFail("\xf2\x8c\x8b\x94\xf3\xa0\x86\x8e\xf3\xa0\x86\x97\xf0\x91\xb2\x95\xe3\x80\x82\xe2\x89\xae", true); } // [V7]
3638test { try toUnicodeFail("\xf2\x8c\x8b\x94\xf3\xa0\x86\x8e\xf3\xa0\x86\x97\xf0\x91\xb2\x95\xe3\x80\x82<\xcc\xb8"); } // [V7]8738test { try toUnicodeFail("\xf2\x8c\x8b\x94\xf3\xa0\x86\x8e\xf3\xa0\x86\x97\xf0\x91\xb2\x95\xe3\x80\x82<\xcc\xb8"); } // [V7]
8739test { try toAsciiFail("\xf2\x8c\x8b\x94\xf3\xa0\x86\x8e\xf3\xa0\x86\x97\xf0\x91\xb2\x95\xe3\x80\x82<\xcc\xb8", false); } // [V7]
8740test { try toAsciiFail("\xf2\x8c\x8b\x94\xf3\xa0\x86\x8e\xf3\xa0\x86\x97\xf0\x91\xb2\x95\xe3\x80\x82<\xcc\xb8", true); } // [V7]
3639test { try toUnicodeFail("xn--4m3dv4354a.xn--gdh"); } // [V7]8741test { try toUnicodeFail("xn--4m3dv4354a.xn--gdh"); } // [V7]
8742test { try toAsciiFail("xn--4m3dv4354a.xn--gdh", false); } // [V7]
8743test { try toAsciiFail("xn--4m3dv4354a.xn--gdh", true); } // [V7]
3640test { try toUnicodeFail("\xf3\xa0\x86\xa6.\xe0\xa3\xa3\xe6\x9a\x80\xe2\x89\xa0"); } // [V6, X4_2]8744test { try toUnicodeFail("\xf3\xa0\x86\xa6.\xe0\xa3\xa3\xe6\x9a\x80\xe2\x89\xa0"); } // [V6, X4_2]
8745test { try toAsciiFail("\xf3\xa0\x86\xa6.\xe0\xa3\xa3\xe6\x9a\x80\xe2\x89\xa0", false); } // [V6, A4_2]
8746test { try toAsciiFail("\xf3\xa0\x86\xa6.\xe0\xa3\xa3\xe6\x9a\x80\xe2\x89\xa0", true); } // [V6, A4_2]
3641test { try toUnicodeFail("\xf3\xa0\x86\xa6.\xe0\xa3\xa3\xe6\x9a\x80=\xcc\xb8"); } // [V6, X4_2]8747test { try toUnicodeFail("\xf3\xa0\x86\xa6.\xe0\xa3\xa3\xe6\x9a\x80=\xcc\xb8"); } // [V6, X4_2]
8748test { try toAsciiFail("\xf3\xa0\x86\xa6.\xe0\xa3\xa3\xe6\x9a\x80=\xcc\xb8", false); } // [V6, A4_2]
8749test { try toAsciiFail("\xf3\xa0\x86\xa6.\xe0\xa3\xa3\xe6\x9a\x80=\xcc\xb8", true); } // [V6, A4_2]
3642test { try toUnicodeFail(".xn--m0b461k3g2c"); } // [V6, X4_2]8750test { try toUnicodeFail(".xn--m0b461k3g2c"); } // [V6, X4_2]
8751test { try toAsciiFail(".xn--m0b461k3g2c", false); } // [V6, A4_2]
8752test { try toAsciiFail(".xn--m0b461k3g2c", true); } // [V6, A4_2]
3643test { try toUnicodeFail("\xf0\x90\xa1\xa4\xea\xaf\xad\xef\xbd\xa1\xef\xb4\xb0\xf2\x9c\x96\x85\xe1\xb7\xb0"); } // [B2, B3, V7]8753test { try toUnicodeFail("\xf0\x90\xa1\xa4\xea\xaf\xad\xef\xbd\xa1\xef\xb4\xb0\xf2\x9c\x96\x85\xe1\xb7\xb0"); } // [B2, B3, V7]
8754test { try toAsciiFail("\xf0\x90\xa1\xa4\xea\xaf\xad\xef\xbd\xa1\xef\xb4\xb0\xf2\x9c\x96\x85\xe1\xb7\xb0", false); } // [B2, B3, V7]
8755test { try toAsciiFail("\xf0\x90\xa1\xa4\xea\xaf\xad\xef\xbd\xa1\xef\xb4\xb0\xf2\x9c\x96\x85\xe1\xb7\xb0", true); } // [B2, B3, V7]
3644test { try toUnicodeFail("\xf0\x90\xa1\xa4\xea\xaf\xad\xe3\x80\x82\xd8\xb4\xd9\x85\xf2\x9c\x96\x85\xe1\xb7\xb0"); } // [B2, B3, V7]8756test { try toUnicodeFail("\xf0\x90\xa1\xa4\xea\xaf\xad\xe3\x80\x82\xd8\xb4\xd9\x85\xf2\x9c\x96\x85\xe1\xb7\xb0"); } // [B2, B3, V7]
8757test { try toAsciiFail("\xf0\x90\xa1\xa4\xea\xaf\xad\xe3\x80\x82\xd8\xb4\xd9\x85\xf2\x9c\x96\x85\xe1\xb7\xb0", false); } // [B2, B3, V7]
8758test { try toAsciiFail("\xf0\x90\xa1\xa4\xea\xaf\xad\xe3\x80\x82\xd8\xb4\xd9\x85\xf2\x9c\x96\x85\xe1\xb7\xb0", true); } // [B2, B3, V7]
3645test { try toUnicodeFail("xn--429ak76o.xn--zgb8a701kox37t"); } // [B2, B3, V7]8759test { try toUnicodeFail("xn--429ak76o.xn--zgb8a701kox37t"); } // [B2, B3, V7]
8760test { try toAsciiFail("xn--429ak76o.xn--zgb8a701kox37t", false); } // [B2, B3, V7]
8761test { try toAsciiFail("xn--429ak76o.xn--zgb8a701kox37t", true); } // [B2, B3, V7]
3646test { try toUnicodeFail("\xf0\x9d\x89\x83\xe2\x80\x8d\xe2\x92\x88\xef\xbd\xa1\xe1\x82\xac\xf0\x9e\xb1\x93"); } // [B1, B5, B6, C2, V6, V7]8762test { try toUnicodeFail("\xf0\x9d\x89\x83\xe2\x80\x8d\xe2\x92\x88\xef\xbd\xa1\xe1\x82\xac\xf0\x9e\xb1\x93"); } // [B1, B5, B6, C2, V6, V7]
8763test { try toAsciiFail("\xf0\x9d\x89\x83\xe2\x80\x8d\xe2\x92\x88\xef\xbd\xa1\xe1\x82\xac\xf0\x9e\xb1\x93", false); } // [B1, B5, B6, C2, V6, V7]
8764test { try toAsciiFail("\xf0\x9d\x89\x83\xe2\x80\x8d\xe2\x92\x88\xef\xbd\xa1\xe1\x82\xac\xf0\x9e\xb1\x93", true); } // [B1, B5, B6, V6, V7]
3647test { try toUnicodeFail("\xf0\x9d\x89\x83\xe2\x80\x8d1.\xe3\x80\x82\xe1\x82\xac\xf0\x9e\xb1\x93"); } // [B1, B5, B6, C2, V6, V7, X4_2]8765test { try toUnicodeFail("\xf0\x9d\x89\x83\xe2\x80\x8d1.\xe3\x80\x82\xe1\x82\xac\xf0\x9e\xb1\x93"); } // [B1, B5, B6, C2, V6, V7, X4_2]
8766test { try toAsciiFail("\xf0\x9d\x89\x83\xe2\x80\x8d1.\xe3\x80\x82\xe1\x82\xac\xf0\x9e\xb1\x93", false); } // [B1, B5, B6, C2, V6, V7, A4_2]
8767test { try toAsciiFail("\xf0\x9d\x89\x83\xe2\x80\x8d1.\xe3\x80\x82\xe1\x82\xac\xf0\x9e\xb1\x93", true); } // [B1, B5, B6, V6, V7, A4_2]
3648test { try toUnicodeFail("\xf0\x9d\x89\x83\xe2\x80\x8d1.\xe3\x80\x82\xe2\xb4\x8c\xf0\x9e\xb1\x93"); } // [B1, B5, B6, C2, V6, V7, X4_2]8768test { try toUnicodeFail("\xf0\x9d\x89\x83\xe2\x80\x8d1.\xe3\x80\x82\xe2\xb4\x8c\xf0\x9e\xb1\x93"); } // [B1, B5, B6, C2, V6, V7, X4_2]
8769test { try toAsciiFail("\xf0\x9d\x89\x83\xe2\x80\x8d1.\xe3\x80\x82\xe2\xb4\x8c\xf0\x9e\xb1\x93", false); } // [B1, B5, B6, C2, V6, V7, A4_2]
8770test { try toAsciiFail("\xf0\x9d\x89\x83\xe2\x80\x8d1.\xe3\x80\x82\xe2\xb4\x8c\xf0\x9e\xb1\x93", true); } // [B1, B5, B6, V6, V7, A4_2]
3649test { try toUnicodeFail("xn--1-px8q..xn--3kj4524l"); } // [B1, B5, B6, V6, V7, X4_2]8771test { try toUnicodeFail("xn--1-px8q..xn--3kj4524l"); } // [B1, B5, B6, V6, V7, X4_2]
8772test { try toAsciiFail("xn--1-px8q..xn--3kj4524l", false); } // [B1, B5, B6, V6, V7, A4_2]
8773test { try toAsciiFail("xn--1-px8q..xn--3kj4524l", true); } // [B1, B5, B6, V6, V7, A4_2]
3650test { try toUnicodeFail("xn--1-tgn9827q..xn--3kj4524l"); } // [B1, B5, B6, C2, V6, V7, X4_2]8774test { try toUnicodeFail("xn--1-tgn9827q..xn--3kj4524l"); } // [B1, B5, B6, C2, V6, V7, X4_2]
8775test { try toAsciiFail("xn--1-tgn9827q..xn--3kj4524l", false); } // [B1, B5, B6, C2, V6, V7, A4_2]
8776test { try toAsciiFail("xn--1-tgn9827q..xn--3kj4524l", true); } // [B1, B5, B6, C2, V6, V7, A4_2]
3651test { try toUnicodeFail("\xf0\x9d\x89\x83\xe2\x80\x8d\xe2\x92\x88\xef\xbd\xa1\xe2\xb4\x8c\xf0\x9e\xb1\x93"); } // [B1, B5, B6, C2, V6, V7]8777test { try toUnicodeFail("\xf0\x9d\x89\x83\xe2\x80\x8d\xe2\x92\x88\xef\xbd\xa1\xe2\xb4\x8c\xf0\x9e\xb1\x93"); } // [B1, B5, B6, C2, V6, V7]
8778test { try toAsciiFail("\xf0\x9d\x89\x83\xe2\x80\x8d\xe2\x92\x88\xef\xbd\xa1\xe2\xb4\x8c\xf0\x9e\xb1\x93", false); } // [B1, B5, B6, C2, V6, V7]
8779test { try toAsciiFail("\xf0\x9d\x89\x83\xe2\x80\x8d\xe2\x92\x88\xef\xbd\xa1\xe2\xb4\x8c\xf0\x9e\xb1\x93", true); } // [B1, B5, B6, V6, V7]
3652test { try toUnicodeFail("xn--tshz828m.xn--3kj4524l"); } // [B1, B5, B6, V6, V7]8780test { try toUnicodeFail("xn--tshz828m.xn--3kj4524l"); } // [B1, B5, B6, V6, V7]
8781test { try toAsciiFail("xn--tshz828m.xn--3kj4524l", false); } // [B1, B5, B6, V6, V7]
8782test { try toAsciiFail("xn--tshz828m.xn--3kj4524l", true); } // [B1, B5, B6, V6, V7]
3653test { try toUnicodeFail("xn--1ug68oq348b.xn--3kj4524l"); } // [B1, B5, B6, C2, V6, V7]8783test { try toUnicodeFail("xn--1ug68oq348b.xn--3kj4524l"); } // [B1, B5, B6, C2, V6, V7]
8784test { try toAsciiFail("xn--1ug68oq348b.xn--3kj4524l", false); } // [B1, B5, B6, C2, V6, V7]
8785test { try toAsciiFail("xn--1ug68oq348b.xn--3kj4524l", true); } // [B1, B5, B6, C2, V6, V7]
3654test { try toUnicodeFail("xn--1-px8q..xn--knd8464v"); } // [B1, B5, B6, V6, V7, X4_2]8786test { try toUnicodeFail("xn--1-px8q..xn--knd8464v"); } // [B1, B5, B6, V6, V7, X4_2]
8787test { try toAsciiFail("xn--1-px8q..xn--knd8464v", false); } // [B1, B5, B6, V6, V7, A4_2]
8788test { try toAsciiFail("xn--1-px8q..xn--knd8464v", true); } // [B1, B5, B6, V6, V7, A4_2]
3655test { try toUnicodeFail("xn--1-tgn9827q..xn--knd8464v"); } // [B1, B5, B6, C2, V6, V7, X4_2]8789test { try toUnicodeFail("xn--1-tgn9827q..xn--knd8464v"); } // [B1, B5, B6, C2, V6, V7, X4_2]
8790test { try toAsciiFail("xn--1-tgn9827q..xn--knd8464v", false); } // [B1, B5, B6, C2, V6, V7, A4_2]
8791test { try toAsciiFail("xn--1-tgn9827q..xn--knd8464v", true); } // [B1, B5, B6, C2, V6, V7, A4_2]
3656test { try toUnicodeFail("xn--tshz828m.xn--knd8464v"); } // [B1, B5, B6, V6, V7]8792test { try toUnicodeFail("xn--tshz828m.xn--knd8464v"); } // [B1, B5, B6, V6, V7]
8793test { try toAsciiFail("xn--tshz828m.xn--knd8464v", false); } // [B1, B5, B6, V6, V7]
8794test { try toAsciiFail("xn--tshz828m.xn--knd8464v", true); } // [B1, B5, B6, V6, V7]
3657test { try toUnicodeFail("xn--1ug68oq348b.xn--knd8464v"); } // [B1, B5, B6, C2, V6, V7]8795test { try toUnicodeFail("xn--1ug68oq348b.xn--knd8464v"); } // [B1, B5, B6, C2, V6, V7]
8796test { try toAsciiFail("xn--1ug68oq348b.xn--knd8464v", false); } // [B1, B5, B6, C2, V6, V7]
8797test { try toAsciiFail("xn--1ug68oq348b.xn--knd8464v", true); } // [B1, B5, B6, C2, V6, V7]
3658test { try toUnicodeFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\xb8.\xcf\x82\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94"); } // [B1, V7]8798test { try toUnicodeFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\xb8.\xcf\x82\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94"); } // [B1, V7]
8799test { try toAsciiFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\xb8.\xcf\x82\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94", false); } // [B1, V7]
8800test { try toAsciiFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\xb8.\xcf\x82\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94", true); } // [B1, V7]
3659test { try toUnicodeFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\x96.\xce\xa3\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94"); } // [B1, V7]8801test { try toUnicodeFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\x96.\xce\xa3\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94"); } // [B1, V7]
8802test { try toAsciiFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\x96.\xce\xa3\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94", false); } // [B1, V7]
8803test { try toAsciiFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\x96.\xce\xa3\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94", true); } // [B1, V7]
3660test { try toUnicodeFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\xb8.\xcf\x83\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94"); } // [B1, V7]8804test { try toUnicodeFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\xb8.\xcf\x83\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94"); } // [B1, V7]
8805test { try toAsciiFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\xb8.\xcf\x83\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94", false); } // [B1, V7]
8806test { try toAsciiFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\xb8.\xcf\x83\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94", true); } // [B1, V7]
3661test { try toUnicodeFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\x96.\xcf\x83\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94"); } // [B1, V7]8807test { try toUnicodeFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\x96.\xcf\x83\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94"); } // [B1, V7]
8808test { try toAsciiFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\x96.\xcf\x83\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94", false); } // [B1, V7]
8809test { try toAsciiFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\x96.\xcf\x83\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94", true); } // [B1, V7]
3662test { try toUnicodeFail("xn--ybc0236vjvxgt5q0g.xn--4xa82737giye6b"); } // [B1, V7]8810test { try toUnicodeFail("xn--ybc0236vjvxgt5q0g.xn--4xa82737giye6b"); } // [B1, V7]
8811test { try toAsciiFail("xn--ybc0236vjvxgt5q0g.xn--4xa82737giye6b", false); } // [B1, V7]
8812test { try toAsciiFail("xn--ybc0236vjvxgt5q0g.xn--4xa82737giye6b", true); } // [B1, V7]
3663test { try toUnicodeFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\x96.\xcf\x82\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94"); } // [B1, V7]8813test { try toUnicodeFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\x96.\xcf\x82\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94"); } // [B1, V7]
8814test { try toAsciiFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\x96.\xcf\x82\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94", false); } // [B1, V7]
8815test { try toAsciiFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\x96.\xcf\x82\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94", true); } // [B1, V7]
3664test { try toUnicodeFail("xn--ybc0236vjvxgt5q0g.xn--3xa03737giye6b"); } // [B1, V7]8816test { try toUnicodeFail("xn--ybc0236vjvxgt5q0g.xn--3xa03737giye6b"); } // [B1, V7]
8817test { try toAsciiFail("xn--ybc0236vjvxgt5q0g.xn--3xa03737giye6b", false); } // [B1, V7]
8818test { try toAsciiFail("xn--ybc0236vjvxgt5q0g.xn--3xa03737giye6b", true); } // [B1, V7]
3665test { try toUnicodeFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\xb8.\xce\xa3\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94"); } // [B1, V7]8819test { try toUnicodeFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\xb8.\xce\xa3\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94"); } // [B1, V7]
8820test { try toAsciiFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\xb8.\xce\xa3\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94", false); } // [B1, V7]
8821test { try toAsciiFail("\xf3\xa0\xa3\x99\xe0\xa9\x8d\xf0\xb1\xab\x98\xf0\x9e\xa4\xb8.\xce\xa3\xf1\xb5\xaf\x9e\xf4\x88\xb0\x94", true); } // [B1, V7]
3666test { try toUnicodeFail("\xdf\x93\xe3\x80\x82\xe2\x80\x8c\xf0\x90\xab\x80\xf2\x9e\xad\xb1"); } // [B1, C1, V7]8822test { try toUnicodeFail("\xdf\x93\xe3\x80\x82\xe2\x80\x8c\xf0\x90\xab\x80\xf2\x9e\xad\xb1"); } // [B1, C1, V7]
8823test { try toAsciiFail("\xdf\x93\xe3\x80\x82\xe2\x80\x8c\xf0\x90\xab\x80\xf2\x9e\xad\xb1", false); } // [B1, C1, V7]
8824test { try toAsciiFail("\xdf\x93\xe3\x80\x82\xe2\x80\x8c\xf0\x90\xab\x80\xf2\x9e\xad\xb1", true); } // [B2, B3, V7]
3667test { try toUnicodeFail("xn--usb.xn--pw9ci1099a"); } // [B2, B3, V7]8825test { try toUnicodeFail("xn--usb.xn--pw9ci1099a"); } // [B2, B3, V7]
8826test { try toAsciiFail("xn--usb.xn--pw9ci1099a", false); } // [B2, B3, V7]
8827test { try toAsciiFail("xn--usb.xn--pw9ci1099a", true); } // [B2, B3, V7]
3668test { try toUnicodeFail("xn--usb.xn--0ug9553gm3v5d"); } // [B1, C1, V7]8828test { try toUnicodeFail("xn--usb.xn--0ug9553gm3v5d"); } // [B1, C1, V7]
8829test { try toAsciiFail("xn--usb.xn--0ug9553gm3v5d", false); } // [B1, C1, V7]
8830test { try toAsciiFail("xn--usb.xn--0ug9553gm3v5d", true); } // [B1, C1, V7]
3669test { try toUnicodeFail("\xe1\xb0\xae\xf0\x9e\x80\x9d.\xd6\xa6\xea\xa1\x9f\xf0\x9e\xa4\x95\xf3\xa0\x86\x96"); } // [B1, V6]8831test { try toUnicodeFail("\xe1\xb0\xae\xf0\x9e\x80\x9d.\xd6\xa6\xea\xa1\x9f\xf0\x9e\xa4\x95\xf3\xa0\x86\x96"); } // [B1, V6]
8832test { try toAsciiFail("\xe1\xb0\xae\xf0\x9e\x80\x9d.\xd6\xa6\xea\xa1\x9f\xf0\x9e\xa4\x95\xf3\xa0\x86\x96", false); } // [B1, V6]
8833test { try toAsciiFail("\xe1\xb0\xae\xf0\x9e\x80\x9d.\xd6\xa6\xea\xa1\x9f\xf0\x9e\xa4\x95\xf3\xa0\x86\x96", true); } // [B1, V6]
3670test { try toUnicodeFail("\xe1\xb0\xae\xf0\x9e\x80\x9d.\xd6\xa6\xea\xa1\x9f\xf0\x9e\xa4\xb7\xf3\xa0\x86\x96"); } // [B1, V6]8834test { try toUnicodeFail("\xe1\xb0\xae\xf0\x9e\x80\x9d.\xd6\xa6\xea\xa1\x9f\xf0\x9e\xa4\xb7\xf3\xa0\x86\x96"); } // [B1, V6]
8835test { try toAsciiFail("\xe1\xb0\xae\xf0\x9e\x80\x9d.\xd6\xa6\xea\xa1\x9f\xf0\x9e\xa4\xb7\xf3\xa0\x86\x96", false); } // [B1, V6]
8836test { try toAsciiFail("\xe1\xb0\xae\xf0\x9e\x80\x9d.\xd6\xa6\xea\xa1\x9f\xf0\x9e\xa4\xb7\xf3\xa0\x86\x96", true); } // [B1, V6]
3671test { try toUnicodeFail("xn--q1f4493q.xn--xcb8244fifvj"); } // [B1, V6]8837test { try toUnicodeFail("xn--q1f4493q.xn--xcb8244fifvj"); } // [B1, V6]
8838test { try toAsciiFail("xn--q1f4493q.xn--xcb8244fifvj", false); } // [B1, V6]
8839test { try toAsciiFail("xn--q1f4493q.xn--xcb8244fifvj", true); } // [B1, V6]
3672test { try toUnicodeFail("\xe4\x82\xb9\xf3\xbe\x96\x85\xf0\x90\x8b\xa6\xef\xbc\x8e\xe2\x80\x8d"); } // [C2, V7]8840test { try toUnicodeFail("\xe4\x82\xb9\xf3\xbe\x96\x85\xf0\x90\x8b\xa6\xef\xbc\x8e\xe2\x80\x8d"); } // [C2, V7]
8841test { try toAsciiFail("\xe4\x82\xb9\xf3\xbe\x96\x85\xf0\x90\x8b\xa6\xef\xbc\x8e\xe2\x80\x8d", false); } // [C2, V7]
8842test { try toAsciiFail("\xe4\x82\xb9\xf3\xbe\x96\x85\xf0\x90\x8b\xa6\xef\xbc\x8e\xe2\x80\x8d", true); } // [V7, A4_2]
3673test { try toUnicodeFail("\xe4\x82\xb9\xf3\xbe\x96\x85\xf0\x90\x8b\xa6.\xe2\x80\x8d"); } // [C2, V7]8843test { try toUnicodeFail("\xe4\x82\xb9\xf3\xbe\x96\x85\xf0\x90\x8b\xa6.\xe2\x80\x8d"); } // [C2, V7]
8844test { try toAsciiFail("\xe4\x82\xb9\xf3\xbe\x96\x85\xf0\x90\x8b\xa6.\xe2\x80\x8d", false); } // [C2, V7]
8845test { try toAsciiFail("\xe4\x82\xb9\xf3\xbe\x96\x85\xf0\x90\x8b\xa6.\xe2\x80\x8d", true); } // [V7, A4_2]
3674test { try toUnicodeFail("xn--0on3543c5981i."); } // [V7]8846test { try toUnicodeFail("xn--0on3543c5981i."); } // [V7]
8847test { try toAsciiFail("xn--0on3543c5981i.", false); } // [V7, A4_2]
8848test { try toAsciiFail("xn--0on3543c5981i.", true); } // [V7, A4_2]
3675test { try toUnicodeFail("xn--0on3543c5981i.xn--1ug"); } // [C2, V7]8849test { try toUnicodeFail("xn--0on3543c5981i.xn--1ug"); } // [C2, V7]
8850test { try toAsciiFail("xn--0on3543c5981i.xn--1ug", false); } // [C2, V7]
8851test { try toAsciiFail("xn--0on3543c5981i.xn--1ug", true); } // [C2, V7]
3676test { try toUnicodeFail("\xea\xa7\x80\xe2\x80\x8c\xf0\x90\xb9\xb2\xe2\x80\x8c\xef\xbd\xa1\xdd\xa7\xf0\x9f\x84\x89"); } // [B3, B5, B6, C1, V6, U1]8852test { try toUnicodeFail("\xea\xa7\x80\xe2\x80\x8c\xf0\x90\xb9\xb2\xe2\x80\x8c\xef\xbd\xa1\xdd\xa7\xf0\x9f\x84\x89"); } // [B3, B5, B6, C1, V6, U1]
8853test { try toAsciiFail("\xea\xa7\x80\xe2\x80\x8c\xf0\x90\xb9\xb2\xe2\x80\x8c\xef\xbd\xa1\xdd\xa7\xf0\x9f\x84\x89", false); } // [B3, B5, B6, C1, V6, U1]
8854test { try toAsciiFail("\xea\xa7\x80\xe2\x80\x8c\xf0\x90\xb9\xb2\xe2\x80\x8c\xef\xbd\xa1\xdd\xa7\xf0\x9f\x84\x89", true); } // [B3, B5, B6, V6, U1]
3677test { try toUnicodeFail("\xea\xa7\x80\xe2\x80\x8c\xf0\x90\xb9\xb2\xe2\x80\x8c\xe3\x80\x82\xdd\xa78,"); } // [B3, B5, B6, C1, V6, U1]8855test { try toUnicodeFail("\xea\xa7\x80\xe2\x80\x8c\xf0\x90\xb9\xb2\xe2\x80\x8c\xe3\x80\x82\xdd\xa78,"); } // [B3, B5, B6, C1, V6, U1]
8856test { try toAsciiFail("\xea\xa7\x80\xe2\x80\x8c\xf0\x90\xb9\xb2\xe2\x80\x8c\xe3\x80\x82\xdd\xa78,", false); } // [B3, B5, B6, C1, V6, U1]
8857test { try toAsciiFail("\xea\xa7\x80\xe2\x80\x8c\xf0\x90\xb9\xb2\xe2\x80\x8c\xe3\x80\x82\xdd\xa78,", true); } // [B3, B5, B6, V6, U1]
3678test { try toUnicodeFail("xn--7m9an32q.xn--8,-qle"); } // [B3, B5, B6, V6, U1]8858test { try toUnicodeFail("xn--7m9an32q.xn--8,-qle"); } // [B3, B5, B6, V6, U1]
8859test { try toAsciiFail("xn--7m9an32q.xn--8,-qle", false); } // [B3, B5, B6, V6, U1]
8860test { try toAsciiFail("xn--7m9an32q.xn--8,-qle", true); } // [B3, B5, B6, V6, U1]
3679test { try toUnicodeFail("xn--0uga8686hdgvd.xn--8,-qle"); } // [B3, B5, B6, C1, V6, U1]8861test { try toUnicodeFail("xn--0uga8686hdgvd.xn--8,-qle"); } // [B3, B5, B6, C1, V6, U1]
8862test { try toAsciiFail("xn--0uga8686hdgvd.xn--8,-qle", false); } // [B3, B5, B6, C1, V6, U1]
8863test { try toAsciiFail("xn--0uga8686hdgvd.xn--8,-qle", true); } // [B3, B5, B6, C1, V6, U1]
3680test { try toUnicodeFail("xn--7m9an32q.xn--rpb6081w"); } // [B5, B6, V6, V7]8864test { try toUnicodeFail("xn--7m9an32q.xn--rpb6081w"); } // [B5, B6, V6, V7]
8865test { try toAsciiFail("xn--7m9an32q.xn--rpb6081w", false); } // [B5, B6, V6, V7]
8866test { try toAsciiFail("xn--7m9an32q.xn--rpb6081w", true); } // [B5, B6, V6, V7]
3681test { try toUnicodeFail("xn--0uga8686hdgvd.xn--rpb6081w"); } // [B5, B6, C1, V6, V7]8867test { try toUnicodeFail("xn--0uga8686hdgvd.xn--rpb6081w"); } // [B5, B6, C1, V6, V7]
8868test { try toAsciiFail("xn--0uga8686hdgvd.xn--rpb6081w", false); } // [B5, B6, C1, V6, V7]
8869test { try toAsciiFail("xn--0uga8686hdgvd.xn--rpb6081w", true); } // [B5, B6, C1, V6, V7]
3682test { try toUnicodeFail("\xef\xb8\x92\xef\xbd\xa1\xe1\x82\xa3\xe2\x89\xaf"); } // [V7]8870test { try toUnicodeFail("\xef\xb8\x92\xef\xbd\xa1\xe1\x82\xa3\xe2\x89\xaf"); } // [V7]
8871test { try toAsciiFail("\xef\xb8\x92\xef\xbd\xa1\xe1\x82\xa3\xe2\x89\xaf", false); } // [V7]
8872test { try toAsciiFail("\xef\xb8\x92\xef\xbd\xa1\xe1\x82\xa3\xe2\x89\xaf", true); } // [V7]
3683test { try toUnicodeFail("\xef\xb8\x92\xef\xbd\xa1\xe1\x82\xa3>\xcc\xb8"); } // [V7]8873test { try toUnicodeFail("\xef\xb8\x92\xef\xbd\xa1\xe1\x82\xa3>\xcc\xb8"); } // [V7]
8874test { try toAsciiFail("\xef\xb8\x92\xef\xbd\xa1\xe1\x82\xa3>\xcc\xb8", false); } // [V7]
8875test { try toAsciiFail("\xef\xb8\x92\xef\xbd\xa1\xe1\x82\xa3>\xcc\xb8", true); } // [V7]
3684test { try toUnicodeFail("\xe3\x80\x82\xe3\x80\x82\xe1\x82\xa3\xe2\x89\xaf"); } // [X4_2]8876test { try toUnicodeFail("\xe3\x80\x82\xe3\x80\x82\xe1\x82\xa3\xe2\x89\xaf"); } // [X4_2]
8877test { try toAsciiFail("\xe3\x80\x82\xe3\x80\x82\xe1\x82\xa3\xe2\x89\xaf", false); } // [A4_2]
8878test { try toAsciiFail("\xe3\x80\x82\xe3\x80\x82\xe1\x82\xa3\xe2\x89\xaf", true); } // [A4_2]
3685test { try toUnicodeFail("\xe3\x80\x82\xe3\x80\x82\xe1\x82\xa3>\xcc\xb8"); } // [X4_2]8879test { try toUnicodeFail("\xe3\x80\x82\xe3\x80\x82\xe1\x82\xa3>\xcc\xb8"); } // [X4_2]
8880test { try toAsciiFail("\xe3\x80\x82\xe3\x80\x82\xe1\x82\xa3>\xcc\xb8", false); } // [A4_2]
8881test { try toAsciiFail("\xe3\x80\x82\xe3\x80\x82\xe1\x82\xa3>\xcc\xb8", true); } // [A4_2]
3686test { try toUnicodeFail("\xe3\x80\x82\xe3\x80\x82\xe2\xb4\x83>\xcc\xb8"); } // [X4_2]8882test { try toUnicodeFail("\xe3\x80\x82\xe3\x80\x82\xe2\xb4\x83>\xcc\xb8"); } // [X4_2]
8883test { try toAsciiFail("\xe3\x80\x82\xe3\x80\x82\xe2\xb4\x83>\xcc\xb8", false); } // [A4_2]
8884test { try toAsciiFail("\xe3\x80\x82\xe3\x80\x82\xe2\xb4\x83>\xcc\xb8", true); } // [A4_2]
3687test { try toUnicodeFail("\xe3\x80\x82\xe3\x80\x82\xe2\xb4\x83\xe2\x89\xaf"); } // [X4_2]8885test { try toUnicodeFail("\xe3\x80\x82\xe3\x80\x82\xe2\xb4\x83\xe2\x89\xaf"); } // [X4_2]
8886test { try toAsciiFail("\xe3\x80\x82\xe3\x80\x82\xe2\xb4\x83\xe2\x89\xaf", false); } // [A4_2]
8887test { try toAsciiFail("\xe3\x80\x82\xe3\x80\x82\xe2\xb4\x83\xe2\x89\xaf", true); } // [A4_2]
3688test { try toUnicodeFail("..xn--hdh782b"); } // [X4_2]8888test { try toUnicodeFail("..xn--hdh782b"); } // [X4_2]
8889test { try toAsciiFail("..xn--hdh782b", false); } // [A4_2]
8890test { try toAsciiFail("..xn--hdh782b", true); } // [A4_2]
3689test { try toUnicodeFail("\xef\xb8\x92\xef\xbd\xa1\xe2\xb4\x83>\xcc\xb8"); } // [V7]8891test { try toUnicodeFail("\xef\xb8\x92\xef\xbd\xa1\xe2\xb4\x83>\xcc\xb8"); } // [V7]
8892test { try toAsciiFail("\xef\xb8\x92\xef\xbd\xa1\xe2\xb4\x83>\xcc\xb8", false); } // [V7]
8893test { try toAsciiFail("\xef\xb8\x92\xef\xbd\xa1\xe2\xb4\x83>\xcc\xb8", true); } // [V7]
3690test { try toUnicodeFail("\xef\xb8\x92\xef\xbd\xa1\xe2\xb4\x83\xe2\x89\xaf"); } // [V7]8894test { try toUnicodeFail("\xef\xb8\x92\xef\xbd\xa1\xe2\xb4\x83\xe2\x89\xaf"); } // [V7]
8895test { try toAsciiFail("\xef\xb8\x92\xef\xbd\xa1\xe2\xb4\x83\xe2\x89\xaf", false); } // [V7]
8896test { try toAsciiFail("\xef\xb8\x92\xef\xbd\xa1\xe2\xb4\x83\xe2\x89\xaf", true); } // [V7]
3691test { try toUnicodeFail("xn--y86c.xn--hdh782b"); } // [V7]8897test { try toUnicodeFail("xn--y86c.xn--hdh782b"); } // [V7]
8898test { try toAsciiFail("xn--y86c.xn--hdh782b", false); } // [V7]
8899test { try toAsciiFail("xn--y86c.xn--hdh782b", true); } // [V7]
3692test { try toUnicodeFail("..xn--bnd622g"); } // [V7, X4_2]8900test { try toUnicodeFail("..xn--bnd622g"); } // [V7, X4_2]
8901test { try toAsciiFail("..xn--bnd622g", false); } // [V7, A4_2]
8902test { try toAsciiFail("..xn--bnd622g", true); } // [V7, A4_2]
3693test { try toUnicodeFail("xn--y86c.xn--bnd622g"); } // [V7]8903test { try toUnicodeFail("xn--y86c.xn--bnd622g"); } // [V7]
8904test { try toAsciiFail("xn--y86c.xn--bnd622g", false); } // [V7]
8905test { try toAsciiFail("xn--y86c.xn--bnd622g", true); } // [V7]
3694test { try toUnicodeFail("\xf0\x90\xb9\xae\xef\xbd\xa1\xf3\xa0\xa2\xbc\xe2\x80\x8d"); } // [B1, C2, V7]8906test { try toUnicodeFail("\xf0\x90\xb9\xae\xef\xbd\xa1\xf3\xa0\xa2\xbc\xe2\x80\x8d"); } // [B1, C2, V7]
8907test { try toAsciiFail("\xf0\x90\xb9\xae\xef\xbd\xa1\xf3\xa0\xa2\xbc\xe2\x80\x8d", false); } // [B1, C2, V7]
8908test { try toAsciiFail("\xf0\x90\xb9\xae\xef\xbd\xa1\xf3\xa0\xa2\xbc\xe2\x80\x8d", true); } // [B1, V7]
3695test { try toUnicodeFail("\xf0\x90\xb9\xae\xe3\x80\x82\xf3\xa0\xa2\xbc\xe2\x80\x8d"); } // [B1, C2, V7]8909test { try toUnicodeFail("\xf0\x90\xb9\xae\xe3\x80\x82\xf3\xa0\xa2\xbc\xe2\x80\x8d"); } // [B1, C2, V7]
8910test { try toAsciiFail("\xf0\x90\xb9\xae\xe3\x80\x82\xf3\xa0\xa2\xbc\xe2\x80\x8d", false); } // [B1, C2, V7]
8911test { try toAsciiFail("\xf0\x90\xb9\xae\xe3\x80\x82\xf3\xa0\xa2\xbc\xe2\x80\x8d", true); } // [B1, V7]
3696test { try toUnicodeFail("xn--mo0d.xn--wy46e"); } // [B1, V7]8912test { try toUnicodeFail("xn--mo0d.xn--wy46e"); } // [B1, V7]
8913test { try toAsciiFail("xn--mo0d.xn--wy46e", false); } // [B1, V7]
8914test { try toAsciiFail("xn--mo0d.xn--wy46e", true); } // [B1, V7]
3697test { try toUnicodeFail("xn--mo0d.xn--1ug18431l"); } // [B1, C2, V7]8915test { try toUnicodeFail("xn--mo0d.xn--1ug18431l"); } // [B1, C2, V7]
8916test { try toAsciiFail("xn--mo0d.xn--1ug18431l", false); } // [B1, C2, V7]
8917test { try toAsciiFail("xn--mo0d.xn--1ug18431l", true); } // [B1, C2, V7]
3698test { try toUnicodeFail("\xe1\x82\xbe\xf0\x90\xb9\xa8\xef\xbd\xa1\xef\xb8\x92\xdd\xbd\xe2\x80\x8d\xe1\x82\xaf"); } // [B1, B5, B6, C2, V7]8918test { try toUnicodeFail("\xe1\x82\xbe\xf0\x90\xb9\xa8\xef\xbd\xa1\xef\xb8\x92\xdd\xbd\xe2\x80\x8d\xe1\x82\xaf"); } // [B1, B5, B6, C2, V7]
8919test { try toAsciiFail("\xe1\x82\xbe\xf0\x90\xb9\xa8\xef\xbd\xa1\xef\xb8\x92\xdd\xbd\xe2\x80\x8d\xe1\x82\xaf", false); } // [B1, B5, B6, C2, V7]
8920test { try toAsciiFail("\xe1\x82\xbe\xf0\x90\xb9\xa8\xef\xbd\xa1\xef\xb8\x92\xdd\xbd\xe2\x80\x8d\xe1\x82\xaf", true); } // [B1, B5, B6, V7]
3699test { try toUnicodeFail("\xe1\x82\xbe\xf0\x90\xb9\xa8\xe3\x80\x82\xe3\x80\x82\xdd\xbd\xe2\x80\x8d\xe1\x82\xaf"); } // [B2, B3, B5, B6, C2, X4_2]8921test { try toUnicodeFail("\xe1\x82\xbe\xf0\x90\xb9\xa8\xe3\x80\x82\xe3\x80\x82\xdd\xbd\xe2\x80\x8d\xe1\x82\xaf"); } // [B2, B3, B5, B6, C2, X4_2]
8922test { try toAsciiFail("\xe1\x82\xbe\xf0\x90\xb9\xa8\xe3\x80\x82\xe3\x80\x82\xdd\xbd\xe2\x80\x8d\xe1\x82\xaf", false); } // [B2, B3, B5, B6, C2, A4_2]
8923test { try toAsciiFail("\xe1\x82\xbe\xf0\x90\xb9\xa8\xe3\x80\x82\xe3\x80\x82\xdd\xbd\xe2\x80\x8d\xe1\x82\xaf", true); } // [B2, B3, B5, B6, A4_2]
3700test { try toUnicodeFail("\xe2\xb4\x9e\xf0\x90\xb9\xa8\xe3\x80\x82\xe3\x80\x82\xdd\xbd\xe2\x80\x8d\xe2\xb4\x8f"); } // [B2, B3, B5, B6, C2, X4_2]8924test { try toUnicodeFail("\xe2\xb4\x9e\xf0\x90\xb9\xa8\xe3\x80\x82\xe3\x80\x82\xdd\xbd\xe2\x80\x8d\xe2\xb4\x8f"); } // [B2, B3, B5, B6, C2, X4_2]
8925test { try toAsciiFail("\xe2\xb4\x9e\xf0\x90\xb9\xa8\xe3\x80\x82\xe3\x80\x82\xdd\xbd\xe2\x80\x8d\xe2\xb4\x8f", false); } // [B2, B3, B5, B6, C2, A4_2]
8926test { try toAsciiFail("\xe2\xb4\x9e\xf0\x90\xb9\xa8\xe3\x80\x82\xe3\x80\x82\xdd\xbd\xe2\x80\x8d\xe2\xb4\x8f", true); } // [B2, B3, B5, B6, A4_2]
3701test { try toUnicodeFail("\xe1\x82\xbe\xf0\x90\xb9\xa8\xe3\x80\x82\xe3\x80\x82\xdd\xbd\xe2\x80\x8d\xe2\xb4\x8f"); } // [B2, B3, B5, B6, C2, X4_2]8927test { try toUnicodeFail("\xe1\x82\xbe\xf0\x90\xb9\xa8\xe3\x80\x82\xe3\x80\x82\xdd\xbd\xe2\x80\x8d\xe2\xb4\x8f"); } // [B2, B3, B5, B6, C2, X4_2]
8928test { try toAsciiFail("\xe1\x82\xbe\xf0\x90\xb9\xa8\xe3\x80\x82\xe3\x80\x82\xdd\xbd\xe2\x80\x8d\xe2\xb4\x8f", false); } // [B2, B3, B5, B6, C2, A4_2]
8929test { try toAsciiFail("\xe1\x82\xbe\xf0\x90\xb9\xa8\xe3\x80\x82\xe3\x80\x82\xdd\xbd\xe2\x80\x8d\xe2\xb4\x8f", true); } // [B2, B3, B5, B6, A4_2]
3702test { try toUnicodeFail("xn--mlju223e..xn--eqb053q"); } // [B2, B3, B5, B6, X4_2]8930test { try toUnicodeFail("xn--mlju223e..xn--eqb053q"); } // [B2, B3, B5, B6, X4_2]
8931test { try toAsciiFail("xn--mlju223e..xn--eqb053q", false); } // [B2, B3, B5, B6, A4_2]
8932test { try toAsciiFail("xn--mlju223e..xn--eqb053q", true); } // [B2, B3, B5, B6, A4_2]
3703test { try toUnicodeFail("xn--mlju223e..xn--eqb096jpgj"); } // [B2, B3, B5, B6, C2, X4_2]8933test { try toUnicodeFail("xn--mlju223e..xn--eqb096jpgj"); } // [B2, B3, B5, B6, C2, X4_2]
8934test { try toAsciiFail("xn--mlju223e..xn--eqb096jpgj", false); } // [B2, B3, B5, B6, C2, A4_2]
8935test { try toAsciiFail("xn--mlju223e..xn--eqb096jpgj", true); } // [B2, B3, B5, B6, C2, A4_2]
3704test { try toUnicodeFail("\xe2\xb4\x9e\xf0\x90\xb9\xa8\xef\xbd\xa1\xef\xb8\x92\xdd\xbd\xe2\x80\x8d\xe2\xb4\x8f"); } // [B1, B5, B6, C2, V7]8936test { try toUnicodeFail("\xe2\xb4\x9e\xf0\x90\xb9\xa8\xef\xbd\xa1\xef\xb8\x92\xdd\xbd\xe2\x80\x8d\xe2\xb4\x8f"); } // [B1, B5, B6, C2, V7]
8937test { try toAsciiFail("\xe2\xb4\x9e\xf0\x90\xb9\xa8\xef\xbd\xa1\xef\xb8\x92\xdd\xbd\xe2\x80\x8d\xe2\xb4\x8f", false); } // [B1, B5, B6, C2, V7]
8938test { try toAsciiFail("\xe2\xb4\x9e\xf0\x90\xb9\xa8\xef\xbd\xa1\xef\xb8\x92\xdd\xbd\xe2\x80\x8d\xe2\xb4\x8f", true); } // [B1, B5, B6, V7]
3705test { try toUnicodeFail("\xe1\x82\xbe\xf0\x90\xb9\xa8\xef\xbd\xa1\xef\xb8\x92\xdd\xbd\xe2\x80\x8d\xe2\xb4\x8f"); } // [B1, B5, B6, C2, V7]8939test { try toUnicodeFail("\xe1\x82\xbe\xf0\x90\xb9\xa8\xef\xbd\xa1\xef\xb8\x92\xdd\xbd\xe2\x80\x8d\xe2\xb4\x8f"); } // [B1, B5, B6, C2, V7]
8940test { try toAsciiFail("\xe1\x82\xbe\xf0\x90\xb9\xa8\xef\xbd\xa1\xef\xb8\x92\xdd\xbd\xe2\x80\x8d\xe2\xb4\x8f", false); } // [B1, B5, B6, C2, V7]
8941test { try toAsciiFail("\xe1\x82\xbe\xf0\x90\xb9\xa8\xef\xbd\xa1\xef\xb8\x92\xdd\xbd\xe2\x80\x8d\xe2\xb4\x8f", true); } // [B1, B5, B6, V7]
3706test { try toUnicodeFail("xn--mlju223e.xn--eqb053qjk7l"); } // [B1, B5, B6, V7]8942test { try toUnicodeFail("xn--mlju223e.xn--eqb053qjk7l"); } // [B1, B5, B6, V7]
8943test { try toAsciiFail("xn--mlju223e.xn--eqb053qjk7l", false); } // [B1, B5, B6, V7]
8944test { try toAsciiFail("xn--mlju223e.xn--eqb053qjk7l", true); } // [B1, B5, B6, V7]
3707test { try toUnicodeFail("xn--mlju223e.xn--eqb096jpgj9y7r"); } // [B1, B5, B6, C2, V7]8945test { try toUnicodeFail("xn--mlju223e.xn--eqb096jpgj9y7r"); } // [B1, B5, B6, C2, V7]
8946test { try toAsciiFail("xn--mlju223e.xn--eqb096jpgj9y7r", false); } // [B1, B5, B6, C2, V7]
8947test { try toAsciiFail("xn--mlju223e.xn--eqb096jpgj9y7r", true); } // [B1, B5, B6, C2, V7]
3708test { try toUnicodeFail("xn--2nd0990k..xn--eqb053q"); } // [B2, B3, B5, B6, V7, X4_2]8948test { try toUnicodeFail("xn--2nd0990k..xn--eqb053q"); } // [B2, B3, B5, B6, V7, X4_2]
8949test { try toAsciiFail("xn--2nd0990k..xn--eqb053q", false); } // [B2, B3, B5, B6, V7, A4_2]
8950test { try toAsciiFail("xn--2nd0990k..xn--eqb053q", true); } // [B2, B3, B5, B6, V7, A4_2]
3709test { try toUnicodeFail("xn--2nd0990k..xn--eqb096jpgj"); } // [B2, B3, B5, B6, C2, V7, X4_2]8951test { try toUnicodeFail("xn--2nd0990k..xn--eqb096jpgj"); } // [B2, B3, B5, B6, C2, V7, X4_2]
8952test { try toAsciiFail("xn--2nd0990k..xn--eqb096jpgj", false); } // [B2, B3, B5, B6, C2, V7, A4_2]
8953test { try toAsciiFail("xn--2nd0990k..xn--eqb096jpgj", true); } // [B2, B3, B5, B6, C2, V7, A4_2]
3710test { try toUnicodeFail("xn--2nd0990k..xn--eqb228b"); } // [B2, B3, B5, B6, V7, X4_2]8954test { try toUnicodeFail("xn--2nd0990k..xn--eqb228b"); } // [B2, B3, B5, B6, V7, X4_2]
8955test { try toAsciiFail("xn--2nd0990k..xn--eqb228b", false); } // [B2, B3, B5, B6, V7, A4_2]
8956test { try toAsciiFail("xn--2nd0990k..xn--eqb228b", true); } // [B2, B3, B5, B6, V7, A4_2]
3711test { try toUnicodeFail("xn--2nd0990k..xn--eqb228bgzm"); } // [B2, B3, B5, B6, C2, V7, X4_2]8957test { try toUnicodeFail("xn--2nd0990k..xn--eqb228bgzm"); } // [B2, B3, B5, B6, C2, V7, X4_2]
8958test { try toAsciiFail("xn--2nd0990k..xn--eqb228bgzm", false); } // [B2, B3, B5, B6, C2, V7, A4_2]
8959test { try toAsciiFail("xn--2nd0990k..xn--eqb228bgzm", true); } // [B2, B3, B5, B6, C2, V7, A4_2]
3712test { try toUnicodeFail("xn--2nd0990k.xn--eqb053qjk7l"); } // [B1, B5, B6, V7]8960test { try toUnicodeFail("xn--2nd0990k.xn--eqb053qjk7l"); } // [B1, B5, B6, V7]
8961test { try toAsciiFail("xn--2nd0990k.xn--eqb053qjk7l", false); } // [B1, B5, B6, V7]
8962test { try toAsciiFail("xn--2nd0990k.xn--eqb053qjk7l", true); } // [B1, B5, B6, V7]
3713test { try toUnicodeFail("xn--2nd0990k.xn--eqb096jpgj9y7r"); } // [B1, B5, B6, C2, V7]8963test { try toUnicodeFail("xn--2nd0990k.xn--eqb096jpgj9y7r"); } // [B1, B5, B6, C2, V7]
8964test { try toAsciiFail("xn--2nd0990k.xn--eqb096jpgj9y7r", false); } // [B1, B5, B6, C2, V7]
8965test { try toAsciiFail("xn--2nd0990k.xn--eqb096jpgj9y7r", true); } // [B1, B5, B6, C2, V7]
3714test { try toUnicodeFail("xn--2nd0990k.xn--eqb228b583r"); } // [B1, B5, B6, V7]8966test { try toUnicodeFail("xn--2nd0990k.xn--eqb228b583r"); } // [B1, B5, B6, V7]
8967test { try toAsciiFail("xn--2nd0990k.xn--eqb228b583r", false); } // [B1, B5, B6, V7]
8968test { try toAsciiFail("xn--2nd0990k.xn--eqb228b583r", true); } // [B1, B5, B6, V7]
3715test { try toUnicodeFail("xn--2nd0990k.xn--eqb228bgzmvp0t"); } // [B1, B5, B6, C2, V7]8969test { try toUnicodeFail("xn--2nd0990k.xn--eqb228bgzmvp0t"); } // [B1, B5, B6, C2, V7]
8970test { try toAsciiFail("xn--2nd0990k.xn--eqb228bgzmvp0t", false); } // [B1, B5, B6, C2, V7]
8971test { try toAsciiFail("xn--2nd0990k.xn--eqb228bgzmvp0t", true); } // [B1, B5, B6, C2, V7]
3716test { try toUnicodeFail("\xe2\x80\x8c\xe1\x82\xa6\xf0\x9d\x9f\xb9\xe3\x80\x82-\xe2\x83\x92-\xdf\x91"); } // [B1, C1, V3]8972test { try toUnicodeFail("\xe2\x80\x8c\xe1\x82\xa6\xf0\x9d\x9f\xb9\xe3\x80\x82-\xe2\x83\x92-\xdf\x91"); } // [B1, C1, V3]
8973test { try toAsciiFail("\xe2\x80\x8c\xe1\x82\xa6\xf0\x9d\x9f\xb9\xe3\x80\x82-\xe2\x83\x92-\xdf\x91", false); } // [B1, C1, V3]
8974test { try toAsciiFail("\xe2\x80\x8c\xe1\x82\xa6\xf0\x9d\x9f\xb9\xe3\x80\x82-\xe2\x83\x92-\xdf\x91", true); } // [B1, V3]
3717test { try toUnicodeFail("\xe2\x80\x8c\xe1\x82\xa63\xe3\x80\x82-\xe2\x83\x92-\xdf\x91"); } // [B1, C1, V3]8975test { try toUnicodeFail("\xe2\x80\x8c\xe1\x82\xa63\xe3\x80\x82-\xe2\x83\x92-\xdf\x91"); } // [B1, C1, V3]
8976test { try toAsciiFail("\xe2\x80\x8c\xe1\x82\xa63\xe3\x80\x82-\xe2\x83\x92-\xdf\x91", false); } // [B1, C1, V3]
8977test { try toAsciiFail("\xe2\x80\x8c\xe1\x82\xa63\xe3\x80\x82-\xe2\x83\x92-\xdf\x91", true); } // [B1, V3]
3718test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\x863\xe3\x80\x82-\xe2\x83\x92-\xdf\x91"); } // [B1, C1, V3]8978test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\x863\xe3\x80\x82-\xe2\x83\x92-\xdf\x91"); } // [B1, C1, V3]
8979test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\x863\xe3\x80\x82-\xe2\x83\x92-\xdf\x91", false); } // [B1, C1, V3]
8980test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\x863\xe3\x80\x82-\xe2\x83\x92-\xdf\x91", true); } // [B1, V3]
3719test { try toUnicodeFail("xn--3-lvs.xn-----vue617w"); } // [B1, V3]8981test { try toUnicodeFail("xn--3-lvs.xn-----vue617w"); } // [B1, V3]
8982test { try toAsciiFail("xn--3-lvs.xn-----vue617w", false); } // [B1, V3]
8983test { try toAsciiFail("xn--3-lvs.xn-----vue617w", true); } // [B1, V3]
3720test { try toUnicodeFail("xn--3-rgnv99c.xn-----vue617w"); } // [B1, C1, V3]8984test { try toUnicodeFail("xn--3-rgnv99c.xn-----vue617w"); } // [B1, C1, V3]
8985test { try toAsciiFail("xn--3-rgnv99c.xn-----vue617w", false); } // [B1, C1, V3]
8986test { try toAsciiFail("xn--3-rgnv99c.xn-----vue617w", true); } // [B1, C1, V3]
3721test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\x86\xf0\x9d\x9f\xb9\xe3\x80\x82-\xe2\x83\x92-\xdf\x91"); } // [B1, C1, V3]8987test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\x86\xf0\x9d\x9f\xb9\xe3\x80\x82-\xe2\x83\x92-\xdf\x91"); } // [B1, C1, V3]
8988test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\x86\xf0\x9d\x9f\xb9\xe3\x80\x82-\xe2\x83\x92-\xdf\x91", false); } // [B1, C1, V3]
8989test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\x86\xf0\x9d\x9f\xb9\xe3\x80\x82-\xe2\x83\x92-\xdf\x91", true); } // [B1, V3]
3722test { try toUnicodeFail("xn--3-i0g.xn-----vue617w"); } // [B1, V3, V7]8990test { try toUnicodeFail("xn--3-i0g.xn-----vue617w"); } // [B1, V3, V7]
8991test { try toAsciiFail("xn--3-i0g.xn-----vue617w", false); } // [B1, V3, V7]
8992test { try toAsciiFail("xn--3-i0g.xn-----vue617w", true); } // [B1, V3, V7]
3723test { try toUnicodeFail("xn--3-i0g939i.xn-----vue617w"); } // [B1, C1, V3, V7]8993test { try toUnicodeFail("xn--3-i0g939i.xn-----vue617w"); } // [B1, C1, V3, V7]
8994test { try toAsciiFail("xn--3-i0g939i.xn-----vue617w", false); } // [B1, C1, V3, V7]
8995test { try toAsciiFail("xn--3-i0g939i.xn-----vue617w", true); } // [B1, C1, V3, V7]
3724test { try toUnicodeFail("\xe7\xae\x83\xe1\x83\x81-\xf3\xa0\x81\x9d\xef\xbd\xa1\xe2\x89\xa0-\xf0\x9f\xa4\x96"); } // [V7]8996test { try toUnicodeFail("\xe7\xae\x83\xe1\x83\x81-\xf3\xa0\x81\x9d\xef\xbd\xa1\xe2\x89\xa0-\xf0\x9f\xa4\x96"); } // [V7]
8997test { try toAsciiFail("\xe7\xae\x83\xe1\x83\x81-\xf3\xa0\x81\x9d\xef\xbd\xa1\xe2\x89\xa0-\xf0\x9f\xa4\x96", false); } // [V7]
8998test { try toAsciiFail("\xe7\xae\x83\xe1\x83\x81-\xf3\xa0\x81\x9d\xef\xbd\xa1\xe2\x89\xa0-\xf0\x9f\xa4\x96", true); } // [V7]
3725test { try toUnicodeFail("\xe7\xae\x83\xe1\x83\x81-\xf3\xa0\x81\x9d\xef\xbd\xa1=\xcc\xb8-\xf0\x9f\xa4\x96"); } // [V7]8999test { try toUnicodeFail("\xe7\xae\x83\xe1\x83\x81-\xf3\xa0\x81\x9d\xef\xbd\xa1=\xcc\xb8-\xf0\x9f\xa4\x96"); } // [V7]
9000test { try toAsciiFail("\xe7\xae\x83\xe1\x83\x81-\xf3\xa0\x81\x9d\xef\xbd\xa1=\xcc\xb8-\xf0\x9f\xa4\x96", false); } // [V7]
9001test { try toAsciiFail("\xe7\xae\x83\xe1\x83\x81-\xf3\xa0\x81\x9d\xef\xbd\xa1=\xcc\xb8-\xf0\x9f\xa4\x96", true); } // [V7]
3726test { try toUnicodeFail("\xe7\xae\x83\xe1\x83\x81-\xf3\xa0\x81\x9d\xe3\x80\x82\xe2\x89\xa0-\xf0\x9f\xa4\x96"); } // [V7]9002test { try toUnicodeFail("\xe7\xae\x83\xe1\x83\x81-\xf3\xa0\x81\x9d\xe3\x80\x82\xe2\x89\xa0-\xf0\x9f\xa4\x96"); } // [V7]
9003test { try toAsciiFail("\xe7\xae\x83\xe1\x83\x81-\xf3\xa0\x81\x9d\xe3\x80\x82\xe2\x89\xa0-\xf0\x9f\xa4\x96", false); } // [V7]
9004test { try toAsciiFail("\xe7\xae\x83\xe1\x83\x81-\xf3\xa0\x81\x9d\xe3\x80\x82\xe2\x89\xa0-\xf0\x9f\xa4\x96", true); } // [V7]
3727test { try toUnicodeFail("\xe7\xae\x83\xe1\x83\x81-\xf3\xa0\x81\x9d\xe3\x80\x82=\xcc\xb8-\xf0\x9f\xa4\x96"); } // [V7]9005test { try toUnicodeFail("\xe7\xae\x83\xe1\x83\x81-\xf3\xa0\x81\x9d\xe3\x80\x82=\xcc\xb8-\xf0\x9f\xa4\x96"); } // [V7]
9006test { try toAsciiFail("\xe7\xae\x83\xe1\x83\x81-\xf3\xa0\x81\x9d\xe3\x80\x82=\xcc\xb8-\xf0\x9f\xa4\x96", false); } // [V7]
9007test { try toAsciiFail("\xe7\xae\x83\xe1\x83\x81-\xf3\xa0\x81\x9d\xe3\x80\x82=\xcc\xb8-\xf0\x9f\xa4\x96", true); } // [V7]
3728test { try toUnicodeFail("\xe7\xae\x83\xe2\xb4\xa1-\xf3\xa0\x81\x9d\xe3\x80\x82=\xcc\xb8-\xf0\x9f\xa4\x96"); } // [V7]9008test { try toUnicodeFail("\xe7\xae\x83\xe2\xb4\xa1-\xf3\xa0\x81\x9d\xe3\x80\x82=\xcc\xb8-\xf0\x9f\xa4\x96"); } // [V7]
9009test { try toAsciiFail("\xe7\xae\x83\xe2\xb4\xa1-\xf3\xa0\x81\x9d\xe3\x80\x82=\xcc\xb8-\xf0\x9f\xa4\x96", false); } // [V7]
9010test { try toAsciiFail("\xe7\xae\x83\xe2\xb4\xa1-\xf3\xa0\x81\x9d\xe3\x80\x82=\xcc\xb8-\xf0\x9f\xa4\x96", true); } // [V7]
3729test { try toUnicodeFail("\xe7\xae\x83\xe2\xb4\xa1-\xf3\xa0\x81\x9d\xe3\x80\x82\xe2\x89\xa0-\xf0\x9f\xa4\x96"); } // [V7]9011test { try toUnicodeFail("\xe7\xae\x83\xe2\xb4\xa1-\xf3\xa0\x81\x9d\xe3\x80\x82\xe2\x89\xa0-\xf0\x9f\xa4\x96"); } // [V7]
9012test { try toAsciiFail("\xe7\xae\x83\xe2\xb4\xa1-\xf3\xa0\x81\x9d\xe3\x80\x82\xe2\x89\xa0-\xf0\x9f\xa4\x96", false); } // [V7]
9013test { try toAsciiFail("\xe7\xae\x83\xe2\xb4\xa1-\xf3\xa0\x81\x9d\xe3\x80\x82\xe2\x89\xa0-\xf0\x9f\xa4\x96", true); } // [V7]
3730test { try toUnicodeFail("xn----4wsr321ay823p.xn----tfot873s"); } // [V7]9014test { try toUnicodeFail("xn----4wsr321ay823p.xn----tfot873s"); } // [V7]
9015test { try toAsciiFail("xn----4wsr321ay823p.xn----tfot873s", false); } // [V7]
9016test { try toAsciiFail("xn----4wsr321ay823p.xn----tfot873s", true); } // [V7]
3731test { try toUnicodeFail("\xe7\xae\x83\xe2\xb4\xa1-\xf3\xa0\x81\x9d\xef\xbd\xa1=\xcc\xb8-\xf0\x9f\xa4\x96"); } // [V7]9017test { try toUnicodeFail("\xe7\xae\x83\xe2\xb4\xa1-\xf3\xa0\x81\x9d\xef\xbd\xa1=\xcc\xb8-\xf0\x9f\xa4\x96"); } // [V7]
9018test { try toAsciiFail("\xe7\xae\x83\xe2\xb4\xa1-\xf3\xa0\x81\x9d\xef\xbd\xa1=\xcc\xb8-\xf0\x9f\xa4\x96", false); } // [V7]
9019test { try toAsciiFail("\xe7\xae\x83\xe2\xb4\xa1-\xf3\xa0\x81\x9d\xef\xbd\xa1=\xcc\xb8-\xf0\x9f\xa4\x96", true); } // [V7]
3732test { try toUnicodeFail("\xe7\xae\x83\xe2\xb4\xa1-\xf3\xa0\x81\x9d\xef\xbd\xa1\xe2\x89\xa0-\xf0\x9f\xa4\x96"); } // [V7]9020test { try toUnicodeFail("\xe7\xae\x83\xe2\xb4\xa1-\xf3\xa0\x81\x9d\xef\xbd\xa1\xe2\x89\xa0-\xf0\x9f\xa4\x96"); } // [V7]
9021test { try toAsciiFail("\xe7\xae\x83\xe2\xb4\xa1-\xf3\xa0\x81\x9d\xef\xbd\xa1\xe2\x89\xa0-\xf0\x9f\xa4\x96", false); } // [V7]
9022test { try toAsciiFail("\xe7\xae\x83\xe2\xb4\xa1-\xf3\xa0\x81\x9d\xef\xbd\xa1\xe2\x89\xa0-\xf0\x9f\xa4\x96", true); } // [V7]
3733test { try toUnicodeFail("xn----11g3013fy8x5m.xn----tfot873s"); } // [V7]9023test { try toUnicodeFail("xn----11g3013fy8x5m.xn----tfot873s"); } // [V7]
9024test { try toAsciiFail("xn----11g3013fy8x5m.xn----tfot873s", false); } // [V7]
9025test { try toAsciiFail("xn----11g3013fy8x5m.xn----tfot873s", true); } // [V7]
3734test { try toUnicodePass("\xdf\xa5.\xda\xb5", "\xdf\xa5.\xda\xb5"); }9026test { try toUnicodePass("\xdf\xa5.\xda\xb5", "\xdf\xa5.\xda\xb5"); }
3735test { try toAsciiPass("\xdf\xa5.\xda\xb5", "xn--dtb.xn--okb", false); }9027test { try toAsciiPass("\xdf\xa5.\xda\xb5", "xn--dtb.xn--okb", false); }
3736test { try toAsciiPass("\xdf\xa5.\xda\xb5", "xn--dtb.xn--okb", true); }9028test { try toAsciiPass("\xdf\xa5.\xda\xb5", "xn--dtb.xn--okb", true); }
...@@ -3738,9 +9030,17 @@ test { try toUnicodePass("xn--dtb.xn--okb", "\xdf\xa5.\xda\xb5"); }...@@ -3738,9 +9030,17 @@ test { try toUnicodePass("xn--dtb.xn--okb", "\xdf\xa5.\xda\xb5"); }
3738test { try toAsciiPass("xn--dtb.xn--okb", "xn--dtb.xn--okb", false); }9030test { try toAsciiPass("xn--dtb.xn--okb", "xn--dtb.xn--okb", false); }
3739test { try toAsciiPass("xn--dtb.xn--okb", "xn--dtb.xn--okb", true); }9031test { try toAsciiPass("xn--dtb.xn--okb", "xn--dtb.xn--okb", true); }
3740test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8d.\xf0\x9e\xa4\xbf"); } // [B1, C1, C2]9032test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8d.\xf0\x9e\xa4\xbf"); } // [B1, C1, C2]
9033test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8d.\xf0\x9e\xa4\xbf", false); } // [B1, C1, C2]
9034test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8d.\xf0\x9e\xa4\xbf", true); } // [A4_2]
3741test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8d.\xf0\x9e\xa4\x9d"); } // [B1, C1, C2]9035test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8d.\xf0\x9e\xa4\x9d"); } // [B1, C1, C2]
9036test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8d.\xf0\x9e\xa4\x9d", false); } // [B1, C1, C2]
9037test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8d.\xf0\x9e\xa4\x9d", true); } // [A4_2]
3742test { try toUnicodeFail(".xn--3e6h"); } // [X4_2]9038test { try toUnicodeFail(".xn--3e6h"); } // [X4_2]
9039test { try toAsciiFail(".xn--3e6h", false); } // [A4_2]
9040test { try toAsciiFail(".xn--3e6h", true); } // [A4_2]
3743test { try toUnicodeFail("xn--0ugc.xn--3e6h"); } // [B1, C1, C2]9041test { try toUnicodeFail("xn--0ugc.xn--3e6h"); } // [B1, C1, C2]
9042test { try toAsciiFail("xn--0ugc.xn--3e6h", false); } // [B1, C1, C2]
9043test { try toAsciiFail("xn--0ugc.xn--3e6h", true); } // [B1, C1, C2]
3744test { try toUnicodePass("xn--3e6h", "\xf0\x9e\xa4\xbf"); }9044test { try toUnicodePass("xn--3e6h", "\xf0\x9e\xa4\xbf"); }
3745test { try toAsciiPass("xn--3e6h", "xn--3e6h", false); }9045test { try toAsciiPass("xn--3e6h", "xn--3e6h", false); }
3746test { try toAsciiPass("xn--3e6h", "xn--3e6h", true); }9046test { try toAsciiPass("xn--3e6h", "xn--3e6h", true); }
...@@ -3751,58 +9051,164 @@ test { try toUnicodePass("\xf0\x9e\xa4\x9d", "\xf0\x9e\xa4\xbf"); }...@@ -3751,58 +9051,164 @@ test { try toUnicodePass("\xf0\x9e\xa4\x9d", "\xf0\x9e\xa4\xbf"); }
3751test { try toAsciiPass("\xf0\x9e\xa4\x9d", "xn--3e6h", false); }9051test { try toAsciiPass("\xf0\x9e\xa4\x9d", "xn--3e6h", false); }
3752test { try toAsciiPass("\xf0\x9e\xa4\x9d", "xn--3e6h", true); }9052test { try toAsciiPass("\xf0\x9e\xa4\x9d", "xn--3e6h", true); }
3753test { try toUnicodeFail("\xf0\x9f\x9c\x91\xf0\x90\xb9\xa7\xd8\xb9.\xcf\x82\xf0\x91\x8d\x8d\xe8\x9c\xb9"); } // [B1]9053test { try toUnicodeFail("\xf0\x9f\x9c\x91\xf0\x90\xb9\xa7\xd8\xb9.\xcf\x82\xf0\x91\x8d\x8d\xe8\x9c\xb9"); } // [B1]
9054test { try toAsciiFail("\xf0\x9f\x9c\x91\xf0\x90\xb9\xa7\xd8\xb9.\xcf\x82\xf0\x91\x8d\x8d\xe8\x9c\xb9", false); } // [B1]
9055test { try toAsciiFail("\xf0\x9f\x9c\x91\xf0\x90\xb9\xa7\xd8\xb9.\xcf\x82\xf0\x91\x8d\x8d\xe8\x9c\xb9", true); } // [B1]
3754test { try toUnicodeFail("\xf0\x9f\x9c\x91\xf0\x90\xb9\xa7\xd8\xb9.\xce\xa3\xf0\x91\x8d\x8d\xe8\x9c\xb9"); } // [B1]9056test { try toUnicodeFail("\xf0\x9f\x9c\x91\xf0\x90\xb9\xa7\xd8\xb9.\xce\xa3\xf0\x91\x8d\x8d\xe8\x9c\xb9"); } // [B1]
9057test { try toAsciiFail("\xf0\x9f\x9c\x91\xf0\x90\xb9\xa7\xd8\xb9.\xce\xa3\xf0\x91\x8d\x8d\xe8\x9c\xb9", false); } // [B1]
9058test { try toAsciiFail("\xf0\x9f\x9c\x91\xf0\x90\xb9\xa7\xd8\xb9.\xce\xa3\xf0\x91\x8d\x8d\xe8\x9c\xb9", true); } // [B1]
3755test { try toUnicodeFail("\xf0\x9f\x9c\x91\xf0\x90\xb9\xa7\xd8\xb9.\xcf\x83\xf0\x91\x8d\x8d\xe8\x9c\xb9"); } // [B1]9059test { try toUnicodeFail("\xf0\x9f\x9c\x91\xf0\x90\xb9\xa7\xd8\xb9.\xcf\x83\xf0\x91\x8d\x8d\xe8\x9c\xb9"); } // [B1]
9060test { try toAsciiFail("\xf0\x9f\x9c\x91\xf0\x90\xb9\xa7\xd8\xb9.\xcf\x83\xf0\x91\x8d\x8d\xe8\x9c\xb9", false); } // [B1]
9061test { try toAsciiFail("\xf0\x9f\x9c\x91\xf0\x90\xb9\xa7\xd8\xb9.\xcf\x83\xf0\x91\x8d\x8d\xe8\x9c\xb9", true); } // [B1]
3756test { try toUnicodeFail("xn--4gb3736kk4zf.xn--4xa2248dy27d"); } // [B1]9062test { try toUnicodeFail("xn--4gb3736kk4zf.xn--4xa2248dy27d"); } // [B1]
9063test { try toAsciiFail("xn--4gb3736kk4zf.xn--4xa2248dy27d", false); } // [B1]
9064test { try toAsciiFail("xn--4gb3736kk4zf.xn--4xa2248dy27d", true); } // [B1]
3757test { try toUnicodeFail("xn--4gb3736kk4zf.xn--3xa4248dy27d"); } // [B1]9065test { try toUnicodeFail("xn--4gb3736kk4zf.xn--3xa4248dy27d"); } // [B1]
9066test { try toAsciiFail("xn--4gb3736kk4zf.xn--3xa4248dy27d", false); } // [B1]
9067test { try toAsciiFail("xn--4gb3736kk4zf.xn--3xa4248dy27d", true); } // [B1]
3758test { try toUnicodeFail("\xf2\xab\xa0\x90\xe3\x82\xb9\xf4\x86\x9f\xa4\xd9\xa9\xef\xbc\x8e\xf3\x9a\x83\x9f"); } // [B5, B6, V7]9068test { try toUnicodeFail("\xf2\xab\xa0\x90\xe3\x82\xb9\xf4\x86\x9f\xa4\xd9\xa9\xef\xbc\x8e\xf3\x9a\x83\x9f"); } // [B5, B6, V7]
9069test { try toAsciiFail("\xf2\xab\xa0\x90\xe3\x82\xb9\xf4\x86\x9f\xa4\xd9\xa9\xef\xbc\x8e\xf3\x9a\x83\x9f", false); } // [B5, B6, V7]
9070test { try toAsciiFail("\xf2\xab\xa0\x90\xe3\x82\xb9\xf4\x86\x9f\xa4\xd9\xa9\xef\xbc\x8e\xf3\x9a\x83\x9f", true); } // [B5, B6, V7]
3759test { try toUnicodeFail("\xf2\xab\xa0\x90\xe3\x82\xb9\xf4\x86\x9f\xa4\xd9\xa9.\xf3\x9a\x83\x9f"); } // [B5, B6, V7]9071test { try toUnicodeFail("\xf2\xab\xa0\x90\xe3\x82\xb9\xf4\x86\x9f\xa4\xd9\xa9.\xf3\x9a\x83\x9f"); } // [B5, B6, V7]
9072test { try toAsciiFail("\xf2\xab\xa0\x90\xe3\x82\xb9\xf4\x86\x9f\xa4\xd9\xa9.\xf3\x9a\x83\x9f", false); } // [B5, B6, V7]
9073test { try toAsciiFail("\xf2\xab\xa0\x90\xe3\x82\xb9\xf4\x86\x9f\xa4\xd9\xa9.\xf3\x9a\x83\x9f", true); } // [B5, B6, V7]
3760test { try toUnicodeFail("xn--iib777sp230oo708a.xn--7824e"); } // [B5, B6, V7]9074test { try toUnicodeFail("xn--iib777sp230oo708a.xn--7824e"); } // [B5, B6, V7]
9075test { try toAsciiFail("xn--iib777sp230oo708a.xn--7824e", false); } // [B5, B6, V7]
9076test { try toAsciiFail("xn--iib777sp230oo708a.xn--7824e", true); } // [B5, B6, V7]
3761test { try toUnicodeFail("\xf0\x9d\xaa\xa3\xf2\x95\xa1\x9d\xef\xbc\x8e\xd6\x9a?\xdb\x82"); } // [B1, V6, V7, U1]9077test { try toUnicodeFail("\xf0\x9d\xaa\xa3\xf2\x95\xa1\x9d\xef\xbc\x8e\xd6\x9a?\xdb\x82"); } // [B1, V6, V7, U1]
9078test { try toAsciiFail("\xf0\x9d\xaa\xa3\xf2\x95\xa1\x9d\xef\xbc\x8e\xd6\x9a?\xdb\x82", false); } // [B1, V6, V7, U1]
9079test { try toAsciiFail("\xf0\x9d\xaa\xa3\xf2\x95\xa1\x9d\xef\xbc\x8e\xd6\x9a?\xdb\x82", true); } // [B1, V6, V7, U1]
3762test { try toUnicodeFail("\xf0\x9d\xaa\xa3\xf2\x95\xa1\x9d\xef\xbc\x8e\xd6\x9a?\xdb\x81\xd9\x94"); } // [B1, V6, V7, U1]9080test { try toUnicodeFail("\xf0\x9d\xaa\xa3\xf2\x95\xa1\x9d\xef\xbc\x8e\xd6\x9a?\xdb\x81\xd9\x94"); } // [B1, V6, V7, U1]
9081test { try toAsciiFail("\xf0\x9d\xaa\xa3\xf2\x95\xa1\x9d\xef\xbc\x8e\xd6\x9a?\xdb\x81\xd9\x94", false); } // [B1, V6, V7, U1]
9082test { try toAsciiFail("\xf0\x9d\xaa\xa3\xf2\x95\xa1\x9d\xef\xbc\x8e\xd6\x9a?\xdb\x81\xd9\x94", true); } // [B1, V6, V7, U1]
3763test { try toUnicodeFail("\xf0\x9d\xaa\xa3\xf2\x95\xa1\x9d.\xd6\x9a?\xdb\x82"); } // [B1, V6, V7, U1]9083test { try toUnicodeFail("\xf0\x9d\xaa\xa3\xf2\x95\xa1\x9d.\xd6\x9a?\xdb\x82"); } // [B1, V6, V7, U1]
9084test { try toAsciiFail("\xf0\x9d\xaa\xa3\xf2\x95\xa1\x9d.\xd6\x9a?\xdb\x82", false); } // [B1, V6, V7, U1]
9085test { try toAsciiFail("\xf0\x9d\xaa\xa3\xf2\x95\xa1\x9d.\xd6\x9a?\xdb\x82", true); } // [B1, V6, V7, U1]
3764test { try toUnicodeFail("\xf0\x9d\xaa\xa3\xf2\x95\xa1\x9d.\xd6\x9a?\xdb\x81\xd9\x94"); } // [B1, V6, V7, U1]9086test { try toUnicodeFail("\xf0\x9d\xaa\xa3\xf2\x95\xa1\x9d.\xd6\x9a?\xdb\x81\xd9\x94"); } // [B1, V6, V7, U1]
9087test { try toAsciiFail("\xf0\x9d\xaa\xa3\xf2\x95\xa1\x9d.\xd6\x9a?\xdb\x81\xd9\x94", false); } // [B1, V6, V7, U1]
9088test { try toAsciiFail("\xf0\x9d\xaa\xa3\xf2\x95\xa1\x9d.\xd6\x9a?\xdb\x81\xd9\x94", true); } // [B1, V6, V7, U1]
3765test { try toUnicodeFail("xn--8c3hu7971a.xn--?-wec30g"); } // [B1, V6, V7, U1]9089test { try toUnicodeFail("xn--8c3hu7971a.xn--?-wec30g"); } // [B1, V6, V7, U1]
9090test { try toAsciiFail("xn--8c3hu7971a.xn--?-wec30g", false); } // [B1, V6, V7, U1]
9091test { try toAsciiFail("xn--8c3hu7971a.xn--?-wec30g", true); } // [B1, V6, V7, U1]
3766test { try toUnicodeFail("xn--8c3hu7971a.\xd6\x9a?\xdb\x82"); } // [B1, V6, V7, U1]9092test { try toUnicodeFail("xn--8c3hu7971a.\xd6\x9a?\xdb\x82"); } // [B1, V6, V7, U1]
9093test { try toAsciiFail("xn--8c3hu7971a.\xd6\x9a?\xdb\x82", false); } // [B1, V6, V7, U1]
9094test { try toAsciiFail("xn--8c3hu7971a.\xd6\x9a?\xdb\x82", true); } // [B1, V6, V7, U1]
3767test { try toUnicodeFail("xn--8c3hu7971a.\xd6\x9a?\xdb\x81\xd9\x94"); } // [B1, V6, V7, U1]9095test { try toUnicodeFail("xn--8c3hu7971a.\xd6\x9a?\xdb\x81\xd9\x94"); } // [B1, V6, V7, U1]
9096test { try toAsciiFail("xn--8c3hu7971a.\xd6\x9a?\xdb\x81\xd9\x94", false); } // [B1, V6, V7, U1]
9097test { try toAsciiFail("xn--8c3hu7971a.\xd6\x9a?\xdb\x81\xd9\x94", true); } // [B1, V6, V7, U1]
3768test { try toUnicodeFail("XN--8C3HU7971A.\xd6\x9a?\xdb\x81\xd9\x94"); } // [B1, V6, V7, U1]9098test { try toUnicodeFail("XN--8C3HU7971A.\xd6\x9a?\xdb\x81\xd9\x94"); } // [B1, V6, V7, U1]
9099test { try toAsciiFail("XN--8C3HU7971A.\xd6\x9a?\xdb\x81\xd9\x94", false); } // [B1, V6, V7, U1]
9100test { try toAsciiFail("XN--8C3HU7971A.\xd6\x9a?\xdb\x81\xd9\x94", true); } // [B1, V6, V7, U1]
3769test { try toUnicodeFail("XN--8C3HU7971A.\xd6\x9a?\xdb\x82"); } // [B1, V6, V7, U1]9101test { try toUnicodeFail("XN--8C3HU7971A.\xd6\x9a?\xdb\x82"); } // [B1, V6, V7, U1]
9102test { try toAsciiFail("XN--8C3HU7971A.\xd6\x9a?\xdb\x82", false); } // [B1, V6, V7, U1]
9103test { try toAsciiFail("XN--8C3HU7971A.\xd6\x9a?\xdb\x82", true); } // [B1, V6, V7, U1]
3770test { try toUnicodeFail("Xn--8c3hu7971a.\xd6\x9a?\xdb\x82"); } // [B1, V6, V7, U1]9104test { try toUnicodeFail("Xn--8c3hu7971a.\xd6\x9a?\xdb\x82"); } // [B1, V6, V7, U1]
9105test { try toAsciiFail("Xn--8c3hu7971a.\xd6\x9a?\xdb\x82", false); } // [B1, V6, V7, U1]
9106test { try toAsciiFail("Xn--8c3hu7971a.\xd6\x9a?\xdb\x82", true); } // [B1, V6, V7, U1]
3771test { try toUnicodeFail("Xn--8c3hu7971a.\xd6\x9a?\xdb\x81\xd9\x94"); } // [B1, V6, V7, U1]9107test { try toUnicodeFail("Xn--8c3hu7971a.\xd6\x9a?\xdb\x81\xd9\x94"); } // [B1, V6, V7, U1]
9108test { try toAsciiFail("Xn--8c3hu7971a.\xd6\x9a?\xdb\x81\xd9\x94", false); } // [B1, V6, V7, U1]
9109test { try toAsciiFail("Xn--8c3hu7971a.\xd6\x9a?\xdb\x81\xd9\x94", true); } // [B1, V6, V7, U1]
3772test { try toUnicodeFail("\xd9\xa0\xf2\xaa\x93\xb5\xe2\x80\x8c\xe3\x80\x82\xdd\x97"); } // [B1, C1, V7]9110test { try toUnicodeFail("\xd9\xa0\xf2\xaa\x93\xb5\xe2\x80\x8c\xe3\x80\x82\xdd\x97"); } // [B1, C1, V7]
9111test { try toAsciiFail("\xd9\xa0\xf2\xaa\x93\xb5\xe2\x80\x8c\xe3\x80\x82\xdd\x97", false); } // [B1, C1, V7]
9112test { try toAsciiFail("\xd9\xa0\xf2\xaa\x93\xb5\xe2\x80\x8c\xe3\x80\x82\xdd\x97", true); } // [B1, V7]
3773test { try toUnicodeFail("xn--8hb82030l.xn--bpb"); } // [B1, V7]9113test { try toUnicodeFail("xn--8hb82030l.xn--bpb"); } // [B1, V7]
9114test { try toAsciiFail("xn--8hb82030l.xn--bpb", false); } // [B1, V7]
9115test { try toAsciiFail("xn--8hb82030l.xn--bpb", true); } // [B1, V7]
3774test { try toUnicodeFail("xn--8hb852ke991q.xn--bpb"); } // [B1, C1, V7]9116test { try toUnicodeFail("xn--8hb852ke991q.xn--bpb"); } // [B1, C1, V7]
9117test { try toAsciiFail("xn--8hb852ke991q.xn--bpb", false); } // [B1, C1, V7]
9118test { try toAsciiFail("xn--8hb852ke991q.xn--bpb", true); } // [B1, C1, V7]
3775test { try toUnicodeFail("\xe1\x80\xba\xe2\x80\x8d\xe2\x80\x8c\xe3\x80\x82-\xe2\x80\x8c"); } // [C1, V3, V6]9119test { try toUnicodeFail("\xe1\x80\xba\xe2\x80\x8d\xe2\x80\x8c\xe3\x80\x82-\xe2\x80\x8c"); } // [C1, V3, V6]
9120test { try toAsciiFail("\xe1\x80\xba\xe2\x80\x8d\xe2\x80\x8c\xe3\x80\x82-\xe2\x80\x8c", false); } // [C1, V3, V6]
9121test { try toAsciiFail("\xe1\x80\xba\xe2\x80\x8d\xe2\x80\x8c\xe3\x80\x82-\xe2\x80\x8c", true); } // [V3, V6]
3776test { try toUnicodeFail("xn--bkd.-"); } // [V3, V6]9122test { try toUnicodeFail("xn--bkd.-"); } // [V3, V6]
9123test { try toAsciiFail("xn--bkd.-", false); } // [V3, V6]
9124test { try toAsciiFail("xn--bkd.-", true); } // [V3, V6]
3777test { try toUnicodeFail("xn--bkd412fca.xn----sgn"); } // [C1, V3, V6]9125test { try toUnicodeFail("xn--bkd412fca.xn----sgn"); } // [C1, V3, V6]
9126test { try toAsciiFail("xn--bkd412fca.xn----sgn", false); } // [C1, V3, V6]
9127test { try toAsciiFail("xn--bkd412fca.xn----sgn", true); } // [C1, V3, V6]
3778test { try toUnicodeFail("\xef\xb8\x92\xef\xbd\xa1\xe1\xad\x84\xe1\xa1\x89"); } // [V6, V7]9128test { try toUnicodeFail("\xef\xb8\x92\xef\xbd\xa1\xe1\xad\x84\xe1\xa1\x89"); } // [V6, V7]
9129test { try toAsciiFail("\xef\xb8\x92\xef\xbd\xa1\xe1\xad\x84\xe1\xa1\x89", false); } // [V6, V7]
9130test { try toAsciiFail("\xef\xb8\x92\xef\xbd\xa1\xe1\xad\x84\xe1\xa1\x89", true); } // [V6, V7]
3779test { try toUnicodeFail("\xe3\x80\x82\xe3\x80\x82\xe1\xad\x84\xe1\xa1\x89"); } // [V6, X4_2]9131test { try toUnicodeFail("\xe3\x80\x82\xe3\x80\x82\xe1\xad\x84\xe1\xa1\x89"); } // [V6, X4_2]
9132test { try toAsciiFail("\xe3\x80\x82\xe3\x80\x82\xe1\xad\x84\xe1\xa1\x89", false); } // [V6, A4_2]
9133test { try toAsciiFail("\xe3\x80\x82\xe3\x80\x82\xe1\xad\x84\xe1\xa1\x89", true); } // [V6, A4_2]
3780test { try toUnicodeFail("..xn--87e93m"); } // [V6, X4_2]9134test { try toUnicodeFail("..xn--87e93m"); } // [V6, X4_2]
9135test { try toAsciiFail("..xn--87e93m", false); } // [V6, A4_2]
9136test { try toAsciiFail("..xn--87e93m", true); } // [V6, A4_2]
3781test { try toUnicodeFail("xn--y86c.xn--87e93m"); } // [V6, V7]9137test { try toUnicodeFail("xn--y86c.xn--87e93m"); } // [V6, V7]
9138test { try toAsciiFail("xn--y86c.xn--87e93m", false); } // [V6, V7]
9139test { try toAsciiFail("xn--y86c.xn--87e93m", true); } // [V6, V7]
3782test { try toUnicodeFail("\xdd\x98\xc3\x9f\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa8\xf0\x9d\x9f\x90"); } // [B2, B3, B5]9140test { try toUnicodeFail("\xdd\x98\xc3\x9f\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa8\xf0\x9d\x9f\x90"); } // [B2, B3, B5]
9141test { try toAsciiFail("\xdd\x98\xc3\x9f\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa8\xf0\x9d\x9f\x90", false); } // [B2, B3, B5]
9142test { try toAsciiFail("\xdd\x98\xc3\x9f\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa8\xf0\x9d\x9f\x90", true); } // [B2, B3, B5]
3783test { try toUnicodeFail("\xdd\x98\xc3\x9f\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa82"); } // [B2, B3, B5]9143test { try toUnicodeFail("\xdd\x98\xc3\x9f\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa82"); } // [B2, B3, B5]
9144test { try toAsciiFail("\xdd\x98\xc3\x9f\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa82", false); } // [B2, B3, B5]
9145test { try toAsciiFail("\xdd\x98\xc3\x9f\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa82", true); } // [B2, B3, B5]
3784test { try toUnicodeFail("\xdd\x98SS\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa82"); } // [B2, B3, B5]9146test { try toUnicodeFail("\xdd\x98SS\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa82"); } // [B2, B3, B5]
9147test { try toAsciiFail("\xdd\x98SS\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa82", false); } // [B2, B3, B5]
9148test { try toAsciiFail("\xdd\x98SS\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa82", true); } // [B2, B3, B5]
3785test { try toUnicodeFail("\xdd\x98ss\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa82"); } // [B2, B3, B5]9149test { try toUnicodeFail("\xdd\x98ss\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa82"); } // [B2, B3, B5]
9150test { try toAsciiFail("\xdd\x98ss\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa82", false); } // [B2, B3, B5]
9151test { try toAsciiFail("\xdd\x98ss\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa82", true); } // [B2, B3, B5]
3786test { try toUnicodeFail("xn--ss-gke.xn--2-b5c641gfmf"); } // [B2, B3, B5]9152test { try toUnicodeFail("xn--ss-gke.xn--2-b5c641gfmf"); } // [B2, B3, B5]
9153test { try toAsciiFail("xn--ss-gke.xn--2-b5c641gfmf", false); } // [B2, B3, B5]
9154test { try toAsciiFail("xn--ss-gke.xn--2-b5c641gfmf", true); } // [B2, B3, B5]
3787test { try toUnicodeFail("xn--zca724a.xn--2-b5c641gfmf"); } // [B2, B3, B5]9155test { try toUnicodeFail("xn--zca724a.xn--2-b5c641gfmf"); } // [B2, B3, B5]
9156test { try toAsciiFail("xn--zca724a.xn--2-b5c641gfmf", false); } // [B2, B3, B5]
9157test { try toAsciiFail("xn--zca724a.xn--2-b5c641gfmf", true); } // [B2, B3, B5]
3788test { try toUnicodeFail("\xdd\x98SS\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa8\xf0\x9d\x9f\x90"); } // [B2, B3, B5]9158test { try toUnicodeFail("\xdd\x98SS\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa8\xf0\x9d\x9f\x90"); } // [B2, B3, B5]
9159test { try toAsciiFail("\xdd\x98SS\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa8\xf0\x9d\x9f\x90", false); } // [B2, B3, B5]
9160test { try toAsciiFail("\xdd\x98SS\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa8\xf0\x9d\x9f\x90", true); } // [B2, B3, B5]
3789test { try toUnicodeFail("\xdd\x98ss\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa8\xf0\x9d\x9f\x90"); } // [B2, B3, B5]9161test { try toUnicodeFail("\xdd\x98ss\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa8\xf0\x9d\x9f\x90"); } // [B2, B3, B5]
9162test { try toAsciiFail("\xdd\x98ss\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa8\xf0\x9d\x9f\x90", false); } // [B2, B3, B5]
9163test { try toAsciiFail("\xdd\x98ss\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa8\xf0\x9d\x9f\x90", true); } // [B2, B3, B5]
3790test { try toUnicodeFail("\xdd\x98Ss\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa82"); } // [B2, B3, B5]9164test { try toUnicodeFail("\xdd\x98Ss\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa82"); } // [B2, B3, B5]
9165test { try toAsciiFail("\xdd\x98Ss\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa82", false); } // [B2, B3, B5]
9166test { try toAsciiFail("\xdd\x98Ss\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa82", true); } // [B2, B3, B5]
3791test { try toUnicodeFail("\xdd\x98Ss\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa8\xf0\x9d\x9f\x90"); } // [B2, B3, B5]9167test { try toUnicodeFail("\xdd\x98Ss\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa8\xf0\x9d\x9f\x90"); } // [B2, B3, B5]
9168test { try toAsciiFail("\xdd\x98Ss\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa8\xf0\x9d\x9f\x90", false); } // [B2, B3, B5]
9169test { try toAsciiFail("\xdd\x98Ss\xe3\x80\x82\xe1\x8c\xab\xe1\xa2\x8a\xdd\xa8\xf0\x9d\x9f\x90", true); } // [B2, B3, B5]
3792test { try toUnicodeFail("\xdf\x83\xf0\x9e\xb6\x87\xe1\x9a\xb2.\xe0\xa4\x82\xcd\x93\xf0\x9d\x9f\x9a\xe0\xa7\x8d"); } // [B1, B2, B3, V6, V7]9170test { try toUnicodeFail("\xdf\x83\xf0\x9e\xb6\x87\xe1\x9a\xb2.\xe0\xa4\x82\xcd\x93\xf0\x9d\x9f\x9a\xe0\xa7\x8d"); } // [B1, B2, B3, V6, V7]
9171test { try toAsciiFail("\xdf\x83\xf0\x9e\xb6\x87\xe1\x9a\xb2.\xe0\xa4\x82\xcd\x93\xf0\x9d\x9f\x9a\xe0\xa7\x8d", false); } // [B1, B2, B3, V6, V7]
9172test { try toAsciiFail("\xdf\x83\xf0\x9e\xb6\x87\xe1\x9a\xb2.\xe0\xa4\x82\xcd\x93\xf0\x9d\x9f\x9a\xe0\xa7\x8d", true); } // [B1, B2, B3, V6, V7]
3793test { try toUnicodeFail("\xdf\x83\xf0\x9e\xb6\x87\xe1\x9a\xb2.\xe0\xa4\x82\xcd\x932\xe0\xa7\x8d"); } // [B1, B2, B3, V6, V7]9173test { try toUnicodeFail("\xdf\x83\xf0\x9e\xb6\x87\xe1\x9a\xb2.\xe0\xa4\x82\xcd\x932\xe0\xa7\x8d"); } // [B1, B2, B3, V6, V7]
9174test { try toAsciiFail("\xdf\x83\xf0\x9e\xb6\x87\xe1\x9a\xb2.\xe0\xa4\x82\xcd\x932\xe0\xa7\x8d", false); } // [B1, B2, B3, V6, V7]
9175test { try toAsciiFail("\xdf\x83\xf0\x9e\xb6\x87\xe1\x9a\xb2.\xe0\xa4\x82\xcd\x932\xe0\xa7\x8d", true); } // [B1, B2, B3, V6, V7]
3794test { try toUnicodeFail("xn--esb067enh07a.xn--2-lgb874bjxa"); } // [B1, B2, B3, V6, V7]9176test { try toUnicodeFail("xn--esb067enh07a.xn--2-lgb874bjxa"); } // [B1, B2, B3, V6, V7]
9177test { try toAsciiFail("xn--esb067enh07a.xn--2-lgb874bjxa", false); } // [B1, B2, B3, V6, V7]
9178test { try toAsciiFail("xn--esb067enh07a.xn--2-lgb874bjxa", true); } // [B1, B2, B3, V6, V7]
3795test { try toUnicodeFail("-\xe1\xae\xab\xef\xb8\x92\xe2\x80\x8d.\xf1\x92\xb6\x88\xf1\xa5\xb9\x93"); } // [C2, V3, V7]9179test { try toUnicodeFail("-\xe1\xae\xab\xef\xb8\x92\xe2\x80\x8d.\xf1\x92\xb6\x88\xf1\xa5\xb9\x93"); } // [C2, V3, V7]
9180test { try toAsciiFail("-\xe1\xae\xab\xef\xb8\x92\xe2\x80\x8d.\xf1\x92\xb6\x88\xf1\xa5\xb9\x93", false); } // [C2, V3, V7]
9181test { try toAsciiFail("-\xe1\xae\xab\xef\xb8\x92\xe2\x80\x8d.\xf1\x92\xb6\x88\xf1\xa5\xb9\x93", true); } // [V3, V7]
3796test { try toUnicodeFail("-\xe1\xae\xab\xe3\x80\x82\xe2\x80\x8d.\xf1\x92\xb6\x88\xf1\xa5\xb9\x93"); } // [C2, V3, V7]9182test { try toUnicodeFail("-\xe1\xae\xab\xe3\x80\x82\xe2\x80\x8d.\xf1\x92\xb6\x88\xf1\xa5\xb9\x93"); } // [C2, V3, V7]
9183test { try toAsciiFail("-\xe1\xae\xab\xe3\x80\x82\xe2\x80\x8d.\xf1\x92\xb6\x88\xf1\xa5\xb9\x93", false); } // [C2, V3, V7]
9184test { try toAsciiFail("-\xe1\xae\xab\xe3\x80\x82\xe2\x80\x8d.\xf1\x92\xb6\x88\xf1\xa5\xb9\x93", true); } // [V3, V7, A4_2]
3797test { try toUnicodeFail("xn----qml..xn--x50zy803a"); } // [V3, V7, X4_2]9185test { try toUnicodeFail("xn----qml..xn--x50zy803a"); } // [V3, V7, X4_2]
9186test { try toAsciiFail("xn----qml..xn--x50zy803a", false); } // [V3, V7, A4_2]
9187test { try toAsciiFail("xn----qml..xn--x50zy803a", true); } // [V3, V7, A4_2]
3798test { try toUnicodeFail("xn----qml.xn--1ug.xn--x50zy803a"); } // [C2, V3, V7]9188test { try toUnicodeFail("xn----qml.xn--1ug.xn--x50zy803a"); } // [C2, V3, V7]
9189test { try toAsciiFail("xn----qml.xn--1ug.xn--x50zy803a", false); } // [C2, V3, V7]
9190test { try toAsciiFail("xn----qml.xn--1ug.xn--x50zy803a", true); } // [C2, V3, V7]
3799test { try toUnicodeFail("xn----qml1407i.xn--x50zy803a"); } // [V3, V7]9191test { try toUnicodeFail("xn----qml1407i.xn--x50zy803a"); } // [V3, V7]
9192test { try toAsciiFail("xn----qml1407i.xn--x50zy803a", false); } // [V3, V7]
9193test { try toAsciiFail("xn----qml1407i.xn--x50zy803a", true); } // [V3, V7]
3800test { try toUnicodeFail("xn----qmlv7tw180a.xn--x50zy803a"); } // [C2, V3, V7]9194test { try toUnicodeFail("xn----qmlv7tw180a.xn--x50zy803a"); } // [C2, V3, V7]
9195test { try toAsciiFail("xn----qmlv7tw180a.xn--x50zy803a", false); } // [C2, V3, V7]
9196test { try toAsciiFail("xn----qmlv7tw180a.xn--x50zy803a", true); } // [C2, V3, V7]
3801test { try toUnicodeFail("\xf3\xa0\xa6\xae.\xe2\x89\xaf\xf0\x9e\x80\x86"); } // [V7]9197test { try toUnicodeFail("\xf3\xa0\xa6\xae.\xe2\x89\xaf\xf0\x9e\x80\x86"); } // [V7]
9198test { try toAsciiFail("\xf3\xa0\xa6\xae.\xe2\x89\xaf\xf0\x9e\x80\x86", false); } // [V7]
9199test { try toAsciiFail("\xf3\xa0\xa6\xae.\xe2\x89\xaf\xf0\x9e\x80\x86", true); } // [V7]
3802test { try toUnicodeFail("\xf3\xa0\xa6\xae.>\xcc\xb8\xf0\x9e\x80\x86"); } // [V7]9200test { try toUnicodeFail("\xf3\xa0\xa6\xae.>\xcc\xb8\xf0\x9e\x80\x86"); } // [V7]
9201test { try toAsciiFail("\xf3\xa0\xa6\xae.>\xcc\xb8\xf0\x9e\x80\x86", false); } // [V7]
9202test { try toAsciiFail("\xf3\xa0\xa6\xae.>\xcc\xb8\xf0\x9e\x80\x86", true); } // [V7]
3803test { try toUnicodeFail("xn--t546e.xn--hdh5166o"); } // [V7]9203test { try toUnicodeFail("xn--t546e.xn--hdh5166o"); } // [V7]
9204test { try toAsciiFail("xn--t546e.xn--hdh5166o", false); } // [V7]
9205test { try toAsciiFail("xn--t546e.xn--hdh5166o", true); } // [V7]
3804test { try toUnicodeFail("-\xf0\x91\x84\xb3\xf3\xa0\x8a\x97\xf0\x90\xb9\xa9\xe3\x80\x82\xf0\x9e\xae\xb1"); } // [B1, V3, V7]9206test { try toUnicodeFail("-\xf0\x91\x84\xb3\xf3\xa0\x8a\x97\xf0\x90\xb9\xa9\xe3\x80\x82\xf0\x9e\xae\xb1"); } // [B1, V3, V7]
9207test { try toAsciiFail("-\xf0\x91\x84\xb3\xf3\xa0\x8a\x97\xf0\x90\xb9\xa9\xe3\x80\x82\xf0\x9e\xae\xb1", false); } // [B1, V3, V7]
9208test { try toAsciiFail("-\xf0\x91\x84\xb3\xf3\xa0\x8a\x97\xf0\x90\xb9\xa9\xe3\x80\x82\xf0\x9e\xae\xb1", true); } // [B1, V3, V7]
3805test { try toUnicodeFail("xn----p26i72em2894c.xn--zw6h"); } // [B1, V3, V7]9209test { try toUnicodeFail("xn----p26i72em2894c.xn--zw6h"); } // [B1, V3, V7]
9210test { try toAsciiFail("xn----p26i72em2894c.xn--zw6h", false); } // [B1, V3, V7]
9211test { try toAsciiFail("xn----p26i72em2894c.xn--zw6h", true); } // [B1, V3, V7]
3806test { try toUnicodePass("\xda\xb9\xef\xbc\x8e\xe1\xa1\xb3\xe1\x85\x9f", "\xda\xb9.\xe1\xa1\xb3"); }9212test { try toUnicodePass("\xda\xb9\xef\xbc\x8e\xe1\xa1\xb3\xe1\x85\x9f", "\xda\xb9.\xe1\xa1\xb3"); }
3807test { try toAsciiPass("\xda\xb9\xef\xbc\x8e\xe1\xa1\xb3\xe1\x85\x9f", "xn--skb.xn--g9e", false); }9213test { try toAsciiPass("\xda\xb9\xef\xbc\x8e\xe1\xa1\xb3\xe1\x85\x9f", "xn--skb.xn--g9e", false); }
3808test { try toAsciiPass("\xda\xb9\xef\xbc\x8e\xe1\xa1\xb3\xe1\x85\x9f", "xn--skb.xn--g9e", true); }9214test { try toAsciiPass("\xda\xb9\xef\xbc\x8e\xe1\xa1\xb3\xe1\x85\x9f", "xn--skb.xn--g9e", true); }
...@@ -3816,31 +9222,65 @@ test { try toUnicodePass("\xda\xb9.\xe1\xa1\xb3", "\xda\xb9.\xe1\xa1\xb3"); }...@@ -3816,31 +9222,65 @@ test { try toUnicodePass("\xda\xb9.\xe1\xa1\xb3", "\xda\xb9.\xe1\xa1\xb3"); }
3816test { try toAsciiPass("\xda\xb9.\xe1\xa1\xb3", "xn--skb.xn--g9e", false); }9222test { try toAsciiPass("\xda\xb9.\xe1\xa1\xb3", "xn--skb.xn--g9e", false); }
3817test { try toAsciiPass("\xda\xb9.\xe1\xa1\xb3", "xn--skb.xn--g9e", true); }9223test { try toAsciiPass("\xda\xb9.\xe1\xa1\xb3", "xn--skb.xn--g9e", true); }
3818test { try toUnicodeFail("xn--skb.xn--osd737a"); } // [V7]9224test { try toUnicodeFail("xn--skb.xn--osd737a"); } // [V7]
9225test { try toAsciiFail("xn--skb.xn--osd737a", false); } // [V7]
9226test { try toAsciiFail("xn--skb.xn--osd737a", true); } // [V7]
3819test { try toUnicodeFail("\xe3\xa8\x9b\xf0\x98\xb1\x8e.\xef\xb8\x92\xf0\x9d\x9f\x95\xe0\xb4\x81"); } // [V7]9227test { try toUnicodeFail("\xe3\xa8\x9b\xf0\x98\xb1\x8e.\xef\xb8\x92\xf0\x9d\x9f\x95\xe0\xb4\x81"); } // [V7]
9228test { try toAsciiFail("\xe3\xa8\x9b\xf0\x98\xb1\x8e.\xef\xb8\x92\xf0\x9d\x9f\x95\xe0\xb4\x81", false); } // [V7]
9229test { try toAsciiFail("\xe3\xa8\x9b\xf0\x98\xb1\x8e.\xef\xb8\x92\xf0\x9d\x9f\x95\xe0\xb4\x81", true); } // [V7]
3820test { try toUnicodeFail("\xe3\xa8\x9b\xf0\x98\xb1\x8e.\xe3\x80\x827\xe0\xb4\x81"); } // [X4_2]9230test { try toUnicodeFail("\xe3\xa8\x9b\xf0\x98\xb1\x8e.\xe3\x80\x827\xe0\xb4\x81"); } // [X4_2]
9231test { try toAsciiFail("\xe3\xa8\x9b\xf0\x98\xb1\x8e.\xe3\x80\x827\xe0\xb4\x81", false); } // [A4_2]
9232test { try toAsciiFail("\xe3\xa8\x9b\xf0\x98\xb1\x8e.\xe3\x80\x827\xe0\xb4\x81", true); } // [A4_2]
3821test { try toUnicodeFail("xn--mbm8237g..xn--7-7hf"); } // [X4_2]9233test { try toUnicodeFail("xn--mbm8237g..xn--7-7hf"); } // [X4_2]
9234test { try toAsciiFail("xn--mbm8237g..xn--7-7hf", false); } // [A4_2]
9235test { try toAsciiFail("xn--mbm8237g..xn--7-7hf", true); } // [A4_2]
3822test { try toUnicodeFail("xn--mbm8237g.xn--7-7hf1526p"); } // [V7]9236test { try toUnicodeFail("xn--mbm8237g.xn--7-7hf1526p"); } // [V7]
9237test { try toAsciiFail("xn--mbm8237g.xn--7-7hf1526p", false); } // [V7]
9238test { try toAsciiFail("xn--mbm8237g.xn--7-7hf1526p", true); } // [V7]
3823test { try toUnicodeFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xef\xbd\xa1\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\xa3\xe2\x89\xae"); } // [B1, B3, V3, V7]9239test { try toUnicodeFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xef\xbd\xa1\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\xa3\xe2\x89\xae"); } // [B1, B3, V3, V7]
9240test { try toAsciiFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xef\xbd\xa1\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\xa3\xe2\x89\xae", false); } // [B1, B3, V3, V7]
9241test { try toAsciiFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xef\xbd\xa1\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\xa3\xe2\x89\xae", true); } // [B1, B3, V3, V7]
3824test { try toUnicodeFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xef\xbd\xa1\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\xa3<\xcc\xb8"); } // [B1, B3, V3, V7]9242test { try toUnicodeFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xef\xbd\xa1\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\xa3<\xcc\xb8"); } // [B1, B3, V3, V7]
9243test { try toAsciiFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xef\xbd\xa1\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\xa3<\xcc\xb8", false); } // [B1, B3, V3, V7]
9244test { try toAsciiFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xef\xbd\xa1\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\xa3<\xcc\xb8", true); } // [B1, B3, V3, V7]
3825test { try toUnicodeFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xe3\x80\x82\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\xa3\xe2\x89\xae"); } // [B1, B3, V3, V7]9245test { try toUnicodeFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xe3\x80\x82\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\xa3\xe2\x89\xae"); } // [B1, B3, V3, V7]
9246test { try toAsciiFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xe3\x80\x82\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\xa3\xe2\x89\xae", false); } // [B1, B3, V3, V7]
9247test { try toAsciiFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xe3\x80\x82\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\xa3\xe2\x89\xae", true); } // [B1, B3, V3, V7]
3826test { try toUnicodeFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xe3\x80\x82\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\xa3<\xcc\xb8"); } // [B1, B3, V3, V7]9248test { try toUnicodeFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xe3\x80\x82\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\xa3<\xcc\xb8"); } // [B1, B3, V3, V7]
9249test { try toAsciiFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xe3\x80\x82\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\xa3<\xcc\xb8", false); } // [B1, B3, V3, V7]
9250test { try toAsciiFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xe3\x80\x82\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\xa3<\xcc\xb8", true); } // [B1, B3, V3, V7]
3827test { try toUnicodeFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xe3\x80\x82\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\x81<\xcc\xb8"); } // [B1, B3, V3, V7]9251test { try toUnicodeFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xe3\x80\x82\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\x81<\xcc\xb8"); } // [B1, B3, V3, V7]
9252test { try toAsciiFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xe3\x80\x82\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\x81<\xcc\xb8", false); } // [B1, B3, V3, V7]
9253test { try toAsciiFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xe3\x80\x82\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\x81<\xcc\xb8", true); } // [B1, B3, V3, V7]
3828test { try toUnicodeFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xe3\x80\x82\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\x81\xe2\x89\xae"); } // [B1, B3, V3, V7]9254test { try toUnicodeFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xe3\x80\x82\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\x81\xe2\x89\xae"); } // [B1, B3, V3, V7]
9255test { try toAsciiFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xe3\x80\x82\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\x81\xe2\x89\xae", false); } // [B1, B3, V3, V7]
9256test { try toAsciiFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xe3\x80\x82\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\x81\xe2\x89\xae", true); } // [B1, B3, V3, V7]
3829test { try toUnicodeFail("xn----dxc06304e.xn--gdh5020pk5c"); } // [B1, B3, V3, V7]9257test { try toUnicodeFail("xn----dxc06304e.xn--gdh5020pk5c"); } // [B1, B3, V3, V7]
9258test { try toAsciiFail("xn----dxc06304e.xn--gdh5020pk5c", false); } // [B1, B3, V3, V7]
9259test { try toAsciiFail("xn----dxc06304e.xn--gdh5020pk5c", true); } // [B1, B3, V3, V7]
3830test { try toUnicodeFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xef\xbd\xa1\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\x81<\xcc\xb8"); } // [B1, B3, V3, V7]9260test { try toUnicodeFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xef\xbd\xa1\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\x81<\xcc\xb8"); } // [B1, B3, V3, V7]
9261test { try toAsciiFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xef\xbd\xa1\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\x81<\xcc\xb8", false); } // [B1, B3, V3, V7]
9262test { try toAsciiFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xef\xbd\xa1\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\x81<\xcc\xb8", true); } // [B1, B3, V3, V7]
3831test { try toUnicodeFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xef\xbd\xa1\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\x81\xe2\x89\xae"); } // [B1, B3, V3, V7]9263test { try toUnicodeFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xef\xbd\xa1\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\x81\xe2\x89\xae"); } // [B1, B3, V3, V7]
9264test { try toAsciiFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xef\xbd\xa1\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\x81\xe2\x89\xae", false); } // [B1, B3, V3, V7]
9265test { try toAsciiFail("\xdb\x9d\xf0\xbb\xb1\xa7-\xef\xbd\xa1\xf0\x9e\xb7\x81\xe2\x81\xa4\xf0\x9e\xa4\x81\xe2\x89\xae", true); } // [B1, B3, V3, V7]
3832test { try toAsciiPass("\xc3\x9f\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe1\x83\x81\xe1\x82\xb6", "xn--ss-4epx629f.xn--ifh802b6a", true); }9266test { try toAsciiPass("\xc3\x9f\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe1\x83\x81\xe1\x82\xb6", "xn--ss-4epx629f.xn--ifh802b6a", true); }
3833test { try toUnicodeFail("\xc3\x9f\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe1\x83\x81\xe1\x82\xb6"); } // [C1]9267test { try toUnicodeFail("\xc3\x9f\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe1\x83\x81\xe1\x82\xb6"); } // [C1]
9268test { try toAsciiFail("\xc3\x9f\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe1\x83\x81\xe1\x82\xb6", false); } // [C1]
3834test { try toAsciiPass("\xc3\x9f\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe1\x83\x81\xe1\x82\xb6", "xn--ss-4epx629f.xn--ifh802b6a", true); }9269test { try toAsciiPass("\xc3\x9f\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe1\x83\x81\xe1\x82\xb6", "xn--ss-4epx629f.xn--ifh802b6a", true); }
3835test { try toUnicodeFail("\xc3\x9f\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe1\x83\x81\xe1\x82\xb6"); } // [C1]9270test { try toUnicodeFail("\xc3\x9f\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe1\x83\x81\xe1\x82\xb6"); } // [C1]
9271test { try toAsciiFail("\xc3\x9f\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe1\x83\x81\xe1\x82\xb6", false); } // [C1]
3836test { try toAsciiPass("\xc3\x9f\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe2\xb4\xa1\xe2\xb4\x96", "xn--ss-4epx629f.xn--ifh802b6a", true); }9272test { try toAsciiPass("\xc3\x9f\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe2\xb4\xa1\xe2\xb4\x96", "xn--ss-4epx629f.xn--ifh802b6a", true); }
3837test { try toUnicodeFail("\xc3\x9f\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe2\xb4\xa1\xe2\xb4\x96"); } // [C1]9273test { try toUnicodeFail("\xc3\x9f\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe2\xb4\xa1\xe2\xb4\x96"); } // [C1]
9274test { try toAsciiFail("\xc3\x9f\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe2\xb4\xa1\xe2\xb4\x96", false); } // [C1]
3838test { try toAsciiPass("SS\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe1\x83\x81\xe1\x82\xb6", "xn--ss-4epx629f.xn--ifh802b6a", true); }9275test { try toAsciiPass("SS\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe1\x83\x81\xe1\x82\xb6", "xn--ss-4epx629f.xn--ifh802b6a", true); }
3839test { try toUnicodeFail("SS\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe1\x83\x81\xe1\x82\xb6"); } // [C1]9276test { try toUnicodeFail("SS\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe1\x83\x81\xe1\x82\xb6"); } // [C1]
9277test { try toAsciiFail("SS\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe1\x83\x81\xe1\x82\xb6", false); } // [C1]
3840test { try toAsciiPass("ss\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe2\xb4\xa1\xe2\xb4\x96", "xn--ss-4epx629f.xn--ifh802b6a", true); }9278test { try toAsciiPass("ss\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe2\xb4\xa1\xe2\xb4\x96", "xn--ss-4epx629f.xn--ifh802b6a", true); }
3841test { try toUnicodeFail("ss\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe2\xb4\xa1\xe2\xb4\x96"); } // [C1]9279test { try toUnicodeFail("ss\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe2\xb4\xa1\xe2\xb4\x96"); } // [C1]
9280test { try toAsciiFail("ss\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe2\xb4\xa1\xe2\xb4\x96", false); } // [C1]
3842test { try toAsciiPass("Ss\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe1\x83\x81\xe2\xb4\x96", "xn--ss-4epx629f.xn--ifh802b6a", true); }9281test { try toAsciiPass("Ss\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe1\x83\x81\xe2\xb4\x96", "xn--ss-4epx629f.xn--ifh802b6a", true); }
3843test { try toUnicodeFail("Ss\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe1\x83\x81\xe2\xb4\x96"); } // [C1]9282test { try toUnicodeFail("Ss\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe1\x83\x81\xe2\xb4\x96"); } // [C1]
9283test { try toAsciiFail("Ss\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe1\x83\x81\xe2\xb4\x96", false); } // [C1]
3844test { try toUnicodePass("xn--ss-4epx629f.xn--ifh802b6a", "ss\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe2\xb4\xa1\xe2\xb4\x96"); }9284test { try toUnicodePass("xn--ss-4epx629f.xn--ifh802b6a", "ss\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe2\xb4\xa1\xe2\xb4\x96"); }
3845test { try toAsciiPass("xn--ss-4epx629f.xn--ifh802b6a", "xn--ss-4epx629f.xn--ifh802b6a", false); }9285test { try toAsciiPass("xn--ss-4epx629f.xn--ifh802b6a", "xn--ss-4epx629f.xn--ifh802b6a", false); }
3846test { try toAsciiPass("xn--ss-4epx629f.xn--ifh802b6a", "xn--ss-4epx629f.xn--ifh802b6a", true); }9286test { try toAsciiPass("xn--ss-4epx629f.xn--ifh802b6a", "xn--ss-4epx629f.xn--ifh802b6a", true); }
...@@ -3854,103 +9294,287 @@ test { try toUnicodePass("Ss\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe1\x83\x81\xe...@@ -3854,103 +9294,287 @@ test { try toUnicodePass("Ss\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe1\x83\x81\xe
3854test { try toAsciiPass("Ss\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe1\x83\x81\xe2\xb4\x96", "xn--ss-4epx629f.xn--ifh802b6a", false); }9294test { try toAsciiPass("Ss\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe1\x83\x81\xe2\xb4\x96", "xn--ss-4epx629f.xn--ifh802b6a", false); }
3855test { try toAsciiPass("Ss\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe1\x83\x81\xe2\xb4\x96", "xn--ss-4epx629f.xn--ifh802b6a", true); }9295test { try toAsciiPass("Ss\xea\xab\xb6\xe1\xa2\xa5.\xe2\x8a\xb6\xe1\x83\x81\xe2\xb4\x96", "xn--ss-4epx629f.xn--ifh802b6a", true); }
3856test { try toUnicodeFail("xn--ss-4ep585bkm5p.xn--ifh802b6a"); } // [C1]9296test { try toUnicodeFail("xn--ss-4ep585bkm5p.xn--ifh802b6a"); } // [C1]
9297test { try toAsciiFail("xn--ss-4ep585bkm5p.xn--ifh802b6a", false); } // [C1]
9298test { try toAsciiFail("xn--ss-4ep585bkm5p.xn--ifh802b6a", true); } // [C1]
3857test { try toUnicodeFail("xn--zca682johfi89m.xn--ifh802b6a"); } // [C1]9299test { try toUnicodeFail("xn--zca682johfi89m.xn--ifh802b6a"); } // [C1]
9300test { try toAsciiFail("xn--zca682johfi89m.xn--ifh802b6a", false); } // [C1]
9301test { try toAsciiFail("xn--zca682johfi89m.xn--ifh802b6a", true); } // [C1]
3858test { try toAsciiPass("\xc3\x9f\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe2\xb4\xa1\xe2\xb4\x96", "xn--ss-4epx629f.xn--ifh802b6a", true); }9302test { try toAsciiPass("\xc3\x9f\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe2\xb4\xa1\xe2\xb4\x96", "xn--ss-4epx629f.xn--ifh802b6a", true); }
3859test { try toUnicodeFail("\xc3\x9f\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe2\xb4\xa1\xe2\xb4\x96"); } // [C1]9303test { try toUnicodeFail("\xc3\x9f\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe2\xb4\xa1\xe2\xb4\x96"); } // [C1]
9304test { try toAsciiFail("\xc3\x9f\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe2\xb4\xa1\xe2\xb4\x96", false); } // [C1]
3860test { try toAsciiPass("SS\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe1\x83\x81\xe1\x82\xb6", "xn--ss-4epx629f.xn--ifh802b6a", true); }9305test { try toAsciiPass("SS\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe1\x83\x81\xe1\x82\xb6", "xn--ss-4epx629f.xn--ifh802b6a", true); }
3861test { try toUnicodeFail("SS\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe1\x83\x81\xe1\x82\xb6"); } // [C1]9306test { try toUnicodeFail("SS\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe1\x83\x81\xe1\x82\xb6"); } // [C1]
9307test { try toAsciiFail("SS\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe1\x83\x81\xe1\x82\xb6", false); } // [C1]
3862test { try toAsciiPass("ss\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe2\xb4\xa1\xe2\xb4\x96", "xn--ss-4epx629f.xn--ifh802b6a", true); }9308test { try toAsciiPass("ss\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe2\xb4\xa1\xe2\xb4\x96", "xn--ss-4epx629f.xn--ifh802b6a", true); }
3863test { try toUnicodeFail("ss\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe2\xb4\xa1\xe2\xb4\x96"); } // [C1]9309test { try toUnicodeFail("ss\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe2\xb4\xa1\xe2\xb4\x96"); } // [C1]
9310test { try toAsciiFail("ss\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe2\xb4\xa1\xe2\xb4\x96", false); } // [C1]
3864test { try toAsciiPass("Ss\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe1\x83\x81\xe2\xb4\x96", "xn--ss-4epx629f.xn--ifh802b6a", true); }9311test { try toAsciiPass("Ss\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe1\x83\x81\xe2\xb4\x96", "xn--ss-4epx629f.xn--ifh802b6a", true); }
3865test { try toUnicodeFail("Ss\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe1\x83\x81\xe2\xb4\x96"); } // [C1]9312test { try toUnicodeFail("Ss\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe1\x83\x81\xe2\xb4\x96"); } // [C1]
9313test { try toAsciiFail("Ss\xe2\x80\x8c\xea\xab\xb6\xe1\xa2\xa5\xef\xbc\x8e\xe2\x8a\xb6\xe1\x83\x81\xe2\xb4\x96", false); } // [C1]
3866test { try toUnicodeFail("xn--ss-4epx629f.xn--5nd703gyrh"); } // [V7]9314test { try toUnicodeFail("xn--ss-4epx629f.xn--5nd703gyrh"); } // [V7]
9315test { try toAsciiFail("xn--ss-4epx629f.xn--5nd703gyrh", false); } // [V7]
9316test { try toAsciiFail("xn--ss-4epx629f.xn--5nd703gyrh", true); } // [V7]
3867test { try toUnicodeFail("xn--ss-4ep585bkm5p.xn--5nd703gyrh"); } // [C1, V7]9317test { try toUnicodeFail("xn--ss-4ep585bkm5p.xn--5nd703gyrh"); } // [C1, V7]
9318test { try toAsciiFail("xn--ss-4ep585bkm5p.xn--5nd703gyrh", false); } // [C1, V7]
9319test { try toAsciiFail("xn--ss-4ep585bkm5p.xn--5nd703gyrh", true); } // [C1, V7]
3868test { try toUnicodeFail("xn--ss-4epx629f.xn--undv409k"); } // [V7]9320test { try toUnicodeFail("xn--ss-4epx629f.xn--undv409k"); } // [V7]
9321test { try toAsciiFail("xn--ss-4epx629f.xn--undv409k", false); } // [V7]
9322test { try toAsciiFail("xn--ss-4epx629f.xn--undv409k", true); } // [V7]
3869test { try toUnicodeFail("xn--ss-4ep585bkm5p.xn--undv409k"); } // [C1, V7]9323test { try toUnicodeFail("xn--ss-4ep585bkm5p.xn--undv409k"); } // [C1, V7]
9324test { try toAsciiFail("xn--ss-4ep585bkm5p.xn--undv409k", false); } // [C1, V7]
9325test { try toAsciiFail("xn--ss-4ep585bkm5p.xn--undv409k", true); } // [C1, V7]
3870test { try toUnicodeFail("xn--zca682johfi89m.xn--undv409k"); } // [C1, V7]9326test { try toUnicodeFail("xn--zca682johfi89m.xn--undv409k"); } // [C1, V7]
9327test { try toAsciiFail("xn--zca682johfi89m.xn--undv409k", false); } // [C1, V7]
9328test { try toAsciiFail("xn--zca682johfi89m.xn--undv409k", true); } // [C1, V7]
3871test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xcf\x82\xf3\xa0\x81\x89"); } // [C2, V7]9329test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xcf\x82\xf3\xa0\x81\x89"); } // [C2, V7]
9330test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xcf\x82\xf3\xa0\x81\x89", false); } // [C2, V7]
9331test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xcf\x82\xf3\xa0\x81\x89", true); } // [V7, A4_2]
3872test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xce\xa3\xf3\xa0\x81\x89"); } // [C2, V7]9332test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xce\xa3\xf3\xa0\x81\x89"); } // [C2, V7]
9333test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xce\xa3\xf3\xa0\x81\x89", false); } // [C2, V7]
9334test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xce\xa3\xf3\xa0\x81\x89", true); } // [V7, A4_2]
3873test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xcf\x83\xf3\xa0\x81\x89"); } // [C2, V7]9335test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xcf\x83\xf3\xa0\x81\x89"); } // [C2, V7]
9336test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xcf\x83\xf3\xa0\x81\x89", false); } // [C2, V7]
9337test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xcf\x83\xf3\xa0\x81\x89", true); } // [V7, A4_2]
3874test { try toUnicodeFail(".xn--4xa24344p"); } // [V7, X4_2]9338test { try toUnicodeFail(".xn--4xa24344p"); } // [V7, X4_2]
9339test { try toAsciiFail(".xn--4xa24344p", false); } // [V7, A4_2]
9340test { try toAsciiFail(".xn--4xa24344p", true); } // [V7, A4_2]
3875test { try toUnicodeFail("xn--1ug.xn--4xa24344p"); } // [C2, V7]9341test { try toUnicodeFail("xn--1ug.xn--4xa24344p"); } // [C2, V7]
9342test { try toAsciiFail("xn--1ug.xn--4xa24344p", false); } // [C2, V7]
9343test { try toAsciiFail("xn--1ug.xn--4xa24344p", true); } // [C2, V7]
3876test { try toUnicodeFail("xn--1ug.xn--3xa44344p"); } // [C2, V7]9344test { try toUnicodeFail("xn--1ug.xn--3xa44344p"); } // [C2, V7]
9345test { try toAsciiFail("xn--1ug.xn--3xa44344p", false); } // [C2, V7]
9346test { try toAsciiFail("xn--1ug.xn--3xa44344p", true); } // [C2, V7]
3877test { try toUnicodeFail("\xf0\x9e\xb5\x91\xc3\x9f.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\x9b-"); } // [B2, B3, C2, V3, V7]9347test { try toUnicodeFail("\xf0\x9e\xb5\x91\xc3\x9f.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\x9b-"); } // [B2, B3, C2, V3, V7]
9348test { try toAsciiFail("\xf0\x9e\xb5\x91\xc3\x9f.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\x9b-", false); } // [B2, B3, C2, V3, V7]
9349test { try toAsciiFail("\xf0\x9e\xb5\x91\xc3\x9f.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\x9b-", true); } // [B2, B3, V3, V7]
3878test { try toUnicodeFail("\xf0\x9e\xb5\x91\xc3\x9f.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\xbd-"); } // [B2, B3, C2, V3, V7]9350test { try toUnicodeFail("\xf0\x9e\xb5\x91\xc3\x9f.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\xbd-"); } // [B2, B3, C2, V3, V7]
9351test { try toAsciiFail("\xf0\x9e\xb5\x91\xc3\x9f.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\xbd-", false); } // [B2, B3, C2, V3, V7]
9352test { try toAsciiFail("\xf0\x9e\xb5\x91\xc3\x9f.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\xbd-", true); } // [B2, B3, V3, V7]
3879test { try toUnicodeFail("\xf0\x9e\xb5\x91SS.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\x9b-"); } // [B2, B3, C2, V3, V7]9353test { try toUnicodeFail("\xf0\x9e\xb5\x91SS.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\x9b-"); } // [B2, B3, C2, V3, V7]
9354test { try toAsciiFail("\xf0\x9e\xb5\x91SS.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\x9b-", false); } // [B2, B3, C2, V3, V7]
9355test { try toAsciiFail("\xf0\x9e\xb5\x91SS.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\x9b-", true); } // [B2, B3, V3, V7]
3880test { try toUnicodeFail("\xf0\x9e\xb5\x91ss.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\xbd-"); } // [B2, B3, C2, V3, V7]9356test { try toUnicodeFail("\xf0\x9e\xb5\x91ss.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\xbd-"); } // [B2, B3, C2, V3, V7]
9357test { try toAsciiFail("\xf0\x9e\xb5\x91ss.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\xbd-", false); } // [B2, B3, C2, V3, V7]
9358test { try toAsciiFail("\xf0\x9e\xb5\x91ss.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\xbd-", true); } // [B2, B3, V3, V7]
3881test { try toUnicodeFail("\xf0\x9e\xb5\x91Ss.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\xbd-"); } // [B2, B3, C2, V3, V7]9359test { try toUnicodeFail("\xf0\x9e\xb5\x91Ss.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\xbd-"); } // [B2, B3, C2, V3, V7]
9360test { try toAsciiFail("\xf0\x9e\xb5\x91Ss.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\xbd-", false); } // [B2, B3, C2, V3, V7]
9361test { try toAsciiFail("\xf0\x9e\xb5\x91Ss.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\xbd-", true); } // [B2, B3, V3, V7]
3882test { try toUnicodeFail("xn--ss-2722a.xn----z3c03218a"); } // [B2, B3, V3, V7]9362test { try toUnicodeFail("xn--ss-2722a.xn----z3c03218a"); } // [B2, B3, V3, V7]
9363test { try toAsciiFail("xn--ss-2722a.xn----z3c03218a", false); } // [B2, B3, V3, V7]
9364test { try toAsciiFail("xn--ss-2722a.xn----z3c03218a", true); } // [B2, B3, V3, V7]
3883test { try toUnicodeFail("xn--ss-2722a.xn----z3c011q9513b"); } // [B2, B3, C2, V3, V7]9365test { try toUnicodeFail("xn--ss-2722a.xn----z3c011q9513b"); } // [B2, B3, C2, V3, V7]
9366test { try toAsciiFail("xn--ss-2722a.xn----z3c011q9513b", false); } // [B2, B3, C2, V3, V7]
9367test { try toAsciiFail("xn--ss-2722a.xn----z3c011q9513b", true); } // [B2, B3, C2, V3, V7]
3884test { try toUnicodeFail("xn--zca5423w.xn----z3c011q9513b"); } // [B2, B3, C2, V3, V7]9368test { try toUnicodeFail("xn--zca5423w.xn----z3c011q9513b"); } // [B2, B3, C2, V3, V7]
9369test { try toAsciiFail("xn--zca5423w.xn----z3c011q9513b", false); } // [B2, B3, C2, V3, V7]
9370test { try toAsciiFail("xn--zca5423w.xn----z3c011q9513b", true); } // [B2, B3, C2, V3, V7]
3885test { try toUnicodeFail("\xf0\x9e\xb5\x91ss.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\x9b-"); } // [B2, B3, C2, V3, V7]9371test { try toUnicodeFail("\xf0\x9e\xb5\x91ss.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\x9b-"); } // [B2, B3, C2, V3, V7]
9372test { try toAsciiFail("\xf0\x9e\xb5\x91ss.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\x9b-", false); } // [B2, B3, C2, V3, V7]
9373test { try toAsciiFail("\xf0\x9e\xb5\x91ss.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\x9b-", true); } // [B2, B3, V3, V7]
3886test { try toUnicodeFail("\xf0\x9e\xb5\x91Ss.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\x9b-"); } // [B2, B3, C2, V3, V7]9374test { try toUnicodeFail("\xf0\x9e\xb5\x91Ss.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\x9b-"); } // [B2, B3, C2, V3, V7]
9375test { try toAsciiFail("\xf0\x9e\xb5\x91Ss.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\x9b-", false); } // [B2, B3, C2, V3, V7]
9376test { try toAsciiFail("\xf0\x9e\xb5\x91Ss.\xdd\x91\xe2\x80\x8d\xf0\x9e\xa4\x9b-", true); } // [B2, B3, V3, V7]
3887test { try toUnicodeFail("\xf0\x91\x98\xbd\xe2\x80\x8d\xf0\x9e\xa4\xa7\xef\xbc\x8e\xf0\x90\xb9\xa7\xf3\xa1\xa6\xaa-"); } // [B1, C2, V3, V6, V7]9377test { try toUnicodeFail("\xf0\x91\x98\xbd\xe2\x80\x8d\xf0\x9e\xa4\xa7\xef\xbc\x8e\xf0\x90\xb9\xa7\xf3\xa1\xa6\xaa-"); } // [B1, C2, V3, V6, V7]
9378test { try toAsciiFail("\xf0\x91\x98\xbd\xe2\x80\x8d\xf0\x9e\xa4\xa7\xef\xbc\x8e\xf0\x90\xb9\xa7\xf3\xa1\xa6\xaa-", false); } // [B1, C2, V3, V6, V7]
9379test { try toAsciiFail("\xf0\x91\x98\xbd\xe2\x80\x8d\xf0\x9e\xa4\xa7\xef\xbc\x8e\xf0\x90\xb9\xa7\xf3\xa1\xa6\xaa-", true); } // [B1, V3, V6, V7]
3888test { try toUnicodeFail("\xf0\x91\x98\xbd\xe2\x80\x8d\xf0\x9e\xa4\xa7.\xf0\x90\xb9\xa7\xf3\xa1\xa6\xaa-"); } // [B1, C2, V3, V6, V7]9380test { try toUnicodeFail("\xf0\x91\x98\xbd\xe2\x80\x8d\xf0\x9e\xa4\xa7.\xf0\x90\xb9\xa7\xf3\xa1\xa6\xaa-"); } // [B1, C2, V3, V6, V7]
9381test { try toAsciiFail("\xf0\x91\x98\xbd\xe2\x80\x8d\xf0\x9e\xa4\xa7.\xf0\x90\xb9\xa7\xf3\xa1\xa6\xaa-", false); } // [B1, C2, V3, V6, V7]
9382test { try toAsciiFail("\xf0\x91\x98\xbd\xe2\x80\x8d\xf0\x9e\xa4\xa7.\xf0\x90\xb9\xa7\xf3\xa1\xa6\xaa-", true); } // [B1, V3, V6, V7]
3889test { try toUnicodeFail("\xf0\x91\x98\xbd\xe2\x80\x8d\xf0\x9e\xa4\x85.\xf0\x90\xb9\xa7\xf3\xa1\xa6\xaa-"); } // [B1, C2, V3, V6, V7]9383test { try toUnicodeFail("\xf0\x91\x98\xbd\xe2\x80\x8d\xf0\x9e\xa4\x85.\xf0\x90\xb9\xa7\xf3\xa1\xa6\xaa-"); } // [B1, C2, V3, V6, V7]
9384test { try toAsciiFail("\xf0\x91\x98\xbd\xe2\x80\x8d\xf0\x9e\xa4\x85.\xf0\x90\xb9\xa7\xf3\xa1\xa6\xaa-", false); } // [B1, C2, V3, V6, V7]
9385test { try toAsciiFail("\xf0\x91\x98\xbd\xe2\x80\x8d\xf0\x9e\xa4\x85.\xf0\x90\xb9\xa7\xf3\xa1\xa6\xaa-", true); } // [B1, V3, V6, V7]
3890test { try toUnicodeFail("xn--qb2ds317a.xn----k26iq1483f"); } // [B1, V3, V6, V7]9386test { try toUnicodeFail("xn--qb2ds317a.xn----k26iq1483f"); } // [B1, V3, V6, V7]
9387test { try toAsciiFail("xn--qb2ds317a.xn----k26iq1483f", false); } // [B1, V3, V6, V7]
9388test { try toAsciiFail("xn--qb2ds317a.xn----k26iq1483f", true); } // [B1, V3, V6, V7]
3891test { try toUnicodeFail("xn--1ugz808gdimf.xn----k26iq1483f"); } // [B1, C2, V3, V6, V7]9389test { try toUnicodeFail("xn--1ugz808gdimf.xn----k26iq1483f"); } // [B1, C2, V3, V6, V7]
9390test { try toAsciiFail("xn--1ugz808gdimf.xn----k26iq1483f", false); } // [B1, C2, V3, V6, V7]
9391test { try toAsciiFail("xn--1ugz808gdimf.xn----k26iq1483f", true); } // [B1, C2, V3, V6, V7]
3892test { try toUnicodeFail("\xf0\x91\x98\xbd\xe2\x80\x8d\xf0\x9e\xa4\x85\xef\xbc\x8e\xf0\x90\xb9\xa7\xf3\xa1\xa6\xaa-"); } // [B1, C2, V3, V6, V7]9392test { try toUnicodeFail("\xf0\x91\x98\xbd\xe2\x80\x8d\xf0\x9e\xa4\x85\xef\xbc\x8e\xf0\x90\xb9\xa7\xf3\xa1\xa6\xaa-"); } // [B1, C2, V3, V6, V7]
9393test { try toAsciiFail("\xf0\x91\x98\xbd\xe2\x80\x8d\xf0\x9e\xa4\x85\xef\xbc\x8e\xf0\x90\xb9\xa7\xf3\xa1\xa6\xaa-", false); } // [B1, C2, V3, V6, V7]
9394test { try toAsciiFail("\xf0\x91\x98\xbd\xe2\x80\x8d\xf0\x9e\xa4\x85\xef\xbc\x8e\xf0\x90\xb9\xa7\xf3\xa1\xa6\xaa-", true); } // [B1, V3, V6, V7]
3893test { try toUnicodeFail("\xe2\x92\x92\xf2\xa8\x98\x99\xf2\xb3\xb3\xa0\xf0\x91\x93\x80.-\xf3\x9e\xa1\x8a"); } // [V3, V7]9395test { try toUnicodeFail("\xe2\x92\x92\xf2\xa8\x98\x99\xf2\xb3\xb3\xa0\xf0\x91\x93\x80.-\xf3\x9e\xa1\x8a"); } // [V3, V7]
9396test { try toAsciiFail("\xe2\x92\x92\xf2\xa8\x98\x99\xf2\xb3\xb3\xa0\xf0\x91\x93\x80.-\xf3\x9e\xa1\x8a", false); } // [V3, V7]
9397test { try toAsciiFail("\xe2\x92\x92\xf2\xa8\x98\x99\xf2\xb3\xb3\xa0\xf0\x91\x93\x80.-\xf3\x9e\xa1\x8a", true); } // [V3, V7]
3894test { try toUnicodeFail("11.\xf2\xa8\x98\x99\xf2\xb3\xb3\xa0\xf0\x91\x93\x80.-\xf3\x9e\xa1\x8a"); } // [V3, V7]9398test { try toUnicodeFail("11.\xf2\xa8\x98\x99\xf2\xb3\xb3\xa0\xf0\x91\x93\x80.-\xf3\x9e\xa1\x8a"); } // [V3, V7]
9399test { try toAsciiFail("11.\xf2\xa8\x98\x99\xf2\xb3\xb3\xa0\xf0\x91\x93\x80.-\xf3\x9e\xa1\x8a", false); } // [V3, V7]
9400test { try toAsciiFail("11.\xf2\xa8\x98\x99\xf2\xb3\xb3\xa0\xf0\x91\x93\x80.-\xf3\x9e\xa1\x8a", true); } // [V3, V7]
3895test { try toUnicodeFail("11.xn--uz1d59632bxujd.xn----x310m"); } // [V3, V7]9401test { try toUnicodeFail("11.xn--uz1d59632bxujd.xn----x310m"); } // [V3, V7]
9402test { try toAsciiFail("11.xn--uz1d59632bxujd.xn----x310m", false); } // [V3, V7]
9403test { try toAsciiFail("11.xn--uz1d59632bxujd.xn----x310m", true); } // [V3, V7]
3896test { try toUnicodeFail("xn--3shy698frsu9dt1me.xn----x310m"); } // [V3, V7]9404test { try toUnicodeFail("xn--3shy698frsu9dt1me.xn----x310m"); } // [V3, V7]
9405test { try toAsciiFail("xn--3shy698frsu9dt1me.xn----x310m", false); } // [V3, V7]
9406test { try toAsciiFail("xn--3shy698frsu9dt1me.xn----x310m", true); } // [V3, V7]
3897test { try toUnicodeFail("-\xef\xbd\xa1\xe2\x80\x8d"); } // [C2, V3]9407test { try toUnicodeFail("-\xef\xbd\xa1\xe2\x80\x8d"); } // [C2, V3]
9408test { try toAsciiFail("-\xef\xbd\xa1\xe2\x80\x8d", false); } // [C2, V3]
9409test { try toAsciiFail("-\xef\xbd\xa1\xe2\x80\x8d", true); } // [V3, A4_2]
3898test { try toUnicodeFail("-\xe3\x80\x82\xe2\x80\x8d"); } // [C2, V3]9410test { try toUnicodeFail("-\xe3\x80\x82\xe2\x80\x8d"); } // [C2, V3]
9411test { try toAsciiFail("-\xe3\x80\x82\xe2\x80\x8d", false); } // [C2, V3]
9412test { try toAsciiFail("-\xe3\x80\x82\xe2\x80\x8d", true); } // [V3, A4_2]
3899test { try toUnicodeFail("-."); } // [V3]9413test { try toUnicodeFail("-."); } // [V3]
9414test { try toAsciiFail("-.", false); } // [V3, A4_2]
9415test { try toAsciiFail("-.", true); } // [V3, A4_2]
3900test { try toUnicodeFail("-.xn--1ug"); } // [C2, V3]9416test { try toUnicodeFail("-.xn--1ug"); } // [C2, V3]
9417test { try toAsciiFail("-.xn--1ug", false); } // [C2, V3]
9418test { try toAsciiFail("-.xn--1ug", true); } // [C2, V3]
3901test { try toUnicodeFail("\xe2\x89\xae\xe1\xa1\xac\xef\xbc\x8e\xcf\x82\xc2\xb9-?"); } // [U1]9419test { try toUnicodeFail("\xe2\x89\xae\xe1\xa1\xac\xef\xbc\x8e\xcf\x82\xc2\xb9-?"); } // [U1]
9420test { try toAsciiFail("\xe2\x89\xae\xe1\xa1\xac\xef\xbc\x8e\xcf\x82\xc2\xb9-?", false); } // [U1]
9421test { try toAsciiFail("\xe2\x89\xae\xe1\xa1\xac\xef\xbc\x8e\xcf\x82\xc2\xb9-?", true); } // [U1]
3902test { try toUnicodeFail("<\xcc\xb8\xe1\xa1\xac\xef\xbc\x8e\xcf\x82\xc2\xb9-?"); } // [U1]9422test { try toUnicodeFail("<\xcc\xb8\xe1\xa1\xac\xef\xbc\x8e\xcf\x82\xc2\xb9-?"); } // [U1]
9423test { try toAsciiFail("<\xcc\xb8\xe1\xa1\xac\xef\xbc\x8e\xcf\x82\xc2\xb9-?", false); } // [U1]
9424test { try toAsciiFail("<\xcc\xb8\xe1\xa1\xac\xef\xbc\x8e\xcf\x82\xc2\xb9-?", true); } // [U1]
3903test { try toUnicodeFail("\xe2\x89\xae\xe1\xa1\xac.\xcf\x821-?"); } // [U1]9425test { try toUnicodeFail("\xe2\x89\xae\xe1\xa1\xac.\xcf\x821-?"); } // [U1]
9426test { try toAsciiFail("\xe2\x89\xae\xe1\xa1\xac.\xcf\x821-?", false); } // [U1]
9427test { try toAsciiFail("\xe2\x89\xae\xe1\xa1\xac.\xcf\x821-?", true); } // [U1]
3904test { try toUnicodeFail("<\xcc\xb8\xe1\xa1\xac.\xcf\x821-?"); } // [U1]9428test { try toUnicodeFail("<\xcc\xb8\xe1\xa1\xac.\xcf\x821-?"); } // [U1]
9429test { try toAsciiFail("<\xcc\xb8\xe1\xa1\xac.\xcf\x821-?", false); } // [U1]
9430test { try toAsciiFail("<\xcc\xb8\xe1\xa1\xac.\xcf\x821-?", true); } // [U1]
3905test { try toUnicodeFail("<\xcc\xb8\xe1\xa1\xac.\xce\xa31-?"); } // [U1]9431test { try toUnicodeFail("<\xcc\xb8\xe1\xa1\xac.\xce\xa31-?"); } // [U1]
9432test { try toAsciiFail("<\xcc\xb8\xe1\xa1\xac.\xce\xa31-?", false); } // [U1]
9433test { try toAsciiFail("<\xcc\xb8\xe1\xa1\xac.\xce\xa31-?", true); } // [U1]
3906test { try toUnicodeFail("\xe2\x89\xae\xe1\xa1\xac.\xce\xa31-?"); } // [U1]9434test { try toUnicodeFail("\xe2\x89\xae\xe1\xa1\xac.\xce\xa31-?"); } // [U1]
9435test { try toAsciiFail("\xe2\x89\xae\xe1\xa1\xac.\xce\xa31-?", false); } // [U1]
9436test { try toAsciiFail("\xe2\x89\xae\xe1\xa1\xac.\xce\xa31-?", true); } // [U1]
3907test { try toUnicodeFail("\xe2\x89\xae\xe1\xa1\xac.\xcf\x831-?"); } // [U1]9437test { try toUnicodeFail("\xe2\x89\xae\xe1\xa1\xac.\xcf\x831-?"); } // [U1]
9438test { try toAsciiFail("\xe2\x89\xae\xe1\xa1\xac.\xcf\x831-?", false); } // [U1]
9439test { try toAsciiFail("\xe2\x89\xae\xe1\xa1\xac.\xcf\x831-?", true); } // [U1]
3908test { try toUnicodeFail("<\xcc\xb8\xe1\xa1\xac.\xcf\x831-?"); } // [U1]9440test { try toUnicodeFail("<\xcc\xb8\xe1\xa1\xac.\xcf\x831-?"); } // [U1]
9441test { try toAsciiFail("<\xcc\xb8\xe1\xa1\xac.\xcf\x831-?", false); } // [U1]
9442test { try toAsciiFail("<\xcc\xb8\xe1\xa1\xac.\xcf\x831-?", true); } // [U1]
3909test { try toUnicodeFail("xn--88e732c.xn--1-?-pzc"); } // [U1]9443test { try toUnicodeFail("xn--88e732c.xn--1-?-pzc"); } // [U1]
9444test { try toAsciiFail("xn--88e732c.xn--1-?-pzc", false); } // [U1]
9445test { try toAsciiFail("xn--88e732c.xn--1-?-pzc", true); } // [U1]
3910test { try toUnicodeFail("xn--88e732c.xn--1-?-lzc"); } // [U1]9446test { try toUnicodeFail("xn--88e732c.xn--1-?-lzc"); } // [U1]
9447test { try toAsciiFail("xn--88e732c.xn--1-?-lzc", false); } // [U1]
9448test { try toAsciiFail("xn--88e732c.xn--1-?-lzc", true); } // [U1]
3911test { try toUnicodeFail("<\xcc\xb8\xe1\xa1\xac\xef\xbc\x8e\xce\xa3\xc2\xb9-?"); } // [U1]9449test { try toUnicodeFail("<\xcc\xb8\xe1\xa1\xac\xef\xbc\x8e\xce\xa3\xc2\xb9-?"); } // [U1]
9450test { try toAsciiFail("<\xcc\xb8\xe1\xa1\xac\xef\xbc\x8e\xce\xa3\xc2\xb9-?", false); } // [U1]
9451test { try toAsciiFail("<\xcc\xb8\xe1\xa1\xac\xef\xbc\x8e\xce\xa3\xc2\xb9-?", true); } // [U1]
3912test { try toUnicodeFail("\xe2\x89\xae\xe1\xa1\xac\xef\xbc\x8e\xce\xa3\xc2\xb9-?"); } // [U1]9452test { try toUnicodeFail("\xe2\x89\xae\xe1\xa1\xac\xef\xbc\x8e\xce\xa3\xc2\xb9-?"); } // [U1]
9453test { try toAsciiFail("\xe2\x89\xae\xe1\xa1\xac\xef\xbc\x8e\xce\xa3\xc2\xb9-?", false); } // [U1]
9454test { try toAsciiFail("\xe2\x89\xae\xe1\xa1\xac\xef\xbc\x8e\xce\xa3\xc2\xb9-?", true); } // [U1]
3913test { try toUnicodeFail("\xe2\x89\xae\xe1\xa1\xac\xef\xbc\x8e\xcf\x83\xc2\xb9-?"); } // [U1]9455test { try toUnicodeFail("\xe2\x89\xae\xe1\xa1\xac\xef\xbc\x8e\xcf\x83\xc2\xb9-?"); } // [U1]
9456test { try toAsciiFail("\xe2\x89\xae\xe1\xa1\xac\xef\xbc\x8e\xcf\x83\xc2\xb9-?", false); } // [U1]
9457test { try toAsciiFail("\xe2\x89\xae\xe1\xa1\xac\xef\xbc\x8e\xcf\x83\xc2\xb9-?", true); } // [U1]
3914test { try toUnicodeFail("<\xcc\xb8\xe1\xa1\xac\xef\xbc\x8e\xcf\x83\xc2\xb9-?"); } // [U1]9458test { try toUnicodeFail("<\xcc\xb8\xe1\xa1\xac\xef\xbc\x8e\xcf\x83\xc2\xb9-?"); } // [U1]
9459test { try toAsciiFail("<\xcc\xb8\xe1\xa1\xac\xef\xbc\x8e\xcf\x83\xc2\xb9-?", false); } // [U1]
9460test { try toAsciiFail("<\xcc\xb8\xe1\xa1\xac\xef\xbc\x8e\xcf\x83\xc2\xb9-?", true); } // [U1]
3915test { try toUnicodeFail("xn--88e732c.\xcf\x831-?"); } // [U1]9461test { try toUnicodeFail("xn--88e732c.\xcf\x831-?"); } // [U1]
9462test { try toAsciiFail("xn--88e732c.\xcf\x831-?", false); } // [U1]
9463test { try toAsciiFail("xn--88e732c.\xcf\x831-?", true); } // [U1]
3916test { try toUnicodeFail("XN--88E732C.\xce\xa31-?"); } // [U1]9464test { try toUnicodeFail("XN--88E732C.\xce\xa31-?"); } // [U1]
9465test { try toAsciiFail("XN--88E732C.\xce\xa31-?", false); } // [U1]
9466test { try toAsciiFail("XN--88E732C.\xce\xa31-?", true); } // [U1]
3917test { try toUnicodeFail("xn--88e732c.\xcf\x821-?"); } // [U1]9467test { try toUnicodeFail("xn--88e732c.\xcf\x821-?"); } // [U1]
9468test { try toAsciiFail("xn--88e732c.\xcf\x821-?", false); } // [U1]
9469test { try toAsciiFail("xn--88e732c.\xcf\x821-?", true); } // [U1]
3918test { try toUnicodeFail("Xn--88e732c.\xcf\x821-?"); } // [U1]9470test { try toUnicodeFail("Xn--88e732c.\xcf\x821-?"); } // [U1]
9471test { try toAsciiFail("Xn--88e732c.\xcf\x821-?", false); } // [U1]
9472test { try toAsciiFail("Xn--88e732c.\xcf\x821-?", true); } // [U1]
3919test { try toUnicodeFail("Xn--88e732c.\xcf\x831-?"); } // [U1]9473test { try toUnicodeFail("Xn--88e732c.\xcf\x831-?"); } // [U1]
9474test { try toAsciiFail("Xn--88e732c.\xcf\x831-?", false); } // [U1]
9475test { try toAsciiFail("Xn--88e732c.\xcf\x831-?", true); } // [U1]
3920test { try toUnicodeFail("\xe1\x89\xac\xf2\x94\xa0\xbc\xf1\x81\x97\xb6\xef\xbd\xa1\xf0\x90\xa8\xac\xf0\x9d\x9f\xa0"); } // [V7]9476test { try toUnicodeFail("\xe1\x89\xac\xf2\x94\xa0\xbc\xf1\x81\x97\xb6\xef\xbd\xa1\xf0\x90\xa8\xac\xf0\x9d\x9f\xa0"); } // [V7]
9477test { try toAsciiFail("\xe1\x89\xac\xf2\x94\xa0\xbc\xf1\x81\x97\xb6\xef\xbd\xa1\xf0\x90\xa8\xac\xf0\x9d\x9f\xa0", false); } // [V7]
9478test { try toAsciiFail("\xe1\x89\xac\xf2\x94\xa0\xbc\xf1\x81\x97\xb6\xef\xbd\xa1\xf0\x90\xa8\xac\xf0\x9d\x9f\xa0", true); } // [V7]
3921test { try toUnicodeFail("\xe1\x89\xac\xf2\x94\xa0\xbc\xf1\x81\x97\xb6\xe3\x80\x82\xf0\x90\xa8\xac8"); } // [V7]9479test { try toUnicodeFail("\xe1\x89\xac\xf2\x94\xa0\xbc\xf1\x81\x97\xb6\xe3\x80\x82\xf0\x90\xa8\xac8"); } // [V7]
9480test { try toAsciiFail("\xe1\x89\xac\xf2\x94\xa0\xbc\xf1\x81\x97\xb6\xe3\x80\x82\xf0\x90\xa8\xac8", false); } // [V7]
9481test { try toAsciiFail("\xe1\x89\xac\xf2\x94\xa0\xbc\xf1\x81\x97\xb6\xe3\x80\x82\xf0\x90\xa8\xac8", true); } // [V7]
3922test { try toUnicodeFail("xn--d0d41273c887z.xn--8-ob5i"); } // [V7]9482test { try toUnicodeFail("xn--d0d41273c887z.xn--8-ob5i"); } // [V7]
9483test { try toAsciiFail("xn--d0d41273c887z.xn--8-ob5i", false); } // [V7]
9484test { try toAsciiFail("xn--d0d41273c887z.xn--8-ob5i", true); } // [V7]
3923test { try toUnicodeFail("\xf0\x90\xb1\xb2\xe3\x80\x82\xe8\x94\xab\xdd\xa6"); } // [B5, B6, V7]9485test { try toUnicodeFail("\xf0\x90\xb1\xb2\xe3\x80\x82\xe8\x94\xab\xdd\xa6"); } // [B5, B6, V7]
9486test { try toAsciiFail("\xf0\x90\xb1\xb2\xe3\x80\x82\xe8\x94\xab\xdd\xa6", false); } // [B5, B6, V7]
9487test { try toAsciiFail("\xf0\x90\xb1\xb2\xe3\x80\x82\xe8\x94\xab\xdd\xa6", true); } // [B5, B6, V7]
3924test { try toUnicodeFail("xn--389c.xn--qpb7055d"); } // [B5, B6, V7]9488test { try toUnicodeFail("xn--389c.xn--qpb7055d"); } // [B5, B6, V7]
9489test { try toAsciiFail("xn--389c.xn--qpb7055d", false); } // [B5, B6, V7]
9490test { try toAsciiFail("xn--389c.xn--qpb7055d", true); } // [B5, B6, V7]
3925test { try toUnicodeFail("\xf2\x92\xb2\xa7\xe2\x82\x83\xef\xbd\xa1\xea\xa1\x9a\xf0\x9b\x87\x91\xf3\xa0\x84\xb3\xd9\x87"); } // [B5, B6, V7]9491test { try toUnicodeFail("\xf2\x92\xb2\xa7\xe2\x82\x83\xef\xbd\xa1\xea\xa1\x9a\xf0\x9b\x87\x91\xf3\xa0\x84\xb3\xd9\x87"); } // [B5, B6, V7]
9492test { try toAsciiFail("\xf2\x92\xb2\xa7\xe2\x82\x83\xef\xbd\xa1\xea\xa1\x9a\xf0\x9b\x87\x91\xf3\xa0\x84\xb3\xd9\x87", false); } // [B5, B6, V7]
9493test { try toAsciiFail("\xf2\x92\xb2\xa7\xe2\x82\x83\xef\xbd\xa1\xea\xa1\x9a\xf0\x9b\x87\x91\xf3\xa0\x84\xb3\xd9\x87", true); } // [B5, B6, V7]
3926test { try toUnicodeFail("\xf2\x92\xb2\xa73\xe3\x80\x82\xea\xa1\x9a\xf0\x9b\x87\x91\xf3\xa0\x84\xb3\xd9\x87"); } // [B5, B6, V7]9494test { try toUnicodeFail("\xf2\x92\xb2\xa73\xe3\x80\x82\xea\xa1\x9a\xf0\x9b\x87\x91\xf3\xa0\x84\xb3\xd9\x87"); } // [B5, B6, V7]
9495test { try toAsciiFail("\xf2\x92\xb2\xa73\xe3\x80\x82\xea\xa1\x9a\xf0\x9b\x87\x91\xf3\xa0\x84\xb3\xd9\x87", false); } // [B5, B6, V7]
9496test { try toAsciiFail("\xf2\x92\xb2\xa73\xe3\x80\x82\xea\xa1\x9a\xf0\x9b\x87\x91\xf3\xa0\x84\xb3\xd9\x87", true); } // [B5, B6, V7]
3927test { try toUnicodeFail("xn--3-ep59g.xn--jhb5904fcp0h"); } // [B5, B6, V7]9497test { try toUnicodeFail("xn--3-ep59g.xn--jhb5904fcp0h"); } // [B5, B6, V7]
9498test { try toAsciiFail("xn--3-ep59g.xn--jhb5904fcp0h", false); } // [B5, B6, V7]
9499test { try toAsciiFail("xn--3-ep59g.xn--jhb5904fcp0h", true); } // [B5, B6, V7]
3928test { try toUnicodeFail("\xe8\x93\xb8\xd9\x82\xe2\x89\xa0.\xc3\x9f"); } // [B5, B6]9500test { try toUnicodeFail("\xe8\x93\xb8\xd9\x82\xe2\x89\xa0.\xc3\x9f"); } // [B5, B6]
9501test { try toAsciiFail("\xe8\x93\xb8\xd9\x82\xe2\x89\xa0.\xc3\x9f", false); } // [B5, B6]
9502test { try toAsciiFail("\xe8\x93\xb8\xd9\x82\xe2\x89\xa0.\xc3\x9f", true); } // [B5, B6]
3929test { try toUnicodeFail("\xe8\x93\xb8\xd9\x82=\xcc\xb8.\xc3\x9f"); } // [B5, B6]9503test { try toUnicodeFail("\xe8\x93\xb8\xd9\x82=\xcc\xb8.\xc3\x9f"); } // [B5, B6]
9504test { try toAsciiFail("\xe8\x93\xb8\xd9\x82=\xcc\xb8.\xc3\x9f", false); } // [B5, B6]
9505test { try toAsciiFail("\xe8\x93\xb8\xd9\x82=\xcc\xb8.\xc3\x9f", true); } // [B5, B6]
3930test { try toUnicodeFail("\xe8\x93\xb8\xd9\x82=\xcc\xb8.SS"); } // [B5, B6]9506test { try toUnicodeFail("\xe8\x93\xb8\xd9\x82=\xcc\xb8.SS"); } // [B5, B6]
9507test { try toAsciiFail("\xe8\x93\xb8\xd9\x82=\xcc\xb8.SS", false); } // [B5, B6]
9508test { try toAsciiFail("\xe8\x93\xb8\xd9\x82=\xcc\xb8.SS", true); } // [B5, B6]
3931test { try toUnicodeFail("\xe8\x93\xb8\xd9\x82\xe2\x89\xa0.SS"); } // [B5, B6]9509test { try toUnicodeFail("\xe8\x93\xb8\xd9\x82\xe2\x89\xa0.SS"); } // [B5, B6]
9510test { try toAsciiFail("\xe8\x93\xb8\xd9\x82\xe2\x89\xa0.SS", false); } // [B5, B6]
9511test { try toAsciiFail("\xe8\x93\xb8\xd9\x82\xe2\x89\xa0.SS", true); } // [B5, B6]
3932test { try toUnicodeFail("\xe8\x93\xb8\xd9\x82\xe2\x89\xa0.ss"); } // [B5, B6]9512test { try toUnicodeFail("\xe8\x93\xb8\xd9\x82\xe2\x89\xa0.ss"); } // [B5, B6]
9513test { try toAsciiFail("\xe8\x93\xb8\xd9\x82\xe2\x89\xa0.ss", false); } // [B5, B6]
9514test { try toAsciiFail("\xe8\x93\xb8\xd9\x82\xe2\x89\xa0.ss", true); } // [B5, B6]
3933test { try toUnicodeFail("\xe8\x93\xb8\xd9\x82=\xcc\xb8.ss"); } // [B5, B6]9515test { try toUnicodeFail("\xe8\x93\xb8\xd9\x82=\xcc\xb8.ss"); } // [B5, B6]
9516test { try toAsciiFail("\xe8\x93\xb8\xd9\x82=\xcc\xb8.ss", false); } // [B5, B6]
9517test { try toAsciiFail("\xe8\x93\xb8\xd9\x82=\xcc\xb8.ss", true); } // [B5, B6]
3934test { try toUnicodeFail("\xe8\x93\xb8\xd9\x82=\xcc\xb8.Ss"); } // [B5, B6]9518test { try toUnicodeFail("\xe8\x93\xb8\xd9\x82=\xcc\xb8.Ss"); } // [B5, B6]
9519test { try toAsciiFail("\xe8\x93\xb8\xd9\x82=\xcc\xb8.Ss", false); } // [B5, B6]
9520test { try toAsciiFail("\xe8\x93\xb8\xd9\x82=\xcc\xb8.Ss", true); } // [B5, B6]
3935test { try toUnicodeFail("\xe8\x93\xb8\xd9\x82\xe2\x89\xa0.Ss"); } // [B5, B6]9521test { try toUnicodeFail("\xe8\x93\xb8\xd9\x82\xe2\x89\xa0.Ss"); } // [B5, B6]
9522test { try toAsciiFail("\xe8\x93\xb8\xd9\x82\xe2\x89\xa0.Ss", false); } // [B5, B6]
9523test { try toAsciiFail("\xe8\x93\xb8\xd9\x82\xe2\x89\xa0.Ss", true); } // [B5, B6]
3936test { try toUnicodeFail("xn--ehb015lnt1e.ss"); } // [B5, B6]9524test { try toUnicodeFail("xn--ehb015lnt1e.ss"); } // [B5, B6]
9525test { try toAsciiFail("xn--ehb015lnt1e.ss", false); } // [B5, B6]
9526test { try toAsciiFail("xn--ehb015lnt1e.ss", true); } // [B5, B6]
3937test { try toUnicodeFail("xn--ehb015lnt1e.xn--zca"); } // [B5, B6]9527test { try toUnicodeFail("xn--ehb015lnt1e.xn--zca"); } // [B5, B6]
9528test { try toAsciiFail("xn--ehb015lnt1e.xn--zca", false); } // [B5, B6]
9529test { try toAsciiFail("xn--ehb015lnt1e.xn--zca", true); } // [B5, B6]
3938test { try toUnicodeFail("\xe0\xa1\x8e\xd9\xba\xe0\xb7\x93\xe2\x92\x8a.\xf0\x90\xb9\xb9\xf0\x9e\xb1\xa9\xf3\xa0\x83\xaa\xe2\x80\x8c"); } // [B1, C1, V7]9530test { try toUnicodeFail("\xe0\xa1\x8e\xd9\xba\xe0\xb7\x93\xe2\x92\x8a.\xf0\x90\xb9\xb9\xf0\x9e\xb1\xa9\xf3\xa0\x83\xaa\xe2\x80\x8c"); } // [B1, C1, V7]
9531test { try toAsciiFail("\xe0\xa1\x8e\xd9\xba\xe0\xb7\x93\xe2\x92\x8a.\xf0\x90\xb9\xb9\xf0\x9e\xb1\xa9\xf3\xa0\x83\xaa\xe2\x80\x8c", false); } // [B1, C1, V7]
9532test { try toAsciiFail("\xe0\xa1\x8e\xd9\xba\xe0\xb7\x93\xe2\x92\x8a.\xf0\x90\xb9\xb9\xf0\x9e\xb1\xa9\xf3\xa0\x83\xaa\xe2\x80\x8c", true); } // [B1, V7]
3939test { try toUnicodeFail("\xe0\xa1\x8e\xd9\xba\xe0\xb7\x933..\xf0\x90\xb9\xb9\xf0\x9e\xb1\xa9\xf3\xa0\x83\xaa\xe2\x80\x8c"); } // [B1, C1, V7, X4_2]9533test { try toUnicodeFail("\xe0\xa1\x8e\xd9\xba\xe0\xb7\x933..\xf0\x90\xb9\xb9\xf0\x9e\xb1\xa9\xf3\xa0\x83\xaa\xe2\x80\x8c"); } // [B1, C1, V7, X4_2]
9534test { try toAsciiFail("\xe0\xa1\x8e\xd9\xba\xe0\xb7\x933..\xf0\x90\xb9\xb9\xf0\x9e\xb1\xa9\xf3\xa0\x83\xaa\xe2\x80\x8c", false); } // [B1, C1, V7, A4_2]
9535test { try toAsciiFail("\xe0\xa1\x8e\xd9\xba\xe0\xb7\x933..\xf0\x90\xb9\xb9\xf0\x9e\xb1\xa9\xf3\xa0\x83\xaa\xe2\x80\x8c", true); } // [B1, V7, A4_2]
3940test { try toUnicodeFail("xn--3-prc71ls9j..xn--xo0dw109an237f"); } // [B1, V7, X4_2]9536test { try toUnicodeFail("xn--3-prc71ls9j..xn--xo0dw109an237f"); } // [B1, V7, X4_2]
9537test { try toAsciiFail("xn--3-prc71ls9j..xn--xo0dw109an237f", false); } // [B1, V7, A4_2]
9538test { try toAsciiFail("xn--3-prc71ls9j..xn--xo0dw109an237f", true); } // [B1, V7, A4_2]
3941test { try toUnicodeFail("xn--3-prc71ls9j..xn--0ug3205g7eyf3c96h"); } // [B1, C1, V7, X4_2]9539test { try toUnicodeFail("xn--3-prc71ls9j..xn--0ug3205g7eyf3c96h"); } // [B1, C1, V7, X4_2]
9540test { try toAsciiFail("xn--3-prc71ls9j..xn--0ug3205g7eyf3c96h", false); } // [B1, C1, V7, A4_2]
9541test { try toAsciiFail("xn--3-prc71ls9j..xn--0ug3205g7eyf3c96h", true); } // [B1, C1, V7, A4_2]
3942test { try toUnicodeFail("xn--zib94gfziuq1a.xn--xo0dw109an237f"); } // [B1, V7]9542test { try toUnicodeFail("xn--zib94gfziuq1a.xn--xo0dw109an237f"); } // [B1, V7]
9543test { try toAsciiFail("xn--zib94gfziuq1a.xn--xo0dw109an237f", false); } // [B1, V7]
9544test { try toAsciiFail("xn--zib94gfziuq1a.xn--xo0dw109an237f", true); } // [B1, V7]
3943test { try toUnicodeFail("xn--zib94gfziuq1a.xn--0ug3205g7eyf3c96h"); } // [B1, C1, V7]9545test { try toUnicodeFail("xn--zib94gfziuq1a.xn--0ug3205g7eyf3c96h"); } // [B1, C1, V7]
9546test { try toAsciiFail("xn--zib94gfziuq1a.xn--0ug3205g7eyf3c96h", false); } // [B1, C1, V7]
9547test { try toAsciiFail("xn--zib94gfziuq1a.xn--0ug3205g7eyf3c96h", true); } // [B1, C1, V7]
3944test { try toUnicodeFail("\xcf\x82\xe2\x80\x8d-.\xe1\x83\x83\xf0\xa6\x9f\x99"); } // [C2, V3]9548test { try toUnicodeFail("\xcf\x82\xe2\x80\x8d-.\xe1\x83\x83\xf0\xa6\x9f\x99"); } // [C2, V3]
9549test { try toAsciiFail("\xcf\x82\xe2\x80\x8d-.\xe1\x83\x83\xf0\xa6\x9f\x99", false); } // [C2, V3]
9550test { try toAsciiFail("\xcf\x82\xe2\x80\x8d-.\xe1\x83\x83\xf0\xa6\x9f\x99", true); } // [V3]
3945test { try toUnicodeFail("\xcf\x82\xe2\x80\x8d-.\xe2\xb4\xa3\xf0\xa6\x9f\x99"); } // [C2, V3]9551test { try toUnicodeFail("\xcf\x82\xe2\x80\x8d-.\xe2\xb4\xa3\xf0\xa6\x9f\x99"); } // [C2, V3]
9552test { try toAsciiFail("\xcf\x82\xe2\x80\x8d-.\xe2\xb4\xa3\xf0\xa6\x9f\x99", false); } // [C2, V3]
9553test { try toAsciiFail("\xcf\x82\xe2\x80\x8d-.\xe2\xb4\xa3\xf0\xa6\x9f\x99", true); } // [V3]
3946test { try toUnicodeFail("\xce\xa3\xe2\x80\x8d-.\xe1\x83\x83\xf0\xa6\x9f\x99"); } // [C2, V3]9554test { try toUnicodeFail("\xce\xa3\xe2\x80\x8d-.\xe1\x83\x83\xf0\xa6\x9f\x99"); } // [C2, V3]
9555test { try toAsciiFail("\xce\xa3\xe2\x80\x8d-.\xe1\x83\x83\xf0\xa6\x9f\x99", false); } // [C2, V3]
9556test { try toAsciiFail("\xce\xa3\xe2\x80\x8d-.\xe1\x83\x83\xf0\xa6\x9f\x99", true); } // [V3]
3947test { try toUnicodeFail("\xcf\x83\xe2\x80\x8d-.\xe2\xb4\xa3\xf0\xa6\x9f\x99"); } // [C2, V3]9557test { try toUnicodeFail("\xcf\x83\xe2\x80\x8d-.\xe2\xb4\xa3\xf0\xa6\x9f\x99"); } // [C2, V3]
9558test { try toAsciiFail("\xcf\x83\xe2\x80\x8d-.\xe2\xb4\xa3\xf0\xa6\x9f\x99", false); } // [C2, V3]
9559test { try toAsciiFail("\xcf\x83\xe2\x80\x8d-.\xe2\xb4\xa3\xf0\xa6\x9f\x99", true); } // [V3]
3948test { try toUnicodeFail("xn----zmb.xn--rlj2573p"); } // [V3]9560test { try toUnicodeFail("xn----zmb.xn--rlj2573p"); } // [V3]
9561test { try toAsciiFail("xn----zmb.xn--rlj2573p", false); } // [V3]
9562test { try toAsciiFail("xn----zmb.xn--rlj2573p", true); } // [V3]
3949test { try toUnicodeFail("xn----zmb048s.xn--rlj2573p"); } // [C2, V3]9563test { try toUnicodeFail("xn----zmb048s.xn--rlj2573p"); } // [C2, V3]
9564test { try toAsciiFail("xn----zmb048s.xn--rlj2573p", false); } // [C2, V3]
9565test { try toAsciiFail("xn----zmb048s.xn--rlj2573p", true); } // [C2, V3]
3950test { try toUnicodeFail("xn----xmb348s.xn--rlj2573p"); } // [C2, V3]9566test { try toUnicodeFail("xn----xmb348s.xn--rlj2573p"); } // [C2, V3]
9567test { try toAsciiFail("xn----xmb348s.xn--rlj2573p", false); } // [C2, V3]
9568test { try toAsciiFail("xn----xmb348s.xn--rlj2573p", true); } // [C2, V3]
3951test { try toUnicodeFail("xn----zmb.xn--7nd64871a"); } // [V3, V7]9569test { try toUnicodeFail("xn----zmb.xn--7nd64871a"); } // [V3, V7]
9570test { try toAsciiFail("xn----zmb.xn--7nd64871a", false); } // [V3, V7]
9571test { try toAsciiFail("xn----zmb.xn--7nd64871a", true); } // [V3, V7]
3952test { try toUnicodeFail("xn----zmb048s.xn--7nd64871a"); } // [C2, V3, V7]9572test { try toUnicodeFail("xn----zmb048s.xn--7nd64871a"); } // [C2, V3, V7]
9573test { try toAsciiFail("xn----zmb048s.xn--7nd64871a", false); } // [C2, V3, V7]
9574test { try toAsciiFail("xn----zmb048s.xn--7nd64871a", true); } // [C2, V3, V7]
3953test { try toUnicodeFail("xn----xmb348s.xn--7nd64871a"); } // [C2, V3, V7]9575test { try toUnicodeFail("xn----xmb348s.xn--7nd64871a"); } // [C2, V3, V7]
9576test { try toAsciiFail("xn----xmb348s.xn--7nd64871a", false); } // [C2, V3, V7]
9577test { try toAsciiFail("xn----xmb348s.xn--7nd64871a", true); } // [C2, V3, V7]
3954test { try toUnicodePass("\xe2\x89\xa0\xe3\x80\x82\xf0\x9f\x9e\xb3\xf0\x9d\x9f\xb2", "\xe2\x89\xa0.\xf0\x9f\x9e\xb36"); }9578test { try toUnicodePass("\xe2\x89\xa0\xe3\x80\x82\xf0\x9f\x9e\xb3\xf0\x9d\x9f\xb2", "\xe2\x89\xa0.\xf0\x9f\x9e\xb36"); }
3955test { try toAsciiPass("\xe2\x89\xa0\xe3\x80\x82\xf0\x9f\x9e\xb3\xf0\x9d\x9f\xb2", "xn--1ch.xn--6-dl4s", false); }9579test { try toAsciiPass("\xe2\x89\xa0\xe3\x80\x82\xf0\x9f\x9e\xb3\xf0\x9d\x9f\xb2", "xn--1ch.xn--6-dl4s", false); }
3956test { try toAsciiPass("\xe2\x89\xa0\xe3\x80\x82\xf0\x9f\x9e\xb3\xf0\x9d\x9f\xb2", "xn--1ch.xn--6-dl4s", true); }9580test { try toAsciiPass("\xe2\x89\xa0\xe3\x80\x82\xf0\x9f\x9e\xb3\xf0\x9d\x9f\xb2", "xn--1ch.xn--6-dl4s", true); }
...@@ -3973,206 +9597,602 @@ test { try toUnicodePass("=\xcc\xb8.\xf0\x9f\x9e\xb36", "\xe2\x89\xa0.\xf0\x9f\x...@@ -3973,206 +9597,602 @@ test { try toUnicodePass("=\xcc\xb8.\xf0\x9f\x9e\xb36", "\xe2\x89\xa0.\xf0\x9f\x
3973test { try toAsciiPass("=\xcc\xb8.\xf0\x9f\x9e\xb36", "xn--1ch.xn--6-dl4s", false); }9597test { try toAsciiPass("=\xcc\xb8.\xf0\x9f\x9e\xb36", "xn--1ch.xn--6-dl4s", false); }
3974test { try toAsciiPass("=\xcc\xb8.\xf0\x9f\x9e\xb36", "xn--1ch.xn--6-dl4s", true); }9598test { try toAsciiPass("=\xcc\xb8.\xf0\x9f\x9e\xb36", "xn--1ch.xn--6-dl4s", true); }
3975test { try toUnicodeFail("\xf3\x85\xac\xbd.\xe8\xa0\x94"); } // [V7]9599test { try toUnicodeFail("\xf3\x85\xac\xbd.\xe8\xa0\x94"); } // [V7]
9600test { try toAsciiFail("\xf3\x85\xac\xbd.\xe8\xa0\x94", false); } // [V7]
9601test { try toAsciiFail("\xf3\x85\xac\xbd.\xe8\xa0\x94", true); } // [V7]
3976test { try toUnicodeFail("xn--g747d.xn--xl2a"); } // [V7]9602test { try toUnicodeFail("xn--g747d.xn--xl2a"); } // [V7]
9603test { try toAsciiFail("xn--g747d.xn--xl2a", false); } // [V7]
9604test { try toAsciiFail("xn--g747d.xn--xl2a", true); } // [V7]
3977test { try toUnicodeFail("\xe0\xa3\xa6\xe2\x80\x8d\xef\xbc\x8e\xeb\xbc\xbd"); } // [C2, V6]9605test { try toUnicodeFail("\xe0\xa3\xa6\xe2\x80\x8d\xef\xbc\x8e\xeb\xbc\xbd"); } // [C2, V6]
9606test { try toAsciiFail("\xe0\xa3\xa6\xe2\x80\x8d\xef\xbc\x8e\xeb\xbc\xbd", false); } // [C2, V6]
9607test { try toAsciiFail("\xe0\xa3\xa6\xe2\x80\x8d\xef\xbc\x8e\xeb\xbc\xbd", true); } // [V6]
3978test { try toUnicodeFail("\xe0\xa3\xa6\xe2\x80\x8d\xef\xbc\x8e\xe1\x84\x88\xe1\x85\xa8\xe1\x87\x80"); } // [C2, V6]9608test { try toUnicodeFail("\xe0\xa3\xa6\xe2\x80\x8d\xef\xbc\x8e\xe1\x84\x88\xe1\x85\xa8\xe1\x87\x80"); } // [C2, V6]
9609test { try toAsciiFail("\xe0\xa3\xa6\xe2\x80\x8d\xef\xbc\x8e\xe1\x84\x88\xe1\x85\xa8\xe1\x87\x80", false); } // [C2, V6]
9610test { try toAsciiFail("\xe0\xa3\xa6\xe2\x80\x8d\xef\xbc\x8e\xe1\x84\x88\xe1\x85\xa8\xe1\x87\x80", true); } // [V6]
3979test { try toUnicodeFail("\xe0\xa3\xa6\xe2\x80\x8d.\xeb\xbc\xbd"); } // [C2, V6]9611test { try toUnicodeFail("\xe0\xa3\xa6\xe2\x80\x8d.\xeb\xbc\xbd"); } // [C2, V6]
9612test { try toAsciiFail("\xe0\xa3\xa6\xe2\x80\x8d.\xeb\xbc\xbd", false); } // [C2, V6]
9613test { try toAsciiFail("\xe0\xa3\xa6\xe2\x80\x8d.\xeb\xbc\xbd", true); } // [V6]
3980test { try toUnicodeFail("\xe0\xa3\xa6\xe2\x80\x8d.\xe1\x84\x88\xe1\x85\xa8\xe1\x87\x80"); } // [C2, V6]9614test { try toUnicodeFail("\xe0\xa3\xa6\xe2\x80\x8d.\xe1\x84\x88\xe1\x85\xa8\xe1\x87\x80"); } // [C2, V6]
9615test { try toAsciiFail("\xe0\xa3\xa6\xe2\x80\x8d.\xe1\x84\x88\xe1\x85\xa8\xe1\x87\x80", false); } // [C2, V6]
9616test { try toAsciiFail("\xe0\xa3\xa6\xe2\x80\x8d.\xe1\x84\x88\xe1\x85\xa8\xe1\x87\x80", true); } // [V6]
3981test { try toUnicodeFail("xn--p0b.xn--e43b"); } // [V6]9617test { try toUnicodeFail("xn--p0b.xn--e43b"); } // [V6]
9618test { try toAsciiFail("xn--p0b.xn--e43b", false); } // [V6]
9619test { try toAsciiFail("xn--p0b.xn--e43b", true); } // [V6]
3982test { try toUnicodeFail("xn--p0b869i.xn--e43b"); } // [C2, V6]9620test { try toUnicodeFail("xn--p0b869i.xn--e43b"); } // [C2, V6]
9621test { try toAsciiFail("xn--p0b869i.xn--e43b", false); } // [C2, V6]
9622test { try toAsciiFail("xn--p0b869i.xn--e43b", true); } // [C2, V6]
3983test { try toUnicodeFail("\xe2\x82\x87\xe0\xaf\x8d\xf4\x83\x82\xb7\xdb\x92\xe3\x80\x82\xf0\x9f\x91\x96\xd9\xb5-\xf0\x9e\xaa\x91"); } // [B1, V7]9623test { try toUnicodeFail("\xe2\x82\x87\xe0\xaf\x8d\xf4\x83\x82\xb7\xdb\x92\xe3\x80\x82\xf0\x9f\x91\x96\xd9\xb5-\xf0\x9e\xaa\x91"); } // [B1, V7]
9624test { try toAsciiFail("\xe2\x82\x87\xe0\xaf\x8d\xf4\x83\x82\xb7\xdb\x92\xe3\x80\x82\xf0\x9f\x91\x96\xd9\xb5-\xf0\x9e\xaa\x91", false); } // [B1, V7]
9625test { try toAsciiFail("\xe2\x82\x87\xe0\xaf\x8d\xf4\x83\x82\xb7\xdb\x92\xe3\x80\x82\xf0\x9f\x91\x96\xd9\xb5-\xf0\x9e\xaa\x91", true); } // [B1, V7]
3984test { try toUnicodeFail("7\xe0\xaf\x8d\xf4\x83\x82\xb7\xdb\x92\xe3\x80\x82\xf0\x9f\x91\x96\xd8\xa7\xd9\xb4-\xf0\x9e\xaa\x91"); } // [B1, V7]9626test { try toUnicodeFail("7\xe0\xaf\x8d\xf4\x83\x82\xb7\xdb\x92\xe3\x80\x82\xf0\x9f\x91\x96\xd8\xa7\xd9\xb4-\xf0\x9e\xaa\x91"); } // [B1, V7]
9627test { try toAsciiFail("7\xe0\xaf\x8d\xf4\x83\x82\xb7\xdb\x92\xe3\x80\x82\xf0\x9f\x91\x96\xd8\xa7\xd9\xb4-\xf0\x9e\xaa\x91", false); } // [B1, V7]
9628test { try toAsciiFail("7\xe0\xaf\x8d\xf4\x83\x82\xb7\xdb\x92\xe3\x80\x82\xf0\x9f\x91\x96\xd8\xa7\xd9\xb4-\xf0\x9e\xaa\x91", true); } // [B1, V7]
3985test { try toUnicodeFail("xn--7-rwc839aj3073c.xn----ymc5uv818oghka"); } // [B1, V7]9629test { try toUnicodeFail("xn--7-rwc839aj3073c.xn----ymc5uv818oghka"); } // [B1, V7]
9630test { try toAsciiFail("xn--7-rwc839aj3073c.xn----ymc5uv818oghka", false); } // [B1, V7]
9631test { try toAsciiFail("xn--7-rwc839aj3073c.xn----ymc5uv818oghka", true); } // [B1, V7]
3986test { try toUnicodeFail("-\xef\xbd\xa1\xdd\xbb"); } // [B1, V3]9632test { try toUnicodeFail("-\xef\xbd\xa1\xdd\xbb"); } // [B1, V3]
9633test { try toAsciiFail("-\xef\xbd\xa1\xdd\xbb", false); } // [B1, V3]
9634test { try toAsciiFail("-\xef\xbd\xa1\xdd\xbb", true); } // [B1, V3]
3987test { try toUnicodeFail("-\xe3\x80\x82\xdd\xbb"); } // [B1, V3]9635test { try toUnicodeFail("-\xe3\x80\x82\xdd\xbb"); } // [B1, V3]
9636test { try toAsciiFail("-\xe3\x80\x82\xdd\xbb", false); } // [B1, V3]
9637test { try toAsciiFail("-\xe3\x80\x82\xdd\xbb", true); } // [B1, V3]
3988test { try toUnicodeFail("-.xn--cqb"); } // [B1, V3]9638test { try toUnicodeFail("-.xn--cqb"); } // [B1, V3]
9639test { try toAsciiFail("-.xn--cqb", false); } // [B1, V3]
9640test { try toAsciiFail("-.xn--cqb", true); } // [B1, V3]
3989test { try toUnicodeFail("\xf0\x91\x87\x8c\xf0\xb5\x9b\x93\xef\xbd\xa1-\xe2\x92\x88\xea\xa1\x8f\xdc\xab"); } // [B1, V3, V6, V7]9641test { try toUnicodeFail("\xf0\x91\x87\x8c\xf0\xb5\x9b\x93\xef\xbd\xa1-\xe2\x92\x88\xea\xa1\x8f\xdc\xab"); } // [B1, V3, V6, V7]
9642test { try toAsciiFail("\xf0\x91\x87\x8c\xf0\xb5\x9b\x93\xef\xbd\xa1-\xe2\x92\x88\xea\xa1\x8f\xdc\xab", false); } // [B1, V3, V6, V7]
9643test { try toAsciiFail("\xf0\x91\x87\x8c\xf0\xb5\x9b\x93\xef\xbd\xa1-\xe2\x92\x88\xea\xa1\x8f\xdc\xab", true); } // [B1, V3, V6, V7]
3990test { try toUnicodeFail("\xf0\x91\x87\x8c\xf0\xb5\x9b\x93\xe3\x80\x82-1.\xea\xa1\x8f\xdc\xab"); } // [B1, B5, B6, V3, V6, V7]9644test { try toUnicodeFail("\xf0\x91\x87\x8c\xf0\xb5\x9b\x93\xe3\x80\x82-1.\xea\xa1\x8f\xdc\xab"); } // [B1, B5, B6, V3, V6, V7]
9645test { try toAsciiFail("\xf0\x91\x87\x8c\xf0\xb5\x9b\x93\xe3\x80\x82-1.\xea\xa1\x8f\xdc\xab", false); } // [B1, B5, B6, V3, V6, V7]
9646test { try toAsciiFail("\xf0\x91\x87\x8c\xf0\xb5\x9b\x93\xe3\x80\x82-1.\xea\xa1\x8f\xdc\xab", true); } // [B1, B5, B6, V3, V6, V7]
3991test { try toUnicodeFail("xn--8d1dg030h.-1.xn--1nb7163f"); } // [B1, B5, B6, V3, V6, V7]9647test { try toUnicodeFail("xn--8d1dg030h.-1.xn--1nb7163f"); } // [B1, B5, B6, V3, V6, V7]
9648test { try toAsciiFail("xn--8d1dg030h.-1.xn--1nb7163f", false); } // [B1, B5, B6, V3, V6, V7]
9649test { try toAsciiFail("xn--8d1dg030h.-1.xn--1nb7163f", true); } // [B1, B5, B6, V3, V6, V7]
3992test { try toUnicodeFail("xn--8d1dg030h.xn----u1c466tp10j"); } // [B1, V3, V6, V7]9650test { try toUnicodeFail("xn--8d1dg030h.xn----u1c466tp10j"); } // [B1, V3, V6, V7]
9651test { try toAsciiFail("xn--8d1dg030h.xn----u1c466tp10j", false); } // [B1, V3, V6, V7]
9652test { try toAsciiFail("xn--8d1dg030h.xn----u1c466tp10j", true); } // [B1, V3, V6, V7]
3993test { try toUnicodeFail("\xe7\x92\x9b\xe1\x9c\xb4\xda\xaf.-"); } // [B1, B5, B6, V3]9653test { try toUnicodeFail("\xe7\x92\x9b\xe1\x9c\xb4\xda\xaf.-"); } // [B1, B5, B6, V3]
9654test { try toAsciiFail("\xe7\x92\x9b\xe1\x9c\xb4\xda\xaf.-", false); } // [B1, B5, B6, V3]
9655test { try toAsciiFail("\xe7\x92\x9b\xe1\x9c\xb4\xda\xaf.-", true); } // [B1, B5, B6, V3]
3994test { try toUnicodeFail("xn--ikb175frt4e.-"); } // [B1, B5, B6, V3]9656test { try toUnicodeFail("xn--ikb175frt4e.-"); } // [B1, B5, B6, V3]
9657test { try toAsciiFail("xn--ikb175frt4e.-", false); } // [B1, B5, B6, V3]
9658test { try toAsciiFail("xn--ikb175frt4e.-", true); } // [B1, B5, B6, V3]
3995test { try toUnicodeFail("\xf3\xa0\x86\xb0\xe0\xa2\xa1\xe0\xa9\x8d\xec\x83\x95\xef\xbc\x8e\xf0\x90\xb9\xb2\xed\x9c\x81"); } // [B1, B2, B3]9659test { try toUnicodeFail("\xf3\xa0\x86\xb0\xe0\xa2\xa1\xe0\xa9\x8d\xec\x83\x95\xef\xbc\x8e\xf0\x90\xb9\xb2\xed\x9c\x81"); } // [B1, B2, B3]
9660test { try toAsciiFail("\xf3\xa0\x86\xb0\xe0\xa2\xa1\xe0\xa9\x8d\xec\x83\x95\xef\xbc\x8e\xf0\x90\xb9\xb2\xed\x9c\x81", false); } // [B1, B2, B3]
9661test { try toAsciiFail("\xf3\xa0\x86\xb0\xe0\xa2\xa1\xe0\xa9\x8d\xec\x83\x95\xef\xbc\x8e\xf0\x90\xb9\xb2\xed\x9c\x81", true); } // [B1, B2, B3]
3996test { try toUnicodeFail("\xf3\xa0\x86\xb0\xe0\xa2\xa1\xe0\xa9\x8d\xe1\x84\x89\xe1\x85\xa2\xe1\x86\xb4\xef\xbc\x8e\xf0\x90\xb9\xb2\xe1\x84\x92\xe1\x85\xb0\xe1\x86\xac"); } // [B1, B2, B3]9662test { try toUnicodeFail("\xf3\xa0\x86\xb0\xe0\xa2\xa1\xe0\xa9\x8d\xe1\x84\x89\xe1\x85\xa2\xe1\x86\xb4\xef\xbc\x8e\xf0\x90\xb9\xb2\xe1\x84\x92\xe1\x85\xb0\xe1\x86\xac"); } // [B1, B2, B3]
9663test { try toAsciiFail("\xf3\xa0\x86\xb0\xe0\xa2\xa1\xe0\xa9\x8d\xe1\x84\x89\xe1\x85\xa2\xe1\x86\xb4\xef\xbc\x8e\xf0\x90\xb9\xb2\xe1\x84\x92\xe1\x85\xb0\xe1\x86\xac", false); } // [B1, B2, B3]
9664test { try toAsciiFail("\xf3\xa0\x86\xb0\xe0\xa2\xa1\xe0\xa9\x8d\xe1\x84\x89\xe1\x85\xa2\xe1\x86\xb4\xef\xbc\x8e\xf0\x90\xb9\xb2\xe1\x84\x92\xe1\x85\xb0\xe1\x86\xac", true); } // [B1, B2, B3]
3997test { try toUnicodeFail("\xf3\xa0\x86\xb0\xe0\xa2\xa1\xe0\xa9\x8d\xec\x83\x95.\xf0\x90\xb9\xb2\xed\x9c\x81"); } // [B1, B2, B3]9665test { try toUnicodeFail("\xf3\xa0\x86\xb0\xe0\xa2\xa1\xe0\xa9\x8d\xec\x83\x95.\xf0\x90\xb9\xb2\xed\x9c\x81"); } // [B1, B2, B3]
9666test { try toAsciiFail("\xf3\xa0\x86\xb0\xe0\xa2\xa1\xe0\xa9\x8d\xec\x83\x95.\xf0\x90\xb9\xb2\xed\x9c\x81", false); } // [B1, B2, B3]
9667test { try toAsciiFail("\xf3\xa0\x86\xb0\xe0\xa2\xa1\xe0\xa9\x8d\xec\x83\x95.\xf0\x90\xb9\xb2\xed\x9c\x81", true); } // [B1, B2, B3]
3998test { try toUnicodeFail("\xf3\xa0\x86\xb0\xe0\xa2\xa1\xe0\xa9\x8d\xe1\x84\x89\xe1\x85\xa2\xe1\x86\xb4.\xf0\x90\xb9\xb2\xe1\x84\x92\xe1\x85\xb0\xe1\x86\xac"); } // [B1, B2, B3]9668test { try toUnicodeFail("\xf3\xa0\x86\xb0\xe0\xa2\xa1\xe0\xa9\x8d\xe1\x84\x89\xe1\x85\xa2\xe1\x86\xb4.\xf0\x90\xb9\xb2\xe1\x84\x92\xe1\x85\xb0\xe1\x86\xac"); } // [B1, B2, B3]
9669test { try toAsciiFail("\xf3\xa0\x86\xb0\xe0\xa2\xa1\xe0\xa9\x8d\xe1\x84\x89\xe1\x85\xa2\xe1\x86\xb4.\xf0\x90\xb9\xb2\xe1\x84\x92\xe1\x85\xb0\xe1\x86\xac", false); } // [B1, B2, B3]
9670test { try toAsciiFail("\xf3\xa0\x86\xb0\xe0\xa2\xa1\xe0\xa9\x8d\xe1\x84\x89\xe1\x85\xa2\xe1\x86\xb4.\xf0\x90\xb9\xb2\xe1\x84\x92\xe1\x85\xb0\xe1\x86\xac", true); } // [B1, B2, B3]
3999test { try toUnicodeFail("xn--qyb07fj857a.xn--728bv72h"); } // [B1, B2, B3]9671test { try toUnicodeFail("xn--qyb07fj857a.xn--728bv72h"); } // [B1, B2, B3]
9672test { try toAsciiFail("xn--qyb07fj857a.xn--728bv72h", false); } // [B1, B2, B3]
9673test { try toAsciiFail("xn--qyb07fj857a.xn--728bv72h", true); } // [B1, B2, B3]
4000test { try toUnicodeFail("\xf1\x8d\xa8\xbd\xef\xbc\x8e\xf1\x8b\xb8\x95"); } // [V7]9674test { try toUnicodeFail("\xf1\x8d\xa8\xbd\xef\xbc\x8e\xf1\x8b\xb8\x95"); } // [V7]
9675test { try toAsciiFail("\xf1\x8d\xa8\xbd\xef\xbc\x8e\xf1\x8b\xb8\x95", false); } // [V7]
9676test { try toAsciiFail("\xf1\x8d\xa8\xbd\xef\xbc\x8e\xf1\x8b\xb8\x95", true); } // [V7]
4001test { try toUnicodeFail("\xf1\x8d\xa8\xbd.\xf1\x8b\xb8\x95"); } // [V7]9677test { try toUnicodeFail("\xf1\x8d\xa8\xbd.\xf1\x8b\xb8\x95"); } // [V7]
9678test { try toAsciiFail("\xf1\x8d\xa8\xbd.\xf1\x8b\xb8\x95", false); } // [V7]
9679test { try toAsciiFail("\xf1\x8d\xa8\xbd.\xf1\x8b\xb8\x95", true); } // [V7]
4002test { try toUnicodeFail("xn--pr3x.xn--rv7w"); } // [V7]9680test { try toUnicodeFail("xn--pr3x.xn--rv7w"); } // [V7]
9681test { try toAsciiFail("xn--pr3x.xn--rv7w", false); } // [V7]
9682test { try toAsciiFail("xn--pr3x.xn--rv7w", true); } // [V7]
4003test { try toUnicodeFail("\xd9\xbd\xf0\x9e\xa5\x95\xef\xbd\xa1\xf0\x91\x91\x82\xf0\x9e\xa4\xb6\xe1\x82\xad-"); } // [B1, V3, V6]9683test { try toUnicodeFail("\xd9\xbd\xf0\x9e\xa5\x95\xef\xbd\xa1\xf0\x91\x91\x82\xf0\x9e\xa4\xb6\xe1\x82\xad-"); } // [B1, V3, V6]
9684test { try toAsciiFail("\xd9\xbd\xf0\x9e\xa5\x95\xef\xbd\xa1\xf0\x91\x91\x82\xf0\x9e\xa4\xb6\xe1\x82\xad-", false); } // [B1, V3, V6]
9685test { try toAsciiFail("\xd9\xbd\xf0\x9e\xa5\x95\xef\xbd\xa1\xf0\x91\x91\x82\xf0\x9e\xa4\xb6\xe1\x82\xad-", true); } // [B1, V3, V6]
4004test { try toUnicodeFail("\xd9\xbd\xf0\x9e\xa5\x95\xe3\x80\x82\xf0\x91\x91\x82\xf0\x9e\xa4\xb6\xe1\x82\xad-"); } // [B1, V3, V6]9686test { try toUnicodeFail("\xd9\xbd\xf0\x9e\xa5\x95\xe3\x80\x82\xf0\x91\x91\x82\xf0\x9e\xa4\xb6\xe1\x82\xad-"); } // [B1, V3, V6]
9687test { try toAsciiFail("\xd9\xbd\xf0\x9e\xa5\x95\xe3\x80\x82\xf0\x91\x91\x82\xf0\x9e\xa4\xb6\xe1\x82\xad-", false); } // [B1, V3, V6]
9688test { try toAsciiFail("\xd9\xbd\xf0\x9e\xa5\x95\xe3\x80\x82\xf0\x91\x91\x82\xf0\x9e\xa4\xb6\xe1\x82\xad-", true); } // [B1, V3, V6]
4005test { try toUnicodeFail("\xd9\xbd\xf0\x9e\xa5\x95\xe3\x80\x82\xf0\x91\x91\x82\xf0\x9e\xa4\xb6\xe2\xb4\x8d-"); } // [B1, V3, V6]9689test { try toUnicodeFail("\xd9\xbd\xf0\x9e\xa5\x95\xe3\x80\x82\xf0\x91\x91\x82\xf0\x9e\xa4\xb6\xe2\xb4\x8d-"); } // [B1, V3, V6]
9690test { try toAsciiFail("\xd9\xbd\xf0\x9e\xa5\x95\xe3\x80\x82\xf0\x91\x91\x82\xf0\x9e\xa4\xb6\xe2\xb4\x8d-", false); } // [B1, V3, V6]
9691test { try toAsciiFail("\xd9\xbd\xf0\x9e\xa5\x95\xe3\x80\x82\xf0\x91\x91\x82\xf0\x9e\xa4\xb6\xe2\xb4\x8d-", true); } // [B1, V3, V6]
4006test { try toUnicodeFail("\xd9\xbd\xf0\x9e\xa5\x95\xe3\x80\x82\xf0\x91\x91\x82\xf0\x9e\xa4\x94\xe1\x82\xad-"); } // [B1, V3, V6]9692test { try toUnicodeFail("\xd9\xbd\xf0\x9e\xa5\x95\xe3\x80\x82\xf0\x91\x91\x82\xf0\x9e\xa4\x94\xe1\x82\xad-"); } // [B1, V3, V6]
9693test { try toAsciiFail("\xd9\xbd\xf0\x9e\xa5\x95\xe3\x80\x82\xf0\x91\x91\x82\xf0\x9e\xa4\x94\xe1\x82\xad-", false); } // [B1, V3, V6]
9694test { try toAsciiFail("\xd9\xbd\xf0\x9e\xa5\x95\xe3\x80\x82\xf0\x91\x91\x82\xf0\x9e\xa4\x94\xe1\x82\xad-", true); } // [B1, V3, V6]
4007test { try toUnicodeFail("\xd9\xbd\xf0\x9e\xa5\x95\xe3\x80\x82\xf0\x91\x91\x82\xf0\x9e\xa4\x94\xe2\xb4\x8d-"); } // [B1, V3, V6]9695test { try toUnicodeFail("\xd9\xbd\xf0\x9e\xa5\x95\xe3\x80\x82\xf0\x91\x91\x82\xf0\x9e\xa4\x94\xe2\xb4\x8d-"); } // [B1, V3, V6]
9696test { try toAsciiFail("\xd9\xbd\xf0\x9e\xa5\x95\xe3\x80\x82\xf0\x91\x91\x82\xf0\x9e\xa4\x94\xe2\xb4\x8d-", false); } // [B1, V3, V6]
9697test { try toAsciiFail("\xd9\xbd\xf0\x9e\xa5\x95\xe3\x80\x82\xf0\x91\x91\x82\xf0\x9e\xa4\x94\xe2\xb4\x8d-", true); } // [B1, V3, V6]
4008test { try toUnicodeFail("xn--2ib0338v.xn----zvs0199fo91g"); } // [B1, V3, V6]9698test { try toUnicodeFail("xn--2ib0338v.xn----zvs0199fo91g"); } // [B1, V3, V6]
9699test { try toAsciiFail("xn--2ib0338v.xn----zvs0199fo91g", false); } // [B1, V3, V6]
9700test { try toAsciiFail("xn--2ib0338v.xn----zvs0199fo91g", true); } // [B1, V3, V6]
4009test { try toUnicodeFail("\xd9\xbd\xf0\x9e\xa5\x95\xef\xbd\xa1\xf0\x91\x91\x82\xf0\x9e\xa4\xb6\xe2\xb4\x8d-"); } // [B1, V3, V6]9701test { try toUnicodeFail("\xd9\xbd\xf0\x9e\xa5\x95\xef\xbd\xa1\xf0\x91\x91\x82\xf0\x9e\xa4\xb6\xe2\xb4\x8d-"); } // [B1, V3, V6]
9702test { try toAsciiFail("\xd9\xbd\xf0\x9e\xa5\x95\xef\xbd\xa1\xf0\x91\x91\x82\xf0\x9e\xa4\xb6\xe2\xb4\x8d-", false); } // [B1, V3, V6]
9703test { try toAsciiFail("\xd9\xbd\xf0\x9e\xa5\x95\xef\xbd\xa1\xf0\x91\x91\x82\xf0\x9e\xa4\xb6\xe2\xb4\x8d-", true); } // [B1, V3, V6]
4010test { try toUnicodeFail("\xd9\xbd\xf0\x9e\xa5\x95\xef\xbd\xa1\xf0\x91\x91\x82\xf0\x9e\xa4\x94\xe1\x82\xad-"); } // [B1, V3, V6]9704test { try toUnicodeFail("\xd9\xbd\xf0\x9e\xa5\x95\xef\xbd\xa1\xf0\x91\x91\x82\xf0\x9e\xa4\x94\xe1\x82\xad-"); } // [B1, V3, V6]
9705test { try toAsciiFail("\xd9\xbd\xf0\x9e\xa5\x95\xef\xbd\xa1\xf0\x91\x91\x82\xf0\x9e\xa4\x94\xe1\x82\xad-", false); } // [B1, V3, V6]
9706test { try toAsciiFail("\xd9\xbd\xf0\x9e\xa5\x95\xef\xbd\xa1\xf0\x91\x91\x82\xf0\x9e\xa4\x94\xe1\x82\xad-", true); } // [B1, V3, V6]
4011test { try toUnicodeFail("\xd9\xbd\xf0\x9e\xa5\x95\xef\xbd\xa1\xf0\x91\x91\x82\xf0\x9e\xa4\x94\xe2\xb4\x8d-"); } // [B1, V3, V6]9707test { try toUnicodeFail("\xd9\xbd\xf0\x9e\xa5\x95\xef\xbd\xa1\xf0\x91\x91\x82\xf0\x9e\xa4\x94\xe2\xb4\x8d-"); } // [B1, V3, V6]
9708test { try toAsciiFail("\xd9\xbd\xf0\x9e\xa5\x95\xef\xbd\xa1\xf0\x91\x91\x82\xf0\x9e\xa4\x94\xe2\xb4\x8d-", false); } // [B1, V3, V6]
9709test { try toAsciiFail("\xd9\xbd\xf0\x9e\xa5\x95\xef\xbd\xa1\xf0\x91\x91\x82\xf0\x9e\xa4\x94\xe2\xb4\x8d-", true); } // [B1, V3, V6]
4012test { try toUnicodeFail("xn--2ib0338v.xn----w0g2740ro9vg"); } // [B1, V3, V6, V7]9710test { try toUnicodeFail("xn--2ib0338v.xn----w0g2740ro9vg"); } // [B1, V3, V6, V7]
9711test { try toAsciiFail("xn--2ib0338v.xn----w0g2740ro9vg", false); } // [B1, V3, V6, V7]
9712test { try toAsciiFail("xn--2ib0338v.xn----w0g2740ro9vg", true); } // [B1, V3, V6, V7]
4013test { try toUnicodeFail("\xf0\x90\xaf\x80\xf0\x90\xb8\x89\xf0\x9e\xa7\x8f\xe3\x80\x82\xf1\xa2\x9a\xa7\xe2\x82\x84\xe1\x82\xab\xf1\x82\xb9\xab"); } // [V7]9713test { try toUnicodeFail("\xf0\x90\xaf\x80\xf0\x90\xb8\x89\xf0\x9e\xa7\x8f\xe3\x80\x82\xf1\xa2\x9a\xa7\xe2\x82\x84\xe1\x82\xab\xf1\x82\xb9\xab"); } // [V7]
9714test { try toAsciiFail("\xf0\x90\xaf\x80\xf0\x90\xb8\x89\xf0\x9e\xa7\x8f\xe3\x80\x82\xf1\xa2\x9a\xa7\xe2\x82\x84\xe1\x82\xab\xf1\x82\xb9\xab", false); } // [V7]
9715test { try toAsciiFail("\xf0\x90\xaf\x80\xf0\x90\xb8\x89\xf0\x9e\xa7\x8f\xe3\x80\x82\xf1\xa2\x9a\xa7\xe2\x82\x84\xe1\x82\xab\xf1\x82\xb9\xab", true); } // [V7]
4014test { try toUnicodeFail("\xf0\x90\xaf\x80\xf0\x90\xb8\x89\xf0\x9e\xa7\x8f\xe3\x80\x82\xf1\xa2\x9a\xa74\xe1\x82\xab\xf1\x82\xb9\xab"); } // [V7]9716test { try toUnicodeFail("\xf0\x90\xaf\x80\xf0\x90\xb8\x89\xf0\x9e\xa7\x8f\xe3\x80\x82\xf1\xa2\x9a\xa74\xe1\x82\xab\xf1\x82\xb9\xab"); } // [V7]
9717test { try toAsciiFail("\xf0\x90\xaf\x80\xf0\x90\xb8\x89\xf0\x9e\xa7\x8f\xe3\x80\x82\xf1\xa2\x9a\xa74\xe1\x82\xab\xf1\x82\xb9\xab", false); } // [V7]
9718test { try toAsciiFail("\xf0\x90\xaf\x80\xf0\x90\xb8\x89\xf0\x9e\xa7\x8f\xe3\x80\x82\xf1\xa2\x9a\xa74\xe1\x82\xab\xf1\x82\xb9\xab", true); } // [V7]
4015test { try toUnicodeFail("\xf0\x90\xaf\x80\xf0\x90\xb8\x89\xf0\x9e\xa7\x8f\xe3\x80\x82\xf1\xa2\x9a\xa74\xe2\xb4\x8b\xf1\x82\xb9\xab"); } // [V7]9719test { try toUnicodeFail("\xf0\x90\xaf\x80\xf0\x90\xb8\x89\xf0\x9e\xa7\x8f\xe3\x80\x82\xf1\xa2\x9a\xa74\xe2\xb4\x8b\xf1\x82\xb9\xab"); } // [V7]
9720test { try toAsciiFail("\xf0\x90\xaf\x80\xf0\x90\xb8\x89\xf0\x9e\xa7\x8f\xe3\x80\x82\xf1\xa2\x9a\xa74\xe2\xb4\x8b\xf1\x82\xb9\xab", false); } // [V7]
9721test { try toAsciiFail("\xf0\x90\xaf\x80\xf0\x90\xb8\x89\xf0\x9e\xa7\x8f\xe3\x80\x82\xf1\xa2\x9a\xa74\xe2\xb4\x8b\xf1\x82\xb9\xab", true); } // [V7]
4016test { try toUnicodeFail("xn--039c42bq865a.xn--4-wvs27840bnrzm"); } // [V7]9722test { try toUnicodeFail("xn--039c42bq865a.xn--4-wvs27840bnrzm"); } // [V7]
9723test { try toAsciiFail("xn--039c42bq865a.xn--4-wvs27840bnrzm", false); } // [V7]
9724test { try toAsciiFail("xn--039c42bq865a.xn--4-wvs27840bnrzm", true); } // [V7]
4017test { try toUnicodeFail("\xf0\x90\xaf\x80\xf0\x90\xb8\x89\xf0\x9e\xa7\x8f\xe3\x80\x82\xf1\xa2\x9a\xa7\xe2\x82\x84\xe2\xb4\x8b\xf1\x82\xb9\xab"); } // [V7]9725test { try toUnicodeFail("\xf0\x90\xaf\x80\xf0\x90\xb8\x89\xf0\x9e\xa7\x8f\xe3\x80\x82\xf1\xa2\x9a\xa7\xe2\x82\x84\xe2\xb4\x8b\xf1\x82\xb9\xab"); } // [V7]
9726test { try toAsciiFail("\xf0\x90\xaf\x80\xf0\x90\xb8\x89\xf0\x9e\xa7\x8f\xe3\x80\x82\xf1\xa2\x9a\xa7\xe2\x82\x84\xe2\xb4\x8b\xf1\x82\xb9\xab", false); } // [V7]
9727test { try toAsciiFail("\xf0\x90\xaf\x80\xf0\x90\xb8\x89\xf0\x9e\xa7\x8f\xe3\x80\x82\xf1\xa2\x9a\xa7\xe2\x82\x84\xe2\xb4\x8b\xf1\x82\xb9\xab", true); } // [V7]
4018test { try toUnicodeFail("xn--039c42bq865a.xn--4-t0g49302fnrzm"); } // [V7]9728test { try toUnicodeFail("xn--039c42bq865a.xn--4-t0g49302fnrzm"); } // [V7]
9729test { try toAsciiFail("xn--039c42bq865a.xn--4-t0g49302fnrzm", false); } // [V7]
9730test { try toAsciiFail("xn--039c42bq865a.xn--4-t0g49302fnrzm", true); } // [V7]
4019test { try toUnicodeFail("4\xda\xbd\xef\xb8\x92\xf3\xa0\x91\xa5.\xe2\x89\xa0"); } // [B1, V7]9731test { try toUnicodeFail("4\xda\xbd\xef\xb8\x92\xf3\xa0\x91\xa5.\xe2\x89\xa0"); } // [B1, V7]
9732test { try toAsciiFail("4\xda\xbd\xef\xb8\x92\xf3\xa0\x91\xa5.\xe2\x89\xa0", false); } // [B1, V7]
9733test { try toAsciiFail("4\xda\xbd\xef\xb8\x92\xf3\xa0\x91\xa5.\xe2\x89\xa0", true); } // [B1, V7]
4020test { try toUnicodeFail("4\xda\xbd\xef\xb8\x92\xf3\xa0\x91\xa5.=\xcc\xb8"); } // [B1, V7]9734test { try toUnicodeFail("4\xda\xbd\xef\xb8\x92\xf3\xa0\x91\xa5.=\xcc\xb8"); } // [B1, V7]
9735test { try toAsciiFail("4\xda\xbd\xef\xb8\x92\xf3\xa0\x91\xa5.=\xcc\xb8", false); } // [B1, V7]
9736test { try toAsciiFail("4\xda\xbd\xef\xb8\x92\xf3\xa0\x91\xa5.=\xcc\xb8", true); } // [B1, V7]
4021test { try toUnicodeFail("4\xda\xbd\xe3\x80\x82\xf3\xa0\x91\xa5.\xe2\x89\xa0"); } // [B1, V7]9737test { try toUnicodeFail("4\xda\xbd\xe3\x80\x82\xf3\xa0\x91\xa5.\xe2\x89\xa0"); } // [B1, V7]
9738test { try toAsciiFail("4\xda\xbd\xe3\x80\x82\xf3\xa0\x91\xa5.\xe2\x89\xa0", false); } // [B1, V7]
9739test { try toAsciiFail("4\xda\xbd\xe3\x80\x82\xf3\xa0\x91\xa5.\xe2\x89\xa0", true); } // [B1, V7]
4022test { try toUnicodeFail("4\xda\xbd\xe3\x80\x82\xf3\xa0\x91\xa5.=\xcc\xb8"); } // [B1, V7]9740test { try toUnicodeFail("4\xda\xbd\xe3\x80\x82\xf3\xa0\x91\xa5.=\xcc\xb8"); } // [B1, V7]
9741test { try toAsciiFail("4\xda\xbd\xe3\x80\x82\xf3\xa0\x91\xa5.=\xcc\xb8", false); } // [B1, V7]
9742test { try toAsciiFail("4\xda\xbd\xe3\x80\x82\xf3\xa0\x91\xa5.=\xcc\xb8", true); } // [B1, V7]
4023test { try toUnicodeFail("xn--4-kvc.xn--5136e.xn--1ch"); } // [B1, V7]9743test { try toUnicodeFail("xn--4-kvc.xn--5136e.xn--1ch"); } // [B1, V7]
9744test { try toAsciiFail("xn--4-kvc.xn--5136e.xn--1ch", false); } // [B1, V7]
9745test { try toAsciiFail("xn--4-kvc.xn--5136e.xn--1ch", true); } // [B1, V7]
4024test { try toUnicodeFail("xn--4-kvc5601q2h50i.xn--1ch"); } // [B1, V7]9746test { try toUnicodeFail("xn--4-kvc5601q2h50i.xn--1ch"); } // [B1, V7]
9747test { try toAsciiFail("xn--4-kvc5601q2h50i.xn--1ch", false); } // [B1, V7]
9748test { try toAsciiFail("xn--4-kvc5601q2h50i.xn--1ch", true); } // [B1, V7]
4025test { try toUnicodeFail("\xf0\x9d\x9f\x93\xe3\x80\x82\xdb\x97"); } // [V6]9749test { try toUnicodeFail("\xf0\x9d\x9f\x93\xe3\x80\x82\xdb\x97"); } // [V6]
9750test { try toAsciiFail("\xf0\x9d\x9f\x93\xe3\x80\x82\xdb\x97", false); } // [V6]
9751test { try toAsciiFail("\xf0\x9d\x9f\x93\xe3\x80\x82\xdb\x97", true); } // [V6]
4026test { try toUnicodeFail("5\xe3\x80\x82\xdb\x97"); } // [V6]9752test { try toUnicodeFail("5\xe3\x80\x82\xdb\x97"); } // [V6]
9753test { try toAsciiFail("5\xe3\x80\x82\xdb\x97", false); } // [V6]
9754test { try toAsciiFail("5\xe3\x80\x82\xdb\x97", true); } // [V6]
4027test { try toUnicodeFail("5.xn--nlb"); } // [V6]9755test { try toUnicodeFail("5.xn--nlb"); } // [V6]
9756test { try toAsciiFail("5.xn--nlb", false); } // [V6]
9757test { try toAsciiFail("5.xn--nlb", true); } // [V6]
4028test { try toUnicodeFail("\xe2\x80\x8c\xf2\xba\xb8\xa9.\xe2\xbe\x95"); } // [C1, V7]9758test { try toUnicodeFail("\xe2\x80\x8c\xf2\xba\xb8\xa9.\xe2\xbe\x95"); } // [C1, V7]
9759test { try toAsciiFail("\xe2\x80\x8c\xf2\xba\xb8\xa9.\xe2\xbe\x95", false); } // [C1, V7]
9760test { try toAsciiFail("\xe2\x80\x8c\xf2\xba\xb8\xa9.\xe2\xbe\x95", true); } // [V7]
4029test { try toUnicodeFail("\xe2\x80\x8c\xf2\xba\xb8\xa9.\xe8\xb0\xb7"); } // [C1, V7]9761test { try toUnicodeFail("\xe2\x80\x8c\xf2\xba\xb8\xa9.\xe8\xb0\xb7"); } // [C1, V7]
9762test { try toAsciiFail("\xe2\x80\x8c\xf2\xba\xb8\xa9.\xe8\xb0\xb7", false); } // [C1, V7]
9763test { try toAsciiFail("\xe2\x80\x8c\xf2\xba\xb8\xa9.\xe8\xb0\xb7", true); } // [V7]
4030test { try toUnicodeFail("xn--i183d.xn--6g3a"); } // [V7]9764test { try toUnicodeFail("xn--i183d.xn--6g3a"); } // [V7]
9765test { try toAsciiFail("xn--i183d.xn--6g3a", false); } // [V7]
9766test { try toAsciiFail("xn--i183d.xn--6g3a", true); } // [V7]
4031test { try toUnicodeFail("xn--0ug26167i.xn--6g3a"); } // [C1, V7]9767test { try toUnicodeFail("xn--0ug26167i.xn--6g3a"); } // [C1, V7]
9768test { try toAsciiFail("xn--0ug26167i.xn--6g3a", false); } // [C1, V7]
9769test { try toAsciiFail("xn--0ug26167i.xn--6g3a", true); } // [C1, V7]
4032test { try toUnicodeFail("\xef\xb8\x92\xf3\x8e\xb0\x87\xe2\x80\x8d.-\xdc\xbc\xe2\x80\x8c"); } // [C1, C2, V3, V7]9770test { try toUnicodeFail("\xef\xb8\x92\xf3\x8e\xb0\x87\xe2\x80\x8d.-\xdc\xbc\xe2\x80\x8c"); } // [C1, C2, V3, V7]
9771test { try toAsciiFail("\xef\xb8\x92\xf3\x8e\xb0\x87\xe2\x80\x8d.-\xdc\xbc\xe2\x80\x8c", false); } // [C1, C2, V3, V7]
9772test { try toAsciiFail("\xef\xb8\x92\xf3\x8e\xb0\x87\xe2\x80\x8d.-\xdc\xbc\xe2\x80\x8c", true); } // [V3, V7]
4033test { try toUnicodeFail("\xe3\x80\x82\xf3\x8e\xb0\x87\xe2\x80\x8d.-\xdc\xbc\xe2\x80\x8c"); } // [C1, C2, V3, V7, X4_2]9773test { try toUnicodeFail("\xe3\x80\x82\xf3\x8e\xb0\x87\xe2\x80\x8d.-\xdc\xbc\xe2\x80\x8c"); } // [C1, C2, V3, V7, X4_2]
9774test { try toAsciiFail("\xe3\x80\x82\xf3\x8e\xb0\x87\xe2\x80\x8d.-\xdc\xbc\xe2\x80\x8c", false); } // [C1, C2, V3, V7, A4_2]
9775test { try toAsciiFail("\xe3\x80\x82\xf3\x8e\xb0\x87\xe2\x80\x8d.-\xdc\xbc\xe2\x80\x8c", true); } // [V3, V7, A4_2]
4034test { try toUnicodeFail(".xn--hh50e.xn----t2c"); } // [V3, V7, X4_2]9776test { try toUnicodeFail(".xn--hh50e.xn----t2c"); } // [V3, V7, X4_2]
9777test { try toAsciiFail(".xn--hh50e.xn----t2c", false); } // [V3, V7, A4_2]
9778test { try toAsciiFail(".xn--hh50e.xn----t2c", true); } // [V3, V7, A4_2]
4035test { try toUnicodeFail(".xn--1ug05310k.xn----t2c071q"); } // [C1, C2, V3, V7, X4_2]9779test { try toUnicodeFail(".xn--1ug05310k.xn----t2c071q"); } // [C1, C2, V3, V7, X4_2]
9780test { try toAsciiFail(".xn--1ug05310k.xn----t2c071q", false); } // [C1, C2, V3, V7, A4_2]
9781test { try toAsciiFail(".xn--1ug05310k.xn----t2c071q", true); } // [C1, C2, V3, V7, A4_2]
4036test { try toUnicodeFail("xn--y86c71305c.xn----t2c"); } // [V3, V7]9782test { try toUnicodeFail("xn--y86c71305c.xn----t2c"); } // [V3, V7]
9783test { try toAsciiFail("xn--y86c71305c.xn----t2c", false); } // [V3, V7]
9784test { try toAsciiFail("xn--y86c71305c.xn----t2c", true); } // [V3, V7]
4037test { try toUnicodeFail("xn--1ug1658ftw26f.xn----t2c071q"); } // [C1, C2, V3, V7]9785test { try toUnicodeFail("xn--1ug1658ftw26f.xn----t2c071q"); } // [C1, C2, V3, V7]
9786test { try toAsciiFail("xn--1ug1658ftw26f.xn----t2c071q", false); } // [C1, C2, V3, V7]
9787test { try toAsciiFail("xn--1ug1658ftw26f.xn----t2c071q", true); } // [C1, C2, V3, V7]
4038test { try toUnicodeFail("\xe2\x89\xaf\xf0\x9e\xa4\x9f\xe3\x80\x82\xe1\xa1\xa8"); } // [B1]9788test { try toUnicodeFail("\xe2\x89\xaf\xf0\x9e\xa4\x9f\xe3\x80\x82\xe1\xa1\xa8"); } // [B1]
9789test { try toAsciiFail("\xe2\x89\xaf\xf0\x9e\xa4\x9f\xe3\x80\x82\xe1\xa1\xa8", false); } // [B1]
9790test { try toAsciiFail("\xe2\x89\xaf\xf0\x9e\xa4\x9f\xe3\x80\x82\xe1\xa1\xa8", true); } // [B1]
4039test { try toUnicodeFail(">\xcc\xb8\xf0\x9e\xa4\x9f\xe3\x80\x82\xe1\xa1\xa8"); } // [B1]9791test { try toUnicodeFail(">\xcc\xb8\xf0\x9e\xa4\x9f\xe3\x80\x82\xe1\xa1\xa8"); } // [B1]
9792test { try toAsciiFail(">\xcc\xb8\xf0\x9e\xa4\x9f\xe3\x80\x82\xe1\xa1\xa8", false); } // [B1]
9793test { try toAsciiFail(">\xcc\xb8\xf0\x9e\xa4\x9f\xe3\x80\x82\xe1\xa1\xa8", true); } // [B1]
4040test { try toUnicodeFail(">\xcc\xb8\xf0\x9e\xa5\x81\xe3\x80\x82\xe1\xa1\xa8"); } // [B1]9794test { try toUnicodeFail(">\xcc\xb8\xf0\x9e\xa5\x81\xe3\x80\x82\xe1\xa1\xa8"); } // [B1]
9795test { try toAsciiFail(">\xcc\xb8\xf0\x9e\xa5\x81\xe3\x80\x82\xe1\xa1\xa8", false); } // [B1]
9796test { try toAsciiFail(">\xcc\xb8\xf0\x9e\xa5\x81\xe3\x80\x82\xe1\xa1\xa8", true); } // [B1]
4041test { try toUnicodeFail("\xe2\x89\xaf\xf0\x9e\xa5\x81\xe3\x80\x82\xe1\xa1\xa8"); } // [B1]9797test { try toUnicodeFail("\xe2\x89\xaf\xf0\x9e\xa5\x81\xe3\x80\x82\xe1\xa1\xa8"); } // [B1]
9798test { try toAsciiFail("\xe2\x89\xaf\xf0\x9e\xa5\x81\xe3\x80\x82\xe1\xa1\xa8", false); } // [B1]
9799test { try toAsciiFail("\xe2\x89\xaf\xf0\x9e\xa5\x81\xe3\x80\x82\xe1\xa1\xa8", true); } // [B1]
4042test { try toUnicodeFail("xn--hdhz520p.xn--48e"); } // [B1]9800test { try toUnicodeFail("xn--hdhz520p.xn--48e"); } // [B1]
9801test { try toAsciiFail("xn--hdhz520p.xn--48e", false); } // [B1]
9802test { try toAsciiFail("xn--hdhz520p.xn--48e", true); } // [B1]
4043test { try toUnicodeFail("\xe0\xbd\xb4\xf0\xab\xab\xb0\xf0\x9d\xa8\x84\xe3\x80\x82\xdc\x93\xf0\x90\xb9\xa6"); } // [B1, V6]9803test { try toUnicodeFail("\xe0\xbd\xb4\xf0\xab\xab\xb0\xf0\x9d\xa8\x84\xe3\x80\x82\xdc\x93\xf0\x90\xb9\xa6"); } // [B1, V6]
9804test { try toAsciiFail("\xe0\xbd\xb4\xf0\xab\xab\xb0\xf0\x9d\xa8\x84\xe3\x80\x82\xdc\x93\xf0\x90\xb9\xa6", false); } // [B1, V6]
9805test { try toAsciiFail("\xe0\xbd\xb4\xf0\xab\xab\xb0\xf0\x9d\xa8\x84\xe3\x80\x82\xdc\x93\xf0\x90\xb9\xa6", true); } // [B1, V6]
4044test { try toUnicodeFail("xn--ned8985uo92e.xn--dnb6395k"); } // [B1, V6]9806test { try toUnicodeFail("xn--ned8985uo92e.xn--dnb6395k"); } // [B1, V6]
9807test { try toAsciiFail("xn--ned8985uo92e.xn--dnb6395k", false); } // [B1, V6]
9808test { try toAsciiFail("xn--ned8985uo92e.xn--dnb6395k", true); } // [B1, V6]
4045test { try toUnicodeFail("\xcc\xbc\xdf\x9b\xe2\x81\xb7\xf0\x9d\x9f\xb9\xef\xbd\xa1\xf0\x9d\x9f\xac"); } // [B1, V6]9809test { try toUnicodeFail("\xcc\xbc\xdf\x9b\xe2\x81\xb7\xf0\x9d\x9f\xb9\xef\xbd\xa1\xf0\x9d\x9f\xac"); } // [B1, V6]
9810test { try toAsciiFail("\xcc\xbc\xdf\x9b\xe2\x81\xb7\xf0\x9d\x9f\xb9\xef\xbd\xa1\xf0\x9d\x9f\xac", false); } // [B1, V6]
9811test { try toAsciiFail("\xcc\xbc\xdf\x9b\xe2\x81\xb7\xf0\x9d\x9f\xb9\xef\xbd\xa1\xf0\x9d\x9f\xac", true); } // [B1, V6]
4046test { try toUnicodeFail("\xcc\xbc\xdf\x9b73\xe3\x80\x820"); } // [B1, V6]9812test { try toUnicodeFail("\xcc\xbc\xdf\x9b73\xe3\x80\x820"); } // [B1, V6]
9813test { try toAsciiFail("\xcc\xbc\xdf\x9b73\xe3\x80\x820", false); } // [B1, V6]
9814test { try toAsciiFail("\xcc\xbc\xdf\x9b73\xe3\x80\x820", true); } // [B1, V6]
4047test { try toUnicodeFail("xn--73-9yb648b.a"); } // [B1, V6]9815test { try toUnicodeFail("xn--73-9yb648b.a"); } // [B1, V6]
9816test { try toAsciiFail("xn--73-9yb648b.a", false); } // [B1, V6]
9817test { try toAsciiFail("xn--73-9yb648b.a", true); } // [B1, V6]
4048test { try toUnicodeFail("\xe2\x80\x8d\xef\xbc\x8e\xf0\x9d\x9f\x97"); } // [C2]9818test { try toUnicodeFail("\xe2\x80\x8d\xef\xbc\x8e\xf0\x9d\x9f\x97"); } // [C2]
9819test { try toAsciiFail("\xe2\x80\x8d\xef\xbc\x8e\xf0\x9d\x9f\x97", false); } // [C2]
9820test { try toAsciiFail("\xe2\x80\x8d\xef\xbc\x8e\xf0\x9d\x9f\x97", true); } // [A4_2]
4049test { try toUnicodeFail("\xe2\x80\x8d.j"); } // [C2]9821test { try toUnicodeFail("\xe2\x80\x8d.j"); } // [C2]
9822test { try toAsciiFail("\xe2\x80\x8d.j", false); } // [C2]
9823test { try toAsciiFail("\xe2\x80\x8d.j", true); } // [A4_2]
4050test { try toUnicodeFail("\xe2\x80\x8d.J"); } // [C2]9824test { try toUnicodeFail("\xe2\x80\x8d.J"); } // [C2]
9825test { try toAsciiFail("\xe2\x80\x8d.J", false); } // [C2]
9826test { try toAsciiFail("\xe2\x80\x8d.J", true); } // [A4_2]
4051test { try toUnicodeFail(".j"); } // [X4_2]9827test { try toUnicodeFail(".j"); } // [X4_2]
9828test { try toAsciiFail(".j", false); } // [A4_2]
9829test { try toAsciiFail(".j", true); } // [A4_2]
4052test { try toUnicodeFail("xn--1ug.j"); } // [C2]9830test { try toUnicodeFail("xn--1ug.j"); } // [C2]
9831test { try toAsciiFail("xn--1ug.j", false); } // [C2]
9832test { try toAsciiFail("xn--1ug.j", true); } // [C2]
4053test { try toUnicodePass("j", "j"); }9833test { try toUnicodePass("j", "j"); }
4054test { try toAsciiPass("j", "j", false); }9834test { try toAsciiPass("j", "j", false); }
4055test { try toAsciiPass("j", "j", true); }9835test { try toAsciiPass("j", "j", true); }
4056test { try toUnicodeFail("\xdd\xb9\xe1\xa1\xad\xf0\xaa\x95\x88\xe3\x80\x82\xda\xb6\xe0\xa3\x99"); } // [B2, B3]9836test { try toUnicodeFail("\xdd\xb9\xe1\xa1\xad\xf0\xaa\x95\x88\xe3\x80\x82\xda\xb6\xe0\xa3\x99"); } // [B2, B3]
9837test { try toAsciiFail("\xdd\xb9\xe1\xa1\xad\xf0\xaa\x95\x88\xe3\x80\x82\xda\xb6\xe0\xa3\x99", false); } // [B2, B3]
9838test { try toAsciiFail("\xdd\xb9\xe1\xa1\xad\xf0\xaa\x95\x88\xe3\x80\x82\xda\xb6\xe0\xa3\x99", true); } // [B2, B3]
4057test { try toUnicodeFail("xn--9pb497fs270c.xn--pkb80i"); } // [B2, B3]9839test { try toUnicodeFail("xn--9pb497fs270c.xn--pkb80i"); } // [B2, B3]
9840test { try toAsciiFail("xn--9pb497fs270c.xn--pkb80i", false); } // [B2, B3]
9841test { try toAsciiFail("xn--9pb497fs270c.xn--pkb80i", true); } // [B2, B3]
4058test { try toUnicodeFail("\xdc\xa6\xef\xbc\x95\xdf\xa2\xea\xb2\x99\xe3\x80\x82\xe1\xb3\xb4\xf0\x90\xb7\x9a"); } // [B1, B2, B3, V6, V7]9842test { try toUnicodeFail("\xdc\xa6\xef\xbc\x95\xdf\xa2\xea\xb2\x99\xe3\x80\x82\xe1\xb3\xb4\xf0\x90\xb7\x9a"); } // [B1, B2, B3, V6, V7]
9843test { try toAsciiFail("\xdc\xa6\xef\xbc\x95\xdf\xa2\xea\xb2\x99\xe3\x80\x82\xe1\xb3\xb4\xf0\x90\xb7\x9a", false); } // [B1, B2, B3, V6, V7]
9844test { try toAsciiFail("\xdc\xa6\xef\xbc\x95\xdf\xa2\xea\xb2\x99\xe3\x80\x82\xe1\xb3\xb4\xf0\x90\xb7\x9a", true); } // [B1, B2, B3, V6, V7]
4059test { try toUnicodeFail("\xdc\xa6\xef\xbc\x95\xdf\xa2\xe1\x84\x80\xe1\x85\xa6\xe1\x86\xb4\xe3\x80\x82\xe1\xb3\xb4\xf0\x90\xb7\x9a"); } // [B1, B2, B3, V6, V7]9845test { try toUnicodeFail("\xdc\xa6\xef\xbc\x95\xdf\xa2\xe1\x84\x80\xe1\x85\xa6\xe1\x86\xb4\xe3\x80\x82\xe1\xb3\xb4\xf0\x90\xb7\x9a"); } // [B1, B2, B3, V6, V7]
9846test { try toAsciiFail("\xdc\xa6\xef\xbc\x95\xdf\xa2\xe1\x84\x80\xe1\x85\xa6\xe1\x86\xb4\xe3\x80\x82\xe1\xb3\xb4\xf0\x90\xb7\x9a", false); } // [B1, B2, B3, V6, V7]
9847test { try toAsciiFail("\xdc\xa6\xef\xbc\x95\xdf\xa2\xe1\x84\x80\xe1\x85\xa6\xe1\x86\xb4\xe3\x80\x82\xe1\xb3\xb4\xf0\x90\xb7\x9a", true); } // [B1, B2, B3, V6, V7]
4060test { try toUnicodeFail("\xdc\xa65\xdf\xa2\xea\xb2\x99\xe3\x80\x82\xe1\xb3\xb4\xf0\x90\xb7\x9a"); } // [B1, B2, B3, V6, V7]9848test { try toUnicodeFail("\xdc\xa65\xdf\xa2\xea\xb2\x99\xe3\x80\x82\xe1\xb3\xb4\xf0\x90\xb7\x9a"); } // [B1, B2, B3, V6, V7]
9849test { try toAsciiFail("\xdc\xa65\xdf\xa2\xea\xb2\x99\xe3\x80\x82\xe1\xb3\xb4\xf0\x90\xb7\x9a", false); } // [B1, B2, B3, V6, V7]
9850test { try toAsciiFail("\xdc\xa65\xdf\xa2\xea\xb2\x99\xe3\x80\x82\xe1\xb3\xb4\xf0\x90\xb7\x9a", true); } // [B1, B2, B3, V6, V7]
4061test { try toUnicodeFail("\xdc\xa65\xdf\xa2\xe1\x84\x80\xe1\x85\xa6\xe1\x86\xb4\xe3\x80\x82\xe1\xb3\xb4\xf0\x90\xb7\x9a"); } // [B1, B2, B3, V6, V7]9851test { try toUnicodeFail("\xdc\xa65\xdf\xa2\xe1\x84\x80\xe1\x85\xa6\xe1\x86\xb4\xe3\x80\x82\xe1\xb3\xb4\xf0\x90\xb7\x9a"); } // [B1, B2, B3, V6, V7]
9852test { try toAsciiFail("\xdc\xa65\xdf\xa2\xe1\x84\x80\xe1\x85\xa6\xe1\x86\xb4\xe3\x80\x82\xe1\xb3\xb4\xf0\x90\xb7\x9a", false); } // [B1, B2, B3, V6, V7]
9853test { try toAsciiFail("\xdc\xa65\xdf\xa2\xe1\x84\x80\xe1\x85\xa6\xe1\x86\xb4\xe3\x80\x82\xe1\xb3\xb4\xf0\x90\xb7\x9a", true); } // [B1, B2, B3, V6, V7]
4062test { try toUnicodeFail("xn--5-j1c97c2483c.xn--e7f2093h"); } // [B1, B2, B3, V6, V7]9854test { try toUnicodeFail("xn--5-j1c97c2483c.xn--e7f2093h"); } // [B1, B2, B3, V6, V7]
9855test { try toAsciiFail("xn--5-j1c97c2483c.xn--e7f2093h", false); } // [B1, B2, B3, V6, V7]
9856test { try toAsciiFail("xn--5-j1c97c2483c.xn--e7f2093h", true); } // [B1, B2, B3, V6, V7]
4063test { try toUnicodeFail("\xe1\x82\xad\xf0\xbf\xa3\x8d\xea\xa1\xa8\xd6\xae\xe3\x80\x82\xe1\x82\xbe\xe2\x80\x8c\xe2\x80\x8c"); } // [C1, V7]9857test { try toUnicodeFail("\xe1\x82\xad\xf0\xbf\xa3\x8d\xea\xa1\xa8\xd6\xae\xe3\x80\x82\xe1\x82\xbe\xe2\x80\x8c\xe2\x80\x8c"); } // [C1, V7]
9858test { try toAsciiFail("\xe1\x82\xad\xf0\xbf\xa3\x8d\xea\xa1\xa8\xd6\xae\xe3\x80\x82\xe1\x82\xbe\xe2\x80\x8c\xe2\x80\x8c", false); } // [C1, V7]
9859test { try toAsciiFail("\xe1\x82\xad\xf0\xbf\xa3\x8d\xea\xa1\xa8\xd6\xae\xe3\x80\x82\xe1\x82\xbe\xe2\x80\x8c\xe2\x80\x8c", true); } // [V7]
4064test { try toUnicodeFail("\xe2\xb4\x8d\xf0\xbf\xa3\x8d\xea\xa1\xa8\xd6\xae\xe3\x80\x82\xe2\xb4\x9e\xe2\x80\x8c\xe2\x80\x8c"); } // [C1, V7]9860test { try toUnicodeFail("\xe2\xb4\x8d\xf0\xbf\xa3\x8d\xea\xa1\xa8\xd6\xae\xe3\x80\x82\xe2\xb4\x9e\xe2\x80\x8c\xe2\x80\x8c"); } // [C1, V7]
9861test { try toAsciiFail("\xe2\xb4\x8d\xf0\xbf\xa3\x8d\xea\xa1\xa8\xd6\xae\xe3\x80\x82\xe2\xb4\x9e\xe2\x80\x8c\xe2\x80\x8c", false); } // [C1, V7]
9862test { try toAsciiFail("\xe2\xb4\x8d\xf0\xbf\xa3\x8d\xea\xa1\xa8\xd6\xae\xe3\x80\x82\xe2\xb4\x9e\xe2\x80\x8c\xe2\x80\x8c", true); } // [V7]
4065test { try toUnicodeFail("xn--5cb172r175fug38a.xn--mlj"); } // [V7]9863test { try toUnicodeFail("xn--5cb172r175fug38a.xn--mlj"); } // [V7]
9864test { try toAsciiFail("xn--5cb172r175fug38a.xn--mlj", false); } // [V7]
9865test { try toAsciiFail("xn--5cb172r175fug38a.xn--mlj", true); } // [V7]
4066test { try toUnicodeFail("xn--5cb172r175fug38a.xn--0uga051h"); } // [C1, V7]9866test { try toUnicodeFail("xn--5cb172r175fug38a.xn--0uga051h"); } // [C1, V7]
9867test { try toAsciiFail("xn--5cb172r175fug38a.xn--0uga051h", false); } // [C1, V7]
9868test { try toAsciiFail("xn--5cb172r175fug38a.xn--0uga051h", true); } // [C1, V7]
4067test { try toUnicodeFail("xn--5cb347co96jug15a.xn--2nd"); } // [V7]9869test { try toUnicodeFail("xn--5cb347co96jug15a.xn--2nd"); } // [V7]
9870test { try toAsciiFail("xn--5cb347co96jug15a.xn--2nd", false); } // [V7]
9871test { try toAsciiFail("xn--5cb347co96jug15a.xn--2nd", true); } // [V7]
4068test { try toUnicodeFail("xn--5cb347co96jug15a.xn--2nd059ea"); } // [C1, V7]9872test { try toUnicodeFail("xn--5cb347co96jug15a.xn--2nd059ea"); } // [C1, V7]
9873test { try toAsciiFail("xn--5cb347co96jug15a.xn--2nd059ea", false); } // [C1, V7]
9874test { try toAsciiFail("xn--5cb347co96jug15a.xn--2nd059ea", true); } // [C1, V7]
4069test { try toUnicodeFail("\xf0\x90\x8b\xb0\xe3\x80\x82\xf3\x91\x93\xb1"); } // [V7]9875test { try toUnicodeFail("\xf0\x90\x8b\xb0\xe3\x80\x82\xf3\x91\x93\xb1"); } // [V7]
9876test { try toAsciiFail("\xf0\x90\x8b\xb0\xe3\x80\x82\xf3\x91\x93\xb1", false); } // [V7]
9877test { try toAsciiFail("\xf0\x90\x8b\xb0\xe3\x80\x82\xf3\x91\x93\xb1", true); } // [V7]
4070test { try toUnicodeFail("xn--k97c.xn--q031e"); } // [V7]9878test { try toUnicodeFail("xn--k97c.xn--q031e"); } // [V7]
9879test { try toAsciiFail("xn--k97c.xn--q031e", false); } // [V7]
9880test { try toAsciiFail("xn--k97c.xn--q031e", true); } // [V7]
4071test { try toUnicodeFail("\xf3\xa1\x8e\xa6\xe1\x9e\xb4\xe0\xad\x8d.\xf0\x90\xb9\xbe"); } // [B1, V7]9881test { try toUnicodeFail("\xf3\xa1\x8e\xa6\xe1\x9e\xb4\xe0\xad\x8d.\xf0\x90\xb9\xbe"); } // [B1, V7]
9882test { try toAsciiFail("\xf3\xa1\x8e\xa6\xe1\x9e\xb4\xe0\xad\x8d.\xf0\x90\xb9\xbe", false); } // [B1, V7]
9883test { try toAsciiFail("\xf3\xa1\x8e\xa6\xe1\x9e\xb4\xe0\xad\x8d.\xf0\x90\xb9\xbe", true); } // [B1, V7]
4072test { try toUnicodeFail("xn--9ic59305p.xn--2o0d"); } // [B1, V7]9884test { try toUnicodeFail("xn--9ic59305p.xn--2o0d"); } // [B1, V7]
9885test { try toAsciiFail("xn--9ic59305p.xn--2o0d", false); } // [B1, V7]
9886test { try toAsciiFail("xn--9ic59305p.xn--2o0d", true); } // [B1, V7]
4073test { try toUnicodeFail("xn--9ic364dho91z.xn--2o0d"); } // [B1, V7]9887test { try toUnicodeFail("xn--9ic364dho91z.xn--2o0d"); } // [B1, V7]
9888test { try toAsciiFail("xn--9ic364dho91z.xn--2o0d", false); } // [B1, V7]
9889test { try toAsciiFail("xn--9ic364dho91z.xn--2o0d", true); } // [B1, V7]
4074test { try toUnicodeFail("\xe0\xa3\x9f\xe1\x82\xab\xf0\xb6\xbf\xb8\xea\xb7\xa4\xef\xbc\x8e\xf2\xa0\x85\xbc\xf0\x9d\x9f\xa2\xed\x9c\xaa\xe0\xab\xa3"); } // [V6, V7]9890test { try toUnicodeFail("\xe0\xa3\x9f\xe1\x82\xab\xf0\xb6\xbf\xb8\xea\xb7\xa4\xef\xbc\x8e\xf2\xa0\x85\xbc\xf0\x9d\x9f\xa2\xed\x9c\xaa\xe0\xab\xa3"); } // [V6, V7]
9891test { try toAsciiFail("\xe0\xa3\x9f\xe1\x82\xab\xf0\xb6\xbf\xb8\xea\xb7\xa4\xef\xbc\x8e\xf2\xa0\x85\xbc\xf0\x9d\x9f\xa2\xed\x9c\xaa\xe0\xab\xa3", false); } // [V6, V7]
9892test { try toAsciiFail("\xe0\xa3\x9f\xe1\x82\xab\xf0\xb6\xbf\xb8\xea\xb7\xa4\xef\xbc\x8e\xf2\xa0\x85\xbc\xf0\x9d\x9f\xa2\xed\x9c\xaa\xe0\xab\xa3", true); } // [V6, V7]
4075test { try toUnicodeFail("\xe0\xa3\x9f\xe1\x82\xab\xf0\xb6\xbf\xb8\xe1\x84\x80\xe1\x85\xb2\xe1\x86\xaf\xef\xbc\x8e\xf2\xa0\x85\xbc\xf0\x9d\x9f\xa2\xe1\x84\x92\xe1\x85\xb1\xe1\x86\xb9\xe0\xab\xa3"); } // [V6, V7]9893test { try toUnicodeFail("\xe0\xa3\x9f\xe1\x82\xab\xf0\xb6\xbf\xb8\xe1\x84\x80\xe1\x85\xb2\xe1\x86\xaf\xef\xbc\x8e\xf2\xa0\x85\xbc\xf0\x9d\x9f\xa2\xe1\x84\x92\xe1\x85\xb1\xe1\x86\xb9\xe0\xab\xa3"); } // [V6, V7]
9894test { try toAsciiFail("\xe0\xa3\x9f\xe1\x82\xab\xf0\xb6\xbf\xb8\xe1\x84\x80\xe1\x85\xb2\xe1\x86\xaf\xef\xbc\x8e\xf2\xa0\x85\xbc\xf0\x9d\x9f\xa2\xe1\x84\x92\xe1\x85\xb1\xe1\x86\xb9\xe0\xab\xa3", false); } // [V6, V7]
9895test { try toAsciiFail("\xe0\xa3\x9f\xe1\x82\xab\xf0\xb6\xbf\xb8\xe1\x84\x80\xe1\x85\xb2\xe1\x86\xaf\xef\xbc\x8e\xf2\xa0\x85\xbc\xf0\x9d\x9f\xa2\xe1\x84\x92\xe1\x85\xb1\xe1\x86\xb9\xe0\xab\xa3", true); } // [V6, V7]
4076test { try toUnicodeFail("\xe0\xa3\x9f\xe1\x82\xab\xf0\xb6\xbf\xb8\xea\xb7\xa4.\xf2\xa0\x85\xbc0\xed\x9c\xaa\xe0\xab\xa3"); } // [V6, V7]9896test { try toUnicodeFail("\xe0\xa3\x9f\xe1\x82\xab\xf0\xb6\xbf\xb8\xea\xb7\xa4.\xf2\xa0\x85\xbc0\xed\x9c\xaa\xe0\xab\xa3"); } // [V6, V7]
9897test { try toAsciiFail("\xe0\xa3\x9f\xe1\x82\xab\xf0\xb6\xbf\xb8\xea\xb7\xa4.\xf2\xa0\x85\xbc0\xed\x9c\xaa\xe0\xab\xa3", false); } // [V6, V7]
9898test { try toAsciiFail("\xe0\xa3\x9f\xe1\x82\xab\xf0\xb6\xbf\xb8\xea\xb7\xa4.\xf2\xa0\x85\xbc0\xed\x9c\xaa\xe0\xab\xa3", true); } // [V6, V7]
4077test { try toUnicodeFail("\xe0\xa3\x9f\xe1\x82\xab\xf0\xb6\xbf\xb8\xe1\x84\x80\xe1\x85\xb2\xe1\x86\xaf.\xf2\xa0\x85\xbc0\xe1\x84\x92\xe1\x85\xb1\xe1\x86\xb9\xe0\xab\xa3"); } // [V6, V7]9899test { try toUnicodeFail("\xe0\xa3\x9f\xe1\x82\xab\xf0\xb6\xbf\xb8\xe1\x84\x80\xe1\x85\xb2\xe1\x86\xaf.\xf2\xa0\x85\xbc0\xe1\x84\x92\xe1\x85\xb1\xe1\x86\xb9\xe0\xab\xa3"); } // [V6, V7]
9900test { try toAsciiFail("\xe0\xa3\x9f\xe1\x82\xab\xf0\xb6\xbf\xb8\xe1\x84\x80\xe1\x85\xb2\xe1\x86\xaf.\xf2\xa0\x85\xbc0\xe1\x84\x92\xe1\x85\xb1\xe1\x86\xb9\xe0\xab\xa3", false); } // [V6, V7]
9901test { try toAsciiFail("\xe0\xa3\x9f\xe1\x82\xab\xf0\xb6\xbf\xb8\xe1\x84\x80\xe1\x85\xb2\xe1\x86\xaf.\xf2\xa0\x85\xbc0\xe1\x84\x92\xe1\x85\xb1\xe1\x86\xb9\xe0\xab\xa3", true); } // [V6, V7]
4078test { try toUnicodeFail("\xe0\xa3\x9f\xe2\xb4\x8b\xf0\xb6\xbf\xb8\xe1\x84\x80\xe1\x85\xb2\xe1\x86\xaf.\xf2\xa0\x85\xbc0\xe1\x84\x92\xe1\x85\xb1\xe1\x86\xb9\xe0\xab\xa3"); } // [V6, V7]9902test { try toUnicodeFail("\xe0\xa3\x9f\xe2\xb4\x8b\xf0\xb6\xbf\xb8\xe1\x84\x80\xe1\x85\xb2\xe1\x86\xaf.\xf2\xa0\x85\xbc0\xe1\x84\x92\xe1\x85\xb1\xe1\x86\xb9\xe0\xab\xa3"); } // [V6, V7]
9903test { try toAsciiFail("\xe0\xa3\x9f\xe2\xb4\x8b\xf0\xb6\xbf\xb8\xe1\x84\x80\xe1\x85\xb2\xe1\x86\xaf.\xf2\xa0\x85\xbc0\xe1\x84\x92\xe1\x85\xb1\xe1\x86\xb9\xe0\xab\xa3", false); } // [V6, V7]
9904test { try toAsciiFail("\xe0\xa3\x9f\xe2\xb4\x8b\xf0\xb6\xbf\xb8\xe1\x84\x80\xe1\x85\xb2\xe1\x86\xaf.\xf2\xa0\x85\xbc0\xe1\x84\x92\xe1\x85\xb1\xe1\x86\xb9\xe0\xab\xa3", true); } // [V6, V7]
4079test { try toUnicodeFail("\xe0\xa3\x9f\xe2\xb4\x8b\xf0\xb6\xbf\xb8\xea\xb7\xa4.\xf2\xa0\x85\xbc0\xed\x9c\xaa\xe0\xab\xa3"); } // [V6, V7]9905test { try toUnicodeFail("\xe0\xa3\x9f\xe2\xb4\x8b\xf0\xb6\xbf\xb8\xea\xb7\xa4.\xf2\xa0\x85\xbc0\xed\x9c\xaa\xe0\xab\xa3"); } // [V6, V7]
9906test { try toAsciiFail("\xe0\xa3\x9f\xe2\xb4\x8b\xf0\xb6\xbf\xb8\xea\xb7\xa4.\xf2\xa0\x85\xbc0\xed\x9c\xaa\xe0\xab\xa3", false); } // [V6, V7]
9907test { try toAsciiFail("\xe0\xa3\x9f\xe2\xb4\x8b\xf0\xb6\xbf\xb8\xea\xb7\xa4.\xf2\xa0\x85\xbc0\xed\x9c\xaa\xe0\xab\xa3", true); } // [V6, V7]
4080test { try toUnicodeFail("xn--i0b436pkl2g2h42a.xn--0-8le8997mulr5f"); } // [V6, V7]9908test { try toUnicodeFail("xn--i0b436pkl2g2h42a.xn--0-8le8997mulr5f"); } // [V6, V7]
9909test { try toAsciiFail("xn--i0b436pkl2g2h42a.xn--0-8le8997mulr5f", false); } // [V6, V7]
9910test { try toAsciiFail("xn--i0b436pkl2g2h42a.xn--0-8le8997mulr5f", true); } // [V6, V7]
4081test { try toUnicodeFail("\xe0\xa3\x9f\xe2\xb4\x8b\xf0\xb6\xbf\xb8\xe1\x84\x80\xe1\x85\xb2\xe1\x86\xaf\xef\xbc\x8e\xf2\xa0\x85\xbc\xf0\x9d\x9f\xa2\xe1\x84\x92\xe1\x85\xb1\xe1\x86\xb9\xe0\xab\xa3"); } // [V6, V7]9911test { try toUnicodeFail("\xe0\xa3\x9f\xe2\xb4\x8b\xf0\xb6\xbf\xb8\xe1\x84\x80\xe1\x85\xb2\xe1\x86\xaf\xef\xbc\x8e\xf2\xa0\x85\xbc\xf0\x9d\x9f\xa2\xe1\x84\x92\xe1\x85\xb1\xe1\x86\xb9\xe0\xab\xa3"); } // [V6, V7]
9912test { try toAsciiFail("\xe0\xa3\x9f\xe2\xb4\x8b\xf0\xb6\xbf\xb8\xe1\x84\x80\xe1\x85\xb2\xe1\x86\xaf\xef\xbc\x8e\xf2\xa0\x85\xbc\xf0\x9d\x9f\xa2\xe1\x84\x92\xe1\x85\xb1\xe1\x86\xb9\xe0\xab\xa3", false); } // [V6, V7]
9913test { try toAsciiFail("\xe0\xa3\x9f\xe2\xb4\x8b\xf0\xb6\xbf\xb8\xe1\x84\x80\xe1\x85\xb2\xe1\x86\xaf\xef\xbc\x8e\xf2\xa0\x85\xbc\xf0\x9d\x9f\xa2\xe1\x84\x92\xe1\x85\xb1\xe1\x86\xb9\xe0\xab\xa3", true); } // [V6, V7]
4082test { try toUnicodeFail("\xe0\xa3\x9f\xe2\xb4\x8b\xf0\xb6\xbf\xb8\xea\xb7\xa4\xef\xbc\x8e\xf2\xa0\x85\xbc\xf0\x9d\x9f\xa2\xed\x9c\xaa\xe0\xab\xa3"); } // [V6, V7]9914test { try toUnicodeFail("\xe0\xa3\x9f\xe2\xb4\x8b\xf0\xb6\xbf\xb8\xea\xb7\xa4\xef\xbc\x8e\xf2\xa0\x85\xbc\xf0\x9d\x9f\xa2\xed\x9c\xaa\xe0\xab\xa3"); } // [V6, V7]
9915test { try toAsciiFail("\xe0\xa3\x9f\xe2\xb4\x8b\xf0\xb6\xbf\xb8\xea\xb7\xa4\xef\xbc\x8e\xf2\xa0\x85\xbc\xf0\x9d\x9f\xa2\xed\x9c\xaa\xe0\xab\xa3", false); } // [V6, V7]
9916test { try toAsciiFail("\xe0\xa3\x9f\xe2\xb4\x8b\xf0\xb6\xbf\xb8\xea\xb7\xa4\xef\xbc\x8e\xf2\xa0\x85\xbc\xf0\x9d\x9f\xa2\xed\x9c\xaa\xe0\xab\xa3", true); } // [V6, V7]
4083test { try toUnicodeFail("xn--i0b601b6r7l2hs0a.xn--0-8le8997mulr5f"); } // [V6, V7]9917test { try toUnicodeFail("xn--i0b601b6r7l2hs0a.xn--0-8le8997mulr5f"); } // [V6, V7]
9918test { try toAsciiFail("xn--i0b601b6r7l2hs0a.xn--0-8le8997mulr5f", false); } // [V6, V7]
9919test { try toAsciiFail("xn--i0b601b6r7l2hs0a.xn--0-8le8997mulr5f", true); } // [V6, V7]
4084test { try toUnicodeFail("\xde\x84\xef\xbc\x8e\xf0\x9e\xa1\x9d\xd8\x81"); } // [V7]9920test { try toUnicodeFail("\xde\x84\xef\xbc\x8e\xf0\x9e\xa1\x9d\xd8\x81"); } // [V7]
9921test { try toAsciiFail("\xde\x84\xef\xbc\x8e\xf0\x9e\xa1\x9d\xd8\x81", false); } // [V7]
9922test { try toAsciiFail("\xde\x84\xef\xbc\x8e\xf0\x9e\xa1\x9d\xd8\x81", true); } // [V7]
4085test { try toUnicodeFail("\xde\x84.\xf0\x9e\xa1\x9d\xd8\x81"); } // [V7]9923test { try toUnicodeFail("\xde\x84.\xf0\x9e\xa1\x9d\xd8\x81"); } // [V7]
9924test { try toAsciiFail("\xde\x84.\xf0\x9e\xa1\x9d\xd8\x81", false); } // [V7]
9925test { try toAsciiFail("\xde\x84.\xf0\x9e\xa1\x9d\xd8\x81", true); } // [V7]
4086test { try toUnicodeFail("xn--lqb.xn--jfb1808v"); } // [V7]9926test { try toUnicodeFail("xn--lqb.xn--jfb1808v"); } // [V7]
9927test { try toAsciiFail("xn--lqb.xn--jfb1808v", false); } // [V7]
9928test { try toAsciiFail("xn--lqb.xn--jfb1808v", true); } // [V7]
4087test { try toUnicodeFail("\xe0\xab\x8d\xe2\x82\x83.8\xea\xa3\x84\xe2\x80\x8d\xf0\x9f\x83\xa4"); } // [V6]9929test { try toUnicodeFail("\xe0\xab\x8d\xe2\x82\x83.8\xea\xa3\x84\xe2\x80\x8d\xf0\x9f\x83\xa4"); } // [V6]
9930test { try toAsciiFail("\xe0\xab\x8d\xe2\x82\x83.8\xea\xa3\x84\xe2\x80\x8d\xf0\x9f\x83\xa4", false); } // [V6]
9931test { try toAsciiFail("\xe0\xab\x8d\xe2\x82\x83.8\xea\xa3\x84\xe2\x80\x8d\xf0\x9f\x83\xa4", true); } // [V6]
4088test { try toUnicodeFail("\xe0\xab\x8d3.8\xea\xa3\x84\xe2\x80\x8d\xf0\x9f\x83\xa4"); } // [V6]9932test { try toUnicodeFail("\xe0\xab\x8d3.8\xea\xa3\x84\xe2\x80\x8d\xf0\x9f\x83\xa4"); } // [V6]
9933test { try toAsciiFail("\xe0\xab\x8d3.8\xea\xa3\x84\xe2\x80\x8d\xf0\x9f\x83\xa4", false); } // [V6]
9934test { try toAsciiFail("\xe0\xab\x8d3.8\xea\xa3\x84\xe2\x80\x8d\xf0\x9f\x83\xa4", true); } // [V6]
4089test { try toUnicodeFail("xn--3-yke.xn--8-sl4et308f"); } // [V6]9935test { try toUnicodeFail("xn--3-yke.xn--8-sl4et308f"); } // [V6]
9936test { try toAsciiFail("xn--3-yke.xn--8-sl4et308f", false); } // [V6]
9937test { try toAsciiFail("xn--3-yke.xn--8-sl4et308f", true); } // [V6]
4090test { try toUnicodeFail("xn--3-yke.xn--8-ugnv982dbkwm"); } // [V6]9938test { try toUnicodeFail("xn--3-yke.xn--8-ugnv982dbkwm"); } // [V6]
9939test { try toAsciiFail("xn--3-yke.xn--8-ugnv982dbkwm", false); } // [V6]
9940test { try toAsciiFail("xn--3-yke.xn--8-ugnv982dbkwm", true); } // [V6]
4091test { try toUnicodeFail("\xe2\x84\xbb\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa4\xa0\xf3\xa0\x86\x81\xe1\xa0\x8c"); } // [B6]9941test { try toUnicodeFail("\xe2\x84\xbb\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa4\xa0\xf3\xa0\x86\x81\xe1\xa0\x8c"); } // [B6]
9942test { try toAsciiFail("\xe2\x84\xbb\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa4\xa0\xf3\xa0\x86\x81\xe1\xa0\x8c", false); } // [B6]
9943test { try toAsciiFail("\xe2\x84\xbb\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa4\xa0\xf3\xa0\x86\x81\xe1\xa0\x8c", true); } // [B6]
4092test { try toUnicodeFail("FAX\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa4\xa0\xf3\xa0\x86\x81\xe1\xa0\x8c"); } // [B6]9944test { try toUnicodeFail("FAX\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa4\xa0\xf3\xa0\x86\x81\xe1\xa0\x8c"); } // [B6]
9945test { try toAsciiFail("FAX\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa4\xa0\xf3\xa0\x86\x81\xe1\xa0\x8c", false); } // [B6]
9946test { try toAsciiFail("FAX\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa4\xa0\xf3\xa0\x86\x81\xe1\xa0\x8c", true); } // [B6]
4093test { try toUnicodeFail("fax\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa5\x82\xf3\xa0\x86\x81\xe1\xa0\x8c"); } // [B6]9947test { try toUnicodeFail("fax\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa5\x82\xf3\xa0\x86\x81\xe1\xa0\x8c"); } // [B6]
9948test { try toAsciiFail("fax\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa5\x82\xf3\xa0\x86\x81\xe1\xa0\x8c", false); } // [B6]
9949test { try toAsciiFail("fax\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa5\x82\xf3\xa0\x86\x81\xe1\xa0\x8c", true); } // [B6]
4094test { try toUnicodeFail("Fax\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa4\xa0\xf3\xa0\x86\x81\xe1\xa0\x8c"); } // [B6]9950test { try toUnicodeFail("Fax\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa4\xa0\xf3\xa0\x86\x81\xe1\xa0\x8c"); } // [B6]
9951test { try toAsciiFail("Fax\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa4\xa0\xf3\xa0\x86\x81\xe1\xa0\x8c", false); } // [B6]
9952test { try toAsciiFail("Fax\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa4\xa0\xf3\xa0\x86\x81\xe1\xa0\x8c", true); } // [B6]
4095test { try toUnicodeFail("xn--fax-4c9a1676t.xn--6e6h"); } // [B6]9953test { try toUnicodeFail("xn--fax-4c9a1676t.xn--6e6h"); } // [B6]
9954test { try toAsciiFail("xn--fax-4c9a1676t.xn--6e6h", false); } // [B6]
9955test { try toAsciiFail("xn--fax-4c9a1676t.xn--6e6h", true); } // [B6]
4096test { try toUnicodeFail("\xe2\x84\xbb\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa5\x82\xf3\xa0\x86\x81\xe1\xa0\x8c"); } // [B6]9956test { try toUnicodeFail("\xe2\x84\xbb\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa5\x82\xf3\xa0\x86\x81\xe1\xa0\x8c"); } // [B6]
9957test { try toAsciiFail("\xe2\x84\xbb\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa5\x82\xf3\xa0\x86\x81\xe1\xa0\x8c", false); } // [B6]
9958test { try toAsciiFail("\xe2\x84\xbb\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa5\x82\xf3\xa0\x86\x81\xe1\xa0\x8c", true); } // [B6]
4097test { try toUnicodeFail("FAX\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa5\x82\xf3\xa0\x86\x81\xe1\xa0\x8c"); } // [B6]9959test { try toUnicodeFail("FAX\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa5\x82\xf3\xa0\x86\x81\xe1\xa0\x8c"); } // [B6]
9960test { try toAsciiFail("FAX\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa5\x82\xf3\xa0\x86\x81\xe1\xa0\x8c", false); } // [B6]
9961test { try toAsciiFail("FAX\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa5\x82\xf3\xa0\x86\x81\xe1\xa0\x8c", true); } // [B6]
4098test { try toUnicodeFail("fax\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa4\xa0\xf3\xa0\x86\x81\xe1\xa0\x8c"); } // [B6]9962test { try toUnicodeFail("fax\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa4\xa0\xf3\xa0\x86\x81\xe1\xa0\x8c"); } // [B6]
9963test { try toAsciiFail("fax\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa4\xa0\xf3\xa0\x86\x81\xe1\xa0\x8c", false); } // [B6]
9964test { try toAsciiFail("fax\xe2\xa9\xb7\xf0\x9d\x86\x86\xe3\x80\x82\xf0\x9e\xa4\xa0\xf3\xa0\x86\x81\xe1\xa0\x8c", true); } // [B6]
4099test { try toUnicodeFail("fax\xe2\xa9\xb7\xf0\x9d\x86\x86.\xf0\x9e\xa5\x82"); } // [B6]9965test { try toUnicodeFail("fax\xe2\xa9\xb7\xf0\x9d\x86\x86.\xf0\x9e\xa5\x82"); } // [B6]
9966test { try toAsciiFail("fax\xe2\xa9\xb7\xf0\x9d\x86\x86.\xf0\x9e\xa5\x82", false); } // [B6]
9967test { try toAsciiFail("fax\xe2\xa9\xb7\xf0\x9d\x86\x86.\xf0\x9e\xa5\x82", true); } // [B6]
4100test { try toUnicodeFail("FAX\xe2\xa9\xb7\xf0\x9d\x86\x86.\xf0\x9e\xa4\xa0"); } // [B6]9968test { try toUnicodeFail("FAX\xe2\xa9\xb7\xf0\x9d\x86\x86.\xf0\x9e\xa4\xa0"); } // [B6]
9969test { try toAsciiFail("FAX\xe2\xa9\xb7\xf0\x9d\x86\x86.\xf0\x9e\xa4\xa0", false); } // [B6]
9970test { try toAsciiFail("FAX\xe2\xa9\xb7\xf0\x9d\x86\x86.\xf0\x9e\xa4\xa0", true); } // [B6]
4101test { try toUnicodeFail("Fax\xe2\xa9\xb7\xf0\x9d\x86\x86.\xf0\x9e\xa4\xa0"); } // [B6]9971test { try toUnicodeFail("Fax\xe2\xa9\xb7\xf0\x9d\x86\x86.\xf0\x9e\xa4\xa0"); } // [B6]
9972test { try toAsciiFail("Fax\xe2\xa9\xb7\xf0\x9d\x86\x86.\xf0\x9e\xa4\xa0", false); } // [B6]
9973test { try toAsciiFail("Fax\xe2\xa9\xb7\xf0\x9d\x86\x86.\xf0\x9e\xa4\xa0", true); } // [B6]
4102test { try toUnicodeFail("FAX\xe2\xa9\xb7\xf0\x9d\x86\x86.\xf0\x9e\xa5\x82"); } // [B6]9974test { try toUnicodeFail("FAX\xe2\xa9\xb7\xf0\x9d\x86\x86.\xf0\x9e\xa5\x82"); } // [B6]
9975test { try toAsciiFail("FAX\xe2\xa9\xb7\xf0\x9d\x86\x86.\xf0\x9e\xa5\x82", false); } // [B6]
9976test { try toAsciiFail("FAX\xe2\xa9\xb7\xf0\x9d\x86\x86.\xf0\x9e\xa5\x82", true); } // [B6]
4103test { try toUnicodeFail("Fax\xe2\xa9\xb7\xf0\x9d\x86\x86.\xf0\x9e\xa5\x82"); } // [B6]9977test { try toUnicodeFail("Fax\xe2\xa9\xb7\xf0\x9d\x86\x86.\xf0\x9e\xa5\x82"); } // [B6]
9978test { try toAsciiFail("Fax\xe2\xa9\xb7\xf0\x9d\x86\x86.\xf0\x9e\xa5\x82", false); } // [B6]
9979test { try toAsciiFail("Fax\xe2\xa9\xb7\xf0\x9d\x86\x86.\xf0\x9e\xa5\x82", true); } // [B6]
4104test { try toUnicodeFail("\xea\xa1\x95\xe2\x89\xa0\xe1\x81\x9e\xf3\xae\xbf\xb1\xef\xbd\xa1\xf0\x90\xb5\xa7\xf3\xa0\x84\xab\xef\xbe\xa0"); } // [V7]9980test { try toUnicodeFail("\xea\xa1\x95\xe2\x89\xa0\xe1\x81\x9e\xf3\xae\xbf\xb1\xef\xbd\xa1\xf0\x90\xb5\xa7\xf3\xa0\x84\xab\xef\xbe\xa0"); } // [V7]
9981test { try toAsciiFail("\xea\xa1\x95\xe2\x89\xa0\xe1\x81\x9e\xf3\xae\xbf\xb1\xef\xbd\xa1\xf0\x90\xb5\xa7\xf3\xa0\x84\xab\xef\xbe\xa0", false); } // [V7]
9982test { try toAsciiFail("\xea\xa1\x95\xe2\x89\xa0\xe1\x81\x9e\xf3\xae\xbf\xb1\xef\xbd\xa1\xf0\x90\xb5\xa7\xf3\xa0\x84\xab\xef\xbe\xa0", true); } // [V7]
4105test { try toUnicodeFail("\xea\xa1\x95=\xcc\xb8\xe1\x81\x9e\xf3\xae\xbf\xb1\xef\xbd\xa1\xf0\x90\xb5\xa7\xf3\xa0\x84\xab\xef\xbe\xa0"); } // [V7]9983test { try toUnicodeFail("\xea\xa1\x95=\xcc\xb8\xe1\x81\x9e\xf3\xae\xbf\xb1\xef\xbd\xa1\xf0\x90\xb5\xa7\xf3\xa0\x84\xab\xef\xbe\xa0"); } // [V7]
9984test { try toAsciiFail("\xea\xa1\x95=\xcc\xb8\xe1\x81\x9e\xf3\xae\xbf\xb1\xef\xbd\xa1\xf0\x90\xb5\xa7\xf3\xa0\x84\xab\xef\xbe\xa0", false); } // [V7]
9985test { try toAsciiFail("\xea\xa1\x95=\xcc\xb8\xe1\x81\x9e\xf3\xae\xbf\xb1\xef\xbd\xa1\xf0\x90\xb5\xa7\xf3\xa0\x84\xab\xef\xbe\xa0", true); } // [V7]
4106test { try toUnicodeFail("\xea\xa1\x95\xe2\x89\xa0\xe1\x81\x9e\xf3\xae\xbf\xb1\xe3\x80\x82\xf0\x90\xb5\xa7\xf3\xa0\x84\xab\xe1\x85\xa0"); } // [V7]9986test { try toUnicodeFail("\xea\xa1\x95\xe2\x89\xa0\xe1\x81\x9e\xf3\xae\xbf\xb1\xe3\x80\x82\xf0\x90\xb5\xa7\xf3\xa0\x84\xab\xe1\x85\xa0"); } // [V7]
9987test { try toAsciiFail("\xea\xa1\x95\xe2\x89\xa0\xe1\x81\x9e\xf3\xae\xbf\xb1\xe3\x80\x82\xf0\x90\xb5\xa7\xf3\xa0\x84\xab\xe1\x85\xa0", false); } // [V7]
9988test { try toAsciiFail("\xea\xa1\x95\xe2\x89\xa0\xe1\x81\x9e\xf3\xae\xbf\xb1\xe3\x80\x82\xf0\x90\xb5\xa7\xf3\xa0\x84\xab\xe1\x85\xa0", true); } // [V7]
4107test { try toUnicodeFail("\xea\xa1\x95=\xcc\xb8\xe1\x81\x9e\xf3\xae\xbf\xb1\xe3\x80\x82\xf0\x90\xb5\xa7\xf3\xa0\x84\xab\xe1\x85\xa0"); } // [V7]9989test { try toUnicodeFail("\xea\xa1\x95=\xcc\xb8\xe1\x81\x9e\xf3\xae\xbf\xb1\xe3\x80\x82\xf0\x90\xb5\xa7\xf3\xa0\x84\xab\xe1\x85\xa0"); } // [V7]
9990test { try toAsciiFail("\xea\xa1\x95=\xcc\xb8\xe1\x81\x9e\xf3\xae\xbf\xb1\xe3\x80\x82\xf0\x90\xb5\xa7\xf3\xa0\x84\xab\xe1\x85\xa0", false); } // [V7]
9991test { try toAsciiFail("\xea\xa1\x95=\xcc\xb8\xe1\x81\x9e\xf3\xae\xbf\xb1\xe3\x80\x82\xf0\x90\xb5\xa7\xf3\xa0\x84\xab\xe1\x85\xa0", true); } // [V7]
4108test { try toUnicodeFail("xn--cld333gn31h0158l.xn--3g0d"); } // [V7]9992test { try toUnicodeFail("xn--cld333gn31h0158l.xn--3g0d"); } // [V7]
9993test { try toAsciiFail("xn--cld333gn31h0158l.xn--3g0d", false); } // [V7]
9994test { try toAsciiFail("xn--cld333gn31h0158l.xn--3g0d", true); } // [V7]
4109test { try toUnicodeFail("xn--cld333gn31h0158l.xn--psd1510k"); } // [B2, B3, V7]9995test { try toUnicodeFail("xn--cld333gn31h0158l.xn--psd1510k"); } // [B2, B3, V7]
9996test { try toAsciiFail("xn--cld333gn31h0158l.xn--psd1510k", false); } // [B2, B3, V7]
9997test { try toAsciiFail("xn--cld333gn31h0158l.xn--psd1510k", true); } // [B2, B3, V7]
4110test { try toUnicodeFail("xn--cld333gn31h0158l.xn--cl7c96v"); } // [B2, B3, V7]9998test { try toUnicodeFail("xn--cld333gn31h0158l.xn--cl7c96v"); } // [B2, B3, V7]
9999test { try toAsciiFail("xn--cld333gn31h0158l.xn--cl7c96v", false); } // [B2, B3, V7]
10000test { try toAsciiFail("xn--cld333gn31h0158l.xn--cl7c96v", true); } // [B2, B3, V7]
4111test { try toUnicodeFail("\xe9\xb1\x8a\xe3\x80\x82\xe2\x80\x8c"); } // [C1]10001test { try toUnicodeFail("\xe9\xb1\x8a\xe3\x80\x82\xe2\x80\x8c"); } // [C1]
10002test { try toAsciiFail("\xe9\xb1\x8a\xe3\x80\x82\xe2\x80\x8c", false); } // [C1]
10003test { try toAsciiFail("\xe9\xb1\x8a\xe3\x80\x82\xe2\x80\x8c", true); } // [A4_2]
4112test { try toUnicodePass("xn--rt6a.", "\xe9\xb1\x8a."); }10004test { try toUnicodePass("xn--rt6a.", "\xe9\xb1\x8a."); }
10005test { try toAsciiFail("xn--rt6a.", false); } // [A4_2]
10006test { try toAsciiFail("xn--rt6a.", true); } // [A4_2]
4113test { try toUnicodePass("\xe9\xb1\x8a.", "\xe9\xb1\x8a."); }10007test { try toUnicodePass("\xe9\xb1\x8a.", "\xe9\xb1\x8a."); }
10008test { try toAsciiFail("\xe9\xb1\x8a.", false); } // [A4_2]
10009test { try toAsciiFail("\xe9\xb1\x8a.", true); } // [A4_2]
4114test { try toUnicodeFail("xn--rt6a.xn--0ug"); } // [C1]10010test { try toUnicodeFail("xn--rt6a.xn--0ug"); } // [C1]
10011test { try toAsciiFail("xn--rt6a.xn--0ug", false); } // [C1]
10012test { try toAsciiFail("xn--rt6a.xn--0ug", true); } // [C1]
4115test { try toUnicodeFail("8\xf0\x90\xb9\xa3\xef\xbc\x8e\xf0\x91\x8d\xa8"); } // [B1, V6]10013test { try toUnicodeFail("8\xf0\x90\xb9\xa3\xef\xbc\x8e\xf0\x91\x8d\xa8"); } // [B1, V6]
10014test { try toAsciiFail("8\xf0\x90\xb9\xa3\xef\xbc\x8e\xf0\x91\x8d\xa8", false); } // [B1, V6]
10015test { try toAsciiFail("8\xf0\x90\xb9\xa3\xef\xbc\x8e\xf0\x91\x8d\xa8", true); } // [B1, V6]
4116test { try toUnicodeFail("8\xf0\x90\xb9\xa3.\xf0\x91\x8d\xa8"); } // [B1, V6]10016test { try toUnicodeFail("8\xf0\x90\xb9\xa3.\xf0\x91\x8d\xa8"); } // [B1, V6]
10017test { try toAsciiFail("8\xf0\x90\xb9\xa3.\xf0\x91\x8d\xa8", false); } // [B1, V6]
10018test { try toAsciiFail("8\xf0\x90\xb9\xa3.\xf0\x91\x8d\xa8", true); } // [B1, V6]
4117test { try toUnicodeFail("xn--8-d26i.xn--0p1d"); } // [B1, V6]10019test { try toUnicodeFail("xn--8-d26i.xn--0p1d"); } // [B1, V6]
10020test { try toAsciiFail("xn--8-d26i.xn--0p1d", false); } // [B1, V6]
10021test { try toAsciiFail("xn--8-d26i.xn--0p1d", true); } // [B1, V6]
4118test { try toUnicodeFail("\xe2\x8f\xb9\xf0\x90\xa7\x80\xef\xbc\x8e\xf0\x90\xab\xaf"); } // [B1]10022test { try toUnicodeFail("\xe2\x8f\xb9\xf0\x90\xa7\x80\xef\xbc\x8e\xf0\x90\xab\xaf"); } // [B1]
10023test { try toAsciiFail("\xe2\x8f\xb9\xf0\x90\xa7\x80\xef\xbc\x8e\xf0\x90\xab\xaf", false); } // [B1]
10024test { try toAsciiFail("\xe2\x8f\xb9\xf0\x90\xa7\x80\xef\xbc\x8e\xf0\x90\xab\xaf", true); } // [B1]
4119test { try toUnicodeFail("\xe2\x8f\xb9\xf0\x90\xa7\x80.\xf0\x90\xab\xaf"); } // [B1]10025test { try toUnicodeFail("\xe2\x8f\xb9\xf0\x90\xa7\x80.\xf0\x90\xab\xaf"); } // [B1]
10026test { try toAsciiFail("\xe2\x8f\xb9\xf0\x90\xa7\x80.\xf0\x90\xab\xaf", false); } // [B1]
10027test { try toAsciiFail("\xe2\x8f\xb9\xf0\x90\xa7\x80.\xf0\x90\xab\xaf", true); } // [B1]
4120test { try toUnicodeFail("xn--qoh9161g.xn--1x9c"); } // [B1]10028test { try toUnicodeFail("xn--qoh9161g.xn--1x9c"); } // [B1]
10029test { try toAsciiFail("xn--qoh9161g.xn--1x9c", false); } // [B1]
10030test { try toAsciiFail("xn--qoh9161g.xn--1x9c", true); } // [B1]
4121test { try toUnicodeFail("\xf0\x9e\xa4\xba\xdf\x8c4\xef\xbc\x8e\xe2\x80\x8d"); } // [B1, C2]10031test { try toUnicodeFail("\xf0\x9e\xa4\xba\xdf\x8c4\xef\xbc\x8e\xe2\x80\x8d"); } // [B1, C2]
10032test { try toAsciiFail("\xf0\x9e\xa4\xba\xdf\x8c4\xef\xbc\x8e\xe2\x80\x8d", false); } // [B1, C2]
10033test { try toAsciiFail("\xf0\x9e\xa4\xba\xdf\x8c4\xef\xbc\x8e\xe2\x80\x8d", true); } // [A4_2]
4122test { try toUnicodeFail("\xf0\x9e\xa4\xba\xdf\x8c4.\xe2\x80\x8d"); } // [B1, C2]10034test { try toUnicodeFail("\xf0\x9e\xa4\xba\xdf\x8c4.\xe2\x80\x8d"); } // [B1, C2]
10035test { try toAsciiFail("\xf0\x9e\xa4\xba\xdf\x8c4.\xe2\x80\x8d", false); } // [B1, C2]
10036test { try toAsciiFail("\xf0\x9e\xa4\xba\xdf\x8c4.\xe2\x80\x8d", true); } // [A4_2]
4123test { try toUnicodeFail("\xf0\x9e\xa4\x98\xdf\x8c4.\xe2\x80\x8d"); } // [B1, C2]10037test { try toUnicodeFail("\xf0\x9e\xa4\x98\xdf\x8c4.\xe2\x80\x8d"); } // [B1, C2]
10038test { try toAsciiFail("\xf0\x9e\xa4\x98\xdf\x8c4.\xe2\x80\x8d", false); } // [B1, C2]
10039test { try toAsciiFail("\xf0\x9e\xa4\x98\xdf\x8c4.\xe2\x80\x8d", true); } // [A4_2]
4124test { try toUnicodePass("xn--4-0bd15808a.", "\xf0\x9e\xa4\xba\xdf\x8c4."); }10040test { try toUnicodePass("xn--4-0bd15808a.", "\xf0\x9e\xa4\xba\xdf\x8c4."); }
10041test { try toAsciiFail("xn--4-0bd15808a.", false); } // [A4_2]
10042test { try toAsciiFail("xn--4-0bd15808a.", true); } // [A4_2]
4125test { try toUnicodePass("\xf0\x9e\xa4\xba\xdf\x8c4.", "\xf0\x9e\xa4\xba\xdf\x8c4."); }10043test { try toUnicodePass("\xf0\x9e\xa4\xba\xdf\x8c4.", "\xf0\x9e\xa4\xba\xdf\x8c4."); }
10044test { try toAsciiFail("\xf0\x9e\xa4\xba\xdf\x8c4.", false); } // [A4_2]
10045test { try toAsciiFail("\xf0\x9e\xa4\xba\xdf\x8c4.", true); } // [A4_2]
4126test { try toUnicodePass("\xf0\x9e\xa4\x98\xdf\x8c4.", "\xf0\x9e\xa4\xba\xdf\x8c4."); }10046test { try toUnicodePass("\xf0\x9e\xa4\x98\xdf\x8c4.", "\xf0\x9e\xa4\xba\xdf\x8c4."); }
10047test { try toAsciiFail("\xf0\x9e\xa4\x98\xdf\x8c4.", false); } // [A4_2]
10048test { try toAsciiFail("\xf0\x9e\xa4\x98\xdf\x8c4.", true); } // [A4_2]
4127test { try toUnicodeFail("xn--4-0bd15808a.xn--1ug"); } // [B1, C2]10049test { try toUnicodeFail("xn--4-0bd15808a.xn--1ug"); } // [B1, C2]
10050test { try toAsciiFail("xn--4-0bd15808a.xn--1ug", false); } // [B1, C2]
10051test { try toAsciiFail("xn--4-0bd15808a.xn--1ug", true); } // [B1, C2]
4128test { try toUnicodeFail("\xf0\x9e\xa4\x98\xdf\x8c4\xef\xbc\x8e\xe2\x80\x8d"); } // [B1, C2]10052test { try toUnicodeFail("\xf0\x9e\xa4\x98\xdf\x8c4\xef\xbc\x8e\xe2\x80\x8d"); } // [B1, C2]
10053test { try toAsciiFail("\xf0\x9e\xa4\x98\xdf\x8c4\xef\xbc\x8e\xe2\x80\x8d", false); } // [B1, C2]
10054test { try toAsciiFail("\xf0\x9e\xa4\x98\xdf\x8c4\xef\xbc\x8e\xe2\x80\x8d", true); } // [A4_2]
4129test { try toUnicodeFail("\xe2\x92\x97\xe0\xa6\x81\xe2\x83\xaf-.\xe0\xa3\xa2\xe2\x80\xa2"); } // [B1, V3, V7]10055test { try toUnicodeFail("\xe2\x92\x97\xe0\xa6\x81\xe2\x83\xaf-.\xe0\xa3\xa2\xe2\x80\xa2"); } // [B1, V3, V7]
10056test { try toAsciiFail("\xe2\x92\x97\xe0\xa6\x81\xe2\x83\xaf-.\xe0\xa3\xa2\xe2\x80\xa2", false); } // [B1, V3, V7]
10057test { try toAsciiFail("\xe2\x92\x97\xe0\xa6\x81\xe2\x83\xaf-.\xe0\xa3\xa2\xe2\x80\xa2", true); } // [B1, V3, V7]
4130test { try toUnicodeFail("16.\xe0\xa6\x81\xe2\x83\xaf-.\xe0\xa3\xa2\xe2\x80\xa2"); } // [B1, V3, V6, V7]10058test { try toUnicodeFail("16.\xe0\xa6\x81\xe2\x83\xaf-.\xe0\xa3\xa2\xe2\x80\xa2"); } // [B1, V3, V6, V7]
10059test { try toAsciiFail("16.\xe0\xa6\x81\xe2\x83\xaf-.\xe0\xa3\xa2\xe2\x80\xa2", false); } // [B1, V3, V6, V7]
10060test { try toAsciiFail("16.\xe0\xa6\x81\xe2\x83\xaf-.\xe0\xa3\xa2\xe2\x80\xa2", true); } // [B1, V3, V6, V7]
4131test { try toUnicodeFail("16.xn----z0d801p.xn--l0b810j"); } // [B1, V3, V6, V7]10061test { try toUnicodeFail("16.xn----z0d801p.xn--l0b810j"); } // [B1, V3, V6, V7]
10062test { try toAsciiFail("16.xn----z0d801p.xn--l0b810j", false); } // [B1, V3, V6, V7]
10063test { try toAsciiFail("16.xn----z0d801p.xn--l0b810j", true); } // [B1, V3, V6, V7]
4132test { try toUnicodeFail("xn----z0d801p6kd.xn--l0b810j"); } // [B1, V3, V7]10064test { try toUnicodeFail("xn----z0d801p6kd.xn--l0b810j"); } // [B1, V3, V7]
10065test { try toAsciiFail("xn----z0d801p6kd.xn--l0b810j", false); } // [B1, V3, V7]
10066test { try toAsciiFail("xn----z0d801p6kd.xn--l0b810j", true); } // [B1, V3, V7]
4133test { try toUnicodeFail("-\xef\xbd\xa1\xe4\x8f\x9b"); } // [V3]10067test { try toUnicodeFail("-\xef\xbd\xa1\xe4\x8f\x9b"); } // [V3]
10068test { try toAsciiFail("-\xef\xbd\xa1\xe4\x8f\x9b", false); } // [V3]
10069test { try toAsciiFail("-\xef\xbd\xa1\xe4\x8f\x9b", true); } // [V3]
4134test { try toUnicodeFail("-\xe3\x80\x82\xe4\x8f\x9b"); } // [V3]10070test { try toUnicodeFail("-\xe3\x80\x82\xe4\x8f\x9b"); } // [V3]
10071test { try toAsciiFail("-\xe3\x80\x82\xe4\x8f\x9b", false); } // [V3]
10072test { try toAsciiFail("-\xe3\x80\x82\xe4\x8f\x9b", true); } // [V3]
4135test { try toUnicodeFail("-.xn--xco"); } // [V3]10073test { try toUnicodeFail("-.xn--xco"); } // [V3]
10074test { try toAsciiFail("-.xn--xco", false); } // [V3]
10075test { try toAsciiFail("-.xn--xco", true); } // [V3]
4136test { try toUnicodeFail("\xe2\x80\x8c\xf1\x92\x83\xa0\xef\xbc\x8e\xe2\x80\x8d"); } // [C1, C2, V7]10076test { try toUnicodeFail("\xe2\x80\x8c\xf1\x92\x83\xa0\xef\xbc\x8e\xe2\x80\x8d"); } // [C1, C2, V7]
10077test { try toAsciiFail("\xe2\x80\x8c\xf1\x92\x83\xa0\xef\xbc\x8e\xe2\x80\x8d", false); } // [C1, C2, V7]
10078test { try toAsciiFail("\xe2\x80\x8c\xf1\x92\x83\xa0\xef\xbc\x8e\xe2\x80\x8d", true); } // [V7, A4_2]
4137test { try toUnicodeFail("\xe2\x80\x8c\xf1\x92\x83\xa0.\xe2\x80\x8d"); } // [C1, C2, V7]10079test { try toUnicodeFail("\xe2\x80\x8c\xf1\x92\x83\xa0.\xe2\x80\x8d"); } // [C1, C2, V7]
10080test { try toAsciiFail("\xe2\x80\x8c\xf1\x92\x83\xa0.\xe2\x80\x8d", false); } // [C1, C2, V7]
10081test { try toAsciiFail("\xe2\x80\x8c\xf1\x92\x83\xa0.\xe2\x80\x8d", true); } // [V7, A4_2]
4138test { try toUnicodeFail("xn--dj8y."); } // [V7]10082test { try toUnicodeFail("xn--dj8y."); } // [V7]
10083test { try toAsciiFail("xn--dj8y.", false); } // [V7, A4_2]
10084test { try toAsciiFail("xn--dj8y.", true); } // [V7, A4_2]
4139test { try toUnicodeFail("xn--0ugz7551c.xn--1ug"); } // [C1, C2, V7]10085test { try toUnicodeFail("xn--0ugz7551c.xn--1ug"); } // [C1, C2, V7]
10086test { try toAsciiFail("xn--0ugz7551c.xn--1ug", false); } // [C1, C2, V7]
10087test { try toAsciiFail("xn--0ugz7551c.xn--1ug", true); } // [C1, C2, V7]
4140test { try toUnicodeFail("\xe2\x92\x88\xe2\x93\xb0\xf3\xa5\xa3\x87\xef\xbd\xa1\xf0\x90\xb9\xa0\xe2\x80\x8d\xf2\x97\xb7\xa6\xe1\x82\xb5"); } // [B1, C2, V7]10088test { try toUnicodeFail("\xe2\x92\x88\xe2\x93\xb0\xf3\xa5\xa3\x87\xef\xbd\xa1\xf0\x90\xb9\xa0\xe2\x80\x8d\xf2\x97\xb7\xa6\xe1\x82\xb5"); } // [B1, C2, V7]
10089test { try toAsciiFail("\xe2\x92\x88\xe2\x93\xb0\xf3\xa5\xa3\x87\xef\xbd\xa1\xf0\x90\xb9\xa0\xe2\x80\x8d\xf2\x97\xb7\xa6\xe1\x82\xb5", false); } // [B1, C2, V7]
10090test { try toAsciiFail("\xe2\x92\x88\xe2\x93\xb0\xf3\xa5\xa3\x87\xef\xbd\xa1\xf0\x90\xb9\xa0\xe2\x80\x8d\xf2\x97\xb7\xa6\xe1\x82\xb5", true); } // [B1, V7]
4141test { try toUnicodeFail("1.\xe2\x93\xb0\xf3\xa5\xa3\x87\xe3\x80\x82\xf0\x90\xb9\xa0\xe2\x80\x8d\xf2\x97\xb7\xa6\xe1\x82\xb5"); } // [B1, C2, V7]10091test { try toUnicodeFail("1.\xe2\x93\xb0\xf3\xa5\xa3\x87\xe3\x80\x82\xf0\x90\xb9\xa0\xe2\x80\x8d\xf2\x97\xb7\xa6\xe1\x82\xb5"); } // [B1, C2, V7]
10092test { try toAsciiFail("1.\xe2\x93\xb0\xf3\xa5\xa3\x87\xe3\x80\x82\xf0\x90\xb9\xa0\xe2\x80\x8d\xf2\x97\xb7\xa6\xe1\x82\xb5", false); } // [B1, C2, V7]
10093test { try toAsciiFail("1.\xe2\x93\xb0\xf3\xa5\xa3\x87\xe3\x80\x82\xf0\x90\xb9\xa0\xe2\x80\x8d\xf2\x97\xb7\xa6\xe1\x82\xb5", true); } // [B1, V7]
4142test { try toUnicodeFail("1.\xe2\x93\xb0\xf3\xa5\xa3\x87\xe3\x80\x82\xf0\x90\xb9\xa0\xe2\x80\x8d\xf2\x97\xb7\xa6\xe2\xb4\x95"); } // [B1, C2, V7]10094test { try toUnicodeFail("1.\xe2\x93\xb0\xf3\xa5\xa3\x87\xe3\x80\x82\xf0\x90\xb9\xa0\xe2\x80\x8d\xf2\x97\xb7\xa6\xe2\xb4\x95"); } // [B1, C2, V7]
10095test { try toAsciiFail("1.\xe2\x93\xb0\xf3\xa5\xa3\x87\xe3\x80\x82\xf0\x90\xb9\xa0\xe2\x80\x8d\xf2\x97\xb7\xa6\xe2\xb4\x95", false); } // [B1, C2, V7]
10096test { try toAsciiFail("1.\xe2\x93\xb0\xf3\xa5\xa3\x87\xe3\x80\x82\xf0\x90\xb9\xa0\xe2\x80\x8d\xf2\x97\xb7\xa6\xe2\xb4\x95", true); } // [B1, V7]
4143test { try toUnicodeFail("1.xn--svh00804k.xn--dljv223ee5t2d"); } // [B1, V7]10097test { try toUnicodeFail("1.xn--svh00804k.xn--dljv223ee5t2d"); } // [B1, V7]
10098test { try toAsciiFail("1.xn--svh00804k.xn--dljv223ee5t2d", false); } // [B1, V7]
10099test { try toAsciiFail("1.xn--svh00804k.xn--dljv223ee5t2d", true); } // [B1, V7]
4144test { try toUnicodeFail("1.xn--svh00804k.xn--1ug352csp0psg45e"); } // [B1, C2, V7]10100test { try toUnicodeFail("1.xn--svh00804k.xn--1ug352csp0psg45e"); } // [B1, C2, V7]
10101test { try toAsciiFail("1.xn--svh00804k.xn--1ug352csp0psg45e", false); } // [B1, C2, V7]
10102test { try toAsciiFail("1.xn--svh00804k.xn--1ug352csp0psg45e", true); } // [B1, C2, V7]
4145test { try toUnicodeFail("\xe2\x92\x88\xe2\x93\xb0\xf3\xa5\xa3\x87\xef\xbd\xa1\xf0\x90\xb9\xa0\xe2\x80\x8d\xf2\x97\xb7\xa6\xe2\xb4\x95"); } // [B1, C2, V7]10103test { try toUnicodeFail("\xe2\x92\x88\xe2\x93\xb0\xf3\xa5\xa3\x87\xef\xbd\xa1\xf0\x90\xb9\xa0\xe2\x80\x8d\xf2\x97\xb7\xa6\xe2\xb4\x95"); } // [B1, C2, V7]
10104test { try toAsciiFail("\xe2\x92\x88\xe2\x93\xb0\xf3\xa5\xa3\x87\xef\xbd\xa1\xf0\x90\xb9\xa0\xe2\x80\x8d\xf2\x97\xb7\xa6\xe2\xb4\x95", false); } // [B1, C2, V7]
10105test { try toAsciiFail("\xe2\x92\x88\xe2\x93\xb0\xf3\xa5\xa3\x87\xef\xbd\xa1\xf0\x90\xb9\xa0\xe2\x80\x8d\xf2\x97\xb7\xa6\xe2\xb4\x95", true); } // [B1, V7]
4146test { try toUnicodeFail("xn--tsh0nz9380h.xn--dljv223ee5t2d"); } // [B1, V7]10106test { try toUnicodeFail("xn--tsh0nz9380h.xn--dljv223ee5t2d"); } // [B1, V7]
10107test { try toAsciiFail("xn--tsh0nz9380h.xn--dljv223ee5t2d", false); } // [B1, V7]
10108test { try toAsciiFail("xn--tsh0nz9380h.xn--dljv223ee5t2d", true); } // [B1, V7]
4147test { try toUnicodeFail("xn--tsh0nz9380h.xn--1ug352csp0psg45e"); } // [B1, C2, V7]10109test { try toUnicodeFail("xn--tsh0nz9380h.xn--1ug352csp0psg45e"); } // [B1, C2, V7]
10110test { try toAsciiFail("xn--tsh0nz9380h.xn--1ug352csp0psg45e", false); } // [B1, C2, V7]
10111test { try toAsciiFail("xn--tsh0nz9380h.xn--1ug352csp0psg45e", true); } // [B1, C2, V7]
4148test { try toUnicodeFail("1.xn--svh00804k.xn--tnd1990ke579c"); } // [B1, V7]10112test { try toUnicodeFail("1.xn--svh00804k.xn--tnd1990ke579c"); } // [B1, V7]
10113test { try toAsciiFail("1.xn--svh00804k.xn--tnd1990ke579c", false); } // [B1, V7]
10114test { try toAsciiFail("1.xn--svh00804k.xn--tnd1990ke579c", true); } // [B1, V7]
4149test { try toUnicodeFail("1.xn--svh00804k.xn--tnd969erj4psgl3e"); } // [B1, C2, V7]10115test { try toUnicodeFail("1.xn--svh00804k.xn--tnd969erj4psgl3e"); } // [B1, C2, V7]
10116test { try toAsciiFail("1.xn--svh00804k.xn--tnd969erj4psgl3e", false); } // [B1, C2, V7]
10117test { try toAsciiFail("1.xn--svh00804k.xn--tnd969erj4psgl3e", true); } // [B1, C2, V7]
4150test { try toUnicodeFail("xn--tsh0nz9380h.xn--tnd1990ke579c"); } // [B1, V7]10118test { try toUnicodeFail("xn--tsh0nz9380h.xn--tnd1990ke579c"); } // [B1, V7]
10119test { try toAsciiFail("xn--tsh0nz9380h.xn--tnd1990ke579c", false); } // [B1, V7]
10120test { try toAsciiFail("xn--tsh0nz9380h.xn--tnd1990ke579c", true); } // [B1, V7]
4151test { try toUnicodeFail("xn--tsh0nz9380h.xn--tnd969erj4psgl3e"); } // [B1, C2, V7]10121test { try toUnicodeFail("xn--tsh0nz9380h.xn--tnd969erj4psgl3e"); } // [B1, C2, V7]
10122test { try toAsciiFail("xn--tsh0nz9380h.xn--tnd969erj4psgl3e", false); } // [B1, C2, V7]
10123test { try toAsciiFail("xn--tsh0nz9380h.xn--tnd969erj4psgl3e", true); } // [B1, C2, V7]
4152test { try toUnicodeFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-\xc3\x9f\xef\xbd\xa1\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad"); } // [B1, B2, B3, V6, V7]10124test { try toUnicodeFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-\xc3\x9f\xef\xbd\xa1\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad"); } // [B1, B2, B3, V6, V7]
10125test { try toAsciiFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-\xc3\x9f\xef\xbd\xa1\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad", false); } // [B1, B2, B3, V6, V7]
10126test { try toAsciiFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-\xc3\x9f\xef\xbd\xa1\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad", true); } // [B1, B2, B3, V6, V7]
4153test { try toUnicodeFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-\xc3\x9f\xe3\x80\x82\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad"); } // [B1, B2, B3, V6, V7]10127test { try toUnicodeFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-\xc3\x9f\xe3\x80\x82\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad"); } // [B1, B2, B3, V6, V7]
10128test { try toAsciiFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-\xc3\x9f\xe3\x80\x82\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad", false); } // [B1, B2, B3, V6, V7]
10129test { try toAsciiFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-\xc3\x9f\xe3\x80\x82\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad", true); } // [B1, B2, B3, V6, V7]
4154test { try toUnicodeFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-SS\xe3\x80\x82\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad"); } // [B1, B2, B3, V6, V7]10130test { try toUnicodeFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-SS\xe3\x80\x82\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad"); } // [B1, B2, B3, V6, V7]
10131test { try toAsciiFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-SS\xe3\x80\x82\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad", false); } // [B1, B2, B3, V6, V7]
10132test { try toAsciiFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-SS\xe3\x80\x82\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad", true); } // [B1, B2, B3, V6, V7]
4155test { try toUnicodeFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-ss\xe3\x80\x82\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad"); } // [B1, B2, B3, V6, V7]10133test { try toUnicodeFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-ss\xe3\x80\x82\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad"); } // [B1, B2, B3, V6, V7]
10134test { try toAsciiFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-ss\xe3\x80\x82\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad", false); } // [B1, B2, B3, V6, V7]
10135test { try toAsciiFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-ss\xe3\x80\x82\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad", true); } // [B1, B2, B3, V6, V7]
4156test { try toUnicodeFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-Ss\xe3\x80\x82\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad"); } // [B1, B2, B3, V6, V7]10136test { try toUnicodeFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-Ss\xe3\x80\x82\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad"); } // [B1, B2, B3, V6, V7]
10137test { try toAsciiFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-Ss\xe3\x80\x82\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad", false); } // [B1, B2, B3, V6, V7]
10138test { try toAsciiFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-Ss\xe3\x80\x82\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad", true); } // [B1, B2, B3, V6, V7]
4157test { try toUnicodeFail("xn---ss-21t18904a.xn--jfb197i791bi6x4c"); } // [B1, B2, B3, V6, V7]10139test { try toUnicodeFail("xn---ss-21t18904a.xn--jfb197i791bi6x4c"); } // [B1, B2, B3, V6, V7]
10140test { try toAsciiFail("xn---ss-21t18904a.xn--jfb197i791bi6x4c", false); } // [B1, B2, B3, V6, V7]
10141test { try toAsciiFail("xn---ss-21t18904a.xn--jfb197i791bi6x4c", true); } // [B1, B2, B3, V6, V7]
4158test { try toUnicodeFail("xn----qfa310pg973b.xn--jfb197i791bi6x4c"); } // [B1, B2, B3, V6, V7]10142test { try toUnicodeFail("xn----qfa310pg973b.xn--jfb197i791bi6x4c"); } // [B1, B2, B3, V6, V7]
10143test { try toAsciiFail("xn----qfa310pg973b.xn--jfb197i791bi6x4c", false); } // [B1, B2, B3, V6, V7]
10144test { try toAsciiFail("xn----qfa310pg973b.xn--jfb197i791bi6x4c", true); } // [B1, B2, B3, V6, V7]
4159test { try toUnicodeFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-SS\xef\xbd\xa1\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad"); } // [B1, B2, B3, V6, V7]10145test { try toUnicodeFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-SS\xef\xbd\xa1\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad"); } // [B1, B2, B3, V6, V7]
10146test { try toAsciiFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-SS\xef\xbd\xa1\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad", false); } // [B1, B2, B3, V6, V7]
10147test { try toAsciiFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-SS\xef\xbd\xa1\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad", true); } // [B1, B2, B3, V6, V7]
4160test { try toUnicodeFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-ss\xef\xbd\xa1\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad"); } // [B1, B2, B3, V6, V7]10148test { try toUnicodeFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-ss\xef\xbd\xa1\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad"); } // [B1, B2, B3, V6, V7]
10149test { try toAsciiFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-ss\xef\xbd\xa1\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad", false); } // [B1, B2, B3, V6, V7]
10150test { try toAsciiFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-ss\xef\xbd\xa1\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad", true); } // [B1, B2, B3, V6, V7]
4161test { try toUnicodeFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-Ss\xef\xbd\xa1\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad"); } // [B1, B2, B3, V6, V7]10151test { try toUnicodeFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-Ss\xef\xbd\xa1\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad"); } // [B1, B2, B3, V6, V7]
10152test { try toAsciiFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-Ss\xef\xbd\xa1\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad", false); } // [B1, B2, B3, V6, V7]
10153test { try toAsciiFail("\xf0\x9e\xa0\x8a\xe1\xa0\xae-Ss\xef\xbd\xa1\xe1\xb3\x90\xe5\x8a\xb9\xd8\x81\xf0\xb7\xa3\xad", true); } // [B1, B2, B3, V6, V7]
4162test { try toUnicodeFail("\xf0\x91\x87\x80.\xf3\xa0\xa8\xb1"); } // [V6, V7]10154test { try toUnicodeFail("\xf0\x91\x87\x80.\xf3\xa0\xa8\xb1"); } // [V6, V7]
10155test { try toAsciiFail("\xf0\x91\x87\x80.\xf3\xa0\xa8\xb1", false); } // [V6, V7]
10156test { try toAsciiFail("\xf0\x91\x87\x80.\xf3\xa0\xa8\xb1", true); } // [V6, V7]
4163test { try toUnicodeFail("xn--wd1d.xn--k946e"); } // [V6, V7]10157test { try toUnicodeFail("xn--wd1d.xn--k946e"); } // [V6, V7]
10158test { try toAsciiFail("xn--wd1d.xn--k946e", false); } // [V6, V7]
10159test { try toAsciiFail("xn--wd1d.xn--k946e", true); } // [V6, V7]
4164test { try toUnicodeFail("\xe2\x90\x923\xef\xae\x88\xef\xbd\xa1\xf0\x9d\x9f\x98\xf0\x90\xa8\xbf\xf0\x90\xb9\x86"); } // [B1, V7]10160test { try toUnicodeFail("\xe2\x90\x923\xef\xae\x88\xef\xbd\xa1\xf0\x9d\x9f\x98\xf0\x90\xa8\xbf\xf0\x90\xb9\x86"); } // [B1, V7]
10161test { try toAsciiFail("\xe2\x90\x923\xef\xae\x88\xef\xbd\xa1\xf0\x9d\x9f\x98\xf0\x90\xa8\xbf\xf0\x90\xb9\x86", false); } // [B1, V7]
10162test { try toAsciiFail("\xe2\x90\x923\xef\xae\x88\xef\xbd\xa1\xf0\x9d\x9f\x98\xf0\x90\xa8\xbf\xf0\x90\xb9\x86", true); } // [B1, V7]
4165test { try toUnicodeFail("\xe2\x90\x923\xda\x88\xe3\x80\x820\xf0\x90\xa8\xbf\xf0\x90\xb9\x86"); } // [B1, V7]10163test { try toUnicodeFail("\xe2\x90\x923\xda\x88\xe3\x80\x820\xf0\x90\xa8\xbf\xf0\x90\xb9\x86"); } // [B1, V7]
10164test { try toAsciiFail("\xe2\x90\x923\xda\x88\xe3\x80\x820\xf0\x90\xa8\xbf\xf0\x90\xb9\x86", false); } // [B1, V7]
10165test { try toAsciiFail("\xe2\x90\x923\xda\x88\xe3\x80\x820\xf0\x90\xa8\xbf\xf0\x90\xb9\x86", true); } // [B1, V7]
4166test { try toUnicodeFail("xn--3-jsc897t.xn--0-sc5iy3h"); } // [B1, V7]10166test { try toUnicodeFail("xn--3-jsc897t.xn--0-sc5iy3h"); } // [B1, V7]
10167test { try toAsciiFail("xn--3-jsc897t.xn--0-sc5iy3h", false); } // [B1, V7]
10168test { try toAsciiFail("xn--3-jsc897t.xn--0-sc5iy3h", true); } // [B1, V7]
4167test { try toUnicodeFail("\xdd\xab\xef\xbc\x96\xe0\xaa\x81\xe0\xa2\xa6\xe3\x80\x82\xe1\xb7\xa3"); } // [B1, V6]10169test { try toUnicodeFail("\xdd\xab\xef\xbc\x96\xe0\xaa\x81\xe0\xa2\xa6\xe3\x80\x82\xe1\xb7\xa3"); } // [B1, V6]
10170test { try toAsciiFail("\xdd\xab\xef\xbc\x96\xe0\xaa\x81\xe0\xa2\xa6\xe3\x80\x82\xe1\xb7\xa3", false); } // [B1, V6]
10171test { try toAsciiFail("\xdd\xab\xef\xbc\x96\xe0\xaa\x81\xe0\xa2\xa6\xe3\x80\x82\xe1\xb7\xa3", true); } // [B1, V6]
4168test { try toUnicodeFail("\xdd\xab6\xe0\xaa\x81\xe0\xa2\xa6\xe3\x80\x82\xe1\xb7\xa3"); } // [B1, V6]10172test { try toUnicodeFail("\xdd\xab6\xe0\xaa\x81\xe0\xa2\xa6\xe3\x80\x82\xe1\xb7\xa3"); } // [B1, V6]
10173test { try toAsciiFail("\xdd\xab6\xe0\xaa\x81\xe0\xa2\xa6\xe3\x80\x82\xe1\xb7\xa3", false); } // [B1, V6]
10174test { try toAsciiFail("\xdd\xab6\xe0\xaa\x81\xe0\xa2\xa6\xe3\x80\x82\xe1\xb7\xa3", true); } // [B1, V6]
4169test { try toUnicodeFail("xn--6-h5c06gj6c.xn--7eg"); } // [B1, V6]10175test { try toUnicodeFail("xn--6-h5c06gj6c.xn--7eg"); } // [B1, V6]
10176test { try toAsciiFail("xn--6-h5c06gj6c.xn--7eg", false); } // [B1, V6]
10177test { try toAsciiFail("xn--6-h5c06gj6c.xn--7eg", true); } // [B1, V6]
4170test { try toUnicodeFail("\xd8\x85-\xf0\xbd\xa4\x9e\xe1\x82\xa2\xe3\x80\x82\xf2\x85\xa4\xb6\xe2\x80\x8d"); } // [B1, B6, C2, V7]10178test { try toUnicodeFail("\xd8\x85-\xf0\xbd\xa4\x9e\xe1\x82\xa2\xe3\x80\x82\xf2\x85\xa4\xb6\xe2\x80\x8d"); } // [B1, B6, C2, V7]
10179test { try toAsciiFail("\xd8\x85-\xf0\xbd\xa4\x9e\xe1\x82\xa2\xe3\x80\x82\xf2\x85\xa4\xb6\xe2\x80\x8d", false); } // [B1, B6, C2, V7]
10180test { try toAsciiFail("\xd8\x85-\xf0\xbd\xa4\x9e\xe1\x82\xa2\xe3\x80\x82\xf2\x85\xa4\xb6\xe2\x80\x8d", true); } // [B1, V7]
4171test { try toUnicodeFail("\xd8\x85-\xf0\xbd\xa4\x9e\xe2\xb4\x82\xe3\x80\x82\xf2\x85\xa4\xb6\xe2\x80\x8d"); } // [B1, B6, C2, V7]10181test { try toUnicodeFail("\xd8\x85-\xf0\xbd\xa4\x9e\xe2\xb4\x82\xe3\x80\x82\xf2\x85\xa4\xb6\xe2\x80\x8d"); } // [B1, B6, C2, V7]
10182test { try toAsciiFail("\xd8\x85-\xf0\xbd\xa4\x9e\xe2\xb4\x82\xe3\x80\x82\xf2\x85\xa4\xb6\xe2\x80\x8d", false); } // [B1, B6, C2, V7]
10183test { try toAsciiFail("\xd8\x85-\xf0\xbd\xa4\x9e\xe2\xb4\x82\xe3\x80\x82\xf2\x85\xa4\xb6\xe2\x80\x8d", true); } // [B1, V7]
4172test { try toUnicodeFail("xn----0kc8501a5399e.xn--ss06b"); } // [B1, V7]10184test { try toUnicodeFail("xn----0kc8501a5399e.xn--ss06b"); } // [B1, V7]
10185test { try toAsciiFail("xn----0kc8501a5399e.xn--ss06b", false); } // [B1, V7]
10186test { try toAsciiFail("xn----0kc8501a5399e.xn--ss06b", true); } // [B1, V7]
4173test { try toUnicodeFail("xn----0kc8501a5399e.xn--1ugy3204f"); } // [B1, B6, C2, V7]10187test { try toUnicodeFail("xn----0kc8501a5399e.xn--1ugy3204f"); } // [B1, B6, C2, V7]
10188test { try toAsciiFail("xn----0kc8501a5399e.xn--1ugy3204f", false); } // [B1, B6, C2, V7]
10189test { try toAsciiFail("xn----0kc8501a5399e.xn--1ugy3204f", true); } // [B1, B6, C2, V7]
4174test { try toUnicodeFail("xn----0kc662fc152h.xn--ss06b"); } // [B1, V7]10190test { try toUnicodeFail("xn----0kc662fc152h.xn--ss06b"); } // [B1, V7]
10191test { try toAsciiFail("xn----0kc662fc152h.xn--ss06b", false); } // [B1, V7]
10192test { try toAsciiFail("xn----0kc662fc152h.xn--ss06b", true); } // [B1, V7]
4175test { try toUnicodeFail("xn----0kc662fc152h.xn--1ugy3204f"); } // [B1, B6, C2, V7]10193test { try toUnicodeFail("xn----0kc662fc152h.xn--1ugy3204f"); } // [B1, B6, C2, V7]
10194test { try toAsciiFail("xn----0kc662fc152h.xn--1ugy3204f", false); } // [B1, B6, C2, V7]
10195test { try toAsciiFail("xn----0kc662fc152h.xn--1ugy3204f", true); } // [B1, B6, C2, V7]
4176test { try toUnicodePass("\xe2\xbe\x86\xef\xbc\x8e\xea\xa1\x88\xef\xbc\x95\xe2\x89\xaf\xc3\x9f", "\xe8\x88\x8c.\xea\xa1\x885\xe2\x89\xaf\xc3\x9f"); }10196test { try toUnicodePass("\xe2\xbe\x86\xef\xbc\x8e\xea\xa1\x88\xef\xbc\x95\xe2\x89\xaf\xc3\x9f", "\xe8\x88\x8c.\xea\xa1\x885\xe2\x89\xaf\xc3\x9f"); }
4177test { try toAsciiPass("\xe2\xbe\x86\xef\xbc\x8e\xea\xa1\x88\xef\xbc\x95\xe2\x89\xaf\xc3\x9f", "xn--tc1a.xn--5-qfa988w745i", false); }10197test { try toAsciiPass("\xe2\xbe\x86\xef\xbc\x8e\xea\xa1\x88\xef\xbc\x95\xe2\x89\xaf\xc3\x9f", "xn--tc1a.xn--5-qfa988w745i", false); }
4178test { try toAsciiPass("\xe2\xbe\x86\xef\xbc\x8e\xea\xa1\x88\xef\xbc\x95\xe2\x89\xaf\xc3\x9f", "xn--tc1a.xn--5ss-3m2a5009e", true); }10198test { try toAsciiPass("\xe2\xbe\x86\xef\xbc\x8e\xea\xa1\x88\xef\xbc\x95\xe2\x89\xaf\xc3\x9f", "xn--tc1a.xn--5ss-3m2a5009e", true); }
...@@ -4228,14 +10248,32 @@ test { try toUnicodePass("\xe2\xbe\x86\xef\xbc\x8e\xea\xa1\x88\xef\xbc\x95\xe2\x...@@ -4228,14 +10248,32 @@ test { try toUnicodePass("\xe2\xbe\x86\xef\xbc\x8e\xea\xa1\x88\xef\xbc\x95\xe2\x
4228test { try toAsciiPass("\xe2\xbe\x86\xef\xbc\x8e\xea\xa1\x88\xef\xbc\x95\xe2\x89\xafSs", "xn--tc1a.xn--5ss-3m2a5009e", false); }10248test { try toAsciiPass("\xe2\xbe\x86\xef\xbc\x8e\xea\xa1\x88\xef\xbc\x95\xe2\x89\xafSs", "xn--tc1a.xn--5ss-3m2a5009e", false); }
4229test { try toAsciiPass("\xe2\xbe\x86\xef\xbc\x8e\xea\xa1\x88\xef\xbc\x95\xe2\x89\xafSs", "xn--tc1a.xn--5ss-3m2a5009e", true); }10249test { try toAsciiPass("\xe2\xbe\x86\xef\xbc\x8e\xea\xa1\x88\xef\xbc\x95\xe2\x89\xafSs", "xn--tc1a.xn--5ss-3m2a5009e", true); }
4230test { try toUnicodeFail("\xe0\xab\x8d8\xe2\x80\x8d\xef\xbc\x8e\xf2\xbe\x82\x88\xdd\x9c"); } // [B1, B5, B6, C2, V6, V7]10250test { try toUnicodeFail("\xe0\xab\x8d8\xe2\x80\x8d\xef\xbc\x8e\xf2\xbe\x82\x88\xdd\x9c"); } // [B1, B5, B6, C2, V6, V7]
10251test { try toAsciiFail("\xe0\xab\x8d8\xe2\x80\x8d\xef\xbc\x8e\xf2\xbe\x82\x88\xdd\x9c", false); } // [B1, B5, B6, C2, V6, V7]
10252test { try toAsciiFail("\xe0\xab\x8d8\xe2\x80\x8d\xef\xbc\x8e\xf2\xbe\x82\x88\xdd\x9c", true); } // [B1, B5, B6, V6, V7]
4231test { try toUnicodeFail("\xe0\xab\x8d8\xe2\x80\x8d.\xf2\xbe\x82\x88\xdd\x9c"); } // [B1, B5, B6, C2, V6, V7]10253test { try toUnicodeFail("\xe0\xab\x8d8\xe2\x80\x8d.\xf2\xbe\x82\x88\xdd\x9c"); } // [B1, B5, B6, C2, V6, V7]
10254test { try toAsciiFail("\xe0\xab\x8d8\xe2\x80\x8d.\xf2\xbe\x82\x88\xdd\x9c", false); } // [B1, B5, B6, C2, V6, V7]
10255test { try toAsciiFail("\xe0\xab\x8d8\xe2\x80\x8d.\xf2\xbe\x82\x88\xdd\x9c", true); } // [B1, B5, B6, V6, V7]
4232test { try toUnicodeFail("xn--8-yke.xn--gpb79046m"); } // [B1, B5, B6, V6, V7]10256test { try toUnicodeFail("xn--8-yke.xn--gpb79046m"); } // [B1, B5, B6, V6, V7]
10257test { try toAsciiFail("xn--8-yke.xn--gpb79046m", false); } // [B1, B5, B6, V6, V7]
10258test { try toAsciiFail("xn--8-yke.xn--gpb79046m", true); } // [B1, B5, B6, V6, V7]
4233test { try toUnicodeFail("xn--8-yke534n.xn--gpb79046m"); } // [B1, B5, B6, C2, V6, V7]10259test { try toUnicodeFail("xn--8-yke534n.xn--gpb79046m"); } // [B1, B5, B6, C2, V6, V7]
10260test { try toAsciiFail("xn--8-yke534n.xn--gpb79046m", false); } // [B1, B5, B6, C2, V6, V7]
10261test { try toAsciiFail("xn--8-yke534n.xn--gpb79046m", true); } // [B1, B5, B6, C2, V6, V7]
4234test { try toUnicodeFail("\xf2\xb8\xb7\x86\xe0\xa9\xb0\xe2\x89\xae\xf2\xb9\x93\x99\xef\xbc\x8e\xf1\x9e\x8e\xa7\xe2\x81\xb7\xf3\xa0\xaf\x99\xda\xb6"); } // [B5, B6, V7]10262test { try toUnicodeFail("\xf2\xb8\xb7\x86\xe0\xa9\xb0\xe2\x89\xae\xf2\xb9\x93\x99\xef\xbc\x8e\xf1\x9e\x8e\xa7\xe2\x81\xb7\xf3\xa0\xaf\x99\xda\xb6"); } // [B5, B6, V7]
10263test { try toAsciiFail("\xf2\xb8\xb7\x86\xe0\xa9\xb0\xe2\x89\xae\xf2\xb9\x93\x99\xef\xbc\x8e\xf1\x9e\x8e\xa7\xe2\x81\xb7\xf3\xa0\xaf\x99\xda\xb6", false); } // [B5, B6, V7]
10264test { try toAsciiFail("\xf2\xb8\xb7\x86\xe0\xa9\xb0\xe2\x89\xae\xf2\xb9\x93\x99\xef\xbc\x8e\xf1\x9e\x8e\xa7\xe2\x81\xb7\xf3\xa0\xaf\x99\xda\xb6", true); } // [B5, B6, V7]
4235test { try toUnicodeFail("\xf2\xb8\xb7\x86\xe0\xa9\xb0<\xcc\xb8\xf2\xb9\x93\x99\xef\xbc\x8e\xf1\x9e\x8e\xa7\xe2\x81\xb7\xf3\xa0\xaf\x99\xda\xb6"); } // [B5, B6, V7]10265test { try toUnicodeFail("\xf2\xb8\xb7\x86\xe0\xa9\xb0<\xcc\xb8\xf2\xb9\x93\x99\xef\xbc\x8e\xf1\x9e\x8e\xa7\xe2\x81\xb7\xf3\xa0\xaf\x99\xda\xb6"); } // [B5, B6, V7]
10266test { try toAsciiFail("\xf2\xb8\xb7\x86\xe0\xa9\xb0<\xcc\xb8\xf2\xb9\x93\x99\xef\xbc\x8e\xf1\x9e\x8e\xa7\xe2\x81\xb7\xf3\xa0\xaf\x99\xda\xb6", false); } // [B5, B6, V7]
10267test { try toAsciiFail("\xf2\xb8\xb7\x86\xe0\xa9\xb0<\xcc\xb8\xf2\xb9\x93\x99\xef\xbc\x8e\xf1\x9e\x8e\xa7\xe2\x81\xb7\xf3\xa0\xaf\x99\xda\xb6", true); } // [B5, B6, V7]
4236test { try toUnicodeFail("\xf2\xb8\xb7\x86\xe0\xa9\xb0\xe2\x89\xae\xf2\xb9\x93\x99.\xf1\x9e\x8e\xa77\xf3\xa0\xaf\x99\xda\xb6"); } // [B5, B6, V7]10268test { try toUnicodeFail("\xf2\xb8\xb7\x86\xe0\xa9\xb0\xe2\x89\xae\xf2\xb9\x93\x99.\xf1\x9e\x8e\xa77\xf3\xa0\xaf\x99\xda\xb6"); } // [B5, B6, V7]
10269test { try toAsciiFail("\xf2\xb8\xb7\x86\xe0\xa9\xb0\xe2\x89\xae\xf2\xb9\x93\x99.\xf1\x9e\x8e\xa77\xf3\xa0\xaf\x99\xda\xb6", false); } // [B5, B6, V7]
10270test { try toAsciiFail("\xf2\xb8\xb7\x86\xe0\xa9\xb0\xe2\x89\xae\xf2\xb9\x93\x99.\xf1\x9e\x8e\xa77\xf3\xa0\xaf\x99\xda\xb6", true); } // [B5, B6, V7]
4237test { try toUnicodeFail("\xf2\xb8\xb7\x86\xe0\xa9\xb0<\xcc\xb8\xf2\xb9\x93\x99.\xf1\x9e\x8e\xa77\xf3\xa0\xaf\x99\xda\xb6"); } // [B5, B6, V7]10271test { try toUnicodeFail("\xf2\xb8\xb7\x86\xe0\xa9\xb0<\xcc\xb8\xf2\xb9\x93\x99.\xf1\x9e\x8e\xa77\xf3\xa0\xaf\x99\xda\xb6"); } // [B5, B6, V7]
10272test { try toAsciiFail("\xf2\xb8\xb7\x86\xe0\xa9\xb0<\xcc\xb8\xf2\xb9\x93\x99.\xf1\x9e\x8e\xa77\xf3\xa0\xaf\x99\xda\xb6", false); } // [B5, B6, V7]
10273test { try toAsciiFail("\xf2\xb8\xb7\x86\xe0\xa9\xb0<\xcc\xb8\xf2\xb9\x93\x99.\xf1\x9e\x8e\xa77\xf3\xa0\xaf\x99\xda\xb6", true); } // [B5, B6, V7]
4238test { try toUnicodeFail("xn--ycc893jqh38rb6fa.xn--7-5uc53836ixt41c"); } // [B5, B6, V7]10274test { try toUnicodeFail("xn--ycc893jqh38rb6fa.xn--7-5uc53836ixt41c"); } // [B5, B6, V7]
10275test { try toAsciiFail("xn--ycc893jqh38rb6fa.xn--7-5uc53836ixt41c", false); } // [B5, B6, V7]
10276test { try toAsciiFail("xn--ycc893jqh38rb6fa.xn--7-5uc53836ixt41c", true); } // [B5, B6, V7]
4239test { try toUnicodePass("\xf0\x9e\xa4\xaa.\xcf\x82", "\xf0\x9e\xa4\xaa.\xcf\x82"); }10277test { try toUnicodePass("\xf0\x9e\xa4\xaa.\xcf\x82", "\xf0\x9e\xa4\xaa.\xcf\x82"); }
4240test { try toAsciiPass("\xf0\x9e\xa4\xaa.\xcf\x82", "xn--ie6h.xn--3xa", false); }10278test { try toAsciiPass("\xf0\x9e\xa4\xaa.\xcf\x82", "xn--ie6h.xn--3xa", false); }
4241test { try toAsciiPass("\xf0\x9e\xa4\xaa.\xcf\x82", "xn--ie6h.xn--4xa", true); }10279test { try toAsciiPass("\xf0\x9e\xa4\xaa.\xcf\x82", "xn--ie6h.xn--4xa", true); }
...@@ -4262,14 +10300,19 @@ test { try toAsciiPass("\xf0\x9e\xa4\xaa.\xce\xa3", "xn--ie6h.xn--4xa", false);...@@ -4262,14 +10300,19 @@ test { try toAsciiPass("\xf0\x9e\xa4\xaa.\xce\xa3", "xn--ie6h.xn--4xa", false);
4262test { try toAsciiPass("\xf0\x9e\xa4\xaa.\xce\xa3", "xn--ie6h.xn--4xa", true); }10300test { try toAsciiPass("\xf0\x9e\xa4\xaa.\xce\xa3", "xn--ie6h.xn--4xa", true); }
4263test { try toAsciiPass("\xe2\x80\x8c\xe1\x82\xba\xef\xbd\xa1\xcf\x82", "xn--ilj.xn--4xa", true); }10301test { try toAsciiPass("\xe2\x80\x8c\xe1\x82\xba\xef\xbd\xa1\xcf\x82", "xn--ilj.xn--4xa", true); }
4264test { try toUnicodeFail("\xe2\x80\x8c\xe1\x82\xba\xef\xbd\xa1\xcf\x82"); } // [C1]10302test { try toUnicodeFail("\xe2\x80\x8c\xe1\x82\xba\xef\xbd\xa1\xcf\x82"); } // [C1]
10303test { try toAsciiFail("\xe2\x80\x8c\xe1\x82\xba\xef\xbd\xa1\xcf\x82", false); } // [C1]
4265test { try toAsciiPass("\xe2\x80\x8c\xe1\x82\xba\xe3\x80\x82\xcf\x82", "xn--ilj.xn--4xa", true); }10304test { try toAsciiPass("\xe2\x80\x8c\xe1\x82\xba\xe3\x80\x82\xcf\x82", "xn--ilj.xn--4xa", true); }
4266test { try toUnicodeFail("\xe2\x80\x8c\xe1\x82\xba\xe3\x80\x82\xcf\x82"); } // [C1]10305test { try toUnicodeFail("\xe2\x80\x8c\xe1\x82\xba\xe3\x80\x82\xcf\x82"); } // [C1]
10306test { try toAsciiFail("\xe2\x80\x8c\xe1\x82\xba\xe3\x80\x82\xcf\x82", false); } // [C1]
4267test { try toAsciiPass("\xe2\x80\x8c\xe2\xb4\x9a\xe3\x80\x82\xcf\x82", "xn--ilj.xn--4xa", true); }10307test { try toAsciiPass("\xe2\x80\x8c\xe2\xb4\x9a\xe3\x80\x82\xcf\x82", "xn--ilj.xn--4xa", true); }
4268test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\x9a\xe3\x80\x82\xcf\x82"); } // [C1]10308test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\x9a\xe3\x80\x82\xcf\x82"); } // [C1]
10309test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\x9a\xe3\x80\x82\xcf\x82", false); } // [C1]
4269test { try toAsciiPass("\xe2\x80\x8c\xe1\x82\xba\xe3\x80\x82\xce\xa3", "xn--ilj.xn--4xa", true); }10310test { try toAsciiPass("\xe2\x80\x8c\xe1\x82\xba\xe3\x80\x82\xce\xa3", "xn--ilj.xn--4xa", true); }
4270test { try toUnicodeFail("\xe2\x80\x8c\xe1\x82\xba\xe3\x80\x82\xce\xa3"); } // [C1]10311test { try toUnicodeFail("\xe2\x80\x8c\xe1\x82\xba\xe3\x80\x82\xce\xa3"); } // [C1]
10312test { try toAsciiFail("\xe2\x80\x8c\xe1\x82\xba\xe3\x80\x82\xce\xa3", false); } // [C1]
4271test { try toAsciiPass("\xe2\x80\x8c\xe2\xb4\x9a\xe3\x80\x82\xcf\x83", "xn--ilj.xn--4xa", true); }10313test { try toAsciiPass("\xe2\x80\x8c\xe2\xb4\x9a\xe3\x80\x82\xcf\x83", "xn--ilj.xn--4xa", true); }
4272test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\x9a\xe3\x80\x82\xcf\x83"); } // [C1]10314test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\x9a\xe3\x80\x82\xcf\x83"); } // [C1]
10315test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\x9a\xe3\x80\x82\xcf\x83", false); } // [C1]
4273test { try toUnicodePass("xn--ilj.xn--4xa", "\xe2\xb4\x9a.\xcf\x83"); }10316test { try toUnicodePass("xn--ilj.xn--4xa", "\xe2\xb4\x9a.\xcf\x83"); }
4274test { try toAsciiPass("xn--ilj.xn--4xa", "xn--ilj.xn--4xa", false); }10317test { try toAsciiPass("xn--ilj.xn--4xa", "xn--ilj.xn--4xa", false); }
4275test { try toAsciiPass("xn--ilj.xn--4xa", "xn--ilj.xn--4xa", true); }10318test { try toAsciiPass("xn--ilj.xn--4xa", "xn--ilj.xn--4xa", true); }
...@@ -4292,48 +10335,125 @@ test { try toUnicodePass("\xe1\x82\xba.\xcf\x83", "\xe2\xb4\x9a.\xcf\x83"); }...@@ -4292,48 +10335,125 @@ test { try toUnicodePass("\xe1\x82\xba.\xcf\x83", "\xe2\xb4\x9a.\xcf\x83"); }
4292test { try toAsciiPass("\xe1\x82\xba.\xcf\x83", "xn--ilj.xn--4xa", false); }10335test { try toAsciiPass("\xe1\x82\xba.\xcf\x83", "xn--ilj.xn--4xa", false); }
4293test { try toAsciiPass("\xe1\x82\xba.\xcf\x83", "xn--ilj.xn--4xa", true); }10336test { try toAsciiPass("\xe1\x82\xba.\xcf\x83", "xn--ilj.xn--4xa", true); }
4294test { try toUnicodeFail("xn--0ug262c.xn--4xa"); } // [C1]10337test { try toUnicodeFail("xn--0ug262c.xn--4xa"); } // [C1]
10338test { try toAsciiFail("xn--0ug262c.xn--4xa", false); } // [C1]
10339test { try toAsciiFail("xn--0ug262c.xn--4xa", true); } // [C1]
4295test { try toUnicodeFail("xn--0ug262c.xn--3xa"); } // [C1]10340test { try toUnicodeFail("xn--0ug262c.xn--3xa"); } // [C1]
10341test { try toAsciiFail("xn--0ug262c.xn--3xa", false); } // [C1]
10342test { try toAsciiFail("xn--0ug262c.xn--3xa", true); } // [C1]
4296test { try toAsciiPass("\xe2\x80\x8c\xe2\xb4\x9a\xef\xbd\xa1\xcf\x82", "xn--ilj.xn--4xa", true); }10343test { try toAsciiPass("\xe2\x80\x8c\xe2\xb4\x9a\xef\xbd\xa1\xcf\x82", "xn--ilj.xn--4xa", true); }
4297test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\x9a\xef\xbd\xa1\xcf\x82"); } // [C1]10344test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\x9a\xef\xbd\xa1\xcf\x82"); } // [C1]
10345test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\x9a\xef\xbd\xa1\xcf\x82", false); } // [C1]
4298test { try toAsciiPass("\xe2\x80\x8c\xe1\x82\xba\xef\xbd\xa1\xce\xa3", "xn--ilj.xn--4xa", true); }10346test { try toAsciiPass("\xe2\x80\x8c\xe1\x82\xba\xef\xbd\xa1\xce\xa3", "xn--ilj.xn--4xa", true); }
4299test { try toUnicodeFail("\xe2\x80\x8c\xe1\x82\xba\xef\xbd\xa1\xce\xa3"); } // [C1]10347test { try toUnicodeFail("\xe2\x80\x8c\xe1\x82\xba\xef\xbd\xa1\xce\xa3"); } // [C1]
10348test { try toAsciiFail("\xe2\x80\x8c\xe1\x82\xba\xef\xbd\xa1\xce\xa3", false); } // [C1]
4300test { try toAsciiPass("\xe2\x80\x8c\xe2\xb4\x9a\xef\xbd\xa1\xcf\x83", "xn--ilj.xn--4xa", true); }10349test { try toAsciiPass("\xe2\x80\x8c\xe2\xb4\x9a\xef\xbd\xa1\xcf\x83", "xn--ilj.xn--4xa", true); }
4301test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\x9a\xef\xbd\xa1\xcf\x83"); } // [C1]10350test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\x9a\xef\xbd\xa1\xcf\x83"); } // [C1]
10351test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\x9a\xef\xbd\xa1\xcf\x83", false); } // [C1]
4302test { try toUnicodeFail("xn--ynd.xn--4xa"); } // [V7]10352test { try toUnicodeFail("xn--ynd.xn--4xa"); } // [V7]
10353test { try toAsciiFail("xn--ynd.xn--4xa", false); } // [V7]
10354test { try toAsciiFail("xn--ynd.xn--4xa", true); } // [V7]
4303test { try toUnicodeFail("xn--ynd.xn--3xa"); } // [V7]10355test { try toUnicodeFail("xn--ynd.xn--3xa"); } // [V7]
10356test { try toAsciiFail("xn--ynd.xn--3xa", false); } // [V7]
10357test { try toAsciiFail("xn--ynd.xn--3xa", true); } // [V7]
4304test { try toUnicodeFail("xn--ynd759e.xn--4xa"); } // [C1, V7]10358test { try toUnicodeFail("xn--ynd759e.xn--4xa"); } // [C1, V7]
10359test { try toAsciiFail("xn--ynd759e.xn--4xa", false); } // [C1, V7]
10360test { try toAsciiFail("xn--ynd759e.xn--4xa", true); } // [C1, V7]
4305test { try toUnicodeFail("xn--ynd759e.xn--3xa"); } // [C1, V7]10361test { try toUnicodeFail("xn--ynd759e.xn--3xa"); } // [C1, V7]
10362test { try toAsciiFail("xn--ynd759e.xn--3xa", false); } // [C1, V7]
10363test { try toAsciiFail("xn--ynd759e.xn--3xa", true); } // [C1, V7]
4306test { try toUnicodeFail("\xf0\x9e\xa4\x83\xef\xbc\x8e\xf0\x90\xb9\xa6"); } // [B1]10364test { try toUnicodeFail("\xf0\x9e\xa4\x83\xef\xbc\x8e\xf0\x90\xb9\xa6"); } // [B1]
10365test { try toAsciiFail("\xf0\x9e\xa4\x83\xef\xbc\x8e\xf0\x90\xb9\xa6", false); } // [B1]
10366test { try toAsciiFail("\xf0\x9e\xa4\x83\xef\xbc\x8e\xf0\x90\xb9\xa6", true); } // [B1]
4307test { try toUnicodeFail("\xf0\x9e\xa4\x83.\xf0\x90\xb9\xa6"); } // [B1]10367test { try toUnicodeFail("\xf0\x9e\xa4\x83.\xf0\x90\xb9\xa6"); } // [B1]
10368test { try toAsciiFail("\xf0\x9e\xa4\x83.\xf0\x90\xb9\xa6", false); } // [B1]
10369test { try toAsciiFail("\xf0\x9e\xa4\x83.\xf0\x90\xb9\xa6", true); } // [B1]
4308test { try toUnicodeFail("\xf0\x9e\xa4\xa5.\xf0\x90\xb9\xa6"); } // [B1]10370test { try toUnicodeFail("\xf0\x9e\xa4\xa5.\xf0\x90\xb9\xa6"); } // [B1]
10371test { try toAsciiFail("\xf0\x9e\xa4\xa5.\xf0\x90\xb9\xa6", false); } // [B1]
10372test { try toAsciiFail("\xf0\x9e\xa4\xa5.\xf0\x90\xb9\xa6", true); } // [B1]
4309test { try toUnicodeFail("xn--de6h.xn--eo0d"); } // [B1]10373test { try toUnicodeFail("xn--de6h.xn--eo0d"); } // [B1]
10374test { try toAsciiFail("xn--de6h.xn--eo0d", false); } // [B1]
10375test { try toAsciiFail("xn--de6h.xn--eo0d", true); } // [B1]
4310test { try toUnicodeFail("\xf0\x9e\xa4\xa5\xef\xbc\x8e\xf0\x90\xb9\xa6"); } // [B1]10376test { try toUnicodeFail("\xf0\x9e\xa4\xa5\xef\xbc\x8e\xf0\x90\xb9\xa6"); } // [B1]
10377test { try toAsciiFail("\xf0\x9e\xa4\xa5\xef\xbc\x8e\xf0\x90\xb9\xa6", false); } // [B1]
10378test { try toAsciiFail("\xf0\x9e\xa4\xa5\xef\xbc\x8e\xf0\x90\xb9\xa6", true); } // [B1]
4311test { try toUnicodeFail("\xe2\x80\x8d\xe2\xbe\x95\xe3\x80\x82\xe2\x80\x8c\xcc\x90\xea\xa5\x93\xea\xa1\x8e"); } // [C1, C2]10379test { try toUnicodeFail("\xe2\x80\x8d\xe2\xbe\x95\xe3\x80\x82\xe2\x80\x8c\xcc\x90\xea\xa5\x93\xea\xa1\x8e"); } // [C1, C2]
10380test { try toAsciiFail("\xe2\x80\x8d\xe2\xbe\x95\xe3\x80\x82\xe2\x80\x8c\xcc\x90\xea\xa5\x93\xea\xa1\x8e", false); } // [C1, C2]
10381test { try toAsciiFail("\xe2\x80\x8d\xe2\xbe\x95\xe3\x80\x82\xe2\x80\x8c\xcc\x90\xea\xa5\x93\xea\xa1\x8e", true); } // [V6]
4312test { try toUnicodeFail("\xe2\x80\x8d\xe2\xbe\x95\xe3\x80\x82\xe2\x80\x8c\xea\xa5\x93\xcc\x90\xea\xa1\x8e"); } // [C1, C2]10382test { try toUnicodeFail("\xe2\x80\x8d\xe2\xbe\x95\xe3\x80\x82\xe2\x80\x8c\xea\xa5\x93\xcc\x90\xea\xa1\x8e"); } // [C1, C2]
10383test { try toAsciiFail("\xe2\x80\x8d\xe2\xbe\x95\xe3\x80\x82\xe2\x80\x8c\xea\xa5\x93\xcc\x90\xea\xa1\x8e", false); } // [C1, C2]
10384test { try toAsciiFail("\xe2\x80\x8d\xe2\xbe\x95\xe3\x80\x82\xe2\x80\x8c\xea\xa5\x93\xcc\x90\xea\xa1\x8e", true); } // [V6]
4313test { try toUnicodeFail("\xe2\x80\x8d\xe8\xb0\xb7\xe3\x80\x82\xe2\x80\x8c\xea\xa5\x93\xcc\x90\xea\xa1\x8e"); } // [C1, C2]10385test { try toUnicodeFail("\xe2\x80\x8d\xe8\xb0\xb7\xe3\x80\x82\xe2\x80\x8c\xea\xa5\x93\xcc\x90\xea\xa1\x8e"); } // [C1, C2]
10386test { try toAsciiFail("\xe2\x80\x8d\xe8\xb0\xb7\xe3\x80\x82\xe2\x80\x8c\xea\xa5\x93\xcc\x90\xea\xa1\x8e", false); } // [C1, C2]
10387test { try toAsciiFail("\xe2\x80\x8d\xe8\xb0\xb7\xe3\x80\x82\xe2\x80\x8c\xea\xa5\x93\xcc\x90\xea\xa1\x8e", true); } // [V6]
4314test { try toUnicodeFail("xn--6g3a.xn--0sa8175flwa"); } // [V6]10388test { try toUnicodeFail("xn--6g3a.xn--0sa8175flwa"); } // [V6]
10389test { try toAsciiFail("xn--6g3a.xn--0sa8175flwa", false); } // [V6]
10390test { try toAsciiFail("xn--6g3a.xn--0sa8175flwa", true); } // [V6]
4315test { try toUnicodeFail("xn--1ug0273b.xn--0sa359l6n7g13a"); } // [C1, C2]10391test { try toUnicodeFail("xn--1ug0273b.xn--0sa359l6n7g13a"); } // [C1, C2]
10392test { try toAsciiFail("xn--1ug0273b.xn--0sa359l6n7g13a", false); } // [C1, C2]
10393test { try toAsciiFail("xn--1ug0273b.xn--0sa359l6n7g13a", true); } // [C1, C2]
4316test { try toUnicodeFail("\xda\xaa-\xeb\x89\x94\xef\xbc\x8e\xf0\x9e\xa4\x90\xe2\x80\x8c"); } // [B2, B3, C1]10394test { try toUnicodeFail("\xda\xaa-\xeb\x89\x94\xef\xbc\x8e\xf0\x9e\xa4\x90\xe2\x80\x8c"); } // [B2, B3, C1]
10395test { try toAsciiFail("\xda\xaa-\xeb\x89\x94\xef\xbc\x8e\xf0\x9e\xa4\x90\xe2\x80\x8c", false); } // [B2, B3, C1]
10396test { try toAsciiFail("\xda\xaa-\xeb\x89\x94\xef\xbc\x8e\xf0\x9e\xa4\x90\xe2\x80\x8c", true); } // [B2, B3]
4317test { try toUnicodeFail("\xda\xaa-\xe1\x84\x82\xe1\x85\xb0\xe1\x86\xbf\xef\xbc\x8e\xf0\x9e\xa4\x90\xe2\x80\x8c"); } // [B2, B3, C1]10397test { try toUnicodeFail("\xda\xaa-\xe1\x84\x82\xe1\x85\xb0\xe1\x86\xbf\xef\xbc\x8e\xf0\x9e\xa4\x90\xe2\x80\x8c"); } // [B2, B3, C1]
10398test { try toAsciiFail("\xda\xaa-\xe1\x84\x82\xe1\x85\xb0\xe1\x86\xbf\xef\xbc\x8e\xf0\x9e\xa4\x90\xe2\x80\x8c", false); } // [B2, B3, C1]
10399test { try toAsciiFail("\xda\xaa-\xe1\x84\x82\xe1\x85\xb0\xe1\x86\xbf\xef\xbc\x8e\xf0\x9e\xa4\x90\xe2\x80\x8c", true); } // [B2, B3]
4318test { try toUnicodeFail("\xda\xaa-\xeb\x89\x94.\xf0\x9e\xa4\x90\xe2\x80\x8c"); } // [B2, B3, C1]10400test { try toUnicodeFail("\xda\xaa-\xeb\x89\x94.\xf0\x9e\xa4\x90\xe2\x80\x8c"); } // [B2, B3, C1]
10401test { try toAsciiFail("\xda\xaa-\xeb\x89\x94.\xf0\x9e\xa4\x90\xe2\x80\x8c", false); } // [B2, B3, C1]
10402test { try toAsciiFail("\xda\xaa-\xeb\x89\x94.\xf0\x9e\xa4\x90\xe2\x80\x8c", true); } // [B2, B3]
4319test { try toUnicodeFail("\xda\xaa-\xe1\x84\x82\xe1\x85\xb0\xe1\x86\xbf.\xf0\x9e\xa4\x90\xe2\x80\x8c"); } // [B2, B3, C1]10403test { try toUnicodeFail("\xda\xaa-\xe1\x84\x82\xe1\x85\xb0\xe1\x86\xbf.\xf0\x9e\xa4\x90\xe2\x80\x8c"); } // [B2, B3, C1]
10404test { try toAsciiFail("\xda\xaa-\xe1\x84\x82\xe1\x85\xb0\xe1\x86\xbf.\xf0\x9e\xa4\x90\xe2\x80\x8c", false); } // [B2, B3, C1]
10405test { try toAsciiFail("\xda\xaa-\xe1\x84\x82\xe1\x85\xb0\xe1\x86\xbf.\xf0\x9e\xa4\x90\xe2\x80\x8c", true); } // [B2, B3]
4320test { try toUnicodeFail("\xda\xaa-\xe1\x84\x82\xe1\x85\xb0\xe1\x86\xbf.\xf0\x9e\xa4\xb2\xe2\x80\x8c"); } // [B2, B3, C1]10406test { try toUnicodeFail("\xda\xaa-\xe1\x84\x82\xe1\x85\xb0\xe1\x86\xbf.\xf0\x9e\xa4\xb2\xe2\x80\x8c"); } // [B2, B3, C1]
10407test { try toAsciiFail("\xda\xaa-\xe1\x84\x82\xe1\x85\xb0\xe1\x86\xbf.\xf0\x9e\xa4\xb2\xe2\x80\x8c", false); } // [B2, B3, C1]
10408test { try toAsciiFail("\xda\xaa-\xe1\x84\x82\xe1\x85\xb0\xe1\x86\xbf.\xf0\x9e\xa4\xb2\xe2\x80\x8c", true); } // [B2, B3]
4321test { try toUnicodeFail("\xda\xaa-\xeb\x89\x94.\xf0\x9e\xa4\xb2\xe2\x80\x8c"); } // [B2, B3, C1]10409test { try toUnicodeFail("\xda\xaa-\xeb\x89\x94.\xf0\x9e\xa4\xb2\xe2\x80\x8c"); } // [B2, B3, C1]
10410test { try toAsciiFail("\xda\xaa-\xeb\x89\x94.\xf0\x9e\xa4\xb2\xe2\x80\x8c", false); } // [B2, B3, C1]
10411test { try toAsciiFail("\xda\xaa-\xeb\x89\x94.\xf0\x9e\xa4\xb2\xe2\x80\x8c", true); } // [B2, B3]
4322test { try toUnicodeFail("xn----guc3592k.xn--qe6h"); } // [B2, B3]10412test { try toUnicodeFail("xn----guc3592k.xn--qe6h"); } // [B2, B3]
10413test { try toAsciiFail("xn----guc3592k.xn--qe6h", false); } // [B2, B3]
10414test { try toAsciiFail("xn----guc3592k.xn--qe6h", true); } // [B2, B3]
4323test { try toUnicodeFail("xn----guc3592k.xn--0ug7611p"); } // [B2, B3, C1]10415test { try toUnicodeFail("xn----guc3592k.xn--0ug7611p"); } // [B2, B3, C1]
10416test { try toAsciiFail("xn----guc3592k.xn--0ug7611p", false); } // [B2, B3, C1]
10417test { try toAsciiFail("xn----guc3592k.xn--0ug7611p", true); } // [B2, B3, C1]
4324test { try toUnicodeFail("\xda\xaa-\xe1\x84\x82\xe1\x85\xb0\xe1\x86\xbf\xef\xbc\x8e\xf0\x9e\xa4\xb2\xe2\x80\x8c"); } // [B2, B3, C1]10418test { try toUnicodeFail("\xda\xaa-\xe1\x84\x82\xe1\x85\xb0\xe1\x86\xbf\xef\xbc\x8e\xf0\x9e\xa4\xb2\xe2\x80\x8c"); } // [B2, B3, C1]
10419test { try toAsciiFail("\xda\xaa-\xe1\x84\x82\xe1\x85\xb0\xe1\x86\xbf\xef\xbc\x8e\xf0\x9e\xa4\xb2\xe2\x80\x8c", false); } // [B2, B3, C1]
10420test { try toAsciiFail("\xda\xaa-\xe1\x84\x82\xe1\x85\xb0\xe1\x86\xbf\xef\xbc\x8e\xf0\x9e\xa4\xb2\xe2\x80\x8c", true); } // [B2, B3]
4325test { try toUnicodeFail("\xda\xaa-\xeb\x89\x94\xef\xbc\x8e\xf0\x9e\xa4\xb2\xe2\x80\x8c"); } // [B2, B3, C1]10421test { try toUnicodeFail("\xda\xaa-\xeb\x89\x94\xef\xbc\x8e\xf0\x9e\xa4\xb2\xe2\x80\x8c"); } // [B2, B3, C1]
10422test { try toAsciiFail("\xda\xaa-\xeb\x89\x94\xef\xbc\x8e\xf0\x9e\xa4\xb2\xe2\x80\x8c", false); } // [B2, B3, C1]
10423test { try toAsciiFail("\xda\xaa-\xeb\x89\x94\xef\xbc\x8e\xf0\x9e\xa4\xb2\xe2\x80\x8c", true); } // [B2, B3]
4326test { try toUnicodeFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xcf\x82.\xea\xa3\x84\xdd\xbb\xe1\xb3\x92\xdc\xb8"); } // [B1, V6, V7]10424test { try toUnicodeFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xcf\x82.\xea\xa3\x84\xdd\xbb\xe1\xb3\x92\xdc\xb8"); } // [B1, V6, V7]
10425test { try toAsciiFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xcf\x82.\xea\xa3\x84\xdd\xbb\xe1\xb3\x92\xdc\xb8", false); } // [B1, V6, V7]
10426test { try toAsciiFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xcf\x82.\xea\xa3\x84\xdd\xbb\xe1\xb3\x92\xdc\xb8", true); } // [B1, V6, V7]
4327test { try toUnicodeFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xcf\x82.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92"); } // [B1, V6, V7]10427test { try toUnicodeFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xcf\x82.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92"); } // [B1, V6, V7]
10428test { try toAsciiFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xcf\x82.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92", false); } // [B1, V6, V7]
10429test { try toAsciiFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xcf\x82.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92", true); } // [B1, V6, V7]
4328test { try toUnicodeFail("\xf1\x94\xb2\xb55\xe1\xa6\x9b\xcf\x82.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92"); } // [B1, V6, V7]10430test { try toUnicodeFail("\xf1\x94\xb2\xb55\xe1\xa6\x9b\xcf\x82.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92"); } // [B1, V6, V7]
10431test { try toAsciiFail("\xf1\x94\xb2\xb55\xe1\xa6\x9b\xcf\x82.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92", false); } // [B1, V6, V7]
10432test { try toAsciiFail("\xf1\x94\xb2\xb55\xe1\xa6\x9b\xcf\x82.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92", true); } // [B1, V6, V7]
4329test { try toUnicodeFail("\xf1\x94\xb2\xb55\xe1\xa6\x9b\xce\xa3.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92"); } // [B1, V6, V7]10433test { try toUnicodeFail("\xf1\x94\xb2\xb55\xe1\xa6\x9b\xce\xa3.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92"); } // [B1, V6, V7]
10434test { try toAsciiFail("\xf1\x94\xb2\xb55\xe1\xa6\x9b\xce\xa3.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92", false); } // [B1, V6, V7]
10435test { try toAsciiFail("\xf1\x94\xb2\xb55\xe1\xa6\x9b\xce\xa3.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92", true); } // [B1, V6, V7]
4330test { try toUnicodeFail("\xf1\x94\xb2\xb55\xe1\xa6\x9b\xcf\x83.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92"); } // [B1, V6, V7]10436test { try toUnicodeFail("\xf1\x94\xb2\xb55\xe1\xa6\x9b\xcf\x83.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92"); } // [B1, V6, V7]
10437test { try toAsciiFail("\xf1\x94\xb2\xb55\xe1\xa6\x9b\xcf\x83.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92", false); } // [B1, V6, V7]
10438test { try toAsciiFail("\xf1\x94\xb2\xb55\xe1\xa6\x9b\xcf\x83.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92", true); } // [B1, V6, V7]
4331test { try toUnicodeFail("xn--5-0mb988ng603j.xn--fob7kk44dl41k"); } // [B1, V6, V7]10439test { try toUnicodeFail("xn--5-0mb988ng603j.xn--fob7kk44dl41k"); } // [B1, V6, V7]
10440test { try toAsciiFail("xn--5-0mb988ng603j.xn--fob7kk44dl41k", false); } // [B1, V6, V7]
10441test { try toAsciiFail("xn--5-0mb988ng603j.xn--fob7kk44dl41k", true); } // [B1, V6, V7]
4332test { try toUnicodeFail("xn--5-ymb298ng603j.xn--fob7kk44dl41k"); } // [B1, V6, V7]10442test { try toUnicodeFail("xn--5-ymb298ng603j.xn--fob7kk44dl41k"); } // [B1, V6, V7]
10443test { try toAsciiFail("xn--5-ymb298ng603j.xn--fob7kk44dl41k", false); } // [B1, V6, V7]
10444test { try toAsciiFail("xn--5-ymb298ng603j.xn--fob7kk44dl41k", true); } // [B1, V6, V7]
4333test { try toUnicodeFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xce\xa3.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92"); } // [B1, V6, V7]10445test { try toUnicodeFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xce\xa3.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92"); } // [B1, V6, V7]
10446test { try toAsciiFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xce\xa3.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92", false); } // [B1, V6, V7]
10447test { try toAsciiFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xce\xa3.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92", true); } // [B1, V6, V7]
4334test { try toUnicodeFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xcf\x83.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92"); } // [B1, V6, V7]10448test { try toUnicodeFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xcf\x83.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92"); } // [B1, V6, V7]
10449test { try toAsciiFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xcf\x83.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92", false); } // [B1, V6, V7]
10450test { try toAsciiFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xcf\x83.\xea\xa3\x84\xdd\xbb\xdc\xb8\xe1\xb3\x92", true); } // [B1, V6, V7]
4335test { try toUnicodeFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xce\xa3.\xea\xa3\x84\xdd\xbb\xe1\xb3\x92\xdc\xb8"); } // [B1, V6, V7]10451test { try toUnicodeFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xce\xa3.\xea\xa3\x84\xdd\xbb\xe1\xb3\x92\xdc\xb8"); } // [B1, V6, V7]
10452test { try toAsciiFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xce\xa3.\xea\xa3\x84\xdd\xbb\xe1\xb3\x92\xdc\xb8", false); } // [B1, V6, V7]
10453test { try toAsciiFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xce\xa3.\xea\xa3\x84\xdd\xbb\xe1\xb3\x92\xdc\xb8", true); } // [B1, V6, V7]
4336test { try toUnicodeFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xcf\x83.\xea\xa3\x84\xdd\xbb\xe1\xb3\x92\xdc\xb8"); } // [B1, V6, V7]10454test { try toUnicodeFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xcf\x83.\xea\xa3\x84\xdd\xbb\xe1\xb3\x92\xdc\xb8"); } // [B1, V6, V7]
10455test { try toAsciiFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xcf\x83.\xea\xa3\x84\xdd\xbb\xe1\xb3\x92\xdc\xb8", false); } // [B1, V6, V7]
10456test { try toAsciiFail("\xf1\x94\xb2\xb5\xef\xbc\x95\xe1\xa6\x9b\xcf\x83.\xea\xa3\x84\xdd\xbb\xe1\xb3\x92\xdc\xb8", true); } // [B1, V6, V7]
4337test { try toUnicodePass("\xe6\xb7\xbd\xe3\x80\x82\xe1\xa0\xbe", "\xe6\xb7\xbd.\xe1\xa0\xbe"); }10457test { try toUnicodePass("\xe6\xb7\xbd\xe3\x80\x82\xe1\xa0\xbe", "\xe6\xb7\xbd.\xe1\xa0\xbe"); }
4338test { try toAsciiPass("\xe6\xb7\xbd\xe3\x80\x82\xe1\xa0\xbe", "xn--34w.xn--x7e", false); }10458test { try toAsciiPass("\xe6\xb7\xbd\xe3\x80\x82\xe1\xa0\xbe", "xn--34w.xn--x7e", false); }
4339test { try toAsciiPass("\xe6\xb7\xbd\xe3\x80\x82\xe1\xa0\xbe", "xn--34w.xn--x7e", true); }10459test { try toAsciiPass("\xe6\xb7\xbd\xe3\x80\x82\xe1\xa0\xbe", "xn--34w.xn--x7e", true); }
...@@ -4344,236 +10464,698 @@ test { try toUnicodePass("\xe6\xb7\xbd.\xe1\xa0\xbe", "\xe6\xb7\xbd.\xe1\xa0\xbe...@@ -4344,236 +10464,698 @@ test { try toUnicodePass("\xe6\xb7\xbd.\xe1\xa0\xbe", "\xe6\xb7\xbd.\xe1\xa0\xbe
4344test { try toAsciiPass("\xe6\xb7\xbd.\xe1\xa0\xbe", "xn--34w.xn--x7e", false); }10464test { try toAsciiPass("\xe6\xb7\xbd.\xe1\xa0\xbe", "xn--34w.xn--x7e", false); }
4345test { try toAsciiPass("\xe6\xb7\xbd.\xe1\xa0\xbe", "xn--34w.xn--x7e", true); }10465test { try toAsciiPass("\xe6\xb7\xbd.\xe1\xa0\xbe", "xn--34w.xn--x7e", true); }
4346test { try toUnicodeFail("\xf0\x90\xb9\xb4\xf0\x91\x98\xb7\xe3\x80\x82-"); } // [B1, V3]10466test { try toUnicodeFail("\xf0\x90\xb9\xb4\xf0\x91\x98\xb7\xe3\x80\x82-"); } // [B1, V3]
10467test { try toAsciiFail("\xf0\x90\xb9\xb4\xf0\x91\x98\xb7\xe3\x80\x82-", false); } // [B1, V3]
10468test { try toAsciiFail("\xf0\x90\xb9\xb4\xf0\x91\x98\xb7\xe3\x80\x82-", true); } // [B1, V3]
4347test { try toUnicodeFail("xn--so0do6k.-"); } // [B1, V3]10469test { try toUnicodeFail("xn--so0do6k.-"); } // [B1, V3]
10470test { try toAsciiFail("xn--so0do6k.-", false); } // [B1, V3]
10471test { try toAsciiFail("xn--so0do6k.-", true); } // [B1, V3]
4348test { try toUnicodeFail("\xf2\xac\xa8\xa9\xe1\x82\xb3\xe2\x9d\x93\xef\xbd\xa1\xf0\x91\x84\xa8"); } // [V6, V7]10472test { try toUnicodeFail("\xf2\xac\xa8\xa9\xe1\x82\xb3\xe2\x9d\x93\xef\xbd\xa1\xf0\x91\x84\xa8"); } // [V6, V7]
10473test { try toAsciiFail("\xf2\xac\xa8\xa9\xe1\x82\xb3\xe2\x9d\x93\xef\xbd\xa1\xf0\x91\x84\xa8", false); } // [V6, V7]
10474test { try toAsciiFail("\xf2\xac\xa8\xa9\xe1\x82\xb3\xe2\x9d\x93\xef\xbd\xa1\xf0\x91\x84\xa8", true); } // [V6, V7]
4349test { try toUnicodeFail("\xf2\xac\xa8\xa9\xe1\x82\xb3\xe2\x9d\x93\xe3\x80\x82\xf0\x91\x84\xa8"); } // [V6, V7]10475test { try toUnicodeFail("\xf2\xac\xa8\xa9\xe1\x82\xb3\xe2\x9d\x93\xe3\x80\x82\xf0\x91\x84\xa8"); } // [V6, V7]
10476test { try toAsciiFail("\xf2\xac\xa8\xa9\xe1\x82\xb3\xe2\x9d\x93\xe3\x80\x82\xf0\x91\x84\xa8", false); } // [V6, V7]
10477test { try toAsciiFail("\xf2\xac\xa8\xa9\xe1\x82\xb3\xe2\x9d\x93\xe3\x80\x82\xf0\x91\x84\xa8", true); } // [V6, V7]
4350test { try toUnicodeFail("\xf2\xac\xa8\xa9\xe2\xb4\x93\xe2\x9d\x93\xe3\x80\x82\xf0\x91\x84\xa8"); } // [V6, V7]10478test { try toUnicodeFail("\xf2\xac\xa8\xa9\xe2\xb4\x93\xe2\x9d\x93\xe3\x80\x82\xf0\x91\x84\xa8"); } // [V6, V7]
10479test { try toAsciiFail("\xf2\xac\xa8\xa9\xe2\xb4\x93\xe2\x9d\x93\xe3\x80\x82\xf0\x91\x84\xa8", false); } // [V6, V7]
10480test { try toAsciiFail("\xf2\xac\xa8\xa9\xe2\xb4\x93\xe2\x9d\x93\xe3\x80\x82\xf0\x91\x84\xa8", true); } // [V6, V7]
4351test { try toUnicodeFail("xn--8di78qvw32y.xn--k80d"); } // [V6, V7]10481test { try toUnicodeFail("xn--8di78qvw32y.xn--k80d"); } // [V6, V7]
10482test { try toAsciiFail("xn--8di78qvw32y.xn--k80d", false); } // [V6, V7]
10483test { try toAsciiFail("xn--8di78qvw32y.xn--k80d", true); } // [V6, V7]
4352test { try toUnicodeFail("\xf2\xac\xa8\xa9\xe2\xb4\x93\xe2\x9d\x93\xef\xbd\xa1\xf0\x91\x84\xa8"); } // [V6, V7]10484test { try toUnicodeFail("\xf2\xac\xa8\xa9\xe2\xb4\x93\xe2\x9d\x93\xef\xbd\xa1\xf0\x91\x84\xa8"); } // [V6, V7]
10485test { try toAsciiFail("\xf2\xac\xa8\xa9\xe2\xb4\x93\xe2\x9d\x93\xef\xbd\xa1\xf0\x91\x84\xa8", false); } // [V6, V7]
10486test { try toAsciiFail("\xf2\xac\xa8\xa9\xe2\xb4\x93\xe2\x9d\x93\xef\xbd\xa1\xf0\x91\x84\xa8", true); } // [V6, V7]
4353test { try toUnicodeFail("xn--rnd896i0j14q.xn--k80d"); } // [V6, V7]10487test { try toUnicodeFail("xn--rnd896i0j14q.xn--k80d"); } // [V6, V7]
10488test { try toAsciiFail("xn--rnd896i0j14q.xn--k80d", false); } // [V6, V7]
10489test { try toAsciiFail("xn--rnd896i0j14q.xn--k80d", true); } // [V6, V7]
4354test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xef\xbd\xa1\xc3\x9f\xe1\x82\xa3"); } // [B1, C1]10490test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xef\xbd\xa1\xc3\x9f\xe1\x82\xa3"); } // [B1, C1]
10491test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xef\xbd\xa1\xc3\x9f\xe1\x82\xa3", false); } // [B1, C1]
10492test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xef\xbd\xa1\xc3\x9f\xe1\x82\xa3", true); } // [B1]
4355test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xe3\x80\x82\xc3\x9f\xe1\x82\xa3"); } // [B1, C1]10493test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xe3\x80\x82\xc3\x9f\xe1\x82\xa3"); } // [B1, C1]
10494test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xe3\x80\x82\xc3\x9f\xe1\x82\xa3", false); } // [B1, C1]
10495test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xe3\x80\x82\xc3\x9f\xe1\x82\xa3", true); } // [B1]
4356test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\xae\xe2\xb4\x87\xe3\x80\x82\xc3\x9f\xe2\xb4\x83"); } // [B1, C1]10496test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\xae\xe2\xb4\x87\xe3\x80\x82\xc3\x9f\xe2\xb4\x83"); } // [B1, C1]
10497test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\xae\xe2\xb4\x87\xe3\x80\x82\xc3\x9f\xe2\xb4\x83", false); } // [B1, C1]
10498test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\xae\xe2\xb4\x87\xe3\x80\x82\xc3\x9f\xe2\xb4\x83", true); } // [B1]
4357test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xe3\x80\x82SS\xe1\x82\xa3"); } // [B1, C1]10499test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xe3\x80\x82SS\xe1\x82\xa3"); } // [B1, C1]
10500test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xe3\x80\x82SS\xe1\x82\xa3", false); } // [B1, C1]
10501test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xe3\x80\x82SS\xe1\x82\xa3", true); } // [B1]
4358test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\xae\xe2\xb4\x87\xe3\x80\x82ss\xe2\xb4\x83"); } // [B1, C1]10502test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\xae\xe2\xb4\x87\xe3\x80\x82ss\xe2\xb4\x83"); } // [B1, C1]
10503test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\xae\xe2\xb4\x87\xe3\x80\x82ss\xe2\xb4\x83", false); } // [B1, C1]
10504test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\xae\xe2\xb4\x87\xe3\x80\x82ss\xe2\xb4\x83", true); } // [B1]
4359test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xe3\x80\x82Ss\xe2\xb4\x83"); } // [B1, C1]10505test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xe3\x80\x82Ss\xe2\xb4\x83"); } // [B1, C1]
10506test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xe3\x80\x82Ss\xe2\xb4\x83", false); } // [B1, C1]
10507test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xe3\x80\x82Ss\xe2\xb4\x83", true); } // [B1]
4360test { try toUnicodeFail("xn--ykj9323eegwf.xn--ss-151a"); } // [B1]10508test { try toUnicodeFail("xn--ykj9323eegwf.xn--ss-151a"); } // [B1]
10509test { try toAsciiFail("xn--ykj9323eegwf.xn--ss-151a", false); } // [B1]
10510test { try toAsciiFail("xn--ykj9323eegwf.xn--ss-151a", true); } // [B1]
4361test { try toUnicodeFail("xn--0ug332c3q0pr56g.xn--ss-151a"); } // [B1, C1]10511test { try toUnicodeFail("xn--0ug332c3q0pr56g.xn--ss-151a"); } // [B1, C1]
10512test { try toAsciiFail("xn--0ug332c3q0pr56g.xn--ss-151a", false); } // [B1, C1]
10513test { try toAsciiFail("xn--0ug332c3q0pr56g.xn--ss-151a", true); } // [B1, C1]
4362test { try toUnicodeFail("xn--0ug332c3q0pr56g.xn--zca417t"); } // [B1, C1]10514test { try toUnicodeFail("xn--0ug332c3q0pr56g.xn--zca417t"); } // [B1, C1]
10515test { try toAsciiFail("xn--0ug332c3q0pr56g.xn--zca417t", false); } // [B1, C1]
10516test { try toAsciiFail("xn--0ug332c3q0pr56g.xn--zca417t", true); } // [B1, C1]
4363test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\xae\xe2\xb4\x87\xef\xbd\xa1\xc3\x9f\xe2\xb4\x83"); } // [B1, C1]10517test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\xae\xe2\xb4\x87\xef\xbd\xa1\xc3\x9f\xe2\xb4\x83"); } // [B1, C1]
10518test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\xae\xe2\xb4\x87\xef\xbd\xa1\xc3\x9f\xe2\xb4\x83", false); } // [B1, C1]
10519test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\xae\xe2\xb4\x87\xef\xbd\xa1\xc3\x9f\xe2\xb4\x83", true); } // [B1]
4364test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xef\xbd\xa1SS\xe1\x82\xa3"); } // [B1, C1]10520test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xef\xbd\xa1SS\xe1\x82\xa3"); } // [B1, C1]
10521test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xef\xbd\xa1SS\xe1\x82\xa3", false); } // [B1, C1]
10522test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xef\xbd\xa1SS\xe1\x82\xa3", true); } // [B1]
4365test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\xae\xe2\xb4\x87\xef\xbd\xa1ss\xe2\xb4\x83"); } // [B1, C1]10523test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\xae\xe2\xb4\x87\xef\xbd\xa1ss\xe2\xb4\x83"); } // [B1, C1]
10524test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\xae\xe2\xb4\x87\xef\xbd\xa1ss\xe2\xb4\x83", false); } // [B1, C1]
10525test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\xae\xe2\xb4\x87\xef\xbd\xa1ss\xe2\xb4\x83", true); } // [B1]
4366test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xef\xbd\xa1Ss\xe2\xb4\x83"); } // [B1, C1]10526test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xef\xbd\xa1Ss\xe2\xb4\x83"); } // [B1, C1]
10527test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xef\xbd\xa1Ss\xe2\xb4\x83", false); } // [B1, C1]
10528test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xef\xbd\xa1Ss\xe2\xb4\x83", true); } // [B1]
4367test { try toUnicodeFail("xn--fnd1201kegrf.xn--ss-fek"); } // [B1, V7]10529test { try toUnicodeFail("xn--fnd1201kegrf.xn--ss-fek"); } // [B1, V7]
10530test { try toAsciiFail("xn--fnd1201kegrf.xn--ss-fek", false); } // [B1, V7]
10531test { try toAsciiFail("xn--fnd1201kegrf.xn--ss-fek", true); } // [B1, V7]
4368test { try toUnicodeFail("xn--fnd599eyj4pr50g.xn--ss-fek"); } // [B1, C1, V7]10532test { try toUnicodeFail("xn--fnd599eyj4pr50g.xn--ss-fek"); } // [B1, C1, V7]
10533test { try toAsciiFail("xn--fnd599eyj4pr50g.xn--ss-fek", false); } // [B1, C1, V7]
10534test { try toAsciiFail("xn--fnd599eyj4pr50g.xn--ss-fek", true); } // [B1, C1, V7]
4369test { try toUnicodeFail("xn--fnd599eyj4pr50g.xn--zca681f"); } // [B1, C1, V7]10535test { try toUnicodeFail("xn--fnd599eyj4pr50g.xn--zca681f"); } // [B1, C1, V7]
10536test { try toAsciiFail("xn--fnd599eyj4pr50g.xn--zca681f", false); } // [B1, C1, V7]
10537test { try toAsciiFail("xn--fnd599eyj4pr50g.xn--zca681f", true); } // [B1, C1, V7]
4370test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xe3\x80\x82\xc3\x9f\xe2\xb4\x83"); } // [B1, C1]10538test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xe3\x80\x82\xc3\x9f\xe2\xb4\x83"); } // [B1, C1]
10539test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xe3\x80\x82\xc3\x9f\xe2\xb4\x83", false); } // [B1, C1]
10540test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xe3\x80\x82\xc3\x9f\xe2\xb4\x83", true); } // [B1]
4371test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xe3\x80\x82ss\xe2\xb4\x83"); } // [B1, C1]10541test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xe3\x80\x82ss\xe2\xb4\x83"); } // [B1, C1]
10542test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xe3\x80\x82ss\xe2\xb4\x83", false); } // [B1, C1]
10543test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xe3\x80\x82ss\xe2\xb4\x83", true); } // [B1]
4372test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xe3\x80\x82Ss\xe2\xb4\x83"); } // [B1, C1]10544test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xe3\x80\x82Ss\xe2\xb4\x83"); } // [B1, C1]
10545test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xe3\x80\x82Ss\xe2\xb4\x83", false); } // [B1, C1]
10546test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xe3\x80\x82Ss\xe2\xb4\x83", true); } // [B1]
4373test { try toUnicodeFail("xn--fnd1201kegrf.xn--ss-151a"); } // [B1, V7]10547test { try toUnicodeFail("xn--fnd1201kegrf.xn--ss-151a"); } // [B1, V7]
10548test { try toAsciiFail("xn--fnd1201kegrf.xn--ss-151a", false); } // [B1, V7]
10549test { try toAsciiFail("xn--fnd1201kegrf.xn--ss-151a", true); } // [B1, V7]
4374test { try toUnicodeFail("xn--fnd599eyj4pr50g.xn--ss-151a"); } // [B1, C1, V7]10550test { try toUnicodeFail("xn--fnd599eyj4pr50g.xn--ss-151a"); } // [B1, C1, V7]
10551test { try toAsciiFail("xn--fnd599eyj4pr50g.xn--ss-151a", false); } // [B1, C1, V7]
10552test { try toAsciiFail("xn--fnd599eyj4pr50g.xn--ss-151a", true); } // [B1, C1, V7]
4375test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xef\xbd\xa1\xc3\x9f\xe2\xb4\x83"); } // [B1, C1]10553test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xef\xbd\xa1\xc3\x9f\xe2\xb4\x83"); } // [B1, C1]
10554test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xef\xbd\xa1\xc3\x9f\xe2\xb4\x83", false); } // [B1, C1]
10555test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xef\xbd\xa1\xc3\x9f\xe2\xb4\x83", true); } // [B1]
4376test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xef\xbd\xa1ss\xe2\xb4\x83"); } // [B1, C1]10556test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xef\xbd\xa1ss\xe2\xb4\x83"); } // [B1, C1]
10557test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xef\xbd\xa1ss\xe2\xb4\x83", false); } // [B1, C1]
10558test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe2\xb4\x87\xef\xbd\xa1ss\xe2\xb4\x83", true); } // [B1]
4377test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xef\xbd\xa1Ss\xe2\xb4\x83"); } // [B1, C1]10559test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xef\xbd\xa1Ss\xe2\xb4\x83"); } // [B1, C1]
10560test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xef\xbd\xa1Ss\xe2\xb4\x83", false); } // [B1, C1]
10561test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xb9\xa1\xf0\x9e\xa4\x8c\xe1\x82\xa7\xef\xbd\xa1Ss\xe2\xb4\x83", true); } // [B1]
4378test { try toUnicodeFail("\xe1\x9f\xbf\xef\xbd\xa1\xf0\x9e\xac\xb3"); } // [V7]10562test { try toUnicodeFail("\xe1\x9f\xbf\xef\xbd\xa1\xf0\x9e\xac\xb3"); } // [V7]
10563test { try toAsciiFail("\xe1\x9f\xbf\xef\xbd\xa1\xf0\x9e\xac\xb3", false); } // [V7]
10564test { try toAsciiFail("\xe1\x9f\xbf\xef\xbd\xa1\xf0\x9e\xac\xb3", true); } // [V7]
4379test { try toUnicodeFail("\xe1\x9f\xbf\xe3\x80\x82\xf0\x9e\xac\xb3"); } // [V7]10565test { try toUnicodeFail("\xe1\x9f\xbf\xe3\x80\x82\xf0\x9e\xac\xb3"); } // [V7]
10566test { try toAsciiFail("\xe1\x9f\xbf\xe3\x80\x82\xf0\x9e\xac\xb3", false); } // [V7]
10567test { try toAsciiFail("\xe1\x9f\xbf\xe3\x80\x82\xf0\x9e\xac\xb3", true); } // [V7]
4380test { try toUnicodeFail("xn--45e.xn--et6h"); } // [V7]10568test { try toUnicodeFail("xn--45e.xn--et6h"); } // [V7]
10569test { try toAsciiFail("xn--45e.xn--et6h", false); } // [V7]
10570test { try toAsciiFail("xn--45e.xn--et6h", true); } // [V7]
4381test { try toUnicodeFail("\xd9\x92\xe2\x80\x8d\xef\xbd\xa1\xe0\xb3\x8d\xf0\x91\x9a\xb3"); } // [C2, V6]10571test { try toUnicodeFail("\xd9\x92\xe2\x80\x8d\xef\xbd\xa1\xe0\xb3\x8d\xf0\x91\x9a\xb3"); } // [C2, V6]
10572test { try toAsciiFail("\xd9\x92\xe2\x80\x8d\xef\xbd\xa1\xe0\xb3\x8d\xf0\x91\x9a\xb3", false); } // [C2, V6]
10573test { try toAsciiFail("\xd9\x92\xe2\x80\x8d\xef\xbd\xa1\xe0\xb3\x8d\xf0\x91\x9a\xb3", true); } // [V6]
4382test { try toUnicodeFail("\xd9\x92\xe2\x80\x8d\xe3\x80\x82\xe0\xb3\x8d\xf0\x91\x9a\xb3"); } // [C2, V6]10574test { try toUnicodeFail("\xd9\x92\xe2\x80\x8d\xe3\x80\x82\xe0\xb3\x8d\xf0\x91\x9a\xb3"); } // [C2, V6]
10575test { try toAsciiFail("\xd9\x92\xe2\x80\x8d\xe3\x80\x82\xe0\xb3\x8d\xf0\x91\x9a\xb3", false); } // [C2, V6]
10576test { try toAsciiFail("\xd9\x92\xe2\x80\x8d\xe3\x80\x82\xe0\xb3\x8d\xf0\x91\x9a\xb3", true); } // [V6]
4383test { try toUnicodeFail("xn--uhb.xn--8tc4527k"); } // [V6]10577test { try toUnicodeFail("xn--uhb.xn--8tc4527k"); } // [V6]
10578test { try toAsciiFail("xn--uhb.xn--8tc4527k", false); } // [V6]
10579test { try toAsciiFail("xn--uhb.xn--8tc4527k", true); } // [V6]
4384test { try toUnicodeFail("xn--uhb882k.xn--8tc4527k"); } // [C2, V6]10580test { try toUnicodeFail("xn--uhb882k.xn--8tc4527k"); } // [C2, V6]
10581test { try toAsciiFail("xn--uhb882k.xn--8tc4527k", false); } // [C2, V6]
10582test { try toAsciiFail("xn--uhb882k.xn--8tc4527k", true); } // [C2, V6]
4385test { try toUnicodeFail("-\xe2\x89\xa0\xe1\xa0\xbb\xef\xbc\x8e\xdd\xad\xf0\x9e\xa5\x83\xe2\x89\xae\xf3\x9f\xb7\xba"); } // [B1, B2, B3, V3, V7]10583test { try toUnicodeFail("-\xe2\x89\xa0\xe1\xa0\xbb\xef\xbc\x8e\xdd\xad\xf0\x9e\xa5\x83\xe2\x89\xae\xf3\x9f\xb7\xba"); } // [B1, B2, B3, V3, V7]
10584test { try toAsciiFail("-\xe2\x89\xa0\xe1\xa0\xbb\xef\xbc\x8e\xdd\xad\xf0\x9e\xa5\x83\xe2\x89\xae\xf3\x9f\xb7\xba", false); } // [B1, B2, B3, V3, V7]
10585test { try toAsciiFail("-\xe2\x89\xa0\xe1\xa0\xbb\xef\xbc\x8e\xdd\xad\xf0\x9e\xa5\x83\xe2\x89\xae\xf3\x9f\xb7\xba", true); } // [B1, B2, B3, V3, V7]
4386test { try toUnicodeFail("-=\xcc\xb8\xe1\xa0\xbb\xef\xbc\x8e\xdd\xad\xf0\x9e\xa5\x83<\xcc\xb8\xf3\x9f\xb7\xba"); } // [B1, B2, B3, V3, V7]10586test { try toUnicodeFail("-=\xcc\xb8\xe1\xa0\xbb\xef\xbc\x8e\xdd\xad\xf0\x9e\xa5\x83<\xcc\xb8\xf3\x9f\xb7\xba"); } // [B1, B2, B3, V3, V7]
10587test { try toAsciiFail("-=\xcc\xb8\xe1\xa0\xbb\xef\xbc\x8e\xdd\xad\xf0\x9e\xa5\x83<\xcc\xb8\xf3\x9f\xb7\xba", false); } // [B1, B2, B3, V3, V7]
10588test { try toAsciiFail("-=\xcc\xb8\xe1\xa0\xbb\xef\xbc\x8e\xdd\xad\xf0\x9e\xa5\x83<\xcc\xb8\xf3\x9f\xb7\xba", true); } // [B1, B2, B3, V3, V7]
4387test { try toUnicodeFail("-\xe2\x89\xa0\xe1\xa0\xbb.\xdd\xad\xf0\x9e\xa5\x83\xe2\x89\xae\xf3\x9f\xb7\xba"); } // [B1, B2, B3, V3, V7]10589test { try toUnicodeFail("-\xe2\x89\xa0\xe1\xa0\xbb.\xdd\xad\xf0\x9e\xa5\x83\xe2\x89\xae\xf3\x9f\xb7\xba"); } // [B1, B2, B3, V3, V7]
10590test { try toAsciiFail("-\xe2\x89\xa0\xe1\xa0\xbb.\xdd\xad\xf0\x9e\xa5\x83\xe2\x89\xae\xf3\x9f\xb7\xba", false); } // [B1, B2, B3, V3, V7]
10591test { try toAsciiFail("-\xe2\x89\xa0\xe1\xa0\xbb.\xdd\xad\xf0\x9e\xa5\x83\xe2\x89\xae\xf3\x9f\xb7\xba", true); } // [B1, B2, B3, V3, V7]
4388test { try toUnicodeFail("-=\xcc\xb8\xe1\xa0\xbb.\xdd\xad\xf0\x9e\xa5\x83<\xcc\xb8\xf3\x9f\xb7\xba"); } // [B1, B2, B3, V3, V7]10592test { try toUnicodeFail("-=\xcc\xb8\xe1\xa0\xbb.\xdd\xad\xf0\x9e\xa5\x83<\xcc\xb8\xf3\x9f\xb7\xba"); } // [B1, B2, B3, V3, V7]
10593test { try toAsciiFail("-=\xcc\xb8\xe1\xa0\xbb.\xdd\xad\xf0\x9e\xa5\x83<\xcc\xb8\xf3\x9f\xb7\xba", false); } // [B1, B2, B3, V3, V7]
10594test { try toAsciiFail("-=\xcc\xb8\xe1\xa0\xbb.\xdd\xad\xf0\x9e\xa5\x83<\xcc\xb8\xf3\x9f\xb7\xba", true); } // [B1, B2, B3, V3, V7]
4389test { try toUnicodeFail("-=\xcc\xb8\xe1\xa0\xbb.\xdd\xad\xf0\x9e\xa4\xa1<\xcc\xb8\xf3\x9f\xb7\xba"); } // [B1, B2, B3, V3, V7]10595test { try toUnicodeFail("-=\xcc\xb8\xe1\xa0\xbb.\xdd\xad\xf0\x9e\xa4\xa1<\xcc\xb8\xf3\x9f\xb7\xba"); } // [B1, B2, B3, V3, V7]
10596test { try toAsciiFail("-=\xcc\xb8\xe1\xa0\xbb.\xdd\xad\xf0\x9e\xa4\xa1<\xcc\xb8\xf3\x9f\xb7\xba", false); } // [B1, B2, B3, V3, V7]
10597test { try toAsciiFail("-=\xcc\xb8\xe1\xa0\xbb.\xdd\xad\xf0\x9e\xa4\xa1<\xcc\xb8\xf3\x9f\xb7\xba", true); } // [B1, B2, B3, V3, V7]
4390test { try toUnicodeFail("-\xe2\x89\xa0\xe1\xa0\xbb.\xdd\xad\xf0\x9e\xa4\xa1\xe2\x89\xae\xf3\x9f\xb7\xba"); } // [B1, B2, B3, V3, V7]10598test { try toUnicodeFail("-\xe2\x89\xa0\xe1\xa0\xbb.\xdd\xad\xf0\x9e\xa4\xa1\xe2\x89\xae\xf3\x9f\xb7\xba"); } // [B1, B2, B3, V3, V7]
10599test { try toAsciiFail("-\xe2\x89\xa0\xe1\xa0\xbb.\xdd\xad\xf0\x9e\xa4\xa1\xe2\x89\xae\xf3\x9f\xb7\xba", false); } // [B1, B2, B3, V3, V7]
10600test { try toAsciiFail("-\xe2\x89\xa0\xe1\xa0\xbb.\xdd\xad\xf0\x9e\xa4\xa1\xe2\x89\xae\xf3\x9f\xb7\xba", true); } // [B1, B2, B3, V3, V7]
4391test { try toUnicodeFail("xn----g6j886c.xn--xpb049kk353abj99f"); } // [B1, B2, B3, V3, V7]10601test { try toUnicodeFail("xn----g6j886c.xn--xpb049kk353abj99f"); } // [B1, B2, B3, V3, V7]
10602test { try toAsciiFail("xn----g6j886c.xn--xpb049kk353abj99f", false); } // [B1, B2, B3, V3, V7]
10603test { try toAsciiFail("xn----g6j886c.xn--xpb049kk353abj99f", true); } // [B1, B2, B3, V3, V7]
4392test { try toUnicodeFail("-=\xcc\xb8\xe1\xa0\xbb\xef\xbc\x8e\xdd\xad\xf0\x9e\xa4\xa1<\xcc\xb8\xf3\x9f\xb7\xba"); } // [B1, B2, B3, V3, V7]10604test { try toUnicodeFail("-=\xcc\xb8\xe1\xa0\xbb\xef\xbc\x8e\xdd\xad\xf0\x9e\xa4\xa1<\xcc\xb8\xf3\x9f\xb7\xba"); } // [B1, B2, B3, V3, V7]
10605test { try toAsciiFail("-=\xcc\xb8\xe1\xa0\xbb\xef\xbc\x8e\xdd\xad\xf0\x9e\xa4\xa1<\xcc\xb8\xf3\x9f\xb7\xba", false); } // [B1, B2, B3, V3, V7]
10606test { try toAsciiFail("-=\xcc\xb8\xe1\xa0\xbb\xef\xbc\x8e\xdd\xad\xf0\x9e\xa4\xa1<\xcc\xb8\xf3\x9f\xb7\xba", true); } // [B1, B2, B3, V3, V7]
4393test { try toUnicodeFail("-\xe2\x89\xa0\xe1\xa0\xbb\xef\xbc\x8e\xdd\xad\xf0\x9e\xa4\xa1\xe2\x89\xae\xf3\x9f\xb7\xba"); } // [B1, B2, B3, V3, V7]10607test { try toUnicodeFail("-\xe2\x89\xa0\xe1\xa0\xbb\xef\xbc\x8e\xdd\xad\xf0\x9e\xa4\xa1\xe2\x89\xae\xf3\x9f\xb7\xba"); } // [B1, B2, B3, V3, V7]
10608test { try toAsciiFail("-\xe2\x89\xa0\xe1\xa0\xbb\xef\xbc\x8e\xdd\xad\xf0\x9e\xa4\xa1\xe2\x89\xae\xf3\x9f\xb7\xba", false); } // [B1, B2, B3, V3, V7]
10609test { try toAsciiFail("-\xe2\x89\xa0\xe1\xa0\xbb\xef\xbc\x8e\xdd\xad\xf0\x9e\xa4\xa1\xe2\x89\xae\xf3\x9f\xb7\xba", true); } // [B1, B2, B3, V3, V7]
4394test { try toUnicodeFail("\xf3\xa0\xb0\x86\xe2\x89\xaf\xde\xb5\xf0\x90\xbb\xaa\xef\xbc\x8e\xf2\x8a\xa5\x95\xe2\x89\xae\xf0\x91\x81\x86\xe0\xa1\x8c"); } // [B1, B5, B6, V7]10610test { try toUnicodeFail("\xf3\xa0\xb0\x86\xe2\x89\xaf\xde\xb5\xf0\x90\xbb\xaa\xef\xbc\x8e\xf2\x8a\xa5\x95\xe2\x89\xae\xf0\x91\x81\x86\xe0\xa1\x8c"); } // [B1, B5, B6, V7]
10611test { try toAsciiFail("\xf3\xa0\xb0\x86\xe2\x89\xaf\xde\xb5\xf0\x90\xbb\xaa\xef\xbc\x8e\xf2\x8a\xa5\x95\xe2\x89\xae\xf0\x91\x81\x86\xe0\xa1\x8c", false); } // [B1, B5, B6, V7]
10612test { try toAsciiFail("\xf3\xa0\xb0\x86\xe2\x89\xaf\xde\xb5\xf0\x90\xbb\xaa\xef\xbc\x8e\xf2\x8a\xa5\x95\xe2\x89\xae\xf0\x91\x81\x86\xe0\xa1\x8c", true); } // [B1, B5, B6, V7]
4395test { try toUnicodeFail("\xf3\xa0\xb0\x86>\xcc\xb8\xde\xb5\xf0\x90\xbb\xaa\xef\xbc\x8e\xf2\x8a\xa5\x95<\xcc\xb8\xf0\x91\x81\x86\xe0\xa1\x8c"); } // [B1, B5, B6, V7]10613test { try toUnicodeFail("\xf3\xa0\xb0\x86>\xcc\xb8\xde\xb5\xf0\x90\xbb\xaa\xef\xbc\x8e\xf2\x8a\xa5\x95<\xcc\xb8\xf0\x91\x81\x86\xe0\xa1\x8c"); } // [B1, B5, B6, V7]
10614test { try toAsciiFail("\xf3\xa0\xb0\x86>\xcc\xb8\xde\xb5\xf0\x90\xbb\xaa\xef\xbc\x8e\xf2\x8a\xa5\x95<\xcc\xb8\xf0\x91\x81\x86\xe0\xa1\x8c", false); } // [B1, B5, B6, V7]
10615test { try toAsciiFail("\xf3\xa0\xb0\x86>\xcc\xb8\xde\xb5\xf0\x90\xbb\xaa\xef\xbc\x8e\xf2\x8a\xa5\x95<\xcc\xb8\xf0\x91\x81\x86\xe0\xa1\x8c", true); } // [B1, B5, B6, V7]
4396test { try toUnicodeFail("\xf3\xa0\xb0\x86\xe2\x89\xaf\xde\xb5\xf0\x90\xbb\xaa.\xf2\x8a\xa5\x95\xe2\x89\xae\xf0\x91\x81\x86\xe0\xa1\x8c"); } // [B1, B5, B6, V7]10616test { try toUnicodeFail("\xf3\xa0\xb0\x86\xe2\x89\xaf\xde\xb5\xf0\x90\xbb\xaa.\xf2\x8a\xa5\x95\xe2\x89\xae\xf0\x91\x81\x86\xe0\xa1\x8c"); } // [B1, B5, B6, V7]
10617test { try toAsciiFail("\xf3\xa0\xb0\x86\xe2\x89\xaf\xde\xb5\xf0\x90\xbb\xaa.\xf2\x8a\xa5\x95\xe2\x89\xae\xf0\x91\x81\x86\xe0\xa1\x8c", false); } // [B1, B5, B6, V7]
10618test { try toAsciiFail("\xf3\xa0\xb0\x86\xe2\x89\xaf\xde\xb5\xf0\x90\xbb\xaa.\xf2\x8a\xa5\x95\xe2\x89\xae\xf0\x91\x81\x86\xe0\xa1\x8c", true); } // [B1, B5, B6, V7]
4397test { try toUnicodeFail("\xf3\xa0\xb0\x86>\xcc\xb8\xde\xb5\xf0\x90\xbb\xaa.\xf2\x8a\xa5\x95<\xcc\xb8\xf0\x91\x81\x86\xe0\xa1\x8c"); } // [B1, B5, B6, V7]10619test { try toUnicodeFail("\xf3\xa0\xb0\x86>\xcc\xb8\xde\xb5\xf0\x90\xbb\xaa.\xf2\x8a\xa5\x95<\xcc\xb8\xf0\x91\x81\x86\xe0\xa1\x8c"); } // [B1, B5, B6, V7]
10620test { try toAsciiFail("\xf3\xa0\xb0\x86>\xcc\xb8\xde\xb5\xf0\x90\xbb\xaa.\xf2\x8a\xa5\x95<\xcc\xb8\xf0\x91\x81\x86\xe0\xa1\x8c", false); } // [B1, B5, B6, V7]
10621test { try toAsciiFail("\xf3\xa0\xb0\x86>\xcc\xb8\xde\xb5\xf0\x90\xbb\xaa.\xf2\x8a\xa5\x95<\xcc\xb8\xf0\x91\x81\x86\xe0\xa1\x8c", true); } // [B1, B5, B6, V7]
4398test { try toUnicodeFail("xn--zrb797kdm1oes34i.xn--bwb394k8k2o25n6d"); } // [B1, B5, B6, V7]10622test { try toUnicodeFail("xn--zrb797kdm1oes34i.xn--bwb394k8k2o25n6d"); } // [B1, B5, B6, V7]
10623test { try toAsciiFail("xn--zrb797kdm1oes34i.xn--bwb394k8k2o25n6d", false); } // [B1, B5, B6, V7]
10624test { try toAsciiFail("xn--zrb797kdm1oes34i.xn--bwb394k8k2o25n6d", true); } // [B1, B5, B6, V7]
4399test { try toUnicodeFail("\xe2\x89\xa0\xf3\xa6\x8b\x82.\xd8\x80\xe0\xaf\x8d-\xda\xb9"); } // [B1, V7]10625test { try toUnicodeFail("\xe2\x89\xa0\xf3\xa6\x8b\x82.\xd8\x80\xe0\xaf\x8d-\xda\xb9"); } // [B1, V7]
10626test { try toAsciiFail("\xe2\x89\xa0\xf3\xa6\x8b\x82.\xd8\x80\xe0\xaf\x8d-\xda\xb9", false); } // [B1, V7]
10627test { try toAsciiFail("\xe2\x89\xa0\xf3\xa6\x8b\x82.\xd8\x80\xe0\xaf\x8d-\xda\xb9", true); } // [B1, V7]
4400test { try toUnicodeFail("=\xcc\xb8\xf3\xa6\x8b\x82.\xd8\x80\xe0\xaf\x8d-\xda\xb9"); } // [B1, V7]10628test { try toUnicodeFail("=\xcc\xb8\xf3\xa6\x8b\x82.\xd8\x80\xe0\xaf\x8d-\xda\xb9"); } // [B1, V7]
10629test { try toAsciiFail("=\xcc\xb8\xf3\xa6\x8b\x82.\xd8\x80\xe0\xaf\x8d-\xda\xb9", false); } // [B1, V7]
10630test { try toAsciiFail("=\xcc\xb8\xf3\xa6\x8b\x82.\xd8\x80\xe0\xaf\x8d-\xda\xb9", true); } // [B1, V7]
4401test { try toUnicodeFail("xn--1ch22084l.xn----qkc07co6n"); } // [B1, V7]10631test { try toUnicodeFail("xn--1ch22084l.xn----qkc07co6n"); } // [B1, V7]
10632test { try toAsciiFail("xn--1ch22084l.xn----qkc07co6n", false); } // [B1, V7]
10633test { try toAsciiFail("xn--1ch22084l.xn----qkc07co6n", true); } // [B1, V7]
4402test { try toUnicodeFail("\xe1\x9f\x9d\xf3\xa0\x81\xa3\xe2\x89\xa0\xef\xbd\xa1\xf0\x90\xb9\xbc\xf0\x90\x8b\xa4"); } // [B1, V6, V7]10634test { try toUnicodeFail("\xe1\x9f\x9d\xf3\xa0\x81\xa3\xe2\x89\xa0\xef\xbd\xa1\xf0\x90\xb9\xbc\xf0\x90\x8b\xa4"); } // [B1, V6, V7]
10635test { try toAsciiFail("\xe1\x9f\x9d\xf3\xa0\x81\xa3\xe2\x89\xa0\xef\xbd\xa1\xf0\x90\xb9\xbc\xf0\x90\x8b\xa4", false); } // [B1, V6, V7]
10636test { try toAsciiFail("\xe1\x9f\x9d\xf3\xa0\x81\xa3\xe2\x89\xa0\xef\xbd\xa1\xf0\x90\xb9\xbc\xf0\x90\x8b\xa4", true); } // [B1, V6, V7]
4403test { try toUnicodeFail("\xe1\x9f\x9d\xf3\xa0\x81\xa3=\xcc\xb8\xef\xbd\xa1\xf0\x90\xb9\xbc\xf0\x90\x8b\xa4"); } // [B1, V6, V7]10637test { try toUnicodeFail("\xe1\x9f\x9d\xf3\xa0\x81\xa3=\xcc\xb8\xef\xbd\xa1\xf0\x90\xb9\xbc\xf0\x90\x8b\xa4"); } // [B1, V6, V7]
10638test { try toAsciiFail("\xe1\x9f\x9d\xf3\xa0\x81\xa3=\xcc\xb8\xef\xbd\xa1\xf0\x90\xb9\xbc\xf0\x90\x8b\xa4", false); } // [B1, V6, V7]
10639test { try toAsciiFail("\xe1\x9f\x9d\xf3\xa0\x81\xa3=\xcc\xb8\xef\xbd\xa1\xf0\x90\xb9\xbc\xf0\x90\x8b\xa4", true); } // [B1, V6, V7]
4404test { try toUnicodeFail("\xe1\x9f\x9d\xf3\xa0\x81\xa3\xe2\x89\xa0\xe3\x80\x82\xf0\x90\xb9\xbc\xf0\x90\x8b\xa4"); } // [B1, V6, V7]10640test { try toUnicodeFail("\xe1\x9f\x9d\xf3\xa0\x81\xa3\xe2\x89\xa0\xe3\x80\x82\xf0\x90\xb9\xbc\xf0\x90\x8b\xa4"); } // [B1, V6, V7]
10641test { try toAsciiFail("\xe1\x9f\x9d\xf3\xa0\x81\xa3\xe2\x89\xa0\xe3\x80\x82\xf0\x90\xb9\xbc\xf0\x90\x8b\xa4", false); } // [B1, V6, V7]
10642test { try toAsciiFail("\xe1\x9f\x9d\xf3\xa0\x81\xa3\xe2\x89\xa0\xe3\x80\x82\xf0\x90\xb9\xbc\xf0\x90\x8b\xa4", true); } // [B1, V6, V7]
4405test { try toUnicodeFail("\xe1\x9f\x9d\xf3\xa0\x81\xa3=\xcc\xb8\xe3\x80\x82\xf0\x90\xb9\xbc\xf0\x90\x8b\xa4"); } // [B1, V6, V7]10643test { try toUnicodeFail("\xe1\x9f\x9d\xf3\xa0\x81\xa3=\xcc\xb8\xe3\x80\x82\xf0\x90\xb9\xbc\xf0\x90\x8b\xa4"); } // [B1, V6, V7]
10644test { try toAsciiFail("\xe1\x9f\x9d\xf3\xa0\x81\xa3=\xcc\xb8\xe3\x80\x82\xf0\x90\xb9\xbc\xf0\x90\x8b\xa4", false); } // [B1, V6, V7]
10645test { try toAsciiFail("\xe1\x9f\x9d\xf3\xa0\x81\xa3=\xcc\xb8\xe3\x80\x82\xf0\x90\xb9\xbc\xf0\x90\x8b\xa4", true); } // [B1, V6, V7]
4406test { try toUnicodeFail("xn--54e694cn389z.xn--787ct8r"); } // [B1, V6, V7]10646test { try toUnicodeFail("xn--54e694cn389z.xn--787ct8r"); } // [B1, V6, V7]
10647test { try toAsciiFail("xn--54e694cn389z.xn--787ct8r", false); } // [B1, V6, V7]
10648test { try toAsciiFail("xn--54e694cn389z.xn--787ct8r", true); } // [B1, V6, V7]
4407test { try toUnicodeFail("\xc3\x9f\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xef\xbd\xa1\xf0\x9d\xa9\xa8\xf0\x9f\x95\xae\xc3\x9f"); } // [V6, V7]10649test { try toUnicodeFail("\xc3\x9f\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xef\xbd\xa1\xf0\x9d\xa9\xa8\xf0\x9f\x95\xae\xc3\x9f"); } // [V6, V7]
10650test { try toAsciiFail("\xc3\x9f\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xef\xbd\xa1\xf0\x9d\xa9\xa8\xf0\x9f\x95\xae\xc3\x9f", false); } // [V6, V7]
10651test { try toAsciiFail("\xc3\x9f\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xef\xbd\xa1\xf0\x9d\xa9\xa8\xf0\x9f\x95\xae\xc3\x9f", true); } // [V6, V7]
4408test { try toUnicodeFail("\xc3\x9f\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xe3\x80\x82\xf0\x9d\xa9\xa8\xf0\x9f\x95\xae\xc3\x9f"); } // [V6, V7]10652test { try toUnicodeFail("\xc3\x9f\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xe3\x80\x82\xf0\x9d\xa9\xa8\xf0\x9f\x95\xae\xc3\x9f"); } // [V6, V7]
10653test { try toAsciiFail("\xc3\x9f\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xe3\x80\x82\xf0\x9d\xa9\xa8\xf0\x9f\x95\xae\xc3\x9f", false); } // [V6, V7]
10654test { try toAsciiFail("\xc3\x9f\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xe3\x80\x82\xf0\x9d\xa9\xa8\xf0\x9f\x95\xae\xc3\x9f", true); } // [V6, V7]
4409test { try toUnicodeFail("SS\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xe3\x80\x82\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaeSS"); } // [V6, V7]10655test { try toUnicodeFail("SS\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xe3\x80\x82\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaeSS"); } // [V6, V7]
10656test { try toAsciiFail("SS\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xe3\x80\x82\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaeSS", false); } // [V6, V7]
10657test { try toAsciiFail("SS\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xe3\x80\x82\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaeSS", true); } // [V6, V7]
4410test { try toUnicodeFail("ss\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xe3\x80\x82\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaess"); } // [V6, V7]10658test { try toUnicodeFail("ss\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xe3\x80\x82\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaess"); } // [V6, V7]
10659test { try toAsciiFail("ss\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xe3\x80\x82\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaess", false); } // [V6, V7]
10660test { try toAsciiFail("ss\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xe3\x80\x82\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaess", true); } // [V6, V7]
4411test { try toUnicodeFail("Ss\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xe3\x80\x82\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaeSs"); } // [V6, V7]10661test { try toUnicodeFail("Ss\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xe3\x80\x82\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaeSs"); } // [V6, V7]
10662test { try toAsciiFail("Ss\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xe3\x80\x82\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaeSs", false); } // [V6, V7]
10663test { try toAsciiFail("Ss\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xe3\x80\x82\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaeSs", true); } // [V6, V7]
4412test { try toUnicodeFail("xn--ss-jl59biy67d.xn--ss-4d11aw87d"); } // [V6, V7]10664test { try toUnicodeFail("xn--ss-jl59biy67d.xn--ss-4d11aw87d"); } // [V6, V7]
10665test { try toAsciiFail("xn--ss-jl59biy67d.xn--ss-4d11aw87d", false); } // [V6, V7]
10666test { try toAsciiFail("xn--ss-jl59biy67d.xn--ss-4d11aw87d", true); } // [V6, V7]
4413test { try toUnicodeFail("xn--zca20040bgrkh.xn--zca3653v86qa"); } // [V6, V7]10667test { try toUnicodeFail("xn--zca20040bgrkh.xn--zca3653v86qa"); } // [V6, V7]
10668test { try toAsciiFail("xn--zca20040bgrkh.xn--zca3653v86qa", false); } // [V6, V7]
10669test { try toAsciiFail("xn--zca20040bgrkh.xn--zca3653v86qa", true); } // [V6, V7]
4414test { try toUnicodeFail("SS\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xef\xbd\xa1\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaeSS"); } // [V6, V7]10670test { try toUnicodeFail("SS\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xef\xbd\xa1\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaeSS"); } // [V6, V7]
10671test { try toAsciiFail("SS\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xef\xbd\xa1\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaeSS", false); } // [V6, V7]
10672test { try toAsciiFail("SS\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xef\xbd\xa1\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaeSS", true); } // [V6, V7]
4415test { try toUnicodeFail("ss\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xef\xbd\xa1\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaess"); } // [V6, V7]10673test { try toUnicodeFail("ss\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xef\xbd\xa1\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaess"); } // [V6, V7]
10674test { try toAsciiFail("ss\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xef\xbd\xa1\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaess", false); } // [V6, V7]
10675test { try toAsciiFail("ss\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xef\xbd\xa1\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaess", true); } // [V6, V7]
4416test { try toUnicodeFail("Ss\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xef\xbd\xa1\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaeSs"); } // [V6, V7]10676test { try toUnicodeFail("Ss\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xef\xbd\xa1\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaeSs"); } // [V6, V7]
10677test { try toAsciiFail("Ss\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xef\xbd\xa1\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaeSs", false); } // [V6, V7]
10678test { try toAsciiFail("Ss\xf0\xb0\x80\xbb\xf1\x86\xac\x97\xef\xbd\xa1\xf0\x9d\xa9\xa8\xf0\x9f\x95\xaeSs", true); } // [V6, V7]
4417test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xe2\x80\x8c"); } // [C1, C2]10679test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xe2\x80\x8c"); } // [C1, C2]
10680test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xe2\x80\x8c", false); } // [C1, C2]
10681test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xe2\x80\x8c", true); } // [A4_1, A4_2]
4418test { try toUnicodeFail("xn--1ug.xn--0ug"); } // [C1, C2]10682test { try toUnicodeFail("xn--1ug.xn--0ug"); } // [C1, C2]
10683test { try toAsciiFail("xn--1ug.xn--0ug", false); } // [C1, C2]
10684test { try toAsciiFail("xn--1ug.xn--0ug", true); } // [C1, C2]
4419test { try toUnicodeFail("\xd2\x83\xf0\x90\xad\x9e\xe2\x80\x8d.\xe1\x9e\xb9\xf0\x9e\xaf\x8c\xf2\x9f\xa9\x9a"); } // [B1, C2, V6, V7]10685test { try toUnicodeFail("\xd2\x83\xf0\x90\xad\x9e\xe2\x80\x8d.\xe1\x9e\xb9\xf0\x9e\xaf\x8c\xf2\x9f\xa9\x9a"); } // [B1, C2, V6, V7]
10686test { try toAsciiFail("\xd2\x83\xf0\x90\xad\x9e\xe2\x80\x8d.\xe1\x9e\xb9\xf0\x9e\xaf\x8c\xf2\x9f\xa9\x9a", false); } // [B1, C2, V6, V7]
10687test { try toAsciiFail("\xd2\x83\xf0\x90\xad\x9e\xe2\x80\x8d.\xe1\x9e\xb9\xf0\x9e\xaf\x8c\xf2\x9f\xa9\x9a", true); } // [B1, V6, V7]
4420test { try toUnicodeFail("xn--m3a6965k.xn--43e8670vmd79b"); } // [B1, V6, V7]10688test { try toUnicodeFail("xn--m3a6965k.xn--43e8670vmd79b"); } // [B1, V6, V7]
10689test { try toAsciiFail("xn--m3a6965k.xn--43e8670vmd79b", false); } // [B1, V6, V7]
10690test { try toAsciiFail("xn--m3a6965k.xn--43e8670vmd79b", true); } // [B1, V6, V7]
4421test { try toUnicodeFail("xn--m3a412lrr0o.xn--43e8670vmd79b"); } // [B1, C2, V6, V7]10691test { try toUnicodeFail("xn--m3a412lrr0o.xn--43e8670vmd79b"); } // [B1, C2, V6, V7]
10692test { try toAsciiFail("xn--m3a412lrr0o.xn--43e8670vmd79b", false); } // [B1, C2, V6, V7]
10693test { try toAsciiFail("xn--m3a412lrr0o.xn--43e8670vmd79b", true); } // [B1, C2, V6, V7]
4422test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xa0\xa8\xe2\x80\x8c\xe4\xb8\xb4\xe3\x80\x82\xea\xa1\xa2\xf2\x84\xb7\x9e\xe2\xb6\x8f\xf0\x90\xb9\xa3"); } // [B1, B5, B6, C1, V7]10694test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xa0\xa8\xe2\x80\x8c\xe4\xb8\xb4\xe3\x80\x82\xea\xa1\xa2\xf2\x84\xb7\x9e\xe2\xb6\x8f\xf0\x90\xb9\xa3"); } // [B1, B5, B6, C1, V7]
10695test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xa0\xa8\xe2\x80\x8c\xe4\xb8\xb4\xe3\x80\x82\xea\xa1\xa2\xf2\x84\xb7\x9e\xe2\xb6\x8f\xf0\x90\xb9\xa3", false); } // [B1, B5, B6, C1, V7]
10696test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xa0\xa8\xe2\x80\x8c\xe4\xb8\xb4\xe3\x80\x82\xea\xa1\xa2\xf2\x84\xb7\x9e\xe2\xb6\x8f\xf0\x90\xb9\xa3", true); } // [B2, B3, B5, B6, V7]
4423test { try toUnicodeFail("xn--miq9646b.xn--uojv340bk71c99u9f"); } // [B2, B3, B5, B6, V7]10697test { try toUnicodeFail("xn--miq9646b.xn--uojv340bk71c99u9f"); } // [B2, B3, B5, B6, V7]
10698test { try toAsciiFail("xn--miq9646b.xn--uojv340bk71c99u9f", false); } // [B2, B3, B5, B6, V7]
10699test { try toAsciiFail("xn--miq9646b.xn--uojv340bk71c99u9f", true); } // [B2, B3, B5, B6, V7]
4424test { try toUnicodeFail("xn--0uga2656aop9k.xn--uojv340bk71c99u9f"); } // [B1, B5, B6, C1, V7]10700test { try toUnicodeFail("xn--0uga2656aop9k.xn--uojv340bk71c99u9f"); } // [B1, B5, B6, C1, V7]
10701test { try toAsciiFail("xn--0uga2656aop9k.xn--uojv340bk71c99u9f", false); } // [B1, B5, B6, C1, V7]
10702test { try toAsciiFail("xn--0uga2656aop9k.xn--uojv340bk71c99u9f", true); } // [B1, B5, B6, C1, V7]
4425test { try toUnicodeFail("\xf3\xa0\x91\x98\xef\xbc\x8e\xf3\xa0\x84\xae"); } // [V7]10703test { try toUnicodeFail("\xf3\xa0\x91\x98\xef\xbc\x8e\xf3\xa0\x84\xae"); } // [V7]
10704test { try toAsciiFail("\xf3\xa0\x91\x98\xef\xbc\x8e\xf3\xa0\x84\xae", false); } // [V7, A4_2]
10705test { try toAsciiFail("\xf3\xa0\x91\x98\xef\xbc\x8e\xf3\xa0\x84\xae", true); } // [V7, A4_2]
4426test { try toUnicodeFail("\xf3\xa0\x91\x98.\xf3\xa0\x84\xae"); } // [V7]10706test { try toUnicodeFail("\xf3\xa0\x91\x98.\xf3\xa0\x84\xae"); } // [V7]
10707test { try toAsciiFail("\xf3\xa0\x91\x98.\xf3\xa0\x84\xae", false); } // [V7, A4_2]
10708test { try toAsciiFail("\xf3\xa0\x91\x98.\xf3\xa0\x84\xae", true); } // [V7, A4_2]
4427test { try toUnicodeFail("xn--s136e."); } // [V7]10709test { try toUnicodeFail("xn--s136e."); } // [V7]
10710test { try toAsciiFail("xn--s136e.", false); } // [V7, A4_2]
10711test { try toAsciiFail("xn--s136e.", true); } // [V7, A4_2]
4428test { try toUnicodeFail("\xf0\x90\xab\x84\xe0\xb5\x8d\xef\xbc\x8e\xea\xab\xb6"); } // [B1, V6]10712test { try toUnicodeFail("\xf0\x90\xab\x84\xe0\xb5\x8d\xef\xbc\x8e\xea\xab\xb6"); } // [B1, V6]
10713test { try toAsciiFail("\xf0\x90\xab\x84\xe0\xb5\x8d\xef\xbc\x8e\xea\xab\xb6", false); } // [B1, V6]
10714test { try toAsciiFail("\xf0\x90\xab\x84\xe0\xb5\x8d\xef\xbc\x8e\xea\xab\xb6", true); } // [B1, V6]
4429test { try toUnicodeFail("\xf0\x90\xab\x84\xe0\xb5\x8d.\xea\xab\xb6"); } // [B1, V6]10715test { try toUnicodeFail("\xf0\x90\xab\x84\xe0\xb5\x8d.\xea\xab\xb6"); } // [B1, V6]
10716test { try toAsciiFail("\xf0\x90\xab\x84\xe0\xb5\x8d.\xea\xab\xb6", false); } // [B1, V6]
10717test { try toAsciiFail("\xf0\x90\xab\x84\xe0\xb5\x8d.\xea\xab\xb6", true); } // [B1, V6]
4430test { try toUnicodeFail("xn--wxc7880k.xn--2v9a"); } // [B1, V6]10718test { try toUnicodeFail("xn--wxc7880k.xn--2v9a"); } // [B1, V6]
10719test { try toAsciiFail("xn--wxc7880k.xn--2v9a", false); } // [B1, V6]
10720test { try toAsciiFail("xn--wxc7880k.xn--2v9a", true); } // [B1, V6]
4431test { try toUnicodeFail("\xea\xa6\xb7\xf3\x9d\xb5\x99\xeb\xa9\xb9\xe3\x80\x82\xe2\x92\x9b\xf3\xa0\xa8\x87"); } // [V6, V7]10721test { try toUnicodeFail("\xea\xa6\xb7\xf3\x9d\xb5\x99\xeb\xa9\xb9\xe3\x80\x82\xe2\x92\x9b\xf3\xa0\xa8\x87"); } // [V6, V7]
10722test { try toAsciiFail("\xea\xa6\xb7\xf3\x9d\xb5\x99\xeb\xa9\xb9\xe3\x80\x82\xe2\x92\x9b\xf3\xa0\xa8\x87", false); } // [V6, V7]
10723test { try toAsciiFail("\xea\xa6\xb7\xf3\x9d\xb5\x99\xeb\xa9\xb9\xe3\x80\x82\xe2\x92\x9b\xf3\xa0\xa8\x87", true); } // [V6, V7]
4432test { try toUnicodeFail("\xea\xa6\xb7\xf3\x9d\xb5\x99\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xb0\xe3\x80\x82\xe2\x92\x9b\xf3\xa0\xa8\x87"); } // [V6, V7]10724test { try toUnicodeFail("\xea\xa6\xb7\xf3\x9d\xb5\x99\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xb0\xe3\x80\x82\xe2\x92\x9b\xf3\xa0\xa8\x87"); } // [V6, V7]
10725test { try toAsciiFail("\xea\xa6\xb7\xf3\x9d\xb5\x99\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xb0\xe3\x80\x82\xe2\x92\x9b\xf3\xa0\xa8\x87", false); } // [V6, V7]
10726test { try toAsciiFail("\xea\xa6\xb7\xf3\x9d\xb5\x99\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xb0\xe3\x80\x82\xe2\x92\x9b\xf3\xa0\xa8\x87", true); } // [V6, V7]
4433test { try toUnicodeFail("\xea\xa6\xb7\xf3\x9d\xb5\x99\xeb\xa9\xb9\xe3\x80\x8220.\xf3\xa0\xa8\x87"); } // [V6, V7]10727test { try toUnicodeFail("\xea\xa6\xb7\xf3\x9d\xb5\x99\xeb\xa9\xb9\xe3\x80\x8220.\xf3\xa0\xa8\x87"); } // [V6, V7]
10728test { try toAsciiFail("\xea\xa6\xb7\xf3\x9d\xb5\x99\xeb\xa9\xb9\xe3\x80\x8220.\xf3\xa0\xa8\x87", false); } // [V6, V7]
10729test { try toAsciiFail("\xea\xa6\xb7\xf3\x9d\xb5\x99\xeb\xa9\xb9\xe3\x80\x8220.\xf3\xa0\xa8\x87", true); } // [V6, V7]
4434test { try toUnicodeFail("\xea\xa6\xb7\xf3\x9d\xb5\x99\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xb0\xe3\x80\x8220.\xf3\xa0\xa8\x87"); } // [V6, V7]10730test { try toUnicodeFail("\xea\xa6\xb7\xf3\x9d\xb5\x99\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xb0\xe3\x80\x8220.\xf3\xa0\xa8\x87"); } // [V6, V7]
10731test { try toAsciiFail("\xea\xa6\xb7\xf3\x9d\xb5\x99\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xb0\xe3\x80\x8220.\xf3\xa0\xa8\x87", false); } // [V6, V7]
10732test { try toAsciiFail("\xea\xa6\xb7\xf3\x9d\xb5\x99\xe1\x84\x86\xe1\x85\xa7\xe1\x86\xb0\xe3\x80\x8220.\xf3\xa0\xa8\x87", true); } // [V6, V7]
4435test { try toUnicodeFail("xn--ym9av13acp85w.20.xn--d846e"); } // [V6, V7]10733test { try toUnicodeFail("xn--ym9av13acp85w.20.xn--d846e"); } // [V6, V7]
10734test { try toAsciiFail("xn--ym9av13acp85w.20.xn--d846e", false); } // [V6, V7]
10735test { try toAsciiFail("xn--ym9av13acp85w.20.xn--d846e", true); } // [V6, V7]
4436test { try toUnicodeFail("xn--ym9av13acp85w.xn--dth22121k"); } // [V6, V7]10736test { try toUnicodeFail("xn--ym9av13acp85w.xn--dth22121k"); } // [V6, V7]
10737test { try toAsciiFail("xn--ym9av13acp85w.xn--dth22121k", false); } // [V6, V7]
10738test { try toAsciiFail("xn--ym9av13acp85w.xn--dth22121k", true); } // [V6, V7]
4437test { try toUnicodeFail("\xe1\x82\xa5\xf3\xb2\xac\xb9\xeb\xa6\x96\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb3\xe2\x92\x8a"); } // [B4, B6, V7]10739test { try toUnicodeFail("\xe1\x82\xa5\xf3\xb2\xac\xb9\xeb\xa6\x96\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb3\xe2\x92\x8a"); } // [B4, B6, V7]
10740test { try toAsciiFail("\xe1\x82\xa5\xf3\xb2\xac\xb9\xeb\xa6\x96\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb3\xe2\x92\x8a", false); } // [B4, B6, V7]
10741test { try toAsciiFail("\xe1\x82\xa5\xf3\xb2\xac\xb9\xeb\xa6\x96\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb3\xe2\x92\x8a", true); } // [B4, B6, V7]
4438test { try toUnicodeFail("\xe1\x82\xa5\xf3\xb2\xac\xb9\xe1\x84\x85\xe1\x85\xb4\xe1\x86\xad\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb3\xe2\x92\x8a"); } // [B4, B6, V7]10742test { try toUnicodeFail("\xe1\x82\xa5\xf3\xb2\xac\xb9\xe1\x84\x85\xe1\x85\xb4\xe1\x86\xad\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb3\xe2\x92\x8a"); } // [B4, B6, V7]
10743test { try toAsciiFail("\xe1\x82\xa5\xf3\xb2\xac\xb9\xe1\x84\x85\xe1\x85\xb4\xe1\x86\xad\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb3\xe2\x92\x8a", false); } // [B4, B6, V7]
10744test { try toAsciiFail("\xe1\x82\xa5\xf3\xb2\xac\xb9\xe1\x84\x85\xe1\x85\xb4\xe1\x86\xad\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb3\xe2\x92\x8a", true); } // [B4, B6, V7]
4439test { try toUnicodeFail("\xe1\x82\xa5\xf3\xb2\xac\xb9\xeb\xa6\x96\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb33."); } // [B4, B6, V7]10745test { try toUnicodeFail("\xe1\x82\xa5\xf3\xb2\xac\xb9\xeb\xa6\x96\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb33."); } // [B4, B6, V7]
10746test { try toAsciiFail("\xe1\x82\xa5\xf3\xb2\xac\xb9\xeb\xa6\x96\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb33.", false); } // [B4, B6, V7, A4_2]
10747test { try toAsciiFail("\xe1\x82\xa5\xf3\xb2\xac\xb9\xeb\xa6\x96\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb33.", true); } // [B4, B6, V7, A4_2]
4440test { try toUnicodeFail("\xe1\x82\xa5\xf3\xb2\xac\xb9\xe1\x84\x85\xe1\x85\xb4\xe1\x86\xad\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb33."); } // [B4, B6, V7]10748test { try toUnicodeFail("\xe1\x82\xa5\xf3\xb2\xac\xb9\xe1\x84\x85\xe1\x85\xb4\xe1\x86\xad\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb33."); } // [B4, B6, V7]
10749test { try toAsciiFail("\xe1\x82\xa5\xf3\xb2\xac\xb9\xe1\x84\x85\xe1\x85\xb4\xe1\x86\xad\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb33.", false); } // [B4, B6, V7, A4_2]
10750test { try toAsciiFail("\xe1\x82\xa5\xf3\xb2\xac\xb9\xe1\x84\x85\xe1\x85\xb4\xe1\x86\xad\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb33.", true); } // [B4, B6, V7, A4_2]
4441test { try toUnicodeFail("\xe2\xb4\x85\xf3\xb2\xac\xb9\xe1\x84\x85\xe1\x85\xb4\xe1\x86\xad\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb33."); } // [B4, B6, V7]10751test { try toUnicodeFail("\xe2\xb4\x85\xf3\xb2\xac\xb9\xe1\x84\x85\xe1\x85\xb4\xe1\x86\xad\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb33."); } // [B4, B6, V7]
10752test { try toAsciiFail("\xe2\xb4\x85\xf3\xb2\xac\xb9\xe1\x84\x85\xe1\x85\xb4\xe1\x86\xad\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb33.", false); } // [B4, B6, V7, A4_2]
10753test { try toAsciiFail("\xe2\xb4\x85\xf3\xb2\xac\xb9\xe1\x84\x85\xe1\x85\xb4\xe1\x86\xad\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb33.", true); } // [B4, B6, V7, A4_2]
4442test { try toUnicodeFail("\xe2\xb4\x85\xf3\xb2\xac\xb9\xeb\xa6\x96\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb33."); } // [B4, B6, V7]10754test { try toUnicodeFail("\xe2\xb4\x85\xf3\xb2\xac\xb9\xeb\xa6\x96\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb33."); } // [B4, B6, V7]
10755test { try toAsciiFail("\xe2\xb4\x85\xf3\xb2\xac\xb9\xeb\xa6\x96\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb33.", false); } // [B4, B6, V7, A4_2]
10756test { try toAsciiFail("\xe2\xb4\x85\xf3\xb2\xac\xb9\xeb\xa6\x96\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb33.", true); } // [B4, B6, V7, A4_2]
4443test { try toUnicodeFail("xn--wkj8016bne45io02g.xn--3-55c6803r."); } // [B4, B6, V7]10757test { try toUnicodeFail("xn--wkj8016bne45io02g.xn--3-55c6803r."); } // [B4, B6, V7]
10758test { try toAsciiFail("xn--wkj8016bne45io02g.xn--3-55c6803r.", false); } // [B4, B6, V7, A4_2]
10759test { try toAsciiFail("xn--wkj8016bne45io02g.xn--3-55c6803r.", true); } // [B4, B6, V7, A4_2]
4444test { try toUnicodeFail("\xe2\xb4\x85\xf3\xb2\xac\xb9\xe1\x84\x85\xe1\x85\xb4\xe1\x86\xad\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb3\xe2\x92\x8a"); } // [B4, B6, V7]10760test { try toUnicodeFail("\xe2\xb4\x85\xf3\xb2\xac\xb9\xe1\x84\x85\xe1\x85\xb4\xe1\x86\xad\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb3\xe2\x92\x8a"); } // [B4, B6, V7]
10761test { try toAsciiFail("\xe2\xb4\x85\xf3\xb2\xac\xb9\xe1\x84\x85\xe1\x85\xb4\xe1\x86\xad\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb3\xe2\x92\x8a", false); } // [B4, B6, V7]
10762test { try toAsciiFail("\xe2\xb4\x85\xf3\xb2\xac\xb9\xe1\x84\x85\xe1\x85\xb4\xe1\x86\xad\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb3\xe2\x92\x8a", true); } // [B4, B6, V7]
4445test { try toUnicodeFail("\xe2\xb4\x85\xf3\xb2\xac\xb9\xeb\xa6\x96\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb3\xe2\x92\x8a"); } // [B4, B6, V7]10763test { try toUnicodeFail("\xe2\xb4\x85\xf3\xb2\xac\xb9\xeb\xa6\x96\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb3\xe2\x92\x8a"); } // [B4, B6, V7]
10764test { try toAsciiFail("\xe2\xb4\x85\xf3\xb2\xac\xb9\xeb\xa6\x96\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb3\xe2\x92\x8a", false); } // [B4, B6, V7]
10765test { try toAsciiFail("\xe2\xb4\x85\xf3\xb2\xac\xb9\xeb\xa6\x96\xf3\xa0\xb6\x9a.\xdd\xb7\xf0\x90\xb9\xb3\xe2\x92\x8a", true); } // [B4, B6, V7]
4446test { try toUnicodeFail("xn--wkj8016bne45io02g.xn--7pb000mwm4n"); } // [B4, B6, V7]10766test { try toUnicodeFail("xn--wkj8016bne45io02g.xn--7pb000mwm4n"); } // [B4, B6, V7]
10767test { try toAsciiFail("xn--wkj8016bne45io02g.xn--7pb000mwm4n", false); } // [B4, B6, V7]
10768test { try toAsciiFail("xn--wkj8016bne45io02g.xn--7pb000mwm4n", true); } // [B4, B6, V7]
4447test { try toUnicodeFail("xn--dnd2167fnet0io02g.xn--3-55c6803r."); } // [B4, B6, V7]10769test { try toUnicodeFail("xn--dnd2167fnet0io02g.xn--3-55c6803r."); } // [B4, B6, V7]
10770test { try toAsciiFail("xn--dnd2167fnet0io02g.xn--3-55c6803r.", false); } // [B4, B6, V7, A4_2]
10771test { try toAsciiFail("xn--dnd2167fnet0io02g.xn--3-55c6803r.", true); } // [B4, B6, V7, A4_2]
4448test { try toUnicodeFail("xn--dnd2167fnet0io02g.xn--7pb000mwm4n"); } // [B4, B6, V7]10772test { try toUnicodeFail("xn--dnd2167fnet0io02g.xn--7pb000mwm4n"); } // [B4, B6, V7]
10773test { try toAsciiFail("xn--dnd2167fnet0io02g.xn--7pb000mwm4n", false); } // [B4, B6, V7]
10774test { try toAsciiFail("xn--dnd2167fnet0io02g.xn--7pb000mwm4n", true); } // [B4, B6, V7]
4449test { try toUnicodeFail("\xe2\x80\x8c\xef\xbd\xa1\xef\xb8\x92"); } // [C1, V7]10775test { try toUnicodeFail("\xe2\x80\x8c\xef\xbd\xa1\xef\xb8\x92"); } // [C1, V7]
10776test { try toAsciiFail("\xe2\x80\x8c\xef\xbd\xa1\xef\xb8\x92", false); } // [C1, V7]
10777test { try toAsciiFail("\xe2\x80\x8c\xef\xbd\xa1\xef\xb8\x92", true); } // [V7, A4_2]
4450test { try toUnicodeFail("\xe2\x80\x8c\xe3\x80\x82\xe3\x80\x82"); } // [C1, X4_2]10778test { try toUnicodeFail("\xe2\x80\x8c\xe3\x80\x82\xe3\x80\x82"); } // [C1, X4_2]
10779test { try toAsciiFail("\xe2\x80\x8c\xe3\x80\x82\xe3\x80\x82", false); } // [C1, A4_2]
10780test { try toAsciiFail("\xe2\x80\x8c\xe3\x80\x82\xe3\x80\x82", true); } // [A4_2]
4451test { try toUnicodeFail(".."); } // [X4_2]10781test { try toUnicodeFail(".."); } // [X4_2]
10782test { try toAsciiFail("..", false); } // [A4_2]
10783test { try toAsciiFail("..", true); } // [A4_2]
4452test { try toUnicodeFail("xn--0ug.."); } // [C1, X4_2]10784test { try toUnicodeFail("xn--0ug.."); } // [C1, X4_2]
10785test { try toAsciiFail("xn--0ug..", false); } // [C1, A4_2]
10786test { try toAsciiFail("xn--0ug..", true); } // [C1, A4_2]
4453test { try toUnicodeFail(".xn--y86c"); } // [V7, X4_2]10787test { try toUnicodeFail(".xn--y86c"); } // [V7, X4_2]
10788test { try toAsciiFail(".xn--y86c", false); } // [V7, A4_2]
10789test { try toAsciiFail(".xn--y86c", true); } // [V7, A4_2]
4454test { try toUnicodeFail("xn--0ug.xn--y86c"); } // [C1, V7]10790test { try toUnicodeFail("xn--0ug.xn--y86c"); } // [C1, V7]
10791test { try toAsciiFail("xn--0ug.xn--y86c", false); } // [C1, V7]
10792test { try toAsciiFail("xn--0ug.xn--y86c", true); } // [C1, V7]
4455test { try toUnicodeFail("\xe2\x89\xaf\xdd\xad\xef\xbc\x8e\xe2\x82\x84"); } // [B1]10793test { try toUnicodeFail("\xe2\x89\xaf\xdd\xad\xef\xbc\x8e\xe2\x82\x84"); } // [B1]
10794test { try toAsciiFail("\xe2\x89\xaf\xdd\xad\xef\xbc\x8e\xe2\x82\x84", false); } // [B1]
10795test { try toAsciiFail("\xe2\x89\xaf\xdd\xad\xef\xbc\x8e\xe2\x82\x84", true); } // [B1]
4456test { try toUnicodeFail(">\xcc\xb8\xdd\xad\xef\xbc\x8e\xe2\x82\x84"); } // [B1]10796test { try toUnicodeFail(">\xcc\xb8\xdd\xad\xef\xbc\x8e\xe2\x82\x84"); } // [B1]
10797test { try toAsciiFail(">\xcc\xb8\xdd\xad\xef\xbc\x8e\xe2\x82\x84", false); } // [B1]
10798test { try toAsciiFail(">\xcc\xb8\xdd\xad\xef\xbc\x8e\xe2\x82\x84", true); } // [B1]
4457test { try toUnicodeFail("\xe2\x89\xaf\xdd\xad.e"); } // [B1]10799test { try toUnicodeFail("\xe2\x89\xaf\xdd\xad.e"); } // [B1]
10800test { try toAsciiFail("\xe2\x89\xaf\xdd\xad.e", false); } // [B1]
10801test { try toAsciiFail("\xe2\x89\xaf\xdd\xad.e", true); } // [B1]
4458test { try toUnicodeFail(">\xcc\xb8\xdd\xad.e"); } // [B1]10802test { try toUnicodeFail(">\xcc\xb8\xdd\xad.e"); } // [B1]
10803test { try toAsciiFail(">\xcc\xb8\xdd\xad.e", false); } // [B1]
10804test { try toAsciiFail(">\xcc\xb8\xdd\xad.e", true); } // [B1]
4459test { try toUnicodeFail(">\xcc\xb8\xdd\xad.E"); } // [B1]10805test { try toUnicodeFail(">\xcc\xb8\xdd\xad.E"); } // [B1]
10806test { try toAsciiFail(">\xcc\xb8\xdd\xad.E", false); } // [B1]
10807test { try toAsciiFail(">\xcc\xb8\xdd\xad.E", true); } // [B1]
4460test { try toUnicodeFail("\xe2\x89\xaf\xdd\xad.E"); } // [B1]10808test { try toUnicodeFail("\xe2\x89\xaf\xdd\xad.E"); } // [B1]
10809test { try toAsciiFail("\xe2\x89\xaf\xdd\xad.E", false); } // [B1]
10810test { try toAsciiFail("\xe2\x89\xaf\xdd\xad.E", true); } // [B1]
4461test { try toUnicodeFail("xn--xpb149k.e"); } // [B1]10811test { try toUnicodeFail("xn--xpb149k.e"); } // [B1]
10812test { try toAsciiFail("xn--xpb149k.e", false); } // [B1]
10813test { try toAsciiFail("xn--xpb149k.e", true); } // [B1]
4462test { try toUnicodeFail("\xe1\xa1\xb2-\xf0\x9d\x9f\xb9.\xc3\x9f-\xe2\x80\x8c-"); } // [C1, V3]10814test { try toUnicodeFail("\xe1\xa1\xb2-\xf0\x9d\x9f\xb9.\xc3\x9f-\xe2\x80\x8c-"); } // [C1, V3]
10815test { try toAsciiFail("\xe1\xa1\xb2-\xf0\x9d\x9f\xb9.\xc3\x9f-\xe2\x80\x8c-", false); } // [C1, V3]
10816test { try toAsciiFail("\xe1\xa1\xb2-\xf0\x9d\x9f\xb9.\xc3\x9f-\xe2\x80\x8c-", true); } // [V2, V3]
4463test { try toUnicodeFail("\xe1\xa1\xb2-3.\xc3\x9f-\xe2\x80\x8c-"); } // [C1, V3]10817test { try toUnicodeFail("\xe1\xa1\xb2-3.\xc3\x9f-\xe2\x80\x8c-"); } // [C1, V3]
10818test { try toAsciiFail("\xe1\xa1\xb2-3.\xc3\x9f-\xe2\x80\x8c-", false); } // [C1, V3]
10819test { try toAsciiFail("\xe1\xa1\xb2-3.\xc3\x9f-\xe2\x80\x8c-", true); } // [V2, V3]
4464test { try toUnicodeFail("\xe1\xa1\xb2-3.SS-\xe2\x80\x8c-"); } // [C1, V3]10820test { try toUnicodeFail("\xe1\xa1\xb2-3.SS-\xe2\x80\x8c-"); } // [C1, V3]
10821test { try toAsciiFail("\xe1\xa1\xb2-3.SS-\xe2\x80\x8c-", false); } // [C1, V3]
10822test { try toAsciiFail("\xe1\xa1\xb2-3.SS-\xe2\x80\x8c-", true); } // [V2, V3]
4465test { try toUnicodeFail("\xe1\xa1\xb2-3.ss-\xe2\x80\x8c-"); } // [C1, V3]10823test { try toUnicodeFail("\xe1\xa1\xb2-3.ss-\xe2\x80\x8c-"); } // [C1, V3]
10824test { try toAsciiFail("\xe1\xa1\xb2-3.ss-\xe2\x80\x8c-", false); } // [C1, V3]
10825test { try toAsciiFail("\xe1\xa1\xb2-3.ss-\xe2\x80\x8c-", true); } // [V2, V3]
4466test { try toUnicodeFail("\xe1\xa1\xb2-3.Ss-\xe2\x80\x8c-"); } // [C1, V3]10826test { try toUnicodeFail("\xe1\xa1\xb2-3.Ss-\xe2\x80\x8c-"); } // [C1, V3]
10827test { try toAsciiFail("\xe1\xa1\xb2-3.Ss-\xe2\x80\x8c-", false); } // [C1, V3]
10828test { try toAsciiFail("\xe1\xa1\xb2-3.Ss-\xe2\x80\x8c-", true); } // [V2, V3]
4467test { try toUnicodeFail("xn---3-p9o.ss--"); } // [V2, V3]10829test { try toUnicodeFail("xn---3-p9o.ss--"); } // [V2, V3]
10830test { try toAsciiFail("xn---3-p9o.ss--", false); } // [V2, V3]
10831test { try toAsciiFail("xn---3-p9o.ss--", true); } // [V2, V3]
4468test { try toUnicodeFail("xn---3-p9o.xn--ss---276a"); } // [C1, V3]10832test { try toUnicodeFail("xn---3-p9o.xn--ss---276a"); } // [C1, V3]
10833test { try toAsciiFail("xn---3-p9o.xn--ss---276a", false); } // [C1, V3]
10834test { try toAsciiFail("xn---3-p9o.xn--ss---276a", true); } // [C1, V3]
4469test { try toUnicodeFail("xn---3-p9o.xn-----fia9303a"); } // [C1, V3]10835test { try toUnicodeFail("xn---3-p9o.xn-----fia9303a"); } // [C1, V3]
10836test { try toAsciiFail("xn---3-p9o.xn-----fia9303a", false); } // [C1, V3]
10837test { try toAsciiFail("xn---3-p9o.xn-----fia9303a", true); } // [C1, V3]
4470test { try toUnicodeFail("\xe1\xa1\xb2-\xf0\x9d\x9f\xb9.SS-\xe2\x80\x8c-"); } // [C1, V3]10838test { try toUnicodeFail("\xe1\xa1\xb2-\xf0\x9d\x9f\xb9.SS-\xe2\x80\x8c-"); } // [C1, V3]
10839test { try toAsciiFail("\xe1\xa1\xb2-\xf0\x9d\x9f\xb9.SS-\xe2\x80\x8c-", false); } // [C1, V3]
10840test { try toAsciiFail("\xe1\xa1\xb2-\xf0\x9d\x9f\xb9.SS-\xe2\x80\x8c-", true); } // [V2, V3]
4471test { try toUnicodeFail("\xe1\xa1\xb2-\xf0\x9d\x9f\xb9.ss-\xe2\x80\x8c-"); } // [C1, V3]10841test { try toUnicodeFail("\xe1\xa1\xb2-\xf0\x9d\x9f\xb9.ss-\xe2\x80\x8c-"); } // [C1, V3]
10842test { try toAsciiFail("\xe1\xa1\xb2-\xf0\x9d\x9f\xb9.ss-\xe2\x80\x8c-", false); } // [C1, V3]
10843test { try toAsciiFail("\xe1\xa1\xb2-\xf0\x9d\x9f\xb9.ss-\xe2\x80\x8c-", true); } // [V2, V3]
4472test { try toUnicodeFail("\xe1\xa1\xb2-\xf0\x9d\x9f\xb9.Ss-\xe2\x80\x8c-"); } // [C1, V3]10844test { try toUnicodeFail("\xe1\xa1\xb2-\xf0\x9d\x9f\xb9.Ss-\xe2\x80\x8c-"); } // [C1, V3]
10845test { try toAsciiFail("\xe1\xa1\xb2-\xf0\x9d\x9f\xb9.Ss-\xe2\x80\x8c-", false); } // [C1, V3]
10846test { try toAsciiFail("\xe1\xa1\xb2-\xf0\x9d\x9f\xb9.Ss-\xe2\x80\x8c-", true); } // [V2, V3]
4473test { try toUnicodeFail("\xef\xb4\x88\xf0\x9d\x9f\xa6\xd9\x87\xf3\x8e\x8a\xaf\xef\xbd\xa1\xd3\x80"); } // [B2, B3, V7]10847test { try toUnicodeFail("\xef\xb4\x88\xf0\x9d\x9f\xa6\xd9\x87\xf3\x8e\x8a\xaf\xef\xbd\xa1\xd3\x80"); } // [B2, B3, V7]
10848test { try toAsciiFail("\xef\xb4\x88\xf0\x9d\x9f\xa6\xd9\x87\xf3\x8e\x8a\xaf\xef\xbd\xa1\xd3\x80", false); } // [B2, B3, V7]
10849test { try toAsciiFail("\xef\xb4\x88\xf0\x9d\x9f\xa6\xd9\x87\xf3\x8e\x8a\xaf\xef\xbd\xa1\xd3\x80", true); } // [B2, B3, V7]
4474test { try toUnicodeFail("\xd8\xb6\xd9\x8a4\xd9\x87\xf3\x8e\x8a\xaf\xe3\x80\x82\xd3\x80"); } // [B2, B3, V7]10850test { try toUnicodeFail("\xd8\xb6\xd9\x8a4\xd9\x87\xf3\x8e\x8a\xaf\xe3\x80\x82\xd3\x80"); } // [B2, B3, V7]
10851test { try toAsciiFail("\xd8\xb6\xd9\x8a4\xd9\x87\xf3\x8e\x8a\xaf\xe3\x80\x82\xd3\x80", false); } // [B2, B3, V7]
10852test { try toAsciiFail("\xd8\xb6\xd9\x8a4\xd9\x87\xf3\x8e\x8a\xaf\xe3\x80\x82\xd3\x80", true); } // [B2, B3, V7]
4475test { try toUnicodeFail("\xd8\xb6\xd9\x8a4\xd9\x87\xf3\x8e\x8a\xaf\xe3\x80\x82\xd3\x8f"); } // [B2, B3, V7]10853test { try toUnicodeFail("\xd8\xb6\xd9\x8a4\xd9\x87\xf3\x8e\x8a\xaf\xe3\x80\x82\xd3\x8f"); } // [B2, B3, V7]
10854test { try toAsciiFail("\xd8\xb6\xd9\x8a4\xd9\x87\xf3\x8e\x8a\xaf\xe3\x80\x82\xd3\x8f", false); } // [B2, B3, V7]
10855test { try toAsciiFail("\xd8\xb6\xd9\x8a4\xd9\x87\xf3\x8e\x8a\xaf\xe3\x80\x82\xd3\x8f", true); } // [B2, B3, V7]
4476test { try toUnicodeFail("xn--4-tnc6ck183523b.xn--s5a"); } // [B2, B3, V7]10856test { try toUnicodeFail("xn--4-tnc6ck183523b.xn--s5a"); } // [B2, B3, V7]
10857test { try toAsciiFail("xn--4-tnc6ck183523b.xn--s5a", false); } // [B2, B3, V7]
10858test { try toAsciiFail("xn--4-tnc6ck183523b.xn--s5a", true); } // [B2, B3, V7]
4477test { try toUnicodeFail("\xef\xb4\x88\xf0\x9d\x9f\xa6\xd9\x87\xf3\x8e\x8a\xaf\xef\xbd\xa1\xd3\x8f"); } // [B2, B3, V7]10859test { try toUnicodeFail("\xef\xb4\x88\xf0\x9d\x9f\xa6\xd9\x87\xf3\x8e\x8a\xaf\xef\xbd\xa1\xd3\x8f"); } // [B2, B3, V7]
10860test { try toAsciiFail("\xef\xb4\x88\xf0\x9d\x9f\xa6\xd9\x87\xf3\x8e\x8a\xaf\xef\xbd\xa1\xd3\x8f", false); } // [B2, B3, V7]
10861test { try toAsciiFail("\xef\xb4\x88\xf0\x9d\x9f\xa6\xd9\x87\xf3\x8e\x8a\xaf\xef\xbd\xa1\xd3\x8f", true); } // [B2, B3, V7]
4478test { try toUnicodeFail("xn--4-tnc6ck183523b.xn--d5a"); } // [B2, B3, V7]10862test { try toUnicodeFail("xn--4-tnc6ck183523b.xn--d5a"); } // [B2, B3, V7]
10863test { try toAsciiFail("xn--4-tnc6ck183523b.xn--d5a", false); } // [B2, B3, V7]
10864test { try toAsciiFail("xn--4-tnc6ck183523b.xn--d5a", true); } // [B2, B3, V7]
4479test { try toUnicodeFail("-.\xd8\x82\xd8\xa2\xf0\x91\x86\xbe\xf0\x9f\x90\xb9"); } // [B1, V3, V7]10865test { try toUnicodeFail("-.\xd8\x82\xd8\xa2\xf0\x91\x86\xbe\xf0\x9f\x90\xb9"); } // [B1, V3, V7]
10866test { try toAsciiFail("-.\xd8\x82\xd8\xa2\xf0\x91\x86\xbe\xf0\x9f\x90\xb9", false); } // [B1, V3, V7]
10867test { try toAsciiFail("-.\xd8\x82\xd8\xa2\xf0\x91\x86\xbe\xf0\x9f\x90\xb9", true); } // [B1, V3, V7]
4480test { try toUnicodeFail("-.\xd8\x82\xd8\xa7\xd9\x93\xf0\x91\x86\xbe\xf0\x9f\x90\xb9"); } // [B1, V3, V7]10868test { try toUnicodeFail("-.\xd8\x82\xd8\xa7\xd9\x93\xf0\x91\x86\xbe\xf0\x9f\x90\xb9"); } // [B1, V3, V7]
10869test { try toAsciiFail("-.\xd8\x82\xd8\xa7\xd9\x93\xf0\x91\x86\xbe\xf0\x9f\x90\xb9", false); } // [B1, V3, V7]
10870test { try toAsciiFail("-.\xd8\x82\xd8\xa7\xd9\x93\xf0\x91\x86\xbe\xf0\x9f\x90\xb9", true); } // [B1, V3, V7]
4481test { try toUnicodeFail("-.xn--kfb8dy983hgl7g"); } // [B1, V3, V7]10871test { try toUnicodeFail("-.xn--kfb8dy983hgl7g"); } // [B1, V3, V7]
10872test { try toAsciiFail("-.xn--kfb8dy983hgl7g", false); } // [B1, V3, V7]
10873test { try toAsciiFail("-.xn--kfb8dy983hgl7g", true); } // [B1, V3, V7]
4482test { try toUnicodeFail("\xf3\x99\xb6\x9c\xe1\xa2\x98\xe3\x80\x82\xe1\xa9\xbf\xe2\xba\xa2"); } // [V6, V7]10874test { try toUnicodeFail("\xf3\x99\xb6\x9c\xe1\xa2\x98\xe3\x80\x82\xe1\xa9\xbf\xe2\xba\xa2"); } // [V6, V7]
10875test { try toAsciiFail("\xf3\x99\xb6\x9c\xe1\xa2\x98\xe3\x80\x82\xe1\xa9\xbf\xe2\xba\xa2", false); } // [V6, V7]
10876test { try toAsciiFail("\xf3\x99\xb6\x9c\xe1\xa2\x98\xe3\x80\x82\xe1\xa9\xbf\xe2\xba\xa2", true); } // [V6, V7]
4483test { try toUnicodeFail("xn--ibf35138o.xn--fpfz94g"); } // [V6, V7]10877test { try toUnicodeFail("xn--ibf35138o.xn--fpfz94g"); } // [V6, V7]
10878test { try toAsciiFail("xn--ibf35138o.xn--fpfz94g", false); } // [V6, V7]
10879test { try toAsciiFail("xn--ibf35138o.xn--fpfz94g", true); } // [V6, V7]
4484test { try toUnicodeFail("\xe2\x89\xa0\xe1\x82\xb7\xe1\xa0\xa4\xe1\x82\xab\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]10880test { try toUnicodeFail("\xe2\x89\xa0\xe1\x82\xb7\xe1\xa0\xa4\xe1\x82\xab\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]
10881test { try toAsciiFail("\xe2\x89\xa0\xe1\x82\xb7\xe1\xa0\xa4\xe1\x82\xab\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", false); } // [B1, U1]
10882test { try toAsciiFail("\xe2\x89\xa0\xe1\x82\xb7\xe1\xa0\xa4\xe1\x82\xab\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", true); } // [B1, U1]
4485test { try toUnicodeFail("=\xcc\xb8\xe1\x82\xb7\xe1\xa0\xa4\xe1\x82\xab\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]10883test { try toUnicodeFail("=\xcc\xb8\xe1\x82\xb7\xe1\xa0\xa4\xe1\x82\xab\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]
10884test { try toAsciiFail("=\xcc\xb8\xe1\x82\xb7\xe1\xa0\xa4\xe1\x82\xab\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", false); } // [B1, U1]
10885test { try toAsciiFail("=\xcc\xb8\xe1\x82\xb7\xe1\xa0\xa4\xe1\x82\xab\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", true); } // [B1, U1]
4486test { try toUnicodeFail("\xe2\x89\xa0\xe1\x82\xb7\xe1\xa0\xa4\xe1\x82\xab\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]10886test { try toUnicodeFail("\xe2\x89\xa0\xe1\x82\xb7\xe1\xa0\xa4\xe1\x82\xab\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]
10887test { try toAsciiFail("\xe2\x89\xa0\xe1\x82\xb7\xe1\xa0\xa4\xe1\x82\xab\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", false); } // [B1, U1]
10888test { try toAsciiFail("\xe2\x89\xa0\xe1\x82\xb7\xe1\xa0\xa4\xe1\x82\xab\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", true); } // [B1, U1]
4487test { try toUnicodeFail("=\xcc\xb8\xe1\x82\xb7\xe1\xa0\xa4\xe1\x82\xab\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]10889test { try toUnicodeFail("=\xcc\xb8\xe1\x82\xb7\xe1\xa0\xa4\xe1\x82\xab\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]
10890test { try toAsciiFail("=\xcc\xb8\xe1\x82\xb7\xe1\xa0\xa4\xe1\x82\xab\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", false); } // [B1, U1]
10891test { try toAsciiFail("=\xcc\xb8\xe1\x82\xb7\xe1\xa0\xa4\xe1\x82\xab\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", true); } // [B1, U1]
4488test { try toUnicodeFail("=\xcc\xb8\xe2\xb4\x97\xe1\xa0\xa4\xe2\xb4\x8b\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]10892test { try toUnicodeFail("=\xcc\xb8\xe2\xb4\x97\xe1\xa0\xa4\xe2\xb4\x8b\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]
10893test { try toAsciiFail("=\xcc\xb8\xe2\xb4\x97\xe1\xa0\xa4\xe2\xb4\x8b\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", false); } // [B1, U1]
10894test { try toAsciiFail("=\xcc\xb8\xe2\xb4\x97\xe1\xa0\xa4\xe2\xb4\x8b\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", true); } // [B1, U1]
4489test { try toUnicodeFail("\xe2\x89\xa0\xe2\xb4\x97\xe1\xa0\xa4\xe2\xb4\x8b\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]10895test { try toUnicodeFail("\xe2\x89\xa0\xe2\xb4\x97\xe1\xa0\xa4\xe2\xb4\x8b\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]
10896test { try toAsciiFail("\xe2\x89\xa0\xe2\xb4\x97\xe1\xa0\xa4\xe2\xb4\x8b\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", false); } // [B1, U1]
10897test { try toAsciiFail("\xe2\x89\xa0\xe2\xb4\x97\xe1\xa0\xa4\xe2\xb4\x8b\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", true); } // [B1, U1]
4490test { try toUnicodeFail("\xe2\x89\xa0\xe1\x82\xb7\xe1\xa0\xa4\xe2\xb4\x8b\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]10898test { try toUnicodeFail("\xe2\x89\xa0\xe1\x82\xb7\xe1\xa0\xa4\xe2\xb4\x8b\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]
10899test { try toAsciiFail("\xe2\x89\xa0\xe1\x82\xb7\xe1\xa0\xa4\xe2\xb4\x8b\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", false); } // [B1, U1]
10900test { try toAsciiFail("\xe2\x89\xa0\xe1\x82\xb7\xe1\xa0\xa4\xe2\xb4\x8b\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", true); } // [B1, U1]
4491test { try toUnicodeFail("=\xcc\xb8\xe1\x82\xb7\xe1\xa0\xa4\xe2\xb4\x8b\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]10901test { try toUnicodeFail("=\xcc\xb8\xe1\x82\xb7\xe1\xa0\xa4\xe2\xb4\x8b\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]
10902test { try toAsciiFail("=\xcc\xb8\xe1\x82\xb7\xe1\xa0\xa4\xe2\xb4\x8b\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", false); } // [B1, U1]
10903test { try toAsciiFail("=\xcc\xb8\xe1\x82\xb7\xe1\xa0\xa4\xe2\xb4\x8b\xe3\x80\x82?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", true); } // [B1, U1]
4492test { try toUnicodeFail("xn--66e353ce0ilb.xn--?-7fb34t0u7s"); } // [B1, U1]10904test { try toUnicodeFail("xn--66e353ce0ilb.xn--?-7fb34t0u7s"); } // [B1, U1]
10905test { try toAsciiFail("xn--66e353ce0ilb.xn--?-7fb34t0u7s", false); } // [B1, U1]
10906test { try toAsciiFail("xn--66e353ce0ilb.xn--?-7fb34t0u7s", true); } // [B1, U1]
4493test { try toUnicodeFail("=\xcc\xb8\xe2\xb4\x97\xe1\xa0\xa4\xe2\xb4\x8b\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]10907test { try toUnicodeFail("=\xcc\xb8\xe2\xb4\x97\xe1\xa0\xa4\xe2\xb4\x8b\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]
10908test { try toAsciiFail("=\xcc\xb8\xe2\xb4\x97\xe1\xa0\xa4\xe2\xb4\x8b\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", false); } // [B1, U1]
10909test { try toAsciiFail("=\xcc\xb8\xe2\xb4\x97\xe1\xa0\xa4\xe2\xb4\x8b\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", true); } // [B1, U1]
4494test { try toUnicodeFail("\xe2\x89\xa0\xe2\xb4\x97\xe1\xa0\xa4\xe2\xb4\x8b\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]10910test { try toUnicodeFail("\xe2\x89\xa0\xe2\xb4\x97\xe1\xa0\xa4\xe2\xb4\x8b\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]
10911test { try toAsciiFail("\xe2\x89\xa0\xe2\xb4\x97\xe1\xa0\xa4\xe2\xb4\x8b\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", false); } // [B1, U1]
10912test { try toAsciiFail("\xe2\x89\xa0\xe2\xb4\x97\xe1\xa0\xa4\xe2\xb4\x8b\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", true); } // [B1, U1]
4495test { try toUnicodeFail("\xe2\x89\xa0\xe1\x82\xb7\xe1\xa0\xa4\xe2\xb4\x8b\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]10913test { try toUnicodeFail("\xe2\x89\xa0\xe1\x82\xb7\xe1\xa0\xa4\xe2\xb4\x8b\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]
10914test { try toAsciiFail("\xe2\x89\xa0\xe1\x82\xb7\xe1\xa0\xa4\xe2\xb4\x8b\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", false); } // [B1, U1]
10915test { try toAsciiFail("\xe2\x89\xa0\xe1\x82\xb7\xe1\xa0\xa4\xe2\xb4\x8b\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", true); } // [B1, U1]
4496test { try toUnicodeFail("=\xcc\xb8\xe1\x82\xb7\xe1\xa0\xa4\xe2\xb4\x8b\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]10916test { try toUnicodeFail("=\xcc\xb8\xe1\x82\xb7\xe1\xa0\xa4\xe2\xb4\x8b\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]
10917test { try toAsciiFail("=\xcc\xb8\xe1\x82\xb7\xe1\xa0\xa4\xe2\xb4\x8b\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", false); } // [B1, U1]
10918test { try toAsciiFail("=\xcc\xb8\xe1\x82\xb7\xe1\xa0\xa4\xe2\xb4\x8b\xef\xbd\xa1?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", true); } // [B1, U1]
4497test { try toUnicodeFail("xn--vnd619as6ig6k.xn--?-7fb34t0u7s"); } // [B1, V7, U1]10919test { try toUnicodeFail("xn--vnd619as6ig6k.xn--?-7fb34t0u7s"); } // [B1, V7, U1]
10920test { try toAsciiFail("xn--vnd619as6ig6k.xn--?-7fb34t0u7s", false); } // [B1, V7, U1]
10921test { try toAsciiFail("xn--vnd619as6ig6k.xn--?-7fb34t0u7s", true); } // [B1, V7, U1]
4498test { try toUnicodeFail("xn--jndx718cnnl.xn--?-7fb34t0u7s"); } // [B1, V7, U1]10922test { try toUnicodeFail("xn--jndx718cnnl.xn--?-7fb34t0u7s"); } // [B1, V7, U1]
10923test { try toAsciiFail("xn--jndx718cnnl.xn--?-7fb34t0u7s", false); } // [B1, V7, U1]
10924test { try toAsciiFail("xn--jndx718cnnl.xn--?-7fb34t0u7s", true); } // [B1, V7, U1]
4499test { try toUnicodeFail("xn--vnd619as6ig6k.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, V7, U1]10925test { try toUnicodeFail("xn--vnd619as6ig6k.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, V7, U1]
10926test { try toAsciiFail("xn--vnd619as6ig6k.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", false); } // [B1, V7, U1]
10927test { try toAsciiFail("xn--vnd619as6ig6k.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", true); } // [B1, V7, U1]
4500test { try toUnicodeFail("XN--VND619AS6IG6K.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, V7, U1]10928test { try toUnicodeFail("XN--VND619AS6IG6K.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, V7, U1]
10929test { try toAsciiFail("XN--VND619AS6IG6K.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", false); } // [B1, V7, U1]
10930test { try toAsciiFail("XN--VND619AS6IG6K.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", true); } // [B1, V7, U1]
4501test { try toUnicodeFail("Xn--Vnd619as6ig6k.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, V7, U1]10931test { try toUnicodeFail("Xn--Vnd619as6ig6k.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, V7, U1]
10932test { try toAsciiFail("Xn--Vnd619as6ig6k.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", false); } // [B1, V7, U1]
10933test { try toAsciiFail("Xn--Vnd619as6ig6k.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", true); } // [B1, V7, U1]
4502test { try toUnicodeFail("xn--66e353ce0ilb.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]10934test { try toUnicodeFail("xn--66e353ce0ilb.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]
10935test { try toAsciiFail("xn--66e353ce0ilb.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", false); } // [B1, U1]
10936test { try toAsciiFail("xn--66e353ce0ilb.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", true); } // [B1, U1]
4503test { try toUnicodeFail("XN--66E353CE0ILB.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]10937test { try toUnicodeFail("XN--66E353CE0ILB.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]
10938test { try toAsciiFail("XN--66E353CE0ILB.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", false); } // [B1, U1]
10939test { try toAsciiFail("XN--66E353CE0ILB.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", true); } // [B1, U1]
4504test { try toUnicodeFail("Xn--66e353ce0ilb.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]10940test { try toUnicodeFail("Xn--66e353ce0ilb.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, U1]
10941test { try toAsciiFail("Xn--66e353ce0ilb.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", false); } // [B1, U1]
10942test { try toAsciiFail("Xn--66e353ce0ilb.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", true); } // [B1, U1]
4505test { try toUnicodeFail("xn--jndx718cnnl.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, V7, U1]10943test { try toUnicodeFail("xn--jndx718cnnl.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, V7, U1]
10944test { try toAsciiFail("xn--jndx718cnnl.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", false); } // [B1, V7, U1]
10945test { try toAsciiFail("xn--jndx718cnnl.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", true); } // [B1, V7, U1]
4506test { try toUnicodeFail("XN--JNDX718CNNL.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, V7, U1]10946test { try toUnicodeFail("XN--JNDX718CNNL.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, V7, U1]
10947test { try toAsciiFail("XN--JNDX718CNNL.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", false); } // [B1, V7, U1]
10948test { try toAsciiFail("XN--JNDX718CNNL.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", true); } // [B1, V7, U1]
4507test { try toUnicodeFail("Xn--Jndx718cnnl.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, V7, U1]10949test { try toUnicodeFail("Xn--Jndx718cnnl.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4"); } // [B1, V7, U1]
10950test { try toAsciiFail("Xn--Jndx718cnnl.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", false); } // [B1, V7, U1]
10951test { try toAsciiFail("Xn--Jndx718cnnl.?\xcd\x8c\xd8\xb3\xe8\xa7\xb4", true); } // [B1, V7, U1]
4508test { try toUnicodeFail("\xd9\xa7.\xf0\x90\xa5\xa8"); } // [B1, V7]10952test { try toUnicodeFail("\xd9\xa7.\xf0\x90\xa5\xa8"); } // [B1, V7]
10953test { try toAsciiFail("\xd9\xa7.\xf0\x90\xa5\xa8", false); } // [B1, V7]
10954test { try toAsciiFail("\xd9\xa7.\xf0\x90\xa5\xa8", true); } // [B1, V7]
4509test { try toUnicodeFail("xn--gib.xn--vm9c"); } // [B1, V7]10955test { try toUnicodeFail("xn--gib.xn--vm9c"); } // [B1, V7]
10956test { try toAsciiFail("xn--gib.xn--vm9c", false); } // [B1, V7]
10957test { try toAsciiFail("xn--gib.xn--vm9c", true); } // [B1, V7]
4510test { try toUnicodeFail("\xea\xa7\x80\xf0\x9d\x9f\xaf\xef\xbd\xa1\xe2\x80\x8d\xf1\xbc\x91\xa5\xf0\x90\xb9\xaa\xe1\xaf\xb3"); } // [B1, C2, V6, V7]10958test { try toUnicodeFail("\xea\xa7\x80\xf0\x9d\x9f\xaf\xef\xbd\xa1\xe2\x80\x8d\xf1\xbc\x91\xa5\xf0\x90\xb9\xaa\xe1\xaf\xb3"); } // [B1, C2, V6, V7]
10959test { try toAsciiFail("\xea\xa7\x80\xf0\x9d\x9f\xaf\xef\xbd\xa1\xe2\x80\x8d\xf1\xbc\x91\xa5\xf0\x90\xb9\xaa\xe1\xaf\xb3", false); } // [B1, C2, V6, V7]
10960test { try toAsciiFail("\xea\xa7\x80\xf0\x9d\x9f\xaf\xef\xbd\xa1\xe2\x80\x8d\xf1\xbc\x91\xa5\xf0\x90\xb9\xaa\xe1\xaf\xb3", true); } // [B5, V6, V7]
4511test { try toUnicodeFail("\xea\xa7\x803\xe3\x80\x82\xe2\x80\x8d\xf1\xbc\x91\xa5\xf0\x90\xb9\xaa\xe1\xaf\xb3"); } // [B1, C2, V6, V7]10961test { try toUnicodeFail("\xea\xa7\x803\xe3\x80\x82\xe2\x80\x8d\xf1\xbc\x91\xa5\xf0\x90\xb9\xaa\xe1\xaf\xb3"); } // [B1, C2, V6, V7]
10962test { try toAsciiFail("\xea\xa7\x803\xe3\x80\x82\xe2\x80\x8d\xf1\xbc\x91\xa5\xf0\x90\xb9\xaa\xe1\xaf\xb3", false); } // [B1, C2, V6, V7]
10963test { try toAsciiFail("\xea\xa7\x803\xe3\x80\x82\xe2\x80\x8d\xf1\xbc\x91\xa5\xf0\x90\xb9\xaa\xe1\xaf\xb3", true); } // [B5, V6, V7]
4512test { try toUnicodeFail("xn--3-5z4e.xn--1zfz754hncv8b"); } // [B5, V6, V7]10964test { try toUnicodeFail("xn--3-5z4e.xn--1zfz754hncv8b"); } // [B5, V6, V7]
10965test { try toAsciiFail("xn--3-5z4e.xn--1zfz754hncv8b", false); } // [B5, V6, V7]
10966test { try toAsciiFail("xn--3-5z4e.xn--1zfz754hncv8b", true); } // [B5, V6, V7]
4513test { try toUnicodeFail("xn--3-5z4e.xn--1zf96ony8ygd68c"); } // [B1, C2, V6, V7]10967test { try toUnicodeFail("xn--3-5z4e.xn--1zf96ony8ygd68c"); } // [B1, C2, V6, V7]
10968test { try toAsciiFail("xn--3-5z4e.xn--1zf96ony8ygd68c", false); } // [B1, C2, V6, V7]
10969test { try toAsciiFail("xn--3-5z4e.xn--1zf96ony8ygd68c", true); } // [B1, C2, V6, V7]
4514test { try toUnicodeFail("\xf2\xa3\x95\x844\xf1\xa0\x96\xbd.\xe2\x89\xaf\xd9\xa4\xf0\x91\x80\xbe\xf3\xa0\xb8\x8c"); } // [B1, V7]10970test { try toUnicodeFail("\xf2\xa3\x95\x844\xf1\xa0\x96\xbd.\xe2\x89\xaf\xd9\xa4\xf0\x91\x80\xbe\xf3\xa0\xb8\x8c"); } // [B1, V7]
10971test { try toAsciiFail("\xf2\xa3\x95\x844\xf1\xa0\x96\xbd.\xe2\x89\xaf\xd9\xa4\xf0\x91\x80\xbe\xf3\xa0\xb8\x8c", false); } // [B1, V7]
10972test { try toAsciiFail("\xf2\xa3\x95\x844\xf1\xa0\x96\xbd.\xe2\x89\xaf\xd9\xa4\xf0\x91\x80\xbe\xf3\xa0\xb8\x8c", true); } // [B1, V7]
4515test { try toUnicodeFail("\xf2\xa3\x95\x844\xf1\xa0\x96\xbd.>\xcc\xb8\xd9\xa4\xf0\x91\x80\xbe\xf3\xa0\xb8\x8c"); } // [B1, V7]10973test { try toUnicodeFail("\xf2\xa3\x95\x844\xf1\xa0\x96\xbd.>\xcc\xb8\xd9\xa4\xf0\x91\x80\xbe\xf3\xa0\xb8\x8c"); } // [B1, V7]
10974test { try toAsciiFail("\xf2\xa3\x95\x844\xf1\xa0\x96\xbd.>\xcc\xb8\xd9\xa4\xf0\x91\x80\xbe\xf3\xa0\xb8\x8c", false); } // [B1, V7]
10975test { try toAsciiFail("\xf2\xa3\x95\x844\xf1\xa0\x96\xbd.>\xcc\xb8\xd9\xa4\xf0\x91\x80\xbe\xf3\xa0\xb8\x8c", true); } // [B1, V7]
4516test { try toUnicodeFail("xn--4-fg85dl688i.xn--dib174li86ntdy0i"); } // [B1, V7]10976test { try toUnicodeFail("xn--4-fg85dl688i.xn--dib174li86ntdy0i"); } // [B1, V7]
10977test { try toAsciiFail("xn--4-fg85dl688i.xn--dib174li86ntdy0i", false); } // [B1, V7]
10978test { try toAsciiFail("xn--4-fg85dl688i.xn--dib174li86ntdy0i", true); } // [B1, V7]
4517test { try toUnicodeFail("\xf2\x97\x86\xa7\xf0\x9d\x9f\xaf\xe3\x80\x82\xe2\x92\x88\xe1\xa9\xb6\xf0\x9d\x9f\x9a\xf2\xa0\x98\x8c"); } // [V7]10979test { try toUnicodeFail("\xf2\x97\x86\xa7\xf0\x9d\x9f\xaf\xe3\x80\x82\xe2\x92\x88\xe1\xa9\xb6\xf0\x9d\x9f\x9a\xf2\xa0\x98\x8c"); } // [V7]
10980test { try toAsciiFail("\xf2\x97\x86\xa7\xf0\x9d\x9f\xaf\xe3\x80\x82\xe2\x92\x88\xe1\xa9\xb6\xf0\x9d\x9f\x9a\xf2\xa0\x98\x8c", false); } // [V7]
10981test { try toAsciiFail("\xf2\x97\x86\xa7\xf0\x9d\x9f\xaf\xe3\x80\x82\xe2\x92\x88\xe1\xa9\xb6\xf0\x9d\x9f\x9a\xf2\xa0\x98\x8c", true); } // [V7]
4518test { try toUnicodeFail("\xf2\x97\x86\xa73\xe3\x80\x821.\xe1\xa9\xb62\xf2\xa0\x98\x8c"); } // [V6, V7]10982test { try toUnicodeFail("\xf2\x97\x86\xa73\xe3\x80\x821.\xe1\xa9\xb62\xf2\xa0\x98\x8c"); } // [V6, V7]
10983test { try toAsciiFail("\xf2\x97\x86\xa73\xe3\x80\x821.\xe1\xa9\xb62\xf2\xa0\x98\x8c", false); } // [V6, V7]
10984test { try toAsciiFail("\xf2\x97\x86\xa73\xe3\x80\x821.\xe1\xa9\xb62\xf2\xa0\x98\x8c", true); } // [V6, V7]
4519test { try toUnicodeFail("xn--3-rj42h.1.xn--2-13k96240l"); } // [V6, V7]10985test { try toUnicodeFail("xn--3-rj42h.1.xn--2-13k96240l"); } // [V6, V7]
10986test { try toAsciiFail("xn--3-rj42h.1.xn--2-13k96240l", false); } // [V6, V7]
10987test { try toAsciiFail("xn--3-rj42h.1.xn--2-13k96240l", true); } // [V6, V7]
4520test { try toUnicodeFail("xn--3-rj42h.xn--2-13k746cq465x"); } // [V7]10988test { try toUnicodeFail("xn--3-rj42h.xn--2-13k746cq465x"); } // [V7]
10989test { try toAsciiFail("xn--3-rj42h.xn--2-13k746cq465x", false); } // [V7]
10990test { try toAsciiFail("xn--3-rj42h.xn--2-13k746cq465x", true); } // [V7]
4521test { try toUnicodeFail("\xe2\x80\x8d\xe2\x82\x85\xe2\x92\x88\xe3\x80\x82\xe2\x89\xaf\xf0\x9d\x9f\xb4\xe2\x80\x8d"); } // [C2, V7]10991test { try toUnicodeFail("\xe2\x80\x8d\xe2\x82\x85\xe2\x92\x88\xe3\x80\x82\xe2\x89\xaf\xf0\x9d\x9f\xb4\xe2\x80\x8d"); } // [C2, V7]
10992test { try toAsciiFail("\xe2\x80\x8d\xe2\x82\x85\xe2\x92\x88\xe3\x80\x82\xe2\x89\xaf\xf0\x9d\x9f\xb4\xe2\x80\x8d", false); } // [C2, V7]
10993test { try toAsciiFail("\xe2\x80\x8d\xe2\x82\x85\xe2\x92\x88\xe3\x80\x82\xe2\x89\xaf\xf0\x9d\x9f\xb4\xe2\x80\x8d", true); } // [V7]
4522test { try toUnicodeFail("\xe2\x80\x8d\xe2\x82\x85\xe2\x92\x88\xe3\x80\x82>\xcc\xb8\xf0\x9d\x9f\xb4\xe2\x80\x8d"); } // [C2, V7]10994test { try toUnicodeFail("\xe2\x80\x8d\xe2\x82\x85\xe2\x92\x88\xe3\x80\x82>\xcc\xb8\xf0\x9d\x9f\xb4\xe2\x80\x8d"); } // [C2, V7]
10995test { try toAsciiFail("\xe2\x80\x8d\xe2\x82\x85\xe2\x92\x88\xe3\x80\x82>\xcc\xb8\xf0\x9d\x9f\xb4\xe2\x80\x8d", false); } // [C2, V7]
10996test { try toAsciiFail("\xe2\x80\x8d\xe2\x82\x85\xe2\x92\x88\xe3\x80\x82>\xcc\xb8\xf0\x9d\x9f\xb4\xe2\x80\x8d", true); } // [V7]
4523test { try toUnicodeFail("\xe2\x80\x8d51.\xe3\x80\x82\xe2\x89\xaf8\xe2\x80\x8d"); } // [C2, X4_2]10997test { try toUnicodeFail("\xe2\x80\x8d51.\xe3\x80\x82\xe2\x89\xaf8\xe2\x80\x8d"); } // [C2, X4_2]
10998test { try toAsciiFail("\xe2\x80\x8d51.\xe3\x80\x82\xe2\x89\xaf8\xe2\x80\x8d", false); } // [C2, A4_2]
10999test { try toAsciiFail("\xe2\x80\x8d51.\xe3\x80\x82\xe2\x89\xaf8\xe2\x80\x8d", true); } // [A4_2]
4524test { try toUnicodeFail("\xe2\x80\x8d51.\xe3\x80\x82>\xcc\xb88\xe2\x80\x8d"); } // [C2, X4_2]11000test { try toUnicodeFail("\xe2\x80\x8d51.\xe3\x80\x82>\xcc\xb88\xe2\x80\x8d"); } // [C2, X4_2]
11001test { try toAsciiFail("\xe2\x80\x8d51.\xe3\x80\x82>\xcc\xb88\xe2\x80\x8d", false); } // [C2, A4_2]
11002test { try toAsciiFail("\xe2\x80\x8d51.\xe3\x80\x82>\xcc\xb88\xe2\x80\x8d", true); } // [A4_2]
4525test { try toUnicodeFail("51..xn--8-ogo"); } // [X4_2]11003test { try toUnicodeFail("51..xn--8-ogo"); } // [X4_2]
11004test { try toAsciiFail("51..xn--8-ogo", false); } // [A4_2]
11005test { try toAsciiFail("51..xn--8-ogo", true); } // [A4_2]
4526test { try toUnicodeFail("xn--51-l1t..xn--8-ugn00i"); } // [C2, X4_2]11006test { try toUnicodeFail("xn--51-l1t..xn--8-ugn00i"); } // [C2, X4_2]
11007test { try toAsciiFail("xn--51-l1t..xn--8-ugn00i", false); } // [C2, A4_2]
11008test { try toAsciiFail("xn--51-l1t..xn--8-ugn00i", true); } // [C2, A4_2]
4527test { try toUnicodeFail("xn--5-ecp.xn--8-ogo"); } // [V7]11009test { try toUnicodeFail("xn--5-ecp.xn--8-ogo"); } // [V7]
11010test { try toAsciiFail("xn--5-ecp.xn--8-ogo", false); } // [V7]
11011test { try toAsciiFail("xn--5-ecp.xn--8-ogo", true); } // [V7]
4528test { try toUnicodeFail("xn--5-tgnz5r.xn--8-ugn00i"); } // [C2, V7]11012test { try toUnicodeFail("xn--5-tgnz5r.xn--8-ugn00i"); } // [C2, V7]
11013test { try toAsciiFail("xn--5-tgnz5r.xn--8-ugn00i", false); } // [C2, V7]
11014test { try toAsciiFail("xn--5-tgnz5r.xn--8-ugn00i", true); } // [C2, V7]
4529test { try toUnicodeFail("\xea\xa1\xb0\xda\x97\xe1\x82\x86\xef\xbc\x8e\xf2\xaa\x98\x99\xdc\xaf\xe2\x89\xa0\xe2\x80\x8c"); } // [B5, B6, C1, V7]11015test { try toUnicodeFail("\xea\xa1\xb0\xda\x97\xe1\x82\x86\xef\xbc\x8e\xf2\xaa\x98\x99\xdc\xaf\xe2\x89\xa0\xe2\x80\x8c"); } // [B5, B6, C1, V7]
11016test { try toAsciiFail("\xea\xa1\xb0\xda\x97\xe1\x82\x86\xef\xbc\x8e\xf2\xaa\x98\x99\xdc\xaf\xe2\x89\xa0\xe2\x80\x8c", false); } // [B5, B6, C1, V7]
11017test { try toAsciiFail("\xea\xa1\xb0\xda\x97\xe1\x82\x86\xef\xbc\x8e\xf2\xaa\x98\x99\xdc\xaf\xe2\x89\xa0\xe2\x80\x8c", true); } // [B5, B6, V7]
4530test { try toUnicodeFail("\xea\xa1\xb0\xda\x97\xe1\x82\x86\xef\xbc\x8e\xf2\xaa\x98\x99\xdc\xaf=\xcc\xb8\xe2\x80\x8c"); } // [B5, B6, C1, V7]11018test { try toUnicodeFail("\xea\xa1\xb0\xda\x97\xe1\x82\x86\xef\xbc\x8e\xf2\xaa\x98\x99\xdc\xaf=\xcc\xb8\xe2\x80\x8c"); } // [B5, B6, C1, V7]
11019test { try toAsciiFail("\xea\xa1\xb0\xda\x97\xe1\x82\x86\xef\xbc\x8e\xf2\xaa\x98\x99\xdc\xaf=\xcc\xb8\xe2\x80\x8c", false); } // [B5, B6, C1, V7]
11020test { try toAsciiFail("\xea\xa1\xb0\xda\x97\xe1\x82\x86\xef\xbc\x8e\xf2\xaa\x98\x99\xdc\xaf=\xcc\xb8\xe2\x80\x8c", true); } // [B5, B6, V7]
4531test { try toUnicodeFail("\xea\xa1\xb0\xda\x97\xe1\x82\x86.\xf2\xaa\x98\x99\xdc\xaf\xe2\x89\xa0\xe2\x80\x8c"); } // [B5, B6, C1, V7]11021test { try toUnicodeFail("\xea\xa1\xb0\xda\x97\xe1\x82\x86.\xf2\xaa\x98\x99\xdc\xaf\xe2\x89\xa0\xe2\x80\x8c"); } // [B5, B6, C1, V7]
11022test { try toAsciiFail("\xea\xa1\xb0\xda\x97\xe1\x82\x86.\xf2\xaa\x98\x99\xdc\xaf\xe2\x89\xa0\xe2\x80\x8c", false); } // [B5, B6, C1, V7]
11023test { try toAsciiFail("\xea\xa1\xb0\xda\x97\xe1\x82\x86.\xf2\xaa\x98\x99\xdc\xaf\xe2\x89\xa0\xe2\x80\x8c", true); } // [B5, B6, V7]
4532test { try toUnicodeFail("\xea\xa1\xb0\xda\x97\xe1\x82\x86.\xf2\xaa\x98\x99\xdc\xaf=\xcc\xb8\xe2\x80\x8c"); } // [B5, B6, C1, V7]11024test { try toUnicodeFail("\xea\xa1\xb0\xda\x97\xe1\x82\x86.\xf2\xaa\x98\x99\xdc\xaf=\xcc\xb8\xe2\x80\x8c"); } // [B5, B6, C1, V7]
11025test { try toAsciiFail("\xea\xa1\xb0\xda\x97\xe1\x82\x86.\xf2\xaa\x98\x99\xdc\xaf=\xcc\xb8\xe2\x80\x8c", false); } // [B5, B6, C1, V7]
11026test { try toAsciiFail("\xea\xa1\xb0\xda\x97\xe1\x82\x86.\xf2\xaa\x98\x99\xdc\xaf=\xcc\xb8\xe2\x80\x8c", true); } // [B5, B6, V7]
4533test { try toUnicodeFail("xn--tjb002cn51k.xn--5nb630lbj91q"); } // [B5, B6, V7]11027test { try toUnicodeFail("xn--tjb002cn51k.xn--5nb630lbj91q"); } // [B5, B6, V7]
11028test { try toAsciiFail("xn--tjb002cn51k.xn--5nb630lbj91q", false); } // [B5, B6, V7]
11029test { try toAsciiFail("xn--tjb002cn51k.xn--5nb630lbj91q", true); } // [B5, B6, V7]
4534test { try toUnicodeFail("xn--tjb002cn51k.xn--5nb448jcubcz547b"); } // [B5, B6, C1, V7]11030test { try toUnicodeFail("xn--tjb002cn51k.xn--5nb448jcubcz547b"); } // [B5, B6, C1, V7]
11031test { try toAsciiFail("xn--tjb002cn51k.xn--5nb448jcubcz547b", false); } // [B5, B6, C1, V7]
11032test { try toAsciiFail("xn--tjb002cn51k.xn--5nb448jcubcz547b", true); } // [B5, B6, C1, V7]
4535test { try toUnicodeFail("\xf0\x91\x84\xb1\xef\xbd\xa1\xf2\xaa\x8c\xbf\xf0\x90\xb9\xb5"); } // [B1, B5, B6, V6, V7]11033test { try toUnicodeFail("\xf0\x91\x84\xb1\xef\xbd\xa1\xf2\xaa\x8c\xbf\xf0\x90\xb9\xb5"); } // [B1, B5, B6, V6, V7]
11034test { try toAsciiFail("\xf0\x91\x84\xb1\xef\xbd\xa1\xf2\xaa\x8c\xbf\xf0\x90\xb9\xb5", false); } // [B1, B5, B6, V6, V7]
11035test { try toAsciiFail("\xf0\x91\x84\xb1\xef\xbd\xa1\xf2\xaa\x8c\xbf\xf0\x90\xb9\xb5", true); } // [B1, B5, B6, V6, V7]
4536test { try toUnicodeFail("\xf0\x91\x84\xb1\xe3\x80\x82\xf2\xaa\x8c\xbf\xf0\x90\xb9\xb5"); } // [B1, B5, B6, V6, V7]11036test { try toUnicodeFail("\xf0\x91\x84\xb1\xe3\x80\x82\xf2\xaa\x8c\xbf\xf0\x90\xb9\xb5"); } // [B1, B5, B6, V6, V7]
11037test { try toAsciiFail("\xf0\x91\x84\xb1\xe3\x80\x82\xf2\xaa\x8c\xbf\xf0\x90\xb9\xb5", false); } // [B1, B5, B6, V6, V7]
11038test { try toAsciiFail("\xf0\x91\x84\xb1\xe3\x80\x82\xf2\xaa\x8c\xbf\xf0\x90\xb9\xb5", true); } // [B1, B5, B6, V6, V7]
4537test { try toUnicodeFail("xn--t80d.xn--to0d14792b"); } // [B1, B5, B6, V6, V7]11039test { try toUnicodeFail("xn--t80d.xn--to0d14792b"); } // [B1, B5, B6, V6, V7]
11040test { try toAsciiFail("xn--t80d.xn--to0d14792b", false); } // [B1, B5, B6, V6, V7]
11041test { try toAsciiFail("xn--t80d.xn--to0d14792b", true); } // [B1, B5, B6, V6, V7]
4538test { try toUnicodeFail("\xf0\x9d\x9f\xa5\xd8\x80\xe3\x80\x82\xdc\xbd"); } // [B1, V6, V7]11042test { try toUnicodeFail("\xf0\x9d\x9f\xa5\xd8\x80\xe3\x80\x82\xdc\xbd"); } // [B1, V6, V7]
11043test { try toAsciiFail("\xf0\x9d\x9f\xa5\xd8\x80\xe3\x80\x82\xdc\xbd", false); } // [B1, V6, V7]
11044test { try toAsciiFail("\xf0\x9d\x9f\xa5\xd8\x80\xe3\x80\x82\xdc\xbd", true); } // [B1, V6, V7]
4539test { try toUnicodeFail("3\xd8\x80\xe3\x80\x82\xdc\xbd"); } // [B1, V6, V7]11045test { try toUnicodeFail("3\xd8\x80\xe3\x80\x82\xdc\xbd"); } // [B1, V6, V7]
11046test { try toAsciiFail("3\xd8\x80\xe3\x80\x82\xdc\xbd", false); } // [B1, V6, V7]
11047test { try toAsciiFail("3\xd8\x80\xe3\x80\x82\xdc\xbd", true); } // [B1, V6, V7]
4540test { try toUnicodeFail("xn--3-rkc.xn--kob"); } // [B1, V6, V7]11048test { try toUnicodeFail("xn--3-rkc.xn--kob"); } // [B1, V6, V7]
11049test { try toAsciiFail("xn--3-rkc.xn--kob", false); } // [B1, V6, V7]
11050test { try toAsciiFail("xn--3-rkc.xn--kob", true); } // [B1, V6, V7]
4541test { try toUnicodeFail("\xd8\xb7\xf0\x90\xb9\xa3\xd9\xa6.\xdd\xad\xea\xb8\xb7"); } // [B2, B3]11051test { try toUnicodeFail("\xd8\xb7\xf0\x90\xb9\xa3\xd9\xa6.\xdd\xad\xea\xb8\xb7"); } // [B2, B3]
11052test { try toAsciiFail("\xd8\xb7\xf0\x90\xb9\xa3\xd9\xa6.\xdd\xad\xea\xb8\xb7", false); } // [B2, B3]
11053test { try toAsciiFail("\xd8\xb7\xf0\x90\xb9\xa3\xd9\xa6.\xdd\xad\xea\xb8\xb7", true); } // [B2, B3]
4542test { try toUnicodeFail("\xd8\xb7\xf0\x90\xb9\xa3\xd9\xa6.\xdd\xad\xe1\x84\x80\xe1\x85\xb5\xe1\x86\xae"); } // [B2, B3]11054test { try toUnicodeFail("\xd8\xb7\xf0\x90\xb9\xa3\xd9\xa6.\xdd\xad\xe1\x84\x80\xe1\x85\xb5\xe1\x86\xae"); } // [B2, B3]
11055test { try toAsciiFail("\xd8\xb7\xf0\x90\xb9\xa3\xd9\xa6.\xdd\xad\xe1\x84\x80\xe1\x85\xb5\xe1\x86\xae", false); } // [B2, B3]
11056test { try toAsciiFail("\xd8\xb7\xf0\x90\xb9\xa3\xd9\xa6.\xdd\xad\xe1\x84\x80\xe1\x85\xb5\xe1\x86\xae", true); } // [B2, B3]
4543test { try toUnicodeFail("xn--2gb8gu829f.xn--xpb0156f"); } // [B2, B3]11057test { try toUnicodeFail("xn--2gb8gu829f.xn--xpb0156f"); } // [B2, B3]
11058test { try toAsciiFail("xn--2gb8gu829f.xn--xpb0156f", false); } // [B2, B3]
11059test { try toAsciiFail("xn--2gb8gu829f.xn--xpb0156f", true); } // [B2, B3]
4544test { try toUnicodeFail("\xef\xb8\x92\xe2\x86\x83\xe2\xb7\xa7\xf2\xbe\x80\x83\xef\xbc\x8e\xe1\x82\xb7\xf0\x90\xa3\x9e"); } // [B1, B5, B6, V7]11060test { try toUnicodeFail("\xef\xb8\x92\xe2\x86\x83\xe2\xb7\xa7\xf2\xbe\x80\x83\xef\xbc\x8e\xe1\x82\xb7\xf0\x90\xa3\x9e"); } // [B1, B5, B6, V7]
11061test { try toAsciiFail("\xef\xb8\x92\xe2\x86\x83\xe2\xb7\xa7\xf2\xbe\x80\x83\xef\xbc\x8e\xe1\x82\xb7\xf0\x90\xa3\x9e", false); } // [B1, B5, B6, V7]
11062test { try toAsciiFail("\xef\xb8\x92\xe2\x86\x83\xe2\xb7\xa7\xf2\xbe\x80\x83\xef\xbc\x8e\xe1\x82\xb7\xf0\x90\xa3\x9e", true); } // [B1, B5, B6, V7]
4545test { try toUnicodeFail("\xe3\x80\x82\xe2\x86\x83\xe2\xb7\xa7\xf2\xbe\x80\x83.\xe1\x82\xb7\xf0\x90\xa3\x9e"); } // [B5, B6, V7, X4_2]11063test { try toUnicodeFail("\xe3\x80\x82\xe2\x86\x83\xe2\xb7\xa7\xf2\xbe\x80\x83.\xe1\x82\xb7\xf0\x90\xa3\x9e"); } // [B5, B6, V7, X4_2]
11064test { try toAsciiFail("\xe3\x80\x82\xe2\x86\x83\xe2\xb7\xa7\xf2\xbe\x80\x83.\xe1\x82\xb7\xf0\x90\xa3\x9e", false); } // [B5, B6, V7, A4_2]
11065test { try toAsciiFail("\xe3\x80\x82\xe2\x86\x83\xe2\xb7\xa7\xf2\xbe\x80\x83.\xe1\x82\xb7\xf0\x90\xa3\x9e", true); } // [B5, B6, V7, A4_2]
4546test { try toUnicodeFail("\xe3\x80\x82\xe2\x86\x84\xe2\xb7\xa7\xf2\xbe\x80\x83.\xe2\xb4\x97\xf0\x90\xa3\x9e"); } // [B5, B6, V7, X4_2]11066test { try toUnicodeFail("\xe3\x80\x82\xe2\x86\x84\xe2\xb7\xa7\xf2\xbe\x80\x83.\xe2\xb4\x97\xf0\x90\xa3\x9e"); } // [B5, B6, V7, X4_2]
11067test { try toAsciiFail("\xe3\x80\x82\xe2\x86\x84\xe2\xb7\xa7\xf2\xbe\x80\x83.\xe2\xb4\x97\xf0\x90\xa3\x9e", false); } // [B5, B6, V7, A4_2]
11068test { try toAsciiFail("\xe3\x80\x82\xe2\x86\x84\xe2\xb7\xa7\xf2\xbe\x80\x83.\xe2\xb4\x97\xf0\x90\xa3\x9e", true); } // [B5, B6, V7, A4_2]
4547test { try toUnicodeFail(".xn--r5gy00cll06u.xn--flj4541e"); } // [B5, B6, V7, X4_2]11069test { try toUnicodeFail(".xn--r5gy00cll06u.xn--flj4541e"); } // [B5, B6, V7, X4_2]
11070test { try toAsciiFail(".xn--r5gy00cll06u.xn--flj4541e", false); } // [B5, B6, V7, A4_2]
11071test { try toAsciiFail(".xn--r5gy00cll06u.xn--flj4541e", true); } // [B5, B6, V7, A4_2]
4548test { try toUnicodeFail("\xef\xb8\x92\xe2\x86\x84\xe2\xb7\xa7\xf2\xbe\x80\x83\xef\xbc\x8e\xe2\xb4\x97\xf0\x90\xa3\x9e"); } // [B1, B5, B6, V7]11072test { try toUnicodeFail("\xef\xb8\x92\xe2\x86\x84\xe2\xb7\xa7\xf2\xbe\x80\x83\xef\xbc\x8e\xe2\xb4\x97\xf0\x90\xa3\x9e"); } // [B1, B5, B6, V7]
11073test { try toAsciiFail("\xef\xb8\x92\xe2\x86\x84\xe2\xb7\xa7\xf2\xbe\x80\x83\xef\xbc\x8e\xe2\xb4\x97\xf0\x90\xa3\x9e", false); } // [B1, B5, B6, V7]
11074test { try toAsciiFail("\xef\xb8\x92\xe2\x86\x84\xe2\xb7\xa7\xf2\xbe\x80\x83\xef\xbc\x8e\xe2\xb4\x97\xf0\x90\xa3\x9e", true); } // [B1, B5, B6, V7]
4549test { try toUnicodeFail("xn--r5gy00c056n0226g.xn--flj4541e"); } // [B1, B5, B6, V7]11075test { try toUnicodeFail("xn--r5gy00c056n0226g.xn--flj4541e"); } // [B1, B5, B6, V7]
11076test { try toAsciiFail("xn--r5gy00c056n0226g.xn--flj4541e", false); } // [B1, B5, B6, V7]
11077test { try toAsciiFail("xn--r5gy00c056n0226g.xn--flj4541e", true); } // [B1, B5, B6, V7]
4550test { try toUnicodeFail(".xn--q5g000cll06u.xn--vnd8618j"); } // [B5, B6, V7, X4_2]11078test { try toUnicodeFail(".xn--q5g000cll06u.xn--vnd8618j"); } // [B5, B6, V7, X4_2]
11079test { try toAsciiFail(".xn--q5g000cll06u.xn--vnd8618j", false); } // [B5, B6, V7, A4_2]
11080test { try toAsciiFail(".xn--q5g000cll06u.xn--vnd8618j", true); } // [B5, B6, V7, A4_2]
4551test { try toUnicodeFail("xn--q5g000c056n0226g.xn--vnd8618j"); } // [B1, B5, B6, V7]11081test { try toUnicodeFail("xn--q5g000c056n0226g.xn--vnd8618j"); } // [B1, B5, B6, V7]
11082test { try toAsciiFail("xn--q5g000c056n0226g.xn--vnd8618j", false); } // [B1, B5, B6, V7]
11083test { try toAsciiFail("xn--q5g000c056n0226g.xn--vnd8618j", true); } // [B1, B5, B6, V7]
4552test { try toUnicodeFail("\xd8\x80.\xd6\xb1"); } // [B1, V6, V7]11084test { try toUnicodeFail("\xd8\x80.\xd6\xb1"); } // [B1, V6, V7]
11085test { try toAsciiFail("\xd8\x80.\xd6\xb1", false); } // [B1, V6, V7]
11086test { try toAsciiFail("\xd8\x80.\xd6\xb1", true); } // [B1, V6, V7]
4553test { try toUnicodeFail("xn--ifb.xn--8cb"); } // [B1, V6, V7]11087test { try toUnicodeFail("xn--ifb.xn--8cb"); } // [B1, V6, V7]
11088test { try toAsciiFail("xn--ifb.xn--8cb", false); } // [B1, V6, V7]
11089test { try toAsciiFail("xn--ifb.xn--8cb", true); } // [B1, V6, V7]
4554test { try toUnicodeFail("\xcf\x82\xe2\x89\xaf\xef\xbd\xa1\xf0\x90\xb9\xbd"); } // [B1, B6]11090test { try toUnicodeFail("\xcf\x82\xe2\x89\xaf\xef\xbd\xa1\xf0\x90\xb9\xbd"); } // [B1, B6]
11091test { try toAsciiFail("\xcf\x82\xe2\x89\xaf\xef\xbd\xa1\xf0\x90\xb9\xbd", false); } // [B1, B6]
11092test { try toAsciiFail("\xcf\x82\xe2\x89\xaf\xef\xbd\xa1\xf0\x90\xb9\xbd", true); } // [B1, B6]
4555test { try toUnicodeFail("\xcf\x82>\xcc\xb8\xef\xbd\xa1\xf0\x90\xb9\xbd"); } // [B1, B6]11093test { try toUnicodeFail("\xcf\x82>\xcc\xb8\xef\xbd\xa1\xf0\x90\xb9\xbd"); } // [B1, B6]
11094test { try toAsciiFail("\xcf\x82>\xcc\xb8\xef\xbd\xa1\xf0\x90\xb9\xbd", false); } // [B1, B6]
11095test { try toAsciiFail("\xcf\x82>\xcc\xb8\xef\xbd\xa1\xf0\x90\xb9\xbd", true); } // [B1, B6]
4556test { try toUnicodeFail("\xcf\x82\xe2\x89\xaf\xe3\x80\x82\xf0\x90\xb9\xbd"); } // [B1, B6]11096test { try toUnicodeFail("\xcf\x82\xe2\x89\xaf\xe3\x80\x82\xf0\x90\xb9\xbd"); } // [B1, B6]
11097test { try toAsciiFail("\xcf\x82\xe2\x89\xaf\xe3\x80\x82\xf0\x90\xb9\xbd", false); } // [B1, B6]
11098test { try toAsciiFail("\xcf\x82\xe2\x89\xaf\xe3\x80\x82\xf0\x90\xb9\xbd", true); } // [B1, B6]
4557test { try toUnicodeFail("\xcf\x82>\xcc\xb8\xe3\x80\x82\xf0\x90\xb9\xbd"); } // [B1, B6]11099test { try toUnicodeFail("\xcf\x82>\xcc\xb8\xe3\x80\x82\xf0\x90\xb9\xbd"); } // [B1, B6]
11100test { try toAsciiFail("\xcf\x82>\xcc\xb8\xe3\x80\x82\xf0\x90\xb9\xbd", false); } // [B1, B6]
11101test { try toAsciiFail("\xcf\x82>\xcc\xb8\xe3\x80\x82\xf0\x90\xb9\xbd", true); } // [B1, B6]
4558test { try toUnicodeFail("\xce\xa3>\xcc\xb8\xe3\x80\x82\xf0\x90\xb9\xbd"); } // [B1, B6]11102test { try toUnicodeFail("\xce\xa3>\xcc\xb8\xe3\x80\x82\xf0\x90\xb9\xbd"); } // [B1, B6]
11103test { try toAsciiFail("\xce\xa3>\xcc\xb8\xe3\x80\x82\xf0\x90\xb9\xbd", false); } // [B1, B6]
11104test { try toAsciiFail("\xce\xa3>\xcc\xb8\xe3\x80\x82\xf0\x90\xb9\xbd", true); } // [B1, B6]
4559test { try toUnicodeFail("\xce\xa3\xe2\x89\xaf\xe3\x80\x82\xf0\x90\xb9\xbd"); } // [B1, B6]11105test { try toUnicodeFail("\xce\xa3\xe2\x89\xaf\xe3\x80\x82\xf0\x90\xb9\xbd"); } // [B1, B6]
11106test { try toAsciiFail("\xce\xa3\xe2\x89\xaf\xe3\x80\x82\xf0\x90\xb9\xbd", false); } // [B1, B6]
11107test { try toAsciiFail("\xce\xa3\xe2\x89\xaf\xe3\x80\x82\xf0\x90\xb9\xbd", true); } // [B1, B6]
4560test { try toUnicodeFail("\xcf\x83\xe2\x89\xaf\xe3\x80\x82\xf0\x90\xb9\xbd"); } // [B1, B6]11108test { try toUnicodeFail("\xcf\x83\xe2\x89\xaf\xe3\x80\x82\xf0\x90\xb9\xbd"); } // [B1, B6]
11109test { try toAsciiFail("\xcf\x83\xe2\x89\xaf\xe3\x80\x82\xf0\x90\xb9\xbd", false); } // [B1, B6]
11110test { try toAsciiFail("\xcf\x83\xe2\x89\xaf\xe3\x80\x82\xf0\x90\xb9\xbd", true); } // [B1, B6]
4561test { try toUnicodeFail("\xcf\x83>\xcc\xb8\xe3\x80\x82\xf0\x90\xb9\xbd"); } // [B1, B6]11111test { try toUnicodeFail("\xcf\x83>\xcc\xb8\xe3\x80\x82\xf0\x90\xb9\xbd"); } // [B1, B6]
11112test { try toAsciiFail("\xcf\x83>\xcc\xb8\xe3\x80\x82\xf0\x90\xb9\xbd", false); } // [B1, B6]
11113test { try toAsciiFail("\xcf\x83>\xcc\xb8\xe3\x80\x82\xf0\x90\xb9\xbd", true); } // [B1, B6]
4562test { try toUnicodeFail("xn--4xa818m.xn--1o0d"); } // [B1, B6]11114test { try toUnicodeFail("xn--4xa818m.xn--1o0d"); } // [B1, B6]
11115test { try toAsciiFail("xn--4xa818m.xn--1o0d", false); } // [B1, B6]
11116test { try toAsciiFail("xn--4xa818m.xn--1o0d", true); } // [B1, B6]
4563test { try toUnicodeFail("xn--3xa028m.xn--1o0d"); } // [B1, B6]11117test { try toUnicodeFail("xn--3xa028m.xn--1o0d"); } // [B1, B6]
11118test { try toAsciiFail("xn--3xa028m.xn--1o0d", false); } // [B1, B6]
11119test { try toAsciiFail("xn--3xa028m.xn--1o0d", true); } // [B1, B6]
4564test { try toUnicodeFail("\xce\xa3>\xcc\xb8\xef\xbd\xa1\xf0\x90\xb9\xbd"); } // [B1, B6]11120test { try toUnicodeFail("\xce\xa3>\xcc\xb8\xef\xbd\xa1\xf0\x90\xb9\xbd"); } // [B1, B6]
11121test { try toAsciiFail("\xce\xa3>\xcc\xb8\xef\xbd\xa1\xf0\x90\xb9\xbd", false); } // [B1, B6]
11122test { try toAsciiFail("\xce\xa3>\xcc\xb8\xef\xbd\xa1\xf0\x90\xb9\xbd", true); } // [B1, B6]
4565test { try toUnicodeFail("\xce\xa3\xe2\x89\xaf\xef\xbd\xa1\xf0\x90\xb9\xbd"); } // [B1, B6]11123test { try toUnicodeFail("\xce\xa3\xe2\x89\xaf\xef\xbd\xa1\xf0\x90\xb9\xbd"); } // [B1, B6]
11124test { try toAsciiFail("\xce\xa3\xe2\x89\xaf\xef\xbd\xa1\xf0\x90\xb9\xbd", false); } // [B1, B6]
11125test { try toAsciiFail("\xce\xa3\xe2\x89\xaf\xef\xbd\xa1\xf0\x90\xb9\xbd", true); } // [B1, B6]
4566test { try toUnicodeFail("\xcf\x83\xe2\x89\xaf\xef\xbd\xa1\xf0\x90\xb9\xbd"); } // [B1, B6]11126test { try toUnicodeFail("\xcf\x83\xe2\x89\xaf\xef\xbd\xa1\xf0\x90\xb9\xbd"); } // [B1, B6]
11127test { try toAsciiFail("\xcf\x83\xe2\x89\xaf\xef\xbd\xa1\xf0\x90\xb9\xbd", false); } // [B1, B6]
11128test { try toAsciiFail("\xcf\x83\xe2\x89\xaf\xef\xbd\xa1\xf0\x90\xb9\xbd", true); } // [B1, B6]
4567test { try toUnicodeFail("\xcf\x83>\xcc\xb8\xef\xbd\xa1\xf0\x90\xb9\xbd"); } // [B1, B6]11129test { try toUnicodeFail("\xcf\x83>\xcc\xb8\xef\xbd\xa1\xf0\x90\xb9\xbd"); } // [B1, B6]
11130test { try toAsciiFail("\xcf\x83>\xcc\xb8\xef\xbd\xa1\xf0\x90\xb9\xbd", false); } // [B1, B6]
11131test { try toAsciiFail("\xcf\x83>\xcc\xb8\xef\xbd\xa1\xf0\x90\xb9\xbd", true); } // [B1, B6]
4568test { try toUnicodeFail("\xe1\x9f\x92\xe2\x80\x8d\xdd\x9f\xe3\x80\x82\xf0\x90\xb9\xb6"); } // [B1, V6]11132test { try toUnicodeFail("\xe1\x9f\x92\xe2\x80\x8d\xdd\x9f\xe3\x80\x82\xf0\x90\xb9\xb6"); } // [B1, V6]
11133test { try toAsciiFail("\xe1\x9f\x92\xe2\x80\x8d\xdd\x9f\xe3\x80\x82\xf0\x90\xb9\xb6", false); } // [B1, V6]
11134test { try toAsciiFail("\xe1\x9f\x92\xe2\x80\x8d\xdd\x9f\xe3\x80\x82\xf0\x90\xb9\xb6", true); } // [B1, V6]
4569test { try toUnicodeFail("xn--jpb535f.xn--uo0d"); } // [B1, V6]11135test { try toUnicodeFail("xn--jpb535f.xn--uo0d"); } // [B1, V6]
11136test { try toAsciiFail("xn--jpb535f.xn--uo0d", false); } // [B1, V6]
11137test { try toAsciiFail("xn--jpb535f.xn--uo0d", true); } // [B1, V6]
4570test { try toUnicodeFail("xn--jpb535fv9f.xn--uo0d"); } // [B1, V6]11138test { try toUnicodeFail("xn--jpb535fv9f.xn--uo0d"); } // [B1, V6]
11139test { try toAsciiFail("xn--jpb535fv9f.xn--uo0d", false); } // [B1, V6]
11140test { try toAsciiFail("xn--jpb535fv9f.xn--uo0d", true); } // [B1, V6]
4571test { try toUnicodeFail("\xf0\xbe\xb7\x82\xe0\xa9\x82\xe1\x82\xaa\xf1\x82\x82\x9f.\xe2\x89\xae"); } // [V7]11141test { try toUnicodeFail("\xf0\xbe\xb7\x82\xe0\xa9\x82\xe1\x82\xaa\xf1\x82\x82\x9f.\xe2\x89\xae"); } // [V7]
11142test { try toAsciiFail("\xf0\xbe\xb7\x82\xe0\xa9\x82\xe1\x82\xaa\xf1\x82\x82\x9f.\xe2\x89\xae", false); } // [V7]
11143test { try toAsciiFail("\xf0\xbe\xb7\x82\xe0\xa9\x82\xe1\x82\xaa\xf1\x82\x82\x9f.\xe2\x89\xae", true); } // [V7]
4572test { try toUnicodeFail("\xf0\xbe\xb7\x82\xe0\xa9\x82\xe1\x82\xaa\xf1\x82\x82\x9f.<\xcc\xb8"); } // [V7]11144test { try toUnicodeFail("\xf0\xbe\xb7\x82\xe0\xa9\x82\xe1\x82\xaa\xf1\x82\x82\x9f.<\xcc\xb8"); } // [V7]
11145test { try toAsciiFail("\xf0\xbe\xb7\x82\xe0\xa9\x82\xe1\x82\xaa\xf1\x82\x82\x9f.<\xcc\xb8", false); } // [V7]
11146test { try toAsciiFail("\xf0\xbe\xb7\x82\xe0\xa9\x82\xe1\x82\xaa\xf1\x82\x82\x9f.<\xcc\xb8", true); } // [V7]
4573test { try toUnicodeFail("\xf0\xbe\xb7\x82\xe0\xa9\x82\xe2\xb4\x8a\xf1\x82\x82\x9f.<\xcc\xb8"); } // [V7]11147test { try toUnicodeFail("\xf0\xbe\xb7\x82\xe0\xa9\x82\xe2\xb4\x8a\xf1\x82\x82\x9f.<\xcc\xb8"); } // [V7]
11148test { try toAsciiFail("\xf0\xbe\xb7\x82\xe0\xa9\x82\xe2\xb4\x8a\xf1\x82\x82\x9f.<\xcc\xb8", false); } // [V7]
11149test { try toAsciiFail("\xf0\xbe\xb7\x82\xe0\xa9\x82\xe2\xb4\x8a\xf1\x82\x82\x9f.<\xcc\xb8", true); } // [V7]
4574test { try toUnicodeFail("\xf0\xbe\xb7\x82\xe0\xa9\x82\xe2\xb4\x8a\xf1\x82\x82\x9f.\xe2\x89\xae"); } // [V7]11150test { try toUnicodeFail("\xf0\xbe\xb7\x82\xe0\xa9\x82\xe2\xb4\x8a\xf1\x82\x82\x9f.\xe2\x89\xae"); } // [V7]
11151test { try toAsciiFail("\xf0\xbe\xb7\x82\xe0\xa9\x82\xe2\xb4\x8a\xf1\x82\x82\x9f.\xe2\x89\xae", false); } // [V7]
11152test { try toAsciiFail("\xf0\xbe\xb7\x82\xe0\xa9\x82\xe2\xb4\x8a\xf1\x82\x82\x9f.\xe2\x89\xae", true); } // [V7]
4575test { try toUnicodeFail("xn--nbc229o4y27dgskb.xn--gdh"); } // [V7]11153test { try toUnicodeFail("xn--nbc229o4y27dgskb.xn--gdh"); } // [V7]
11154test { try toAsciiFail("xn--nbc229o4y27dgskb.xn--gdh", false); } // [V7]
11155test { try toAsciiFail("xn--nbc229o4y27dgskb.xn--gdh", true); } // [V7]
4576test { try toUnicodeFail("xn--nbc493aro75ggskb.xn--gdh"); } // [V7]11156test { try toUnicodeFail("xn--nbc493aro75ggskb.xn--gdh"); } // [V7]
11157test { try toAsciiFail("xn--nbc493aro75ggskb.xn--gdh", false); } // [V7]
11158test { try toAsciiFail("xn--nbc493aro75ggskb.xn--gdh", true); } // [V7]
4577test { try toUnicodePass("\xea\xa1\xa0\xef\xbc\x8e\xdb\xb2", "\xea\xa1\xa0.\xdb\xb2"); }11159test { try toUnicodePass("\xea\xa1\xa0\xef\xbc\x8e\xdb\xb2", "\xea\xa1\xa0.\xdb\xb2"); }
4578test { try toAsciiPass("\xea\xa1\xa0\xef\xbc\x8e\xdb\xb2", "xn--5c9a.xn--fmb", false); }11160test { try toAsciiPass("\xea\xa1\xa0\xef\xbc\x8e\xdb\xb2", "xn--5c9a.xn--fmb", false); }
4579test { try toAsciiPass("\xea\xa1\xa0\xef\xbc\x8e\xdb\xb2", "xn--5c9a.xn--fmb", true); }11161test { try toAsciiPass("\xea\xa1\xa0\xef\xbc\x8e\xdb\xb2", "xn--5c9a.xn--fmb", true); }
...@@ -4584,88 +11166,224 @@ test { try toUnicodePass("xn--5c9a.xn--fmb", "\xea\xa1\xa0.\xdb\xb2"); }...@@ -4584,88 +11166,224 @@ test { try toUnicodePass("xn--5c9a.xn--fmb", "\xea\xa1\xa0.\xdb\xb2"); }
4584test { try toAsciiPass("xn--5c9a.xn--fmb", "xn--5c9a.xn--fmb", false); }11166test { try toAsciiPass("xn--5c9a.xn--fmb", "xn--5c9a.xn--fmb", false); }
4585test { try toAsciiPass("xn--5c9a.xn--fmb", "xn--5c9a.xn--fmb", true); }11167test { try toAsciiPass("xn--5c9a.xn--fmb", "xn--5c9a.xn--fmb", true); }
4586test { try toUnicodeFail("\xf0\x90\xb9\xa3\xf1\x84\xb7\x84\xef\xbd\xa1\xea\xa1\xac\xf0\x9f\x84\x84"); } // [B1, B6, V7, U1]11168test { try toUnicodeFail("\xf0\x90\xb9\xa3\xf1\x84\xb7\x84\xef\xbd\xa1\xea\xa1\xac\xf0\x9f\x84\x84"); } // [B1, B6, V7, U1]
11169test { try toAsciiFail("\xf0\x90\xb9\xa3\xf1\x84\xb7\x84\xef\xbd\xa1\xea\xa1\xac\xf0\x9f\x84\x84", false); } // [B1, B6, V7, U1]
11170test { try toAsciiFail("\xf0\x90\xb9\xa3\xf1\x84\xb7\x84\xef\xbd\xa1\xea\xa1\xac\xf0\x9f\x84\x84", true); } // [B1, B6, V7, U1]
4587test { try toUnicodeFail("\xf0\x90\xb9\xa3\xf1\x84\xb7\x84\xe3\x80\x82\xea\xa1\xac3,"); } // [B1, B6, V7, U1]11171test { try toUnicodeFail("\xf0\x90\xb9\xa3\xf1\x84\xb7\x84\xe3\x80\x82\xea\xa1\xac3,"); } // [B1, B6, V7, U1]
11172test { try toAsciiFail("\xf0\x90\xb9\xa3\xf1\x84\xb7\x84\xe3\x80\x82\xea\xa1\xac3,", false); } // [B1, B6, V7, U1]
11173test { try toAsciiFail("\xf0\x90\xb9\xa3\xf1\x84\xb7\x84\xe3\x80\x82\xea\xa1\xac3,", true); } // [B1, B6, V7, U1]
4588test { try toUnicodeFail("xn--bo0d0203l.xn--3,-yj9h"); } // [B1, B6, V7, U1]11174test { try toUnicodeFail("xn--bo0d0203l.xn--3,-yj9h"); } // [B1, B6, V7, U1]
11175test { try toAsciiFail("xn--bo0d0203l.xn--3,-yj9h", false); } // [B1, B6, V7, U1]
11176test { try toAsciiFail("xn--bo0d0203l.xn--3,-yj9h", true); } // [B1, B6, V7, U1]
4589test { try toUnicodeFail("xn--bo0d0203l.xn--id9a4443d"); } // [B1, V7]11177test { try toUnicodeFail("xn--bo0d0203l.xn--id9a4443d"); } // [B1, V7]
11178test { try toAsciiFail("xn--bo0d0203l.xn--id9a4443d", false); } // [B1, V7]
11179test { try toAsciiFail("xn--bo0d0203l.xn--id9a4443d", true); } // [B1, V7]
4590test { try toUnicodeFail("-\xe0\xb1\x8d\xf0\x9e\xbe\x80\xf0\x91\xb2\x93\xef\xbd\xa1\xe2\x80\x8d\xe0\xb5\x8d"); } // [B1, C2, V3, V7]11180test { try toUnicodeFail("-\xe0\xb1\x8d\xf0\x9e\xbe\x80\xf0\x91\xb2\x93\xef\xbd\xa1\xe2\x80\x8d\xe0\xb5\x8d"); } // [B1, C2, V3, V7]
11181test { try toAsciiFail("-\xe0\xb1\x8d\xf0\x9e\xbe\x80\xf0\x91\xb2\x93\xef\xbd\xa1\xe2\x80\x8d\xe0\xb5\x8d", false); } // [B1, C2, V3, V7]
11182test { try toAsciiFail("-\xe0\xb1\x8d\xf0\x9e\xbe\x80\xf0\x91\xb2\x93\xef\xbd\xa1\xe2\x80\x8d\xe0\xb5\x8d", true); } // [B1, V3, V6, V7]
4591test { try toUnicodeFail("-\xe0\xb1\x8d\xf0\x9e\xbe\x80\xf0\x91\xb2\x93\xe3\x80\x82\xe2\x80\x8d\xe0\xb5\x8d"); } // [B1, C2, V3, V7]11183test { try toUnicodeFail("-\xe0\xb1\x8d\xf0\x9e\xbe\x80\xf0\x91\xb2\x93\xe3\x80\x82\xe2\x80\x8d\xe0\xb5\x8d"); } // [B1, C2, V3, V7]
11184test { try toAsciiFail("-\xe0\xb1\x8d\xf0\x9e\xbe\x80\xf0\x91\xb2\x93\xe3\x80\x82\xe2\x80\x8d\xe0\xb5\x8d", false); } // [B1, C2, V3, V7]
11185test { try toAsciiFail("-\xe0\xb1\x8d\xf0\x9e\xbe\x80\xf0\x91\xb2\x93\xe3\x80\x82\xe2\x80\x8d\xe0\xb5\x8d", true); } // [B1, V3, V6, V7]
4592test { try toUnicodeFail("xn----x6e0220sclug.xn--wxc"); } // [B1, V3, V6, V7]11186test { try toUnicodeFail("xn----x6e0220sclug.xn--wxc"); } // [B1, V3, V6, V7]
11187test { try toAsciiFail("xn----x6e0220sclug.xn--wxc", false); } // [B1, V3, V6, V7]
11188test { try toAsciiFail("xn----x6e0220sclug.xn--wxc", true); } // [B1, V3, V6, V7]
4593test { try toUnicodeFail("xn----x6e0220sclug.xn--wxc317g"); } // [B1, C2, V3, V7]11189test { try toUnicodeFail("xn----x6e0220sclug.xn--wxc317g"); } // [B1, C2, V3, V7]
11190test { try toAsciiFail("xn----x6e0220sclug.xn--wxc317g", false); } // [B1, C2, V3, V7]
11191test { try toAsciiFail("xn----x6e0220sclug.xn--wxc317g", true); } // [B1, C2, V3, V7]
4594test { try toUnicodeFail("\xea\x99\xbd\xe2\x80\x8c\xf0\xaf\xa7\xb5\xf0\x9f\x84\x86\xef\xbd\xa1\xe2\x80\x8c\xf0\x91\x81\x82\xe1\xac\x81"); } // [C1, V6, U1]11192test { try toUnicodeFail("\xea\x99\xbd\xe2\x80\x8c\xf0\xaf\xa7\xb5\xf0\x9f\x84\x86\xef\xbd\xa1\xe2\x80\x8c\xf0\x91\x81\x82\xe1\xac\x81"); } // [C1, V6, U1]
11193test { try toAsciiFail("\xea\x99\xbd\xe2\x80\x8c\xf0\xaf\xa7\xb5\xf0\x9f\x84\x86\xef\xbd\xa1\xe2\x80\x8c\xf0\x91\x81\x82\xe1\xac\x81", false); } // [C1, V6, U1]
11194test { try toAsciiFail("\xea\x99\xbd\xe2\x80\x8c\xf0\xaf\xa7\xb5\xf0\x9f\x84\x86\xef\xbd\xa1\xe2\x80\x8c\xf0\x91\x81\x82\xe1\xac\x81", true); } // [V6, U1]
4595test { try toUnicodeFail("\xea\x99\xbd\xe2\x80\x8c\xe9\x9c\xa3\xf0\x9f\x84\x86\xef\xbd\xa1\xe2\x80\x8c\xf0\x91\x81\x82\xe1\xac\x81"); } // [C1, V6, U1]11195test { try toUnicodeFail("\xea\x99\xbd\xe2\x80\x8c\xe9\x9c\xa3\xf0\x9f\x84\x86\xef\xbd\xa1\xe2\x80\x8c\xf0\x91\x81\x82\xe1\xac\x81"); } // [C1, V6, U1]
11196test { try toAsciiFail("\xea\x99\xbd\xe2\x80\x8c\xe9\x9c\xa3\xf0\x9f\x84\x86\xef\xbd\xa1\xe2\x80\x8c\xf0\x91\x81\x82\xe1\xac\x81", false); } // [C1, V6, U1]
11197test { try toAsciiFail("\xea\x99\xbd\xe2\x80\x8c\xe9\x9c\xa3\xf0\x9f\x84\x86\xef\xbd\xa1\xe2\x80\x8c\xf0\x91\x81\x82\xe1\xac\x81", true); } // [V6, U1]
4596test { try toUnicodeFail("\xea\x99\xbd\xe2\x80\x8c\xe9\x9c\xa35,\xe3\x80\x82\xe2\x80\x8c\xf0\x91\x81\x82\xe1\xac\x81"); } // [C1, V6, U1]11198test { try toUnicodeFail("\xea\x99\xbd\xe2\x80\x8c\xe9\x9c\xa35,\xe3\x80\x82\xe2\x80\x8c\xf0\x91\x81\x82\xe1\xac\x81"); } // [C1, V6, U1]
11199test { try toAsciiFail("\xea\x99\xbd\xe2\x80\x8c\xe9\x9c\xa35,\xe3\x80\x82\xe2\x80\x8c\xf0\x91\x81\x82\xe1\xac\x81", false); } // [C1, V6, U1]
11200test { try toAsciiFail("\xea\x99\xbd\xe2\x80\x8c\xe9\x9c\xa35,\xe3\x80\x82\xe2\x80\x8c\xf0\x91\x81\x82\xe1\xac\x81", true); } // [V6, U1]
4597test { try toUnicodeFail("xn--5,-op8g373c.xn--4sf0725i"); } // [V6, U1]11201test { try toUnicodeFail("xn--5,-op8g373c.xn--4sf0725i"); } // [V6, U1]
11202test { try toAsciiFail("xn--5,-op8g373c.xn--4sf0725i", false); } // [V6, U1]
11203test { try toAsciiFail("xn--5,-op8g373c.xn--4sf0725i", true); } // [V6, U1]
4598test { try toUnicodeFail("xn--5,-i1tz135dnbqa.xn--4sf36u6u4w"); } // [C1, V6, U1]11204test { try toUnicodeFail("xn--5,-i1tz135dnbqa.xn--4sf36u6u4w"); } // [C1, V6, U1]
11205test { try toAsciiFail("xn--5,-i1tz135dnbqa.xn--4sf36u6u4w", false); } // [C1, V6, U1]
11206test { try toAsciiFail("xn--5,-i1tz135dnbqa.xn--4sf36u6u4w", true); } // [C1, V6, U1]
4599test { try toUnicodeFail("xn--2q5a751a653w.xn--4sf0725i"); } // [V6, V7]11207test { try toUnicodeFail("xn--2q5a751a653w.xn--4sf0725i"); } // [V6, V7]
11208test { try toAsciiFail("xn--2q5a751a653w.xn--4sf0725i", false); } // [V6, V7]
11209test { try toAsciiFail("xn--2q5a751a653w.xn--4sf0725i", true); } // [V6, V7]
4600test { try toUnicodeFail("xn--0ug4208b2vjuk63a.xn--4sf36u6u4w"); } // [C1, V6, V7]11210test { try toUnicodeFail("xn--0ug4208b2vjuk63a.xn--4sf36u6u4w"); } // [C1, V6, V7]
11211test { try toAsciiFail("xn--0ug4208b2vjuk63a.xn--4sf36u6u4w", false); } // [C1, V6, V7]
11212test { try toAsciiFail("xn--0ug4208b2vjuk63a.xn--4sf36u6u4w", true); } // [C1, V6, V7]
4601test { try toUnicodeFail("\xe5\x85\x8e\xef\xbd\xa1\xe1\xa0\xbc\xf3\xa0\xb4\x9c\xf0\x91\x9a\xb6\xf0\x91\xb0\xbf"); } // [V7]11213test { try toUnicodeFail("\xe5\x85\x8e\xef\xbd\xa1\xe1\xa0\xbc\xf3\xa0\xb4\x9c\xf0\x91\x9a\xb6\xf0\x91\xb0\xbf"); } // [V7]
11214test { try toAsciiFail("\xe5\x85\x8e\xef\xbd\xa1\xe1\xa0\xbc\xf3\xa0\xb4\x9c\xf0\x91\x9a\xb6\xf0\x91\xb0\xbf", false); } // [V7]
11215test { try toAsciiFail("\xe5\x85\x8e\xef\xbd\xa1\xe1\xa0\xbc\xf3\xa0\xb4\x9c\xf0\x91\x9a\xb6\xf0\x91\xb0\xbf", true); } // [V7]
4602test { try toUnicodeFail("\xe5\x85\x8e\xe3\x80\x82\xe1\xa0\xbc\xf3\xa0\xb4\x9c\xf0\x91\x9a\xb6\xf0\x91\xb0\xbf"); } // [V7]11216test { try toUnicodeFail("\xe5\x85\x8e\xe3\x80\x82\xe1\xa0\xbc\xf3\xa0\xb4\x9c\xf0\x91\x9a\xb6\xf0\x91\xb0\xbf"); } // [V7]
11217test { try toAsciiFail("\xe5\x85\x8e\xe3\x80\x82\xe1\xa0\xbc\xf3\xa0\xb4\x9c\xf0\x91\x9a\xb6\xf0\x91\xb0\xbf", false); } // [V7]
11218test { try toAsciiFail("\xe5\x85\x8e\xe3\x80\x82\xe1\xa0\xbc\xf3\xa0\xb4\x9c\xf0\x91\x9a\xb6\xf0\x91\xb0\xbf", true); } // [V7]
4603test { try toUnicodeFail("xn--b5q.xn--v7e6041kqqd4m251b"); } // [V7]11219test { try toUnicodeFail("xn--b5q.xn--v7e6041kqqd4m251b"); } // [V7]
11220test { try toAsciiFail("xn--b5q.xn--v7e6041kqqd4m251b", false); } // [V7]
11221test { try toAsciiFail("xn--b5q.xn--v7e6041kqqd4m251b", true); } // [V7]
4604test { try toAsciiPass("\xf0\x9d\x9f\x99\xef\xbd\xa1\xe2\x80\x8d\xf0\x9d\x9f\xb8\xe2\x80\x8d\xe2\x81\xb7", "1.27", true); }11222test { try toAsciiPass("\xf0\x9d\x9f\x99\xef\xbd\xa1\xe2\x80\x8d\xf0\x9d\x9f\xb8\xe2\x80\x8d\xe2\x81\xb7", "1.27", true); }
4605test { try toUnicodeFail("\xf0\x9d\x9f\x99\xef\xbd\xa1\xe2\x80\x8d\xf0\x9d\x9f\xb8\xe2\x80\x8d\xe2\x81\xb7"); } // [C2]11223test { try toUnicodeFail("\xf0\x9d\x9f\x99\xef\xbd\xa1\xe2\x80\x8d\xf0\x9d\x9f\xb8\xe2\x80\x8d\xe2\x81\xb7"); } // [C2]
11224test { try toAsciiFail("\xf0\x9d\x9f\x99\xef\xbd\xa1\xe2\x80\x8d\xf0\x9d\x9f\xb8\xe2\x80\x8d\xe2\x81\xb7", false); } // [C2]
4606test { try toAsciiPass("1\xe3\x80\x82\xe2\x80\x8d2\xe2\x80\x8d7", "1.27", true); }11225test { try toAsciiPass("1\xe3\x80\x82\xe2\x80\x8d2\xe2\x80\x8d7", "1.27", true); }
4607test { try toUnicodeFail("1\xe3\x80\x82\xe2\x80\x8d2\xe2\x80\x8d7"); } // [C2]11226test { try toUnicodeFail("1\xe3\x80\x82\xe2\x80\x8d2\xe2\x80\x8d7"); } // [C2]
11227test { try toAsciiFail("1\xe3\x80\x82\xe2\x80\x8d2\xe2\x80\x8d7", false); } // [C2]
4608test { try toUnicodePass("1.2h", "1.2h"); }11228test { try toUnicodePass("1.2h", "1.2h"); }
4609test { try toAsciiPass("1.2h", "1.2h", false); }11229test { try toAsciiPass("1.2h", "1.2h", false); }
4610test { try toAsciiPass("1.2h", "1.2h", true); }11230test { try toAsciiPass("1.2h", "1.2h", true); }
4611test { try toUnicodeFail("1.xn--27-l1tb"); } // [C2]11231test { try toUnicodeFail("1.xn--27-l1tb"); } // [C2]
11232test { try toAsciiFail("1.xn--27-l1tb", false); } // [C2]
11233test { try toAsciiFail("1.xn--27-l1tb", true); } // [C2]
4612test { try toUnicodeFail("\xe1\xa1\xa8-\xef\xbd\xa1\xf3\xa0\xbb\x8b\xf0\x9d\x9f\xb7"); } // [V3, V7]11234test { try toUnicodeFail("\xe1\xa1\xa8-\xef\xbd\xa1\xf3\xa0\xbb\x8b\xf0\x9d\x9f\xb7"); } // [V3, V7]
11235test { try toAsciiFail("\xe1\xa1\xa8-\xef\xbd\xa1\xf3\xa0\xbb\x8b\xf0\x9d\x9f\xb7", false); } // [V3, V7]
11236test { try toAsciiFail("\xe1\xa1\xa8-\xef\xbd\xa1\xf3\xa0\xbb\x8b\xf0\x9d\x9f\xb7", true); } // [V3, V7]
4613test { try toUnicodeFail("\xe1\xa1\xa8-\xe3\x80\x82\xf3\xa0\xbb\x8b1"); } // [V3, V7]11237test { try toUnicodeFail("\xe1\xa1\xa8-\xe3\x80\x82\xf3\xa0\xbb\x8b1"); } // [V3, V7]
11238test { try toAsciiFail("\xe1\xa1\xa8-\xe3\x80\x82\xf3\xa0\xbb\x8b1", false); } // [V3, V7]
11239test { try toAsciiFail("\xe1\xa1\xa8-\xe3\x80\x82\xf3\xa0\xbb\x8b1", true); } // [V3, V7]
4614test { try toUnicodeFail("xn----z8j.xn--1-5671m"); } // [V3, V7]11240test { try toUnicodeFail("xn----z8j.xn--1-5671m"); } // [V3, V7]
11241test { try toAsciiFail("xn----z8j.xn--1-5671m", false); } // [V3, V7]
11242test { try toAsciiFail("xn----z8j.xn--1-5671m", true); } // [V3, V7]
4615test { try toUnicodeFail("\xf0\x91\xb0\xbb\xf1\xb5\x80\x90\xf0\x90\xab\x9a\xef\xbc\x8e\xd9\xa8\xe2\x81\xb9"); } // [B1, V6, V7]11243test { try toUnicodeFail("\xf0\x91\xb0\xbb\xf1\xb5\x80\x90\xf0\x90\xab\x9a\xef\xbc\x8e\xd9\xa8\xe2\x81\xb9"); } // [B1, V6, V7]
11244test { try toAsciiFail("\xf0\x91\xb0\xbb\xf1\xb5\x80\x90\xf0\x90\xab\x9a\xef\xbc\x8e\xd9\xa8\xe2\x81\xb9", false); } // [B1, V6, V7]
11245test { try toAsciiFail("\xf0\x91\xb0\xbb\xf1\xb5\x80\x90\xf0\x90\xab\x9a\xef\xbc\x8e\xd9\xa8\xe2\x81\xb9", true); } // [B1, V6, V7]
4616test { try toUnicodeFail("\xf0\x91\xb0\xbb\xf1\xb5\x80\x90\xf0\x90\xab\x9a.\xd9\xa89"); } // [B1, V6, V7]11246test { try toUnicodeFail("\xf0\x91\xb0\xbb\xf1\xb5\x80\x90\xf0\x90\xab\x9a.\xd9\xa89"); } // [B1, V6, V7]
11247test { try toAsciiFail("\xf0\x91\xb0\xbb\xf1\xb5\x80\x90\xf0\x90\xab\x9a.\xd9\xa89", false); } // [B1, V6, V7]
11248test { try toAsciiFail("\xf0\x91\xb0\xbb\xf1\xb5\x80\x90\xf0\x90\xab\x9a.\xd9\xa89", true); } // [B1, V6, V7]
4617test { try toUnicodeFail("xn--gx9cr01aul57i.xn--9-oqc"); } // [B1, V6, V7]11249test { try toUnicodeFail("xn--gx9cr01aul57i.xn--9-oqc"); } // [B1, V6, V7]
11250test { try toAsciiFail("xn--gx9cr01aul57i.xn--9-oqc", false); } // [B1, V6, V7]
11251test { try toAsciiFail("xn--gx9cr01aul57i.xn--9-oqc", true); } // [B1, V6, V7]
4618test { try toUnicodeFail("\xe1\x82\xbc\xf2\x88\xb7\xad\xe0\xbe\x80\xe2\xbe\x87\xe3\x80\x82\xe1\x82\xaf\xe2\x99\x80\xe2\x80\x8c\xe2\x80\x8c"); } // [C1, V7]11252test { try toUnicodeFail("\xe1\x82\xbc\xf2\x88\xb7\xad\xe0\xbe\x80\xe2\xbe\x87\xe3\x80\x82\xe1\x82\xaf\xe2\x99\x80\xe2\x80\x8c\xe2\x80\x8c"); } // [C1, V7]
11253test { try toAsciiFail("\xe1\x82\xbc\xf2\x88\xb7\xad\xe0\xbe\x80\xe2\xbe\x87\xe3\x80\x82\xe1\x82\xaf\xe2\x99\x80\xe2\x80\x8c\xe2\x80\x8c", false); } // [C1, V7]
11254test { try toAsciiFail("\xe1\x82\xbc\xf2\x88\xb7\xad\xe0\xbe\x80\xe2\xbe\x87\xe3\x80\x82\xe1\x82\xaf\xe2\x99\x80\xe2\x80\x8c\xe2\x80\x8c", true); } // [V7]
4619test { try toUnicodeFail("\xe1\x82\xbc\xf2\x88\xb7\xad\xe0\xbe\x80\xe8\x88\x9b\xe3\x80\x82\xe1\x82\xaf\xe2\x99\x80\xe2\x80\x8c\xe2\x80\x8c"); } // [C1, V7]11255test { try toUnicodeFail("\xe1\x82\xbc\xf2\x88\xb7\xad\xe0\xbe\x80\xe8\x88\x9b\xe3\x80\x82\xe1\x82\xaf\xe2\x99\x80\xe2\x80\x8c\xe2\x80\x8c"); } // [C1, V7]
11256test { try toAsciiFail("\xe1\x82\xbc\xf2\x88\xb7\xad\xe0\xbe\x80\xe8\x88\x9b\xe3\x80\x82\xe1\x82\xaf\xe2\x99\x80\xe2\x80\x8c\xe2\x80\x8c", false); } // [C1, V7]
11257test { try toAsciiFail("\xe1\x82\xbc\xf2\x88\xb7\xad\xe0\xbe\x80\xe8\x88\x9b\xe3\x80\x82\xe1\x82\xaf\xe2\x99\x80\xe2\x80\x8c\xe2\x80\x8c", true); } // [V7]
4620test { try toUnicodeFail("\xe2\xb4\x9c\xf2\x88\xb7\xad\xe0\xbe\x80\xe8\x88\x9b\xe3\x80\x82\xe2\xb4\x8f\xe2\x99\x80\xe2\x80\x8c\xe2\x80\x8c"); } // [C1, V7]11258test { try toUnicodeFail("\xe2\xb4\x9c\xf2\x88\xb7\xad\xe0\xbe\x80\xe8\x88\x9b\xe3\x80\x82\xe2\xb4\x8f\xe2\x99\x80\xe2\x80\x8c\xe2\x80\x8c"); } // [C1, V7]
11259test { try toAsciiFail("\xe2\xb4\x9c\xf2\x88\xb7\xad\xe0\xbe\x80\xe8\x88\x9b\xe3\x80\x82\xe2\xb4\x8f\xe2\x99\x80\xe2\x80\x8c\xe2\x80\x8c", false); } // [C1, V7]
11260test { try toAsciiFail("\xe2\xb4\x9c\xf2\x88\xb7\xad\xe0\xbe\x80\xe8\x88\x9b\xe3\x80\x82\xe2\xb4\x8f\xe2\x99\x80\xe2\x80\x8c\xe2\x80\x8c", true); } // [V7]
4621test { try toUnicodeFail("xn--zed372mdj2do3v4h.xn--e5h11w"); } // [V7]11261test { try toUnicodeFail("xn--zed372mdj2do3v4h.xn--e5h11w"); } // [V7]
11262test { try toAsciiFail("xn--zed372mdj2do3v4h.xn--e5h11w", false); } // [V7]
11263test { try toAsciiFail("xn--zed372mdj2do3v4h.xn--e5h11w", true); } // [V7]
4622test { try toUnicodeFail("xn--zed372mdj2do3v4h.xn--0uga678bgyh"); } // [C1, V7]11264test { try toUnicodeFail("xn--zed372mdj2do3v4h.xn--0uga678bgyh"); } // [C1, V7]
11265test { try toAsciiFail("xn--zed372mdj2do3v4h.xn--0uga678bgyh", false); } // [C1, V7]
11266test { try toAsciiFail("xn--zed372mdj2do3v4h.xn--0uga678bgyh", true); } // [C1, V7]
4623test { try toUnicodeFail("\xe2\xb4\x9c\xf2\x88\xb7\xad\xe0\xbe\x80\xe2\xbe\x87\xe3\x80\x82\xe2\xb4\x8f\xe2\x99\x80\xe2\x80\x8c\xe2\x80\x8c"); } // [C1, V7]11267test { try toUnicodeFail("\xe2\xb4\x9c\xf2\x88\xb7\xad\xe0\xbe\x80\xe2\xbe\x87\xe3\x80\x82\xe2\xb4\x8f\xe2\x99\x80\xe2\x80\x8c\xe2\x80\x8c"); } // [C1, V7]
11268test { try toAsciiFail("\xe2\xb4\x9c\xf2\x88\xb7\xad\xe0\xbe\x80\xe2\xbe\x87\xe3\x80\x82\xe2\xb4\x8f\xe2\x99\x80\xe2\x80\x8c\xe2\x80\x8c", false); } // [C1, V7]
11269test { try toAsciiFail("\xe2\xb4\x9c\xf2\x88\xb7\xad\xe0\xbe\x80\xe2\xbe\x87\xe3\x80\x82\xe2\xb4\x8f\xe2\x99\x80\xe2\x80\x8c\xe2\x80\x8c", true); } // [V7]
4624test { try toUnicodeFail("xn--zed54dz10wo343g.xn--nnd651i"); } // [V7]11270test { try toUnicodeFail("xn--zed54dz10wo343g.xn--nnd651i"); } // [V7]
11271test { try toAsciiFail("xn--zed54dz10wo343g.xn--nnd651i", false); } // [V7]
11272test { try toAsciiFail("xn--zed54dz10wo343g.xn--nnd651i", true); } // [V7]
4625test { try toUnicodeFail("xn--zed54dz10wo343g.xn--nnd089ea464d"); } // [C1, V7]11273test { try toUnicodeFail("xn--zed54dz10wo343g.xn--nnd089ea464d"); } // [C1, V7]
11274test { try toAsciiFail("xn--zed54dz10wo343g.xn--nnd089ea464d", false); } // [C1, V7]
11275test { try toAsciiFail("xn--zed54dz10wo343g.xn--nnd089ea464d", true); } // [C1, V7]
4626test { try toUnicodeFail("\xf0\x91\x81\x86\xf0\x9d\x9f\xb0.\xe2\x80\x8d"); } // [C2, V6]11276test { try toUnicodeFail("\xf0\x91\x81\x86\xf0\x9d\x9f\xb0.\xe2\x80\x8d"); } // [C2, V6]
11277test { try toAsciiFail("\xf0\x91\x81\x86\xf0\x9d\x9f\xb0.\xe2\x80\x8d", false); } // [C2, V6]
11278test { try toAsciiFail("\xf0\x91\x81\x86\xf0\x9d\x9f\xb0.\xe2\x80\x8d", true); } // [V6, A4_2]
4627test { try toUnicodeFail("\xf0\x91\x81\x864.\xe2\x80\x8d"); } // [C2, V6]11279test { try toUnicodeFail("\xf0\x91\x81\x864.\xe2\x80\x8d"); } // [C2, V6]
11280test { try toAsciiFail("\xf0\x91\x81\x864.\xe2\x80\x8d", false); } // [C2, V6]
11281test { try toAsciiFail("\xf0\x91\x81\x864.\xe2\x80\x8d", true); } // [V6, A4_2]
4628test { try toUnicodeFail("xn--4-xu7i."); } // [V6]11282test { try toUnicodeFail("xn--4-xu7i."); } // [V6]
11283test { try toAsciiFail("xn--4-xu7i.", false); } // [V6, A4_2]
11284test { try toAsciiFail("xn--4-xu7i.", true); } // [V6, A4_2]
4629test { try toUnicodeFail("xn--4-xu7i.xn--1ug"); } // [C2, V6]11285test { try toUnicodeFail("xn--4-xu7i.xn--1ug"); } // [C2, V6]
11286test { try toAsciiFail("xn--4-xu7i.xn--1ug", false); } // [C2, V6]
11287test { try toAsciiFail("xn--4-xu7i.xn--1ug", true); } // [C2, V6]
4630test { try toUnicodeFail("\xf1\xae\xb4\x98\xe1\x82\xbe\xe7\x99\x80\xef\xbd\xa1\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xeb\xb6\xbc"); } // [C1, V6, V7]11288test { try toUnicodeFail("\xf1\xae\xb4\x98\xe1\x82\xbe\xe7\x99\x80\xef\xbd\xa1\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xeb\xb6\xbc"); } // [C1, V6, V7]
11289test { try toAsciiFail("\xf1\xae\xb4\x98\xe1\x82\xbe\xe7\x99\x80\xef\xbd\xa1\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xeb\xb6\xbc", false); } // [C1, V6, V7]
11290test { try toAsciiFail("\xf1\xae\xb4\x98\xe1\x82\xbe\xe7\x99\x80\xef\xbd\xa1\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xeb\xb6\xbc", true); } // [V6, V7]
4631test { try toUnicodeFail("\xf1\xae\xb4\x98\xe1\x82\xbe\xe7\x99\x80\xef\xbd\xa1\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xe1\x84\x87\xe1\x85\xb0\xe1\x86\xab"); } // [C1, V6, V7]11291test { try toUnicodeFail("\xf1\xae\xb4\x98\xe1\x82\xbe\xe7\x99\x80\xef\xbd\xa1\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xe1\x84\x87\xe1\x85\xb0\xe1\x86\xab"); } // [C1, V6, V7]
11292test { try toAsciiFail("\xf1\xae\xb4\x98\xe1\x82\xbe\xe7\x99\x80\xef\xbd\xa1\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xe1\x84\x87\xe1\x85\xb0\xe1\x86\xab", false); } // [C1, V6, V7]
11293test { try toAsciiFail("\xf1\xae\xb4\x98\xe1\x82\xbe\xe7\x99\x80\xef\xbd\xa1\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xe1\x84\x87\xe1\x85\xb0\xe1\x86\xab", true); } // [V6, V7]
4632test { try toUnicodeFail("\xf1\xae\xb4\x98\xe1\x82\xbe\xe7\x99\x80\xe3\x80\x82\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xeb\xb6\xbc"); } // [C1, V6, V7]11294test { try toUnicodeFail("\xf1\xae\xb4\x98\xe1\x82\xbe\xe7\x99\x80\xe3\x80\x82\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xeb\xb6\xbc"); } // [C1, V6, V7]
11295test { try toAsciiFail("\xf1\xae\xb4\x98\xe1\x82\xbe\xe7\x99\x80\xe3\x80\x82\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xeb\xb6\xbc", false); } // [C1, V6, V7]
11296test { try toAsciiFail("\xf1\xae\xb4\x98\xe1\x82\xbe\xe7\x99\x80\xe3\x80\x82\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xeb\xb6\xbc", true); } // [V6, V7]
4633test { try toUnicodeFail("\xf1\xae\xb4\x98\xe1\x82\xbe\xe7\x99\x80\xe3\x80\x82\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xe1\x84\x87\xe1\x85\xb0\xe1\x86\xab"); } // [C1, V6, V7]11297test { try toUnicodeFail("\xf1\xae\xb4\x98\xe1\x82\xbe\xe7\x99\x80\xe3\x80\x82\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xe1\x84\x87\xe1\x85\xb0\xe1\x86\xab"); } // [C1, V6, V7]
11298test { try toAsciiFail("\xf1\xae\xb4\x98\xe1\x82\xbe\xe7\x99\x80\xe3\x80\x82\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xe1\x84\x87\xe1\x85\xb0\xe1\x86\xab", false); } // [C1, V6, V7]
11299test { try toAsciiFail("\xf1\xae\xb4\x98\xe1\x82\xbe\xe7\x99\x80\xe3\x80\x82\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xe1\x84\x87\xe1\x85\xb0\xe1\x86\xab", true); } // [V6, V7]
4634test { try toUnicodeFail("\xf1\xae\xb4\x98\xe2\xb4\x9e\xe7\x99\x80\xe3\x80\x82\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xe1\x84\x87\xe1\x85\xb0\xe1\x86\xab"); } // [C1, V6, V7]11300test { try toUnicodeFail("\xf1\xae\xb4\x98\xe2\xb4\x9e\xe7\x99\x80\xe3\x80\x82\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xe1\x84\x87\xe1\x85\xb0\xe1\x86\xab"); } // [C1, V6, V7]
11301test { try toAsciiFail("\xf1\xae\xb4\x98\xe2\xb4\x9e\xe7\x99\x80\xe3\x80\x82\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xe1\x84\x87\xe1\x85\xb0\xe1\x86\xab", false); } // [C1, V6, V7]
11302test { try toAsciiFail("\xf1\xae\xb4\x98\xe2\xb4\x9e\xe7\x99\x80\xe3\x80\x82\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xe1\x84\x87\xe1\x85\xb0\xe1\x86\xab", true); } // [V6, V7]
4635test { try toUnicodeFail("\xf1\xae\xb4\x98\xe2\xb4\x9e\xe7\x99\x80\xe3\x80\x82\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xeb\xb6\xbc"); } // [C1, V6, V7]11303test { try toUnicodeFail("\xf1\xae\xb4\x98\xe2\xb4\x9e\xe7\x99\x80\xe3\x80\x82\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xeb\xb6\xbc"); } // [C1, V6, V7]
11304test { try toAsciiFail("\xf1\xae\xb4\x98\xe2\xb4\x9e\xe7\x99\x80\xe3\x80\x82\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xeb\xb6\xbc", false); } // [C1, V6, V7]
11305test { try toAsciiFail("\xf1\xae\xb4\x98\xe2\xb4\x9e\xe7\x99\x80\xe3\x80\x82\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xeb\xb6\xbc", true); } // [V6, V7]
4636test { try toUnicodeFail("xn--mlju35u7qx2f.xn--et3bn23n"); } // [V6, V7]11306test { try toUnicodeFail("xn--mlju35u7qx2f.xn--et3bn23n"); } // [V6, V7]
11307test { try toAsciiFail("xn--mlju35u7qx2f.xn--et3bn23n", false); } // [V6, V7]
11308test { try toAsciiFail("xn--mlju35u7qx2f.xn--et3bn23n", true); } // [V6, V7]
4637test { try toUnicodeFail("xn--mlju35u7qx2f.xn--0ugb6122js83c"); } // [C1, V6, V7]11309test { try toUnicodeFail("xn--mlju35u7qx2f.xn--0ugb6122js83c"); } // [C1, V6, V7]
11310test { try toAsciiFail("xn--mlju35u7qx2f.xn--0ugb6122js83c", false); } // [C1, V6, V7]
11311test { try toAsciiFail("xn--mlju35u7qx2f.xn--0ugb6122js83c", true); } // [C1, V6, V7]
4638test { try toUnicodeFail("\xf1\xae\xb4\x98\xe2\xb4\x9e\xe7\x99\x80\xef\xbd\xa1\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xe1\x84\x87\xe1\x85\xb0\xe1\x86\xab"); } // [C1, V6, V7]11312test { try toUnicodeFail("\xf1\xae\xb4\x98\xe2\xb4\x9e\xe7\x99\x80\xef\xbd\xa1\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xe1\x84\x87\xe1\x85\xb0\xe1\x86\xab"); } // [C1, V6, V7]
11313test { try toAsciiFail("\xf1\xae\xb4\x98\xe2\xb4\x9e\xe7\x99\x80\xef\xbd\xa1\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xe1\x84\x87\xe1\x85\xb0\xe1\x86\xab", false); } // [C1, V6, V7]
11314test { try toAsciiFail("\xf1\xae\xb4\x98\xe2\xb4\x9e\xe7\x99\x80\xef\xbd\xa1\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xe1\x84\x87\xe1\x85\xb0\xe1\x86\xab", true); } // [V6, V7]
4639test { try toUnicodeFail("\xf1\xae\xb4\x98\xe2\xb4\x9e\xe7\x99\x80\xef\xbd\xa1\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xeb\xb6\xbc"); } // [C1, V6, V7]11315test { try toUnicodeFail("\xf1\xae\xb4\x98\xe2\xb4\x9e\xe7\x99\x80\xef\xbd\xa1\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xeb\xb6\xbc"); } // [C1, V6, V7]
11316test { try toAsciiFail("\xf1\xae\xb4\x98\xe2\xb4\x9e\xe7\x99\x80\xef\xbd\xa1\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xeb\xb6\xbc", false); } // [C1, V6, V7]
11317test { try toAsciiFail("\xf1\xae\xb4\x98\xe2\xb4\x9e\xe7\x99\x80\xef\xbd\xa1\xf0\x91\x98\xbf\xe2\x80\x8d\xe2\x80\x8c\xeb\xb6\xbc", true); } // [V6, V7]
4640test { try toUnicodeFail("xn--2nd6803c7q37d.xn--et3bn23n"); } // [V6, V7]11318test { try toUnicodeFail("xn--2nd6803c7q37d.xn--et3bn23n"); } // [V6, V7]
11319test { try toAsciiFail("xn--2nd6803c7q37d.xn--et3bn23n", false); } // [V6, V7]
11320test { try toAsciiFail("xn--2nd6803c7q37d.xn--et3bn23n", true); } // [V6, V7]
4641test { try toUnicodeFail("xn--2nd6803c7q37d.xn--0ugb6122js83c"); } // [C1, V6, V7]11321test { try toUnicodeFail("xn--2nd6803c7q37d.xn--0ugb6122js83c"); } // [C1, V6, V7]
11322test { try toAsciiFail("xn--2nd6803c7q37d.xn--0ugb6122js83c", false); } // [C1, V6, V7]
11323test { try toAsciiFail("xn--2nd6803c7q37d.xn--0ugb6122js83c", true); } // [C1, V6, V7]
4642test { try toUnicodeFail("\xf3\x9a\x80\x85-\xe0\xaf\x8d\xe3\x80\x82\xda\xb9"); } // [B6, V7]11324test { try toUnicodeFail("\xf3\x9a\x80\x85-\xe0\xaf\x8d\xe3\x80\x82\xda\xb9"); } // [B6, V7]
11325test { try toAsciiFail("\xf3\x9a\x80\x85-\xe0\xaf\x8d\xe3\x80\x82\xda\xb9", false); } // [B6, V7]
11326test { try toAsciiFail("\xf3\x9a\x80\x85-\xe0\xaf\x8d\xe3\x80\x82\xda\xb9", true); } // [B6, V7]
4643test { try toUnicodeFail("xn----mze84808x.xn--skb"); } // [B6, V7]11327test { try toUnicodeFail("xn----mze84808x.xn--skb"); } // [B6, V7]
11328test { try toAsciiFail("xn----mze84808x.xn--skb", false); } // [B6, V7]
11329test { try toAsciiFail("xn----mze84808x.xn--skb", true); } // [B6, V7]
4644test { try toUnicodeFail("\xe1\xa1\x83\xf0\x9d\x9f\xa7\xe2\x89\xaf\xe1\xa0\xa3\xef\xbc\x8e\xe6\xb0\x81\xf1\xa8\x8f\xb1\xea\x81\xab"); } // [V7]11330test { try toUnicodeFail("\xe1\xa1\x83\xf0\x9d\x9f\xa7\xe2\x89\xaf\xe1\xa0\xa3\xef\xbc\x8e\xe6\xb0\x81\xf1\xa8\x8f\xb1\xea\x81\xab"); } // [V7]
11331test { try toAsciiFail("\xe1\xa1\x83\xf0\x9d\x9f\xa7\xe2\x89\xaf\xe1\xa0\xa3\xef\xbc\x8e\xe6\xb0\x81\xf1\xa8\x8f\xb1\xea\x81\xab", false); } // [V7]
11332test { try toAsciiFail("\xe1\xa1\x83\xf0\x9d\x9f\xa7\xe2\x89\xaf\xe1\xa0\xa3\xef\xbc\x8e\xe6\xb0\x81\xf1\xa8\x8f\xb1\xea\x81\xab", true); } // [V7]
4645test { try toUnicodeFail("\xe1\xa1\x83\xf0\x9d\x9f\xa7>\xcc\xb8\xe1\xa0\xa3\xef\xbc\x8e\xe6\xb0\x81\xf1\xa8\x8f\xb1\xea\x81\xab"); } // [V7]11333test { try toUnicodeFail("\xe1\xa1\x83\xf0\x9d\x9f\xa7>\xcc\xb8\xe1\xa0\xa3\xef\xbc\x8e\xe6\xb0\x81\xf1\xa8\x8f\xb1\xea\x81\xab"); } // [V7]
11334test { try toAsciiFail("\xe1\xa1\x83\xf0\x9d\x9f\xa7>\xcc\xb8\xe1\xa0\xa3\xef\xbc\x8e\xe6\xb0\x81\xf1\xa8\x8f\xb1\xea\x81\xab", false); } // [V7]
11335test { try toAsciiFail("\xe1\xa1\x83\xf0\x9d\x9f\xa7>\xcc\xb8\xe1\xa0\xa3\xef\xbc\x8e\xe6\xb0\x81\xf1\xa8\x8f\xb1\xea\x81\xab", true); } // [V7]
4646test { try toUnicodeFail("\xe1\xa1\x835\xe2\x89\xaf\xe1\xa0\xa3.\xe6\xb0\x81\xf1\xa8\x8f\xb1\xea\x81\xab"); } // [V7]11336test { try toUnicodeFail("\xe1\xa1\x835\xe2\x89\xaf\xe1\xa0\xa3.\xe6\xb0\x81\xf1\xa8\x8f\xb1\xea\x81\xab"); } // [V7]
11337test { try toAsciiFail("\xe1\xa1\x835\xe2\x89\xaf\xe1\xa0\xa3.\xe6\xb0\x81\xf1\xa8\x8f\xb1\xea\x81\xab", false); } // [V7]
11338test { try toAsciiFail("\xe1\xa1\x835\xe2\x89\xaf\xe1\xa0\xa3.\xe6\xb0\x81\xf1\xa8\x8f\xb1\xea\x81\xab", true); } // [V7]
4647test { try toUnicodeFail("\xe1\xa1\x835>\xcc\xb8\xe1\xa0\xa3.\xe6\xb0\x81\xf1\xa8\x8f\xb1\xea\x81\xab"); } // [V7]11339test { try toUnicodeFail("\xe1\xa1\x835>\xcc\xb8\xe1\xa0\xa3.\xe6\xb0\x81\xf1\xa8\x8f\xb1\xea\x81\xab"); } // [V7]
11340test { try toAsciiFail("\xe1\xa1\x835>\xcc\xb8\xe1\xa0\xa3.\xe6\xb0\x81\xf1\xa8\x8f\xb1\xea\x81\xab", false); } // [V7]
11341test { try toAsciiFail("\xe1\xa1\x835>\xcc\xb8\xe1\xa0\xa3.\xe6\xb0\x81\xf1\xa8\x8f\xb1\xea\x81\xab", true); } // [V7]
4648test { try toUnicodeFail("xn--5-24jyf768b.xn--lqw213ime95g"); } // [V7]11342test { try toUnicodeFail("xn--5-24jyf768b.xn--lqw213ime95g"); } // [V7]
11343test { try toAsciiFail("xn--5-24jyf768b.xn--lqw213ime95g", false); } // [V7]
11344test { try toAsciiFail("xn--5-24jyf768b.xn--lqw213ime95g", true); } // [V7]
4649test { try toUnicodeFail("\xf0\x90\xb9\xac\xf0\x9d\xa9\x87\xef\xbc\x8e\xe0\xbd\xb6"); } // [B1, V6]11345test { try toUnicodeFail("\xf0\x90\xb9\xac\xf0\x9d\xa9\x87\xef\xbc\x8e\xe0\xbd\xb6"); } // [B1, V6]
11346test { try toAsciiFail("\xf0\x90\xb9\xac\xf0\x9d\xa9\x87\xef\xbc\x8e\xe0\xbd\xb6", false); } // [B1, V6]
11347test { try toAsciiFail("\xf0\x90\xb9\xac\xf0\x9d\xa9\x87\xef\xbc\x8e\xe0\xbd\xb6", true); } // [B1, V6]
4650test { try toUnicodeFail("\xf0\x90\xb9\xac\xf0\x9d\xa9\x87\xef\xbc\x8e\xe0\xbe\xb2\xe0\xbe\x80"); } // [B1, V6]11348test { try toUnicodeFail("\xf0\x90\xb9\xac\xf0\x9d\xa9\x87\xef\xbc\x8e\xe0\xbe\xb2\xe0\xbe\x80"); } // [B1, V6]
11349test { try toAsciiFail("\xf0\x90\xb9\xac\xf0\x9d\xa9\x87\xef\xbc\x8e\xe0\xbe\xb2\xe0\xbe\x80", false); } // [B1, V6]
11350test { try toAsciiFail("\xf0\x90\xb9\xac\xf0\x9d\xa9\x87\xef\xbc\x8e\xe0\xbe\xb2\xe0\xbe\x80", true); } // [B1, V6]
4651test { try toUnicodeFail("\xf0\x90\xb9\xac\xf0\x9d\xa9\x87.\xe0\xbe\xb2\xe0\xbe\x80"); } // [B1, V6]11351test { try toUnicodeFail("\xf0\x90\xb9\xac\xf0\x9d\xa9\x87.\xe0\xbe\xb2\xe0\xbe\x80"); } // [B1, V6]
11352test { try toAsciiFail("\xf0\x90\xb9\xac\xf0\x9d\xa9\x87.\xe0\xbe\xb2\xe0\xbe\x80", false); } // [B1, V6]
11353test { try toAsciiFail("\xf0\x90\xb9\xac\xf0\x9d\xa9\x87.\xe0\xbe\xb2\xe0\xbe\x80", true); } // [B1, V6]
4652test { try toUnicodeFail("xn--ko0d8295a.xn--zed3h"); } // [B1, V6]11354test { try toUnicodeFail("xn--ko0d8295a.xn--zed3h"); } // [B1, V6]
11355test { try toAsciiFail("xn--ko0d8295a.xn--zed3h", false); } // [B1, V6]
11356test { try toAsciiFail("xn--ko0d8295a.xn--zed3h", true); } // [B1, V6]
4653test { try toUnicodeFail("-\xf0\x91\x88\xb6\xe2\x92\x8f\xef\xbc\x8e\xe2\x92\x8e\xf0\xb0\x9b\xa2\xf3\xa0\x8e\xad"); } // [V3, V7]11357test { try toUnicodeFail("-\xf0\x91\x88\xb6\xe2\x92\x8f\xef\xbc\x8e\xe2\x92\x8e\xf0\xb0\x9b\xa2\xf3\xa0\x8e\xad"); } // [V3, V7]
11358test { try toAsciiFail("-\xf0\x91\x88\xb6\xe2\x92\x8f\xef\xbc\x8e\xe2\x92\x8e\xf0\xb0\x9b\xa2\xf3\xa0\x8e\xad", false); } // [V3, V7]
11359test { try toAsciiFail("-\xf0\x91\x88\xb6\xe2\x92\x8f\xef\xbc\x8e\xe2\x92\x8e\xf0\xb0\x9b\xa2\xf3\xa0\x8e\xad", true); } // [V3, V7]
4654test { try toUnicodeFail("-\xf0\x91\x88\xb68..7.\xf0\xb0\x9b\xa2\xf3\xa0\x8e\xad"); } // [V3, V7, X4_2]11360test { try toUnicodeFail("-\xf0\x91\x88\xb68..7.\xf0\xb0\x9b\xa2\xf3\xa0\x8e\xad"); } // [V3, V7, X4_2]
11361test { try toAsciiFail("-\xf0\x91\x88\xb68..7.\xf0\xb0\x9b\xa2\xf3\xa0\x8e\xad", false); } // [V3, V7, A4_2]
11362test { try toAsciiFail("-\xf0\x91\x88\xb68..7.\xf0\xb0\x9b\xa2\xf3\xa0\x8e\xad", true); } // [V3, V7, A4_2]
4655test { try toUnicodeFail("xn---8-bv5o..7.xn--c35nf1622b"); } // [V3, V7, X4_2]11363test { try toUnicodeFail("xn---8-bv5o..7.xn--c35nf1622b"); } // [V3, V7, X4_2]
11364test { try toAsciiFail("xn---8-bv5o..7.xn--c35nf1622b", false); } // [V3, V7, A4_2]
11365test { try toAsciiFail("xn---8-bv5o..7.xn--c35nf1622b", true); } // [V3, V7, A4_2]
4656test { try toUnicodeFail("xn----scp6252h.xn--zshy411yzpx2d"); } // [V3, V7]11366test { try toUnicodeFail("xn----scp6252h.xn--zshy411yzpx2d"); } // [V3, V7]
11367test { try toAsciiFail("xn----scp6252h.xn--zshy411yzpx2d", false); } // [V3, V7]
11368test { try toAsciiFail("xn----scp6252h.xn--zshy411yzpx2d", true); } // [V3, V7]
4657test { try toAsciiPass("\xe2\x80\x8c\xe1\x82\xa1\xe7\x95\x9d\xe2\x80\x8d\xef\xbc\x8e\xe2\x89\xae", "xn--skjy82u.xn--gdh", true); }11369test { try toAsciiPass("\xe2\x80\x8c\xe1\x82\xa1\xe7\x95\x9d\xe2\x80\x8d\xef\xbc\x8e\xe2\x89\xae", "xn--skjy82u.xn--gdh", true); }
4658test { try toUnicodeFail("\xe2\x80\x8c\xe1\x82\xa1\xe7\x95\x9d\xe2\x80\x8d\xef\xbc\x8e\xe2\x89\xae"); } // [C1, C2]11370test { try toUnicodeFail("\xe2\x80\x8c\xe1\x82\xa1\xe7\x95\x9d\xe2\x80\x8d\xef\xbc\x8e\xe2\x89\xae"); } // [C1, C2]
11371test { try toAsciiFail("\xe2\x80\x8c\xe1\x82\xa1\xe7\x95\x9d\xe2\x80\x8d\xef\xbc\x8e\xe2\x89\xae", false); } // [C1, C2]
4659test { try toAsciiPass("\xe2\x80\x8c\xe1\x82\xa1\xe7\x95\x9d\xe2\x80\x8d\xef\xbc\x8e<\xcc\xb8", "xn--skjy82u.xn--gdh", true); }11372test { try toAsciiPass("\xe2\x80\x8c\xe1\x82\xa1\xe7\x95\x9d\xe2\x80\x8d\xef\xbc\x8e<\xcc\xb8", "xn--skjy82u.xn--gdh", true); }
4660test { try toUnicodeFail("\xe2\x80\x8c\xe1\x82\xa1\xe7\x95\x9d\xe2\x80\x8d\xef\xbc\x8e<\xcc\xb8"); } // [C1, C2]11373test { try toUnicodeFail("\xe2\x80\x8c\xe1\x82\xa1\xe7\x95\x9d\xe2\x80\x8d\xef\xbc\x8e<\xcc\xb8"); } // [C1, C2]
11374test { try toAsciiFail("\xe2\x80\x8c\xe1\x82\xa1\xe7\x95\x9d\xe2\x80\x8d\xef\xbc\x8e<\xcc\xb8", false); } // [C1, C2]
4661test { try toAsciiPass("\xe2\x80\x8c\xe1\x82\xa1\xe7\x95\x9d\xe2\x80\x8d.\xe2\x89\xae", "xn--skjy82u.xn--gdh", true); }11375test { try toAsciiPass("\xe2\x80\x8c\xe1\x82\xa1\xe7\x95\x9d\xe2\x80\x8d.\xe2\x89\xae", "xn--skjy82u.xn--gdh", true); }
4662test { try toUnicodeFail("\xe2\x80\x8c\xe1\x82\xa1\xe7\x95\x9d\xe2\x80\x8d.\xe2\x89\xae"); } // [C1, C2]11376test { try toUnicodeFail("\xe2\x80\x8c\xe1\x82\xa1\xe7\x95\x9d\xe2\x80\x8d.\xe2\x89\xae"); } // [C1, C2]
11377test { try toAsciiFail("\xe2\x80\x8c\xe1\x82\xa1\xe7\x95\x9d\xe2\x80\x8d.\xe2\x89\xae", false); } // [C1, C2]
4663test { try toAsciiPass("\xe2\x80\x8c\xe1\x82\xa1\xe7\x95\x9d\xe2\x80\x8d.<\xcc\xb8", "xn--skjy82u.xn--gdh", true); }11378test { try toAsciiPass("\xe2\x80\x8c\xe1\x82\xa1\xe7\x95\x9d\xe2\x80\x8d.<\xcc\xb8", "xn--skjy82u.xn--gdh", true); }
4664test { try toUnicodeFail("\xe2\x80\x8c\xe1\x82\xa1\xe7\x95\x9d\xe2\x80\x8d.<\xcc\xb8"); } // [C1, C2]11379test { try toUnicodeFail("\xe2\x80\x8c\xe1\x82\xa1\xe7\x95\x9d\xe2\x80\x8d.<\xcc\xb8"); } // [C1, C2]
11380test { try toAsciiFail("\xe2\x80\x8c\xe1\x82\xa1\xe7\x95\x9d\xe2\x80\x8d.<\xcc\xb8", false); } // [C1, C2]
4665test { try toAsciiPass("\xe2\x80\x8c\xe2\xb4\x81\xe7\x95\x9d\xe2\x80\x8d.<\xcc\xb8", "xn--skjy82u.xn--gdh", true); }11381test { try toAsciiPass("\xe2\x80\x8c\xe2\xb4\x81\xe7\x95\x9d\xe2\x80\x8d.<\xcc\xb8", "xn--skjy82u.xn--gdh", true); }
4666test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\x81\xe7\x95\x9d\xe2\x80\x8d.<\xcc\xb8"); } // [C1, C2]11382test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\x81\xe7\x95\x9d\xe2\x80\x8d.<\xcc\xb8"); } // [C1, C2]
11383test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\x81\xe7\x95\x9d\xe2\x80\x8d.<\xcc\xb8", false); } // [C1, C2]
4667test { try toAsciiPass("\xe2\x80\x8c\xe2\xb4\x81\xe7\x95\x9d\xe2\x80\x8d.\xe2\x89\xae", "xn--skjy82u.xn--gdh", true); }11384test { try toAsciiPass("\xe2\x80\x8c\xe2\xb4\x81\xe7\x95\x9d\xe2\x80\x8d.\xe2\x89\xae", "xn--skjy82u.xn--gdh", true); }
4668test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\x81\xe7\x95\x9d\xe2\x80\x8d.\xe2\x89\xae"); } // [C1, C2]11385test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\x81\xe7\x95\x9d\xe2\x80\x8d.\xe2\x89\xae"); } // [C1, C2]
11386test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\x81\xe7\x95\x9d\xe2\x80\x8d.\xe2\x89\xae", false); } // [C1, C2]
4669test { try toUnicodePass("xn--skjy82u.xn--gdh", "\xe2\xb4\x81\xe7\x95\x9d.\xe2\x89\xae"); }11387test { try toUnicodePass("xn--skjy82u.xn--gdh", "\xe2\xb4\x81\xe7\x95\x9d.\xe2\x89\xae"); }
4670test { try toAsciiPass("xn--skjy82u.xn--gdh", "xn--skjy82u.xn--gdh", false); }11388test { try toAsciiPass("xn--skjy82u.xn--gdh", "xn--skjy82u.xn--gdh", false); }
4671test { try toAsciiPass("xn--skjy82u.xn--gdh", "xn--skjy82u.xn--gdh", true); }11389test { try toAsciiPass("xn--skjy82u.xn--gdh", "xn--skjy82u.xn--gdh", true); }
...@@ -4682,163 +11400,473 @@ test { try toUnicodePass("\xe1\x82\xa1\xe7\x95\x9d.\xe2\x89\xae", "\xe2\xb4\x81\...@@ -4682,163 +11400,473 @@ test { try toUnicodePass("\xe1\x82\xa1\xe7\x95\x9d.\xe2\x89\xae", "\xe2\xb4\x81\
4682test { try toAsciiPass("\xe1\x82\xa1\xe7\x95\x9d.\xe2\x89\xae", "xn--skjy82u.xn--gdh", false); }11400test { try toAsciiPass("\xe1\x82\xa1\xe7\x95\x9d.\xe2\x89\xae", "xn--skjy82u.xn--gdh", false); }
4683test { try toAsciiPass("\xe1\x82\xa1\xe7\x95\x9d.\xe2\x89\xae", "xn--skjy82u.xn--gdh", true); }11401test { try toAsciiPass("\xe1\x82\xa1\xe7\x95\x9d.\xe2\x89\xae", "xn--skjy82u.xn--gdh", true); }
4684test { try toUnicodeFail("xn--0ugc160hb36e.xn--gdh"); } // [C1, C2]11402test { try toUnicodeFail("xn--0ugc160hb36e.xn--gdh"); } // [C1, C2]
11403test { try toAsciiFail("xn--0ugc160hb36e.xn--gdh", false); } // [C1, C2]
11404test { try toAsciiFail("xn--0ugc160hb36e.xn--gdh", true); } // [C1, C2]
4685test { try toAsciiPass("\xe2\x80\x8c\xe2\xb4\x81\xe7\x95\x9d\xe2\x80\x8d\xef\xbc\x8e<\xcc\xb8", "xn--skjy82u.xn--gdh", true); }11405test { try toAsciiPass("\xe2\x80\x8c\xe2\xb4\x81\xe7\x95\x9d\xe2\x80\x8d\xef\xbc\x8e<\xcc\xb8", "xn--skjy82u.xn--gdh", true); }
4686test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\x81\xe7\x95\x9d\xe2\x80\x8d\xef\xbc\x8e<\xcc\xb8"); } // [C1, C2]11406test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\x81\xe7\x95\x9d\xe2\x80\x8d\xef\xbc\x8e<\xcc\xb8"); } // [C1, C2]
11407test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\x81\xe7\x95\x9d\xe2\x80\x8d\xef\xbc\x8e<\xcc\xb8", false); } // [C1, C2]
4687test { try toAsciiPass("\xe2\x80\x8c\xe2\xb4\x81\xe7\x95\x9d\xe2\x80\x8d\xef\xbc\x8e\xe2\x89\xae", "xn--skjy82u.xn--gdh", true); }11408test { try toAsciiPass("\xe2\x80\x8c\xe2\xb4\x81\xe7\x95\x9d\xe2\x80\x8d\xef\xbc\x8e\xe2\x89\xae", "xn--skjy82u.xn--gdh", true); }
4688test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\x81\xe7\x95\x9d\xe2\x80\x8d\xef\xbc\x8e\xe2\x89\xae"); } // [C1, C2]11409test { try toUnicodeFail("\xe2\x80\x8c\xe2\xb4\x81\xe7\x95\x9d\xe2\x80\x8d\xef\xbc\x8e\xe2\x89\xae"); } // [C1, C2]
11410test { try toAsciiFail("\xe2\x80\x8c\xe2\xb4\x81\xe7\x95\x9d\xe2\x80\x8d\xef\xbc\x8e\xe2\x89\xae", false); } // [C1, C2]
4689test { try toUnicodeFail("xn--8md0962c.xn--gdh"); } // [V7]11411test { try toUnicodeFail("xn--8md0962c.xn--gdh"); } // [V7]
11412test { try toAsciiFail("xn--8md0962c.xn--gdh", false); } // [V7]
11413test { try toAsciiFail("xn--8md0962c.xn--gdh", true); } // [V7]
4690test { try toUnicodeFail("xn--8md700fea3748f.xn--gdh"); } // [C1, C2, V7]11414test { try toUnicodeFail("xn--8md700fea3748f.xn--gdh"); } // [C1, C2, V7]
11415test { try toAsciiFail("xn--8md700fea3748f.xn--gdh", false); } // [C1, C2, V7]
11416test { try toAsciiFail("xn--8md700fea3748f.xn--gdh", true); } // [C1, C2, V7]
4691test { try toUnicodeFail("\xe6\xad\xb7\xef\xbd\xa1\xf0\x90\xb9\xbb\xe2\x89\xaf\xf3\xb3\x9b\xbd\xe2\x80\x8d"); } // [B1, C2, V7]11417test { try toUnicodeFail("\xe6\xad\xb7\xef\xbd\xa1\xf0\x90\xb9\xbb\xe2\x89\xaf\xf3\xb3\x9b\xbd\xe2\x80\x8d"); } // [B1, C2, V7]
11418test { try toAsciiFail("\xe6\xad\xb7\xef\xbd\xa1\xf0\x90\xb9\xbb\xe2\x89\xaf\xf3\xb3\x9b\xbd\xe2\x80\x8d", false); } // [B1, C2, V7]
11419test { try toAsciiFail("\xe6\xad\xb7\xef\xbd\xa1\xf0\x90\xb9\xbb\xe2\x89\xaf\xf3\xb3\x9b\xbd\xe2\x80\x8d", true); } // [B1, V7]
4692test { try toUnicodeFail("\xe6\xad\xb7\xef\xbd\xa1\xf0\x90\xb9\xbb>\xcc\xb8\xf3\xb3\x9b\xbd\xe2\x80\x8d"); } // [B1, C2, V7]11420test { try toUnicodeFail("\xe6\xad\xb7\xef\xbd\xa1\xf0\x90\xb9\xbb>\xcc\xb8\xf3\xb3\x9b\xbd\xe2\x80\x8d"); } // [B1, C2, V7]
11421test { try toAsciiFail("\xe6\xad\xb7\xef\xbd\xa1\xf0\x90\xb9\xbb>\xcc\xb8\xf3\xb3\x9b\xbd\xe2\x80\x8d", false); } // [B1, C2, V7]
11422test { try toAsciiFail("\xe6\xad\xb7\xef\xbd\xa1\xf0\x90\xb9\xbb>\xcc\xb8\xf3\xb3\x9b\xbd\xe2\x80\x8d", true); } // [B1, V7]
4693test { try toUnicodeFail("\xe6\xad\xb7\xe3\x80\x82\xf0\x90\xb9\xbb\xe2\x89\xaf\xf3\xb3\x9b\xbd\xe2\x80\x8d"); } // [B1, C2, V7]11423test { try toUnicodeFail("\xe6\xad\xb7\xe3\x80\x82\xf0\x90\xb9\xbb\xe2\x89\xaf\xf3\xb3\x9b\xbd\xe2\x80\x8d"); } // [B1, C2, V7]
11424test { try toAsciiFail("\xe6\xad\xb7\xe3\x80\x82\xf0\x90\xb9\xbb\xe2\x89\xaf\xf3\xb3\x9b\xbd\xe2\x80\x8d", false); } // [B1, C2, V7]
11425test { try toAsciiFail("\xe6\xad\xb7\xe3\x80\x82\xf0\x90\xb9\xbb\xe2\x89\xaf\xf3\xb3\x9b\xbd\xe2\x80\x8d", true); } // [B1, V7]
4694test { try toUnicodeFail("\xe6\xad\xb7\xe3\x80\x82\xf0\x90\xb9\xbb>\xcc\xb8\xf3\xb3\x9b\xbd\xe2\x80\x8d"); } // [B1, C2, V7]11426test { try toUnicodeFail("\xe6\xad\xb7\xe3\x80\x82\xf0\x90\xb9\xbb>\xcc\xb8\xf3\xb3\x9b\xbd\xe2\x80\x8d"); } // [B1, C2, V7]
11427test { try toAsciiFail("\xe6\xad\xb7\xe3\x80\x82\xf0\x90\xb9\xbb>\xcc\xb8\xf3\xb3\x9b\xbd\xe2\x80\x8d", false); } // [B1, C2, V7]
11428test { try toAsciiFail("\xe6\xad\xb7\xe3\x80\x82\xf0\x90\xb9\xbb>\xcc\xb8\xf3\xb3\x9b\xbd\xe2\x80\x8d", true); } // [B1, V7]
4695test { try toUnicodeFail("xn--nmw.xn--hdh7804gdms2h"); } // [B1, V7]11429test { try toUnicodeFail("xn--nmw.xn--hdh7804gdms2h"); } // [B1, V7]
11430test { try toAsciiFail("xn--nmw.xn--hdh7804gdms2h", false); } // [B1, V7]
11431test { try toAsciiFail("xn--nmw.xn--hdh7804gdms2h", true); } // [B1, V7]
4696test { try toUnicodeFail("xn--nmw.xn--1ugx6gs128a1134j"); } // [B1, C2, V7]11432test { try toUnicodeFail("xn--nmw.xn--1ugx6gs128a1134j"); } // [B1, C2, V7]
11433test { try toAsciiFail("xn--nmw.xn--1ugx6gs128a1134j", false); } // [B1, C2, V7]
11434test { try toAsciiFail("xn--nmw.xn--1ugx6gs128a1134j", true); } // [B1, C2, V7]
4697test { try toUnicodeFail("\xe0\xbb\x8b\xe2\x80\x8d\xef\xbc\x8e\xe9\x8e\x81\xf3\xa0\xb0\x91"); } // [C2, V6, V7]11435test { try toUnicodeFail("\xe0\xbb\x8b\xe2\x80\x8d\xef\xbc\x8e\xe9\x8e\x81\xf3\xa0\xb0\x91"); } // [C2, V6, V7]
11436test { try toAsciiFail("\xe0\xbb\x8b\xe2\x80\x8d\xef\xbc\x8e\xe9\x8e\x81\xf3\xa0\xb0\x91", false); } // [C2, V6, V7]
11437test { try toAsciiFail("\xe0\xbb\x8b\xe2\x80\x8d\xef\xbc\x8e\xe9\x8e\x81\xf3\xa0\xb0\x91", true); } // [V6, V7]
4698test { try toUnicodeFail("\xe0\xbb\x8b\xe2\x80\x8d.\xe9\x8e\x81\xf3\xa0\xb0\x91"); } // [C2, V6, V7]11438test { try toUnicodeFail("\xe0\xbb\x8b\xe2\x80\x8d.\xe9\x8e\x81\xf3\xa0\xb0\x91"); } // [C2, V6, V7]
11439test { try toAsciiFail("\xe0\xbb\x8b\xe2\x80\x8d.\xe9\x8e\x81\xf3\xa0\xb0\x91", false); } // [C2, V6, V7]
11440test { try toAsciiFail("\xe0\xbb\x8b\xe2\x80\x8d.\xe9\x8e\x81\xf3\xa0\xb0\x91", true); } // [V6, V7]
4699test { try toUnicodeFail("xn--t8c.xn--iz4a43209d"); } // [V6, V7]11441test { try toUnicodeFail("xn--t8c.xn--iz4a43209d"); } // [V6, V7]
11442test { try toAsciiFail("xn--t8c.xn--iz4a43209d", false); } // [V6, V7]
11443test { try toAsciiFail("xn--t8c.xn--iz4a43209d", true); } // [V6, V7]
4700test { try toUnicodeFail("xn--t8c059f.xn--iz4a43209d"); } // [C2, V6, V7]11444test { try toUnicodeFail("xn--t8c059f.xn--iz4a43209d"); } // [C2, V6, V7]
11445test { try toAsciiFail("xn--t8c059f.xn--iz4a43209d", false); } // [C2, V6, V7]
11446test { try toAsciiFail("xn--t8c059f.xn--iz4a43209d", true); } // [C2, V6, V7]
4701test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\x80\xef\xbd\xa1\xf0\xb1\x98\x85\xf0\x90\xb6\x83"); } // [B1, B5, B6, C1, C2]11447test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\x80\xef\xbd\xa1\xf0\xb1\x98\x85\xf0\x90\xb6\x83"); } // [B1, B5, B6, C1, C2]
11448test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\x80\xef\xbd\xa1\xf0\xb1\x98\x85\xf0\x90\xb6\x83", false); } // [B1, B5, B6, C1, C2]
11449test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\x80\xef\xbd\xa1\xf0\xb1\x98\x85\xf0\x90\xb6\x83", true); } // [B5, B6]
4702test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\x80\xe3\x80\x82\xf0\xb1\x98\x85\xf0\x90\xb6\x83"); } // [B1, B5, B6, C1, C2]11450test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\x80\xe3\x80\x82\xf0\xb1\x98\x85\xf0\x90\xb6\x83"); } // [B1, B5, B6, C1, C2]
11451test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\x80\xe3\x80\x82\xf0\xb1\x98\x85\xf0\x90\xb6\x83", false); } // [B1, B5, B6, C1, C2]
11452test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\x80\xe3\x80\x82\xf0\xb1\x98\x85\xf0\x90\xb6\x83", true); } // [B5, B6]
4703test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\xa2\xe3\x80\x82\xf0\xb1\x98\x85\xf0\x90\xb6\x83"); } // [B1, B5, B6, C1, C2]11453test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\xa2\xe3\x80\x82\xf0\xb1\x98\x85\xf0\x90\xb6\x83"); } // [B1, B5, B6, C1, C2]
11454test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\xa2\xe3\x80\x82\xf0\xb1\x98\x85\xf0\x90\xb6\x83", false); } // [B1, B5, B6, C1, C2]
11455test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\xa2\xe3\x80\x82\xf0\xb1\x98\x85\xf0\x90\xb6\x83", true); } // [B5, B6]
4704test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\x80\xe3\x80\x82\xf0\xb1\x98\x85\xf0\x90\xb5\xa3"); } // [B1, B5, B6, C1, C2]11456test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\x80\xe3\x80\x82\xf0\xb1\x98\x85\xf0\x90\xb5\xa3"); } // [B1, B5, B6, C1, C2]
11457test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\x80\xe3\x80\x82\xf0\xb1\x98\x85\xf0\x90\xb5\xa3", false); } // [B1, B5, B6, C1, C2]
11458test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\x80\xe3\x80\x82\xf0\xb1\x98\x85\xf0\x90\xb5\xa3", true); } // [B5, B6]
4705test { try toUnicodeFail("xn--9d6h.xn--wh0dj799f"); } // [B5, B6]11459test { try toUnicodeFail("xn--9d6h.xn--wh0dj799f"); } // [B5, B6]
11460test { try toAsciiFail("xn--9d6h.xn--wh0dj799f", false); } // [B5, B6]
11461test { try toAsciiFail("xn--9d6h.xn--wh0dj799f", true); } // [B5, B6]
4706test { try toUnicodeFail("xn--0ugb45126a.xn--wh0dj799f"); } // [B1, B5, B6, C1, C2]11462test { try toUnicodeFail("xn--0ugb45126a.xn--wh0dj799f"); } // [B1, B5, B6, C1, C2]
11463test { try toAsciiFail("xn--0ugb45126a.xn--wh0dj799f", false); } // [B1, B5, B6, C1, C2]
11464test { try toAsciiFail("xn--0ugb45126a.xn--wh0dj799f", true); } // [B1, B5, B6, C1, C2]
4707test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\xa2\xef\xbd\xa1\xf0\xb1\x98\x85\xf0\x90\xb6\x83"); } // [B1, B5, B6, C1, C2]11465test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\xa2\xef\xbd\xa1\xf0\xb1\x98\x85\xf0\x90\xb6\x83"); } // [B1, B5, B6, C1, C2]
11466test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\xa2\xef\xbd\xa1\xf0\xb1\x98\x85\xf0\x90\xb6\x83", false); } // [B1, B5, B6, C1, C2]
11467test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\xa2\xef\xbd\xa1\xf0\xb1\x98\x85\xf0\x90\xb6\x83", true); } // [B5, B6]
4708test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\x80\xef\xbd\xa1\xf0\xb1\x98\x85\xf0\x90\xb5\xa3"); } // [B1, B5, B6, C1, C2]11468test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\x80\xef\xbd\xa1\xf0\xb1\x98\x85\xf0\x90\xb5\xa3"); } // [B1, B5, B6, C1, C2]
11469test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\x80\xef\xbd\xa1\xf0\xb1\x98\x85\xf0\x90\xb5\xa3", false); } // [B1, B5, B6, C1, C2]
11470test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf0\x9e\xa4\x80\xef\xbd\xa1\xf0\xb1\x98\x85\xf0\x90\xb5\xa3", true); } // [B5, B6]
4709test { try toUnicodeFail("\xd8\xa8\xe2\x89\xa0\xf0\x9d\x9f\xab-.\xcf\x82\xe2\x92\x8d\xf0\x90\xb9\xa6\xe2\x89\xa0"); } // [B3, B5, B6, V3, V7]11471test { try toUnicodeFail("\xd8\xa8\xe2\x89\xa0\xf0\x9d\x9f\xab-.\xcf\x82\xe2\x92\x8d\xf0\x90\xb9\xa6\xe2\x89\xa0"); } // [B3, B5, B6, V3, V7]
11472test { try toAsciiFail("\xd8\xa8\xe2\x89\xa0\xf0\x9d\x9f\xab-.\xcf\x82\xe2\x92\x8d\xf0\x90\xb9\xa6\xe2\x89\xa0", false); } // [B3, B5, B6, V3, V7]
11473test { try toAsciiFail("\xd8\xa8\xe2\x89\xa0\xf0\x9d\x9f\xab-.\xcf\x82\xe2\x92\x8d\xf0\x90\xb9\xa6\xe2\x89\xa0", true); } // [B3, B5, B6, V3, V7]
4710test { try toUnicodeFail("\xd8\xa8=\xcc\xb8\xf0\x9d\x9f\xab-.\xcf\x82\xe2\x92\x8d\xf0\x90\xb9\xa6=\xcc\xb8"); } // [B3, B5, B6, V3, V7]11474test { try toUnicodeFail("\xd8\xa8=\xcc\xb8\xf0\x9d\x9f\xab-.\xcf\x82\xe2\x92\x8d\xf0\x90\xb9\xa6=\xcc\xb8"); } // [B3, B5, B6, V3, V7]
11475test { try toAsciiFail("\xd8\xa8=\xcc\xb8\xf0\x9d\x9f\xab-.\xcf\x82\xe2\x92\x8d\xf0\x90\xb9\xa6=\xcc\xb8", false); } // [B3, B5, B6, V3, V7]
11476test { try toAsciiFail("\xd8\xa8=\xcc\xb8\xf0\x9d\x9f\xab-.\xcf\x82\xe2\x92\x8d\xf0\x90\xb9\xa6=\xcc\xb8", true); } // [B3, B5, B6, V3, V7]
4711test { try toUnicodeFail("\xd8\xa8\xe2\x89\xa09-.\xcf\x826.\xf0\x90\xb9\xa6\xe2\x89\xa0"); } // [B1, B3, V3]11477test { try toUnicodeFail("\xd8\xa8\xe2\x89\xa09-.\xcf\x826.\xf0\x90\xb9\xa6\xe2\x89\xa0"); } // [B1, B3, V3]
11478test { try toAsciiFail("\xd8\xa8\xe2\x89\xa09-.\xcf\x826.\xf0\x90\xb9\xa6\xe2\x89\xa0", false); } // [B1, B3, V3]
11479test { try toAsciiFail("\xd8\xa8\xe2\x89\xa09-.\xcf\x826.\xf0\x90\xb9\xa6\xe2\x89\xa0", true); } // [B1, B3, V3]
4712test { try toUnicodeFail("\xd8\xa8=\xcc\xb89-.\xcf\x826.\xf0\x90\xb9\xa6=\xcc\xb8"); } // [B1, B3, V3]11480test { try toUnicodeFail("\xd8\xa8=\xcc\xb89-.\xcf\x826.\xf0\x90\xb9\xa6=\xcc\xb8"); } // [B1, B3, V3]
11481test { try toAsciiFail("\xd8\xa8=\xcc\xb89-.\xcf\x826.\xf0\x90\xb9\xa6=\xcc\xb8", false); } // [B1, B3, V3]
11482test { try toAsciiFail("\xd8\xa8=\xcc\xb89-.\xcf\x826.\xf0\x90\xb9\xa6=\xcc\xb8", true); } // [B1, B3, V3]
4713test { try toUnicodeFail("\xd8\xa8=\xcc\xb89-.\xce\xa36.\xf0\x90\xb9\xa6=\xcc\xb8"); } // [B1, B3, V3]11483test { try toUnicodeFail("\xd8\xa8=\xcc\xb89-.\xce\xa36.\xf0\x90\xb9\xa6=\xcc\xb8"); } // [B1, B3, V3]
11484test { try toAsciiFail("\xd8\xa8=\xcc\xb89-.\xce\xa36.\xf0\x90\xb9\xa6=\xcc\xb8", false); } // [B1, B3, V3]
11485test { try toAsciiFail("\xd8\xa8=\xcc\xb89-.\xce\xa36.\xf0\x90\xb9\xa6=\xcc\xb8", true); } // [B1, B3, V3]
4714test { try toUnicodeFail("\xd8\xa8\xe2\x89\xa09-.\xce\xa36.\xf0\x90\xb9\xa6\xe2\x89\xa0"); } // [B1, B3, V3]11486test { try toUnicodeFail("\xd8\xa8\xe2\x89\xa09-.\xce\xa36.\xf0\x90\xb9\xa6\xe2\x89\xa0"); } // [B1, B3, V3]
11487test { try toAsciiFail("\xd8\xa8\xe2\x89\xa09-.\xce\xa36.\xf0\x90\xb9\xa6\xe2\x89\xa0", false); } // [B1, B3, V3]
11488test { try toAsciiFail("\xd8\xa8\xe2\x89\xa09-.\xce\xa36.\xf0\x90\xb9\xa6\xe2\x89\xa0", true); } // [B1, B3, V3]
4715test { try toUnicodeFail("\xd8\xa8\xe2\x89\xa09-.\xcf\x836.\xf0\x90\xb9\xa6\xe2\x89\xa0"); } // [B1, B3, V3]11489test { try toUnicodeFail("\xd8\xa8\xe2\x89\xa09-.\xcf\x836.\xf0\x90\xb9\xa6\xe2\x89\xa0"); } // [B1, B3, V3]
11490test { try toAsciiFail("\xd8\xa8\xe2\x89\xa09-.\xcf\x836.\xf0\x90\xb9\xa6\xe2\x89\xa0", false); } // [B1, B3, V3]
11491test { try toAsciiFail("\xd8\xa8\xe2\x89\xa09-.\xcf\x836.\xf0\x90\xb9\xa6\xe2\x89\xa0", true); } // [B1, B3, V3]
4716test { try toUnicodeFail("\xd8\xa8=\xcc\xb89-.\xcf\x836.\xf0\x90\xb9\xa6=\xcc\xb8"); } // [B1, B3, V3]11492test { try toUnicodeFail("\xd8\xa8=\xcc\xb89-.\xcf\x836.\xf0\x90\xb9\xa6=\xcc\xb8"); } // [B1, B3, V3]
11493test { try toAsciiFail("\xd8\xa8=\xcc\xb89-.\xcf\x836.\xf0\x90\xb9\xa6=\xcc\xb8", false); } // [B1, B3, V3]
11494test { try toAsciiFail("\xd8\xa8=\xcc\xb89-.\xcf\x836.\xf0\x90\xb9\xa6=\xcc\xb8", true); } // [B1, B3, V3]
4717test { try toUnicodeFail("xn--9--etd0100a.xn--6-zmb.xn--1ch8704g"); } // [B1, B3, V3]11495test { try toUnicodeFail("xn--9--etd0100a.xn--6-zmb.xn--1ch8704g"); } // [B1, B3, V3]
11496test { try toAsciiFail("xn--9--etd0100a.xn--6-zmb.xn--1ch8704g", false); } // [B1, B3, V3]
11497test { try toAsciiFail("xn--9--etd0100a.xn--6-zmb.xn--1ch8704g", true); } // [B1, B3, V3]
4718test { try toUnicodeFail("xn--9--etd0100a.xn--6-xmb.xn--1ch8704g"); } // [B1, B3, V3]11498test { try toUnicodeFail("xn--9--etd0100a.xn--6-xmb.xn--1ch8704g"); } // [B1, B3, V3]
11499test { try toAsciiFail("xn--9--etd0100a.xn--6-xmb.xn--1ch8704g", false); } // [B1, B3, V3]
11500test { try toAsciiFail("xn--9--etd0100a.xn--6-xmb.xn--1ch8704g", true); } // [B1, B3, V3]
4719test { try toUnicodeFail("\xd8\xa8=\xcc\xb8\xf0\x9d\x9f\xab-.\xce\xa3\xe2\x92\x8d\xf0\x90\xb9\xa6=\xcc\xb8"); } // [B3, B5, B6, V3, V7]11501test { try toUnicodeFail("\xd8\xa8=\xcc\xb8\xf0\x9d\x9f\xab-.\xce\xa3\xe2\x92\x8d\xf0\x90\xb9\xa6=\xcc\xb8"); } // [B3, B5, B6, V3, V7]
11502test { try toAsciiFail("\xd8\xa8=\xcc\xb8\xf0\x9d\x9f\xab-.\xce\xa3\xe2\x92\x8d\xf0\x90\xb9\xa6=\xcc\xb8", false); } // [B3, B5, B6, V3, V7]
11503test { try toAsciiFail("\xd8\xa8=\xcc\xb8\xf0\x9d\x9f\xab-.\xce\xa3\xe2\x92\x8d\xf0\x90\xb9\xa6=\xcc\xb8", true); } // [B3, B5, B6, V3, V7]
4720test { try toUnicodeFail("\xd8\xa8\xe2\x89\xa0\xf0\x9d\x9f\xab-.\xce\xa3\xe2\x92\x8d\xf0\x90\xb9\xa6\xe2\x89\xa0"); } // [B3, B5, B6, V3, V7]11504test { try toUnicodeFail("\xd8\xa8\xe2\x89\xa0\xf0\x9d\x9f\xab-.\xce\xa3\xe2\x92\x8d\xf0\x90\xb9\xa6\xe2\x89\xa0"); } // [B3, B5, B6, V3, V7]
11505test { try toAsciiFail("\xd8\xa8\xe2\x89\xa0\xf0\x9d\x9f\xab-.\xce\xa3\xe2\x92\x8d\xf0\x90\xb9\xa6\xe2\x89\xa0", false); } // [B3, B5, B6, V3, V7]
11506test { try toAsciiFail("\xd8\xa8\xe2\x89\xa0\xf0\x9d\x9f\xab-.\xce\xa3\xe2\x92\x8d\xf0\x90\xb9\xa6\xe2\x89\xa0", true); } // [B3, B5, B6, V3, V7]
4721test { try toUnicodeFail("\xd8\xa8\xe2\x89\xa0\xf0\x9d\x9f\xab-.\xcf\x83\xe2\x92\x8d\xf0\x90\xb9\xa6\xe2\x89\xa0"); } // [B3, B5, B6, V3, V7]11507test { try toUnicodeFail("\xd8\xa8\xe2\x89\xa0\xf0\x9d\x9f\xab-.\xcf\x83\xe2\x92\x8d\xf0\x90\xb9\xa6\xe2\x89\xa0"); } // [B3, B5, B6, V3, V7]
11508test { try toAsciiFail("\xd8\xa8\xe2\x89\xa0\xf0\x9d\x9f\xab-.\xcf\x83\xe2\x92\x8d\xf0\x90\xb9\xa6\xe2\x89\xa0", false); } // [B3, B5, B6, V3, V7]
11509test { try toAsciiFail("\xd8\xa8\xe2\x89\xa0\xf0\x9d\x9f\xab-.\xcf\x83\xe2\x92\x8d\xf0\x90\xb9\xa6\xe2\x89\xa0", true); } // [B3, B5, B6, V3, V7]
4722test { try toUnicodeFail("\xd8\xa8=\xcc\xb8\xf0\x9d\x9f\xab-.\xcf\x83\xe2\x92\x8d\xf0\x90\xb9\xa6=\xcc\xb8"); } // [B3, B5, B6, V3, V7]11510test { try toUnicodeFail("\xd8\xa8=\xcc\xb8\xf0\x9d\x9f\xab-.\xcf\x83\xe2\x92\x8d\xf0\x90\xb9\xa6=\xcc\xb8"); } // [B3, B5, B6, V3, V7]
11511test { try toAsciiFail("\xd8\xa8=\xcc\xb8\xf0\x9d\x9f\xab-.\xcf\x83\xe2\x92\x8d\xf0\x90\xb9\xa6=\xcc\xb8", false); } // [B3, B5, B6, V3, V7]
11512test { try toAsciiFail("\xd8\xa8=\xcc\xb8\xf0\x9d\x9f\xab-.\xcf\x83\xe2\x92\x8d\xf0\x90\xb9\xa6=\xcc\xb8", true); } // [B3, B5, B6, V3, V7]
4723test { try toUnicodeFail("xn--9--etd0100a.xn--4xa887mzpbzz04b"); } // [B3, B5, B6, V3, V7]11513test { try toUnicodeFail("xn--9--etd0100a.xn--4xa887mzpbzz04b"); } // [B3, B5, B6, V3, V7]
11514test { try toAsciiFail("xn--9--etd0100a.xn--4xa887mzpbzz04b", false); } // [B3, B5, B6, V3, V7]
11515test { try toAsciiFail("xn--9--etd0100a.xn--4xa887mzpbzz04b", true); } // [B3, B5, B6, V3, V7]
4724test { try toUnicodeFail("xn--9--etd0100a.xn--3xa097mzpbzz04b"); } // [B3, B5, B6, V3, V7]11516test { try toUnicodeFail("xn--9--etd0100a.xn--3xa097mzpbzz04b"); } // [B3, B5, B6, V3, V7]
11517test { try toAsciiFail("xn--9--etd0100a.xn--3xa097mzpbzz04b", false); } // [B3, B5, B6, V3, V7]
11518test { try toAsciiFail("xn--9--etd0100a.xn--3xa097mzpbzz04b", true); } // [B3, B5, B6, V3, V7]
4725test { try toUnicodeFail("\xf2\x89\x9b\xb4.-\xe1\xa1\xa2\xd6\x92\xf0\x9d\xa8\xa0"); } // [V3, V7]11519test { try toUnicodeFail("\xf2\x89\x9b\xb4.-\xe1\xa1\xa2\xd6\x92\xf0\x9d\xa8\xa0"); } // [V3, V7]
11520test { try toAsciiFail("\xf2\x89\x9b\xb4.-\xe1\xa1\xa2\xd6\x92\xf0\x9d\xa8\xa0", false); } // [V3, V7]
11521test { try toAsciiFail("\xf2\x89\x9b\xb4.-\xe1\xa1\xa2\xd6\x92\xf0\x9d\xa8\xa0", true); } // [V3, V7]
4726test { try toUnicodeFail("xn--ep37b.xn----hec165lho83b"); } // [V3, V7]11522test { try toUnicodeFail("xn--ep37b.xn----hec165lho83b"); } // [V3, V7]
11523test { try toAsciiFail("xn--ep37b.xn----hec165lho83b", false); } // [V3, V7]
11524test { try toAsciiFail("xn--ep37b.xn----hec165lho83b", true); } // [V3, V7]
4727test { try toUnicodeFail("\xdb\x8b\xe2\x92\x88\xc3\x9f\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-"); } // [B2, B3, B6, V3, V7]11525test { try toUnicodeFail("\xdb\x8b\xe2\x92\x88\xc3\x9f\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-"); } // [B2, B3, B6, V3, V7]
11526test { try toAsciiFail("\xdb\x8b\xe2\x92\x88\xc3\x9f\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-", false); } // [B2, B3, B6, V3, V7]
11527test { try toAsciiFail("\xdb\x8b\xe2\x92\x88\xc3\x9f\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-", true); } // [B2, B3, B6, V3, V7]
4728test { try toUnicodeFail("\xdb\x8b1.\xc3\x9f\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-"); } // [B6, V3, V7]11528test { try toUnicodeFail("\xdb\x8b1.\xc3\x9f\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-"); } // [B6, V3, V7]
11529test { try toAsciiFail("\xdb\x8b1.\xc3\x9f\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-", false); } // [B6, V3, V7]
11530test { try toAsciiFail("\xdb\x8b1.\xc3\x9f\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-", true); } // [B6, V3, V7]
4729test { try toUnicodeFail("\xdb\x8b1.SS\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-"); } // [B6, V3, V7]11531test { try toUnicodeFail("\xdb\x8b1.SS\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-"); } // [B6, V3, V7]
11532test { try toAsciiFail("\xdb\x8b1.SS\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-", false); } // [B6, V3, V7]
11533test { try toAsciiFail("\xdb\x8b1.SS\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-", true); } // [B6, V3, V7]
4730test { try toUnicodeFail("\xdb\x8b1.ss\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-"); } // [B6, V3, V7]11534test { try toUnicodeFail("\xdb\x8b1.ss\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-"); } // [B6, V3, V7]
11535test { try toAsciiFail("\xdb\x8b1.ss\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-", false); } // [B6, V3, V7]
11536test { try toAsciiFail("\xdb\x8b1.ss\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-", true); } // [B6, V3, V7]
4731test { try toUnicodeFail("\xdb\x8b1.Ss\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-"); } // [B6, V3, V7]11537test { try toUnicodeFail("\xdb\x8b1.Ss\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-"); } // [B6, V3, V7]
11538test { try toAsciiFail("\xdb\x8b1.Ss\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-", false); } // [B6, V3, V7]
11539test { try toAsciiFail("\xdb\x8b1.Ss\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-", true); } // [B6, V3, V7]
4732test { try toUnicodeFail("xn--1-cwc.ss.xn----q001f"); } // [B6, V3, V7]11540test { try toUnicodeFail("xn--1-cwc.ss.xn----q001f"); } // [B6, V3, V7]
11541test { try toAsciiFail("xn--1-cwc.ss.xn----q001f", false); } // [B6, V3, V7]
11542test { try toAsciiFail("xn--1-cwc.ss.xn----q001f", true); } // [B6, V3, V7]
4733test { try toUnicodeFail("xn--1-cwc.xn--zca.xn----q001f"); } // [B6, V3, V7]11543test { try toUnicodeFail("xn--1-cwc.xn--zca.xn----q001f"); } // [B6, V3, V7]
11544test { try toAsciiFail("xn--1-cwc.xn--zca.xn----q001f", false); } // [B6, V3, V7]
11545test { try toAsciiFail("xn--1-cwc.xn--zca.xn----q001f", true); } // [B6, V3, V7]
4734test { try toUnicodeFail("\xdb\x8b\xe2\x92\x88SS\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-"); } // [B2, B3, B6, V3, V7]11546test { try toUnicodeFail("\xdb\x8b\xe2\x92\x88SS\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-"); } // [B2, B3, B6, V3, V7]
11547test { try toAsciiFail("\xdb\x8b\xe2\x92\x88SS\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-", false); } // [B2, B3, B6, V3, V7]
11548test { try toAsciiFail("\xdb\x8b\xe2\x92\x88SS\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-", true); } // [B2, B3, B6, V3, V7]
4735test { try toUnicodeFail("\xdb\x8b\xe2\x92\x88ss\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-"); } // [B2, B3, B6, V3, V7]11549test { try toUnicodeFail("\xdb\x8b\xe2\x92\x88ss\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-"); } // [B2, B3, B6, V3, V7]
11550test { try toAsciiFail("\xdb\x8b\xe2\x92\x88ss\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-", false); } // [B2, B3, B6, V3, V7]
11551test { try toAsciiFail("\xdb\x8b\xe2\x92\x88ss\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-", true); } // [B2, B3, B6, V3, V7]
4736test { try toUnicodeFail("\xdb\x8b\xe2\x92\x88Ss\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-"); } // [B2, B3, B6, V3, V7]11552test { try toUnicodeFail("\xdb\x8b\xe2\x92\x88Ss\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-"); } // [B2, B3, B6, V3, V7]
11553test { try toAsciiFail("\xdb\x8b\xe2\x92\x88Ss\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-", false); } // [B2, B3, B6, V3, V7]
11554test { try toAsciiFail("\xdb\x8b\xe2\x92\x88Ss\xf3\xa0\x84\xbd\xe3\x80\x82\xf1\xb7\x8b\x8d-", true); } // [B2, B3, B6, V3, V7]
4737test { try toUnicodeFail("xn--ss-d7d6651a.xn----q001f"); } // [B2, B3, B6, V3, V7]11555test { try toUnicodeFail("xn--ss-d7d6651a.xn----q001f"); } // [B2, B3, B6, V3, V7]
11556test { try toAsciiFail("xn--ss-d7d6651a.xn----q001f", false); } // [B2, B3, B6, V3, V7]
11557test { try toAsciiFail("xn--ss-d7d6651a.xn----q001f", true); } // [B2, B3, B6, V3, V7]
4738test { try toUnicodeFail("xn--zca541ato3a.xn----q001f"); } // [B2, B3, B6, V3, V7]11558test { try toUnicodeFail("xn--zca541ato3a.xn----q001f"); } // [B2, B3, B6, V3, V7]
11559test { try toAsciiFail("xn--zca541ato3a.xn----q001f", false); } // [B2, B3, B6, V3, V7]
11560test { try toAsciiFail("xn--zca541ato3a.xn----q001f", true); } // [B2, B3, B6, V3, V7]
4739test { try toUnicodeFail("\xf0\xbf\x80\xab\xef\xbc\x8e\xe1\xae\xaa\xcf\x82\xe1\x82\xa6\xe2\x80\x8d"); } // [C2, V6, V7]11561test { try toUnicodeFail("\xf0\xbf\x80\xab\xef\xbc\x8e\xe1\xae\xaa\xcf\x82\xe1\x82\xa6\xe2\x80\x8d"); } // [C2, V6, V7]
11562test { try toAsciiFail("\xf0\xbf\x80\xab\xef\xbc\x8e\xe1\xae\xaa\xcf\x82\xe1\x82\xa6\xe2\x80\x8d", false); } // [C2, V6, V7]
11563test { try toAsciiFail("\xf0\xbf\x80\xab\xef\xbc\x8e\xe1\xae\xaa\xcf\x82\xe1\x82\xa6\xe2\x80\x8d", true); } // [V6, V7]
4740test { try toUnicodeFail("\xf0\xbf\x80\xab.\xe1\xae\xaa\xcf\x82\xe1\x82\xa6\xe2\x80\x8d"); } // [C2, V6, V7]11564test { try toUnicodeFail("\xf0\xbf\x80\xab.\xe1\xae\xaa\xcf\x82\xe1\x82\xa6\xe2\x80\x8d"); } // [C2, V6, V7]
11565test { try toAsciiFail("\xf0\xbf\x80\xab.\xe1\xae\xaa\xcf\x82\xe1\x82\xa6\xe2\x80\x8d", false); } // [C2, V6, V7]
11566test { try toAsciiFail("\xf0\xbf\x80\xab.\xe1\xae\xaa\xcf\x82\xe1\x82\xa6\xe2\x80\x8d", true); } // [V6, V7]
4741test { try toUnicodeFail("\xf0\xbf\x80\xab.\xe1\xae\xaa\xcf\x82\xe2\xb4\x86\xe2\x80\x8d"); } // [C2, V6, V7]11567test { try toUnicodeFail("\xf0\xbf\x80\xab.\xe1\xae\xaa\xcf\x82\xe2\xb4\x86\xe2\x80\x8d"); } // [C2, V6, V7]
11568test { try toAsciiFail("\xf0\xbf\x80\xab.\xe1\xae\xaa\xcf\x82\xe2\xb4\x86\xe2\x80\x8d", false); } // [C2, V6, V7]
11569test { try toAsciiFail("\xf0\xbf\x80\xab.\xe1\xae\xaa\xcf\x82\xe2\xb4\x86\xe2\x80\x8d", true); } // [V6, V7]
4742test { try toUnicodeFail("\xf0\xbf\x80\xab.\xe1\xae\xaa\xce\xa3\xe1\x82\xa6\xe2\x80\x8d"); } // [C2, V6, V7]11570test { try toUnicodeFail("\xf0\xbf\x80\xab.\xe1\xae\xaa\xce\xa3\xe1\x82\xa6\xe2\x80\x8d"); } // [C2, V6, V7]
11571test { try toAsciiFail("\xf0\xbf\x80\xab.\xe1\xae\xaa\xce\xa3\xe1\x82\xa6\xe2\x80\x8d", false); } // [C2, V6, V7]
11572test { try toAsciiFail("\xf0\xbf\x80\xab.\xe1\xae\xaa\xce\xa3\xe1\x82\xa6\xe2\x80\x8d", true); } // [V6, V7]
4743test { try toUnicodeFail("\xf0\xbf\x80\xab.\xe1\xae\xaa\xcf\x83\xe2\xb4\x86\xe2\x80\x8d"); } // [C2, V6, V7]11573test { try toUnicodeFail("\xf0\xbf\x80\xab.\xe1\xae\xaa\xcf\x83\xe2\xb4\x86\xe2\x80\x8d"); } // [C2, V6, V7]
11574test { try toAsciiFail("\xf0\xbf\x80\xab.\xe1\xae\xaa\xcf\x83\xe2\xb4\x86\xe2\x80\x8d", false); } // [C2, V6, V7]
11575test { try toAsciiFail("\xf0\xbf\x80\xab.\xe1\xae\xaa\xcf\x83\xe2\xb4\x86\xe2\x80\x8d", true); } // [V6, V7]
4744test { try toUnicodeFail("\xf0\xbf\x80\xab.\xe1\xae\xaa\xce\xa3\xe2\xb4\x86\xe2\x80\x8d"); } // [C2, V6, V7]11576test { try toUnicodeFail("\xf0\xbf\x80\xab.\xe1\xae\xaa\xce\xa3\xe2\xb4\x86\xe2\x80\x8d"); } // [C2, V6, V7]
11577test { try toAsciiFail("\xf0\xbf\x80\xab.\xe1\xae\xaa\xce\xa3\xe2\xb4\x86\xe2\x80\x8d", false); } // [C2, V6, V7]
11578test { try toAsciiFail("\xf0\xbf\x80\xab.\xe1\xae\xaa\xce\xa3\xe2\xb4\x86\xe2\x80\x8d", true); } // [V6, V7]
4745test { try toUnicodeFail("xn--nu4s.xn--4xa153j7im"); } // [V6, V7]11579test { try toUnicodeFail("xn--nu4s.xn--4xa153j7im"); } // [V6, V7]
11580test { try toAsciiFail("xn--nu4s.xn--4xa153j7im", false); } // [V6, V7]
11581test { try toAsciiFail("xn--nu4s.xn--4xa153j7im", true); } // [V6, V7]
4746test { try toUnicodeFail("xn--nu4s.xn--4xa153jk8cs1q"); } // [C2, V6, V7]11582test { try toUnicodeFail("xn--nu4s.xn--4xa153jk8cs1q"); } // [C2, V6, V7]
11583test { try toAsciiFail("xn--nu4s.xn--4xa153jk8cs1q", false); } // [C2, V6, V7]
11584test { try toAsciiFail("xn--nu4s.xn--4xa153jk8cs1q", true); } // [C2, V6, V7]
4747test { try toUnicodeFail("xn--nu4s.xn--3xa353jk8cs1q"); } // [C2, V6, V7]11585test { try toUnicodeFail("xn--nu4s.xn--3xa353jk8cs1q"); } // [C2, V6, V7]
11586test { try toAsciiFail("xn--nu4s.xn--3xa353jk8cs1q", false); } // [C2, V6, V7]
11587test { try toAsciiFail("xn--nu4s.xn--3xa353jk8cs1q", true); } // [C2, V6, V7]
4748test { try toUnicodeFail("\xf0\xbf\x80\xab\xef\xbc\x8e\xe1\xae\xaa\xcf\x82\xe2\xb4\x86\xe2\x80\x8d"); } // [C2, V6, V7]11588test { try toUnicodeFail("\xf0\xbf\x80\xab\xef\xbc\x8e\xe1\xae\xaa\xcf\x82\xe2\xb4\x86\xe2\x80\x8d"); } // [C2, V6, V7]
11589test { try toAsciiFail("\xf0\xbf\x80\xab\xef\xbc\x8e\xe1\xae\xaa\xcf\x82\xe2\xb4\x86\xe2\x80\x8d", false); } // [C2, V6, V7]
11590test { try toAsciiFail("\xf0\xbf\x80\xab\xef\xbc\x8e\xe1\xae\xaa\xcf\x82\xe2\xb4\x86\xe2\x80\x8d", true); } // [V6, V7]
4749test { try toUnicodeFail("\xf0\xbf\x80\xab\xef\xbc\x8e\xe1\xae\xaa\xce\xa3\xe1\x82\xa6\xe2\x80\x8d"); } // [C2, V6, V7]11591test { try toUnicodeFail("\xf0\xbf\x80\xab\xef\xbc\x8e\xe1\xae\xaa\xce\xa3\xe1\x82\xa6\xe2\x80\x8d"); } // [C2, V6, V7]
11592test { try toAsciiFail("\xf0\xbf\x80\xab\xef\xbc\x8e\xe1\xae\xaa\xce\xa3\xe1\x82\xa6\xe2\x80\x8d", false); } // [C2, V6, V7]
11593test { try toAsciiFail("\xf0\xbf\x80\xab\xef\xbc\x8e\xe1\xae\xaa\xce\xa3\xe1\x82\xa6\xe2\x80\x8d", true); } // [V6, V7]
4750test { try toUnicodeFail("\xf0\xbf\x80\xab\xef\xbc\x8e\xe1\xae\xaa\xcf\x83\xe2\xb4\x86\xe2\x80\x8d"); } // [C2, V6, V7]11594test { try toUnicodeFail("\xf0\xbf\x80\xab\xef\xbc\x8e\xe1\xae\xaa\xcf\x83\xe2\xb4\x86\xe2\x80\x8d"); } // [C2, V6, V7]
11595test { try toAsciiFail("\xf0\xbf\x80\xab\xef\xbc\x8e\xe1\xae\xaa\xcf\x83\xe2\xb4\x86\xe2\x80\x8d", false); } // [C2, V6, V7]
11596test { try toAsciiFail("\xf0\xbf\x80\xab\xef\xbc\x8e\xe1\xae\xaa\xcf\x83\xe2\xb4\x86\xe2\x80\x8d", true); } // [V6, V7]
4751test { try toUnicodeFail("\xf0\xbf\x80\xab\xef\xbc\x8e\xe1\xae\xaa\xce\xa3\xe2\xb4\x86\xe2\x80\x8d"); } // [C2, V6, V7]11597test { try toUnicodeFail("\xf0\xbf\x80\xab\xef\xbc\x8e\xe1\xae\xaa\xce\xa3\xe2\xb4\x86\xe2\x80\x8d"); } // [C2, V6, V7]
11598test { try toAsciiFail("\xf0\xbf\x80\xab\xef\xbc\x8e\xe1\xae\xaa\xce\xa3\xe2\xb4\x86\xe2\x80\x8d", false); } // [C2, V6, V7]
11599test { try toAsciiFail("\xf0\xbf\x80\xab\xef\xbc\x8e\xe1\xae\xaa\xce\xa3\xe2\xb4\x86\xe2\x80\x8d", true); } // [V6, V7]
4752test { try toUnicodeFail("xn--nu4s.xn--4xa217dxri"); } // [V6, V7]11600test { try toUnicodeFail("xn--nu4s.xn--4xa217dxri"); } // [V6, V7]
11601test { try toAsciiFail("xn--nu4s.xn--4xa217dxri", false); } // [V6, V7]
11602test { try toAsciiFail("xn--nu4s.xn--4xa217dxri", true); } // [V6, V7]
4753test { try toUnicodeFail("xn--nu4s.xn--4xa217dxriome"); } // [C2, V6, V7]11603test { try toUnicodeFail("xn--nu4s.xn--4xa217dxriome"); } // [C2, V6, V7]
11604test { try toAsciiFail("xn--nu4s.xn--4xa217dxriome", false); } // [C2, V6, V7]
11605test { try toAsciiFail("xn--nu4s.xn--4xa217dxriome", true); } // [C2, V6, V7]
4754test { try toUnicodeFail("xn--nu4s.xn--3xa417dxriome"); } // [C2, V6, V7]11606test { try toUnicodeFail("xn--nu4s.xn--3xa417dxriome"); } // [C2, V6, V7]
11607test { try toAsciiFail("xn--nu4s.xn--3xa417dxriome", false); } // [C2, V6, V7]
11608test { try toAsciiFail("xn--nu4s.xn--3xa417dxriome", true); } // [C2, V6, V7]
4755test { try toUnicodeFail("\xe2\xbe\x86\xe0\xa3\xa2.\xf0\x9d\x88\xb4"); } // [B1, B5, B6, V7]11609test { try toUnicodeFail("\xe2\xbe\x86\xe0\xa3\xa2.\xf0\x9d\x88\xb4"); } // [B1, B5, B6, V7]
11610test { try toAsciiFail("\xe2\xbe\x86\xe0\xa3\xa2.\xf0\x9d\x88\xb4", false); } // [B1, B5, B6, V7]
11611test { try toAsciiFail("\xe2\xbe\x86\xe0\xa3\xa2.\xf0\x9d\x88\xb4", true); } // [B1, B5, B6, V7]
4756test { try toUnicodeFail("\xe8\x88\x8c\xe0\xa3\xa2.\xf0\x9d\x88\xb4"); } // [B1, B5, B6, V7]11612test { try toUnicodeFail("\xe8\x88\x8c\xe0\xa3\xa2.\xf0\x9d\x88\xb4"); } // [B1, B5, B6, V7]
11613test { try toAsciiFail("\xe8\x88\x8c\xe0\xa3\xa2.\xf0\x9d\x88\xb4", false); } // [B1, B5, B6, V7]
11614test { try toAsciiFail("\xe8\x88\x8c\xe0\xa3\xa2.\xf0\x9d\x88\xb4", true); } // [B1, B5, B6, V7]
4757test { try toUnicodeFail("xn--l0b9413d.xn--kl1h"); } // [B1, B5, B6, V7]11615test { try toUnicodeFail("xn--l0b9413d.xn--kl1h"); } // [B1, B5, B6, V7]
11616test { try toAsciiFail("xn--l0b9413d.xn--kl1h", false); } // [B1, B5, B6, V7]
11617test { try toAsciiFail("xn--l0b9413d.xn--kl1h", true); } // [B1, B5, B6, V7]
4758test { try toUnicodeFail("\xe2\xab\x9e\xf0\x90\xb9\xb6\xf0\x96\xab\xb4\xe3\x80\x82\xe2\xad\xa0\xe2\x92\x88"); } // [B1, V7]11618test { try toUnicodeFail("\xe2\xab\x9e\xf0\x90\xb9\xb6\xf0\x96\xab\xb4\xe3\x80\x82\xe2\xad\xa0\xe2\x92\x88"); } // [B1, V7]
11619test { try toAsciiFail("\xe2\xab\x9e\xf0\x90\xb9\xb6\xf0\x96\xab\xb4\xe3\x80\x82\xe2\xad\xa0\xe2\x92\x88", false); } // [B1, V7]
11620test { try toAsciiFail("\xe2\xab\x9e\xf0\x90\xb9\xb6\xf0\x96\xab\xb4\xe3\x80\x82\xe2\xad\xa0\xe2\x92\x88", true); } // [B1, V7]
4759test { try toUnicodeFail("\xe2\xab\x9e\xf0\x90\xb9\xb6\xf0\x96\xab\xb4\xe3\x80\x82\xe2\xad\xa01."); } // [B1]11621test { try toUnicodeFail("\xe2\xab\x9e\xf0\x90\xb9\xb6\xf0\x96\xab\xb4\xe3\x80\x82\xe2\xad\xa01."); } // [B1]
11622test { try toAsciiFail("\xe2\xab\x9e\xf0\x90\xb9\xb6\xf0\x96\xab\xb4\xe3\x80\x82\xe2\xad\xa01.", false); } // [B1, A4_2]
11623test { try toAsciiFail("\xe2\xab\x9e\xf0\x90\xb9\xb6\xf0\x96\xab\xb4\xe3\x80\x82\xe2\xad\xa01.", true); } // [B1, A4_2]
4760test { try toUnicodeFail("xn--53ix188et88b.xn--1-h6r."); } // [B1]11624test { try toUnicodeFail("xn--53ix188et88b.xn--1-h6r."); } // [B1]
11625test { try toAsciiFail("xn--53ix188et88b.xn--1-h6r.", false); } // [B1, A4_2]
11626test { try toAsciiFail("xn--53ix188et88b.xn--1-h6r.", true); } // [B1, A4_2]
4761test { try toUnicodeFail("xn--53ix188et88b.xn--tsh52w"); } // [B1, V7]11627test { try toUnicodeFail("xn--53ix188et88b.xn--tsh52w"); } // [B1, V7]
11628test { try toAsciiFail("xn--53ix188et88b.xn--tsh52w", false); } // [B1, V7]
11629test { try toAsciiFail("xn--53ix188et88b.xn--tsh52w", true); } // [B1, V7]
4762test { try toUnicodeFail("\xe2\x92\x88\xe2\x80\x8c\xea\xab\xac\xef\xb8\x92\xef\xbc\x8e\xe0\xab\x8d"); } // [C1, V6, V7]11630test { try toUnicodeFail("\xe2\x92\x88\xe2\x80\x8c\xea\xab\xac\xef\xb8\x92\xef\xbc\x8e\xe0\xab\x8d"); } // [C1, V6, V7]
11631test { try toAsciiFail("\xe2\x92\x88\xe2\x80\x8c\xea\xab\xac\xef\xb8\x92\xef\xbc\x8e\xe0\xab\x8d", false); } // [C1, V6, V7]
11632test { try toAsciiFail("\xe2\x92\x88\xe2\x80\x8c\xea\xab\xac\xef\xb8\x92\xef\xbc\x8e\xe0\xab\x8d", true); } // [V6, V7]
4763test { try toUnicodeFail("1.\xe2\x80\x8c\xea\xab\xac\xe3\x80\x82.\xe0\xab\x8d"); } // [C1, V6, X4_2]11633test { try toUnicodeFail("1.\xe2\x80\x8c\xea\xab\xac\xe3\x80\x82.\xe0\xab\x8d"); } // [C1, V6, X4_2]
11634test { try toAsciiFail("1.\xe2\x80\x8c\xea\xab\xac\xe3\x80\x82.\xe0\xab\x8d", false); } // [C1, V6, A4_2]
11635test { try toAsciiFail("1.\xe2\x80\x8c\xea\xab\xac\xe3\x80\x82.\xe0\xab\x8d", true); } // [V6, A4_2]
4764test { try toUnicodeFail("1.xn--sv9a..xn--mfc"); } // [V6, X4_2]11636test { try toUnicodeFail("1.xn--sv9a..xn--mfc"); } // [V6, X4_2]
11637test { try toAsciiFail("1.xn--sv9a..xn--mfc", false); } // [V6, A4_2]
11638test { try toAsciiFail("1.xn--sv9a..xn--mfc", true); } // [V6, A4_2]
4765test { try toUnicodeFail("1.xn--0ug7185c..xn--mfc"); } // [C1, V6, X4_2]11639test { try toUnicodeFail("1.xn--0ug7185c..xn--mfc"); } // [C1, V6, X4_2]
11640test { try toAsciiFail("1.xn--0ug7185c..xn--mfc", false); } // [C1, V6, A4_2]
11641test { try toAsciiFail("1.xn--0ug7185c..xn--mfc", true); } // [C1, V6, A4_2]
4766test { try toUnicodeFail("xn--tsh0720cse8b.xn--mfc"); } // [V6, V7]11642test { try toUnicodeFail("xn--tsh0720cse8b.xn--mfc"); } // [V6, V7]
11643test { try toAsciiFail("xn--tsh0720cse8b.xn--mfc", false); } // [V6, V7]
11644test { try toAsciiFail("xn--tsh0720cse8b.xn--mfc", true); } // [V6, V7]
4767test { try toUnicodeFail("xn--0ug78o720myr1c.xn--mfc"); } // [C1, V6, V7]11645test { try toUnicodeFail("xn--0ug78o720myr1c.xn--mfc"); } // [C1, V6, V7]
11646test { try toAsciiFail("xn--0ug78o720myr1c.xn--mfc", false); } // [C1, V6, V7]
11647test { try toAsciiFail("xn--0ug78o720myr1c.xn--mfc", true); } // [C1, V6, V7]
4768test { try toUnicodeFail("\xe0\xb1\x86\xe3\x80\x82\xe4\xb0\x80\xd9\xa8\xf0\x9e\xad\x85\xf3\xa0\x85\xbc"); } // [B1, B5, B6, V6, V7]11648test { try toUnicodeFail("\xe0\xb1\x86\xe3\x80\x82\xe4\xb0\x80\xd9\xa8\xf0\x9e\xad\x85\xf3\xa0\x85\xbc"); } // [B1, B5, B6, V6, V7]
11649test { try toAsciiFail("\xe0\xb1\x86\xe3\x80\x82\xe4\xb0\x80\xd9\xa8\xf0\x9e\xad\x85\xf3\xa0\x85\xbc", false); } // [B1, B5, B6, V6, V7]
11650test { try toAsciiFail("\xe0\xb1\x86\xe3\x80\x82\xe4\xb0\x80\xd9\xa8\xf0\x9e\xad\x85\xf3\xa0\x85\xbc", true); } // [B1, B5, B6, V6, V7]
4769test { try toUnicodeFail("xn--eqc.xn--hib5476aim6t"); } // [B1, B5, B6, V6, V7]11651test { try toUnicodeFail("xn--eqc.xn--hib5476aim6t"); } // [B1, B5, B6, V6, V7]
11652test { try toAsciiFail("xn--eqc.xn--hib5476aim6t", false); } // [B1, B5, B6, V6, V7]
11653test { try toAsciiFail("xn--eqc.xn--hib5476aim6t", true); } // [B1, B5, B6, V6, V7]
4770test { try toUnicodeFail("\xc3\x9f\xe2\x80\x8d.\xe1\xaf\xb2\xf1\x84\xbe\xbc"); } // [C2, V6, V7]11654test { try toUnicodeFail("\xc3\x9f\xe2\x80\x8d.\xe1\xaf\xb2\xf1\x84\xbe\xbc"); } // [C2, V6, V7]
11655test { try toAsciiFail("\xc3\x9f\xe2\x80\x8d.\xe1\xaf\xb2\xf1\x84\xbe\xbc", false); } // [C2, V6, V7]
11656test { try toAsciiFail("\xc3\x9f\xe2\x80\x8d.\xe1\xaf\xb2\xf1\x84\xbe\xbc", true); } // [V6, V7]
4771test { try toUnicodeFail("SS\xe2\x80\x8d.\xe1\xaf\xb2\xf1\x84\xbe\xbc"); } // [C2, V6, V7]11657test { try toUnicodeFail("SS\xe2\x80\x8d.\xe1\xaf\xb2\xf1\x84\xbe\xbc"); } // [C2, V6, V7]
11658test { try toAsciiFail("SS\xe2\x80\x8d.\xe1\xaf\xb2\xf1\x84\xbe\xbc", false); } // [C2, V6, V7]
11659test { try toAsciiFail("SS\xe2\x80\x8d.\xe1\xaf\xb2\xf1\x84\xbe\xbc", true); } // [V6, V7]
4772test { try toUnicodeFail("ss\xe2\x80\x8d.\xe1\xaf\xb2\xf1\x84\xbe\xbc"); } // [C2, V6, V7]11660test { try toUnicodeFail("ss\xe2\x80\x8d.\xe1\xaf\xb2\xf1\x84\xbe\xbc"); } // [C2, V6, V7]
11661test { try toAsciiFail("ss\xe2\x80\x8d.\xe1\xaf\xb2\xf1\x84\xbe\xbc", false); } // [C2, V6, V7]
11662test { try toAsciiFail("ss\xe2\x80\x8d.\xe1\xaf\xb2\xf1\x84\xbe\xbc", true); } // [V6, V7]
4773test { try toUnicodeFail("Ss\xe2\x80\x8d.\xe1\xaf\xb2\xf1\x84\xbe\xbc"); } // [C2, V6, V7]11663test { try toUnicodeFail("Ss\xe2\x80\x8d.\xe1\xaf\xb2\xf1\x84\xbe\xbc"); } // [C2, V6, V7]
11664test { try toAsciiFail("Ss\xe2\x80\x8d.\xe1\xaf\xb2\xf1\x84\xbe\xbc", false); } // [C2, V6, V7]
11665test { try toAsciiFail("Ss\xe2\x80\x8d.\xe1\xaf\xb2\xf1\x84\xbe\xbc", true); } // [V6, V7]
4774test { try toUnicodeFail("ss.xn--0zf22107b"); } // [V6, V7]11666test { try toUnicodeFail("ss.xn--0zf22107b"); } // [V6, V7]
11667test { try toAsciiFail("ss.xn--0zf22107b", false); } // [V6, V7]
11668test { try toAsciiFail("ss.xn--0zf22107b", true); } // [V6, V7]
4775test { try toUnicodeFail("xn--ss-n1t.xn--0zf22107b"); } // [C2, V6, V7]11669test { try toUnicodeFail("xn--ss-n1t.xn--0zf22107b"); } // [C2, V6, V7]
11670test { try toAsciiFail("xn--ss-n1t.xn--0zf22107b", false); } // [C2, V6, V7]
11671test { try toAsciiFail("xn--ss-n1t.xn--0zf22107b", true); } // [C2, V6, V7]
4776test { try toUnicodeFail("xn--zca870n.xn--0zf22107b"); } // [C2, V6, V7]11672test { try toUnicodeFail("xn--zca870n.xn--0zf22107b"); } // [C2, V6, V7]
11673test { try toAsciiFail("xn--zca870n.xn--0zf22107b", false); } // [C2, V6, V7]
11674test { try toAsciiFail("xn--zca870n.xn--0zf22107b", true); } // [C2, V6, V7]
4777test { try toUnicodeFail("\xf0\x91\x93\x82\xe2\x80\x8c\xe2\x89\xae.\xe2\x89\xae"); } // [V6]11675test { try toUnicodeFail("\xf0\x91\x93\x82\xe2\x80\x8c\xe2\x89\xae.\xe2\x89\xae"); } // [V6]
11676test { try toAsciiFail("\xf0\x91\x93\x82\xe2\x80\x8c\xe2\x89\xae.\xe2\x89\xae", false); } // [V6]
11677test { try toAsciiFail("\xf0\x91\x93\x82\xe2\x80\x8c\xe2\x89\xae.\xe2\x89\xae", true); } // [V6]
4778test { try toUnicodeFail("\xf0\x91\x93\x82\xe2\x80\x8c<\xcc\xb8.<\xcc\xb8"); } // [V6]11678test { try toUnicodeFail("\xf0\x91\x93\x82\xe2\x80\x8c<\xcc\xb8.<\xcc\xb8"); } // [V6]
11679test { try toAsciiFail("\xf0\x91\x93\x82\xe2\x80\x8c<\xcc\xb8.<\xcc\xb8", false); } // [V6]
11680test { try toAsciiFail("\xf0\x91\x93\x82\xe2\x80\x8c<\xcc\xb8.<\xcc\xb8", true); } // [V6]
4779test { try toUnicodeFail("xn--gdhz656g.xn--gdh"); } // [V6]11681test { try toUnicodeFail("xn--gdhz656g.xn--gdh"); } // [V6]
11682test { try toAsciiFail("xn--gdhz656g.xn--gdh", false); } // [V6]
11683test { try toAsciiFail("xn--gdhz656g.xn--gdh", true); } // [V6]
4780test { try toUnicodeFail("xn--0ugy6glz29a.xn--gdh"); } // [V6]11684test { try toUnicodeFail("xn--0ugy6glz29a.xn--gdh"); } // [V6]
11685test { try toAsciiFail("xn--0ugy6glz29a.xn--gdh", false); } // [V6]
11686test { try toAsciiFail("xn--0ugy6glz29a.xn--gdh", true); } // [V6]
4781test { try toUnicodePass("\xf0\x9f\x95\xbc\xef\xbc\x8e\xef\xbe\xa0", "\xf0\x9f\x95\xbc."); }11687test { try toUnicodePass("\xf0\x9f\x95\xbc\xef\xbc\x8e\xef\xbe\xa0", "\xf0\x9f\x95\xbc."); }
11688test { try toAsciiFail("\xf0\x9f\x95\xbc\xef\xbc\x8e\xef\xbe\xa0", false); } // [A4_2]
11689test { try toAsciiFail("\xf0\x9f\x95\xbc\xef\xbc\x8e\xef\xbe\xa0", true); } // [A4_2]
4782test { try toUnicodePass("\xf0\x9f\x95\xbc.\xe1\x85\xa0", "\xf0\x9f\x95\xbc."); }11690test { try toUnicodePass("\xf0\x9f\x95\xbc.\xe1\x85\xa0", "\xf0\x9f\x95\xbc."); }
11691test { try toAsciiFail("\xf0\x9f\x95\xbc.\xe1\x85\xa0", false); } // [A4_2]
11692test { try toAsciiFail("\xf0\x9f\x95\xbc.\xe1\x85\xa0", true); } // [A4_2]
4783test { try toUnicodePass("xn--my8h.", "\xf0\x9f\x95\xbc."); }11693test { try toUnicodePass("xn--my8h.", "\xf0\x9f\x95\xbc."); }
11694test { try toAsciiFail("xn--my8h.", false); } // [A4_2]
11695test { try toAsciiFail("xn--my8h.", true); } // [A4_2]
4784test { try toUnicodePass("\xf0\x9f\x95\xbc.", "\xf0\x9f\x95\xbc."); }11696test { try toUnicodePass("\xf0\x9f\x95\xbc.", "\xf0\x9f\x95\xbc."); }
11697test { try toAsciiFail("\xf0\x9f\x95\xbc.", false); } // [A4_2]
11698test { try toAsciiFail("\xf0\x9f\x95\xbc.", true); } // [A4_2]
4785test { try toUnicodeFail("xn--my8h.xn--psd"); } // [V7]11699test { try toUnicodeFail("xn--my8h.xn--psd"); } // [V7]
11700test { try toAsciiFail("xn--my8h.xn--psd", false); } // [V7]
11701test { try toAsciiFail("xn--my8h.xn--psd", true); } // [V7]
4786test { try toUnicodeFail("xn--my8h.xn--cl7c"); } // [V7]11702test { try toUnicodeFail("xn--my8h.xn--cl7c"); } // [V7]
11703test { try toAsciiFail("xn--my8h.xn--cl7c", false); } // [V7]
11704test { try toAsciiFail("xn--my8h.xn--cl7c", true); } // [V7]
4787test { try toUnicodeFail("\xe1\xa1\x94\xef\xb6\x82\xe3\x80\x82\xf1\xb7\x98\x8e"); } // [B5, B6, V7]11705test { try toUnicodeFail("\xe1\xa1\x94\xef\xb6\x82\xe3\x80\x82\xf1\xb7\x98\x8e"); } // [B5, B6, V7]
11706test { try toAsciiFail("\xe1\xa1\x94\xef\xb6\x82\xe3\x80\x82\xf1\xb7\x98\x8e", false); } // [B5, B6, V7]
11707test { try toAsciiFail("\xe1\xa1\x94\xef\xb6\x82\xe3\x80\x82\xf1\xb7\x98\x8e", true); } // [B5, B6, V7]
4788test { try toUnicodeFail("\xe1\xa1\x94\xd9\x84\xd8\xad\xd9\x89\xe3\x80\x82\xf1\xb7\x98\x8e"); } // [B5, B6, V7]11708test { try toUnicodeFail("\xe1\xa1\x94\xd9\x84\xd8\xad\xd9\x89\xe3\x80\x82\xf1\xb7\x98\x8e"); } // [B5, B6, V7]
11709test { try toAsciiFail("\xe1\xa1\x94\xd9\x84\xd8\xad\xd9\x89\xe3\x80\x82\xf1\xb7\x98\x8e", false); } // [B5, B6, V7]
11710test { try toAsciiFail("\xe1\xa1\x94\xd9\x84\xd8\xad\xd9\x89\xe3\x80\x82\xf1\xb7\x98\x8e", true); } // [B5, B6, V7]
4789test { try toUnicodeFail("xn--sgb9bq785p.xn--bc31b"); } // [B5, B6, V7]11711test { try toUnicodeFail("xn--sgb9bq785p.xn--bc31b"); } // [B5, B6, V7]
11712test { try toAsciiFail("xn--sgb9bq785p.xn--bc31b", false); } // [B5, B6, V7]
11713test { try toAsciiFail("xn--sgb9bq785p.xn--bc31b", true); } // [B5, B6, V7]
4790test { try toUnicodeFail("\xe7\x88\x95\xf2\xb3\x99\x91\xef\xbc\x8e\xf0\x9d\x9f\xb0\xe6\xb0\x97"); } // [V7]11714test { try toUnicodeFail("\xe7\x88\x95\xf2\xb3\x99\x91\xef\xbc\x8e\xf0\x9d\x9f\xb0\xe6\xb0\x97"); } // [V7]
11715test { try toAsciiFail("\xe7\x88\x95\xf2\xb3\x99\x91\xef\xbc\x8e\xf0\x9d\x9f\xb0\xe6\xb0\x97", false); } // [V7]
11716test { try toAsciiFail("\xe7\x88\x95\xf2\xb3\x99\x91\xef\xbc\x8e\xf0\x9d\x9f\xb0\xe6\xb0\x97", true); } // [V7]
4791test { try toUnicodeFail("\xe7\x88\x95\xf2\xb3\x99\x91.4\xe6\xb0\x97"); } // [V7]11717test { try toUnicodeFail("\xe7\x88\x95\xf2\xb3\x99\x91.4\xe6\xb0\x97"); } // [V7]
11718test { try toAsciiFail("\xe7\x88\x95\xf2\xb3\x99\x91.4\xe6\xb0\x97", false); } // [V7]
11719test { try toAsciiFail("\xe7\x88\x95\xf2\xb3\x99\x91.4\xe6\xb0\x97", true); } // [V7]
4792test { try toUnicodeFail("xn--1zxq3199c.xn--4-678b"); } // [V7]11720test { try toUnicodeFail("xn--1zxq3199c.xn--4-678b"); } // [V7]
11721test { try toAsciiFail("xn--1zxq3199c.xn--4-678b", false); } // [V7]
11722test { try toAsciiFail("xn--1zxq3199c.xn--4-678b", true); } // [V7]
4793test { try toUnicodeFail("\xe2\x92\x8b\xf0\x91\x8d\x8d\xe1\x82\xbd-\xef\xbc\x8e\xf0\x9e\xac\xaa\xe0\xb7\x8a\xd6\xb5"); } // [B1, V3, V7]11723test { try toUnicodeFail("\xe2\x92\x8b\xf0\x91\x8d\x8d\xe1\x82\xbd-\xef\xbc\x8e\xf0\x9e\xac\xaa\xe0\xb7\x8a\xd6\xb5"); } // [B1, V3, V7]
11724test { try toAsciiFail("\xe2\x92\x8b\xf0\x91\x8d\x8d\xe1\x82\xbd-\xef\xbc\x8e\xf0\x9e\xac\xaa\xe0\xb7\x8a\xd6\xb5", false); } // [B1, V3, V7]
11725test { try toAsciiFail("\xe2\x92\x8b\xf0\x91\x8d\x8d\xe1\x82\xbd-\xef\xbc\x8e\xf0\x9e\xac\xaa\xe0\xb7\x8a\xd6\xb5", true); } // [B1, V3, V7]
4794test { try toUnicodeFail("4.\xf0\x91\x8d\x8d\xe1\x82\xbd-.\xf0\x9e\xac\xaa\xe0\xb7\x8a\xd6\xb5"); } // [B1, B6, V3, V6, V7]11726test { try toUnicodeFail("4.\xf0\x91\x8d\x8d\xe1\x82\xbd-.\xf0\x9e\xac\xaa\xe0\xb7\x8a\xd6\xb5"); } // [B1, B6, V3, V6, V7]
11727test { try toAsciiFail("4.\xf0\x91\x8d\x8d\xe1\x82\xbd-.\xf0\x9e\xac\xaa\xe0\xb7\x8a\xd6\xb5", false); } // [B1, B6, V3, V6, V7]
11728test { try toAsciiFail("4.\xf0\x91\x8d\x8d\xe1\x82\xbd-.\xf0\x9e\xac\xaa\xe0\xb7\x8a\xd6\xb5", true); } // [B1, B6, V3, V6, V7]
4795test { try toUnicodeFail("4.\xf0\x91\x8d\x8d\xe2\xb4\x9d-.\xf0\x9e\xac\xaa\xe0\xb7\x8a\xd6\xb5"); } // [B1, B6, V3, V6, V7]11729test { try toUnicodeFail("4.\xf0\x91\x8d\x8d\xe2\xb4\x9d-.\xf0\x9e\xac\xaa\xe0\xb7\x8a\xd6\xb5"); } // [B1, B6, V3, V6, V7]
11730test { try toAsciiFail("4.\xf0\x91\x8d\x8d\xe2\xb4\x9d-.\xf0\x9e\xac\xaa\xe0\xb7\x8a\xd6\xb5", false); } // [B1, B6, V3, V6, V7]
11731test { try toAsciiFail("4.\xf0\x91\x8d\x8d\xe2\xb4\x9d-.\xf0\x9e\xac\xaa\xe0\xb7\x8a\xd6\xb5", true); } // [B1, B6, V3, V6, V7]
4796test { try toUnicodeFail("4.xn----wwsx259f.xn--ddb152b7y23b"); } // [B1, B6, V3, V6, V7]11732test { try toUnicodeFail("4.xn----wwsx259f.xn--ddb152b7y23b"); } // [B1, B6, V3, V6, V7]
11733test { try toAsciiFail("4.xn----wwsx259f.xn--ddb152b7y23b", false); } // [B1, B6, V3, V6, V7]
11734test { try toAsciiFail("4.xn----wwsx259f.xn--ddb152b7y23b", true); } // [B1, B6, V3, V6, V7]
4797test { try toUnicodeFail("\xe2\x92\x8b\xf0\x91\x8d\x8d\xe2\xb4\x9d-\xef\xbc\x8e\xf0\x9e\xac\xaa\xe0\xb7\x8a\xd6\xb5"); } // [B1, V3, V7]11735test { try toUnicodeFail("\xe2\x92\x8b\xf0\x91\x8d\x8d\xe2\xb4\x9d-\xef\xbc\x8e\xf0\x9e\xac\xaa\xe0\xb7\x8a\xd6\xb5"); } // [B1, V3, V7]
11736test { try toAsciiFail("\xe2\x92\x8b\xf0\x91\x8d\x8d\xe2\xb4\x9d-\xef\xbc\x8e\xf0\x9e\xac\xaa\xe0\xb7\x8a\xd6\xb5", false); } // [B1, V3, V7]
11737test { try toAsciiFail("\xe2\x92\x8b\xf0\x91\x8d\x8d\xe2\xb4\x9d-\xef\xbc\x8e\xf0\x9e\xac\xaa\xe0\xb7\x8a\xd6\xb5", true); } // [B1, V3, V7]
4798test { try toUnicodeFail("xn----jcp487avl3w.xn--ddb152b7y23b"); } // [B1, V3, V7]11738test { try toUnicodeFail("xn----jcp487avl3w.xn--ddb152b7y23b"); } // [B1, V3, V7]
11739test { try toAsciiFail("xn----jcp487avl3w.xn--ddb152b7y23b", false); } // [B1, V3, V7]
11740test { try toAsciiFail("xn----jcp487avl3w.xn--ddb152b7y23b", true); } // [B1, V3, V7]
4799test { try toUnicodeFail("4.xn----t1g9869q.xn--ddb152b7y23b"); } // [B1, B6, V3, V6, V7]11741test { try toUnicodeFail("4.xn----t1g9869q.xn--ddb152b7y23b"); } // [B1, B6, V3, V6, V7]
11742test { try toAsciiFail("4.xn----t1g9869q.xn--ddb152b7y23b", false); } // [B1, B6, V3, V6, V7]
11743test { try toAsciiFail("4.xn----t1g9869q.xn--ddb152b7y23b", true); } // [B1, B6, V3, V6, V7]
4800test { try toUnicodeFail("xn----t1g323mnk9t.xn--ddb152b7y23b"); } // [B1, V3, V7]11744test { try toUnicodeFail("xn----t1g323mnk9t.xn--ddb152b7y23b"); } // [B1, V3, V7]
11745test { try toAsciiFail("xn----t1g323mnk9t.xn--ddb152b7y23b", false); } // [B1, V3, V7]
11746test { try toAsciiFail("xn----t1g323mnk9t.xn--ddb152b7y23b", true); } // [B1, V3, V7]
4801test { try toUnicodeFail("\xf3\x9e\x9d\x83\xe3\x80\x82\xf2\x91\x86\x83\xf1\x89\xa2\x97--"); } // [V2, V3, V7]11747test { try toUnicodeFail("\xf3\x9e\x9d\x83\xe3\x80\x82\xf2\x91\x86\x83\xf1\x89\xa2\x97--"); } // [V2, V3, V7]
11748test { try toAsciiFail("\xf3\x9e\x9d\x83\xe3\x80\x82\xf2\x91\x86\x83\xf1\x89\xa2\x97--", false); } // [V2, V3, V7]
11749test { try toAsciiFail("\xf3\x9e\x9d\x83\xe3\x80\x82\xf2\x91\x86\x83\xf1\x89\xa2\x97--", true); } // [V2, V3, V7]
4802test { try toUnicodeFail("xn--2y75e.xn-----1l15eer88n"); } // [V2, V3, V7]11750test { try toUnicodeFail("xn--2y75e.xn-----1l15eer88n"); } // [V2, V3, V7]
11751test { try toAsciiFail("xn--2y75e.xn-----1l15eer88n", false); } // [V2, V3, V7]
11752test { try toAsciiFail("xn--2y75e.xn-----1l15eer88n", true); } // [V2, V3, V7]
4803test { try toUnicodeFail("\xe2\x80\x8d\xdf\x9f\xef\xbd\xa1\xe2\x80\x8c\xea\xaf\xad"); } // [B1, C1, C2]11753test { try toUnicodeFail("\xe2\x80\x8d\xdf\x9f\xef\xbd\xa1\xe2\x80\x8c\xea\xaf\xad"); } // [B1, C1, C2]
11754test { try toAsciiFail("\xe2\x80\x8d\xdf\x9f\xef\xbd\xa1\xe2\x80\x8c\xea\xaf\xad", false); } // [B1, C1, C2]
11755test { try toAsciiFail("\xe2\x80\x8d\xdf\x9f\xef\xbd\xa1\xe2\x80\x8c\xea\xaf\xad", true); } // [B1, V6]
4804test { try toUnicodeFail("\xe2\x80\x8d\xdf\x9f\xe3\x80\x82\xe2\x80\x8c\xea\xaf\xad"); } // [B1, C1, C2]11756test { try toUnicodeFail("\xe2\x80\x8d\xdf\x9f\xe3\x80\x82\xe2\x80\x8c\xea\xaf\xad"); } // [B1, C1, C2]
11757test { try toAsciiFail("\xe2\x80\x8d\xdf\x9f\xe3\x80\x82\xe2\x80\x8c\xea\xaf\xad", false); } // [B1, C1, C2]
11758test { try toAsciiFail("\xe2\x80\x8d\xdf\x9f\xe3\x80\x82\xe2\x80\x8c\xea\xaf\xad", true); } // [B1, V6]
4805test { try toUnicodeFail("xn--6sb.xn--429a"); } // [B1, V6]11759test { try toUnicodeFail("xn--6sb.xn--429a"); } // [B1, V6]
11760test { try toAsciiFail("xn--6sb.xn--429a", false); } // [B1, V6]
11761test { try toAsciiFail("xn--6sb.xn--429a", true); } // [B1, V6]
4806test { try toUnicodeFail("xn--6sb394j.xn--0ug1126c"); } // [B1, C1, C2]11762test { try toUnicodeFail("xn--6sb394j.xn--0ug1126c"); } // [B1, C1, C2]
11763test { try toAsciiFail("xn--6sb394j.xn--0ug1126c", false); } // [B1, C1, C2]
11764test { try toAsciiFail("xn--6sb394j.xn--0ug1126c", true); } // [B1, C1, C2]
4807test { try toUnicodeFail("\xf0\x9e\xae\xbd\xdf\xbf\xe0\xa1\x8e\xef\xbd\xa1\xe1\xa2\x8d\xf2\x9d\xb9\x81\xf0\x90\xab\x98"); } // [B5, B6, V7]11765test { try toUnicodeFail("\xf0\x9e\xae\xbd\xdf\xbf\xe0\xa1\x8e\xef\xbd\xa1\xe1\xa2\x8d\xf2\x9d\xb9\x81\xf0\x90\xab\x98"); } // [B5, B6, V7]
11766test { try toAsciiFail("\xf0\x9e\xae\xbd\xdf\xbf\xe0\xa1\x8e\xef\xbd\xa1\xe1\xa2\x8d\xf2\x9d\xb9\x81\xf0\x90\xab\x98", false); } // [B5, B6, V7]
11767test { try toAsciiFail("\xf0\x9e\xae\xbd\xdf\xbf\xe0\xa1\x8e\xef\xbd\xa1\xe1\xa2\x8d\xf2\x9d\xb9\x81\xf0\x90\xab\x98", true); } // [B5, B6, V7]
4808test { try toUnicodeFail("\xf0\x9e\xae\xbd\xdf\xbf\xe0\xa1\x8e\xe3\x80\x82\xe1\xa2\x8d\xf2\x9d\xb9\x81\xf0\x90\xab\x98"); } // [B5, B6, V7]11768test { try toUnicodeFail("\xf0\x9e\xae\xbd\xdf\xbf\xe0\xa1\x8e\xe3\x80\x82\xe1\xa2\x8d\xf2\x9d\xb9\x81\xf0\x90\xab\x98"); } // [B5, B6, V7]
11769test { try toAsciiFail("\xf0\x9e\xae\xbd\xdf\xbf\xe0\xa1\x8e\xe3\x80\x82\xe1\xa2\x8d\xf2\x9d\xb9\x81\xf0\x90\xab\x98", false); } // [B5, B6, V7]
11770test { try toAsciiFail("\xf0\x9e\xae\xbd\xdf\xbf\xe0\xa1\x8e\xe3\x80\x82\xe1\xa2\x8d\xf2\x9d\xb9\x81\xf0\x90\xab\x98", true); } // [B5, B6, V7]
4809test { try toUnicodeFail("xn--3tb2nz468k.xn--69e8615j5rn5d"); } // [B5, B6, V7]11771test { try toUnicodeFail("xn--3tb2nz468k.xn--69e8615j5rn5d"); } // [B5, B6, V7]
11772test { try toAsciiFail("xn--3tb2nz468k.xn--69e8615j5rn5d", false); } // [B5, B6, V7]
11773test { try toAsciiFail("xn--3tb2nz468k.xn--69e8615j5rn5d", true); } // [B5, B6, V7]
4810test { try toUnicodeFail("\xdb\xad\xf0\x9e\xba\x8c\xf0\x91\x84\x9a\xe1\x9c\x94.\xea\xa1\x9e\xe0\xa2\xb7"); } // [B1, B5, B6, V6]11774test { try toUnicodeFail("\xdb\xad\xf0\x9e\xba\x8c\xf0\x91\x84\x9a\xe1\x9c\x94.\xea\xa1\x9e\xe0\xa2\xb7"); } // [B1, B5, B6, V6]
11775test { try toAsciiFail("\xdb\xad\xf0\x9e\xba\x8c\xf0\x91\x84\x9a\xe1\x9c\x94.\xea\xa1\x9e\xe0\xa2\xb7", false); } // [B1, B5, B6, V6]
11776test { try toAsciiFail("\xdb\xad\xf0\x9e\xba\x8c\xf0\x91\x84\x9a\xe1\x9c\x94.\xea\xa1\x9e\xe0\xa2\xb7", true); } // [B1, B5, B6, V6]
4811test { try toUnicodeFail("\xdb\xad\xd9\x85\xf0\x91\x84\x9a\xe1\x9c\x94.\xea\xa1\x9e\xe0\xa2\xb7"); } // [B1, B5, B6, V6]11777test { try toUnicodeFail("\xdb\xad\xd9\x85\xf0\x91\x84\x9a\xe1\x9c\x94.\xea\xa1\x9e\xe0\xa2\xb7"); } // [B1, B5, B6, V6]
11778test { try toAsciiFail("\xdb\xad\xd9\x85\xf0\x91\x84\x9a\xe1\x9c\x94.\xea\xa1\x9e\xe0\xa2\xb7", false); } // [B1, B5, B6, V6]
11779test { try toAsciiFail("\xdb\xad\xd9\x85\xf0\x91\x84\x9a\xe1\x9c\x94.\xea\xa1\x9e\xe0\xa2\xb7", true); } // [B1, B5, B6, V6]
4812test { try toUnicodeFail("xn--hhb94ag41b739u.xn--dzb5582f"); } // [B1, B5, B6, V6]11780test { try toUnicodeFail("xn--hhb94ag41b739u.xn--dzb5582f"); } // [B1, B5, B6, V6]
11781test { try toAsciiFail("xn--hhb94ag41b739u.xn--dzb5582f", false); } // [B1, B5, B6, V6]
11782test { try toAsciiFail("xn--hhb94ag41b739u.xn--dzb5582f", true); } // [B1, B5, B6, V6]
4813test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x82\xd8\xbc\xcf\x82"); } // [B5, B6, V7]11783test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x82\xd8\xbc\xcf\x82"); } // [B5, B6, V7]
11784test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x82\xd8\xbc\xcf\x82", false); } // [B5, B6, V7]
11785test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x82\xd8\xbc\xcf\x82", true); } // [B5, B6, V7]
4814test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x82\xd8\xbc\xcf\x82"); } // [B5, B6, V7]11786test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x82\xd8\xbc\xcf\x82"); } // [B5, B6, V7]
11787test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x82\xd8\xbc\xcf\x82", false); } // [B5, B6, V7]
11788test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x82\xd8\xbc\xcf\x82", true); } // [B5, B6, V7]
4815test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x82\xd8\xbc\xcf\x82"); } // [B5, B6, V7]11789test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x82\xd8\xbc\xcf\x82"); } // [B5, B6, V7]
11790test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x82\xd8\xbc\xcf\x82", false); } // [B5, B6, V7]
11791test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x82\xd8\xbc\xcf\x82", true); } // [B5, B6, V7]
4816test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x82\xd8\xbc\xcf\x82"); } // [B5, B6, V7]11792test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x82\xd8\xbc\xcf\x82"); } // [B5, B6, V7]
11793test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x82\xd8\xbc\xcf\x82", false); } // [B5, B6, V7]
11794test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x82\xd8\xbc\xcf\x82", true); } // [B5, B6, V7]
4817test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xce\xa3"); } // [B5, B6, V7]11795test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xce\xa3"); } // [B5, B6, V7]
11796test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xce\xa3", false); } // [B5, B6, V7]
11797test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xce\xa3", true); } // [B5, B6, V7]
4818test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xce\xa3"); } // [B5, B6, V7]11798test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xce\xa3"); } // [B5, B6, V7]
11799test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xce\xa3", false); } // [B5, B6, V7]
11800test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xce\xa3", true); } // [B5, B6, V7]
4819test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x83\xd8\xbc\xcf\x83"); } // [B5, B6, V7]11801test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x83\xd8\xbc\xcf\x83"); } // [B5, B6, V7]
11802test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x83\xd8\xbc\xcf\x83", false); } // [B5, B6, V7]
11803test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x83\xd8\xbc\xcf\x83", true); } // [B5, B6, V7]
4820test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x83\xd8\xbc\xcf\x83"); } // [B5, B6, V7]11804test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x83\xd8\xbc\xcf\x83"); } // [B5, B6, V7]
11805test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x83\xd8\xbc\xcf\x83", false); } // [B5, B6, V7]
11806test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x83\xd8\xbc\xcf\x83", true); } // [B5, B6, V7]
4821test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xcf\x83"); } // [B5, B6, V7]11807test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xcf\x83"); } // [B5, B6, V7]
11808test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xcf\x83", false); } // [B5, B6, V7]
11809test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xcf\x83", true); } // [B5, B6, V7]
4822test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xcf\x83"); } // [B5, B6, V7]11810test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xcf\x83"); } // [B5, B6, V7]
11811test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xcf\x83", false); } // [B5, B6, V7]
11812test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xcf\x83", true); } // [B5, B6, V7]
4823test { try toUnicodeFail("xn--3sb7483hoyvbbe76g.xn--4xaa21q"); } // [B5, B6, V7]11813test { try toUnicodeFail("xn--3sb7483hoyvbbe76g.xn--4xaa21q"); } // [B5, B6, V7]
11814test { try toAsciiFail("xn--3sb7483hoyvbbe76g.xn--4xaa21q", false); } // [B5, B6, V7]
11815test { try toAsciiFail("xn--3sb7483hoyvbbe76g.xn--4xaa21q", true); } // [B5, B6, V7]
4824test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xcf\x82"); } // [B5, B6, V7]11816test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xcf\x82"); } // [B5, B6, V7]
11817test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xcf\x82", false); } // [B5, B6, V7]
11818test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xcf\x82", true); } // [B5, B6, V7]
4825test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xcf\x82"); } // [B5, B6, V7]11819test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xcf\x82"); } // [B5, B6, V7]
11820test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xcf\x82", false); } // [B5, B6, V7]
11821test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xce\xa3\xd8\xbc\xcf\x82", true); } // [B5, B6, V7]
4826test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x83\xd8\xbc\xcf\x82"); } // [B5, B6, V7]11822test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x83\xd8\xbc\xcf\x82"); } // [B5, B6, V7]
11823test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x83\xd8\xbc\xcf\x82", false); } // [B5, B6, V7]
11824test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x83\xd8\xbc\xcf\x82", true); } // [B5, B6, V7]
4827test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x83\xd8\xbc\xcf\x82"); } // [B5, B6, V7]11825test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x83\xd8\xbc\xcf\x82"); } // [B5, B6, V7]
11826test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x83\xd8\xbc\xcf\x82", false); } // [B5, B6, V7]
11827test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xe3\x80\x82\xcf\x83\xd8\xbc\xcf\x82", true); } // [B5, B6, V7]
4828test { try toUnicodeFail("xn--3sb7483hoyvbbe76g.xn--3xab31q"); } // [B5, B6, V7]11828test { try toUnicodeFail("xn--3sb7483hoyvbbe76g.xn--3xab31q"); } // [B5, B6, V7]
11829test { try toAsciiFail("xn--3sb7483hoyvbbe76g.xn--3xab31q", false); } // [B5, B6, V7]
11830test { try toAsciiFail("xn--3sb7483hoyvbbe76g.xn--3xab31q", true); } // [B5, B6, V7]
4829test { try toUnicodeFail("xn--3sb7483hoyvbbe76g.xn--3xaa51q"); } // [B5, B6, V7]11831test { try toUnicodeFail("xn--3sb7483hoyvbbe76g.xn--3xaa51q"); } // [B5, B6, V7]
11832test { try toAsciiFail("xn--3sb7483hoyvbbe76g.xn--3xaa51q", false); } // [B5, B6, V7]
11833test { try toAsciiFail("xn--3sb7483hoyvbbe76g.xn--3xaa51q", true); } // [B5, B6, V7]
4830test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xce\xa3"); } // [B5, B6, V7]11834test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xce\xa3"); } // [B5, B6, V7]
11835test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xce\xa3", false); } // [B5, B6, V7]
11836test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xce\xa3", true); } // [B5, B6, V7]
4831test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xce\xa3"); } // [B5, B6, V7]11837test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xce\xa3"); } // [B5, B6, V7]
11838test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xce\xa3", false); } // [B5, B6, V7]
11839test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xce\xa3", true); } // [B5, B6, V7]
4832test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x83\xd8\xbc\xcf\x83"); } // [B5, B6, V7]11840test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x83\xd8\xbc\xcf\x83"); } // [B5, B6, V7]
11841test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x83\xd8\xbc\xcf\x83", false); } // [B5, B6, V7]
11842test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x83\xd8\xbc\xcf\x83", true); } // [B5, B6, V7]
4833test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x83\xd8\xbc\xcf\x83"); } // [B5, B6, V7]11843test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x83\xd8\xbc\xcf\x83"); } // [B5, B6, V7]
11844test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x83\xd8\xbc\xcf\x83", false); } // [B5, B6, V7]
11845test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x83\xd8\xbc\xcf\x83", true); } // [B5, B6, V7]
4834test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xcf\x83"); } // [B5, B6, V7]11846test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xcf\x83"); } // [B5, B6, V7]
11847test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xcf\x83", false); } // [B5, B6, V7]
11848test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xcf\x83", true); } // [B5, B6, V7]
4835test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xcf\x83"); } // [B5, B6, V7]11849test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xcf\x83"); } // [B5, B6, V7]
11850test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xcf\x83", false); } // [B5, B6, V7]
11851test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xcf\x83", true); } // [B5, B6, V7]
4836test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xcf\x82"); } // [B5, B6, V7]11852test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xcf\x82"); } // [B5, B6, V7]
11853test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xcf\x82", false); } // [B5, B6, V7]
11854test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xcf\x82", true); } // [B5, B6, V7]
4837test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xcf\x82"); } // [B5, B6, V7]11855test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xcf\x82"); } // [B5, B6, V7]
11856test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xcf\x82", false); } // [B5, B6, V7]
11857test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xce\xa3\xd8\xbc\xcf\x82", true); } // [B5, B6, V7]
4838test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x83\xd8\xbc\xcf\x82"); } // [B5, B6, V7]11858test { try toUnicodeFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x83\xd8\xbc\xcf\x82"); } // [B5, B6, V7]
11859test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x83\xd8\xbc\xcf\x82", false); } // [B5, B6, V7]
11860test { try toAsciiFail("\xf1\xbb\x82\xb5\xed\x82\x83\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x83\xd8\xbc\xcf\x82", true); } // [B5, B6, V7]
4839test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x83\xd8\xbc\xcf\x82"); } // [B5, B6, V7]11861test { try toUnicodeFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x83\xd8\xbc\xcf\x82"); } // [B5, B6, V7]
11862test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x83\xd8\xbc\xcf\x82", false); } // [B5, B6, V7]
11863test { try toAsciiFail("\xf1\xbb\x82\xb5\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xbe\xf0\x91\x98\xb6\xdf\x9c\xef\xbd\xa1\xcf\x83\xd8\xbc\xcf\x82", true); } // [B5, B6, V7]
4840test { try toUnicodeFail("\xe8\x94\xb0\xe3\x80\x82\xf3\xa0\x81\xb9\xe0\xa3\x9d-\xf0\x91\x88\xb5"); } // [V7]11864test { try toUnicodeFail("\xe8\x94\xb0\xe3\x80\x82\xf3\xa0\x81\xb9\xe0\xa3\x9d-\xf0\x91\x88\xb5"); } // [V7]
11865test { try toAsciiFail("\xe8\x94\xb0\xe3\x80\x82\xf3\xa0\x81\xb9\xe0\xa3\x9d-\xf0\x91\x88\xb5", false); } // [V7]
11866test { try toAsciiFail("\xe8\x94\xb0\xe3\x80\x82\xf3\xa0\x81\xb9\xe0\xa3\x9d-\xf0\x91\x88\xb5", true); } // [V7]
4841test { try toUnicodeFail("xn--sz1a.xn----mrd9984r3dl0i"); } // [V7]11867test { try toUnicodeFail("xn--sz1a.xn----mrd9984r3dl0i"); } // [V7]
11868test { try toAsciiFail("xn--sz1a.xn----mrd9984r3dl0i", false); } // [V7]
11869test { try toAsciiFail("xn--sz1a.xn----mrd9984r3dl0i", true); } // [V7]
4842test { try toUnicodePass("\xcf\x82\xe1\x83\x85\xe3\x80\x82\xdd\x9a", "\xcf\x82\xe2\xb4\xa5.\xdd\x9a"); }11870test { try toUnicodePass("\xcf\x82\xe1\x83\x85\xe3\x80\x82\xdd\x9a", "\xcf\x82\xe2\xb4\xa5.\xdd\x9a"); }
4843test { try toAsciiPass("\xcf\x82\xe1\x83\x85\xe3\x80\x82\xdd\x9a", "xn--3xa403s.xn--epb", false); }11871test { try toAsciiPass("\xcf\x82\xe1\x83\x85\xe3\x80\x82\xdd\x9a", "xn--3xa403s.xn--epb", false); }
4844test { try toAsciiPass("\xcf\x82\xe1\x83\x85\xe3\x80\x82\xdd\x9a", "xn--4xa203s.xn--epb", true); }11872test { try toAsciiPass("\xcf\x82\xe1\x83\x85\xe3\x80\x82\xdd\x9a", "xn--4xa203s.xn--epb", true); }
...@@ -4873,28 +11901,56 @@ test { try toUnicodePass("\xcf\x82\xe2\xb4\xa5.\xdd\x9a", "\xcf\x82\xe2\xb4\xa5....@@ -4873,28 +11901,56 @@ test { try toUnicodePass("\xcf\x82\xe2\xb4\xa5.\xdd\x9a", "\xcf\x82\xe2\xb4\xa5.
4873test { try toAsciiPass("\xcf\x82\xe2\xb4\xa5.\xdd\x9a", "xn--3xa403s.xn--epb", false); }11901test { try toAsciiPass("\xcf\x82\xe2\xb4\xa5.\xdd\x9a", "xn--3xa403s.xn--epb", false); }
4874test { try toAsciiPass("\xcf\x82\xe2\xb4\xa5.\xdd\x9a", "xn--4xa203s.xn--epb", true); }11902test { try toAsciiPass("\xcf\x82\xe2\xb4\xa5.\xdd\x9a", "xn--4xa203s.xn--epb", true); }
4875test { try toUnicodeFail("xn--4xa477d.xn--epb"); } // [V7]11903test { try toUnicodeFail("xn--4xa477d.xn--epb"); } // [V7]
11904test { try toAsciiFail("xn--4xa477d.xn--epb", false); } // [V7]
11905test { try toAsciiFail("xn--4xa477d.xn--epb", true); } // [V7]
4876test { try toUnicodeFail("xn--3xa677d.xn--epb"); } // [V7]11906test { try toUnicodeFail("xn--3xa677d.xn--epb"); } // [V7]
11907test { try toAsciiFail("xn--3xa677d.xn--epb", false); } // [V7]
11908test { try toAsciiFail("xn--3xa677d.xn--epb", true); } // [V7]
4877test { try toUnicodeFail("\xe0\xb1\x8d\xe1\x82\xa9\xf0\x9e\xb0\x93\xef\xbc\x8e\xe1\xad\xb2"); } // [B1, V6, V7]11909test { try toUnicodeFail("\xe0\xb1\x8d\xe1\x82\xa9\xf0\x9e\xb0\x93\xef\xbc\x8e\xe1\xad\xb2"); } // [B1, V6, V7]
11910test { try toAsciiFail("\xe0\xb1\x8d\xe1\x82\xa9\xf0\x9e\xb0\x93\xef\xbc\x8e\xe1\xad\xb2", false); } // [B1, V6, V7]
11911test { try toAsciiFail("\xe0\xb1\x8d\xe1\x82\xa9\xf0\x9e\xb0\x93\xef\xbc\x8e\xe1\xad\xb2", true); } // [B1, V6, V7]
4878test { try toUnicodeFail("\xe0\xb1\x8d\xe1\x82\xa9\xf0\x9e\xb0\x93.\xe1\xad\xb2"); } // [B1, V6, V7]11912test { try toUnicodeFail("\xe0\xb1\x8d\xe1\x82\xa9\xf0\x9e\xb0\x93.\xe1\xad\xb2"); } // [B1, V6, V7]
11913test { try toAsciiFail("\xe0\xb1\x8d\xe1\x82\xa9\xf0\x9e\xb0\x93.\xe1\xad\xb2", false); } // [B1, V6, V7]
11914test { try toAsciiFail("\xe0\xb1\x8d\xe1\x82\xa9\xf0\x9e\xb0\x93.\xe1\xad\xb2", true); } // [B1, V6, V7]
4879test { try toUnicodeFail("\xe0\xb1\x8d\xe2\xb4\x89\xf0\x9e\xb0\x93.\xe1\xad\xb2"); } // [B1, V6, V7]11915test { try toUnicodeFail("\xe0\xb1\x8d\xe2\xb4\x89\xf0\x9e\xb0\x93.\xe1\xad\xb2"); } // [B1, V6, V7]
11916test { try toAsciiFail("\xe0\xb1\x8d\xe2\xb4\x89\xf0\x9e\xb0\x93.\xe1\xad\xb2", false); } // [B1, V6, V7]
11917test { try toAsciiFail("\xe0\xb1\x8d\xe2\xb4\x89\xf0\x9e\xb0\x93.\xe1\xad\xb2", true); } // [B1, V6, V7]
4880test { try toUnicodeFail("xn--lqc478nlr02a.xn--dwf"); } // [B1, V6, V7]11918test { try toUnicodeFail("xn--lqc478nlr02a.xn--dwf"); } // [B1, V6, V7]
11919test { try toAsciiFail("xn--lqc478nlr02a.xn--dwf", false); } // [B1, V6, V7]
11920test { try toAsciiFail("xn--lqc478nlr02a.xn--dwf", true); } // [B1, V6, V7]
4881test { try toUnicodeFail("\xe0\xb1\x8d\xe2\xb4\x89\xf0\x9e\xb0\x93\xef\xbc\x8e\xe1\xad\xb2"); } // [B1, V6, V7]11921test { try toUnicodeFail("\xe0\xb1\x8d\xe2\xb4\x89\xf0\x9e\xb0\x93\xef\xbc\x8e\xe1\xad\xb2"); } // [B1, V6, V7]
11922test { try toAsciiFail("\xe0\xb1\x8d\xe2\xb4\x89\xf0\x9e\xb0\x93\xef\xbc\x8e\xe1\xad\xb2", false); } // [B1, V6, V7]
11923test { try toAsciiFail("\xe0\xb1\x8d\xe2\xb4\x89\xf0\x9e\xb0\x93\xef\xbc\x8e\xe1\xad\xb2", true); } // [B1, V6, V7]
4882test { try toUnicodeFail("xn--lqc64t7t26c.xn--dwf"); } // [B1, V6, V7]11924test { try toUnicodeFail("xn--lqc64t7t26c.xn--dwf"); } // [B1, V6, V7]
11925test { try toAsciiFail("xn--lqc64t7t26c.xn--dwf", false); } // [B1, V6, V7]
11926test { try toAsciiFail("xn--lqc64t7t26c.xn--dwf", true); } // [B1, V6, V7]
4883test { try toUnicodeFail("\xe2\xae\xb7\xe2\x89\xae\xf1\x8e\x88\xb4\xf3\xa0\x84\x9f\xe3\x80\x82\xf0\x90\xa0\x84"); } // [B1, V7]11927test { try toUnicodeFail("\xe2\xae\xb7\xe2\x89\xae\xf1\x8e\x88\xb4\xf3\xa0\x84\x9f\xe3\x80\x82\xf0\x90\xa0\x84"); } // [B1, V7]
11928test { try toAsciiFail("\xe2\xae\xb7\xe2\x89\xae\xf1\x8e\x88\xb4\xf3\xa0\x84\x9f\xe3\x80\x82\xf0\x90\xa0\x84", false); } // [B1, V7]
11929test { try toAsciiFail("\xe2\xae\xb7\xe2\x89\xae\xf1\x8e\x88\xb4\xf3\xa0\x84\x9f\xe3\x80\x82\xf0\x90\xa0\x84", true); } // [B1, V7]
4884test { try toUnicodeFail("\xe2\xae\xb7<\xcc\xb8\xf1\x8e\x88\xb4\xf3\xa0\x84\x9f\xe3\x80\x82\xf0\x90\xa0\x84"); } // [B1, V7]11930test { try toUnicodeFail("\xe2\xae\xb7<\xcc\xb8\xf1\x8e\x88\xb4\xf3\xa0\x84\x9f\xe3\x80\x82\xf0\x90\xa0\x84"); } // [B1, V7]
11931test { try toAsciiFail("\xe2\xae\xb7<\xcc\xb8\xf1\x8e\x88\xb4\xf3\xa0\x84\x9f\xe3\x80\x82\xf0\x90\xa0\x84", false); } // [B1, V7]
11932test { try toAsciiFail("\xe2\xae\xb7<\xcc\xb8\xf1\x8e\x88\xb4\xf3\xa0\x84\x9f\xe3\x80\x82\xf0\x90\xa0\x84", true); } // [B1, V7]
4885test { try toUnicodeFail("xn--gdh877a3513h.xn--pc9c"); } // [B1, V7]11933test { try toUnicodeFail("xn--gdh877a3513h.xn--pc9c"); } // [B1, V7]
11934test { try toAsciiFail("xn--gdh877a3513h.xn--pc9c", false); } // [B1, V7]
11935test { try toAsciiFail("xn--gdh877a3513h.xn--pc9c", true); } // [B1, V7]
4886test { try toAsciiPass("\xda\xbc\xef\xbd\xa1\xe2\x80\x8d\xe1\xba\x8f\xe2\x80\x8c\xe1\xa1\xa4", "xn--vkb.xn--08e172a", true); }11936test { try toAsciiPass("\xda\xbc\xef\xbd\xa1\xe2\x80\x8d\xe1\xba\x8f\xe2\x80\x8c\xe1\xa1\xa4", "xn--vkb.xn--08e172a", true); }
4887test { try toUnicodeFail("\xda\xbc\xef\xbd\xa1\xe2\x80\x8d\xe1\xba\x8f\xe2\x80\x8c\xe1\xa1\xa4"); } // [B1, C1, C2]11937test { try toUnicodeFail("\xda\xbc\xef\xbd\xa1\xe2\x80\x8d\xe1\xba\x8f\xe2\x80\x8c\xe1\xa1\xa4"); } // [B1, C1, C2]
11938test { try toAsciiFail("\xda\xbc\xef\xbd\xa1\xe2\x80\x8d\xe1\xba\x8f\xe2\x80\x8c\xe1\xa1\xa4", false); } // [B1, C1, C2]
4888test { try toAsciiPass("\xda\xbc\xef\xbd\xa1\xe2\x80\x8dy\xcc\x87\xe2\x80\x8c\xe1\xa1\xa4", "xn--vkb.xn--08e172a", true); }11939test { try toAsciiPass("\xda\xbc\xef\xbd\xa1\xe2\x80\x8dy\xcc\x87\xe2\x80\x8c\xe1\xa1\xa4", "xn--vkb.xn--08e172a", true); }
4889test { try toUnicodeFail("\xda\xbc\xef\xbd\xa1\xe2\x80\x8dy\xcc\x87\xe2\x80\x8c\xe1\xa1\xa4"); } // [B1, C1, C2]11940test { try toUnicodeFail("\xda\xbc\xef\xbd\xa1\xe2\x80\x8dy\xcc\x87\xe2\x80\x8c\xe1\xa1\xa4"); } // [B1, C1, C2]
11941test { try toAsciiFail("\xda\xbc\xef\xbd\xa1\xe2\x80\x8dy\xcc\x87\xe2\x80\x8c\xe1\xa1\xa4", false); } // [B1, C1, C2]
4890test { try toAsciiPass("\xda\xbc\xe3\x80\x82\xe2\x80\x8d\xe1\xba\x8f\xe2\x80\x8c\xe1\xa1\xa4", "xn--vkb.xn--08e172a", true); }11942test { try toAsciiPass("\xda\xbc\xe3\x80\x82\xe2\x80\x8d\xe1\xba\x8f\xe2\x80\x8c\xe1\xa1\xa4", "xn--vkb.xn--08e172a", true); }
4891test { try toUnicodeFail("\xda\xbc\xe3\x80\x82\xe2\x80\x8d\xe1\xba\x8f\xe2\x80\x8c\xe1\xa1\xa4"); } // [B1, C1, C2]11943test { try toUnicodeFail("\xda\xbc\xe3\x80\x82\xe2\x80\x8d\xe1\xba\x8f\xe2\x80\x8c\xe1\xa1\xa4"); } // [B1, C1, C2]
11944test { try toAsciiFail("\xda\xbc\xe3\x80\x82\xe2\x80\x8d\xe1\xba\x8f\xe2\x80\x8c\xe1\xa1\xa4", false); } // [B1, C1, C2]
4892test { try toAsciiPass("\xda\xbc\xe3\x80\x82\xe2\x80\x8dy\xcc\x87\xe2\x80\x8c\xe1\xa1\xa4", "xn--vkb.xn--08e172a", true); }11945test { try toAsciiPass("\xda\xbc\xe3\x80\x82\xe2\x80\x8dy\xcc\x87\xe2\x80\x8c\xe1\xa1\xa4", "xn--vkb.xn--08e172a", true); }
4893test { try toUnicodeFail("\xda\xbc\xe3\x80\x82\xe2\x80\x8dy\xcc\x87\xe2\x80\x8c\xe1\xa1\xa4"); } // [B1, C1, C2]11946test { try toUnicodeFail("\xda\xbc\xe3\x80\x82\xe2\x80\x8dy\xcc\x87\xe2\x80\x8c\xe1\xa1\xa4"); } // [B1, C1, C2]
11947test { try toAsciiFail("\xda\xbc\xe3\x80\x82\xe2\x80\x8dy\xcc\x87\xe2\x80\x8c\xe1\xa1\xa4", false); } // [B1, C1, C2]
4894test { try toAsciiPass("\xda\xbc\xe3\x80\x82\xe2\x80\x8dY\xcc\x87\xe2\x80\x8c\xe1\xa1\xa4", "xn--vkb.xn--08e172a", true); }11948test { try toAsciiPass("\xda\xbc\xe3\x80\x82\xe2\x80\x8dY\xcc\x87\xe2\x80\x8c\xe1\xa1\xa4", "xn--vkb.xn--08e172a", true); }
4895test { try toUnicodeFail("\xda\xbc\xe3\x80\x82\xe2\x80\x8dY\xcc\x87\xe2\x80\x8c\xe1\xa1\xa4"); } // [B1, C1, C2]11949test { try toUnicodeFail("\xda\xbc\xe3\x80\x82\xe2\x80\x8dY\xcc\x87\xe2\x80\x8c\xe1\xa1\xa4"); } // [B1, C1, C2]
11950test { try toAsciiFail("\xda\xbc\xe3\x80\x82\xe2\x80\x8dY\xcc\x87\xe2\x80\x8c\xe1\xa1\xa4", false); } // [B1, C1, C2]
4896test { try toAsciiPass("\xda\xbc\xe3\x80\x82\xe2\x80\x8d\xe1\xba\x8e\xe2\x80\x8c\xe1\xa1\xa4", "xn--vkb.xn--08e172a", true); }11951test { try toAsciiPass("\xda\xbc\xe3\x80\x82\xe2\x80\x8d\xe1\xba\x8e\xe2\x80\x8c\xe1\xa1\xa4", "xn--vkb.xn--08e172a", true); }
4897test { try toUnicodeFail("\xda\xbc\xe3\x80\x82\xe2\x80\x8d\xe1\xba\x8e\xe2\x80\x8c\xe1\xa1\xa4"); } // [B1, C1, C2]11952test { try toUnicodeFail("\xda\xbc\xe3\x80\x82\xe2\x80\x8d\xe1\xba\x8e\xe2\x80\x8c\xe1\xa1\xa4"); } // [B1, C1, C2]
11953test { try toAsciiFail("\xda\xbc\xe3\x80\x82\xe2\x80\x8d\xe1\xba\x8e\xe2\x80\x8c\xe1\xa1\xa4", false); } // [B1, C1, C2]
4898test { try toUnicodePass("xn--vkb.xn--08e172a", "\xda\xbc.\xe1\xba\x8f\xe1\xa1\xa4"); }11954test { try toUnicodePass("xn--vkb.xn--08e172a", "\xda\xbc.\xe1\xba\x8f\xe1\xa1\xa4"); }
4899test { try toAsciiPass("xn--vkb.xn--08e172a", "xn--vkb.xn--08e172a", false); }11955test { try toAsciiPass("xn--vkb.xn--08e172a", "xn--vkb.xn--08e172a", false); }
4900test { try toAsciiPass("xn--vkb.xn--08e172a", "xn--vkb.xn--08e172a", true); }11956test { try toAsciiPass("xn--vkb.xn--08e172a", "xn--vkb.xn--08e172a", true); }
...@@ -4911,37 +11967,83 @@ test { try toUnicodePass("\xda\xbc.\xe1\xba\x8e\xe1\xa1\xa4", "\xda\xbc.\xe1\xba...@@ -4911,37 +11967,83 @@ test { try toUnicodePass("\xda\xbc.\xe1\xba\x8e\xe1\xa1\xa4", "\xda\xbc.\xe1\xba
4911test { try toAsciiPass("\xda\xbc.\xe1\xba\x8e\xe1\xa1\xa4", "xn--vkb.xn--08e172a", false); }11967test { try toAsciiPass("\xda\xbc.\xe1\xba\x8e\xe1\xa1\xa4", "xn--vkb.xn--08e172a", false); }
4912test { try toAsciiPass("\xda\xbc.\xe1\xba\x8e\xe1\xa1\xa4", "xn--vkb.xn--08e172a", true); }11968test { try toAsciiPass("\xda\xbc.\xe1\xba\x8e\xe1\xa1\xa4", "xn--vkb.xn--08e172a", true); }
4913test { try toUnicodeFail("xn--vkb.xn--08e172ax6aca"); } // [B1, C1, C2]11969test { try toUnicodeFail("xn--vkb.xn--08e172ax6aca"); } // [B1, C1, C2]
11970test { try toAsciiFail("xn--vkb.xn--08e172ax6aca", false); } // [B1, C1, C2]
11971test { try toAsciiFail("xn--vkb.xn--08e172ax6aca", true); } // [B1, C1, C2]
4914test { try toAsciiPass("\xda\xbc\xef\xbd\xa1\xe2\x80\x8dY\xcc\x87\xe2\x80\x8c\xe1\xa1\xa4", "xn--vkb.xn--08e172a", true); }11972test { try toAsciiPass("\xda\xbc\xef\xbd\xa1\xe2\x80\x8dY\xcc\x87\xe2\x80\x8c\xe1\xa1\xa4", "xn--vkb.xn--08e172a", true); }
4915test { try toUnicodeFail("\xda\xbc\xef\xbd\xa1\xe2\x80\x8dY\xcc\x87\xe2\x80\x8c\xe1\xa1\xa4"); } // [B1, C1, C2]11973test { try toUnicodeFail("\xda\xbc\xef\xbd\xa1\xe2\x80\x8dY\xcc\x87\xe2\x80\x8c\xe1\xa1\xa4"); } // [B1, C1, C2]
11974test { try toAsciiFail("\xda\xbc\xef\xbd\xa1\xe2\x80\x8dY\xcc\x87\xe2\x80\x8c\xe1\xa1\xa4", false); } // [B1, C1, C2]
4916test { try toAsciiPass("\xda\xbc\xef\xbd\xa1\xe2\x80\x8d\xe1\xba\x8e\xe2\x80\x8c\xe1\xa1\xa4", "xn--vkb.xn--08e172a", true); }11975test { try toAsciiPass("\xda\xbc\xef\xbd\xa1\xe2\x80\x8d\xe1\xba\x8e\xe2\x80\x8c\xe1\xa1\xa4", "xn--vkb.xn--08e172a", true); }
4917test { try toUnicodeFail("\xda\xbc\xef\xbd\xa1\xe2\x80\x8d\xe1\xba\x8e\xe2\x80\x8c\xe1\xa1\xa4"); } // [B1, C1, C2]11976test { try toUnicodeFail("\xda\xbc\xef\xbd\xa1\xe2\x80\x8d\xe1\xba\x8e\xe2\x80\x8c\xe1\xa1\xa4"); } // [B1, C1, C2]
11977test { try toAsciiFail("\xda\xbc\xef\xbd\xa1\xe2\x80\x8d\xe1\xba\x8e\xe2\x80\x8c\xe1\xa1\xa4", false); } // [B1, C1, C2]
4918test { try toUnicodeFail("\xf0\x90\xb9\xb9\xf0\x91\xb2\x9b\xe3\x80\x82\xf1\x91\x82\x90\xe0\xb7\x8a"); } // [B1, V7]11978test { try toUnicodeFail("\xf0\x90\xb9\xb9\xf0\x91\xb2\x9b\xe3\x80\x82\xf1\x91\x82\x90\xe0\xb7\x8a"); } // [B1, V7]
11979test { try toAsciiFail("\xf0\x90\xb9\xb9\xf0\x91\xb2\x9b\xe3\x80\x82\xf1\x91\x82\x90\xe0\xb7\x8a", false); } // [B1, V7]
11980test { try toAsciiFail("\xf0\x90\xb9\xb9\xf0\x91\xb2\x9b\xe3\x80\x82\xf1\x91\x82\x90\xe0\xb7\x8a", true); } // [B1, V7]
4919test { try toUnicodeFail("xn--xo0dg5v.xn--h1c39876d"); } // [B1, V7]11981test { try toUnicodeFail("xn--xo0dg5v.xn--h1c39876d"); } // [B1, V7]
11982test { try toAsciiFail("xn--xo0dg5v.xn--h1c39876d", false); } // [B1, V7]
11983test { try toAsciiFail("xn--xo0dg5v.xn--h1c39876d", true); } // [B1, V7]
4920test { try toUnicodeFail("-\xe2\x89\xa0\xf0\x91\x88\xb5\xef\xbd\xa1\xe5\xb5\x95\xef\xbb\xb1\xdb\xb4\xea\xa5\x93"); } // [B1, B5, V3]11984test { try toUnicodeFail("-\xe2\x89\xa0\xf0\x91\x88\xb5\xef\xbd\xa1\xe5\xb5\x95\xef\xbb\xb1\xdb\xb4\xea\xa5\x93"); } // [B1, B5, V3]
11985test { try toAsciiFail("-\xe2\x89\xa0\xf0\x91\x88\xb5\xef\xbd\xa1\xe5\xb5\x95\xef\xbb\xb1\xdb\xb4\xea\xa5\x93", false); } // [B1, B5, V3]
11986test { try toAsciiFail("-\xe2\x89\xa0\xf0\x91\x88\xb5\xef\xbd\xa1\xe5\xb5\x95\xef\xbb\xb1\xdb\xb4\xea\xa5\x93", true); } // [B1, B5, V3]
4921test { try toUnicodeFail("-=\xcc\xb8\xf0\x91\x88\xb5\xef\xbd\xa1\xe5\xb5\x95\xef\xbb\xb1\xdb\xb4\xea\xa5\x93"); } // [B1, B5, V3]11987test { try toUnicodeFail("-=\xcc\xb8\xf0\x91\x88\xb5\xef\xbd\xa1\xe5\xb5\x95\xef\xbb\xb1\xdb\xb4\xea\xa5\x93"); } // [B1, B5, V3]
11988test { try toAsciiFail("-=\xcc\xb8\xf0\x91\x88\xb5\xef\xbd\xa1\xe5\xb5\x95\xef\xbb\xb1\xdb\xb4\xea\xa5\x93", false); } // [B1, B5, V3]
11989test { try toAsciiFail("-=\xcc\xb8\xf0\x91\x88\xb5\xef\xbd\xa1\xe5\xb5\x95\xef\xbb\xb1\xdb\xb4\xea\xa5\x93", true); } // [B1, B5, V3]
4922test { try toUnicodeFail("-\xe2\x89\xa0\xf0\x91\x88\xb5\xe3\x80\x82\xe5\xb5\x95\xd9\x8a\xdb\xb4\xea\xa5\x93"); } // [B1, B5, V3]11990test { try toUnicodeFail("-\xe2\x89\xa0\xf0\x91\x88\xb5\xe3\x80\x82\xe5\xb5\x95\xd9\x8a\xdb\xb4\xea\xa5\x93"); } // [B1, B5, V3]
11991test { try toAsciiFail("-\xe2\x89\xa0\xf0\x91\x88\xb5\xe3\x80\x82\xe5\xb5\x95\xd9\x8a\xdb\xb4\xea\xa5\x93", false); } // [B1, B5, V3]
11992test { try toAsciiFail("-\xe2\x89\xa0\xf0\x91\x88\xb5\xe3\x80\x82\xe5\xb5\x95\xd9\x8a\xdb\xb4\xea\xa5\x93", true); } // [B1, B5, V3]
4923test { try toUnicodeFail("-=\xcc\xb8\xf0\x91\x88\xb5\xe3\x80\x82\xe5\xb5\x95\xd9\x8a\xdb\xb4\xea\xa5\x93"); } // [B1, B5, V3]11993test { try toUnicodeFail("-=\xcc\xb8\xf0\x91\x88\xb5\xe3\x80\x82\xe5\xb5\x95\xd9\x8a\xdb\xb4\xea\xa5\x93"); } // [B1, B5, V3]
11994test { try toAsciiFail("-=\xcc\xb8\xf0\x91\x88\xb5\xe3\x80\x82\xe5\xb5\x95\xd9\x8a\xdb\xb4\xea\xa5\x93", false); } // [B1, B5, V3]
11995test { try toAsciiFail("-=\xcc\xb8\xf0\x91\x88\xb5\xe3\x80\x82\xe5\xb5\x95\xd9\x8a\xdb\xb4\xea\xa5\x93", true); } // [B1, B5, V3]
4924test { try toUnicodeFail("xn----ufo4749h.xn--mhb45a235sns3c"); } // [B1, B5, V3]11996test { try toUnicodeFail("xn----ufo4749h.xn--mhb45a235sns3c"); } // [B1, B5, V3]
11997test { try toAsciiFail("xn----ufo4749h.xn--mhb45a235sns3c", false); } // [B1, B5, V3]
11998test { try toAsciiFail("xn----ufo4749h.xn--mhb45a235sns3c", true); } // [B1, B5, V3]
4925test { try toUnicodeFail("\xe2\x80\x8c\xf1\x8d\xb8\xb0\xf0\x90\xb9\xb6\xdd\xae\xef\xbc\x8e\xdb\x81\xe2\x80\x8d\xe2\x89\xaf\xe2\x80\x8d"); } // [B1, B3, C1, C2, V7]11999test { try toUnicodeFail("\xe2\x80\x8c\xf1\x8d\xb8\xb0\xf0\x90\xb9\xb6\xdd\xae\xef\xbc\x8e\xdb\x81\xe2\x80\x8d\xe2\x89\xaf\xe2\x80\x8d"); } // [B1, B3, C1, C2, V7]
12000test { try toAsciiFail("\xe2\x80\x8c\xf1\x8d\xb8\xb0\xf0\x90\xb9\xb6\xdd\xae\xef\xbc\x8e\xdb\x81\xe2\x80\x8d\xe2\x89\xaf\xe2\x80\x8d", false); } // [B1, B3, C1, C2, V7]
12001test { try toAsciiFail("\xe2\x80\x8c\xf1\x8d\xb8\xb0\xf0\x90\xb9\xb6\xdd\xae\xef\xbc\x8e\xdb\x81\xe2\x80\x8d\xe2\x89\xaf\xe2\x80\x8d", true); } // [B3, B5, B6, V7]
4926test { try toUnicodeFail("\xe2\x80\x8c\xf1\x8d\xb8\xb0\xf0\x90\xb9\xb6\xdd\xae\xef\xbc\x8e\xdb\x81\xe2\x80\x8d>\xcc\xb8\xe2\x80\x8d"); } // [B1, B3, C1, C2, V7]12002test { try toUnicodeFail("\xe2\x80\x8c\xf1\x8d\xb8\xb0\xf0\x90\xb9\xb6\xdd\xae\xef\xbc\x8e\xdb\x81\xe2\x80\x8d>\xcc\xb8\xe2\x80\x8d"); } // [B1, B3, C1, C2, V7]
12003test { try toAsciiFail("\xe2\x80\x8c\xf1\x8d\xb8\xb0\xf0\x90\xb9\xb6\xdd\xae\xef\xbc\x8e\xdb\x81\xe2\x80\x8d>\xcc\xb8\xe2\x80\x8d", false); } // [B1, B3, C1, C2, V7]
12004test { try toAsciiFail("\xe2\x80\x8c\xf1\x8d\xb8\xb0\xf0\x90\xb9\xb6\xdd\xae\xef\xbc\x8e\xdb\x81\xe2\x80\x8d>\xcc\xb8\xe2\x80\x8d", true); } // [B3, B5, B6, V7]
4927test { try toUnicodeFail("\xe2\x80\x8c\xf1\x8d\xb8\xb0\xf0\x90\xb9\xb6\xdd\xae.\xdb\x81\xe2\x80\x8d\xe2\x89\xaf\xe2\x80\x8d"); } // [B1, B3, C1, C2, V7]12005test { try toUnicodeFail("\xe2\x80\x8c\xf1\x8d\xb8\xb0\xf0\x90\xb9\xb6\xdd\xae.\xdb\x81\xe2\x80\x8d\xe2\x89\xaf\xe2\x80\x8d"); } // [B1, B3, C1, C2, V7]
12006test { try toAsciiFail("\xe2\x80\x8c\xf1\x8d\xb8\xb0\xf0\x90\xb9\xb6\xdd\xae.\xdb\x81\xe2\x80\x8d\xe2\x89\xaf\xe2\x80\x8d", false); } // [B1, B3, C1, C2, V7]
12007test { try toAsciiFail("\xe2\x80\x8c\xf1\x8d\xb8\xb0\xf0\x90\xb9\xb6\xdd\xae.\xdb\x81\xe2\x80\x8d\xe2\x89\xaf\xe2\x80\x8d", true); } // [B3, B5, B6, V7]
4928test { try toUnicodeFail("\xe2\x80\x8c\xf1\x8d\xb8\xb0\xf0\x90\xb9\xb6\xdd\xae.\xdb\x81\xe2\x80\x8d>\xcc\xb8\xe2\x80\x8d"); } // [B1, B3, C1, C2, V7]12008test { try toUnicodeFail("\xe2\x80\x8c\xf1\x8d\xb8\xb0\xf0\x90\xb9\xb6\xdd\xae.\xdb\x81\xe2\x80\x8d>\xcc\xb8\xe2\x80\x8d"); } // [B1, B3, C1, C2, V7]
12009test { try toAsciiFail("\xe2\x80\x8c\xf1\x8d\xb8\xb0\xf0\x90\xb9\xb6\xdd\xae.\xdb\x81\xe2\x80\x8d>\xcc\xb8\xe2\x80\x8d", false); } // [B1, B3, C1, C2, V7]
12010test { try toAsciiFail("\xe2\x80\x8c\xf1\x8d\xb8\xb0\xf0\x90\xb9\xb6\xdd\xae.\xdb\x81\xe2\x80\x8d>\xcc\xb8\xe2\x80\x8d", true); } // [B3, B5, B6, V7]
4929test { try toUnicodeFail("xn--ypb5875khz9y.xn--0kb682l"); } // [B3, B5, B6, V7]12011test { try toUnicodeFail("xn--ypb5875khz9y.xn--0kb682l"); } // [B3, B5, B6, V7]
12012test { try toAsciiFail("xn--ypb5875khz9y.xn--0kb682l", false); } // [B3, B5, B6, V7]
12013test { try toAsciiFail("xn--ypb5875khz9y.xn--0kb682l", true); } // [B3, B5, B6, V7]
4930test { try toUnicodeFail("xn--ypb717jrx2o7v94a.xn--0kb660ka35v"); } // [B1, B3, C1, C2, V7]12014test { try toUnicodeFail("xn--ypb717jrx2o7v94a.xn--0kb660ka35v"); } // [B1, B3, C1, C2, V7]
12015test { try toAsciiFail("xn--ypb717jrx2o7v94a.xn--0kb660ka35v", false); } // [B1, B3, C1, C2, V7]
12016test { try toAsciiFail("xn--ypb717jrx2o7v94a.xn--0kb660ka35v", true); } // [B1, B3, C1, C2, V7]
4931test { try toUnicodeFail("\xe2\x89\xae\xef\xbc\x8e\xe1\x9e\xb5\xe0\xa1\x95\xf0\x90\xab\x94"); } // [B1]12017test { try toUnicodeFail("\xe2\x89\xae\xef\xbc\x8e\xe1\x9e\xb5\xe0\xa1\x95\xf0\x90\xab\x94"); } // [B1]
12018test { try toAsciiFail("\xe2\x89\xae\xef\xbc\x8e\xe1\x9e\xb5\xe0\xa1\x95\xf0\x90\xab\x94", false); } // [B1]
12019test { try toAsciiFail("\xe2\x89\xae\xef\xbc\x8e\xe1\x9e\xb5\xe0\xa1\x95\xf0\x90\xab\x94", true); } // [B1]
4932test { try toUnicodeFail("<\xcc\xb8\xef\xbc\x8e\xe1\x9e\xb5\xe0\xa1\x95\xf0\x90\xab\x94"); } // [B1]12020test { try toUnicodeFail("<\xcc\xb8\xef\xbc\x8e\xe1\x9e\xb5\xe0\xa1\x95\xf0\x90\xab\x94"); } // [B1]
12021test { try toAsciiFail("<\xcc\xb8\xef\xbc\x8e\xe1\x9e\xb5\xe0\xa1\x95\xf0\x90\xab\x94", false); } // [B1]
12022test { try toAsciiFail("<\xcc\xb8\xef\xbc\x8e\xe1\x9e\xb5\xe0\xa1\x95\xf0\x90\xab\x94", true); } // [B1]
4933test { try toUnicodeFail("\xe2\x89\xae.\xe1\x9e\xb5\xe0\xa1\x95\xf0\x90\xab\x94"); } // [B1]12023test { try toUnicodeFail("\xe2\x89\xae.\xe1\x9e\xb5\xe0\xa1\x95\xf0\x90\xab\x94"); } // [B1]
12024test { try toAsciiFail("\xe2\x89\xae.\xe1\x9e\xb5\xe0\xa1\x95\xf0\x90\xab\x94", false); } // [B1]
12025test { try toAsciiFail("\xe2\x89\xae.\xe1\x9e\xb5\xe0\xa1\x95\xf0\x90\xab\x94", true); } // [B1]
4934test { try toUnicodeFail("<\xcc\xb8.\xe1\x9e\xb5\xe0\xa1\x95\xf0\x90\xab\x94"); } // [B1]12026test { try toUnicodeFail("<\xcc\xb8.\xe1\x9e\xb5\xe0\xa1\x95\xf0\x90\xab\x94"); } // [B1]
12027test { try toAsciiFail("<\xcc\xb8.\xe1\x9e\xb5\xe0\xa1\x95\xf0\x90\xab\x94", false); } // [B1]
12028test { try toAsciiFail("<\xcc\xb8.\xe1\x9e\xb5\xe0\xa1\x95\xf0\x90\xab\x94", true); } // [B1]
4935test { try toUnicodeFail("xn--gdh.xn--kwb4643k"); } // [B1]12029test { try toUnicodeFail("xn--gdh.xn--kwb4643k"); } // [B1]
12030test { try toAsciiFail("xn--gdh.xn--kwb4643k", false); } // [B1]
12031test { try toAsciiFail("xn--gdh.xn--kwb4643k", true); } // [B1]
4936test { try toUnicodeFail("xn--gdh.xn--kwb589e217p"); } // [B1, V6, V7]12032test { try toUnicodeFail("xn--gdh.xn--kwb589e217p"); } // [B1, V6, V7]
12033test { try toAsciiFail("xn--gdh.xn--kwb589e217p", false); } // [B1, V6, V7]
12034test { try toAsciiFail("xn--gdh.xn--kwb589e217p", true); } // [B1, V6, V7]
4937test { try toAsciiPass("\xf0\x90\xa9\x97\xe2\x80\x8d\xef\xbd\xa1\xe1\x82\xa9\xe1\x82\xb5", "xn--pt9c.xn--0kjya", true); }12035test { try toAsciiPass("\xf0\x90\xa9\x97\xe2\x80\x8d\xef\xbd\xa1\xe1\x82\xa9\xe1\x82\xb5", "xn--pt9c.xn--0kjya", true); }
4938test { try toUnicodeFail("\xf0\x90\xa9\x97\xe2\x80\x8d\xef\xbd\xa1\xe1\x82\xa9\xe1\x82\xb5"); } // [B3, C2]12036test { try toUnicodeFail("\xf0\x90\xa9\x97\xe2\x80\x8d\xef\xbd\xa1\xe1\x82\xa9\xe1\x82\xb5"); } // [B3, C2]
12037test { try toAsciiFail("\xf0\x90\xa9\x97\xe2\x80\x8d\xef\xbd\xa1\xe1\x82\xa9\xe1\x82\xb5", false); } // [B3, C2]
4939test { try toAsciiPass("\xf0\x90\xa9\x97\xe2\x80\x8d\xe3\x80\x82\xe1\x82\xa9\xe1\x82\xb5", "xn--pt9c.xn--0kjya", true); }12038test { try toAsciiPass("\xf0\x90\xa9\x97\xe2\x80\x8d\xe3\x80\x82\xe1\x82\xa9\xe1\x82\xb5", "xn--pt9c.xn--0kjya", true); }
4940test { try toUnicodeFail("\xf0\x90\xa9\x97\xe2\x80\x8d\xe3\x80\x82\xe1\x82\xa9\xe1\x82\xb5"); } // [B3, C2]12039test { try toUnicodeFail("\xf0\x90\xa9\x97\xe2\x80\x8d\xe3\x80\x82\xe1\x82\xa9\xe1\x82\xb5"); } // [B3, C2]
12040test { try toAsciiFail("\xf0\x90\xa9\x97\xe2\x80\x8d\xe3\x80\x82\xe1\x82\xa9\xe1\x82\xb5", false); } // [B3, C2]
4941test { try toAsciiPass("\xf0\x90\xa9\x97\xe2\x80\x8d\xe3\x80\x82\xe2\xb4\x89\xe2\xb4\x95", "xn--pt9c.xn--0kjya", true); }12041test { try toAsciiPass("\xf0\x90\xa9\x97\xe2\x80\x8d\xe3\x80\x82\xe2\xb4\x89\xe2\xb4\x95", "xn--pt9c.xn--0kjya", true); }
4942test { try toUnicodeFail("\xf0\x90\xa9\x97\xe2\x80\x8d\xe3\x80\x82\xe2\xb4\x89\xe2\xb4\x95"); } // [B3, C2]12042test { try toUnicodeFail("\xf0\x90\xa9\x97\xe2\x80\x8d\xe3\x80\x82\xe2\xb4\x89\xe2\xb4\x95"); } // [B3, C2]
12043test { try toAsciiFail("\xf0\x90\xa9\x97\xe2\x80\x8d\xe3\x80\x82\xe2\xb4\x89\xe2\xb4\x95", false); } // [B3, C2]
4943test { try toAsciiPass("\xf0\x90\xa9\x97\xe2\x80\x8d\xe3\x80\x82\xe1\x82\xa9\xe2\xb4\x95", "xn--pt9c.xn--0kjya", true); }12044test { try toAsciiPass("\xf0\x90\xa9\x97\xe2\x80\x8d\xe3\x80\x82\xe1\x82\xa9\xe2\xb4\x95", "xn--pt9c.xn--0kjya", true); }
4944test { try toUnicodeFail("\xf0\x90\xa9\x97\xe2\x80\x8d\xe3\x80\x82\xe1\x82\xa9\xe2\xb4\x95"); } // [B3, C2]12045test { try toUnicodeFail("\xf0\x90\xa9\x97\xe2\x80\x8d\xe3\x80\x82\xe1\x82\xa9\xe2\xb4\x95"); } // [B3, C2]
12046test { try toAsciiFail("\xf0\x90\xa9\x97\xe2\x80\x8d\xe3\x80\x82\xe1\x82\xa9\xe2\xb4\x95", false); } // [B3, C2]
4945test { try toUnicodePass("xn--pt9c.xn--0kjya", "\xf0\x90\xa9\x97.\xe2\xb4\x89\xe2\xb4\x95"); }12047test { try toUnicodePass("xn--pt9c.xn--0kjya", "\xf0\x90\xa9\x97.\xe2\xb4\x89\xe2\xb4\x95"); }
4946test { try toAsciiPass("xn--pt9c.xn--0kjya", "xn--pt9c.xn--0kjya", false); }12048test { try toAsciiPass("xn--pt9c.xn--0kjya", "xn--pt9c.xn--0kjya", false); }
4947test { try toAsciiPass("xn--pt9c.xn--0kjya", "xn--pt9c.xn--0kjya", true); }12049test { try toAsciiPass("xn--pt9c.xn--0kjya", "xn--pt9c.xn--0kjya", true); }
...@@ -4955,114 +12057,326 @@ test { try toUnicodePass("\xf0\x90\xa9\x97.\xe1\x82\xa9\xe2\xb4\x95", "\xf0\x90\...@@ -4955,114 +12057,326 @@ test { try toUnicodePass("\xf0\x90\xa9\x97.\xe1\x82\xa9\xe2\xb4\x95", "\xf0\x90\
4955test { try toAsciiPass("\xf0\x90\xa9\x97.\xe1\x82\xa9\xe2\xb4\x95", "xn--pt9c.xn--0kjya", false); }12057test { try toAsciiPass("\xf0\x90\xa9\x97.\xe1\x82\xa9\xe2\xb4\x95", "xn--pt9c.xn--0kjya", false); }
4956test { try toAsciiPass("\xf0\x90\xa9\x97.\xe1\x82\xa9\xe2\xb4\x95", "xn--pt9c.xn--0kjya", true); }12058test { try toAsciiPass("\xf0\x90\xa9\x97.\xe1\x82\xa9\xe2\xb4\x95", "xn--pt9c.xn--0kjya", true); }
4957test { try toUnicodeFail("xn--1ug4933g.xn--0kjya"); } // [B3, C2]12059test { try toUnicodeFail("xn--1ug4933g.xn--0kjya"); } // [B3, C2]
12060test { try toAsciiFail("xn--1ug4933g.xn--0kjya", false); } // [B3, C2]
12061test { try toAsciiFail("xn--1ug4933g.xn--0kjya", true); } // [B3, C2]
4958test { try toAsciiPass("\xf0\x90\xa9\x97\xe2\x80\x8d\xef\xbd\xa1\xe2\xb4\x89\xe2\xb4\x95", "xn--pt9c.xn--0kjya", true); }12062test { try toAsciiPass("\xf0\x90\xa9\x97\xe2\x80\x8d\xef\xbd\xa1\xe2\xb4\x89\xe2\xb4\x95", "xn--pt9c.xn--0kjya", true); }
4959test { try toUnicodeFail("\xf0\x90\xa9\x97\xe2\x80\x8d\xef\xbd\xa1\xe2\xb4\x89\xe2\xb4\x95"); } // [B3, C2]12063test { try toUnicodeFail("\xf0\x90\xa9\x97\xe2\x80\x8d\xef\xbd\xa1\xe2\xb4\x89\xe2\xb4\x95"); } // [B3, C2]
12064test { try toAsciiFail("\xf0\x90\xa9\x97\xe2\x80\x8d\xef\xbd\xa1\xe2\xb4\x89\xe2\xb4\x95", false); } // [B3, C2]
4960test { try toAsciiPass("\xf0\x90\xa9\x97\xe2\x80\x8d\xef\xbd\xa1\xe1\x82\xa9\xe2\xb4\x95", "xn--pt9c.xn--0kjya", true); }12065test { try toAsciiPass("\xf0\x90\xa9\x97\xe2\x80\x8d\xef\xbd\xa1\xe1\x82\xa9\xe2\xb4\x95", "xn--pt9c.xn--0kjya", true); }
4961test { try toUnicodeFail("\xf0\x90\xa9\x97\xe2\x80\x8d\xef\xbd\xa1\xe1\x82\xa9\xe2\xb4\x95"); } // [B3, C2]12066test { try toUnicodeFail("\xf0\x90\xa9\x97\xe2\x80\x8d\xef\xbd\xa1\xe1\x82\xa9\xe2\xb4\x95"); } // [B3, C2]
12067test { try toAsciiFail("\xf0\x90\xa9\x97\xe2\x80\x8d\xef\xbd\xa1\xe1\x82\xa9\xe2\xb4\x95", false); } // [B3, C2]
4962test { try toUnicodeFail("xn--pt9c.xn--hnd666l"); } // [V7]12068test { try toUnicodeFail("xn--pt9c.xn--hnd666l"); } // [V7]
12069test { try toAsciiFail("xn--pt9c.xn--hnd666l", false); } // [V7]
12070test { try toAsciiFail("xn--pt9c.xn--hnd666l", true); } // [V7]
4963test { try toUnicodeFail("xn--1ug4933g.xn--hnd666l"); } // [B3, C2, V7]12071test { try toUnicodeFail("xn--1ug4933g.xn--hnd666l"); } // [B3, C2, V7]
12072test { try toAsciiFail("xn--1ug4933g.xn--hnd666l", false); } // [B3, C2, V7]
12073test { try toAsciiFail("xn--1ug4933g.xn--hnd666l", true); } // [B3, C2, V7]
4964test { try toUnicodeFail("xn--pt9c.xn--hndy"); } // [V7]12074test { try toUnicodeFail("xn--pt9c.xn--hndy"); } // [V7]
12075test { try toAsciiFail("xn--pt9c.xn--hndy", false); } // [V7]
12076test { try toAsciiFail("xn--pt9c.xn--hndy", true); } // [V7]
4965test { try toUnicodeFail("xn--1ug4933g.xn--hndy"); } // [B3, C2, V7]12077test { try toUnicodeFail("xn--1ug4933g.xn--hndy"); } // [B3, C2, V7]
12078test { try toAsciiFail("xn--1ug4933g.xn--hndy", false); } // [B3, C2, V7]
12079test { try toAsciiFail("xn--1ug4933g.xn--hndy", true); } // [B3, C2, V7]
4966test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8c\xe3\x84\xa4\xef\xbc\x8e\xcc\xae\xf3\x95\xa8\x91\xe0\xa7\x82"); } // [C1, V6, V7]12080test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8c\xe3\x84\xa4\xef\xbc\x8e\xcc\xae\xf3\x95\xa8\x91\xe0\xa7\x82"); } // [C1, V6, V7]
12081test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8c\xe3\x84\xa4\xef\xbc\x8e\xcc\xae\xf3\x95\xa8\x91\xe0\xa7\x82", false); } // [C1, V6, V7]
12082test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8c\xe3\x84\xa4\xef\xbc\x8e\xcc\xae\xf3\x95\xa8\x91\xe0\xa7\x82", true); } // [V6, V7]
4967test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8c\xe3\x84\xa4.\xcc\xae\xf3\x95\xa8\x91\xe0\xa7\x82"); } // [C1, V6, V7]12083test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8c\xe3\x84\xa4.\xcc\xae\xf3\x95\xa8\x91\xe0\xa7\x82"); } // [C1, V6, V7]
12084test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8c\xe3\x84\xa4.\xcc\xae\xf3\x95\xa8\x91\xe0\xa7\x82", false); } // [C1, V6, V7]
12085test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8c\xe3\x84\xa4.\xcc\xae\xf3\x95\xa8\x91\xe0\xa7\x82", true); } // [V6, V7]
4968test { try toUnicodeFail("xn--1fk.xn--vta284a9o563a"); } // [V6, V7]12086test { try toUnicodeFail("xn--1fk.xn--vta284a9o563a"); } // [V6, V7]
12087test { try toAsciiFail("xn--1fk.xn--vta284a9o563a", false); } // [V6, V7]
12088test { try toAsciiFail("xn--1fk.xn--vta284a9o563a", true); } // [V6, V7]
4969test { try toUnicodeFail("xn--0uga242k.xn--vta284a9o563a"); } // [C1, V6, V7]12089test { try toUnicodeFail("xn--0uga242k.xn--vta284a9o563a"); } // [C1, V6, V7]
12090test { try toAsciiFail("xn--0uga242k.xn--vta284a9o563a", false); } // [C1, V6, V7]
12091test { try toAsciiFail("xn--0uga242k.xn--vta284a9o563a", true); } // [C1, V6, V7]
4970test { try toUnicodeFail("\xf0\x90\x8b\xbb\xef\xbd\xa1-\xe2\x80\x8c\xf0\x90\xab\x84\xe1\x82\xb7"); } // [B1, C1, V3]12092test { try toUnicodeFail("\xf0\x90\x8b\xbb\xef\xbd\xa1-\xe2\x80\x8c\xf0\x90\xab\x84\xe1\x82\xb7"); } // [B1, C1, V3]
12093test { try toAsciiFail("\xf0\x90\x8b\xbb\xef\xbd\xa1-\xe2\x80\x8c\xf0\x90\xab\x84\xe1\x82\xb7", false); } // [B1, C1, V3]
12094test { try toAsciiFail("\xf0\x90\x8b\xbb\xef\xbd\xa1-\xe2\x80\x8c\xf0\x90\xab\x84\xe1\x82\xb7", true); } // [B1, V3]
4971test { try toUnicodeFail("\xf0\x90\x8b\xbb\xe3\x80\x82-\xe2\x80\x8c\xf0\x90\xab\x84\xe1\x82\xb7"); } // [B1, C1, V3]12095test { try toUnicodeFail("\xf0\x90\x8b\xbb\xe3\x80\x82-\xe2\x80\x8c\xf0\x90\xab\x84\xe1\x82\xb7"); } // [B1, C1, V3]
12096test { try toAsciiFail("\xf0\x90\x8b\xbb\xe3\x80\x82-\xe2\x80\x8c\xf0\x90\xab\x84\xe1\x82\xb7", false); } // [B1, C1, V3]
12097test { try toAsciiFail("\xf0\x90\x8b\xbb\xe3\x80\x82-\xe2\x80\x8c\xf0\x90\xab\x84\xe1\x82\xb7", true); } // [B1, V3]
4972test { try toUnicodeFail("\xf0\x90\x8b\xbb\xe3\x80\x82-\xe2\x80\x8c\xf0\x90\xab\x84\xe2\xb4\x97"); } // [B1, C1, V3]12098test { try toUnicodeFail("\xf0\x90\x8b\xbb\xe3\x80\x82-\xe2\x80\x8c\xf0\x90\xab\x84\xe2\xb4\x97"); } // [B1, C1, V3]
12099test { try toAsciiFail("\xf0\x90\x8b\xbb\xe3\x80\x82-\xe2\x80\x8c\xf0\x90\xab\x84\xe2\xb4\x97", false); } // [B1, C1, V3]
12100test { try toAsciiFail("\xf0\x90\x8b\xbb\xe3\x80\x82-\xe2\x80\x8c\xf0\x90\xab\x84\xe2\xb4\x97", true); } // [B1, V3]
4973test { try toUnicodeFail("xn--v97c.xn----lws0526f"); } // [B1, V3]12101test { try toUnicodeFail("xn--v97c.xn----lws0526f"); } // [B1, V3]
12102test { try toAsciiFail("xn--v97c.xn----lws0526f", false); } // [B1, V3]
12103test { try toAsciiFail("xn--v97c.xn----lws0526f", true); } // [B1, V3]
4974test { try toUnicodeFail("xn--v97c.xn----sgnv20du99s"); } // [B1, C1, V3]12104test { try toUnicodeFail("xn--v97c.xn----sgnv20du99s"); } // [B1, C1, V3]
12105test { try toAsciiFail("xn--v97c.xn----sgnv20du99s", false); } // [B1, C1, V3]
12106test { try toAsciiFail("xn--v97c.xn----sgnv20du99s", true); } // [B1, C1, V3]
4975test { try toUnicodeFail("\xf0\x90\x8b\xbb\xef\xbd\xa1-\xe2\x80\x8c\xf0\x90\xab\x84\xe2\xb4\x97"); } // [B1, C1, V3]12107test { try toUnicodeFail("\xf0\x90\x8b\xbb\xef\xbd\xa1-\xe2\x80\x8c\xf0\x90\xab\x84\xe2\xb4\x97"); } // [B1, C1, V3]
12108test { try toAsciiFail("\xf0\x90\x8b\xbb\xef\xbd\xa1-\xe2\x80\x8c\xf0\x90\xab\x84\xe2\xb4\x97", false); } // [B1, C1, V3]
12109test { try toAsciiFail("\xf0\x90\x8b\xbb\xef\xbd\xa1-\xe2\x80\x8c\xf0\x90\xab\x84\xe2\xb4\x97", true); } // [B1, V3]
4976test { try toUnicodeFail("xn--v97c.xn----i1g2513q"); } // [B1, V3, V7]12110test { try toUnicodeFail("xn--v97c.xn----i1g2513q"); } // [B1, V3, V7]
12111test { try toAsciiFail("xn--v97c.xn----i1g2513q", false); } // [B1, V3, V7]
12112test { try toAsciiFail("xn--v97c.xn----i1g2513q", true); } // [B1, V3, V7]
4977test { try toUnicodeFail("xn--v97c.xn----i1g888ih12u"); } // [B1, C1, V3, V7]12113test { try toUnicodeFail("xn--v97c.xn----i1g888ih12u"); } // [B1, C1, V3, V7]
12114test { try toAsciiFail("xn--v97c.xn----i1g888ih12u", false); } // [B1, C1, V3, V7]
12115test { try toAsciiFail("xn--v97c.xn----i1g888ih12u", true); } // [B1, C1, V3, V7]
4978test { try toUnicodeFail("\xf0\x9f\x99\x91\xf0\x90\xb7\xba\xef\xbc\x8e\xe2\x89\xa0\xe2\x80\x8c"); } // [B1, C1, V7]12116test { try toUnicodeFail("\xf0\x9f\x99\x91\xf0\x90\xb7\xba\xef\xbc\x8e\xe2\x89\xa0\xe2\x80\x8c"); } // [B1, C1, V7]
12117test { try toAsciiFail("\xf0\x9f\x99\x91\xf0\x90\xb7\xba\xef\xbc\x8e\xe2\x89\xa0\xe2\x80\x8c", false); } // [B1, C1, V7]
12118test { try toAsciiFail("\xf0\x9f\x99\x91\xf0\x90\xb7\xba\xef\xbc\x8e\xe2\x89\xa0\xe2\x80\x8c", true); } // [B1, V7]
4979test { try toUnicodeFail("\xf0\x9f\x99\x91\xf0\x90\xb7\xba\xef\xbc\x8e=\xcc\xb8\xe2\x80\x8c"); } // [B1, C1, V7]12119test { try toUnicodeFail("\xf0\x9f\x99\x91\xf0\x90\xb7\xba\xef\xbc\x8e=\xcc\xb8\xe2\x80\x8c"); } // [B1, C1, V7]
12120test { try toAsciiFail("\xf0\x9f\x99\x91\xf0\x90\xb7\xba\xef\xbc\x8e=\xcc\xb8\xe2\x80\x8c", false); } // [B1, C1, V7]
12121test { try toAsciiFail("\xf0\x9f\x99\x91\xf0\x90\xb7\xba\xef\xbc\x8e=\xcc\xb8\xe2\x80\x8c", true); } // [B1, V7]
4980test { try toUnicodeFail("\xf0\x9f\x99\x91\xf0\x90\xb7\xba.\xe2\x89\xa0\xe2\x80\x8c"); } // [B1, C1, V7]12122test { try toUnicodeFail("\xf0\x9f\x99\x91\xf0\x90\xb7\xba.\xe2\x89\xa0\xe2\x80\x8c"); } // [B1, C1, V7]
12123test { try toAsciiFail("\xf0\x9f\x99\x91\xf0\x90\xb7\xba.\xe2\x89\xa0\xe2\x80\x8c", false); } // [B1, C1, V7]
12124test { try toAsciiFail("\xf0\x9f\x99\x91\xf0\x90\xb7\xba.\xe2\x89\xa0\xe2\x80\x8c", true); } // [B1, V7]
4981test { try toUnicodeFail("\xf0\x9f\x99\x91\xf0\x90\xb7\xba.=\xcc\xb8\xe2\x80\x8c"); } // [B1, C1, V7]12125test { try toUnicodeFail("\xf0\x9f\x99\x91\xf0\x90\xb7\xba.=\xcc\xb8\xe2\x80\x8c"); } // [B1, C1, V7]
12126test { try toAsciiFail("\xf0\x9f\x99\x91\xf0\x90\xb7\xba.=\xcc\xb8\xe2\x80\x8c", false); } // [B1, C1, V7]
12127test { try toAsciiFail("\xf0\x9f\x99\x91\xf0\x90\xb7\xba.=\xcc\xb8\xe2\x80\x8c", true); } // [B1, V7]
4982test { try toUnicodeFail("xn--bl0dh970b.xn--1ch"); } // [B1, V7]12128test { try toUnicodeFail("xn--bl0dh970b.xn--1ch"); } // [B1, V7]
12129test { try toAsciiFail("xn--bl0dh970b.xn--1ch", false); } // [B1, V7]
12130test { try toAsciiFail("xn--bl0dh970b.xn--1ch", true); } // [B1, V7]
4983test { try toUnicodeFail("xn--bl0dh970b.xn--0ug83g"); } // [B1, C1, V7]12131test { try toUnicodeFail("xn--bl0dh970b.xn--0ug83g"); } // [B1, C1, V7]
12132test { try toAsciiFail("xn--bl0dh970b.xn--0ug83g", false); } // [B1, C1, V7]
12133test { try toAsciiFail("xn--bl0dh970b.xn--0ug83g", true); } // [B1, C1, V7]
4984test { try toUnicodeFail("\xd9\x8c\xe1\xb3\x92\xef\xbd\xa1\xf0\x9e\xae\x9e\xe2\xb5\xbf\xe2\xa7\x8e"); } // [B1, B3, V6, V7]12134test { try toUnicodeFail("\xd9\x8c\xe1\xb3\x92\xef\xbd\xa1\xf0\x9e\xae\x9e\xe2\xb5\xbf\xe2\xa7\x8e"); } // [B1, B3, V6, V7]
12135test { try toAsciiFail("\xd9\x8c\xe1\xb3\x92\xef\xbd\xa1\xf0\x9e\xae\x9e\xe2\xb5\xbf\xe2\xa7\x8e", false); } // [B1, B3, V6, V7]
12136test { try toAsciiFail("\xd9\x8c\xe1\xb3\x92\xef\xbd\xa1\xf0\x9e\xae\x9e\xe2\xb5\xbf\xe2\xa7\x8e", true); } // [B1, B3, V6, V7]
4985test { try toUnicodeFail("\xd9\x8c\xe1\xb3\x92\xe3\x80\x82\xf0\x9e\xae\x9e\xe2\xb5\xbf\xe2\xa7\x8e"); } // [B1, B3, V6, V7]12137test { try toUnicodeFail("\xd9\x8c\xe1\xb3\x92\xe3\x80\x82\xf0\x9e\xae\x9e\xe2\xb5\xbf\xe2\xa7\x8e"); } // [B1, B3, V6, V7]
12138test { try toAsciiFail("\xd9\x8c\xe1\xb3\x92\xe3\x80\x82\xf0\x9e\xae\x9e\xe2\xb5\xbf\xe2\xa7\x8e", false); } // [B1, B3, V6, V7]
12139test { try toAsciiFail("\xd9\x8c\xe1\xb3\x92\xe3\x80\x82\xf0\x9e\xae\x9e\xe2\xb5\xbf\xe2\xa7\x8e", true); } // [B1, B3, V6, V7]
4986test { try toUnicodeFail("xn--ohb646i.xn--ewi38jf765c"); } // [B1, B3, V6, V7]12140test { try toUnicodeFail("xn--ohb646i.xn--ewi38jf765c"); } // [B1, B3, V6, V7]
12141test { try toAsciiFail("xn--ohb646i.xn--ewi38jf765c", false); } // [B1, B3, V6, V7]
12142test { try toAsciiFail("xn--ohb646i.xn--ewi38jf765c", true); } // [B1, B3, V6, V7]
4987test { try toUnicodeFail("\xe1\x82\xb4\xf0\x9d\xa8\xa8\xe2\x82\x83\xf3\xa0\x81\xa6\xef\xbc\x8e\xf0\x9d\x9f\xb3\xf0\x91\x82\xb9\xe0\xae\x82"); } // [V7]12143test { try toUnicodeFail("\xe1\x82\xb4\xf0\x9d\xa8\xa8\xe2\x82\x83\xf3\xa0\x81\xa6\xef\xbc\x8e\xf0\x9d\x9f\xb3\xf0\x91\x82\xb9\xe0\xae\x82"); } // [V7]
12144test { try toAsciiFail("\xe1\x82\xb4\xf0\x9d\xa8\xa8\xe2\x82\x83\xf3\xa0\x81\xa6\xef\xbc\x8e\xf0\x9d\x9f\xb3\xf0\x91\x82\xb9\xe0\xae\x82", false); } // [V7]
12145test { try toAsciiFail("\xe1\x82\xb4\xf0\x9d\xa8\xa8\xe2\x82\x83\xf3\xa0\x81\xa6\xef\xbc\x8e\xf0\x9d\x9f\xb3\xf0\x91\x82\xb9\xe0\xae\x82", true); } // [V7]
4988test { try toUnicodeFail("\xe1\x82\xb4\xf0\x9d\xa8\xa83\xf3\xa0\x81\xa6.7\xf0\x91\x82\xb9\xe0\xae\x82"); } // [V7]12146test { try toUnicodeFail("\xe1\x82\xb4\xf0\x9d\xa8\xa83\xf3\xa0\x81\xa6.7\xf0\x91\x82\xb9\xe0\xae\x82"); } // [V7]
12147test { try toAsciiFail("\xe1\x82\xb4\xf0\x9d\xa8\xa83\xf3\xa0\x81\xa6.7\xf0\x91\x82\xb9\xe0\xae\x82", false); } // [V7]
12148test { try toAsciiFail("\xe1\x82\xb4\xf0\x9d\xa8\xa83\xf3\xa0\x81\xa6.7\xf0\x91\x82\xb9\xe0\xae\x82", true); } // [V7]
4989test { try toUnicodeFail("\xe2\xb4\x94\xf0\x9d\xa8\xa83\xf3\xa0\x81\xa6.7\xf0\x91\x82\xb9\xe0\xae\x82"); } // [V7]12149test { try toUnicodeFail("\xe2\xb4\x94\xf0\x9d\xa8\xa83\xf3\xa0\x81\xa6.7\xf0\x91\x82\xb9\xe0\xae\x82"); } // [V7]
12150test { try toAsciiFail("\xe2\xb4\x94\xf0\x9d\xa8\xa83\xf3\xa0\x81\xa6.7\xf0\x91\x82\xb9\xe0\xae\x82", false); } // [V7]
12151test { try toAsciiFail("\xe2\xb4\x94\xf0\x9d\xa8\xa83\xf3\xa0\x81\xa6.7\xf0\x91\x82\xb9\xe0\xae\x82", true); } // [V7]
4990test { try toUnicodeFail("xn--3-ews6985n35s3g.xn--7-cve6271r"); } // [V7]12152test { try toUnicodeFail("xn--3-ews6985n35s3g.xn--7-cve6271r"); } // [V7]
12153test { try toAsciiFail("xn--3-ews6985n35s3g.xn--7-cve6271r", false); } // [V7]
12154test { try toAsciiFail("xn--3-ews6985n35s3g.xn--7-cve6271r", true); } // [V7]
4991test { try toUnicodeFail("\xe2\xb4\x94\xf0\x9d\xa8\xa8\xe2\x82\x83\xf3\xa0\x81\xa6\xef\xbc\x8e\xf0\x9d\x9f\xb3\xf0\x91\x82\xb9\xe0\xae\x82"); } // [V7]12155test { try toUnicodeFail("\xe2\xb4\x94\xf0\x9d\xa8\xa8\xe2\x82\x83\xf3\xa0\x81\xa6\xef\xbc\x8e\xf0\x9d\x9f\xb3\xf0\x91\x82\xb9\xe0\xae\x82"); } // [V7]
12156test { try toAsciiFail("\xe2\xb4\x94\xf0\x9d\xa8\xa8\xe2\x82\x83\xf3\xa0\x81\xa6\xef\xbc\x8e\xf0\x9d\x9f\xb3\xf0\x91\x82\xb9\xe0\xae\x82", false); } // [V7]
12157test { try toAsciiFail("\xe2\xb4\x94\xf0\x9d\xa8\xa8\xe2\x82\x83\xf3\xa0\x81\xa6\xef\xbc\x8e\xf0\x9d\x9f\xb3\xf0\x91\x82\xb9\xe0\xae\x82", true); } // [V7]
4992test { try toUnicodeFail("xn--3-b1g83426a35t0g.xn--7-cve6271r"); } // [V7]12158test { try toUnicodeFail("xn--3-b1g83426a35t0g.xn--7-cve6271r"); } // [V7]
12159test { try toAsciiFail("xn--3-b1g83426a35t0g.xn--7-cve6271r", false); } // [V7]
12160test { try toAsciiFail("xn--3-b1g83426a35t0g.xn--7-cve6271r", true); } // [V7]
4993test { try toUnicodeFail("\xe4\x8f\x88\xe2\x80\x8c\xe3\x80\x82\xe2\x80\x8c\xe2\x92\x88\xf1\xb1\xa2\x95"); } // [C1, V7]12161test { try toUnicodeFail("\xe4\x8f\x88\xe2\x80\x8c\xe3\x80\x82\xe2\x80\x8c\xe2\x92\x88\xf1\xb1\xa2\x95"); } // [C1, V7]
12162test { try toAsciiFail("\xe4\x8f\x88\xe2\x80\x8c\xe3\x80\x82\xe2\x80\x8c\xe2\x92\x88\xf1\xb1\xa2\x95", false); } // [C1, V7]
12163test { try toAsciiFail("\xe4\x8f\x88\xe2\x80\x8c\xe3\x80\x82\xe2\x80\x8c\xe2\x92\x88\xf1\xb1\xa2\x95", true); } // [V7]
4994test { try toUnicodeFail("\xe4\x8f\x88\xe2\x80\x8c\xe3\x80\x82\xe2\x80\x8c1.\xf1\xb1\xa2\x95"); } // [C1, V7]12164test { try toUnicodeFail("\xe4\x8f\x88\xe2\x80\x8c\xe3\x80\x82\xe2\x80\x8c1.\xf1\xb1\xa2\x95"); } // [C1, V7]
12165test { try toAsciiFail("\xe4\x8f\x88\xe2\x80\x8c\xe3\x80\x82\xe2\x80\x8c1.\xf1\xb1\xa2\x95", false); } // [C1, V7]
12166test { try toAsciiFail("\xe4\x8f\x88\xe2\x80\x8c\xe3\x80\x82\xe2\x80\x8c1.\xf1\xb1\xa2\x95", true); } // [V7]
4995test { try toUnicodeFail("xn--eco.1.xn--ms39a"); } // [V7]12167test { try toUnicodeFail("xn--eco.1.xn--ms39a"); } // [V7]
12168test { try toAsciiFail("xn--eco.1.xn--ms39a", false); } // [V7]
12169test { try toAsciiFail("xn--eco.1.xn--ms39a", true); } // [V7]
4996test { try toUnicodeFail("xn--0ug491l.xn--1-rgn.xn--ms39a"); } // [C1, V7]12170test { try toUnicodeFail("xn--0ug491l.xn--1-rgn.xn--ms39a"); } // [C1, V7]
12171test { try toAsciiFail("xn--0ug491l.xn--1-rgn.xn--ms39a", false); } // [C1, V7]
12172test { try toAsciiFail("xn--0ug491l.xn--1-rgn.xn--ms39a", true); } // [C1, V7]
4997test { try toUnicodeFail("xn--eco.xn--tsh21126d"); } // [V7]12173test { try toUnicodeFail("xn--eco.xn--tsh21126d"); } // [V7]
12174test { try toAsciiFail("xn--eco.xn--tsh21126d", false); } // [V7]
12175test { try toAsciiFail("xn--eco.xn--tsh21126d", true); } // [V7]
4998test { try toUnicodeFail("xn--0ug491l.xn--0ug88oot66q"); } // [C1, V7]12176test { try toUnicodeFail("xn--0ug491l.xn--0ug88oot66q"); } // [C1, V7]
12177test { try toAsciiFail("xn--0ug491l.xn--0ug88oot66q", false); } // [C1, V7]
12178test { try toAsciiFail("xn--0ug491l.xn--0ug88oot66q", true); } // [C1, V7]
4999test { try toUnicodeFail("\xef\xbc\x91\xea\xab\xb6\xc3\x9f\xf0\x91\xb2\xa5\xef\xbd\xa1\xe1\xb7\x98"); } // [V6]12179test { try toUnicodeFail("\xef\xbc\x91\xea\xab\xb6\xc3\x9f\xf0\x91\xb2\xa5\xef\xbd\xa1\xe1\xb7\x98"); } // [V6]
12180test { try toAsciiFail("\xef\xbc\x91\xea\xab\xb6\xc3\x9f\xf0\x91\xb2\xa5\xef\xbd\xa1\xe1\xb7\x98", false); } // [V6]
12181test { try toAsciiFail("\xef\xbc\x91\xea\xab\xb6\xc3\x9f\xf0\x91\xb2\xa5\xef\xbd\xa1\xe1\xb7\x98", true); } // [V6]
5000test { try toUnicodeFail("1\xea\xab\xb6\xc3\x9f\xf0\x91\xb2\xa5\xe3\x80\x82\xe1\xb7\x98"); } // [V6]12182test { try toUnicodeFail("1\xea\xab\xb6\xc3\x9f\xf0\x91\xb2\xa5\xe3\x80\x82\xe1\xb7\x98"); } // [V6]
12183test { try toAsciiFail("1\xea\xab\xb6\xc3\x9f\xf0\x91\xb2\xa5\xe3\x80\x82\xe1\xb7\x98", false); } // [V6]
12184test { try toAsciiFail("1\xea\xab\xb6\xc3\x9f\xf0\x91\xb2\xa5\xe3\x80\x82\xe1\xb7\x98", true); } // [V6]
5001test { try toUnicodeFail("1\xea\xab\xb6SS\xf0\x91\xb2\xa5\xe3\x80\x82\xe1\xb7\x98"); } // [V6]12185test { try toUnicodeFail("1\xea\xab\xb6SS\xf0\x91\xb2\xa5\xe3\x80\x82\xe1\xb7\x98"); } // [V6]
12186test { try toAsciiFail("1\xea\xab\xb6SS\xf0\x91\xb2\xa5\xe3\x80\x82\xe1\xb7\x98", false); } // [V6]
12187test { try toAsciiFail("1\xea\xab\xb6SS\xf0\x91\xb2\xa5\xe3\x80\x82\xe1\xb7\x98", true); } // [V6]
5002test { try toUnicodeFail("1\xea\xab\xb6ss\xf0\x91\xb2\xa5\xe3\x80\x82\xe1\xb7\x98"); } // [V6]12188test { try toUnicodeFail("1\xea\xab\xb6ss\xf0\x91\xb2\xa5\xe3\x80\x82\xe1\xb7\x98"); } // [V6]
12189test { try toAsciiFail("1\xea\xab\xb6ss\xf0\x91\xb2\xa5\xe3\x80\x82\xe1\xb7\x98", false); } // [V6]
12190test { try toAsciiFail("1\xea\xab\xb6ss\xf0\x91\xb2\xa5\xe3\x80\x82\xe1\xb7\x98", true); } // [V6]
5003test { try toUnicodeFail("xn--1ss-ir6ln166b.xn--weg"); } // [V6]12191test { try toUnicodeFail("xn--1ss-ir6ln166b.xn--weg"); } // [V6]
12192test { try toAsciiFail("xn--1ss-ir6ln166b.xn--weg", false); } // [V6]
12193test { try toAsciiFail("xn--1ss-ir6ln166b.xn--weg", true); } // [V6]
5004test { try toUnicodeFail("xn--1-qfa2471kdb0d.xn--weg"); } // [V6]12194test { try toUnicodeFail("xn--1-qfa2471kdb0d.xn--weg"); } // [V6]
12195test { try toAsciiFail("xn--1-qfa2471kdb0d.xn--weg", false); } // [V6]
12196test { try toAsciiFail("xn--1-qfa2471kdb0d.xn--weg", true); } // [V6]
5005test { try toUnicodeFail("\xef\xbc\x91\xea\xab\xb6SS\xf0\x91\xb2\xa5\xef\xbd\xa1\xe1\xb7\x98"); } // [V6]12197test { try toUnicodeFail("\xef\xbc\x91\xea\xab\xb6SS\xf0\x91\xb2\xa5\xef\xbd\xa1\xe1\xb7\x98"); } // [V6]
12198test { try toAsciiFail("\xef\xbc\x91\xea\xab\xb6SS\xf0\x91\xb2\xa5\xef\xbd\xa1\xe1\xb7\x98", false); } // [V6]
12199test { try toAsciiFail("\xef\xbc\x91\xea\xab\xb6SS\xf0\x91\xb2\xa5\xef\xbd\xa1\xe1\xb7\x98", true); } // [V6]
5006test { try toUnicodeFail("\xef\xbc\x91\xea\xab\xb6ss\xf0\x91\xb2\xa5\xef\xbd\xa1\xe1\xb7\x98"); } // [V6]12200test { try toUnicodeFail("\xef\xbc\x91\xea\xab\xb6ss\xf0\x91\xb2\xa5\xef\xbd\xa1\xe1\xb7\x98"); } // [V6]
12201test { try toAsciiFail("\xef\xbc\x91\xea\xab\xb6ss\xf0\x91\xb2\xa5\xef\xbd\xa1\xe1\xb7\x98", false); } // [V6]
12202test { try toAsciiFail("\xef\xbc\x91\xea\xab\xb6ss\xf0\x91\xb2\xa5\xef\xbd\xa1\xe1\xb7\x98", true); } // [V6]
5007test { try toUnicodeFail("1\xea\xab\xb6Ss\xf0\x91\xb2\xa5\xe3\x80\x82\xe1\xb7\x98"); } // [V6]12203test { try toUnicodeFail("1\xea\xab\xb6Ss\xf0\x91\xb2\xa5\xe3\x80\x82\xe1\xb7\x98"); } // [V6]
12204test { try toAsciiFail("1\xea\xab\xb6Ss\xf0\x91\xb2\xa5\xe3\x80\x82\xe1\xb7\x98", false); } // [V6]
12205test { try toAsciiFail("1\xea\xab\xb6Ss\xf0\x91\xb2\xa5\xe3\x80\x82\xe1\xb7\x98", true); } // [V6]
5008test { try toUnicodeFail("\xef\xbc\x91\xea\xab\xb6Ss\xf0\x91\xb2\xa5\xef\xbd\xa1\xe1\xb7\x98"); } // [V6]12206test { try toUnicodeFail("\xef\xbc\x91\xea\xab\xb6Ss\xf0\x91\xb2\xa5\xef\xbd\xa1\xe1\xb7\x98"); } // [V6]
12207test { try toAsciiFail("\xef\xbc\x91\xea\xab\xb6Ss\xf0\x91\xb2\xa5\xef\xbd\xa1\xe1\xb7\x98", false); } // [V6]
12208test { try toAsciiFail("\xef\xbc\x91\xea\xab\xb6Ss\xf0\x91\xb2\xa5\xef\xbd\xa1\xe1\xb7\x98", true); } // [V6]
5009test { try toUnicodeFail("\xe2\x80\x8d\xf1\xab\xb6\xa9\xf0\x9e\xaa\xaf\xe0\xb3\x8d\xef\xbd\xa1\xdd\xbc\xe2\x92\x88"); } // [B1, C2, V7]12209test { try toUnicodeFail("\xe2\x80\x8d\xf1\xab\xb6\xa9\xf0\x9e\xaa\xaf\xe0\xb3\x8d\xef\xbd\xa1\xdd\xbc\xe2\x92\x88"); } // [B1, C2, V7]
12210test { try toAsciiFail("\xe2\x80\x8d\xf1\xab\xb6\xa9\xf0\x9e\xaa\xaf\xe0\xb3\x8d\xef\xbd\xa1\xdd\xbc\xe2\x92\x88", false); } // [B1, C2, V7]
12211test { try toAsciiFail("\xe2\x80\x8d\xf1\xab\xb6\xa9\xf0\x9e\xaa\xaf\xe0\xb3\x8d\xef\xbd\xa1\xdd\xbc\xe2\x92\x88", true); } // [B5, B6, V7]
5010test { try toUnicodeFail("\xe2\x80\x8d\xf1\xab\xb6\xa9\xf0\x9e\xaa\xaf\xe0\xb3\x8d\xe3\x80\x82\xdd\xbc1."); } // [B1, C2, V7]12212test { try toUnicodeFail("\xe2\x80\x8d\xf1\xab\xb6\xa9\xf0\x9e\xaa\xaf\xe0\xb3\x8d\xe3\x80\x82\xdd\xbc1."); } // [B1, C2, V7]
12213test { try toAsciiFail("\xe2\x80\x8d\xf1\xab\xb6\xa9\xf0\x9e\xaa\xaf\xe0\xb3\x8d\xe3\x80\x82\xdd\xbc1.", false); } // [B1, C2, V7, A4_2]
12214test { try toAsciiFail("\xe2\x80\x8d\xf1\xab\xb6\xa9\xf0\x9e\xaa\xaf\xe0\xb3\x8d\xe3\x80\x82\xdd\xbc1.", true); } // [B5, B6, V7, A4_2]
5011test { try toUnicodeFail("xn--8tc9875v5is1a.xn--1-g6c."); } // [B5, B6, V7]12215test { try toUnicodeFail("xn--8tc9875v5is1a.xn--1-g6c."); } // [B5, B6, V7]
12216test { try toAsciiFail("xn--8tc9875v5is1a.xn--1-g6c.", false); } // [B5, B6, V7, A4_2]
12217test { try toAsciiFail("xn--8tc9875v5is1a.xn--1-g6c.", true); } // [B5, B6, V7, A4_2]
5012test { try toUnicodeFail("xn--8tc969gzn94a4lm8a.xn--1-g6c."); } // [B1, C2, V7]12218test { try toUnicodeFail("xn--8tc969gzn94a4lm8a.xn--1-g6c."); } // [B1, C2, V7]
12219test { try toAsciiFail("xn--8tc969gzn94a4lm8a.xn--1-g6c.", false); } // [B1, C2, V7, A4_2]
12220test { try toAsciiFail("xn--8tc969gzn94a4lm8a.xn--1-g6c.", true); } // [B1, C2, V7, A4_2]
5013test { try toUnicodeFail("xn--8tc9875v5is1a.xn--dqb689l"); } // [B5, B6, V7]12221test { try toUnicodeFail("xn--8tc9875v5is1a.xn--dqb689l"); } // [B5, B6, V7]
12222test { try toAsciiFail("xn--8tc9875v5is1a.xn--dqb689l", false); } // [B5, B6, V7]
12223test { try toAsciiFail("xn--8tc9875v5is1a.xn--dqb689l", true); } // [B5, B6, V7]
5014test { try toUnicodeFail("xn--8tc969gzn94a4lm8a.xn--dqb689l"); } // [B1, C2, V7]12224test { try toUnicodeFail("xn--8tc969gzn94a4lm8a.xn--dqb689l"); } // [B1, C2, V7]
12225test { try toAsciiFail("xn--8tc969gzn94a4lm8a.xn--dqb689l", false); } // [B1, C2, V7]
12226test { try toAsciiFail("xn--8tc969gzn94a4lm8a.xn--dqb689l", true); } // [B1, C2, V7]
5015test { try toUnicodeFail("\xe1\xaa\xb6\xef\xbc\x8e\xf0\x9e\xa4\xb3\xf2\x93\xa2\x96\xf2\xbb\x89\x92\xdf\x97"); } // [B1, B2, V6, V7]12227test { try toUnicodeFail("\xe1\xaa\xb6\xef\xbc\x8e\xf0\x9e\xa4\xb3\xf2\x93\xa2\x96\xf2\xbb\x89\x92\xdf\x97"); } // [B1, B2, V6, V7]
12228test { try toAsciiFail("\xe1\xaa\xb6\xef\xbc\x8e\xf0\x9e\xa4\xb3\xf2\x93\xa2\x96\xf2\xbb\x89\x92\xdf\x97", false); } // [B1, B2, V6, V7]
12229test { try toAsciiFail("\xe1\xaa\xb6\xef\xbc\x8e\xf0\x9e\xa4\xb3\xf2\x93\xa2\x96\xf2\xbb\x89\x92\xdf\x97", true); } // [B1, B2, V6, V7]
5016test { try toUnicodeFail("\xe1\xaa\xb6.\xf0\x9e\xa4\xb3\xf2\x93\xa2\x96\xf2\xbb\x89\x92\xdf\x97"); } // [B1, B2, V6, V7]12230test { try toUnicodeFail("\xe1\xaa\xb6.\xf0\x9e\xa4\xb3\xf2\x93\xa2\x96\xf2\xbb\x89\x92\xdf\x97"); } // [B1, B2, V6, V7]
12231test { try toAsciiFail("\xe1\xaa\xb6.\xf0\x9e\xa4\xb3\xf2\x93\xa2\x96\xf2\xbb\x89\x92\xdf\x97", false); } // [B1, B2, V6, V7]
12232test { try toAsciiFail("\xe1\xaa\xb6.\xf0\x9e\xa4\xb3\xf2\x93\xa2\x96\xf2\xbb\x89\x92\xdf\x97", true); } // [B1, B2, V6, V7]
5017test { try toUnicodeFail("\xe1\xaa\xb6.\xf0\x9e\xa4\x91\xf2\x93\xa2\x96\xf2\xbb\x89\x92\xdf\x97"); } // [B1, B2, V6, V7]12233test { try toUnicodeFail("\xe1\xaa\xb6.\xf0\x9e\xa4\x91\xf2\x93\xa2\x96\xf2\xbb\x89\x92\xdf\x97"); } // [B1, B2, V6, V7]
12234test { try toAsciiFail("\xe1\xaa\xb6.\xf0\x9e\xa4\x91\xf2\x93\xa2\x96\xf2\xbb\x89\x92\xdf\x97", false); } // [B1, B2, V6, V7]
12235test { try toAsciiFail("\xe1\xaa\xb6.\xf0\x9e\xa4\x91\xf2\x93\xa2\x96\xf2\xbb\x89\x92\xdf\x97", true); } // [B1, B2, V6, V7]
5018test { try toUnicodeFail("xn--zqf.xn--ysb9657vuiz5bj0ep"); } // [B1, B2, V6, V7]12236test { try toUnicodeFail("xn--zqf.xn--ysb9657vuiz5bj0ep"); } // [B1, B2, V6, V7]
12237test { try toAsciiFail("xn--zqf.xn--ysb9657vuiz5bj0ep", false); } // [B1, B2, V6, V7]
12238test { try toAsciiFail("xn--zqf.xn--ysb9657vuiz5bj0ep", true); } // [B1, B2, V6, V7]
5019test { try toUnicodeFail("\xe1\xaa\xb6\xef\xbc\x8e\xf0\x9e\xa4\x91\xf2\x93\xa2\x96\xf2\xbb\x89\x92\xdf\x97"); } // [B1, B2, V6, V7]12239test { try toUnicodeFail("\xe1\xaa\xb6\xef\xbc\x8e\xf0\x9e\xa4\x91\xf2\x93\xa2\x96\xf2\xbb\x89\x92\xdf\x97"); } // [B1, B2, V6, V7]
12240test { try toAsciiFail("\xe1\xaa\xb6\xef\xbc\x8e\xf0\x9e\xa4\x91\xf2\x93\xa2\x96\xf2\xbb\x89\x92\xdf\x97", false); } // [B1, B2, V6, V7]
12241test { try toAsciiFail("\xe1\xaa\xb6\xef\xbc\x8e\xf0\x9e\xa4\x91\xf2\x93\xa2\x96\xf2\xbb\x89\x92\xdf\x97", true); } // [B1, B2, V6, V7]
5020test { try toUnicodeFail("\xe0\xa1\x82\xf0\x9e\xa9\x9a\xe2\x92\x88\xef\xbc\x8e\xf3\xa0\xac\x8c\xef\xbc\x98\xf2\x8f\xb3\x8f\xdd\xb0"); } // [B1, V7]12242test { try toUnicodeFail("\xe0\xa1\x82\xf0\x9e\xa9\x9a\xe2\x92\x88\xef\xbc\x8e\xf3\xa0\xac\x8c\xef\xbc\x98\xf2\x8f\xb3\x8f\xdd\xb0"); } // [B1, V7]
12243test { try toAsciiFail("\xe0\xa1\x82\xf0\x9e\xa9\x9a\xe2\x92\x88\xef\xbc\x8e\xf3\xa0\xac\x8c\xef\xbc\x98\xf2\x8f\xb3\x8f\xdd\xb0", false); } // [B1, V7]
12244test { try toAsciiFail("\xe0\xa1\x82\xf0\x9e\xa9\x9a\xe2\x92\x88\xef\xbc\x8e\xf3\xa0\xac\x8c\xef\xbc\x98\xf2\x8f\xb3\x8f\xdd\xb0", true); } // [B1, V7]
5021test { try toUnicodeFail("\xe0\xa1\x82\xf0\x9e\xa9\x9a1..\xf3\xa0\xac\x8c8\xf2\x8f\xb3\x8f\xdd\xb0"); } // [B1, V7, X4_2]12245test { try toUnicodeFail("\xe0\xa1\x82\xf0\x9e\xa9\x9a1..\xf3\xa0\xac\x8c8\xf2\x8f\xb3\x8f\xdd\xb0"); } // [B1, V7, X4_2]
12246test { try toAsciiFail("\xe0\xa1\x82\xf0\x9e\xa9\x9a1..\xf3\xa0\xac\x8c8\xf2\x8f\xb3\x8f\xdd\xb0", false); } // [B1, V7, A4_2]
12247test { try toAsciiFail("\xe0\xa1\x82\xf0\x9e\xa9\x9a1..\xf3\xa0\xac\x8c8\xf2\x8f\xb3\x8f\xdd\xb0", true); } // [B1, V7, A4_2]
5022test { try toUnicodeFail("xn--1-rid26318a..xn--8-s5c22427ox454a"); } // [B1, V7, X4_2]12248test { try toUnicodeFail("xn--1-rid26318a..xn--8-s5c22427ox454a"); } // [B1, V7, X4_2]
12249test { try toAsciiFail("xn--1-rid26318a..xn--8-s5c22427ox454a", false); } // [B1, V7, A4_2]
12250test { try toAsciiFail("xn--1-rid26318a..xn--8-s5c22427ox454a", true); } // [B1, V7, A4_2]
5023test { try toUnicodeFail("xn--0vb095ldg52a.xn--8-s5c22427ox454a"); } // [B1, V7]12251test { try toUnicodeFail("xn--0vb095ldg52a.xn--8-s5c22427ox454a"); } // [B1, V7]
12252test { try toAsciiFail("xn--0vb095ldg52a.xn--8-s5c22427ox454a", false); } // [B1, V7]
12253test { try toAsciiFail("xn--0vb095ldg52a.xn--8-s5c22427ox454a", true); } // [B1, V7]
5024test { try toUnicodeFail("\xcd\xa1\xf0\x90\xab\xab\xcd\xa9\xe1\xa1\xb7\xe3\x80\x82-\xf3\xa0\xb0\x9b\xe9\x9e\xb0"); } // [B1, V3, V6, V7]12254test { try toUnicodeFail("\xcd\xa1\xf0\x90\xab\xab\xcd\xa9\xe1\xa1\xb7\xe3\x80\x82-\xf3\xa0\xb0\x9b\xe9\x9e\xb0"); } // [B1, V3, V6, V7]
12255test { try toAsciiFail("\xcd\xa1\xf0\x90\xab\xab\xcd\xa9\xe1\xa1\xb7\xe3\x80\x82-\xf3\xa0\xb0\x9b\xe9\x9e\xb0", false); } // [B1, V3, V6, V7]
12256test { try toAsciiFail("\xcd\xa1\xf0\x90\xab\xab\xcd\xa9\xe1\xa1\xb7\xe3\x80\x82-\xf3\xa0\xb0\x9b\xe9\x9e\xb0", true); } // [B1, V3, V6, V7]
5025test { try toUnicodeFail("xn--cvaq482npv5t.xn----yg7dt1332g"); } // [B1, V3, V6, V7]12257test { try toUnicodeFail("xn--cvaq482npv5t.xn----yg7dt1332g"); } // [B1, V3, V6, V7]
12258test { try toAsciiFail("xn--cvaq482npv5t.xn----yg7dt1332g", false); } // [B1, V3, V6, V7]
12259test { try toAsciiFail("xn--cvaq482npv5t.xn----yg7dt1332g", true); } // [B1, V3, V6, V7]
5026test { try toUnicodeFail("-.\xe0\xab\x8d\xe5\x89\x98\xc3\x9f\xf0\x90\xab\x83"); } // [B1, V3, V6]12260test { try toUnicodeFail("-.\xe0\xab\x8d\xe5\x89\x98\xc3\x9f\xf0\x90\xab\x83"); } // [B1, V3, V6]
12261test { try toAsciiFail("-.\xe0\xab\x8d\xe5\x89\x98\xc3\x9f\xf0\x90\xab\x83", false); } // [B1, V3, V6]
12262test { try toAsciiFail("-.\xe0\xab\x8d\xe5\x89\x98\xc3\x9f\xf0\x90\xab\x83", true); } // [B1, V3, V6]
5027test { try toUnicodeFail("-.\xe0\xab\x8d\xe5\x89\x98SS\xf0\x90\xab\x83"); } // [B1, V3, V6]12263test { try toUnicodeFail("-.\xe0\xab\x8d\xe5\x89\x98SS\xf0\x90\xab\x83"); } // [B1, V3, V6]
12264test { try toAsciiFail("-.\xe0\xab\x8d\xe5\x89\x98SS\xf0\x90\xab\x83", false); } // [B1, V3, V6]
12265test { try toAsciiFail("-.\xe0\xab\x8d\xe5\x89\x98SS\xf0\x90\xab\x83", true); } // [B1, V3, V6]
5028test { try toUnicodeFail("-.\xe0\xab\x8d\xe5\x89\x98ss\xf0\x90\xab\x83"); } // [B1, V3, V6]12266test { try toUnicodeFail("-.\xe0\xab\x8d\xe5\x89\x98ss\xf0\x90\xab\x83"); } // [B1, V3, V6]
12267test { try toAsciiFail("-.\xe0\xab\x8d\xe5\x89\x98ss\xf0\x90\xab\x83", false); } // [B1, V3, V6]
12268test { try toAsciiFail("-.\xe0\xab\x8d\xe5\x89\x98ss\xf0\x90\xab\x83", true); } // [B1, V3, V6]
5029test { try toUnicodeFail("-.\xe0\xab\x8d\xe5\x89\x98Ss\xf0\x90\xab\x83"); } // [B1, V3, V6]12269test { try toUnicodeFail("-.\xe0\xab\x8d\xe5\x89\x98Ss\xf0\x90\xab\x83"); } // [B1, V3, V6]
12270test { try toAsciiFail("-.\xe0\xab\x8d\xe5\x89\x98Ss\xf0\x90\xab\x83", false); } // [B1, V3, V6]
12271test { try toAsciiFail("-.\xe0\xab\x8d\xe5\x89\x98Ss\xf0\x90\xab\x83", true); } // [B1, V3, V6]
5030test { try toUnicodeFail("-.xn--ss-bqg4734erywk"); } // [B1, V3, V6]12272test { try toUnicodeFail("-.xn--ss-bqg4734erywk"); } // [B1, V3, V6]
12273test { try toAsciiFail("-.xn--ss-bqg4734erywk", false); } // [B1, V3, V6]
12274test { try toAsciiFail("-.xn--ss-bqg4734erywk", true); } // [B1, V3, V6]
5031test { try toUnicodeFail("-.xn--zca791c493duf8i"); } // [B1, V3, V6]12275test { try toUnicodeFail("-.xn--zca791c493duf8i"); } // [B1, V3, V6]
12276test { try toAsciiFail("-.xn--zca791c493duf8i", false); } // [B1, V3, V6]
12277test { try toAsciiFail("-.xn--zca791c493duf8i", true); } // [B1, V3, V6]
5032test { try toUnicodeFail("\xe0\xa3\xbb\xf0\x9e\xb5\xb8\xef\xbd\xa1-"); } // [B1, V3, V6, V7]12278test { try toUnicodeFail("\xe0\xa3\xbb\xf0\x9e\xb5\xb8\xef\xbd\xa1-"); } // [B1, V3, V6, V7]
12279test { try toAsciiFail("\xe0\xa3\xbb\xf0\x9e\xb5\xb8\xef\xbd\xa1-", false); } // [B1, V3, V6, V7]
12280test { try toAsciiFail("\xe0\xa3\xbb\xf0\x9e\xb5\xb8\xef\xbd\xa1-", true); } // [B1, V3, V6, V7]
5033test { try toUnicodeFail("\xe0\xa3\xbb\xf0\x9e\xb5\xb8\xe3\x80\x82-"); } // [B1, V3, V6, V7]12281test { try toUnicodeFail("\xe0\xa3\xbb\xf0\x9e\xb5\xb8\xe3\x80\x82-"); } // [B1, V3, V6, V7]
12282test { try toAsciiFail("\xe0\xa3\xbb\xf0\x9e\xb5\xb8\xe3\x80\x82-", false); } // [B1, V3, V6, V7]
12283test { try toAsciiFail("\xe0\xa3\xbb\xf0\x9e\xb5\xb8\xe3\x80\x82-", true); } // [B1, V3, V6, V7]
5034test { try toUnicodeFail("xn--b1b2719v.-"); } // [B1, V3, V6, V7]12284test { try toUnicodeFail("xn--b1b2719v.-"); } // [B1, V3, V6, V7]
12285test { try toAsciiFail("xn--b1b2719v.-", false); } // [B1, V3, V6, V7]
12286test { try toAsciiFail("xn--b1b2719v.-", true); } // [B1, V3, V6, V7]
5035test { try toUnicodeFail("\xe2\x92\x88\xf3\xa0\x88\xbb\xf0\x90\xb9\xb2\xef\xbd\xa1\xe2\x89\xa0\xd8\x83\xf0\x90\xb9\xbd"); } // [B1, V7]12287test { try toUnicodeFail("\xe2\x92\x88\xf3\xa0\x88\xbb\xf0\x90\xb9\xb2\xef\xbd\xa1\xe2\x89\xa0\xd8\x83\xf0\x90\xb9\xbd"); } // [B1, V7]
12288test { try toAsciiFail("\xe2\x92\x88\xf3\xa0\x88\xbb\xf0\x90\xb9\xb2\xef\xbd\xa1\xe2\x89\xa0\xd8\x83\xf0\x90\xb9\xbd", false); } // [B1, V7]
12289test { try toAsciiFail("\xe2\x92\x88\xf3\xa0\x88\xbb\xf0\x90\xb9\xb2\xef\xbd\xa1\xe2\x89\xa0\xd8\x83\xf0\x90\xb9\xbd", true); } // [B1, V7]
5036test { try toUnicodeFail("\xe2\x92\x88\xf3\xa0\x88\xbb\xf0\x90\xb9\xb2\xef\xbd\xa1=\xcc\xb8\xd8\x83\xf0\x90\xb9\xbd"); } // [B1, V7]12290test { try toUnicodeFail("\xe2\x92\x88\xf3\xa0\x88\xbb\xf0\x90\xb9\xb2\xef\xbd\xa1=\xcc\xb8\xd8\x83\xf0\x90\xb9\xbd"); } // [B1, V7]
12291test { try toAsciiFail("\xe2\x92\x88\xf3\xa0\x88\xbb\xf0\x90\xb9\xb2\xef\xbd\xa1=\xcc\xb8\xd8\x83\xf0\x90\xb9\xbd", false); } // [B1, V7]
12292test { try toAsciiFail("\xe2\x92\x88\xf3\xa0\x88\xbb\xf0\x90\xb9\xb2\xef\xbd\xa1=\xcc\xb8\xd8\x83\xf0\x90\xb9\xbd", true); } // [B1, V7]
5037test { try toUnicodeFail("1.\xf3\xa0\x88\xbb\xf0\x90\xb9\xb2\xe3\x80\x82\xe2\x89\xa0\xd8\x83\xf0\x90\xb9\xbd"); } // [B1, V7]12293test { try toUnicodeFail("1.\xf3\xa0\x88\xbb\xf0\x90\xb9\xb2\xe3\x80\x82\xe2\x89\xa0\xd8\x83\xf0\x90\xb9\xbd"); } // [B1, V7]
12294test { try toAsciiFail("1.\xf3\xa0\x88\xbb\xf0\x90\xb9\xb2\xe3\x80\x82\xe2\x89\xa0\xd8\x83\xf0\x90\xb9\xbd", false); } // [B1, V7]
12295test { try toAsciiFail("1.\xf3\xa0\x88\xbb\xf0\x90\xb9\xb2\xe3\x80\x82\xe2\x89\xa0\xd8\x83\xf0\x90\xb9\xbd", true); } // [B1, V7]
5038test { try toUnicodeFail("1.\xf3\xa0\x88\xbb\xf0\x90\xb9\xb2\xe3\x80\x82=\xcc\xb8\xd8\x83\xf0\x90\xb9\xbd"); } // [B1, V7]12296test { try toUnicodeFail("1.\xf3\xa0\x88\xbb\xf0\x90\xb9\xb2\xe3\x80\x82=\xcc\xb8\xd8\x83\xf0\x90\xb9\xbd"); } // [B1, V7]
12297test { try toAsciiFail("1.\xf3\xa0\x88\xbb\xf0\x90\xb9\xb2\xe3\x80\x82=\xcc\xb8\xd8\x83\xf0\x90\xb9\xbd", false); } // [B1, V7]
12298test { try toAsciiFail("1.\xf3\xa0\x88\xbb\xf0\x90\xb9\xb2\xe3\x80\x82=\xcc\xb8\xd8\x83\xf0\x90\xb9\xbd", true); } // [B1, V7]
5039test { try toUnicodeFail("1.xn--qo0dl3077c.xn--lfb536lb35n"); } // [B1, V7]12299test { try toUnicodeFail("1.xn--qo0dl3077c.xn--lfb536lb35n"); } // [B1, V7]
12300test { try toAsciiFail("1.xn--qo0dl3077c.xn--lfb536lb35n", false); } // [B1, V7]
12301test { try toAsciiFail("1.xn--qo0dl3077c.xn--lfb536lb35n", true); } // [B1, V7]
5040test { try toUnicodeFail("xn--tshw766f1153g.xn--lfb536lb35n"); } // [B1, V7]12302test { try toUnicodeFail("xn--tshw766f1153g.xn--lfb536lb35n"); } // [B1, V7]
12303test { try toAsciiFail("xn--tshw766f1153g.xn--lfb536lb35n", false); } // [B1, V7]
12304test { try toAsciiFail("xn--tshw766f1153g.xn--lfb536lb35n", true); } // [B1, V7]
5041test { try toUnicodeFail("\xf0\x90\xb9\xa2\xf3\xa0\x88\x9a\xe1\x82\xae\xe2\x80\x8c.\xe3\x96\xbe\xf0\x90\xb9\xa1"); } // [B1, B5, B6, C1, V7]12305test { try toUnicodeFail("\xf0\x90\xb9\xa2\xf3\xa0\x88\x9a\xe1\x82\xae\xe2\x80\x8c.\xe3\x96\xbe\xf0\x90\xb9\xa1"); } // [B1, B5, B6, C1, V7]
12306test { try toAsciiFail("\xf0\x90\xb9\xa2\xf3\xa0\x88\x9a\xe1\x82\xae\xe2\x80\x8c.\xe3\x96\xbe\xf0\x90\xb9\xa1", false); } // [B1, B5, B6, C1, V7]
12307test { try toAsciiFail("\xf0\x90\xb9\xa2\xf3\xa0\x88\x9a\xe1\x82\xae\xe2\x80\x8c.\xe3\x96\xbe\xf0\x90\xb9\xa1", true); } // [B1, B5, B6, V7]
5042test { try toUnicodeFail("\xf0\x90\xb9\xa2\xf3\xa0\x88\x9a\xe2\xb4\x8e\xe2\x80\x8c.\xe3\x96\xbe\xf0\x90\xb9\xa1"); } // [B1, B5, B6, C1, V7]12308test { try toUnicodeFail("\xf0\x90\xb9\xa2\xf3\xa0\x88\x9a\xe2\xb4\x8e\xe2\x80\x8c.\xe3\x96\xbe\xf0\x90\xb9\xa1"); } // [B1, B5, B6, C1, V7]
12309test { try toAsciiFail("\xf0\x90\xb9\xa2\xf3\xa0\x88\x9a\xe2\xb4\x8e\xe2\x80\x8c.\xe3\x96\xbe\xf0\x90\xb9\xa1", false); } // [B1, B5, B6, C1, V7]
12310test { try toAsciiFail("\xf0\x90\xb9\xa2\xf3\xa0\x88\x9a\xe2\xb4\x8e\xe2\x80\x8c.\xe3\x96\xbe\xf0\x90\xb9\xa1", true); } // [B1, B5, B6, V7]
5043test { try toUnicodeFail("xn--5kjx323em053g.xn--pelu572d"); } // [B1, B5, B6, V7]12311test { try toUnicodeFail("xn--5kjx323em053g.xn--pelu572d"); } // [B1, B5, B6, V7]
12312test { try toAsciiFail("xn--5kjx323em053g.xn--pelu572d", false); } // [B1, B5, B6, V7]
12313test { try toAsciiFail("xn--5kjx323em053g.xn--pelu572d", true); } // [B1, B5, B6, V7]
5044test { try toUnicodeFail("xn--0ug342clq0pqxv4i.xn--pelu572d"); } // [B1, B5, B6, C1, V7]12314test { try toUnicodeFail("xn--0ug342clq0pqxv4i.xn--pelu572d"); } // [B1, B5, B6, C1, V7]
12315test { try toAsciiFail("xn--0ug342clq0pqxv4i.xn--pelu572d", false); } // [B1, B5, B6, C1, V7]
12316test { try toAsciiFail("xn--0ug342clq0pqxv4i.xn--pelu572d", true); } // [B1, B5, B6, C1, V7]
5045test { try toUnicodeFail("xn--mnd9001km0o0g.xn--pelu572d"); } // [B1, B5, B6, V7]12317test { try toUnicodeFail("xn--mnd9001km0o0g.xn--pelu572d"); } // [B1, B5, B6, V7]
12318test { try toAsciiFail("xn--mnd9001km0o0g.xn--pelu572d", false); } // [B1, B5, B6, V7]
12319test { try toAsciiFail("xn--mnd9001km0o0g.xn--pelu572d", true); } // [B1, B5, B6, V7]
5046test { try toUnicodeFail("xn--mnd289ezj4pqxp0i.xn--pelu572d"); } // [B1, B5, B6, C1, V7]12320test { try toUnicodeFail("xn--mnd289ezj4pqxp0i.xn--pelu572d"); } // [B1, B5, B6, C1, V7]
12321test { try toAsciiFail("xn--mnd289ezj4pqxp0i.xn--pelu572d", false); } // [B1, B5, B6, C1, V7]
12322test { try toAsciiFail("xn--mnd289ezj4pqxp0i.xn--pelu572d", true); } // [B1, B5, B6, C1, V7]
5047test { try toUnicodeFail("\xf2\xa9\xbc\x97\xef\xbc\x8e\xdf\x87\xe1\xa1\x96\xe1\x82\xb3\xe1\x82\xa7"); } // [B2, B3, V7]12323test { try toUnicodeFail("\xf2\xa9\xbc\x97\xef\xbc\x8e\xdf\x87\xe1\xa1\x96\xe1\x82\xb3\xe1\x82\xa7"); } // [B2, B3, V7]
12324test { try toAsciiFail("\xf2\xa9\xbc\x97\xef\xbc\x8e\xdf\x87\xe1\xa1\x96\xe1\x82\xb3\xe1\x82\xa7", false); } // [B2, B3, V7]
12325test { try toAsciiFail("\xf2\xa9\xbc\x97\xef\xbc\x8e\xdf\x87\xe1\xa1\x96\xe1\x82\xb3\xe1\x82\xa7", true); } // [B2, B3, V7]
5048test { try toUnicodeFail("\xf2\xa9\xbc\x97.\xdf\x87\xe1\xa1\x96\xe1\x82\xb3\xe1\x82\xa7"); } // [B2, B3, V7]12326test { try toUnicodeFail("\xf2\xa9\xbc\x97.\xdf\x87\xe1\xa1\x96\xe1\x82\xb3\xe1\x82\xa7"); } // [B2, B3, V7]
12327test { try toAsciiFail("\xf2\xa9\xbc\x97.\xdf\x87\xe1\xa1\x96\xe1\x82\xb3\xe1\x82\xa7", false); } // [B2, B3, V7]
12328test { try toAsciiFail("\xf2\xa9\xbc\x97.\xdf\x87\xe1\xa1\x96\xe1\x82\xb3\xe1\x82\xa7", true); } // [B2, B3, V7]
5049test { try toUnicodeFail("\xf2\xa9\xbc\x97.\xdf\x87\xe1\xa1\x96\xe2\xb4\x93\xe2\xb4\x87"); } // [B2, B3, V7]12329test { try toUnicodeFail("\xf2\xa9\xbc\x97.\xdf\x87\xe1\xa1\x96\xe2\xb4\x93\xe2\xb4\x87"); } // [B2, B3, V7]
12330test { try toAsciiFail("\xf2\xa9\xbc\x97.\xdf\x87\xe1\xa1\x96\xe2\xb4\x93\xe2\xb4\x87", false); } // [B2, B3, V7]
12331test { try toAsciiFail("\xf2\xa9\xbc\x97.\xdf\x87\xe1\xa1\x96\xe2\xb4\x93\xe2\xb4\x87", true); } // [B2, B3, V7]
5050test { try toUnicodeFail("xn--te28c.xn--isb295fbtpmb"); } // [B2, B3, V7]12332test { try toUnicodeFail("xn--te28c.xn--isb295fbtpmb"); } // [B2, B3, V7]
12333test { try toAsciiFail("xn--te28c.xn--isb295fbtpmb", false); } // [B2, B3, V7]
12334test { try toAsciiFail("xn--te28c.xn--isb295fbtpmb", true); } // [B2, B3, V7]
5051test { try toUnicodeFail("\xf2\xa9\xbc\x97\xef\xbc\x8e\xdf\x87\xe1\xa1\x96\xe2\xb4\x93\xe2\xb4\x87"); } // [B2, B3, V7]12335test { try toUnicodeFail("\xf2\xa9\xbc\x97\xef\xbc\x8e\xdf\x87\xe1\xa1\x96\xe2\xb4\x93\xe2\xb4\x87"); } // [B2, B3, V7]
12336test { try toAsciiFail("\xf2\xa9\xbc\x97\xef\xbc\x8e\xdf\x87\xe1\xa1\x96\xe2\xb4\x93\xe2\xb4\x87", false); } // [B2, B3, V7]
12337test { try toAsciiFail("\xf2\xa9\xbc\x97\xef\xbc\x8e\xdf\x87\xe1\xa1\x96\xe2\xb4\x93\xe2\xb4\x87", true); } // [B2, B3, V7]
5052test { try toUnicodeFail("xn--te28c.xn--isb856b9a631d"); } // [B2, B3, V7]12338test { try toUnicodeFail("xn--te28c.xn--isb856b9a631d"); } // [B2, B3, V7]
12339test { try toAsciiFail("xn--te28c.xn--isb856b9a631d", false); } // [B2, B3, V7]
12340test { try toAsciiFail("xn--te28c.xn--isb856b9a631d", true); } // [B2, B3, V7]
5053test { try toUnicodeFail("\xf2\xa9\xbc\x97.\xdf\x87\xe1\xa1\x96\xe1\x82\xb3\xe2\xb4\x87"); } // [B2, B3, V7]12341test { try toUnicodeFail("\xf2\xa9\xbc\x97.\xdf\x87\xe1\xa1\x96\xe1\x82\xb3\xe2\xb4\x87"); } // [B2, B3, V7]
12342test { try toAsciiFail("\xf2\xa9\xbc\x97.\xdf\x87\xe1\xa1\x96\xe1\x82\xb3\xe2\xb4\x87", false); } // [B2, B3, V7]
12343test { try toAsciiFail("\xf2\xa9\xbc\x97.\xdf\x87\xe1\xa1\x96\xe1\x82\xb3\xe2\xb4\x87", true); } // [B2, B3, V7]
5054test { try toUnicodeFail("xn--te28c.xn--isb286btrgo7w"); } // [B2, B3, V7]12344test { try toUnicodeFail("xn--te28c.xn--isb286btrgo7w"); } // [B2, B3, V7]
12345test { try toAsciiFail("xn--te28c.xn--isb286btrgo7w", false); } // [B2, B3, V7]
12346test { try toAsciiFail("xn--te28c.xn--isb286btrgo7w", true); } // [B2, B3, V7]
5055test { try toUnicodeFail("\xf2\xa9\xbc\x97\xef\xbc\x8e\xdf\x87\xe1\xa1\x96\xe1\x82\xb3\xe2\xb4\x87"); } // [B2, B3, V7]12347test { try toUnicodeFail("\xf2\xa9\xbc\x97\xef\xbc\x8e\xdf\x87\xe1\xa1\x96\xe1\x82\xb3\xe2\xb4\x87"); } // [B2, B3, V7]
12348test { try toAsciiFail("\xf2\xa9\xbc\x97\xef\xbc\x8e\xdf\x87\xe1\xa1\x96\xe1\x82\xb3\xe2\xb4\x87", false); } // [B2, B3, V7]
12349test { try toAsciiFail("\xf2\xa9\xbc\x97\xef\xbc\x8e\xdf\x87\xe1\xa1\x96\xe1\x82\xb3\xe2\xb4\x87", true); } // [B2, B3, V7]
5056test { try toUnicodeFail("\xe2\x80\x8d\xf4\x85\x8d\x89.\xda\xb3\xdd\xb5"); } // [B1, C2, V7]12350test { try toUnicodeFail("\xe2\x80\x8d\xf4\x85\x8d\x89.\xda\xb3\xdd\xb5"); } // [B1, C2, V7]
12351test { try toAsciiFail("\xe2\x80\x8d\xf4\x85\x8d\x89.\xda\xb3\xdd\xb5", false); } // [B1, C2, V7]
12352test { try toAsciiFail("\xe2\x80\x8d\xf4\x85\x8d\x89.\xda\xb3\xdd\xb5", true); } // [V7]
5057test { try toUnicodeFail("xn--3j78f.xn--mkb20b"); } // [V7]12353test { try toUnicodeFail("xn--3j78f.xn--mkb20b"); } // [V7]
12354test { try toAsciiFail("xn--3j78f.xn--mkb20b", false); } // [V7]
12355test { try toAsciiFail("xn--3j78f.xn--mkb20b", true); } // [V7]
5058test { try toUnicodeFail("xn--1ug39444n.xn--mkb20b"); } // [B1, C2, V7]12356test { try toUnicodeFail("xn--1ug39444n.xn--mkb20b"); } // [B1, C2, V7]
12357test { try toAsciiFail("xn--1ug39444n.xn--mkb20b", false); } // [B1, C2, V7]
12358test { try toAsciiFail("xn--1ug39444n.xn--mkb20b", true); } // [B1, C2, V7]
5059test { try toUnicodeFail("\xf0\xb2\xa4\xb1\xe2\x92\x9b\xe2\xbe\xb3\xef\xbc\x8e\xea\xa1\xa6\xe2\x92\x88"); } // [V7]12359test { try toUnicodeFail("\xf0\xb2\xa4\xb1\xe2\x92\x9b\xe2\xbe\xb3\xef\xbc\x8e\xea\xa1\xa6\xe2\x92\x88"); } // [V7]
12360test { try toAsciiFail("\xf0\xb2\xa4\xb1\xe2\x92\x9b\xe2\xbe\xb3\xef\xbc\x8e\xea\xa1\xa6\xe2\x92\x88", false); } // [V7]
12361test { try toAsciiFail("\xf0\xb2\xa4\xb1\xe2\x92\x9b\xe2\xbe\xb3\xef\xbc\x8e\xea\xa1\xa6\xe2\x92\x88", true); } // [V7]
5060test { try toUnicodePass("\xf0\xb2\xa4\xb120.\xe9\x9f\xb3.\xea\xa1\xa61.", "\xf0\xb2\xa4\xb120.\xe9\x9f\xb3.\xea\xa1\xa61."); }12362test { try toUnicodePass("\xf0\xb2\xa4\xb120.\xe9\x9f\xb3.\xea\xa1\xa61.", "\xf0\xb2\xa4\xb120.\xe9\x9f\xb3.\xea\xa1\xa61."); }
12363test { try toAsciiFail("\xf0\xb2\xa4\xb120.\xe9\x9f\xb3.\xea\xa1\xa61.", false); } // [A4_2]
12364test { try toAsciiFail("\xf0\xb2\xa4\xb120.\xe9\x9f\xb3.\xea\xa1\xa61.", true); } // [A4_2]
5061test { try toUnicodePass("xn--20-9802c.xn--0w5a.xn--1-eg4e.", "\xf0\xb2\xa4\xb120.\xe9\x9f\xb3.\xea\xa1\xa61."); }12365test { try toUnicodePass("xn--20-9802c.xn--0w5a.xn--1-eg4e.", "\xf0\xb2\xa4\xb120.\xe9\x9f\xb3.\xea\xa1\xa61."); }
12366test { try toAsciiFail("xn--20-9802c.xn--0w5a.xn--1-eg4e.", false); } // [A4_2]
12367test { try toAsciiFail("xn--20-9802c.xn--0w5a.xn--1-eg4e.", true); } // [A4_2]
5062test { try toUnicodeFail("xn--dth6033bzbvx.xn--tsh9439b"); } // [V7]12368test { try toUnicodeFail("xn--dth6033bzbvx.xn--tsh9439b"); } // [V7]
12369test { try toAsciiFail("xn--dth6033bzbvx.xn--tsh9439b", false); } // [V7]
12370test { try toAsciiFail("xn--dth6033bzbvx.xn--tsh9439b", true); } // [V7]
5063test { try toUnicodeFail("\xdf\x9c\xef\xbc\x98\xf1\xb3\xa6\x93-\xef\xbd\xa1\xf2\x9e\xb2\x99\xf0\x91\x81\xbf\xf0\x90\xa9\xa5\xe0\xa7\x8d"); } // [B2, B3, B5, B6, V3, V7]12371test { try toUnicodeFail("\xdf\x9c\xef\xbc\x98\xf1\xb3\xa6\x93-\xef\xbd\xa1\xf2\x9e\xb2\x99\xf0\x91\x81\xbf\xf0\x90\xa9\xa5\xe0\xa7\x8d"); } // [B2, B3, B5, B6, V3, V7]
12372test { try toAsciiFail("\xdf\x9c\xef\xbc\x98\xf1\xb3\xa6\x93-\xef\xbd\xa1\xf2\x9e\xb2\x99\xf0\x91\x81\xbf\xf0\x90\xa9\xa5\xe0\xa7\x8d", false); } // [B2, B3, B5, B6, V3, V7]
12373test { try toAsciiFail("\xdf\x9c\xef\xbc\x98\xf1\xb3\xa6\x93-\xef\xbd\xa1\xf2\x9e\xb2\x99\xf0\x91\x81\xbf\xf0\x90\xa9\xa5\xe0\xa7\x8d", true); } // [B2, B3, B5, B6, V3, V7]
5064test { try toUnicodeFail("\xdf\x9c8\xf1\xb3\xa6\x93-\xe3\x80\x82\xf2\x9e\xb2\x99\xf0\x91\x81\xbf\xf0\x90\xa9\xa5\xe0\xa7\x8d"); } // [B2, B3, B5, B6, V3, V7]12374test { try toUnicodeFail("\xdf\x9c8\xf1\xb3\xa6\x93-\xe3\x80\x82\xf2\x9e\xb2\x99\xf0\x91\x81\xbf\xf0\x90\xa9\xa5\xe0\xa7\x8d"); } // [B2, B3, B5, B6, V3, V7]
12375test { try toAsciiFail("\xdf\x9c8\xf1\xb3\xa6\x93-\xe3\x80\x82\xf2\x9e\xb2\x99\xf0\x91\x81\xbf\xf0\x90\xa9\xa5\xe0\xa7\x8d", false); } // [B2, B3, B5, B6, V3, V7]
12376test { try toAsciiFail("\xdf\x9c8\xf1\xb3\xa6\x93-\xe3\x80\x82\xf2\x9e\xb2\x99\xf0\x91\x81\xbf\xf0\x90\xa9\xa5\xe0\xa7\x8d", true); } // [B2, B3, B5, B6, V3, V7]
5065test { try toUnicodeFail("xn--8--rve13079p.xn--b7b9842k42df776x"); } // [B2, B3, B5, B6, V3, V7]12377test { try toUnicodeFail("xn--8--rve13079p.xn--b7b9842k42df776x"); } // [B2, B3, B5, B6, V3, V7]
12378test { try toAsciiFail("xn--8--rve13079p.xn--b7b9842k42df776x", false); } // [B2, B3, B5, B6, V3, V7]
12379test { try toAsciiFail("xn--8--rve13079p.xn--b7b9842k42df776x", true); } // [B2, B3, B5, B6, V3, V7]
5066test { try toUnicodePass("\xe1\x82\xb5\xe3\x80\x82\xdb\xb0\xe2\x89\xae\xc3\x9f\xdd\x85", "\xe2\xb4\x95.\xdb\xb0\xe2\x89\xae\xc3\x9f\xdd\x85"); }12380test { try toUnicodePass("\xe1\x82\xb5\xe3\x80\x82\xdb\xb0\xe2\x89\xae\xc3\x9f\xdd\x85", "\xe2\xb4\x95.\xdb\xb0\xe2\x89\xae\xc3\x9f\xdd\x85"); }
5067test { try toAsciiPass("\xe1\x82\xb5\xe3\x80\x82\xdb\xb0\xe2\x89\xae\xc3\x9f\xdd\x85", "xn--dlj.xn--zca912alh227g", false); }12381test { try toAsciiPass("\xe1\x82\xb5\xe3\x80\x82\xdb\xb0\xe2\x89\xae\xc3\x9f\xdd\x85", "xn--dlj.xn--zca912alh227g", false); }
5068test { try toAsciiPass("\xe1\x82\xb5\xe3\x80\x82\xdb\xb0\xe2\x89\xae\xc3\x9f\xdd\x85", "xn--dlj.xn--ss-jbe65aw27i", true); }12382test { try toAsciiPass("\xe1\x82\xb5\xe3\x80\x82\xdb\xb0\xe2\x89\xae\xc3\x9f\xdd\x85", "xn--dlj.xn--ss-jbe65aw27i", true); }
...@@ -5124,37 +12438,92 @@ test { try toUnicodePass("\xe2\xb4\x95.\xdb\xb0<\xcc\xb8\xc3\x9f\xdd\x85", "\xe2...@@ -5124,37 +12438,92 @@ test { try toUnicodePass("\xe2\xb4\x95.\xdb\xb0<\xcc\xb8\xc3\x9f\xdd\x85", "\xe2
5124test { try toAsciiPass("\xe2\xb4\x95.\xdb\xb0<\xcc\xb8\xc3\x9f\xdd\x85", "xn--dlj.xn--zca912alh227g", false); }12438test { try toAsciiPass("\xe2\xb4\x95.\xdb\xb0<\xcc\xb8\xc3\x9f\xdd\x85", "xn--dlj.xn--zca912alh227g", false); }
5125test { try toAsciiPass("\xe2\xb4\x95.\xdb\xb0<\xcc\xb8\xc3\x9f\xdd\x85", "xn--dlj.xn--ss-jbe65aw27i", true); }12439test { try toAsciiPass("\xe2\xb4\x95.\xdb\xb0<\xcc\xb8\xc3\x9f\xdd\x85", "xn--dlj.xn--ss-jbe65aw27i", true); }
5126test { try toUnicodeFail("xn--tnd.xn--ss-jbe65aw27i"); } // [V7]12440test { try toUnicodeFail("xn--tnd.xn--ss-jbe65aw27i"); } // [V7]
12441test { try toAsciiFail("xn--tnd.xn--ss-jbe65aw27i", false); } // [V7]
12442test { try toAsciiFail("xn--tnd.xn--ss-jbe65aw27i", true); } // [V7]
5127test { try toUnicodeFail("xn--tnd.xn--zca912alh227g"); } // [V7]12443test { try toUnicodeFail("xn--tnd.xn--zca912alh227g"); } // [V7]
12444test { try toAsciiFail("xn--tnd.xn--zca912alh227g", false); } // [V7]
12445test { try toAsciiFail("xn--tnd.xn--zca912alh227g", true); } // [V7]
5128test { try toUnicodeFail("\xdf\xa9-.\xf0\x9d\xa8\x97\xea\x92\xb1\xe1\xad\xb2"); } // [B1, B3, V3, V6]12446test { try toUnicodeFail("\xdf\xa9-.\xf0\x9d\xa8\x97\xea\x92\xb1\xe1\xad\xb2"); } // [B1, B3, V3, V6]
12447test { try toAsciiFail("\xdf\xa9-.\xf0\x9d\xa8\x97\xea\x92\xb1\xe1\xad\xb2", false); } // [B1, B3, V3, V6]
12448test { try toAsciiFail("\xdf\xa9-.\xf0\x9d\xa8\x97\xea\x92\xb1\xe1\xad\xb2", true); } // [B1, B3, V3, V6]
5129test { try toUnicodeFail("xn----odd.xn--dwf8994dc8wj"); } // [B1, B3, V3, V6]12449test { try toUnicodeFail("xn----odd.xn--dwf8994dc8wj"); } // [B1, B3, V3, V6]
12450test { try toAsciiFail("xn----odd.xn--dwf8994dc8wj", false); } // [B1, B3, V3, V6]
12451test { try toAsciiFail("xn----odd.xn--dwf8994dc8wj", true); } // [B1, B3, V3, V6]
5130test { try toUnicodeFail("\xf0\x9e\xbc\xb8\xe2\x80\x8c.\xe2\x89\xaf\xe4\x95\xb5\xe2\xab\xa7"); } // [B1, B3, C1, V7]12452test { try toUnicodeFail("\xf0\x9e\xbc\xb8\xe2\x80\x8c.\xe2\x89\xaf\xe4\x95\xb5\xe2\xab\xa7"); } // [B1, B3, C1, V7]
12453test { try toAsciiFail("\xf0\x9e\xbc\xb8\xe2\x80\x8c.\xe2\x89\xaf\xe4\x95\xb5\xe2\xab\xa7", false); } // [B1, B3, C1, V7]
12454test { try toAsciiFail("\xf0\x9e\xbc\xb8\xe2\x80\x8c.\xe2\x89\xaf\xe4\x95\xb5\xe2\xab\xa7", true); } // [B1, V7]
5131test { try toUnicodeFail("\xf0\x9e\xbc\xb8\xe2\x80\x8c.>\xcc\xb8\xe4\x95\xb5\xe2\xab\xa7"); } // [B1, B3, C1, V7]12455test { try toUnicodeFail("\xf0\x9e\xbc\xb8\xe2\x80\x8c.>\xcc\xb8\xe4\x95\xb5\xe2\xab\xa7"); } // [B1, B3, C1, V7]
12456test { try toAsciiFail("\xf0\x9e\xbc\xb8\xe2\x80\x8c.>\xcc\xb8\xe4\x95\xb5\xe2\xab\xa7", false); } // [B1, B3, C1, V7]
12457test { try toAsciiFail("\xf0\x9e\xbc\xb8\xe2\x80\x8c.>\xcc\xb8\xe4\x95\xb5\xe2\xab\xa7", true); } // [B1, V7]
5132test { try toUnicodeFail("xn--sn7h.xn--hdh754ax6w"); } // [B1, V7]12458test { try toUnicodeFail("xn--sn7h.xn--hdh754ax6w"); } // [B1, V7]
12459test { try toAsciiFail("xn--sn7h.xn--hdh754ax6w", false); } // [B1, V7]
12460test { try toAsciiFail("xn--sn7h.xn--hdh754ax6w", true); } // [B1, V7]
5133test { try toUnicodeFail("xn--0ugx453p.xn--hdh754ax6w"); } // [B1, B3, C1, V7]12461test { try toUnicodeFail("xn--0ugx453p.xn--hdh754ax6w"); } // [B1, B3, C1, V7]
12462test { try toAsciiFail("xn--0ugx453p.xn--hdh754ax6w", false); } // [B1, B3, C1, V7]
12463test { try toAsciiFail("xn--0ugx453p.xn--hdh754ax6w", true); } // [B1, B3, C1, V7]
5134test { try toUnicodeFail("\xf0\x90\xa8\x85\xc3\x9f\xef\xb1\x97.\xda\xac\xdb\xb3\xef\xb8\x92"); } // [B1, B3, V6, V7]12464test { try toUnicodeFail("\xf0\x90\xa8\x85\xc3\x9f\xef\xb1\x97.\xda\xac\xdb\xb3\xef\xb8\x92"); } // [B1, B3, V6, V7]
12465test { try toAsciiFail("\xf0\x90\xa8\x85\xc3\x9f\xef\xb1\x97.\xda\xac\xdb\xb3\xef\xb8\x92", false); } // [B1, B3, V6, V7]
12466test { try toAsciiFail("\xf0\x90\xa8\x85\xc3\x9f\xef\xb1\x97.\xda\xac\xdb\xb3\xef\xb8\x92", true); } // [B1, B3, V6, V7]
5135test { try toUnicodeFail("\xf0\x90\xa8\x85\xc3\x9f\xd9\x8a\xd8\xae.\xda\xac\xdb\xb3\xe3\x80\x82"); } // [B1, V6]12467test { try toUnicodeFail("\xf0\x90\xa8\x85\xc3\x9f\xd9\x8a\xd8\xae.\xda\xac\xdb\xb3\xe3\x80\x82"); } // [B1, V6]
12468test { try toAsciiFail("\xf0\x90\xa8\x85\xc3\x9f\xd9\x8a\xd8\xae.\xda\xac\xdb\xb3\xe3\x80\x82", false); } // [B1, V6, A4_2]
12469test { try toAsciiFail("\xf0\x90\xa8\x85\xc3\x9f\xd9\x8a\xd8\xae.\xda\xac\xdb\xb3\xe3\x80\x82", true); } // [B1, V6, A4_2]
5136test { try toUnicodeFail("\xf0\x90\xa8\x85SS\xd9\x8a\xd8\xae.\xda\xac\xdb\xb3\xe3\x80\x82"); } // [B1, V6]12470test { try toUnicodeFail("\xf0\x90\xa8\x85SS\xd9\x8a\xd8\xae.\xda\xac\xdb\xb3\xe3\x80\x82"); } // [B1, V6]
12471test { try toAsciiFail("\xf0\x90\xa8\x85SS\xd9\x8a\xd8\xae.\xda\xac\xdb\xb3\xe3\x80\x82", false); } // [B1, V6, A4_2]
12472test { try toAsciiFail("\xf0\x90\xa8\x85SS\xd9\x8a\xd8\xae.\xda\xac\xdb\xb3\xe3\x80\x82", true); } // [B1, V6, A4_2]
5137test { try toUnicodeFail("\xf0\x90\xa8\x85ss\xd9\x8a\xd8\xae.\xda\xac\xdb\xb3\xe3\x80\x82"); } // [B1, V6]12473test { try toUnicodeFail("\xf0\x90\xa8\x85ss\xd9\x8a\xd8\xae.\xda\xac\xdb\xb3\xe3\x80\x82"); } // [B1, V6]
12474test { try toAsciiFail("\xf0\x90\xa8\x85ss\xd9\x8a\xd8\xae.\xda\xac\xdb\xb3\xe3\x80\x82", false); } // [B1, V6, A4_2]
12475test { try toAsciiFail("\xf0\x90\xa8\x85ss\xd9\x8a\xd8\xae.\xda\xac\xdb\xb3\xe3\x80\x82", true); } // [B1, V6, A4_2]
5138test { try toUnicodeFail("\xf0\x90\xa8\x85Ss\xd9\x8a\xd8\xae.\xda\xac\xdb\xb3\xe3\x80\x82"); } // [B1, V6]12476test { try toUnicodeFail("\xf0\x90\xa8\x85Ss\xd9\x8a\xd8\xae.\xda\xac\xdb\xb3\xe3\x80\x82"); } // [B1, V6]
12477test { try toAsciiFail("\xf0\x90\xa8\x85Ss\xd9\x8a\xd8\xae.\xda\xac\xdb\xb3\xe3\x80\x82", false); } // [B1, V6, A4_2]
12478test { try toAsciiFail("\xf0\x90\xa8\x85Ss\xd9\x8a\xd8\xae.\xda\xac\xdb\xb3\xe3\x80\x82", true); } // [B1, V6, A4_2]
5139test { try toUnicodeFail("xn--ss-ytd5i7765l.xn--fkb6l."); } // [B1, V6]12479test { try toUnicodeFail("xn--ss-ytd5i7765l.xn--fkb6l."); } // [B1, V6]
12480test { try toAsciiFail("xn--ss-ytd5i7765l.xn--fkb6l.", false); } // [B1, V6, A4_2]
12481test { try toAsciiFail("xn--ss-ytd5i7765l.xn--fkb6l.", true); } // [B1, V6, A4_2]
5140test { try toUnicodeFail("xn--zca23yncs877j.xn--fkb6l."); } // [B1, V6]12482test { try toUnicodeFail("xn--zca23yncs877j.xn--fkb6l."); } // [B1, V6]
12483test { try toAsciiFail("xn--zca23yncs877j.xn--fkb6l.", false); } // [B1, V6, A4_2]
12484test { try toAsciiFail("xn--zca23yncs877j.xn--fkb6l.", true); } // [B1, V6, A4_2]
5141test { try toUnicodeFail("\xf0\x90\xa8\x85SS\xef\xb1\x97.\xda\xac\xdb\xb3\xef\xb8\x92"); } // [B1, B3, V6, V7]12485test { try toUnicodeFail("\xf0\x90\xa8\x85SS\xef\xb1\x97.\xda\xac\xdb\xb3\xef\xb8\x92"); } // [B1, B3, V6, V7]
12486test { try toAsciiFail("\xf0\x90\xa8\x85SS\xef\xb1\x97.\xda\xac\xdb\xb3\xef\xb8\x92", false); } // [B1, B3, V6, V7]
12487test { try toAsciiFail("\xf0\x90\xa8\x85SS\xef\xb1\x97.\xda\xac\xdb\xb3\xef\xb8\x92", true); } // [B1, B3, V6, V7]
5142test { try toUnicodeFail("\xf0\x90\xa8\x85ss\xef\xb1\x97.\xda\xac\xdb\xb3\xef\xb8\x92"); } // [B1, B3, V6, V7]12488test { try toUnicodeFail("\xf0\x90\xa8\x85ss\xef\xb1\x97.\xda\xac\xdb\xb3\xef\xb8\x92"); } // [B1, B3, V6, V7]
12489test { try toAsciiFail("\xf0\x90\xa8\x85ss\xef\xb1\x97.\xda\xac\xdb\xb3\xef\xb8\x92", false); } // [B1, B3, V6, V7]
12490test { try toAsciiFail("\xf0\x90\xa8\x85ss\xef\xb1\x97.\xda\xac\xdb\xb3\xef\xb8\x92", true); } // [B1, B3, V6, V7]
5143test { try toUnicodeFail("\xf0\x90\xa8\x85Ss\xef\xb1\x97.\xda\xac\xdb\xb3\xef\xb8\x92"); } // [B1, B3, V6, V7]12491test { try toUnicodeFail("\xf0\x90\xa8\x85Ss\xef\xb1\x97.\xda\xac\xdb\xb3\xef\xb8\x92"); } // [B1, B3, V6, V7]
12492test { try toAsciiFail("\xf0\x90\xa8\x85Ss\xef\xb1\x97.\xda\xac\xdb\xb3\xef\xb8\x92", false); } // [B1, B3, V6, V7]
12493test { try toAsciiFail("\xf0\x90\xa8\x85Ss\xef\xb1\x97.\xda\xac\xdb\xb3\xef\xb8\x92", true); } // [B1, B3, V6, V7]
5144test { try toUnicodeFail("xn--ss-ytd5i7765l.xn--fkb6lp314e"); } // [B1, B3, V6, V7]12494test { try toUnicodeFail("xn--ss-ytd5i7765l.xn--fkb6lp314e"); } // [B1, B3, V6, V7]
12495test { try toAsciiFail("xn--ss-ytd5i7765l.xn--fkb6lp314e", false); } // [B1, B3, V6, V7]
12496test { try toAsciiFail("xn--ss-ytd5i7765l.xn--fkb6lp314e", true); } // [B1, B3, V6, V7]
5145test { try toUnicodeFail("xn--zca23yncs877j.xn--fkb6lp314e"); } // [B1, B3, V6, V7]12497test { try toUnicodeFail("xn--zca23yncs877j.xn--fkb6lp314e"); } // [B1, B3, V6, V7]
12498test { try toAsciiFail("xn--zca23yncs877j.xn--fkb6lp314e", false); } // [B1, B3, V6, V7]
12499test { try toAsciiFail("xn--zca23yncs877j.xn--fkb6lp314e", true); } // [B1, B3, V6, V7]
5146test { try toUnicodeFail("-\xe2\x89\xae\xf0\x9f\xa1\x92\xe1\xb3\xad.\xf1\x8f\xbf\xbe\xe1\x82\xa1\xdc\x94"); } // [B1, V3, V7]12500test { try toUnicodeFail("-\xe2\x89\xae\xf0\x9f\xa1\x92\xe1\xb3\xad.\xf1\x8f\xbf\xbe\xe1\x82\xa1\xdc\x94"); } // [B1, V3, V7]
12501test { try toAsciiFail("-\xe2\x89\xae\xf0\x9f\xa1\x92\xe1\xb3\xad.\xf1\x8f\xbf\xbe\xe1\x82\xa1\xdc\x94", false); } // [B1, V3, V7]
12502test { try toAsciiFail("-\xe2\x89\xae\xf0\x9f\xa1\x92\xe1\xb3\xad.\xf1\x8f\xbf\xbe\xe1\x82\xa1\xdc\x94", true); } // [B1, V3, V7]
5147test { try toUnicodeFail("-<\xcc\xb8\xf0\x9f\xa1\x92\xe1\xb3\xad.\xf1\x8f\xbf\xbe\xe1\x82\xa1\xdc\x94"); } // [B1, V3, V7]12503test { try toUnicodeFail("-<\xcc\xb8\xf0\x9f\xa1\x92\xe1\xb3\xad.\xf1\x8f\xbf\xbe\xe1\x82\xa1\xdc\x94"); } // [B1, V3, V7]
12504test { try toAsciiFail("-<\xcc\xb8\xf0\x9f\xa1\x92\xe1\xb3\xad.\xf1\x8f\xbf\xbe\xe1\x82\xa1\xdc\x94", false); } // [B1, V3, V7]
12505test { try toAsciiFail("-<\xcc\xb8\xf0\x9f\xa1\x92\xe1\xb3\xad.\xf1\x8f\xbf\xbe\xe1\x82\xa1\xdc\x94", true); } // [B1, V3, V7]
5148test { try toUnicodeFail("-<\xcc\xb8\xf0\x9f\xa1\x92\xe1\xb3\xad.\xf1\x8f\xbf\xbe\xe2\xb4\x81\xdc\x94"); } // [B1, V3, V7]12506test { try toUnicodeFail("-<\xcc\xb8\xf0\x9f\xa1\x92\xe1\xb3\xad.\xf1\x8f\xbf\xbe\xe2\xb4\x81\xdc\x94"); } // [B1, V3, V7]
12507test { try toAsciiFail("-<\xcc\xb8\xf0\x9f\xa1\x92\xe1\xb3\xad.\xf1\x8f\xbf\xbe\xe2\xb4\x81\xdc\x94", false); } // [B1, V3, V7]
12508test { try toAsciiFail("-<\xcc\xb8\xf0\x9f\xa1\x92\xe1\xb3\xad.\xf1\x8f\xbf\xbe\xe2\xb4\x81\xdc\x94", true); } // [B1, V3, V7]
5149test { try toUnicodeFail("-\xe2\x89\xae\xf0\x9f\xa1\x92\xe1\xb3\xad.\xf1\x8f\xbf\xbe\xe2\xb4\x81\xdc\x94"); } // [B1, V3, V7]12509test { try toUnicodeFail("-\xe2\x89\xae\xf0\x9f\xa1\x92\xe1\xb3\xad.\xf1\x8f\xbf\xbe\xe2\xb4\x81\xdc\x94"); } // [B1, V3, V7]
12510test { try toAsciiFail("-\xe2\x89\xae\xf0\x9f\xa1\x92\xe1\xb3\xad.\xf1\x8f\xbf\xbe\xe2\xb4\x81\xdc\x94", false); } // [B1, V3, V7]
12511test { try toAsciiFail("-\xe2\x89\xae\xf0\x9f\xa1\x92\xe1\xb3\xad.\xf1\x8f\xbf\xbe\xe2\xb4\x81\xdc\x94", true); } // [B1, V3, V7]
5150test { try toUnicodeFail("xn----44l04zxt68c.xn--enb135qf106f"); } // [B1, V3, V7]12512test { try toUnicodeFail("xn----44l04zxt68c.xn--enb135qf106f"); } // [B1, V3, V7]
12513test { try toAsciiFail("xn----44l04zxt68c.xn--enb135qf106f", false); } // [B1, V3, V7]
12514test { try toAsciiFail("xn----44l04zxt68c.xn--enb135qf106f", true); } // [B1, V3, V7]
5151test { try toUnicodeFail("xn----44l04zxt68c.xn--enb300c1597h"); } // [B1, V3, V7]12515test { try toUnicodeFail("xn----44l04zxt68c.xn--enb300c1597h"); } // [B1, V3, V7]
12516test { try toAsciiFail("xn----44l04zxt68c.xn--enb300c1597h", false); } // [B1, V3, V7]
12517test { try toAsciiFail("xn----44l04zxt68c.xn--enb300c1597h", true); } // [B1, V3, V7]
5152test { try toAsciiPass("\xf0\x9e\xa4\xa8\xef\xbd\xa1\xea\xa1\x8f\xe2\x80\x8d\xe2\x80\x8c", "xn--ge6h.xn--oc9a", true); }12518test { try toAsciiPass("\xf0\x9e\xa4\xa8\xef\xbd\xa1\xea\xa1\x8f\xe2\x80\x8d\xe2\x80\x8c", "xn--ge6h.xn--oc9a", true); }
5153test { try toUnicodeFail("\xf0\x9e\xa4\xa8\xef\xbd\xa1\xea\xa1\x8f\xe2\x80\x8d\xe2\x80\x8c"); } // [B6, C1, C2]12519test { try toUnicodeFail("\xf0\x9e\xa4\xa8\xef\xbd\xa1\xea\xa1\x8f\xe2\x80\x8d\xe2\x80\x8c"); } // [B6, C1, C2]
12520test { try toAsciiFail("\xf0\x9e\xa4\xa8\xef\xbd\xa1\xea\xa1\x8f\xe2\x80\x8d\xe2\x80\x8c", false); } // [B6, C1, C2]
5154test { try toAsciiPass("\xf0\x9e\xa4\xa8\xe3\x80\x82\xea\xa1\x8f\xe2\x80\x8d\xe2\x80\x8c", "xn--ge6h.xn--oc9a", true); }12521test { try toAsciiPass("\xf0\x9e\xa4\xa8\xe3\x80\x82\xea\xa1\x8f\xe2\x80\x8d\xe2\x80\x8c", "xn--ge6h.xn--oc9a", true); }
5155test { try toUnicodeFail("\xf0\x9e\xa4\xa8\xe3\x80\x82\xea\xa1\x8f\xe2\x80\x8d\xe2\x80\x8c"); } // [B6, C1, C2]12522test { try toUnicodeFail("\xf0\x9e\xa4\xa8\xe3\x80\x82\xea\xa1\x8f\xe2\x80\x8d\xe2\x80\x8c"); } // [B6, C1, C2]
12523test { try toAsciiFail("\xf0\x9e\xa4\xa8\xe3\x80\x82\xea\xa1\x8f\xe2\x80\x8d\xe2\x80\x8c", false); } // [B6, C1, C2]
5156test { try toAsciiPass("\xf0\x9e\xa4\x86\xe3\x80\x82\xea\xa1\x8f\xe2\x80\x8d\xe2\x80\x8c", "xn--ge6h.xn--oc9a", true); }12524test { try toAsciiPass("\xf0\x9e\xa4\x86\xe3\x80\x82\xea\xa1\x8f\xe2\x80\x8d\xe2\x80\x8c", "xn--ge6h.xn--oc9a", true); }
5157test { try toUnicodeFail("\xf0\x9e\xa4\x86\xe3\x80\x82\xea\xa1\x8f\xe2\x80\x8d\xe2\x80\x8c"); } // [B6, C1, C2]12525test { try toUnicodeFail("\xf0\x9e\xa4\x86\xe3\x80\x82\xea\xa1\x8f\xe2\x80\x8d\xe2\x80\x8c"); } // [B6, C1, C2]
12526test { try toAsciiFail("\xf0\x9e\xa4\x86\xe3\x80\x82\xea\xa1\x8f\xe2\x80\x8d\xe2\x80\x8c", false); } // [B6, C1, C2]
5158test { try toUnicodePass("xn--ge6h.xn--oc9a", "\xf0\x9e\xa4\xa8.\xea\xa1\x8f"); }12527test { try toUnicodePass("xn--ge6h.xn--oc9a", "\xf0\x9e\xa4\xa8.\xea\xa1\x8f"); }
5159test { try toAsciiPass("xn--ge6h.xn--oc9a", "xn--ge6h.xn--oc9a", false); }12528test { try toAsciiPass("xn--ge6h.xn--oc9a", "xn--ge6h.xn--oc9a", false); }
5160test { try toAsciiPass("xn--ge6h.xn--oc9a", "xn--ge6h.xn--oc9a", true); }12529test { try toAsciiPass("xn--ge6h.xn--oc9a", "xn--ge6h.xn--oc9a", true); }
...@@ -5165,59 +12534,164 @@ test { try toUnicodePass("\xf0\x9e\xa4\x86.\xea\xa1\x8f", "\xf0\x9e\xa4\xa8.\xea...@@ -5165,59 +12534,164 @@ test { try toUnicodePass("\xf0\x9e\xa4\x86.\xea\xa1\x8f", "\xf0\x9e\xa4\xa8.\xea
5165test { try toAsciiPass("\xf0\x9e\xa4\x86.\xea\xa1\x8f", "xn--ge6h.xn--oc9a", false); }12534test { try toAsciiPass("\xf0\x9e\xa4\x86.\xea\xa1\x8f", "xn--ge6h.xn--oc9a", false); }
5166test { try toAsciiPass("\xf0\x9e\xa4\x86.\xea\xa1\x8f", "xn--ge6h.xn--oc9a", true); }12535test { try toAsciiPass("\xf0\x9e\xa4\x86.\xea\xa1\x8f", "xn--ge6h.xn--oc9a", true); }
5167test { try toUnicodeFail("xn--ge6h.xn--0ugb9575h"); } // [B6, C1, C2]12536test { try toUnicodeFail("xn--ge6h.xn--0ugb9575h"); } // [B6, C1, C2]
12537test { try toAsciiFail("xn--ge6h.xn--0ugb9575h", false); } // [B6, C1, C2]
12538test { try toAsciiFail("xn--ge6h.xn--0ugb9575h", true); } // [B6, C1, C2]
5168test { try toAsciiPass("\xf0\x9e\xa4\x86\xef\xbd\xa1\xea\xa1\x8f\xe2\x80\x8d\xe2\x80\x8c", "xn--ge6h.xn--oc9a", true); }12539test { try toAsciiPass("\xf0\x9e\xa4\x86\xef\xbd\xa1\xea\xa1\x8f\xe2\x80\x8d\xe2\x80\x8c", "xn--ge6h.xn--oc9a", true); }
5169test { try toUnicodeFail("\xf0\x9e\xa4\x86\xef\xbd\xa1\xea\xa1\x8f\xe2\x80\x8d\xe2\x80\x8c"); } // [B6, C1, C2]12540test { try toUnicodeFail("\xf0\x9e\xa4\x86\xef\xbd\xa1\xea\xa1\x8f\xe2\x80\x8d\xe2\x80\x8c"); } // [B6, C1, C2]
12541test { try toAsciiFail("\xf0\x9e\xa4\x86\xef\xbd\xa1\xea\xa1\x8f\xe2\x80\x8d\xe2\x80\x8c", false); } // [B6, C1, C2]
5170test { try toUnicodeFail("\xf3\xa0\x85\xb9\xf0\x91\x82\xb6\xef\xbc\x8e\xe1\xa2\x8c\xf0\x91\x82\xb9\xd9\xa9"); } // [B1, B5, B6, V6]12542test { try toUnicodeFail("\xf3\xa0\x85\xb9\xf0\x91\x82\xb6\xef\xbc\x8e\xe1\xa2\x8c\xf0\x91\x82\xb9\xd9\xa9"); } // [B1, B5, B6, V6]
12543test { try toAsciiFail("\xf3\xa0\x85\xb9\xf0\x91\x82\xb6\xef\xbc\x8e\xe1\xa2\x8c\xf0\x91\x82\xb9\xd9\xa9", false); } // [B1, B5, B6, V6]
12544test { try toAsciiFail("\xf3\xa0\x85\xb9\xf0\x91\x82\xb6\xef\xbc\x8e\xe1\xa2\x8c\xf0\x91\x82\xb9\xd9\xa9", true); } // [B1, B5, B6, V6]
5171test { try toUnicodeFail("\xf3\xa0\x85\xb9\xf0\x91\x82\xb6.\xe1\xa2\x8c\xf0\x91\x82\xb9\xd9\xa9"); } // [B1, B5, B6, V6]12545test { try toUnicodeFail("\xf3\xa0\x85\xb9\xf0\x91\x82\xb6.\xe1\xa2\x8c\xf0\x91\x82\xb9\xd9\xa9"); } // [B1, B5, B6, V6]
12546test { try toAsciiFail("\xf3\xa0\x85\xb9\xf0\x91\x82\xb6.\xe1\xa2\x8c\xf0\x91\x82\xb9\xd9\xa9", false); } // [B1, B5, B6, V6]
12547test { try toAsciiFail("\xf3\xa0\x85\xb9\xf0\x91\x82\xb6.\xe1\xa2\x8c\xf0\x91\x82\xb9\xd9\xa9", true); } // [B1, B5, B6, V6]
5172test { try toUnicodeFail("xn--b50d.xn--iib993gyp5p"); } // [B1, B5, B6, V6]12548test { try toUnicodeFail("xn--b50d.xn--iib993gyp5p"); } // [B1, B5, B6, V6]
12549test { try toAsciiFail("xn--b50d.xn--iib993gyp5p", false); } // [B1, B5, B6, V6]
12550test { try toAsciiFail("xn--b50d.xn--iib993gyp5p", true); } // [B1, B5, B6, V6]
5173test { try toUnicodeFail("\xe2\x84\xb2\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82\xe2\x89\xaf\xe2\xbe\x91"); } // [V7]12551test { try toUnicodeFail("\xe2\x84\xb2\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82\xe2\x89\xaf\xe2\xbe\x91"); } // [V7]
12552test { try toAsciiFail("\xe2\x84\xb2\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82\xe2\x89\xaf\xe2\xbe\x91", false); } // [V7]
12553test { try toAsciiFail("\xe2\x84\xb2\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82\xe2\x89\xaf\xe2\xbe\x91", true); } // [V7]
5174test { try toUnicodeFail("\xe2\x84\xb2\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82>\xcc\xb8\xe2\xbe\x91"); } // [V7]12554test { try toUnicodeFail("\xe2\x84\xb2\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82>\xcc\xb8\xe2\xbe\x91"); } // [V7]
12555test { try toAsciiFail("\xe2\x84\xb2\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82>\xcc\xb8\xe2\xbe\x91", false); } // [V7]
12556test { try toAsciiFail("\xe2\x84\xb2\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82>\xcc\xb8\xe2\xbe\x91", true); } // [V7]
5175test { try toUnicodeFail("\xe2\x84\xb2\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82\xe2\x89\xaf\xe8\xa5\xbe"); } // [V7]12557test { try toUnicodeFail("\xe2\x84\xb2\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82\xe2\x89\xaf\xe8\xa5\xbe"); } // [V7]
12558test { try toAsciiFail("\xe2\x84\xb2\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82\xe2\x89\xaf\xe8\xa5\xbe", false); } // [V7]
12559test { try toAsciiFail("\xe2\x84\xb2\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82\xe2\x89\xaf\xe8\xa5\xbe", true); } // [V7]
5176test { try toUnicodeFail("\xe2\x84\xb2\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82>\xcc\xb8\xe8\xa5\xbe"); } // [V7]12560test { try toUnicodeFail("\xe2\x84\xb2\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82>\xcc\xb8\xe8\xa5\xbe"); } // [V7]
12561test { try toAsciiFail("\xe2\x84\xb2\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82>\xcc\xb8\xe8\xa5\xbe", false); } // [V7]
12562test { try toAsciiFail("\xe2\x84\xb2\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82>\xcc\xb8\xe8\xa5\xbe", true); } // [V7]
5177test { try toUnicodeFail("\xe2\x85\x8e\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82>\xcc\xb8\xe8\xa5\xbe"); } // [V7]12563test { try toUnicodeFail("\xe2\x85\x8e\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82>\xcc\xb8\xe8\xa5\xbe"); } // [V7]
12564test { try toAsciiFail("\xe2\x85\x8e\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82>\xcc\xb8\xe8\xa5\xbe", false); } // [V7]
12565test { try toAsciiFail("\xe2\x85\x8e\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82>\xcc\xb8\xe8\xa5\xbe", true); } // [V7]
5178test { try toUnicodeFail("\xe2\x85\x8e\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82\xe2\x89\xaf\xe8\xa5\xbe"); } // [V7]12566test { try toUnicodeFail("\xe2\x85\x8e\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82\xe2\x89\xaf\xe8\xa5\xbe"); } // [V7]
12567test { try toAsciiFail("\xe2\x85\x8e\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82\xe2\x89\xaf\xe8\xa5\xbe", false); } // [V7]
12568test { try toAsciiFail("\xe2\x85\x8e\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82\xe2\x89\xaf\xe8\xa5\xbe", true); } // [V7]
5179test { try toUnicodeFail("xn--73g39298c.xn--hdhz171b"); } // [V7]12569test { try toUnicodeFail("xn--73g39298c.xn--hdhz171b"); } // [V7]
12570test { try toAsciiFail("xn--73g39298c.xn--hdhz171b", false); } // [V7]
12571test { try toAsciiFail("xn--73g39298c.xn--hdhz171b", true); } // [V7]
5180test { try toUnicodeFail("\xe2\x85\x8e\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82>\xcc\xb8\xe2\xbe\x91"); } // [V7]12572test { try toUnicodeFail("\xe2\x85\x8e\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82>\xcc\xb8\xe2\xbe\x91"); } // [V7]
12573test { try toAsciiFail("\xe2\x85\x8e\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82>\xcc\xb8\xe2\xbe\x91", false); } // [V7]
12574test { try toAsciiFail("\xe2\x85\x8e\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82>\xcc\xb8\xe2\xbe\x91", true); } // [V7]
5181test { try toUnicodeFail("\xe2\x85\x8e\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82\xe2\x89\xaf\xe2\xbe\x91"); } // [V7]12575test { try toUnicodeFail("\xe2\x85\x8e\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82\xe2\x89\xaf\xe2\xbe\x91"); } // [V7]
12576test { try toAsciiFail("\xe2\x85\x8e\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82\xe2\x89\xaf\xe2\xbe\x91", false); } // [V7]
12577test { try toAsciiFail("\xe2\x85\x8e\xf3\xa0\x85\xba\xf1\x9d\xb5\x92\xe3\x80\x82\xe2\x89\xaf\xe2\xbe\x91", true); } // [V7]
5182test { try toUnicodeFail("xn--f3g73398c.xn--hdhz171b"); } // [V7]12578test { try toUnicodeFail("xn--f3g73398c.xn--hdhz171b"); } // [V7]
12579test { try toAsciiFail("xn--f3g73398c.xn--hdhz171b", false); } // [V7]
12580test { try toAsciiFail("xn--f3g73398c.xn--hdhz171b", true); } // [V7]
5183test { try toUnicodeFail("\xcf\x82\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xef\xbd\xa1-"); } // [B1, B5, B6, C2, V3]12581test { try toUnicodeFail("\xcf\x82\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xef\xbd\xa1-"); } // [B1, B5, B6, C2, V3]
12582test { try toAsciiFail("\xcf\x82\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xef\xbd\xa1-", false); } // [B1, B5, B6, C2, V3]
12583test { try toAsciiFail("\xcf\x82\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xef\xbd\xa1-", true); } // [B1, B5, B6, V3]
5184test { try toUnicodeFail("\xcf\x82\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xe3\x80\x82-"); } // [B1, B5, B6, C2, V3]12584test { try toUnicodeFail("\xcf\x82\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xe3\x80\x82-"); } // [B1, B5, B6, C2, V3]
12585test { try toAsciiFail("\xcf\x82\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xe3\x80\x82-", false); } // [B1, B5, B6, C2, V3]
12586test { try toAsciiFail("\xcf\x82\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xe3\x80\x82-", true); } // [B1, B5, B6, V3]
5185test { try toUnicodeFail("\xce\xa3\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xe3\x80\x82-"); } // [B1, B5, B6, C2, V3]12587test { try toUnicodeFail("\xce\xa3\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xe3\x80\x82-"); } // [B1, B5, B6, C2, V3]
12588test { try toAsciiFail("\xce\xa3\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xe3\x80\x82-", false); } // [B1, B5, B6, C2, V3]
12589test { try toAsciiFail("\xce\xa3\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xe3\x80\x82-", true); } // [B1, B5, B6, V3]
5186test { try toUnicodeFail("\xcf\x83\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xe3\x80\x82-"); } // [B1, B5, B6, C2, V3]12590test { try toUnicodeFail("\xcf\x83\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xe3\x80\x82-"); } // [B1, B5, B6, C2, V3]
12591test { try toAsciiFail("\xcf\x83\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xe3\x80\x82-", false); } // [B1, B5, B6, C2, V3]
12592test { try toAsciiFail("\xcf\x83\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xe3\x80\x82-", true); } // [B1, B5, B6, V3]
5187test { try toUnicodeFail("xn--4xa25ks2j.-"); } // [B1, B5, B6, V3]12593test { try toUnicodeFail("xn--4xa25ks2j.-"); } // [B1, B5, B6, V3]
12594test { try toAsciiFail("xn--4xa25ks2j.-", false); } // [B1, B5, B6, V3]
12595test { try toAsciiFail("xn--4xa25ks2j.-", true); } // [B1, B5, B6, V3]
5188test { try toUnicodeFail("xn--4xa25ks2jenu.-"); } // [B1, B5, B6, C2, V3]12596test { try toUnicodeFail("xn--4xa25ks2jenu.-"); } // [B1, B5, B6, C2, V3]
12597test { try toAsciiFail("xn--4xa25ks2jenu.-", false); } // [B1, B5, B6, C2, V3]
12598test { try toAsciiFail("xn--4xa25ks2jenu.-", true); } // [B1, B5, B6, C2, V3]
5189test { try toUnicodeFail("xn--3xa45ks2jenu.-"); } // [B1, B5, B6, C2, V3]12599test { try toUnicodeFail("xn--3xa45ks2jenu.-"); } // [B1, B5, B6, C2, V3]
12600test { try toAsciiFail("xn--3xa45ks2jenu.-", false); } // [B1, B5, B6, C2, V3]
12601test { try toAsciiFail("xn--3xa45ks2jenu.-", true); } // [B1, B5, B6, C2, V3]
5190test { try toUnicodeFail("\xce\xa3\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xef\xbd\xa1-"); } // [B1, B5, B6, C2, V3]12602test { try toUnicodeFail("\xce\xa3\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xef\xbd\xa1-"); } // [B1, B5, B6, C2, V3]
12603test { try toAsciiFail("\xce\xa3\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xef\xbd\xa1-", false); } // [B1, B5, B6, C2, V3]
12604test { try toAsciiFail("\xce\xa3\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xef\xbd\xa1-", true); } // [B1, B5, B6, V3]
5191test { try toUnicodeFail("\xcf\x83\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xef\xbd\xa1-"); } // [B1, B5, B6, C2, V3]12605test { try toUnicodeFail("\xcf\x83\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xef\xbd\xa1-"); } // [B1, B5, B6, C2, V3]
12606test { try toAsciiFail("\xcf\x83\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xef\xbd\xa1-", false); } // [B1, B5, B6, C2, V3]
12607test { try toAsciiFail("\xcf\x83\xe2\x80\x8d\xe0\xb7\x94\xd9\xa0\xef\xbd\xa1-", true); } // [B1, B5, B6, V3]
5192test { try toUnicodeFail("\xe2\x80\x8c.\xc3\x9f\xe1\x82\xa9-"); } // [C1, V3]12608test { try toUnicodeFail("\xe2\x80\x8c.\xc3\x9f\xe1\x82\xa9-"); } // [C1, V3]
12609test { try toAsciiFail("\xe2\x80\x8c.\xc3\x9f\xe1\x82\xa9-", false); } // [C1, V3]
12610test { try toAsciiFail("\xe2\x80\x8c.\xc3\x9f\xe1\x82\xa9-", true); } // [V3, A4_2]
5193test { try toUnicodeFail("\xe2\x80\x8c.\xc3\x9f\xe2\xb4\x89-"); } // [C1, V3]12611test { try toUnicodeFail("\xe2\x80\x8c.\xc3\x9f\xe2\xb4\x89-"); } // [C1, V3]
12612test { try toAsciiFail("\xe2\x80\x8c.\xc3\x9f\xe2\xb4\x89-", false); } // [C1, V3]
12613test { try toAsciiFail("\xe2\x80\x8c.\xc3\x9f\xe2\xb4\x89-", true); } // [V3, A4_2]
5194test { try toUnicodeFail("\xe2\x80\x8c.SS\xe1\x82\xa9-"); } // [C1, V3]12614test { try toUnicodeFail("\xe2\x80\x8c.SS\xe1\x82\xa9-"); } // [C1, V3]
12615test { try toAsciiFail("\xe2\x80\x8c.SS\xe1\x82\xa9-", false); } // [C1, V3]
12616test { try toAsciiFail("\xe2\x80\x8c.SS\xe1\x82\xa9-", true); } // [V3, A4_2]
5195test { try toUnicodeFail("\xe2\x80\x8c.ss\xe2\xb4\x89-"); } // [C1, V3]12617test { try toUnicodeFail("\xe2\x80\x8c.ss\xe2\xb4\x89-"); } // [C1, V3]
12618test { try toAsciiFail("\xe2\x80\x8c.ss\xe2\xb4\x89-", false); } // [C1, V3]
12619test { try toAsciiFail("\xe2\x80\x8c.ss\xe2\xb4\x89-", true); } // [V3, A4_2]
5196test { try toUnicodeFail("\xe2\x80\x8c.Ss\xe2\xb4\x89-"); } // [C1, V3]12620test { try toUnicodeFail("\xe2\x80\x8c.Ss\xe2\xb4\x89-"); } // [C1, V3]
12621test { try toAsciiFail("\xe2\x80\x8c.Ss\xe2\xb4\x89-", false); } // [C1, V3]
12622test { try toAsciiFail("\xe2\x80\x8c.Ss\xe2\xb4\x89-", true); } // [V3, A4_2]
5197test { try toUnicodeFail(".xn--ss--bi1b"); } // [V3, X4_2]12623test { try toUnicodeFail(".xn--ss--bi1b"); } // [V3, X4_2]
12624test { try toAsciiFail(".xn--ss--bi1b", false); } // [V3, A4_2]
12625test { try toAsciiFail(".xn--ss--bi1b", true); } // [V3, A4_2]
5198test { try toUnicodeFail("xn--0ug.xn--ss--bi1b"); } // [C1, V3]12626test { try toUnicodeFail("xn--0ug.xn--ss--bi1b"); } // [C1, V3]
12627test { try toAsciiFail("xn--0ug.xn--ss--bi1b", false); } // [C1, V3]
12628test { try toAsciiFail("xn--0ug.xn--ss--bi1b", true); } // [C1, V3]
5199test { try toUnicodeFail("xn--0ug.xn----pfa2305a"); } // [C1, V3]12629test { try toUnicodeFail("xn--0ug.xn----pfa2305a"); } // [C1, V3]
12630test { try toAsciiFail("xn--0ug.xn----pfa2305a", false); } // [C1, V3]
12631test { try toAsciiFail("xn--0ug.xn----pfa2305a", true); } // [C1, V3]
5200test { try toUnicodeFail(".xn--ss--4rn"); } // [V3, V7, X4_2]12632test { try toUnicodeFail(".xn--ss--4rn"); } // [V3, V7, X4_2]
12633test { try toAsciiFail(".xn--ss--4rn", false); } // [V3, V7, A4_2]
12634test { try toAsciiFail(".xn--ss--4rn", true); } // [V3, V7, A4_2]
5201test { try toUnicodeFail("xn--0ug.xn--ss--4rn"); } // [C1, V3, V7]12635test { try toUnicodeFail("xn--0ug.xn--ss--4rn"); } // [C1, V3, V7]
12636test { try toAsciiFail("xn--0ug.xn--ss--4rn", false); } // [C1, V3, V7]
12637test { try toAsciiFail("xn--0ug.xn--ss--4rn", true); } // [C1, V3, V7]
5202test { try toUnicodeFail("xn--0ug.xn----pfa042j"); } // [C1, V3, V7]12638test { try toUnicodeFail("xn--0ug.xn----pfa042j"); } // [C1, V3, V7]
12639test { try toAsciiFail("xn--0ug.xn----pfa042j", false); } // [C1, V3, V7]
12640test { try toAsciiFail("xn--0ug.xn----pfa042j", true); } // [C1, V3, V7]
5203test { try toUnicodeFail("\xf3\x8d\xad\xb2\xf0\x90\xab\x8d\xe3\x93\xb1\xe3\x80\x82\xe2\xbe\x91"); } // [B5, V7]12641test { try toUnicodeFail("\xf3\x8d\xad\xb2\xf0\x90\xab\x8d\xe3\x93\xb1\xe3\x80\x82\xe2\xbe\x91"); } // [B5, V7]
12642test { try toAsciiFail("\xf3\x8d\xad\xb2\xf0\x90\xab\x8d\xe3\x93\xb1\xe3\x80\x82\xe2\xbe\x91", false); } // [B5, V7]
12643test { try toAsciiFail("\xf3\x8d\xad\xb2\xf0\x90\xab\x8d\xe3\x93\xb1\xe3\x80\x82\xe2\xbe\x91", true); } // [B5, V7]
5204test { try toUnicodeFail("\xf3\x8d\xad\xb2\xf0\x90\xab\x8d\xe3\x93\xb1\xe3\x80\x82\xe8\xa5\xbe"); } // [B5, V7]12644test { try toUnicodeFail("\xf3\x8d\xad\xb2\xf0\x90\xab\x8d\xe3\x93\xb1\xe3\x80\x82\xe8\xa5\xbe"); } // [B5, V7]
12645test { try toAsciiFail("\xf3\x8d\xad\xb2\xf0\x90\xab\x8d\xe3\x93\xb1\xe3\x80\x82\xe8\xa5\xbe", false); } // [B5, V7]
12646test { try toAsciiFail("\xf3\x8d\xad\xb2\xf0\x90\xab\x8d\xe3\x93\xb1\xe3\x80\x82\xe8\xa5\xbe", true); } // [B5, V7]
5205test { try toUnicodeFail("xn--u7kt691dlj09f.xn--9v2a"); } // [B5, V7]12647test { try toUnicodeFail("xn--u7kt691dlj09f.xn--9v2a"); } // [B5, V7]
12648test { try toAsciiFail("xn--u7kt691dlj09f.xn--9v2a", false); } // [B5, V7]
12649test { try toAsciiFail("xn--u7kt691dlj09f.xn--9v2a", true); } // [B5, V7]
5206test { try toUnicodeFail("\xda\xa0\xf0\x90\xae\x8b\xf0\x90\xb9\xb0\xe2\x89\xae\xe3\x80\x82\xe2\x89\xaf\xf3\xa0\xa6\x97\xe2\x80\x8d"); } // [B1, B3, C2, V7]12650test { try toUnicodeFail("\xda\xa0\xf0\x90\xae\x8b\xf0\x90\xb9\xb0\xe2\x89\xae\xe3\x80\x82\xe2\x89\xaf\xf3\xa0\xa6\x97\xe2\x80\x8d"); } // [B1, B3, C2, V7]
12651test { try toAsciiFail("\xda\xa0\xf0\x90\xae\x8b\xf0\x90\xb9\xb0\xe2\x89\xae\xe3\x80\x82\xe2\x89\xaf\xf3\xa0\xa6\x97\xe2\x80\x8d", false); } // [B1, B3, C2, V7]
12652test { try toAsciiFail("\xda\xa0\xf0\x90\xae\x8b\xf0\x90\xb9\xb0\xe2\x89\xae\xe3\x80\x82\xe2\x89\xaf\xf3\xa0\xa6\x97\xe2\x80\x8d", true); } // [B1, B3, V7]
5207test { try toUnicodeFail("\xda\xa0\xf0\x90\xae\x8b\xf0\x90\xb9\xb0<\xcc\xb8\xe3\x80\x82>\xcc\xb8\xf3\xa0\xa6\x97\xe2\x80\x8d"); } // [B1, B3, C2, V7]12653test { try toUnicodeFail("\xda\xa0\xf0\x90\xae\x8b\xf0\x90\xb9\xb0<\xcc\xb8\xe3\x80\x82>\xcc\xb8\xf3\xa0\xa6\x97\xe2\x80\x8d"); } // [B1, B3, C2, V7]
12654test { try toAsciiFail("\xda\xa0\xf0\x90\xae\x8b\xf0\x90\xb9\xb0<\xcc\xb8\xe3\x80\x82>\xcc\xb8\xf3\xa0\xa6\x97\xe2\x80\x8d", false); } // [B1, B3, C2, V7]
12655test { try toAsciiFail("\xda\xa0\xf0\x90\xae\x8b\xf0\x90\xb9\xb0<\xcc\xb8\xe3\x80\x82>\xcc\xb8\xf3\xa0\xa6\x97\xe2\x80\x8d", true); } // [B1, B3, V7]
5208test { try toUnicodeFail("xn--2jb053lf13nyoc.xn--hdh08821l"); } // [B1, B3, V7]12656test { try toUnicodeFail("xn--2jb053lf13nyoc.xn--hdh08821l"); } // [B1, B3, V7]
12657test { try toAsciiFail("xn--2jb053lf13nyoc.xn--hdh08821l", false); } // [B1, B3, V7]
12658test { try toAsciiFail("xn--2jb053lf13nyoc.xn--hdh08821l", true); } // [B1, B3, V7]
5209test { try toUnicodeFail("xn--2jb053lf13nyoc.xn--1ugx6gc8096c"); } // [B1, B3, C2, V7]12659test { try toUnicodeFail("xn--2jb053lf13nyoc.xn--1ugx6gc8096c"); } // [B1, B3, C2, V7]
12660test { try toAsciiFail("xn--2jb053lf13nyoc.xn--1ugx6gc8096c", false); } // [B1, B3, C2, V7]
12661test { try toAsciiFail("xn--2jb053lf13nyoc.xn--1ugx6gc8096c", true); } // [B1, B3, C2, V7]
5210test { try toUnicodeFail("\xf0\x9d\x9f\x9e\xef\xbd\xa1\xf1\x83\xb0\xb6\xdd\xb7\xe0\xa2\xb0\xe2\xa9\x8b"); } // [B1, B5, B6, V7]12662test { try toUnicodeFail("\xf0\x9d\x9f\x9e\xef\xbd\xa1\xf1\x83\xb0\xb6\xdd\xb7\xe0\xa2\xb0\xe2\xa9\x8b"); } // [B1, B5, B6, V7]
12663test { try toAsciiFail("\xf0\x9d\x9f\x9e\xef\xbd\xa1\xf1\x83\xb0\xb6\xdd\xb7\xe0\xa2\xb0\xe2\xa9\x8b", false); } // [B1, B5, B6, V7]
12664test { try toAsciiFail("\xf0\x9d\x9f\x9e\xef\xbd\xa1\xf1\x83\xb0\xb6\xdd\xb7\xe0\xa2\xb0\xe2\xa9\x8b", true); } // [B1, B5, B6, V7]
5211test { try toUnicodeFail("6\xe3\x80\x82\xf1\x83\xb0\xb6\xdd\xb7\xe0\xa2\xb0\xe2\xa9\x8b"); } // [B1, B5, B6, V7]12665test { try toUnicodeFail("6\xe3\x80\x82\xf1\x83\xb0\xb6\xdd\xb7\xe0\xa2\xb0\xe2\xa9\x8b"); } // [B1, B5, B6, V7]
12666test { try toAsciiFail("6\xe3\x80\x82\xf1\x83\xb0\xb6\xdd\xb7\xe0\xa2\xb0\xe2\xa9\x8b", false); } // [B1, B5, B6, V7]
12667test { try toAsciiFail("6\xe3\x80\x82\xf1\x83\xb0\xb6\xdd\xb7\xe0\xa2\xb0\xe2\xa9\x8b", true); } // [B1, B5, B6, V7]
5212test { try toUnicodeFail("6.xn--7pb04do15eq748f"); } // [B1, B5, B6, V7]12668test { try toUnicodeFail("6.xn--7pb04do15eq748f"); } // [B1, B5, B6, V7]
12669test { try toAsciiFail("6.xn--7pb04do15eq748f", false); } // [B1, B5, B6, V7]
12670test { try toAsciiFail("6.xn--7pb04do15eq748f", true); } // [B1, B5, B6, V7]
5213test { try toUnicodeFail("-\xef\xb3\xbd\xe3\x80\x82\xf0\x91\x8d\xb4\xf0\x91\x87\x80"); } // [B1, V3, V6]12671test { try toUnicodeFail("-\xef\xb3\xbd\xe3\x80\x82\xf0\x91\x8d\xb4\xf0\x91\x87\x80"); } // [B1, V3, V6]
12672test { try toAsciiFail("-\xef\xb3\xbd\xe3\x80\x82\xf0\x91\x8d\xb4\xf0\x91\x87\x80", false); } // [B1, V3, V6]
12673test { try toAsciiFail("-\xef\xb3\xbd\xe3\x80\x82\xf0\x91\x8d\xb4\xf0\x91\x87\x80", true); } // [B1, V3, V6]
5214test { try toUnicodeFail("-\xef\xb3\xbd\xe3\x80\x82\xf0\x91\x87\x80\xf0\x91\x8d\xb4"); } // [B1, V3, V6]12674test { try toUnicodeFail("-\xef\xb3\xbd\xe3\x80\x82\xf0\x91\x87\x80\xf0\x91\x8d\xb4"); } // [B1, V3, V6]
12675test { try toAsciiFail("-\xef\xb3\xbd\xe3\x80\x82\xf0\x91\x87\x80\xf0\x91\x8d\xb4", false); } // [B1, V3, V6]
12676test { try toAsciiFail("-\xef\xb3\xbd\xe3\x80\x82\xf0\x91\x87\x80\xf0\x91\x8d\xb4", true); } // [B1, V3, V6]
5215test { try toUnicodeFail("-\xd8\xb4\xd9\x89\xe3\x80\x82\xf0\x91\x87\x80\xf0\x91\x8d\xb4"); } // [B1, V3, V6]12677test { try toUnicodeFail("-\xd8\xb4\xd9\x89\xe3\x80\x82\xf0\x91\x87\x80\xf0\x91\x8d\xb4"); } // [B1, V3, V6]
12678test { try toAsciiFail("-\xd8\xb4\xd9\x89\xe3\x80\x82\xf0\x91\x87\x80\xf0\x91\x8d\xb4", false); } // [B1, V3, V6]
12679test { try toAsciiFail("-\xd8\xb4\xd9\x89\xe3\x80\x82\xf0\x91\x87\x80\xf0\x91\x8d\xb4", true); } // [B1, V3, V6]
5216test { try toUnicodeFail("xn----qnc7d.xn--wd1d62a"); } // [B1, V3, V6]12680test { try toUnicodeFail("xn----qnc7d.xn--wd1d62a"); } // [B1, V3, V6]
12681test { try toAsciiFail("xn----qnc7d.xn--wd1d62a", false); } // [B1, V3, V6]
12682test { try toAsciiFail("xn----qnc7d.xn--wd1d62a", true); } // [B1, V3, V6]
5217test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\x8a\xb6\xf0\x9d\x9f\x8f.\xe0\xb5\x83\xf2\xaa\xa5\x90\xf0\x90\xb9\xac\xf3\x8a\x93\xb6"); } // [B1, C1, V6, V7]12683test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\x8a\xb6\xf0\x9d\x9f\x8f.\xe0\xb5\x83\xf2\xaa\xa5\x90\xf0\x90\xb9\xac\xf3\x8a\x93\xb6"); } // [B1, C1, V6, V7]
12684test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\x8a\xb6\xf0\x9d\x9f\x8f.\xe0\xb5\x83\xf2\xaa\xa5\x90\xf0\x90\xb9\xac\xf3\x8a\x93\xb6", false); } // [B1, C1, V6, V7]
12685test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\x8a\xb6\xf0\x9d\x9f\x8f.\xe0\xb5\x83\xf2\xaa\xa5\x90\xf0\x90\xb9\xac\xf3\x8a\x93\xb6", true); } // [B1, V6, V7]
5218test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\x8a\xb61.\xe0\xb5\x83\xf2\xaa\xa5\x90\xf0\x90\xb9\xac\xf3\x8a\x93\xb6"); } // [B1, C1, V6, V7]12686test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\x8a\xb61.\xe0\xb5\x83\xf2\xaa\xa5\x90\xf0\x90\xb9\xac\xf3\x8a\x93\xb6"); } // [B1, C1, V6, V7]
12687test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\x8a\xb61.\xe0\xb5\x83\xf2\xaa\xa5\x90\xf0\x90\xb9\xac\xf3\x8a\x93\xb6", false); } // [B1, C1, V6, V7]
12688test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\x8a\xb61.\xe0\xb5\x83\xf2\xaa\xa5\x90\xf0\x90\xb9\xac\xf3\x8a\x93\xb6", true); } // [B1, V6, V7]
5219test { try toUnicodeFail("xn--1-f521m.xn--mxc0872kcu37dnmem"); } // [B1, V6, V7]12689test { try toUnicodeFail("xn--1-f521m.xn--mxc0872kcu37dnmem"); } // [B1, V6, V7]
12690test { try toAsciiFail("xn--1-f521m.xn--mxc0872kcu37dnmem", false); } // [B1, V6, V7]
12691test { try toAsciiFail("xn--1-f521m.xn--mxc0872kcu37dnmem", true); } // [B1, V6, V7]
5220test { try toUnicodeFail("xn--1-rgnu0071n.xn--mxc0872kcu37dnmem"); } // [B1, C1, V6, V7]12692test { try toUnicodeFail("xn--1-rgnu0071n.xn--mxc0872kcu37dnmem"); } // [B1, C1, V6, V7]
12693test { try toAsciiFail("xn--1-rgnu0071n.xn--mxc0872kcu37dnmem", false); } // [B1, C1, V6, V7]
12694test { try toAsciiFail("xn--1-rgnu0071n.xn--mxc0872kcu37dnmem", true); } // [B1, C1, V6, V7]
5221test { try toUnicodePass("\xe9\xbd\x99--\xf0\x9d\x9f\xb0.\xc3\x9f", "\xe9\xbd\x99--4.\xc3\x9f"); }12695test { try toUnicodePass("\xe9\xbd\x99--\xf0\x9d\x9f\xb0.\xc3\x9f", "\xe9\xbd\x99--4.\xc3\x9f"); }
5222test { try toAsciiPass("\xe9\xbd\x99--\xf0\x9d\x9f\xb0.\xc3\x9f", "xn----4-p16k.xn--zca", false); }12696test { try toAsciiPass("\xe9\xbd\x99--\xf0\x9d\x9f\xb0.\xc3\x9f", "xn----4-p16k.xn--zca", false); }
5223test { try toAsciiPass("\xe9\xbd\x99--\xf0\x9d\x9f\xb0.\xc3\x9f", "xn----4-p16k.ss", true); }12697test { try toAsciiPass("\xe9\xbd\x99--\xf0\x9d\x9f\xb0.\xc3\x9f", "xn----4-p16k.ss", true); }
...@@ -5249,74 +12723,200 @@ test { try toUnicodePass("\xe9\xbd\x99--\xf0\x9d\x9f\xb0.Ss", "\xe9\xbd\x99--4.s...@@ -5249,74 +12723,200 @@ test { try toUnicodePass("\xe9\xbd\x99--\xf0\x9d\x9f\xb0.Ss", "\xe9\xbd\x99--4.s
5249test { try toAsciiPass("\xe9\xbd\x99--\xf0\x9d\x9f\xb0.Ss", "xn----4-p16k.ss", false); }12723test { try toAsciiPass("\xe9\xbd\x99--\xf0\x9d\x9f\xb0.Ss", "xn----4-p16k.ss", false); }
5250test { try toAsciiPass("\xe9\xbd\x99--\xf0\x9d\x9f\xb0.Ss", "xn----4-p16k.ss", true); }12724test { try toAsciiPass("\xe9\xbd\x99--\xf0\x9d\x9f\xb0.Ss", "xn----4-p16k.ss", true); }
5251test { try toUnicodeFail("\xe1\xaf\xb2.\xf0\x90\xb9\xa2\xf0\x9e\x80\x96\xe2\x80\x8c"); } // [B1, C1, V6]12725test { try toUnicodeFail("\xe1\xaf\xb2.\xf0\x90\xb9\xa2\xf0\x9e\x80\x96\xe2\x80\x8c"); } // [B1, C1, V6]
12726test { try toAsciiFail("\xe1\xaf\xb2.\xf0\x90\xb9\xa2\xf0\x9e\x80\x96\xe2\x80\x8c", false); } // [B1, C1, V6]
12727test { try toAsciiFail("\xe1\xaf\xb2.\xf0\x90\xb9\xa2\xf0\x9e\x80\x96\xe2\x80\x8c", true); } // [B1, V6]
5252test { try toUnicodeFail("xn--0zf.xn--9n0d2296a"); } // [B1, V6]12728test { try toUnicodeFail("xn--0zf.xn--9n0d2296a"); } // [B1, V6]
12729test { try toAsciiFail("xn--0zf.xn--9n0d2296a", false); } // [B1, V6]
12730test { try toAsciiFail("xn--0zf.xn--9n0d2296a", true); } // [B1, V6]
5253test { try toUnicodeFail("xn--0zf.xn--0ug9894grqqf"); } // [B1, C1, V6]12731test { try toUnicodeFail("xn--0zf.xn--0ug9894grqqf"); } // [B1, C1, V6]
12732test { try toAsciiFail("xn--0zf.xn--0ug9894grqqf", false); } // [B1, C1, V6]
12733test { try toAsciiFail("xn--0zf.xn--0ug9894grqqf", true); } // [B1, C1, V6]
5254test { try toUnicodeFail("\xf3\x83\xb2\x99\xf3\xa0\x8b\x98\xef\xbd\xa1?-\xe2\x80\x8d"); } // [C2, V7, U1]12734test { try toUnicodeFail("\xf3\x83\xb2\x99\xf3\xa0\x8b\x98\xef\xbd\xa1?-\xe2\x80\x8d"); } // [C2, V7, U1]
12735test { try toAsciiFail("\xf3\x83\xb2\x99\xf3\xa0\x8b\x98\xef\xbd\xa1?-\xe2\x80\x8d", false); } // [C2, V7, U1]
12736test { try toAsciiFail("\xf3\x83\xb2\x99\xf3\xa0\x8b\x98\xef\xbd\xa1?-\xe2\x80\x8d", true); } // [V3, V7, U1]
5255test { try toUnicodeFail("\xf3\x83\xb2\x99\xf3\xa0\x8b\x98\xe3\x80\x82?-\xe2\x80\x8d"); } // [C2, V7, U1]12737test { try toUnicodeFail("\xf3\x83\xb2\x99\xf3\xa0\x8b\x98\xe3\x80\x82?-\xe2\x80\x8d"); } // [C2, V7, U1]
12738test { try toAsciiFail("\xf3\x83\xb2\x99\xf3\xa0\x8b\x98\xe3\x80\x82?-\xe2\x80\x8d", false); } // [C2, V7, U1]
12739test { try toAsciiFail("\xf3\x83\xb2\x99\xf3\xa0\x8b\x98\xe3\x80\x82?-\xe2\x80\x8d", true); } // [V3, V7, U1]
5256test { try toUnicodeFail("xn--ct86d8w51a.?-"); } // [V3, V7, U1]12740test { try toUnicodeFail("xn--ct86d8w51a.?-"); } // [V3, V7, U1]
12741test { try toAsciiFail("xn--ct86d8w51a.?-", false); } // [V3, V7, U1]
12742test { try toAsciiFail("xn--ct86d8w51a.?-", true); } // [V3, V7, U1]
5257test { try toUnicodeFail("xn--ct86d8w51a.xn--?--n1t"); } // [C2, V7, U1]12743test { try toUnicodeFail("xn--ct86d8w51a.xn--?--n1t"); } // [C2, V7, U1]
12744test { try toAsciiFail("xn--ct86d8w51a.xn--?--n1t", false); } // [C2, V7, U1]
12745test { try toAsciiFail("xn--ct86d8w51a.xn--?--n1t", true); } // [C2, V7, U1]
5258test { try toUnicodeFail("xn--ct86d8w51a.?-\xe2\x80\x8d"); } // [C2, V7, U1]12746test { try toUnicodeFail("xn--ct86d8w51a.?-\xe2\x80\x8d"); } // [C2, V7, U1]
12747test { try toAsciiFail("xn--ct86d8w51a.?-\xe2\x80\x8d", false); } // [C2, V7, U1]
12748test { try toAsciiFail("xn--ct86d8w51a.?-\xe2\x80\x8d", true); } // [V3, V7, U1]
5259test { try toUnicodeFail("XN--CT86D8W51A.?-\xe2\x80\x8d"); } // [C2, V7, U1]12749test { try toUnicodeFail("XN--CT86D8W51A.?-\xe2\x80\x8d"); } // [C2, V7, U1]
12750test { try toAsciiFail("XN--CT86D8W51A.?-\xe2\x80\x8d", false); } // [C2, V7, U1]
12751test { try toAsciiFail("XN--CT86D8W51A.?-\xe2\x80\x8d", true); } // [V3, V7, U1]
5260test { try toUnicodeFail("Xn--Ct86d8w51a.?-\xe2\x80\x8d"); } // [C2, V7, U1]12752test { try toUnicodeFail("Xn--Ct86d8w51a.?-\xe2\x80\x8d"); } // [C2, V7, U1]
12753test { try toAsciiFail("Xn--Ct86d8w51a.?-\xe2\x80\x8d", false); } // [C2, V7, U1]
12754test { try toAsciiFail("Xn--Ct86d8w51a.?-\xe2\x80\x8d", true); } // [V3, V7, U1]
5261test { try toUnicodeFail("\xe1\xa9\xa0\xef\xbc\x8e\xf0\x9e\xb5\xb7-\xf0\x9d\xaa\xa9\xe6\x82\x8e"); } // [B1, B2, B3, V6, V7]12755test { try toUnicodeFail("\xe1\xa9\xa0\xef\xbc\x8e\xf0\x9e\xb5\xb7-\xf0\x9d\xaa\xa9\xe6\x82\x8e"); } // [B1, B2, B3, V6, V7]
12756test { try toAsciiFail("\xe1\xa9\xa0\xef\xbc\x8e\xf0\x9e\xb5\xb7-\xf0\x9d\xaa\xa9\xe6\x82\x8e", false); } // [B1, B2, B3, V6, V7]
12757test { try toAsciiFail("\xe1\xa9\xa0\xef\xbc\x8e\xf0\x9e\xb5\xb7-\xf0\x9d\xaa\xa9\xe6\x82\x8e", true); } // [B1, B2, B3, V6, V7]
5262test { try toUnicodeFail("\xe1\xa9\xa0.\xf0\x9e\xb5\xb7-\xf0\x9d\xaa\xa9\xe6\x82\x8e"); } // [B1, B2, B3, V6, V7]12758test { try toUnicodeFail("\xe1\xa9\xa0.\xf0\x9e\xb5\xb7-\xf0\x9d\xaa\xa9\xe6\x82\x8e"); } // [B1, B2, B3, V6, V7]
12759test { try toAsciiFail("\xe1\xa9\xa0.\xf0\x9e\xb5\xb7-\xf0\x9d\xaa\xa9\xe6\x82\x8e", false); } // [B1, B2, B3, V6, V7]
12760test { try toAsciiFail("\xe1\xa9\xa0.\xf0\x9e\xb5\xb7-\xf0\x9d\xaa\xa9\xe6\x82\x8e", true); } // [B1, B2, B3, V6, V7]
5263test { try toUnicodeFail("xn--jof.xn----gf4bq282iezpa"); } // [B1, B2, B3, V6, V7]12761test { try toUnicodeFail("xn--jof.xn----gf4bq282iezpa"); } // [B1, B2, B3, V6, V7]
12762test { try toAsciiFail("xn--jof.xn----gf4bq282iezpa", false); } // [B1, B2, B3, V6, V7]
12763test { try toAsciiFail("xn--jof.xn----gf4bq282iezpa", true); } // [B1, B2, B3, V6, V7]
5264test { try toUnicodeFail("\xf0\x9b\x9c\xaf\xf3\xa0\x8a\x9b\xef\xbc\x8e\xf0\x9e\xa4\xb3\xf1\x8f\xa5\xbe"); } // [B2, B3, B6, V7]12764test { try toUnicodeFail("\xf0\x9b\x9c\xaf\xf3\xa0\x8a\x9b\xef\xbc\x8e\xf0\x9e\xa4\xb3\xf1\x8f\xa5\xbe"); } // [B2, B3, B6, V7]
12765test { try toAsciiFail("\xf0\x9b\x9c\xaf\xf3\xa0\x8a\x9b\xef\xbc\x8e\xf0\x9e\xa4\xb3\xf1\x8f\xa5\xbe", false); } // [B2, B3, B6, V7]
12766test { try toAsciiFail("\xf0\x9b\x9c\xaf\xf3\xa0\x8a\x9b\xef\xbc\x8e\xf0\x9e\xa4\xb3\xf1\x8f\xa5\xbe", true); } // [B2, B3, B6, V7]
5265test { try toUnicodeFail("\xf0\x9b\x9c\xaf\xf3\xa0\x8a\x9b.\xf0\x9e\xa4\xb3\xf1\x8f\xa5\xbe"); } // [B2, B3, B6, V7]12767test { try toUnicodeFail("\xf0\x9b\x9c\xaf\xf3\xa0\x8a\x9b.\xf0\x9e\xa4\xb3\xf1\x8f\xa5\xbe"); } // [B2, B3, B6, V7]
12768test { try toAsciiFail("\xf0\x9b\x9c\xaf\xf3\xa0\x8a\x9b.\xf0\x9e\xa4\xb3\xf1\x8f\xa5\xbe", false); } // [B2, B3, B6, V7]
12769test { try toAsciiFail("\xf0\x9b\x9c\xaf\xf3\xa0\x8a\x9b.\xf0\x9e\xa4\xb3\xf1\x8f\xa5\xbe", true); } // [B2, B3, B6, V7]
5266test { try toUnicodeFail("\xf0\x9b\x9c\xaf\xf3\xa0\x8a\x9b.\xf0\x9e\xa4\x91\xf1\x8f\xa5\xbe"); } // [B2, B3, B6, V7]12770test { try toUnicodeFail("\xf0\x9b\x9c\xaf\xf3\xa0\x8a\x9b.\xf0\x9e\xa4\x91\xf1\x8f\xa5\xbe"); } // [B2, B3, B6, V7]
12771test { try toAsciiFail("\xf0\x9b\x9c\xaf\xf3\xa0\x8a\x9b.\xf0\x9e\xa4\x91\xf1\x8f\xa5\xbe", false); } // [B2, B3, B6, V7]
12772test { try toAsciiFail("\xf0\x9b\x9c\xaf\xf3\xa0\x8a\x9b.\xf0\x9e\xa4\x91\xf1\x8f\xa5\xbe", true); } // [B2, B3, B6, V7]
5267test { try toUnicodeFail("xn--xx5gy2741c.xn--re6hw266j"); } // [B2, B3, B6, V7]12773test { try toUnicodeFail("xn--xx5gy2741c.xn--re6hw266j"); } // [B2, B3, B6, V7]
12774test { try toAsciiFail("xn--xx5gy2741c.xn--re6hw266j", false); } // [B2, B3, B6, V7]
12775test { try toAsciiFail("xn--xx5gy2741c.xn--re6hw266j", true); } // [B2, B3, B6, V7]
5268test { try toUnicodeFail("\xf0\x9b\x9c\xaf\xf3\xa0\x8a\x9b\xef\xbc\x8e\xf0\x9e\xa4\x91\xf1\x8f\xa5\xbe"); } // [B2, B3, B6, V7]12776test { try toUnicodeFail("\xf0\x9b\x9c\xaf\xf3\xa0\x8a\x9b\xef\xbc\x8e\xf0\x9e\xa4\x91\xf1\x8f\xa5\xbe"); } // [B2, B3, B6, V7]
12777test { try toAsciiFail("\xf0\x9b\x9c\xaf\xf3\xa0\x8a\x9b\xef\xbc\x8e\xf0\x9e\xa4\x91\xf1\x8f\xa5\xbe", false); } // [B2, B3, B6, V7]
12778test { try toAsciiFail("\xf0\x9b\x9c\xaf\xf3\xa0\x8a\x9b\xef\xbc\x8e\xf0\x9e\xa4\x91\xf1\x8f\xa5\xbe", true); } // [B2, B3, B6, V7]
5269test { try toUnicodeFail("\xdc\x9c\xf0\x90\xab\x92\xd8\xae.\xf0\x90\x8b\xb2"); } // [B1]12779test { try toUnicodeFail("\xdc\x9c\xf0\x90\xab\x92\xd8\xae.\xf0\x90\x8b\xb2"); } // [B1]
12780test { try toAsciiFail("\xdc\x9c\xf0\x90\xab\x92\xd8\xae.\xf0\x90\x8b\xb2", false); } // [B1]
12781test { try toAsciiFail("\xdc\x9c\xf0\x90\xab\x92\xd8\xae.\xf0\x90\x8b\xb2", true); } // [B1]
5270test { try toUnicodeFail("xn--tgb98b8643d.xn--m97c"); } // [B1]12782test { try toUnicodeFail("xn--tgb98b8643d.xn--m97c"); } // [B1]
12783test { try toAsciiFail("xn--tgb98b8643d.xn--m97c", false); } // [B1]
12784test { try toAsciiFail("xn--tgb98b8643d.xn--m97c", true); } // [B1]
5271test { try toUnicodeFail("\xf0\x90\xbc\x91\xf0\x9e\xa4\x93\xd8\xb7\xe0\xa3\xa2.?"); } // [B1, V7, U1]12785test { try toUnicodeFail("\xf0\x90\xbc\x91\xf0\x9e\xa4\x93\xd8\xb7\xe0\xa3\xa2.?"); } // [B1, V7, U1]
12786test { try toAsciiFail("\xf0\x90\xbc\x91\xf0\x9e\xa4\x93\xd8\xb7\xe0\xa3\xa2.?", false); } // [B1, V7, U1]
12787test { try toAsciiFail("\xf0\x90\xbc\x91\xf0\x9e\xa4\x93\xd8\xb7\xe0\xa3\xa2.?", true); } // [B1, V7, U1]
5272test { try toUnicodeFail("\xf0\x90\xbc\x91\xf0\x9e\xa4\xb5\xd8\xb7\xe0\xa3\xa2.?"); } // [B1, V7, U1]12788test { try toUnicodeFail("\xf0\x90\xbc\x91\xf0\x9e\xa4\xb5\xd8\xb7\xe0\xa3\xa2.?"); } // [B1, V7, U1]
12789test { try toAsciiFail("\xf0\x90\xbc\x91\xf0\x9e\xa4\xb5\xd8\xb7\xe0\xa3\xa2.?", false); } // [B1, V7, U1]
12790test { try toAsciiFail("\xf0\x90\xbc\x91\xf0\x9e\xa4\xb5\xd8\xb7\xe0\xa3\xa2.?", true); } // [B1, V7, U1]
5273test { try toUnicodeFail("xn--2gb08k9w69agm0g.?"); } // [B1, V7, U1]12791test { try toUnicodeFail("xn--2gb08k9w69agm0g.?"); } // [B1, V7, U1]
12792test { try toAsciiFail("xn--2gb08k9w69agm0g.?", false); } // [B1, V7, U1]
12793test { try toAsciiFail("xn--2gb08k9w69agm0g.?", true); } // [B1, V7, U1]
5274test { try toUnicodeFail("\xe2\x86\x83\xe3\x80\x82\xe0\xa9\x8d\xe1\xb3\x94\xf0\x9e\xb7\xa3"); } // [B1, V6, V7]12794test { try toUnicodeFail("\xe2\x86\x83\xe3\x80\x82\xe0\xa9\x8d\xe1\xb3\x94\xf0\x9e\xb7\xa3"); } // [B1, V6, V7]
12795test { try toAsciiFail("\xe2\x86\x83\xe3\x80\x82\xe0\xa9\x8d\xe1\xb3\x94\xf0\x9e\xb7\xa3", false); } // [B1, V6, V7]
12796test { try toAsciiFail("\xe2\x86\x83\xe3\x80\x82\xe0\xa9\x8d\xe1\xb3\x94\xf0\x9e\xb7\xa3", true); } // [B1, V6, V7]
5275test { try toUnicodeFail("\xe2\x86\x83\xe3\x80\x82\xe1\xb3\x94\xe0\xa9\x8d\xf0\x9e\xb7\xa3"); } // [B1, V6, V7]12797test { try toUnicodeFail("\xe2\x86\x83\xe3\x80\x82\xe1\xb3\x94\xe0\xa9\x8d\xf0\x9e\xb7\xa3"); } // [B1, V6, V7]
12798test { try toAsciiFail("\xe2\x86\x83\xe3\x80\x82\xe1\xb3\x94\xe0\xa9\x8d\xf0\x9e\xb7\xa3", false); } // [B1, V6, V7]
12799test { try toAsciiFail("\xe2\x86\x83\xe3\x80\x82\xe1\xb3\x94\xe0\xa9\x8d\xf0\x9e\xb7\xa3", true); } // [B1, V6, V7]
5276test { try toUnicodeFail("\xe2\x86\x84\xe3\x80\x82\xe1\xb3\x94\xe0\xa9\x8d\xf0\x9e\xb7\xa3"); } // [B1, V6, V7]12800test { try toUnicodeFail("\xe2\x86\x84\xe3\x80\x82\xe1\xb3\x94\xe0\xa9\x8d\xf0\x9e\xb7\xa3"); } // [B1, V6, V7]
12801test { try toAsciiFail("\xe2\x86\x84\xe3\x80\x82\xe1\xb3\x94\xe0\xa9\x8d\xf0\x9e\xb7\xa3", false); } // [B1, V6, V7]
12802test { try toAsciiFail("\xe2\x86\x84\xe3\x80\x82\xe1\xb3\x94\xe0\xa9\x8d\xf0\x9e\xb7\xa3", true); } // [B1, V6, V7]
5277test { try toUnicodeFail("xn--r5g.xn--ybc995g0835a"); } // [B1, V6, V7]12803test { try toUnicodeFail("xn--r5g.xn--ybc995g0835a"); } // [B1, V6, V7]
12804test { try toAsciiFail("xn--r5g.xn--ybc995g0835a", false); } // [B1, V6, V7]
12805test { try toAsciiFail("xn--r5g.xn--ybc995g0835a", true); } // [B1, V6, V7]
5278test { try toUnicodeFail("\xe2\x86\x84\xe3\x80\x82\xe0\xa9\x8d\xe1\xb3\x94\xf0\x9e\xb7\xa3"); } // [B1, V6, V7]12806test { try toUnicodeFail("\xe2\x86\x84\xe3\x80\x82\xe0\xa9\x8d\xe1\xb3\x94\xf0\x9e\xb7\xa3"); } // [B1, V6, V7]
12807test { try toAsciiFail("\xe2\x86\x84\xe3\x80\x82\xe0\xa9\x8d\xe1\xb3\x94\xf0\x9e\xb7\xa3", false); } // [B1, V6, V7]
12808test { try toAsciiFail("\xe2\x86\x84\xe3\x80\x82\xe0\xa9\x8d\xe1\xb3\x94\xf0\x9e\xb7\xa3", true); } // [B1, V6, V7]
5279test { try toUnicodeFail("xn--q5g.xn--ybc995g0835a"); } // [B1, V6, V7]12809test { try toUnicodeFail("xn--q5g.xn--ybc995g0835a"); } // [B1, V6, V7]
12810test { try toAsciiFail("xn--q5g.xn--ybc995g0835a", false); } // [B1, V6, V7]
12811test { try toAsciiFail("xn--q5g.xn--ybc995g0835a", true); } // [B1, V6, V7]
5280test { try toUnicodeFail("\xf3\xa0\xaa\xa2-\xe3\x80\x82\xf2\x9b\x82\x8f\xe2\x89\xae\xf0\x91\x9c\xab"); } // [V3, V7]12812test { try toUnicodeFail("\xf3\xa0\xaa\xa2-\xe3\x80\x82\xf2\x9b\x82\x8f\xe2\x89\xae\xf0\x91\x9c\xab"); } // [V3, V7]
12813test { try toAsciiFail("\xf3\xa0\xaa\xa2-\xe3\x80\x82\xf2\x9b\x82\x8f\xe2\x89\xae\xf0\x91\x9c\xab", false); } // [V3, V7]
12814test { try toAsciiFail("\xf3\xa0\xaa\xa2-\xe3\x80\x82\xf2\x9b\x82\x8f\xe2\x89\xae\xf0\x91\x9c\xab", true); } // [V3, V7]
5281test { try toUnicodeFail("\xf3\xa0\xaa\xa2-\xe3\x80\x82\xf2\x9b\x82\x8f<\xcc\xb8\xf0\x91\x9c\xab"); } // [V3, V7]12815test { try toUnicodeFail("\xf3\xa0\xaa\xa2-\xe3\x80\x82\xf2\x9b\x82\x8f<\xcc\xb8\xf0\x91\x9c\xab"); } // [V3, V7]
12816test { try toAsciiFail("\xf3\xa0\xaa\xa2-\xe3\x80\x82\xf2\x9b\x82\x8f<\xcc\xb8\xf0\x91\x9c\xab", false); } // [V3, V7]
12817test { try toAsciiFail("\xf3\xa0\xaa\xa2-\xe3\x80\x82\xf2\x9b\x82\x8f<\xcc\xb8\xf0\x91\x9c\xab", true); } // [V3, V7]
5282test { try toUnicodeFail("xn----bh61m.xn--gdhz157g0em1d"); } // [V3, V7]12818test { try toUnicodeFail("xn----bh61m.xn--gdhz157g0em1d"); } // [V3, V7]
12819test { try toAsciiFail("xn----bh61m.xn--gdhz157g0em1d", false); } // [V3, V7]
12820test { try toAsciiFail("xn----bh61m.xn--gdhz157g0em1d", true); } // [V3, V7]
5283test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\x89\xb9\xe2\x80\x8d\xe3\x80\x82\xf2\x8c\xbf\xa7\xe2\x89\xae\xe1\x82\xa9"); } // [C1, C2, V7]12821test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\x89\xb9\xe2\x80\x8d\xe3\x80\x82\xf2\x8c\xbf\xa7\xe2\x89\xae\xe1\x82\xa9"); } // [C1, C2, V7]
12822test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\x89\xb9\xe2\x80\x8d\xe3\x80\x82\xf2\x8c\xbf\xa7\xe2\x89\xae\xe1\x82\xa9", false); } // [C1, C2, V7]
12823test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\x89\xb9\xe2\x80\x8d\xe3\x80\x82\xf2\x8c\xbf\xa7\xe2\x89\xae\xe1\x82\xa9", true); } // [V7]
5284test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\x89\xb9\xe2\x80\x8d\xe3\x80\x82\xf2\x8c\xbf\xa7<\xcc\xb8\xe1\x82\xa9"); } // [C1, C2, V7]12824test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\x89\xb9\xe2\x80\x8d\xe3\x80\x82\xf2\x8c\xbf\xa7<\xcc\xb8\xe1\x82\xa9"); } // [C1, C2, V7]
12825test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\x89\xb9\xe2\x80\x8d\xe3\x80\x82\xf2\x8c\xbf\xa7<\xcc\xb8\xe1\x82\xa9", false); } // [C1, C2, V7]
12826test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\x89\xb9\xe2\x80\x8d\xe3\x80\x82\xf2\x8c\xbf\xa7<\xcc\xb8\xe1\x82\xa9", true); } // [V7]
5285test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\x89\xb9\xe2\x80\x8d\xe3\x80\x82\xf2\x8c\xbf\xa7<\xcc\xb8\xe2\xb4\x89"); } // [C1, C2, V7]12827test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\x89\xb9\xe2\x80\x8d\xe3\x80\x82\xf2\x8c\xbf\xa7<\xcc\xb8\xe2\xb4\x89"); } // [C1, C2, V7]
12828test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\x89\xb9\xe2\x80\x8d\xe3\x80\x82\xf2\x8c\xbf\xa7<\xcc\xb8\xe2\xb4\x89", false); } // [C1, C2, V7]
12829test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\x89\xb9\xe2\x80\x8d\xe3\x80\x82\xf2\x8c\xbf\xa7<\xcc\xb8\xe2\xb4\x89", true); } // [V7]
5286test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\x89\xb9\xe2\x80\x8d\xe3\x80\x82\xf2\x8c\xbf\xa7\xe2\x89\xae\xe2\xb4\x89"); } // [C1, C2, V7]12830test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\x89\xb9\xe2\x80\x8d\xe3\x80\x82\xf2\x8c\xbf\xa7\xe2\x89\xae\xe2\xb4\x89"); } // [C1, C2, V7]
12831test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\x89\xb9\xe2\x80\x8d\xe3\x80\x82\xf2\x8c\xbf\xa7\xe2\x89\xae\xe2\xb4\x89", false); } // [C1, C2, V7]
12832test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\x89\xb9\xe2\x80\x8d\xe3\x80\x82\xf2\x8c\xbf\xa7\xe2\x89\xae\xe2\xb4\x89", true); } // [V7]
5287test { try toUnicodeFail("xn--3n36e.xn--gdh992byu01p"); } // [V7]12833test { try toUnicodeFail("xn--3n36e.xn--gdh992byu01p"); } // [V7]
12834test { try toAsciiFail("xn--3n36e.xn--gdh992byu01p", false); } // [V7]
12835test { try toAsciiFail("xn--3n36e.xn--gdh992byu01p", true); } // [V7]
5288test { try toUnicodeFail("xn--0ugc90904y.xn--gdh992byu01p"); } // [C1, C2, V7]12836test { try toUnicodeFail("xn--0ugc90904y.xn--gdh992byu01p"); } // [C1, C2, V7]
12837test { try toAsciiFail("xn--0ugc90904y.xn--gdh992byu01p", false); } // [C1, C2, V7]
12838test { try toAsciiFail("xn--0ugc90904y.xn--gdh992byu01p", true); } // [C1, C2, V7]
5289test { try toUnicodeFail("xn--3n36e.xn--hnd112gpz83n"); } // [V7]12839test { try toUnicodeFail("xn--3n36e.xn--hnd112gpz83n"); } // [V7]
12840test { try toAsciiFail("xn--3n36e.xn--hnd112gpz83n", false); } // [V7]
12841test { try toAsciiFail("xn--3n36e.xn--hnd112gpz83n", true); } // [V7]
5290test { try toUnicodeFail("xn--0ugc90904y.xn--hnd112gpz83n"); } // [C1, C2, V7]12842test { try toUnicodeFail("xn--0ugc90904y.xn--hnd112gpz83n"); } // [C1, C2, V7]
12843test { try toAsciiFail("xn--0ugc90904y.xn--hnd112gpz83n", false); } // [C1, C2, V7]
12844test { try toAsciiFail("xn--0ugc90904y.xn--hnd112gpz83n", true); } // [C1, C2, V7]
5291test { try toUnicodeFail("\xf0\x90\xb9\xaf-\xf0\x91\x84\xb4\xe0\xa2\xbc\xe3\x80\x82\xef\xb8\x92\xe4\x96\x90\xe2\xbe\x86"); } // [B1, V7]12845test { try toUnicodeFail("\xf0\x90\xb9\xaf-\xf0\x91\x84\xb4\xe0\xa2\xbc\xe3\x80\x82\xef\xb8\x92\xe4\x96\x90\xe2\xbe\x86"); } // [B1, V7]
12846test { try toAsciiFail("\xf0\x90\xb9\xaf-\xf0\x91\x84\xb4\xe0\xa2\xbc\xe3\x80\x82\xef\xb8\x92\xe4\x96\x90\xe2\xbe\x86", false); } // [B1, V7]
12847test { try toAsciiFail("\xf0\x90\xb9\xaf-\xf0\x91\x84\xb4\xe0\xa2\xbc\xe3\x80\x82\xef\xb8\x92\xe4\x96\x90\xe2\xbe\x86", true); } // [B1, V7]
5292test { try toUnicodeFail("\xf0\x90\xb9\xaf-\xf0\x91\x84\xb4\xe0\xa2\xbc\xe3\x80\x82\xe3\x80\x82\xe4\x96\x90\xe8\x88\x8c"); } // [B1, X4_2]12848test { try toUnicodeFail("\xf0\x90\xb9\xaf-\xf0\x91\x84\xb4\xe0\xa2\xbc\xe3\x80\x82\xe3\x80\x82\xe4\x96\x90\xe8\x88\x8c"); } // [B1, X4_2]
12849test { try toAsciiFail("\xf0\x90\xb9\xaf-\xf0\x91\x84\xb4\xe0\xa2\xbc\xe3\x80\x82\xe3\x80\x82\xe4\x96\x90\xe8\x88\x8c", false); } // [B1, A4_2]
12850test { try toAsciiFail("\xf0\x90\xb9\xaf-\xf0\x91\x84\xb4\xe0\xa2\xbc\xe3\x80\x82\xe3\x80\x82\xe4\x96\x90\xe8\x88\x8c", true); } // [B1, A4_2]
5293test { try toUnicodeFail("xn----rpd7902rclc..xn--fpo216m"); } // [B1, X4_2]12851test { try toUnicodeFail("xn----rpd7902rclc..xn--fpo216m"); } // [B1, X4_2]
12852test { try toAsciiFail("xn----rpd7902rclc..xn--fpo216m", false); } // [B1, A4_2]
12853test { try toAsciiFail("xn----rpd7902rclc..xn--fpo216m", true); } // [B1, A4_2]
5294test { try toUnicodeFail("xn----rpd7902rclc.xn--fpo216mn07e"); } // [B1, V7]12854test { try toUnicodeFail("xn----rpd7902rclc.xn--fpo216mn07e"); } // [B1, V7]
12855test { try toAsciiFail("xn----rpd7902rclc.xn--fpo216mn07e", false); } // [B1, V7]
12856test { try toAsciiFail("xn----rpd7902rclc.xn--fpo216mn07e", true); } // [B1, V7]
5295test { try toUnicodeFail("\xf0\x9d\xaa\x9e\xe1\x82\xb0\xef\xbd\xa1\xec\xaa\xa1"); } // [V6]12857test { try toUnicodeFail("\xf0\x9d\xaa\x9e\xe1\x82\xb0\xef\xbd\xa1\xec\xaa\xa1"); } // [V6]
12858test { try toAsciiFail("\xf0\x9d\xaa\x9e\xe1\x82\xb0\xef\xbd\xa1\xec\xaa\xa1", false); } // [V6]
12859test { try toAsciiFail("\xf0\x9d\xaa\x9e\xe1\x82\xb0\xef\xbd\xa1\xec\xaa\xa1", true); } // [V6]
5296test { try toUnicodeFail("\xf0\x9d\xaa\x9e\xe1\x82\xb0\xef\xbd\xa1\xe1\x84\x8d\xe1\x85\xa8\xe1\x86\xa8"); } // [V6]12860test { try toUnicodeFail("\xf0\x9d\xaa\x9e\xe1\x82\xb0\xef\xbd\xa1\xe1\x84\x8d\xe1\x85\xa8\xe1\x86\xa8"); } // [V6]
12861test { try toAsciiFail("\xf0\x9d\xaa\x9e\xe1\x82\xb0\xef\xbd\xa1\xe1\x84\x8d\xe1\x85\xa8\xe1\x86\xa8", false); } // [V6]
12862test { try toAsciiFail("\xf0\x9d\xaa\x9e\xe1\x82\xb0\xef\xbd\xa1\xe1\x84\x8d\xe1\x85\xa8\xe1\x86\xa8", true); } // [V6]
5297test { try toUnicodeFail("\xf0\x9d\xaa\x9e\xe1\x82\xb0\xe3\x80\x82\xec\xaa\xa1"); } // [V6]12863test { try toUnicodeFail("\xf0\x9d\xaa\x9e\xe1\x82\xb0\xe3\x80\x82\xec\xaa\xa1"); } // [V6]
12864test { try toAsciiFail("\xf0\x9d\xaa\x9e\xe1\x82\xb0\xe3\x80\x82\xec\xaa\xa1", false); } // [V6]
12865test { try toAsciiFail("\xf0\x9d\xaa\x9e\xe1\x82\xb0\xe3\x80\x82\xec\xaa\xa1", true); } // [V6]
5298test { try toUnicodeFail("\xf0\x9d\xaa\x9e\xe1\x82\xb0\xe3\x80\x82\xe1\x84\x8d\xe1\x85\xa8\xe1\x86\xa8"); } // [V6]12866test { try toUnicodeFail("\xf0\x9d\xaa\x9e\xe1\x82\xb0\xe3\x80\x82\xe1\x84\x8d\xe1\x85\xa8\xe1\x86\xa8"); } // [V6]
12867test { try toAsciiFail("\xf0\x9d\xaa\x9e\xe1\x82\xb0\xe3\x80\x82\xe1\x84\x8d\xe1\x85\xa8\xe1\x86\xa8", false); } // [V6]
12868test { try toAsciiFail("\xf0\x9d\xaa\x9e\xe1\x82\xb0\xe3\x80\x82\xe1\x84\x8d\xe1\x85\xa8\xe1\x86\xa8", true); } // [V6]
5299test { try toUnicodeFail("\xf0\x9d\xaa\x9e\xe2\xb4\x90\xe3\x80\x82\xe1\x84\x8d\xe1\x85\xa8\xe1\x86\xa8"); } // [V6]12869test { try toUnicodeFail("\xf0\x9d\xaa\x9e\xe2\xb4\x90\xe3\x80\x82\xe1\x84\x8d\xe1\x85\xa8\xe1\x86\xa8"); } // [V6]
12870test { try toAsciiFail("\xf0\x9d\xaa\x9e\xe2\xb4\x90\xe3\x80\x82\xe1\x84\x8d\xe1\x85\xa8\xe1\x86\xa8", false); } // [V6]
12871test { try toAsciiFail("\xf0\x9d\xaa\x9e\xe2\xb4\x90\xe3\x80\x82\xe1\x84\x8d\xe1\x85\xa8\xe1\x86\xa8", true); } // [V6]
5300test { try toUnicodeFail("\xf0\x9d\xaa\x9e\xe2\xb4\x90\xe3\x80\x82\xec\xaa\xa1"); } // [V6]12872test { try toUnicodeFail("\xf0\x9d\xaa\x9e\xe2\xb4\x90\xe3\x80\x82\xec\xaa\xa1"); } // [V6]
12873test { try toAsciiFail("\xf0\x9d\xaa\x9e\xe2\xb4\x90\xe3\x80\x82\xec\xaa\xa1", false); } // [V6]
12874test { try toAsciiFail("\xf0\x9d\xaa\x9e\xe2\xb4\x90\xe3\x80\x82\xec\xaa\xa1", true); } // [V6]
5301test { try toUnicodeFail("xn--7kj1858k.xn--pi6b"); } // [V6]12875test { try toUnicodeFail("xn--7kj1858k.xn--pi6b"); } // [V6]
12876test { try toAsciiFail("xn--7kj1858k.xn--pi6b", false); } // [V6]
12877test { try toAsciiFail("xn--7kj1858k.xn--pi6b", true); } // [V6]
5302test { try toUnicodeFail("\xf0\x9d\xaa\x9e\xe2\xb4\x90\xef\xbd\xa1\xe1\x84\x8d\xe1\x85\xa8\xe1\x86\xa8"); } // [V6]12878test { try toUnicodeFail("\xf0\x9d\xaa\x9e\xe2\xb4\x90\xef\xbd\xa1\xe1\x84\x8d\xe1\x85\xa8\xe1\x86\xa8"); } // [V6]
12879test { try toAsciiFail("\xf0\x9d\xaa\x9e\xe2\xb4\x90\xef\xbd\xa1\xe1\x84\x8d\xe1\x85\xa8\xe1\x86\xa8", false); } // [V6]
12880test { try toAsciiFail("\xf0\x9d\xaa\x9e\xe2\xb4\x90\xef\xbd\xa1\xe1\x84\x8d\xe1\x85\xa8\xe1\x86\xa8", true); } // [V6]
5303test { try toUnicodeFail("\xf0\x9d\xaa\x9e\xe2\xb4\x90\xef\xbd\xa1\xec\xaa\xa1"); } // [V6]12881test { try toUnicodeFail("\xf0\x9d\xaa\x9e\xe2\xb4\x90\xef\xbd\xa1\xec\xaa\xa1"); } // [V6]
12882test { try toAsciiFail("\xf0\x9d\xaa\x9e\xe2\xb4\x90\xef\xbd\xa1\xec\xaa\xa1", false); } // [V6]
12883test { try toAsciiFail("\xf0\x9d\xaa\x9e\xe2\xb4\x90\xef\xbd\xa1\xec\xaa\xa1", true); } // [V6]
5304test { try toUnicodeFail("xn--ond3755u.xn--pi6b"); } // [V6, V7]12884test { try toUnicodeFail("xn--ond3755u.xn--pi6b"); } // [V6, V7]
12885test { try toAsciiFail("xn--ond3755u.xn--pi6b", false); } // [V6, V7]
12886test { try toAsciiFail("xn--ond3755u.xn--pi6b", true); } // [V6, V7]
5305test { try toUnicodeFail("\xe0\xb8\xba\xec\xa9\x81\xf0\x90\xb9\xac.\xf4\x8b\x89\xb3"); } // [B1, V6, V7]12887test { try toUnicodeFail("\xe0\xb8\xba\xec\xa9\x81\xf0\x90\xb9\xac.\xf4\x8b\x89\xb3"); } // [B1, V6, V7]
12888test { try toAsciiFail("\xe0\xb8\xba\xec\xa9\x81\xf0\x90\xb9\xac.\xf4\x8b\x89\xb3", false); } // [B1, V6, V7]
12889test { try toAsciiFail("\xe0\xb8\xba\xec\xa9\x81\xf0\x90\xb9\xac.\xf4\x8b\x89\xb3", true); } // [B1, V6, V7]
5306test { try toUnicodeFail("\xe0\xb8\xba\xe1\x84\x8d\xe1\x85\xa4\xe1\x86\xb8\xf0\x90\xb9\xac.\xf4\x8b\x89\xb3"); } // [B1, V6, V7]12890test { try toUnicodeFail("\xe0\xb8\xba\xe1\x84\x8d\xe1\x85\xa4\xe1\x86\xb8\xf0\x90\xb9\xac.\xf4\x8b\x89\xb3"); } // [B1, V6, V7]
12891test { try toAsciiFail("\xe0\xb8\xba\xe1\x84\x8d\xe1\x85\xa4\xe1\x86\xb8\xf0\x90\xb9\xac.\xf4\x8b\x89\xb3", false); } // [B1, V6, V7]
12892test { try toAsciiFail("\xe0\xb8\xba\xe1\x84\x8d\xe1\x85\xa4\xe1\x86\xb8\xf0\x90\xb9\xac.\xf4\x8b\x89\xb3", true); } // [B1, V6, V7]
5307test { try toUnicodeFail("xn--o4c4837g2zvb.xn--5f70g"); } // [B1, V6, V7]12893test { try toUnicodeFail("xn--o4c4837g2zvb.xn--5f70g"); } // [B1, V6, V7]
12894test { try toAsciiFail("xn--o4c4837g2zvb.xn--5f70g", false); } // [B1, V6, V7]
12895test { try toAsciiFail("xn--o4c4837g2zvb.xn--5f70g", true); } // [B1, V6, V7]
5308test { try toUnicodeFail("\xe1\xa1\x85\xef\xbc\x90\xe2\x80\x8c\xef\xbd\xa1\xe2\x8e\xa2\xf3\xa4\xa8\x84"); } // [C1, V7]12896test { try toUnicodeFail("\xe1\xa1\x85\xef\xbc\x90\xe2\x80\x8c\xef\xbd\xa1\xe2\x8e\xa2\xf3\xa4\xa8\x84"); } // [C1, V7]
12897test { try toAsciiFail("\xe1\xa1\x85\xef\xbc\x90\xe2\x80\x8c\xef\xbd\xa1\xe2\x8e\xa2\xf3\xa4\xa8\x84", false); } // [C1, V7]
12898test { try toAsciiFail("\xe1\xa1\x85\xef\xbc\x90\xe2\x80\x8c\xef\xbd\xa1\xe2\x8e\xa2\xf3\xa4\xa8\x84", true); } // [V7]
5309test { try toUnicodeFail("\xe1\xa1\x850\xe2\x80\x8c\xe3\x80\x82\xe2\x8e\xa2\xf3\xa4\xa8\x84"); } // [C1, V7]12899test { try toUnicodeFail("\xe1\xa1\x850\xe2\x80\x8c\xe3\x80\x82\xe2\x8e\xa2\xf3\xa4\xa8\x84"); } // [C1, V7]
12900test { try toAsciiFail("\xe1\xa1\x850\xe2\x80\x8c\xe3\x80\x82\xe2\x8e\xa2\xf3\xa4\xa8\x84", false); } // [C1, V7]
12901test { try toAsciiFail("\xe1\xa1\x850\xe2\x80\x8c\xe3\x80\x82\xe2\x8e\xa2\xf3\xa4\xa8\x84", true); } // [V7]
5310test { try toUnicodeFail("xn--0-z6j.xn--8lh28773l"); } // [V7]12902test { try toUnicodeFail("xn--0-z6j.xn--8lh28773l"); } // [V7]
12903test { try toAsciiFail("xn--0-z6j.xn--8lh28773l", false); } // [V7]
12904test { try toAsciiFail("xn--0-z6j.xn--8lh28773l", true); } // [V7]
5311test { try toUnicodeFail("xn--0-z6jy93b.xn--8lh28773l"); } // [C1, V7]12905test { try toUnicodeFail("xn--0-z6jy93b.xn--8lh28773l"); } // [C1, V7]
12906test { try toAsciiFail("xn--0-z6jy93b.xn--8lh28773l", false); } // [C1, V7]
12907test { try toAsciiFail("xn--0-z6jy93b.xn--8lh28773l", true); } // [C1, V7]
5312test { try toAsciiPass("\xf0\xb2\xae\x9a\xef\xbc\x99\xea\x8d\xa9\xe1\x9f\x93\xef\xbc\x8e\xe2\x80\x8d\xc3\x9f", "xn--9-i0j5967eg3qz.ss", true); }12908test { try toAsciiPass("\xf0\xb2\xae\x9a\xef\xbc\x99\xea\x8d\xa9\xe1\x9f\x93\xef\xbc\x8e\xe2\x80\x8d\xc3\x9f", "xn--9-i0j5967eg3qz.ss", true); }
5313test { try toUnicodeFail("\xf0\xb2\xae\x9a\xef\xbc\x99\xea\x8d\xa9\xe1\x9f\x93\xef\xbc\x8e\xe2\x80\x8d\xc3\x9f"); } // [C2]12909test { try toUnicodeFail("\xf0\xb2\xae\x9a\xef\xbc\x99\xea\x8d\xa9\xe1\x9f\x93\xef\xbc\x8e\xe2\x80\x8d\xc3\x9f"); } // [C2]
12910test { try toAsciiFail("\xf0\xb2\xae\x9a\xef\xbc\x99\xea\x8d\xa9\xe1\x9f\x93\xef\xbc\x8e\xe2\x80\x8d\xc3\x9f", false); } // [C2]
5314test { try toAsciiPass("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.\xe2\x80\x8d\xc3\x9f", "xn--9-i0j5967eg3qz.ss", true); }12911test { try toAsciiPass("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.\xe2\x80\x8d\xc3\x9f", "xn--9-i0j5967eg3qz.ss", true); }
5315test { try toUnicodeFail("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.\xe2\x80\x8d\xc3\x9f"); } // [C2]12912test { try toUnicodeFail("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.\xe2\x80\x8d\xc3\x9f"); } // [C2]
12913test { try toAsciiFail("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.\xe2\x80\x8d\xc3\x9f", false); } // [C2]
5316test { try toAsciiPass("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.\xe2\x80\x8dSS", "xn--9-i0j5967eg3qz.ss", true); }12914test { try toAsciiPass("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.\xe2\x80\x8dSS", "xn--9-i0j5967eg3qz.ss", true); }
5317test { try toUnicodeFail("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.\xe2\x80\x8dSS"); } // [C2]12915test { try toUnicodeFail("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.\xe2\x80\x8dSS"); } // [C2]
12916test { try toAsciiFail("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.\xe2\x80\x8dSS", false); } // [C2]
5318test { try toAsciiPass("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.\xe2\x80\x8dss", "xn--9-i0j5967eg3qz.ss", true); }12917test { try toAsciiPass("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.\xe2\x80\x8dss", "xn--9-i0j5967eg3qz.ss", true); }
5319test { try toUnicodeFail("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.\xe2\x80\x8dss"); } // [C2]12918test { try toUnicodeFail("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.\xe2\x80\x8dss"); } // [C2]
12919test { try toAsciiFail("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.\xe2\x80\x8dss", false); } // [C2]
5320test { try toUnicodePass("xn--9-i0j5967eg3qz.ss", "\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.ss"); }12920test { try toUnicodePass("xn--9-i0j5967eg3qz.ss", "\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.ss"); }
5321test { try toAsciiPass("xn--9-i0j5967eg3qz.ss", "xn--9-i0j5967eg3qz.ss", false); }12921test { try toAsciiPass("xn--9-i0j5967eg3qz.ss", "xn--9-i0j5967eg3qz.ss", false); }
5322test { try toAsciiPass("xn--9-i0j5967eg3qz.ss", "xn--9-i0j5967eg3qz.ss", true); }12922test { try toAsciiPass("xn--9-i0j5967eg3qz.ss", "xn--9-i0j5967eg3qz.ss", true); }
...@@ -5327,15 +12927,23 @@ test { try toUnicodePass("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.SS", "\xf0\x...@@ -5327,15 +12927,23 @@ test { try toUnicodePass("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.SS", "\xf0\x
5327test { try toAsciiPass("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.SS", "xn--9-i0j5967eg3qz.ss", false); }12927test { try toAsciiPass("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.SS", "xn--9-i0j5967eg3qz.ss", false); }
5328test { try toAsciiPass("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.SS", "xn--9-i0j5967eg3qz.ss", true); }12928test { try toAsciiPass("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.SS", "xn--9-i0j5967eg3qz.ss", true); }
5329test { try toUnicodeFail("xn--9-i0j5967eg3qz.xn--ss-l1t"); } // [C2]12929test { try toUnicodeFail("xn--9-i0j5967eg3qz.xn--ss-l1t"); } // [C2]
12930test { try toAsciiFail("xn--9-i0j5967eg3qz.xn--ss-l1t", false); } // [C2]
12931test { try toAsciiFail("xn--9-i0j5967eg3qz.xn--ss-l1t", true); } // [C2]
5330test { try toUnicodeFail("xn--9-i0j5967eg3qz.xn--zca770n"); } // [C2]12932test { try toUnicodeFail("xn--9-i0j5967eg3qz.xn--zca770n"); } // [C2]
12933test { try toAsciiFail("xn--9-i0j5967eg3qz.xn--zca770n", false); } // [C2]
12934test { try toAsciiFail("xn--9-i0j5967eg3qz.xn--zca770n", true); } // [C2]
5331test { try toAsciiPass("\xf0\xb2\xae\x9a\xef\xbc\x99\xea\x8d\xa9\xe1\x9f\x93\xef\xbc\x8e\xe2\x80\x8dSS", "xn--9-i0j5967eg3qz.ss", true); }12935test { try toAsciiPass("\xf0\xb2\xae\x9a\xef\xbc\x99\xea\x8d\xa9\xe1\x9f\x93\xef\xbc\x8e\xe2\x80\x8dSS", "xn--9-i0j5967eg3qz.ss", true); }
5332test { try toUnicodeFail("\xf0\xb2\xae\x9a\xef\xbc\x99\xea\x8d\xa9\xe1\x9f\x93\xef\xbc\x8e\xe2\x80\x8dSS"); } // [C2]12936test { try toUnicodeFail("\xf0\xb2\xae\x9a\xef\xbc\x99\xea\x8d\xa9\xe1\x9f\x93\xef\xbc\x8e\xe2\x80\x8dSS"); } // [C2]
12937test { try toAsciiFail("\xf0\xb2\xae\x9a\xef\xbc\x99\xea\x8d\xa9\xe1\x9f\x93\xef\xbc\x8e\xe2\x80\x8dSS", false); } // [C2]
5333test { try toAsciiPass("\xf0\xb2\xae\x9a\xef\xbc\x99\xea\x8d\xa9\xe1\x9f\x93\xef\xbc\x8e\xe2\x80\x8dss", "xn--9-i0j5967eg3qz.ss", true); }12938test { try toAsciiPass("\xf0\xb2\xae\x9a\xef\xbc\x99\xea\x8d\xa9\xe1\x9f\x93\xef\xbc\x8e\xe2\x80\x8dss", "xn--9-i0j5967eg3qz.ss", true); }
5334test { try toUnicodeFail("\xf0\xb2\xae\x9a\xef\xbc\x99\xea\x8d\xa9\xe1\x9f\x93\xef\xbc\x8e\xe2\x80\x8dss"); } // [C2]12939test { try toUnicodeFail("\xf0\xb2\xae\x9a\xef\xbc\x99\xea\x8d\xa9\xe1\x9f\x93\xef\xbc\x8e\xe2\x80\x8dss"); } // [C2]
12940test { try toAsciiFail("\xf0\xb2\xae\x9a\xef\xbc\x99\xea\x8d\xa9\xe1\x9f\x93\xef\xbc\x8e\xe2\x80\x8dss", false); } // [C2]
5335test { try toAsciiPass("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.\xe2\x80\x8dSs", "xn--9-i0j5967eg3qz.ss", true); }12941test { try toAsciiPass("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.\xe2\x80\x8dSs", "xn--9-i0j5967eg3qz.ss", true); }
5336test { try toUnicodeFail("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.\xe2\x80\x8dSs"); } // [C2]12942test { try toUnicodeFail("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.\xe2\x80\x8dSs"); } // [C2]
12943test { try toAsciiFail("\xf0\xb2\xae\x9a9\xea\x8d\xa9\xe1\x9f\x93.\xe2\x80\x8dSs", false); } // [C2]
5337test { try toAsciiPass("\xf0\xb2\xae\x9a\xef\xbc\x99\xea\x8d\xa9\xe1\x9f\x93\xef\xbc\x8e\xe2\x80\x8dSs", "xn--9-i0j5967eg3qz.ss", true); }12944test { try toAsciiPass("\xf0\xb2\xae\x9a\xef\xbc\x99\xea\x8d\xa9\xe1\x9f\x93\xef\xbc\x8e\xe2\x80\x8dSs", "xn--9-i0j5967eg3qz.ss", true); }
5338test { try toUnicodeFail("\xf0\xb2\xae\x9a\xef\xbc\x99\xea\x8d\xa9\xe1\x9f\x93\xef\xbc\x8e\xe2\x80\x8dSs"); } // [C2]12945test { try toUnicodeFail("\xf0\xb2\xae\x9a\xef\xbc\x99\xea\x8d\xa9\xe1\x9f\x93\xef\xbc\x8e\xe2\x80\x8dSs"); } // [C2]
12946test { try toAsciiFail("\xf0\xb2\xae\x9a\xef\xbc\x99\xea\x8d\xa9\xe1\x9f\x93\xef\xbc\x8e\xe2\x80\x8dSs", false); } // [C2]
5339test { try toUnicodePass("\xea\x97\xb7\xf0\x91\x86\x80.\xdd\x9d\xf0\x90\xa9\x92", "\xea\x97\xb7\xf0\x91\x86\x80.\xdd\x9d\xf0\x90\xa9\x92"); }12947test { try toUnicodePass("\xea\x97\xb7\xf0\x91\x86\x80.\xdd\x9d\xf0\x90\xa9\x92", "\xea\x97\xb7\xf0\x91\x86\x80.\xdd\x9d\xf0\x90\xa9\x92"); }
5340test { try toAsciiPass("\xea\x97\xb7\xf0\x91\x86\x80.\xdd\x9d\xf0\x90\xa9\x92", "xn--ju8a625r.xn--hpb0073k", false); }12948test { try toAsciiPass("\xea\x97\xb7\xf0\x91\x86\x80.\xdd\x9d\xf0\x90\xa9\x92", "xn--ju8a625r.xn--hpb0073k", false); }
5341test { try toAsciiPass("\xea\x97\xb7\xf0\x91\x86\x80.\xdd\x9d\xf0\x90\xa9\x92", "xn--ju8a625r.xn--hpb0073k", true); }12949test { try toAsciiPass("\xea\x97\xb7\xf0\x91\x86\x80.\xdd\x9d\xf0\x90\xa9\x92", "xn--ju8a625r.xn--hpb0073k", true); }
...@@ -5343,240 +12951,701 @@ test { try toUnicodePass("xn--ju8a625r.xn--hpb0073k", "\xea\x97\xb7\xf0\x91\x86\...@@ -5343,240 +12951,701 @@ test { try toUnicodePass("xn--ju8a625r.xn--hpb0073k", "\xea\x97\xb7\xf0\x91\x86\
5343test { try toAsciiPass("xn--ju8a625r.xn--hpb0073k", "xn--ju8a625r.xn--hpb0073k", false); }12951test { try toAsciiPass("xn--ju8a625r.xn--hpb0073k", "xn--ju8a625r.xn--hpb0073k", false); }
5344test { try toAsciiPass("xn--ju8a625r.xn--hpb0073k", "xn--ju8a625r.xn--hpb0073k", true); }12952test { try toAsciiPass("xn--ju8a625r.xn--hpb0073k", "xn--ju8a625r.xn--hpb0073k", true); }
5345test { try toUnicodeFail("\xe2\x92\x90\xe2\x89\xaf-\xe3\x80\x82\xef\xb8\x92\xf2\xa9\x91\xa3-\xf1\x9e\x9b\xa0"); } // [V3, V7]12953test { try toUnicodeFail("\xe2\x92\x90\xe2\x89\xaf-\xe3\x80\x82\xef\xb8\x92\xf2\xa9\x91\xa3-\xf1\x9e\x9b\xa0"); } // [V3, V7]
12954test { try toAsciiFail("\xe2\x92\x90\xe2\x89\xaf-\xe3\x80\x82\xef\xb8\x92\xf2\xa9\x91\xa3-\xf1\x9e\x9b\xa0", false); } // [V3, V7]
12955test { try toAsciiFail("\xe2\x92\x90\xe2\x89\xaf-\xe3\x80\x82\xef\xb8\x92\xf2\xa9\x91\xa3-\xf1\x9e\x9b\xa0", true); } // [V3, V7]
5346test { try toUnicodeFail("\xe2\x92\x90>\xcc\xb8-\xe3\x80\x82\xef\xb8\x92\xf2\xa9\x91\xa3-\xf1\x9e\x9b\xa0"); } // [V3, V7]12956test { try toUnicodeFail("\xe2\x92\x90>\xcc\xb8-\xe3\x80\x82\xef\xb8\x92\xf2\xa9\x91\xa3-\xf1\x9e\x9b\xa0"); } // [V3, V7]
12957test { try toAsciiFail("\xe2\x92\x90>\xcc\xb8-\xe3\x80\x82\xef\xb8\x92\xf2\xa9\x91\xa3-\xf1\x9e\x9b\xa0", false); } // [V3, V7]
12958test { try toAsciiFail("\xe2\x92\x90>\xcc\xb8-\xe3\x80\x82\xef\xb8\x92\xf2\xa9\x91\xa3-\xf1\x9e\x9b\xa0", true); } // [V3, V7]
5347test { try toUnicodeFail("9.\xe2\x89\xaf-\xe3\x80\x82\xe3\x80\x82\xf2\xa9\x91\xa3-\xf1\x9e\x9b\xa0"); } // [V3, V7, X4_2]12959test { try toUnicodeFail("9.\xe2\x89\xaf-\xe3\x80\x82\xe3\x80\x82\xf2\xa9\x91\xa3-\xf1\x9e\x9b\xa0"); } // [V3, V7, X4_2]
12960test { try toAsciiFail("9.\xe2\x89\xaf-\xe3\x80\x82\xe3\x80\x82\xf2\xa9\x91\xa3-\xf1\x9e\x9b\xa0", false); } // [V3, V7, A4_2]
12961test { try toAsciiFail("9.\xe2\x89\xaf-\xe3\x80\x82\xe3\x80\x82\xf2\xa9\x91\xa3-\xf1\x9e\x9b\xa0", true); } // [V3, V7, A4_2]
5348test { try toUnicodeFail("9.>\xcc\xb8-\xe3\x80\x82\xe3\x80\x82\xf2\xa9\x91\xa3-\xf1\x9e\x9b\xa0"); } // [V3, V7, X4_2]12962test { try toUnicodeFail("9.>\xcc\xb8-\xe3\x80\x82\xe3\x80\x82\xf2\xa9\x91\xa3-\xf1\x9e\x9b\xa0"); } // [V3, V7, X4_2]
12963test { try toAsciiFail("9.>\xcc\xb8-\xe3\x80\x82\xe3\x80\x82\xf2\xa9\x91\xa3-\xf1\x9e\x9b\xa0", false); } // [V3, V7, A4_2]
12964test { try toAsciiFail("9.>\xcc\xb8-\xe3\x80\x82\xe3\x80\x82\xf2\xa9\x91\xa3-\xf1\x9e\x9b\xa0", true); } // [V3, V7, A4_2]
5349test { try toUnicodeFail("9.xn----ogo..xn----xj54d1s69k"); } // [V3, V7, X4_2]12965test { try toUnicodeFail("9.xn----ogo..xn----xj54d1s69k"); } // [V3, V7, X4_2]
12966test { try toAsciiFail("9.xn----ogo..xn----xj54d1s69k", false); } // [V3, V7, A4_2]
12967test { try toAsciiFail("9.xn----ogo..xn----xj54d1s69k", true); } // [V3, V7, A4_2]
5350test { try toUnicodeFail("xn----ogot9g.xn----n89hl0522az9u2a"); } // [V3, V7]12968test { try toUnicodeFail("xn----ogot9g.xn----n89hl0522az9u2a"); } // [V3, V7]
12969test { try toAsciiFail("xn----ogot9g.xn----n89hl0522az9u2a", false); } // [V3, V7]
12970test { try toAsciiFail("xn----ogot9g.xn----n89hl0522az9u2a", true); } // [V3, V7]
5351test { try toUnicodeFail("\xf2\x88\xaa\x9a\xe0\xb3\xa3\xe1\x83\x81\xf3\xa0\xa2\x8f\xef\xbc\x8e\xd8\x9d"); } // [B6, V7]12971test { try toUnicodeFail("\xf2\x88\xaa\x9a\xe0\xb3\xa3\xe1\x83\x81\xf3\xa0\xa2\x8f\xef\xbc\x8e\xd8\x9d"); } // [B6, V7]
12972test { try toAsciiFail("\xf2\x88\xaa\x9a\xe0\xb3\xa3\xe1\x83\x81\xf3\xa0\xa2\x8f\xef\xbc\x8e\xd8\x9d", false); } // [B6, V7]
12973test { try toAsciiFail("\xf2\x88\xaa\x9a\xe0\xb3\xa3\xe1\x83\x81\xf3\xa0\xa2\x8f\xef\xbc\x8e\xd8\x9d", true); } // [B6, V7]
5352test { try toUnicodeFail("\xf2\x88\xaa\x9a\xe0\xb3\xa3\xe1\x83\x81\xf3\xa0\xa2\x8f.\xd8\x9d"); } // [B6, V7]12974test { try toUnicodeFail("\xf2\x88\xaa\x9a\xe0\xb3\xa3\xe1\x83\x81\xf3\xa0\xa2\x8f.\xd8\x9d"); } // [B6, V7]
12975test { try toAsciiFail("\xf2\x88\xaa\x9a\xe0\xb3\xa3\xe1\x83\x81\xf3\xa0\xa2\x8f.\xd8\x9d", false); } // [B6, V7]
12976test { try toAsciiFail("\xf2\x88\xaa\x9a\xe0\xb3\xa3\xe1\x83\x81\xf3\xa0\xa2\x8f.\xd8\x9d", true); } // [B6, V7]
5353test { try toUnicodeFail("\xf2\x88\xaa\x9a\xe0\xb3\xa3\xe2\xb4\xa1\xf3\xa0\xa2\x8f.\xd8\x9d"); } // [B6, V7]12977test { try toUnicodeFail("\xf2\x88\xaa\x9a\xe0\xb3\xa3\xe2\xb4\xa1\xf3\xa0\xa2\x8f.\xd8\x9d"); } // [B6, V7]
12978test { try toAsciiFail("\xf2\x88\xaa\x9a\xe0\xb3\xa3\xe2\xb4\xa1\xf3\xa0\xa2\x8f.\xd8\x9d", false); } // [B6, V7]
12979test { try toAsciiFail("\xf2\x88\xaa\x9a\xe0\xb3\xa3\xe2\xb4\xa1\xf3\xa0\xa2\x8f.\xd8\x9d", true); } // [B6, V7]
5354test { try toUnicodeFail("xn--vuc226n8n28lmju7a.xn--cgb"); } // [B6, V7]12980test { try toUnicodeFail("xn--vuc226n8n28lmju7a.xn--cgb"); } // [B6, V7]
12981test { try toAsciiFail("xn--vuc226n8n28lmju7a.xn--cgb", false); } // [B6, V7]
12982test { try toAsciiFail("xn--vuc226n8n28lmju7a.xn--cgb", true); } // [B6, V7]
5355test { try toUnicodeFail("\xf2\x88\xaa\x9a\xe0\xb3\xa3\xe2\xb4\xa1\xf3\xa0\xa2\x8f\xef\xbc\x8e\xd8\x9d"); } // [B6, V7]12983test { try toUnicodeFail("\xf2\x88\xaa\x9a\xe0\xb3\xa3\xe2\xb4\xa1\xf3\xa0\xa2\x8f\xef\xbc\x8e\xd8\x9d"); } // [B6, V7]
12984test { try toAsciiFail("\xf2\x88\xaa\x9a\xe0\xb3\xa3\xe2\xb4\xa1\xf3\xa0\xa2\x8f\xef\xbc\x8e\xd8\x9d", false); } // [B6, V7]
12985test { try toAsciiFail("\xf2\x88\xaa\x9a\xe0\xb3\xa3\xe2\xb4\xa1\xf3\xa0\xa2\x8f\xef\xbc\x8e\xd8\x9d", true); } // [B6, V7]
5356test { try toUnicodeFail("xn--vuc49qvu85xmju7a.xn--cgb"); } // [B6, V7]12986test { try toUnicodeFail("xn--vuc49qvu85xmju7a.xn--cgb"); } // [B6, V7]
12987test { try toAsciiFail("xn--vuc49qvu85xmju7a.xn--cgb", false); } // [B6, V7]
12988test { try toAsciiFail("xn--vuc49qvu85xmju7a.xn--cgb", true); } // [B6, V7]
5357test { try toUnicodeFail("\xe1\xb7\xab\xe3\x80\x82\xf0\x90\x8b\xa9\xd8\xb8-\xf0\x90\xab\xae"); } // [B1, V6]12989test { try toUnicodeFail("\xe1\xb7\xab\xe3\x80\x82\xf0\x90\x8b\xa9\xd8\xb8-\xf0\x90\xab\xae"); } // [B1, V6]
12990test { try toAsciiFail("\xe1\xb7\xab\xe3\x80\x82\xf0\x90\x8b\xa9\xd8\xb8-\xf0\x90\xab\xae", false); } // [B1, V6]
12991test { try toAsciiFail("\xe1\xb7\xab\xe3\x80\x82\xf0\x90\x8b\xa9\xd8\xb8-\xf0\x90\xab\xae", true); } // [B1, V6]
5358test { try toUnicodeFail("xn--gfg.xn----xnc0815qyyg"); } // [B1, V6]12992test { try toUnicodeFail("xn--gfg.xn----xnc0815qyyg"); } // [B1, V6]
12993test { try toAsciiFail("xn--gfg.xn----xnc0815qyyg", false); } // [B1, V6]
12994test { try toAsciiFail("xn--gfg.xn----xnc0815qyyg", true); } // [B1, V6]
5359test { try toUnicodeFail("\xec\x8b\x87\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb3\x8b\xe1\x82\xbd"); } // [B5]12995test { try toUnicodeFail("\xec\x8b\x87\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb3\x8b\xe1\x82\xbd"); } // [B5]
12996test { try toAsciiFail("\xec\x8b\x87\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb3\x8b\xe1\x82\xbd", false); } // [B5]
12997test { try toAsciiFail("\xec\x8b\x87\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb3\x8b\xe1\x82\xbd", true); } // [B5]
5360test { try toUnicodeFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb3\x8b\xe1\x82\xbd"); } // [B5]12998test { try toUnicodeFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb3\x8b\xe1\x82\xbd"); } // [B5]
12999test { try toAsciiFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb3\x8b\xe1\x82\xbd", false); } // [B5]
13000test { try toAsciiFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb3\x8b\xe1\x82\xbd", true); } // [B5]
5361test { try toUnicodeFail("\xec\x8b\x87\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb3\x8b\xe1\x82\xbd"); } // [B5]13001test { try toUnicodeFail("\xec\x8b\x87\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb3\x8b\xe1\x82\xbd"); } // [B5]
13002test { try toAsciiFail("\xec\x8b\x87\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb3\x8b\xe1\x82\xbd", false); } // [B5]
13003test { try toAsciiFail("\xec\x8b\x87\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb3\x8b\xe1\x82\xbd", true); } // [B5]
5362test { try toUnicodeFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb3\x8b\xe1\x82\xbd"); } // [B5]13004test { try toUnicodeFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb3\x8b\xe1\x82\xbd"); } // [B5]
13005test { try toAsciiFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb3\x8b\xe1\x82\xbd", false); } // [B5]
13006test { try toAsciiFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb3\x8b\xe1\x82\xbd", true); } // [B5]
5363test { try toUnicodeFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb3\x8b\xe2\xb4\x9d"); } // [B5]13007test { try toUnicodeFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb3\x8b\xe2\xb4\x9d"); } // [B5]
13008test { try toAsciiFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb3\x8b\xe2\xb4\x9d", false); } // [B5]
13009test { try toAsciiFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb3\x8b\xe2\xb4\x9d", true); } // [B5]
5364test { try toUnicodeFail("\xec\x8b\x87\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb3\x8b\xe2\xb4\x9d"); } // [B5]13010test { try toUnicodeFail("\xec\x8b\x87\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb3\x8b\xe2\xb4\x9d"); } // [B5]
13011test { try toAsciiFail("\xec\x8b\x87\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb3\x8b\xe2\xb4\x9d", false); } // [B5]
13012test { try toAsciiFail("\xec\x8b\x87\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb3\x8b\xe2\xb4\x9d", true); } // [B5]
5365test { try toUnicodeFail("\xec\x8b\x87\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb2\x8b\xe1\x82\xbd"); } // [B5]13013test { try toUnicodeFail("\xec\x8b\x87\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb2\x8b\xe1\x82\xbd"); } // [B5]
13014test { try toAsciiFail("\xec\x8b\x87\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb2\x8b\xe1\x82\xbd", false); } // [B5]
13015test { try toAsciiFail("\xec\x8b\x87\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb2\x8b\xe1\x82\xbd", true); } // [B5]
5366test { try toUnicodeFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb2\x8b\xe1\x82\xbd"); } // [B5]13016test { try toUnicodeFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb2\x8b\xe1\x82\xbd"); } // [B5]
13017test { try toAsciiFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb2\x8b\xe1\x82\xbd", false); } // [B5]
13018test { try toAsciiFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb2\x8b\xe1\x82\xbd", true); } // [B5]
5367test { try toUnicodeFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb2\x8b\xe2\xb4\x9d"); } // [B5]13019test { try toUnicodeFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb2\x8b\xe2\xb4\x9d"); } // [B5]
13020test { try toAsciiFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb2\x8b\xe2\xb4\x9d", false); } // [B5]
13021test { try toAsciiFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb2\x8b\xe2\xb4\x9d", true); } // [B5]
5368test { try toUnicodeFail("\xec\x8b\x87\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb2\x8b\xe2\xb4\x9d"); } // [B5]13022test { try toUnicodeFail("\xec\x8b\x87\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb2\x8b\xe2\xb4\x9d"); } // [B5]
13023test { try toAsciiFail("\xec\x8b\x87\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb2\x8b\xe2\xb4\x9d", false); } // [B5]
13024test { try toAsciiFail("\xec\x8b\x87\xe3\x80\x82\xe8\x88\x9b\xf0\x90\xb2\x8b\xe2\xb4\x9d", true); } // [B5]
5369test { try toUnicodeFail("xn--9u4b.xn--llj123yh74e"); } // [B5]13025test { try toUnicodeFail("xn--9u4b.xn--llj123yh74e"); } // [B5]
13026test { try toAsciiFail("xn--9u4b.xn--llj123yh74e", false); } // [B5]
13027test { try toAsciiFail("xn--9u4b.xn--llj123yh74e", true); } // [B5]
5370test { try toUnicodeFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb3\x8b\xe2\xb4\x9d"); } // [B5]13028test { try toUnicodeFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb3\x8b\xe2\xb4\x9d"); } // [B5]
13029test { try toAsciiFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb3\x8b\xe2\xb4\x9d", false); } // [B5]
13030test { try toAsciiFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb3\x8b\xe2\xb4\x9d", true); } // [B5]
5371test { try toUnicodeFail("\xec\x8b\x87\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb3\x8b\xe2\xb4\x9d"); } // [B5]13031test { try toUnicodeFail("\xec\x8b\x87\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb3\x8b\xe2\xb4\x9d"); } // [B5]
13032test { try toAsciiFail("\xec\x8b\x87\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb3\x8b\xe2\xb4\x9d", false); } // [B5]
13033test { try toAsciiFail("\xec\x8b\x87\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb3\x8b\xe2\xb4\x9d", true); } // [B5]
5372test { try toUnicodeFail("\xec\x8b\x87\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb2\x8b\xe1\x82\xbd"); } // [B5]13034test { try toUnicodeFail("\xec\x8b\x87\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb2\x8b\xe1\x82\xbd"); } // [B5]
13035test { try toAsciiFail("\xec\x8b\x87\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb2\x8b\xe1\x82\xbd", false); } // [B5]
13036test { try toAsciiFail("\xec\x8b\x87\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb2\x8b\xe1\x82\xbd", true); } // [B5]
5373test { try toUnicodeFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb2\x8b\xe1\x82\xbd"); } // [B5]13037test { try toUnicodeFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb2\x8b\xe1\x82\xbd"); } // [B5]
13038test { try toAsciiFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb2\x8b\xe1\x82\xbd", false); } // [B5]
13039test { try toAsciiFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb2\x8b\xe1\x82\xbd", true); } // [B5]
5374test { try toUnicodeFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb2\x8b\xe2\xb4\x9d"); } // [B5]13040test { try toUnicodeFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb2\x8b\xe2\xb4\x9d"); } // [B5]
13041test { try toAsciiFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb2\x8b\xe2\xb4\x9d", false); } // [B5]
13042test { try toAsciiFail("\xe1\x84\x89\xe1\x85\xb4\xe1\x86\xae\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb2\x8b\xe2\xb4\x9d", true); } // [B5]
5375test { try toUnicodeFail("\xec\x8b\x87\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb2\x8b\xe2\xb4\x9d"); } // [B5]13043test { try toUnicodeFail("\xec\x8b\x87\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb2\x8b\xe2\xb4\x9d"); } // [B5]
13044test { try toAsciiFail("\xec\x8b\x87\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb2\x8b\xe2\xb4\x9d", false); } // [B5]
13045test { try toAsciiFail("\xec\x8b\x87\xe3\x80\x82\xe2\xbe\x87\xf0\x90\xb2\x8b\xe2\xb4\x9d", true); } // [B5]
5376test { try toUnicodeFail("xn--9u4b.xn--1nd7519ch79d"); } // [B5, V7]13046test { try toUnicodeFail("xn--9u4b.xn--1nd7519ch79d"); } // [B5, V7]
13047test { try toAsciiFail("xn--9u4b.xn--1nd7519ch79d", false); } // [B5, V7]
13048test { try toAsciiFail("xn--9u4b.xn--1nd7519ch79d", true); } // [B5, V7]
5377test { try toUnicodeFail("\xf0\x90\xb9\xa0\xcf\x82\xe3\x80\x82\xe2\x80\x8c\xda\xbf\xe1\x83\x80"); } // [B1, C1]13049test { try toUnicodeFail("\xf0\x90\xb9\xa0\xcf\x82\xe3\x80\x82\xe2\x80\x8c\xda\xbf\xe1\x83\x80"); } // [B1, C1]
13050test { try toAsciiFail("\xf0\x90\xb9\xa0\xcf\x82\xe3\x80\x82\xe2\x80\x8c\xda\xbf\xe1\x83\x80", false); } // [B1, C1]
13051test { try toAsciiFail("\xf0\x90\xb9\xa0\xcf\x82\xe3\x80\x82\xe2\x80\x8c\xda\xbf\xe1\x83\x80", true); } // [B1, B2, B3]
5378test { try toUnicodeFail("\xf0\x90\xb9\xa0\xcf\x82\xe3\x80\x82\xe2\x80\x8c\xda\xbf\xe2\xb4\xa0"); } // [B1, C1]13052test { try toUnicodeFail("\xf0\x90\xb9\xa0\xcf\x82\xe3\x80\x82\xe2\x80\x8c\xda\xbf\xe2\xb4\xa0"); } // [B1, C1]
13053test { try toAsciiFail("\xf0\x90\xb9\xa0\xcf\x82\xe3\x80\x82\xe2\x80\x8c\xda\xbf\xe2\xb4\xa0", false); } // [B1, C1]
13054test { try toAsciiFail("\xf0\x90\xb9\xa0\xcf\x82\xe3\x80\x82\xe2\x80\x8c\xda\xbf\xe2\xb4\xa0", true); } // [B1, B2, B3]
5379test { try toUnicodeFail("\xf0\x90\xb9\xa0\xce\xa3\xe3\x80\x82\xe2\x80\x8c\xda\xbf\xe1\x83\x80"); } // [B1, C1]13055test { try toUnicodeFail("\xf0\x90\xb9\xa0\xce\xa3\xe3\x80\x82\xe2\x80\x8c\xda\xbf\xe1\x83\x80"); } // [B1, C1]
13056test { try toAsciiFail("\xf0\x90\xb9\xa0\xce\xa3\xe3\x80\x82\xe2\x80\x8c\xda\xbf\xe1\x83\x80", false); } // [B1, C1]
13057test { try toAsciiFail("\xf0\x90\xb9\xa0\xce\xa3\xe3\x80\x82\xe2\x80\x8c\xda\xbf\xe1\x83\x80", true); } // [B1, B2, B3]
5380test { try toUnicodeFail("\xf0\x90\xb9\xa0\xcf\x83\xe3\x80\x82\xe2\x80\x8c\xda\xbf\xe2\xb4\xa0"); } // [B1, C1]13058test { try toUnicodeFail("\xf0\x90\xb9\xa0\xcf\x83\xe3\x80\x82\xe2\x80\x8c\xda\xbf\xe2\xb4\xa0"); } // [B1, C1]
13059test { try toAsciiFail("\xf0\x90\xb9\xa0\xcf\x83\xe3\x80\x82\xe2\x80\x8c\xda\xbf\xe2\xb4\xa0", false); } // [B1, C1]
13060test { try toAsciiFail("\xf0\x90\xb9\xa0\xcf\x83\xe3\x80\x82\xe2\x80\x8c\xda\xbf\xe2\xb4\xa0", true); } // [B1, B2, B3]
5381test { try toUnicodeFail("\xf0\x90\xb9\xa0\xce\xa3\xe3\x80\x82\xe2\x80\x8c\xda\xbf\xe2\xb4\xa0"); } // [B1, C1]13061test { try toUnicodeFail("\xf0\x90\xb9\xa0\xce\xa3\xe3\x80\x82\xe2\x80\x8c\xda\xbf\xe2\xb4\xa0"); } // [B1, C1]
13062test { try toAsciiFail("\xf0\x90\xb9\xa0\xce\xa3\xe3\x80\x82\xe2\x80\x8c\xda\xbf\xe2\xb4\xa0", false); } // [B1, C1]
13063test { try toAsciiFail("\xf0\x90\xb9\xa0\xce\xa3\xe3\x80\x82\xe2\x80\x8c\xda\xbf\xe2\xb4\xa0", true); } // [B1, B2, B3]
5382test { try toUnicodeFail("xn--4xa9167k.xn--ykb467q"); } // [B1, B2, B3]13064test { try toUnicodeFail("xn--4xa9167k.xn--ykb467q"); } // [B1, B2, B3]
13065test { try toAsciiFail("xn--4xa9167k.xn--ykb467q", false); } // [B1, B2, B3]
13066test { try toAsciiFail("xn--4xa9167k.xn--ykb467q", true); } // [B1, B2, B3]
5383test { try toUnicodeFail("xn--4xa9167k.xn--ykb760k9hj"); } // [B1, C1]13067test { try toUnicodeFail("xn--4xa9167k.xn--ykb760k9hj"); } // [B1, C1]
13068test { try toAsciiFail("xn--4xa9167k.xn--ykb760k9hj", false); } // [B1, C1]
13069test { try toAsciiFail("xn--4xa9167k.xn--ykb760k9hj", true); } // [B1, C1]
5384test { try toUnicodeFail("xn--3xa1267k.xn--ykb760k9hj"); } // [B1, C1]13070test { try toUnicodeFail("xn--3xa1267k.xn--ykb760k9hj"); } // [B1, C1]
13071test { try toAsciiFail("xn--3xa1267k.xn--ykb760k9hj", false); } // [B1, C1]
13072test { try toAsciiFail("xn--3xa1267k.xn--ykb760k9hj", true); } // [B1, C1]
5385test { try toUnicodeFail("xn--4xa9167k.xn--ykb632c"); } // [B1, B2, B3, V7]13073test { try toUnicodeFail("xn--4xa9167k.xn--ykb632c"); } // [B1, B2, B3, V7]
13074test { try toAsciiFail("xn--4xa9167k.xn--ykb632c", false); } // [B1, B2, B3, V7]
13075test { try toAsciiFail("xn--4xa9167k.xn--ykb632c", true); } // [B1, B2, B3, V7]
5386test { try toUnicodeFail("xn--4xa9167k.xn--ykb632cvxm"); } // [B1, C1, V7]13076test { try toUnicodeFail("xn--4xa9167k.xn--ykb632cvxm"); } // [B1, C1, V7]
13077test { try toAsciiFail("xn--4xa9167k.xn--ykb632cvxm", false); } // [B1, C1, V7]
13078test { try toAsciiFail("xn--4xa9167k.xn--ykb632cvxm", true); } // [B1, C1, V7]
5387test { try toUnicodeFail("xn--3xa1267k.xn--ykb632cvxm"); } // [B1, C1, V7]13079test { try toUnicodeFail("xn--3xa1267k.xn--ykb632cvxm"); } // [B1, C1, V7]
13080test { try toAsciiFail("xn--3xa1267k.xn--ykb632cvxm", false); } // [B1, C1, V7]
13081test { try toAsciiFail("xn--3xa1267k.xn--ykb632cvxm", true); } // [B1, C1, V7]
5388test { try toUnicodeFail("\xf2\x87\x92\x90\xe2\x80\x8c\xd8\x84.\xda\x9a-\xc3\x9f"); } // [B2, B3, B5, B6, C1, V7]13082test { try toUnicodeFail("\xf2\x87\x92\x90\xe2\x80\x8c\xd8\x84.\xda\x9a-\xc3\x9f"); } // [B2, B3, B5, B6, C1, V7]
13083test { try toAsciiFail("\xf2\x87\x92\x90\xe2\x80\x8c\xd8\x84.\xda\x9a-\xc3\x9f", false); } // [B2, B3, B5, B6, C1, V7]
13084test { try toAsciiFail("\xf2\x87\x92\x90\xe2\x80\x8c\xd8\x84.\xda\x9a-\xc3\x9f", true); } // [B2, B3, B5, B6, V7]
5389test { try toUnicodeFail("\xf2\x87\x92\x90\xe2\x80\x8c\xd8\x84.\xda\x9a-SS"); } // [B2, B3, B5, B6, C1, V7]13085test { try toUnicodeFail("\xf2\x87\x92\x90\xe2\x80\x8c\xd8\x84.\xda\x9a-SS"); } // [B2, B3, B5, B6, C1, V7]
13086test { try toAsciiFail("\xf2\x87\x92\x90\xe2\x80\x8c\xd8\x84.\xda\x9a-SS", false); } // [B2, B3, B5, B6, C1, V7]
13087test { try toAsciiFail("\xf2\x87\x92\x90\xe2\x80\x8c\xd8\x84.\xda\x9a-SS", true); } // [B2, B3, B5, B6, V7]
5390test { try toUnicodeFail("\xf2\x87\x92\x90\xe2\x80\x8c\xd8\x84.\xda\x9a-ss"); } // [B2, B3, B5, B6, C1, V7]13088test { try toUnicodeFail("\xf2\x87\x92\x90\xe2\x80\x8c\xd8\x84.\xda\x9a-ss"); } // [B2, B3, B5, B6, C1, V7]
13089test { try toAsciiFail("\xf2\x87\x92\x90\xe2\x80\x8c\xd8\x84.\xda\x9a-ss", false); } // [B2, B3, B5, B6, C1, V7]
13090test { try toAsciiFail("\xf2\x87\x92\x90\xe2\x80\x8c\xd8\x84.\xda\x9a-ss", true); } // [B2, B3, B5, B6, V7]
5391test { try toUnicodeFail("\xf2\x87\x92\x90\xe2\x80\x8c\xd8\x84.\xda\x9a-Ss"); } // [B2, B3, B5, B6, C1, V7]13091test { try toUnicodeFail("\xf2\x87\x92\x90\xe2\x80\x8c\xd8\x84.\xda\x9a-Ss"); } // [B2, B3, B5, B6, C1, V7]
13092test { try toAsciiFail("\xf2\x87\x92\x90\xe2\x80\x8c\xd8\x84.\xda\x9a-Ss", false); } // [B2, B3, B5, B6, C1, V7]
13093test { try toAsciiFail("\xf2\x87\x92\x90\xe2\x80\x8c\xd8\x84.\xda\x9a-Ss", true); } // [B2, B3, B5, B6, V7]
5392test { try toUnicodeFail("xn--mfb98261i.xn---ss-sdf"); } // [B2, B3, B5, B6, V7]13094test { try toUnicodeFail("xn--mfb98261i.xn---ss-sdf"); } // [B2, B3, B5, B6, V7]
13095test { try toAsciiFail("xn--mfb98261i.xn---ss-sdf", false); } // [B2, B3, B5, B6, V7]
13096test { try toAsciiFail("xn--mfb98261i.xn---ss-sdf", true); } // [B2, B3, B5, B6, V7]
5393test { try toUnicodeFail("xn--mfb144kqo32m.xn---ss-sdf"); } // [B2, B3, B5, B6, C1, V7]13097test { try toUnicodeFail("xn--mfb144kqo32m.xn---ss-sdf"); } // [B2, B3, B5, B6, C1, V7]
13098test { try toAsciiFail("xn--mfb144kqo32m.xn---ss-sdf", false); } // [B2, B3, B5, B6, C1, V7]
13099test { try toAsciiFail("xn--mfb144kqo32m.xn---ss-sdf", true); } // [B2, B3, B5, B6, C1, V7]
5394test { try toUnicodeFail("xn--mfb144kqo32m.xn----qfa315b"); } // [B2, B3, B5, B6, C1, V7]13100test { try toUnicodeFail("xn--mfb144kqo32m.xn----qfa315b"); } // [B2, B3, B5, B6, C1, V7]
13101test { try toAsciiFail("xn--mfb144kqo32m.xn----qfa315b", false); } // [B2, B3, B5, B6, C1, V7]
13102test { try toAsciiFail("xn--mfb144kqo32m.xn----qfa315b", true); } // [B2, B3, B5, B6, C1, V7]
5395test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8d\xe1\x9e\xb5\xd9\xba.-\xef\xae\xb0\xf3\x85\x84\x9e\xf0\x90\xb8\x9a"); } // [B1, C1, C2, V3, V7]13103test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8d\xe1\x9e\xb5\xd9\xba.-\xef\xae\xb0\xf3\x85\x84\x9e\xf0\x90\xb8\x9a"); } // [B1, C1, C2, V3, V7]
13104test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8d\xe1\x9e\xb5\xd9\xba.-\xef\xae\xb0\xf3\x85\x84\x9e\xf0\x90\xb8\x9a", false); } // [B1, C1, C2, V3, V7]
13105test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8d\xe1\x9e\xb5\xd9\xba.-\xef\xae\xb0\xf3\x85\x84\x9e\xf0\x90\xb8\x9a", true); } // [B1, V3, V7]
5396test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8d\xe1\x9e\xb5\xd9\xba.-\xdb\x93\xf3\x85\x84\x9e\xf0\x90\xb8\x9a"); } // [B1, C1, C2, V3, V7]13106test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8d\xe1\x9e\xb5\xd9\xba.-\xdb\x93\xf3\x85\x84\x9e\xf0\x90\xb8\x9a"); } // [B1, C1, C2, V3, V7]
13107test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8d\xe1\x9e\xb5\xd9\xba.-\xdb\x93\xf3\x85\x84\x9e\xf0\x90\xb8\x9a", false); } // [B1, C1, C2, V3, V7]
13108test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8d\xe1\x9e\xb5\xd9\xba.-\xdb\x93\xf3\x85\x84\x9e\xf0\x90\xb8\x9a", true); } // [B1, V3, V7]
5397test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8d\xe1\x9e\xb5\xd9\xba.-\xdb\x92\xd9\x94\xf3\x85\x84\x9e\xf0\x90\xb8\x9a"); } // [B1, C1, C2, V3, V7]13109test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8d\xe1\x9e\xb5\xd9\xba.-\xdb\x92\xd9\x94\xf3\x85\x84\x9e\xf0\x90\xb8\x9a"); } // [B1, C1, C2, V3, V7]
13110test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8d\xe1\x9e\xb5\xd9\xba.-\xdb\x92\xd9\x94\xf3\x85\x84\x9e\xf0\x90\xb8\x9a", false); } // [B1, C1, C2, V3, V7]
13111test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8d\xe1\x9e\xb5\xd9\xba.-\xdb\x92\xd9\x94\xf3\x85\x84\x9e\xf0\x90\xb8\x9a", true); } // [B1, V3, V7]
5398test { try toUnicodeFail("xn--zib.xn----twc1133r17r6g"); } // [B1, V3, V7]13112test { try toUnicodeFail("xn--zib.xn----twc1133r17r6g"); } // [B1, V3, V7]
13113test { try toAsciiFail("xn--zib.xn----twc1133r17r6g", false); } // [B1, V3, V7]
13114test { try toAsciiFail("xn--zib.xn----twc1133r17r6g", true); } // [B1, V3, V7]
5399test { try toUnicodeFail("xn--zib502kda.xn----twc1133r17r6g"); } // [B1, C1, C2, V3, V7]13115test { try toUnicodeFail("xn--zib502kda.xn----twc1133r17r6g"); } // [B1, C1, C2, V3, V7]
13116test { try toAsciiFail("xn--zib502kda.xn----twc1133r17r6g", false); } // [B1, C1, C2, V3, V7]
13117test { try toAsciiFail("xn--zib502kda.xn----twc1133r17r6g", true); } // [B1, C1, C2, V3, V7]
5400test { try toUnicodeFail("xn--zib539f.xn----twc1133r17r6g"); } // [B1, V3, V6, V7]13118test { try toUnicodeFail("xn--zib539f.xn----twc1133r17r6g"); } // [B1, V3, V6, V7]
13119test { try toAsciiFail("xn--zib539f.xn----twc1133r17r6g", false); } // [B1, V3, V6, V7]
13120test { try toAsciiFail("xn--zib539f.xn----twc1133r17r6g", true); } // [B1, V3, V6, V7]
5401test { try toUnicodeFail("xn--zib539f8igea.xn----twc1133r17r6g"); } // [B1, C1, C2, V3, V7]13121test { try toUnicodeFail("xn--zib539f8igea.xn----twc1133r17r6g"); } // [B1, C1, C2, V3, V7]
13122test { try toAsciiFail("xn--zib539f8igea.xn----twc1133r17r6g", false); } // [B1, C1, C2, V3, V7]
13123test { try toAsciiFail("xn--zib539f8igea.xn----twc1133r17r6g", true); } // [B1, C1, C2, V3, V7]
5402test { try toUnicodeFail("\xf2\xa1\xb6\xb1\xef\xbd\xa1\xf0\x90\xae\xac\xe2\x89\xa0"); } // [B3, V7]13124test { try toUnicodeFail("\xf2\xa1\xb6\xb1\xef\xbd\xa1\xf0\x90\xae\xac\xe2\x89\xa0"); } // [B3, V7]
13125test { try toAsciiFail("\xf2\xa1\xb6\xb1\xef\xbd\xa1\xf0\x90\xae\xac\xe2\x89\xa0", false); } // [B3, V7]
13126test { try toAsciiFail("\xf2\xa1\xb6\xb1\xef\xbd\xa1\xf0\x90\xae\xac\xe2\x89\xa0", true); } // [B3, V7]
5403test { try toUnicodeFail("\xf2\xa1\xb6\xb1\xef\xbd\xa1\xf0\x90\xae\xac=\xcc\xb8"); } // [B3, V7]13127test { try toUnicodeFail("\xf2\xa1\xb6\xb1\xef\xbd\xa1\xf0\x90\xae\xac=\xcc\xb8"); } // [B3, V7]
13128test { try toAsciiFail("\xf2\xa1\xb6\xb1\xef\xbd\xa1\xf0\x90\xae\xac=\xcc\xb8", false); } // [B3, V7]
13129test { try toAsciiFail("\xf2\xa1\xb6\xb1\xef\xbd\xa1\xf0\x90\xae\xac=\xcc\xb8", true); } // [B3, V7]
5404test { try toUnicodeFail("\xf2\xa1\xb6\xb1\xe3\x80\x82\xf0\x90\xae\xac\xe2\x89\xa0"); } // [B3, V7]13130test { try toUnicodeFail("\xf2\xa1\xb6\xb1\xe3\x80\x82\xf0\x90\xae\xac\xe2\x89\xa0"); } // [B3, V7]
13131test { try toAsciiFail("\xf2\xa1\xb6\xb1\xe3\x80\x82\xf0\x90\xae\xac\xe2\x89\xa0", false); } // [B3, V7]
13132test { try toAsciiFail("\xf2\xa1\xb6\xb1\xe3\x80\x82\xf0\x90\xae\xac\xe2\x89\xa0", true); } // [B3, V7]
5405test { try toUnicodeFail("\xf2\xa1\xb6\xb1\xe3\x80\x82\xf0\x90\xae\xac=\xcc\xb8"); } // [B3, V7]13133test { try toUnicodeFail("\xf2\xa1\xb6\xb1\xe3\x80\x82\xf0\x90\xae\xac=\xcc\xb8"); } // [B3, V7]
13134test { try toAsciiFail("\xf2\xa1\xb6\xb1\xe3\x80\x82\xf0\x90\xae\xac=\xcc\xb8", false); } // [B3, V7]
13135test { try toAsciiFail("\xf2\xa1\xb6\xb1\xe3\x80\x82\xf0\x90\xae\xac=\xcc\xb8", true); } // [B3, V7]
5406test { try toUnicodeFail("xn--dd55c.xn--1ch3003g"); } // [B3, V7]13136test { try toUnicodeFail("xn--dd55c.xn--1ch3003g"); } // [B3, V7]
13137test { try toAsciiFail("xn--dd55c.xn--1ch3003g", false); } // [B3, V7]
13138test { try toAsciiFail("xn--dd55c.xn--1ch3003g", true); } // [B3, V7]
5407test { try toUnicodeFail("\xe0\xbe\xb2\xf0\x9e\xb6\x85\xef\xbd\xa1\xf0\x90\xb9\xae\xf0\x90\xb9\xb7\xeb\x8d\x9d\xdb\xb5"); } // [B1, V6, V7]13139test { try toUnicodeFail("\xe0\xbe\xb2\xf0\x9e\xb6\x85\xef\xbd\xa1\xf0\x90\xb9\xae\xf0\x90\xb9\xb7\xeb\x8d\x9d\xdb\xb5"); } // [B1, V6, V7]
13140test { try toAsciiFail("\xe0\xbe\xb2\xf0\x9e\xb6\x85\xef\xbd\xa1\xf0\x90\xb9\xae\xf0\x90\xb9\xb7\xeb\x8d\x9d\xdb\xb5", false); } // [B1, V6, V7]
13141test { try toAsciiFail("\xe0\xbe\xb2\xf0\x9e\xb6\x85\xef\xbd\xa1\xf0\x90\xb9\xae\xf0\x90\xb9\xb7\xeb\x8d\x9d\xdb\xb5", true); } // [B1, V6, V7]
5408test { try toUnicodeFail("\xe0\xbe\xb2\xf0\x9e\xb6\x85\xef\xbd\xa1\xf0\x90\xb9\xae\xf0\x90\xb9\xb7\xe1\x84\x83\xe1\x85\xa5\xe1\x86\xb0\xdb\xb5"); } // [B1, V6, V7]13142test { try toUnicodeFail("\xe0\xbe\xb2\xf0\x9e\xb6\x85\xef\xbd\xa1\xf0\x90\xb9\xae\xf0\x90\xb9\xb7\xe1\x84\x83\xe1\x85\xa5\xe1\x86\xb0\xdb\xb5"); } // [B1, V6, V7]
13143test { try toAsciiFail("\xe0\xbe\xb2\xf0\x9e\xb6\x85\xef\xbd\xa1\xf0\x90\xb9\xae\xf0\x90\xb9\xb7\xe1\x84\x83\xe1\x85\xa5\xe1\x86\xb0\xdb\xb5", false); } // [B1, V6, V7]
13144test { try toAsciiFail("\xe0\xbe\xb2\xf0\x9e\xb6\x85\xef\xbd\xa1\xf0\x90\xb9\xae\xf0\x90\xb9\xb7\xe1\x84\x83\xe1\x85\xa5\xe1\x86\xb0\xdb\xb5", true); } // [B1, V6, V7]
5409test { try toUnicodeFail("\xe0\xbe\xb2\xf0\x9e\xb6\x85\xe3\x80\x82\xf0\x90\xb9\xae\xf0\x90\xb9\xb7\xeb\x8d\x9d\xdb\xb5"); } // [B1, V6, V7]13145test { try toUnicodeFail("\xe0\xbe\xb2\xf0\x9e\xb6\x85\xe3\x80\x82\xf0\x90\xb9\xae\xf0\x90\xb9\xb7\xeb\x8d\x9d\xdb\xb5"); } // [B1, V6, V7]
13146test { try toAsciiFail("\xe0\xbe\xb2\xf0\x9e\xb6\x85\xe3\x80\x82\xf0\x90\xb9\xae\xf0\x90\xb9\xb7\xeb\x8d\x9d\xdb\xb5", false); } // [B1, V6, V7]
13147test { try toAsciiFail("\xe0\xbe\xb2\xf0\x9e\xb6\x85\xe3\x80\x82\xf0\x90\xb9\xae\xf0\x90\xb9\xb7\xeb\x8d\x9d\xdb\xb5", true); } // [B1, V6, V7]
5410test { try toUnicodeFail("\xe0\xbe\xb2\xf0\x9e\xb6\x85\xe3\x80\x82\xf0\x90\xb9\xae\xf0\x90\xb9\xb7\xe1\x84\x83\xe1\x85\xa5\xe1\x86\xb0\xdb\xb5"); } // [B1, V6, V7]13148test { try toUnicodeFail("\xe0\xbe\xb2\xf0\x9e\xb6\x85\xe3\x80\x82\xf0\x90\xb9\xae\xf0\x90\xb9\xb7\xe1\x84\x83\xe1\x85\xa5\xe1\x86\xb0\xdb\xb5"); } // [B1, V6, V7]
13149test { try toAsciiFail("\xe0\xbe\xb2\xf0\x9e\xb6\x85\xe3\x80\x82\xf0\x90\xb9\xae\xf0\x90\xb9\xb7\xe1\x84\x83\xe1\x85\xa5\xe1\x86\xb0\xdb\xb5", false); } // [B1, V6, V7]
13150test { try toAsciiFail("\xe0\xbe\xb2\xf0\x9e\xb6\x85\xe3\x80\x82\xf0\x90\xb9\xae\xf0\x90\xb9\xb7\xe1\x84\x83\xe1\x85\xa5\xe1\x86\xb0\xdb\xb5", true); } // [B1, V6, V7]
5411test { try toUnicodeFail("xn--fgd0675v.xn--imb5839fidpcbba"); } // [B1, V6, V7]13151test { try toUnicodeFail("xn--fgd0675v.xn--imb5839fidpcbba"); } // [B1, V6, V7]
13152test { try toAsciiFail("xn--fgd0675v.xn--imb5839fidpcbba", false); } // [B1, V6, V7]
13153test { try toAsciiFail("xn--fgd0675v.xn--imb5839fidpcbba", true); } // [B1, V6, V7]
5412test { try toUnicodeFail("\xe1\x82\xaf\xf3\xa0\x85\x8b-\xef\xbc\x8e\xe2\x80\x8d\xe1\x82\xa9"); } // [C2, V3]13154test { try toUnicodeFail("\xe1\x82\xaf\xf3\xa0\x85\x8b-\xef\xbc\x8e\xe2\x80\x8d\xe1\x82\xa9"); } // [C2, V3]
13155test { try toAsciiFail("\xe1\x82\xaf\xf3\xa0\x85\x8b-\xef\xbc\x8e\xe2\x80\x8d\xe1\x82\xa9", false); } // [C2, V3]
13156test { try toAsciiFail("\xe1\x82\xaf\xf3\xa0\x85\x8b-\xef\xbc\x8e\xe2\x80\x8d\xe1\x82\xa9", true); } // [V3]
5413test { try toUnicodeFail("\xe1\x82\xaf\xf3\xa0\x85\x8b-.\xe2\x80\x8d\xe1\x82\xa9"); } // [C2, V3]13157test { try toUnicodeFail("\xe1\x82\xaf\xf3\xa0\x85\x8b-.\xe2\x80\x8d\xe1\x82\xa9"); } // [C2, V3]
13158test { try toAsciiFail("\xe1\x82\xaf\xf3\xa0\x85\x8b-.\xe2\x80\x8d\xe1\x82\xa9", false); } // [C2, V3]
13159test { try toAsciiFail("\xe1\x82\xaf\xf3\xa0\x85\x8b-.\xe2\x80\x8d\xe1\x82\xa9", true); } // [V3]
5414test { try toUnicodeFail("\xe2\xb4\x8f\xf3\xa0\x85\x8b-.\xe2\x80\x8d\xe2\xb4\x89"); } // [C2, V3]13160test { try toUnicodeFail("\xe2\xb4\x8f\xf3\xa0\x85\x8b-.\xe2\x80\x8d\xe2\xb4\x89"); } // [C2, V3]
13161test { try toAsciiFail("\xe2\xb4\x8f\xf3\xa0\x85\x8b-.\xe2\x80\x8d\xe2\xb4\x89", false); } // [C2, V3]
13162test { try toAsciiFail("\xe2\xb4\x8f\xf3\xa0\x85\x8b-.\xe2\x80\x8d\xe2\xb4\x89", true); } // [V3]
5415test { try toUnicodeFail("xn----3vs.xn--0kj"); } // [V3]13163test { try toUnicodeFail("xn----3vs.xn--0kj"); } // [V3]
13164test { try toAsciiFail("xn----3vs.xn--0kj", false); } // [V3]
13165test { try toAsciiFail("xn----3vs.xn--0kj", true); } // [V3]
5416test { try toUnicodeFail("xn----3vs.xn--1ug532c"); } // [C2, V3]13166test { try toUnicodeFail("xn----3vs.xn--1ug532c"); } // [C2, V3]
13167test { try toAsciiFail("xn----3vs.xn--1ug532c", false); } // [C2, V3]
13168test { try toAsciiFail("xn----3vs.xn--1ug532c", true); } // [C2, V3]
5417test { try toUnicodeFail("\xe2\xb4\x8f\xf3\xa0\x85\x8b-\xef\xbc\x8e\xe2\x80\x8d\xe2\xb4\x89"); } // [C2, V3]13169test { try toUnicodeFail("\xe2\xb4\x8f\xf3\xa0\x85\x8b-\xef\xbc\x8e\xe2\x80\x8d\xe2\xb4\x89"); } // [C2, V3]
13170test { try toAsciiFail("\xe2\xb4\x8f\xf3\xa0\x85\x8b-\xef\xbc\x8e\xe2\x80\x8d\xe2\xb4\x89", false); } // [C2, V3]
13171test { try toAsciiFail("\xe2\xb4\x8f\xf3\xa0\x85\x8b-\xef\xbc\x8e\xe2\x80\x8d\xe2\xb4\x89", true); } // [V3]
5418test { try toUnicodeFail("xn----00g.xn--hnd"); } // [V3, V7]13172test { try toUnicodeFail("xn----00g.xn--hnd"); } // [V3, V7]
13173test { try toAsciiFail("xn----00g.xn--hnd", false); } // [V3, V7]
13174test { try toAsciiFail("xn----00g.xn--hnd", true); } // [V3, V7]
5419test { try toUnicodeFail("xn----00g.xn--hnd399e"); } // [C2, V3, V7]13175test { try toUnicodeFail("xn----00g.xn--hnd399e"); } // [C2, V3, V7]
13176test { try toAsciiFail("xn----00g.xn--hnd399e", false); } // [C2, V3, V7]
13177test { try toAsciiFail("xn----00g.xn--hnd399e", true); } // [C2, V3, V7]
5420test { try toUnicodeFail("\xe2\x87\xa7\xf0\x90\xa8\x8f\xf3\xa0\xbe\x88\xf3\xaf\xb6\x85\xe3\x80\x82\xd8\x80\xf3\xa0\x88\xb5\xf3\xa0\x86\x89"); } // [B1, V7]13178test { try toUnicodeFail("\xe2\x87\xa7\xf0\x90\xa8\x8f\xf3\xa0\xbe\x88\xf3\xaf\xb6\x85\xe3\x80\x82\xd8\x80\xf3\xa0\x88\xb5\xf3\xa0\x86\x89"); } // [B1, V7]
13179test { try toAsciiFail("\xe2\x87\xa7\xf0\x90\xa8\x8f\xf3\xa0\xbe\x88\xf3\xaf\xb6\x85\xe3\x80\x82\xd8\x80\xf3\xa0\x88\xb5\xf3\xa0\x86\x89", false); } // [B1, V7]
13180test { try toAsciiFail("\xe2\x87\xa7\xf0\x90\xa8\x8f\xf3\xa0\xbe\x88\xf3\xaf\xb6\x85\xe3\x80\x82\xd8\x80\xf3\xa0\x88\xb5\xf3\xa0\x86\x89", true); } // [B1, V7]
5421test { try toUnicodeFail("xn--l8g5552g64t4g46xf.xn--ifb08144p"); } // [B1, V7]13181test { try toUnicodeFail("xn--l8g5552g64t4g46xf.xn--ifb08144p"); } // [B1, V7]
13182test { try toAsciiFail("xn--l8g5552g64t4g46xf.xn--ifb08144p", false); } // [B1, V7]
13183test { try toAsciiFail("xn--l8g5552g64t4g46xf.xn--ifb08144p", true); } // [B1, V7]
5422test { try toUnicodeFail("\xe2\x89\xa0\xf0\x90\xae\x82.\xe2\x86\x91\xf0\x9f\x84\x87\xe2\x92\x88"); } // [B1, V7, U1]13184test { try toUnicodeFail("\xe2\x89\xa0\xf0\x90\xae\x82.\xe2\x86\x91\xf0\x9f\x84\x87\xe2\x92\x88"); } // [B1, V7, U1]
13185test { try toAsciiFail("\xe2\x89\xa0\xf0\x90\xae\x82.\xe2\x86\x91\xf0\x9f\x84\x87\xe2\x92\x88", false); } // [B1, V7, U1]
13186test { try toAsciiFail("\xe2\x89\xa0\xf0\x90\xae\x82.\xe2\x86\x91\xf0\x9f\x84\x87\xe2\x92\x88", true); } // [B1, V7, U1]
5423test { try toUnicodeFail("=\xcc\xb8\xf0\x90\xae\x82.\xe2\x86\x91\xf0\x9f\x84\x87\xe2\x92\x88"); } // [B1, V7, U1]13187test { try toUnicodeFail("=\xcc\xb8\xf0\x90\xae\x82.\xe2\x86\x91\xf0\x9f\x84\x87\xe2\x92\x88"); } // [B1, V7, U1]
13188test { try toAsciiFail("=\xcc\xb8\xf0\x90\xae\x82.\xe2\x86\x91\xf0\x9f\x84\x87\xe2\x92\x88", false); } // [B1, V7, U1]
13189test { try toAsciiFail("=\xcc\xb8\xf0\x90\xae\x82.\xe2\x86\x91\xf0\x9f\x84\x87\xe2\x92\x88", true); } // [B1, V7, U1]
5424test { try toUnicodeFail("\xe2\x89\xa0\xf0\x90\xae\x82.\xe2\x86\x916,1."); } // [B1, U1]13190test { try toUnicodeFail("\xe2\x89\xa0\xf0\x90\xae\x82.\xe2\x86\x916,1."); } // [B1, U1]
13191test { try toAsciiFail("\xe2\x89\xa0\xf0\x90\xae\x82.\xe2\x86\x916,1.", false); } // [B1, U1, A4_2]
13192test { try toAsciiFail("\xe2\x89\xa0\xf0\x90\xae\x82.\xe2\x86\x916,1.", true); } // [B1, U1, A4_2]
5425test { try toUnicodeFail("=\xcc\xb8\xf0\x90\xae\x82.\xe2\x86\x916,1."); } // [B1, U1]13193test { try toUnicodeFail("=\xcc\xb8\xf0\x90\xae\x82.\xe2\x86\x916,1."); } // [B1, U1]
13194test { try toAsciiFail("=\xcc\xb8\xf0\x90\xae\x82.\xe2\x86\x916,1.", false); } // [B1, U1, A4_2]
13195test { try toAsciiFail("=\xcc\xb8\xf0\x90\xae\x82.\xe2\x86\x916,1.", true); } // [B1, U1, A4_2]
5426test { try toUnicodeFail("xn--1chy492g.xn--6,1-pw1a."); } // [B1, U1]13196test { try toUnicodeFail("xn--1chy492g.xn--6,1-pw1a."); } // [B1, U1]
13197test { try toAsciiFail("xn--1chy492g.xn--6,1-pw1a.", false); } // [B1, U1, A4_2]
13198test { try toAsciiFail("xn--1chy492g.xn--6,1-pw1a.", true); } // [B1, U1, A4_2]
5427test { try toUnicodeFail("xn--1chy492g.xn--6,-uzus5m"); } // [B1, V7, U1]13199test { try toUnicodeFail("xn--1chy492g.xn--6,-uzus5m"); } // [B1, V7, U1]
13200test { try toAsciiFail("xn--1chy492g.xn--6,-uzus5m", false); } // [B1, V7, U1]
13201test { try toAsciiFail("xn--1chy492g.xn--6,-uzus5m", true); } // [B1, V7, U1]
5428test { try toUnicodeFail("xn--1chy492g.xn--45gx9iuy44d"); } // [B1, V7]13202test { try toUnicodeFail("xn--1chy492g.xn--45gx9iuy44d"); } // [B1, V7]
13203test { try toAsciiFail("xn--1chy492g.xn--45gx9iuy44d", false); } // [B1, V7]
13204test { try toAsciiFail("xn--1chy492g.xn--45gx9iuy44d", true); } // [B1, V7]
5429test { try toUnicodeFail("\xf0\x9d\xa9\x8f\xf3\xa0\xb2\x89\xc3\x9f.\xe1\xa2\xa4\xf2\x84\xa6\x8c\xe2\x80\x8c\xf0\x90\xb9\xab"); } // [B1, B5, B6, C1, V6, V7]13205test { try toUnicodeFail("\xf0\x9d\xa9\x8f\xf3\xa0\xb2\x89\xc3\x9f.\xe1\xa2\xa4\xf2\x84\xa6\x8c\xe2\x80\x8c\xf0\x90\xb9\xab"); } // [B1, B5, B6, C1, V6, V7]
13206test { try toAsciiFail("\xf0\x9d\xa9\x8f\xf3\xa0\xb2\x89\xc3\x9f.\xe1\xa2\xa4\xf2\x84\xa6\x8c\xe2\x80\x8c\xf0\x90\xb9\xab", false); } // [B1, B5, B6, C1, V6, V7]
13207test { try toAsciiFail("\xf0\x9d\xa9\x8f\xf3\xa0\xb2\x89\xc3\x9f.\xe1\xa2\xa4\xf2\x84\xa6\x8c\xe2\x80\x8c\xf0\x90\xb9\xab", true); } // [B1, B5, B6, V6, V7]
5430test { try toUnicodeFail("\xf0\x9d\xa9\x8f\xf3\xa0\xb2\x89SS.\xe1\xa2\xa4\xf2\x84\xa6\x8c\xe2\x80\x8c\xf0\x90\xb9\xab"); } // [B1, B5, B6, C1, V6, V7]13208test { try toUnicodeFail("\xf0\x9d\xa9\x8f\xf3\xa0\xb2\x89SS.\xe1\xa2\xa4\xf2\x84\xa6\x8c\xe2\x80\x8c\xf0\x90\xb9\xab"); } // [B1, B5, B6, C1, V6, V7]
13209test { try toAsciiFail("\xf0\x9d\xa9\x8f\xf3\xa0\xb2\x89SS.\xe1\xa2\xa4\xf2\x84\xa6\x8c\xe2\x80\x8c\xf0\x90\xb9\xab", false); } // [B1, B5, B6, C1, V6, V7]
13210test { try toAsciiFail("\xf0\x9d\xa9\x8f\xf3\xa0\xb2\x89SS.\xe1\xa2\xa4\xf2\x84\xa6\x8c\xe2\x80\x8c\xf0\x90\xb9\xab", true); } // [B1, B5, B6, V6, V7]
5431test { try toUnicodeFail("\xf0\x9d\xa9\x8f\xf3\xa0\xb2\x89ss.\xe1\xa2\xa4\xf2\x84\xa6\x8c\xe2\x80\x8c\xf0\x90\xb9\xab"); } // [B1, B5, B6, C1, V6, V7]13211test { try toUnicodeFail("\xf0\x9d\xa9\x8f\xf3\xa0\xb2\x89ss.\xe1\xa2\xa4\xf2\x84\xa6\x8c\xe2\x80\x8c\xf0\x90\xb9\xab"); } // [B1, B5, B6, C1, V6, V7]
13212test { try toAsciiFail("\xf0\x9d\xa9\x8f\xf3\xa0\xb2\x89ss.\xe1\xa2\xa4\xf2\x84\xa6\x8c\xe2\x80\x8c\xf0\x90\xb9\xab", false); } // [B1, B5, B6, C1, V6, V7]
13213test { try toAsciiFail("\xf0\x9d\xa9\x8f\xf3\xa0\xb2\x89ss.\xe1\xa2\xa4\xf2\x84\xa6\x8c\xe2\x80\x8c\xf0\x90\xb9\xab", true); } // [B1, B5, B6, V6, V7]
5432test { try toUnicodeFail("\xf0\x9d\xa9\x8f\xf3\xa0\xb2\x89Ss.\xe1\xa2\xa4\xf2\x84\xa6\x8c\xe2\x80\x8c\xf0\x90\xb9\xab"); } // [B1, B5, B6, C1, V6, V7]13214test { try toUnicodeFail("\xf0\x9d\xa9\x8f\xf3\xa0\xb2\x89Ss.\xe1\xa2\xa4\xf2\x84\xa6\x8c\xe2\x80\x8c\xf0\x90\xb9\xab"); } // [B1, B5, B6, C1, V6, V7]
13215test { try toAsciiFail("\xf0\x9d\xa9\x8f\xf3\xa0\xb2\x89Ss.\xe1\xa2\xa4\xf2\x84\xa6\x8c\xe2\x80\x8c\xf0\x90\xb9\xab", false); } // [B1, B5, B6, C1, V6, V7]
13216test { try toAsciiFail("\xf0\x9d\xa9\x8f\xf3\xa0\xb2\x89Ss.\xe1\xa2\xa4\xf2\x84\xa6\x8c\xe2\x80\x8c\xf0\x90\xb9\xab", true); } // [B1, B5, B6, V6, V7]
5433test { try toUnicodeFail("xn--ss-zb11ap1427e.xn--ubf2596jbt61c"); } // [B1, B5, B6, V6, V7]13217test { try toUnicodeFail("xn--ss-zb11ap1427e.xn--ubf2596jbt61c"); } // [B1, B5, B6, V6, V7]
13218test { try toAsciiFail("xn--ss-zb11ap1427e.xn--ubf2596jbt61c", false); } // [B1, B5, B6, V6, V7]
13219test { try toAsciiFail("xn--ss-zb11ap1427e.xn--ubf2596jbt61c", true); } // [B1, B5, B6, V6, V7]
5434test { try toUnicodeFail("xn--ss-zb11ap1427e.xn--ubf609atw1tynn3d"); } // [B1, B5, B6, C1, V6, V7]13220test { try toUnicodeFail("xn--ss-zb11ap1427e.xn--ubf609atw1tynn3d"); } // [B1, B5, B6, C1, V6, V7]
13221test { try toAsciiFail("xn--ss-zb11ap1427e.xn--ubf609atw1tynn3d", false); } // [B1, B5, B6, C1, V6, V7]
13222test { try toAsciiFail("xn--ss-zb11ap1427e.xn--ubf609atw1tynn3d", true); } // [B1, B5, B6, C1, V6, V7]
5435test { try toUnicodeFail("xn--zca3153vupz3e.xn--ubf609atw1tynn3d"); } // [B1, B5, B6, C1, V6, V7]13223test { try toUnicodeFail("xn--zca3153vupz3e.xn--ubf609atw1tynn3d"); } // [B1, B5, B6, C1, V6, V7]
13224test { try toAsciiFail("xn--zca3153vupz3e.xn--ubf609atw1tynn3d", false); } // [B1, B5, B6, C1, V6, V7]
13225test { try toAsciiFail("xn--zca3153vupz3e.xn--ubf609atw1tynn3d", true); } // [B1, B5, B6, C1, V6, V7]
5436test { try toUnicodeFail("\xc3\x9f\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xef\xbd\xa1\xea\x99\xba"); } // [B1, B5, V6, V7]13226test { try toUnicodeFail("\xc3\x9f\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xef\xbd\xa1\xea\x99\xba"); } // [B1, B5, V6, V7]
13227test { try toAsciiFail("\xc3\x9f\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xef\xbd\xa1\xea\x99\xba", false); } // [B1, B5, V6, V7]
13228test { try toAsciiFail("\xc3\x9f\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xef\xbd\xa1\xea\x99\xba", true); } // [B1, B5, V6, V7]
5437test { try toUnicodeFail("\xc3\x9f\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xe3\x80\x82\xea\x99\xba"); } // [B1, B5, V6, V7]13229test { try toUnicodeFail("\xc3\x9f\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xe3\x80\x82\xea\x99\xba"); } // [B1, B5, V6, V7]
13230test { try toAsciiFail("\xc3\x9f\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xe3\x80\x82\xea\x99\xba", false); } // [B1, B5, V6, V7]
13231test { try toAsciiFail("\xc3\x9f\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xe3\x80\x82\xea\x99\xba", true); } // [B1, B5, V6, V7]
5438test { try toUnicodeFail("\xc3\x9f\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe2\xb4\x87\xe3\x80\x82\xea\x99\xba"); } // [B1, B5, V6, V7]13232test { try toUnicodeFail("\xc3\x9f\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe2\xb4\x87\xe3\x80\x82\xea\x99\xba"); } // [B1, B5, V6, V7]
13233test { try toAsciiFail("\xc3\x9f\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe2\xb4\x87\xe3\x80\x82\xea\x99\xba", false); } // [B1, B5, V6, V7]
13234test { try toAsciiFail("\xc3\x9f\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe2\xb4\x87\xe3\x80\x82\xea\x99\xba", true); } // [B1, B5, V6, V7]
5439test { try toUnicodeFail("SS\xf0\x90\xb5\x93\xf1\x97\x98\x81\xe1\x82\xa7\xe3\x80\x82\xea\x99\xba"); } // [B1, B5, V6, V7]13235test { try toUnicodeFail("SS\xf0\x90\xb5\x93\xf1\x97\x98\x81\xe1\x82\xa7\xe3\x80\x82\xea\x99\xba"); } // [B1, B5, V6, V7]
13236test { try toAsciiFail("SS\xf0\x90\xb5\x93\xf1\x97\x98\x81\xe1\x82\xa7\xe3\x80\x82\xea\x99\xba", false); } // [B1, B5, V6, V7]
13237test { try toAsciiFail("SS\xf0\x90\xb5\x93\xf1\x97\x98\x81\xe1\x82\xa7\xe3\x80\x82\xea\x99\xba", true); } // [B1, B5, V6, V7]
5440test { try toUnicodeFail("ss\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe2\xb4\x87\xe3\x80\x82\xea\x99\xba"); } // [B1, B5, V6, V7]13238test { try toUnicodeFail("ss\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe2\xb4\x87\xe3\x80\x82\xea\x99\xba"); } // [B1, B5, V6, V7]
13239test { try toAsciiFail("ss\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe2\xb4\x87\xe3\x80\x82\xea\x99\xba", false); } // [B1, B5, V6, V7]
13240test { try toAsciiFail("ss\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe2\xb4\x87\xe3\x80\x82\xea\x99\xba", true); } // [B1, B5, V6, V7]
5441test { try toUnicodeFail("Ss\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xe3\x80\x82\xea\x99\xba"); } // [B1, B5, V6, V7]13241test { try toUnicodeFail("Ss\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xe3\x80\x82\xea\x99\xba"); } // [B1, B5, V6, V7]
13242test { try toAsciiFail("Ss\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xe3\x80\x82\xea\x99\xba", false); } // [B1, B5, V6, V7]
13243test { try toAsciiFail("Ss\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xe3\x80\x82\xea\x99\xba", true); } // [B1, B5, V6, V7]
5442test { try toUnicodeFail("xn--ss-e61ar955h4hs7b.xn--9x8a"); } // [B1, B5, V6, V7]13244test { try toUnicodeFail("xn--ss-e61ar955h4hs7b.xn--9x8a"); } // [B1, B5, V6, V7]
13245test { try toAsciiFail("xn--ss-e61ar955h4hs7b.xn--9x8a", false); } // [B1, B5, V6, V7]
13246test { try toAsciiFail("xn--ss-e61ar955h4hs7b.xn--9x8a", true); } // [B1, B5, V6, V7]
5443test { try toUnicodeFail("xn--zca227tpy4lkns1b.xn--9x8a"); } // [B1, B5, V6, V7]13247test { try toUnicodeFail("xn--zca227tpy4lkns1b.xn--9x8a"); } // [B1, B5, V6, V7]
13248test { try toAsciiFail("xn--zca227tpy4lkns1b.xn--9x8a", false); } // [B1, B5, V6, V7]
13249test { try toAsciiFail("xn--zca227tpy4lkns1b.xn--9x8a", true); } // [B1, B5, V6, V7]
5444test { try toUnicodeFail("\xc3\x9f\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe2\xb4\x87\xef\xbd\xa1\xea\x99\xba"); } // [B1, B5, V6, V7]13250test { try toUnicodeFail("\xc3\x9f\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe2\xb4\x87\xef\xbd\xa1\xea\x99\xba"); } // [B1, B5, V6, V7]
13251test { try toAsciiFail("\xc3\x9f\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe2\xb4\x87\xef\xbd\xa1\xea\x99\xba", false); } // [B1, B5, V6, V7]
13252test { try toAsciiFail("\xc3\x9f\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe2\xb4\x87\xef\xbd\xa1\xea\x99\xba", true); } // [B1, B5, V6, V7]
5445test { try toUnicodeFail("SS\xf0\x90\xb5\x93\xf1\x97\x98\x81\xe1\x82\xa7\xef\xbd\xa1\xea\x99\xba"); } // [B1, B5, V6, V7]13253test { try toUnicodeFail("SS\xf0\x90\xb5\x93\xf1\x97\x98\x81\xe1\x82\xa7\xef\xbd\xa1\xea\x99\xba"); } // [B1, B5, V6, V7]
13254test { try toAsciiFail("SS\xf0\x90\xb5\x93\xf1\x97\x98\x81\xe1\x82\xa7\xef\xbd\xa1\xea\x99\xba", false); } // [B1, B5, V6, V7]
13255test { try toAsciiFail("SS\xf0\x90\xb5\x93\xf1\x97\x98\x81\xe1\x82\xa7\xef\xbd\xa1\xea\x99\xba", true); } // [B1, B5, V6, V7]
5446test { try toUnicodeFail("ss\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe2\xb4\x87\xef\xbd\xa1\xea\x99\xba"); } // [B1, B5, V6, V7]13256test { try toUnicodeFail("ss\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe2\xb4\x87\xef\xbd\xa1\xea\x99\xba"); } // [B1, B5, V6, V7]
13257test { try toAsciiFail("ss\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe2\xb4\x87\xef\xbd\xa1\xea\x99\xba", false); } // [B1, B5, V6, V7]
13258test { try toAsciiFail("ss\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe2\xb4\x87\xef\xbd\xa1\xea\x99\xba", true); } // [B1, B5, V6, V7]
5447test { try toUnicodeFail("Ss\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xef\xbd\xa1\xea\x99\xba"); } // [B1, B5, V6, V7]13259test { try toUnicodeFail("Ss\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xef\xbd\xa1\xea\x99\xba"); } // [B1, B5, V6, V7]
13260test { try toAsciiFail("Ss\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xef\xbd\xa1\xea\x99\xba", false); } // [B1, B5, V6, V7]
13261test { try toAsciiFail("Ss\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xef\xbd\xa1\xea\x99\xba", true); } // [B1, B5, V6, V7]
5448test { try toUnicodeFail("SS\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xe3\x80\x82\xea\x99\xba"); } // [B1, B5, V6, V7]13262test { try toUnicodeFail("SS\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xe3\x80\x82\xea\x99\xba"); } // [B1, B5, V6, V7]
13263test { try toAsciiFail("SS\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xe3\x80\x82\xea\x99\xba", false); } // [B1, B5, V6, V7]
13264test { try toAsciiFail("SS\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xe3\x80\x82\xea\x99\xba", true); } // [B1, B5, V6, V7]
5449test { try toUnicodeFail("xn--ss-rek7420r4hs7b.xn--9x8a"); } // [B1, B5, V6, V7]13265test { try toUnicodeFail("xn--ss-rek7420r4hs7b.xn--9x8a"); } // [B1, B5, V6, V7]
13266test { try toAsciiFail("xn--ss-rek7420r4hs7b.xn--9x8a", false); } // [B1, B5, V6, V7]
13267test { try toAsciiFail("xn--ss-rek7420r4hs7b.xn--9x8a", true); } // [B1, B5, V6, V7]
5450test { try toUnicodeFail("xn--zca491fci5qkn79a.xn--9x8a"); } // [B1, B5, V6, V7]13268test { try toUnicodeFail("xn--zca491fci5qkn79a.xn--9x8a"); } // [B1, B5, V6, V7]
13269test { try toAsciiFail("xn--zca491fci5qkn79a.xn--9x8a", false); } // [B1, B5, V6, V7]
13270test { try toAsciiFail("xn--zca491fci5qkn79a.xn--9x8a", true); } // [B1, B5, V6, V7]
5451test { try toUnicodeFail("SS\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xef\xbd\xa1\xea\x99\xba"); } // [B1, B5, V6, V7]13271test { try toUnicodeFail("SS\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xef\xbd\xa1\xea\x99\xba"); } // [B1, B5, V6, V7]
13272test { try toAsciiFail("SS\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xef\xbd\xa1\xea\x99\xba", false); } // [B1, B5, V6, V7]
13273test { try toAsciiFail("SS\xf0\x90\xb5\xb3\xf1\x97\x98\x81\xe1\x82\xa7\xef\xbd\xa1\xea\x99\xba", true); } // [B1, B5, V6, V7]
5452test { try toUnicodeFail("\xe1\x9c\x94\xe3\x80\x82\xf3\xa0\x86\xa3-\xf0\x91\x8b\xaa"); } // [V3, V6]13274test { try toUnicodeFail("\xe1\x9c\x94\xe3\x80\x82\xf3\xa0\x86\xa3-\xf0\x91\x8b\xaa"); } // [V3, V6]
13275test { try toAsciiFail("\xe1\x9c\x94\xe3\x80\x82\xf3\xa0\x86\xa3-\xf0\x91\x8b\xaa", false); } // [V3, V6]
13276test { try toAsciiFail("\xe1\x9c\x94\xe3\x80\x82\xf3\xa0\x86\xa3-\xf0\x91\x8b\xaa", true); } // [V3, V6]
5453test { try toUnicodeFail("xn--fze.xn----ly8i"); } // [V3, V6]13277test { try toUnicodeFail("xn--fze.xn----ly8i"); } // [V3, V6]
13278test { try toAsciiFail("xn--fze.xn----ly8i", false); } // [V3, V6]
13279test { try toAsciiFail("xn--fze.xn----ly8i", true); } // [V3, V6]
5454test { try toUnicodeFail("\xea\xaf\xa8-\xef\xbc\x8e\xf2\xa8\x8f\x9c\xd6\xbd\xc3\x9f"); } // [V3, V6, V7]13280test { try toUnicodeFail("\xea\xaf\xa8-\xef\xbc\x8e\xf2\xa8\x8f\x9c\xd6\xbd\xc3\x9f"); } // [V3, V6, V7]
13281test { try toAsciiFail("\xea\xaf\xa8-\xef\xbc\x8e\xf2\xa8\x8f\x9c\xd6\xbd\xc3\x9f", false); } // [V3, V6, V7]
13282test { try toAsciiFail("\xea\xaf\xa8-\xef\xbc\x8e\xf2\xa8\x8f\x9c\xd6\xbd\xc3\x9f", true); } // [V3, V6, V7]
5455test { try toUnicodeFail("\xea\xaf\xa8-.\xf2\xa8\x8f\x9c\xd6\xbd\xc3\x9f"); } // [V3, V6, V7]13283test { try toUnicodeFail("\xea\xaf\xa8-.\xf2\xa8\x8f\x9c\xd6\xbd\xc3\x9f"); } // [V3, V6, V7]
13284test { try toAsciiFail("\xea\xaf\xa8-.\xf2\xa8\x8f\x9c\xd6\xbd\xc3\x9f", false); } // [V3, V6, V7]
13285test { try toAsciiFail("\xea\xaf\xa8-.\xf2\xa8\x8f\x9c\xd6\xbd\xc3\x9f", true); } // [V3, V6, V7]
5456test { try toUnicodeFail("\xea\xaf\xa8-.\xf2\xa8\x8f\x9c\xd6\xbdSS"); } // [V3, V6, V7]13286test { try toUnicodeFail("\xea\xaf\xa8-.\xf2\xa8\x8f\x9c\xd6\xbdSS"); } // [V3, V6, V7]
13287test { try toAsciiFail("\xea\xaf\xa8-.\xf2\xa8\x8f\x9c\xd6\xbdSS", false); } // [V3, V6, V7]
13288test { try toAsciiFail("\xea\xaf\xa8-.\xf2\xa8\x8f\x9c\xd6\xbdSS", true); } // [V3, V6, V7]
5457test { try toUnicodeFail("\xea\xaf\xa8-.\xf2\xa8\x8f\x9c\xd6\xbdss"); } // [V3, V6, V7]13289test { try toUnicodeFail("\xea\xaf\xa8-.\xf2\xa8\x8f\x9c\xd6\xbdss"); } // [V3, V6, V7]
13290test { try toAsciiFail("\xea\xaf\xa8-.\xf2\xa8\x8f\x9c\xd6\xbdss", false); } // [V3, V6, V7]
13291test { try toAsciiFail("\xea\xaf\xa8-.\xf2\xa8\x8f\x9c\xd6\xbdss", true); } // [V3, V6, V7]
5458test { try toUnicodeFail("\xea\xaf\xa8-.\xf2\xa8\x8f\x9c\xd6\xbdSs"); } // [V3, V6, V7]13292test { try toUnicodeFail("\xea\xaf\xa8-.\xf2\xa8\x8f\x9c\xd6\xbdSs"); } // [V3, V6, V7]
13293test { try toAsciiFail("\xea\xaf\xa8-.\xf2\xa8\x8f\x9c\xd6\xbdSs", false); } // [V3, V6, V7]
13294test { try toAsciiFail("\xea\xaf\xa8-.\xf2\xa8\x8f\x9c\xd6\xbdSs", true); } // [V3, V6, V7]
5459test { try toUnicodeFail("xn----pw5e.xn--ss-7jd10716y"); } // [V3, V6, V7]13295test { try toUnicodeFail("xn----pw5e.xn--ss-7jd10716y"); } // [V3, V6, V7]
13296test { try toAsciiFail("xn----pw5e.xn--ss-7jd10716y", false); } // [V3, V6, V7]
13297test { try toAsciiFail("xn----pw5e.xn--ss-7jd10716y", true); } // [V3, V6, V7]
5460test { try toUnicodeFail("xn----pw5e.xn--zca50wfv060a"); } // [V3, V6, V7]13298test { try toUnicodeFail("xn----pw5e.xn--zca50wfv060a"); } // [V3, V6, V7]
13299test { try toAsciiFail("xn----pw5e.xn--zca50wfv060a", false); } // [V3, V6, V7]
13300test { try toAsciiFail("xn----pw5e.xn--zca50wfv060a", true); } // [V3, V6, V7]
5461test { try toUnicodeFail("\xea\xaf\xa8-\xef\xbc\x8e\xf2\xa8\x8f\x9c\xd6\xbdSS"); } // [V3, V6, V7]13301test { try toUnicodeFail("\xea\xaf\xa8-\xef\xbc\x8e\xf2\xa8\x8f\x9c\xd6\xbdSS"); } // [V3, V6, V7]
13302test { try toAsciiFail("\xea\xaf\xa8-\xef\xbc\x8e\xf2\xa8\x8f\x9c\xd6\xbdSS", false); } // [V3, V6, V7]
13303test { try toAsciiFail("\xea\xaf\xa8-\xef\xbc\x8e\xf2\xa8\x8f\x9c\xd6\xbdSS", true); } // [V3, V6, V7]
5462test { try toUnicodeFail("\xea\xaf\xa8-\xef\xbc\x8e\xf2\xa8\x8f\x9c\xd6\xbdss"); } // [V3, V6, V7]13304test { try toUnicodeFail("\xea\xaf\xa8-\xef\xbc\x8e\xf2\xa8\x8f\x9c\xd6\xbdss"); } // [V3, V6, V7]
13305test { try toAsciiFail("\xea\xaf\xa8-\xef\xbc\x8e\xf2\xa8\x8f\x9c\xd6\xbdss", false); } // [V3, V6, V7]
13306test { try toAsciiFail("\xea\xaf\xa8-\xef\xbc\x8e\xf2\xa8\x8f\x9c\xd6\xbdss", true); } // [V3, V6, V7]
5463test { try toUnicodeFail("\xea\xaf\xa8-\xef\xbc\x8e\xf2\xa8\x8f\x9c\xd6\xbdSs"); } // [V3, V6, V7]13307test { try toUnicodeFail("\xea\xaf\xa8-\xef\xbc\x8e\xf2\xa8\x8f\x9c\xd6\xbdSs"); } // [V3, V6, V7]
13308test { try toAsciiFail("\xea\xaf\xa8-\xef\xbc\x8e\xf2\xa8\x8f\x9c\xd6\xbdSs", false); } // [V3, V6, V7]
13309test { try toAsciiFail("\xea\xaf\xa8-\xef\xbc\x8e\xf2\xa8\x8f\x9c\xd6\xbdSs", true); } // [V3, V6, V7]
5464test { try toUnicodeFail("\xe1\xa1\x93-\xe2\x89\xae\xe3\x80\x82\xd9\xab\xf3\xa0\x85\xb1\xe1\xa1\x84"); } // [B1, B6]13310test { try toUnicodeFail("\xe1\xa1\x93-\xe2\x89\xae\xe3\x80\x82\xd9\xab\xf3\xa0\x85\xb1\xe1\xa1\x84"); } // [B1, B6]
13311test { try toAsciiFail("\xe1\xa1\x93-\xe2\x89\xae\xe3\x80\x82\xd9\xab\xf3\xa0\x85\xb1\xe1\xa1\x84", false); } // [B1, B6]
13312test { try toAsciiFail("\xe1\xa1\x93-\xe2\x89\xae\xe3\x80\x82\xd9\xab\xf3\xa0\x85\xb1\xe1\xa1\x84", true); } // [B1, B6]
5465test { try toUnicodeFail("\xe1\xa1\x93-<\xcc\xb8\xe3\x80\x82\xd9\xab\xf3\xa0\x85\xb1\xe1\xa1\x84"); } // [B1, B6]13313test { try toUnicodeFail("\xe1\xa1\x93-<\xcc\xb8\xe3\x80\x82\xd9\xab\xf3\xa0\x85\xb1\xe1\xa1\x84"); } // [B1, B6]
13314test { try toAsciiFail("\xe1\xa1\x93-<\xcc\xb8\xe3\x80\x82\xd9\xab\xf3\xa0\x85\xb1\xe1\xa1\x84", false); } // [B1, B6]
13315test { try toAsciiFail("\xe1\xa1\x93-<\xcc\xb8\xe3\x80\x82\xd9\xab\xf3\xa0\x85\xb1\xe1\xa1\x84", true); } // [B1, B6]
5466test { try toUnicodeFail("xn----s7j866c.xn--kib252g"); } // [B1, B6]13316test { try toUnicodeFail("xn----s7j866c.xn--kib252g"); } // [B1, B6]
13317test { try toAsciiFail("xn----s7j866c.xn--kib252g", false); } // [B1, B6]
13318test { try toAsciiFail("xn----s7j866c.xn--kib252g", true); } // [B1, B6]
5467test { try toUnicodeFail("\xf0\x9d\x9f\xa5\xe2\x99\xae\xf0\x91\x9c\xab\xe0\xa3\xad\xef\xbc\x8e\xe1\x9f\x92\xf0\x91\x9c\xab8\xf3\xa0\x86\x8f"); } // [V6]13319test { try toUnicodeFail("\xf0\x9d\x9f\xa5\xe2\x99\xae\xf0\x91\x9c\xab\xe0\xa3\xad\xef\xbc\x8e\xe1\x9f\x92\xf0\x91\x9c\xab8\xf3\xa0\x86\x8f"); } // [V6]
13320test { try toAsciiFail("\xf0\x9d\x9f\xa5\xe2\x99\xae\xf0\x91\x9c\xab\xe0\xa3\xad\xef\xbc\x8e\xe1\x9f\x92\xf0\x91\x9c\xab8\xf3\xa0\x86\x8f", false); } // [V6]
13321test { try toAsciiFail("\xf0\x9d\x9f\xa5\xe2\x99\xae\xf0\x91\x9c\xab\xe0\xa3\xad\xef\xbc\x8e\xe1\x9f\x92\xf0\x91\x9c\xab8\xf3\xa0\x86\x8f", true); } // [V6]
5468test { try toUnicodeFail("3\xe2\x99\xae\xf0\x91\x9c\xab\xe0\xa3\xad.\xe1\x9f\x92\xf0\x91\x9c\xab8\xf3\xa0\x86\x8f"); } // [V6]13322test { try toUnicodeFail("3\xe2\x99\xae\xf0\x91\x9c\xab\xe0\xa3\xad.\xe1\x9f\x92\xf0\x91\x9c\xab8\xf3\xa0\x86\x8f"); } // [V6]
13323test { try toAsciiFail("3\xe2\x99\xae\xf0\x91\x9c\xab\xe0\xa3\xad.\xe1\x9f\x92\xf0\x91\x9c\xab8\xf3\xa0\x86\x8f", false); } // [V6]
13324test { try toAsciiFail("3\xe2\x99\xae\xf0\x91\x9c\xab\xe0\xa3\xad.\xe1\x9f\x92\xf0\x91\x9c\xab8\xf3\xa0\x86\x8f", true); } // [V6]
5469test { try toUnicodeFail("xn--3-ksd277tlo7s.xn--8-f0jx021l"); } // [V6]13325test { try toUnicodeFail("xn--3-ksd277tlo7s.xn--8-f0jx021l"); } // [V6]
13326test { try toAsciiFail("xn--3-ksd277tlo7s.xn--8-f0jx021l", false); } // [V6]
13327test { try toAsciiFail("xn--3-ksd277tlo7s.xn--8-f0jx021l", true); } // [V6]
5470test { try toUnicodeFail("-\xef\xbd\xa1\xf2\x95\x8c\x80\xe2\x80\x8d\xe2\x9d\xa1"); } // [C2, V3, V7]13328test { try toUnicodeFail("-\xef\xbd\xa1\xf2\x95\x8c\x80\xe2\x80\x8d\xe2\x9d\xa1"); } // [C2, V3, V7]
13329test { try toAsciiFail("-\xef\xbd\xa1\xf2\x95\x8c\x80\xe2\x80\x8d\xe2\x9d\xa1", false); } // [C2, V3, V7]
13330test { try toAsciiFail("-\xef\xbd\xa1\xf2\x95\x8c\x80\xe2\x80\x8d\xe2\x9d\xa1", true); } // [V3, V7]
5471test { try toUnicodeFail("-\xe3\x80\x82\xf2\x95\x8c\x80\xe2\x80\x8d\xe2\x9d\xa1"); } // [C2, V3, V7]13331test { try toUnicodeFail("-\xe3\x80\x82\xf2\x95\x8c\x80\xe2\x80\x8d\xe2\x9d\xa1"); } // [C2, V3, V7]
13332test { try toAsciiFail("-\xe3\x80\x82\xf2\x95\x8c\x80\xe2\x80\x8d\xe2\x9d\xa1", false); } // [C2, V3, V7]
13333test { try toAsciiFail("-\xe3\x80\x82\xf2\x95\x8c\x80\xe2\x80\x8d\xe2\x9d\xa1", true); } // [V3, V7]
5472test { try toUnicodeFail("-.xn--nei54421f"); } // [V3, V7]13334test { try toUnicodeFail("-.xn--nei54421f"); } // [V3, V7]
13335test { try toAsciiFail("-.xn--nei54421f", false); } // [V3, V7]
13336test { try toAsciiFail("-.xn--nei54421f", true); } // [V3, V7]
5473test { try toUnicodeFail("-.xn--1ug800aq795s"); } // [C2, V3, V7]13337test { try toUnicodeFail("-.xn--1ug800aq795s"); } // [C2, V3, V7]
13338test { try toAsciiFail("-.xn--1ug800aq795s", false); } // [C2, V3, V7]
13339test { try toAsciiFail("-.xn--1ug800aq795s", true); } // [C2, V3, V7]
5474test { try toUnicodeFail("\xf0\x9d\x9f\x93\xe2\x98\xb1\xf0\x9d\x9f\x90\xf2\xa5\xb0\xb5\xef\xbd\xa1\xf0\x9d\xaa\xae\xf1\x90\xa1\xb3"); } // [V6, V7]13340test { try toUnicodeFail("\xf0\x9d\x9f\x93\xe2\x98\xb1\xf0\x9d\x9f\x90\xf2\xa5\xb0\xb5\xef\xbd\xa1\xf0\x9d\xaa\xae\xf1\x90\xa1\xb3"); } // [V6, V7]
13341test { try toAsciiFail("\xf0\x9d\x9f\x93\xe2\x98\xb1\xf0\x9d\x9f\x90\xf2\xa5\xb0\xb5\xef\xbd\xa1\xf0\x9d\xaa\xae\xf1\x90\xa1\xb3", false); } // [V6, V7]
13342test { try toAsciiFail("\xf0\x9d\x9f\x93\xe2\x98\xb1\xf0\x9d\x9f\x90\xf2\xa5\xb0\xb5\xef\xbd\xa1\xf0\x9d\xaa\xae\xf1\x90\xa1\xb3", true); } // [V6, V7]
5475test { try toUnicodeFail("5\xe2\x98\xb12\xf2\xa5\xb0\xb5\xe3\x80\x82\xf0\x9d\xaa\xae\xf1\x90\xa1\xb3"); } // [V6, V7]13343test { try toUnicodeFail("5\xe2\x98\xb12\xf2\xa5\xb0\xb5\xe3\x80\x82\xf0\x9d\xaa\xae\xf1\x90\xa1\xb3"); } // [V6, V7]
13344test { try toAsciiFail("5\xe2\x98\xb12\xf2\xa5\xb0\xb5\xe3\x80\x82\xf0\x9d\xaa\xae\xf1\x90\xa1\xb3", false); } // [V6, V7]
13345test { try toAsciiFail("5\xe2\x98\xb12\xf2\xa5\xb0\xb5\xe3\x80\x82\xf0\x9d\xaa\xae\xf1\x90\xa1\xb3", true); } // [V6, V7]
5476test { try toUnicodeFail("xn--52-dwx47758j.xn--kd3hk431k"); } // [V6, V7]13346test { try toUnicodeFail("xn--52-dwx47758j.xn--kd3hk431k"); } // [V6, V7]
13347test { try toAsciiFail("xn--52-dwx47758j.xn--kd3hk431k", false); } // [V6, V7]
13348test { try toAsciiFail("xn--52-dwx47758j.xn--kd3hk431k", true); } // [V6, V7]
5477test { try toUnicodeFail("-.-\xe2\x94\x9c\xf2\x96\xa6\xa3"); } // [V3, V7]13349test { try toUnicodeFail("-.-\xe2\x94\x9c\xf2\x96\xa6\xa3"); } // [V3, V7]
13350test { try toAsciiFail("-.-\xe2\x94\x9c\xf2\x96\xa6\xa3", false); } // [V3, V7]
13351test { try toAsciiFail("-.-\xe2\x94\x9c\xf2\x96\xa6\xa3", true); } // [V3, V7]
5478test { try toUnicodeFail("-.xn----ukp70432h"); } // [V3, V7]13352test { try toUnicodeFail("-.xn----ukp70432h"); } // [V3, V7]
13353test { try toAsciiFail("-.xn----ukp70432h", false); } // [V3, V7]
13354test { try toAsciiFail("-.xn----ukp70432h", true); } // [V3, V7]
5479test { try toUnicodeFail("\xd6\xa5\xdd\xad\xef\xbd\xa1\xe2\x80\x8d\xf3\xa0\x80\x98"); } // [B1, C2, V6, V7]13355test { try toUnicodeFail("\xd6\xa5\xdd\xad\xef\xbd\xa1\xe2\x80\x8d\xf3\xa0\x80\x98"); } // [B1, C2, V6, V7]
13356test { try toAsciiFail("\xd6\xa5\xdd\xad\xef\xbd\xa1\xe2\x80\x8d\xf3\xa0\x80\x98", false); } // [B1, C2, V6, V7]
13357test { try toAsciiFail("\xd6\xa5\xdd\xad\xef\xbd\xa1\xe2\x80\x8d\xf3\xa0\x80\x98", true); } // [B1, V6, V7]
5480test { try toUnicodeFail("\xd6\xa5\xdd\xad\xe3\x80\x82\xe2\x80\x8d\xf3\xa0\x80\x98"); } // [B1, C2, V6, V7]13358test { try toUnicodeFail("\xd6\xa5\xdd\xad\xe3\x80\x82\xe2\x80\x8d\xf3\xa0\x80\x98"); } // [B1, C2, V6, V7]
13359test { try toAsciiFail("\xd6\xa5\xdd\xad\xe3\x80\x82\xe2\x80\x8d\xf3\xa0\x80\x98", false); } // [B1, C2, V6, V7]
13360test { try toAsciiFail("\xd6\xa5\xdd\xad\xe3\x80\x82\xe2\x80\x8d\xf3\xa0\x80\x98", true); } // [B1, V6, V7]
5481test { try toUnicodeFail("xn--wcb62g.xn--p526e"); } // [B1, V6, V7]13361test { try toUnicodeFail("xn--wcb62g.xn--p526e"); } // [B1, V6, V7]
13362test { try toAsciiFail("xn--wcb62g.xn--p526e", false); } // [B1, V6, V7]
13363test { try toAsciiFail("xn--wcb62g.xn--p526e", true); } // [B1, V6, V7]
5482test { try toUnicodeFail("xn--wcb62g.xn--1ugy8001l"); } // [B1, C2, V6, V7]13364test { try toUnicodeFail("xn--wcb62g.xn--1ugy8001l"); } // [B1, C2, V6, V7]
13365test { try toAsciiFail("xn--wcb62g.xn--1ugy8001l", false); } // [B1, C2, V6, V7]
13366test { try toAsciiFail("xn--wcb62g.xn--1ugy8001l", true); } // [B1, C2, V6, V7]
5483test { try toUnicodeFail("\xec\xa5\xa5\xf3\x94\x8f\x89\xe1\x82\xae\xef\xbc\x8e\xe2\x80\x8c\xe2\x92\x88\xe2\x92\x88\xf0\x90\xab\x92"); } // [B1, C1, V7]13367test { try toUnicodeFail("\xec\xa5\xa5\xf3\x94\x8f\x89\xe1\x82\xae\xef\xbc\x8e\xe2\x80\x8c\xe2\x92\x88\xe2\x92\x88\xf0\x90\xab\x92"); } // [B1, C1, V7]
13368test { try toAsciiFail("\xec\xa5\xa5\xf3\x94\x8f\x89\xe1\x82\xae\xef\xbc\x8e\xe2\x80\x8c\xe2\x92\x88\xe2\x92\x88\xf0\x90\xab\x92", false); } // [B1, C1, V7]
13369test { try toAsciiFail("\xec\xa5\xa5\xf3\x94\x8f\x89\xe1\x82\xae\xef\xbc\x8e\xe2\x80\x8c\xe2\x92\x88\xe2\x92\x88\xf0\x90\xab\x92", true); } // [B1, V7]
5484test { try toUnicodeFail("\xe1\x84\x8c\xe1\x85\xb1\xe1\x86\xbc\xf3\x94\x8f\x89\xe1\x82\xae\xef\xbc\x8e\xe2\x80\x8c\xe2\x92\x88\xe2\x92\x88\xf0\x90\xab\x92"); } // [B1, C1, V7]13370test { try toUnicodeFail("\xe1\x84\x8c\xe1\x85\xb1\xe1\x86\xbc\xf3\x94\x8f\x89\xe1\x82\xae\xef\xbc\x8e\xe2\x80\x8c\xe2\x92\x88\xe2\x92\x88\xf0\x90\xab\x92"); } // [B1, C1, V7]
13371test { try toAsciiFail("\xe1\x84\x8c\xe1\x85\xb1\xe1\x86\xbc\xf3\x94\x8f\x89\xe1\x82\xae\xef\xbc\x8e\xe2\x80\x8c\xe2\x92\x88\xe2\x92\x88\xf0\x90\xab\x92", false); } // [B1, C1, V7]
13372test { try toAsciiFail("\xe1\x84\x8c\xe1\x85\xb1\xe1\x86\xbc\xf3\x94\x8f\x89\xe1\x82\xae\xef\xbc\x8e\xe2\x80\x8c\xe2\x92\x88\xe2\x92\x88\xf0\x90\xab\x92", true); } // [B1, V7]
5485test { try toUnicodeFail("\xec\xa5\xa5\xf3\x94\x8f\x89\xe1\x82\xae.\xe2\x80\x8c1.1.\xf0\x90\xab\x92"); } // [B1, C1, V7]13373test { try toUnicodeFail("\xec\xa5\xa5\xf3\x94\x8f\x89\xe1\x82\xae.\xe2\x80\x8c1.1.\xf0\x90\xab\x92"); } // [B1, C1, V7]
13374test { try toAsciiFail("\xec\xa5\xa5\xf3\x94\x8f\x89\xe1\x82\xae.\xe2\x80\x8c1.1.\xf0\x90\xab\x92", false); } // [B1, C1, V7]
13375test { try toAsciiFail("\xec\xa5\xa5\xf3\x94\x8f\x89\xe1\x82\xae.\xe2\x80\x8c1.1.\xf0\x90\xab\x92", true); } // [B1, V7]
5486test { try toUnicodeFail("\xe1\x84\x8c\xe1\x85\xb1\xe1\x86\xbc\xf3\x94\x8f\x89\xe1\x82\xae.\xe2\x80\x8c1.1.\xf0\x90\xab\x92"); } // [B1, C1, V7]13376test { try toUnicodeFail("\xe1\x84\x8c\xe1\x85\xb1\xe1\x86\xbc\xf3\x94\x8f\x89\xe1\x82\xae.\xe2\x80\x8c1.1.\xf0\x90\xab\x92"); } // [B1, C1, V7]
13377test { try toAsciiFail("\xe1\x84\x8c\xe1\x85\xb1\xe1\x86\xbc\xf3\x94\x8f\x89\xe1\x82\xae.\xe2\x80\x8c1.1.\xf0\x90\xab\x92", false); } // [B1, C1, V7]
13378test { try toAsciiFail("\xe1\x84\x8c\xe1\x85\xb1\xe1\x86\xbc\xf3\x94\x8f\x89\xe1\x82\xae.\xe2\x80\x8c1.1.\xf0\x90\xab\x92", true); } // [B1, V7]
5487test { try toUnicodeFail("\xe1\x84\x8c\xe1\x85\xb1\xe1\x86\xbc\xf3\x94\x8f\x89\xe2\xb4\x8e.\xe2\x80\x8c1.1.\xf0\x90\xab\x92"); } // [B1, C1, V7]13379test { try toUnicodeFail("\xe1\x84\x8c\xe1\x85\xb1\xe1\x86\xbc\xf3\x94\x8f\x89\xe2\xb4\x8e.\xe2\x80\x8c1.1.\xf0\x90\xab\x92"); } // [B1, C1, V7]
13380test { try toAsciiFail("\xe1\x84\x8c\xe1\x85\xb1\xe1\x86\xbc\xf3\x94\x8f\x89\xe2\xb4\x8e.\xe2\x80\x8c1.1.\xf0\x90\xab\x92", false); } // [B1, C1, V7]
13381test { try toAsciiFail("\xe1\x84\x8c\xe1\x85\xb1\xe1\x86\xbc\xf3\x94\x8f\x89\xe2\xb4\x8e.\xe2\x80\x8c1.1.\xf0\x90\xab\x92", true); } // [B1, V7]
5488test { try toUnicodeFail("\xec\xa5\xa5\xf3\x94\x8f\x89\xe2\xb4\x8e.\xe2\x80\x8c1.1.\xf0\x90\xab\x92"); } // [B1, C1, V7]13382test { try toUnicodeFail("\xec\xa5\xa5\xf3\x94\x8f\x89\xe2\xb4\x8e.\xe2\x80\x8c1.1.\xf0\x90\xab\x92"); } // [B1, C1, V7]
13383test { try toAsciiFail("\xec\xa5\xa5\xf3\x94\x8f\x89\xe2\xb4\x8e.\xe2\x80\x8c1.1.\xf0\x90\xab\x92", false); } // [B1, C1, V7]
13384test { try toAsciiFail("\xec\xa5\xa5\xf3\x94\x8f\x89\xe2\xb4\x8e.\xe2\x80\x8c1.1.\xf0\x90\xab\x92", true); } // [B1, V7]
5489test { try toUnicodeFail("xn--5kj3511ccyw3h.1.1.xn--7w9c"); } // [B1, V7]13385test { try toUnicodeFail("xn--5kj3511ccyw3h.1.1.xn--7w9c"); } // [B1, V7]
13386test { try toAsciiFail("xn--5kj3511ccyw3h.1.1.xn--7w9c", false); } // [B1, V7]
13387test { try toAsciiFail("xn--5kj3511ccyw3h.1.1.xn--7w9c", true); } // [B1, V7]
5490test { try toUnicodeFail("xn--5kj3511ccyw3h.xn--1-rgn.1.xn--7w9c"); } // [B1, C1, V7]13388test { try toUnicodeFail("xn--5kj3511ccyw3h.xn--1-rgn.1.xn--7w9c"); } // [B1, C1, V7]
13389test { try toAsciiFail("xn--5kj3511ccyw3h.xn--1-rgn.1.xn--7w9c", false); } // [B1, C1, V7]
13390test { try toAsciiFail("xn--5kj3511ccyw3h.xn--1-rgn.1.xn--7w9c", true); } // [B1, C1, V7]
5491test { try toUnicodeFail("\xe1\x84\x8c\xe1\x85\xb1\xe1\x86\xbc\xf3\x94\x8f\x89\xe2\xb4\x8e\xef\xbc\x8e\xe2\x80\x8c\xe2\x92\x88\xe2\x92\x88\xf0\x90\xab\x92"); } // [B1, C1, V7]13391test { try toUnicodeFail("\xe1\x84\x8c\xe1\x85\xb1\xe1\x86\xbc\xf3\x94\x8f\x89\xe2\xb4\x8e\xef\xbc\x8e\xe2\x80\x8c\xe2\x92\x88\xe2\x92\x88\xf0\x90\xab\x92"); } // [B1, C1, V7]
13392test { try toAsciiFail("\xe1\x84\x8c\xe1\x85\xb1\xe1\x86\xbc\xf3\x94\x8f\x89\xe2\xb4\x8e\xef\xbc\x8e\xe2\x80\x8c\xe2\x92\x88\xe2\x92\x88\xf0\x90\xab\x92", false); } // [B1, C1, V7]
13393test { try toAsciiFail("\xe1\x84\x8c\xe1\x85\xb1\xe1\x86\xbc\xf3\x94\x8f\x89\xe2\xb4\x8e\xef\xbc\x8e\xe2\x80\x8c\xe2\x92\x88\xe2\x92\x88\xf0\x90\xab\x92", true); } // [B1, V7]
5492test { try toUnicodeFail("\xec\xa5\xa5\xf3\x94\x8f\x89\xe2\xb4\x8e\xef\xbc\x8e\xe2\x80\x8c\xe2\x92\x88\xe2\x92\x88\xf0\x90\xab\x92"); } // [B1, C1, V7]13394test { try toUnicodeFail("\xec\xa5\xa5\xf3\x94\x8f\x89\xe2\xb4\x8e\xef\xbc\x8e\xe2\x80\x8c\xe2\x92\x88\xe2\x92\x88\xf0\x90\xab\x92"); } // [B1, C1, V7]
13395test { try toAsciiFail("\xec\xa5\xa5\xf3\x94\x8f\x89\xe2\xb4\x8e\xef\xbc\x8e\xe2\x80\x8c\xe2\x92\x88\xe2\x92\x88\xf0\x90\xab\x92", false); } // [B1, C1, V7]
13396test { try toAsciiFail("\xec\xa5\xa5\xf3\x94\x8f\x89\xe2\xb4\x8e\xef\xbc\x8e\xe2\x80\x8c\xe2\x92\x88\xe2\x92\x88\xf0\x90\xab\x92", true); } // [B1, V7]
5493test { try toUnicodeFail("xn--5kj3511ccyw3h.xn--tsha6797o"); } // [B1, V7]13397test { try toUnicodeFail("xn--5kj3511ccyw3h.xn--tsha6797o"); } // [B1, V7]
13398test { try toAsciiFail("xn--5kj3511ccyw3h.xn--tsha6797o", false); } // [B1, V7]
13399test { try toAsciiFail("xn--5kj3511ccyw3h.xn--tsha6797o", true); } // [B1, V7]
5494test { try toUnicodeFail("xn--5kj3511ccyw3h.xn--0ug88oa0396u"); } // [B1, C1, V7]13400test { try toUnicodeFail("xn--5kj3511ccyw3h.xn--0ug88oa0396u"); } // [B1, C1, V7]
13401test { try toAsciiFail("xn--5kj3511ccyw3h.xn--0ug88oa0396u", false); } // [B1, C1, V7]
13402test { try toAsciiFail("xn--5kj3511ccyw3h.xn--0ug88oa0396u", true); } // [B1, C1, V7]
5495test { try toUnicodeFail("xn--mnd7865gcy28g.1.1.xn--7w9c"); } // [B1, V7]13403test { try toUnicodeFail("xn--mnd7865gcy28g.1.1.xn--7w9c"); } // [B1, V7]
13404test { try toAsciiFail("xn--mnd7865gcy28g.1.1.xn--7w9c", false); } // [B1, V7]
13405test { try toAsciiFail("xn--mnd7865gcy28g.1.1.xn--7w9c", true); } // [B1, V7]
5496test { try toUnicodeFail("xn--mnd7865gcy28g.xn--1-rgn.1.xn--7w9c"); } // [B1, C1, V7]13406test { try toUnicodeFail("xn--mnd7865gcy28g.xn--1-rgn.1.xn--7w9c"); } // [B1, C1, V7]
13407test { try toAsciiFail("xn--mnd7865gcy28g.xn--1-rgn.1.xn--7w9c", false); } // [B1, C1, V7]
13408test { try toAsciiFail("xn--mnd7865gcy28g.xn--1-rgn.1.xn--7w9c", true); } // [B1, C1, V7]
5497test { try toUnicodeFail("xn--mnd7865gcy28g.xn--tsha6797o"); } // [B1, V7]13409test { try toUnicodeFail("xn--mnd7865gcy28g.xn--tsha6797o"); } // [B1, V7]
13410test { try toAsciiFail("xn--mnd7865gcy28g.xn--tsha6797o", false); } // [B1, V7]
13411test { try toAsciiFail("xn--mnd7865gcy28g.xn--tsha6797o", true); } // [B1, V7]
5498test { try toUnicodeFail("xn--mnd7865gcy28g.xn--0ug88oa0396u"); } // [B1, C1, V7]13412test { try toUnicodeFail("xn--mnd7865gcy28g.xn--0ug88oa0396u"); } // [B1, C1, V7]
13413test { try toAsciiFail("xn--mnd7865gcy28g.xn--0ug88oa0396u", false); } // [B1, C1, V7]
13414test { try toAsciiFail("xn--mnd7865gcy28g.xn--0ug88oa0396u", true); } // [B1, C1, V7]
5499test { try toUnicodeFail("\xe0\xa0\xa7\xf0\x9d\x9f\xb6\xda\xa0-\xe3\x80\x82\xf0\x91\x84\xb3"); } // [B1, V3, V6]13415test { try toUnicodeFail("\xe0\xa0\xa7\xf0\x9d\x9f\xb6\xda\xa0-\xe3\x80\x82\xf0\x91\x84\xb3"); } // [B1, V3, V6]
13416test { try toAsciiFail("\xe0\xa0\xa7\xf0\x9d\x9f\xb6\xda\xa0-\xe3\x80\x82\xf0\x91\x84\xb3", false); } // [B1, V3, V6]
13417test { try toAsciiFail("\xe0\xa0\xa7\xf0\x9d\x9f\xb6\xda\xa0-\xe3\x80\x82\xf0\x91\x84\xb3", true); } // [B1, V3, V6]
5500test { try toUnicodeFail("\xe0\xa0\xa70\xda\xa0-\xe3\x80\x82\xf0\x91\x84\xb3"); } // [B1, V3, V6]13418test { try toUnicodeFail("\xe0\xa0\xa70\xda\xa0-\xe3\x80\x82\xf0\x91\x84\xb3"); } // [B1, V3, V6]
13419test { try toAsciiFail("\xe0\xa0\xa70\xda\xa0-\xe3\x80\x82\xf0\x91\x84\xb3", false); } // [B1, V3, V6]
13420test { try toAsciiFail("\xe0\xa0\xa70\xda\xa0-\xe3\x80\x82\xf0\x91\x84\xb3", true); } // [B1, V3, V6]
5501test { try toUnicodeFail("xn--0--p3d67m.xn--v80d"); } // [B1, V3, V6]13421test { try toUnicodeFail("xn--0--p3d67m.xn--v80d"); } // [B1, V3, V6]
13422test { try toAsciiFail("xn--0--p3d67m.xn--v80d", false); } // [B1, V3, V6]
13423test { try toAsciiFail("xn--0--p3d67m.xn--v80d", true); } // [B1, V3, V6]
5502test { try toUnicodeFail("\xcf\x82\xef\xbc\x8e\xef\xb7\x81\xf0\x9f\x9e\x9b\xe2\x92\x88"); } // [V7]13424test { try toUnicodeFail("\xcf\x82\xef\xbc\x8e\xef\xb7\x81\xf0\x9f\x9e\x9b\xe2\x92\x88"); } // [V7]
13425test { try toAsciiFail("\xcf\x82\xef\xbc\x8e\xef\xb7\x81\xf0\x9f\x9e\x9b\xe2\x92\x88", false); } // [V7]
13426test { try toAsciiFail("\xcf\x82\xef\xbc\x8e\xef\xb7\x81\xf0\x9f\x9e\x9b\xe2\x92\x88", true); } // [V7]
5503test { try toUnicodePass("\xcf\x82.\xd9\x81\xd9\x85\xd9\x8a\xf0\x9f\x9e\x9b1.", "\xcf\x82.\xd9\x81\xd9\x85\xd9\x8a\xf0\x9f\x9e\x9b1."); }13427test { try toUnicodePass("\xcf\x82.\xd9\x81\xd9\x85\xd9\x8a\xf0\x9f\x9e\x9b1.", "\xcf\x82.\xd9\x81\xd9\x85\xd9\x8a\xf0\x9f\x9e\x9b1."); }
13428test { try toAsciiFail("\xcf\x82.\xd9\x81\xd9\x85\xd9\x8a\xf0\x9f\x9e\x9b1.", false); } // [A4_2]
13429test { try toAsciiFail("\xcf\x82.\xd9\x81\xd9\x85\xd9\x8a\xf0\x9f\x9e\x9b1.", true); } // [A4_2]
5504test { try toUnicodePass("\xce\xa3.\xd9\x81\xd9\x85\xd9\x8a\xf0\x9f\x9e\x9b1.", "\xcf\x83.\xd9\x81\xd9\x85\xd9\x8a\xf0\x9f\x9e\x9b1."); }13430test { try toUnicodePass("\xce\xa3.\xd9\x81\xd9\x85\xd9\x8a\xf0\x9f\x9e\x9b1.", "\xcf\x83.\xd9\x81\xd9\x85\xd9\x8a\xf0\x9f\x9e\x9b1."); }
13431test { try toAsciiFail("\xce\xa3.\xd9\x81\xd9\x85\xd9\x8a\xf0\x9f\x9e\x9b1.", false); } // [A4_2]
13432test { try toAsciiFail("\xce\xa3.\xd9\x81\xd9\x85\xd9\x8a\xf0\x9f\x9e\x9b1.", true); } // [A4_2]
5505test { try toUnicodePass("\xcf\x83.\xd9\x81\xd9\x85\xd9\x8a\xf0\x9f\x9e\x9b1.", "\xcf\x83.\xd9\x81\xd9\x85\xd9\x8a\xf0\x9f\x9e\x9b1."); }13433test { try toUnicodePass("\xcf\x83.\xd9\x81\xd9\x85\xd9\x8a\xf0\x9f\x9e\x9b1.", "\xcf\x83.\xd9\x81\xd9\x85\xd9\x8a\xf0\x9f\x9e\x9b1."); }
13434test { try toAsciiFail("\xcf\x83.\xd9\x81\xd9\x85\xd9\x8a\xf0\x9f\x9e\x9b1.", false); } // [A4_2]
13435test { try toAsciiFail("\xcf\x83.\xd9\x81\xd9\x85\xd9\x8a\xf0\x9f\x9e\x9b1.", true); } // [A4_2]
5506test { try toUnicodePass("xn--4xa.xn--1-gocmu97674d.", "\xcf\x83.\xd9\x81\xd9\x85\xd9\x8a\xf0\x9f\x9e\x9b1."); }13436test { try toUnicodePass("xn--4xa.xn--1-gocmu97674d.", "\xcf\x83.\xd9\x81\xd9\x85\xd9\x8a\xf0\x9f\x9e\x9b1."); }
13437test { try toAsciiFail("xn--4xa.xn--1-gocmu97674d.", false); } // [A4_2]
13438test { try toAsciiFail("xn--4xa.xn--1-gocmu97674d.", true); } // [A4_2]
5507test { try toUnicodePass("xn--3xa.xn--1-gocmu97674d.", "\xcf\x82.\xd9\x81\xd9\x85\xd9\x8a\xf0\x9f\x9e\x9b1."); }13439test { try toUnicodePass("xn--3xa.xn--1-gocmu97674d.", "\xcf\x82.\xd9\x81\xd9\x85\xd9\x8a\xf0\x9f\x9e\x9b1."); }
13440test { try toAsciiFail("xn--3xa.xn--1-gocmu97674d.", false); } // [A4_2]
13441test { try toAsciiFail("xn--3xa.xn--1-gocmu97674d.", true); } // [A4_2]
5508test { try toUnicodeFail("\xce\xa3\xef\xbc\x8e\xef\xb7\x81\xf0\x9f\x9e\x9b\xe2\x92\x88"); } // [V7]13442test { try toUnicodeFail("\xce\xa3\xef\xbc\x8e\xef\xb7\x81\xf0\x9f\x9e\x9b\xe2\x92\x88"); } // [V7]
13443test { try toAsciiFail("\xce\xa3\xef\xbc\x8e\xef\xb7\x81\xf0\x9f\x9e\x9b\xe2\x92\x88", false); } // [V7]
13444test { try toAsciiFail("\xce\xa3\xef\xbc\x8e\xef\xb7\x81\xf0\x9f\x9e\x9b\xe2\x92\x88", true); } // [V7]
5509test { try toUnicodeFail("\xcf\x83\xef\xbc\x8e\xef\xb7\x81\xf0\x9f\x9e\x9b\xe2\x92\x88"); } // [V7]13445test { try toUnicodeFail("\xcf\x83\xef\xbc\x8e\xef\xb7\x81\xf0\x9f\x9e\x9b\xe2\x92\x88"); } // [V7]
13446test { try toAsciiFail("\xcf\x83\xef\xbc\x8e\xef\xb7\x81\xf0\x9f\x9e\x9b\xe2\x92\x88", false); } // [V7]
13447test { try toAsciiFail("\xcf\x83\xef\xbc\x8e\xef\xb7\x81\xf0\x9f\x9e\x9b\xe2\x92\x88", true); } // [V7]
5510test { try toUnicodeFail("xn--4xa.xn--dhbip2802atb20c"); } // [V7]13448test { try toUnicodeFail("xn--4xa.xn--dhbip2802atb20c"); } // [V7]
13449test { try toAsciiFail("xn--4xa.xn--dhbip2802atb20c", false); } // [V7]
13450test { try toAsciiFail("xn--4xa.xn--dhbip2802atb20c", true); } // [V7]
5511test { try toUnicodeFail("xn--3xa.xn--dhbip2802atb20c"); } // [V7]13451test { try toUnicodeFail("xn--3xa.xn--dhbip2802atb20c"); } // [V7]
13452test { try toAsciiFail("xn--3xa.xn--dhbip2802atb20c", false); } // [V7]
13453test { try toAsciiFail("xn--3xa.xn--dhbip2802atb20c", true); } // [V7]
5512test { try toUnicodeFail("\xf0\x9f\x97\xa9-\xef\xbd\xa1\xf0\x90\xb9\xbb\xf3\x90\x9e\x86\xf1\xa5\x89\xae"); } // [B1, V3, V7]13454test { try toUnicodeFail("\xf0\x9f\x97\xa9-\xef\xbd\xa1\xf0\x90\xb9\xbb\xf3\x90\x9e\x86\xf1\xa5\x89\xae"); } // [B1, V3, V7]
13455test { try toAsciiFail("\xf0\x9f\x97\xa9-\xef\xbd\xa1\xf0\x90\xb9\xbb\xf3\x90\x9e\x86\xf1\xa5\x89\xae", false); } // [B1, V3, V7]
13456test { try toAsciiFail("\xf0\x9f\x97\xa9-\xef\xbd\xa1\xf0\x90\xb9\xbb\xf3\x90\x9e\x86\xf1\xa5\x89\xae", true); } // [B1, V3, V7]
5513test { try toUnicodeFail("\xf0\x9f\x97\xa9-\xe3\x80\x82\xf0\x90\xb9\xbb\xf3\x90\x9e\x86\xf1\xa5\x89\xae"); } // [B1, V3, V7]13457test { try toUnicodeFail("\xf0\x9f\x97\xa9-\xe3\x80\x82\xf0\x90\xb9\xbb\xf3\x90\x9e\x86\xf1\xa5\x89\xae"); } // [B1, V3, V7]
13458test { try toAsciiFail("\xf0\x9f\x97\xa9-\xe3\x80\x82\xf0\x90\xb9\xbb\xf3\x90\x9e\x86\xf1\xa5\x89\xae", false); } // [B1, V3, V7]
13459test { try toAsciiFail("\xf0\x9f\x97\xa9-\xe3\x80\x82\xf0\x90\xb9\xbb\xf3\x90\x9e\x86\xf1\xa5\x89\xae", true); } // [B1, V3, V7]
5514test { try toUnicodeFail("xn----6t3s.xn--zo0d4811u6ru6a"); } // [B1, V3, V7]13460test { try toUnicodeFail("xn----6t3s.xn--zo0d4811u6ru6a"); } // [B1, V3, V7]
13461test { try toAsciiFail("xn----6t3s.xn--zo0d4811u6ru6a", false); } // [B1, V3, V7]
13462test { try toAsciiFail("xn----6t3s.xn--zo0d4811u6ru6a", true); } // [B1, V3, V7]
5515test { try toUnicodeFail("\xf0\x90\xa1\x9c-\xf0\x9f\x94\xaa\xef\xbd\xa1\xf0\x9d\x9f\xbb\xe2\x80\x8c\xf0\x90\xbf\x80"); } // [B1, B3, C1]13463test { try toUnicodeFail("\xf0\x90\xa1\x9c-\xf0\x9f\x94\xaa\xef\xbd\xa1\xf0\x9d\x9f\xbb\xe2\x80\x8c\xf0\x90\xbf\x80"); } // [B1, B3, C1]
13464test { try toAsciiFail("\xf0\x90\xa1\x9c-\xf0\x9f\x94\xaa\xef\xbd\xa1\xf0\x9d\x9f\xbb\xe2\x80\x8c\xf0\x90\xbf\x80", false); } // [B1, B3, C1]
13465test { try toAsciiFail("\xf0\x90\xa1\x9c-\xf0\x9f\x94\xaa\xef\xbd\xa1\xf0\x9d\x9f\xbb\xe2\x80\x8c\xf0\x90\xbf\x80", true); } // [B1, B3]
5516test { try toUnicodeFail("\xf0\x90\xa1\x9c-\xf0\x9f\x94\xaa\xe3\x80\x825\xe2\x80\x8c\xf0\x90\xbf\x80"); } // [B1, B3, C1]13466test { try toUnicodeFail("\xf0\x90\xa1\x9c-\xf0\x9f\x94\xaa\xe3\x80\x825\xe2\x80\x8c\xf0\x90\xbf\x80"); } // [B1, B3, C1]
13467test { try toAsciiFail("\xf0\x90\xa1\x9c-\xf0\x9f\x94\xaa\xe3\x80\x825\xe2\x80\x8c\xf0\x90\xbf\x80", false); } // [B1, B3, C1]
13468test { try toAsciiFail("\xf0\x90\xa1\x9c-\xf0\x9f\x94\xaa\xe3\x80\x825\xe2\x80\x8c\xf0\x90\xbf\x80", true); } // [B1, B3]
5517test { try toUnicodeFail("xn----5j4iv089c.xn--5-bn7i"); } // [B1, B3]13469test { try toUnicodeFail("xn----5j4iv089c.xn--5-bn7i"); } // [B1, B3]
13470test { try toAsciiFail("xn----5j4iv089c.xn--5-bn7i", false); } // [B1, B3]
13471test { try toAsciiFail("xn----5j4iv089c.xn--5-bn7i", true); } // [B1, B3]
5518test { try toUnicodeFail("xn----5j4iv089c.xn--5-sgn7149h"); } // [B1, B3, C1]13472test { try toUnicodeFail("xn----5j4iv089c.xn--5-sgn7149h"); } // [B1, B3, C1]
13473test { try toAsciiFail("xn----5j4iv089c.xn--5-sgn7149h", false); } // [B1, B3, C1]
13474test { try toAsciiFail("xn----5j4iv089c.xn--5-sgn7149h", true); } // [B1, B3, C1]
5519test { try toUnicodeFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8d\xc3\x9f\xef\xbc\x8e\xdf\x8f0\xd6\xbc"); } // [B1, C2]13475test { try toUnicodeFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8d\xc3\x9f\xef\xbc\x8e\xdf\x8f0\xd6\xbc"); } // [B1, C2]
13476test { try toAsciiFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8d\xc3\x9f\xef\xbc\x8e\xdf\x8f0\xd6\xbc", false); } // [B1, C2]
13477test { try toAsciiFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8d\xc3\x9f\xef\xbc\x8e\xdf\x8f0\xd6\xbc", true); } // [B1]
5520test { try toUnicodeFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8d\xc3\x9f\xef\xbc\x8e\xdf\x8f0\xd6\xbc"); } // [B1, C2]13478test { try toUnicodeFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8d\xc3\x9f\xef\xbc\x8e\xdf\x8f0\xd6\xbc"); } // [B1, C2]
13479test { try toAsciiFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8d\xc3\x9f\xef\xbc\x8e\xdf\x8f0\xd6\xbc", false); } // [B1, C2]
13480test { try toAsciiFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8d\xc3\x9f\xef\xbc\x8e\xdf\x8f0\xd6\xbc", true); } // [B1]
5521test { try toUnicodeFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8d\xc3\x9f.\xdf\x8f0\xd6\xbc"); } // [B1, C2]13481test { try toUnicodeFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8d\xc3\x9f.\xdf\x8f0\xd6\xbc"); } // [B1, C2]
13482test { try toAsciiFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8d\xc3\x9f.\xdf\x8f0\xd6\xbc", false); } // [B1, C2]
13483test { try toAsciiFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8d\xc3\x9f.\xdf\x8f0\xd6\xbc", true); } // [B1]
5522test { try toUnicodeFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8d\xc3\x9f.\xdf\x8f0\xd6\xbc"); } // [B1, C2]13484test { try toUnicodeFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8d\xc3\x9f.\xdf\x8f0\xd6\xbc"); } // [B1, C2]
13485test { try toAsciiFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8d\xc3\x9f.\xdf\x8f0\xd6\xbc", false); } // [B1, C2]
13486test { try toAsciiFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8d\xc3\x9f.\xdf\x8f0\xd6\xbc", true); } // [B1]
5523test { try toUnicodeFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dSS.\xdf\x8f0\xd6\xbc"); } // [B1, C2]13487test { try toUnicodeFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dSS.\xdf\x8f0\xd6\xbc"); } // [B1, C2]
13488test { try toAsciiFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dSS.\xdf\x8f0\xd6\xbc", false); } // [B1, C2]
13489test { try toAsciiFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dSS.\xdf\x8f0\xd6\xbc", true); } // [B1]
5524test { try toUnicodeFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dSS.\xdf\x8f0\xd6\xbc"); } // [B1, C2]13490test { try toUnicodeFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dSS.\xdf\x8f0\xd6\xbc"); } // [B1, C2]
13491test { try toAsciiFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dSS.\xdf\x8f0\xd6\xbc", false); } // [B1, C2]
13492test { try toAsciiFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dSS.\xdf\x8f0\xd6\xbc", true); } // [B1]
5525test { try toUnicodeFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dss.\xdf\x8f0\xd6\xbc"); } // [B1, C2]13493test { try toUnicodeFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dss.\xdf\x8f0\xd6\xbc"); } // [B1, C2]
13494test { try toAsciiFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dss.\xdf\x8f0\xd6\xbc", false); } // [B1, C2]
13495test { try toAsciiFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dss.\xdf\x8f0\xd6\xbc", true); } // [B1]
5526test { try toUnicodeFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dss.\xdf\x8f0\xd6\xbc"); } // [B1, C2]13496test { try toUnicodeFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dss.\xdf\x8f0\xd6\xbc"); } // [B1, C2]
13497test { try toAsciiFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dss.\xdf\x8f0\xd6\xbc", false); } // [B1, C2]
13498test { try toAsciiFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dss.\xdf\x8f0\xd6\xbc", true); } // [B1]
5527test { try toUnicodeFail("xn--ss-i05i7041a.xn--0-vgc50n"); } // [B1]13499test { try toUnicodeFail("xn--ss-i05i7041a.xn--0-vgc50n"); } // [B1]
13500test { try toAsciiFail("xn--ss-i05i7041a.xn--0-vgc50n", false); } // [B1]
13501test { try toAsciiFail("xn--ss-i05i7041a.xn--0-vgc50n", true); } // [B1]
5528test { try toUnicodeFail("xn--ss-l1tu910fo0xd.xn--0-vgc50n"); } // [B1, C2]13502test { try toUnicodeFail("xn--ss-l1tu910fo0xd.xn--0-vgc50n"); } // [B1, C2]
13503test { try toAsciiFail("xn--ss-l1tu910fo0xd.xn--0-vgc50n", false); } // [B1, C2]
13504test { try toAsciiFail("xn--ss-l1tu910fo0xd.xn--0-vgc50n", true); } // [B1, C2]
5529test { try toUnicodeFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dSs.\xdf\x8f0\xd6\xbc"); } // [B1, C2]13505test { try toUnicodeFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dSs.\xdf\x8f0\xd6\xbc"); } // [B1, C2]
13506test { try toAsciiFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dSs.\xdf\x8f0\xd6\xbc", false); } // [B1, C2]
13507test { try toAsciiFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dSs.\xdf\x8f0\xd6\xbc", true); } // [B1]
5530test { try toUnicodeFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dSs.\xdf\x8f0\xd6\xbc"); } // [B1, C2]13508test { try toUnicodeFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dSs.\xdf\x8f0\xd6\xbc"); } // [B1, C2]
13509test { try toAsciiFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dSs.\xdf\x8f0\xd6\xbc", false); } // [B1, C2]
13510test { try toAsciiFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dSs.\xdf\x8f0\xd6\xbc", true); } // [B1]
5531test { try toUnicodeFail("xn--zca770n5s4hev6c.xn--0-vgc50n"); } // [B1, C2]13511test { try toUnicodeFail("xn--zca770n5s4hev6c.xn--0-vgc50n"); } // [B1, C2]
13512test { try toAsciiFail("xn--zca770n5s4hev6c.xn--0-vgc50n", false); } // [B1, C2]
13513test { try toAsciiFail("xn--zca770n5s4hev6c.xn--0-vgc50n", true); } // [B1, C2]
5532test { try toUnicodeFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dSS\xef\xbc\x8e\xdf\x8f0\xd6\xbc"); } // [B1, C2]13514test { try toUnicodeFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dSS\xef\xbc\x8e\xdf\x8f0\xd6\xbc"); } // [B1, C2]
13515test { try toAsciiFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dSS\xef\xbc\x8e\xdf\x8f0\xd6\xbc", false); } // [B1, C2]
13516test { try toAsciiFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dSS\xef\xbc\x8e\xdf\x8f0\xd6\xbc", true); } // [B1]
5533test { try toUnicodeFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dSS\xef\xbc\x8e\xdf\x8f0\xd6\xbc"); } // [B1, C2]13517test { try toUnicodeFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dSS\xef\xbc\x8e\xdf\x8f0\xd6\xbc"); } // [B1, C2]
13518test { try toAsciiFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dSS\xef\xbc\x8e\xdf\x8f0\xd6\xbc", false); } // [B1, C2]
13519test { try toAsciiFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dSS\xef\xbc\x8e\xdf\x8f0\xd6\xbc", true); } // [B1]
5534test { try toUnicodeFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dss\xef\xbc\x8e\xdf\x8f0\xd6\xbc"); } // [B1, C2]13520test { try toUnicodeFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dss\xef\xbc\x8e\xdf\x8f0\xd6\xbc"); } // [B1, C2]
13521test { try toAsciiFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dss\xef\xbc\x8e\xdf\x8f0\xd6\xbc", false); } // [B1, C2]
13522test { try toAsciiFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dss\xef\xbc\x8e\xdf\x8f0\xd6\xbc", true); } // [B1]
5535test { try toUnicodeFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dss\xef\xbc\x8e\xdf\x8f0\xd6\xbc"); } // [B1, C2]13523test { try toUnicodeFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dss\xef\xbc\x8e\xdf\x8f0\xd6\xbc"); } // [B1, C2]
13524test { try toAsciiFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dss\xef\xbc\x8e\xdf\x8f0\xd6\xbc", false); } // [B1, C2]
13525test { try toAsciiFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dss\xef\xbc\x8e\xdf\x8f0\xd6\xbc", true); } // [B1]
5536test { try toUnicodeFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dSs\xef\xbc\x8e\xdf\x8f0\xd6\xbc"); } // [B1, C2]13526test { try toUnicodeFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dSs\xef\xbc\x8e\xdf\x8f0\xd6\xbc"); } // [B1, C2]
13527test { try toAsciiFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dSs\xef\xbc\x8e\xdf\x8f0\xd6\xbc", false); } // [B1, C2]
13528test { try toAsciiFail("\xf0\x90\xb9\xa3\xeb\x8a\xbf\xe2\x80\x8dSs\xef\xbc\x8e\xdf\x8f0\xd6\xbc", true); } // [B1]
5537test { try toUnicodeFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dSs\xef\xbc\x8e\xdf\x8f0\xd6\xbc"); } // [B1, C2]13529test { try toUnicodeFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dSs\xef\xbc\x8e\xdf\x8f0\xd6\xbc"); } // [B1, C2]
13530test { try toAsciiFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dSs\xef\xbc\x8e\xdf\x8f0\xd6\xbc", false); } // [B1, C2]
13531test { try toAsciiFail("\xf0\x90\xb9\xa3\xe1\x84\x82\xe1\x85\xb4\xe1\x86\xba\xe2\x80\x8dSs\xef\xbc\x8e\xdf\x8f0\xd6\xbc", true); } // [B1]
5538test { try toUnicodeFail("9\xf3\xa0\x87\xa5\xef\xbc\x8e\xf3\xaa\xb4\xb4\xe1\xa2\x93"); } // [V7]13532test { try toUnicodeFail("9\xf3\xa0\x87\xa5\xef\xbc\x8e\xf3\xaa\xb4\xb4\xe1\xa2\x93"); } // [V7]
13533test { try toAsciiFail("9\xf3\xa0\x87\xa5\xef\xbc\x8e\xf3\xaa\xb4\xb4\xe1\xa2\x93", false); } // [V7]
13534test { try toAsciiFail("9\xf3\xa0\x87\xa5\xef\xbc\x8e\xf3\xaa\xb4\xb4\xe1\xa2\x93", true); } // [V7]
5539test { try toUnicodeFail("9\xf3\xa0\x87\xa5.\xf3\xaa\xb4\xb4\xe1\xa2\x93"); } // [V7]13535test { try toUnicodeFail("9\xf3\xa0\x87\xa5.\xf3\xaa\xb4\xb4\xe1\xa2\x93"); } // [V7]
13536test { try toAsciiFail("9\xf3\xa0\x87\xa5.\xf3\xaa\xb4\xb4\xe1\xa2\x93", false); } // [V7]
13537test { try toAsciiFail("9\xf3\xa0\x87\xa5.\xf3\xaa\xb4\xb4\xe1\xa2\x93", true); } // [V7]
5540test { try toUnicodeFail("9.xn--dbf91222q"); } // [V7]13538test { try toUnicodeFail("9.xn--dbf91222q"); } // [V7]
13539test { try toAsciiFail("9.xn--dbf91222q", false); } // [V7]
13540test { try toAsciiFail("9.xn--dbf91222q", true); } // [V7]
5541test { try toUnicodeFail("\xe2\x80\x8c\xef\xbe\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97\xc3\x9f\xe2\xbd\x9f"); } // [B1, B2, B3, C1]13541test { try toUnicodeFail("\xe2\x80\x8c\xef\xbe\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97\xc3\x9f\xe2\xbd\x9f"); } // [B1, B2, B3, C1]
13542test { try toAsciiFail("\xe2\x80\x8c\xef\xbe\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97\xc3\x9f\xe2\xbd\x9f", false); } // [B1, B2, B3, C1]
13543test { try toAsciiFail("\xe2\x80\x8c\xef\xbe\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97\xc3\x9f\xe2\xbd\x9f", true); } // [B2, B3, A4_2]
5542test { try toUnicodeFail("\xe2\x80\x8c\xe1\x85\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97\xc3\x9f\xe7\x8e\x89"); } // [B1, B2, B3, C1]13544test { try toUnicodeFail("\xe2\x80\x8c\xe1\x85\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97\xc3\x9f\xe7\x8e\x89"); } // [B1, B2, B3, C1]
13545test { try toAsciiFail("\xe2\x80\x8c\xe1\x85\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97\xc3\x9f\xe7\x8e\x89", false); } // [B1, B2, B3, C1]
13546test { try toAsciiFail("\xe2\x80\x8c\xe1\x85\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97\xc3\x9f\xe7\x8e\x89", true); } // [B2, B3, A4_2]
5543test { try toUnicodeFail("\xe2\x80\x8c\xe1\x85\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97SS\xe7\x8e\x89"); } // [B1, B2, B3, C1]13547test { try toUnicodeFail("\xe2\x80\x8c\xe1\x85\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97SS\xe7\x8e\x89"); } // [B1, B2, B3, C1]
13548test { try toAsciiFail("\xe2\x80\x8c\xe1\x85\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97SS\xe7\x8e\x89", false); } // [B1, B2, B3, C1]
13549test { try toAsciiFail("\xe2\x80\x8c\xe1\x85\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97SS\xe7\x8e\x89", true); } // [B2, B3, A4_2]
5544test { try toUnicodeFail("\xe2\x80\x8c\xe1\x85\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97ss\xe7\x8e\x89"); } // [B1, B2, B3, C1]13550test { try toUnicodeFail("\xe2\x80\x8c\xe1\x85\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97ss\xe7\x8e\x89"); } // [B1, B2, B3, C1]
13551test { try toAsciiFail("\xe2\x80\x8c\xe1\x85\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97ss\xe7\x8e\x89", false); } // [B1, B2, B3, C1]
13552test { try toAsciiFail("\xe2\x80\x8c\xe1\x85\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97ss\xe7\x8e\x89", true); } // [B2, B3, A4_2]
5545test { try toUnicodeFail("\xe2\x80\x8c\xe1\x85\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97Ss\xe7\x8e\x89"); } // [B1, B2, B3, C1]13553test { try toUnicodeFail("\xe2\x80\x8c\xe1\x85\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97Ss\xe7\x8e\x89"); } // [B1, B2, B3, C1]
13554test { try toAsciiFail("\xe2\x80\x8c\xe1\x85\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97Ss\xe7\x8e\x89", false); } // [B1, B2, B3, C1]
13555test { try toAsciiFail("\xe2\x80\x8c\xe1\x85\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97Ss\xe7\x8e\x89", true); } // [B2, B3, A4_2]
5546test { try toUnicodeFail(".xn--ss-je6eq954cp25j"); } // [B2, B3, X4_2]13556test { try toUnicodeFail(".xn--ss-je6eq954cp25j"); } // [B2, B3, X4_2]
13557test { try toAsciiFail(".xn--ss-je6eq954cp25j", false); } // [B2, B3, A4_2]
13558test { try toAsciiFail(".xn--ss-je6eq954cp25j", true); } // [B2, B3, A4_2]
5547test { try toUnicodeFail("xn--0ug.xn--ss-je6eq954cp25j"); } // [B1, B2, B3, C1]13559test { try toUnicodeFail("xn--0ug.xn--ss-je6eq954cp25j"); } // [B1, B2, B3, C1]
13560test { try toAsciiFail("xn--0ug.xn--ss-je6eq954cp25j", false); } // [B1, B2, B3, C1]
13561test { try toAsciiFail("xn--0ug.xn--ss-je6eq954cp25j", true); } // [B1, B2, B3, C1]
5548test { try toUnicodeFail("xn--0ug.xn--zca2289c550e0iwi"); } // [B1, B2, B3, C1]13562test { try toUnicodeFail("xn--0ug.xn--zca2289c550e0iwi"); } // [B1, B2, B3, C1]
13563test { try toAsciiFail("xn--0ug.xn--zca2289c550e0iwi", false); } // [B1, B2, B3, C1]
13564test { try toAsciiFail("xn--0ug.xn--zca2289c550e0iwi", true); } // [B1, B2, B3, C1]
5549test { try toUnicodeFail("\xe2\x80\x8c\xef\xbe\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97SS\xe2\xbd\x9f"); } // [B1, B2, B3, C1]13565test { try toUnicodeFail("\xe2\x80\x8c\xef\xbe\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97SS\xe2\xbd\x9f"); } // [B1, B2, B3, C1]
13566test { try toAsciiFail("\xe2\x80\x8c\xef\xbe\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97SS\xe2\xbd\x9f", false); } // [B1, B2, B3, C1]
13567test { try toAsciiFail("\xe2\x80\x8c\xef\xbe\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97SS\xe2\xbd\x9f", true); } // [B2, B3, A4_2]
5550test { try toUnicodeFail("\xe2\x80\x8c\xef\xbe\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97ss\xe2\xbd\x9f"); } // [B1, B2, B3, C1]13568test { try toUnicodeFail("\xe2\x80\x8c\xef\xbe\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97ss\xe2\xbd\x9f"); } // [B1, B2, B3, C1]
13569test { try toAsciiFail("\xe2\x80\x8c\xef\xbe\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97ss\xe2\xbd\x9f", false); } // [B1, B2, B3, C1]
13570test { try toAsciiFail("\xe2\x80\x8c\xef\xbe\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97ss\xe2\xbd\x9f", true); } // [B2, B3, A4_2]
5551test { try toUnicodeFail("\xe2\x80\x8c\xef\xbe\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97Ss\xe2\xbd\x9f"); } // [B1, B2, B3, C1]13571test { try toUnicodeFail("\xe2\x80\x8c\xef\xbe\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97Ss\xe2\xbd\x9f"); } // [B1, B2, B3, C1]
13572test { try toAsciiFail("\xe2\x80\x8c\xef\xbe\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97Ss\xe2\xbd\x9f", false); } // [B1, B2, B3, C1]
13573test { try toAsciiFail("\xe2\x80\x8c\xef\xbe\xa0.\xf0\x90\xab\xad\xf0\x9f\xa0\x97Ss\xe2\xbd\x9f", true); } // [B2, B3, A4_2]
5552test { try toUnicodeFail("xn--psd.xn--ss-je6eq954cp25j"); } // [B2, B3, V7]13574test { try toUnicodeFail("xn--psd.xn--ss-je6eq954cp25j"); } // [B2, B3, V7]
13575test { try toAsciiFail("xn--psd.xn--ss-je6eq954cp25j", false); } // [B2, B3, V7]
13576test { try toAsciiFail("xn--psd.xn--ss-je6eq954cp25j", true); } // [B2, B3, V7]
5553test { try toUnicodeFail("xn--psd526e.xn--ss-je6eq954cp25j"); } // [B1, B2, B3, C1, V7]13577test { try toUnicodeFail("xn--psd526e.xn--ss-je6eq954cp25j"); } // [B1, B2, B3, C1, V7]
13578test { try toAsciiFail("xn--psd526e.xn--ss-je6eq954cp25j", false); } // [B1, B2, B3, C1, V7]
13579test { try toAsciiFail("xn--psd526e.xn--ss-je6eq954cp25j", true); } // [B1, B2, B3, C1, V7]
5554test { try toUnicodeFail("xn--psd526e.xn--zca2289c550e0iwi"); } // [B1, B2, B3, C1, V7]13580test { try toUnicodeFail("xn--psd526e.xn--zca2289c550e0iwi"); } // [B1, B2, B3, C1, V7]
13581test { try toAsciiFail("xn--psd526e.xn--zca2289c550e0iwi", false); } // [B1, B2, B3, C1, V7]
13582test { try toAsciiFail("xn--psd526e.xn--zca2289c550e0iwi", true); } // [B1, B2, B3, C1, V7]
5555test { try toUnicodeFail("xn--cl7c.xn--ss-je6eq954cp25j"); } // [B2, B3, V7]13583test { try toUnicodeFail("xn--cl7c.xn--ss-je6eq954cp25j"); } // [B2, B3, V7]
13584test { try toAsciiFail("xn--cl7c.xn--ss-je6eq954cp25j", false); } // [B2, B3, V7]
13585test { try toAsciiFail("xn--cl7c.xn--ss-je6eq954cp25j", true); } // [B2, B3, V7]
5556test { try toUnicodeFail("xn--0ug7719f.xn--ss-je6eq954cp25j"); } // [B1, B2, B3, C1, V7]13586test { try toUnicodeFail("xn--0ug7719f.xn--ss-je6eq954cp25j"); } // [B1, B2, B3, C1, V7]
13587test { try toAsciiFail("xn--0ug7719f.xn--ss-je6eq954cp25j", false); } // [B1, B2, B3, C1, V7]
13588test { try toAsciiFail("xn--0ug7719f.xn--ss-je6eq954cp25j", true); } // [B1, B2, B3, C1, V7]
5557test { try toUnicodeFail("xn--0ug7719f.xn--zca2289c550e0iwi"); } // [B1, B2, B3, C1, V7]13589test { try toUnicodeFail("xn--0ug7719f.xn--zca2289c550e0iwi"); } // [B1, B2, B3, C1, V7]
13590test { try toAsciiFail("xn--0ug7719f.xn--zca2289c550e0iwi", false); } // [B1, B2, B3, C1, V7]
13591test { try toAsciiFail("xn--0ug7719f.xn--zca2289c550e0iwi", true); } // [B1, B2, B3, C1, V7]
5558test { try toUnicodeFail("\xef\xb8\x92\xe1\x82\xb6\xcd\xa6\xef\xbc\x8e\xe2\x80\x8c"); } // [C1, V7]13592test { try toUnicodeFail("\xef\xb8\x92\xe1\x82\xb6\xcd\xa6\xef\xbc\x8e\xe2\x80\x8c"); } // [C1, V7]
13593test { try toAsciiFail("\xef\xb8\x92\xe1\x82\xb6\xcd\xa6\xef\xbc\x8e\xe2\x80\x8c", false); } // [C1, V7]
13594test { try toAsciiFail("\xef\xb8\x92\xe1\x82\xb6\xcd\xa6\xef\xbc\x8e\xe2\x80\x8c", true); } // [V7, A4_2]
5559test { try toUnicodeFail("\xe3\x80\x82\xe1\x82\xb6\xcd\xa6.\xe2\x80\x8c"); } // [C1, X4_2]13595test { try toUnicodeFail("\xe3\x80\x82\xe1\x82\xb6\xcd\xa6.\xe2\x80\x8c"); } // [C1, X4_2]
13596test { try toAsciiFail("\xe3\x80\x82\xe1\x82\xb6\xcd\xa6.\xe2\x80\x8c", false); } // [C1, A4_2]
13597test { try toAsciiFail("\xe3\x80\x82\xe1\x82\xb6\xcd\xa6.\xe2\x80\x8c", true); } // [A4_2]
5560test { try toUnicodeFail("\xe3\x80\x82\xe2\xb4\x96\xcd\xa6.\xe2\x80\x8c"); } // [C1, X4_2]13598test { try toUnicodeFail("\xe3\x80\x82\xe2\xb4\x96\xcd\xa6.\xe2\x80\x8c"); } // [C1, X4_2]
13599test { try toAsciiFail("\xe3\x80\x82\xe2\xb4\x96\xcd\xa6.\xe2\x80\x8c", false); } // [C1, A4_2]
13600test { try toAsciiFail("\xe3\x80\x82\xe2\xb4\x96\xcd\xa6.\xe2\x80\x8c", true); } // [A4_2]
5561test { try toUnicodeFail(".xn--hva754s."); } // [X4_2]13601test { try toUnicodeFail(".xn--hva754s."); } // [X4_2]
13602test { try toAsciiFail(".xn--hva754s.", false); } // [A4_2]
13603test { try toAsciiFail(".xn--hva754s.", true); } // [A4_2]
5562test { try toUnicodeFail(".xn--hva754s.xn--0ug"); } // [C1, X4_2]13604test { try toUnicodeFail(".xn--hva754s.xn--0ug"); } // [C1, X4_2]
13605test { try toAsciiFail(".xn--hva754s.xn--0ug", false); } // [C1, A4_2]
13606test { try toAsciiFail(".xn--hva754s.xn--0ug", true); } // [C1, A4_2]
5563test { try toUnicodeFail("\xef\xb8\x92\xe2\xb4\x96\xcd\xa6\xef\xbc\x8e\xe2\x80\x8c"); } // [C1, V7]13607test { try toUnicodeFail("\xef\xb8\x92\xe2\xb4\x96\xcd\xa6\xef\xbc\x8e\xe2\x80\x8c"); } // [C1, V7]
13608test { try toAsciiFail("\xef\xb8\x92\xe2\xb4\x96\xcd\xa6\xef\xbc\x8e\xe2\x80\x8c", false); } // [C1, V7]
13609test { try toAsciiFail("\xef\xb8\x92\xe2\xb4\x96\xcd\xa6\xef\xbc\x8e\xe2\x80\x8c", true); } // [V7, A4_2]
5564test { try toUnicodeFail("xn--hva754sy94k."); } // [V7]13610test { try toUnicodeFail("xn--hva754sy94k."); } // [V7]
13611test { try toAsciiFail("xn--hva754sy94k.", false); } // [V7, A4_2]
13612test { try toAsciiFail("xn--hva754sy94k.", true); } // [V7, A4_2]
5565test { try toUnicodeFail("xn--hva754sy94k.xn--0ug"); } // [C1, V7]13613test { try toUnicodeFail("xn--hva754sy94k.xn--0ug"); } // [C1, V7]
13614test { try toAsciiFail("xn--hva754sy94k.xn--0ug", false); } // [C1, V7]
13615test { try toAsciiFail("xn--hva754sy94k.xn--0ug", true); } // [C1, V7]
5566test { try toUnicodeFail(".xn--hva929d."); } // [V7, X4_2]13616test { try toUnicodeFail(".xn--hva929d."); } // [V7, X4_2]
13617test { try toAsciiFail(".xn--hva929d.", false); } // [V7, A4_2]
13618test { try toAsciiFail(".xn--hva929d.", true); } // [V7, A4_2]
5567test { try toUnicodeFail(".xn--hva929d.xn--0ug"); } // [C1, V7, X4_2]13619test { try toUnicodeFail(".xn--hva929d.xn--0ug"); } // [C1, V7, X4_2]
13620test { try toAsciiFail(".xn--hva929d.xn--0ug", false); } // [C1, V7, A4_2]
13621test { try toAsciiFail(".xn--hva929d.xn--0ug", true); } // [C1, V7, A4_2]
5568test { try toUnicodeFail("xn--hva929dl29p."); } // [V7]13622test { try toUnicodeFail("xn--hva929dl29p."); } // [V7]
13623test { try toAsciiFail("xn--hva929dl29p.", false); } // [V7, A4_2]
13624test { try toAsciiFail("xn--hva929dl29p.", true); } // [V7, A4_2]
5569test { try toUnicodeFail("xn--hva929dl29p.xn--0ug"); } // [C1, V7]13625test { try toUnicodeFail("xn--hva929dl29p.xn--0ug"); } // [C1, V7]
13626test { try toAsciiFail("xn--hva929dl29p.xn--0ug", false); } // [C1, V7]
13627test { try toAsciiFail("xn--hva929dl29p.xn--0ug", true); } // [C1, V7]
5570test { try toUnicodePass("xn--hva754s.", "\xe2\xb4\x96\xcd\xa6."); }13628test { try toUnicodePass("xn--hva754s.", "\xe2\xb4\x96\xcd\xa6."); }
13629test { try toAsciiFail("xn--hva754s.", false); } // [A4_2]
13630test { try toAsciiFail("xn--hva754s.", true); } // [A4_2]
5571test { try toUnicodePass("\xe2\xb4\x96\xcd\xa6.", "\xe2\xb4\x96\xcd\xa6."); }13631test { try toUnicodePass("\xe2\xb4\x96\xcd\xa6.", "\xe2\xb4\x96\xcd\xa6."); }
13632test { try toAsciiFail("\xe2\xb4\x96\xcd\xa6.", false); } // [A4_2]
13633test { try toAsciiFail("\xe2\xb4\x96\xcd\xa6.", true); } // [A4_2]
5572test { try toUnicodePass("\xe1\x82\xb6\xcd\xa6.", "\xe2\xb4\x96\xcd\xa6."); }13634test { try toUnicodePass("\xe1\x82\xb6\xcd\xa6.", "\xe2\xb4\x96\xcd\xa6."); }
13635test { try toAsciiFail("\xe1\x82\xb6\xcd\xa6.", false); } // [A4_2]
13636test { try toAsciiFail("\xe1\x82\xb6\xcd\xa6.", true); } // [A4_2]
5573test { try toUnicodeFail("xn--hva929d."); } // [V7]13637test { try toUnicodeFail("xn--hva929d."); } // [V7]
13638test { try toAsciiFail("xn--hva929d.", false); } // [V7, A4_2]
13639test { try toAsciiFail("xn--hva929d.", true); } // [V7, A4_2]
5574test { try toAsciiPass("\xe0\xa2\xbb\xef\xbc\x8e\xe2\x80\x8c\xe1\x82\xa3\xf0\x9e\x80\x92", "xn--hzb.xn--ukj4430l", true); }13640test { try toAsciiPass("\xe0\xa2\xbb\xef\xbc\x8e\xe2\x80\x8c\xe1\x82\xa3\xf0\x9e\x80\x92", "xn--hzb.xn--ukj4430l", true); }
5575test { try toUnicodeFail("\xe0\xa2\xbb\xef\xbc\x8e\xe2\x80\x8c\xe1\x82\xa3\xf0\x9e\x80\x92"); } // [B1, C1]13641test { try toUnicodeFail("\xe0\xa2\xbb\xef\xbc\x8e\xe2\x80\x8c\xe1\x82\xa3\xf0\x9e\x80\x92"); } // [B1, C1]
13642test { try toAsciiFail("\xe0\xa2\xbb\xef\xbc\x8e\xe2\x80\x8c\xe1\x82\xa3\xf0\x9e\x80\x92", false); } // [B1, C1]
5576test { try toAsciiPass("\xe0\xa2\xbb.\xe2\x80\x8c\xe1\x82\xa3\xf0\x9e\x80\x92", "xn--hzb.xn--ukj4430l", true); }13643test { try toAsciiPass("\xe0\xa2\xbb.\xe2\x80\x8c\xe1\x82\xa3\xf0\x9e\x80\x92", "xn--hzb.xn--ukj4430l", true); }
5577test { try toUnicodeFail("\xe0\xa2\xbb.\xe2\x80\x8c\xe1\x82\xa3\xf0\x9e\x80\x92"); } // [B1, C1]13644test { try toUnicodeFail("\xe0\xa2\xbb.\xe2\x80\x8c\xe1\x82\xa3\xf0\x9e\x80\x92"); } // [B1, C1]
13645test { try toAsciiFail("\xe0\xa2\xbb.\xe2\x80\x8c\xe1\x82\xa3\xf0\x9e\x80\x92", false); } // [B1, C1]
5578test { try toAsciiPass("\xe0\xa2\xbb.\xe2\x80\x8c\xe2\xb4\x83\xf0\x9e\x80\x92", "xn--hzb.xn--ukj4430l", true); }13646test { try toAsciiPass("\xe0\xa2\xbb.\xe2\x80\x8c\xe2\xb4\x83\xf0\x9e\x80\x92", "xn--hzb.xn--ukj4430l", true); }
5579test { try toUnicodeFail("\xe0\xa2\xbb.\xe2\x80\x8c\xe2\xb4\x83\xf0\x9e\x80\x92"); } // [B1, C1]13647test { try toUnicodeFail("\xe0\xa2\xbb.\xe2\x80\x8c\xe2\xb4\x83\xf0\x9e\x80\x92"); } // [B1, C1]
13648test { try toAsciiFail("\xe0\xa2\xbb.\xe2\x80\x8c\xe2\xb4\x83\xf0\x9e\x80\x92", false); } // [B1, C1]
5580test { try toUnicodePass("xn--hzb.xn--ukj4430l", "\xe0\xa2\xbb.\xe2\xb4\x83\xf0\x9e\x80\x92"); }13649test { try toUnicodePass("xn--hzb.xn--ukj4430l", "\xe0\xa2\xbb.\xe2\xb4\x83\xf0\x9e\x80\x92"); }
5581test { try toAsciiPass("xn--hzb.xn--ukj4430l", "xn--hzb.xn--ukj4430l", false); }13650test { try toAsciiPass("xn--hzb.xn--ukj4430l", "xn--hzb.xn--ukj4430l", false); }
5582test { try toAsciiPass("xn--hzb.xn--ukj4430l", "xn--hzb.xn--ukj4430l", true); }13651test { try toAsciiPass("xn--hzb.xn--ukj4430l", "xn--hzb.xn--ukj4430l", true); }
...@@ -5587,104 +13656,293 @@ test { try toUnicodePass("\xe0\xa2\xbb.\xe1\x82\xa3\xf0\x9e\x80\x92", "\xe0\xa2\...@@ -5587,104 +13656,293 @@ test { try toUnicodePass("\xe0\xa2\xbb.\xe1\x82\xa3\xf0\x9e\x80\x92", "\xe0\xa2\
5587test { try toAsciiPass("\xe0\xa2\xbb.\xe1\x82\xa3\xf0\x9e\x80\x92", "xn--hzb.xn--ukj4430l", false); }13656test { try toAsciiPass("\xe0\xa2\xbb.\xe1\x82\xa3\xf0\x9e\x80\x92", "xn--hzb.xn--ukj4430l", false); }
5588test { try toAsciiPass("\xe0\xa2\xbb.\xe1\x82\xa3\xf0\x9e\x80\x92", "xn--hzb.xn--ukj4430l", true); }13657test { try toAsciiPass("\xe0\xa2\xbb.\xe1\x82\xa3\xf0\x9e\x80\x92", "xn--hzb.xn--ukj4430l", true); }
5589test { try toUnicodeFail("xn--hzb.xn--0ug822cp045a"); } // [B1, C1]13658test { try toUnicodeFail("xn--hzb.xn--0ug822cp045a"); } // [B1, C1]
13659test { try toAsciiFail("xn--hzb.xn--0ug822cp045a", false); } // [B1, C1]
13660test { try toAsciiFail("xn--hzb.xn--0ug822cp045a", true); } // [B1, C1]
5590test { try toAsciiPass("\xe0\xa2\xbb\xef\xbc\x8e\xe2\x80\x8c\xe2\xb4\x83\xf0\x9e\x80\x92", "xn--hzb.xn--ukj4430l", true); }13661test { try toAsciiPass("\xe0\xa2\xbb\xef\xbc\x8e\xe2\x80\x8c\xe2\xb4\x83\xf0\x9e\x80\x92", "xn--hzb.xn--ukj4430l", true); }
5591test { try toUnicodeFail("\xe0\xa2\xbb\xef\xbc\x8e\xe2\x80\x8c\xe2\xb4\x83\xf0\x9e\x80\x92"); } // [B1, C1]13662test { try toUnicodeFail("\xe0\xa2\xbb\xef\xbc\x8e\xe2\x80\x8c\xe2\xb4\x83\xf0\x9e\x80\x92"); } // [B1, C1]
13663test { try toAsciiFail("\xe0\xa2\xbb\xef\xbc\x8e\xe2\x80\x8c\xe2\xb4\x83\xf0\x9e\x80\x92", false); } // [B1, C1]
5592test { try toUnicodeFail("xn--hzb.xn--bnd2938u"); } // [V7]13664test { try toUnicodeFail("xn--hzb.xn--bnd2938u"); } // [V7]
13665test { try toAsciiFail("xn--hzb.xn--bnd2938u", false); } // [V7]
13666test { try toAsciiFail("xn--hzb.xn--bnd2938u", true); } // [V7]
5593test { try toUnicodeFail("xn--hzb.xn--bnd300f7225a"); } // [B1, C1, V7]13667test { try toUnicodeFail("xn--hzb.xn--bnd300f7225a"); } // [B1, C1, V7]
13668test { try toAsciiFail("xn--hzb.xn--bnd300f7225a", false); } // [B1, C1, V7]
13669test { try toAsciiFail("xn--hzb.xn--bnd300f7225a", true); } // [B1, C1, V7]
5594test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xe3\x80\x82\xef\xbc\x92\xe4\xab\xb7\xf3\xa0\xa7\xb7"); } // [C1, C2, V7]13670test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xe3\x80\x82\xef\xbc\x92\xe4\xab\xb7\xf3\xa0\xa7\xb7"); } // [C1, C2, V7]
13671test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xe3\x80\x82\xef\xbc\x92\xe4\xab\xb7\xf3\xa0\xa7\xb7", false); } // [C1, C2, V7]
13672test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xe3\x80\x82\xef\xbc\x92\xe4\xab\xb7\xf3\xa0\xa7\xb7", true); } // [V7, A4_2]
5595test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xe3\x80\x822\xe4\xab\xb7\xf3\xa0\xa7\xb7"); } // [C1, C2, V7]13673test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xe3\x80\x822\xe4\xab\xb7\xf3\xa0\xa7\xb7"); } // [C1, C2, V7]
13674test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xe3\x80\x822\xe4\xab\xb7\xf3\xa0\xa7\xb7", false); } // [C1, C2, V7]
13675test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xe3\x80\x822\xe4\xab\xb7\xf3\xa0\xa7\xb7", true); } // [V7, A4_2]
5596test { try toUnicodeFail(".xn--2-me5ay1273i"); } // [V7, X4_2]13676test { try toUnicodeFail(".xn--2-me5ay1273i"); } // [V7, X4_2]
13677test { try toAsciiFail(".xn--2-me5ay1273i", false); } // [V7, A4_2]
13678test { try toAsciiFail(".xn--2-me5ay1273i", true); } // [V7, A4_2]
5597test { try toUnicodeFail("xn--0ugb.xn--2-me5ay1273i"); } // [C1, C2, V7]13679test { try toUnicodeFail("xn--0ugb.xn--2-me5ay1273i"); } // [C1, C2, V7]
13680test { try toAsciiFail("xn--0ugb.xn--2-me5ay1273i", false); } // [C1, C2, V7]
13681test { try toAsciiFail("xn--0ugb.xn--2-me5ay1273i", true); } // [C1, C2, V7]
5598test { try toUnicodeFail("-\xf0\x9e\x80\xa4\xf3\x9c\xa0\x90\xe3\x80\x82\xf2\x88\xac\x96"); } // [V3, V7]13682test { try toUnicodeFail("-\xf0\x9e\x80\xa4\xf3\x9c\xa0\x90\xe3\x80\x82\xf2\x88\xac\x96"); } // [V3, V7]
13683test { try toAsciiFail("-\xf0\x9e\x80\xa4\xf3\x9c\xa0\x90\xe3\x80\x82\xf2\x88\xac\x96", false); } // [V3, V7]
13684test { try toAsciiFail("-\xf0\x9e\x80\xa4\xf3\x9c\xa0\x90\xe3\x80\x82\xf2\x88\xac\x96", true); } // [V3, V7]
5599test { try toUnicodeFail("xn----rq4re4997d.xn--l707b"); } // [V3, V7]13685test { try toUnicodeFail("xn----rq4re4997d.xn--l707b"); } // [V3, V7]
13686test { try toAsciiFail("xn----rq4re4997d.xn--l707b", false); } // [V3, V7]
13687test { try toAsciiFail("xn----rq4re4997d.xn--l707b", true); } // [V3, V7]
5600test { try toUnicodeFail("\xf3\xb3\x9b\x82\xef\xb8\x92\xe2\x80\x8c\xe3\x9f\x80\xef\xbc\x8e\xd8\xa4\xe2\x92\x88"); } // [C1, V7]13688test { try toUnicodeFail("\xf3\xb3\x9b\x82\xef\xb8\x92\xe2\x80\x8c\xe3\x9f\x80\xef\xbc\x8e\xd8\xa4\xe2\x92\x88"); } // [C1, V7]
13689test { try toAsciiFail("\xf3\xb3\x9b\x82\xef\xb8\x92\xe2\x80\x8c\xe3\x9f\x80\xef\xbc\x8e\xd8\xa4\xe2\x92\x88", false); } // [C1, V7]
13690test { try toAsciiFail("\xf3\xb3\x9b\x82\xef\xb8\x92\xe2\x80\x8c\xe3\x9f\x80\xef\xbc\x8e\xd8\xa4\xe2\x92\x88", true); } // [V7]
5601test { try toUnicodeFail("\xf3\xb3\x9b\x82\xef\xb8\x92\xe2\x80\x8c\xe3\x9f\x80\xef\xbc\x8e\xd9\x88\xd9\x94\xe2\x92\x88"); } // [C1, V7]13691test { try toUnicodeFail("\xf3\xb3\x9b\x82\xef\xb8\x92\xe2\x80\x8c\xe3\x9f\x80\xef\xbc\x8e\xd9\x88\xd9\x94\xe2\x92\x88"); } // [C1, V7]
13692test { try toAsciiFail("\xf3\xb3\x9b\x82\xef\xb8\x92\xe2\x80\x8c\xe3\x9f\x80\xef\xbc\x8e\xd9\x88\xd9\x94\xe2\x92\x88", false); } // [C1, V7]
13693test { try toAsciiFail("\xf3\xb3\x9b\x82\xef\xb8\x92\xe2\x80\x8c\xe3\x9f\x80\xef\xbc\x8e\xd9\x88\xd9\x94\xe2\x92\x88", true); } // [V7]
5602test { try toUnicodeFail("\xf3\xb3\x9b\x82\xe3\x80\x82\xe2\x80\x8c\xe3\x9f\x80.\xd8\xa41."); } // [B1, C1, V7]13694test { try toUnicodeFail("\xf3\xb3\x9b\x82\xe3\x80\x82\xe2\x80\x8c\xe3\x9f\x80.\xd8\xa41."); } // [B1, C1, V7]
13695test { try toAsciiFail("\xf3\xb3\x9b\x82\xe3\x80\x82\xe2\x80\x8c\xe3\x9f\x80.\xd8\xa41.", false); } // [B1, C1, V7, A4_2]
13696test { try toAsciiFail("\xf3\xb3\x9b\x82\xe3\x80\x82\xe2\x80\x8c\xe3\x9f\x80.\xd8\xa41.", true); } // [V7, A4_2]
5603test { try toUnicodeFail("\xf3\xb3\x9b\x82\xe3\x80\x82\xe2\x80\x8c\xe3\x9f\x80.\xd9\x88\xd9\x941."); } // [B1, C1, V7]13697test { try toUnicodeFail("\xf3\xb3\x9b\x82\xe3\x80\x82\xe2\x80\x8c\xe3\x9f\x80.\xd9\x88\xd9\x941."); } // [B1, C1, V7]
13698test { try toAsciiFail("\xf3\xb3\x9b\x82\xe3\x80\x82\xe2\x80\x8c\xe3\x9f\x80.\xd9\x88\xd9\x941.", false); } // [B1, C1, V7, A4_2]
13699test { try toAsciiFail("\xf3\xb3\x9b\x82\xe3\x80\x82\xe2\x80\x8c\xe3\x9f\x80.\xd9\x88\xd9\x941.", true); } // [V7, A4_2]
5604test { try toUnicodeFail("xn--z272f.xn--etl.xn--1-smc."); } // [V7]13700test { try toUnicodeFail("xn--z272f.xn--etl.xn--1-smc."); } // [V7]
13701test { try toAsciiFail("xn--z272f.xn--etl.xn--1-smc.", false); } // [V7, A4_2]
13702test { try toAsciiFail("xn--z272f.xn--etl.xn--1-smc.", true); } // [V7, A4_2]
5605test { try toUnicodeFail("xn--z272f.xn--0ug754g.xn--1-smc."); } // [B1, C1, V7]13703test { try toUnicodeFail("xn--z272f.xn--0ug754g.xn--1-smc."); } // [B1, C1, V7]
13704test { try toAsciiFail("xn--z272f.xn--0ug754g.xn--1-smc.", false); } // [B1, C1, V7, A4_2]
13705test { try toAsciiFail("xn--z272f.xn--0ug754g.xn--1-smc.", true); } // [B1, C1, V7, A4_2]
5606test { try toUnicodeFail("xn--etlt457ccrq7h.xn--jgb476m"); } // [V7]13706test { try toUnicodeFail("xn--etlt457ccrq7h.xn--jgb476m"); } // [V7]
13707test { try toAsciiFail("xn--etlt457ccrq7h.xn--jgb476m", false); } // [V7]
13708test { try toAsciiFail("xn--etlt457ccrq7h.xn--jgb476m", true); } // [V7]
5607test { try toUnicodeFail("xn--0ug754gxl4ldlt0k.xn--jgb476m"); } // [C1, V7]13709test { try toUnicodeFail("xn--0ug754gxl4ldlt0k.xn--jgb476m"); } // [C1, V7]
13710test { try toAsciiFail("xn--0ug754gxl4ldlt0k.xn--jgb476m", false); } // [C1, V7]
13711test { try toAsciiFail("xn--0ug754gxl4ldlt0k.xn--jgb476m", true); } // [C1, V7]
5608test { try toUnicodeFail("\xf0\x91\xb2\x9c\xdf\x8a\xf0\x9d\x85\xbc\xe3\x80\x82-\xe2\x80\x8d"); } // [B1, C2, V3, V6]13712test { try toUnicodeFail("\xf0\x91\xb2\x9c\xdf\x8a\xf0\x9d\x85\xbc\xe3\x80\x82-\xe2\x80\x8d"); } // [B1, C2, V3, V6]
13713test { try toAsciiFail("\xf0\x91\xb2\x9c\xdf\x8a\xf0\x9d\x85\xbc\xe3\x80\x82-\xe2\x80\x8d", false); } // [B1, C2, V3, V6]
13714test { try toAsciiFail("\xf0\x91\xb2\x9c\xdf\x8a\xf0\x9d\x85\xbc\xe3\x80\x82-\xe2\x80\x8d", true); } // [B1, V3, V6]
5609test { try toUnicodeFail("xn--lsb5482l7nre.-"); } // [B1, V3, V6]13715test { try toUnicodeFail("xn--lsb5482l7nre.-"); } // [B1, V3, V6]
13716test { try toAsciiFail("xn--lsb5482l7nre.-", false); } // [B1, V3, V6]
13717test { try toAsciiFail("xn--lsb5482l7nre.-", true); } // [B1, V3, V6]
5610test { try toUnicodeFail("xn--lsb5482l7nre.xn----ugn"); } // [B1, C2, V3, V6]13718test { try toUnicodeFail("xn--lsb5482l7nre.xn----ugn"); } // [B1, C2, V3, V6]
13719test { try toAsciiFail("xn--lsb5482l7nre.xn----ugn", false); } // [B1, C2, V3, V6]
13720test { try toAsciiFail("xn--lsb5482l7nre.xn----ugn", true); } // [B1, C2, V3, V6]
5611test { try toUnicodeFail("\xe2\x80\x8c\xef\xbc\x8e\xe1\x82\xa9\xe2\x89\xa0\xf0\x90\xab\xb6"); } // [B1, B5, B6, C1]13721test { try toUnicodeFail("\xe2\x80\x8c\xef\xbc\x8e\xe1\x82\xa9\xe2\x89\xa0\xf0\x90\xab\xb6"); } // [B1, B5, B6, C1]
13722test { try toAsciiFail("\xe2\x80\x8c\xef\xbc\x8e\xe1\x82\xa9\xe2\x89\xa0\xf0\x90\xab\xb6", false); } // [B1, B5, B6, C1]
13723test { try toAsciiFail("\xe2\x80\x8c\xef\xbc\x8e\xe1\x82\xa9\xe2\x89\xa0\xf0\x90\xab\xb6", true); } // [B5, B6, A4_2]
5612test { try toUnicodeFail("\xe2\x80\x8c\xef\xbc\x8e\xe1\x82\xa9=\xcc\xb8\xf0\x90\xab\xb6"); } // [B1, B5, B6, C1]13724test { try toUnicodeFail("\xe2\x80\x8c\xef\xbc\x8e\xe1\x82\xa9=\xcc\xb8\xf0\x90\xab\xb6"); } // [B1, B5, B6, C1]
13725test { try toAsciiFail("\xe2\x80\x8c\xef\xbc\x8e\xe1\x82\xa9=\xcc\xb8\xf0\x90\xab\xb6", false); } // [B1, B5, B6, C1]
13726test { try toAsciiFail("\xe2\x80\x8c\xef\xbc\x8e\xe1\x82\xa9=\xcc\xb8\xf0\x90\xab\xb6", true); } // [B5, B6, A4_2]
5613test { try toUnicodeFail("\xe2\x80\x8c.\xe1\x82\xa9\xe2\x89\xa0\xf0\x90\xab\xb6"); } // [B1, B5, B6, C1]13727test { try toUnicodeFail("\xe2\x80\x8c.\xe1\x82\xa9\xe2\x89\xa0\xf0\x90\xab\xb6"); } // [B1, B5, B6, C1]
13728test { try toAsciiFail("\xe2\x80\x8c.\xe1\x82\xa9\xe2\x89\xa0\xf0\x90\xab\xb6", false); } // [B1, B5, B6, C1]
13729test { try toAsciiFail("\xe2\x80\x8c.\xe1\x82\xa9\xe2\x89\xa0\xf0\x90\xab\xb6", true); } // [B5, B6, A4_2]
5614test { try toUnicodeFail("\xe2\x80\x8c.\xe1\x82\xa9=\xcc\xb8\xf0\x90\xab\xb6"); } // [B1, B5, B6, C1]13730test { try toUnicodeFail("\xe2\x80\x8c.\xe1\x82\xa9=\xcc\xb8\xf0\x90\xab\xb6"); } // [B1, B5, B6, C1]
13731test { try toAsciiFail("\xe2\x80\x8c.\xe1\x82\xa9=\xcc\xb8\xf0\x90\xab\xb6", false); } // [B1, B5, B6, C1]
13732test { try toAsciiFail("\xe2\x80\x8c.\xe1\x82\xa9=\xcc\xb8\xf0\x90\xab\xb6", true); } // [B5, B6, A4_2]
5615test { try toUnicodeFail("\xe2\x80\x8c.\xe2\xb4\x89=\xcc\xb8\xf0\x90\xab\xb6"); } // [B1, B5, B6, C1]13733test { try toUnicodeFail("\xe2\x80\x8c.\xe2\xb4\x89=\xcc\xb8\xf0\x90\xab\xb6"); } // [B1, B5, B6, C1]
13734test { try toAsciiFail("\xe2\x80\x8c.\xe2\xb4\x89=\xcc\xb8\xf0\x90\xab\xb6", false); } // [B1, B5, B6, C1]
13735test { try toAsciiFail("\xe2\x80\x8c.\xe2\xb4\x89=\xcc\xb8\xf0\x90\xab\xb6", true); } // [B5, B6, A4_2]
5616test { try toUnicodeFail("\xe2\x80\x8c.\xe2\xb4\x89\xe2\x89\xa0\xf0\x90\xab\xb6"); } // [B1, B5, B6, C1]13736test { try toUnicodeFail("\xe2\x80\x8c.\xe2\xb4\x89\xe2\x89\xa0\xf0\x90\xab\xb6"); } // [B1, B5, B6, C1]
13737test { try toAsciiFail("\xe2\x80\x8c.\xe2\xb4\x89\xe2\x89\xa0\xf0\x90\xab\xb6", false); } // [B1, B5, B6, C1]
13738test { try toAsciiFail("\xe2\x80\x8c.\xe2\xb4\x89\xe2\x89\xa0\xf0\x90\xab\xb6", true); } // [B5, B6, A4_2]
5617test { try toUnicodeFail(".xn--1chx23bzj4p"); } // [B5, B6, X4_2]13739test { try toUnicodeFail(".xn--1chx23bzj4p"); } // [B5, B6, X4_2]
13740test { try toAsciiFail(".xn--1chx23bzj4p", false); } // [B5, B6, A4_2]
13741test { try toAsciiFail(".xn--1chx23bzj4p", true); } // [B5, B6, A4_2]
5618test { try toUnicodeFail("xn--0ug.xn--1chx23bzj4p"); } // [B1, B5, B6, C1]13742test { try toUnicodeFail("xn--0ug.xn--1chx23bzj4p"); } // [B1, B5, B6, C1]
13743test { try toAsciiFail("xn--0ug.xn--1chx23bzj4p", false); } // [B1, B5, B6, C1]
13744test { try toAsciiFail("xn--0ug.xn--1chx23bzj4p", true); } // [B1, B5, B6, C1]
5619test { try toUnicodeFail("\xe2\x80\x8c\xef\xbc\x8e\xe2\xb4\x89=\xcc\xb8\xf0\x90\xab\xb6"); } // [B1, B5, B6, C1]13745test { try toUnicodeFail("\xe2\x80\x8c\xef\xbc\x8e\xe2\xb4\x89=\xcc\xb8\xf0\x90\xab\xb6"); } // [B1, B5, B6, C1]
13746test { try toAsciiFail("\xe2\x80\x8c\xef\xbc\x8e\xe2\xb4\x89=\xcc\xb8\xf0\x90\xab\xb6", false); } // [B1, B5, B6, C1]
13747test { try toAsciiFail("\xe2\x80\x8c\xef\xbc\x8e\xe2\xb4\x89=\xcc\xb8\xf0\x90\xab\xb6", true); } // [B5, B6, A4_2]
5620test { try toUnicodeFail("\xe2\x80\x8c\xef\xbc\x8e\xe2\xb4\x89\xe2\x89\xa0\xf0\x90\xab\xb6"); } // [B1, B5, B6, C1]13748test { try toUnicodeFail("\xe2\x80\x8c\xef\xbc\x8e\xe2\xb4\x89\xe2\x89\xa0\xf0\x90\xab\xb6"); } // [B1, B5, B6, C1]
13749test { try toAsciiFail("\xe2\x80\x8c\xef\xbc\x8e\xe2\xb4\x89\xe2\x89\xa0\xf0\x90\xab\xb6", false); } // [B1, B5, B6, C1]
13750test { try toAsciiFail("\xe2\x80\x8c\xef\xbc\x8e\xe2\xb4\x89\xe2\x89\xa0\xf0\x90\xab\xb6", true); } // [B5, B6, A4_2]
5621test { try toUnicodeFail(".xn--hnd481gv73o"); } // [B5, B6, V7, X4_2]13751test { try toUnicodeFail(".xn--hnd481gv73o"); } // [B5, B6, V7, X4_2]
13752test { try toAsciiFail(".xn--hnd481gv73o", false); } // [B5, B6, V7, A4_2]
13753test { try toAsciiFail(".xn--hnd481gv73o", true); } // [B5, B6, V7, A4_2]
5622test { try toUnicodeFail("xn--0ug.xn--hnd481gv73o"); } // [B1, B5, B6, C1, V7]13754test { try toUnicodeFail("xn--0ug.xn--hnd481gv73o"); } // [B1, B5, B6, C1, V7]
13755test { try toAsciiFail("xn--0ug.xn--hnd481gv73o", false); } // [B1, B5, B6, C1, V7]
13756test { try toAsciiFail("xn--0ug.xn--hnd481gv73o", true); } // [B1, B5, B6, C1, V7]
5623test { try toUnicodeFail("\xdd\x90\xe3\x80\x82\xe2\x89\xaf\xcf\x82"); } // [B1]13757test { try toUnicodeFail("\xdd\x90\xe3\x80\x82\xe2\x89\xaf\xcf\x82"); } // [B1]
13758test { try toAsciiFail("\xdd\x90\xe3\x80\x82\xe2\x89\xaf\xcf\x82", false); } // [B1]
13759test { try toAsciiFail("\xdd\x90\xe3\x80\x82\xe2\x89\xaf\xcf\x82", true); } // [B1]
5624test { try toUnicodeFail("\xdd\x90\xe3\x80\x82>\xcc\xb8\xcf\x82"); } // [B1]13760test { try toUnicodeFail("\xdd\x90\xe3\x80\x82>\xcc\xb8\xcf\x82"); } // [B1]
13761test { try toAsciiFail("\xdd\x90\xe3\x80\x82>\xcc\xb8\xcf\x82", false); } // [B1]
13762test { try toAsciiFail("\xdd\x90\xe3\x80\x82>\xcc\xb8\xcf\x82", true); } // [B1]
5625test { try toUnicodeFail("\xdd\x90\xe3\x80\x82>\xcc\xb8\xce\xa3"); } // [B1]13763test { try toUnicodeFail("\xdd\x90\xe3\x80\x82>\xcc\xb8\xce\xa3"); } // [B1]
13764test { try toAsciiFail("\xdd\x90\xe3\x80\x82>\xcc\xb8\xce\xa3", false); } // [B1]
13765test { try toAsciiFail("\xdd\x90\xe3\x80\x82>\xcc\xb8\xce\xa3", true); } // [B1]
5626test { try toUnicodeFail("\xdd\x90\xe3\x80\x82\xe2\x89\xaf\xce\xa3"); } // [B1]13766test { try toUnicodeFail("\xdd\x90\xe3\x80\x82\xe2\x89\xaf\xce\xa3"); } // [B1]
13767test { try toAsciiFail("\xdd\x90\xe3\x80\x82\xe2\x89\xaf\xce\xa3", false); } // [B1]
13768test { try toAsciiFail("\xdd\x90\xe3\x80\x82\xe2\x89\xaf\xce\xa3", true); } // [B1]
5627test { try toUnicodeFail("\xdd\x90\xe3\x80\x82\xe2\x89\xaf\xcf\x83"); } // [B1]13769test { try toUnicodeFail("\xdd\x90\xe3\x80\x82\xe2\x89\xaf\xcf\x83"); } // [B1]
13770test { try toAsciiFail("\xdd\x90\xe3\x80\x82\xe2\x89\xaf\xcf\x83", false); } // [B1]
13771test { try toAsciiFail("\xdd\x90\xe3\x80\x82\xe2\x89\xaf\xcf\x83", true); } // [B1]
5628test { try toUnicodeFail("\xdd\x90\xe3\x80\x82>\xcc\xb8\xcf\x83"); } // [B1]13772test { try toUnicodeFail("\xdd\x90\xe3\x80\x82>\xcc\xb8\xcf\x83"); } // [B1]
13773test { try toAsciiFail("\xdd\x90\xe3\x80\x82>\xcc\xb8\xcf\x83", false); } // [B1]
13774test { try toAsciiFail("\xdd\x90\xe3\x80\x82>\xcc\xb8\xcf\x83", true); } // [B1]
5629test { try toUnicodeFail("xn--3ob.xn--4xa718m"); } // [B1]13775test { try toUnicodeFail("xn--3ob.xn--4xa718m"); } // [B1]
13776test { try toAsciiFail("xn--3ob.xn--4xa718m", false); } // [B1]
13777test { try toAsciiFail("xn--3ob.xn--4xa718m", true); } // [B1]
5630test { try toUnicodeFail("xn--3ob.xn--3xa918m"); } // [B1]13778test { try toUnicodeFail("xn--3ob.xn--3xa918m"); } // [B1]
13779test { try toAsciiFail("xn--3ob.xn--3xa918m", false); } // [B1]
13780test { try toAsciiFail("xn--3ob.xn--3xa918m", true); } // [B1]
5631test { try toUnicodeFail("\xdf\xbc\xf0\x90\xb8\x86.\xf0\x93\x96\x8f\xef\xb8\x92\xf1\x8a\xa8\xa9\xe1\x82\xb0"); } // [V7]13781test { try toUnicodeFail("\xdf\xbc\xf0\x90\xb8\x86.\xf0\x93\x96\x8f\xef\xb8\x92\xf1\x8a\xa8\xa9\xe1\x82\xb0"); } // [V7]
13782test { try toAsciiFail("\xdf\xbc\xf0\x90\xb8\x86.\xf0\x93\x96\x8f\xef\xb8\x92\xf1\x8a\xa8\xa9\xe1\x82\xb0", false); } // [V7]
13783test { try toAsciiFail("\xdf\xbc\xf0\x90\xb8\x86.\xf0\x93\x96\x8f\xef\xb8\x92\xf1\x8a\xa8\xa9\xe1\x82\xb0", true); } // [V7]
5632test { try toUnicodeFail("\xdf\xbc\xf0\x90\xb8\x86.\xf0\x93\x96\x8f\xe3\x80\x82\xf1\x8a\xa8\xa9\xe1\x82\xb0"); } // [V7]13784test { try toUnicodeFail("\xdf\xbc\xf0\x90\xb8\x86.\xf0\x93\x96\x8f\xe3\x80\x82\xf1\x8a\xa8\xa9\xe1\x82\xb0"); } // [V7]
13785test { try toAsciiFail("\xdf\xbc\xf0\x90\xb8\x86.\xf0\x93\x96\x8f\xe3\x80\x82\xf1\x8a\xa8\xa9\xe1\x82\xb0", false); } // [V7]
13786test { try toAsciiFail("\xdf\xbc\xf0\x90\xb8\x86.\xf0\x93\x96\x8f\xe3\x80\x82\xf1\x8a\xa8\xa9\xe1\x82\xb0", true); } // [V7]
5633test { try toUnicodeFail("\xdf\xbc\xf0\x90\xb8\x86.\xf0\x93\x96\x8f\xe3\x80\x82\xf1\x8a\xa8\xa9\xe2\xb4\x90"); } // [V7]13787test { try toUnicodeFail("\xdf\xbc\xf0\x90\xb8\x86.\xf0\x93\x96\x8f\xe3\x80\x82\xf1\x8a\xa8\xa9\xe2\xb4\x90"); } // [V7]
13788test { try toAsciiFail("\xdf\xbc\xf0\x90\xb8\x86.\xf0\x93\x96\x8f\xe3\x80\x82\xf1\x8a\xa8\xa9\xe2\xb4\x90", false); } // [V7]
13789test { try toAsciiFail("\xdf\xbc\xf0\x90\xb8\x86.\xf0\x93\x96\x8f\xe3\x80\x82\xf1\x8a\xa8\xa9\xe2\xb4\x90", true); } // [V7]
5634test { try toUnicodeFail("xn--0tb8725k.xn--tu8d.xn--7kj73887a"); } // [V7]13790test { try toUnicodeFail("xn--0tb8725k.xn--tu8d.xn--7kj73887a"); } // [V7]
13791test { try toAsciiFail("xn--0tb8725k.xn--tu8d.xn--7kj73887a", false); } // [V7]
13792test { try toAsciiFail("xn--0tb8725k.xn--tu8d.xn--7kj73887a", true); } // [V7]
5635test { try toUnicodeFail("\xdf\xbc\xf0\x90\xb8\x86.\xf0\x93\x96\x8f\xef\xb8\x92\xf1\x8a\xa8\xa9\xe2\xb4\x90"); } // [V7]13793test { try toUnicodeFail("\xdf\xbc\xf0\x90\xb8\x86.\xf0\x93\x96\x8f\xef\xb8\x92\xf1\x8a\xa8\xa9\xe2\xb4\x90"); } // [V7]
13794test { try toAsciiFail("\xdf\xbc\xf0\x90\xb8\x86.\xf0\x93\x96\x8f\xef\xb8\x92\xf1\x8a\xa8\xa9\xe2\xb4\x90", false); } // [V7]
13795test { try toAsciiFail("\xdf\xbc\xf0\x90\xb8\x86.\xf0\x93\x96\x8f\xef\xb8\x92\xf1\x8a\xa8\xa9\xe2\xb4\x90", true); } // [V7]
5636test { try toUnicodeFail("xn--0tb8725k.xn--7kj9008dt18a7py9c"); } // [V7]13796test { try toUnicodeFail("xn--0tb8725k.xn--7kj9008dt18a7py9c"); } // [V7]
13797test { try toAsciiFail("xn--0tb8725k.xn--7kj9008dt18a7py9c", false); } // [V7]
13798test { try toAsciiFail("xn--0tb8725k.xn--7kj9008dt18a7py9c", true); } // [V7]
5637test { try toUnicodeFail("xn--0tb8725k.xn--tu8d.xn--ond97931d"); } // [V7]13799test { try toUnicodeFail("xn--0tb8725k.xn--tu8d.xn--ond97931d"); } // [V7]
13800test { try toAsciiFail("xn--0tb8725k.xn--tu8d.xn--ond97931d", false); } // [V7]
13801test { try toAsciiFail("xn--0tb8725k.xn--tu8d.xn--ond97931d", true); } // [V7]
5638test { try toUnicodeFail("xn--0tb8725k.xn--ond3562jt18a7py9c"); } // [V7]13802test { try toUnicodeFail("xn--0tb8725k.xn--ond3562jt18a7py9c"); } // [V7]
13803test { try toAsciiFail("xn--0tb8725k.xn--ond3562jt18a7py9c", false); } // [V7]
13804test { try toAsciiFail("xn--0tb8725k.xn--ond3562jt18a7py9c", true); } // [V7]
5639test { try toUnicodeFail("\xe1\x83\x85\xe2\x9a\xad\xf3\xa0\x96\xab\xe2\x8b\x83\xef\xbd\xa1\xf0\x91\x8c\xbc"); } // [V6, V7]13805test { try toUnicodeFail("\xe1\x83\x85\xe2\x9a\xad\xf3\xa0\x96\xab\xe2\x8b\x83\xef\xbd\xa1\xf0\x91\x8c\xbc"); } // [V6, V7]
13806test { try toAsciiFail("\xe1\x83\x85\xe2\x9a\xad\xf3\xa0\x96\xab\xe2\x8b\x83\xef\xbd\xa1\xf0\x91\x8c\xbc", false); } // [V6, V7]
13807test { try toAsciiFail("\xe1\x83\x85\xe2\x9a\xad\xf3\xa0\x96\xab\xe2\x8b\x83\xef\xbd\xa1\xf0\x91\x8c\xbc", true); } // [V6, V7]
5640test { try toUnicodeFail("\xe1\x83\x85\xe2\x9a\xad\xf3\xa0\x96\xab\xe2\x8b\x83\xe3\x80\x82\xf0\x91\x8c\xbc"); } // [V6, V7]13808test { try toUnicodeFail("\xe1\x83\x85\xe2\x9a\xad\xf3\xa0\x96\xab\xe2\x8b\x83\xe3\x80\x82\xf0\x91\x8c\xbc"); } // [V6, V7]
13809test { try toAsciiFail("\xe1\x83\x85\xe2\x9a\xad\xf3\xa0\x96\xab\xe2\x8b\x83\xe3\x80\x82\xf0\x91\x8c\xbc", false); } // [V6, V7]
13810test { try toAsciiFail("\xe1\x83\x85\xe2\x9a\xad\xf3\xa0\x96\xab\xe2\x8b\x83\xe3\x80\x82\xf0\x91\x8c\xbc", true); } // [V6, V7]
5641test { try toUnicodeFail("\xe2\xb4\xa5\xe2\x9a\xad\xf3\xa0\x96\xab\xe2\x8b\x83\xe3\x80\x82\xf0\x91\x8c\xbc"); } // [V6, V7]13811test { try toUnicodeFail("\xe2\xb4\xa5\xe2\x9a\xad\xf3\xa0\x96\xab\xe2\x8b\x83\xe3\x80\x82\xf0\x91\x8c\xbc"); } // [V6, V7]
13812test { try toAsciiFail("\xe2\xb4\xa5\xe2\x9a\xad\xf3\xa0\x96\xab\xe2\x8b\x83\xe3\x80\x82\xf0\x91\x8c\xbc", false); } // [V6, V7]
13813test { try toAsciiFail("\xe2\xb4\xa5\xe2\x9a\xad\xf3\xa0\x96\xab\xe2\x8b\x83\xe3\x80\x82\xf0\x91\x8c\xbc", true); } // [V6, V7]
5642test { try toUnicodeFail("xn--vfh16m67gx1162b.xn--ro1d"); } // [V6, V7]13814test { try toUnicodeFail("xn--vfh16m67gx1162b.xn--ro1d"); } // [V6, V7]
13815test { try toAsciiFail("xn--vfh16m67gx1162b.xn--ro1d", false); } // [V6, V7]
13816test { try toAsciiFail("xn--vfh16m67gx1162b.xn--ro1d", true); } // [V6, V7]
5643test { try toUnicodeFail("\xe2\xb4\xa5\xe2\x9a\xad\xf3\xa0\x96\xab\xe2\x8b\x83\xef\xbd\xa1\xf0\x91\x8c\xbc"); } // [V6, V7]13817test { try toUnicodeFail("\xe2\xb4\xa5\xe2\x9a\xad\xf3\xa0\x96\xab\xe2\x8b\x83\xef\xbd\xa1\xf0\x91\x8c\xbc"); } // [V6, V7]
13818test { try toAsciiFail("\xe2\xb4\xa5\xe2\x9a\xad\xf3\xa0\x96\xab\xe2\x8b\x83\xef\xbd\xa1\xf0\x91\x8c\xbc", false); } // [V6, V7]
13819test { try toAsciiFail("\xe2\xb4\xa5\xe2\x9a\xad\xf3\xa0\x96\xab\xe2\x8b\x83\xef\xbd\xa1\xf0\x91\x8c\xbc", true); } // [V6, V7]
5644test { try toUnicodeFail("xn--9nd623g4zc5z060c.xn--ro1d"); } // [V6, V7]13820test { try toUnicodeFail("xn--9nd623g4zc5z060c.xn--ro1d"); } // [V6, V7]
13821test { try toAsciiFail("xn--9nd623g4zc5z060c.xn--ro1d", false); } // [V6, V7]
13822test { try toAsciiFail("xn--9nd623g4zc5z060c.xn--ro1d", true); } // [V6, V7]
5645test { try toUnicodeFail("\xf0\x9f\x84\x88\xe3\x80\x82\xf3\xa0\xb7\xb3\xe0\xa1\x84"); } // [B1, V7, U1]13823test { try toUnicodeFail("\xf0\x9f\x84\x88\xe3\x80\x82\xf3\xa0\xb7\xb3\xe0\xa1\x84"); } // [B1, V7, U1]
13824test { try toAsciiFail("\xf0\x9f\x84\x88\xe3\x80\x82\xf3\xa0\xb7\xb3\xe0\xa1\x84", false); } // [B1, V7, U1]
13825test { try toAsciiFail("\xf0\x9f\x84\x88\xe3\x80\x82\xf3\xa0\xb7\xb3\xe0\xa1\x84", true); } // [B1, V7, U1]
5646test { try toUnicodeFail("7,\xe3\x80\x82\xf3\xa0\xb7\xb3\xe0\xa1\x84"); } // [B1, V7, U1]13826test { try toUnicodeFail("7,\xe3\x80\x82\xf3\xa0\xb7\xb3\xe0\xa1\x84"); } // [B1, V7, U1]
13827test { try toAsciiFail("7,\xe3\x80\x82\xf3\xa0\xb7\xb3\xe0\xa1\x84", false); } // [B1, V7, U1]
13828test { try toAsciiFail("7,\xe3\x80\x82\xf3\xa0\xb7\xb3\xe0\xa1\x84", true); } // [B1, V7, U1]
5647test { try toUnicodeFail("7,.xn--2vb13094p"); } // [B1, V7, U1]13829test { try toUnicodeFail("7,.xn--2vb13094p"); } // [B1, V7, U1]
13830test { try toAsciiFail("7,.xn--2vb13094p", false); } // [B1, V7, U1]
13831test { try toAsciiFail("7,.xn--2vb13094p", true); } // [B1, V7, U1]
5648test { try toUnicodeFail("xn--107h.xn--2vb13094p"); } // [B1, V7]13832test { try toUnicodeFail("xn--107h.xn--2vb13094p"); } // [B1, V7]
13833test { try toAsciiFail("xn--107h.xn--2vb13094p", false); } // [B1, V7]
13834test { try toAsciiFail("xn--107h.xn--2vb13094p", true); } // [B1, V7]
5649test { try toUnicodeFail("\xe2\x89\xae\xe0\xa1\x86\xe3\x80\x82\xec\x84\x96\xec\xae\x96\xc3\x9f"); } // [B1]13835test { try toUnicodeFail("\xe2\x89\xae\xe0\xa1\x86\xe3\x80\x82\xec\x84\x96\xec\xae\x96\xc3\x9f"); } // [B1]
13836test { try toAsciiFail("\xe2\x89\xae\xe0\xa1\x86\xe3\x80\x82\xec\x84\x96\xec\xae\x96\xc3\x9f", false); } // [B1]
13837test { try toAsciiFail("\xe2\x89\xae\xe0\xa1\x86\xe3\x80\x82\xec\x84\x96\xec\xae\x96\xc3\x9f", true); } // [B1]
5650test { try toUnicodeFail("<\xcc\xb8\xe0\xa1\x86\xe3\x80\x82\xe1\x84\x89\xe1\x85\xa4\xe1\x86\xbd\xe1\x84\x8d\xe1\x85\xb0\xe1\x86\xbd\xc3\x9f"); } // [B1]13838test { try toUnicodeFail("<\xcc\xb8\xe0\xa1\x86\xe3\x80\x82\xe1\x84\x89\xe1\x85\xa4\xe1\x86\xbd\xe1\x84\x8d\xe1\x85\xb0\xe1\x86\xbd\xc3\x9f"); } // [B1]
13839test { try toAsciiFail("<\xcc\xb8\xe0\xa1\x86\xe3\x80\x82\xe1\x84\x89\xe1\x85\xa4\xe1\x86\xbd\xe1\x84\x8d\xe1\x85\xb0\xe1\x86\xbd\xc3\x9f", false); } // [B1]
13840test { try toAsciiFail("<\xcc\xb8\xe0\xa1\x86\xe3\x80\x82\xe1\x84\x89\xe1\x85\xa4\xe1\x86\xbd\xe1\x84\x8d\xe1\x85\xb0\xe1\x86\xbd\xc3\x9f", true); } // [B1]
5651test { try toUnicodeFail("<\xcc\xb8\xe0\xa1\x86\xe3\x80\x82\xe1\x84\x89\xe1\x85\xa4\xe1\x86\xbd\xe1\x84\x8d\xe1\x85\xb0\xe1\x86\xbdSS"); } // [B1]13841test { try toUnicodeFail("<\xcc\xb8\xe0\xa1\x86\xe3\x80\x82\xe1\x84\x89\xe1\x85\xa4\xe1\x86\xbd\xe1\x84\x8d\xe1\x85\xb0\xe1\x86\xbdSS"); } // [B1]
13842test { try toAsciiFail("<\xcc\xb8\xe0\xa1\x86\xe3\x80\x82\xe1\x84\x89\xe1\x85\xa4\xe1\x86\xbd\xe1\x84\x8d\xe1\x85\xb0\xe1\x86\xbdSS", false); } // [B1]
13843test { try toAsciiFail("<\xcc\xb8\xe0\xa1\x86\xe3\x80\x82\xe1\x84\x89\xe1\x85\xa4\xe1\x86\xbd\xe1\x84\x8d\xe1\x85\xb0\xe1\x86\xbdSS", true); } // [B1]
5652test { try toUnicodeFail("\xe2\x89\xae\xe0\xa1\x86\xe3\x80\x82\xec\x84\x96\xec\xae\x96SS"); } // [B1]13844test { try toUnicodeFail("\xe2\x89\xae\xe0\xa1\x86\xe3\x80\x82\xec\x84\x96\xec\xae\x96SS"); } // [B1]
13845test { try toAsciiFail("\xe2\x89\xae\xe0\xa1\x86\xe3\x80\x82\xec\x84\x96\xec\xae\x96SS", false); } // [B1]
13846test { try toAsciiFail("\xe2\x89\xae\xe0\xa1\x86\xe3\x80\x82\xec\x84\x96\xec\xae\x96SS", true); } // [B1]
5653test { try toUnicodeFail("\xe2\x89\xae\xe0\xa1\x86\xe3\x80\x82\xec\x84\x96\xec\xae\x96ss"); } // [B1]13847test { try toUnicodeFail("\xe2\x89\xae\xe0\xa1\x86\xe3\x80\x82\xec\x84\x96\xec\xae\x96ss"); } // [B1]
13848test { try toAsciiFail("\xe2\x89\xae\xe0\xa1\x86\xe3\x80\x82\xec\x84\x96\xec\xae\x96ss", false); } // [B1]
13849test { try toAsciiFail("\xe2\x89\xae\xe0\xa1\x86\xe3\x80\x82\xec\x84\x96\xec\xae\x96ss", true); } // [B1]
5654test { try toUnicodeFail("<\xcc\xb8\xe0\xa1\x86\xe3\x80\x82\xe1\x84\x89\xe1\x85\xa4\xe1\x86\xbd\xe1\x84\x8d\xe1\x85\xb0\xe1\x86\xbdss"); } // [B1]13850test { try toUnicodeFail("<\xcc\xb8\xe0\xa1\x86\xe3\x80\x82\xe1\x84\x89\xe1\x85\xa4\xe1\x86\xbd\xe1\x84\x8d\xe1\x85\xb0\xe1\x86\xbdss"); } // [B1]
13851test { try toAsciiFail("<\xcc\xb8\xe0\xa1\x86\xe3\x80\x82\xe1\x84\x89\xe1\x85\xa4\xe1\x86\xbd\xe1\x84\x8d\xe1\x85\xb0\xe1\x86\xbdss", false); } // [B1]
13852test { try toAsciiFail("<\xcc\xb8\xe0\xa1\x86\xe3\x80\x82\xe1\x84\x89\xe1\x85\xa4\xe1\x86\xbd\xe1\x84\x8d\xe1\x85\xb0\xe1\x86\xbdss", true); } // [B1]
5655test { try toUnicodeFail("xn--4vb505k.xn--ss-5z4j006a"); } // [B1]13853test { try toUnicodeFail("xn--4vb505k.xn--ss-5z4j006a"); } // [B1]
13854test { try toAsciiFail("xn--4vb505k.xn--ss-5z4j006a", false); } // [B1]
13855test { try toAsciiFail("xn--4vb505k.xn--ss-5z4j006a", true); } // [B1]
5656test { try toUnicodeFail("\xe2\x89\xae\xe0\xa1\x86\xe3\x80\x82\xec\x84\x96\xec\xae\x96Ss"); } // [B1]13856test { try toUnicodeFail("\xe2\x89\xae\xe0\xa1\x86\xe3\x80\x82\xec\x84\x96\xec\xae\x96Ss"); } // [B1]
13857test { try toAsciiFail("\xe2\x89\xae\xe0\xa1\x86\xe3\x80\x82\xec\x84\x96\xec\xae\x96Ss", false); } // [B1]
13858test { try toAsciiFail("\xe2\x89\xae\xe0\xa1\x86\xe3\x80\x82\xec\x84\x96\xec\xae\x96Ss", true); } // [B1]
5657test { try toUnicodeFail("<\xcc\xb8\xe0\xa1\x86\xe3\x80\x82\xe1\x84\x89\xe1\x85\xa4\xe1\x86\xbd\xe1\x84\x8d\xe1\x85\xb0\xe1\x86\xbdSs"); } // [B1]13859test { try toUnicodeFail("<\xcc\xb8\xe0\xa1\x86\xe3\x80\x82\xe1\x84\x89\xe1\x85\xa4\xe1\x86\xbd\xe1\x84\x8d\xe1\x85\xb0\xe1\x86\xbdSs"); } // [B1]
13860test { try toAsciiFail("<\xcc\xb8\xe0\xa1\x86\xe3\x80\x82\xe1\x84\x89\xe1\x85\xa4\xe1\x86\xbd\xe1\x84\x8d\xe1\x85\xb0\xe1\x86\xbdSs", false); } // [B1]
13861test { try toAsciiFail("<\xcc\xb8\xe0\xa1\x86\xe3\x80\x82\xe1\x84\x89\xe1\x85\xa4\xe1\x86\xbd\xe1\x84\x8d\xe1\x85\xb0\xe1\x86\xbdSs", true); } // [B1]
5658test { try toUnicodeFail("xn--4vb505k.xn--zca7259goug"); } // [B1]13862test { try toUnicodeFail("xn--4vb505k.xn--zca7259goug"); } // [B1]
13863test { try toAsciiFail("xn--4vb505k.xn--zca7259goug", false); } // [B1]
13864test { try toAsciiFail("xn--4vb505k.xn--zca7259goug", true); } // [B1]
5659test { try toUnicodeFail("\xf3\xa0\x86\x93\xe2\x9b\x8f-\xe3\x80\x82\xea\xa1\x92"); } // [V3]13865test { try toUnicodeFail("\xf3\xa0\x86\x93\xe2\x9b\x8f-\xe3\x80\x82\xea\xa1\x92"); } // [V3]
13866test { try toAsciiFail("\xf3\xa0\x86\x93\xe2\x9b\x8f-\xe3\x80\x82\xea\xa1\x92", false); } // [V3]
13867test { try toAsciiFail("\xf3\xa0\x86\x93\xe2\x9b\x8f-\xe3\x80\x82\xea\xa1\x92", true); } // [V3]
5660test { try toUnicodeFail("xn----o9p.xn--rc9a"); } // [V3]13868test { try toUnicodeFail("xn----o9p.xn--rc9a"); } // [V3]
13869test { try toAsciiFail("xn----o9p.xn--rc9a", false); } // [V3]
13870test { try toAsciiFail("xn----o9p.xn--rc9a", true); } // [V3]
5661test { try toUnicodeFail("\xde\xbb\xf0\x90\xb9\xb3\xd8\xa6\xf0\x91\x81\x86\xe3\x80\x82\xe0\xa2\xa7\xda\xb0\xe2\x80\x8c\xe1\xa2\x92"); } // [B2, B3, V7]13871test { try toUnicodeFail("\xde\xbb\xf0\x90\xb9\xb3\xd8\xa6\xf0\x91\x81\x86\xe3\x80\x82\xe0\xa2\xa7\xda\xb0\xe2\x80\x8c\xe1\xa2\x92"); } // [B2, B3, V7]
13872test { try toAsciiFail("\xde\xbb\xf0\x90\xb9\xb3\xd8\xa6\xf0\x91\x81\x86\xe3\x80\x82\xe0\xa2\xa7\xda\xb0\xe2\x80\x8c\xe1\xa2\x92", false); } // [B2, B3, V7]
13873test { try toAsciiFail("\xde\xbb\xf0\x90\xb9\xb3\xd8\xa6\xf0\x91\x81\x86\xe3\x80\x82\xe0\xa2\xa7\xda\xb0\xe2\x80\x8c\xe1\xa2\x92", true); } // [B2, B3, V7]
5662test { try toUnicodeFail("\xde\xbb\xf0\x90\xb9\xb3\xd9\x8a\xf0\x91\x81\x86\xd9\x94\xe3\x80\x82\xe0\xa2\xa7\xda\xb0\xe2\x80\x8c\xe1\xa2\x92"); } // [B2, B3, V7]13874test { try toUnicodeFail("\xde\xbb\xf0\x90\xb9\xb3\xd9\x8a\xf0\x91\x81\x86\xd9\x94\xe3\x80\x82\xe0\xa2\xa7\xda\xb0\xe2\x80\x8c\xe1\xa2\x92"); } // [B2, B3, V7]
13875test { try toAsciiFail("\xde\xbb\xf0\x90\xb9\xb3\xd9\x8a\xf0\x91\x81\x86\xd9\x94\xe3\x80\x82\xe0\xa2\xa7\xda\xb0\xe2\x80\x8c\xe1\xa2\x92", false); } // [B2, B3, V7]
13876test { try toAsciiFail("\xde\xbb\xf0\x90\xb9\xb3\xd9\x8a\xf0\x91\x81\x86\xd9\x94\xe3\x80\x82\xe0\xa2\xa7\xda\xb0\xe2\x80\x8c\xe1\xa2\x92", true); } // [B2, B3, V7]
5663test { try toUnicodeFail("xn--lgb32f2753cosb.xn--jkb91hlz1a"); } // [B2, B3, V7]13877test { try toUnicodeFail("xn--lgb32f2753cosb.xn--jkb91hlz1a"); } // [B2, B3, V7]
13878test { try toAsciiFail("xn--lgb32f2753cosb.xn--jkb91hlz1a", false); } // [B2, B3, V7]
13879test { try toAsciiFail("xn--lgb32f2753cosb.xn--jkb91hlz1a", true); } // [B2, B3, V7]
5664test { try toUnicodeFail("xn--lgb32f2753cosb.xn--jkb91hlz1azih"); } // [B2, B3, V7]13880test { try toUnicodeFail("xn--lgb32f2753cosb.xn--jkb91hlz1azih"); } // [B2, B3, V7]
13881test { try toAsciiFail("xn--lgb32f2753cosb.xn--jkb91hlz1azih", false); } // [B2, B3, V7]
13882test { try toAsciiFail("xn--lgb32f2753cosb.xn--jkb91hlz1azih", true); } // [B2, B3, V7]
5665test { try toUnicodeFail("\xe0\xa0\x96.\xf0\x90\xa8\x95\xf0\x9a\x9a\x95"); } // [B1, B2, B3, V6, V7]13883test { try toUnicodeFail("\xe0\xa0\x96.\xf0\x90\xa8\x95\xf0\x9a\x9a\x95"); } // [B1, B2, B3, V6, V7]
13884test { try toAsciiFail("\xe0\xa0\x96.\xf0\x90\xa8\x95\xf0\x9a\x9a\x95", false); } // [B1, B2, B3, V6, V7]
13885test { try toAsciiFail("\xe0\xa0\x96.\xf0\x90\xa8\x95\xf0\x9a\x9a\x95", true); } // [B1, B2, B3, V6, V7]
5666test { try toUnicodeFail("xn--rub.xn--tr9c248x"); } // [B1, B2, B3, V6, V7]13886test { try toUnicodeFail("xn--rub.xn--tr9c248x"); } // [B1, B2, B3, V6, V7]
13887test { try toAsciiFail("xn--rub.xn--tr9c248x", false); } // [B1, B2, B3, V6, V7]
13888test { try toAsciiFail("xn--rub.xn--tr9c248x", true); } // [B1, B2, B3, V6, V7]
5667test { try toUnicodeFail("--\xe3\x80\x82\xf0\xbd\x8a\x86\xdd\xa7\xf0\x90\xbd\x8b\xf0\x9e\xa0\xac"); } // [B1, B5, B6, V3, V7]13889test { try toUnicodeFail("--\xe3\x80\x82\xf0\xbd\x8a\x86\xdd\xa7\xf0\x90\xbd\x8b\xf0\x9e\xa0\xac"); } // [B1, B5, B6, V3, V7]
13890test { try toAsciiFail("--\xe3\x80\x82\xf0\xbd\x8a\x86\xdd\xa7\xf0\x90\xbd\x8b\xf0\x9e\xa0\xac", false); } // [B1, B5, B6, V3, V7]
13891test { try toAsciiFail("--\xe3\x80\x82\xf0\xbd\x8a\x86\xdd\xa7\xf0\x90\xbd\x8b\xf0\x9e\xa0\xac", true); } // [B1, B5, B6, V3, V7]
5668test { try toUnicodeFail("--.xn--rpb6226k77pfh58p"); } // [B1, B5, B6, V3, V7]13892test { try toUnicodeFail("--.xn--rpb6226k77pfh58p"); } // [B1, B5, B6, V3, V7]
13893test { try toAsciiFail("--.xn--rpb6226k77pfh58p", false); } // [B1, B5, B6, V3, V7]
13894test { try toAsciiFail("--.xn--rpb6226k77pfh58p", true); } // [B1, B5, B6, V3, V7]
5669test { try toUnicodeFail("\xf2\x9b\xad\xa6\xf0\x90\x8b\xa5\xf0\xb9\xb8\x90.\xe2\x89\xaf\xe0\xa2\xb0\xe0\xa2\xa6\xf3\x94\x9b\xa3"); } // [B1, V7]13895test { try toUnicodeFail("\xf2\x9b\xad\xa6\xf0\x90\x8b\xa5\xf0\xb9\xb8\x90.\xe2\x89\xaf\xe0\xa2\xb0\xe0\xa2\xa6\xf3\x94\x9b\xa3"); } // [B1, V7]
13896test { try toAsciiFail("\xf2\x9b\xad\xa6\xf0\x90\x8b\xa5\xf0\xb9\xb8\x90.\xe2\x89\xaf\xe0\xa2\xb0\xe0\xa2\xa6\xf3\x94\x9b\xa3", false); } // [B1, V7]
13897test { try toAsciiFail("\xf2\x9b\xad\xa6\xf0\x90\x8b\xa5\xf0\xb9\xb8\x90.\xe2\x89\xaf\xe0\xa2\xb0\xe0\xa2\xa6\xf3\x94\x9b\xa3", true); } // [B1, V7]
5670test { try toUnicodeFail("\xf2\x9b\xad\xa6\xf0\x90\x8b\xa5\xf0\xb9\xb8\x90.>\xcc\xb8\xe0\xa2\xb0\xe0\xa2\xa6\xf3\x94\x9b\xa3"); } // [B1, V7]13898test { try toUnicodeFail("\xf2\x9b\xad\xa6\xf0\x90\x8b\xa5\xf0\xb9\xb8\x90.>\xcc\xb8\xe0\xa2\xb0\xe0\xa2\xa6\xf3\x94\x9b\xa3"); } // [B1, V7]
13899test { try toAsciiFail("\xf2\x9b\xad\xa6\xf0\x90\x8b\xa5\xf0\xb9\xb8\x90.>\xcc\xb8\xe0\xa2\xb0\xe0\xa2\xa6\xf3\x94\x9b\xa3", false); } // [B1, V7]
13900test { try toAsciiFail("\xf2\x9b\xad\xa6\xf0\x90\x8b\xa5\xf0\xb9\xb8\x90.>\xcc\xb8\xe0\xa2\xb0\xe0\xa2\xa6\xf3\x94\x9b\xa3", true); } // [B1, V7]
5671test { try toUnicodeFail("xn--887c2298i5mv6a.xn--vybt688qm8981a"); } // [B1, V7]13901test { try toUnicodeFail("xn--887c2298i5mv6a.xn--vybt688qm8981a"); } // [B1, V7]
13902test { try toAsciiFail("xn--887c2298i5mv6a.xn--vybt688qm8981a", false); } // [B1, V7]
13903test { try toAsciiFail("xn--887c2298i5mv6a.xn--vybt688qm8981a", true); } // [B1, V7]
5672test { try toUnicodeFail("\xe4\x94\x9b\xf3\xa0\x87\x92\xf2\xa4\xb8\x9e\xf0\x90\xb9\xa7\xef\xbc\x8e-\xe4\xa4\xb7"); } // [B1, B5, B6, V3, V7]13904test { try toUnicodeFail("\xe4\x94\x9b\xf3\xa0\x87\x92\xf2\xa4\xb8\x9e\xf0\x90\xb9\xa7\xef\xbc\x8e-\xe4\xa4\xb7"); } // [B1, B5, B6, V3, V7]
13905test { try toAsciiFail("\xe4\x94\x9b\xf3\xa0\x87\x92\xf2\xa4\xb8\x9e\xf0\x90\xb9\xa7\xef\xbc\x8e-\xe4\xa4\xb7", false); } // [B1, B5, B6, V3, V7]
13906test { try toAsciiFail("\xe4\x94\x9b\xf3\xa0\x87\x92\xf2\xa4\xb8\x9e\xf0\x90\xb9\xa7\xef\xbc\x8e-\xe4\xa4\xb7", true); } // [B1, B5, B6, V3, V7]
5673test { try toUnicodeFail("\xe4\x94\x9b\xf3\xa0\x87\x92\xf2\xa4\xb8\x9e\xf0\x90\xb9\xa7.-\xe4\xa4\xb7"); } // [B1, B5, B6, V3, V7]13907test { try toUnicodeFail("\xe4\x94\x9b\xf3\xa0\x87\x92\xf2\xa4\xb8\x9e\xf0\x90\xb9\xa7.-\xe4\xa4\xb7"); } // [B1, B5, B6, V3, V7]
13908test { try toAsciiFail("\xe4\x94\x9b\xf3\xa0\x87\x92\xf2\xa4\xb8\x9e\xf0\x90\xb9\xa7.-\xe4\xa4\xb7", false); } // [B1, B5, B6, V3, V7]
13909test { try toAsciiFail("\xe4\x94\x9b\xf3\xa0\x87\x92\xf2\xa4\xb8\x9e\xf0\x90\xb9\xa7.-\xe4\xa4\xb7", true); } // [B1, B5, B6, V3, V7]
5674test { try toUnicodeFail("xn--2loy662coo60e.xn----0n4a"); } // [B1, B5, B6, V3, V7]13910test { try toUnicodeFail("xn--2loy662coo60e.xn----0n4a"); } // [B1, B5, B6, V3, V7]
13911test { try toAsciiFail("xn--2loy662coo60e.xn----0n4a", false); } // [B1, B5, B6, V3, V7]
13912test { try toAsciiFail("xn--2loy662coo60e.xn----0n4a", true); } // [B1, B5, B6, V3, V7]
5675test { try toUnicodeFail("\xf0\x90\xb9\xa9\xef\xbc\x8e\xe2\x80\x8d-"); } // [B1, C2, V3]13913test { try toUnicodeFail("\xf0\x90\xb9\xa9\xef\xbc\x8e\xe2\x80\x8d-"); } // [B1, C2, V3]
13914test { try toAsciiFail("\xf0\x90\xb9\xa9\xef\xbc\x8e\xe2\x80\x8d-", false); } // [B1, C2, V3]
13915test { try toAsciiFail("\xf0\x90\xb9\xa9\xef\xbc\x8e\xe2\x80\x8d-", true); } // [B1, V3]
5676test { try toUnicodeFail("\xf0\x90\xb9\xa9.\xe2\x80\x8d-"); } // [B1, C2, V3]13916test { try toUnicodeFail("\xf0\x90\xb9\xa9.\xe2\x80\x8d-"); } // [B1, C2, V3]
13917test { try toAsciiFail("\xf0\x90\xb9\xa9.\xe2\x80\x8d-", false); } // [B1, C2, V3]
13918test { try toAsciiFail("\xf0\x90\xb9\xa9.\xe2\x80\x8d-", true); } // [B1, V3]
5677test { try toUnicodeFail("xn--ho0d.-"); } // [B1, V3]13919test { try toUnicodeFail("xn--ho0d.-"); } // [B1, V3]
13920test { try toAsciiFail("xn--ho0d.-", false); } // [B1, V3]
13921test { try toAsciiFail("xn--ho0d.-", true); } // [B1, V3]
5678test { try toUnicodeFail("xn--ho0d.xn----tgn"); } // [B1, C2, V3]13922test { try toUnicodeFail("xn--ho0d.xn----tgn"); } // [B1, C2, V3]
13923test { try toAsciiFail("xn--ho0d.xn----tgn", false); } // [B1, C2, V3]
13924test { try toAsciiFail("xn--ho0d.xn----tgn", true); } // [B1, C2, V3]
5679test { try toUnicodeFail("\xf1\x82\x88\xa6\xe5\xb8\xb7\xef\xbd\xa1\xe2\x89\xaf\xe8\x90\xba\xe1\xb7\x88-"); } // [V3, V7]13925test { try toUnicodeFail("\xf1\x82\x88\xa6\xe5\xb8\xb7\xef\xbd\xa1\xe2\x89\xaf\xe8\x90\xba\xe1\xb7\x88-"); } // [V3, V7]
13926test { try toAsciiFail("\xf1\x82\x88\xa6\xe5\xb8\xb7\xef\xbd\xa1\xe2\x89\xaf\xe8\x90\xba\xe1\xb7\x88-", false); } // [V3, V7]
13927test { try toAsciiFail("\xf1\x82\x88\xa6\xe5\xb8\xb7\xef\xbd\xa1\xe2\x89\xaf\xe8\x90\xba\xe1\xb7\x88-", true); } // [V3, V7]
5680test { try toUnicodeFail("\xf1\x82\x88\xa6\xe5\xb8\xb7\xef\xbd\xa1>\xcc\xb8\xe8\x90\xba\xe1\xb7\x88-"); } // [V3, V7]13928test { try toUnicodeFail("\xf1\x82\x88\xa6\xe5\xb8\xb7\xef\xbd\xa1>\xcc\xb8\xe8\x90\xba\xe1\xb7\x88-"); } // [V3, V7]
13929test { try toAsciiFail("\xf1\x82\x88\xa6\xe5\xb8\xb7\xef\xbd\xa1>\xcc\xb8\xe8\x90\xba\xe1\xb7\x88-", false); } // [V3, V7]
13930test { try toAsciiFail("\xf1\x82\x88\xa6\xe5\xb8\xb7\xef\xbd\xa1>\xcc\xb8\xe8\x90\xba\xe1\xb7\x88-", true); } // [V3, V7]
5681test { try toUnicodeFail("\xf1\x82\x88\xa6\xe5\xb8\xb7\xe3\x80\x82\xe2\x89\xaf\xe8\x90\xba\xe1\xb7\x88-"); } // [V3, V7]13931test { try toUnicodeFail("\xf1\x82\x88\xa6\xe5\xb8\xb7\xe3\x80\x82\xe2\x89\xaf\xe8\x90\xba\xe1\xb7\x88-"); } // [V3, V7]
13932test { try toAsciiFail("\xf1\x82\x88\xa6\xe5\xb8\xb7\xe3\x80\x82\xe2\x89\xaf\xe8\x90\xba\xe1\xb7\x88-", false); } // [V3, V7]
13933test { try toAsciiFail("\xf1\x82\x88\xa6\xe5\xb8\xb7\xe3\x80\x82\xe2\x89\xaf\xe8\x90\xba\xe1\xb7\x88-", true); } // [V3, V7]
5682test { try toUnicodeFail("\xf1\x82\x88\xa6\xe5\xb8\xb7\xe3\x80\x82>\xcc\xb8\xe8\x90\xba\xe1\xb7\x88-"); } // [V3, V7]13934test { try toUnicodeFail("\xf1\x82\x88\xa6\xe5\xb8\xb7\xe3\x80\x82>\xcc\xb8\xe8\x90\xba\xe1\xb7\x88-"); } // [V3, V7]
13935test { try toAsciiFail("\xf1\x82\x88\xa6\xe5\xb8\xb7\xe3\x80\x82>\xcc\xb8\xe8\x90\xba\xe1\xb7\x88-", false); } // [V3, V7]
13936test { try toAsciiFail("\xf1\x82\x88\xa6\xe5\xb8\xb7\xe3\x80\x82>\xcc\xb8\xe8\x90\xba\xe1\xb7\x88-", true); } // [V3, V7]
5683test { try toUnicodeFail("xn--qutw175s.xn----mimu6tf67j"); } // [V3, V7]13937test { try toUnicodeFail("xn--qutw175s.xn----mimu6tf67j"); } // [V3, V7]
13938test { try toAsciiFail("xn--qutw175s.xn----mimu6tf67j", false); } // [V3, V7]
13939test { try toAsciiFail("xn--qutw175s.xn----mimu6tf67j", true); } // [V3, V7]
5684test { try toAsciiPass("\xe2\x80\x8d\xe6\x94\x8c\xea\xaf\xad\xe3\x80\x82\xe1\xa2\x96-\xe1\x82\xb8", "xn--p9ut19m.xn----mck373i", true); }13940test { try toAsciiPass("\xe2\x80\x8d\xe6\x94\x8c\xea\xaf\xad\xe3\x80\x82\xe1\xa2\x96-\xe1\x82\xb8", "xn--p9ut19m.xn----mck373i", true); }
5685test { try toUnicodeFail("\xe2\x80\x8d\xe6\x94\x8c\xea\xaf\xad\xe3\x80\x82\xe1\xa2\x96-\xe1\x82\xb8"); } // [C2]13941test { try toUnicodeFail("\xe2\x80\x8d\xe6\x94\x8c\xea\xaf\xad\xe3\x80\x82\xe1\xa2\x96-\xe1\x82\xb8"); } // [C2]
13942test { try toAsciiFail("\xe2\x80\x8d\xe6\x94\x8c\xea\xaf\xad\xe3\x80\x82\xe1\xa2\x96-\xe1\x82\xb8", false); } // [C2]
5686test { try toAsciiPass("\xe2\x80\x8d\xe6\x94\x8c\xea\xaf\xad\xe3\x80\x82\xe1\xa2\x96-\xe2\xb4\x98", "xn--p9ut19m.xn----mck373i", true); }13943test { try toAsciiPass("\xe2\x80\x8d\xe6\x94\x8c\xea\xaf\xad\xe3\x80\x82\xe1\xa2\x96-\xe2\xb4\x98", "xn--p9ut19m.xn----mck373i", true); }
5687test { try toUnicodeFail("\xe2\x80\x8d\xe6\x94\x8c\xea\xaf\xad\xe3\x80\x82\xe1\xa2\x96-\xe2\xb4\x98"); } // [C2]13944test { try toUnicodeFail("\xe2\x80\x8d\xe6\x94\x8c\xea\xaf\xad\xe3\x80\x82\xe1\xa2\x96-\xe2\xb4\x98"); } // [C2]
13945test { try toAsciiFail("\xe2\x80\x8d\xe6\x94\x8c\xea\xaf\xad\xe3\x80\x82\xe1\xa2\x96-\xe2\xb4\x98", false); } // [C2]
5688test { try toUnicodePass("xn--p9ut19m.xn----mck373i", "\xe6\x94\x8c\xea\xaf\xad.\xe1\xa2\x96-\xe2\xb4\x98"); }13946test { try toUnicodePass("xn--p9ut19m.xn----mck373i", "\xe6\x94\x8c\xea\xaf\xad.\xe1\xa2\x96-\xe2\xb4\x98"); }
5689test { try toAsciiPass("xn--p9ut19m.xn----mck373i", "xn--p9ut19m.xn----mck373i", false); }13947test { try toAsciiPass("xn--p9ut19m.xn----mck373i", "xn--p9ut19m.xn----mck373i", false); }
5690test { try toAsciiPass("xn--p9ut19m.xn----mck373i", "xn--p9ut19m.xn----mck373i", true); }13948test { try toAsciiPass("xn--p9ut19m.xn----mck373i", "xn--p9ut19m.xn----mck373i", true); }
...@@ -5695,14 +13953,26 @@ test { try toUnicodePass("\xe6\x94\x8c\xea\xaf\xad.\xe1\xa2\x96-\xe1\x82\xb8", "...@@ -5695,14 +13953,26 @@ test { try toUnicodePass("\xe6\x94\x8c\xea\xaf\xad.\xe1\xa2\x96-\xe1\x82\xb8", "
5695test { try toAsciiPass("\xe6\x94\x8c\xea\xaf\xad.\xe1\xa2\x96-\xe1\x82\xb8", "xn--p9ut19m.xn----mck373i", false); }13953test { try toAsciiPass("\xe6\x94\x8c\xea\xaf\xad.\xe1\xa2\x96-\xe1\x82\xb8", "xn--p9ut19m.xn----mck373i", false); }
5696test { try toAsciiPass("\xe6\x94\x8c\xea\xaf\xad.\xe1\xa2\x96-\xe1\x82\xb8", "xn--p9ut19m.xn----mck373i", true); }13954test { try toAsciiPass("\xe6\x94\x8c\xea\xaf\xad.\xe1\xa2\x96-\xe1\x82\xb8", "xn--p9ut19m.xn----mck373i", true); }
5697test { try toUnicodeFail("xn--1ug592ykp6b.xn----mck373i"); } // [C2]13955test { try toUnicodeFail("xn--1ug592ykp6b.xn----mck373i"); } // [C2]
13956test { try toAsciiFail("xn--1ug592ykp6b.xn----mck373i", false); } // [C2]
13957test { try toAsciiFail("xn--1ug592ykp6b.xn----mck373i", true); } // [C2]
5698test { try toUnicodeFail("xn--p9ut19m.xn----k1g451d"); } // [V7]13958test { try toUnicodeFail("xn--p9ut19m.xn----k1g451d"); } // [V7]
13959test { try toAsciiFail("xn--p9ut19m.xn----k1g451d", false); } // [V7]
13960test { try toAsciiFail("xn--p9ut19m.xn----k1g451d", true); } // [V7]
5699test { try toUnicodeFail("xn--1ug592ykp6b.xn----k1g451d"); } // [C2, V7]13961test { try toUnicodeFail("xn--1ug592ykp6b.xn----k1g451d"); } // [C2, V7]
13962test { try toAsciiFail("xn--1ug592ykp6b.xn----k1g451d", false); } // [C2, V7]
13963test { try toAsciiFail("xn--1ug592ykp6b.xn----k1g451d", true); } // [C2, V7]
5700test { try toUnicodeFail("\xe2\x80\x8c\xea\x96\xa8\xef\xbc\x8e\xe2\x92\x97\xef\xbc\x93\xed\x88\x92\xdb\xb3"); } // [C1, V7]13964test { try toUnicodeFail("\xe2\x80\x8c\xea\x96\xa8\xef\xbc\x8e\xe2\x92\x97\xef\xbc\x93\xed\x88\x92\xdb\xb3"); } // [C1, V7]
13965test { try toAsciiFail("\xe2\x80\x8c\xea\x96\xa8\xef\xbc\x8e\xe2\x92\x97\xef\xbc\x93\xed\x88\x92\xdb\xb3", false); } // [C1, V7]
13966test { try toAsciiFail("\xe2\x80\x8c\xea\x96\xa8\xef\xbc\x8e\xe2\x92\x97\xef\xbc\x93\xed\x88\x92\xdb\xb3", true); } // [V7]
5701test { try toUnicodeFail("\xe2\x80\x8c\xea\x96\xa8\xef\xbc\x8e\xe2\x92\x97\xef\xbc\x93\xe1\x84\x90\xe1\x85\xad\xe1\x86\xa9\xdb\xb3"); } // [C1, V7]13967test { try toUnicodeFail("\xe2\x80\x8c\xea\x96\xa8\xef\xbc\x8e\xe2\x92\x97\xef\xbc\x93\xe1\x84\x90\xe1\x85\xad\xe1\x86\xa9\xdb\xb3"); } // [C1, V7]
13968test { try toAsciiFail("\xe2\x80\x8c\xea\x96\xa8\xef\xbc\x8e\xe2\x92\x97\xef\xbc\x93\xe1\x84\x90\xe1\x85\xad\xe1\x86\xa9\xdb\xb3", false); } // [C1, V7]
13969test { try toAsciiFail("\xe2\x80\x8c\xea\x96\xa8\xef\xbc\x8e\xe2\x92\x97\xef\xbc\x93\xe1\x84\x90\xe1\x85\xad\xe1\x86\xa9\xdb\xb3", true); } // [V7]
5702test { try toAsciiPass("\xe2\x80\x8c\xea\x96\xa8.16.3\xed\x88\x92\xdb\xb3", "xn--9r8a.16.xn--3-nyc0117m", true); }13970test { try toAsciiPass("\xe2\x80\x8c\xea\x96\xa8.16.3\xed\x88\x92\xdb\xb3", "xn--9r8a.16.xn--3-nyc0117m", true); }
5703test { try toUnicodeFail("\xe2\x80\x8c\xea\x96\xa8.16.3\xed\x88\x92\xdb\xb3"); } // [C1]13971test { try toUnicodeFail("\xe2\x80\x8c\xea\x96\xa8.16.3\xed\x88\x92\xdb\xb3"); } // [C1]
13972test { try toAsciiFail("\xe2\x80\x8c\xea\x96\xa8.16.3\xed\x88\x92\xdb\xb3", false); } // [C1]
5704test { try toAsciiPass("\xe2\x80\x8c\xea\x96\xa8.16.3\xe1\x84\x90\xe1\x85\xad\xe1\x86\xa9\xdb\xb3", "xn--9r8a.16.xn--3-nyc0117m", true); }13973test { try toAsciiPass("\xe2\x80\x8c\xea\x96\xa8.16.3\xe1\x84\x90\xe1\x85\xad\xe1\x86\xa9\xdb\xb3", "xn--9r8a.16.xn--3-nyc0117m", true); }
5705test { try toUnicodeFail("\xe2\x80\x8c\xea\x96\xa8.16.3\xe1\x84\x90\xe1\x85\xad\xe1\x86\xa9\xdb\xb3"); } // [C1]13974test { try toUnicodeFail("\xe2\x80\x8c\xea\x96\xa8.16.3\xe1\x84\x90\xe1\x85\xad\xe1\x86\xa9\xdb\xb3"); } // [C1]
13975test { try toAsciiFail("\xe2\x80\x8c\xea\x96\xa8.16.3\xe1\x84\x90\xe1\x85\xad\xe1\x86\xa9\xdb\xb3", false); } // [C1]
5706test { try toUnicodePass("xn--9r8a.16.xn--3-nyc0117m", "\xea\x96\xa8.16.3\xed\x88\x92\xdb\xb3"); }13976test { try toUnicodePass("xn--9r8a.16.xn--3-nyc0117m", "\xea\x96\xa8.16.3\xed\x88\x92\xdb\xb3"); }
5707test { try toAsciiPass("xn--9r8a.16.xn--3-nyc0117m", "xn--9r8a.16.xn--3-nyc0117m", false); }13977test { try toAsciiPass("xn--9r8a.16.xn--3-nyc0117m", "xn--9r8a.16.xn--3-nyc0117m", false); }
5708test { try toAsciiPass("xn--9r8a.16.xn--3-nyc0117m", "xn--9r8a.16.xn--3-nyc0117m", true); }13978test { try toAsciiPass("xn--9r8a.16.xn--3-nyc0117m", "xn--9r8a.16.xn--3-nyc0117m", true); }
...@@ -5713,172 +13983,506 @@ test { try toUnicodePass("\xea\x96\xa8.16.3\xe1\x84\x90\xe1\x85\xad\xe1\x86\xa9\...@@ -5713,172 +13983,506 @@ test { try toUnicodePass("\xea\x96\xa8.16.3\xe1\x84\x90\xe1\x85\xad\xe1\x86\xa9\
5713test { try toAsciiPass("\xea\x96\xa8.16.3\xe1\x84\x90\xe1\x85\xad\xe1\x86\xa9\xdb\xb3", "xn--9r8a.16.xn--3-nyc0117m", false); }13983test { try toAsciiPass("\xea\x96\xa8.16.3\xe1\x84\x90\xe1\x85\xad\xe1\x86\xa9\xdb\xb3", "xn--9r8a.16.xn--3-nyc0117m", false); }
5714test { try toAsciiPass("\xea\x96\xa8.16.3\xe1\x84\x90\xe1\x85\xad\xe1\x86\xa9\xdb\xb3", "xn--9r8a.16.xn--3-nyc0117m", true); }13984test { try toAsciiPass("\xea\x96\xa8.16.3\xe1\x84\x90\xe1\x85\xad\xe1\x86\xa9\xdb\xb3", "xn--9r8a.16.xn--3-nyc0117m", true); }
5715test { try toUnicodeFail("xn--0ug2473c.16.xn--3-nyc0117m"); } // [C1]13985test { try toUnicodeFail("xn--0ug2473c.16.xn--3-nyc0117m"); } // [C1]
13986test { try toAsciiFail("xn--0ug2473c.16.xn--3-nyc0117m", false); } // [C1]
13987test { try toAsciiFail("xn--0ug2473c.16.xn--3-nyc0117m", true); } // [C1]
5716test { try toUnicodeFail("xn--9r8a.xn--3-nyc678tu07m"); } // [V7]13988test { try toUnicodeFail("xn--9r8a.xn--3-nyc678tu07m"); } // [V7]
13989test { try toAsciiFail("xn--9r8a.xn--3-nyc678tu07m", false); } // [V7]
13990test { try toAsciiFail("xn--9r8a.xn--3-nyc678tu07m", true); } // [V7]
5717test { try toUnicodeFail("xn--0ug2473c.xn--3-nyc678tu07m"); } // [C1, V7]13991test { try toUnicodeFail("xn--0ug2473c.xn--3-nyc678tu07m"); } // [C1, V7]
13992test { try toAsciiFail("xn--0ug2473c.xn--3-nyc678tu07m", false); } // [C1, V7]
13993test { try toAsciiFail("xn--0ug2473c.xn--3-nyc678tu07m", true); } // [C1, V7]
5718test { try toUnicodeFail("\xe2\x92\x88\xea\xb1\xbe6.\xf0\x90\xb1\x81\xdb\x90"); } // [B1, V7]13994test { try toUnicodeFail("\xe2\x92\x88\xea\xb1\xbe6.\xf0\x90\xb1\x81\xdb\x90"); } // [B1, V7]
13995test { try toAsciiFail("\xe2\x92\x88\xea\xb1\xbe6.\xf0\x90\xb1\x81\xdb\x90", false); } // [B1, V7]
13996test { try toAsciiFail("\xe2\x92\x88\xea\xb1\xbe6.\xf0\x90\xb1\x81\xdb\x90", true); } // [B1, V7]
5719test { try toUnicodeFail("\xe2\x92\x88\xe1\x84\x80\xe1\x85\xa5\xe1\x86\xb56.\xf0\x90\xb1\x81\xdb\x90"); } // [B1, V7]13997test { try toUnicodeFail("\xe2\x92\x88\xe1\x84\x80\xe1\x85\xa5\xe1\x86\xb56.\xf0\x90\xb1\x81\xdb\x90"); } // [B1, V7]
13998test { try toAsciiFail("\xe2\x92\x88\xe1\x84\x80\xe1\x85\xa5\xe1\x86\xb56.\xf0\x90\xb1\x81\xdb\x90", false); } // [B1, V7]
13999test { try toAsciiFail("\xe2\x92\x88\xe1\x84\x80\xe1\x85\xa5\xe1\x86\xb56.\xf0\x90\xb1\x81\xdb\x90", true); } // [B1, V7]
5720test { try toUnicodeFail("1.\xea\xb1\xbe6.\xf0\x90\xb1\x81\xdb\x90"); } // [B1]14000test { try toUnicodeFail("1.\xea\xb1\xbe6.\xf0\x90\xb1\x81\xdb\x90"); } // [B1]
14001test { try toAsciiFail("1.\xea\xb1\xbe6.\xf0\x90\xb1\x81\xdb\x90", false); } // [B1]
14002test { try toAsciiFail("1.\xea\xb1\xbe6.\xf0\x90\xb1\x81\xdb\x90", true); } // [B1]
5721test { try toUnicodeFail("1.\xe1\x84\x80\xe1\x85\xa5\xe1\x86\xb56.\xf0\x90\xb1\x81\xdb\x90"); } // [B1]14003test { try toUnicodeFail("1.\xe1\x84\x80\xe1\x85\xa5\xe1\x86\xb56.\xf0\x90\xb1\x81\xdb\x90"); } // [B1]
14004test { try toAsciiFail("1.\xe1\x84\x80\xe1\x85\xa5\xe1\x86\xb56.\xf0\x90\xb1\x81\xdb\x90", false); } // [B1]
14005test { try toAsciiFail("1.\xe1\x84\x80\xe1\x85\xa5\xe1\x86\xb56.\xf0\x90\xb1\x81\xdb\x90", true); } // [B1]
5722test { try toUnicodeFail("1.xn--6-945e.xn--glb1794k"); } // [B1]14006test { try toUnicodeFail("1.xn--6-945e.xn--glb1794k"); } // [B1]
14007test { try toAsciiFail("1.xn--6-945e.xn--glb1794k", false); } // [B1]
14008test { try toAsciiFail("1.xn--6-945e.xn--glb1794k", true); } // [B1]
5723test { try toUnicodeFail("xn--6-dcps419c.xn--glb1794k"); } // [B1, V7]14009test { try toUnicodeFail("xn--6-dcps419c.xn--glb1794k"); } // [B1, V7]
14010test { try toAsciiFail("xn--6-dcps419c.xn--glb1794k", false); } // [B1, V7]
14011test { try toAsciiFail("xn--6-dcps419c.xn--glb1794k", true); } // [B1, V7]
5724test { try toUnicodeFail("\xf0\x90\xb2\x9e\xf0\x9d\x9f\xb6\xe2\x89\xae\xe2\x89\xae.\xf3\xa0\x80\xa7\xd8\xb9"); } // [B1, B3, V7]14012test { try toUnicodeFail("\xf0\x90\xb2\x9e\xf0\x9d\x9f\xb6\xe2\x89\xae\xe2\x89\xae.\xf3\xa0\x80\xa7\xd8\xb9"); } // [B1, B3, V7]
14013test { try toAsciiFail("\xf0\x90\xb2\x9e\xf0\x9d\x9f\xb6\xe2\x89\xae\xe2\x89\xae.\xf3\xa0\x80\xa7\xd8\xb9", false); } // [B1, B3, V7]
14014test { try toAsciiFail("\xf0\x90\xb2\x9e\xf0\x9d\x9f\xb6\xe2\x89\xae\xe2\x89\xae.\xf3\xa0\x80\xa7\xd8\xb9", true); } // [B1, B3, V7]
5725test { try toUnicodeFail("\xf0\x90\xb2\x9e\xf0\x9d\x9f\xb6<\xcc\xb8<\xcc\xb8.\xf3\xa0\x80\xa7\xd8\xb9"); } // [B1, B3, V7]14015test { try toUnicodeFail("\xf0\x90\xb2\x9e\xf0\x9d\x9f\xb6<\xcc\xb8<\xcc\xb8.\xf3\xa0\x80\xa7\xd8\xb9"); } // [B1, B3, V7]
14016test { try toAsciiFail("\xf0\x90\xb2\x9e\xf0\x9d\x9f\xb6<\xcc\xb8<\xcc\xb8.\xf3\xa0\x80\xa7\xd8\xb9", false); } // [B1, B3, V7]
14017test { try toAsciiFail("\xf0\x90\xb2\x9e\xf0\x9d\x9f\xb6<\xcc\xb8<\xcc\xb8.\xf3\xa0\x80\xa7\xd8\xb9", true); } // [B1, B3, V7]
5726test { try toUnicodeFail("\xf0\x90\xb2\x9e0\xe2\x89\xae\xe2\x89\xae.\xf3\xa0\x80\xa7\xd8\xb9"); } // [B1, B3, V7]14018test { try toUnicodeFail("\xf0\x90\xb2\x9e0\xe2\x89\xae\xe2\x89\xae.\xf3\xa0\x80\xa7\xd8\xb9"); } // [B1, B3, V7]
14019test { try toAsciiFail("\xf0\x90\xb2\x9e0\xe2\x89\xae\xe2\x89\xae.\xf3\xa0\x80\xa7\xd8\xb9", false); } // [B1, B3, V7]
14020test { try toAsciiFail("\xf0\x90\xb2\x9e0\xe2\x89\xae\xe2\x89\xae.\xf3\xa0\x80\xa7\xd8\xb9", true); } // [B1, B3, V7]
5727test { try toUnicodeFail("\xf0\x90\xb2\x9e0<\xcc\xb8<\xcc\xb8.\xf3\xa0\x80\xa7\xd8\xb9"); } // [B1, B3, V7]14021test { try toUnicodeFail("\xf0\x90\xb2\x9e0<\xcc\xb8<\xcc\xb8.\xf3\xa0\x80\xa7\xd8\xb9"); } // [B1, B3, V7]
14022test { try toAsciiFail("\xf0\x90\xb2\x9e0<\xcc\xb8<\xcc\xb8.\xf3\xa0\x80\xa7\xd8\xb9", false); } // [B1, B3, V7]
14023test { try toAsciiFail("\xf0\x90\xb2\x9e0<\xcc\xb8<\xcc\xb8.\xf3\xa0\x80\xa7\xd8\xb9", true); } // [B1, B3, V7]
5728test { try toUnicodeFail("\xf0\x90\xb3\x9e0<\xcc\xb8<\xcc\xb8.\xf3\xa0\x80\xa7\xd8\xb9"); } // [B1, B3, V7]14024test { try toUnicodeFail("\xf0\x90\xb3\x9e0<\xcc\xb8<\xcc\xb8.\xf3\xa0\x80\xa7\xd8\xb9"); } // [B1, B3, V7]
14025test { try toAsciiFail("\xf0\x90\xb3\x9e0<\xcc\xb8<\xcc\xb8.\xf3\xa0\x80\xa7\xd8\xb9", false); } // [B1, B3, V7]
14026test { try toAsciiFail("\xf0\x90\xb3\x9e0<\xcc\xb8<\xcc\xb8.\xf3\xa0\x80\xa7\xd8\xb9", true); } // [B1, B3, V7]
5729test { try toUnicodeFail("\xf0\x90\xb3\x9e0\xe2\x89\xae\xe2\x89\xae.\xf3\xa0\x80\xa7\xd8\xb9"); } // [B1, B3, V7]14027test { try toUnicodeFail("\xf0\x90\xb3\x9e0\xe2\x89\xae\xe2\x89\xae.\xf3\xa0\x80\xa7\xd8\xb9"); } // [B1, B3, V7]
14028test { try toAsciiFail("\xf0\x90\xb3\x9e0\xe2\x89\xae\xe2\x89\xae.\xf3\xa0\x80\xa7\xd8\xb9", false); } // [B1, B3, V7]
14029test { try toAsciiFail("\xf0\x90\xb3\x9e0\xe2\x89\xae\xe2\x89\xae.\xf3\xa0\x80\xa7\xd8\xb9", true); } // [B1, B3, V7]
5730test { try toUnicodeFail("xn--0-ngoa5711v.xn--4gb31034p"); } // [B1, B3, V7]14030test { try toUnicodeFail("xn--0-ngoa5711v.xn--4gb31034p"); } // [B1, B3, V7]
14031test { try toAsciiFail("xn--0-ngoa5711v.xn--4gb31034p", false); } // [B1, B3, V7]
14032test { try toAsciiFail("xn--0-ngoa5711v.xn--4gb31034p", true); } // [B1, B3, V7]
5731test { try toUnicodeFail("\xf0\x90\xb3\x9e\xf0\x9d\x9f\xb6<\xcc\xb8<\xcc\xb8.\xf3\xa0\x80\xa7\xd8\xb9"); } // [B1, B3, V7]14033test { try toUnicodeFail("\xf0\x90\xb3\x9e\xf0\x9d\x9f\xb6<\xcc\xb8<\xcc\xb8.\xf3\xa0\x80\xa7\xd8\xb9"); } // [B1, B3, V7]
14034test { try toAsciiFail("\xf0\x90\xb3\x9e\xf0\x9d\x9f\xb6<\xcc\xb8<\xcc\xb8.\xf3\xa0\x80\xa7\xd8\xb9", false); } // [B1, B3, V7]
14035test { try toAsciiFail("\xf0\x90\xb3\x9e\xf0\x9d\x9f\xb6<\xcc\xb8<\xcc\xb8.\xf3\xa0\x80\xa7\xd8\xb9", true); } // [B1, B3, V7]
5732test { try toUnicodeFail("\xf0\x90\xb3\x9e\xf0\x9d\x9f\xb6\xe2\x89\xae\xe2\x89\xae.\xf3\xa0\x80\xa7\xd8\xb9"); } // [B1, B3, V7]14036test { try toUnicodeFail("\xf0\x90\xb3\x9e\xf0\x9d\x9f\xb6\xe2\x89\xae\xe2\x89\xae.\xf3\xa0\x80\xa7\xd8\xb9"); } // [B1, B3, V7]
14037test { try toAsciiFail("\xf0\x90\xb3\x9e\xf0\x9d\x9f\xb6\xe2\x89\xae\xe2\x89\xae.\xf3\xa0\x80\xa7\xd8\xb9", false); } // [B1, B3, V7]
14038test { try toAsciiFail("\xf0\x90\xb3\x9e\xf0\x9d\x9f\xb6\xe2\x89\xae\xe2\x89\xae.\xf3\xa0\x80\xa7\xd8\xb9", true); } // [B1, B3, V7]
5733test { try toUnicodeFail("\xe0\xab\xa3.\xf0\x90\xb9\xba\xe1\x85\x9f"); } // [B1, V6]14039test { try toUnicodeFail("\xe0\xab\xa3.\xf0\x90\xb9\xba\xe1\x85\x9f"); } // [B1, V6]
14040test { try toAsciiFail("\xe0\xab\xa3.\xf0\x90\xb9\xba\xe1\x85\x9f", false); } // [B1, V6]
14041test { try toAsciiFail("\xe0\xab\xa3.\xf0\x90\xb9\xba\xe1\x85\x9f", true); } // [B1, V6]
5734test { try toUnicodeFail("xn--8fc.xn--yo0d"); } // [B1, V6]14042test { try toUnicodeFail("xn--8fc.xn--yo0d"); } // [B1, V6]
14043test { try toAsciiFail("xn--8fc.xn--yo0d", false); } // [B1, V6]
14044test { try toAsciiFail("xn--8fc.xn--yo0d", true); } // [B1, V6]
5735test { try toUnicodeFail("xn--8fc.xn--osd3070k"); } // [B1, V6, V7]14045test { try toUnicodeFail("xn--8fc.xn--osd3070k"); } // [B1, V6, V7]
14046test { try toAsciiFail("xn--8fc.xn--osd3070k", false); } // [B1, V6, V7]
14047test { try toAsciiFail("xn--8fc.xn--osd3070k", true); } // [B1, V6, V7]
5736test { try toUnicodeFail("\xf0\x9d\x9f\x8f\xf0\x9d\xa8\x99\xe2\xb8\x96.\xe2\x80\x8d"); } // [C2]14048test { try toUnicodeFail("\xf0\x9d\x9f\x8f\xf0\x9d\xa8\x99\xe2\xb8\x96.\xe2\x80\x8d"); } // [C2]
14049test { try toAsciiFail("\xf0\x9d\x9f\x8f\xf0\x9d\xa8\x99\xe2\xb8\x96.\xe2\x80\x8d", false); } // [C2]
14050test { try toAsciiFail("\xf0\x9d\x9f\x8f\xf0\x9d\xa8\x99\xe2\xb8\x96.\xe2\x80\x8d", true); } // [A4_2]
5737test { try toUnicodeFail("1\xf0\x9d\xa8\x99\xe2\xb8\x96.\xe2\x80\x8d"); } // [C2]14051test { try toUnicodeFail("1\xf0\x9d\xa8\x99\xe2\xb8\x96.\xe2\x80\x8d"); } // [C2]
14052test { try toAsciiFail("1\xf0\x9d\xa8\x99\xe2\xb8\x96.\xe2\x80\x8d", false); } // [C2]
14053test { try toAsciiFail("1\xf0\x9d\xa8\x99\xe2\xb8\x96.\xe2\x80\x8d", true); } // [A4_2]
5738test { try toUnicodePass("xn--1-5bt6845n.", "1\xf0\x9d\xa8\x99\xe2\xb8\x96."); }14054test { try toUnicodePass("xn--1-5bt6845n.", "1\xf0\x9d\xa8\x99\xe2\xb8\x96."); }
14055test { try toAsciiFail("xn--1-5bt6845n.", false); } // [A4_2]
14056test { try toAsciiFail("xn--1-5bt6845n.", true); } // [A4_2]
5739test { try toUnicodePass("1\xf0\x9d\xa8\x99\xe2\xb8\x96.", "1\xf0\x9d\xa8\x99\xe2\xb8\x96."); }14057test { try toUnicodePass("1\xf0\x9d\xa8\x99\xe2\xb8\x96.", "1\xf0\x9d\xa8\x99\xe2\xb8\x96."); }
14058test { try toAsciiFail("1\xf0\x9d\xa8\x99\xe2\xb8\x96.", false); } // [A4_2]
14059test { try toAsciiFail("1\xf0\x9d\xa8\x99\xe2\xb8\x96.", true); } // [A4_2]
5740test { try toUnicodeFail("xn--1-5bt6845n.xn--1ug"); } // [C2]14060test { try toUnicodeFail("xn--1-5bt6845n.xn--1ug"); } // [C2]
14061test { try toAsciiFail("xn--1-5bt6845n.xn--1ug", false); } // [C2]
14062test { try toAsciiFail("xn--1-5bt6845n.xn--1ug", true); } // [C2]
5741test { try toUnicodeFail("\xf0\x9e\xa4\x90\xe2\x89\xa0\xdc\xa6\xe1\xa9\xa0\xef\xbd\xa1-\xe2\x80\x8c\xdf\x95"); } // [B1, C1, V3]14063test { try toUnicodeFail("\xf0\x9e\xa4\x90\xe2\x89\xa0\xdc\xa6\xe1\xa9\xa0\xef\xbd\xa1-\xe2\x80\x8c\xdf\x95"); } // [B1, C1, V3]
14064test { try toAsciiFail("\xf0\x9e\xa4\x90\xe2\x89\xa0\xdc\xa6\xe1\xa9\xa0\xef\xbd\xa1-\xe2\x80\x8c\xdf\x95", false); } // [B1, C1, V3]
14065test { try toAsciiFail("\xf0\x9e\xa4\x90\xe2\x89\xa0\xdc\xa6\xe1\xa9\xa0\xef\xbd\xa1-\xe2\x80\x8c\xdf\x95", true); } // [B1, V3]
5742test { try toUnicodeFail("\xf0\x9e\xa4\x90=\xcc\xb8\xdc\xa6\xe1\xa9\xa0\xef\xbd\xa1-\xe2\x80\x8c\xdf\x95"); } // [B1, C1, V3]14066test { try toUnicodeFail("\xf0\x9e\xa4\x90=\xcc\xb8\xdc\xa6\xe1\xa9\xa0\xef\xbd\xa1-\xe2\x80\x8c\xdf\x95"); } // [B1, C1, V3]
14067test { try toAsciiFail("\xf0\x9e\xa4\x90=\xcc\xb8\xdc\xa6\xe1\xa9\xa0\xef\xbd\xa1-\xe2\x80\x8c\xdf\x95", false); } // [B1, C1, V3]
14068test { try toAsciiFail("\xf0\x9e\xa4\x90=\xcc\xb8\xdc\xa6\xe1\xa9\xa0\xef\xbd\xa1-\xe2\x80\x8c\xdf\x95", true); } // [B1, V3]
5743test { try toUnicodeFail("\xf0\x9e\xa4\x90\xe2\x89\xa0\xdc\xa6\xe1\xa9\xa0\xe3\x80\x82-\xe2\x80\x8c\xdf\x95"); } // [B1, C1, V3]14069test { try toUnicodeFail("\xf0\x9e\xa4\x90\xe2\x89\xa0\xdc\xa6\xe1\xa9\xa0\xe3\x80\x82-\xe2\x80\x8c\xdf\x95"); } // [B1, C1, V3]
14070test { try toAsciiFail("\xf0\x9e\xa4\x90\xe2\x89\xa0\xdc\xa6\xe1\xa9\xa0\xe3\x80\x82-\xe2\x80\x8c\xdf\x95", false); } // [B1, C1, V3]
14071test { try toAsciiFail("\xf0\x9e\xa4\x90\xe2\x89\xa0\xdc\xa6\xe1\xa9\xa0\xe3\x80\x82-\xe2\x80\x8c\xdf\x95", true); } // [B1, V3]
5744test { try toUnicodeFail("\xf0\x9e\xa4\x90=\xcc\xb8\xdc\xa6\xe1\xa9\xa0\xe3\x80\x82-\xe2\x80\x8c\xdf\x95"); } // [B1, C1, V3]14072test { try toUnicodeFail("\xf0\x9e\xa4\x90=\xcc\xb8\xdc\xa6\xe1\xa9\xa0\xe3\x80\x82-\xe2\x80\x8c\xdf\x95"); } // [B1, C1, V3]
14073test { try toAsciiFail("\xf0\x9e\xa4\x90=\xcc\xb8\xdc\xa6\xe1\xa9\xa0\xe3\x80\x82-\xe2\x80\x8c\xdf\x95", false); } // [B1, C1, V3]
14074test { try toAsciiFail("\xf0\x9e\xa4\x90=\xcc\xb8\xdc\xa6\xe1\xa9\xa0\xe3\x80\x82-\xe2\x80\x8c\xdf\x95", true); } // [B1, V3]
5745test { try toUnicodeFail("\xf0\x9e\xa4\xb2=\xcc\xb8\xdc\xa6\xe1\xa9\xa0\xe3\x80\x82-\xe2\x80\x8c\xdf\x95"); } // [B1, C1, V3]14075test { try toUnicodeFail("\xf0\x9e\xa4\xb2=\xcc\xb8\xdc\xa6\xe1\xa9\xa0\xe3\x80\x82-\xe2\x80\x8c\xdf\x95"); } // [B1, C1, V3]
14076test { try toAsciiFail("\xf0\x9e\xa4\xb2=\xcc\xb8\xdc\xa6\xe1\xa9\xa0\xe3\x80\x82-\xe2\x80\x8c\xdf\x95", false); } // [B1, C1, V3]
14077test { try toAsciiFail("\xf0\x9e\xa4\xb2=\xcc\xb8\xdc\xa6\xe1\xa9\xa0\xe3\x80\x82-\xe2\x80\x8c\xdf\x95", true); } // [B1, V3]
5746test { try toUnicodeFail("\xf0\x9e\xa4\xb2\xe2\x89\xa0\xdc\xa6\xe1\xa9\xa0\xe3\x80\x82-\xe2\x80\x8c\xdf\x95"); } // [B1, C1, V3]14078test { try toUnicodeFail("\xf0\x9e\xa4\xb2\xe2\x89\xa0\xdc\xa6\xe1\xa9\xa0\xe3\x80\x82-\xe2\x80\x8c\xdf\x95"); } // [B1, C1, V3]
14079test { try toAsciiFail("\xf0\x9e\xa4\xb2\xe2\x89\xa0\xdc\xa6\xe1\xa9\xa0\xe3\x80\x82-\xe2\x80\x8c\xdf\x95", false); } // [B1, C1, V3]
14080test { try toAsciiFail("\xf0\x9e\xa4\xb2\xe2\x89\xa0\xdc\xa6\xe1\xa9\xa0\xe3\x80\x82-\xe2\x80\x8c\xdf\x95", true); } // [B1, V3]
5747test { try toUnicodeFail("xn--wnb859grzfzw60c.xn----kcd"); } // [B1, V3]14081test { try toUnicodeFail("xn--wnb859grzfzw60c.xn----kcd"); } // [B1, V3]
14082test { try toAsciiFail("xn--wnb859grzfzw60c.xn----kcd", false); } // [B1, V3]
14083test { try toAsciiFail("xn--wnb859grzfzw60c.xn----kcd", true); } // [B1, V3]
5748test { try toUnicodeFail("xn--wnb859grzfzw60c.xn----kcd017p"); } // [B1, C1, V3]14084test { try toUnicodeFail("xn--wnb859grzfzw60c.xn----kcd017p"); } // [B1, C1, V3]
14085test { try toAsciiFail("xn--wnb859grzfzw60c.xn----kcd017p", false); } // [B1, C1, V3]
14086test { try toAsciiFail("xn--wnb859grzfzw60c.xn----kcd017p", true); } // [B1, C1, V3]
5749test { try toUnicodeFail("\xf0\x9e\xa4\xb2=\xcc\xb8\xdc\xa6\xe1\xa9\xa0\xef\xbd\xa1-\xe2\x80\x8c\xdf\x95"); } // [B1, C1, V3]14087test { try toUnicodeFail("\xf0\x9e\xa4\xb2=\xcc\xb8\xdc\xa6\xe1\xa9\xa0\xef\xbd\xa1-\xe2\x80\x8c\xdf\x95"); } // [B1, C1, V3]
14088test { try toAsciiFail("\xf0\x9e\xa4\xb2=\xcc\xb8\xdc\xa6\xe1\xa9\xa0\xef\xbd\xa1-\xe2\x80\x8c\xdf\x95", false); } // [B1, C1, V3]
14089test { try toAsciiFail("\xf0\x9e\xa4\xb2=\xcc\xb8\xdc\xa6\xe1\xa9\xa0\xef\xbd\xa1-\xe2\x80\x8c\xdf\x95", true); } // [B1, V3]
5750test { try toUnicodeFail("\xf0\x9e\xa4\xb2\xe2\x89\xa0\xdc\xa6\xe1\xa9\xa0\xef\xbd\xa1-\xe2\x80\x8c\xdf\x95"); } // [B1, C1, V3]14090test { try toUnicodeFail("\xf0\x9e\xa4\xb2\xe2\x89\xa0\xdc\xa6\xe1\xa9\xa0\xef\xbd\xa1-\xe2\x80\x8c\xdf\x95"); } // [B1, C1, V3]
14091test { try toAsciiFail("\xf0\x9e\xa4\xb2\xe2\x89\xa0\xdc\xa6\xe1\xa9\xa0\xef\xbd\xa1-\xe2\x80\x8c\xdf\x95", false); } // [B1, C1, V3]
14092test { try toAsciiFail("\xf0\x9e\xa4\xb2\xe2\x89\xa0\xdc\xa6\xe1\xa9\xa0\xef\xbd\xa1-\xe2\x80\x8c\xdf\x95", true); } // [B1, V3]
5751test { try toUnicodeFail("\xf0\x90\xb9\xb0\xcd\xa8-\xea\xa1\xa7\xef\xbd\xa1\xd9\xb5"); } // [B1]14093test { try toUnicodeFail("\xf0\x90\xb9\xb0\xcd\xa8-\xea\xa1\xa7\xef\xbd\xa1\xd9\xb5"); } // [B1]
14094test { try toAsciiFail("\xf0\x90\xb9\xb0\xcd\xa8-\xea\xa1\xa7\xef\xbd\xa1\xd9\xb5", false); } // [B1]
14095test { try toAsciiFail("\xf0\x90\xb9\xb0\xcd\xa8-\xea\xa1\xa7\xef\xbd\xa1\xd9\xb5", true); } // [B1]
5752test { try toUnicodeFail("\xf0\x90\xb9\xb0\xcd\xa8-\xea\xa1\xa7\xe3\x80\x82\xd8\xa7\xd9\xb4"); } // [B1]14096test { try toUnicodeFail("\xf0\x90\xb9\xb0\xcd\xa8-\xea\xa1\xa7\xe3\x80\x82\xd8\xa7\xd9\xb4"); } // [B1]
14097test { try toAsciiFail("\xf0\x90\xb9\xb0\xcd\xa8-\xea\xa1\xa7\xe3\x80\x82\xd8\xa7\xd9\xb4", false); } // [B1]
14098test { try toAsciiFail("\xf0\x90\xb9\xb0\xcd\xa8-\xea\xa1\xa7\xe3\x80\x82\xd8\xa7\xd9\xb4", true); } // [B1]
5753test { try toUnicodeFail("xn----shb2387jgkqd.xn--mgb8m"); } // [B1]14099test { try toUnicodeFail("xn----shb2387jgkqd.xn--mgb8m"); } // [B1]
14100test { try toAsciiFail("xn----shb2387jgkqd.xn--mgb8m", false); } // [B1]
14101test { try toAsciiFail("xn----shb2387jgkqd.xn--mgb8m", true); } // [B1]
5754test { try toUnicodeFail("F\xf3\xa0\x85\x9f\xef\xbd\xa1\xf2\x8f\x97\x85\xe2\x99\x9a"); } // [V7]14102test { try toUnicodeFail("F\xf3\xa0\x85\x9f\xef\xbd\xa1\xf2\x8f\x97\x85\xe2\x99\x9a"); } // [V7]
14103test { try toAsciiFail("F\xf3\xa0\x85\x9f\xef\xbd\xa1\xf2\x8f\x97\x85\xe2\x99\x9a", false); } // [V7]
14104test { try toAsciiFail("F\xf3\xa0\x85\x9f\xef\xbd\xa1\xf2\x8f\x97\x85\xe2\x99\x9a", true); } // [V7]
5755test { try toUnicodeFail("F\xf3\xa0\x85\x9f\xe3\x80\x82\xf2\x8f\x97\x85\xe2\x99\x9a"); } // [V7]14105test { try toUnicodeFail("F\xf3\xa0\x85\x9f\xe3\x80\x82\xf2\x8f\x97\x85\xe2\x99\x9a"); } // [V7]
14106test { try toAsciiFail("F\xf3\xa0\x85\x9f\xe3\x80\x82\xf2\x8f\x97\x85\xe2\x99\x9a", false); } // [V7]
14107test { try toAsciiFail("F\xf3\xa0\x85\x9f\xe3\x80\x82\xf2\x8f\x97\x85\xe2\x99\x9a", true); } // [V7]
5756test { try toUnicodeFail("f\xf3\xa0\x85\x9f\xe3\x80\x82\xf2\x8f\x97\x85\xe2\x99\x9a"); } // [V7]14108test { try toUnicodeFail("f\xf3\xa0\x85\x9f\xe3\x80\x82\xf2\x8f\x97\x85\xe2\x99\x9a"); } // [V7]
14109test { try toAsciiFail("f\xf3\xa0\x85\x9f\xe3\x80\x82\xf2\x8f\x97\x85\xe2\x99\x9a", false); } // [V7]
14110test { try toAsciiFail("f\xf3\xa0\x85\x9f\xe3\x80\x82\xf2\x8f\x97\x85\xe2\x99\x9a", true); } // [V7]
5757test { try toUnicodeFail("f.xn--45hz6953f"); } // [V7]14111test { try toUnicodeFail("f.xn--45hz6953f"); } // [V7]
14112test { try toAsciiFail("f.xn--45hz6953f", false); } // [V7]
14113test { try toAsciiFail("f.xn--45hz6953f", true); } // [V7]
5758test { try toUnicodeFail("f\xf3\xa0\x85\x9f\xef\xbd\xa1\xf2\x8f\x97\x85\xe2\x99\x9a"); } // [V7]14114test { try toUnicodeFail("f\xf3\xa0\x85\x9f\xef\xbd\xa1\xf2\x8f\x97\x85\xe2\x99\x9a"); } // [V7]
14115test { try toAsciiFail("f\xf3\xa0\x85\x9f\xef\xbd\xa1\xf2\x8f\x97\x85\xe2\x99\x9a", false); } // [V7]
14116test { try toAsciiFail("f\xf3\xa0\x85\x9f\xef\xbd\xa1\xf2\x8f\x97\x85\xe2\x99\x9a", true); } // [V7]
5759test { try toUnicodeFail("\xe0\xad\x8d\xf0\x91\x84\xb4\xe1\xb7\xa9\xe3\x80\x82\xf0\x9d\x9f\xae\xe1\x82\xb8\xf0\x9e\x80\xa8\xf1\x83\xa5\x87"); } // [V6, V7]14117test { try toUnicodeFail("\xe0\xad\x8d\xf0\x91\x84\xb4\xe1\xb7\xa9\xe3\x80\x82\xf0\x9d\x9f\xae\xe1\x82\xb8\xf0\x9e\x80\xa8\xf1\x83\xa5\x87"); } // [V6, V7]
14118test { try toAsciiFail("\xe0\xad\x8d\xf0\x91\x84\xb4\xe1\xb7\xa9\xe3\x80\x82\xf0\x9d\x9f\xae\xe1\x82\xb8\xf0\x9e\x80\xa8\xf1\x83\xa5\x87", false); } // [V6, V7]
14119test { try toAsciiFail("\xe0\xad\x8d\xf0\x91\x84\xb4\xe1\xb7\xa9\xe3\x80\x82\xf0\x9d\x9f\xae\xe1\x82\xb8\xf0\x9e\x80\xa8\xf1\x83\xa5\x87", true); } // [V6, V7]
5760test { try toUnicodeFail("\xe0\xad\x8d\xf0\x91\x84\xb4\xe1\xb7\xa9\xe3\x80\x822\xe1\x82\xb8\xf0\x9e\x80\xa8\xf1\x83\xa5\x87"); } // [V6, V7]14120test { try toUnicodeFail("\xe0\xad\x8d\xf0\x91\x84\xb4\xe1\xb7\xa9\xe3\x80\x822\xe1\x82\xb8\xf0\x9e\x80\xa8\xf1\x83\xa5\x87"); } // [V6, V7]
14121test { try toAsciiFail("\xe0\xad\x8d\xf0\x91\x84\xb4\xe1\xb7\xa9\xe3\x80\x822\xe1\x82\xb8\xf0\x9e\x80\xa8\xf1\x83\xa5\x87", false); } // [V6, V7]
14122test { try toAsciiFail("\xe0\xad\x8d\xf0\x91\x84\xb4\xe1\xb7\xa9\xe3\x80\x822\xe1\x82\xb8\xf0\x9e\x80\xa8\xf1\x83\xa5\x87", true); } // [V6, V7]
5761test { try toUnicodeFail("\xe0\xad\x8d\xf0\x91\x84\xb4\xe1\xb7\xa9\xe3\x80\x822\xe2\xb4\x98\xf0\x9e\x80\xa8\xf1\x83\xa5\x87"); } // [V6, V7]14123test { try toUnicodeFail("\xe0\xad\x8d\xf0\x91\x84\xb4\xe1\xb7\xa9\xe3\x80\x822\xe2\xb4\x98\xf0\x9e\x80\xa8\xf1\x83\xa5\x87"); } // [V6, V7]
14124test { try toAsciiFail("\xe0\xad\x8d\xf0\x91\x84\xb4\xe1\xb7\xa9\xe3\x80\x822\xe2\xb4\x98\xf0\x9e\x80\xa8\xf1\x83\xa5\x87", false); } // [V6, V7]
14125test { try toAsciiFail("\xe0\xad\x8d\xf0\x91\x84\xb4\xe1\xb7\xa9\xe3\x80\x822\xe2\xb4\x98\xf0\x9e\x80\xa8\xf1\x83\xa5\x87", true); } // [V6, V7]
5762test { try toUnicodeFail("xn--9ic246gs21p.xn--2-nws2918ndrjr"); } // [V6, V7]14126test { try toUnicodeFail("xn--9ic246gs21p.xn--2-nws2918ndrjr"); } // [V6, V7]
14127test { try toAsciiFail("xn--9ic246gs21p.xn--2-nws2918ndrjr", false); } // [V6, V7]
14128test { try toAsciiFail("xn--9ic246gs21p.xn--2-nws2918ndrjr", true); } // [V6, V7]
5763test { try toUnicodeFail("\xe0\xad\x8d\xf0\x91\x84\xb4\xe1\xb7\xa9\xe3\x80\x82\xf0\x9d\x9f\xae\xe2\xb4\x98\xf0\x9e\x80\xa8\xf1\x83\xa5\x87"); } // [V6, V7]14129test { try toUnicodeFail("\xe0\xad\x8d\xf0\x91\x84\xb4\xe1\xb7\xa9\xe3\x80\x82\xf0\x9d\x9f\xae\xe2\xb4\x98\xf0\x9e\x80\xa8\xf1\x83\xa5\x87"); } // [V6, V7]
14130test { try toAsciiFail("\xe0\xad\x8d\xf0\x91\x84\xb4\xe1\xb7\xa9\xe3\x80\x82\xf0\x9d\x9f\xae\xe2\xb4\x98\xf0\x9e\x80\xa8\xf1\x83\xa5\x87", false); } // [V6, V7]
14131test { try toAsciiFail("\xe0\xad\x8d\xf0\x91\x84\xb4\xe1\xb7\xa9\xe3\x80\x82\xf0\x9d\x9f\xae\xe2\xb4\x98\xf0\x9e\x80\xa8\xf1\x83\xa5\x87", true); } // [V6, V7]
5764test { try toUnicodeFail("xn--9ic246gs21p.xn--2-k1g43076adrwq"); } // [V6, V7]14132test { try toUnicodeFail("xn--9ic246gs21p.xn--2-k1g43076adrwq"); } // [V6, V7]
14133test { try toAsciiFail("xn--9ic246gs21p.xn--2-k1g43076adrwq", false); } // [V6, V7]
14134test { try toAsciiFail("xn--9ic246gs21p.xn--2-k1g43076adrwq", true); } // [V6, V7]
5765test { try toUnicodeFail("\xf2\x93\xa0\xad\xe2\x80\x8c\xe2\x80\x8c\xe2\x92\x88\xe3\x80\x82\xe5\x8b\x89\xf0\x91\x81\x85"); } // [C1, V7]14135test { try toUnicodeFail("\xf2\x93\xa0\xad\xe2\x80\x8c\xe2\x80\x8c\xe2\x92\x88\xe3\x80\x82\xe5\x8b\x89\xf0\x91\x81\x85"); } // [C1, V7]
14136test { try toAsciiFail("\xf2\x93\xa0\xad\xe2\x80\x8c\xe2\x80\x8c\xe2\x92\x88\xe3\x80\x82\xe5\x8b\x89\xf0\x91\x81\x85", false); } // [C1, V7]
14137test { try toAsciiFail("\xf2\x93\xa0\xad\xe2\x80\x8c\xe2\x80\x8c\xe2\x92\x88\xe3\x80\x82\xe5\x8b\x89\xf0\x91\x81\x85", true); } // [V7]
5766test { try toUnicodeFail("\xf2\x93\xa0\xad\xe2\x80\x8c\xe2\x80\x8c1.\xe3\x80\x82\xe5\x8b\x89\xf0\x91\x81\x85"); } // [C1, V7, X4_2]14138test { try toUnicodeFail("\xf2\x93\xa0\xad\xe2\x80\x8c\xe2\x80\x8c1.\xe3\x80\x82\xe5\x8b\x89\xf0\x91\x81\x85"); } // [C1, V7, X4_2]
14139test { try toAsciiFail("\xf2\x93\xa0\xad\xe2\x80\x8c\xe2\x80\x8c1.\xe3\x80\x82\xe5\x8b\x89\xf0\x91\x81\x85", false); } // [C1, V7, A4_2]
14140test { try toAsciiFail("\xf2\x93\xa0\xad\xe2\x80\x8c\xe2\x80\x8c1.\xe3\x80\x82\xe5\x8b\x89\xf0\x91\x81\x85", true); } // [V7, A4_2]
5767test { try toUnicodeFail("xn--1-yi00h..xn--4grs325b"); } // [V7, X4_2]14141test { try toUnicodeFail("xn--1-yi00h..xn--4grs325b"); } // [V7, X4_2]
14142test { try toAsciiFail("xn--1-yi00h..xn--4grs325b", false); } // [V7, A4_2]
14143test { try toAsciiFail("xn--1-yi00h..xn--4grs325b", true); } // [V7, A4_2]
5768test { try toUnicodeFail("xn--1-rgna61159u..xn--4grs325b"); } // [C1, V7, X4_2]14144test { try toUnicodeFail("xn--1-rgna61159u..xn--4grs325b"); } // [C1, V7, X4_2]
14145test { try toAsciiFail("xn--1-rgna61159u..xn--4grs325b", false); } // [C1, V7, A4_2]
14146test { try toAsciiFail("xn--1-rgna61159u..xn--4grs325b", true); } // [C1, V7, A4_2]
5769test { try toUnicodeFail("xn--tsh11906f.xn--4grs325b"); } // [V7]14147test { try toUnicodeFail("xn--tsh11906f.xn--4grs325b"); } // [V7]
14148test { try toAsciiFail("xn--tsh11906f.xn--4grs325b", false); } // [V7]
14149test { try toAsciiFail("xn--tsh11906f.xn--4grs325b", true); } // [V7]
5770test { try toUnicodeFail("xn--0uga855aez302a.xn--4grs325b"); } // [C1, V7]14150test { try toUnicodeFail("xn--0uga855aez302a.xn--4grs325b"); } // [C1, V7]
14151test { try toAsciiFail("xn--0uga855aez302a.xn--4grs325b", false); } // [C1, V7]
14152test { try toAsciiFail("xn--0uga855aez302a.xn--4grs325b", true); } // [C1, V7]
5771test { try toUnicodeFail("\xe1\xa1\x83.\xe7\x8e\xbf\xf1\xab\x88\x9c\xf3\x95\x9e\x90"); } // [V7]14153test { try toUnicodeFail("\xe1\xa1\x83.\xe7\x8e\xbf\xf1\xab\x88\x9c\xf3\x95\x9e\x90"); } // [V7]
14154test { try toAsciiFail("\xe1\xa1\x83.\xe7\x8e\xbf\xf1\xab\x88\x9c\xf3\x95\x9e\x90", false); } // [V7]
14155test { try toAsciiFail("\xe1\xa1\x83.\xe7\x8e\xbf\xf1\xab\x88\x9c\xf3\x95\x9e\x90", true); } // [V7]
5772test { try toUnicodeFail("xn--27e.xn--7cy81125a0yq4a"); } // [V7]14156test { try toUnicodeFail("xn--27e.xn--7cy81125a0yq4a"); } // [V7]
14157test { try toAsciiFail("xn--27e.xn--7cy81125a0yq4a", false); } // [V7]
14158test { try toAsciiFail("xn--27e.xn--7cy81125a0yq4a", true); } // [V7]
5773test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8c\xef\xbd\xa1\xe2\x92\x88\xe2\x89\xaf\xf0\x9d\x9f\xb5"); } // [C1, V7]14159test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8c\xef\xbd\xa1\xe2\x92\x88\xe2\x89\xaf\xf0\x9d\x9f\xb5"); } // [C1, V7]
14160test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8c\xef\xbd\xa1\xe2\x92\x88\xe2\x89\xaf\xf0\x9d\x9f\xb5", false); } // [C1, V7]
14161test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8c\xef\xbd\xa1\xe2\x92\x88\xe2\x89\xaf\xf0\x9d\x9f\xb5", true); } // [V7, A4_2]
5774test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8c\xef\xbd\xa1\xe2\x92\x88>\xcc\xb8\xf0\x9d\x9f\xb5"); } // [C1, V7]14162test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8c\xef\xbd\xa1\xe2\x92\x88>\xcc\xb8\xf0\x9d\x9f\xb5"); } // [C1, V7]
14163test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8c\xef\xbd\xa1\xe2\x92\x88>\xcc\xb8\xf0\x9d\x9f\xb5", false); } // [C1, V7]
14164test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8c\xef\xbd\xa1\xe2\x92\x88>\xcc\xb8\xf0\x9d\x9f\xb5", true); } // [V7, A4_2]
5775test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8c\xe3\x80\x821.\xe2\x89\xaf9"); } // [C1]14165test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8c\xe3\x80\x821.\xe2\x89\xaf9"); } // [C1]
14166test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8c\xe3\x80\x821.\xe2\x89\xaf9", false); } // [C1]
14167test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8c\xe3\x80\x821.\xe2\x89\xaf9", true); } // [A4_2]
5776test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8c\xe3\x80\x821.>\xcc\xb89"); } // [C1]14168test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8c\xe3\x80\x821.>\xcc\xb89"); } // [C1]
14169test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8c\xe3\x80\x821.>\xcc\xb89", false); } // [C1]
14170test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8c\xe3\x80\x821.>\xcc\xb89", true); } // [A4_2]
5777test { try toUnicodeFail(".1.xn--9-ogo"); } // [X4_2]14171test { try toUnicodeFail(".1.xn--9-ogo"); } // [X4_2]
14172test { try toAsciiFail(".1.xn--9-ogo", false); } // [A4_2]
14173test { try toAsciiFail(".1.xn--9-ogo", true); } // [A4_2]
5778test { try toUnicodeFail("xn--0uga.1.xn--9-ogo"); } // [C1]14174test { try toUnicodeFail("xn--0uga.1.xn--9-ogo"); } // [C1]
14175test { try toAsciiFail("xn--0uga.1.xn--9-ogo", false); } // [C1]
14176test { try toAsciiFail("xn--0uga.1.xn--9-ogo", true); } // [C1]
5779test { try toUnicodeFail(".xn--9-ogo37g"); } // [V7, X4_2]14177test { try toUnicodeFail(".xn--9-ogo37g"); } // [V7, X4_2]
14178test { try toAsciiFail(".xn--9-ogo37g", false); } // [V7, A4_2]
14179test { try toAsciiFail(".xn--9-ogo37g", true); } // [V7, A4_2]
5780test { try toUnicodeFail("xn--0uga.xn--9-ogo37g"); } // [C1, V7]14180test { try toUnicodeFail("xn--0uga.xn--9-ogo37g"); } // [C1, V7]
14181test { try toAsciiFail("xn--0uga.xn--9-ogo37g", false); } // [C1, V7]
14182test { try toAsciiFail("xn--0uga.xn--9-ogo37g", true); } // [C1, V7]
5781test { try toUnicodeFail("\xe1\x85\x9f\xe1\xb7\xa0\xf2\x90\x80\x81.\xf0\xba\xbb\x86\xe2\x89\xaf\xf0\x90\xae\x81"); } // [B1, B5, B6, V6, V7]14183test { try toUnicodeFail("\xe1\x85\x9f\xe1\xb7\xa0\xf2\x90\x80\x81.\xf0\xba\xbb\x86\xe2\x89\xaf\xf0\x90\xae\x81"); } // [B1, B5, B6, V6, V7]
14184test { try toAsciiFail("\xe1\x85\x9f\xe1\xb7\xa0\xf2\x90\x80\x81.\xf0\xba\xbb\x86\xe2\x89\xaf\xf0\x90\xae\x81", false); } // [B1, B5, B6, V6, V7]
14185test { try toAsciiFail("\xe1\x85\x9f\xe1\xb7\xa0\xf2\x90\x80\x81.\xf0\xba\xbb\x86\xe2\x89\xaf\xf0\x90\xae\x81", true); } // [B1, B5, B6, V6, V7]
5782test { try toUnicodeFail("\xe1\x85\x9f\xe1\xb7\xa0\xf2\x90\x80\x81.\xf0\xba\xbb\x86>\xcc\xb8\xf0\x90\xae\x81"); } // [B1, B5, B6, V6, V7]14186test { try toUnicodeFail("\xe1\x85\x9f\xe1\xb7\xa0\xf2\x90\x80\x81.\xf0\xba\xbb\x86>\xcc\xb8\xf0\x90\xae\x81"); } // [B1, B5, B6, V6, V7]
14187test { try toAsciiFail("\xe1\x85\x9f\xe1\xb7\xa0\xf2\x90\x80\x81.\xf0\xba\xbb\x86>\xcc\xb8\xf0\x90\xae\x81", false); } // [B1, B5, B6, V6, V7]
14188test { try toAsciiFail("\xe1\x85\x9f\xe1\xb7\xa0\xf2\x90\x80\x81.\xf0\xba\xbb\x86>\xcc\xb8\xf0\x90\xae\x81", true); } // [B1, B5, B6, V6, V7]
5783test { try toUnicodeFail("xn--4eg41418g.xn--hdh5192gkm6r"); } // [B1, B5, B6, V6, V7]14189test { try toUnicodeFail("xn--4eg41418g.xn--hdh5192gkm6r"); } // [B1, B5, B6, V6, V7]
14190test { try toAsciiFail("xn--4eg41418g.xn--hdh5192gkm6r", false); } // [B1, B5, B6, V6, V7]
14191test { try toAsciiFail("xn--4eg41418g.xn--hdh5192gkm6r", true); } // [B1, B5, B6, V6, V7]
5784test { try toUnicodeFail("xn--osd615d5659o.xn--hdh5192gkm6r"); } // [B5, B6, V7]14192test { try toUnicodeFail("xn--osd615d5659o.xn--hdh5192gkm6r"); } // [B5, B6, V7]
14193test { try toAsciiFail("xn--osd615d5659o.xn--hdh5192gkm6r", false); } // [B5, B6, V7]
14194test { try toAsciiFail("xn--osd615d5659o.xn--hdh5192gkm6r", true); } // [B5, B6, V7]
5785test { try toUnicodeFail("\xf3\xa0\x84\xab\xf0\x9d\xa9\xa4\xe2\x80\x8d\xd8\xbe.\xf0\x9d\xa9\xa9-\xe0\xa0\x9e\xf3\x91\xbc\xa9"); } // [B1, C2, V6, V7]14195test { try toUnicodeFail("\xf3\xa0\x84\xab\xf0\x9d\xa9\xa4\xe2\x80\x8d\xd8\xbe.\xf0\x9d\xa9\xa9-\xe0\xa0\x9e\xf3\x91\xbc\xa9"); } // [B1, C2, V6, V7]
14196test { try toAsciiFail("\xf3\xa0\x84\xab\xf0\x9d\xa9\xa4\xe2\x80\x8d\xd8\xbe.\xf0\x9d\xa9\xa9-\xe0\xa0\x9e\xf3\x91\xbc\xa9", false); } // [B1, C2, V6, V7]
14197test { try toAsciiFail("\xf3\xa0\x84\xab\xf0\x9d\xa9\xa4\xe2\x80\x8d\xd8\xbe.\xf0\x9d\xa9\xa9-\xe0\xa0\x9e\xf3\x91\xbc\xa9", true); } // [B1, V6, V7]
5786test { try toUnicodeFail("xn--9gb5080v.xn----qgd52296avol4f"); } // [B1, V6, V7]14198test { try toUnicodeFail("xn--9gb5080v.xn----qgd52296avol4f"); } // [B1, V6, V7]
14199test { try toAsciiFail("xn--9gb5080v.xn----qgd52296avol4f", false); } // [B1, V6, V7]
14200test { try toAsciiFail("xn--9gb5080v.xn----qgd52296avol4f", true); } // [B1, V6, V7]
5787test { try toUnicodeFail("xn--9gb723kg862a.xn----qgd52296avol4f"); } // [B1, C2, V6, V7]14201test { try toUnicodeFail("xn--9gb723kg862a.xn----qgd52296avol4f"); } // [B1, C2, V6, V7]
14202test { try toAsciiFail("xn--9gb723kg862a.xn----qgd52296avol4f", false); } // [B1, C2, V6, V7]
14203test { try toAsciiFail("xn--9gb723kg862a.xn----qgd52296avol4f", true); } // [B1, C2, V6, V7]
5788test { try toUnicodeFail("\xe2\x83\x9a\xef\xbc\x8e\xf0\x91\x98\xbf-"); } // [V3, V6]14204test { try toUnicodeFail("\xe2\x83\x9a\xef\xbc\x8e\xf0\x91\x98\xbf-"); } // [V3, V6]
14205test { try toAsciiFail("\xe2\x83\x9a\xef\xbc\x8e\xf0\x91\x98\xbf-", false); } // [V3, V6]
14206test { try toAsciiFail("\xe2\x83\x9a\xef\xbc\x8e\xf0\x91\x98\xbf-", true); } // [V3, V6]
5789test { try toUnicodeFail("\xe2\x83\x9a.\xf0\x91\x98\xbf-"); } // [V3, V6]14207test { try toUnicodeFail("\xe2\x83\x9a.\xf0\x91\x98\xbf-"); } // [V3, V6]
14208test { try toAsciiFail("\xe2\x83\x9a.\xf0\x91\x98\xbf-", false); } // [V3, V6]
14209test { try toAsciiFail("\xe2\x83\x9a.\xf0\x91\x98\xbf-", true); } // [V3, V6]
5790test { try toUnicodeFail("xn--w0g.xn----bd0j"); } // [V3, V6]14210test { try toUnicodeFail("xn--w0g.xn----bd0j"); } // [V3, V6]
14211test { try toAsciiFail("xn--w0g.xn----bd0j", false); } // [V3, V6]
14212test { try toAsciiFail("xn--w0g.xn----bd0j", true); } // [V3, V6]
5791test { try toUnicodeFail("\xe4\xae\xb8\xc3\x9f.\xf3\xa0\xb5\x9f\xf3\xa0\xad\x8e\xe7\xb4\x99\xe0\xa2\xa8"); } // [B1, V7]14213test { try toUnicodeFail("\xe4\xae\xb8\xc3\x9f.\xf3\xa0\xb5\x9f\xf3\xa0\xad\x8e\xe7\xb4\x99\xe0\xa2\xa8"); } // [B1, V7]
14214test { try toAsciiFail("\xe4\xae\xb8\xc3\x9f.\xf3\xa0\xb5\x9f\xf3\xa0\xad\x8e\xe7\xb4\x99\xe0\xa2\xa8", false); } // [B1, V7]
14215test { try toAsciiFail("\xe4\xae\xb8\xc3\x9f.\xf3\xa0\xb5\x9f\xf3\xa0\xad\x8e\xe7\xb4\x99\xe0\xa2\xa8", true); } // [B1, V7]
5792test { try toUnicodeFail("\xe4\xae\xb8SS.\xf3\xa0\xb5\x9f\xf3\xa0\xad\x8e\xe7\xb4\x99\xe0\xa2\xa8"); } // [B1, V7]14216test { try toUnicodeFail("\xe4\xae\xb8SS.\xf3\xa0\xb5\x9f\xf3\xa0\xad\x8e\xe7\xb4\x99\xe0\xa2\xa8"); } // [B1, V7]
14217test { try toAsciiFail("\xe4\xae\xb8SS.\xf3\xa0\xb5\x9f\xf3\xa0\xad\x8e\xe7\xb4\x99\xe0\xa2\xa8", false); } // [B1, V7]
14218test { try toAsciiFail("\xe4\xae\xb8SS.\xf3\xa0\xb5\x9f\xf3\xa0\xad\x8e\xe7\xb4\x99\xe0\xa2\xa8", true); } // [B1, V7]
5793test { try toUnicodeFail("\xe4\xae\xb8ss.\xf3\xa0\xb5\x9f\xf3\xa0\xad\x8e\xe7\xb4\x99\xe0\xa2\xa8"); } // [B1, V7]14219test { try toUnicodeFail("\xe4\xae\xb8ss.\xf3\xa0\xb5\x9f\xf3\xa0\xad\x8e\xe7\xb4\x99\xe0\xa2\xa8"); } // [B1, V7]
14220test { try toAsciiFail("\xe4\xae\xb8ss.\xf3\xa0\xb5\x9f\xf3\xa0\xad\x8e\xe7\xb4\x99\xe0\xa2\xa8", false); } // [B1, V7]
14221test { try toAsciiFail("\xe4\xae\xb8ss.\xf3\xa0\xb5\x9f\xf3\xa0\xad\x8e\xe7\xb4\x99\xe0\xa2\xa8", true); } // [B1, V7]
5794test { try toUnicodeFail("\xe4\xae\xb8Ss.\xf3\xa0\xb5\x9f\xf3\xa0\xad\x8e\xe7\xb4\x99\xe0\xa2\xa8"); } // [B1, V7]14222test { try toUnicodeFail("\xe4\xae\xb8Ss.\xf3\xa0\xb5\x9f\xf3\xa0\xad\x8e\xe7\xb4\x99\xe0\xa2\xa8"); } // [B1, V7]
14223test { try toAsciiFail("\xe4\xae\xb8Ss.\xf3\xa0\xb5\x9f\xf3\xa0\xad\x8e\xe7\xb4\x99\xe0\xa2\xa8", false); } // [B1, V7]
14224test { try toAsciiFail("\xe4\xae\xb8Ss.\xf3\xa0\xb5\x9f\xf3\xa0\xad\x8e\xe7\xb4\x99\xe0\xa2\xa8", true); } // [B1, V7]
5795test { try toUnicodeFail("xn--ss-sf1c.xn--xyb1370div70kpzba"); } // [B1, V7]14225test { try toUnicodeFail("xn--ss-sf1c.xn--xyb1370div70kpzba"); } // [B1, V7]
14226test { try toAsciiFail("xn--ss-sf1c.xn--xyb1370div70kpzba", false); } // [B1, V7]
14227test { try toAsciiFail("xn--ss-sf1c.xn--xyb1370div70kpzba", true); } // [B1, V7]
5796test { try toUnicodeFail("xn--zca5349a.xn--xyb1370div70kpzba"); } // [B1, V7]14228test { try toUnicodeFail("xn--zca5349a.xn--xyb1370div70kpzba"); } // [B1, V7]
14229test { try toAsciiFail("xn--zca5349a.xn--xyb1370div70kpzba", false); } // [B1, V7]
14230test { try toAsciiFail("xn--zca5349a.xn--xyb1370div70kpzba", true); } // [B1, V7]
5797test { try toUnicodeFail("-\xe1\x82\xbe.-\xf0\x9d\xa9\xa8\xe2\x85\x94\xf0\x90\xa6\x95"); } // [B1, V3]14231test { try toUnicodeFail("-\xe1\x82\xbe.-\xf0\x9d\xa9\xa8\xe2\x85\x94\xf0\x90\xa6\x95"); } // [B1, V3]
14232test { try toAsciiFail("-\xe1\x82\xbe.-\xf0\x9d\xa9\xa8\xe2\x85\x94\xf0\x90\xa6\x95", false); } // [B1, V3]
14233test { try toAsciiFail("-\xe1\x82\xbe.-\xf0\x9d\xa9\xa8\xe2\x85\x94\xf0\x90\xa6\x95", true); } // [B1, V3]
5798test { try toUnicodeFail("-\xe1\x82\xbe.-\xf0\x9d\xa9\xa82\xe2\x81\x843\xf0\x90\xa6\x95"); } // [B1, V3]14234test { try toUnicodeFail("-\xe1\x82\xbe.-\xf0\x9d\xa9\xa82\xe2\x81\x843\xf0\x90\xa6\x95"); } // [B1, V3]
14235test { try toAsciiFail("-\xe1\x82\xbe.-\xf0\x9d\xa9\xa82\xe2\x81\x843\xf0\x90\xa6\x95", false); } // [B1, V3]
14236test { try toAsciiFail("-\xe1\x82\xbe.-\xf0\x9d\xa9\xa82\xe2\x81\x843\xf0\x90\xa6\x95", true); } // [B1, V3]
5799test { try toUnicodeFail("-\xe2\xb4\x9e.-\xf0\x9d\xa9\xa82\xe2\x81\x843\xf0\x90\xa6\x95"); } // [B1, V3]14237test { try toUnicodeFail("-\xe2\xb4\x9e.-\xf0\x9d\xa9\xa82\xe2\x81\x843\xf0\x90\xa6\x95"); } // [B1, V3]
14238test { try toAsciiFail("-\xe2\xb4\x9e.-\xf0\x9d\xa9\xa82\xe2\x81\x843\xf0\x90\xa6\x95", false); } // [B1, V3]
14239test { try toAsciiFail("-\xe2\xb4\x9e.-\xf0\x9d\xa9\xa82\xe2\x81\x843\xf0\x90\xa6\x95", true); } // [B1, V3]
5800test { try toUnicodeFail("xn----zws.xn---23-pt0a0433lk3jj"); } // [B1, V3]14240test { try toUnicodeFail("xn----zws.xn---23-pt0a0433lk3jj"); } // [B1, V3]
14241test { try toAsciiFail("xn----zws.xn---23-pt0a0433lk3jj", false); } // [B1, V3]
14242test { try toAsciiFail("xn----zws.xn---23-pt0a0433lk3jj", true); } // [B1, V3]
5801test { try toUnicodeFail("-\xe2\xb4\x9e.-\xf0\x9d\xa9\xa8\xe2\x85\x94\xf0\x90\xa6\x95"); } // [B1, V3]14243test { try toUnicodeFail("-\xe2\xb4\x9e.-\xf0\x9d\xa9\xa8\xe2\x85\x94\xf0\x90\xa6\x95"); } // [B1, V3]
14244test { try toAsciiFail("-\xe2\xb4\x9e.-\xf0\x9d\xa9\xa8\xe2\x85\x94\xf0\x90\xa6\x95", false); } // [B1, V3]
14245test { try toAsciiFail("-\xe2\xb4\x9e.-\xf0\x9d\xa9\xa8\xe2\x85\x94\xf0\x90\xa6\x95", true); } // [B1, V3]
5802test { try toUnicodeFail("xn----w1g.xn---23-pt0a0433lk3jj"); } // [B1, V3, V7]14246test { try toUnicodeFail("xn----w1g.xn---23-pt0a0433lk3jj"); } // [B1, V3, V7]
14247test { try toAsciiFail("xn----w1g.xn---23-pt0a0433lk3jj", false); } // [B1, V3, V7]
14248test { try toAsciiFail("xn----w1g.xn---23-pt0a0433lk3jj", true); } // [B1, V3, V7]
5803test { try toUnicodeFail("\xf3\xa7\x88\xaf\xf0\x90\xb9\xaf\xe0\xab\x82\xef\xbd\xa1\xf2\x96\xa2\xa8\xf0\x90\xae\x81\xf1\x87\xbc\x96\xe1\xa1\x82"); } // [B5, B6, V7]14249test { try toUnicodeFail("\xf3\xa7\x88\xaf\xf0\x90\xb9\xaf\xe0\xab\x82\xef\xbd\xa1\xf2\x96\xa2\xa8\xf0\x90\xae\x81\xf1\x87\xbc\x96\xe1\xa1\x82"); } // [B5, B6, V7]
14250test { try toAsciiFail("\xf3\xa7\x88\xaf\xf0\x90\xb9\xaf\xe0\xab\x82\xef\xbd\xa1\xf2\x96\xa2\xa8\xf0\x90\xae\x81\xf1\x87\xbc\x96\xe1\xa1\x82", false); } // [B5, B6, V7]
14251test { try toAsciiFail("\xf3\xa7\x88\xaf\xf0\x90\xb9\xaf\xe0\xab\x82\xef\xbd\xa1\xf2\x96\xa2\xa8\xf0\x90\xae\x81\xf1\x87\xbc\x96\xe1\xa1\x82", true); } // [B5, B6, V7]
5804test { try toUnicodeFail("\xf3\xa7\x88\xaf\xf0\x90\xb9\xaf\xe0\xab\x82\xe3\x80\x82\xf2\x96\xa2\xa8\xf0\x90\xae\x81\xf1\x87\xbc\x96\xe1\xa1\x82"); } // [B5, B6, V7]14252test { try toUnicodeFail("\xf3\xa7\x88\xaf\xf0\x90\xb9\xaf\xe0\xab\x82\xe3\x80\x82\xf2\x96\xa2\xa8\xf0\x90\xae\x81\xf1\x87\xbc\x96\xe1\xa1\x82"); } // [B5, B6, V7]
14253test { try toAsciiFail("\xf3\xa7\x88\xaf\xf0\x90\xb9\xaf\xe0\xab\x82\xe3\x80\x82\xf2\x96\xa2\xa8\xf0\x90\xae\x81\xf1\x87\xbc\x96\xe1\xa1\x82", false); } // [B5, B6, V7]
14254test { try toAsciiFail("\xf3\xa7\x88\xaf\xf0\x90\xb9\xaf\xe0\xab\x82\xe3\x80\x82\xf2\x96\xa2\xa8\xf0\x90\xae\x81\xf1\x87\xbc\x96\xe1\xa1\x82", true); } // [B5, B6, V7]
5805test { try toUnicodeFail("xn--bfc7604kv8m3g.xn--17e5565jl7zw4h16a"); } // [B5, B6, V7]14255test { try toUnicodeFail("xn--bfc7604kv8m3g.xn--17e5565jl7zw4h16a"); } // [B5, B6, V7]
14256test { try toAsciiFail("xn--bfc7604kv8m3g.xn--17e5565jl7zw4h16a", false); } // [B5, B6, V7]
14257test { try toAsciiFail("xn--bfc7604kv8m3g.xn--17e5565jl7zw4h16a", true); } // [B5, B6, V7]
5806test { try toUnicodeFail("\xe1\x82\x82-\xe2\x80\x8d\xea\xa3\xaa\xef\xbc\x8e\xea\xa1\x8a\xe2\x80\x8d\xf1\xbc\xb8\xb3"); } // [C2, V6, V7]14258test { try toUnicodeFail("\xe1\x82\x82-\xe2\x80\x8d\xea\xa3\xaa\xef\xbc\x8e\xea\xa1\x8a\xe2\x80\x8d\xf1\xbc\xb8\xb3"); } // [C2, V6, V7]
14259test { try toAsciiFail("\xe1\x82\x82-\xe2\x80\x8d\xea\xa3\xaa\xef\xbc\x8e\xea\xa1\x8a\xe2\x80\x8d\xf1\xbc\xb8\xb3", false); } // [C2, V6, V7]
14260test { try toAsciiFail("\xe1\x82\x82-\xe2\x80\x8d\xea\xa3\xaa\xef\xbc\x8e\xea\xa1\x8a\xe2\x80\x8d\xf1\xbc\xb8\xb3", true); } // [V6, V7]
5807test { try toUnicodeFail("\xe1\x82\x82-\xe2\x80\x8d\xea\xa3\xaa.\xea\xa1\x8a\xe2\x80\x8d\xf1\xbc\xb8\xb3"); } // [C2, V6, V7]14261test { try toUnicodeFail("\xe1\x82\x82-\xe2\x80\x8d\xea\xa3\xaa.\xea\xa1\x8a\xe2\x80\x8d\xf1\xbc\xb8\xb3"); } // [C2, V6, V7]
14262test { try toAsciiFail("\xe1\x82\x82-\xe2\x80\x8d\xea\xa3\xaa.\xea\xa1\x8a\xe2\x80\x8d\xf1\xbc\xb8\xb3", false); } // [C2, V6, V7]
14263test { try toAsciiFail("\xe1\x82\x82-\xe2\x80\x8d\xea\xa3\xaa.\xea\xa1\x8a\xe2\x80\x8d\xf1\xbc\xb8\xb3", true); } // [V6, V7]
5808test { try toUnicodeFail("xn----gyg3618i.xn--jc9ao4185a"); } // [V6, V7]14264test { try toUnicodeFail("xn----gyg3618i.xn--jc9ao4185a"); } // [V6, V7]
14265test { try toAsciiFail("xn----gyg3618i.xn--jc9ao4185a", false); } // [V6, V7]
14266test { try toAsciiFail("xn----gyg3618i.xn--jc9ao4185a", true); } // [V6, V7]
5809test { try toUnicodeFail("xn----gyg250jio7k.xn--1ug8774cri56d"); } // [C2, V6, V7]14267test { try toUnicodeFail("xn----gyg250jio7k.xn--1ug8774cri56d"); } // [C2, V6, V7]
14268test { try toAsciiFail("xn----gyg250jio7k.xn--1ug8774cri56d", false); } // [C2, V6, V7]
14269test { try toAsciiFail("xn----gyg250jio7k.xn--1ug8774cri56d", true); } // [C2, V6, V7]
5810test { try toUnicodeFail("\xdb\xb1\xe3\x80\x82\xe2\x89\xa0\xd9\xa8"); } // [B1]14270test { try toUnicodeFail("\xdb\xb1\xe3\x80\x82\xe2\x89\xa0\xd9\xa8"); } // [B1]
14271test { try toAsciiFail("\xdb\xb1\xe3\x80\x82\xe2\x89\xa0\xd9\xa8", false); } // [B1]
14272test { try toAsciiFail("\xdb\xb1\xe3\x80\x82\xe2\x89\xa0\xd9\xa8", true); } // [B1]
5811test { try toUnicodeFail("\xdb\xb1\xe3\x80\x82=\xcc\xb8\xd9\xa8"); } // [B1]14273test { try toUnicodeFail("\xdb\xb1\xe3\x80\x82=\xcc\xb8\xd9\xa8"); } // [B1]
14274test { try toAsciiFail("\xdb\xb1\xe3\x80\x82=\xcc\xb8\xd9\xa8", false); } // [B1]
14275test { try toAsciiFail("\xdb\xb1\xe3\x80\x82=\xcc\xb8\xd9\xa8", true); } // [B1]
5812test { try toUnicodeFail("xn--emb.xn--hib334l"); } // [B1]14276test { try toUnicodeFail("xn--emb.xn--hib334l"); } // [B1]
14277test { try toAsciiFail("xn--emb.xn--hib334l", false); } // [B1]
14278test { try toAsciiFail("xn--emb.xn--hib334l", true); } // [B1]
5813test { try toUnicodeFail("\xf0\x91\x88\xb5\xe5\xbb\x8a.\xf0\x90\xa0\x8d"); } // [V6]14279test { try toUnicodeFail("\xf0\x91\x88\xb5\xe5\xbb\x8a.\xf0\x90\xa0\x8d"); } // [V6]
14280test { try toAsciiFail("\xf0\x91\x88\xb5\xe5\xbb\x8a.\xf0\x90\xa0\x8d", false); } // [V6]
14281test { try toAsciiFail("\xf0\x91\x88\xb5\xe5\xbb\x8a.\xf0\x90\xa0\x8d", true); } // [V6]
5814test { try toUnicodeFail("xn--xytw701b.xn--yc9c"); } // [V6]14282test { try toUnicodeFail("xn--xytw701b.xn--yc9c"); } // [V6]
14283test { try toAsciiFail("xn--xytw701b.xn--yc9c", false); } // [V6]
14284test { try toAsciiFail("xn--xytw701b.xn--yc9c", true); } // [V6]
5815test { try toUnicodeFail("\xe2\x80\x8d\xcd\x96-\xef\xbc\x8e-\xe1\x82\xb0\xd9\xa1"); } // [B1, C2, V3]14285test { try toUnicodeFail("\xe2\x80\x8d\xcd\x96-\xef\xbc\x8e-\xe1\x82\xb0\xd9\xa1"); } // [B1, C2, V3]
14286test { try toAsciiFail("\xe2\x80\x8d\xcd\x96-\xef\xbc\x8e-\xe1\x82\xb0\xd9\xa1", false); } // [B1, C2, V3]
14287test { try toAsciiFail("\xe2\x80\x8d\xcd\x96-\xef\xbc\x8e-\xe1\x82\xb0\xd9\xa1", true); } // [B1, V3, V6]
5816test { try toUnicodeFail("\xe2\x80\x8d\xcd\x96-.-\xe1\x82\xb0\xd9\xa1"); } // [B1, C2, V3]14288test { try toUnicodeFail("\xe2\x80\x8d\xcd\x96-.-\xe1\x82\xb0\xd9\xa1"); } // [B1, C2, V3]
14289test { try toAsciiFail("\xe2\x80\x8d\xcd\x96-.-\xe1\x82\xb0\xd9\xa1", false); } // [B1, C2, V3]
14290test { try toAsciiFail("\xe2\x80\x8d\xcd\x96-.-\xe1\x82\xb0\xd9\xa1", true); } // [B1, V3, V6]
5817test { try toUnicodeFail("\xe2\x80\x8d\xcd\x96-.-\xe2\xb4\x90\xd9\xa1"); } // [B1, C2, V3]14291test { try toUnicodeFail("\xe2\x80\x8d\xcd\x96-.-\xe2\xb4\x90\xd9\xa1"); } // [B1, C2, V3]
14292test { try toAsciiFail("\xe2\x80\x8d\xcd\x96-.-\xe2\xb4\x90\xd9\xa1", false); } // [B1, C2, V3]
14293test { try toAsciiFail("\xe2\x80\x8d\xcd\x96-.-\xe2\xb4\x90\xd9\xa1", true); } // [B1, V3, V6]
5818test { try toUnicodeFail("xn----rgb.xn----bqc2280a"); } // [B1, V3, V6]14294test { try toUnicodeFail("xn----rgb.xn----bqc2280a"); } // [B1, V3, V6]
14295test { try toAsciiFail("xn----rgb.xn----bqc2280a", false); } // [B1, V3, V6]
14296test { try toAsciiFail("xn----rgb.xn----bqc2280a", true); } // [B1, V3, V6]
5819test { try toUnicodeFail("xn----rgb661t.xn----bqc2280a"); } // [B1, C2, V3]14297test { try toUnicodeFail("xn----rgb661t.xn----bqc2280a"); } // [B1, C2, V3]
14298test { try toAsciiFail("xn----rgb661t.xn----bqc2280a", false); } // [B1, C2, V3]
14299test { try toAsciiFail("xn----rgb661t.xn----bqc2280a", true); } // [B1, C2, V3]
5820test { try toUnicodeFail("\xe2\x80\x8d\xcd\x96-\xef\xbc\x8e-\xe2\xb4\x90\xd9\xa1"); } // [B1, C2, V3]14300test { try toUnicodeFail("\xe2\x80\x8d\xcd\x96-\xef\xbc\x8e-\xe2\xb4\x90\xd9\xa1"); } // [B1, C2, V3]
14301test { try toAsciiFail("\xe2\x80\x8d\xcd\x96-\xef\xbc\x8e-\xe2\xb4\x90\xd9\xa1", false); } // [B1, C2, V3]
14302test { try toAsciiFail("\xe2\x80\x8d\xcd\x96-\xef\xbc\x8e-\xe2\xb4\x90\xd9\xa1", true); } // [B1, V3, V6]
5821test { try toUnicodeFail("xn----rgb.xn----bqc030f"); } // [B1, V3, V6, V7]14303test { try toUnicodeFail("xn----rgb.xn----bqc030f"); } // [B1, V3, V6, V7]
14304test { try toAsciiFail("xn----rgb.xn----bqc030f", false); } // [B1, V3, V6, V7]
14305test { try toAsciiFail("xn----rgb.xn----bqc030f", true); } // [B1, V3, V6, V7]
5822test { try toUnicodeFail("xn----rgb661t.xn----bqc030f"); } // [B1, C2, V3, V7]14306test { try toUnicodeFail("xn----rgb661t.xn----bqc030f"); } // [B1, C2, V3, V7]
14307test { try toAsciiFail("xn----rgb661t.xn----bqc030f", false); } // [B1, C2, V3, V7]
14308test { try toAsciiFail("xn----rgb661t.xn----bqc030f", true); } // [B1, C2, V3, V7]
5823test { try toUnicodeFail("\xd8\xba\xd9\xa1\xe6\x8c\x8f\xf3\xbe\xaf\x90.-"); } // [B1, B2, B3, V3, V7]14309test { try toUnicodeFail("\xd8\xba\xd9\xa1\xe6\x8c\x8f\xf3\xbe\xaf\x90.-"); } // [B1, B2, B3, V3, V7]
14310test { try toAsciiFail("\xd8\xba\xd9\xa1\xe6\x8c\x8f\xf3\xbe\xaf\x90.-", false); } // [B1, B2, B3, V3, V7]
14311test { try toAsciiFail("\xd8\xba\xd9\xa1\xe6\x8c\x8f\xf3\xbe\xaf\x90.-", true); } // [B1, B2, B3, V3, V7]
5824test { try toUnicodeFail("xn--5gb2f4205aqi47p.-"); } // [B1, B2, B3, V3, V7]14312test { try toUnicodeFail("xn--5gb2f4205aqi47p.-"); } // [B1, B2, B3, V3, V7]
14313test { try toAsciiFail("xn--5gb2f4205aqi47p.-", false); } // [B1, B2, B3, V3, V7]
14314test { try toAsciiFail("xn--5gb2f4205aqi47p.-", true); } // [B1, B2, B3, V3, V7]
5825test { try toUnicodeFail("\xdb\xaf\xef\xbd\xa1\xf0\x90\xb9\xa7\xf0\x9e\xa4\xbd"); } // [B1]14315test { try toUnicodeFail("\xdb\xaf\xef\xbd\xa1\xf0\x90\xb9\xa7\xf0\x9e\xa4\xbd"); } // [B1]
14316test { try toAsciiFail("\xdb\xaf\xef\xbd\xa1\xf0\x90\xb9\xa7\xf0\x9e\xa4\xbd", false); } // [B1]
14317test { try toAsciiFail("\xdb\xaf\xef\xbd\xa1\xf0\x90\xb9\xa7\xf0\x9e\xa4\xbd", true); } // [B1]
5826test { try toUnicodeFail("\xdb\xaf\xe3\x80\x82\xf0\x90\xb9\xa7\xf0\x9e\xa4\xbd"); } // [B1]14318test { try toUnicodeFail("\xdb\xaf\xe3\x80\x82\xf0\x90\xb9\xa7\xf0\x9e\xa4\xbd"); } // [B1]
14319test { try toAsciiFail("\xdb\xaf\xe3\x80\x82\xf0\x90\xb9\xa7\xf0\x9e\xa4\xbd", false); } // [B1]
14320test { try toAsciiFail("\xdb\xaf\xe3\x80\x82\xf0\x90\xb9\xa7\xf0\x9e\xa4\xbd", true); } // [B1]
5827test { try toUnicodeFail("\xdb\xaf\xe3\x80\x82\xf0\x90\xb9\xa7\xf0\x9e\xa4\x9b"); } // [B1]14321test { try toUnicodeFail("\xdb\xaf\xe3\x80\x82\xf0\x90\xb9\xa7\xf0\x9e\xa4\x9b"); } // [B1]
14322test { try toAsciiFail("\xdb\xaf\xe3\x80\x82\xf0\x90\xb9\xa7\xf0\x9e\xa4\x9b", false); } // [B1]
14323test { try toAsciiFail("\xdb\xaf\xe3\x80\x82\xf0\x90\xb9\xa7\xf0\x9e\xa4\x9b", true); } // [B1]
5828test { try toUnicodeFail("xn--cmb.xn--fo0dy848a"); } // [B1]14324test { try toUnicodeFail("xn--cmb.xn--fo0dy848a"); } // [B1]
14325test { try toAsciiFail("xn--cmb.xn--fo0dy848a", false); } // [B1]
14326test { try toAsciiFail("xn--cmb.xn--fo0dy848a", true); } // [B1]
5829test { try toUnicodeFail("\xdb\xaf\xef\xbd\xa1\xf0\x90\xb9\xa7\xf0\x9e\xa4\x9b"); } // [B1]14327test { try toUnicodeFail("\xdb\xaf\xef\xbd\xa1\xf0\x90\xb9\xa7\xf0\x9e\xa4\x9b"); } // [B1]
14328test { try toAsciiFail("\xdb\xaf\xef\xbd\xa1\xf0\x90\xb9\xa7\xf0\x9e\xa4\x9b", false); } // [B1]
14329test { try toAsciiFail("\xdb\xaf\xef\xbd\xa1\xf0\x90\xb9\xa7\xf0\x9e\xa4\x9b", true); } // [B1]
5830test { try toUnicodeFail("\xe1\x82\xbe\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb\xef\xbc\x8e\xe1\xa2\x97\xeb\xa6\xab"); } // [V7]14330test { try toUnicodeFail("\xe1\x82\xbe\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb\xef\xbc\x8e\xe1\xa2\x97\xeb\xa6\xab"); } // [V7]
14331test { try toAsciiFail("\xe1\x82\xbe\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb\xef\xbc\x8e\xe1\xa2\x97\xeb\xa6\xab", false); } // [V7]
14332test { try toAsciiFail("\xe1\x82\xbe\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb\xef\xbc\x8e\xe1\xa2\x97\xeb\xa6\xab", true); } // [V7]
5831test { try toUnicodeFail("\xe1\x82\xbe\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb\xef\xbc\x8e\xe1\xa2\x97\xe1\x84\x85\xe1\x85\xb4\xe1\x87\x82"); } // [V7]14333test { try toUnicodeFail("\xe1\x82\xbe\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb\xef\xbc\x8e\xe1\xa2\x97\xe1\x84\x85\xe1\x85\xb4\xe1\x87\x82"); } // [V7]
14334test { try toAsciiFail("\xe1\x82\xbe\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb\xef\xbc\x8e\xe1\xa2\x97\xe1\x84\x85\xe1\x85\xb4\xe1\x87\x82", false); } // [V7]
14335test { try toAsciiFail("\xe1\x82\xbe\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb\xef\xbc\x8e\xe1\xa2\x97\xe1\x84\x85\xe1\x85\xb4\xe1\x87\x82", true); } // [V7]
5832test { try toUnicodeFail("\xe1\x82\xbe\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb.\xe1\xa2\x97\xeb\xa6\xab"); } // [V7]14336test { try toUnicodeFail("\xe1\x82\xbe\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb.\xe1\xa2\x97\xeb\xa6\xab"); } // [V7]
14337test { try toAsciiFail("\xe1\x82\xbe\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb.\xe1\xa2\x97\xeb\xa6\xab", false); } // [V7]
14338test { try toAsciiFail("\xe1\x82\xbe\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb.\xe1\xa2\x97\xeb\xa6\xab", true); } // [V7]
5833test { try toUnicodeFail("\xe1\x82\xbe\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb.\xe1\xa2\x97\xe1\x84\x85\xe1\x85\xb4\xe1\x87\x82"); } // [V7]14339test { try toUnicodeFail("\xe1\x82\xbe\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb.\xe1\xa2\x97\xe1\x84\x85\xe1\x85\xb4\xe1\x87\x82"); } // [V7]
14340test { try toAsciiFail("\xe1\x82\xbe\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb.\xe1\xa2\x97\xe1\x84\x85\xe1\x85\xb4\xe1\x87\x82", false); } // [V7]
14341test { try toAsciiFail("\xe1\x82\xbe\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb.\xe1\xa2\x97\xe1\x84\x85\xe1\x85\xb4\xe1\x87\x82", true); } // [V7]
5834test { try toUnicodeFail("\xe2\xb4\x9e\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb.\xe1\xa2\x97\xe1\x84\x85\xe1\x85\xb4\xe1\x87\x82"); } // [V7]14342test { try toUnicodeFail("\xe2\xb4\x9e\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb.\xe1\xa2\x97\xe1\x84\x85\xe1\x85\xb4\xe1\x87\x82"); } // [V7]
14343test { try toAsciiFail("\xe2\xb4\x9e\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb.\xe1\xa2\x97\xe1\x84\x85\xe1\x85\xb4\xe1\x87\x82", false); } // [V7]
14344test { try toAsciiFail("\xe2\xb4\x9e\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb.\xe1\xa2\x97\xe1\x84\x85\xe1\x85\xb4\xe1\x87\x82", true); } // [V7]
5835test { try toUnicodeFail("\xe2\xb4\x9e\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb.\xe1\xa2\x97\xeb\xa6\xab"); } // [V7]14345test { try toUnicodeFail("\xe2\xb4\x9e\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb.\xe1\xa2\x97\xeb\xa6\xab"); } // [V7]
14346test { try toAsciiFail("\xe2\xb4\x9e\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb.\xe1\xa2\x97\xeb\xa6\xab", false); } // [V7]
14347test { try toAsciiFail("\xe2\xb4\x9e\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb.\xe1\xa2\x97\xeb\xa6\xab", true); } // [V7]
5836test { try toUnicodeFail("xn--mlj0486jgl2j.xn--hbf6853f"); } // [V7]14348test { try toUnicodeFail("xn--mlj0486jgl2j.xn--hbf6853f"); } // [V7]
14349test { try toAsciiFail("xn--mlj0486jgl2j.xn--hbf6853f", false); } // [V7]
14350test { try toAsciiFail("xn--mlj0486jgl2j.xn--hbf6853f", true); } // [V7]
5837test { try toUnicodeFail("\xe2\xb4\x9e\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb\xef\xbc\x8e\xe1\xa2\x97\xe1\x84\x85\xe1\x85\xb4\xe1\x87\x82"); } // [V7]14351test { try toUnicodeFail("\xe2\xb4\x9e\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb\xef\xbc\x8e\xe1\xa2\x97\xe1\x84\x85\xe1\x85\xb4\xe1\x87\x82"); } // [V7]
14352test { try toAsciiFail("\xe2\xb4\x9e\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb\xef\xbc\x8e\xe1\xa2\x97\xe1\x84\x85\xe1\x85\xb4\xe1\x87\x82", false); } // [V7]
14353test { try toAsciiFail("\xe2\xb4\x9e\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb\xef\xbc\x8e\xe1\xa2\x97\xe1\x84\x85\xe1\x85\xb4\xe1\x87\x82", true); } // [V7]
5838test { try toUnicodeFail("\xe2\xb4\x9e\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb\xef\xbc\x8e\xe1\xa2\x97\xeb\xa6\xab"); } // [V7]14354test { try toUnicodeFail("\xe2\xb4\x9e\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb\xef\xbc\x8e\xe1\xa2\x97\xeb\xa6\xab"); } // [V7]
14355test { try toAsciiFail("\xe2\xb4\x9e\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb\xef\xbc\x8e\xe1\xa2\x97\xeb\xa6\xab", false); } // [V7]
14356test { try toAsciiFail("\xe2\xb4\x9e\xf0\xb6\x9b\x80\xf0\x9b\x97\xbb\xef\xbc\x8e\xe1\xa2\x97\xeb\xa6\xab", true); } // [V7]
5839test { try toUnicodeFail("xn--2nd8876sgl2j.xn--hbf6853f"); } // [V7]14357test { try toUnicodeFail("xn--2nd8876sgl2j.xn--hbf6853f"); } // [V7]
14358test { try toAsciiFail("xn--2nd8876sgl2j.xn--hbf6853f", false); } // [V7]
14359test { try toAsciiFail("xn--2nd8876sgl2j.xn--hbf6853f", true); } // [V7]
5840test { try toUnicodeFail("\xf3\xa0\x8e\x83\xf3\x97\xad\x9e\xda\xb7\xf0\x90\xb9\xb7\xef\xbd\xa1\xe2\x89\xaf\xe2\x80\x8c\xe1\xb7\xbe"); } // [B1, C1, V7]14360test { try toUnicodeFail("\xf3\xa0\x8e\x83\xf3\x97\xad\x9e\xda\xb7\xf0\x90\xb9\xb7\xef\xbd\xa1\xe2\x89\xaf\xe2\x80\x8c\xe1\xb7\xbe"); } // [B1, C1, V7]
14361test { try toAsciiFail("\xf3\xa0\x8e\x83\xf3\x97\xad\x9e\xda\xb7\xf0\x90\xb9\xb7\xef\xbd\xa1\xe2\x89\xaf\xe2\x80\x8c\xe1\xb7\xbe", false); } // [B1, C1, V7]
14362test { try toAsciiFail("\xf3\xa0\x8e\x83\xf3\x97\xad\x9e\xda\xb7\xf0\x90\xb9\xb7\xef\xbd\xa1\xe2\x89\xaf\xe2\x80\x8c\xe1\xb7\xbe", true); } // [B1, V7]
5841test { try toUnicodeFail("\xf3\xa0\x8e\x83\xf3\x97\xad\x9e\xda\xb7\xf0\x90\xb9\xb7\xef\xbd\xa1>\xcc\xb8\xe2\x80\x8c\xe1\xb7\xbe"); } // [B1, C1, V7]14363test { try toUnicodeFail("\xf3\xa0\x8e\x83\xf3\x97\xad\x9e\xda\xb7\xf0\x90\xb9\xb7\xef\xbd\xa1>\xcc\xb8\xe2\x80\x8c\xe1\xb7\xbe"); } // [B1, C1, V7]
14364test { try toAsciiFail("\xf3\xa0\x8e\x83\xf3\x97\xad\x9e\xda\xb7\xf0\x90\xb9\xb7\xef\xbd\xa1>\xcc\xb8\xe2\x80\x8c\xe1\xb7\xbe", false); } // [B1, C1, V7]
14365test { try toAsciiFail("\xf3\xa0\x8e\x83\xf3\x97\xad\x9e\xda\xb7\xf0\x90\xb9\xb7\xef\xbd\xa1>\xcc\xb8\xe2\x80\x8c\xe1\xb7\xbe", true); } // [B1, V7]
5842test { try toUnicodeFail("\xf3\xa0\x8e\x83\xf3\x97\xad\x9e\xda\xb7\xf0\x90\xb9\xb7\xe3\x80\x82\xe2\x89\xaf\xe2\x80\x8c\xe1\xb7\xbe"); } // [B1, C1, V7]14366test { try toUnicodeFail("\xf3\xa0\x8e\x83\xf3\x97\xad\x9e\xda\xb7\xf0\x90\xb9\xb7\xe3\x80\x82\xe2\x89\xaf\xe2\x80\x8c\xe1\xb7\xbe"); } // [B1, C1, V7]
14367test { try toAsciiFail("\xf3\xa0\x8e\x83\xf3\x97\xad\x9e\xda\xb7\xf0\x90\xb9\xb7\xe3\x80\x82\xe2\x89\xaf\xe2\x80\x8c\xe1\xb7\xbe", false); } // [B1, C1, V7]
14368test { try toAsciiFail("\xf3\xa0\x8e\x83\xf3\x97\xad\x9e\xda\xb7\xf0\x90\xb9\xb7\xe3\x80\x82\xe2\x89\xaf\xe2\x80\x8c\xe1\xb7\xbe", true); } // [B1, V7]
5843test { try toUnicodeFail("\xf3\xa0\x8e\x83\xf3\x97\xad\x9e\xda\xb7\xf0\x90\xb9\xb7\xe3\x80\x82>\xcc\xb8\xe2\x80\x8c\xe1\xb7\xbe"); } // [B1, C1, V7]14369test { try toUnicodeFail("\xf3\xa0\x8e\x83\xf3\x97\xad\x9e\xda\xb7\xf0\x90\xb9\xb7\xe3\x80\x82>\xcc\xb8\xe2\x80\x8c\xe1\xb7\xbe"); } // [B1, C1, V7]
14370test { try toAsciiFail("\xf3\xa0\x8e\x83\xf3\x97\xad\x9e\xda\xb7\xf0\x90\xb9\xb7\xe3\x80\x82>\xcc\xb8\xe2\x80\x8c\xe1\xb7\xbe", false); } // [B1, C1, V7]
14371test { try toAsciiFail("\xf3\xa0\x8e\x83\xf3\x97\xad\x9e\xda\xb7\xf0\x90\xb9\xb7\xe3\x80\x82>\xcc\xb8\xe2\x80\x8c\xe1\xb7\xbe", true); } // [B1, V7]
5844test { try toUnicodeFail("xn--qkb4516kbi06fg2id.xn--zfg31q"); } // [B1, V7]14372test { try toUnicodeFail("xn--qkb4516kbi06fg2id.xn--zfg31q"); } // [B1, V7]
14373test { try toAsciiFail("xn--qkb4516kbi06fg2id.xn--zfg31q", false); } // [B1, V7]
14374test { try toAsciiFail("xn--qkb4516kbi06fg2id.xn--zfg31q", true); } // [B1, V7]
5845test { try toUnicodeFail("xn--qkb4516kbi06fg2id.xn--zfg59fm0c"); } // [B1, C1, V7]14375test { try toUnicodeFail("xn--qkb4516kbi06fg2id.xn--zfg59fm0c"); } // [B1, C1, V7]
14376test { try toAsciiFail("xn--qkb4516kbi06fg2id.xn--zfg59fm0c", false); } // [B1, C1, V7]
14377test { try toAsciiFail("xn--qkb4516kbi06fg2id.xn--zfg59fm0c", true); } // [B1, C1, V7]
5846test { try toUnicodeFail("\xe1\x9b\x8e\xf3\xa0\x85\x8d\xf3\xa0\x90\x95\xe2\x80\x8d\xef\xbd\xa1\xf0\x90\xb9\xbe\xf0\x90\xb9\xaa\xf0\x90\xbb\x9d-"); } // [B1, B6, C2, V3, V7]14378test { try toUnicodeFail("\xe1\x9b\x8e\xf3\xa0\x85\x8d\xf3\xa0\x90\x95\xe2\x80\x8d\xef\xbd\xa1\xf0\x90\xb9\xbe\xf0\x90\xb9\xaa\xf0\x90\xbb\x9d-"); } // [B1, B6, C2, V3, V7]
14379test { try toAsciiFail("\xe1\x9b\x8e\xf3\xa0\x85\x8d\xf3\xa0\x90\x95\xe2\x80\x8d\xef\xbd\xa1\xf0\x90\xb9\xbe\xf0\x90\xb9\xaa\xf0\x90\xbb\x9d-", false); } // [B1, B6, C2, V3, V7]
14380test { try toAsciiFail("\xe1\x9b\x8e\xf3\xa0\x85\x8d\xf3\xa0\x90\x95\xe2\x80\x8d\xef\xbd\xa1\xf0\x90\xb9\xbe\xf0\x90\xb9\xaa\xf0\x90\xbb\x9d-", true); } // [B1, B6, V3, V7]
5847test { try toUnicodeFail("\xe1\x9b\x8e\xf3\xa0\x85\x8d\xf3\xa0\x90\x95\xe2\x80\x8d\xe3\x80\x82\xf0\x90\xb9\xbe\xf0\x90\xb9\xaa\xf0\x90\xbb\x9d-"); } // [B1, B6, C2, V3, V7]14381test { try toUnicodeFail("\xe1\x9b\x8e\xf3\xa0\x85\x8d\xf3\xa0\x90\x95\xe2\x80\x8d\xe3\x80\x82\xf0\x90\xb9\xbe\xf0\x90\xb9\xaa\xf0\x90\xbb\x9d-"); } // [B1, B6, C2, V3, V7]
14382test { try toAsciiFail("\xe1\x9b\x8e\xf3\xa0\x85\x8d\xf3\xa0\x90\x95\xe2\x80\x8d\xe3\x80\x82\xf0\x90\xb9\xbe\xf0\x90\xb9\xaa\xf0\x90\xbb\x9d-", false); } // [B1, B6, C2, V3, V7]
14383test { try toAsciiFail("\xe1\x9b\x8e\xf3\xa0\x85\x8d\xf3\xa0\x90\x95\xe2\x80\x8d\xe3\x80\x82\xf0\x90\xb9\xbe\xf0\x90\xb9\xaa\xf0\x90\xbb\x9d-", true); } // [B1, B6, V3, V7]
5848test { try toUnicodeFail("xn--fxe63563p.xn----q26i2bvu"); } // [B1, B6, V3, V7]14384test { try toUnicodeFail("xn--fxe63563p.xn----q26i2bvu"); } // [B1, B6, V3, V7]
14385test { try toAsciiFail("xn--fxe63563p.xn----q26i2bvu", false); } // [B1, B6, V3, V7]
14386test { try toAsciiFail("xn--fxe63563p.xn----q26i2bvu", true); } // [B1, B6, V3, V7]
5849test { try toUnicodeFail("xn--fxe848bq3411a.xn----q26i2bvu"); } // [B1, B6, C2, V3, V7]14387test { try toUnicodeFail("xn--fxe848bq3411a.xn----q26i2bvu"); } // [B1, B6, C2, V3, V7]
14388test { try toAsciiFail("xn--fxe848bq3411a.xn----q26i2bvu", false); } // [B1, B6, C2, V3, V7]
14389test { try toAsciiFail("xn--fxe848bq3411a.xn----q26i2bvu", true); } // [B1, B6, C2, V3, V7]
5850test { try toUnicodeFail("\xf0\x90\xb9\xb6.\xf0\x90\xab\x82"); } // [B1]14390test { try toUnicodeFail("\xf0\x90\xb9\xb6.\xf0\x90\xab\x82"); } // [B1]
14391test { try toAsciiFail("\xf0\x90\xb9\xb6.\xf0\x90\xab\x82", false); } // [B1]
14392test { try toAsciiFail("\xf0\x90\xb9\xb6.\xf0\x90\xab\x82", true); } // [B1]
5851test { try toUnicodeFail("xn--uo0d.xn--rw9c"); } // [B1]14393test { try toUnicodeFail("xn--uo0d.xn--rw9c"); } // [B1]
14394test { try toAsciiFail("xn--uo0d.xn--rw9c", false); } // [B1]
14395test { try toAsciiFail("xn--uo0d.xn--rw9c", true); } // [B1]
5852test { try toUnicodeFail("\xc3\x9f\xe2\x80\x8d\xe1\x80\xba\xef\xbd\xa1\xe2\x92\x88"); } // [C2, V7]14396test { try toUnicodeFail("\xc3\x9f\xe2\x80\x8d\xe1\x80\xba\xef\xbd\xa1\xe2\x92\x88"); } // [C2, V7]
14397test { try toAsciiFail("\xc3\x9f\xe2\x80\x8d\xe1\x80\xba\xef\xbd\xa1\xe2\x92\x88", false); } // [C2, V7]
14398test { try toAsciiFail("\xc3\x9f\xe2\x80\x8d\xe1\x80\xba\xef\xbd\xa1\xe2\x92\x88", true); } // [V7]
5853test { try toUnicodeFail("\xc3\x9f\xe2\x80\x8d\xe1\x80\xba\xe3\x80\x821."); } // [C2]14399test { try toUnicodeFail("\xc3\x9f\xe2\x80\x8d\xe1\x80\xba\xe3\x80\x821."); } // [C2]
14400test { try toAsciiFail("\xc3\x9f\xe2\x80\x8d\xe1\x80\xba\xe3\x80\x821.", false); } // [C2, A4_2]
14401test { try toAsciiFail("\xc3\x9f\xe2\x80\x8d\xe1\x80\xba\xe3\x80\x821.", true); } // [A4_2]
5854test { try toUnicodeFail("SS\xe2\x80\x8d\xe1\x80\xba\xe3\x80\x821."); } // [C2]14402test { try toUnicodeFail("SS\xe2\x80\x8d\xe1\x80\xba\xe3\x80\x821."); } // [C2]
14403test { try toAsciiFail("SS\xe2\x80\x8d\xe1\x80\xba\xe3\x80\x821.", false); } // [C2, A4_2]
14404test { try toAsciiFail("SS\xe2\x80\x8d\xe1\x80\xba\xe3\x80\x821.", true); } // [A4_2]
5855test { try toUnicodeFail("ss\xe2\x80\x8d\xe1\x80\xba\xe3\x80\x821."); } // [C2]14405test { try toUnicodeFail("ss\xe2\x80\x8d\xe1\x80\xba\xe3\x80\x821."); } // [C2]
14406test { try toAsciiFail("ss\xe2\x80\x8d\xe1\x80\xba\xe3\x80\x821.", false); } // [C2, A4_2]
14407test { try toAsciiFail("ss\xe2\x80\x8d\xe1\x80\xba\xe3\x80\x821.", true); } // [A4_2]
5856test { try toUnicodeFail("Ss\xe2\x80\x8d\xe1\x80\xba\xe3\x80\x821."); } // [C2]14408test { try toUnicodeFail("Ss\xe2\x80\x8d\xe1\x80\xba\xe3\x80\x821."); } // [C2]
14409test { try toAsciiFail("Ss\xe2\x80\x8d\xe1\x80\xba\xe3\x80\x821.", false); } // [C2, A4_2]
14410test { try toAsciiFail("Ss\xe2\x80\x8d\xe1\x80\xba\xe3\x80\x821.", true); } // [A4_2]
5857test { try toUnicodePass("xn--ss-f4j.b.", "ss\xe1\x80\xba.b."); }14411test { try toUnicodePass("xn--ss-f4j.b.", "ss\xe1\x80\xba.b."); }
14412test { try toAsciiFail("xn--ss-f4j.b.", false); } // [A4_2]
14413test { try toAsciiFail("xn--ss-f4j.b.", true); } // [A4_2]
5858test { try toUnicodePass("ss\xe1\x80\xba.b.", "ss\xe1\x80\xba.b."); }14414test { try toUnicodePass("ss\xe1\x80\xba.b.", "ss\xe1\x80\xba.b."); }
14415test { try toAsciiFail("ss\xe1\x80\xba.b.", false); } // [A4_2]
14416test { try toAsciiFail("ss\xe1\x80\xba.b.", true); } // [A4_2]
5859test { try toUnicodePass("SS\xe1\x80\xba.B.", "ss\xe1\x80\xba.b."); }14417test { try toUnicodePass("SS\xe1\x80\xba.B.", "ss\xe1\x80\xba.b."); }
14418test { try toAsciiFail("SS\xe1\x80\xba.B.", false); } // [A4_2]
14419test { try toAsciiFail("SS\xe1\x80\xba.B.", true); } // [A4_2]
5860test { try toUnicodePass("Ss\xe1\x80\xba.b.", "ss\xe1\x80\xba.b."); }14420test { try toUnicodePass("Ss\xe1\x80\xba.b.", "ss\xe1\x80\xba.b."); }
14421test { try toAsciiFail("Ss\xe1\x80\xba.b.", false); } // [A4_2]
14422test { try toAsciiFail("Ss\xe1\x80\xba.b.", true); } // [A4_2]
5861test { try toUnicodeFail("xn--ss-f4j585j.b."); } // [C2]14423test { try toUnicodeFail("xn--ss-f4j585j.b."); } // [C2]
14424test { try toAsciiFail("xn--ss-f4j585j.b.", false); } // [C2, A4_2]
14425test { try toAsciiFail("xn--ss-f4j585j.b.", true); } // [C2, A4_2]
5862test { try toUnicodeFail("xn--zca679eh2l.b."); } // [C2]14426test { try toUnicodeFail("xn--zca679eh2l.b."); } // [C2]
14427test { try toAsciiFail("xn--zca679eh2l.b.", false); } // [C2, A4_2]
14428test { try toAsciiFail("xn--zca679eh2l.b.", true); } // [C2, A4_2]
5863test { try toUnicodeFail("SS\xe2\x80\x8d\xe1\x80\xba\xef\xbd\xa1\xe2\x92\x88"); } // [C2, V7]14429test { try toUnicodeFail("SS\xe2\x80\x8d\xe1\x80\xba\xef\xbd\xa1\xe2\x92\x88"); } // [C2, V7]
14430test { try toAsciiFail("SS\xe2\x80\x8d\xe1\x80\xba\xef\xbd\xa1\xe2\x92\x88", false); } // [C2, V7]
14431test { try toAsciiFail("SS\xe2\x80\x8d\xe1\x80\xba\xef\xbd\xa1\xe2\x92\x88", true); } // [V7]
5864test { try toUnicodeFail("ss\xe2\x80\x8d\xe1\x80\xba\xef\xbd\xa1\xe2\x92\x88"); } // [C2, V7]14432test { try toUnicodeFail("ss\xe2\x80\x8d\xe1\x80\xba\xef\xbd\xa1\xe2\x92\x88"); } // [C2, V7]
14433test { try toAsciiFail("ss\xe2\x80\x8d\xe1\x80\xba\xef\xbd\xa1\xe2\x92\x88", false); } // [C2, V7]
14434test { try toAsciiFail("ss\xe2\x80\x8d\xe1\x80\xba\xef\xbd\xa1\xe2\x92\x88", true); } // [V7]
5865test { try toUnicodeFail("Ss\xe2\x80\x8d\xe1\x80\xba\xef\xbd\xa1\xe2\x92\x88"); } // [C2, V7]14435test { try toUnicodeFail("Ss\xe2\x80\x8d\xe1\x80\xba\xef\xbd\xa1\xe2\x92\x88"); } // [C2, V7]
14436test { try toAsciiFail("Ss\xe2\x80\x8d\xe1\x80\xba\xef\xbd\xa1\xe2\x92\x88", false); } // [C2, V7]
14437test { try toAsciiFail("Ss\xe2\x80\x8d\xe1\x80\xba\xef\xbd\xa1\xe2\x92\x88", true); } // [V7]
5866test { try toUnicodeFail("xn--ss-f4j.xn--tsh"); } // [V7]14438test { try toUnicodeFail("xn--ss-f4j.xn--tsh"); } // [V7]
14439test { try toAsciiFail("xn--ss-f4j.xn--tsh", false); } // [V7]
14440test { try toAsciiFail("xn--ss-f4j.xn--tsh", true); } // [V7]
5867test { try toUnicodeFail("xn--ss-f4j585j.xn--tsh"); } // [C2, V7]14441test { try toUnicodeFail("xn--ss-f4j585j.xn--tsh"); } // [C2, V7]
14442test { try toAsciiFail("xn--ss-f4j585j.xn--tsh", false); } // [C2, V7]
14443test { try toAsciiFail("xn--ss-f4j585j.xn--tsh", true); } // [C2, V7]
5868test { try toUnicodeFail("xn--zca679eh2l.xn--tsh"); } // [C2, V7]14444test { try toUnicodeFail("xn--zca679eh2l.xn--tsh"); } // [C2, V7]
14445test { try toAsciiFail("xn--zca679eh2l.xn--tsh", false); } // [C2, V7]
14446test { try toAsciiFail("xn--zca679eh2l.xn--tsh", true); } // [C2, V7]
5869test { try toUnicodePass("SS\xe1\x80\xba.b.", "ss\xe1\x80\xba.b."); }14447test { try toUnicodePass("SS\xe1\x80\xba.b.", "ss\xe1\x80\xba.b."); }
14448test { try toAsciiFail("SS\xe1\x80\xba.b.", false); } // [A4_2]
14449test { try toAsciiFail("SS\xe1\x80\xba.b.", true); } // [A4_2]
5870test { try toUnicodeFail("\xe0\xad\x8d\xe2\x80\x8c\xf0\x99\xb6\xb5\xf0\x9e\xbb\x98\xe3\x80\x82\xe2\x80\x8d"); } // [B1, C2, V6, V7]14450test { try toUnicodeFail("\xe0\xad\x8d\xe2\x80\x8c\xf0\x99\xb6\xb5\xf0\x9e\xbb\x98\xe3\x80\x82\xe2\x80\x8d"); } // [B1, C2, V6, V7]
14451test { try toAsciiFail("\xe0\xad\x8d\xe2\x80\x8c\xf0\x99\xb6\xb5\xf0\x9e\xbb\x98\xe3\x80\x82\xe2\x80\x8d", false); } // [B1, C2, V6, V7]
14452test { try toAsciiFail("\xe0\xad\x8d\xe2\x80\x8c\xf0\x99\xb6\xb5\xf0\x9e\xbb\x98\xe3\x80\x82\xe2\x80\x8d", true); } // [B1, V6, V7, A4_2]
5871test { try toUnicodeFail("xn--9ic6417rn4xb."); } // [B1, V6, V7]14453test { try toUnicodeFail("xn--9ic6417rn4xb."); } // [B1, V6, V7]
14454test { try toAsciiFail("xn--9ic6417rn4xb.", false); } // [B1, V6, V7, A4_2]
14455test { try toAsciiFail("xn--9ic6417rn4xb.", true); } // [B1, V6, V7, A4_2]
5872test { try toUnicodeFail("xn--9ic637hz82z32jc.xn--1ug"); } // [B1, C2, V6, V7]14456test { try toUnicodeFail("xn--9ic637hz82z32jc.xn--1ug"); } // [B1, C2, V6, V7]
14457test { try toAsciiFail("xn--9ic637hz82z32jc.xn--1ug", false); } // [B1, C2, V6, V7]
14458test { try toAsciiFail("xn--9ic637hz82z32jc.xn--1ug", true); } // [B1, C2, V6, V7]
5873test { try toUnicodeFail("\xf0\x90\xae\x85\xef\xbd\xa1\xda\xbc\xf0\x9f\x81\x95"); } // [B3]14459test { try toUnicodeFail("\xf0\x90\xae\x85\xef\xbd\xa1\xda\xbc\xf0\x9f\x81\x95"); } // [B3]
14460test { try toAsciiFail("\xf0\x90\xae\x85\xef\xbd\xa1\xda\xbc\xf0\x9f\x81\x95", false); } // [B3]
14461test { try toAsciiFail("\xf0\x90\xae\x85\xef\xbd\xa1\xda\xbc\xf0\x9f\x81\x95", true); } // [B3]
5874test { try toUnicodeFail("\xf0\x90\xae\x85\xe3\x80\x82\xda\xbc\xf0\x9f\x81\x95"); } // [B3]14462test { try toUnicodeFail("\xf0\x90\xae\x85\xe3\x80\x82\xda\xbc\xf0\x9f\x81\x95"); } // [B3]
14463test { try toAsciiFail("\xf0\x90\xae\x85\xe3\x80\x82\xda\xbc\xf0\x9f\x81\x95", false); } // [B3]
14464test { try toAsciiFail("\xf0\x90\xae\x85\xe3\x80\x82\xda\xbc\xf0\x9f\x81\x95", true); } // [B3]
5875test { try toUnicodeFail("xn--c29c.xn--vkb8871w"); } // [B3]14465test { try toUnicodeFail("xn--c29c.xn--vkb8871w"); } // [B3]
14466test { try toAsciiFail("xn--c29c.xn--vkb8871w", false); } // [B3]
14467test { try toAsciiFail("xn--c29c.xn--vkb8871w", true); } // [B3]
5876test { try toUnicodeFail("\xd8\xa0\xe1\x9f\x92\xe3\x80\x82\xf0\x90\xab\x94\xf3\xa0\x80\xa7\xe2\x80\x8c\xf0\x91\x88\xb5"); } // [B2, B3, C1, V7]14468test { try toUnicodeFail("\xd8\xa0\xe1\x9f\x92\xe3\x80\x82\xf0\x90\xab\x94\xf3\xa0\x80\xa7\xe2\x80\x8c\xf0\x91\x88\xb5"); } // [B2, B3, C1, V7]
14469test { try toAsciiFail("\xd8\xa0\xe1\x9f\x92\xe3\x80\x82\xf0\x90\xab\x94\xf3\xa0\x80\xa7\xe2\x80\x8c\xf0\x91\x88\xb5", false); } // [B2, B3, C1, V7]
14470test { try toAsciiFail("\xd8\xa0\xe1\x9f\x92\xe3\x80\x82\xf0\x90\xab\x94\xf3\xa0\x80\xa7\xe2\x80\x8c\xf0\x91\x88\xb5", true); } // [B2, B3, V7]
5877test { try toUnicodeFail("xn--fgb471g.xn--9w9c29jw3931a"); } // [B2, B3, V7]14471test { try toUnicodeFail("xn--fgb471g.xn--9w9c29jw3931a"); } // [B2, B3, V7]
14472test { try toAsciiFail("xn--fgb471g.xn--9w9c29jw3931a", false); } // [B2, B3, V7]
14473test { try toAsciiFail("xn--fgb471g.xn--9w9c29jw3931a", true); } // [B2, B3, V7]
5878test { try toUnicodeFail("xn--fgb471g.xn--0ug9853g7verp838a"); } // [B2, B3, C1, V7]14474test { try toUnicodeFail("xn--fgb471g.xn--0ug9853g7verp838a"); } // [B2, B3, C1, V7]
14475test { try toAsciiFail("xn--fgb471g.xn--0ug9853g7verp838a", false); } // [B2, B3, C1, V7]
14476test { try toAsciiFail("xn--fgb471g.xn--0ug9853g7verp838a", true); } // [B2, B3, C1, V7]
5879test { try toUnicodeFail("\xf1\x8b\x89\x95.\xf0\x9e\xa3\x95\xf0\x9e\xa4\x8a"); } // [B1, V6, V7]14477test { try toUnicodeFail("\xf1\x8b\x89\x95.\xf0\x9e\xa3\x95\xf0\x9e\xa4\x8a"); } // [B1, V6, V7]
14478test { try toAsciiFail("\xf1\x8b\x89\x95.\xf0\x9e\xa3\x95\xf0\x9e\xa4\x8a", false); } // [B1, V6, V7]
14479test { try toAsciiFail("\xf1\x8b\x89\x95.\xf0\x9e\xa3\x95\xf0\x9e\xa4\x8a", true); } // [B1, V6, V7]
5880test { try toUnicodeFail("\xf1\x8b\x89\x95.\xf0\x9e\xa3\x95\xf0\x9e\xa4\xac"); } // [B1, V6, V7]14480test { try toUnicodeFail("\xf1\x8b\x89\x95.\xf0\x9e\xa3\x95\xf0\x9e\xa4\xac"); } // [B1, V6, V7]
14481test { try toAsciiFail("\xf1\x8b\x89\x95.\xf0\x9e\xa3\x95\xf0\x9e\xa4\xac", false); } // [B1, V6, V7]
14482test { try toAsciiFail("\xf1\x8b\x89\x95.\xf0\x9e\xa3\x95\xf0\x9e\xa4\xac", true); } // [B1, V6, V7]
5881test { try toUnicodeFail("xn--tf5w.xn--2b6hof"); } // [B1, V6, V7]14483test { try toUnicodeFail("xn--tf5w.xn--2b6hof"); } // [B1, V6, V7]
14484test { try toAsciiFail("xn--tf5w.xn--2b6hof", false); } // [B1, V6, V7]
14485test { try toAsciiFail("xn--tf5w.xn--2b6hof", true); } // [B1, V6, V7]
5882test { try toUnicodePass("\xdb\x8c\xf0\x90\xa8\xbf\xef\xbc\x8e\xc3\x9f\xe0\xbe\x84\xf0\x91\x8d\xac", "\xdb\x8c\xf0\x90\xa8\xbf.\xc3\x9f\xe0\xbe\x84\xf0\x91\x8d\xac"); }14486test { try toUnicodePass("\xdb\x8c\xf0\x90\xa8\xbf\xef\xbc\x8e\xc3\x9f\xe0\xbe\x84\xf0\x91\x8d\xac", "\xdb\x8c\xf0\x90\xa8\xbf.\xc3\x9f\xe0\xbe\x84\xf0\x91\x8d\xac"); }
5883test { try toAsciiPass("\xdb\x8c\xf0\x90\xa8\xbf\xef\xbc\x8e\xc3\x9f\xe0\xbe\x84\xf0\x91\x8d\xac", "xn--clb2593k.xn--zca216edt0r", false); }14487test { try toAsciiPass("\xdb\x8c\xf0\x90\xa8\xbf\xef\xbc\x8e\xc3\x9f\xe0\xbe\x84\xf0\x91\x8d\xac", "xn--clb2593k.xn--zca216edt0r", false); }
5884test { try toAsciiPass("\xdb\x8c\xf0\x90\xa8\xbf\xef\xbc\x8e\xc3\x9f\xe0\xbe\x84\xf0\x91\x8d\xac", "xn--clb2593k.xn--ss-toj6092t", true); }14488test { try toAsciiPass("\xdb\x8c\xf0\x90\xa8\xbf\xef\xbc\x8e\xc3\x9f\xe0\xbe\x84\xf0\x91\x8d\xac", "xn--clb2593k.xn--ss-toj6092t", true); }
...@@ -5910,94 +14514,272 @@ test { try toUnicodePass("\xdb\x8c\xf0\x90\xa8\xbf\xef\xbc\x8eSs\xe0\xbe\x84\xf0...@@ -5910,94 +14514,272 @@ test { try toUnicodePass("\xdb\x8c\xf0\x90\xa8\xbf\xef\xbc\x8eSs\xe0\xbe\x84\xf0
5910test { try toAsciiPass("\xdb\x8c\xf0\x90\xa8\xbf\xef\xbc\x8eSs\xe0\xbe\x84\xf0\x91\x8d\xac", "xn--clb2593k.xn--ss-toj6092t", false); }14514test { try toAsciiPass("\xdb\x8c\xf0\x90\xa8\xbf\xef\xbc\x8eSs\xe0\xbe\x84\xf0\x91\x8d\xac", "xn--clb2593k.xn--ss-toj6092t", false); }
5911test { try toAsciiPass("\xdb\x8c\xf0\x90\xa8\xbf\xef\xbc\x8eSs\xe0\xbe\x84\xf0\x91\x8d\xac", "xn--clb2593k.xn--ss-toj6092t", true); }14515test { try toAsciiPass("\xdb\x8c\xf0\x90\xa8\xbf\xef\xbc\x8eSs\xe0\xbe\x84\xf0\x91\x8d\xac", "xn--clb2593k.xn--ss-toj6092t", true); }
5912test { try toUnicodeFail("\xf0\x9d\x9f\xa0\xe2\x89\xae\xe2\x80\x8c\xef\xbd\xa1\xf3\xa0\x85\xb1\xe1\x9e\xb4"); } // [C1]14516test { try toUnicodeFail("\xf0\x9d\x9f\xa0\xe2\x89\xae\xe2\x80\x8c\xef\xbd\xa1\xf3\xa0\x85\xb1\xe1\x9e\xb4"); } // [C1]
14517test { try toAsciiFail("\xf0\x9d\x9f\xa0\xe2\x89\xae\xe2\x80\x8c\xef\xbd\xa1\xf3\xa0\x85\xb1\xe1\x9e\xb4", false); } // [C1, A4_2]
14518test { try toAsciiFail("\xf0\x9d\x9f\xa0\xe2\x89\xae\xe2\x80\x8c\xef\xbd\xa1\xf3\xa0\x85\xb1\xe1\x9e\xb4", true); } // [A4_2]
5913test { try toUnicodeFail("\xf0\x9d\x9f\xa0<\xcc\xb8\xe2\x80\x8c\xef\xbd\xa1\xf3\xa0\x85\xb1\xe1\x9e\xb4"); } // [C1]14519test { try toUnicodeFail("\xf0\x9d\x9f\xa0<\xcc\xb8\xe2\x80\x8c\xef\xbd\xa1\xf3\xa0\x85\xb1\xe1\x9e\xb4"); } // [C1]
14520test { try toAsciiFail("\xf0\x9d\x9f\xa0<\xcc\xb8\xe2\x80\x8c\xef\xbd\xa1\xf3\xa0\x85\xb1\xe1\x9e\xb4", false); } // [C1, A4_2]
14521test { try toAsciiFail("\xf0\x9d\x9f\xa0<\xcc\xb8\xe2\x80\x8c\xef\xbd\xa1\xf3\xa0\x85\xb1\xe1\x9e\xb4", true); } // [A4_2]
5914test { try toUnicodeFail("8\xe2\x89\xae\xe2\x80\x8c\xe3\x80\x82\xf3\xa0\x85\xb1\xe1\x9e\xb4"); } // [C1]14522test { try toUnicodeFail("8\xe2\x89\xae\xe2\x80\x8c\xe3\x80\x82\xf3\xa0\x85\xb1\xe1\x9e\xb4"); } // [C1]
14523test { try toAsciiFail("8\xe2\x89\xae\xe2\x80\x8c\xe3\x80\x82\xf3\xa0\x85\xb1\xe1\x9e\xb4", false); } // [C1, A4_2]
14524test { try toAsciiFail("8\xe2\x89\xae\xe2\x80\x8c\xe3\x80\x82\xf3\xa0\x85\xb1\xe1\x9e\xb4", true); } // [A4_2]
5915test { try toUnicodeFail("8<\xcc\xb8\xe2\x80\x8c\xe3\x80\x82\xf3\xa0\x85\xb1\xe1\x9e\xb4"); } // [C1]14525test { try toUnicodeFail("8<\xcc\xb8\xe2\x80\x8c\xe3\x80\x82\xf3\xa0\x85\xb1\xe1\x9e\xb4"); } // [C1]
14526test { try toAsciiFail("8<\xcc\xb8\xe2\x80\x8c\xe3\x80\x82\xf3\xa0\x85\xb1\xe1\x9e\xb4", false); } // [C1, A4_2]
14527test { try toAsciiFail("8<\xcc\xb8\xe2\x80\x8c\xe3\x80\x82\xf3\xa0\x85\xb1\xe1\x9e\xb4", true); } // [A4_2]
5916test { try toUnicodePass("xn--8-ngo.", "8\xe2\x89\xae."); }14528test { try toUnicodePass("xn--8-ngo.", "8\xe2\x89\xae."); }
14529test { try toAsciiFail("xn--8-ngo.", false); } // [A4_2]
14530test { try toAsciiFail("xn--8-ngo.", true); } // [A4_2]
5917test { try toUnicodePass("8\xe2\x89\xae.", "8\xe2\x89\xae."); }14531test { try toUnicodePass("8\xe2\x89\xae.", "8\xe2\x89\xae."); }
14532test { try toAsciiFail("8\xe2\x89\xae.", false); } // [A4_2]
14533test { try toAsciiFail("8\xe2\x89\xae.", true); } // [A4_2]
5918test { try toUnicodePass("8<\xcc\xb8.", "8\xe2\x89\xae."); }14534test { try toUnicodePass("8<\xcc\xb8.", "8\xe2\x89\xae."); }
14535test { try toAsciiFail("8<\xcc\xb8.", false); } // [A4_2]
14536test { try toAsciiFail("8<\xcc\xb8.", true); } // [A4_2]
5919test { try toUnicodeFail("xn--8-sgn10i."); } // [C1]14537test { try toUnicodeFail("xn--8-sgn10i."); } // [C1]
14538test { try toAsciiFail("xn--8-sgn10i.", false); } // [C1, A4_2]
14539test { try toAsciiFail("xn--8-sgn10i.", true); } // [C1, A4_2]
5920test { try toUnicodeFail("xn--8-ngo.xn--z3e"); } // [V6, V7]14540test { try toUnicodeFail("xn--8-ngo.xn--z3e"); } // [V6, V7]
14541test { try toAsciiFail("xn--8-ngo.xn--z3e", false); } // [V6, V7]
14542test { try toAsciiFail("xn--8-ngo.xn--z3e", true); } // [V6, V7]
5921test { try toUnicodeFail("xn--8-sgn10i.xn--z3e"); } // [C1, V6, V7]14543test { try toUnicodeFail("xn--8-sgn10i.xn--z3e"); } // [C1, V6, V7]
14544test { try toAsciiFail("xn--8-sgn10i.xn--z3e", false); } // [C1, V6, V7]
14545test { try toAsciiFail("xn--8-sgn10i.xn--z3e", true); } // [C1, V6, V7]
5922test { try toUnicodeFail("\xe1\xa2\x95\xe2\x89\xaf\xef\xb8\x92\xf1\x84\x82\xaf\xef\xbc\x8e\xe1\x82\xa0"); } // [V7]14546test { try toUnicodeFail("\xe1\xa2\x95\xe2\x89\xaf\xef\xb8\x92\xf1\x84\x82\xaf\xef\xbc\x8e\xe1\x82\xa0"); } // [V7]
14547test { try toAsciiFail("\xe1\xa2\x95\xe2\x89\xaf\xef\xb8\x92\xf1\x84\x82\xaf\xef\xbc\x8e\xe1\x82\xa0", false); } // [V7]
14548test { try toAsciiFail("\xe1\xa2\x95\xe2\x89\xaf\xef\xb8\x92\xf1\x84\x82\xaf\xef\xbc\x8e\xe1\x82\xa0", true); } // [V7]
5923test { try toUnicodeFail("\xe1\xa2\x95>\xcc\xb8\xef\xb8\x92\xf1\x84\x82\xaf\xef\xbc\x8e\xe1\x82\xa0"); } // [V7]14549test { try toUnicodeFail("\xe1\xa2\x95>\xcc\xb8\xef\xb8\x92\xf1\x84\x82\xaf\xef\xbc\x8e\xe1\x82\xa0"); } // [V7]
14550test { try toAsciiFail("\xe1\xa2\x95>\xcc\xb8\xef\xb8\x92\xf1\x84\x82\xaf\xef\xbc\x8e\xe1\x82\xa0", false); } // [V7]
14551test { try toAsciiFail("\xe1\xa2\x95>\xcc\xb8\xef\xb8\x92\xf1\x84\x82\xaf\xef\xbc\x8e\xe1\x82\xa0", true); } // [V7]
5924test { try toUnicodeFail("\xe1\xa2\x95\xe2\x89\xaf\xe3\x80\x82\xf1\x84\x82\xaf.\xe1\x82\xa0"); } // [V7]14552test { try toUnicodeFail("\xe1\xa2\x95\xe2\x89\xaf\xe3\x80\x82\xf1\x84\x82\xaf.\xe1\x82\xa0"); } // [V7]
14553test { try toAsciiFail("\xe1\xa2\x95\xe2\x89\xaf\xe3\x80\x82\xf1\x84\x82\xaf.\xe1\x82\xa0", false); } // [V7]
14554test { try toAsciiFail("\xe1\xa2\x95\xe2\x89\xaf\xe3\x80\x82\xf1\x84\x82\xaf.\xe1\x82\xa0", true); } // [V7]
5925test { try toUnicodeFail("\xe1\xa2\x95>\xcc\xb8\xe3\x80\x82\xf1\x84\x82\xaf.\xe1\x82\xa0"); } // [V7]14555test { try toUnicodeFail("\xe1\xa2\x95>\xcc\xb8\xe3\x80\x82\xf1\x84\x82\xaf.\xe1\x82\xa0"); } // [V7]
14556test { try toAsciiFail("\xe1\xa2\x95>\xcc\xb8\xe3\x80\x82\xf1\x84\x82\xaf.\xe1\x82\xa0", false); } // [V7]
14557test { try toAsciiFail("\xe1\xa2\x95>\xcc\xb8\xe3\x80\x82\xf1\x84\x82\xaf.\xe1\x82\xa0", true); } // [V7]
5926test { try toUnicodeFail("\xe1\xa2\x95>\xcc\xb8\xe3\x80\x82\xf1\x84\x82\xaf.\xe2\xb4\x80"); } // [V7]14558test { try toUnicodeFail("\xe1\xa2\x95>\xcc\xb8\xe3\x80\x82\xf1\x84\x82\xaf.\xe2\xb4\x80"); } // [V7]
14559test { try toAsciiFail("\xe1\xa2\x95>\xcc\xb8\xe3\x80\x82\xf1\x84\x82\xaf.\xe2\xb4\x80", false); } // [V7]
14560test { try toAsciiFail("\xe1\xa2\x95>\xcc\xb8\xe3\x80\x82\xf1\x84\x82\xaf.\xe2\xb4\x80", true); } // [V7]
5927test { try toUnicodeFail("\xe1\xa2\x95\xe2\x89\xaf\xe3\x80\x82\xf1\x84\x82\xaf.\xe2\xb4\x80"); } // [V7]14561test { try toUnicodeFail("\xe1\xa2\x95\xe2\x89\xaf\xe3\x80\x82\xf1\x84\x82\xaf.\xe2\xb4\x80"); } // [V7]
14562test { try toAsciiFail("\xe1\xa2\x95\xe2\x89\xaf\xe3\x80\x82\xf1\x84\x82\xaf.\xe2\xb4\x80", false); } // [V7]
14563test { try toAsciiFail("\xe1\xa2\x95\xe2\x89\xaf\xe3\x80\x82\xf1\x84\x82\xaf.\xe2\xb4\x80", true); } // [V7]
5928test { try toUnicodeFail("xn--fbf851c.xn--ko1u.xn--rkj"); } // [V7]14564test { try toUnicodeFail("xn--fbf851c.xn--ko1u.xn--rkj"); } // [V7]
14565test { try toAsciiFail("xn--fbf851c.xn--ko1u.xn--rkj", false); } // [V7]
14566test { try toAsciiFail("xn--fbf851c.xn--ko1u.xn--rkj", true); } // [V7]
5929test { try toUnicodeFail("\xe1\xa2\x95>\xcc\xb8\xef\xb8\x92\xf1\x84\x82\xaf\xef\xbc\x8e\xe2\xb4\x80"); } // [V7]14567test { try toUnicodeFail("\xe1\xa2\x95>\xcc\xb8\xef\xb8\x92\xf1\x84\x82\xaf\xef\xbc\x8e\xe2\xb4\x80"); } // [V7]
14568test { try toAsciiFail("\xe1\xa2\x95>\xcc\xb8\xef\xb8\x92\xf1\x84\x82\xaf\xef\xbc\x8e\xe2\xb4\x80", false); } // [V7]
14569test { try toAsciiFail("\xe1\xa2\x95>\xcc\xb8\xef\xb8\x92\xf1\x84\x82\xaf\xef\xbc\x8e\xe2\xb4\x80", true); } // [V7]
5930test { try toUnicodeFail("\xe1\xa2\x95\xe2\x89\xaf\xef\xb8\x92\xf1\x84\x82\xaf\xef\xbc\x8e\xe2\xb4\x80"); } // [V7]14570test { try toUnicodeFail("\xe1\xa2\x95\xe2\x89\xaf\xef\xb8\x92\xf1\x84\x82\xaf\xef\xbc\x8e\xe2\xb4\x80"); } // [V7]
14571test { try toAsciiFail("\xe1\xa2\x95\xe2\x89\xaf\xef\xb8\x92\xf1\x84\x82\xaf\xef\xbc\x8e\xe2\xb4\x80", false); } // [V7]
14572test { try toAsciiFail("\xe1\xa2\x95\xe2\x89\xaf\xef\xb8\x92\xf1\x84\x82\xaf\xef\xbc\x8e\xe2\xb4\x80", true); } // [V7]
5931test { try toUnicodeFail("xn--fbf851cq98poxw1a.xn--rkj"); } // [V7]14573test { try toUnicodeFail("xn--fbf851cq98poxw1a.xn--rkj"); } // [V7]
14574test { try toAsciiFail("xn--fbf851cq98poxw1a.xn--rkj", false); } // [V7]
14575test { try toAsciiFail("xn--fbf851cq98poxw1a.xn--rkj", true); } // [V7]
5932test { try toUnicodeFail("xn--fbf851c.xn--ko1u.xn--7md"); } // [V7]14576test { try toUnicodeFail("xn--fbf851c.xn--ko1u.xn--7md"); } // [V7]
14577test { try toAsciiFail("xn--fbf851c.xn--ko1u.xn--7md", false); } // [V7]
14578test { try toAsciiFail("xn--fbf851c.xn--ko1u.xn--7md", true); } // [V7]
5933test { try toUnicodeFail("xn--fbf851cq98poxw1a.xn--7md"); } // [V7]14579test { try toUnicodeFail("xn--fbf851cq98poxw1a.xn--7md"); } // [V7]
14580test { try toAsciiFail("xn--fbf851cq98poxw1a.xn--7md", false); } // [V7]
14581test { try toAsciiFail("xn--fbf851cq98poxw1a.xn--7md", true); } // [V7]
5934test { try toUnicodeFail("\xe0\xbe\x9f\xef\xbc\x8e-\xe0\xa0\xaa"); } // [V3, V6]14582test { try toUnicodeFail("\xe0\xbe\x9f\xef\xbc\x8e-\xe0\xa0\xaa"); } // [V3, V6]
14583test { try toAsciiFail("\xe0\xbe\x9f\xef\xbc\x8e-\xe0\xa0\xaa", false); } // [V3, V6]
14584test { try toAsciiFail("\xe0\xbe\x9f\xef\xbc\x8e-\xe0\xa0\xaa", true); } // [V3, V6]
5935test { try toUnicodeFail("\xe0\xbe\x9f.-\xe0\xa0\xaa"); } // [V3, V6]14585test { try toUnicodeFail("\xe0\xbe\x9f.-\xe0\xa0\xaa"); } // [V3, V6]
14586test { try toAsciiFail("\xe0\xbe\x9f.-\xe0\xa0\xaa", false); } // [V3, V6]
14587test { try toAsciiFail("\xe0\xbe\x9f.-\xe0\xa0\xaa", true); } // [V3, V6]
5936test { try toUnicodeFail("xn--vfd.xn----fhd"); } // [V3, V6]14588test { try toUnicodeFail("xn--vfd.xn----fhd"); } // [V3, V6]
14589test { try toAsciiFail("xn--vfd.xn----fhd", false); } // [V3, V6]
14590test { try toAsciiFail("xn--vfd.xn----fhd", true); } // [V3, V6]
5937test { try toUnicodeFail("\xe1\xb5\xac\xf3\xa0\x86\xa0\xef\xbc\x8e\xed\x95\x92\xe2\x92\x92\xe2\x92\x88\xf4\x88\x84\xa6"); } // [V7]14591test { try toUnicodeFail("\xe1\xb5\xac\xf3\xa0\x86\xa0\xef\xbc\x8e\xed\x95\x92\xe2\x92\x92\xe2\x92\x88\xf4\x88\x84\xa6"); } // [V7]
14592test { try toAsciiFail("\xe1\xb5\xac\xf3\xa0\x86\xa0\xef\xbc\x8e\xed\x95\x92\xe2\x92\x92\xe2\x92\x88\xf4\x88\x84\xa6", false); } // [V7]
14593test { try toAsciiFail("\xe1\xb5\xac\xf3\xa0\x86\xa0\xef\xbc\x8e\xed\x95\x92\xe2\x92\x92\xe2\x92\x88\xf4\x88\x84\xa6", true); } // [V7]
5938test { try toUnicodeFail("\xe1\xb5\xac\xf3\xa0\x86\xa0\xef\xbc\x8e\xe1\x84\x91\xe1\x85\xb5\xe1\x86\xbd\xe2\x92\x92\xe2\x92\x88\xf4\x88\x84\xa6"); } // [V7]14594test { try toUnicodeFail("\xe1\xb5\xac\xf3\xa0\x86\xa0\xef\xbc\x8e\xe1\x84\x91\xe1\x85\xb5\xe1\x86\xbd\xe2\x92\x92\xe2\x92\x88\xf4\x88\x84\xa6"); } // [V7]
14595test { try toAsciiFail("\xe1\xb5\xac\xf3\xa0\x86\xa0\xef\xbc\x8e\xe1\x84\x91\xe1\x85\xb5\xe1\x86\xbd\xe2\x92\x92\xe2\x92\x88\xf4\x88\x84\xa6", false); } // [V7]
14596test { try toAsciiFail("\xe1\xb5\xac\xf3\xa0\x86\xa0\xef\xbc\x8e\xe1\x84\x91\xe1\x85\xb5\xe1\x86\xbd\xe2\x92\x92\xe2\x92\x88\xf4\x88\x84\xa6", true); } // [V7]
5939test { try toUnicodeFail("\xe1\xb5\xac\xf3\xa0\x86\xa0.\xed\x95\x9211.1.\xf4\x88\x84\xa6"); } // [V7]14597test { try toUnicodeFail("\xe1\xb5\xac\xf3\xa0\x86\xa0.\xed\x95\x9211.1.\xf4\x88\x84\xa6"); } // [V7]
14598test { try toAsciiFail("\xe1\xb5\xac\xf3\xa0\x86\xa0.\xed\x95\x9211.1.\xf4\x88\x84\xa6", false); } // [V7]
14599test { try toAsciiFail("\xe1\xb5\xac\xf3\xa0\x86\xa0.\xed\x95\x9211.1.\xf4\x88\x84\xa6", true); } // [V7]
5940test { try toUnicodeFail("\xe1\xb5\xac\xf3\xa0\x86\xa0.\xe1\x84\x91\xe1\x85\xb5\xe1\x86\xbd11.1.\xf4\x88\x84\xa6"); } // [V7]14600test { try toUnicodeFail("\xe1\xb5\xac\xf3\xa0\x86\xa0.\xe1\x84\x91\xe1\x85\xb5\xe1\x86\xbd11.1.\xf4\x88\x84\xa6"); } // [V7]
14601test { try toAsciiFail("\xe1\xb5\xac\xf3\xa0\x86\xa0.\xe1\x84\x91\xe1\x85\xb5\xe1\x86\xbd11.1.\xf4\x88\x84\xa6", false); } // [V7]
14602test { try toAsciiFail("\xe1\xb5\xac\xf3\xa0\x86\xa0.\xe1\x84\x91\xe1\x85\xb5\xe1\x86\xbd11.1.\xf4\x88\x84\xa6", true); } // [V7]
5941test { try toUnicodeFail("xn--tbg.xn--11-5o7k.1.xn--k469f"); } // [V7]14603test { try toUnicodeFail("xn--tbg.xn--11-5o7k.1.xn--k469f"); } // [V7]
14604test { try toAsciiFail("xn--tbg.xn--11-5o7k.1.xn--k469f", false); } // [V7]
14605test { try toAsciiFail("xn--tbg.xn--11-5o7k.1.xn--k469f", true); } // [V7]
5942test { try toUnicodeFail("xn--tbg.xn--tsht7586kyts9l"); } // [V7]14606test { try toUnicodeFail("xn--tbg.xn--tsht7586kyts9l"); } // [V7]
14607test { try toAsciiFail("xn--tbg.xn--tsht7586kyts9l", false); } // [V7]
14608test { try toAsciiFail("xn--tbg.xn--tsht7586kyts9l", true); } // [V7]
5943test { try toUnicodeFail("\xcf\x82\xf0\x91\x93\x82\xf0\x90\x8b\xa2\xef\xbc\x8e\xd9\xa8"); } // [B1]14609test { try toUnicodeFail("\xcf\x82\xf0\x91\x93\x82\xf0\x90\x8b\xa2\xef\xbc\x8e\xd9\xa8"); } // [B1]
14610test { try toAsciiFail("\xcf\x82\xf0\x91\x93\x82\xf0\x90\x8b\xa2\xef\xbc\x8e\xd9\xa8", false); } // [B1]
14611test { try toAsciiFail("\xcf\x82\xf0\x91\x93\x82\xf0\x90\x8b\xa2\xef\xbc\x8e\xd9\xa8", true); } // [B1]
5944test { try toUnicodeFail("\xcf\x82\xf0\x91\x93\x82\xf0\x90\x8b\xa2.\xd9\xa8"); } // [B1]14612test { try toUnicodeFail("\xcf\x82\xf0\x91\x93\x82\xf0\x90\x8b\xa2.\xd9\xa8"); } // [B1]
14613test { try toAsciiFail("\xcf\x82\xf0\x91\x93\x82\xf0\x90\x8b\xa2.\xd9\xa8", false); } // [B1]
14614test { try toAsciiFail("\xcf\x82\xf0\x91\x93\x82\xf0\x90\x8b\xa2.\xd9\xa8", true); } // [B1]
5945test { try toUnicodeFail("\xce\xa3\xf0\x91\x93\x82\xf0\x90\x8b\xa2.\xd9\xa8"); } // [B1]14615test { try toUnicodeFail("\xce\xa3\xf0\x91\x93\x82\xf0\x90\x8b\xa2.\xd9\xa8"); } // [B1]
14616test { try toAsciiFail("\xce\xa3\xf0\x91\x93\x82\xf0\x90\x8b\xa2.\xd9\xa8", false); } // [B1]
14617test { try toAsciiFail("\xce\xa3\xf0\x91\x93\x82\xf0\x90\x8b\xa2.\xd9\xa8", true); } // [B1]
5946test { try toUnicodeFail("\xcf\x83\xf0\x91\x93\x82\xf0\x90\x8b\xa2.\xd9\xa8"); } // [B1]14618test { try toUnicodeFail("\xcf\x83\xf0\x91\x93\x82\xf0\x90\x8b\xa2.\xd9\xa8"); } // [B1]
14619test { try toAsciiFail("\xcf\x83\xf0\x91\x93\x82\xf0\x90\x8b\xa2.\xd9\xa8", false); } // [B1]
14620test { try toAsciiFail("\xcf\x83\xf0\x91\x93\x82\xf0\x90\x8b\xa2.\xd9\xa8", true); } // [B1]
5947test { try toUnicodeFail("xn--4xa6371khhl.xn--hib"); } // [B1]14621test { try toUnicodeFail("xn--4xa6371khhl.xn--hib"); } // [B1]
14622test { try toAsciiFail("xn--4xa6371khhl.xn--hib", false); } // [B1]
14623test { try toAsciiFail("xn--4xa6371khhl.xn--hib", true); } // [B1]
5948test { try toUnicodeFail("xn--3xa8371khhl.xn--hib"); } // [B1]14624test { try toUnicodeFail("xn--3xa8371khhl.xn--hib"); } // [B1]
14625test { try toAsciiFail("xn--3xa8371khhl.xn--hib", false); } // [B1]
14626test { try toAsciiFail("xn--3xa8371khhl.xn--hib", true); } // [B1]
5949test { try toUnicodeFail("\xce\xa3\xf0\x91\x93\x82\xf0\x90\x8b\xa2\xef\xbc\x8e\xd9\xa8"); } // [B1]14627test { try toUnicodeFail("\xce\xa3\xf0\x91\x93\x82\xf0\x90\x8b\xa2\xef\xbc\x8e\xd9\xa8"); } // [B1]
14628test { try toAsciiFail("\xce\xa3\xf0\x91\x93\x82\xf0\x90\x8b\xa2\xef\xbc\x8e\xd9\xa8", false); } // [B1]
14629test { try toAsciiFail("\xce\xa3\xf0\x91\x93\x82\xf0\x90\x8b\xa2\xef\xbc\x8e\xd9\xa8", true); } // [B1]
5950test { try toUnicodeFail("\xcf\x83\xf0\x91\x93\x82\xf0\x90\x8b\xa2\xef\xbc\x8e\xd9\xa8"); } // [B1]14630test { try toUnicodeFail("\xcf\x83\xf0\x91\x93\x82\xf0\x90\x8b\xa2\xef\xbc\x8e\xd9\xa8"); } // [B1]
14631test { try toAsciiFail("\xcf\x83\xf0\x91\x93\x82\xf0\x90\x8b\xa2\xef\xbc\x8e\xd9\xa8", false); } // [B1]
14632test { try toAsciiFail("\xcf\x83\xf0\x91\x93\x82\xf0\x90\x8b\xa2\xef\xbc\x8e\xd9\xa8", true); } // [B1]
5951test { try toUnicodeFail("\xea\xa5\x93\xe2\x80\x8c\xf0\x90\x8b\xbb\xe2\x80\x8d.\xe2\xb7\xb8\xf0\x9e\xbf\x84\xf0\x90\xb9\xb2"); } // [B1, B6, C2, V6, V7]14633test { try toUnicodeFail("\xea\xa5\x93\xe2\x80\x8c\xf0\x90\x8b\xbb\xe2\x80\x8d.\xe2\xb7\xb8\xf0\x9e\xbf\x84\xf0\x90\xb9\xb2"); } // [B1, B6, C2, V6, V7]
14634test { try toAsciiFail("\xea\xa5\x93\xe2\x80\x8c\xf0\x90\x8b\xbb\xe2\x80\x8d.\xe2\xb7\xb8\xf0\x9e\xbf\x84\xf0\x90\xb9\xb2", false); } // [B1, B6, C2, V6, V7]
14635test { try toAsciiFail("\xea\xa5\x93\xe2\x80\x8c\xf0\x90\x8b\xbb\xe2\x80\x8d.\xe2\xb7\xb8\xf0\x9e\xbf\x84\xf0\x90\xb9\xb2", true); } // [B1, V6, V7]
5952test { try toUnicodeFail("xn--3j9a531o.xn--urju692efj0f"); } // [B1, V6, V7]14636test { try toUnicodeFail("xn--3j9a531o.xn--urju692efj0f"); } // [B1, V6, V7]
14637test { try toAsciiFail("xn--3j9a531o.xn--urju692efj0f", false); } // [B1, V6, V7]
14638test { try toAsciiFail("xn--3j9a531o.xn--urju692efj0f", true); } // [B1, V6, V7]
5953test { try toUnicodeFail("xn--0ugc8356he76c.xn--urju692efj0f"); } // [B1, B6, C2, V6, V7]14639test { try toUnicodeFail("xn--0ugc8356he76c.xn--urju692efj0f"); } // [B1, B6, C2, V6, V7]
14640test { try toAsciiFail("xn--0ugc8356he76c.xn--urju692efj0f", false); } // [B1, B6, C2, V6, V7]
14641test { try toAsciiFail("xn--0ugc8356he76c.xn--urju692efj0f", true); } // [B1, B6, C2, V6, V7]
5954test { try toUnicodeFail("\xe2\x8a\xbc\xe3\x80\x82\xf1\xaa\xa7\x96\xda\x95"); } // [B1, B5, B6, V7]14642test { try toUnicodeFail("\xe2\x8a\xbc\xe3\x80\x82\xf1\xaa\xa7\x96\xda\x95"); } // [B1, B5, B6, V7]
14643test { try toAsciiFail("\xe2\x8a\xbc\xe3\x80\x82\xf1\xaa\xa7\x96\xda\x95", false); } // [B1, B5, B6, V7]
14644test { try toAsciiFail("\xe2\x8a\xbc\xe3\x80\x82\xf1\xaa\xa7\x96\xda\x95", true); } // [B1, B5, B6, V7]
5955test { try toUnicodeFail("xn--ofh.xn--rjb13118f"); } // [B1, B5, B6, V7]14645test { try toUnicodeFail("xn--ofh.xn--rjb13118f"); } // [B1, B5, B6, V7]
14646test { try toAsciiFail("xn--ofh.xn--rjb13118f", false); } // [B1, B5, B6, V7]
14647test { try toAsciiFail("xn--ofh.xn--rjb13118f", true); } // [B1, B5, B6, V7]
5956test { try toUnicodeFail("\xf0\x90\xaf\xac\xf1\x96\x8b\x94\xe3\x80\x82\xf3\x9c\xb3\xa5"); } // [B2, B3, V7]14648test { try toUnicodeFail("\xf0\x90\xaf\xac\xf1\x96\x8b\x94\xe3\x80\x82\xf3\x9c\xb3\xa5"); } // [B2, B3, V7]
14649test { try toAsciiFail("\xf0\x90\xaf\xac\xf1\x96\x8b\x94\xe3\x80\x82\xf3\x9c\xb3\xa5", false); } // [B2, B3, V7]
14650test { try toAsciiFail("\xf0\x90\xaf\xac\xf1\x96\x8b\x94\xe3\x80\x82\xf3\x9c\xb3\xa5", true); } // [B2, B3, V7]
5957test { try toUnicodeFail("xn--949co370q.xn--7g25e"); } // [B2, B3, V7]14651test { try toUnicodeFail("xn--949co370q.xn--7g25e"); } // [B2, B3, V7]
14652test { try toAsciiFail("xn--949co370q.xn--7g25e", false); } // [B2, B3, V7]
14653test { try toAsciiFail("xn--949co370q.xn--7g25e", true); } // [B2, B3, V7]
5958test { try toUnicodeFail("\xd8\x81\xf0\x91\x8d\xa7\xdf\x9d\xe3\x80\x82\xcf\x82\xf2\xac\x8d\x98\xf0\x9f\x80\x9e\xe1\x9e\xb5"); } // [B1, B6, V7]14654test { try toUnicodeFail("\xd8\x81\xf0\x91\x8d\xa7\xdf\x9d\xe3\x80\x82\xcf\x82\xf2\xac\x8d\x98\xf0\x9f\x80\x9e\xe1\x9e\xb5"); } // [B1, B6, V7]
14655test { try toAsciiFail("\xd8\x81\xf0\x91\x8d\xa7\xdf\x9d\xe3\x80\x82\xcf\x82\xf2\xac\x8d\x98\xf0\x9f\x80\x9e\xe1\x9e\xb5", false); } // [B1, B6, V7]
14656test { try toAsciiFail("\xd8\x81\xf0\x91\x8d\xa7\xdf\x9d\xe3\x80\x82\xcf\x82\xf2\xac\x8d\x98\xf0\x9f\x80\x9e\xe1\x9e\xb5", true); } // [B1, B6, V7]
5959test { try toUnicodeFail("\xd8\x81\xf0\x91\x8d\xa7\xdf\x9d\xe3\x80\x82\xce\xa3\xf2\xac\x8d\x98\xf0\x9f\x80\x9e\xe1\x9e\xb5"); } // [B1, B6, V7]14657test { try toUnicodeFail("\xd8\x81\xf0\x91\x8d\xa7\xdf\x9d\xe3\x80\x82\xce\xa3\xf2\xac\x8d\x98\xf0\x9f\x80\x9e\xe1\x9e\xb5"); } // [B1, B6, V7]
14658test { try toAsciiFail("\xd8\x81\xf0\x91\x8d\xa7\xdf\x9d\xe3\x80\x82\xce\xa3\xf2\xac\x8d\x98\xf0\x9f\x80\x9e\xe1\x9e\xb5", false); } // [B1, B6, V7]
14659test { try toAsciiFail("\xd8\x81\xf0\x91\x8d\xa7\xdf\x9d\xe3\x80\x82\xce\xa3\xf2\xac\x8d\x98\xf0\x9f\x80\x9e\xe1\x9e\xb5", true); } // [B1, B6, V7]
5960test { try toUnicodeFail("\xd8\x81\xf0\x91\x8d\xa7\xdf\x9d\xe3\x80\x82\xcf\x83\xf2\xac\x8d\x98\xf0\x9f\x80\x9e\xe1\x9e\xb5"); } // [B1, B6, V7]14660test { try toUnicodeFail("\xd8\x81\xf0\x91\x8d\xa7\xdf\x9d\xe3\x80\x82\xcf\x83\xf2\xac\x8d\x98\xf0\x9f\x80\x9e\xe1\x9e\xb5"); } // [B1, B6, V7]
14661test { try toAsciiFail("\xd8\x81\xf0\x91\x8d\xa7\xdf\x9d\xe3\x80\x82\xcf\x83\xf2\xac\x8d\x98\xf0\x9f\x80\x9e\xe1\x9e\xb5", false); } // [B1, B6, V7]
14662test { try toAsciiFail("\xd8\x81\xf0\x91\x8d\xa7\xdf\x9d\xe3\x80\x82\xcf\x83\xf2\xac\x8d\x98\xf0\x9f\x80\x9e\xe1\x9e\xb5", true); } // [B1, B6, V7]
5961test { try toUnicodeFail("xn--jfb66gt010c.xn--4xa0023w4nq4c"); } // [B1, B6, V7]14663test { try toUnicodeFail("xn--jfb66gt010c.xn--4xa0023w4nq4c"); } // [B1, B6, V7]
14664test { try toAsciiFail("xn--jfb66gt010c.xn--4xa0023w4nq4c", false); } // [B1, B6, V7]
14665test { try toAsciiFail("xn--jfb66gt010c.xn--4xa0023w4nq4c", true); } // [B1, B6, V7]
5962test { try toUnicodeFail("xn--jfb66gt010c.xn--3xa2023w4nq4c"); } // [B1, B6, V7]14666test { try toUnicodeFail("xn--jfb66gt010c.xn--3xa2023w4nq4c"); } // [B1, B6, V7]
14667test { try toAsciiFail("xn--jfb66gt010c.xn--3xa2023w4nq4c", false); } // [B1, B6, V7]
14668test { try toAsciiFail("xn--jfb66gt010c.xn--3xa2023w4nq4c", true); } // [B1, B6, V7]
5963test { try toUnicodeFail("xn--jfb66gt010c.xn--4xa623h9p95ars26d"); } // [B1, B6, V7]14669test { try toUnicodeFail("xn--jfb66gt010c.xn--4xa623h9p95ars26d"); } // [B1, B6, V7]
14670test { try toAsciiFail("xn--jfb66gt010c.xn--4xa623h9p95ars26d", false); } // [B1, B6, V7]
14671test { try toAsciiFail("xn--jfb66gt010c.xn--4xa623h9p95ars26d", true); } // [B1, B6, V7]
5964test { try toUnicodeFail("xn--jfb66gt010c.xn--3xa823h9p95ars26d"); } // [B1, B6, V7]14672test { try toUnicodeFail("xn--jfb66gt010c.xn--3xa823h9p95ars26d"); } // [B1, B6, V7]
14673test { try toAsciiFail("xn--jfb66gt010c.xn--3xa823h9p95ars26d", false); } // [B1, B6, V7]
14674test { try toAsciiFail("xn--jfb66gt010c.xn--3xa823h9p95ars26d", true); } // [B1, B6, V7]
5965test { try toUnicodeFail("-\xf0\x90\xb3\xb2\xd9\x86\xf3\xa0\xba\x90\xe3\x80\x82\xea\xaf\xad\xf0\x9d\x9f\xa5"); } // [B1, V3, V6, V7]14675test { try toUnicodeFail("-\xf0\x90\xb3\xb2\xd9\x86\xf3\xa0\xba\x90\xe3\x80\x82\xea\xaf\xad\xf0\x9d\x9f\xa5"); } // [B1, V3, V6, V7]
14676test { try toAsciiFail("-\xf0\x90\xb3\xb2\xd9\x86\xf3\xa0\xba\x90\xe3\x80\x82\xea\xaf\xad\xf0\x9d\x9f\xa5", false); } // [B1, V3, V6, V7]
14677test { try toAsciiFail("-\xf0\x90\xb3\xb2\xd9\x86\xf3\xa0\xba\x90\xe3\x80\x82\xea\xaf\xad\xf0\x9d\x9f\xa5", true); } // [B1, V3, V6, V7]
5966test { try toUnicodeFail("-\xf0\x90\xb3\xb2\xd9\x86\xf3\xa0\xba\x90\xe3\x80\x82\xea\xaf\xad3"); } // [B1, V3, V6, V7]14678test { try toUnicodeFail("-\xf0\x90\xb3\xb2\xd9\x86\xf3\xa0\xba\x90\xe3\x80\x82\xea\xaf\xad3"); } // [B1, V3, V6, V7]
14679test { try toAsciiFail("-\xf0\x90\xb3\xb2\xd9\x86\xf3\xa0\xba\x90\xe3\x80\x82\xea\xaf\xad3", false); } // [B1, V3, V6, V7]
14680test { try toAsciiFail("-\xf0\x90\xb3\xb2\xd9\x86\xf3\xa0\xba\x90\xe3\x80\x82\xea\xaf\xad3", true); } // [B1, V3, V6, V7]
5967test { try toUnicodeFail("-\xf0\x90\xb2\xb2\xd9\x86\xf3\xa0\xba\x90\xe3\x80\x82\xea\xaf\xad3"); } // [B1, V3, V6, V7]14681test { try toUnicodeFail("-\xf0\x90\xb2\xb2\xd9\x86\xf3\xa0\xba\x90\xe3\x80\x82\xea\xaf\xad3"); } // [B1, V3, V6, V7]
14682test { try toAsciiFail("-\xf0\x90\xb2\xb2\xd9\x86\xf3\xa0\xba\x90\xe3\x80\x82\xea\xaf\xad3", false); } // [B1, V3, V6, V7]
14683test { try toAsciiFail("-\xf0\x90\xb2\xb2\xd9\x86\xf3\xa0\xba\x90\xe3\x80\x82\xea\xaf\xad3", true); } // [B1, V3, V6, V7]
5968test { try toUnicodeFail("xn----roc5482rek10i.xn--3-zw5e"); } // [B1, V3, V6, V7]14684test { try toUnicodeFail("xn----roc5482rek10i.xn--3-zw5e"); } // [B1, V3, V6, V7]
14685test { try toAsciiFail("xn----roc5482rek10i.xn--3-zw5e", false); } // [B1, V3, V6, V7]
14686test { try toAsciiFail("xn----roc5482rek10i.xn--3-zw5e", true); } // [B1, V3, V6, V7]
5969test { try toUnicodeFail("-\xf0\x90\xb2\xb2\xd9\x86\xf3\xa0\xba\x90\xe3\x80\x82\xea\xaf\xad\xf0\x9d\x9f\xa5"); } // [B1, V3, V6, V7]14687test { try toUnicodeFail("-\xf0\x90\xb2\xb2\xd9\x86\xf3\xa0\xba\x90\xe3\x80\x82\xea\xaf\xad\xf0\x9d\x9f\xa5"); } // [B1, V3, V6, V7]
14688test { try toAsciiFail("-\xf0\x90\xb2\xb2\xd9\x86\xf3\xa0\xba\x90\xe3\x80\x82\xea\xaf\xad\xf0\x9d\x9f\xa5", false); } // [B1, V3, V6, V7]
14689test { try toAsciiFail("-\xf0\x90\xb2\xb2\xd9\x86\xf3\xa0\xba\x90\xe3\x80\x82\xea\xaf\xad\xf0\x9d\x9f\xa5", true); } // [B1, V3, V6, V7]
5970test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\xb4\xa6\xef\xbd\xa1\xf1\xb2\xa8\x95\xe2\x89\xae\xf0\x90\xa6\x9c"); } // [B1, B5, B6, C1, V7]14690test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\xb4\xa6\xef\xbd\xa1\xf1\xb2\xa8\x95\xe2\x89\xae\xf0\x90\xa6\x9c"); } // [B1, B5, B6, C1, V7]
14691test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\xb4\xa6\xef\xbd\xa1\xf1\xb2\xa8\x95\xe2\x89\xae\xf0\x90\xa6\x9c", false); } // [B1, B5, B6, C1, V7]
14692test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\xb4\xa6\xef\xbd\xa1\xf1\xb2\xa8\x95\xe2\x89\xae\xf0\x90\xa6\x9c", true); } // [B1, B5, B6, V7]
5971test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\xb4\xa6\xef\xbd\xa1\xf1\xb2\xa8\x95<\xcc\xb8\xf0\x90\xa6\x9c"); } // [B1, B5, B6, C1, V7]14693test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\xb4\xa6\xef\xbd\xa1\xf1\xb2\xa8\x95<\xcc\xb8\xf0\x90\xa6\x9c"); } // [B1, B5, B6, C1, V7]
14694test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\xb4\xa6\xef\xbd\xa1\xf1\xb2\xa8\x95<\xcc\xb8\xf0\x90\xa6\x9c", false); } // [B1, B5, B6, C1, V7]
14695test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\xb4\xa6\xef\xbd\xa1\xf1\xb2\xa8\x95<\xcc\xb8\xf0\x90\xa6\x9c", true); } // [B1, B5, B6, V7]
5972test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\xb4\xa6\xe3\x80\x82\xf1\xb2\xa8\x95\xe2\x89\xae\xf0\x90\xa6\x9c"); } // [B1, B5, B6, C1, V7]14696test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\xb4\xa6\xe3\x80\x82\xf1\xb2\xa8\x95\xe2\x89\xae\xf0\x90\xa6\x9c"); } // [B1, B5, B6, C1, V7]
14697test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\xb4\xa6\xe3\x80\x82\xf1\xb2\xa8\x95\xe2\x89\xae\xf0\x90\xa6\x9c", false); } // [B1, B5, B6, C1, V7]
14698test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\xb4\xa6\xe3\x80\x82\xf1\xb2\xa8\x95\xe2\x89\xae\xf0\x90\xa6\x9c", true); } // [B1, B5, B6, V7]
5973test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\xb4\xa6\xe3\x80\x82\xf1\xb2\xa8\x95<\xcc\xb8\xf0\x90\xa6\x9c"); } // [B1, B5, B6, C1, V7]14699test { try toUnicodeFail("\xe2\x80\x8c\xf3\xa0\xb4\xa6\xe3\x80\x82\xf1\xb2\xa8\x95<\xcc\xb8\xf0\x90\xa6\x9c"); } // [B1, B5, B6, C1, V7]
14700test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\xb4\xa6\xe3\x80\x82\xf1\xb2\xa8\x95<\xcc\xb8\xf0\x90\xa6\x9c", false); } // [B1, B5, B6, C1, V7]
14701test { try toAsciiFail("\xe2\x80\x8c\xf3\xa0\xb4\xa6\xe3\x80\x82\xf1\xb2\xa8\x95<\xcc\xb8\xf0\x90\xa6\x9c", true); } // [B1, B5, B6, V7]
5974test { try toUnicodeFail("xn--6v56e.xn--gdhz712gzlr6b"); } // [B1, B5, B6, V7]14702test { try toUnicodeFail("xn--6v56e.xn--gdhz712gzlr6b"); } // [B1, B5, B6, V7]
14703test { try toAsciiFail("xn--6v56e.xn--gdhz712gzlr6b", false); } // [B1, B5, B6, V7]
14704test { try toAsciiFail("xn--6v56e.xn--gdhz712gzlr6b", true); } // [B1, B5, B6, V7]
5975test { try toUnicodeFail("xn--0ug22251l.xn--gdhz712gzlr6b"); } // [B1, B5, B6, C1, V7]14705test { try toUnicodeFail("xn--0ug22251l.xn--gdhz712gzlr6b"); } // [B1, B5, B6, C1, V7]
14706test { try toAsciiFail("xn--0ug22251l.xn--gdhz712gzlr6b", false); } // [B1, B5, B6, C1, V7]
14707test { try toAsciiFail("xn--0ug22251l.xn--gdhz712gzlr6b", true); } // [B1, B5, B6, C1, V7]
5976test { try toUnicodeFail("\xe2\x92\x88\xe2\x9c\x8c\xf2\x9f\xac\x9f\xef\xbc\x8e\xf0\x9d\x9f\xa1\xf1\xa0\xb1\xa3"); } // [V7]14708test { try toUnicodeFail("\xe2\x92\x88\xe2\x9c\x8c\xf2\x9f\xac\x9f\xef\xbc\x8e\xf0\x9d\x9f\xa1\xf1\xa0\xb1\xa3"); } // [V7]
14709test { try toAsciiFail("\xe2\x92\x88\xe2\x9c\x8c\xf2\x9f\xac\x9f\xef\xbc\x8e\xf0\x9d\x9f\xa1\xf1\xa0\xb1\xa3", false); } // [V7]
14710test { try toAsciiFail("\xe2\x92\x88\xe2\x9c\x8c\xf2\x9f\xac\x9f\xef\xbc\x8e\xf0\x9d\x9f\xa1\xf1\xa0\xb1\xa3", true); } // [V7]
5977test { try toUnicodeFail("1.\xe2\x9c\x8c\xf2\x9f\xac\x9f.9\xf1\xa0\xb1\xa3"); } // [V7]14711test { try toUnicodeFail("1.\xe2\x9c\x8c\xf2\x9f\xac\x9f.9\xf1\xa0\xb1\xa3"); } // [V7]
14712test { try toAsciiFail("1.\xe2\x9c\x8c\xf2\x9f\xac\x9f.9\xf1\xa0\xb1\xa3", false); } // [V7]
14713test { try toAsciiFail("1.\xe2\x9c\x8c\xf2\x9f\xac\x9f.9\xf1\xa0\xb1\xa3", true); } // [V7]
5978test { try toUnicodeFail("1.xn--7bi44996f.xn--9-o706d"); } // [V7]14714test { try toUnicodeFail("1.xn--7bi44996f.xn--9-o706d"); } // [V7]
14715test { try toAsciiFail("1.xn--7bi44996f.xn--9-o706d", false); } // [V7]
14716test { try toAsciiFail("1.xn--7bi44996f.xn--9-o706d", true); } // [V7]
5979test { try toUnicodeFail("xn--tsh24g49550b.xn--9-o706d"); } // [V7]14717test { try toUnicodeFail("xn--tsh24g49550b.xn--9-o706d"); } // [V7]
14718test { try toAsciiFail("xn--tsh24g49550b.xn--9-o706d", false); } // [V7]
14719test { try toAsciiFail("xn--tsh24g49550b.xn--9-o706d", true); } // [V7]
5980test { try toUnicodeFail("\xf0\x91\x86\xbe\xf0\x9e\xa4\xac\xf0\x90\xae\x86.\xd9\xa6\xe1\xb7\x94"); } // [B1, V6]14720test { try toUnicodeFail("\xf0\x91\x86\xbe\xf0\x9e\xa4\xac\xf0\x90\xae\x86.\xd9\xa6\xe1\xb7\x94"); } // [B1, V6]
14721test { try toAsciiFail("\xf0\x91\x86\xbe\xf0\x9e\xa4\xac\xf0\x90\xae\x86.\xd9\xa6\xe1\xb7\x94", false); } // [B1, V6]
14722test { try toAsciiFail("\xf0\x91\x86\xbe\xf0\x9e\xa4\xac\xf0\x90\xae\x86.\xd9\xa6\xe1\xb7\x94", true); } // [B1, V6]
5981test { try toUnicodeFail("\xf0\x91\x86\xbe\xf0\x9e\xa4\x8a\xf0\x90\xae\x86.\xd9\xa6\xe1\xb7\x94"); } // [B1, V6]14723test { try toUnicodeFail("\xf0\x91\x86\xbe\xf0\x9e\xa4\x8a\xf0\x90\xae\x86.\xd9\xa6\xe1\xb7\x94"); } // [B1, V6]
14724test { try toAsciiFail("\xf0\x91\x86\xbe\xf0\x9e\xa4\x8a\xf0\x90\xae\x86.\xd9\xa6\xe1\xb7\x94", false); } // [B1, V6]
14725test { try toAsciiFail("\xf0\x91\x86\xbe\xf0\x9e\xa4\x8a\xf0\x90\xae\x86.\xd9\xa6\xe1\xb7\x94", true); } // [B1, V6]
5982test { try toUnicodeFail("xn--d29c79hf98r.xn--fib011j"); } // [B1, V6]14726test { try toUnicodeFail("xn--d29c79hf98r.xn--fib011j"); } // [B1, V6]
14727test { try toAsciiFail("xn--d29c79hf98r.xn--fib011j", false); } // [B1, V6]
14728test { try toAsciiFail("xn--d29c79hf98r.xn--fib011j", true); } // [B1, V6]
5983test { try toUnicodeFail("\xcf\x82\xef\xbc\x8e\xea\xa7\x80\xea\xa3\x84"); } // [V6]14729test { try toUnicodeFail("\xcf\x82\xef\xbc\x8e\xea\xa7\x80\xea\xa3\x84"); } // [V6]
14730test { try toAsciiFail("\xcf\x82\xef\xbc\x8e\xea\xa7\x80\xea\xa3\x84", false); } // [V6]
14731test { try toAsciiFail("\xcf\x82\xef\xbc\x8e\xea\xa7\x80\xea\xa3\x84", true); } // [V6]
5984test { try toUnicodeFail("\xcf\x82.\xea\xa7\x80\xea\xa3\x84"); } // [V6]14732test { try toUnicodeFail("\xcf\x82.\xea\xa7\x80\xea\xa3\x84"); } // [V6]
14733test { try toAsciiFail("\xcf\x82.\xea\xa7\x80\xea\xa3\x84", false); } // [V6]
14734test { try toAsciiFail("\xcf\x82.\xea\xa7\x80\xea\xa3\x84", true); } // [V6]
5985test { try toUnicodeFail("\xce\xa3.\xea\xa7\x80\xea\xa3\x84"); } // [V6]14735test { try toUnicodeFail("\xce\xa3.\xea\xa7\x80\xea\xa3\x84"); } // [V6]
14736test { try toAsciiFail("\xce\xa3.\xea\xa7\x80\xea\xa3\x84", false); } // [V6]
14737test { try toAsciiFail("\xce\xa3.\xea\xa7\x80\xea\xa3\x84", true); } // [V6]
5986test { try toUnicodeFail("\xcf\x83.\xea\xa7\x80\xea\xa3\x84"); } // [V6]14738test { try toUnicodeFail("\xcf\x83.\xea\xa7\x80\xea\xa3\x84"); } // [V6]
14739test { try toAsciiFail("\xcf\x83.\xea\xa7\x80\xea\xa3\x84", false); } // [V6]
14740test { try toAsciiFail("\xcf\x83.\xea\xa7\x80\xea\xa3\x84", true); } // [V6]
5987test { try toUnicodeFail("xn--4xa.xn--0f9ars"); } // [V6]14741test { try toUnicodeFail("xn--4xa.xn--0f9ars"); } // [V6]
14742test { try toAsciiFail("xn--4xa.xn--0f9ars", false); } // [V6]
14743test { try toAsciiFail("xn--4xa.xn--0f9ars", true); } // [V6]
5988test { try toUnicodeFail("xn--3xa.xn--0f9ars"); } // [V6]14744test { try toUnicodeFail("xn--3xa.xn--0f9ars"); } // [V6]
14745test { try toAsciiFail("xn--3xa.xn--0f9ars", false); } // [V6]
14746test { try toAsciiFail("xn--3xa.xn--0f9ars", true); } // [V6]
5989test { try toUnicodeFail("\xce\xa3\xef\xbc\x8e\xea\xa7\x80\xea\xa3\x84"); } // [V6]14747test { try toUnicodeFail("\xce\xa3\xef\xbc\x8e\xea\xa7\x80\xea\xa3\x84"); } // [V6]
14748test { try toAsciiFail("\xce\xa3\xef\xbc\x8e\xea\xa7\x80\xea\xa3\x84", false); } // [V6]
14749test { try toAsciiFail("\xce\xa3\xef\xbc\x8e\xea\xa7\x80\xea\xa3\x84", true); } // [V6]
5990test { try toUnicodeFail("\xcf\x83\xef\xbc\x8e\xea\xa7\x80\xea\xa3\x84"); } // [V6]14750test { try toUnicodeFail("\xcf\x83\xef\xbc\x8e\xea\xa7\x80\xea\xa3\x84"); } // [V6]
14751test { try toAsciiFail("\xcf\x83\xef\xbc\x8e\xea\xa7\x80\xea\xa3\x84", false); } // [V6]
14752test { try toAsciiFail("\xcf\x83\xef\xbc\x8e\xea\xa7\x80\xea\xa3\x84", true); } // [V6]
5991test { try toUnicodeFail("\xf0\x91\xb0\xb6\xe2\x80\x8c\xe2\x89\xaf\xf0\x90\xb3\x90\xef\xbc\x8e\xe0\xa1\x9b"); } // [B1, C1, V6]14753test { try toUnicodeFail("\xf0\x91\xb0\xb6\xe2\x80\x8c\xe2\x89\xaf\xf0\x90\xb3\x90\xef\xbc\x8e\xe0\xa1\x9b"); } // [B1, C1, V6]
14754test { try toAsciiFail("\xf0\x91\xb0\xb6\xe2\x80\x8c\xe2\x89\xaf\xf0\x90\xb3\x90\xef\xbc\x8e\xe0\xa1\x9b", false); } // [B1, C1, V6]
14755test { try toAsciiFail("\xf0\x91\xb0\xb6\xe2\x80\x8c\xe2\x89\xaf\xf0\x90\xb3\x90\xef\xbc\x8e\xe0\xa1\x9b", true); } // [B1, V6]
5992test { try toUnicodeFail("\xf0\x91\xb0\xb6\xe2\x80\x8c>\xcc\xb8\xf0\x90\xb3\x90\xef\xbc\x8e\xe0\xa1\x9b"); } // [B1, C1, V6]14756test { try toUnicodeFail("\xf0\x91\xb0\xb6\xe2\x80\x8c>\xcc\xb8\xf0\x90\xb3\x90\xef\xbc\x8e\xe0\xa1\x9b"); } // [B1, C1, V6]
14757test { try toAsciiFail("\xf0\x91\xb0\xb6\xe2\x80\x8c>\xcc\xb8\xf0\x90\xb3\x90\xef\xbc\x8e\xe0\xa1\x9b", false); } // [B1, C1, V6]
14758test { try toAsciiFail("\xf0\x91\xb0\xb6\xe2\x80\x8c>\xcc\xb8\xf0\x90\xb3\x90\xef\xbc\x8e\xe0\xa1\x9b", true); } // [B1, V6]
5993test { try toUnicodeFail("\xf0\x91\xb0\xb6\xe2\x80\x8c\xe2\x89\xaf\xf0\x90\xb3\x90.\xe0\xa1\x9b"); } // [B1, C1, V6]14759test { try toUnicodeFail("\xf0\x91\xb0\xb6\xe2\x80\x8c\xe2\x89\xaf\xf0\x90\xb3\x90.\xe0\xa1\x9b"); } // [B1, C1, V6]
14760test { try toAsciiFail("\xf0\x91\xb0\xb6\xe2\x80\x8c\xe2\x89\xaf\xf0\x90\xb3\x90.\xe0\xa1\x9b", false); } // [B1, C1, V6]
14761test { try toAsciiFail("\xf0\x91\xb0\xb6\xe2\x80\x8c\xe2\x89\xaf\xf0\x90\xb3\x90.\xe0\xa1\x9b", true); } // [B1, V6]
5994test { try toUnicodeFail("\xf0\x91\xb0\xb6\xe2\x80\x8c>\xcc\xb8\xf0\x90\xb3\x90.\xe0\xa1\x9b"); } // [B1, C1, V6]14762test { try toUnicodeFail("\xf0\x91\xb0\xb6\xe2\x80\x8c>\xcc\xb8\xf0\x90\xb3\x90.\xe0\xa1\x9b"); } // [B1, C1, V6]
14763test { try toAsciiFail("\xf0\x91\xb0\xb6\xe2\x80\x8c>\xcc\xb8\xf0\x90\xb3\x90.\xe0\xa1\x9b", false); } // [B1, C1, V6]
14764test { try toAsciiFail("\xf0\x91\xb0\xb6\xe2\x80\x8c>\xcc\xb8\xf0\x90\xb3\x90.\xe0\xa1\x9b", true); } // [B1, V6]
5995test { try toUnicodeFail("\xf0\x91\xb0\xb6\xe2\x80\x8c>\xcc\xb8\xf0\x90\xb2\x90.\xe0\xa1\x9b"); } // [B1, C1, V6]14765test { try toUnicodeFail("\xf0\x91\xb0\xb6\xe2\x80\x8c>\xcc\xb8\xf0\x90\xb2\x90.\xe0\xa1\x9b"); } // [B1, C1, V6]
14766test { try toAsciiFail("\xf0\x91\xb0\xb6\xe2\x80\x8c>\xcc\xb8\xf0\x90\xb2\x90.\xe0\xa1\x9b", false); } // [B1, C1, V6]
14767test { try toAsciiFail("\xf0\x91\xb0\xb6\xe2\x80\x8c>\xcc\xb8\xf0\x90\xb2\x90.\xe0\xa1\x9b", true); } // [B1, V6]
5996test { try toUnicodeFail("\xf0\x91\xb0\xb6\xe2\x80\x8c\xe2\x89\xaf\xf0\x90\xb2\x90.\xe0\xa1\x9b"); } // [B1, C1, V6]14768test { try toUnicodeFail("\xf0\x91\xb0\xb6\xe2\x80\x8c\xe2\x89\xaf\xf0\x90\xb2\x90.\xe0\xa1\x9b"); } // [B1, C1, V6]
14769test { try toAsciiFail("\xf0\x91\xb0\xb6\xe2\x80\x8c\xe2\x89\xaf\xf0\x90\xb2\x90.\xe0\xa1\x9b", false); } // [B1, C1, V6]
14770test { try toAsciiFail("\xf0\x91\xb0\xb6\xe2\x80\x8c\xe2\x89\xaf\xf0\x90\xb2\x90.\xe0\xa1\x9b", true); } // [B1, V6]
5997test { try toUnicodeFail("xn--hdhz343g3wj.xn--qwb"); } // [B1, V6]14771test { try toUnicodeFail("xn--hdhz343g3wj.xn--qwb"); } // [B1, V6]
14772test { try toAsciiFail("xn--hdhz343g3wj.xn--qwb", false); } // [B1, V6]
14773test { try toAsciiFail("xn--hdhz343g3wj.xn--qwb", true); } // [B1, V6]
5998test { try toUnicodeFail("xn--0ug06g7697ap4ma.xn--qwb"); } // [B1, C1, V6]14774test { try toUnicodeFail("xn--0ug06g7697ap4ma.xn--qwb"); } // [B1, C1, V6]
14775test { try toAsciiFail("xn--0ug06g7697ap4ma.xn--qwb", false); } // [B1, C1, V6]
14776test { try toAsciiFail("xn--0ug06g7697ap4ma.xn--qwb", true); } // [B1, C1, V6]
5999test { try toUnicodeFail("\xf0\x91\xb0\xb6\xe2\x80\x8c>\xcc\xb8\xf0\x90\xb2\x90\xef\xbc\x8e\xe0\xa1\x9b"); } // [B1, C1, V6]14777test { try toUnicodeFail("\xf0\x91\xb0\xb6\xe2\x80\x8c>\xcc\xb8\xf0\x90\xb2\x90\xef\xbc\x8e\xe0\xa1\x9b"); } // [B1, C1, V6]
14778test { try toAsciiFail("\xf0\x91\xb0\xb6\xe2\x80\x8c>\xcc\xb8\xf0\x90\xb2\x90\xef\xbc\x8e\xe0\xa1\x9b", false); } // [B1, C1, V6]
14779test { try toAsciiFail("\xf0\x91\xb0\xb6\xe2\x80\x8c>\xcc\xb8\xf0\x90\xb2\x90\xef\xbc\x8e\xe0\xa1\x9b", true); } // [B1, V6]
6000test { try toUnicodeFail("\xf0\x91\xb0\xb6\xe2\x80\x8c\xe2\x89\xaf\xf0\x90\xb2\x90\xef\xbc\x8e\xe0\xa1\x9b"); } // [B1, C1, V6]14780test { try toUnicodeFail("\xf0\x91\xb0\xb6\xe2\x80\x8c\xe2\x89\xaf\xf0\x90\xb2\x90\xef\xbc\x8e\xe0\xa1\x9b"); } // [B1, C1, V6]
14781test { try toAsciiFail("\xf0\x91\xb0\xb6\xe2\x80\x8c\xe2\x89\xaf\xf0\x90\xb2\x90\xef\xbc\x8e\xe0\xa1\x9b", false); } // [B1, C1, V6]
14782test { try toAsciiFail("\xf0\x91\xb0\xb6\xe2\x80\x8c\xe2\x89\xaf\xf0\x90\xb2\x90\xef\xbc\x8e\xe0\xa1\x9b", true); } // [B1, V6]
6001test { try toUnicodePass("\xe7\xbe\x9a\xef\xbd\xa1\xe2\x89\xaf", "\xe7\xbe\x9a.\xe2\x89\xaf"); }14783test { try toUnicodePass("\xe7\xbe\x9a\xef\xbd\xa1\xe2\x89\xaf", "\xe7\xbe\x9a.\xe2\x89\xaf"); }
6002test { try toAsciiPass("\xe7\xbe\x9a\xef\xbd\xa1\xe2\x89\xaf", "xn--xt0a.xn--hdh", false); }14784test { try toAsciiPass("\xe7\xbe\x9a\xef\xbd\xa1\xe2\x89\xaf", "xn--xt0a.xn--hdh", false); }
6003test { try toAsciiPass("\xe7\xbe\x9a\xef\xbd\xa1\xe2\x89\xaf", "xn--xt0a.xn--hdh", true); }14785test { try toAsciiPass("\xe7\xbe\x9a\xef\xbd\xa1\xe2\x89\xaf", "xn--xt0a.xn--hdh", true); }
...@@ -6020,52 +14802,146 @@ test { try toUnicodePass("\xe7\xbe\x9a.>\xcc\xb8", "\xe7\xbe\x9a.\xe2\x89\xaf");...@@ -6020,52 +14802,146 @@ test { try toUnicodePass("\xe7\xbe\x9a.>\xcc\xb8", "\xe7\xbe\x9a.\xe2\x89\xaf");
6020test { try toAsciiPass("\xe7\xbe\x9a.>\xcc\xb8", "xn--xt0a.xn--hdh", false); }14802test { try toAsciiPass("\xe7\xbe\x9a.>\xcc\xb8", "xn--xt0a.xn--hdh", false); }
6021test { try toAsciiPass("\xe7\xbe\x9a.>\xcc\xb8", "xn--xt0a.xn--hdh", true); }14803test { try toAsciiPass("\xe7\xbe\x9a.>\xcc\xb8", "xn--xt0a.xn--hdh", true); }
6022test { try toUnicodeFail("\xf0\x91\x93\x82\xe1\x9d\x99\xef\xbc\x8e\xe0\xa2\xa8"); } // [B1, V6, V7]14804test { try toUnicodeFail("\xf0\x91\x93\x82\xe1\x9d\x99\xef\xbc\x8e\xe0\xa2\xa8"); } // [B1, V6, V7]
14805test { try toAsciiFail("\xf0\x91\x93\x82\xe1\x9d\x99\xef\xbc\x8e\xe0\xa2\xa8", false); } // [B1, V6, V7]
14806test { try toAsciiFail("\xf0\x91\x93\x82\xe1\x9d\x99\xef\xbc\x8e\xe0\xa2\xa8", true); } // [B1, V6, V7]
6023test { try toUnicodeFail("\xf0\x91\x93\x82\xe1\x9d\x99.\xe0\xa2\xa8"); } // [B1, V6, V7]14807test { try toUnicodeFail("\xf0\x91\x93\x82\xe1\x9d\x99.\xe0\xa2\xa8"); } // [B1, V6, V7]
14808test { try toAsciiFail("\xf0\x91\x93\x82\xe1\x9d\x99.\xe0\xa2\xa8", false); } // [B1, V6, V7]
14809test { try toAsciiFail("\xf0\x91\x93\x82\xe1\x9d\x99.\xe0\xa2\xa8", true); } // [B1, V6, V7]
6024test { try toUnicodeFail("xn--e1e9580k.xn--xyb"); } // [B1, V6, V7]14810test { try toUnicodeFail("xn--e1e9580k.xn--xyb"); } // [B1, V6, V7]
14811test { try toAsciiFail("xn--e1e9580k.xn--xyb", false); } // [B1, V6, V7]
14812test { try toAsciiFail("xn--e1e9580k.xn--xyb", true); } // [B1, V6, V7]
6025test { try toUnicodeFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xef\xbd\xa1\xd9\xa3\xd2\xa0\xe1\x83\x80\xf0\x9d\x9f\x91"); } // [B1, B6, C2, V7]14813test { try toUnicodeFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xef\xbd\xa1\xd9\xa3\xd2\xa0\xe1\x83\x80\xf0\x9d\x9f\x91"); } // [B1, B6, C2, V7]
14814test { try toAsciiFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xef\xbd\xa1\xd9\xa3\xd2\xa0\xe1\x83\x80\xf0\x9d\x9f\x91", false); } // [B1, B6, C2, V7]
14815test { try toAsciiFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xef\xbd\xa1\xd9\xa3\xd2\xa0\xe1\x83\x80\xf0\x9d\x9f\x91", true); } // [B1, V7]
6026test { try toUnicodeFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xe3\x80\x82\xd9\xa3\xd2\xa0\xe1\x83\x803"); } // [B1, B6, C2, V7]14816test { try toUnicodeFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xe3\x80\x82\xd9\xa3\xd2\xa0\xe1\x83\x803"); } // [B1, B6, C2, V7]
14817test { try toAsciiFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xe3\x80\x82\xd9\xa3\xd2\xa0\xe1\x83\x803", false); } // [B1, B6, C2, V7]
14818test { try toAsciiFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xe3\x80\x82\xd9\xa3\xd2\xa0\xe1\x83\x803", true); } // [B1, V7]
6027test { try toUnicodeFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xe3\x80\x82\xd9\xa3\xd2\xa1\xe2\xb4\xa03"); } // [B1, B6, C2, V7]14819test { try toUnicodeFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xe3\x80\x82\xd9\xa3\xd2\xa1\xe2\xb4\xa03"); } // [B1, B6, C2, V7]
14820test { try toAsciiFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xe3\x80\x82\xd9\xa3\xd2\xa1\xe2\xb4\xa03", false); } // [B1, B6, C2, V7]
14821test { try toAsciiFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xe3\x80\x82\xd9\xa3\xd2\xa1\xe2\xb4\xa03", true); } // [B1, V7]
6028test { try toUnicodeFail("xn--1r19e.xn--3-ozb36ko13f"); } // [B1, V7]14822test { try toUnicodeFail("xn--1r19e.xn--3-ozb36ko13f"); } // [B1, V7]
14823test { try toAsciiFail("xn--1r19e.xn--3-ozb36ko13f", false); } // [B1, V7]
14824test { try toAsciiFail("xn--1r19e.xn--3-ozb36ko13f", true); } // [B1, V7]
6029test { try toUnicodeFail("xn--1ug89936l.xn--3-ozb36ko13f"); } // [B1, B6, C2, V7]14825test { try toUnicodeFail("xn--1ug89936l.xn--3-ozb36ko13f"); } // [B1, B6, C2, V7]
14826test { try toAsciiFail("xn--1ug89936l.xn--3-ozb36ko13f", false); } // [B1, B6, C2, V7]
14827test { try toAsciiFail("xn--1ug89936l.xn--3-ozb36ko13f", true); } // [B1, B6, C2, V7]
6030test { try toUnicodeFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xef\xbd\xa1\xd9\xa3\xd2\xa1\xe2\xb4\xa0\xf0\x9d\x9f\x91"); } // [B1, B6, C2, V7]14828test { try toUnicodeFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xef\xbd\xa1\xd9\xa3\xd2\xa1\xe2\xb4\xa0\xf0\x9d\x9f\x91"); } // [B1, B6, C2, V7]
14829test { try toAsciiFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xef\xbd\xa1\xd9\xa3\xd2\xa1\xe2\xb4\xa0\xf0\x9d\x9f\x91", false); } // [B1, B6, C2, V7]
14830test { try toAsciiFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xef\xbd\xa1\xd9\xa3\xd2\xa1\xe2\xb4\xa0\xf0\x9d\x9f\x91", true); } // [B1, V7]
6031test { try toUnicodeFail("xn--1r19e.xn--3-ozb36kixu"); } // [B1, V7]14831test { try toUnicodeFail("xn--1r19e.xn--3-ozb36kixu"); } // [B1, V7]
14832test { try toAsciiFail("xn--1r19e.xn--3-ozb36kixu", false); } // [B1, V7]
14833test { try toAsciiFail("xn--1r19e.xn--3-ozb36kixu", true); } // [B1, V7]
6032test { try toUnicodeFail("xn--1ug89936l.xn--3-ozb36kixu"); } // [B1, B6, C2, V7]14834test { try toUnicodeFail("xn--1ug89936l.xn--3-ozb36kixu"); } // [B1, B6, C2, V7]
14835test { try toAsciiFail("xn--1ug89936l.xn--3-ozb36kixu", false); } // [B1, B6, C2, V7]
14836test { try toAsciiFail("xn--1ug89936l.xn--3-ozb36kixu", true); } // [B1, B6, C2, V7]
6033test { try toUnicodeFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xe3\x80\x82\xd9\xa3\xd2\xa0\xe2\xb4\xa03"); } // [B1, B6, C2, V7]14837test { try toUnicodeFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xe3\x80\x82\xd9\xa3\xd2\xa0\xe2\xb4\xa03"); } // [B1, B6, C2, V7]
14838test { try toAsciiFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xe3\x80\x82\xd9\xa3\xd2\xa0\xe2\xb4\xa03", false); } // [B1, B6, C2, V7]
14839test { try toAsciiFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xe3\x80\x82\xd9\xa3\xd2\xa0\xe2\xb4\xa03", true); } // [B1, V7]
6034test { try toUnicodeFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xef\xbd\xa1\xd9\xa3\xd2\xa0\xe2\xb4\xa0\xf0\x9d\x9f\x91"); } // [B1, B6, C2, V7]14840test { try toUnicodeFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xef\xbd\xa1\xd9\xa3\xd2\xa0\xe2\xb4\xa0\xf0\x9d\x9f\x91"); } // [B1, B6, C2, V7]
14841test { try toAsciiFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xef\xbd\xa1\xd9\xa3\xd2\xa0\xe2\xb4\xa0\xf0\x9d\x9f\x91", false); } // [B1, B6, C2, V7]
14842test { try toAsciiFail("\xf3\xa8\xa3\xbf\xf3\xa0\x87\x80\xe2\x80\x8d\xef\xbd\xa1\xd9\xa3\xd2\xa0\xe2\xb4\xa0\xf0\x9d\x9f\x91", true); } // [B1, V7]
6035test { try toUnicodeFail("\xe1\xa1\xb7\xe3\x80\x82\xf0\x90\xb9\xa2\xe0\xa3\xa0"); } // [B1]14843test { try toUnicodeFail("\xe1\xa1\xb7\xe3\x80\x82\xf0\x90\xb9\xa2\xe0\xa3\xa0"); } // [B1]
14844test { try toAsciiFail("\xe1\xa1\xb7\xe3\x80\x82\xf0\x90\xb9\xa2\xe0\xa3\xa0", false); } // [B1]
14845test { try toAsciiFail("\xe1\xa1\xb7\xe3\x80\x82\xf0\x90\xb9\xa2\xe0\xa3\xa0", true); } // [B1]
6036test { try toUnicodeFail("xn--k9e.xn--j0b5005k"); } // [B1]14846test { try toUnicodeFail("xn--k9e.xn--j0b5005k"); } // [B1]
14847test { try toAsciiFail("xn--k9e.xn--j0b5005k", false); } // [B1]
14848test { try toAsciiFail("xn--k9e.xn--j0b5005k", true); } // [B1]
6037test { try toUnicodeFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xef\xbd\xa1\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92\xc3\x9f"); } // [B1, V7]14849test { try toUnicodeFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xef\xbd\xa1\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92\xc3\x9f"); } // [B1, V7]
14850test { try toAsciiFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xef\xbd\xa1\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92\xc3\x9f", false); } // [B1, V7]
14851test { try toAsciiFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xef\xbd\xa1\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92\xc3\x9f", true); } // [B1, V7]
6038test { try toUnicodeFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xe3\x80\x82\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92\xc3\x9f"); } // [B1, V7]14852test { try toUnicodeFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xe3\x80\x82\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92\xc3\x9f"); } // [B1, V7]
14853test { try toAsciiFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xe3\x80\x82\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92\xc3\x9f", false); } // [B1, V7]
14854test { try toAsciiFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xe3\x80\x82\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92\xc3\x9f", true); } // [B1, V7]
6039test { try toUnicodeFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xe3\x80\x82\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92SS"); } // [B1, V7]14855test { try toUnicodeFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xe3\x80\x82\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92SS"); } // [B1, V7]
14856test { try toAsciiFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xe3\x80\x82\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92SS", false); } // [B1, V7]
14857test { try toAsciiFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xe3\x80\x82\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92SS", true); } // [B1, V7]
6040test { try toUnicodeFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xe3\x80\x82\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92ss"); } // [B1, V7]14858test { try toUnicodeFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xe3\x80\x82\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92ss"); } // [B1, V7]
14859test { try toAsciiFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xe3\x80\x82\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92ss", false); } // [B1, V7]
14860test { try toAsciiFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xe3\x80\x82\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92ss", true); } // [B1, V7]
6041test { try toUnicodeFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xe3\x80\x82\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92Ss"); } // [B1, V7]14861test { try toUnicodeFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xe3\x80\x82\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92Ss"); } // [B1, V7]
14862test { try toAsciiFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xe3\x80\x82\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92Ss", false); } // [B1, V7]
14863test { try toAsciiFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xe3\x80\x82\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92Ss", true); } // [B1, V7]
6042test { try toUnicodeFail("xn--1zf58212h.xn--ss-pyd459o3258m"); } // [B1, V7]14864test { try toUnicodeFail("xn--1zf58212h.xn--ss-pyd459o3258m"); } // [B1, V7]
14865test { try toAsciiFail("xn--1zf58212h.xn--ss-pyd459o3258m", false); } // [B1, V7]
14866test { try toAsciiFail("xn--1zf58212h.xn--ss-pyd459o3258m", true); } // [B1, V7]
6043test { try toUnicodeFail("xn--1zf58212h.xn--zca34zk4qx711k"); } // [B1, V7]14867test { try toUnicodeFail("xn--1zf58212h.xn--zca34zk4qx711k"); } // [B1, V7]
14868test { try toAsciiFail("xn--1zf58212h.xn--zca34zk4qx711k", false); } // [B1, V7]
14869test { try toAsciiFail("xn--1zf58212h.xn--zca34zk4qx711k", true); } // [B1, V7]
6044test { try toUnicodeFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xef\xbd\xa1\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92SS"); } // [B1, V7]14870test { try toUnicodeFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xef\xbd\xa1\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92SS"); } // [B1, V7]
14871test { try toAsciiFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xef\xbd\xa1\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92SS", false); } // [B1, V7]
14872test { try toAsciiFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xef\xbd\xa1\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92SS", true); } // [B1, V7]
6045test { try toUnicodeFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xef\xbd\xa1\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92ss"); } // [B1, V7]14873test { try toUnicodeFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xef\xbd\xa1\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92ss"); } // [B1, V7]
14874test { try toAsciiFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xef\xbd\xa1\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92ss", false); } // [B1, V7]
14875test { try toAsciiFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xef\xbd\xa1\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92ss", true); } // [B1, V7]
6046test { try toUnicodeFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xef\xbd\xa1\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92Ss"); } // [B1, V7]14876test { try toUnicodeFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xef\xbd\xa1\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92Ss"); } // [B1, V7]
14877test { try toAsciiFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xef\xbd\xa1\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92Ss", false); } // [B1, V7]
14878test { try toAsciiFail("\xf2\x95\xae\x87\xe1\xaf\xb3\xef\xbd\xa1\xd9\xa6\xf1\x97\x9c\xbc\xe1\x9f\x92Ss", true); } // [B1, V7]
6047test { try toUnicodeFail("\xd9\xa4\xf2\xa4\xbd\x8e\xf0\x91\xb2\x9b.\xf3\xa0\x94\xa2\xef\xb8\x92\xe2\x89\xa0"); } // [B1, V7]14879test { try toUnicodeFail("\xd9\xa4\xf2\xa4\xbd\x8e\xf0\x91\xb2\x9b.\xf3\xa0\x94\xa2\xef\xb8\x92\xe2\x89\xa0"); } // [B1, V7]
14880test { try toAsciiFail("\xd9\xa4\xf2\xa4\xbd\x8e\xf0\x91\xb2\x9b.\xf3\xa0\x94\xa2\xef\xb8\x92\xe2\x89\xa0", false); } // [B1, V7]
14881test { try toAsciiFail("\xd9\xa4\xf2\xa4\xbd\x8e\xf0\x91\xb2\x9b.\xf3\xa0\x94\xa2\xef\xb8\x92\xe2\x89\xa0", true); } // [B1, V7]
6048test { try toUnicodeFail("\xd9\xa4\xf2\xa4\xbd\x8e\xf0\x91\xb2\x9b.\xf3\xa0\x94\xa2\xef\xb8\x92=\xcc\xb8"); } // [B1, V7]14882test { try toUnicodeFail("\xd9\xa4\xf2\xa4\xbd\x8e\xf0\x91\xb2\x9b.\xf3\xa0\x94\xa2\xef\xb8\x92=\xcc\xb8"); } // [B1, V7]
14883test { try toAsciiFail("\xd9\xa4\xf2\xa4\xbd\x8e\xf0\x91\xb2\x9b.\xf3\xa0\x94\xa2\xef\xb8\x92=\xcc\xb8", false); } // [B1, V7]
14884test { try toAsciiFail("\xd9\xa4\xf2\xa4\xbd\x8e\xf0\x91\xb2\x9b.\xf3\xa0\x94\xa2\xef\xb8\x92=\xcc\xb8", true); } // [B1, V7]
6049test { try toUnicodeFail("\xd9\xa4\xf2\xa4\xbd\x8e\xf0\x91\xb2\x9b.\xf3\xa0\x94\xa2\xe3\x80\x82\xe2\x89\xa0"); } // [B1, V7]14885test { try toUnicodeFail("\xd9\xa4\xf2\xa4\xbd\x8e\xf0\x91\xb2\x9b.\xf3\xa0\x94\xa2\xe3\x80\x82\xe2\x89\xa0"); } // [B1, V7]
14886test { try toAsciiFail("\xd9\xa4\xf2\xa4\xbd\x8e\xf0\x91\xb2\x9b.\xf3\xa0\x94\xa2\xe3\x80\x82\xe2\x89\xa0", false); } // [B1, V7]
14887test { try toAsciiFail("\xd9\xa4\xf2\xa4\xbd\x8e\xf0\x91\xb2\x9b.\xf3\xa0\x94\xa2\xe3\x80\x82\xe2\x89\xa0", true); } // [B1, V7]
6050test { try toUnicodeFail("\xd9\xa4\xf2\xa4\xbd\x8e\xf0\x91\xb2\x9b.\xf3\xa0\x94\xa2\xe3\x80\x82=\xcc\xb8"); } // [B1, V7]14888test { try toUnicodeFail("\xd9\xa4\xf2\xa4\xbd\x8e\xf0\x91\xb2\x9b.\xf3\xa0\x94\xa2\xe3\x80\x82=\xcc\xb8"); } // [B1, V7]
14889test { try toAsciiFail("\xd9\xa4\xf2\xa4\xbd\x8e\xf0\x91\xb2\x9b.\xf3\xa0\x94\xa2\xe3\x80\x82=\xcc\xb8", false); } // [B1, V7]
14890test { try toAsciiFail("\xd9\xa4\xf2\xa4\xbd\x8e\xf0\x91\xb2\x9b.\xf3\xa0\x94\xa2\xe3\x80\x82=\xcc\xb8", true); } // [B1, V7]
6051test { try toUnicodeFail("xn--dib0653l2i02d.xn--k736e.xn--1ch"); } // [B1, V7]14891test { try toUnicodeFail("xn--dib0653l2i02d.xn--k736e.xn--1ch"); } // [B1, V7]
14892test { try toAsciiFail("xn--dib0653l2i02d.xn--k736e.xn--1ch", false); } // [B1, V7]
14893test { try toAsciiFail("xn--dib0653l2i02d.xn--k736e.xn--1ch", true); } // [B1, V7]
6052test { try toUnicodeFail("xn--dib0653l2i02d.xn--1ch7467f14u4g"); } // [B1, V7]14894test { try toUnicodeFail("xn--dib0653l2i02d.xn--1ch7467f14u4g"); } // [B1, V7]
14895test { try toAsciiFail("xn--dib0653l2i02d.xn--1ch7467f14u4g", false); } // [B1, V7]
14896test { try toAsciiFail("xn--dib0653l2i02d.xn--1ch7467f14u4g", true); } // [B1, V7]
6053test { try toUnicodeFail("\xe2\x9e\x86\xf1\xb7\xa7\x95\xe1\xbb\x97\xe2\x92\x88\xef\xbc\x8e\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b\xf0\x9d\x9f\xab"); } // [V7]14897test { try toUnicodeFail("\xe2\x9e\x86\xf1\xb7\xa7\x95\xe1\xbb\x97\xe2\x92\x88\xef\xbc\x8e\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b\xf0\x9d\x9f\xab"); } // [V7]
14898test { try toAsciiFail("\xe2\x9e\x86\xf1\xb7\xa7\x95\xe1\xbb\x97\xe2\x92\x88\xef\xbc\x8e\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b\xf0\x9d\x9f\xab", false); } // [V7]
14899test { try toAsciiFail("\xe2\x9e\x86\xf1\xb7\xa7\x95\xe1\xbb\x97\xe2\x92\x88\xef\xbc\x8e\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b\xf0\x9d\x9f\xab", true); } // [V7]
6054test { try toUnicodeFail("\xe2\x9e\x86\xf1\xb7\xa7\x95o\xcc\x82\xcc\x83\xe2\x92\x88\xef\xbc\x8e\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b\xf0\x9d\x9f\xab"); } // [V7]14900test { try toUnicodeFail("\xe2\x9e\x86\xf1\xb7\xa7\x95o\xcc\x82\xcc\x83\xe2\x92\x88\xef\xbc\x8e\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b\xf0\x9d\x9f\xab"); } // [V7]
14901test { try toAsciiFail("\xe2\x9e\x86\xf1\xb7\xa7\x95o\xcc\x82\xcc\x83\xe2\x92\x88\xef\xbc\x8e\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b\xf0\x9d\x9f\xab", false); } // [V7]
14902test { try toAsciiFail("\xe2\x9e\x86\xf1\xb7\xa7\x95o\xcc\x82\xcc\x83\xe2\x92\x88\xef\xbc\x8e\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b\xf0\x9d\x9f\xab", true); } // [V7]
6055test { try toUnicodeFail("\xe2\x9e\x86\xf1\xb7\xa7\x95\xe1\xbb\x971..\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b9"); } // [V7, X4_2]14903test { try toUnicodeFail("\xe2\x9e\x86\xf1\xb7\xa7\x95\xe1\xbb\x971..\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b9"); } // [V7, X4_2]
14904test { try toAsciiFail("\xe2\x9e\x86\xf1\xb7\xa7\x95\xe1\xbb\x971..\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b9", false); } // [V7, A4_2]
14905test { try toAsciiFail("\xe2\x9e\x86\xf1\xb7\xa7\x95\xe1\xbb\x971..\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b9", true); } // [V7, A4_2]
6056test { try toUnicodeFail("\xe2\x9e\x86\xf1\xb7\xa7\x95o\xcc\x82\xcc\x831..\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b9"); } // [V7, X4_2]14906test { try toUnicodeFail("\xe2\x9e\x86\xf1\xb7\xa7\x95o\xcc\x82\xcc\x831..\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b9"); } // [V7, X4_2]
14907test { try toAsciiFail("\xe2\x9e\x86\xf1\xb7\xa7\x95o\xcc\x82\xcc\x831..\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b9", false); } // [V7, A4_2]
14908test { try toAsciiFail("\xe2\x9e\x86\xf1\xb7\xa7\x95o\xcc\x82\xcc\x831..\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b9", true); } // [V7, A4_2]
6057test { try toUnicodeFail("\xe2\x9e\x86\xf1\xb7\xa7\x95O\xcc\x82\xcc\x831..\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b9"); } // [V7, X4_2]14909test { try toUnicodeFail("\xe2\x9e\x86\xf1\xb7\xa7\x95O\xcc\x82\xcc\x831..\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b9"); } // [V7, X4_2]
14910test { try toAsciiFail("\xe2\x9e\x86\xf1\xb7\xa7\x95O\xcc\x82\xcc\x831..\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b9", false); } // [V7, A4_2]
14911test { try toAsciiFail("\xe2\x9e\x86\xf1\xb7\xa7\x95O\xcc\x82\xcc\x831..\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b9", true); } // [V7, A4_2]
6058test { try toUnicodeFail("\xe2\x9e\x86\xf1\xb7\xa7\x95\xe1\xbb\x961..\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b9"); } // [V7, X4_2]14912test { try toUnicodeFail("\xe2\x9e\x86\xf1\xb7\xa7\x95\xe1\xbb\x961..\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b9"); } // [V7, X4_2]
14913test { try toAsciiFail("\xe2\x9e\x86\xf1\xb7\xa7\x95\xe1\xbb\x961..\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b9", false); } // [V7, A4_2]
14914test { try toAsciiFail("\xe2\x9e\x86\xf1\xb7\xa7\x95\xe1\xbb\x961..\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b9", true); } // [V7, A4_2]
6059test { try toUnicodeFail("xn--1-3xm292b6044r..xn--9-6jd87310jtcqs"); } // [V7, X4_2]14915test { try toUnicodeFail("xn--1-3xm292b6044r..xn--9-6jd87310jtcqs"); } // [V7, X4_2]
14916test { try toAsciiFail("xn--1-3xm292b6044r..xn--9-6jd87310jtcqs", false); } // [V7, A4_2]
14917test { try toAsciiFail("xn--1-3xm292b6044r..xn--9-6jd87310jtcqs", true); } // [V7, A4_2]
6060test { try toUnicodeFail("\xe2\x9e\x86\xf1\xb7\xa7\x95O\xcc\x82\xcc\x83\xe2\x92\x88\xef\xbc\x8e\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b\xf0\x9d\x9f\xab"); } // [V7]14918test { try toUnicodeFail("\xe2\x9e\x86\xf1\xb7\xa7\x95O\xcc\x82\xcc\x83\xe2\x92\x88\xef\xbc\x8e\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b\xf0\x9d\x9f\xab"); } // [V7]
14919test { try toAsciiFail("\xe2\x9e\x86\xf1\xb7\xa7\x95O\xcc\x82\xcc\x83\xe2\x92\x88\xef\xbc\x8e\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b\xf0\x9d\x9f\xab", false); } // [V7]
14920test { try toAsciiFail("\xe2\x9e\x86\xf1\xb7\xa7\x95O\xcc\x82\xcc\x83\xe2\x92\x88\xef\xbc\x8e\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b\xf0\x9d\x9f\xab", true); } // [V7]
6061test { try toUnicodeFail("\xe2\x9e\x86\xf1\xb7\xa7\x95\xe1\xbb\x96\xe2\x92\x88\xef\xbc\x8e\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b\xf0\x9d\x9f\xab"); } // [V7]14921test { try toUnicodeFail("\xe2\x9e\x86\xf1\xb7\xa7\x95\xe1\xbb\x96\xe2\x92\x88\xef\xbc\x8e\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b\xf0\x9d\x9f\xab"); } // [V7]
14922test { try toAsciiFail("\xe2\x9e\x86\xf1\xb7\xa7\x95\xe1\xbb\x96\xe2\x92\x88\xef\xbc\x8e\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b\xf0\x9d\x9f\xab", false); } // [V7]
14923test { try toAsciiFail("\xe2\x9e\x86\xf1\xb7\xa7\x95\xe1\xbb\x96\xe2\x92\x88\xef\xbc\x8e\xf2\x91\xac\x92\xf1\xa1\x98\xae\xe0\xa1\x9b\xf0\x9d\x9f\xab", true); } // [V7]
6062test { try toUnicodeFail("xn--6lg26tvvc6v99z.xn--9-6jd87310jtcqs"); } // [V7]14924test { try toUnicodeFail("xn--6lg26tvvc6v99z.xn--9-6jd87310jtcqs"); } // [V7]
14925test { try toAsciiFail("xn--6lg26tvvc6v99z.xn--9-6jd87310jtcqs", false); } // [V7]
14926test { try toAsciiFail("xn--6lg26tvvc6v99z.xn--9-6jd87310jtcqs", true); } // [V7]
6063test { try toUnicodeFail("\xe2\x80\x8d\xef\xbd\xa1\xf0\x9e\xa4\x98"); } // [B1, C2]14927test { try toUnicodeFail("\xe2\x80\x8d\xef\xbd\xa1\xf0\x9e\xa4\x98"); } // [B1, C2]
14928test { try toAsciiFail("\xe2\x80\x8d\xef\xbd\xa1\xf0\x9e\xa4\x98", false); } // [B1, C2]
14929test { try toAsciiFail("\xe2\x80\x8d\xef\xbd\xa1\xf0\x9e\xa4\x98", true); } // [A4_2]
6064test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\x98"); } // [B1, C2]14930test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\x98"); } // [B1, C2]
14931test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\x98", false); } // [B1, C2]
14932test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\x98", true); } // [A4_2]
6065test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\xba"); } // [B1, C2]14933test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\xba"); } // [B1, C2]
14934test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\xba", false); } // [B1, C2]
14935test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\xba", true); } // [A4_2]
6066test { try toUnicodeFail(".xn--ye6h"); } // [X4_2]14936test { try toUnicodeFail(".xn--ye6h"); } // [X4_2]
14937test { try toAsciiFail(".xn--ye6h", false); } // [A4_2]
14938test { try toAsciiFail(".xn--ye6h", true); } // [A4_2]
6067test { try toUnicodeFail("xn--1ug.xn--ye6h"); } // [B1, C2]14939test { try toUnicodeFail("xn--1ug.xn--ye6h"); } // [B1, C2]
14940test { try toAsciiFail("xn--1ug.xn--ye6h", false); } // [B1, C2]
14941test { try toAsciiFail("xn--1ug.xn--ye6h", true); } // [B1, C2]
6068test { try toUnicodeFail("\xe2\x80\x8d\xef\xbd\xa1\xf0\x9e\xa4\xba"); } // [B1, C2]14942test { try toUnicodeFail("\xe2\x80\x8d\xef\xbd\xa1\xf0\x9e\xa4\xba"); } // [B1, C2]
14943test { try toAsciiFail("\xe2\x80\x8d\xef\xbd\xa1\xf0\x9e\xa4\xba", false); } // [B1, C2]
14944test { try toAsciiFail("\xe2\x80\x8d\xef\xbd\xa1\xf0\x9e\xa4\xba", true); } // [A4_2]
6069test { try toUnicodePass("xn--ye6h", "\xf0\x9e\xa4\xba"); }14945test { try toUnicodePass("xn--ye6h", "\xf0\x9e\xa4\xba"); }
6070test { try toAsciiPass("xn--ye6h", "xn--ye6h", false); }14946test { try toAsciiPass("xn--ye6h", "xn--ye6h", false); }
6071test { try toAsciiPass("xn--ye6h", "xn--ye6h", true); }14947test { try toAsciiPass("xn--ye6h", "xn--ye6h", true); }
...@@ -6076,136 +14952,398 @@ test { try toUnicodePass("\xf0\x9e\xa4\x98", "\xf0\x9e\xa4\xba"); }...@@ -6076,136 +14952,398 @@ test { try toUnicodePass("\xf0\x9e\xa4\x98", "\xf0\x9e\xa4\xba"); }
6076test { try toAsciiPass("\xf0\x9e\xa4\x98", "xn--ye6h", false); }14952test { try toAsciiPass("\xf0\x9e\xa4\x98", "xn--ye6h", false); }
6077test { try toAsciiPass("\xf0\x9e\xa4\x98", "xn--ye6h", true); }14953test { try toAsciiPass("\xf0\x9e\xa4\x98", "xn--ye6h", true); }
6078test { try toUnicodeFail("\xe0\xa0\xa9\xdc\xa4.\xe1\xa2\xa3"); } // [B1, V6]14954test { try toUnicodeFail("\xe0\xa0\xa9\xdc\xa4.\xe1\xa2\xa3"); } // [B1, V6]
14955test { try toAsciiFail("\xe0\xa0\xa9\xdc\xa4.\xe1\xa2\xa3", false); } // [B1, V6]
14956test { try toAsciiFail("\xe0\xa0\xa9\xdc\xa4.\xe1\xa2\xa3", true); } // [B1, V6]
6079test { try toUnicodeFail("xn--unb53c.xn--tbf"); } // [B1, V6]14957test { try toUnicodeFail("xn--unb53c.xn--tbf"); } // [B1, V6]
14958test { try toAsciiFail("xn--unb53c.xn--tbf", false); } // [B1, V6]
14959test { try toAsciiFail("xn--unb53c.xn--tbf", true); } // [B1, V6]
6080test { try toUnicodeFail("\xdc\xbc\xe2\x80\x8c-\xe3\x80\x82\xf0\x93\x90\xbe\xc3\x9f"); } // [C1, V3, V6, V7]14960test { try toUnicodeFail("\xdc\xbc\xe2\x80\x8c-\xe3\x80\x82\xf0\x93\x90\xbe\xc3\x9f"); } // [C1, V3, V6, V7]
14961test { try toAsciiFail("\xdc\xbc\xe2\x80\x8c-\xe3\x80\x82\xf0\x93\x90\xbe\xc3\x9f", false); } // [C1, V3, V6, V7]
14962test { try toAsciiFail("\xdc\xbc\xe2\x80\x8c-\xe3\x80\x82\xf0\x93\x90\xbe\xc3\x9f", true); } // [V3, V6, V7]
6081test { try toUnicodeFail("\xdc\xbc\xe2\x80\x8c-\xe3\x80\x82\xf0\x93\x90\xbeSS"); } // [C1, V3, V6, V7]14963test { try toUnicodeFail("\xdc\xbc\xe2\x80\x8c-\xe3\x80\x82\xf0\x93\x90\xbeSS"); } // [C1, V3, V6, V7]
14964test { try toAsciiFail("\xdc\xbc\xe2\x80\x8c-\xe3\x80\x82\xf0\x93\x90\xbeSS", false); } // [C1, V3, V6, V7]
14965test { try toAsciiFail("\xdc\xbc\xe2\x80\x8c-\xe3\x80\x82\xf0\x93\x90\xbeSS", true); } // [V3, V6, V7]
6082test { try toUnicodeFail("\xdc\xbc\xe2\x80\x8c-\xe3\x80\x82\xf0\x93\x90\xbess"); } // [C1, V3, V6, V7]14966test { try toUnicodeFail("\xdc\xbc\xe2\x80\x8c-\xe3\x80\x82\xf0\x93\x90\xbess"); } // [C1, V3, V6, V7]
14967test { try toAsciiFail("\xdc\xbc\xe2\x80\x8c-\xe3\x80\x82\xf0\x93\x90\xbess", false); } // [C1, V3, V6, V7]
14968test { try toAsciiFail("\xdc\xbc\xe2\x80\x8c-\xe3\x80\x82\xf0\x93\x90\xbess", true); } // [V3, V6, V7]
6083test { try toUnicodeFail("\xdc\xbc\xe2\x80\x8c-\xe3\x80\x82\xf0\x93\x90\xbeSs"); } // [C1, V3, V6, V7]14969test { try toUnicodeFail("\xdc\xbc\xe2\x80\x8c-\xe3\x80\x82\xf0\x93\x90\xbeSs"); } // [C1, V3, V6, V7]
14970test { try toAsciiFail("\xdc\xbc\xe2\x80\x8c-\xe3\x80\x82\xf0\x93\x90\xbeSs", false); } // [C1, V3, V6, V7]
14971test { try toAsciiFail("\xdc\xbc\xe2\x80\x8c-\xe3\x80\x82\xf0\x93\x90\xbeSs", true); } // [V3, V6, V7]
6084test { try toUnicodeFail("xn----s2c.xn--ss-066q"); } // [V3, V6, V7]14972test { try toUnicodeFail("xn----s2c.xn--ss-066q"); } // [V3, V6, V7]
14973test { try toAsciiFail("xn----s2c.xn--ss-066q", false); } // [V3, V6, V7]
14974test { try toAsciiFail("xn----s2c.xn--ss-066q", true); } // [V3, V6, V7]
6085test { try toUnicodeFail("xn----s2c071q.xn--ss-066q"); } // [C1, V3, V6, V7]14975test { try toUnicodeFail("xn----s2c071q.xn--ss-066q"); } // [C1, V3, V6, V7]
14976test { try toAsciiFail("xn----s2c071q.xn--ss-066q", false); } // [C1, V3, V6, V7]
14977test { try toAsciiFail("xn----s2c071q.xn--ss-066q", true); } // [C1, V3, V6, V7]
6086test { try toUnicodeFail("xn----s2c071q.xn--zca7848m"); } // [C1, V3, V6, V7]14978test { try toUnicodeFail("xn----s2c071q.xn--zca7848m"); } // [C1, V3, V6, V7]
14979test { try toAsciiFail("xn----s2c071q.xn--zca7848m", false); } // [C1, V3, V6, V7]
14980test { try toAsciiFail("xn----s2c071q.xn--zca7848m", true); } // [C1, V3, V6, V7]
6087test { try toUnicodeFail("\xe2\x80\x8c\xcf\x82\xf0\x9f\x83\xa1\xe2\x92\x97.\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96"); } // [B1, B5, B6, C1, V6, V7]14981test { try toUnicodeFail("\xe2\x80\x8c\xcf\x82\xf0\x9f\x83\xa1\xe2\x92\x97.\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96"); } // [B1, B5, B6, C1, V6, V7]
14982test { try toAsciiFail("\xe2\x80\x8c\xcf\x82\xf0\x9f\x83\xa1\xe2\x92\x97.\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96", false); } // [B1, B5, B6, C1, V6, V7]
14983test { try toAsciiFail("\xe2\x80\x8c\xcf\x82\xf0\x9f\x83\xa1\xe2\x92\x97.\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96", true); } // [B5, B6, V6, V7]
6088test { try toUnicodeFail("\xe2\x80\x8c\xcf\x82\xf0\x9f\x83\xa116..\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96"); } // [B1, B5, B6, C1, V6, X4_2]14984test { try toUnicodeFail("\xe2\x80\x8c\xcf\x82\xf0\x9f\x83\xa116..\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96"); } // [B1, B5, B6, C1, V6, X4_2]
14985test { try toAsciiFail("\xe2\x80\x8c\xcf\x82\xf0\x9f\x83\xa116..\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96", false); } // [B1, B5, B6, C1, V6, A4_2]
14986test { try toAsciiFail("\xe2\x80\x8c\xcf\x82\xf0\x9f\x83\xa116..\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96", true); } // [B5, B6, V6, A4_2]
6089test { try toUnicodeFail("\xe2\x80\x8c\xce\xa3\xf0\x9f\x83\xa116..\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96"); } // [B1, B5, B6, C1, V6, X4_2]14987test { try toUnicodeFail("\xe2\x80\x8c\xce\xa3\xf0\x9f\x83\xa116..\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96"); } // [B1, B5, B6, C1, V6, X4_2]
14988test { try toAsciiFail("\xe2\x80\x8c\xce\xa3\xf0\x9f\x83\xa116..\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96", false); } // [B1, B5, B6, C1, V6, A4_2]
14989test { try toAsciiFail("\xe2\x80\x8c\xce\xa3\xf0\x9f\x83\xa116..\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96", true); } // [B5, B6, V6, A4_2]
6090test { try toUnicodeFail("\xe2\x80\x8c\xcf\x83\xf0\x9f\x83\xa116..\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96"); } // [B1, B5, B6, C1, V6, X4_2]14990test { try toUnicodeFail("\xe2\x80\x8c\xcf\x83\xf0\x9f\x83\xa116..\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96"); } // [B1, B5, B6, C1, V6, X4_2]
14991test { try toAsciiFail("\xe2\x80\x8c\xcf\x83\xf0\x9f\x83\xa116..\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96", false); } // [B1, B5, B6, C1, V6, A4_2]
14992test { try toAsciiFail("\xe2\x80\x8c\xcf\x83\xf0\x9f\x83\xa116..\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96", true); } // [B5, B6, V6, A4_2]
6091test { try toUnicodeFail("xn--16-ubc66061c..xn--9ob79ycx2e"); } // [B5, B6, V6, X4_2]14993test { try toUnicodeFail("xn--16-ubc66061c..xn--9ob79ycx2e"); } // [B5, B6, V6, X4_2]
14994test { try toAsciiFail("xn--16-ubc66061c..xn--9ob79ycx2e", false); } // [B5, B6, V6, A4_2]
14995test { try toAsciiFail("xn--16-ubc66061c..xn--9ob79ycx2e", true); } // [B5, B6, V6, A4_2]
6092test { try toUnicodeFail("xn--16-ubc7700avy99b..xn--9ob79ycx2e"); } // [B1, B5, B6, C1, V6, X4_2]14996test { try toUnicodeFail("xn--16-ubc7700avy99b..xn--9ob79ycx2e"); } // [B1, B5, B6, C1, V6, X4_2]
14997test { try toAsciiFail("xn--16-ubc7700avy99b..xn--9ob79ycx2e", false); } // [B1, B5, B6, C1, V6, A4_2]
14998test { try toAsciiFail("xn--16-ubc7700avy99b..xn--9ob79ycx2e", true); } // [B1, B5, B6, C1, V6, A4_2]
6093test { try toUnicodeFail("xn--16-rbc1800avy99b..xn--9ob79ycx2e"); } // [B1, B5, B6, C1, V6, X4_2]14999test { try toUnicodeFail("xn--16-rbc1800avy99b..xn--9ob79ycx2e"); } // [B1, B5, B6, C1, V6, X4_2]
15000test { try toAsciiFail("xn--16-rbc1800avy99b..xn--9ob79ycx2e", false); } // [B1, B5, B6, C1, V6, A4_2]
15001test { try toAsciiFail("xn--16-rbc1800avy99b..xn--9ob79ycx2e", true); } // [B1, B5, B6, C1, V6, A4_2]
6094test { try toUnicodeFail("\xe2\x80\x8c\xce\xa3\xf0\x9f\x83\xa1\xe2\x92\x97.\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96"); } // [B1, B5, B6, C1, V6, V7]15002test { try toUnicodeFail("\xe2\x80\x8c\xce\xa3\xf0\x9f\x83\xa1\xe2\x92\x97.\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96"); } // [B1, B5, B6, C1, V6, V7]
15003test { try toAsciiFail("\xe2\x80\x8c\xce\xa3\xf0\x9f\x83\xa1\xe2\x92\x97.\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96", false); } // [B1, B5, B6, C1, V6, V7]
15004test { try toAsciiFail("\xe2\x80\x8c\xce\xa3\xf0\x9f\x83\xa1\xe2\x92\x97.\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96", true); } // [B5, B6, V6, V7]
6095test { try toUnicodeFail("\xe2\x80\x8c\xcf\x83\xf0\x9f\x83\xa1\xe2\x92\x97.\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96"); } // [B1, B5, B6, C1, V6, V7]15005test { try toUnicodeFail("\xe2\x80\x8c\xcf\x83\xf0\x9f\x83\xa1\xe2\x92\x97.\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96"); } // [B1, B5, B6, C1, V6, V7]
15006test { try toAsciiFail("\xe2\x80\x8c\xcf\x83\xf0\x9f\x83\xa1\xe2\x92\x97.\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96", false); } // [B1, B5, B6, C1, V6, V7]
15007test { try toAsciiFail("\xe2\x80\x8c\xcf\x83\xf0\x9f\x83\xa1\xe2\x92\x97.\xe0\xb3\x86\xe4\xbb\xa7\xdd\x96", true); } // [B5, B6, V6, V7]
6096test { try toUnicodeFail("xn--4xa229nbu92a.xn--9ob79ycx2e"); } // [B5, B6, V6, V7]15008test { try toUnicodeFail("xn--4xa229nbu92a.xn--9ob79ycx2e"); } // [B5, B6, V6, V7]
15009test { try toAsciiFail("xn--4xa229nbu92a.xn--9ob79ycx2e", false); } // [B5, B6, V6, V7]
15010test { try toAsciiFail("xn--4xa229nbu92a.xn--9ob79ycx2e", true); } // [B5, B6, V6, V7]
6097test { try toUnicodeFail("xn--4xa595lz9czy52d.xn--9ob79ycx2e"); } // [B1, B5, B6, C1, V6, V7]15011test { try toUnicodeFail("xn--4xa595lz9czy52d.xn--9ob79ycx2e"); } // [B1, B5, B6, C1, V6, V7]
15012test { try toAsciiFail("xn--4xa595lz9czy52d.xn--9ob79ycx2e", false); } // [B1, B5, B6, C1, V6, V7]
15013test { try toAsciiFail("xn--4xa595lz9czy52d.xn--9ob79ycx2e", true); } // [B1, B5, B6, C1, V6, V7]
6098test { try toUnicodeFail("xn--3xa795lz9czy52d.xn--9ob79ycx2e"); } // [B1, B5, B6, C1, V6, V7]15014test { try toUnicodeFail("xn--3xa795lz9czy52d.xn--9ob79ycx2e"); } // [B1, B5, B6, C1, V6, V7]
15015test { try toAsciiFail("xn--3xa795lz9czy52d.xn--9ob79ycx2e", false); } // [B1, B5, B6, C1, V6, V7]
15016test { try toAsciiFail("xn--3xa795lz9czy52d.xn--9ob79ycx2e", true); } // [B1, B5, B6, C1, V6, V7]
6099test { try toUnicodeFail("-.\xf0\x9e\xb8\x9a"); } // [B1, V3]15017test { try toUnicodeFail("-.\xf0\x9e\xb8\x9a"); } // [B1, V3]
15018test { try toAsciiFail("-.\xf0\x9e\xb8\x9a", false); } // [B1, V3]
15019test { try toAsciiFail("-.\xf0\x9e\xb8\x9a", true); } // [B1, V3]
6100test { try toUnicodeFail("-.\xd8\xb8"); } // [B1, V3]15020test { try toUnicodeFail("-.\xd8\xb8"); } // [B1, V3]
15021test { try toAsciiFail("-.\xd8\xb8", false); } // [B1, V3]
15022test { try toAsciiFail("-.\xd8\xb8", true); } // [B1, V3]
6101test { try toUnicodeFail("-.xn--3gb"); } // [B1, V3]15023test { try toUnicodeFail("-.xn--3gb"); } // [B1, V3]
15024test { try toAsciiFail("-.xn--3gb", false); } // [B1, V3]
15025test { try toAsciiFail("-.xn--3gb", true); } // [B1, V3]
6102test { try toUnicodeFail("\xf2\x8f\x9b\x93\xda\x83.\xe0\xbd\xbe\xd8\xb4"); } // [B1, B5, B6, V6, V7]15026test { try toUnicodeFail("\xf2\x8f\x9b\x93\xda\x83.\xe0\xbd\xbe\xd8\xb4"); } // [B1, B5, B6, V6, V7]
15027test { try toAsciiFail("\xf2\x8f\x9b\x93\xda\x83.\xe0\xbd\xbe\xd8\xb4", false); } // [B1, B5, B6, V6, V7]
15028test { try toAsciiFail("\xf2\x8f\x9b\x93\xda\x83.\xe0\xbd\xbe\xd8\xb4", true); } // [B1, B5, B6, V6, V7]
6103test { try toUnicodeFail("xn--8ib92728i.xn--zgb968b"); } // [B1, B5, B6, V6, V7]15029test { try toUnicodeFail("xn--8ib92728i.xn--zgb968b"); } // [B1, B5, B6, V6, V7]
15030test { try toAsciiFail("xn--8ib92728i.xn--zgb968b", false); } // [B1, B5, B6, V6, V7]
15031test { try toAsciiFail("xn--8ib92728i.xn--zgb968b", true); } // [B1, B5, B6, V6, V7]
6104test { try toUnicodeFail("\xe0\xbf\xa6\xe0\xa1\x83\xf1\xbd\xb6\xac.\xf0\x90\xae\x8f"); } // [B5, V7]15032test { try toUnicodeFail("\xe0\xbf\xa6\xe0\xa1\x83\xf1\xbd\xb6\xac.\xf0\x90\xae\x8f"); } // [B5, V7]
15033test { try toAsciiFail("\xe0\xbf\xa6\xe0\xa1\x83\xf1\xbd\xb6\xac.\xf0\x90\xae\x8f", false); } // [B5, V7]
15034test { try toAsciiFail("\xe0\xbf\xa6\xe0\xa1\x83\xf1\xbd\xb6\xac.\xf0\x90\xae\x8f", true); } // [B5, V7]
6105test { try toUnicodeFail("xn--1vb320b5m04p.xn--m29c"); } // [B5, V7]15035test { try toUnicodeFail("xn--1vb320b5m04p.xn--m29c"); } // [B5, V7]
15036test { try toAsciiFail("xn--1vb320b5m04p.xn--m29c", false); } // [B5, V7]
15037test { try toAsciiFail("xn--1vb320b5m04p.xn--m29c", true); } // [B5, V7]
6106test { try toUnicodeFail("2\xf1\x8e\xa8\xa0\xdf\x8b\xc3\x9f\xe3\x80\x82\xe1\xa0\xbd"); } // [B1, V7]15038test { try toUnicodeFail("2\xf1\x8e\xa8\xa0\xdf\x8b\xc3\x9f\xe3\x80\x82\xe1\xa0\xbd"); } // [B1, V7]
15039test { try toAsciiFail("2\xf1\x8e\xa8\xa0\xdf\x8b\xc3\x9f\xe3\x80\x82\xe1\xa0\xbd", false); } // [B1, V7]
15040test { try toAsciiFail("2\xf1\x8e\xa8\xa0\xdf\x8b\xc3\x9f\xe3\x80\x82\xe1\xa0\xbd", true); } // [B1, V7]
6107test { try toUnicodeFail("2\xf1\x8e\xa8\xa0\xdf\x8bSS\xe3\x80\x82\xe1\xa0\xbd"); } // [B1, V7]15041test { try toUnicodeFail("2\xf1\x8e\xa8\xa0\xdf\x8bSS\xe3\x80\x82\xe1\xa0\xbd"); } // [B1, V7]
15042test { try toAsciiFail("2\xf1\x8e\xa8\xa0\xdf\x8bSS\xe3\x80\x82\xe1\xa0\xbd", false); } // [B1, V7]
15043test { try toAsciiFail("2\xf1\x8e\xa8\xa0\xdf\x8bSS\xe3\x80\x82\xe1\xa0\xbd", true); } // [B1, V7]
6108test { try toUnicodeFail("2\xf1\x8e\xa8\xa0\xdf\x8bss\xe3\x80\x82\xe1\xa0\xbd"); } // [B1, V7]15044test { try toUnicodeFail("2\xf1\x8e\xa8\xa0\xdf\x8bss\xe3\x80\x82\xe1\xa0\xbd"); } // [B1, V7]
15045test { try toAsciiFail("2\xf1\x8e\xa8\xa0\xdf\x8bss\xe3\x80\x82\xe1\xa0\xbd", false); } // [B1, V7]
15046test { try toAsciiFail("2\xf1\x8e\xa8\xa0\xdf\x8bss\xe3\x80\x82\xe1\xa0\xbd", true); } // [B1, V7]
6109test { try toUnicodeFail("xn--2ss-odg83511n.xn--w7e"); } // [B1, V7]15047test { try toUnicodeFail("xn--2ss-odg83511n.xn--w7e"); } // [B1, V7]
15048test { try toAsciiFail("xn--2ss-odg83511n.xn--w7e", false); } // [B1, V7]
15049test { try toAsciiFail("xn--2ss-odg83511n.xn--w7e", true); } // [B1, V7]
6110test { try toUnicodeFail("xn--2-qfa924cez02l.xn--w7e"); } // [B1, V7]15050test { try toUnicodeFail("xn--2-qfa924cez02l.xn--w7e"); } // [B1, V7]
15051test { try toAsciiFail("xn--2-qfa924cez02l.xn--w7e", false); } // [B1, V7]
15052test { try toAsciiFail("xn--2-qfa924cez02l.xn--w7e", true); } // [B1, V7]
6111test { try toUnicodeFail("2\xf1\x8e\xa8\xa0\xdf\x8bSs\xe3\x80\x82\xe1\xa0\xbd"); } // [B1, V7]15053test { try toUnicodeFail("2\xf1\x8e\xa8\xa0\xdf\x8bSs\xe3\x80\x82\xe1\xa0\xbd"); } // [B1, V7]
15054test { try toAsciiFail("2\xf1\x8e\xa8\xa0\xdf\x8bSs\xe3\x80\x82\xe1\xa0\xbd", false); } // [B1, V7]
15055test { try toAsciiFail("2\xf1\x8e\xa8\xa0\xdf\x8bSs\xe3\x80\x82\xe1\xa0\xbd", true); } // [B1, V7]
6112test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae\xef\xbc\x8e\xdb\x8e\xc3\x9f-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]15056test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae\xef\xbc\x8e\xdb\x8e\xc3\x9f-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]
15057test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae\xef\xbc\x8e\xdb\x8e\xc3\x9f-\xe2\x80\x8d", false); } // [B2, B3, B5, B6, C2]
15058test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae\xef\xbc\x8e\xdb\x8e\xc3\x9f-\xe2\x80\x8d", true); } // [B2, B3, B5, B6, V3]
6113test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8\xef\xbc\x8e\xdb\x8e\xc3\x9f-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]15059test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8\xef\xbc\x8e\xdb\x8e\xc3\x9f-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]
15060test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8\xef\xbc\x8e\xdb\x8e\xc3\x9f-\xe2\x80\x8d", false); } // [B2, B3, B5, B6, C2]
15061test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8\xef\xbc\x8e\xdb\x8e\xc3\x9f-\xe2\x80\x8d", true); } // [B2, B3, B5, B6, V3]
6114test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae.\xdb\x8e\xc3\x9f-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]15062test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae.\xdb\x8e\xc3\x9f-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]
15063test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae.\xdb\x8e\xc3\x9f-\xe2\x80\x8d", false); } // [B2, B3, B5, B6, C2]
15064test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae.\xdb\x8e\xc3\x9f-\xe2\x80\x8d", true); } // [B2, B3, B5, B6, V3]
6115test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8.\xdb\x8e\xc3\x9f-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]15065test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8.\xdb\x8e\xc3\x9f-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]
15066test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8.\xdb\x8e\xc3\x9f-\xe2\x80\x8d", false); } // [B2, B3, B5, B6, C2]
15067test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8.\xdb\x8e\xc3\x9f-\xe2\x80\x8d", true); } // [B2, B3, B5, B6, V3]
6116test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8.\xdb\x8eSS-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]15068test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8.\xdb\x8eSS-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]
15069test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8.\xdb\x8eSS-\xe2\x80\x8d", false); } // [B2, B3, B5, B6, C2]
15070test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8.\xdb\x8eSS-\xe2\x80\x8d", true); } // [B2, B3, B5, B6, V3]
6117test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae.\xdb\x8eSS-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]15071test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae.\xdb\x8eSS-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]
15072test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae.\xdb\x8eSS-\xe2\x80\x8d", false); } // [B2, B3, B5, B6, C2]
15073test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae.\xdb\x8eSS-\xe2\x80\x8d", true); } // [B2, B3, B5, B6, V3]
6118test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae.\xdb\x8ess-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]15074test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae.\xdb\x8ess-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]
15075test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae.\xdb\x8ess-\xe2\x80\x8d", false); } // [B2, B3, B5, B6, C2]
15076test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae.\xdb\x8ess-\xe2\x80\x8d", true); } // [B2, B3, B5, B6, V3]
6119test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8.\xdb\x8ess-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]15077test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8.\xdb\x8ess-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]
15078test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8.\xdb\x8ess-\xe2\x80\x8d", false); } // [B2, B3, B5, B6, C2]
15079test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8.\xdb\x8ess-\xe2\x80\x8d", true); } // [B2, B3, B5, B6, V3]
6120test { try toUnicodeFail("xn--lsb457kkut.xn--ss--qjf"); } // [B2, B3, B5, B6, V3]15080test { try toUnicodeFail("xn--lsb457kkut.xn--ss--qjf"); } // [B2, B3, B5, B6, V3]
15081test { try toAsciiFail("xn--lsb457kkut.xn--ss--qjf", false); } // [B2, B3, B5, B6, V3]
15082test { try toAsciiFail("xn--lsb457kkut.xn--ss--qjf", true); } // [B2, B3, B5, B6, V3]
6121test { try toUnicodeFail("xn--lsb457kkut.xn--ss--qjf2343a"); } // [B2, B3, B5, B6, C2]15083test { try toUnicodeFail("xn--lsb457kkut.xn--ss--qjf2343a"); } // [B2, B3, B5, B6, C2]
15084test { try toAsciiFail("xn--lsb457kkut.xn--ss--qjf2343a", false); } // [B2, B3, B5, B6, C2]
15085test { try toAsciiFail("xn--lsb457kkut.xn--ss--qjf2343a", true); } // [B2, B3, B5, B6, C2]
6122test { try toUnicodeFail("xn--lsb457kkut.xn----pfa076bys4a"); } // [B2, B3, B5, B6, C2]15086test { try toUnicodeFail("xn--lsb457kkut.xn----pfa076bys4a"); } // [B2, B3, B5, B6, C2]
15087test { try toAsciiFail("xn--lsb457kkut.xn----pfa076bys4a", false); } // [B2, B3, B5, B6, C2]
15088test { try toAsciiFail("xn--lsb457kkut.xn----pfa076bys4a", true); } // [B2, B3, B5, B6, C2]
6123test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8\xef\xbc\x8e\xdb\x8eSS-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]15089test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8\xef\xbc\x8e\xdb\x8eSS-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]
15090test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8\xef\xbc\x8e\xdb\x8eSS-\xe2\x80\x8d", false); } // [B2, B3, B5, B6, C2]
15091test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8\xef\xbc\x8e\xdb\x8eSS-\xe2\x80\x8d", true); } // [B2, B3, B5, B6, V3]
6124test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae\xef\xbc\x8e\xdb\x8eSS-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]15092test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae\xef\xbc\x8e\xdb\x8eSS-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]
15093test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae\xef\xbc\x8e\xdb\x8eSS-\xe2\x80\x8d", false); } // [B2, B3, B5, B6, C2]
15094test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae\xef\xbc\x8e\xdb\x8eSS-\xe2\x80\x8d", true); } // [B2, B3, B5, B6, V3]
6125test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae\xef\xbc\x8e\xdb\x8ess-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]15095test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae\xef\xbc\x8e\xdb\x8ess-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]
15096test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae\xef\xbc\x8e\xdb\x8ess-\xe2\x80\x8d", false); } // [B2, B3, B5, B6, C2]
15097test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae\xef\xbc\x8e\xdb\x8ess-\xe2\x80\x8d", true); } // [B2, B3, B5, B6, V3]
6126test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8\xef\xbc\x8e\xdb\x8ess-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]15098test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8\xef\xbc\x8e\xdb\x8ess-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]
15099test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8\xef\xbc\x8e\xdb\x8ess-\xe2\x80\x8d", false); } // [B2, B3, B5, B6, C2]
15100test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8\xef\xbc\x8e\xdb\x8ess-\xe2\x80\x8d", true); } // [B2, B3, B5, B6, V3]
6127test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8.\xdb\x8eSs-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]15101test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8.\xdb\x8eSs-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]
15102test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8.\xdb\x8eSs-\xe2\x80\x8d", false); } // [B2, B3, B5, B6, C2]
15103test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8.\xdb\x8eSs-\xe2\x80\x8d", true); } // [B2, B3, B5, B6, V3]
6128test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae.\xdb\x8eSs-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]15104test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae.\xdb\x8eSs-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]
15105test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae.\xdb\x8eSs-\xe2\x80\x8d", false); } // [B2, B3, B5, B6, C2]
15106test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae.\xdb\x8eSs-\xe2\x80\x8d", true); } // [B2, B3, B5, B6, V3]
6129test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8\xef\xbc\x8e\xdb\x8eSs-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]15107test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8\xef\xbc\x8e\xdb\x8eSs-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]
15108test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8\xef\xbc\x8e\xdb\x8eSs-\xe2\x80\x8d", false); } // [B2, B3, B5, B6, C2]
15109test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a<\xcc\xb8\xef\xbc\x8e\xdb\x8eSs-\xe2\x80\x8d", true); } // [B2, B3, B5, B6, V3]
6130test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae\xef\xbc\x8e\xdb\x8eSs-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]15110test { try toUnicodeFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae\xef\xbc\x8e\xdb\x8eSs-\xe2\x80\x8d"); } // [B2, B3, B5, B6, C2]
15111test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae\xef\xbc\x8e\xdb\x8eSs-\xe2\x80\x8d", false); } // [B2, B3, B5, B6, C2]
15112test { try toAsciiFail("\xe3\xb8\xb3\xdf\x8a\xe2\x89\xae\xef\xbc\x8e\xdb\x8eSs-\xe2\x80\x8d", true); } // [B2, B3, B5, B6, V3]
6131test { try toUnicodeFail("-\xf2\xb7\x9d\xac\xe1\x8d\x9e\xf0\x91\x9c\xa7.\xe1\xb7\xab-\xef\xb8\x92"); } // [V3, V6, V7]15113test { try toUnicodeFail("-\xf2\xb7\x9d\xac\xe1\x8d\x9e\xf0\x91\x9c\xa7.\xe1\xb7\xab-\xef\xb8\x92"); } // [V3, V6, V7]
15114test { try toAsciiFail("-\xf2\xb7\x9d\xac\xe1\x8d\x9e\xf0\x91\x9c\xa7.\xe1\xb7\xab-\xef\xb8\x92", false); } // [V3, V6, V7]
15115test { try toAsciiFail("-\xf2\xb7\x9d\xac\xe1\x8d\x9e\xf0\x91\x9c\xa7.\xe1\xb7\xab-\xef\xb8\x92", true); } // [V3, V6, V7]
6132test { try toUnicodeFail("-\xf2\xb7\x9d\xac\xe1\x8d\x9e\xf0\x91\x9c\xa7.\xe1\xb7\xab-\xe3\x80\x82"); } // [V3, V6, V7]15116test { try toUnicodeFail("-\xf2\xb7\x9d\xac\xe1\x8d\x9e\xf0\x91\x9c\xa7.\xe1\xb7\xab-\xe3\x80\x82"); } // [V3, V6, V7]
15117test { try toAsciiFail("-\xf2\xb7\x9d\xac\xe1\x8d\x9e\xf0\x91\x9c\xa7.\xe1\xb7\xab-\xe3\x80\x82", false); } // [V3, V6, V7, A4_2]
15118test { try toAsciiFail("-\xf2\xb7\x9d\xac\xe1\x8d\x9e\xf0\x91\x9c\xa7.\xe1\xb7\xab-\xe3\x80\x82", true); } // [V3, V6, V7, A4_2]
6133test { try toUnicodeFail("xn----b5h1837n2ok9f.xn----mkm."); } // [V3, V6, V7]15119test { try toUnicodeFail("xn----b5h1837n2ok9f.xn----mkm."); } // [V3, V6, V7]
15120test { try toAsciiFail("xn----b5h1837n2ok9f.xn----mkm.", false); } // [V3, V6, V7, A4_2]
15121test { try toAsciiFail("xn----b5h1837n2ok9f.xn----mkm.", true); } // [V3, V6, V7, A4_2]
6134test { try toUnicodeFail("xn----b5h1837n2ok9f.xn----mkmw278h"); } // [V3, V6, V7]15122test { try toUnicodeFail("xn----b5h1837n2ok9f.xn----mkmw278h"); } // [V3, V6, V7]
15123test { try toAsciiFail("xn----b5h1837n2ok9f.xn----mkmw278h", false); } // [V3, V6, V7]
15124test { try toAsciiFail("xn----b5h1837n2ok9f.xn----mkmw278h", true); } // [V3, V6, V7]
6135test { try toUnicodeFail("\xef\xb8\x92.\xf2\x9a\xa0\xa1\xe1\xa9\x99"); } // [V7]15125test { try toUnicodeFail("\xef\xb8\x92.\xf2\x9a\xa0\xa1\xe1\xa9\x99"); } // [V7]
15126test { try toAsciiFail("\xef\xb8\x92.\xf2\x9a\xa0\xa1\xe1\xa9\x99", false); } // [V7]
15127test { try toAsciiFail("\xef\xb8\x92.\xf2\x9a\xa0\xa1\xe1\xa9\x99", true); } // [V7]
6136test { try toUnicodeFail("\xe3\x80\x82.\xf2\x9a\xa0\xa1\xe1\xa9\x99"); } // [V7, X4_2]15128test { try toUnicodeFail("\xe3\x80\x82.\xf2\x9a\xa0\xa1\xe1\xa9\x99"); } // [V7, X4_2]
15129test { try toAsciiFail("\xe3\x80\x82.\xf2\x9a\xa0\xa1\xe1\xa9\x99", false); } // [V7, A4_2]
15130test { try toAsciiFail("\xe3\x80\x82.\xf2\x9a\xa0\xa1\xe1\xa9\x99", true); } // [V7, A4_2]
6137test { try toUnicodeFail("..xn--cof61594i"); } // [V7, X4_2]15131test { try toUnicodeFail("..xn--cof61594i"); } // [V7, X4_2]
15132test { try toAsciiFail("..xn--cof61594i", false); } // [V7, A4_2]
15133test { try toAsciiFail("..xn--cof61594i", true); } // [V7, A4_2]
6138test { try toUnicodeFail("xn--y86c.xn--cof61594i"); } // [V7]15134test { try toUnicodeFail("xn--y86c.xn--cof61594i"); } // [V7]
15135test { try toAsciiFail("xn--y86c.xn--cof61594i", false); } // [V7]
15136test { try toAsciiFail("xn--y86c.xn--cof61594i", true); } // [V7]
6139test { try toUnicodeFail("\xcc\xa3\xe2\xb7\xa1\xe3\x80\x82\xe2\x80\x8c\xe2\x93\xbe\xe2\x80\x8c\xda\xb9"); } // [B1, C1, V6]15137test { try toUnicodeFail("\xcc\xa3\xe2\xb7\xa1\xe3\x80\x82\xe2\x80\x8c\xe2\x93\xbe\xe2\x80\x8c\xda\xb9"); } // [B1, C1, V6]
15138test { try toAsciiFail("\xcc\xa3\xe2\xb7\xa1\xe3\x80\x82\xe2\x80\x8c\xe2\x93\xbe\xe2\x80\x8c\xda\xb9", false); } // [B1, C1, V6]
15139test { try toAsciiFail("\xcc\xa3\xe2\xb7\xa1\xe3\x80\x82\xe2\x80\x8c\xe2\x93\xbe\xe2\x80\x8c\xda\xb9", true); } // [B1, V6]
6140test { try toUnicodeFail("xn--kta899s.xn--skb116m"); } // [B1, V6]15140test { try toUnicodeFail("xn--kta899s.xn--skb116m"); } // [B1, V6]
15141test { try toAsciiFail("xn--kta899s.xn--skb116m", false); } // [B1, V6]
15142test { try toAsciiFail("xn--kta899s.xn--skb116m", true); } // [B1, V6]
6141test { try toUnicodeFail("xn--kta899s.xn--skb970ka771c"); } // [B1, C1, V6]15143test { try toUnicodeFail("xn--kta899s.xn--skb970ka771c"); } // [B1, C1, V6]
15144test { try toAsciiFail("xn--kta899s.xn--skb970ka771c", false); } // [B1, C1, V6]
15145test { try toAsciiFail("xn--kta899s.xn--skb970ka771c", true); } // [B1, C1, V6]
6142test { try toUnicodeFail("\xf0\x9e\xa0\xb6\xe1\xa0\xb4\xdb\x9d\xef\xbd\xa1\xe1\x81\xb4\xf0\x9e\xa4\xb5\xf3\xa0\x85\xa6"); } // [B1, B2, V6, V7]15146test { try toUnicodeFail("\xf0\x9e\xa0\xb6\xe1\xa0\xb4\xdb\x9d\xef\xbd\xa1\xe1\x81\xb4\xf0\x9e\xa4\xb5\xf3\xa0\x85\xa6"); } // [B1, B2, V6, V7]
15147test { try toAsciiFail("\xf0\x9e\xa0\xb6\xe1\xa0\xb4\xdb\x9d\xef\xbd\xa1\xe1\x81\xb4\xf0\x9e\xa4\xb5\xf3\xa0\x85\xa6", false); } // [B1, B2, V6, V7]
15148test { try toAsciiFail("\xf0\x9e\xa0\xb6\xe1\xa0\xb4\xdb\x9d\xef\xbd\xa1\xe1\x81\xb4\xf0\x9e\xa4\xb5\xf3\xa0\x85\xa6", true); } // [B1, B2, V6, V7]
6143test { try toUnicodeFail("\xf0\x9e\xa0\xb6\xe1\xa0\xb4\xdb\x9d\xe3\x80\x82\xe1\x81\xb4\xf0\x9e\xa4\xb5\xf3\xa0\x85\xa6"); } // [B1, B2, V6, V7]15149test { try toUnicodeFail("\xf0\x9e\xa0\xb6\xe1\xa0\xb4\xdb\x9d\xe3\x80\x82\xe1\x81\xb4\xf0\x9e\xa4\xb5\xf3\xa0\x85\xa6"); } // [B1, B2, V6, V7]
15150test { try toAsciiFail("\xf0\x9e\xa0\xb6\xe1\xa0\xb4\xdb\x9d\xe3\x80\x82\xe1\x81\xb4\xf0\x9e\xa4\xb5\xf3\xa0\x85\xa6", false); } // [B1, B2, V6, V7]
15151test { try toAsciiFail("\xf0\x9e\xa0\xb6\xe1\xa0\xb4\xdb\x9d\xe3\x80\x82\xe1\x81\xb4\xf0\x9e\xa4\xb5\xf3\xa0\x85\xa6", true); } // [B1, B2, V6, V7]
6144test { try toUnicodeFail("\xf0\x9e\xa0\xb6\xe1\xa0\xb4\xdb\x9d\xe3\x80\x82\xe1\x81\xb4\xf0\x9e\xa4\x93\xf3\xa0\x85\xa6"); } // [B1, B2, V6, V7]15152test { try toUnicodeFail("\xf0\x9e\xa0\xb6\xe1\xa0\xb4\xdb\x9d\xe3\x80\x82\xe1\x81\xb4\xf0\x9e\xa4\x93\xf3\xa0\x85\xa6"); } // [B1, B2, V6, V7]
15153test { try toAsciiFail("\xf0\x9e\xa0\xb6\xe1\xa0\xb4\xdb\x9d\xe3\x80\x82\xe1\x81\xb4\xf0\x9e\xa4\x93\xf3\xa0\x85\xa6", false); } // [B1, B2, V6, V7]
15154test { try toAsciiFail("\xf0\x9e\xa0\xb6\xe1\xa0\xb4\xdb\x9d\xe3\x80\x82\xe1\x81\xb4\xf0\x9e\xa4\x93\xf3\xa0\x85\xa6", true); } // [B1, B2, V6, V7]
6145test { try toUnicodeFail("xn--tlb199fwl35a.xn--yld4613v"); } // [B1, B2, V6, V7]15155test { try toUnicodeFail("xn--tlb199fwl35a.xn--yld4613v"); } // [B1, B2, V6, V7]
15156test { try toAsciiFail("xn--tlb199fwl35a.xn--yld4613v", false); } // [B1, B2, V6, V7]
15157test { try toAsciiFail("xn--tlb199fwl35a.xn--yld4613v", true); } // [B1, B2, V6, V7]
6146test { try toUnicodeFail("\xf0\x9e\xa0\xb6\xe1\xa0\xb4\xdb\x9d\xef\xbd\xa1\xe1\x81\xb4\xf0\x9e\xa4\x93\xf3\xa0\x85\xa6"); } // [B1, B2, V6, V7]15158test { try toUnicodeFail("\xf0\x9e\xa0\xb6\xe1\xa0\xb4\xdb\x9d\xef\xbd\xa1\xe1\x81\xb4\xf0\x9e\xa4\x93\xf3\xa0\x85\xa6"); } // [B1, B2, V6, V7]
15159test { try toAsciiFail("\xf0\x9e\xa0\xb6\xe1\xa0\xb4\xdb\x9d\xef\xbd\xa1\xe1\x81\xb4\xf0\x9e\xa4\x93\xf3\xa0\x85\xa6", false); } // [B1, B2, V6, V7]
15160test { try toAsciiFail("\xf0\x9e\xa0\xb6\xe1\xa0\xb4\xdb\x9d\xef\xbd\xa1\xe1\x81\xb4\xf0\x9e\xa4\x93\xf3\xa0\x85\xa6", true); } // [B1, B2, V6, V7]
6147test { try toUnicodeFail("\xf0\x91\xb0\xba.-\xf2\x91\x9f\x8f"); } // [V3, V6, V7]15161test { try toUnicodeFail("\xf0\x91\xb0\xba.-\xf2\x91\x9f\x8f"); } // [V3, V6, V7]
15162test { try toAsciiFail("\xf0\x91\xb0\xba.-\xf2\x91\x9f\x8f", false); } // [V3, V6, V7]
15163test { try toAsciiFail("\xf0\x91\xb0\xba.-\xf2\x91\x9f\x8f", true); } // [V3, V6, V7]
6148test { try toUnicodeFail("xn--jk3d.xn----iz68g"); } // [V3, V6, V7]15164test { try toUnicodeFail("xn--jk3d.xn----iz68g"); } // [V3, V6, V7]
15165test { try toAsciiFail("xn--jk3d.xn----iz68g", false); } // [V3, V6, V7]
15166test { try toAsciiFail("xn--jk3d.xn----iz68g", true); } // [V3, V6, V7]
6149test { try toUnicodeFail("\xf3\xa0\xbb\xa9\xef\xbc\x8e\xe8\xb5\x8f"); } // [V7]15167test { try toUnicodeFail("\xf3\xa0\xbb\xa9\xef\xbc\x8e\xe8\xb5\x8f"); } // [V7]
15168test { try toAsciiFail("\xf3\xa0\xbb\xa9\xef\xbc\x8e\xe8\xb5\x8f", false); } // [V7]
15169test { try toAsciiFail("\xf3\xa0\xbb\xa9\xef\xbc\x8e\xe8\xb5\x8f", true); } // [V7]
6150test { try toUnicodeFail("\xf3\xa0\xbb\xa9.\xe8\xb5\x8f"); } // [V7]15170test { try toUnicodeFail("\xf3\xa0\xbb\xa9.\xe8\xb5\x8f"); } // [V7]
15171test { try toAsciiFail("\xf3\xa0\xbb\xa9.\xe8\xb5\x8f", false); } // [V7]
15172test { try toAsciiFail("\xf3\xa0\xbb\xa9.\xe8\xb5\x8f", true); } // [V7]
6151test { try toUnicodeFail("xn--2856e.xn--6o3a"); } // [V7]15173test { try toUnicodeFail("xn--2856e.xn--6o3a"); } // [V7]
15174test { try toAsciiFail("xn--2856e.xn--6o3a", false); } // [V7]
15175test { try toAsciiFail("xn--2856e.xn--6o3a", true); } // [V7]
6152test { try toUnicodeFail("\xda\xb0\xe1\xa0\xa1\xef\xbd\xa1\xe1\x82\xa1"); } // [B2, B3]15176test { try toUnicodeFail("\xda\xb0\xe1\xa0\xa1\xef\xbd\xa1\xe1\x82\xa1"); } // [B2, B3]
15177test { try toAsciiFail("\xda\xb0\xe1\xa0\xa1\xef\xbd\xa1\xe1\x82\xa1", false); } // [B2, B3]
15178test { try toAsciiFail("\xda\xb0\xe1\xa0\xa1\xef\xbd\xa1\xe1\x82\xa1", true); } // [B2, B3]
6153test { try toUnicodeFail("\xda\xb0\xe1\xa0\xa1\xe3\x80\x82\xe1\x82\xa1"); } // [B2, B3]15179test { try toUnicodeFail("\xda\xb0\xe1\xa0\xa1\xe3\x80\x82\xe1\x82\xa1"); } // [B2, B3]
15180test { try toAsciiFail("\xda\xb0\xe1\xa0\xa1\xe3\x80\x82\xe1\x82\xa1", false); } // [B2, B3]
15181test { try toAsciiFail("\xda\xb0\xe1\xa0\xa1\xe3\x80\x82\xe1\x82\xa1", true); } // [B2, B3]
6154test { try toUnicodeFail("\xda\xb0\xe1\xa0\xa1\xe3\x80\x82\xe2\xb4\x81"); } // [B2, B3]15182test { try toUnicodeFail("\xda\xb0\xe1\xa0\xa1\xe3\x80\x82\xe2\xb4\x81"); } // [B2, B3]
15183test { try toAsciiFail("\xda\xb0\xe1\xa0\xa1\xe3\x80\x82\xe2\xb4\x81", false); } // [B2, B3]
15184test { try toAsciiFail("\xda\xb0\xe1\xa0\xa1\xe3\x80\x82\xe2\xb4\x81", true); } // [B2, B3]
6155test { try toUnicodeFail("xn--jkb440g.xn--skj"); } // [B2, B3]15185test { try toUnicodeFail("xn--jkb440g.xn--skj"); } // [B2, B3]
15186test { try toAsciiFail("xn--jkb440g.xn--skj", false); } // [B2, B3]
15187test { try toAsciiFail("xn--jkb440g.xn--skj", true); } // [B2, B3]
6156test { try toUnicodeFail("\xda\xb0\xe1\xa0\xa1\xef\xbd\xa1\xe2\xb4\x81"); } // [B2, B3]15188test { try toUnicodeFail("\xda\xb0\xe1\xa0\xa1\xef\xbd\xa1\xe2\xb4\x81"); } // [B2, B3]
15189test { try toAsciiFail("\xda\xb0\xe1\xa0\xa1\xef\xbd\xa1\xe2\xb4\x81", false); } // [B2, B3]
15190test { try toAsciiFail("\xda\xb0\xe1\xa0\xa1\xef\xbd\xa1\xe2\xb4\x81", true); } // [B2, B3]
6157test { try toUnicodeFail("xn--jkb440g.xn--8md"); } // [B2, B3, V7]15191test { try toUnicodeFail("xn--jkb440g.xn--8md"); } // [B2, B3, V7]
15192test { try toAsciiFail("xn--jkb440g.xn--8md", false); } // [B2, B3, V7]
15193test { try toAsciiFail("xn--jkb440g.xn--8md", true); } // [B2, B3, V7]
6158test { try toUnicodeFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xcf\x82\xef\xbd\xa1-"); } // [B1, V3, V6]15194test { try toUnicodeFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xcf\x82\xef\xbd\xa1-"); } // [B1, V3, V6]
15195test { try toAsciiFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xcf\x82\xef\xbd\xa1-", false); } // [B1, V3, V6]
15196test { try toAsciiFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xcf\x82\xef\xbd\xa1-", true); } // [B1, V3, V6]
6159test { try toUnicodeFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xcf\x82\xe3\x80\x82-"); } // [B1, V3, V6]15197test { try toUnicodeFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xcf\x82\xe3\x80\x82-"); } // [B1, V3, V6]
15198test { try toAsciiFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xcf\x82\xe3\x80\x82-", false); } // [B1, V3, V6]
15199test { try toAsciiFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xcf\x82\xe3\x80\x82-", true); } // [B1, V3, V6]
6160test { try toUnicodeFail("\xe2\x83\x9e\xe2\xb4\x8a\xda\xbb\xcf\x82\xe3\x80\x82-"); } // [B1, V3, V6]15200test { try toUnicodeFail("\xe2\x83\x9e\xe2\xb4\x8a\xda\xbb\xcf\x82\xe3\x80\x82-"); } // [B1, V3, V6]
15201test { try toAsciiFail("\xe2\x83\x9e\xe2\xb4\x8a\xda\xbb\xcf\x82\xe3\x80\x82-", false); } // [B1, V3, V6]
15202test { try toAsciiFail("\xe2\x83\x9e\xe2\xb4\x8a\xda\xbb\xcf\x82\xe3\x80\x82-", true); } // [B1, V3, V6]
6161test { try toUnicodeFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xce\xa3\xe3\x80\x82-"); } // [B1, V3, V6]15203test { try toUnicodeFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xce\xa3\xe3\x80\x82-"); } // [B1, V3, V6]
15204test { try toAsciiFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xce\xa3\xe3\x80\x82-", false); } // [B1, V3, V6]
15205test { try toAsciiFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xce\xa3\xe3\x80\x82-", true); } // [B1, V3, V6]
6162test { try toUnicodeFail("\xe2\x83\x9e\xe2\xb4\x8a\xda\xbb\xcf\x83\xe3\x80\x82-"); } // [B1, V3, V6]15206test { try toUnicodeFail("\xe2\x83\x9e\xe2\xb4\x8a\xda\xbb\xcf\x83\xe3\x80\x82-"); } // [B1, V3, V6]
15207test { try toAsciiFail("\xe2\x83\x9e\xe2\xb4\x8a\xda\xbb\xcf\x83\xe3\x80\x82-", false); } // [B1, V3, V6]
15208test { try toAsciiFail("\xe2\x83\x9e\xe2\xb4\x8a\xda\xbb\xcf\x83\xe3\x80\x82-", true); } // [B1, V3, V6]
6163test { try toUnicodeFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xcf\x83\xe3\x80\x82-"); } // [B1, V3, V6]15209test { try toUnicodeFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xcf\x83\xe3\x80\x82-"); } // [B1, V3, V6]
15210test { try toAsciiFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xcf\x83\xe3\x80\x82-", false); } // [B1, V3, V6]
15211test { try toAsciiFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xcf\x83\xe3\x80\x82-", true); } // [B1, V3, V6]
6164test { try toUnicodeFail("xn--4xa33mr38aeel.-"); } // [B1, V3, V6]15212test { try toUnicodeFail("xn--4xa33mr38aeel.-"); } // [B1, V3, V6]
15213test { try toAsciiFail("xn--4xa33mr38aeel.-", false); } // [B1, V3, V6]
15214test { try toAsciiFail("xn--4xa33mr38aeel.-", true); } // [B1, V3, V6]
6165test { try toUnicodeFail("xn--3xa53mr38aeel.-"); } // [B1, V3, V6]15215test { try toUnicodeFail("xn--3xa53mr38aeel.-"); } // [B1, V3, V6]
15216test { try toAsciiFail("xn--3xa53mr38aeel.-", false); } // [B1, V3, V6]
15217test { try toAsciiFail("xn--3xa53mr38aeel.-", true); } // [B1, V3, V6]
6166test { try toUnicodeFail("\xe2\x83\x9e\xe2\xb4\x8a\xda\xbb\xcf\x82\xef\xbd\xa1-"); } // [B1, V3, V6]15218test { try toUnicodeFail("\xe2\x83\x9e\xe2\xb4\x8a\xda\xbb\xcf\x82\xef\xbd\xa1-"); } // [B1, V3, V6]
15219test { try toAsciiFail("\xe2\x83\x9e\xe2\xb4\x8a\xda\xbb\xcf\x82\xef\xbd\xa1-", false); } // [B1, V3, V6]
15220test { try toAsciiFail("\xe2\x83\x9e\xe2\xb4\x8a\xda\xbb\xcf\x82\xef\xbd\xa1-", true); } // [B1, V3, V6]
6167test { try toUnicodeFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xce\xa3\xef\xbd\xa1-"); } // [B1, V3, V6]15221test { try toUnicodeFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xce\xa3\xef\xbd\xa1-"); } // [B1, V3, V6]
15222test { try toAsciiFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xce\xa3\xef\xbd\xa1-", false); } // [B1, V3, V6]
15223test { try toAsciiFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xce\xa3\xef\xbd\xa1-", true); } // [B1, V3, V6]
6168test { try toUnicodeFail("\xe2\x83\x9e\xe2\xb4\x8a\xda\xbb\xcf\x83\xef\xbd\xa1-"); } // [B1, V3, V6]15224test { try toUnicodeFail("\xe2\x83\x9e\xe2\xb4\x8a\xda\xbb\xcf\x83\xef\xbd\xa1-"); } // [B1, V3, V6]
15225test { try toAsciiFail("\xe2\x83\x9e\xe2\xb4\x8a\xda\xbb\xcf\x83\xef\xbd\xa1-", false); } // [B1, V3, V6]
15226test { try toAsciiFail("\xe2\x83\x9e\xe2\xb4\x8a\xda\xbb\xcf\x83\xef\xbd\xa1-", true); } // [B1, V3, V6]
6169test { try toUnicodeFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xcf\x83\xef\xbd\xa1-"); } // [B1, V3, V6]15227test { try toUnicodeFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xcf\x83\xef\xbd\xa1-"); } // [B1, V3, V6]
15228test { try toAsciiFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xcf\x83\xef\xbd\xa1-", false); } // [B1, V3, V6]
15229test { try toAsciiFail("\xe2\x83\x9e\xe1\x82\xaa\xda\xbb\xcf\x83\xef\xbd\xa1-", true); } // [B1, V3, V6]
6170test { try toUnicodeFail("xn--4xa33m7zmb0q.-"); } // [B1, V3, V6, V7]15230test { try toUnicodeFail("xn--4xa33m7zmb0q.-"); } // [B1, V3, V6, V7]
15231test { try toAsciiFail("xn--4xa33m7zmb0q.-", false); } // [B1, V3, V6, V7]
15232test { try toAsciiFail("xn--4xa33m7zmb0q.-", true); } // [B1, V3, V6, V7]
6171test { try toUnicodeFail("xn--3xa53m7zmb0q.-"); } // [B1, V3, V6, V7]15233test { try toUnicodeFail("xn--3xa53m7zmb0q.-"); } // [B1, V3, V6, V7]
15234test { try toAsciiFail("xn--3xa53m7zmb0q.-", false); } // [B1, V3, V6, V7]
15235test { try toAsciiFail("xn--3xa53m7zmb0q.-", true); } // [B1, V3, V6, V7]
6172test { try toUnicodeFail("\xe1\x82\xad\xef\xbc\x8e\xf1\x8d\x87\xa6\xe2\x80\x8c"); } // [C1, V7]15236test { try toUnicodeFail("\xe1\x82\xad\xef\xbc\x8e\xf1\x8d\x87\xa6\xe2\x80\x8c"); } // [C1, V7]
15237test { try toAsciiFail("\xe1\x82\xad\xef\xbc\x8e\xf1\x8d\x87\xa6\xe2\x80\x8c", false); } // [C1, V7]
15238test { try toAsciiFail("\xe1\x82\xad\xef\xbc\x8e\xf1\x8d\x87\xa6\xe2\x80\x8c", true); } // [V7]
6173test { try toUnicodeFail("\xe1\x82\xad.\xf1\x8d\x87\xa6\xe2\x80\x8c"); } // [C1, V7]15239test { try toUnicodeFail("\xe1\x82\xad.\xf1\x8d\x87\xa6\xe2\x80\x8c"); } // [C1, V7]
15240test { try toAsciiFail("\xe1\x82\xad.\xf1\x8d\x87\xa6\xe2\x80\x8c", false); } // [C1, V7]
15241test { try toAsciiFail("\xe1\x82\xad.\xf1\x8d\x87\xa6\xe2\x80\x8c", true); } // [V7]
6174test { try toUnicodeFail("\xe2\xb4\x8d.\xf1\x8d\x87\xa6\xe2\x80\x8c"); } // [C1, V7]15242test { try toUnicodeFail("\xe2\xb4\x8d.\xf1\x8d\x87\xa6\xe2\x80\x8c"); } // [C1, V7]
15243test { try toAsciiFail("\xe2\xb4\x8d.\xf1\x8d\x87\xa6\xe2\x80\x8c", false); } // [C1, V7]
15244test { try toAsciiFail("\xe2\xb4\x8d.\xf1\x8d\x87\xa6\xe2\x80\x8c", true); } // [V7]
6175test { try toUnicodeFail("xn--4kj.xn--p01x"); } // [V7]15245test { try toUnicodeFail("xn--4kj.xn--p01x"); } // [V7]
15246test { try toAsciiFail("xn--4kj.xn--p01x", false); } // [V7]
15247test { try toAsciiFail("xn--4kj.xn--p01x", true); } // [V7]
6176test { try toUnicodeFail("xn--4kj.xn--0ug56448b"); } // [C1, V7]15248test { try toUnicodeFail("xn--4kj.xn--0ug56448b"); } // [C1, V7]
15249test { try toAsciiFail("xn--4kj.xn--0ug56448b", false); } // [C1, V7]
15250test { try toAsciiFail("xn--4kj.xn--0ug56448b", true); } // [C1, V7]
6177test { try toUnicodeFail("\xe2\xb4\x8d\xef\xbc\x8e\xf1\x8d\x87\xa6\xe2\x80\x8c"); } // [C1, V7]15251test { try toUnicodeFail("\xe2\xb4\x8d\xef\xbc\x8e\xf1\x8d\x87\xa6\xe2\x80\x8c"); } // [C1, V7]
15252test { try toAsciiFail("\xe2\xb4\x8d\xef\xbc\x8e\xf1\x8d\x87\xa6\xe2\x80\x8c", false); } // [C1, V7]
15253test { try toAsciiFail("\xe2\xb4\x8d\xef\xbc\x8e\xf1\x8d\x87\xa6\xe2\x80\x8c", true); } // [V7]
6178test { try toUnicodeFail("xn--lnd.xn--p01x"); } // [V7]15254test { try toUnicodeFail("xn--lnd.xn--p01x"); } // [V7]
15255test { try toAsciiFail("xn--lnd.xn--p01x", false); } // [V7]
15256test { try toAsciiFail("xn--lnd.xn--p01x", true); } // [V7]
6179test { try toUnicodeFail("xn--lnd.xn--0ug56448b"); } // [C1, V7]15257test { try toUnicodeFail("xn--lnd.xn--0ug56448b"); } // [C1, V7]
15258test { try toAsciiFail("xn--lnd.xn--0ug56448b", false); } // [C1, V7]
15259test { try toAsciiFail("xn--lnd.xn--0ug56448b", true); } // [C1, V7]
6180test { try toUnicodeFail("\xf2\x89\x9f\x82\xf3\xa0\xb5\xa3.\xf0\x90\xab\xab\xe1\xa9\xa0\xf3\xb4\xba\x96\xe1\xad\x84"); } // [B2, B3, B6, V7]15260test { try toUnicodeFail("\xf2\x89\x9f\x82\xf3\xa0\xb5\xa3.\xf0\x90\xab\xab\xe1\xa9\xa0\xf3\xb4\xba\x96\xe1\xad\x84"); } // [B2, B3, B6, V7]
15261test { try toAsciiFail("\xf2\x89\x9f\x82\xf3\xa0\xb5\xa3.\xf0\x90\xab\xab\xe1\xa9\xa0\xf3\xb4\xba\x96\xe1\xad\x84", false); } // [B2, B3, B6, V7]
15262test { try toAsciiFail("\xf2\x89\x9f\x82\xf3\xa0\xb5\xa3.\xf0\x90\xab\xab\xe1\xa9\xa0\xf3\xb4\xba\x96\xe1\xad\x84", true); } // [B2, B3, B6, V7]
6181test { try toUnicodeFail("xn--9u37blu98h.xn--jof13bt568cork1j"); } // [B2, B3, B6, V7]15263test { try toUnicodeFail("xn--9u37blu98h.xn--jof13bt568cork1j"); } // [B2, B3, B6, V7]
15264test { try toAsciiFail("xn--9u37blu98h.xn--jof13bt568cork1j", false); } // [B2, B3, B6, V7]
15265test { try toAsciiFail("xn--9u37blu98h.xn--jof13bt568cork1j", true); } // [B2, B3, B6, V7]
6182test { try toUnicodeFail("\xe2\x89\xaf\xe2\x9d\x8a\xe1\xa0\xaf\xef\xbd\xa1\xf0\x90\xb9\xb1\xe2\xba\xa8"); } // [B1]15266test { try toUnicodeFail("\xe2\x89\xaf\xe2\x9d\x8a\xe1\xa0\xaf\xef\xbd\xa1\xf0\x90\xb9\xb1\xe2\xba\xa8"); } // [B1]
15267test { try toAsciiFail("\xe2\x89\xaf\xe2\x9d\x8a\xe1\xa0\xaf\xef\xbd\xa1\xf0\x90\xb9\xb1\xe2\xba\xa8", false); } // [B1]
15268test { try toAsciiFail("\xe2\x89\xaf\xe2\x9d\x8a\xe1\xa0\xaf\xef\xbd\xa1\xf0\x90\xb9\xb1\xe2\xba\xa8", true); } // [B1]
6183test { try toUnicodeFail(">\xcc\xb8\xe2\x9d\x8a\xe1\xa0\xaf\xef\xbd\xa1\xf0\x90\xb9\xb1\xe2\xba\xa8"); } // [B1]15269test { try toUnicodeFail(">\xcc\xb8\xe2\x9d\x8a\xe1\xa0\xaf\xef\xbd\xa1\xf0\x90\xb9\xb1\xe2\xba\xa8"); } // [B1]
15270test { try toAsciiFail(">\xcc\xb8\xe2\x9d\x8a\xe1\xa0\xaf\xef\xbd\xa1\xf0\x90\xb9\xb1\xe2\xba\xa8", false); } // [B1]
15271test { try toAsciiFail(">\xcc\xb8\xe2\x9d\x8a\xe1\xa0\xaf\xef\xbd\xa1\xf0\x90\xb9\xb1\xe2\xba\xa8", true); } // [B1]
6184test { try toUnicodeFail("\xe2\x89\xaf\xe2\x9d\x8a\xe1\xa0\xaf\xe3\x80\x82\xf0\x90\xb9\xb1\xe2\xba\xa8"); } // [B1]15272test { try toUnicodeFail("\xe2\x89\xaf\xe2\x9d\x8a\xe1\xa0\xaf\xe3\x80\x82\xf0\x90\xb9\xb1\xe2\xba\xa8"); } // [B1]
15273test { try toAsciiFail("\xe2\x89\xaf\xe2\x9d\x8a\xe1\xa0\xaf\xe3\x80\x82\xf0\x90\xb9\xb1\xe2\xba\xa8", false); } // [B1]
15274test { try toAsciiFail("\xe2\x89\xaf\xe2\x9d\x8a\xe1\xa0\xaf\xe3\x80\x82\xf0\x90\xb9\xb1\xe2\xba\xa8", true); } // [B1]
6185test { try toUnicodeFail(">\xcc\xb8\xe2\x9d\x8a\xe1\xa0\xaf\xe3\x80\x82\xf0\x90\xb9\xb1\xe2\xba\xa8"); } // [B1]15275test { try toUnicodeFail(">\xcc\xb8\xe2\x9d\x8a\xe1\xa0\xaf\xe3\x80\x82\xf0\x90\xb9\xb1\xe2\xba\xa8"); } // [B1]
15276test { try toAsciiFail(">\xcc\xb8\xe2\x9d\x8a\xe1\xa0\xaf\xe3\x80\x82\xf0\x90\xb9\xb1\xe2\xba\xa8", false); } // [B1]
15277test { try toAsciiFail(">\xcc\xb8\xe2\x9d\x8a\xe1\xa0\xaf\xe3\x80\x82\xf0\x90\xb9\xb1\xe2\xba\xa8", true); } // [B1]
6186test { try toUnicodeFail("xn--i7e163ct2d.xn--vwj7372e"); } // [B1]15278test { try toUnicodeFail("xn--i7e163ct2d.xn--vwj7372e"); } // [B1]
15279test { try toAsciiFail("xn--i7e163ct2d.xn--vwj7372e", false); } // [B1]
15280test { try toAsciiFail("xn--i7e163ct2d.xn--vwj7372e", true); } // [B1]
6187test { try toUnicodeFail("\xf4\x81\x95\x9c\xf0\x90\xb9\xa7\xf0\x9e\xad\x81\xf0\x90\xb9\xa9\xe3\x80\x82\xe1\x82\xa8\xf0\x90\xab\xae\xe1\x82\xaf"); } // [B5, B6, V7]15281test { try toUnicodeFail("\xf4\x81\x95\x9c\xf0\x90\xb9\xa7\xf0\x9e\xad\x81\xf0\x90\xb9\xa9\xe3\x80\x82\xe1\x82\xa8\xf0\x90\xab\xae\xe1\x82\xaf"); } // [B5, B6, V7]
15282test { try toAsciiFail("\xf4\x81\x95\x9c\xf0\x90\xb9\xa7\xf0\x9e\xad\x81\xf0\x90\xb9\xa9\xe3\x80\x82\xe1\x82\xa8\xf0\x90\xab\xae\xe1\x82\xaf", false); } // [B5, B6, V7]
15283test { try toAsciiFail("\xf4\x81\x95\x9c\xf0\x90\xb9\xa7\xf0\x9e\xad\x81\xf0\x90\xb9\xa9\xe3\x80\x82\xe1\x82\xa8\xf0\x90\xab\xae\xe1\x82\xaf", true); } // [B5, B6, V7]
6188test { try toUnicodeFail("\xf4\x81\x95\x9c\xf0\x90\xb9\xa7\xf0\x9e\xad\x81\xf0\x90\xb9\xa9\xe3\x80\x82\xe2\xb4\x88\xf0\x90\xab\xae\xe2\xb4\x8f"); } // [B5, B6, V7]15284test { try toUnicodeFail("\xf4\x81\x95\x9c\xf0\x90\xb9\xa7\xf0\x9e\xad\x81\xf0\x90\xb9\xa9\xe3\x80\x82\xe2\xb4\x88\xf0\x90\xab\xae\xe2\xb4\x8f"); } // [B5, B6, V7]
15285test { try toAsciiFail("\xf4\x81\x95\x9c\xf0\x90\xb9\xa7\xf0\x9e\xad\x81\xf0\x90\xb9\xa9\xe3\x80\x82\xe2\xb4\x88\xf0\x90\xab\xae\xe2\xb4\x8f", false); } // [B5, B6, V7]
15286test { try toAsciiFail("\xf4\x81\x95\x9c\xf0\x90\xb9\xa7\xf0\x9e\xad\x81\xf0\x90\xb9\xa9\xe3\x80\x82\xe2\xb4\x88\xf0\x90\xab\xae\xe2\xb4\x8f", true); } // [B5, B6, V7]
6189test { try toUnicodeFail("xn--fo0de1270ope54j.xn--zkjo0151o"); } // [B5, B6, V7]15287test { try toUnicodeFail("xn--fo0de1270ope54j.xn--zkjo0151o"); } // [B5, B6, V7]
15288test { try toAsciiFail("xn--fo0de1270ope54j.xn--zkjo0151o", false); } // [B5, B6, V7]
15289test { try toAsciiFail("xn--fo0de1270ope54j.xn--zkjo0151o", true); } // [B5, B6, V7]
6190test { try toUnicodeFail("xn--fo0de1270ope54j.xn--gndo2033q"); } // [B5, B6, V7]15290test { try toUnicodeFail("xn--fo0de1270ope54j.xn--gndo2033q"); } // [B5, B6, V7]
15291test { try toAsciiFail("xn--fo0de1270ope54j.xn--gndo2033q", false); } // [B5, B6, V7]
15292test { try toAsciiFail("xn--fo0de1270ope54j.xn--gndo2033q", true); } // [B5, B6, V7]
6191test { try toUnicodeFail("\xf0\x9e\xa0\x82\xe3\x80\x82\xea\xa4\xa6"); } // [B1, V6]15293test { try toUnicodeFail("\xf0\x9e\xa0\x82\xe3\x80\x82\xea\xa4\xa6"); } // [B1, V6]
15294test { try toAsciiFail("\xf0\x9e\xa0\x82\xe3\x80\x82\xea\xa4\xa6", false); } // [B1, V6]
15295test { try toAsciiFail("\xf0\x9e\xa0\x82\xe3\x80\x82\xea\xa4\xa6", true); } // [B1, V6]
6192test { try toUnicodeFail("xn--145h.xn--ti9a"); } // [B1, V6]15296test { try toUnicodeFail("xn--145h.xn--ti9a"); } // [B1, V6]
15297test { try toAsciiFail("xn--145h.xn--ti9a", false); } // [B1, V6]
15298test { try toAsciiFail("xn--145h.xn--ti9a", true); } // [B1, V6]
6193test { try toUnicodeFail("\xf0\x9d\x9f\x94\xf0\x90\xb9\xab\xef\xbc\x8e\xdc\xb3\xe1\x80\xb7\xef\xbc\x99\xea\xa1\x87"); } // [B1, V6]15299test { try toUnicodeFail("\xf0\x9d\x9f\x94\xf0\x90\xb9\xab\xef\xbc\x8e\xdc\xb3\xe1\x80\xb7\xef\xbc\x99\xea\xa1\x87"); } // [B1, V6]
15300test { try toAsciiFail("\xf0\x9d\x9f\x94\xf0\x90\xb9\xab\xef\xbc\x8e\xdc\xb3\xe1\x80\xb7\xef\xbc\x99\xea\xa1\x87", false); } // [B1, V6]
15301test { try toAsciiFail("\xf0\x9d\x9f\x94\xf0\x90\xb9\xab\xef\xbc\x8e\xdc\xb3\xe1\x80\xb7\xef\xbc\x99\xea\xa1\x87", true); } // [B1, V6]
6194test { try toUnicodeFail("\xf0\x9d\x9f\x94\xf0\x90\xb9\xab\xef\xbc\x8e\xe1\x80\xb7\xdc\xb3\xef\xbc\x99\xea\xa1\x87"); } // [B1, V6]15302test { try toUnicodeFail("\xf0\x9d\x9f\x94\xf0\x90\xb9\xab\xef\xbc\x8e\xe1\x80\xb7\xdc\xb3\xef\xbc\x99\xea\xa1\x87"); } // [B1, V6]
15303test { try toAsciiFail("\xf0\x9d\x9f\x94\xf0\x90\xb9\xab\xef\xbc\x8e\xe1\x80\xb7\xdc\xb3\xef\xbc\x99\xea\xa1\x87", false); } // [B1, V6]
15304test { try toAsciiFail("\xf0\x9d\x9f\x94\xf0\x90\xb9\xab\xef\xbc\x8e\xe1\x80\xb7\xdc\xb3\xef\xbc\x99\xea\xa1\x87", true); } // [B1, V6]
6195test { try toUnicodeFail("6\xf0\x90\xb9\xab.\xe1\x80\xb7\xdc\xb39\xea\xa1\x87"); } // [B1, V6]15305test { try toUnicodeFail("6\xf0\x90\xb9\xab.\xe1\x80\xb7\xdc\xb39\xea\xa1\x87"); } // [B1, V6]
15306test { try toAsciiFail("6\xf0\x90\xb9\xab.\xe1\x80\xb7\xdc\xb39\xea\xa1\x87", false); } // [B1, V6]
15307test { try toAsciiFail("6\xf0\x90\xb9\xab.\xe1\x80\xb7\xdc\xb39\xea\xa1\x87", true); } // [B1, V6]
6196test { try toUnicodeFail("xn--6-t26i.xn--9-91c730e8u8n"); } // [B1, V6]15308test { try toUnicodeFail("xn--6-t26i.xn--9-91c730e8u8n"); } // [B1, V6]
15309test { try toAsciiFail("xn--6-t26i.xn--9-91c730e8u8n", false); } // [B1, V6]
15310test { try toAsciiFail("xn--6-t26i.xn--9-91c730e8u8n", true); } // [B1, V6]
6197test { try toUnicodeFail("\xdc\xa4\xd8\x83\xf0\x9e\xb2\xb6\xef\xbc\x8e\xdb\x98"); } // [B1, V6, V7]15311test { try toUnicodeFail("\xdc\xa4\xd8\x83\xf0\x9e\xb2\xb6\xef\xbc\x8e\xdb\x98"); } // [B1, V6, V7]
15312test { try toAsciiFail("\xdc\xa4\xd8\x83\xf0\x9e\xb2\xb6\xef\xbc\x8e\xdb\x98", false); } // [B1, V6, V7]
15313test { try toAsciiFail("\xdc\xa4\xd8\x83\xf0\x9e\xb2\xb6\xef\xbc\x8e\xdb\x98", true); } // [B1, V6, V7]
6198test { try toUnicodeFail("\xdc\xa4\xd8\x83\xf0\x9e\xb2\xb6.\xdb\x98"); } // [B1, V6, V7]15314test { try toUnicodeFail("\xdc\xa4\xd8\x83\xf0\x9e\xb2\xb6.\xdb\x98"); } // [B1, V6, V7]
15315test { try toAsciiFail("\xdc\xa4\xd8\x83\xf0\x9e\xb2\xb6.\xdb\x98", false); } // [B1, V6, V7]
15316test { try toAsciiFail("\xdc\xa4\xd8\x83\xf0\x9e\xb2\xb6.\xdb\x98", true); } // [B1, V6, V7]
6199test { try toUnicodeFail("xn--lfb19ct414i.xn--olb"); } // [B1, V6, V7]15317test { try toUnicodeFail("xn--lfb19ct414i.xn--olb"); } // [B1, V6, V7]
15318test { try toAsciiFail("xn--lfb19ct414i.xn--olb", false); } // [B1, V6, V7]
15319test { try toAsciiFail("xn--lfb19ct414i.xn--olb", true); } // [B1, V6, V7]
6200test { try toUnicodeFail("\xe2\x9c\x86\xf1\xb1\x94\xa9\xea\xa1\x8b\xef\xbc\x8e\xd8\xb2\xe2\x80\x8d\xf0\x9e\xa3\xb4"); } // [B1, C2, V7]15320test { try toUnicodeFail("\xe2\x9c\x86\xf1\xb1\x94\xa9\xea\xa1\x8b\xef\xbc\x8e\xd8\xb2\xe2\x80\x8d\xf0\x9e\xa3\xb4"); } // [B1, C2, V7]
15321test { try toAsciiFail("\xe2\x9c\x86\xf1\xb1\x94\xa9\xea\xa1\x8b\xef\xbc\x8e\xd8\xb2\xe2\x80\x8d\xf0\x9e\xa3\xb4", false); } // [B1, C2, V7]
15322test { try toAsciiFail("\xe2\x9c\x86\xf1\xb1\x94\xa9\xea\xa1\x8b\xef\xbc\x8e\xd8\xb2\xe2\x80\x8d\xf0\x9e\xa3\xb4", true); } // [B1, V7]
6201test { try toUnicodeFail("\xe2\x9c\x86\xf1\xb1\x94\xa9\xea\xa1\x8b.\xd8\xb2\xe2\x80\x8d\xf0\x9e\xa3\xb4"); } // [B1, C2, V7]15323test { try toUnicodeFail("\xe2\x9c\x86\xf1\xb1\x94\xa9\xea\xa1\x8b.\xd8\xb2\xe2\x80\x8d\xf0\x9e\xa3\xb4"); } // [B1, C2, V7]
15324test { try toAsciiFail("\xe2\x9c\x86\xf1\xb1\x94\xa9\xea\xa1\x8b.\xd8\xb2\xe2\x80\x8d\xf0\x9e\xa3\xb4", false); } // [B1, C2, V7]
15325test { try toAsciiFail("\xe2\x9c\x86\xf1\xb1\x94\xa9\xea\xa1\x8b.\xd8\xb2\xe2\x80\x8d\xf0\x9e\xa3\xb4", true); } // [B1, V7]
6202test { try toUnicodeFail("xn--1biv525bcix0d.xn--xgb6828v"); } // [B1, V7]15326test { try toUnicodeFail("xn--1biv525bcix0d.xn--xgb6828v"); } // [B1, V7]
15327test { try toAsciiFail("xn--1biv525bcix0d.xn--xgb6828v", false); } // [B1, V7]
15328test { try toAsciiFail("xn--1biv525bcix0d.xn--xgb6828v", true); } // [B1, V7]
6203test { try toUnicodeFail("xn--1biv525bcix0d.xn--xgb253k0m73a"); } // [B1, C2, V7]15329test { try toUnicodeFail("xn--1biv525bcix0d.xn--xgb253k0m73a"); } // [B1, C2, V7]
15330test { try toAsciiFail("xn--1biv525bcix0d.xn--xgb253k0m73a", false); } // [B1, C2, V7]
15331test { try toAsciiFail("xn--1biv525bcix0d.xn--xgb253k0m73a", true); } // [B1, C2, V7]
6204test { try toUnicodeFail("\xe0\xa1\x85\xf1\x83\xbe\xb0\xf0\x9e\xb8\x8d-\xef\xbc\x8e\xe2\x89\xa0\xf2\x83\x81\x9f\xf0\x91\x8b\xaa"); } // [B1, B2, B3, V3, V7]15332test { try toUnicodeFail("\xe0\xa1\x85\xf1\x83\xbe\xb0\xf0\x9e\xb8\x8d-\xef\xbc\x8e\xe2\x89\xa0\xf2\x83\x81\x9f\xf0\x91\x8b\xaa"); } // [B1, B2, B3, V3, V7]
15333test { try toAsciiFail("\xe0\xa1\x85\xf1\x83\xbe\xb0\xf0\x9e\xb8\x8d-\xef\xbc\x8e\xe2\x89\xa0\xf2\x83\x81\x9f\xf0\x91\x8b\xaa", false); } // [B1, B2, B3, V3, V7]
15334test { try toAsciiFail("\xe0\xa1\x85\xf1\x83\xbe\xb0\xf0\x9e\xb8\x8d-\xef\xbc\x8e\xe2\x89\xa0\xf2\x83\x81\x9f\xf0\x91\x8b\xaa", true); } // [B1, B2, B3, V3, V7]
6205test { try toUnicodeFail("\xe0\xa1\x85\xf1\x83\xbe\xb0\xf0\x9e\xb8\x8d-\xef\xbc\x8e=\xcc\xb8\xf2\x83\x81\x9f\xf0\x91\x8b\xaa"); } // [B1, B2, B3, V3, V7]15335test { try toUnicodeFail("\xe0\xa1\x85\xf1\x83\xbe\xb0\xf0\x9e\xb8\x8d-\xef\xbc\x8e=\xcc\xb8\xf2\x83\x81\x9f\xf0\x91\x8b\xaa"); } // [B1, B2, B3, V3, V7]
15336test { try toAsciiFail("\xe0\xa1\x85\xf1\x83\xbe\xb0\xf0\x9e\xb8\x8d-\xef\xbc\x8e=\xcc\xb8\xf2\x83\x81\x9f\xf0\x91\x8b\xaa", false); } // [B1, B2, B3, V3, V7]
15337test { try toAsciiFail("\xe0\xa1\x85\xf1\x83\xbe\xb0\xf0\x9e\xb8\x8d-\xef\xbc\x8e=\xcc\xb8\xf2\x83\x81\x9f\xf0\x91\x8b\xaa", true); } // [B1, B2, B3, V3, V7]
6206test { try toUnicodeFail("\xe0\xa1\x85\xf1\x83\xbe\xb0\xd9\x86-.\xe2\x89\xa0\xf2\x83\x81\x9f\xf0\x91\x8b\xaa"); } // [B1, B2, B3, V3, V7]15338test { try toUnicodeFail("\xe0\xa1\x85\xf1\x83\xbe\xb0\xd9\x86-.\xe2\x89\xa0\xf2\x83\x81\x9f\xf0\x91\x8b\xaa"); } // [B1, B2, B3, V3, V7]
15339test { try toAsciiFail("\xe0\xa1\x85\xf1\x83\xbe\xb0\xd9\x86-.\xe2\x89\xa0\xf2\x83\x81\x9f\xf0\x91\x8b\xaa", false); } // [B1, B2, B3, V3, V7]
15340test { try toAsciiFail("\xe0\xa1\x85\xf1\x83\xbe\xb0\xd9\x86-.\xe2\x89\xa0\xf2\x83\x81\x9f\xf0\x91\x8b\xaa", true); } // [B1, B2, B3, V3, V7]
6207test { try toUnicodeFail("\xe0\xa1\x85\xf1\x83\xbe\xb0\xd9\x86-.=\xcc\xb8\xf2\x83\x81\x9f\xf0\x91\x8b\xaa"); } // [B1, B2, B3, V3, V7]15341test { try toUnicodeFail("\xe0\xa1\x85\xf1\x83\xbe\xb0\xd9\x86-.=\xcc\xb8\xf2\x83\x81\x9f\xf0\x91\x8b\xaa"); } // [B1, B2, B3, V3, V7]
15342test { try toAsciiFail("\xe0\xa1\x85\xf1\x83\xbe\xb0\xd9\x86-.=\xcc\xb8\xf2\x83\x81\x9f\xf0\x91\x8b\xaa", false); } // [B1, B2, B3, V3, V7]
15343test { try toAsciiFail("\xe0\xa1\x85\xf1\x83\xbe\xb0\xd9\x86-.=\xcc\xb8\xf2\x83\x81\x9f\xf0\x91\x8b\xaa", true); } // [B1, B2, B3, V3, V7]
6208test { try toUnicodeFail("xn----qoc64my971s.xn--1ch7585g76o3c"); } // [B1, B2, B3, V3, V7]15344test { try toUnicodeFail("xn----qoc64my971s.xn--1ch7585g76o3c"); } // [B1, B2, B3, V3, V7]
15345test { try toAsciiFail("xn----qoc64my971s.xn--1ch7585g76o3c", false); } // [B1, B2, B3, V3, V7]
15346test { try toAsciiFail("xn----qoc64my971s.xn--1ch7585g76o3c", true); } // [B1, B2, B3, V3, V7]
6209test { try toUnicodePass("\xf0\x9d\x9f\x9b\xef\xbc\x8e\xef\xa7\xb8", "3.\xe7\xac\xa0"); }15347test { try toUnicodePass("\xf0\x9d\x9f\x9b\xef\xbc\x8e\xef\xa7\xb8", "3.\xe7\xac\xa0"); }
6210test { try toAsciiPass("\xf0\x9d\x9f\x9b\xef\xbc\x8e\xef\xa7\xb8", "3.xn--6vz", false); }15348test { try toAsciiPass("\xf0\x9d\x9f\x9b\xef\xbc\x8e\xef\xa7\xb8", "3.xn--6vz", false); }
6211test { try toAsciiPass("\xf0\x9d\x9f\x9b\xef\xbc\x8e\xef\xa7\xb8", "3.xn--6vz", true); }15349test { try toAsciiPass("\xf0\x9d\x9f\x9b\xef\xbc\x8e\xef\xa7\xb8", "3.xn--6vz", true); }
...@@ -6219,187 +15357,530 @@ test { try toUnicodePass("3.xn--6vz", "3.\xe7\xac\xa0"); }...@@ -6219,187 +15357,530 @@ test { try toUnicodePass("3.xn--6vz", "3.\xe7\xac\xa0"); }
6219test { try toAsciiPass("3.xn--6vz", "3.xn--6vz", false); }15357test { try toAsciiPass("3.xn--6vz", "3.xn--6vz", false); }
6220test { try toAsciiPass("3.xn--6vz", "3.xn--6vz", true); }15358test { try toAsciiPass("3.xn--6vz", "3.xn--6vz", true); }
6221test { try toUnicodeFail("-\xe2\x80\x8d.\xe1\x82\xbe\xf0\x90\x8b\xb7"); } // [C2, V3]15359test { try toUnicodeFail("-\xe2\x80\x8d.\xe1\x82\xbe\xf0\x90\x8b\xb7"); } // [C2, V3]
15360test { try toAsciiFail("-\xe2\x80\x8d.\xe1\x82\xbe\xf0\x90\x8b\xb7", false); } // [C2, V3]
15361test { try toAsciiFail("-\xe2\x80\x8d.\xe1\x82\xbe\xf0\x90\x8b\xb7", true); } // [V3]
6222test { try toUnicodeFail("-\xe2\x80\x8d.\xe2\xb4\x9e\xf0\x90\x8b\xb7"); } // [C2, V3]15362test { try toUnicodeFail("-\xe2\x80\x8d.\xe2\xb4\x9e\xf0\x90\x8b\xb7"); } // [C2, V3]
15363test { try toAsciiFail("-\xe2\x80\x8d.\xe2\xb4\x9e\xf0\x90\x8b\xb7", false); } // [C2, V3]
15364test { try toAsciiFail("-\xe2\x80\x8d.\xe2\xb4\x9e\xf0\x90\x8b\xb7", true); } // [V3]
6223test { try toUnicodeFail("-.xn--mlj8559d"); } // [V3]15365test { try toUnicodeFail("-.xn--mlj8559d"); } // [V3]
15366test { try toAsciiFail("-.xn--mlj8559d", false); } // [V3]
15367test { try toAsciiFail("-.xn--mlj8559d", true); } // [V3]
6224test { try toUnicodeFail("xn----ugn.xn--mlj8559d"); } // [C2, V3]15368test { try toUnicodeFail("xn----ugn.xn--mlj8559d"); } // [C2, V3]
15369test { try toAsciiFail("xn----ugn.xn--mlj8559d", false); } // [C2, V3]
15370test { try toAsciiFail("xn----ugn.xn--mlj8559d", true); } // [C2, V3]
6225test { try toUnicodeFail("-.xn--2nd2315j"); } // [V3, V7]15371test { try toUnicodeFail("-.xn--2nd2315j"); } // [V3, V7]
15372test { try toAsciiFail("-.xn--2nd2315j", false); } // [V3, V7]
15373test { try toAsciiFail("-.xn--2nd2315j", true); } // [V3, V7]
6226test { try toUnicodeFail("xn----ugn.xn--2nd2315j"); } // [C2, V3, V7]15374test { try toUnicodeFail("xn----ugn.xn--2nd2315j"); } // [C2, V3, V7]
15375test { try toAsciiFail("xn----ugn.xn--2nd2315j", false); } // [C2, V3, V7]
15376test { try toAsciiFail("xn----ugn.xn--2nd2315j", true); } // [C2, V3, V7]
6227test { try toUnicodeFail("\xe2\x80\x8d\xcf\x82\xc3\x9f\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d"); } // [C2, V6]15377test { try toUnicodeFail("\xe2\x80\x8d\xcf\x82\xc3\x9f\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d"); } // [C2, V6]
15378test { try toAsciiFail("\xe2\x80\x8d\xcf\x82\xc3\x9f\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d", false); } // [C2, V6]
15379test { try toAsciiFail("\xe2\x80\x8d\xcf\x82\xc3\x9f\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d", true); } // [V6]
6228test { try toUnicodeFail("\xe2\x80\x8d\xcf\x82\xc3\x9f\xdc\xb1.\xe0\xaf\x8d"); } // [C2, V6]15380test { try toUnicodeFail("\xe2\x80\x8d\xcf\x82\xc3\x9f\xdc\xb1.\xe0\xaf\x8d"); } // [C2, V6]
15381test { try toAsciiFail("\xe2\x80\x8d\xcf\x82\xc3\x9f\xdc\xb1.\xe0\xaf\x8d", false); } // [C2, V6]
15382test { try toAsciiFail("\xe2\x80\x8d\xcf\x82\xc3\x9f\xdc\xb1.\xe0\xaf\x8d", true); } // [V6]
6229test { try toUnicodeFail("\xe2\x80\x8d\xce\xa3SS\xdc\xb1.\xe0\xaf\x8d"); } // [C2, V6]15383test { try toUnicodeFail("\xe2\x80\x8d\xce\xa3SS\xdc\xb1.\xe0\xaf\x8d"); } // [C2, V6]
15384test { try toAsciiFail("\xe2\x80\x8d\xce\xa3SS\xdc\xb1.\xe0\xaf\x8d", false); } // [C2, V6]
15385test { try toAsciiFail("\xe2\x80\x8d\xce\xa3SS\xdc\xb1.\xe0\xaf\x8d", true); } // [V6]
6230test { try toUnicodeFail("\xe2\x80\x8d\xcf\x83ss\xdc\xb1.\xe0\xaf\x8d"); } // [C2, V6]15386test { try toUnicodeFail("\xe2\x80\x8d\xcf\x83ss\xdc\xb1.\xe0\xaf\x8d"); } // [C2, V6]
15387test { try toAsciiFail("\xe2\x80\x8d\xcf\x83ss\xdc\xb1.\xe0\xaf\x8d", false); } // [C2, V6]
15388test { try toAsciiFail("\xe2\x80\x8d\xcf\x83ss\xdc\xb1.\xe0\xaf\x8d", true); } // [V6]
6231test { try toUnicodeFail("\xe2\x80\x8d\xce\xa3ss\xdc\xb1.\xe0\xaf\x8d"); } // [C2, V6]15389test { try toUnicodeFail("\xe2\x80\x8d\xce\xa3ss\xdc\xb1.\xe0\xaf\x8d"); } // [C2, V6]
15390test { try toAsciiFail("\xe2\x80\x8d\xce\xa3ss\xdc\xb1.\xe0\xaf\x8d", false); } // [C2, V6]
15391test { try toAsciiFail("\xe2\x80\x8d\xce\xa3ss\xdc\xb1.\xe0\xaf\x8d", true); } // [V6]
6232test { try toUnicodeFail("xn--ss-ubc826a.xn--xmc"); } // [V6]15392test { try toUnicodeFail("xn--ss-ubc826a.xn--xmc"); } // [V6]
15393test { try toAsciiFail("xn--ss-ubc826a.xn--xmc", false); } // [V6]
15394test { try toAsciiFail("xn--ss-ubc826a.xn--xmc", true); } // [V6]
6233test { try toUnicodeFail("xn--ss-ubc826ab34b.xn--xmc"); } // [C2, V6]15395test { try toUnicodeFail("xn--ss-ubc826ab34b.xn--xmc"); } // [C2, V6]
15396test { try toAsciiFail("xn--ss-ubc826ab34b.xn--xmc", false); } // [C2, V6]
15397test { try toAsciiFail("xn--ss-ubc826ab34b.xn--xmc", true); } // [C2, V6]
6234test { try toUnicodeFail("\xe2\x80\x8d\xce\xa3\xc3\x9f\xdc\xb1.\xe0\xaf\x8d"); } // [C2, V6]15398test { try toUnicodeFail("\xe2\x80\x8d\xce\xa3\xc3\x9f\xdc\xb1.\xe0\xaf\x8d"); } // [C2, V6]
15399test { try toAsciiFail("\xe2\x80\x8d\xce\xa3\xc3\x9f\xdc\xb1.\xe0\xaf\x8d", false); } // [C2, V6]
15400test { try toAsciiFail("\xe2\x80\x8d\xce\xa3\xc3\x9f\xdc\xb1.\xe0\xaf\x8d", true); } // [V6]
6235test { try toUnicodeFail("\xe2\x80\x8d\xcf\x83\xc3\x9f\xdc\xb1.\xe0\xaf\x8d"); } // [C2, V6]15401test { try toUnicodeFail("\xe2\x80\x8d\xcf\x83\xc3\x9f\xdc\xb1.\xe0\xaf\x8d"); } // [C2, V6]
15402test { try toAsciiFail("\xe2\x80\x8d\xcf\x83\xc3\x9f\xdc\xb1.\xe0\xaf\x8d", false); } // [C2, V6]
15403test { try toAsciiFail("\xe2\x80\x8d\xcf\x83\xc3\x9f\xdc\xb1.\xe0\xaf\x8d", true); } // [V6]
6236test { try toUnicodeFail("xn--zca39lk1di19a.xn--xmc"); } // [C2, V6]15404test { try toUnicodeFail("xn--zca39lk1di19a.xn--xmc"); } // [C2, V6]
15405test { try toAsciiFail("xn--zca39lk1di19a.xn--xmc", false); } // [C2, V6]
15406test { try toAsciiFail("xn--zca39lk1di19a.xn--xmc", true); } // [C2, V6]
6237test { try toUnicodeFail("xn--zca19ln1di19a.xn--xmc"); } // [C2, V6]15407test { try toUnicodeFail("xn--zca19ln1di19a.xn--xmc"); } // [C2, V6]
15408test { try toAsciiFail("xn--zca19ln1di19a.xn--xmc", false); } // [C2, V6]
15409test { try toAsciiFail("xn--zca19ln1di19a.xn--xmc", true); } // [C2, V6]
6238test { try toUnicodeFail("\xe2\x80\x8d\xce\xa3SS\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d"); } // [C2, V6]15410test { try toUnicodeFail("\xe2\x80\x8d\xce\xa3SS\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d"); } // [C2, V6]
15411test { try toAsciiFail("\xe2\x80\x8d\xce\xa3SS\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d", false); } // [C2, V6]
15412test { try toAsciiFail("\xe2\x80\x8d\xce\xa3SS\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d", true); } // [V6]
6239test { try toUnicodeFail("\xe2\x80\x8d\xcf\x83ss\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d"); } // [C2, V6]15413test { try toUnicodeFail("\xe2\x80\x8d\xcf\x83ss\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d"); } // [C2, V6]
15414test { try toAsciiFail("\xe2\x80\x8d\xcf\x83ss\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d", false); } // [C2, V6]
15415test { try toAsciiFail("\xe2\x80\x8d\xcf\x83ss\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d", true); } // [V6]
6240test { try toUnicodeFail("\xe2\x80\x8d\xce\xa3ss\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d"); } // [C2, V6]15416test { try toUnicodeFail("\xe2\x80\x8d\xce\xa3ss\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d"); } // [C2, V6]
15417test { try toAsciiFail("\xe2\x80\x8d\xce\xa3ss\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d", false); } // [C2, V6]
15418test { try toAsciiFail("\xe2\x80\x8d\xce\xa3ss\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d", true); } // [V6]
6241test { try toUnicodeFail("\xe2\x80\x8d\xce\xa3\xc3\x9f\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d"); } // [C2, V6]15419test { try toUnicodeFail("\xe2\x80\x8d\xce\xa3\xc3\x9f\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d"); } // [C2, V6]
15420test { try toAsciiFail("\xe2\x80\x8d\xce\xa3\xc3\x9f\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d", false); } // [C2, V6]
15421test { try toAsciiFail("\xe2\x80\x8d\xce\xa3\xc3\x9f\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d", true); } // [V6]
6242test { try toUnicodeFail("\xe2\x80\x8d\xcf\x83\xc3\x9f\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d"); } // [C2, V6]15422test { try toUnicodeFail("\xe2\x80\x8d\xcf\x83\xc3\x9f\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d"); } // [C2, V6]
15423test { try toAsciiFail("\xe2\x80\x8d\xcf\x83\xc3\x9f\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d", false); } // [C2, V6]
15424test { try toAsciiFail("\xe2\x80\x8d\xcf\x83\xc3\x9f\xdc\xb1\xef\xbc\x8e\xe0\xaf\x8d", true); } // [V6]
6243test { try toUnicodeFail("\xe2\x89\xa0\xef\xbc\x8e\xe2\x80\x8d"); } // [C2]15425test { try toUnicodeFail("\xe2\x89\xa0\xef\xbc\x8e\xe2\x80\x8d"); } // [C2]
15426test { try toAsciiFail("\xe2\x89\xa0\xef\xbc\x8e\xe2\x80\x8d", false); } // [C2]
15427test { try toAsciiFail("\xe2\x89\xa0\xef\xbc\x8e\xe2\x80\x8d", true); } // [A4_2]
6244test { try toUnicodeFail("=\xcc\xb8\xef\xbc\x8e\xe2\x80\x8d"); } // [C2]15428test { try toUnicodeFail("=\xcc\xb8\xef\xbc\x8e\xe2\x80\x8d"); } // [C2]
15429test { try toAsciiFail("=\xcc\xb8\xef\xbc\x8e\xe2\x80\x8d", false); } // [C2]
15430test { try toAsciiFail("=\xcc\xb8\xef\xbc\x8e\xe2\x80\x8d", true); } // [A4_2]
6245test { try toUnicodeFail("\xe2\x89\xa0.\xe2\x80\x8d"); } // [C2]15431test { try toUnicodeFail("\xe2\x89\xa0.\xe2\x80\x8d"); } // [C2]
15432test { try toAsciiFail("\xe2\x89\xa0.\xe2\x80\x8d", false); } // [C2]
15433test { try toAsciiFail("\xe2\x89\xa0.\xe2\x80\x8d", true); } // [A4_2]
6246test { try toUnicodeFail("=\xcc\xb8.\xe2\x80\x8d"); } // [C2]15434test { try toUnicodeFail("=\xcc\xb8.\xe2\x80\x8d"); } // [C2]
15435test { try toAsciiFail("=\xcc\xb8.\xe2\x80\x8d", false); } // [C2]
15436test { try toAsciiFail("=\xcc\xb8.\xe2\x80\x8d", true); } // [A4_2]
6247test { try toUnicodePass("xn--1ch.", "\xe2\x89\xa0."); }15437test { try toUnicodePass("xn--1ch.", "\xe2\x89\xa0."); }
15438test { try toAsciiFail("xn--1ch.", false); } // [A4_2]
15439test { try toAsciiFail("xn--1ch.", true); } // [A4_2]
6248test { try toUnicodePass("\xe2\x89\xa0.", "\xe2\x89\xa0."); }15440test { try toUnicodePass("\xe2\x89\xa0.", "\xe2\x89\xa0."); }
15441test { try toAsciiFail("\xe2\x89\xa0.", false); } // [A4_2]
15442test { try toAsciiFail("\xe2\x89\xa0.", true); } // [A4_2]
6249test { try toUnicodePass("=\xcc\xb8.", "\xe2\x89\xa0."); }15443test { try toUnicodePass("=\xcc\xb8.", "\xe2\x89\xa0."); }
15444test { try toAsciiFail("=\xcc\xb8.", false); } // [A4_2]
15445test { try toAsciiFail("=\xcc\xb8.", true); } // [A4_2]
6250test { try toUnicodeFail("xn--1ch.xn--1ug"); } // [C2]15446test { try toUnicodeFail("xn--1ch.xn--1ug"); } // [C2]
15447test { try toAsciiFail("xn--1ch.xn--1ug", false); } // [C2]
15448test { try toAsciiFail("xn--1ch.xn--1ug", true); } // [C2]
6251test { try toUnicodeFail("\xef\xb0\x81\xef\xbd\xa1\xe0\xb2\x81\xe1\xa0\xbc\xe2\x96\x97\xf2\x92\x81\x8b"); } // [B1, V6, V7]15449test { try toUnicodeFail("\xef\xb0\x81\xef\xbd\xa1\xe0\xb2\x81\xe1\xa0\xbc\xe2\x96\x97\xf2\x92\x81\x8b"); } // [B1, V6, V7]
15450test { try toAsciiFail("\xef\xb0\x81\xef\xbd\xa1\xe0\xb2\x81\xe1\xa0\xbc\xe2\x96\x97\xf2\x92\x81\x8b", false); } // [B1, V6, V7]
15451test { try toAsciiFail("\xef\xb0\x81\xef\xbd\xa1\xe0\xb2\x81\xe1\xa0\xbc\xe2\x96\x97\xf2\x92\x81\x8b", true); } // [B1, V6, V7]
6252test { try toUnicodeFail("\xd8\xa6\xd8\xad\xe3\x80\x82\xe0\xb2\x81\xe1\xa0\xbc\xe2\x96\x97\xf2\x92\x81\x8b"); } // [B1, V6, V7]15452test { try toUnicodeFail("\xd8\xa6\xd8\xad\xe3\x80\x82\xe0\xb2\x81\xe1\xa0\xbc\xe2\x96\x97\xf2\x92\x81\x8b"); } // [B1, V6, V7]
15453test { try toAsciiFail("\xd8\xa6\xd8\xad\xe3\x80\x82\xe0\xb2\x81\xe1\xa0\xbc\xe2\x96\x97\xf2\x92\x81\x8b", false); } // [B1, V6, V7]
15454test { try toAsciiFail("\xd8\xa6\xd8\xad\xe3\x80\x82\xe0\xb2\x81\xe1\xa0\xbc\xe2\x96\x97\xf2\x92\x81\x8b", true); } // [B1, V6, V7]
6253test { try toUnicodeFail("\xd9\x8a\xd9\x94\xd8\xad\xe3\x80\x82\xe0\xb2\x81\xe1\xa0\xbc\xe2\x96\x97\xf2\x92\x81\x8b"); } // [B1, V6, V7]15455test { try toUnicodeFail("\xd9\x8a\xd9\x94\xd8\xad\xe3\x80\x82\xe0\xb2\x81\xe1\xa0\xbc\xe2\x96\x97\xf2\x92\x81\x8b"); } // [B1, V6, V7]
15456test { try toAsciiFail("\xd9\x8a\xd9\x94\xd8\xad\xe3\x80\x82\xe0\xb2\x81\xe1\xa0\xbc\xe2\x96\x97\xf2\x92\x81\x8b", false); } // [B1, V6, V7]
15457test { try toAsciiFail("\xd9\x8a\xd9\x94\xd8\xad\xe3\x80\x82\xe0\xb2\x81\xe1\xa0\xbc\xe2\x96\x97\xf2\x92\x81\x8b", true); } // [B1, V6, V7]
6254test { try toUnicodeFail("xn--lgbo.xn--2rc021dcxkrx55t"); } // [B1, V6, V7]15458test { try toUnicodeFail("xn--lgbo.xn--2rc021dcxkrx55t"); } // [B1, V6, V7]
15459test { try toAsciiFail("xn--lgbo.xn--2rc021dcxkrx55t", false); } // [B1, V6, V7]
15460test { try toAsciiFail("xn--lgbo.xn--2rc021dcxkrx55t", true); } // [B1, V6, V7]
6255test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x82\xef\xbc\x8e\xcf\x82\xf0\x90\xa8\xbf"); } // [V7]15461test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x82\xef\xbc\x8e\xcf\x82\xf0\x90\xa8\xbf"); } // [V7]
15462test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x82\xef\xbc\x8e\xcf\x82\xf0\x90\xa8\xbf", false); } // [V7]
15463test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x82\xef\xbc\x8e\xcf\x82\xf0\x90\xa8\xbf", true); } // [V7]
6256test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x82.\xcf\x82\xf0\x90\xa8\xbf"); } // [V7]15464test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x82.\xcf\x82\xf0\x90\xa8\xbf"); } // [V7]
15465test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x82.\xcf\x82\xf0\x90\xa8\xbf", false); } // [V7]
15466test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x82.\xcf\x82\xf0\x90\xa8\xbf", true); } // [V7]
6257test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3.\xce\xa3\xf0\x90\xa8\xbf"); } // [V7]15467test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3.\xce\xa3\xf0\x90\xa8\xbf"); } // [V7]
15468test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3.\xce\xa3\xf0\x90\xa8\xbf", false); } // [V7]
15469test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3.\xce\xa3\xf0\x90\xa8\xbf", true); } // [V7]
6258test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x83.\xcf\x82\xf0\x90\xa8\xbf"); } // [V7]15470test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x83.\xcf\x82\xf0\x90\xa8\xbf"); } // [V7]
15471test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x83.\xcf\x82\xf0\x90\xa8\xbf", false); } // [V7]
15472test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x83.\xcf\x82\xf0\x90\xa8\xbf", true); } // [V7]
6259test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x83.\xcf\x83\xf0\x90\xa8\xbf"); } // [V7]15473test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x83.\xcf\x83\xf0\x90\xa8\xbf"); } // [V7]
15474test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x83.\xcf\x83\xf0\x90\xa8\xbf", false); } // [V7]
15475test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x83.\xcf\x83\xf0\x90\xa8\xbf", true); } // [V7]
6260test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3.\xcf\x83\xf0\x90\xa8\xbf"); } // [V7]15476test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3.\xcf\x83\xf0\x90\xa8\xbf"); } // [V7]
15477test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3.\xcf\x83\xf0\x90\xa8\xbf", false); } // [V7]
15478test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3.\xcf\x83\xf0\x90\xa8\xbf", true); } // [V7]
6261test { try toUnicodeFail("xn--4xa502av8297a.xn--4xa6055k"); } // [V7]15479test { try toUnicodeFail("xn--4xa502av8297a.xn--4xa6055k"); } // [V7]
15480test { try toAsciiFail("xn--4xa502av8297a.xn--4xa6055k", false); } // [V7]
15481test { try toAsciiFail("xn--4xa502av8297a.xn--4xa6055k", true); } // [V7]
6262test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3.\xcf\x82\xf0\x90\xa8\xbf"); } // [V7]15482test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3.\xcf\x82\xf0\x90\xa8\xbf"); } // [V7]
15483test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3.\xcf\x82\xf0\x90\xa8\xbf", false); } // [V7]
15484test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3.\xcf\x82\xf0\x90\xa8\xbf", true); } // [V7]
6263test { try toUnicodeFail("xn--4xa502av8297a.xn--3xa8055k"); } // [V7]15485test { try toUnicodeFail("xn--4xa502av8297a.xn--3xa8055k"); } // [V7]
15486test { try toAsciiFail("xn--4xa502av8297a.xn--3xa8055k", false); } // [V7]
15487test { try toAsciiFail("xn--4xa502av8297a.xn--3xa8055k", true); } // [V7]
6264test { try toUnicodeFail("xn--3xa702av8297a.xn--3xa8055k"); } // [V7]15488test { try toUnicodeFail("xn--3xa702av8297a.xn--3xa8055k"); } // [V7]
15489test { try toAsciiFail("xn--3xa702av8297a.xn--3xa8055k", false); } // [V7]
15490test { try toAsciiFail("xn--3xa702av8297a.xn--3xa8055k", true); } // [V7]
6265test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3\xef\xbc\x8e\xce\xa3\xf0\x90\xa8\xbf"); } // [V7]15491test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3\xef\xbc\x8e\xce\xa3\xf0\x90\xa8\xbf"); } // [V7]
15492test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3\xef\xbc\x8e\xce\xa3\xf0\x90\xa8\xbf", false); } // [V7]
15493test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3\xef\xbc\x8e\xce\xa3\xf0\x90\xa8\xbf", true); } // [V7]
6266test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x83\xef\xbc\x8e\xcf\x82\xf0\x90\xa8\xbf"); } // [V7]15494test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x83\xef\xbc\x8e\xcf\x82\xf0\x90\xa8\xbf"); } // [V7]
15495test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x83\xef\xbc\x8e\xcf\x82\xf0\x90\xa8\xbf", false); } // [V7]
15496test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x83\xef\xbc\x8e\xcf\x82\xf0\x90\xa8\xbf", true); } // [V7]
6267test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x83\xef\xbc\x8e\xcf\x83\xf0\x90\xa8\xbf"); } // [V7]15497test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x83\xef\xbc\x8e\xcf\x83\xf0\x90\xa8\xbf"); } // [V7]
15498test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x83\xef\xbc\x8e\xcf\x83\xf0\x90\xa8\xbf", false); } // [V7]
15499test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xcf\x83\xef\xbc\x8e\xcf\x83\xf0\x90\xa8\xbf", true); } // [V7]
6268test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3\xef\xbc\x8e\xcf\x83\xf0\x90\xa8\xbf"); } // [V7]15500test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3\xef\xbc\x8e\xcf\x83\xf0\x90\xa8\xbf"); } // [V7]
15501test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3\xef\xbc\x8e\xcf\x83\xf0\x90\xa8\xbf", false); } // [V7]
15502test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3\xef\xbc\x8e\xcf\x83\xf0\x90\xa8\xbf", true); } // [V7]
6269test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3\xef\xbc\x8e\xcf\x82\xf0\x90\xa8\xbf"); } // [V7]15503test { try toUnicodeFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3\xef\xbc\x8e\xcf\x82\xf0\x90\xa8\xbf"); } // [V7]
15504test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3\xef\xbc\x8e\xcf\x82\xf0\x90\xa8\xbf", false); } // [V7]
15505test { try toAsciiFail("\xf3\xa7\x8b\xb5\xe0\xa7\x8d\xce\xa3\xef\xbc\x8e\xcf\x82\xf0\x90\xa8\xbf", true); } // [V7]
6270test { try toUnicodeFail("\xf0\x90\xab\x93\xdf\x98\xe7\x89\x85\xe0\xa3\xb8\xef\xbd\xa1\xf0\x9e\xa6\xa4\xe1\xa8\x97\xf2\xb1\x8d\xb0\xe1\x82\xb9"); } // [B2, B3, V7]15506test { try toUnicodeFail("\xf0\x90\xab\x93\xdf\x98\xe7\x89\x85\xe0\xa3\xb8\xef\xbd\xa1\xf0\x9e\xa6\xa4\xe1\xa8\x97\xf2\xb1\x8d\xb0\xe1\x82\xb9"); } // [B2, B3, V7]
15507test { try toAsciiFail("\xf0\x90\xab\x93\xdf\x98\xe7\x89\x85\xe0\xa3\xb8\xef\xbd\xa1\xf0\x9e\xa6\xa4\xe1\xa8\x97\xf2\xb1\x8d\xb0\xe1\x82\xb9", false); } // [B2, B3, V7]
15508test { try toAsciiFail("\xf0\x90\xab\x93\xdf\x98\xe7\x89\x85\xe0\xa3\xb8\xef\xbd\xa1\xf0\x9e\xa6\xa4\xe1\xa8\x97\xf2\xb1\x8d\xb0\xe1\x82\xb9", true); } // [B2, B3, V7]
6271test { try toUnicodeFail("\xf0\x90\xab\x93\xdf\x98\xe7\x89\x85\xe0\xa3\xb8\xe3\x80\x82\xf0\x9e\xa6\xa4\xe1\xa8\x97\xf2\xb1\x8d\xb0\xe1\x82\xb9"); } // [B2, B3, V7]15509test { try toUnicodeFail("\xf0\x90\xab\x93\xdf\x98\xe7\x89\x85\xe0\xa3\xb8\xe3\x80\x82\xf0\x9e\xa6\xa4\xe1\xa8\x97\xf2\xb1\x8d\xb0\xe1\x82\xb9"); } // [B2, B3, V7]
15510test { try toAsciiFail("\xf0\x90\xab\x93\xdf\x98\xe7\x89\x85\xe0\xa3\xb8\xe3\x80\x82\xf0\x9e\xa6\xa4\xe1\xa8\x97\xf2\xb1\x8d\xb0\xe1\x82\xb9", false); } // [B2, B3, V7]
15511test { try toAsciiFail("\xf0\x90\xab\x93\xdf\x98\xe7\x89\x85\xe0\xa3\xb8\xe3\x80\x82\xf0\x9e\xa6\xa4\xe1\xa8\x97\xf2\xb1\x8d\xb0\xe1\x82\xb9", true); } // [B2, B3, V7]
6272test { try toUnicodeFail("\xf0\x90\xab\x93\xdf\x98\xe7\x89\x85\xe0\xa3\xb8\xe3\x80\x82\xf0\x9e\xa6\xa4\xe1\xa8\x97\xf2\xb1\x8d\xb0\xe2\xb4\x99"); } // [B2, B3, V7]15512test { try toUnicodeFail("\xf0\x90\xab\x93\xdf\x98\xe7\x89\x85\xe0\xa3\xb8\xe3\x80\x82\xf0\x9e\xa6\xa4\xe1\xa8\x97\xf2\xb1\x8d\xb0\xe2\xb4\x99"); } // [B2, B3, V7]
15513test { try toAsciiFail("\xf0\x90\xab\x93\xdf\x98\xe7\x89\x85\xe0\xa3\xb8\xe3\x80\x82\xf0\x9e\xa6\xa4\xe1\xa8\x97\xf2\xb1\x8d\xb0\xe2\xb4\x99", false); } // [B2, B3, V7]
15514test { try toAsciiFail("\xf0\x90\xab\x93\xdf\x98\xe7\x89\x85\xe0\xa3\xb8\xe3\x80\x82\xf0\x9e\xa6\xa4\xe1\xa8\x97\xf2\xb1\x8d\xb0\xe2\xb4\x99", true); } // [B2, B3, V7]
6273test { try toUnicodeFail("xn--zsb09cu46vjs6f.xn--gmf469fr883am5r1e"); } // [B2, B3, V7]15515test { try toUnicodeFail("xn--zsb09cu46vjs6f.xn--gmf469fr883am5r1e"); } // [B2, B3, V7]
15516test { try toAsciiFail("xn--zsb09cu46vjs6f.xn--gmf469fr883am5r1e", false); } // [B2, B3, V7]
15517test { try toAsciiFail("xn--zsb09cu46vjs6f.xn--gmf469fr883am5r1e", true); } // [B2, B3, V7]
6274test { try toUnicodeFail("\xf0\x90\xab\x93\xdf\x98\xe7\x89\x85\xe0\xa3\xb8\xef\xbd\xa1\xf0\x9e\xa6\xa4\xe1\xa8\x97\xf2\xb1\x8d\xb0\xe2\xb4\x99"); } // [B2, B3, V7]15518test { try toUnicodeFail("\xf0\x90\xab\x93\xdf\x98\xe7\x89\x85\xe0\xa3\xb8\xef\xbd\xa1\xf0\x9e\xa6\xa4\xe1\xa8\x97\xf2\xb1\x8d\xb0\xe2\xb4\x99"); } // [B2, B3, V7]
15519test { try toAsciiFail("\xf0\x90\xab\x93\xdf\x98\xe7\x89\x85\xe0\xa3\xb8\xef\xbd\xa1\xf0\x9e\xa6\xa4\xe1\xa8\x97\xf2\xb1\x8d\xb0\xe2\xb4\x99", false); } // [B2, B3, V7]
15520test { try toAsciiFail("\xf0\x90\xab\x93\xdf\x98\xe7\x89\x85\xe0\xa3\xb8\xef\xbd\xa1\xf0\x9e\xa6\xa4\xe1\xa8\x97\xf2\xb1\x8d\xb0\xe2\xb4\x99", true); } // [B2, B3, V7]
6275test { try toUnicodeFail("xn--zsb09cu46vjs6f.xn--xnd909bv540bm5k9d"); } // [B2, B3, V7]15521test { try toUnicodeFail("xn--zsb09cu46vjs6f.xn--xnd909bv540bm5k9d"); } // [B2, B3, V7]
15522test { try toAsciiFail("xn--zsb09cu46vjs6f.xn--xnd909bv540bm5k9d", false); } // [B2, B3, V7]
15523test { try toAsciiFail("xn--zsb09cu46vjs6f.xn--xnd909bv540bm5k9d", true); } // [B2, B3, V7]
6276test { try toUnicodeFail("\xf1\xa3\xa4\x92\xef\xbd\xa1\xeb\xa5\xa7"); } // [V7]15524test { try toUnicodeFail("\xf1\xa3\xa4\x92\xef\xbd\xa1\xeb\xa5\xa7"); } // [V7]
15525test { try toAsciiFail("\xf1\xa3\xa4\x92\xef\xbd\xa1\xeb\xa5\xa7", false); } // [V7]
15526test { try toAsciiFail("\xf1\xa3\xa4\x92\xef\xbd\xa1\xeb\xa5\xa7", true); } // [V7]
6277test { try toUnicodeFail("\xf1\xa3\xa4\x92\xef\xbd\xa1\xe1\x84\x85\xe1\x85\xb2\xe1\x86\xb6"); } // [V7]15527test { try toUnicodeFail("\xf1\xa3\xa4\x92\xef\xbd\xa1\xe1\x84\x85\xe1\x85\xb2\xe1\x86\xb6"); } // [V7]
15528test { try toAsciiFail("\xf1\xa3\xa4\x92\xef\xbd\xa1\xe1\x84\x85\xe1\x85\xb2\xe1\x86\xb6", false); } // [V7]
15529test { try toAsciiFail("\xf1\xa3\xa4\x92\xef\xbd\xa1\xe1\x84\x85\xe1\x85\xb2\xe1\x86\xb6", true); } // [V7]
6278test { try toUnicodeFail("\xf1\xa3\xa4\x92\xe3\x80\x82\xeb\xa5\xa7"); } // [V7]15530test { try toUnicodeFail("\xf1\xa3\xa4\x92\xe3\x80\x82\xeb\xa5\xa7"); } // [V7]
15531test { try toAsciiFail("\xf1\xa3\xa4\x92\xe3\x80\x82\xeb\xa5\xa7", false); } // [V7]
15532test { try toAsciiFail("\xf1\xa3\xa4\x92\xe3\x80\x82\xeb\xa5\xa7", true); } // [V7]
6279test { try toUnicodeFail("\xf1\xa3\xa4\x92\xe3\x80\x82\xe1\x84\x85\xe1\x85\xb2\xe1\x86\xb6"); } // [V7]15533test { try toUnicodeFail("\xf1\xa3\xa4\x92\xe3\x80\x82\xe1\x84\x85\xe1\x85\xb2\xe1\x86\xb6"); } // [V7]
15534test { try toAsciiFail("\xf1\xa3\xa4\x92\xe3\x80\x82\xe1\x84\x85\xe1\x85\xb2\xe1\x86\xb6", false); } // [V7]
15535test { try toAsciiFail("\xf1\xa3\xa4\x92\xe3\x80\x82\xe1\x84\x85\xe1\x85\xb2\xe1\x86\xb6", true); } // [V7]
6280test { try toUnicodeFail("xn--s264a.xn--pw2b"); } // [V7]15536test { try toUnicodeFail("xn--s264a.xn--pw2b"); } // [V7]
15537test { try toAsciiFail("xn--s264a.xn--pw2b", false); } // [V7]
15538test { try toAsciiFail("xn--s264a.xn--pw2b", true); } // [V7]
6281test { try toUnicodeFail("\xf0\x90\xb9\xb7\xe2\x80\x8d\xe3\x80\x82\xf3\x89\xb5\xa2"); } // [B1, C2, V7]15539test { try toUnicodeFail("\xf0\x90\xb9\xb7\xe2\x80\x8d\xe3\x80\x82\xf3\x89\xb5\xa2"); } // [B1, C2, V7]
15540test { try toAsciiFail("\xf0\x90\xb9\xb7\xe2\x80\x8d\xe3\x80\x82\xf3\x89\xb5\xa2", false); } // [B1, C2, V7]
15541test { try toAsciiFail("\xf0\x90\xb9\xb7\xe2\x80\x8d\xe3\x80\x82\xf3\x89\xb5\xa2", true); } // [B1, V7]
6282test { try toUnicodeFail("xn--vo0d.xn--8088d"); } // [B1, V7]15542test { try toUnicodeFail("xn--vo0d.xn--8088d"); } // [B1, V7]
15543test { try toAsciiFail("xn--vo0d.xn--8088d", false); } // [B1, V7]
15544test { try toAsciiFail("xn--vo0d.xn--8088d", true); } // [B1, V7]
6283test { try toUnicodeFail("xn--1ugx205g.xn--8088d"); } // [B1, C2, V7]15545test { try toUnicodeFail("xn--1ugx205g.xn--8088d"); } // [B1, C2, V7]
15546test { try toAsciiFail("xn--1ugx205g.xn--8088d", false); } // [B1, C2, V7]
15547test { try toAsciiFail("xn--1ugx205g.xn--8088d", true); } // [B1, C2, V7]
6284test { try toUnicodeFail("\xe1\x82\xb8\xdb\x82\xf0\x91\xb2\xad\xef\xbd\xa1-"); } // [B1, B5, B6, V3]15548test { try toUnicodeFail("\xe1\x82\xb8\xdb\x82\xf0\x91\xb2\xad\xef\xbd\xa1-"); } // [B1, B5, B6, V3]
15549test { try toAsciiFail("\xe1\x82\xb8\xdb\x82\xf0\x91\xb2\xad\xef\xbd\xa1-", false); } // [B1, B5, B6, V3]
15550test { try toAsciiFail("\xe1\x82\xb8\xdb\x82\xf0\x91\xb2\xad\xef\xbd\xa1-", true); } // [B1, B5, B6, V3]
6285test { try toUnicodeFail("\xe1\x82\xb8\xdb\x81\xd9\x94\xf0\x91\xb2\xad\xef\xbd\xa1-"); } // [B1, B5, B6, V3]15551test { try toUnicodeFail("\xe1\x82\xb8\xdb\x81\xd9\x94\xf0\x91\xb2\xad\xef\xbd\xa1-"); } // [B1, B5, B6, V3]
15552test { try toAsciiFail("\xe1\x82\xb8\xdb\x81\xd9\x94\xf0\x91\xb2\xad\xef\xbd\xa1-", false); } // [B1, B5, B6, V3]
15553test { try toAsciiFail("\xe1\x82\xb8\xdb\x81\xd9\x94\xf0\x91\xb2\xad\xef\xbd\xa1-", true); } // [B1, B5, B6, V3]
6286test { try toUnicodeFail("\xe1\x82\xb8\xdb\x82\xf0\x91\xb2\xad\xe3\x80\x82-"); } // [B1, B5, B6, V3]15554test { try toUnicodeFail("\xe1\x82\xb8\xdb\x82\xf0\x91\xb2\xad\xe3\x80\x82-"); } // [B1, B5, B6, V3]
15555test { try toAsciiFail("\xe1\x82\xb8\xdb\x82\xf0\x91\xb2\xad\xe3\x80\x82-", false); } // [B1, B5, B6, V3]
15556test { try toAsciiFail("\xe1\x82\xb8\xdb\x82\xf0\x91\xb2\xad\xe3\x80\x82-", true); } // [B1, B5, B6, V3]
6287test { try toUnicodeFail("\xe1\x82\xb8\xdb\x81\xd9\x94\xf0\x91\xb2\xad\xe3\x80\x82-"); } // [B1, B5, B6, V3]15557test { try toUnicodeFail("\xe1\x82\xb8\xdb\x81\xd9\x94\xf0\x91\xb2\xad\xe3\x80\x82-"); } // [B1, B5, B6, V3]
15558test { try toAsciiFail("\xe1\x82\xb8\xdb\x81\xd9\x94\xf0\x91\xb2\xad\xe3\x80\x82-", false); } // [B1, B5, B6, V3]
15559test { try toAsciiFail("\xe1\x82\xb8\xdb\x81\xd9\x94\xf0\x91\xb2\xad\xe3\x80\x82-", true); } // [B1, B5, B6, V3]
6288test { try toUnicodeFail("\xe2\xb4\x98\xdb\x81\xd9\x94\xf0\x91\xb2\xad\xe3\x80\x82-"); } // [B1, B5, B6, V3]15560test { try toUnicodeFail("\xe2\xb4\x98\xdb\x81\xd9\x94\xf0\x91\xb2\xad\xe3\x80\x82-"); } // [B1, B5, B6, V3]
15561test { try toAsciiFail("\xe2\xb4\x98\xdb\x81\xd9\x94\xf0\x91\xb2\xad\xe3\x80\x82-", false); } // [B1, B5, B6, V3]
15562test { try toAsciiFail("\xe2\xb4\x98\xdb\x81\xd9\x94\xf0\x91\xb2\xad\xe3\x80\x82-", true); } // [B1, B5, B6, V3]
6289test { try toUnicodeFail("\xe2\xb4\x98\xdb\x82\xf0\x91\xb2\xad\xe3\x80\x82-"); } // [B1, B5, B6, V3]15563test { try toUnicodeFail("\xe2\xb4\x98\xdb\x82\xf0\x91\xb2\xad\xe3\x80\x82-"); } // [B1, B5, B6, V3]
15564test { try toAsciiFail("\xe2\xb4\x98\xdb\x82\xf0\x91\xb2\xad\xe3\x80\x82-", false); } // [B1, B5, B6, V3]
15565test { try toAsciiFail("\xe2\xb4\x98\xdb\x82\xf0\x91\xb2\xad\xe3\x80\x82-", true); } // [B1, B5, B6, V3]
6290test { try toUnicodeFail("xn--1kb147qfk3n.-"); } // [B1, B5, B6, V3]15566test { try toUnicodeFail("xn--1kb147qfk3n.-"); } // [B1, B5, B6, V3]
15567test { try toAsciiFail("xn--1kb147qfk3n.-", false); } // [B1, B5, B6, V3]
15568test { try toAsciiFail("xn--1kb147qfk3n.-", true); } // [B1, B5, B6, V3]
6291test { try toUnicodeFail("\xe2\xb4\x98\xdb\x81\xd9\x94\xf0\x91\xb2\xad\xef\xbd\xa1-"); } // [B1, B5, B6, V3]15569test { try toUnicodeFail("\xe2\xb4\x98\xdb\x81\xd9\x94\xf0\x91\xb2\xad\xef\xbd\xa1-"); } // [B1, B5, B6, V3]
15570test { try toAsciiFail("\xe2\xb4\x98\xdb\x81\xd9\x94\xf0\x91\xb2\xad\xef\xbd\xa1-", false); } // [B1, B5, B6, V3]
15571test { try toAsciiFail("\xe2\xb4\x98\xdb\x81\xd9\x94\xf0\x91\xb2\xad\xef\xbd\xa1-", true); } // [B1, B5, B6, V3]
6292test { try toUnicodeFail("\xe2\xb4\x98\xdb\x82\xf0\x91\xb2\xad\xef\xbd\xa1-"); } // [B1, B5, B6, V3]15572test { try toUnicodeFail("\xe2\xb4\x98\xdb\x82\xf0\x91\xb2\xad\xef\xbd\xa1-"); } // [B1, B5, B6, V3]
15573test { try toAsciiFail("\xe2\xb4\x98\xdb\x82\xf0\x91\xb2\xad\xef\xbd\xa1-", false); } // [B1, B5, B6, V3]
15574test { try toAsciiFail("\xe2\xb4\x98\xdb\x82\xf0\x91\xb2\xad\xef\xbd\xa1-", true); } // [B1, B5, B6, V3]
6293test { try toUnicodeFail("xn--1kb312c139t.-"); } // [B1, B5, B6, V3, V7]15575test { try toUnicodeFail("xn--1kb312c139t.-"); } // [B1, B5, B6, V3, V7]
15576test { try toAsciiFail("xn--1kb312c139t.-", false); } // [B1, B5, B6, V3, V7]
15577test { try toAsciiFail("xn--1kb312c139t.-", true); } // [B1, B5, B6, V3, V7]
6294test { try toUnicodeFail("\xea\xa0\x86\xd9\xbb\xe2\x82\x86\xe1\xa1\x90\xe3\x80\x82\xf0\x9f\x9b\x87\xef\xb3\x9d"); } // [B1, V6]15578test { try toUnicodeFail("\xea\xa0\x86\xd9\xbb\xe2\x82\x86\xe1\xa1\x90\xe3\x80\x82\xf0\x9f\x9b\x87\xef\xb3\x9d"); } // [B1, V6]
15579test { try toAsciiFail("\xea\xa0\x86\xd9\xbb\xe2\x82\x86\xe1\xa1\x90\xe3\x80\x82\xf0\x9f\x9b\x87\xef\xb3\x9d", false); } // [B1, V6]
15580test { try toAsciiFail("\xea\xa0\x86\xd9\xbb\xe2\x82\x86\xe1\xa1\x90\xe3\x80\x82\xf0\x9f\x9b\x87\xef\xb3\x9d", true); } // [B1, V6]
6295test { try toUnicodeFail("\xea\xa0\x86\xd9\xbb6\xe1\xa1\x90\xe3\x80\x82\xf0\x9f\x9b\x87\xd9\x8a\xd9\x85"); } // [B1, V6]15581test { try toUnicodeFail("\xea\xa0\x86\xd9\xbb6\xe1\xa1\x90\xe3\x80\x82\xf0\x9f\x9b\x87\xd9\x8a\xd9\x85"); } // [B1, V6]
15582test { try toAsciiFail("\xea\xa0\x86\xd9\xbb6\xe1\xa1\x90\xe3\x80\x82\xf0\x9f\x9b\x87\xd9\x8a\xd9\x85", false); } // [B1, V6]
15583test { try toAsciiFail("\xea\xa0\x86\xd9\xbb6\xe1\xa1\x90\xe3\x80\x82\xf0\x9f\x9b\x87\xd9\x8a\xd9\x85", true); } // [B1, V6]
6296test { try toUnicodeFail("xn--6-rrc018krt9k.xn--hhbj61429a"); } // [B1, V6]15584test { try toUnicodeFail("xn--6-rrc018krt9k.xn--hhbj61429a"); } // [B1, V6]
15585test { try toAsciiFail("xn--6-rrc018krt9k.xn--hhbj61429a", false); } // [B1, V6]
15586test { try toAsciiFail("xn--6-rrc018krt9k.xn--hhbj61429a", true); } // [B1, V6]
6297test { try toUnicodeFail("\xf2\xb8\x8d\x82.\xe3\x87\x84\xe1\xa1\x9f\xf0\x90\xab\x82\xd8\xa2"); } // [B1, V7]15587test { try toUnicodeFail("\xf2\xb8\x8d\x82.\xe3\x87\x84\xe1\xa1\x9f\xf0\x90\xab\x82\xd8\xa2"); } // [B1, V7]
15588test { try toAsciiFail("\xf2\xb8\x8d\x82.\xe3\x87\x84\xe1\xa1\x9f\xf0\x90\xab\x82\xd8\xa2", false); } // [B1, V7]
15589test { try toAsciiFail("\xf2\xb8\x8d\x82.\xe3\x87\x84\xe1\xa1\x9f\xf0\x90\xab\x82\xd8\xa2", true); } // [B1, V7]
6298test { try toUnicodeFail("\xf2\xb8\x8d\x82.\xe3\x87\x84\xe1\xa1\x9f\xf0\x90\xab\x82\xd8\xa7\xd9\x93"); } // [B1, V7]15590test { try toUnicodeFail("\xf2\xb8\x8d\x82.\xe3\x87\x84\xe1\xa1\x9f\xf0\x90\xab\x82\xd8\xa7\xd9\x93"); } // [B1, V7]
15591test { try toAsciiFail("\xf2\xb8\x8d\x82.\xe3\x87\x84\xe1\xa1\x9f\xf0\x90\xab\x82\xd8\xa7\xd9\x93", false); } // [B1, V7]
15592test { try toAsciiFail("\xf2\xb8\x8d\x82.\xe3\x87\x84\xe1\xa1\x9f\xf0\x90\xab\x82\xd8\xa7\xd9\x93", true); } // [B1, V7]
6299test { try toUnicodeFail("xn--p292d.xn--hgb154ghrsvm2r"); } // [B1, V7]15593test { try toUnicodeFail("xn--p292d.xn--hgb154ghrsvm2r"); } // [B1, V7]
15594test { try toAsciiFail("xn--p292d.xn--hgb154ghrsvm2r", false); } // [B1, V7]
15595test { try toAsciiFail("xn--p292d.xn--hgb154ghrsvm2r", true); } // [B1, V7]
6300test { try toUnicodeFail("\xdf\x9f\xf2\xb5\x9a\x8c\xe3\x80\x82-\xdf\xa9"); } // [B1, B2, B3, V3, V7]15596test { try toUnicodeFail("\xdf\x9f\xf2\xb5\x9a\x8c\xe3\x80\x82-\xdf\xa9"); } // [B1, B2, B3, V3, V7]
15597test { try toAsciiFail("\xdf\x9f\xf2\xb5\x9a\x8c\xe3\x80\x82-\xdf\xa9", false); } // [B1, B2, B3, V3, V7]
15598test { try toAsciiFail("\xdf\x9f\xf2\xb5\x9a\x8c\xe3\x80\x82-\xdf\xa9", true); } // [B1, B2, B3, V3, V7]
6301test { try toUnicodeFail("xn--6sb88139l.xn----pdd"); } // [B1, B2, B3, V3, V7]15599test { try toUnicodeFail("xn--6sb88139l.xn----pdd"); } // [B1, B2, B3, V3, V7]
15600test { try toAsciiFail("xn--6sb88139l.xn----pdd", false); } // [B1, B2, B3, V3, V7]
15601test { try toAsciiFail("xn--6sb88139l.xn----pdd", true); } // [B1, B2, B3, V3, V7]
6302test { try toUnicodeFail("\xcf\x82\xd9\x83\xe2\xbe\x91\xef\xbc\x8e\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c\xe2\x92\x88"); } // [B1, B5, C1, V7]15602test { try toUnicodeFail("\xcf\x82\xd9\x83\xe2\xbe\x91\xef\xbc\x8e\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c\xe2\x92\x88"); } // [B1, B5, C1, V7]
15603test { try toAsciiFail("\xcf\x82\xd9\x83\xe2\xbe\x91\xef\xbc\x8e\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c\xe2\x92\x88", false); } // [B1, B5, C1, V7]
15604test { try toAsciiFail("\xcf\x82\xd9\x83\xe2\xbe\x91\xef\xbc\x8e\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c\xe2\x92\x88", true); } // [B5, V7]
6303test { try toUnicodeFail("\xcf\x82\xd9\x83\xe8\xa5\xbe.\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c1."); } // [B1, B5, C1]15605test { try toUnicodeFail("\xcf\x82\xd9\x83\xe8\xa5\xbe.\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c1."); } // [B1, B5, C1]
15606test { try toAsciiFail("\xcf\x82\xd9\x83\xe8\xa5\xbe.\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c1.", false); } // [B1, B5, C1, A4_2]
15607test { try toAsciiFail("\xcf\x82\xd9\x83\xe8\xa5\xbe.\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c1.", true); } // [B5, A4_2]
6304test { try toUnicodeFail("\xce\xa3\xd9\x83\xe8\xa5\xbe.\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c1."); } // [B1, B5, C1]15608test { try toUnicodeFail("\xce\xa3\xd9\x83\xe8\xa5\xbe.\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c1."); } // [B1, B5, C1]
15609test { try toAsciiFail("\xce\xa3\xd9\x83\xe8\xa5\xbe.\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c1.", false); } // [B1, B5, C1, A4_2]
15610test { try toAsciiFail("\xce\xa3\xd9\x83\xe8\xa5\xbe.\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c1.", true); } // [B5, A4_2]
6305test { try toUnicodeFail("\xcf\x83\xd9\x83\xe8\xa5\xbe.\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c1."); } // [B1, B5, C1]15611test { try toUnicodeFail("\xcf\x83\xd9\x83\xe8\xa5\xbe.\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c1."); } // [B1, B5, C1]
15612test { try toAsciiFail("\xcf\x83\xd9\x83\xe8\xa5\xbe.\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c1.", false); } // [B1, B5, C1, A4_2]
15613test { try toAsciiFail("\xcf\x83\xd9\x83\xe8\xa5\xbe.\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c1.", true); } // [B5, A4_2]
6306test { try toUnicodeFail("xn--4xa49jux8r.xn--1-4ck."); } // [B5]15614test { try toUnicodeFail("xn--4xa49jux8r.xn--1-4ck."); } // [B5]
15615test { try toAsciiFail("xn--4xa49jux8r.xn--1-4ck.", false); } // [B5, A4_2]
15616test { try toAsciiFail("xn--4xa49jux8r.xn--1-4ck.", true); } // [B5, A4_2]
6307test { try toUnicodeFail("xn--4xa49jux8r.xn--1-4ck691bba."); } // [B1, B5, C1]15617test { try toUnicodeFail("xn--4xa49jux8r.xn--1-4ck691bba."); } // [B1, B5, C1]
15618test { try toAsciiFail("xn--4xa49jux8r.xn--1-4ck691bba.", false); } // [B1, B5, C1, A4_2]
15619test { try toAsciiFail("xn--4xa49jux8r.xn--1-4ck691bba.", true); } // [B1, B5, C1, A4_2]
6308test { try toUnicodeFail("xn--3xa69jux8r.xn--1-4ck691bba."); } // [B1, B5, C1]15620test { try toUnicodeFail("xn--3xa69jux8r.xn--1-4ck691bba."); } // [B1, B5, C1]
15621test { try toAsciiFail("xn--3xa69jux8r.xn--1-4ck691bba.", false); } // [B1, B5, C1, A4_2]
15622test { try toAsciiFail("xn--3xa69jux8r.xn--1-4ck691bba.", true); } // [B1, B5, C1, A4_2]
6309test { try toUnicodeFail("\xce\xa3\xd9\x83\xe2\xbe\x91\xef\xbc\x8e\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c\xe2\x92\x88"); } // [B1, B5, C1, V7]15623test { try toUnicodeFail("\xce\xa3\xd9\x83\xe2\xbe\x91\xef\xbc\x8e\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c\xe2\x92\x88"); } // [B1, B5, C1, V7]
15624test { try toAsciiFail("\xce\xa3\xd9\x83\xe2\xbe\x91\xef\xbc\x8e\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c\xe2\x92\x88", false); } // [B1, B5, C1, V7]
15625test { try toAsciiFail("\xce\xa3\xd9\x83\xe2\xbe\x91\xef\xbc\x8e\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c\xe2\x92\x88", true); } // [B5, V7]
6310test { try toUnicodeFail("\xcf\x83\xd9\x83\xe2\xbe\x91\xef\xbc\x8e\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c\xe2\x92\x88"); } // [B1, B5, C1, V7]15626test { try toUnicodeFail("\xcf\x83\xd9\x83\xe2\xbe\x91\xef\xbc\x8e\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c\xe2\x92\x88"); } // [B1, B5, C1, V7]
15627test { try toAsciiFail("\xcf\x83\xd9\x83\xe2\xbe\x91\xef\xbc\x8e\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c\xe2\x92\x88", false); } // [B1, B5, C1, V7]
15628test { try toAsciiFail("\xcf\x83\xd9\x83\xe2\xbe\x91\xef\xbc\x8e\xe2\x80\x8c\xe1\xa2\x9f\xe2\x80\x8c\xe2\x92\x88", true); } // [B5, V7]
6311test { try toUnicodeFail("xn--4xa49jux8r.xn--pbf212d"); } // [B5, V7]15629test { try toUnicodeFail("xn--4xa49jux8r.xn--pbf212d"); } // [B5, V7]
15630test { try toAsciiFail("xn--4xa49jux8r.xn--pbf212d", false); } // [B5, V7]
15631test { try toAsciiFail("xn--4xa49jux8r.xn--pbf212d", true); } // [B5, V7]
6312test { try toUnicodeFail("xn--4xa49jux8r.xn--pbf519aba607b"); } // [B1, B5, C1, V7]15632test { try toUnicodeFail("xn--4xa49jux8r.xn--pbf519aba607b"); } // [B1, B5, C1, V7]
15633test { try toAsciiFail("xn--4xa49jux8r.xn--pbf519aba607b", false); } // [B1, B5, C1, V7]
15634test { try toAsciiFail("xn--4xa49jux8r.xn--pbf519aba607b", true); } // [B1, B5, C1, V7]
6313test { try toUnicodeFail("xn--3xa69jux8r.xn--pbf519aba607b"); } // [B1, B5, C1, V7]15635test { try toUnicodeFail("xn--3xa69jux8r.xn--pbf519aba607b"); } // [B1, B5, C1, V7]
15636test { try toAsciiFail("xn--3xa69jux8r.xn--pbf519aba607b", false); } // [B1, B5, C1, V7]
15637test { try toAsciiFail("xn--3xa69jux8r.xn--pbf519aba607b", true); } // [B1, B5, C1, V7]
6314test { try toUnicodeFail("\xe1\xa1\x86\xf0\x91\x93\x9d\xef\xbc\x8e\xf0\x9e\xb5\x86"); } // [V7]15638test { try toUnicodeFail("\xe1\xa1\x86\xf0\x91\x93\x9d\xef\xbc\x8e\xf0\x9e\xb5\x86"); } // [V7]
15639test { try toAsciiFail("\xe1\xa1\x86\xf0\x91\x93\x9d\xef\xbc\x8e\xf0\x9e\xb5\x86", false); } // [V7]
15640test { try toAsciiFail("\xe1\xa1\x86\xf0\x91\x93\x9d\xef\xbc\x8e\xf0\x9e\xb5\x86", true); } // [V7]
6315test { try toUnicodeFail("\xe1\xa1\x86\xf0\x91\x93\x9d.\xf0\x9e\xb5\x86"); } // [V7]15641test { try toUnicodeFail("\xe1\xa1\x86\xf0\x91\x93\x9d.\xf0\x9e\xb5\x86"); } // [V7]
15642test { try toAsciiFail("\xe1\xa1\x86\xf0\x91\x93\x9d.\xf0\x9e\xb5\x86", false); } // [V7]
15643test { try toAsciiFail("\xe1\xa1\x86\xf0\x91\x93\x9d.\xf0\x9e\xb5\x86", true); } // [V7]
6316test { try toUnicodeFail("xn--57e0440k.xn--k86h"); } // [V7]15644test { try toUnicodeFail("xn--57e0440k.xn--k86h"); } // [V7]
15645test { try toAsciiFail("xn--57e0440k.xn--k86h", false); } // [V7]
15646test { try toAsciiFail("xn--57e0440k.xn--k86h", true); } // [V7]
6317test { try toUnicodeFail("\xe0\xa9\x8d\xf0\xa6\x8d\x93\xe1\xb7\xae\xef\xbd\xa1\xe2\x80\x8c\xe0\xa2\xbd\xf1\x9d\xb9\xb2"); } // [B1, C1, V6, V7]15647test { try toUnicodeFail("\xe0\xa9\x8d\xf0\xa6\x8d\x93\xe1\xb7\xae\xef\xbd\xa1\xe2\x80\x8c\xe0\xa2\xbd\xf1\x9d\xb9\xb2"); } // [B1, C1, V6, V7]
15648test { try toAsciiFail("\xe0\xa9\x8d\xf0\xa6\x8d\x93\xe1\xb7\xae\xef\xbd\xa1\xe2\x80\x8c\xe0\xa2\xbd\xf1\x9d\xb9\xb2", false); } // [B1, C1, V6, V7]
15649test { try toAsciiFail("\xe0\xa9\x8d\xf0\xa6\x8d\x93\xe1\xb7\xae\xef\xbd\xa1\xe2\x80\x8c\xe0\xa2\xbd\xf1\x9d\xb9\xb2", true); } // [B1, B2, B3, V6, V7]
6318test { try toUnicodeFail("\xe0\xa9\x8d\xf0\xa6\x8d\x93\xe1\xb7\xae\xe3\x80\x82\xe2\x80\x8c\xe0\xa2\xbd\xf1\x9d\xb9\xb2"); } // [B1, C1, V6, V7]15650test { try toUnicodeFail("\xe0\xa9\x8d\xf0\xa6\x8d\x93\xe1\xb7\xae\xe3\x80\x82\xe2\x80\x8c\xe0\xa2\xbd\xf1\x9d\xb9\xb2"); } // [B1, C1, V6, V7]
15651test { try toAsciiFail("\xe0\xa9\x8d\xf0\xa6\x8d\x93\xe1\xb7\xae\xe3\x80\x82\xe2\x80\x8c\xe0\xa2\xbd\xf1\x9d\xb9\xb2", false); } // [B1, C1, V6, V7]
15652test { try toAsciiFail("\xe0\xa9\x8d\xf0\xa6\x8d\x93\xe1\xb7\xae\xe3\x80\x82\xe2\x80\x8c\xe0\xa2\xbd\xf1\x9d\xb9\xb2", true); } // [B1, B2, B3, V6, V7]
6319test { try toUnicodeFail("xn--ybc461hph93b.xn--jzb29857e"); } // [B1, B2, B3, V6, V7]15653test { try toUnicodeFail("xn--ybc461hph93b.xn--jzb29857e"); } // [B1, B2, B3, V6, V7]
15654test { try toAsciiFail("xn--ybc461hph93b.xn--jzb29857e", false); } // [B1, B2, B3, V6, V7]
15655test { try toAsciiFail("xn--ybc461hph93b.xn--jzb29857e", true); } // [B1, B2, B3, V6, V7]
6320test { try toUnicodeFail("xn--ybc461hph93b.xn--jzb740j1y45h"); } // [B1, C1, V6, V7]15656test { try toUnicodeFail("xn--ybc461hph93b.xn--jzb740j1y45h"); } // [B1, C1, V6, V7]
15657test { try toAsciiFail("xn--ybc461hph93b.xn--jzb740j1y45h", false); } // [B1, C1, V6, V7]
15658test { try toAsciiFail("xn--ybc461hph93b.xn--jzb740j1y45h", true); } // [B1, C1, V6, V7]
6321test { try toUnicodeFail("\xd8\xae\xdd\x88\xf1\x85\xaa\xaa-\xef\xbc\x8e\xe2\x80\x8c\xeb\xa8\xbf"); } // [B1, B2, B3, C1, V3, V7]15659test { try toUnicodeFail("\xd8\xae\xdd\x88\xf1\x85\xaa\xaa-\xef\xbc\x8e\xe2\x80\x8c\xeb\xa8\xbf"); } // [B1, B2, B3, C1, V3, V7]
15660test { try toAsciiFail("\xd8\xae\xdd\x88\xf1\x85\xaa\xaa-\xef\xbc\x8e\xe2\x80\x8c\xeb\xa8\xbf", false); } // [B1, B2, B3, C1, V3, V7]
15661test { try toAsciiFail("\xd8\xae\xdd\x88\xf1\x85\xaa\xaa-\xef\xbc\x8e\xe2\x80\x8c\xeb\xa8\xbf", true); } // [B2, B3, V3, V7]
6322test { try toUnicodeFail("\xd8\xae\xdd\x88\xf1\x85\xaa\xaa-\xef\xbc\x8e\xe2\x80\x8c\xe1\x84\x86\xe1\x85\xa5\xe1\x86\xae"); } // [B1, B2, B3, C1, V3, V7]15662test { try toUnicodeFail("\xd8\xae\xdd\x88\xf1\x85\xaa\xaa-\xef\xbc\x8e\xe2\x80\x8c\xe1\x84\x86\xe1\x85\xa5\xe1\x86\xae"); } // [B1, B2, B3, C1, V3, V7]
15663test { try toAsciiFail("\xd8\xae\xdd\x88\xf1\x85\xaa\xaa-\xef\xbc\x8e\xe2\x80\x8c\xe1\x84\x86\xe1\x85\xa5\xe1\x86\xae", false); } // [B1, B2, B3, C1, V3, V7]
15664test { try toAsciiFail("\xd8\xae\xdd\x88\xf1\x85\xaa\xaa-\xef\xbc\x8e\xe2\x80\x8c\xe1\x84\x86\xe1\x85\xa5\xe1\x86\xae", true); } // [B2, B3, V3, V7]
6323test { try toUnicodeFail("\xd8\xae\xdd\x88\xf1\x85\xaa\xaa-.\xe2\x80\x8c\xeb\xa8\xbf"); } // [B1, B2, B3, C1, V3, V7]15665test { try toUnicodeFail("\xd8\xae\xdd\x88\xf1\x85\xaa\xaa-.\xe2\x80\x8c\xeb\xa8\xbf"); } // [B1, B2, B3, C1, V3, V7]
15666test { try toAsciiFail("\xd8\xae\xdd\x88\xf1\x85\xaa\xaa-.\xe2\x80\x8c\xeb\xa8\xbf", false); } // [B1, B2, B3, C1, V3, V7]
15667test { try toAsciiFail("\xd8\xae\xdd\x88\xf1\x85\xaa\xaa-.\xe2\x80\x8c\xeb\xa8\xbf", true); } // [B2, B3, V3, V7]
6324test { try toUnicodeFail("\xd8\xae\xdd\x88\xf1\x85\xaa\xaa-.\xe2\x80\x8c\xe1\x84\x86\xe1\x85\xa5\xe1\x86\xae"); } // [B1, B2, B3, C1, V3, V7]15668test { try toUnicodeFail("\xd8\xae\xdd\x88\xf1\x85\xaa\xaa-.\xe2\x80\x8c\xe1\x84\x86\xe1\x85\xa5\xe1\x86\xae"); } // [B1, B2, B3, C1, V3, V7]
15669test { try toAsciiFail("\xd8\xae\xdd\x88\xf1\x85\xaa\xaa-.\xe2\x80\x8c\xe1\x84\x86\xe1\x85\xa5\xe1\x86\xae", false); } // [B1, B2, B3, C1, V3, V7]
15670test { try toAsciiFail("\xd8\xae\xdd\x88\xf1\x85\xaa\xaa-.\xe2\x80\x8c\xe1\x84\x86\xe1\x85\xa5\xe1\x86\xae", true); } // [B2, B3, V3, V7]
6325test { try toUnicodeFail("xn----dnc06f42153a.xn--v22b"); } // [B2, B3, V3, V7]15671test { try toUnicodeFail("xn----dnc06f42153a.xn--v22b"); } // [B2, B3, V3, V7]
15672test { try toAsciiFail("xn----dnc06f42153a.xn--v22b", false); } // [B2, B3, V3, V7]
15673test { try toAsciiFail("xn----dnc06f42153a.xn--v22b", true); } // [B2, B3, V3, V7]
6326test { try toUnicodeFail("xn----dnc06f42153a.xn--0ug1581d"); } // [B1, B2, B3, C1, V3, V7]15674test { try toUnicodeFail("xn----dnc06f42153a.xn--0ug1581d"); } // [B1, B2, B3, C1, V3, V7]
15675test { try toAsciiFail("xn----dnc06f42153a.xn--0ug1581d", false); } // [B1, B2, B3, C1, V3, V7]
15676test { try toAsciiFail("xn----dnc06f42153a.xn--0ug1581d", true); } // [B1, B2, B3, C1, V3, V7]
6327test { try toUnicodeFail("\xf4\x8b\xbf\xa6\xef\xbd\xa1\xe1\xa0\xbd"); } // [V7]15677test { try toUnicodeFail("\xf4\x8b\xbf\xa6\xef\xbd\xa1\xe1\xa0\xbd"); } // [V7]
15678test { try toAsciiFail("\xf4\x8b\xbf\xa6\xef\xbd\xa1\xe1\xa0\xbd", false); } // [V7]
15679test { try toAsciiFail("\xf4\x8b\xbf\xa6\xef\xbd\xa1\xe1\xa0\xbd", true); } // [V7]
6328test { try toUnicodeFail("\xf4\x8b\xbf\xa6\xe3\x80\x82\xe1\xa0\xbd"); } // [V7]15680test { try toUnicodeFail("\xf4\x8b\xbf\xa6\xe3\x80\x82\xe1\xa0\xbd"); } // [V7]
15681test { try toAsciiFail("\xf4\x8b\xbf\xa6\xe3\x80\x82\xe1\xa0\xbd", false); } // [V7]
15682test { try toAsciiFail("\xf4\x8b\xbf\xa6\xe3\x80\x82\xe1\xa0\xbd", true); } // [V7]
6329test { try toUnicodeFail("xn--j890g.xn--w7e"); } // [V7]15683test { try toUnicodeFail("xn--j890g.xn--w7e"); } // [V7]
15684test { try toAsciiFail("xn--j890g.xn--w7e", false); } // [V7]
15685test { try toAsciiFail("xn--j890g.xn--w7e", true); } // [V7]
6330test { try toUnicodeFail("\xe5\xac\x83\xf0\x9d\x8d\x8c\xef\xbc\x8e\xe2\x80\x8d\xe0\xad\x84"); } // [C2]15686test { try toUnicodeFail("\xe5\xac\x83\xf0\x9d\x8d\x8c\xef\xbc\x8e\xe2\x80\x8d\xe0\xad\x84"); } // [C2]
15687test { try toAsciiFail("\xe5\xac\x83\xf0\x9d\x8d\x8c\xef\xbc\x8e\xe2\x80\x8d\xe0\xad\x84", false); } // [C2]
15688test { try toAsciiFail("\xe5\xac\x83\xf0\x9d\x8d\x8c\xef\xbc\x8e\xe2\x80\x8d\xe0\xad\x84", true); } // [V6]
6331test { try toUnicodeFail("\xe5\xac\x83\xf0\x9d\x8d\x8c.\xe2\x80\x8d\xe0\xad\x84"); } // [C2]15689test { try toUnicodeFail("\xe5\xac\x83\xf0\x9d\x8d\x8c.\xe2\x80\x8d\xe0\xad\x84"); } // [C2]
15690test { try toAsciiFail("\xe5\xac\x83\xf0\x9d\x8d\x8c.\xe2\x80\x8d\xe0\xad\x84", false); } // [C2]
15691test { try toAsciiFail("\xe5\xac\x83\xf0\x9d\x8d\x8c.\xe2\x80\x8d\xe0\xad\x84", true); } // [V6]
6332test { try toUnicodeFail("xn--b6s0078f.xn--0ic"); } // [V6]15692test { try toUnicodeFail("xn--b6s0078f.xn--0ic"); } // [V6]
15693test { try toAsciiFail("xn--b6s0078f.xn--0ic", false); } // [V6]
15694test { try toAsciiFail("xn--b6s0078f.xn--0ic", true); } // [V6]
6333test { try toUnicodeFail("xn--b6s0078f.xn--0ic557h"); } // [C2]15695test { try toUnicodeFail("xn--b6s0078f.xn--0ic557h"); } // [C2]
15696test { try toAsciiFail("xn--b6s0078f.xn--0ic557h", false); } // [C2]
15697test { try toAsciiFail("xn--b6s0078f.xn--0ic557h", true); } // [C2]
6334test { try toUnicodeFail("\xd8\x82\xf0\x9d\x8c\xaa\xe2\x89\xaf\xef\xbc\x8e\xf0\x9a\x8b\xb2\xf2\xb5\x81\xa8"); } // [B1, V7]15698test { try toUnicodeFail("\xd8\x82\xf0\x9d\x8c\xaa\xe2\x89\xaf\xef\xbc\x8e\xf0\x9a\x8b\xb2\xf2\xb5\x81\xa8"); } // [B1, V7]
15699test { try toAsciiFail("\xd8\x82\xf0\x9d\x8c\xaa\xe2\x89\xaf\xef\xbc\x8e\xf0\x9a\x8b\xb2\xf2\xb5\x81\xa8", false); } // [B1, V7]
15700test { try toAsciiFail("\xd8\x82\xf0\x9d\x8c\xaa\xe2\x89\xaf\xef\xbc\x8e\xf0\x9a\x8b\xb2\xf2\xb5\x81\xa8", true); } // [B1, V7]
6335test { try toUnicodeFail("\xd8\x82\xf0\x9d\x8c\xaa>\xcc\xb8\xef\xbc\x8e\xf0\x9a\x8b\xb2\xf2\xb5\x81\xa8"); } // [B1, V7]15701test { try toUnicodeFail("\xd8\x82\xf0\x9d\x8c\xaa>\xcc\xb8\xef\xbc\x8e\xf0\x9a\x8b\xb2\xf2\xb5\x81\xa8"); } // [B1, V7]
15702test { try toAsciiFail("\xd8\x82\xf0\x9d\x8c\xaa>\xcc\xb8\xef\xbc\x8e\xf0\x9a\x8b\xb2\xf2\xb5\x81\xa8", false); } // [B1, V7]
15703test { try toAsciiFail("\xd8\x82\xf0\x9d\x8c\xaa>\xcc\xb8\xef\xbc\x8e\xf0\x9a\x8b\xb2\xf2\xb5\x81\xa8", true); } // [B1, V7]
6336test { try toUnicodeFail("\xd8\x82\xf0\x9d\x8c\xaa\xe2\x89\xaf.\xf0\x9a\x8b\xb2\xf2\xb5\x81\xa8"); } // [B1, V7]15704test { try toUnicodeFail("\xd8\x82\xf0\x9d\x8c\xaa\xe2\x89\xaf.\xf0\x9a\x8b\xb2\xf2\xb5\x81\xa8"); } // [B1, V7]
15705test { try toAsciiFail("\xd8\x82\xf0\x9d\x8c\xaa\xe2\x89\xaf.\xf0\x9a\x8b\xb2\xf2\xb5\x81\xa8", false); } // [B1, V7]
15706test { try toAsciiFail("\xd8\x82\xf0\x9d\x8c\xaa\xe2\x89\xaf.\xf0\x9a\x8b\xb2\xf2\xb5\x81\xa8", true); } // [B1, V7]
6337test { try toUnicodeFail("\xd8\x82\xf0\x9d\x8c\xaa>\xcc\xb8.\xf0\x9a\x8b\xb2\xf2\xb5\x81\xa8"); } // [B1, V7]15707test { try toUnicodeFail("\xd8\x82\xf0\x9d\x8c\xaa>\xcc\xb8.\xf0\x9a\x8b\xb2\xf2\xb5\x81\xa8"); } // [B1, V7]
15708test { try toAsciiFail("\xd8\x82\xf0\x9d\x8c\xaa>\xcc\xb8.\xf0\x9a\x8b\xb2\xf2\xb5\x81\xa8", false); } // [B1, V7]
15709test { try toAsciiFail("\xd8\x82\xf0\x9d\x8c\xaa>\xcc\xb8.\xf0\x9a\x8b\xb2\xf2\xb5\x81\xa8", true); } // [B1, V7]
6338test { try toUnicodeFail("xn--kfb866llx01a.xn--wp1gm3570b"); } // [B1, V7]15710test { try toUnicodeFail("xn--kfb866llx01a.xn--wp1gm3570b"); } // [B1, V7]
15711test { try toAsciiFail("xn--kfb866llx01a.xn--wp1gm3570b", false); } // [B1, V7]
15712test { try toAsciiFail("xn--kfb866llx01a.xn--wp1gm3570b", true); } // [B1, V7]
6339test { try toUnicodeFail("\xf2\xab\xbe\xa5\xe0\xa2\xb7\xe1\x9f\x8c\xea\xa7\x80.\xf0\x9e\xbc\xa0"); } // [B5, V7]15713test { try toUnicodeFail("\xf2\xab\xbe\xa5\xe0\xa2\xb7\xe1\x9f\x8c\xea\xa7\x80.\xf0\x9e\xbc\xa0"); } // [B5, V7]
15714test { try toAsciiFail("\xf2\xab\xbe\xa5\xe0\xa2\xb7\xe1\x9f\x8c\xea\xa7\x80.\xf0\x9e\xbc\xa0", false); } // [B5, V7]
15715test { try toAsciiFail("\xf2\xab\xbe\xa5\xe0\xa2\xb7\xe1\x9f\x8c\xea\xa7\x80.\xf0\x9e\xbc\xa0", true); } // [B5, V7]
6340test { try toUnicodeFail("xn--dzb638ewm4i1iy1h.xn--3m7h"); } // [B5, V7]15716test { try toUnicodeFail("xn--dzb638ewm4i1iy1h.xn--3m7h"); } // [B5, V7]
15717test { try toAsciiFail("xn--dzb638ewm4i1iy1h.xn--3m7h", false); } // [B5, V7]
15718test { try toAsciiFail("xn--dzb638ewm4i1iy1h.xn--3m7h", true); } // [B5, V7]
6341test { try toUnicodeFail("\xe2\x80\x8c.\xf1\x9f\x9b\xa4"); } // [C1, V7]15719test { try toUnicodeFail("\xe2\x80\x8c.\xf1\x9f\x9b\xa4"); } // [C1, V7]
15720test { try toAsciiFail("\xe2\x80\x8c.\xf1\x9f\x9b\xa4", false); } // [C1, V7]
15721test { try toAsciiFail("\xe2\x80\x8c.\xf1\x9f\x9b\xa4", true); } // [V7, A4_2]
6342test { try toUnicodeFail(".xn--q823a"); } // [V7, X4_2]15722test { try toUnicodeFail(".xn--q823a"); } // [V7, X4_2]
15723test { try toAsciiFail(".xn--q823a", false); } // [V7, A4_2]
15724test { try toAsciiFail(".xn--q823a", true); } // [V7, A4_2]
6343test { try toUnicodeFail("xn--0ug.xn--q823a"); } // [C1, V7]15725test { try toUnicodeFail("xn--0ug.xn--q823a"); } // [C1, V7]
15726test { try toAsciiFail("xn--0ug.xn--q823a", false); } // [C1, V7]
15727test { try toAsciiFail("xn--0ug.xn--q823a", true); } // [C1, V7]
6344test { try toUnicodeFail("\xf2\xba\x9b\x95\xe1\x82\xa3\xe4\xa0\x85\xef\xbc\x8e\xf0\x90\xb8\x91"); } // [V7]15728test { try toUnicodeFail("\xf2\xba\x9b\x95\xe1\x82\xa3\xe4\xa0\x85\xef\xbc\x8e\xf0\x90\xb8\x91"); } // [V7]
15729test { try toAsciiFail("\xf2\xba\x9b\x95\xe1\x82\xa3\xe4\xa0\x85\xef\xbc\x8e\xf0\x90\xb8\x91", false); } // [V7]
15730test { try toAsciiFail("\xf2\xba\x9b\x95\xe1\x82\xa3\xe4\xa0\x85\xef\xbc\x8e\xf0\x90\xb8\x91", true); } // [V7]
6345test { try toUnicodeFail("\xf2\xba\x9b\x95\xe1\x82\xa3\xe4\xa0\x85.\xf0\x90\xb8\x91"); } // [V7]15731test { try toUnicodeFail("\xf2\xba\x9b\x95\xe1\x82\xa3\xe4\xa0\x85.\xf0\x90\xb8\x91"); } // [V7]
15732test { try toAsciiFail("\xf2\xba\x9b\x95\xe1\x82\xa3\xe4\xa0\x85.\xf0\x90\xb8\x91", false); } // [V7]
15733test { try toAsciiFail("\xf2\xba\x9b\x95\xe1\x82\xa3\xe4\xa0\x85.\xf0\x90\xb8\x91", true); } // [V7]
6346test { try toUnicodeFail("\xf2\xba\x9b\x95\xe2\xb4\x83\xe4\xa0\x85.\xf0\x90\xb8\x91"); } // [V7]15734test { try toUnicodeFail("\xf2\xba\x9b\x95\xe2\xb4\x83\xe4\xa0\x85.\xf0\x90\xb8\x91"); } // [V7]
15735test { try toAsciiFail("\xf2\xba\x9b\x95\xe2\xb4\x83\xe4\xa0\x85.\xf0\x90\xb8\x91", false); } // [V7]
15736test { try toAsciiFail("\xf2\xba\x9b\x95\xe2\xb4\x83\xe4\xa0\x85.\xf0\x90\xb8\x91", true); } // [V7]
6347test { try toUnicodeFail("xn--ukju77frl47r.xn--yl0d"); } // [V7]15737test { try toUnicodeFail("xn--ukju77frl47r.xn--yl0d"); } // [V7]
15738test { try toAsciiFail("xn--ukju77frl47r.xn--yl0d", false); } // [V7]
15739test { try toAsciiFail("xn--ukju77frl47r.xn--yl0d", true); } // [V7]
6348test { try toUnicodeFail("\xf2\xba\x9b\x95\xe2\xb4\x83\xe4\xa0\x85\xef\xbc\x8e\xf0\x90\xb8\x91"); } // [V7]15740test { try toUnicodeFail("\xf2\xba\x9b\x95\xe2\xb4\x83\xe4\xa0\x85\xef\xbc\x8e\xf0\x90\xb8\x91"); } // [V7]
15741test { try toAsciiFail("\xf2\xba\x9b\x95\xe2\xb4\x83\xe4\xa0\x85\xef\xbc\x8e\xf0\x90\xb8\x91", false); } // [V7]
15742test { try toAsciiFail("\xf2\xba\x9b\x95\xe2\xb4\x83\xe4\xa0\x85\xef\xbc\x8e\xf0\x90\xb8\x91", true); } // [V7]
6349test { try toUnicodeFail("xn--bnd074zr557n.xn--yl0d"); } // [V7]15743test { try toUnicodeFail("xn--bnd074zr557n.xn--yl0d"); } // [V7]
15744test { try toAsciiFail("xn--bnd074zr557n.xn--yl0d", false); } // [V7]
15745test { try toAsciiFail("xn--bnd074zr557n.xn--yl0d", true); } // [V7]
6350test { try toUnicodeFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\x9a\xef\xbd\xa1\xf0\x9d\x9f\xa8\xe1\x82\xa5"); } // [B1, V6]15746test { try toUnicodeFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\x9a\xef\xbd\xa1\xf0\x9d\x9f\xa8\xe1\x82\xa5"); } // [B1, V6]
15747test { try toAsciiFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\x9a\xef\xbd\xa1\xf0\x9d\x9f\xa8\xe1\x82\xa5", false); } // [B1, V6]
15748test { try toAsciiFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\x9a\xef\xbd\xa1\xf0\x9d\x9f\xa8\xe1\x82\xa5", true); } // [B1, V6]
6351test { try toUnicodeFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\x9a\xe3\x80\x826\xe1\x82\xa5"); } // [B1, V6]15749test { try toUnicodeFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\x9a\xe3\x80\x826\xe1\x82\xa5"); } // [B1, V6]
15750test { try toAsciiFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\x9a\xe3\x80\x826\xe1\x82\xa5", false); } // [B1, V6]
15751test { try toAsciiFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\x9a\xe3\x80\x826\xe1\x82\xa5", true); } // [B1, V6]
6352test { try toUnicodeFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\xbc\xe3\x80\x826\xe2\xb4\x85"); } // [B1, V6]15752test { try toUnicodeFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\xbc\xe3\x80\x826\xe2\xb4\x85"); } // [B1, V6]
15753test { try toAsciiFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\xbc\xe3\x80\x826\xe2\xb4\x85", false); } // [B1, V6]
15754test { try toAsciiFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\xbc\xe3\x80\x826\xe2\xb4\x85", true); } // [B1, V6]
6353test { try toUnicodeFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\x9a\xe3\x80\x826\xe2\xb4\x85"); } // [B1, V6]15755test { try toUnicodeFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\x9a\xe3\x80\x826\xe2\xb4\x85"); } // [B1, V6]
15756test { try toAsciiFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\x9a\xe3\x80\x826\xe2\xb4\x85", false); } // [B1, V6]
15757test { try toAsciiFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\x9a\xe3\x80\x826\xe2\xb4\x85", true); } // [B1, V6]
6354test { try toUnicodeFail("xn--zzfy954hga2415t.xn--6-kvs"); } // [B1, V6]15758test { try toUnicodeFail("xn--zzfy954hga2415t.xn--6-kvs"); } // [B1, V6]
15759test { try toAsciiFail("xn--zzfy954hga2415t.xn--6-kvs", false); } // [B1, V6]
15760test { try toAsciiFail("xn--zzfy954hga2415t.xn--6-kvs", true); } // [B1, V6]
6355test { try toUnicodeFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\xbc\xef\xbd\xa1\xf0\x9d\x9f\xa8\xe2\xb4\x85"); } // [B1, V6]15761test { try toUnicodeFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\xbc\xef\xbd\xa1\xf0\x9d\x9f\xa8\xe2\xb4\x85"); } // [B1, V6]
15762test { try toAsciiFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\xbc\xef\xbd\xa1\xf0\x9d\x9f\xa8\xe2\xb4\x85", false); } // [B1, V6]
15763test { try toAsciiFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\xbc\xef\xbd\xa1\xf0\x9d\x9f\xa8\xe2\xb4\x85", true); } // [B1, V6]
6356test { try toUnicodeFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\x9a\xef\xbd\xa1\xf0\x9d\x9f\xa8\xe2\xb4\x85"); } // [B1, V6]15764test { try toUnicodeFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\x9a\xef\xbd\xa1\xf0\x9d\x9f\xa8\xe2\xb4\x85"); } // [B1, V6]
15765test { try toAsciiFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\x9a\xef\xbd\xa1\xf0\x9d\x9f\xa8\xe2\xb4\x85", false); } // [B1, V6]
15766test { try toAsciiFail("\xe1\xaf\xb1\xf0\x90\xb9\xb3\xf0\x90\xb9\xb5\xf0\x9e\xa4\x9a\xef\xbd\xa1\xf0\x9d\x9f\xa8\xe2\xb4\x85", true); } // [B1, V6]
6357test { try toUnicodeFail("xn--zzfy954hga2415t.xn--6-h0g"); } // [B1, V6, V7]15767test { try toUnicodeFail("xn--zzfy954hga2415t.xn--6-h0g"); } // [B1, V6, V7]
15768test { try toAsciiFail("xn--zzfy954hga2415t.xn--6-h0g", false); } // [B1, V6, V7]
15769test { try toAsciiFail("xn--zzfy954hga2415t.xn--6-h0g", true); } // [B1, V6, V7]
6358test { try toUnicodeFail("-\xef\xbd\xa1\xef\xb8\x92"); } // [V3, V7]15770test { try toUnicodeFail("-\xef\xbd\xa1\xef\xb8\x92"); } // [V3, V7]
15771test { try toAsciiFail("-\xef\xbd\xa1\xef\xb8\x92", false); } // [V3, V7]
15772test { try toAsciiFail("-\xef\xbd\xa1\xef\xb8\x92", true); } // [V3, V7]
6359test { try toUnicodeFail("-\xe3\x80\x82\xe3\x80\x82"); } // [V3, X4_2]15773test { try toUnicodeFail("-\xe3\x80\x82\xe3\x80\x82"); } // [V3, X4_2]
15774test { try toAsciiFail("-\xe3\x80\x82\xe3\x80\x82", false); } // [V3, A4_2]
15775test { try toAsciiFail("-\xe3\x80\x82\xe3\x80\x82", true); } // [V3, A4_2]
6360test { try toUnicodeFail("-.."); } // [V3, X4_2]15776test { try toUnicodeFail("-.."); } // [V3, X4_2]
15777test { try toAsciiFail("-..", false); } // [V3, A4_2]
15778test { try toAsciiFail("-..", true); } // [V3, A4_2]
6361test { try toUnicodeFail("-.xn--y86c"); } // [V3, V7]15779test { try toUnicodeFail("-.xn--y86c"); } // [V3, V7]
15780test { try toAsciiFail("-.xn--y86c", false); } // [V3, V7]
15781test { try toAsciiFail("-.xn--y86c", true); } // [V3, V7]
6362test { try toUnicodeFail("\xdf\x9b\xe1\x83\x80\xef\xbd\xa1-\xe2\x81\xb5--"); } // [B1, B2, B3, V2, V3]15782test { try toUnicodeFail("\xdf\x9b\xe1\x83\x80\xef\xbd\xa1-\xe2\x81\xb5--"); } // [B1, B2, B3, V2, V3]
15783test { try toAsciiFail("\xdf\x9b\xe1\x83\x80\xef\xbd\xa1-\xe2\x81\xb5--", false); } // [B1, B2, B3, V2, V3]
15784test { try toAsciiFail("\xdf\x9b\xe1\x83\x80\xef\xbd\xa1-\xe2\x81\xb5--", true); } // [B1, B2, B3, V2, V3]
6363test { try toUnicodeFail("\xdf\x9b\xe1\x83\x80\xe3\x80\x82-5--"); } // [B1, B2, B3, V2, V3]15785test { try toUnicodeFail("\xdf\x9b\xe1\x83\x80\xe3\x80\x82-5--"); } // [B1, B2, B3, V2, V3]
15786test { try toAsciiFail("\xdf\x9b\xe1\x83\x80\xe3\x80\x82-5--", false); } // [B1, B2, B3, V2, V3]
15787test { try toAsciiFail("\xdf\x9b\xe1\x83\x80\xe3\x80\x82-5--", true); } // [B1, B2, B3, V2, V3]
6364test { try toUnicodeFail("\xdf\x9b\xe2\xb4\xa0\xe3\x80\x82-5--"); } // [B1, B2, B3, V2, V3]15788test { try toUnicodeFail("\xdf\x9b\xe2\xb4\xa0\xe3\x80\x82-5--"); } // [B1, B2, B3, V2, V3]
15789test { try toAsciiFail("\xdf\x9b\xe2\xb4\xa0\xe3\x80\x82-5--", false); } // [B1, B2, B3, V2, V3]
15790test { try toAsciiFail("\xdf\x9b\xe2\xb4\xa0\xe3\x80\x82-5--", true); } // [B1, B2, B3, V2, V3]
6365test { try toUnicodeFail("xn--2sb691q.-5--"); } // [B1, B2, B3, V2, V3]15791test { try toUnicodeFail("xn--2sb691q.-5--"); } // [B1, B2, B3, V2, V3]
15792test { try toAsciiFail("xn--2sb691q.-5--", false); } // [B1, B2, B3, V2, V3]
15793test { try toAsciiFail("xn--2sb691q.-5--", true); } // [B1, B2, B3, V2, V3]
6366test { try toUnicodeFail("\xdf\x9b\xe2\xb4\xa0\xef\xbd\xa1-\xe2\x81\xb5--"); } // [B1, B2, B3, V2, V3]15794test { try toUnicodeFail("\xdf\x9b\xe2\xb4\xa0\xef\xbd\xa1-\xe2\x81\xb5--"); } // [B1, B2, B3, V2, V3]
15795test { try toAsciiFail("\xdf\x9b\xe2\xb4\xa0\xef\xbd\xa1-\xe2\x81\xb5--", false); } // [B1, B2, B3, V2, V3]
15796test { try toAsciiFail("\xdf\x9b\xe2\xb4\xa0\xef\xbd\xa1-\xe2\x81\xb5--", true); } // [B1, B2, B3, V2, V3]
6367test { try toUnicodeFail("xn--2sb866b.-5--"); } // [B1, B2, B3, V2, V3, V7]15797test { try toUnicodeFail("xn--2sb866b.-5--"); } // [B1, B2, B3, V2, V3, V7]
15798test { try toAsciiFail("xn--2sb866b.-5--", false); } // [B1, B2, B3, V2, V3, V7]
15799test { try toAsciiFail("xn--2sb866b.-5--", true); } // [B1, B2, B3, V2, V3, V7]
6368test { try toUnicodeFail("\xe2\x89\xaf?\xf3\xa0\x91\x95\xef\xbd\xa1\xf0\x90\xb9\xb7\xf0\x90\xb9\xbb\xe2\x89\xaf\xf0\x90\xb7\x92"); } // [B1, V7, U1]15800test { try toUnicodeFail("\xe2\x89\xaf?\xf3\xa0\x91\x95\xef\xbd\xa1\xf0\x90\xb9\xb7\xf0\x90\xb9\xbb\xe2\x89\xaf\xf0\x90\xb7\x92"); } // [B1, V7, U1]
15801test { try toAsciiFail("\xe2\x89\xaf?\xf3\xa0\x91\x95\xef\xbd\xa1\xf0\x90\xb9\xb7\xf0\x90\xb9\xbb\xe2\x89\xaf\xf0\x90\xb7\x92", false); } // [B1, V7, U1]
15802test { try toAsciiFail("\xe2\x89\xaf?\xf3\xa0\x91\x95\xef\xbd\xa1\xf0\x90\xb9\xb7\xf0\x90\xb9\xbb\xe2\x89\xaf\xf0\x90\xb7\x92", true); } // [B1, V7, U1]
6369test { try toUnicodeFail(">\xcc\xb8?\xf3\xa0\x91\x95\xef\xbd\xa1\xf0\x90\xb9\xb7\xf0\x90\xb9\xbb>\xcc\xb8\xf0\x90\xb7\x92"); } // [B1, V7, U1]15803test { try toUnicodeFail(">\xcc\xb8?\xf3\xa0\x91\x95\xef\xbd\xa1\xf0\x90\xb9\xb7\xf0\x90\xb9\xbb>\xcc\xb8\xf0\x90\xb7\x92"); } // [B1, V7, U1]
15804test { try toAsciiFail(">\xcc\xb8?\xf3\xa0\x91\x95\xef\xbd\xa1\xf0\x90\xb9\xb7\xf0\x90\xb9\xbb>\xcc\xb8\xf0\x90\xb7\x92", false); } // [B1, V7, U1]
15805test { try toAsciiFail(">\xcc\xb8?\xf3\xa0\x91\x95\xef\xbd\xa1\xf0\x90\xb9\xb7\xf0\x90\xb9\xbb>\xcc\xb8\xf0\x90\xb7\x92", true); } // [B1, V7, U1]
6370test { try toUnicodeFail("\xe2\x89\xaf?\xf3\xa0\x91\x95\xe3\x80\x82\xf0\x90\xb9\xb7\xf0\x90\xb9\xbb\xe2\x89\xaf\xf0\x90\xb7\x92"); } // [B1, V7, U1]15806test { try toUnicodeFail("\xe2\x89\xaf?\xf3\xa0\x91\x95\xe3\x80\x82\xf0\x90\xb9\xb7\xf0\x90\xb9\xbb\xe2\x89\xaf\xf0\x90\xb7\x92"); } // [B1, V7, U1]
15807test { try toAsciiFail("\xe2\x89\xaf?\xf3\xa0\x91\x95\xe3\x80\x82\xf0\x90\xb9\xb7\xf0\x90\xb9\xbb\xe2\x89\xaf\xf0\x90\xb7\x92", false); } // [B1, V7, U1]
15808test { try toAsciiFail("\xe2\x89\xaf?\xf3\xa0\x91\x95\xe3\x80\x82\xf0\x90\xb9\xb7\xf0\x90\xb9\xbb\xe2\x89\xaf\xf0\x90\xb7\x92", true); } // [B1, V7, U1]
6371test { try toUnicodeFail(">\xcc\xb8?\xf3\xa0\x91\x95\xe3\x80\x82\xf0\x90\xb9\xb7\xf0\x90\xb9\xbb>\xcc\xb8\xf0\x90\xb7\x92"); } // [B1, V7, U1]15809test { try toUnicodeFail(">\xcc\xb8?\xf3\xa0\x91\x95\xe3\x80\x82\xf0\x90\xb9\xb7\xf0\x90\xb9\xbb>\xcc\xb8\xf0\x90\xb7\x92"); } // [B1, V7, U1]
15810test { try toAsciiFail(">\xcc\xb8?\xf3\xa0\x91\x95\xe3\x80\x82\xf0\x90\xb9\xb7\xf0\x90\xb9\xbb>\xcc\xb8\xf0\x90\xb7\x92", false); } // [B1, V7, U1]
15811test { try toAsciiFail(">\xcc\xb8?\xf3\xa0\x91\x95\xe3\x80\x82\xf0\x90\xb9\xb7\xf0\x90\xb9\xbb>\xcc\xb8\xf0\x90\xb7\x92", true); } // [B1, V7, U1]
6372test { try toUnicodeFail("xn--?-ogo25661n.xn--hdh8283gdoaqa"); } // [B1, V7, U1]15812test { try toUnicodeFail("xn--?-ogo25661n.xn--hdh8283gdoaqa"); } // [B1, V7, U1]
15813test { try toAsciiFail("xn--?-ogo25661n.xn--hdh8283gdoaqa", false); } // [B1, V7, U1]
15814test { try toAsciiFail("xn--?-ogo25661n.xn--hdh8283gdoaqa", true); } // [B1, V7, U1]
6373test { try toUnicodeFail("\xe2\x89\xaf?\xf3\xa0\x91\x95.xn--hdh8283gdoaqa"); } // [B1, V7, U1]15815test { try toUnicodeFail("\xe2\x89\xaf?\xf3\xa0\x91\x95.xn--hdh8283gdoaqa"); } // [B1, V7, U1]
15816test { try toAsciiFail("\xe2\x89\xaf?\xf3\xa0\x91\x95.xn--hdh8283gdoaqa", false); } // [B1, V7, U1]
15817test { try toAsciiFail("\xe2\x89\xaf?\xf3\xa0\x91\x95.xn--hdh8283gdoaqa", true); } // [B1, V7, U1]
6374test { try toUnicodeFail(">\xcc\xb8?\xf3\xa0\x91\x95.xn--hdh8283gdoaqa"); } // [B1, V7, U1]15818test { try toUnicodeFail(">\xcc\xb8?\xf3\xa0\x91\x95.xn--hdh8283gdoaqa"); } // [B1, V7, U1]
15819test { try toAsciiFail(">\xcc\xb8?\xf3\xa0\x91\x95.xn--hdh8283gdoaqa", false); } // [B1, V7, U1]
15820test { try toAsciiFail(">\xcc\xb8?\xf3\xa0\x91\x95.xn--hdh8283gdoaqa", true); } // [B1, V7, U1]
6375test { try toUnicodeFail(">\xcc\xb8?\xf3\xa0\x91\x95.XN--HDH8283GDOAQA"); } // [B1, V7, U1]15821test { try toUnicodeFail(">\xcc\xb8?\xf3\xa0\x91\x95.XN--HDH8283GDOAQA"); } // [B1, V7, U1]
15822test { try toAsciiFail(">\xcc\xb8?\xf3\xa0\x91\x95.XN--HDH8283GDOAQA", false); } // [B1, V7, U1]
15823test { try toAsciiFail(">\xcc\xb8?\xf3\xa0\x91\x95.XN--HDH8283GDOAQA", true); } // [B1, V7, U1]
6376test { try toUnicodeFail("\xe2\x89\xaf?\xf3\xa0\x91\x95.XN--HDH8283GDOAQA"); } // [B1, V7, U1]15824test { try toUnicodeFail("\xe2\x89\xaf?\xf3\xa0\x91\x95.XN--HDH8283GDOAQA"); } // [B1, V7, U1]
15825test { try toAsciiFail("\xe2\x89\xaf?\xf3\xa0\x91\x95.XN--HDH8283GDOAQA", false); } // [B1, V7, U1]
15826test { try toAsciiFail("\xe2\x89\xaf?\xf3\xa0\x91\x95.XN--HDH8283GDOAQA", true); } // [B1, V7, U1]
6377test { try toUnicodeFail("\xe2\x89\xaf?\xf3\xa0\x91\x95.Xn--Hdh8283gdoaqa"); } // [B1, V7, U1]15827test { try toUnicodeFail("\xe2\x89\xaf?\xf3\xa0\x91\x95.Xn--Hdh8283gdoaqa"); } // [B1, V7, U1]
15828test { try toAsciiFail("\xe2\x89\xaf?\xf3\xa0\x91\x95.Xn--Hdh8283gdoaqa", false); } // [B1, V7, U1]
15829test { try toAsciiFail("\xe2\x89\xaf?\xf3\xa0\x91\x95.Xn--Hdh8283gdoaqa", true); } // [B1, V7, U1]
6378test { try toUnicodeFail(">\xcc\xb8?\xf3\xa0\x91\x95.Xn--Hdh8283gdoaqa"); } // [B1, V7, U1]15830test { try toUnicodeFail(">\xcc\xb8?\xf3\xa0\x91\x95.Xn--Hdh8283gdoaqa"); } // [B1, V7, U1]
15831test { try toAsciiFail(">\xcc\xb8?\xf3\xa0\x91\x95.Xn--Hdh8283gdoaqa", false); } // [B1, V7, U1]
15832test { try toAsciiFail(">\xcc\xb8?\xf3\xa0\x91\x95.Xn--Hdh8283gdoaqa", true); } // [B1, V7, U1]
6379test { try toUnicodeFail("\xe3\x8d\x94\xe0\xa3\xa6\xdd\xbc\xe2\x80\x8d\xe3\x80\x82\xcd\x86\xf2\x81\xb3\x8a\xf0\x9d\x85\xb6\xd8\x84"); } // [B1, B5, B6, C2, V6, V7]15833test { try toUnicodeFail("\xe3\x8d\x94\xe0\xa3\xa6\xdd\xbc\xe2\x80\x8d\xe3\x80\x82\xcd\x86\xf2\x81\xb3\x8a\xf0\x9d\x85\xb6\xd8\x84"); } // [B1, B5, B6, C2, V6, V7]
15834test { try toAsciiFail("\xe3\x8d\x94\xe0\xa3\xa6\xdd\xbc\xe2\x80\x8d\xe3\x80\x82\xcd\x86\xf2\x81\xb3\x8a\xf0\x9d\x85\xb6\xd8\x84", false); } // [B1, B5, B6, C2, V6, V7]
15835test { try toAsciiFail("\xe3\x8d\x94\xe0\xa3\xa6\xdd\xbc\xe2\x80\x8d\xe3\x80\x82\xcd\x86\xf2\x81\xb3\x8a\xf0\x9d\x85\xb6\xd8\x84", true); } // [B1, B5, B6, V6, V7]
6380test { try toUnicodeFail("\xe3\x83\xab\xe3\x83\xbc\xe3\x83\x96\xe3\x83\xab\xe0\xa3\xa6\xdd\xbc\xe2\x80\x8d\xe3\x80\x82\xcd\x86\xf2\x81\xb3\x8a\xf0\x9d\x85\xb6\xd8\x84"); } // [B1, B5, B6, C2, V6, V7]15836test { try toUnicodeFail("\xe3\x83\xab\xe3\x83\xbc\xe3\x83\x96\xe3\x83\xab\xe0\xa3\xa6\xdd\xbc\xe2\x80\x8d\xe3\x80\x82\xcd\x86\xf2\x81\xb3\x8a\xf0\x9d\x85\xb6\xd8\x84"); } // [B1, B5, B6, C2, V6, V7]
15837test { try toAsciiFail("\xe3\x83\xab\xe3\x83\xbc\xe3\x83\x96\xe3\x83\xab\xe0\xa3\xa6\xdd\xbc\xe2\x80\x8d\xe3\x80\x82\xcd\x86\xf2\x81\xb3\x8a\xf0\x9d\x85\xb6\xd8\x84", false); } // [B1, B5, B6, C2, V6, V7]
15838test { try toAsciiFail("\xe3\x83\xab\xe3\x83\xbc\xe3\x83\x96\xe3\x83\xab\xe0\xa3\xa6\xdd\xbc\xe2\x80\x8d\xe3\x80\x82\xcd\x86\xf2\x81\xb3\x8a\xf0\x9d\x85\xb6\xd8\x84", true); } // [B1, B5, B6, V6, V7]
6381test { try toUnicodeFail("\xe3\x83\xab\xe3\x83\xbc\xe3\x83\x95\xe3\x82\x99\xe3\x83\xab\xe0\xa3\xa6\xdd\xbc\xe2\x80\x8d\xe3\x80\x82\xcd\x86\xf2\x81\xb3\x8a\xf0\x9d\x85\xb6\xd8\x84"); } // [B1, B5, B6, C2, V6, V7]15839test { try toUnicodeFail("\xe3\x83\xab\xe3\x83\xbc\xe3\x83\x95\xe3\x82\x99\xe3\x83\xab\xe0\xa3\xa6\xdd\xbc\xe2\x80\x8d\xe3\x80\x82\xcd\x86\xf2\x81\xb3\x8a\xf0\x9d\x85\xb6\xd8\x84"); } // [B1, B5, B6, C2, V6, V7]
15840test { try toAsciiFail("\xe3\x83\xab\xe3\x83\xbc\xe3\x83\x95\xe3\x82\x99\xe3\x83\xab\xe0\xa3\xa6\xdd\xbc\xe2\x80\x8d\xe3\x80\x82\xcd\x86\xf2\x81\xb3\x8a\xf0\x9d\x85\xb6\xd8\x84", false); } // [B1, B5, B6, C2, V6, V7]
15841test { try toAsciiFail("\xe3\x83\xab\xe3\x83\xbc\xe3\x83\x95\xe3\x82\x99\xe3\x83\xab\xe0\xa3\xa6\xdd\xbc\xe2\x80\x8d\xe3\x80\x82\xcd\x86\xf2\x81\xb3\x8a\xf0\x9d\x85\xb6\xd8\x84", true); } // [B1, B5, B6, V6, V7]
6382test { try toUnicodeFail("xn--dqb73el09fncab4h.xn--kua81lx7141a"); } // [B1, B5, B6, V6, V7]15842test { try toUnicodeFail("xn--dqb73el09fncab4h.xn--kua81lx7141a"); } // [B1, B5, B6, V6, V7]
15843test { try toAsciiFail("xn--dqb73el09fncab4h.xn--kua81lx7141a", false); } // [B1, B5, B6, V6, V7]
15844test { try toAsciiFail("xn--dqb73el09fncab4h.xn--kua81lx7141a", true); } // [B1, B5, B6, V6, V7]
6383test { try toUnicodeFail("xn--dqb73ec22c9kp8cb1j.xn--kua81lx7141a"); } // [B1, B5, B6, C2, V6, V7]15845test { try toUnicodeFail("xn--dqb73ec22c9kp8cb1j.xn--kua81lx7141a"); } // [B1, B5, B6, C2, V6, V7]
15846test { try toAsciiFail("xn--dqb73ec22c9kp8cb1j.xn--kua81lx7141a", false); } // [B1, B5, B6, C2, V6, V7]
15847test { try toAsciiFail("xn--dqb73ec22c9kp8cb1j.xn--kua81lx7141a", true); } // [B1, B5, B6, C2, V6, V7]
6384test { try toUnicodeFail("xn--dqb73el09fncab4h.xn--kua81ls548d3608b"); } // [B1, B5, B6, V6, V7]15848test { try toUnicodeFail("xn--dqb73el09fncab4h.xn--kua81ls548d3608b"); } // [B1, B5, B6, V6, V7]
15849test { try toAsciiFail("xn--dqb73el09fncab4h.xn--kua81ls548d3608b", false); } // [B1, B5, B6, V6, V7]
15850test { try toAsciiFail("xn--dqb73el09fncab4h.xn--kua81ls548d3608b", true); } // [B1, B5, B6, V6, V7]
6385test { try toUnicodeFail("xn--dqb73ec22c9kp8cb1j.xn--kua81ls548d3608b"); } // [B1, B5, B6, C2, V6, V7]15851test { try toUnicodeFail("xn--dqb73ec22c9kp8cb1j.xn--kua81ls548d3608b"); } // [B1, B5, B6, C2, V6, V7]
15852test { try toAsciiFail("xn--dqb73ec22c9kp8cb1j.xn--kua81ls548d3608b", false); } // [B1, B5, B6, C2, V6, V7]
15853test { try toAsciiFail("xn--dqb73ec22c9kp8cb1j.xn--kua81ls548d3608b", true); } // [B1, B5, B6, C2, V6, V7]
6386test { try toUnicodeFail("\xe2\x80\x8d.F"); } // [C2]15854test { try toUnicodeFail("\xe2\x80\x8d.F"); } // [C2]
15855test { try toAsciiFail("\xe2\x80\x8d.F", false); } // [C2]
15856test { try toAsciiFail("\xe2\x80\x8d.F", true); } // [A4_2]
6387test { try toUnicodeFail("\xe2\x80\x8d.f"); } // [C2]15857test { try toUnicodeFail("\xe2\x80\x8d.f"); } // [C2]
15858test { try toAsciiFail("\xe2\x80\x8d.f", false); } // [C2]
15859test { try toAsciiFail("\xe2\x80\x8d.f", true); } // [A4_2]
6388test { try toUnicodeFail(".f"); } // [X4_2]15860test { try toUnicodeFail(".f"); } // [X4_2]
15861test { try toAsciiFail(".f", false); } // [A4_2]
15862test { try toAsciiFail(".f", true); } // [A4_2]
6389test { try toUnicodeFail("xn--1ug.f"); } // [C2]15863test { try toUnicodeFail("xn--1ug.f"); } // [C2]
15864test { try toAsciiFail("xn--1ug.f", false); } // [C2]
15865test { try toAsciiFail("xn--1ug.f", true); } // [C2]
6390test { try toUnicodePass("f", "f"); }15866test { try toUnicodePass("f", "f"); }
6391test { try toAsciiPass("f", "f", false); }15867test { try toAsciiPass("f", "f", false); }
6392test { try toAsciiPass("f", "f", true); }15868test { try toAsciiPass("f", "f", true); }
6393test { try toAsciiPass("\xe2\x80\x8d\xe3\xa8\xb2\xef\xbd\xa1\xc3\x9f", "xn--9bm.ss", true); }15869test { try toAsciiPass("\xe2\x80\x8d\xe3\xa8\xb2\xef\xbd\xa1\xc3\x9f", "xn--9bm.ss", true); }
6394test { try toUnicodeFail("\xe2\x80\x8d\xe3\xa8\xb2\xef\xbd\xa1\xc3\x9f"); } // [C2]15870test { try toUnicodeFail("\xe2\x80\x8d\xe3\xa8\xb2\xef\xbd\xa1\xc3\x9f"); } // [C2]
15871test { try toAsciiFail("\xe2\x80\x8d\xe3\xa8\xb2\xef\xbd\xa1\xc3\x9f", false); } // [C2]
6395test { try toAsciiPass("\xe2\x80\x8d\xe3\xa8\xb2\xe3\x80\x82\xc3\x9f", "xn--9bm.ss", true); }15872test { try toAsciiPass("\xe2\x80\x8d\xe3\xa8\xb2\xe3\x80\x82\xc3\x9f", "xn--9bm.ss", true); }
6396test { try toUnicodeFail("\xe2\x80\x8d\xe3\xa8\xb2\xe3\x80\x82\xc3\x9f"); } // [C2]15873test { try toUnicodeFail("\xe2\x80\x8d\xe3\xa8\xb2\xe3\x80\x82\xc3\x9f"); } // [C2]
15874test { try toAsciiFail("\xe2\x80\x8d\xe3\xa8\xb2\xe3\x80\x82\xc3\x9f", false); } // [C2]
6397test { try toAsciiPass("\xe2\x80\x8d\xe3\xa8\xb2\xe3\x80\x82SS", "xn--9bm.ss", true); }15875test { try toAsciiPass("\xe2\x80\x8d\xe3\xa8\xb2\xe3\x80\x82SS", "xn--9bm.ss", true); }
6398test { try toUnicodeFail("\xe2\x80\x8d\xe3\xa8\xb2\xe3\x80\x82SS"); } // [C2]15876test { try toUnicodeFail("\xe2\x80\x8d\xe3\xa8\xb2\xe3\x80\x82SS"); } // [C2]
15877test { try toAsciiFail("\xe2\x80\x8d\xe3\xa8\xb2\xe3\x80\x82SS", false); } // [C2]
6399test { try toAsciiPass("\xe2\x80\x8d\xe3\xa8\xb2\xe3\x80\x82ss", "xn--9bm.ss", true); }15878test { try toAsciiPass("\xe2\x80\x8d\xe3\xa8\xb2\xe3\x80\x82ss", "xn--9bm.ss", true); }
6400test { try toUnicodeFail("\xe2\x80\x8d\xe3\xa8\xb2\xe3\x80\x82ss"); } // [C2]15879test { try toUnicodeFail("\xe2\x80\x8d\xe3\xa8\xb2\xe3\x80\x82ss"); } // [C2]
15880test { try toAsciiFail("\xe2\x80\x8d\xe3\xa8\xb2\xe3\x80\x82ss", false); } // [C2]
6401test { try toAsciiPass("\xe2\x80\x8d\xe3\xa8\xb2\xe3\x80\x82Ss", "xn--9bm.ss", true); }15881test { try toAsciiPass("\xe2\x80\x8d\xe3\xa8\xb2\xe3\x80\x82Ss", "xn--9bm.ss", true); }
6402test { try toUnicodeFail("\xe2\x80\x8d\xe3\xa8\xb2\xe3\x80\x82Ss"); } // [C2]15882test { try toUnicodeFail("\xe2\x80\x8d\xe3\xa8\xb2\xe3\x80\x82Ss"); } // [C2]
15883test { try toAsciiFail("\xe2\x80\x8d\xe3\xa8\xb2\xe3\x80\x82Ss", false); } // [C2]
6403test { try toUnicodePass("xn--9bm.ss", "\xe3\xa8\xb2.ss"); }15884test { try toUnicodePass("xn--9bm.ss", "\xe3\xa8\xb2.ss"); }
6404test { try toAsciiPass("xn--9bm.ss", "xn--9bm.ss", false); }15885test { try toAsciiPass("xn--9bm.ss", "xn--9bm.ss", false); }
6405test { try toAsciiPass("xn--9bm.ss", "xn--9bm.ss", true); }15886test { try toAsciiPass("xn--9bm.ss", "xn--9bm.ss", true); }
...@@ -6413,84 +15894,233 @@ test { try toUnicodePass("\xe3\xa8\xb2.Ss", "\xe3\xa8\xb2.ss"); }...@@ -6413,84 +15894,233 @@ test { try toUnicodePass("\xe3\xa8\xb2.Ss", "\xe3\xa8\xb2.ss"); }
6413test { try toAsciiPass("\xe3\xa8\xb2.Ss", "xn--9bm.ss", false); }15894test { try toAsciiPass("\xe3\xa8\xb2.Ss", "xn--9bm.ss", false); }
6414test { try toAsciiPass("\xe3\xa8\xb2.Ss", "xn--9bm.ss", true); }15895test { try toAsciiPass("\xe3\xa8\xb2.Ss", "xn--9bm.ss", true); }
6415test { try toUnicodeFail("xn--1ug914h.ss"); } // [C2]15896test { try toUnicodeFail("xn--1ug914h.ss"); } // [C2]
15897test { try toAsciiFail("xn--1ug914h.ss", false); } // [C2]
15898test { try toAsciiFail("xn--1ug914h.ss", true); } // [C2]
6416test { try toUnicodeFail("xn--1ug914h.xn--zca"); } // [C2]15899test { try toUnicodeFail("xn--1ug914h.xn--zca"); } // [C2]
15900test { try toAsciiFail("xn--1ug914h.xn--zca", false); } // [C2]
15901test { try toAsciiFail("xn--1ug914h.xn--zca", true); } // [C2]
6417test { try toAsciiPass("\xe2\x80\x8d\xe3\xa8\xb2\xef\xbd\xa1SS", "xn--9bm.ss", true); }15902test { try toAsciiPass("\xe2\x80\x8d\xe3\xa8\xb2\xef\xbd\xa1SS", "xn--9bm.ss", true); }
6418test { try toUnicodeFail("\xe2\x80\x8d\xe3\xa8\xb2\xef\xbd\xa1SS"); } // [C2]15903test { try toUnicodeFail("\xe2\x80\x8d\xe3\xa8\xb2\xef\xbd\xa1SS"); } // [C2]
15904test { try toAsciiFail("\xe2\x80\x8d\xe3\xa8\xb2\xef\xbd\xa1SS", false); } // [C2]
6419test { try toAsciiPass("\xe2\x80\x8d\xe3\xa8\xb2\xef\xbd\xa1ss", "xn--9bm.ss", true); }15905test { try toAsciiPass("\xe2\x80\x8d\xe3\xa8\xb2\xef\xbd\xa1ss", "xn--9bm.ss", true); }
6420test { try toUnicodeFail("\xe2\x80\x8d\xe3\xa8\xb2\xef\xbd\xa1ss"); } // [C2]15906test { try toUnicodeFail("\xe2\x80\x8d\xe3\xa8\xb2\xef\xbd\xa1ss"); } // [C2]
15907test { try toAsciiFail("\xe2\x80\x8d\xe3\xa8\xb2\xef\xbd\xa1ss", false); } // [C2]
6421test { try toAsciiPass("\xe2\x80\x8d\xe3\xa8\xb2\xef\xbd\xa1Ss", "xn--9bm.ss", true); }15908test { try toAsciiPass("\xe2\x80\x8d\xe3\xa8\xb2\xef\xbd\xa1Ss", "xn--9bm.ss", true); }
6422test { try toUnicodeFail("\xe2\x80\x8d\xe3\xa8\xb2\xef\xbd\xa1Ss"); } // [C2]15909test { try toUnicodeFail("\xe2\x80\x8d\xe3\xa8\xb2\xef\xbd\xa1Ss"); } // [C2]
15910test { try toAsciiFail("\xe2\x80\x8d\xe3\xa8\xb2\xef\xbd\xa1Ss", false); } // [C2]
6423test { try toUnicodeFail("\xd8\x85\xd9\xbe\xef\xbd\xa1\xe0\xa2\xa8"); } // [B1, V7]15911test { try toUnicodeFail("\xd8\x85\xd9\xbe\xef\xbd\xa1\xe0\xa2\xa8"); } // [B1, V7]
15912test { try toAsciiFail("\xd8\x85\xd9\xbe\xef\xbd\xa1\xe0\xa2\xa8", false); } // [B1, V7]
15913test { try toAsciiFail("\xd8\x85\xd9\xbe\xef\xbd\xa1\xe0\xa2\xa8", true); } // [B1, V7]
6424test { try toUnicodeFail("\xd8\x85\xd9\xbe\xe3\x80\x82\xe0\xa2\xa8"); } // [B1, V7]15914test { try toUnicodeFail("\xd8\x85\xd9\xbe\xe3\x80\x82\xe0\xa2\xa8"); } // [B1, V7]
15915test { try toAsciiFail("\xd8\x85\xd9\xbe\xe3\x80\x82\xe0\xa2\xa8", false); } // [B1, V7]
15916test { try toAsciiFail("\xd8\x85\xd9\xbe\xe3\x80\x82\xe0\xa2\xa8", true); } // [B1, V7]
6425test { try toUnicodeFail("xn--nfb6v.xn--xyb"); } // [B1, V7]15917test { try toUnicodeFail("xn--nfb6v.xn--xyb"); } // [B1, V7]
15918test { try toAsciiFail("xn--nfb6v.xn--xyb", false); } // [B1, V7]
15919test { try toAsciiFail("xn--nfb6v.xn--xyb", true); } // [B1, V7]
6426test { try toUnicodeFail("\xe2\xbe\x91\xdd\x93\xf0\x9e\xa4\x81\xe3\x80\x82\xf0\x90\xb9\xb5\xda\x82"); } // [B1, B5, B6]15920test { try toUnicodeFail("\xe2\xbe\x91\xdd\x93\xf0\x9e\xa4\x81\xe3\x80\x82\xf0\x90\xb9\xb5\xda\x82"); } // [B1, B5, B6]
15921test { try toAsciiFail("\xe2\xbe\x91\xdd\x93\xf0\x9e\xa4\x81\xe3\x80\x82\xf0\x90\xb9\xb5\xda\x82", false); } // [B1, B5, B6]
15922test { try toAsciiFail("\xe2\xbe\x91\xdd\x93\xf0\x9e\xa4\x81\xe3\x80\x82\xf0\x90\xb9\xb5\xda\x82", true); } // [B1, B5, B6]
6427test { try toUnicodeFail("\xe8\xa5\xbe\xdd\x93\xf0\x9e\xa4\x81\xe3\x80\x82\xf0\x90\xb9\xb5\xda\x82"); } // [B1, B5, B6]15923test { try toUnicodeFail("\xe8\xa5\xbe\xdd\x93\xf0\x9e\xa4\x81\xe3\x80\x82\xf0\x90\xb9\xb5\xda\x82"); } // [B1, B5, B6]
15924test { try toAsciiFail("\xe8\xa5\xbe\xdd\x93\xf0\x9e\xa4\x81\xe3\x80\x82\xf0\x90\xb9\xb5\xda\x82", false); } // [B1, B5, B6]
15925test { try toAsciiFail("\xe8\xa5\xbe\xdd\x93\xf0\x9e\xa4\x81\xe3\x80\x82\xf0\x90\xb9\xb5\xda\x82", true); } // [B1, B5, B6]
6428test { try toUnicodeFail("\xe8\xa5\xbe\xdd\x93\xf0\x9e\xa4\xa3\xe3\x80\x82\xf0\x90\xb9\xb5\xda\x82"); } // [B1, B5, B6]15926test { try toUnicodeFail("\xe8\xa5\xbe\xdd\x93\xf0\x9e\xa4\xa3\xe3\x80\x82\xf0\x90\xb9\xb5\xda\x82"); } // [B1, B5, B6]
15927test { try toAsciiFail("\xe8\xa5\xbe\xdd\x93\xf0\x9e\xa4\xa3\xe3\x80\x82\xf0\x90\xb9\xb5\xda\x82", false); } // [B1, B5, B6]
15928test { try toAsciiFail("\xe8\xa5\xbe\xdd\x93\xf0\x9e\xa4\xa3\xe3\x80\x82\xf0\x90\xb9\xb5\xda\x82", true); } // [B1, B5, B6]
6429test { try toUnicodeFail("xn--6ob9577deqwl.xn--7ib5526k"); } // [B1, B5, B6]15929test { try toUnicodeFail("xn--6ob9577deqwl.xn--7ib5526k"); } // [B1, B5, B6]
15930test { try toAsciiFail("xn--6ob9577deqwl.xn--7ib5526k", false); } // [B1, B5, B6]
15931test { try toAsciiFail("xn--6ob9577deqwl.xn--7ib5526k", true); } // [B1, B5, B6]
6430test { try toUnicodeFail("\xe2\xbe\x91\xdd\x93\xf0\x9e\xa4\xa3\xe3\x80\x82\xf0\x90\xb9\xb5\xda\x82"); } // [B1, B5, B6]15932test { try toUnicodeFail("\xe2\xbe\x91\xdd\x93\xf0\x9e\xa4\xa3\xe3\x80\x82\xf0\x90\xb9\xb5\xda\x82"); } // [B1, B5, B6]
15933test { try toAsciiFail("\xe2\xbe\x91\xdd\x93\xf0\x9e\xa4\xa3\xe3\x80\x82\xf0\x90\xb9\xb5\xda\x82", false); } // [B1, B5, B6]
15934test { try toAsciiFail("\xe2\xbe\x91\xdd\x93\xf0\x9e\xa4\xa3\xe3\x80\x82\xf0\x90\xb9\xb5\xda\x82", true); } // [B1, B5, B6]
6431test { try toUnicodeFail("\xf1\xa6\xb4\xbb\xcf\x82-\xe2\x83\xab\xef\xbd\xa1\xdd\x94-\xea\xa1\x9b"); } // [B2, B3, B6, V7]15935test { try toUnicodeFail("\xf1\xa6\xb4\xbb\xcf\x82-\xe2\x83\xab\xef\xbd\xa1\xdd\x94-\xea\xa1\x9b"); } // [B2, B3, B6, V7]
15936test { try toAsciiFail("\xf1\xa6\xb4\xbb\xcf\x82-\xe2\x83\xab\xef\xbd\xa1\xdd\x94-\xea\xa1\x9b", false); } // [B2, B3, B6, V7]
15937test { try toAsciiFail("\xf1\xa6\xb4\xbb\xcf\x82-\xe2\x83\xab\xef\xbd\xa1\xdd\x94-\xea\xa1\x9b", true); } // [B2, B3, B6, V7]
6432test { try toUnicodeFail("\xf1\xa6\xb4\xbb\xcf\x82-\xe2\x83\xab\xe3\x80\x82\xdd\x94-\xea\xa1\x9b"); } // [B2, B3, B6, V7]15938test { try toUnicodeFail("\xf1\xa6\xb4\xbb\xcf\x82-\xe2\x83\xab\xe3\x80\x82\xdd\x94-\xea\xa1\x9b"); } // [B2, B3, B6, V7]
15939test { try toAsciiFail("\xf1\xa6\xb4\xbb\xcf\x82-\xe2\x83\xab\xe3\x80\x82\xdd\x94-\xea\xa1\x9b", false); } // [B2, B3, B6, V7]
15940test { try toAsciiFail("\xf1\xa6\xb4\xbb\xcf\x82-\xe2\x83\xab\xe3\x80\x82\xdd\x94-\xea\xa1\x9b", true); } // [B2, B3, B6, V7]
6433test { try toUnicodeFail("\xf1\xa6\xb4\xbb\xce\xa3-\xe2\x83\xab\xe3\x80\x82\xdd\x94-\xea\xa1\x9b"); } // [B2, B3, B6, V7]15941test { try toUnicodeFail("\xf1\xa6\xb4\xbb\xce\xa3-\xe2\x83\xab\xe3\x80\x82\xdd\x94-\xea\xa1\x9b"); } // [B2, B3, B6, V7]
15942test { try toAsciiFail("\xf1\xa6\xb4\xbb\xce\xa3-\xe2\x83\xab\xe3\x80\x82\xdd\x94-\xea\xa1\x9b", false); } // [B2, B3, B6, V7]
15943test { try toAsciiFail("\xf1\xa6\xb4\xbb\xce\xa3-\xe2\x83\xab\xe3\x80\x82\xdd\x94-\xea\xa1\x9b", true); } // [B2, B3, B6, V7]
6434test { try toUnicodeFail("\xf1\xa6\xb4\xbb\xcf\x83-\xe2\x83\xab\xe3\x80\x82\xdd\x94-\xea\xa1\x9b"); } // [B2, B3, B6, V7]15944test { try toUnicodeFail("\xf1\xa6\xb4\xbb\xcf\x83-\xe2\x83\xab\xe3\x80\x82\xdd\x94-\xea\xa1\x9b"); } // [B2, B3, B6, V7]
15945test { try toAsciiFail("\xf1\xa6\xb4\xbb\xcf\x83-\xe2\x83\xab\xe3\x80\x82\xdd\x94-\xea\xa1\x9b", false); } // [B2, B3, B6, V7]
15946test { try toAsciiFail("\xf1\xa6\xb4\xbb\xcf\x83-\xe2\x83\xab\xe3\x80\x82\xdd\x94-\xea\xa1\x9b", true); } // [B2, B3, B6, V7]
6435test { try toUnicodeFail("xn----zmb705tuo34l.xn----53c4874j"); } // [B2, B3, B6, V7]15947test { try toUnicodeFail("xn----zmb705tuo34l.xn----53c4874j"); } // [B2, B3, B6, V7]
15948test { try toAsciiFail("xn----zmb705tuo34l.xn----53c4874j", false); } // [B2, B3, B6, V7]
15949test { try toAsciiFail("xn----zmb705tuo34l.xn----53c4874j", true); } // [B2, B3, B6, V7]
6436test { try toUnicodeFail("xn----xmb015tuo34l.xn----53c4874j"); } // [B2, B3, B6, V7]15950test { try toUnicodeFail("xn----xmb015tuo34l.xn----53c4874j"); } // [B2, B3, B6, V7]
15951test { try toAsciiFail("xn----xmb015tuo34l.xn----53c4874j", false); } // [B2, B3, B6, V7]
15952test { try toAsciiFail("xn----xmb015tuo34l.xn----53c4874j", true); } // [B2, B3, B6, V7]
6437test { try toUnicodeFail("\xf1\xa6\xb4\xbb\xce\xa3-\xe2\x83\xab\xef\xbd\xa1\xdd\x94-\xea\xa1\x9b"); } // [B2, B3, B6, V7]15953test { try toUnicodeFail("\xf1\xa6\xb4\xbb\xce\xa3-\xe2\x83\xab\xef\xbd\xa1\xdd\x94-\xea\xa1\x9b"); } // [B2, B3, B6, V7]
15954test { try toAsciiFail("\xf1\xa6\xb4\xbb\xce\xa3-\xe2\x83\xab\xef\xbd\xa1\xdd\x94-\xea\xa1\x9b", false); } // [B2, B3, B6, V7]
15955test { try toAsciiFail("\xf1\xa6\xb4\xbb\xce\xa3-\xe2\x83\xab\xef\xbd\xa1\xdd\x94-\xea\xa1\x9b", true); } // [B2, B3, B6, V7]
6438test { try toUnicodeFail("\xf1\xa6\xb4\xbb\xcf\x83-\xe2\x83\xab\xef\xbd\xa1\xdd\x94-\xea\xa1\x9b"); } // [B2, B3, B6, V7]15956test { try toUnicodeFail("\xf1\xa6\xb4\xbb\xcf\x83-\xe2\x83\xab\xef\xbd\xa1\xdd\x94-\xea\xa1\x9b"); } // [B2, B3, B6, V7]
15957test { try toAsciiFail("\xf1\xa6\xb4\xbb\xcf\x83-\xe2\x83\xab\xef\xbd\xa1\xdd\x94-\xea\xa1\x9b", false); } // [B2, B3, B6, V7]
15958test { try toAsciiFail("\xf1\xa6\xb4\xbb\xcf\x83-\xe2\x83\xab\xef\xbd\xa1\xdd\x94-\xea\xa1\x9b", true); } // [B2, B3, B6, V7]
6439test { try toUnicodeFail("\xe2\x80\x8d\xef\xbc\x8e\xf4\x80\xb8\xa8"); } // [C2, V7]15959test { try toUnicodeFail("\xe2\x80\x8d\xef\xbc\x8e\xf4\x80\xb8\xa8"); } // [C2, V7]
15960test { try toAsciiFail("\xe2\x80\x8d\xef\xbc\x8e\xf4\x80\xb8\xa8", false); } // [C2, V7]
15961test { try toAsciiFail("\xe2\x80\x8d\xef\xbc\x8e\xf4\x80\xb8\xa8", true); } // [V7, A4_2]
6440test { try toUnicodeFail("\xe2\x80\x8d.\xf4\x80\xb8\xa8"); } // [C2, V7]15962test { try toUnicodeFail("\xe2\x80\x8d.\xf4\x80\xb8\xa8"); } // [C2, V7]
15963test { try toAsciiFail("\xe2\x80\x8d.\xf4\x80\xb8\xa8", false); } // [C2, V7]
15964test { try toAsciiFail("\xe2\x80\x8d.\xf4\x80\xb8\xa8", true); } // [V7, A4_2]
6441test { try toUnicodeFail(".xn--h327f"); } // [V7, X4_2]15965test { try toUnicodeFail(".xn--h327f"); } // [V7, X4_2]
15966test { try toAsciiFail(".xn--h327f", false); } // [V7, A4_2]
15967test { try toAsciiFail(".xn--h327f", true); } // [V7, A4_2]
6442test { try toUnicodeFail("xn--1ug.xn--h327f"); } // [C2, V7]15968test { try toUnicodeFail("xn--1ug.xn--h327f"); } // [C2, V7]
15969test { try toAsciiFail("xn--1ug.xn--h327f", false); } // [C2, V7]
15970test { try toAsciiFail("xn--1ug.xn--h327f", true); } // [C2, V7]
6443test { try toUnicodeFail("\xf1\xa3\xad\xbb\xf1\x8c\xa5\x81\xef\xbd\xa1\xe2\x89\xa0\xf0\x9d\x9f\xb2"); } // [V7]15971test { try toUnicodeFail("\xf1\xa3\xad\xbb\xf1\x8c\xa5\x81\xef\xbd\xa1\xe2\x89\xa0\xf0\x9d\x9f\xb2"); } // [V7]
15972test { try toAsciiFail("\xf1\xa3\xad\xbb\xf1\x8c\xa5\x81\xef\xbd\xa1\xe2\x89\xa0\xf0\x9d\x9f\xb2", false); } // [V7]
15973test { try toAsciiFail("\xf1\xa3\xad\xbb\xf1\x8c\xa5\x81\xef\xbd\xa1\xe2\x89\xa0\xf0\x9d\x9f\xb2", true); } // [V7]
6444test { try toUnicodeFail("\xf1\xa3\xad\xbb\xf1\x8c\xa5\x81\xef\xbd\xa1=\xcc\xb8\xf0\x9d\x9f\xb2"); } // [V7]15974test { try toUnicodeFail("\xf1\xa3\xad\xbb\xf1\x8c\xa5\x81\xef\xbd\xa1=\xcc\xb8\xf0\x9d\x9f\xb2"); } // [V7]
15975test { try toAsciiFail("\xf1\xa3\xad\xbb\xf1\x8c\xa5\x81\xef\xbd\xa1=\xcc\xb8\xf0\x9d\x9f\xb2", false); } // [V7]
15976test { try toAsciiFail("\xf1\xa3\xad\xbb\xf1\x8c\xa5\x81\xef\xbd\xa1=\xcc\xb8\xf0\x9d\x9f\xb2", true); } // [V7]
6445test { try toUnicodeFail("\xf1\xa3\xad\xbb\xf1\x8c\xa5\x81\xe3\x80\x82\xe2\x89\xa06"); } // [V7]15977test { try toUnicodeFail("\xf1\xa3\xad\xbb\xf1\x8c\xa5\x81\xe3\x80\x82\xe2\x89\xa06"); } // [V7]
15978test { try toAsciiFail("\xf1\xa3\xad\xbb\xf1\x8c\xa5\x81\xe3\x80\x82\xe2\x89\xa06", false); } // [V7]
15979test { try toAsciiFail("\xf1\xa3\xad\xbb\xf1\x8c\xa5\x81\xe3\x80\x82\xe2\x89\xa06", true); } // [V7]
6446test { try toUnicodeFail("\xf1\xa3\xad\xbb\xf1\x8c\xa5\x81\xe3\x80\x82=\xcc\xb86"); } // [V7]15980test { try toUnicodeFail("\xf1\xa3\xad\xbb\xf1\x8c\xa5\x81\xe3\x80\x82=\xcc\xb86"); } // [V7]
15981test { try toAsciiFail("\xf1\xa3\xad\xbb\xf1\x8c\xa5\x81\xe3\x80\x82=\xcc\xb86", false); } // [V7]
15982test { try toAsciiFail("\xf1\xa3\xad\xbb\xf1\x8c\xa5\x81\xe3\x80\x82=\xcc\xb86", true); } // [V7]
6447test { try toUnicodeFail("xn--h79w4z99a.xn--6-tfo"); } // [V7]15983test { try toUnicodeFail("xn--h79w4z99a.xn--6-tfo"); } // [V7]
15984test { try toAsciiFail("xn--h79w4z99a.xn--6-tfo", false); } // [V7]
15985test { try toAsciiFail("xn--h79w4z99a.xn--6-tfo", true); } // [V7]
6448test { try toUnicodeFail("\xf3\xa0\x85\x8a\xe1\xa1\xad\xe2\x80\x8d.\xf0\x90\xa5\xa1"); } // [B6, C2, V7]15986test { try toUnicodeFail("\xf3\xa0\x85\x8a\xe1\xa1\xad\xe2\x80\x8d.\xf0\x90\xa5\xa1"); } // [B6, C2, V7]
15987test { try toAsciiFail("\xf3\xa0\x85\x8a\xe1\xa1\xad\xe2\x80\x8d.\xf0\x90\xa5\xa1", false); } // [B6, C2, V7]
15988test { try toAsciiFail("\xf3\xa0\x85\x8a\xe1\xa1\xad\xe2\x80\x8d.\xf0\x90\xa5\xa1", true); } // [V7]
6449test { try toUnicodeFail("xn--98e.xn--om9c"); } // [V7]15989test { try toUnicodeFail("xn--98e.xn--om9c"); } // [V7]
15990test { try toAsciiFail("xn--98e.xn--om9c", false); } // [V7]
15991test { try toAsciiFail("xn--98e.xn--om9c", true); } // [V7]
6450test { try toUnicodeFail("xn--98e810b.xn--om9c"); } // [B6, C2, V7]15992test { try toUnicodeFail("xn--98e810b.xn--om9c"); } // [B6, C2, V7]
15993test { try toAsciiFail("xn--98e810b.xn--om9c", false); } // [B6, C2, V7]
15994test { try toAsciiFail("xn--98e810b.xn--om9c", true); } // [B6, C2, V7]
6451test { try toUnicodeFail("\xe0\xb1\x80\xe0\xa1\x95\xf0\x90\xa5\x9b\xf0\x91\x84\xb4\xef\xbc\x8e\xf3\xad\xb0\xb5"); } // [B1, V6, V7]15995test { try toUnicodeFail("\xe0\xb1\x80\xe0\xa1\x95\xf0\x90\xa5\x9b\xf0\x91\x84\xb4\xef\xbc\x8e\xf3\xad\xb0\xb5"); } // [B1, V6, V7]
15996test { try toAsciiFail("\xe0\xb1\x80\xe0\xa1\x95\xf0\x90\xa5\x9b\xf0\x91\x84\xb4\xef\xbc\x8e\xf3\xad\xb0\xb5", false); } // [B1, V6, V7]
15997test { try toAsciiFail("\xe0\xb1\x80\xe0\xa1\x95\xf0\x90\xa5\x9b\xf0\x91\x84\xb4\xef\xbc\x8e\xf3\xad\xb0\xb5", true); } // [B1, V6, V7]
6452test { try toUnicodeFail("\xe0\xb1\x80\xe0\xa1\x95\xf0\x90\xa5\x9b\xf0\x91\x84\xb4.\xf3\xad\xb0\xb5"); } // [B1, V6, V7]15998test { try toUnicodeFail("\xe0\xb1\x80\xe0\xa1\x95\xf0\x90\xa5\x9b\xf0\x91\x84\xb4.\xf3\xad\xb0\xb5"); } // [B1, V6, V7]
15999test { try toAsciiFail("\xe0\xb1\x80\xe0\xa1\x95\xf0\x90\xa5\x9b\xf0\x91\x84\xb4.\xf3\xad\xb0\xb5", false); } // [B1, V6, V7]
16000test { try toAsciiFail("\xe0\xb1\x80\xe0\xa1\x95\xf0\x90\xa5\x9b\xf0\x91\x84\xb4.\xf3\xad\xb0\xb5", true); } // [B1, V6, V7]
6453test { try toUnicodeFail("xn--kwb91r5112avtg.xn--o580f"); } // [B1, V6, V7]16001test { try toUnicodeFail("xn--kwb91r5112avtg.xn--o580f"); } // [B1, V6, V7]
16002test { try toAsciiFail("xn--kwb91r5112avtg.xn--o580f", false); } // [B1, V6, V7]
16003test { try toAsciiFail("xn--kwb91r5112avtg.xn--o580f", true); } // [B1, V6, V7]
6454test { try toUnicodeFail("\xf0\x9e\xa4\xae\xe3\x80\x82\xf0\x91\x87\x8a\xe2\x80\x8c\xe2\x89\xaf\xe1\xb3\xa6"); } // [B1, C1, V6]16004test { try toUnicodeFail("\xf0\x9e\xa4\xae\xe3\x80\x82\xf0\x91\x87\x8a\xe2\x80\x8c\xe2\x89\xaf\xe1\xb3\xa6"); } // [B1, C1, V6]
16005test { try toAsciiFail("\xf0\x9e\xa4\xae\xe3\x80\x82\xf0\x91\x87\x8a\xe2\x80\x8c\xe2\x89\xaf\xe1\xb3\xa6", false); } // [B1, C1, V6]
16006test { try toAsciiFail("\xf0\x9e\xa4\xae\xe3\x80\x82\xf0\x91\x87\x8a\xe2\x80\x8c\xe2\x89\xaf\xe1\xb3\xa6", true); } // [B1, V6]
6455test { try toUnicodeFail("\xf0\x9e\xa4\xae\xe3\x80\x82\xf0\x91\x87\x8a\xe2\x80\x8c>\xcc\xb8\xe1\xb3\xa6"); } // [B1, C1, V6]16007test { try toUnicodeFail("\xf0\x9e\xa4\xae\xe3\x80\x82\xf0\x91\x87\x8a\xe2\x80\x8c>\xcc\xb8\xe1\xb3\xa6"); } // [B1, C1, V6]
16008test { try toAsciiFail("\xf0\x9e\xa4\xae\xe3\x80\x82\xf0\x91\x87\x8a\xe2\x80\x8c>\xcc\xb8\xe1\xb3\xa6", false); } // [B1, C1, V6]
16009test { try toAsciiFail("\xf0\x9e\xa4\xae\xe3\x80\x82\xf0\x91\x87\x8a\xe2\x80\x8c>\xcc\xb8\xe1\xb3\xa6", true); } // [B1, V6]
6456test { try toUnicodeFail("\xf0\x9e\xa4\x8c\xe3\x80\x82\xf0\x91\x87\x8a\xe2\x80\x8c>\xcc\xb8\xe1\xb3\xa6"); } // [B1, C1, V6]16010test { try toUnicodeFail("\xf0\x9e\xa4\x8c\xe3\x80\x82\xf0\x91\x87\x8a\xe2\x80\x8c>\xcc\xb8\xe1\xb3\xa6"); } // [B1, C1, V6]
16011test { try toAsciiFail("\xf0\x9e\xa4\x8c\xe3\x80\x82\xf0\x91\x87\x8a\xe2\x80\x8c>\xcc\xb8\xe1\xb3\xa6", false); } // [B1, C1, V6]
16012test { try toAsciiFail("\xf0\x9e\xa4\x8c\xe3\x80\x82\xf0\x91\x87\x8a\xe2\x80\x8c>\xcc\xb8\xe1\xb3\xa6", true); } // [B1, V6]
6457test { try toUnicodeFail("\xf0\x9e\xa4\x8c\xe3\x80\x82\xf0\x91\x87\x8a\xe2\x80\x8c\xe2\x89\xaf\xe1\xb3\xa6"); } // [B1, C1, V6]16013test { try toUnicodeFail("\xf0\x9e\xa4\x8c\xe3\x80\x82\xf0\x91\x87\x8a\xe2\x80\x8c\xe2\x89\xaf\xe1\xb3\xa6"); } // [B1, C1, V6]
16014test { try toAsciiFail("\xf0\x9e\xa4\x8c\xe3\x80\x82\xf0\x91\x87\x8a\xe2\x80\x8c\xe2\x89\xaf\xe1\xb3\xa6", false); } // [B1, C1, V6]
16015test { try toAsciiFail("\xf0\x9e\xa4\x8c\xe3\x80\x82\xf0\x91\x87\x8a\xe2\x80\x8c\xe2\x89\xaf\xe1\xb3\xa6", true); } // [B1, V6]
6458test { try toUnicodeFail("xn--me6h.xn--z6fz8ueq2v"); } // [B1, V6]16016test { try toUnicodeFail("xn--me6h.xn--z6fz8ueq2v"); } // [B1, V6]
16017test { try toAsciiFail("xn--me6h.xn--z6fz8ueq2v", false); } // [B1, V6]
16018test { try toAsciiFail("xn--me6h.xn--z6fz8ueq2v", true); } // [B1, V6]
6459test { try toUnicodeFail("xn--me6h.xn--z6f16kn9b2642b"); } // [B1, C1, V6]16019test { try toUnicodeFail("xn--me6h.xn--z6f16kn9b2642b"); } // [B1, C1, V6]
16020test { try toAsciiFail("xn--me6h.xn--z6f16kn9b2642b", false); } // [B1, C1, V6]
16021test { try toAsciiFail("xn--me6h.xn--z6f16kn9b2642b", true); } // [B1, C1, V6]
6460test { try toUnicodeFail("\xf3\xa0\x84\x80\xf0\x9d\x9f\x95.\xf0\x9e\xa4\x8c\xf1\x9b\x97\x93\xe1\x82\xa9"); } // [B1, B2, B3, V7]16022test { try toUnicodeFail("\xf3\xa0\x84\x80\xf0\x9d\x9f\x95.\xf0\x9e\xa4\x8c\xf1\x9b\x97\x93\xe1\x82\xa9"); } // [B1, B2, B3, V7]
16023test { try toAsciiFail("\xf3\xa0\x84\x80\xf0\x9d\x9f\x95.\xf0\x9e\xa4\x8c\xf1\x9b\x97\x93\xe1\x82\xa9", false); } // [B1, B2, B3, V7]
16024test { try toAsciiFail("\xf3\xa0\x84\x80\xf0\x9d\x9f\x95.\xf0\x9e\xa4\x8c\xf1\x9b\x97\x93\xe1\x82\xa9", true); } // [B1, B2, B3, V7]
6461test { try toUnicodeFail("\xf3\xa0\x84\x807.\xf0\x9e\xa4\x8c\xf1\x9b\x97\x93\xe1\x82\xa9"); } // [B1, B2, B3, V7]16025test { try toUnicodeFail("\xf3\xa0\x84\x807.\xf0\x9e\xa4\x8c\xf1\x9b\x97\x93\xe1\x82\xa9"); } // [B1, B2, B3, V7]
16026test { try toAsciiFail("\xf3\xa0\x84\x807.\xf0\x9e\xa4\x8c\xf1\x9b\x97\x93\xe1\x82\xa9", false); } // [B1, B2, B3, V7]
16027test { try toAsciiFail("\xf3\xa0\x84\x807.\xf0\x9e\xa4\x8c\xf1\x9b\x97\x93\xe1\x82\xa9", true); } // [B1, B2, B3, V7]
6462test { try toUnicodeFail("\xf3\xa0\x84\x807.\xf0\x9e\xa4\xae\xf1\x9b\x97\x93\xe2\xb4\x89"); } // [B1, B2, B3, V7]16028test { try toUnicodeFail("\xf3\xa0\x84\x807.\xf0\x9e\xa4\xae\xf1\x9b\x97\x93\xe2\xb4\x89"); } // [B1, B2, B3, V7]
16029test { try toAsciiFail("\xf3\xa0\x84\x807.\xf0\x9e\xa4\xae\xf1\x9b\x97\x93\xe2\xb4\x89", false); } // [B1, B2, B3, V7]
16030test { try toAsciiFail("\xf3\xa0\x84\x807.\xf0\x9e\xa4\xae\xf1\x9b\x97\x93\xe2\xb4\x89", true); } // [B1, B2, B3, V7]
6463test { try toUnicodeFail("7.xn--0kjz523lv1vv"); } // [B1, B2, B3, V7]16031test { try toUnicodeFail("7.xn--0kjz523lv1vv"); } // [B1, B2, B3, V7]
16032test { try toAsciiFail("7.xn--0kjz523lv1vv", false); } // [B1, B2, B3, V7]
16033test { try toAsciiFail("7.xn--0kjz523lv1vv", true); } // [B1, B2, B3, V7]
6464test { try toUnicodeFail("\xf3\xa0\x84\x80\xf0\x9d\x9f\x95.\xf0\x9e\xa4\xae\xf1\x9b\x97\x93\xe2\xb4\x89"); } // [B1, B2, B3, V7]16034test { try toUnicodeFail("\xf3\xa0\x84\x80\xf0\x9d\x9f\x95.\xf0\x9e\xa4\xae\xf1\x9b\x97\x93\xe2\xb4\x89"); } // [B1, B2, B3, V7]
16035test { try toAsciiFail("\xf3\xa0\x84\x80\xf0\x9d\x9f\x95.\xf0\x9e\xa4\xae\xf1\x9b\x97\x93\xe2\xb4\x89", false); } // [B1, B2, B3, V7]
16036test { try toAsciiFail("\xf3\xa0\x84\x80\xf0\x9d\x9f\x95.\xf0\x9e\xa4\xae\xf1\x9b\x97\x93\xe2\xb4\x89", true); } // [B1, B2, B3, V7]
6465test { try toUnicodeFail("7.xn--hnd3403vv1vv"); } // [B1, B2, B3, V7]16037test { try toUnicodeFail("7.xn--hnd3403vv1vv"); } // [B1, B2, B3, V7]
16038test { try toAsciiFail("7.xn--hnd3403vv1vv", false); } // [B1, B2, B3, V7]
16039test { try toAsciiFail("7.xn--hnd3403vv1vv", true); } // [B1, B2, B3, V7]
6466test { try toUnicodeFail("\xf3\xa0\x84\x807.\xf0\x9e\xa4\x8c\xf1\x9b\x97\x93\xe2\xb4\x89"); } // [B1, B2, B3, V7]16040test { try toUnicodeFail("\xf3\xa0\x84\x807.\xf0\x9e\xa4\x8c\xf1\x9b\x97\x93\xe2\xb4\x89"); } // [B1, B2, B3, V7]
16041test { try toAsciiFail("\xf3\xa0\x84\x807.\xf0\x9e\xa4\x8c\xf1\x9b\x97\x93\xe2\xb4\x89", false); } // [B1, B2, B3, V7]
16042test { try toAsciiFail("\xf3\xa0\x84\x807.\xf0\x9e\xa4\x8c\xf1\x9b\x97\x93\xe2\xb4\x89", true); } // [B1, B2, B3, V7]
6467test { try toUnicodeFail("\xf3\xa0\x84\x80\xf0\x9d\x9f\x95.\xf0\x9e\xa4\x8c\xf1\x9b\x97\x93\xe2\xb4\x89"); } // [B1, B2, B3, V7]16043test { try toUnicodeFail("\xf3\xa0\x84\x80\xf0\x9d\x9f\x95.\xf0\x9e\xa4\x8c\xf1\x9b\x97\x93\xe2\xb4\x89"); } // [B1, B2, B3, V7]
16044test { try toAsciiFail("\xf3\xa0\x84\x80\xf0\x9d\x9f\x95.\xf0\x9e\xa4\x8c\xf1\x9b\x97\x93\xe2\xb4\x89", false); } // [B1, B2, B3, V7]
16045test { try toAsciiFail("\xf3\xa0\x84\x80\xf0\x9d\x9f\x95.\xf0\x9e\xa4\x8c\xf1\x9b\x97\x93\xe2\xb4\x89", true); } // [B1, B2, B3, V7]
6468test { try toUnicodeFail("\xe9\x96\x839\xf0\x9d\xa9\x8d\xe3\x80\x82\xe2\x86\x83\xd9\xa9\xe0\xa2\xb1\xe0\xad\x8d"); } // [B5, B6]16046test { try toUnicodeFail("\xe9\x96\x839\xf0\x9d\xa9\x8d\xe3\x80\x82\xe2\x86\x83\xd9\xa9\xe0\xa2\xb1\xe0\xad\x8d"); } // [B5, B6]
16047test { try toAsciiFail("\xe9\x96\x839\xf0\x9d\xa9\x8d\xe3\x80\x82\xe2\x86\x83\xd9\xa9\xe0\xa2\xb1\xe0\xad\x8d", false); } // [B5, B6]
16048test { try toAsciiFail("\xe9\x96\x839\xf0\x9d\xa9\x8d\xe3\x80\x82\xe2\x86\x83\xd9\xa9\xe0\xa2\xb1\xe0\xad\x8d", true); } // [B5, B6]
6469test { try toUnicodeFail("\xe9\x96\x839\xf0\x9d\xa9\x8d\xe3\x80\x82\xe2\x86\x84\xd9\xa9\xe0\xa2\xb1\xe0\xad\x8d"); } // [B5, B6]16049test { try toUnicodeFail("\xe9\x96\x839\xf0\x9d\xa9\x8d\xe3\x80\x82\xe2\x86\x84\xd9\xa9\xe0\xa2\xb1\xe0\xad\x8d"); } // [B5, B6]
16050test { try toAsciiFail("\xe9\x96\x839\xf0\x9d\xa9\x8d\xe3\x80\x82\xe2\x86\x84\xd9\xa9\xe0\xa2\xb1\xe0\xad\x8d", false); } // [B5, B6]
16051test { try toAsciiFail("\xe9\x96\x839\xf0\x9d\xa9\x8d\xe3\x80\x82\xe2\x86\x84\xd9\xa9\xe0\xa2\xb1\xe0\xad\x8d", true); } // [B5, B6]
6470test { try toUnicodeFail("xn--9-3j6dk517f.xn--iib28ij3c4t9a"); } // [B5, B6]16052test { try toUnicodeFail("xn--9-3j6dk517f.xn--iib28ij3c4t9a"); } // [B5, B6]
16053test { try toAsciiFail("xn--9-3j6dk517f.xn--iib28ij3c4t9a", false); } // [B5, B6]
16054test { try toAsciiFail("xn--9-3j6dk517f.xn--iib28ij3c4t9a", true); } // [B5, B6]
6471test { try toUnicodeFail("xn--9-3j6dk517f.xn--iib28ij3c0t9a"); } // [B5, B6, V7]16055test { try toUnicodeFail("xn--9-3j6dk517f.xn--iib28ij3c0t9a"); } // [B5, B6, V7]
16056test { try toAsciiFail("xn--9-3j6dk517f.xn--iib28ij3c0t9a", false); } // [B5, B6, V7]
16057test { try toAsciiFail("xn--9-3j6dk517f.xn--iib28ij3c0t9a", true); } // [B5, B6, V7]
6472test { try toUnicodeFail("\xea\xab\xb6\xe1\xa2\x8f\xe0\xb8\xba\xef\xbc\x92.\xf0\x90\x8b\xa2\xdd\x85\xe0\xbe\x9f\xef\xb8\x92"); } // [V6, V7]16058test { try toUnicodeFail("\xea\xab\xb6\xe1\xa2\x8f\xe0\xb8\xba\xef\xbc\x92.\xf0\x90\x8b\xa2\xdd\x85\xe0\xbe\x9f\xef\xb8\x92"); } // [V6, V7]
16059test { try toAsciiFail("\xea\xab\xb6\xe1\xa2\x8f\xe0\xb8\xba\xef\xbc\x92.\xf0\x90\x8b\xa2\xdd\x85\xe0\xbe\x9f\xef\xb8\x92", false); } // [V6, V7]
16060test { try toAsciiFail("\xea\xab\xb6\xe1\xa2\x8f\xe0\xb8\xba\xef\xbc\x92.\xf0\x90\x8b\xa2\xdd\x85\xe0\xbe\x9f\xef\xb8\x92", true); } // [V6, V7]
6473test { try toUnicodeFail("\xea\xab\xb6\xe1\xa2\x8f\xe0\xb8\xba2.\xf0\x90\x8b\xa2\xdd\x85\xe0\xbe\x9f\xe3\x80\x82"); } // [V6]16061test { try toUnicodeFail("\xea\xab\xb6\xe1\xa2\x8f\xe0\xb8\xba2.\xf0\x90\x8b\xa2\xdd\x85\xe0\xbe\x9f\xe3\x80\x82"); } // [V6]
16062test { try toAsciiFail("\xea\xab\xb6\xe1\xa2\x8f\xe0\xb8\xba2.\xf0\x90\x8b\xa2\xdd\x85\xe0\xbe\x9f\xe3\x80\x82", false); } // [V6, A4_2]
16063test { try toAsciiFail("\xea\xab\xb6\xe1\xa2\x8f\xe0\xb8\xba2.\xf0\x90\x8b\xa2\xdd\x85\xe0\xbe\x9f\xe3\x80\x82", true); } // [V6, A4_2]
6474test { try toUnicodeFail("xn--2-2zf840fk16m.xn--sob093b2m7s."); } // [V6]16064test { try toUnicodeFail("xn--2-2zf840fk16m.xn--sob093b2m7s."); } // [V6]
16065test { try toAsciiFail("xn--2-2zf840fk16m.xn--sob093b2m7s.", false); } // [V6, A4_2]
16066test { try toAsciiFail("xn--2-2zf840fk16m.xn--sob093b2m7s.", true); } // [V6, A4_2]
6475test { try toUnicodeFail("xn--2-2zf840fk16m.xn--sob093bj62sz9d"); } // [V6, V7]16067test { try toUnicodeFail("xn--2-2zf840fk16m.xn--sob093bj62sz9d"); } // [V6, V7]
16068test { try toAsciiFail("xn--2-2zf840fk16m.xn--sob093bj62sz9d", false); } // [V6, V7]
16069test { try toAsciiFail("xn--2-2zf840fk16m.xn--sob093bj62sz9d", true); } // [V6, V7]
6476test { try toUnicodeFail("\xf3\x85\xb4\xa7\xef\xbd\xa1\xe2\x89\xa0-\xf3\xa0\x99\x84\xe2\xbe\x9b"); } // [V7]16070test { try toUnicodeFail("\xf3\x85\xb4\xa7\xef\xbd\xa1\xe2\x89\xa0-\xf3\xa0\x99\x84\xe2\xbe\x9b"); } // [V7]
16071test { try toAsciiFail("\xf3\x85\xb4\xa7\xef\xbd\xa1\xe2\x89\xa0-\xf3\xa0\x99\x84\xe2\xbe\x9b", false); } // [V7]
16072test { try toAsciiFail("\xf3\x85\xb4\xa7\xef\xbd\xa1\xe2\x89\xa0-\xf3\xa0\x99\x84\xe2\xbe\x9b", true); } // [V7]
6477test { try toUnicodeFail("\xf3\x85\xb4\xa7\xef\xbd\xa1=\xcc\xb8-\xf3\xa0\x99\x84\xe2\xbe\x9b"); } // [V7]16073test { try toUnicodeFail("\xf3\x85\xb4\xa7\xef\xbd\xa1=\xcc\xb8-\xf3\xa0\x99\x84\xe2\xbe\x9b"); } // [V7]
16074test { try toAsciiFail("\xf3\x85\xb4\xa7\xef\xbd\xa1=\xcc\xb8-\xf3\xa0\x99\x84\xe2\xbe\x9b", false); } // [V7]
16075test { try toAsciiFail("\xf3\x85\xb4\xa7\xef\xbd\xa1=\xcc\xb8-\xf3\xa0\x99\x84\xe2\xbe\x9b", true); } // [V7]
6478test { try toUnicodeFail("\xf3\x85\xb4\xa7\xe3\x80\x82\xe2\x89\xa0-\xf3\xa0\x99\x84\xe8\xb5\xb0"); } // [V7]16076test { try toUnicodeFail("\xf3\x85\xb4\xa7\xe3\x80\x82\xe2\x89\xa0-\xf3\xa0\x99\x84\xe8\xb5\xb0"); } // [V7]
16077test { try toAsciiFail("\xf3\x85\xb4\xa7\xe3\x80\x82\xe2\x89\xa0-\xf3\xa0\x99\x84\xe8\xb5\xb0", false); } // [V7]
16078test { try toAsciiFail("\xf3\x85\xb4\xa7\xe3\x80\x82\xe2\x89\xa0-\xf3\xa0\x99\x84\xe8\xb5\xb0", true); } // [V7]
6479test { try toUnicodeFail("\xf3\x85\xb4\xa7\xe3\x80\x82=\xcc\xb8-\xf3\xa0\x99\x84\xe8\xb5\xb0"); } // [V7]16079test { try toUnicodeFail("\xf3\x85\xb4\xa7\xe3\x80\x82=\xcc\xb8-\xf3\xa0\x99\x84\xe8\xb5\xb0"); } // [V7]
16080test { try toAsciiFail("\xf3\x85\xb4\xa7\xe3\x80\x82=\xcc\xb8-\xf3\xa0\x99\x84\xe8\xb5\xb0", false); } // [V7]
16081test { try toAsciiFail("\xf3\x85\xb4\xa7\xe3\x80\x82=\xcc\xb8-\xf3\xa0\x99\x84\xe8\xb5\xb0", true); } // [V7]
6480test { try toUnicodeFail("xn--gm57d.xn----tfo4949b3664m"); } // [V7]16082test { try toUnicodeFail("xn--gm57d.xn----tfo4949b3664m"); } // [V7]
16083test { try toAsciiFail("xn--gm57d.xn----tfo4949b3664m", false); } // [V7]
16084test { try toAsciiFail("xn--gm57d.xn----tfo4949b3664m", true); } // [V7]
6481test { try toUnicodeFail("\xdd\xae\xd8\x84\xe1\x82\xaa\xe3\x80\x82-\xe2\x89\xa0\xe1\x85\xa0"); } // [B1, B2, B3, V3, V7]16085test { try toUnicodeFail("\xdd\xae\xd8\x84\xe1\x82\xaa\xe3\x80\x82-\xe2\x89\xa0\xe1\x85\xa0"); } // [B1, B2, B3, V3, V7]
16086test { try toAsciiFail("\xdd\xae\xd8\x84\xe1\x82\xaa\xe3\x80\x82-\xe2\x89\xa0\xe1\x85\xa0", false); } // [B1, B2, B3, V3, V7]
16087test { try toAsciiFail("\xdd\xae\xd8\x84\xe1\x82\xaa\xe3\x80\x82-\xe2\x89\xa0\xe1\x85\xa0", true); } // [B1, B2, B3, V3, V7]
6482test { try toUnicodeFail("\xdd\xae\xd8\x84\xe1\x82\xaa\xe3\x80\x82-=\xcc\xb8\xe1\x85\xa0"); } // [B1, B2, B3, V3, V7]16088test { try toUnicodeFail("\xdd\xae\xd8\x84\xe1\x82\xaa\xe3\x80\x82-=\xcc\xb8\xe1\x85\xa0"); } // [B1, B2, B3, V3, V7]
16089test { try toAsciiFail("\xdd\xae\xd8\x84\xe1\x82\xaa\xe3\x80\x82-=\xcc\xb8\xe1\x85\xa0", false); } // [B1, B2, B3, V3, V7]
16090test { try toAsciiFail("\xdd\xae\xd8\x84\xe1\x82\xaa\xe3\x80\x82-=\xcc\xb8\xe1\x85\xa0", true); } // [B1, B2, B3, V3, V7]
6483test { try toUnicodeFail("\xdd\xae\xd8\x84\xe2\xb4\x8a\xe3\x80\x82-=\xcc\xb8\xe1\x85\xa0"); } // [B1, B2, B3, V3, V7]16091test { try toUnicodeFail("\xdd\xae\xd8\x84\xe2\xb4\x8a\xe3\x80\x82-=\xcc\xb8\xe1\x85\xa0"); } // [B1, B2, B3, V3, V7]
16092test { try toAsciiFail("\xdd\xae\xd8\x84\xe2\xb4\x8a\xe3\x80\x82-=\xcc\xb8\xe1\x85\xa0", false); } // [B1, B2, B3, V3, V7]
16093test { try toAsciiFail("\xdd\xae\xd8\x84\xe2\xb4\x8a\xe3\x80\x82-=\xcc\xb8\xe1\x85\xa0", true); } // [B1, B2, B3, V3, V7]
6484test { try toUnicodeFail("\xdd\xae\xd8\x84\xe2\xb4\x8a\xe3\x80\x82-\xe2\x89\xa0\xe1\x85\xa0"); } // [B1, B2, B3, V3, V7]16094test { try toUnicodeFail("\xdd\xae\xd8\x84\xe2\xb4\x8a\xe3\x80\x82-\xe2\x89\xa0\xe1\x85\xa0"); } // [B1, B2, B3, V3, V7]
16095test { try toAsciiFail("\xdd\xae\xd8\x84\xe2\xb4\x8a\xe3\x80\x82-\xe2\x89\xa0\xe1\x85\xa0", false); } // [B1, B2, B3, V3, V7]
16096test { try toAsciiFail("\xdd\xae\xd8\x84\xe2\xb4\x8a\xe3\x80\x82-\xe2\x89\xa0\xe1\x85\xa0", true); } // [B1, B2, B3, V3, V7]
6485test { try toUnicodeFail("xn--mfb73ek93f.xn----ufo"); } // [B1, B2, B3, V3, V7]16097test { try toUnicodeFail("xn--mfb73ek93f.xn----ufo"); } // [B1, B2, B3, V3, V7]
16098test { try toAsciiFail("xn--mfb73ek93f.xn----ufo", false); } // [B1, B2, B3, V3, V7]
16099test { try toAsciiFail("xn--mfb73ek93f.xn----ufo", true); } // [B1, B2, B3, V3, V7]
6486test { try toUnicodeFail("xn--mfb73ek93f.xn----5bh589i"); } // [B1, B2, B3, V3, V7]16100test { try toUnicodeFail("xn--mfb73ek93f.xn----5bh589i"); } // [B1, B2, B3, V3, V7]
16101test { try toAsciiFail("xn--mfb73ek93f.xn----5bh589i", false); } // [B1, B2, B3, V3, V7]
16102test { try toAsciiFail("xn--mfb73ek93f.xn----5bh589i", true); } // [B1, B2, B3, V3, V7]
6487test { try toUnicodeFail("xn--mfb73ex6r.xn----5bh589i"); } // [B1, B2, B3, V3, V7]16103test { try toUnicodeFail("xn--mfb73ex6r.xn----5bh589i"); } // [B1, B2, B3, V3, V7]
16104test { try toAsciiFail("xn--mfb73ex6r.xn----5bh589i", false); } // [B1, B2, B3, V3, V7]
16105test { try toAsciiFail("xn--mfb73ex6r.xn----5bh589i", true); } // [B1, B2, B3, V3, V7]
6488test { try toUnicodeFail("\xef\xad\x8f\xf0\x90\xb9\xa7\xf0\x9d\x9f\x92\xe2\x89\xaf\xef\xbd\xa1\xe2\x80\x8c"); } // [B1, B3, B4, C1]16106test { try toUnicodeFail("\xef\xad\x8f\xf0\x90\xb9\xa7\xf0\x9d\x9f\x92\xe2\x89\xaf\xef\xbd\xa1\xe2\x80\x8c"); } // [B1, B3, B4, C1]
16107test { try toAsciiFail("\xef\xad\x8f\xf0\x90\xb9\xa7\xf0\x9d\x9f\x92\xe2\x89\xaf\xef\xbd\xa1\xe2\x80\x8c", false); } // [B1, B3, B4, C1]
16108test { try toAsciiFail("\xef\xad\x8f\xf0\x90\xb9\xa7\xf0\x9d\x9f\x92\xe2\x89\xaf\xef\xbd\xa1\xe2\x80\x8c", true); } // [B3, B4, A4_2]
6489test { try toUnicodeFail("\xef\xad\x8f\xf0\x90\xb9\xa7\xf0\x9d\x9f\x92>\xcc\xb8\xef\xbd\xa1\xe2\x80\x8c"); } // [B1, B3, B4, C1]16109test { try toUnicodeFail("\xef\xad\x8f\xf0\x90\xb9\xa7\xf0\x9d\x9f\x92>\xcc\xb8\xef\xbd\xa1\xe2\x80\x8c"); } // [B1, B3, B4, C1]
16110test { try toAsciiFail("\xef\xad\x8f\xf0\x90\xb9\xa7\xf0\x9d\x9f\x92>\xcc\xb8\xef\xbd\xa1\xe2\x80\x8c", false); } // [B1, B3, B4, C1]
16111test { try toAsciiFail("\xef\xad\x8f\xf0\x90\xb9\xa7\xf0\x9d\x9f\x92>\xcc\xb8\xef\xbd\xa1\xe2\x80\x8c", true); } // [B3, B4, A4_2]
6490test { try toUnicodeFail("\xd7\x90\xd7\x9c\xf0\x90\xb9\xa74\xe2\x89\xaf\xe3\x80\x82\xe2\x80\x8c"); } // [B1, B3, B4, C1]16112test { try toUnicodeFail("\xd7\x90\xd7\x9c\xf0\x90\xb9\xa74\xe2\x89\xaf\xe3\x80\x82\xe2\x80\x8c"); } // [B1, B3, B4, C1]
16113test { try toAsciiFail("\xd7\x90\xd7\x9c\xf0\x90\xb9\xa74\xe2\x89\xaf\xe3\x80\x82\xe2\x80\x8c", false); } // [B1, B3, B4, C1]
16114test { try toAsciiFail("\xd7\x90\xd7\x9c\xf0\x90\xb9\xa74\xe2\x89\xaf\xe3\x80\x82\xe2\x80\x8c", true); } // [B3, B4, A4_2]
6491test { try toUnicodeFail("\xd7\x90\xd7\x9c\xf0\x90\xb9\xa74>\xcc\xb8\xe3\x80\x82\xe2\x80\x8c"); } // [B1, B3, B4, C1]16115test { try toUnicodeFail("\xd7\x90\xd7\x9c\xf0\x90\xb9\xa74>\xcc\xb8\xe3\x80\x82\xe2\x80\x8c"); } // [B1, B3, B4, C1]
16116test { try toAsciiFail("\xd7\x90\xd7\x9c\xf0\x90\xb9\xa74>\xcc\xb8\xe3\x80\x82\xe2\x80\x8c", false); } // [B1, B3, B4, C1]
16117test { try toAsciiFail("\xd7\x90\xd7\x9c\xf0\x90\xb9\xa74>\xcc\xb8\xe3\x80\x82\xe2\x80\x8c", true); } // [B3, B4, A4_2]
6492test { try toUnicodeFail("xn--4-zhc0by36txt0w."); } // [B3, B4]16118test { try toUnicodeFail("xn--4-zhc0by36txt0w."); } // [B3, B4]
16119test { try toAsciiFail("xn--4-zhc0by36txt0w.", false); } // [B3, B4, A4_2]
16120test { try toAsciiFail("xn--4-zhc0by36txt0w.", true); } // [B3, B4, A4_2]
6493test { try toUnicodeFail("xn--4-zhc0by36txt0w.xn--0ug"); } // [B1, B3, B4, C1]16121test { try toUnicodeFail("xn--4-zhc0by36txt0w.xn--0ug"); } // [B1, B3, B4, C1]
16122test { try toAsciiFail("xn--4-zhc0by36txt0w.xn--0ug", false); } // [B1, B3, B4, C1]
16123test { try toAsciiFail("xn--4-zhc0by36txt0w.xn--0ug", true); } // [B1, B3, B4, C1]
6494test { try toUnicodePass("\xf0\x9d\x9f\x8e\xe3\x80\x82\xe7\x94\xaf", "0.\xe7\x94\xaf"); }16124test { try toUnicodePass("\xf0\x9d\x9f\x8e\xe3\x80\x82\xe7\x94\xaf", "0.\xe7\x94\xaf"); }
6495test { try toAsciiPass("\xf0\x9d\x9f\x8e\xe3\x80\x82\xe7\x94\xaf", "0.xn--qny", false); }16125test { try toAsciiPass("\xf0\x9d\x9f\x8e\xe3\x80\x82\xe7\x94\xaf", "0.xn--qny", false); }
6496test { try toAsciiPass("\xf0\x9d\x9f\x8e\xe3\x80\x82\xe7\x94\xaf", "0.xn--qny", true); }16126test { try toAsciiPass("\xf0\x9d\x9f\x8e\xe3\x80\x82\xe7\x94\xaf", "0.xn--qny", true); }
...@@ -6504,11 +16134,23 @@ test { try toUnicodePass("0.\xe7\x94\xaf", "0.\xe7\x94\xaf"); }...@@ -6504,11 +16134,23 @@ test { try toUnicodePass("0.\xe7\x94\xaf", "0.\xe7\x94\xaf"); }
6504test { try toAsciiPass("0.\xe7\x94\xaf", "0.xn--qny", false); }16134test { try toAsciiPass("0.\xe7\x94\xaf", "0.xn--qny", false); }
6505test { try toAsciiPass("0.\xe7\x94\xaf", "0.xn--qny", true); }16135test { try toAsciiPass("0.\xe7\x94\xaf", "0.xn--qny", true); }
6506test { try toUnicodeFail("-\xe2\xbe\x86\xef\xbc\x8e\xea\xab\xb6"); } // [V3, V6]16136test { try toUnicodeFail("-\xe2\xbe\x86\xef\xbc\x8e\xea\xab\xb6"); } // [V3, V6]
16137test { try toAsciiFail("-\xe2\xbe\x86\xef\xbc\x8e\xea\xab\xb6", false); } // [V3, V6]
16138test { try toAsciiFail("-\xe2\xbe\x86\xef\xbc\x8e\xea\xab\xb6", true); } // [V3, V6]
6507test { try toUnicodeFail("-\xe8\x88\x8c.\xea\xab\xb6"); } // [V3, V6]16139test { try toUnicodeFail("-\xe8\x88\x8c.\xea\xab\xb6"); } // [V3, V6]
16140test { try toAsciiFail("-\xe8\x88\x8c.\xea\xab\xb6", false); } // [V3, V6]
16141test { try toAsciiFail("-\xe8\x88\x8c.\xea\xab\xb6", true); } // [V3, V6]
6508test { try toUnicodeFail("xn----ef8c.xn--2v9a"); } // [V3, V6]16142test { try toUnicodeFail("xn----ef8c.xn--2v9a"); } // [V3, V6]
16143test { try toAsciiFail("xn----ef8c.xn--2v9a", false); } // [V3, V6]
16144test { try toAsciiFail("xn----ef8c.xn--2v9a", true); } // [V3, V6]
6509test { try toUnicodeFail("-\xef\xbd\xa1\xe1\xa2\x98"); } // [V3]16145test { try toUnicodeFail("-\xef\xbd\xa1\xe1\xa2\x98"); } // [V3]
16146test { try toAsciiFail("-\xef\xbd\xa1\xe1\xa2\x98", false); } // [V3]
16147test { try toAsciiFail("-\xef\xbd\xa1\xe1\xa2\x98", true); } // [V3]
6510test { try toUnicodeFail("-\xe3\x80\x82\xe1\xa2\x98"); } // [V3]16148test { try toUnicodeFail("-\xe3\x80\x82\xe1\xa2\x98"); } // [V3]
16149test { try toAsciiFail("-\xe3\x80\x82\xe1\xa2\x98", false); } // [V3]
16150test { try toAsciiFail("-\xe3\x80\x82\xe1\xa2\x98", true); } // [V3]
6511test { try toUnicodeFail("-.xn--ibf"); } // [V3]16151test { try toUnicodeFail("-.xn--ibf"); } // [V3]
16152test { try toAsciiFail("-.xn--ibf", false); } // [V3]
16153test { try toAsciiFail("-.xn--ibf", true); } // [V3]
6512test { try toUnicodePass("\xf0\x9f\x82\xb4\xe1\x82\xab.\xe2\x89\xae", "\xf0\x9f\x82\xb4\xe2\xb4\x8b.\xe2\x89\xae"); }16154test { try toUnicodePass("\xf0\x9f\x82\xb4\xe1\x82\xab.\xe2\x89\xae", "\xf0\x9f\x82\xb4\xe2\xb4\x8b.\xe2\x89\xae"); }
6513test { try toAsciiPass("\xf0\x9f\x82\xb4\xe1\x82\xab.\xe2\x89\xae", "xn--2kj7565l.xn--gdh", false); }16155test { try toAsciiPass("\xf0\x9f\x82\xb4\xe1\x82\xab.\xe2\x89\xae", "xn--2kj7565l.xn--gdh", false); }
6514test { try toAsciiPass("\xf0\x9f\x82\xb4\xe1\x82\xab.\xe2\x89\xae", "xn--2kj7565l.xn--gdh", true); }16156test { try toAsciiPass("\xf0\x9f\x82\xb4\xe1\x82\xab.\xe2\x89\xae", "xn--2kj7565l.xn--gdh", true); }
...@@ -6525,20 +16167,44 @@ test { try toUnicodePass("xn--2kj7565l.xn--gdh", "\xf0\x9f\x82\xb4\xe2\xb4\x8b.\...@@ -6525,20 +16167,44 @@ test { try toUnicodePass("xn--2kj7565l.xn--gdh", "\xf0\x9f\x82\xb4\xe2\xb4\x8b.\
6525test { try toAsciiPass("xn--2kj7565l.xn--gdh", "xn--2kj7565l.xn--gdh", false); }16167test { try toAsciiPass("xn--2kj7565l.xn--gdh", "xn--2kj7565l.xn--gdh", false); }
6526test { try toAsciiPass("xn--2kj7565l.xn--gdh", "xn--2kj7565l.xn--gdh", true); }16168test { try toAsciiPass("xn--2kj7565l.xn--gdh", "xn--2kj7565l.xn--gdh", true); }
6527test { try toUnicodeFail("xn--jnd1986v.xn--gdh"); } // [V7]16169test { try toUnicodeFail("xn--jnd1986v.xn--gdh"); } // [V7]
16170test { try toAsciiFail("xn--jnd1986v.xn--gdh", false); } // [V7]
16171test { try toAsciiFail("xn--jnd1986v.xn--gdh", true); } // [V7]
6528test { try toUnicodeFail("\xe7\x92\xbc\xf0\x9d\xa8\xad\xef\xbd\xa1\xe2\x80\x8c\xf3\xa0\x87\x9f"); } // [C1]16172test { try toUnicodeFail("\xe7\x92\xbc\xf0\x9d\xa8\xad\xef\xbd\xa1\xe2\x80\x8c\xf3\xa0\x87\x9f"); } // [C1]
16173test { try toAsciiFail("\xe7\x92\xbc\xf0\x9d\xa8\xad\xef\xbd\xa1\xe2\x80\x8c\xf3\xa0\x87\x9f", false); } // [C1]
16174test { try toAsciiFail("\xe7\x92\xbc\xf0\x9d\xa8\xad\xef\xbd\xa1\xe2\x80\x8c\xf3\xa0\x87\x9f", true); } // [A4_2]
6529test { try toUnicodeFail("\xe7\x92\xbc\xf0\x9d\xa8\xad\xe3\x80\x82\xe2\x80\x8c\xf3\xa0\x87\x9f"); } // [C1]16175test { try toUnicodeFail("\xe7\x92\xbc\xf0\x9d\xa8\xad\xe3\x80\x82\xe2\x80\x8c\xf3\xa0\x87\x9f"); } // [C1]
16176test { try toAsciiFail("\xe7\x92\xbc\xf0\x9d\xa8\xad\xe3\x80\x82\xe2\x80\x8c\xf3\xa0\x87\x9f", false); } // [C1]
16177test { try toAsciiFail("\xe7\x92\xbc\xf0\x9d\xa8\xad\xe3\x80\x82\xe2\x80\x8c\xf3\xa0\x87\x9f", true); } // [A4_2]
6530test { try toUnicodePass("xn--gky8837e.", "\xe7\x92\xbc\xf0\x9d\xa8\xad."); }16178test { try toUnicodePass("xn--gky8837e.", "\xe7\x92\xbc\xf0\x9d\xa8\xad."); }
16179test { try toAsciiFail("xn--gky8837e.", false); } // [A4_2]
16180test { try toAsciiFail("xn--gky8837e.", true); } // [A4_2]
6531test { try toUnicodePass("\xe7\x92\xbc\xf0\x9d\xa8\xad.", "\xe7\x92\xbc\xf0\x9d\xa8\xad."); }16181test { try toUnicodePass("\xe7\x92\xbc\xf0\x9d\xa8\xad.", "\xe7\x92\xbc\xf0\x9d\xa8\xad."); }
16182test { try toAsciiFail("\xe7\x92\xbc\xf0\x9d\xa8\xad.", false); } // [A4_2]
16183test { try toAsciiFail("\xe7\x92\xbc\xf0\x9d\xa8\xad.", true); } // [A4_2]
6532test { try toUnicodeFail("xn--gky8837e.xn--0ug"); } // [C1]16184test { try toUnicodeFail("xn--gky8837e.xn--0ug"); } // [C1]
16185test { try toAsciiFail("xn--gky8837e.xn--0ug", false); } // [C1]
16186test { try toAsciiFail("xn--gky8837e.xn--0ug", true); } // [C1]
6533test { try toUnicodeFail("\xd9\xa98\xf1\x82\x8d\xbd\xef\xbd\xa1-5\xf0\x9f\x9e\xa5"); } // [B1, V3, V7]16187test { try toUnicodeFail("\xd9\xa98\xf1\x82\x8d\xbd\xef\xbd\xa1-5\xf0\x9f\x9e\xa5"); } // [B1, V3, V7]
16188test { try toAsciiFail("\xd9\xa98\xf1\x82\x8d\xbd\xef\xbd\xa1-5\xf0\x9f\x9e\xa5", false); } // [B1, V3, V7]
16189test { try toAsciiFail("\xd9\xa98\xf1\x82\x8d\xbd\xef\xbd\xa1-5\xf0\x9f\x9e\xa5", true); } // [B1, V3, V7]
6534test { try toUnicodeFail("\xd9\xa98\xf1\x82\x8d\xbd\xe3\x80\x82-5\xf0\x9f\x9e\xa5"); } // [B1, V3, V7]16190test { try toUnicodeFail("\xd9\xa98\xf1\x82\x8d\xbd\xe3\x80\x82-5\xf0\x9f\x9e\xa5"); } // [B1, V3, V7]
16191test { try toAsciiFail("\xd9\xa98\xf1\x82\x8d\xbd\xe3\x80\x82-5\xf0\x9f\x9e\xa5", false); } // [B1, V3, V7]
16192test { try toAsciiFail("\xd9\xa98\xf1\x82\x8d\xbd\xe3\x80\x82-5\xf0\x9f\x9e\xa5", true); } // [B1, V3, V7]
6535test { try toUnicodeFail("xn--8-qqc97891f.xn---5-rp92a"); } // [B1, V3, V7]16193test { try toUnicodeFail("xn--8-qqc97891f.xn---5-rp92a"); } // [B1, V3, V7]
16194test { try toAsciiFail("xn--8-qqc97891f.xn---5-rp92a", false); } // [B1, V3, V7]
16195test { try toAsciiFail("xn--8-qqc97891f.xn---5-rp92a", true); } // [B1, V3, V7]
6536test { try toUnicodeFail("\xe2\x80\x8c.\xe2\x80\x8c"); } // [C1]16196test { try toUnicodeFail("\xe2\x80\x8c.\xe2\x80\x8c"); } // [C1]
16197test { try toAsciiFail("\xe2\x80\x8c.\xe2\x80\x8c", false); } // [C1]
16198test { try toAsciiFail("\xe2\x80\x8c.\xe2\x80\x8c", true); } // [A4_1, A4_2]
6537test { try toUnicodeFail("xn--0ug.xn--0ug"); } // [C1]16199test { try toUnicodeFail("xn--0ug.xn--0ug"); } // [C1]
16200test { try toAsciiFail("xn--0ug.xn--0ug", false); } // [C1]
16201test { try toAsciiFail("xn--0ug.xn--0ug", true); } // [C1]
6538test { try toAsciiPass("\xe2\x80\x8d\xed\x8a\x9b.\xdc\x96", "xn--157b.xn--gnb", true); }16202test { try toAsciiPass("\xe2\x80\x8d\xed\x8a\x9b.\xdc\x96", "xn--157b.xn--gnb", true); }
6539test { try toUnicodeFail("\xe2\x80\x8d\xed\x8a\x9b.\xdc\x96"); } // [B1, C2]16203test { try toUnicodeFail("\xe2\x80\x8d\xed\x8a\x9b.\xdc\x96"); } // [B1, C2]
16204test { try toAsciiFail("\xe2\x80\x8d\xed\x8a\x9b.\xdc\x96", false); } // [B1, C2]
6540test { try toAsciiPass("\xe2\x80\x8d\xe1\x84\x90\xe1\x85\xb1\xe1\x87\x82.\xdc\x96", "xn--157b.xn--gnb", true); }16205test { try toAsciiPass("\xe2\x80\x8d\xe1\x84\x90\xe1\x85\xb1\xe1\x87\x82.\xdc\x96", "xn--157b.xn--gnb", true); }
6541test { try toUnicodeFail("\xe2\x80\x8d\xe1\x84\x90\xe1\x85\xb1\xe1\x87\x82.\xdc\x96"); } // [B1, C2]16206test { try toUnicodeFail("\xe2\x80\x8d\xe1\x84\x90\xe1\x85\xb1\xe1\x87\x82.\xdc\x96"); } // [B1, C2]
16207test { try toAsciiFail("\xe2\x80\x8d\xe1\x84\x90\xe1\x85\xb1\xe1\x87\x82.\xdc\x96", false); } // [B1, C2]
6542test { try toUnicodePass("xn--157b.xn--gnb", "\xed\x8a\x9b.\xdc\x96"); }16208test { try toUnicodePass("xn--157b.xn--gnb", "\xed\x8a\x9b.\xdc\x96"); }
6543test { try toAsciiPass("xn--157b.xn--gnb", "xn--157b.xn--gnb", false); }16209test { try toAsciiPass("xn--157b.xn--gnb", "xn--157b.xn--gnb", false); }
6544test { try toAsciiPass("xn--157b.xn--gnb", "xn--157b.xn--gnb", true); }16210test { try toAsciiPass("xn--157b.xn--gnb", "xn--157b.xn--gnb", true); }
...@@ -6549,81 +16215,227 @@ test { try toUnicodePass("\xe1\x84\x90\xe1\x85\xb1\xe1\x87\x82.\xdc\x96", "\xed\...@@ -6549,81 +16215,227 @@ test { try toUnicodePass("\xe1\x84\x90\xe1\x85\xb1\xe1\x87\x82.\xdc\x96", "\xed\
6549test { try toAsciiPass("\xe1\x84\x90\xe1\x85\xb1\xe1\x87\x82.\xdc\x96", "xn--157b.xn--gnb", false); }16215test { try toAsciiPass("\xe1\x84\x90\xe1\x85\xb1\xe1\x87\x82.\xdc\x96", "xn--157b.xn--gnb", false); }
6550test { try toAsciiPass("\xe1\x84\x90\xe1\x85\xb1\xe1\x87\x82.\xdc\x96", "xn--157b.xn--gnb", true); }16216test { try toAsciiPass("\xe1\x84\x90\xe1\x85\xb1\xe1\x87\x82.\xdc\x96", "xn--157b.xn--gnb", true); }
6551test { try toUnicodeFail("xn--1ug4441e.xn--gnb"); } // [B1, C2]16217test { try toUnicodeFail("xn--1ug4441e.xn--gnb"); } // [B1, C2]
16218test { try toAsciiFail("xn--1ug4441e.xn--gnb", false); } // [B1, C2]
16219test { try toAsciiFail("xn--1ug4441e.xn--gnb", true); } // [B1, C2]
6552test { try toUnicodeFail("\xe1\xa1\x8b\xf0\x90\xb9\xb0\xf0\x9e\xbd\xb3.\xdd\xb9\xe2\xb4\x9e"); } // [B2, B3, B5, B6, V7]16220test { try toUnicodeFail("\xe1\xa1\x8b\xf0\x90\xb9\xb0\xf0\x9e\xbd\xb3.\xdd\xb9\xe2\xb4\x9e"); } // [B2, B3, B5, B6, V7]
16221test { try toAsciiFail("\xe1\xa1\x8b\xf0\x90\xb9\xb0\xf0\x9e\xbd\xb3.\xdd\xb9\xe2\xb4\x9e", false); } // [B2, B3, B5, B6, V7]
16222test { try toAsciiFail("\xe1\xa1\x8b\xf0\x90\xb9\xb0\xf0\x9e\xbd\xb3.\xdd\xb9\xe2\xb4\x9e", true); } // [B2, B3, B5, B6, V7]
6553test { try toUnicodeFail("\xe1\xa1\x8b\xf0\x90\xb9\xb0\xf0\x9e\xbd\xb3.\xdd\xb9\xe1\x82\xbe"); } // [B2, B3, B5, B6, V7]16223test { try toUnicodeFail("\xe1\xa1\x8b\xf0\x90\xb9\xb0\xf0\x9e\xbd\xb3.\xdd\xb9\xe1\x82\xbe"); } // [B2, B3, B5, B6, V7]
16224test { try toAsciiFail("\xe1\xa1\x8b\xf0\x90\xb9\xb0\xf0\x9e\xbd\xb3.\xdd\xb9\xe1\x82\xbe", false); } // [B2, B3, B5, B6, V7]
16225test { try toAsciiFail("\xe1\xa1\x8b\xf0\x90\xb9\xb0\xf0\x9e\xbd\xb3.\xdd\xb9\xe1\x82\xbe", true); } // [B2, B3, B5, B6, V7]
6554test { try toUnicodeFail("xn--b8e0417jocvf.xn--9pb883q"); } // [B2, B3, B5, B6, V7]16226test { try toUnicodeFail("xn--b8e0417jocvf.xn--9pb883q"); } // [B2, B3, B5, B6, V7]
16227test { try toAsciiFail("xn--b8e0417jocvf.xn--9pb883q", false); } // [B2, B3, B5, B6, V7]
16228test { try toAsciiFail("xn--b8e0417jocvf.xn--9pb883q", true); } // [B2, B3, B5, B6, V7]
6555test { try toUnicodeFail("xn--b8e0417jocvf.xn--9pb068b"); } // [B2, B3, B5, B6, V7]16229test { try toUnicodeFail("xn--b8e0417jocvf.xn--9pb068b"); } // [B2, B3, B5, B6, V7]
16230test { try toAsciiFail("xn--b8e0417jocvf.xn--9pb068b", false); } // [B2, B3, B5, B6, V7]
16231test { try toAsciiFail("xn--b8e0417jocvf.xn--9pb068b", true); } // [B2, B3, B5, B6, V7]
6556test { try toUnicodeFail("\xf0\x90\xb7\x83\xd9\xa2\xf0\x9d\x85\xbb\xf0\x9d\x9f\xa7\xef\xbc\x8e\xf0\x90\xb9\xae\xf0\x90\xb9\xac\xe1\x82\xa7"); } // [B1, B4, V7]16232test { try toUnicodeFail("\xf0\x90\xb7\x83\xd9\xa2\xf0\x9d\x85\xbb\xf0\x9d\x9f\xa7\xef\xbc\x8e\xf0\x90\xb9\xae\xf0\x90\xb9\xac\xe1\x82\xa7"); } // [B1, B4, V7]
16233test { try toAsciiFail("\xf0\x90\xb7\x83\xd9\xa2\xf0\x9d\x85\xbb\xf0\x9d\x9f\xa7\xef\xbc\x8e\xf0\x90\xb9\xae\xf0\x90\xb9\xac\xe1\x82\xa7", false); } // [B1, B4, V7]
16234test { try toAsciiFail("\xf0\x90\xb7\x83\xd9\xa2\xf0\x9d\x85\xbb\xf0\x9d\x9f\xa7\xef\xbc\x8e\xf0\x90\xb9\xae\xf0\x90\xb9\xac\xe1\x82\xa7", true); } // [B1, B4, V7]
6557test { try toUnicodeFail("\xf0\x90\xb7\x83\xd9\xa2\xf0\x9d\x85\xbb5.\xf0\x90\xb9\xae\xf0\x90\xb9\xac\xe1\x82\xa7"); } // [B1, B4, V7]16235test { try toUnicodeFail("\xf0\x90\xb7\x83\xd9\xa2\xf0\x9d\x85\xbb5.\xf0\x90\xb9\xae\xf0\x90\xb9\xac\xe1\x82\xa7"); } // [B1, B4, V7]
16236test { try toAsciiFail("\xf0\x90\xb7\x83\xd9\xa2\xf0\x9d\x85\xbb5.\xf0\x90\xb9\xae\xf0\x90\xb9\xac\xe1\x82\xa7", false); } // [B1, B4, V7]
16237test { try toAsciiFail("\xf0\x90\xb7\x83\xd9\xa2\xf0\x9d\x85\xbb5.\xf0\x90\xb9\xae\xf0\x90\xb9\xac\xe1\x82\xa7", true); } // [B1, B4, V7]
6558test { try toUnicodeFail("\xf0\x90\xb7\x83\xd9\xa2\xf0\x9d\x85\xbb5.\xf0\x90\xb9\xae\xf0\x90\xb9\xac\xe2\xb4\x87"); } // [B1, B4, V7]16238test { try toUnicodeFail("\xf0\x90\xb7\x83\xd9\xa2\xf0\x9d\x85\xbb5.\xf0\x90\xb9\xae\xf0\x90\xb9\xac\xe2\xb4\x87"); } // [B1, B4, V7]
16239test { try toAsciiFail("\xf0\x90\xb7\x83\xd9\xa2\xf0\x9d\x85\xbb5.\xf0\x90\xb9\xae\xf0\x90\xb9\xac\xe2\xb4\x87", false); } // [B1, B4, V7]
16240test { try toAsciiFail("\xf0\x90\xb7\x83\xd9\xa2\xf0\x9d\x85\xbb5.\xf0\x90\xb9\xae\xf0\x90\xb9\xac\xe2\xb4\x87", true); } // [B1, B4, V7]
6559test { try toUnicodeFail("xn--5-cqc8833rhv7f.xn--ykjz523efa"); } // [B1, B4, V7]16241test { try toUnicodeFail("xn--5-cqc8833rhv7f.xn--ykjz523efa"); } // [B1, B4, V7]
16242test { try toAsciiFail("xn--5-cqc8833rhv7f.xn--ykjz523efa", false); } // [B1, B4, V7]
16243test { try toAsciiFail("xn--5-cqc8833rhv7f.xn--ykjz523efa", true); } // [B1, B4, V7]
6560test { try toUnicodeFail("\xf0\x90\xb7\x83\xd9\xa2\xf0\x9d\x85\xbb\xf0\x9d\x9f\xa7\xef\xbc\x8e\xf0\x90\xb9\xae\xf0\x90\xb9\xac\xe2\xb4\x87"); } // [B1, B4, V7]16244test { try toUnicodeFail("\xf0\x90\xb7\x83\xd9\xa2\xf0\x9d\x85\xbb\xf0\x9d\x9f\xa7\xef\xbc\x8e\xf0\x90\xb9\xae\xf0\x90\xb9\xac\xe2\xb4\x87"); } // [B1, B4, V7]
16245test { try toAsciiFail("\xf0\x90\xb7\x83\xd9\xa2\xf0\x9d\x85\xbb\xf0\x9d\x9f\xa7\xef\xbc\x8e\xf0\x90\xb9\xae\xf0\x90\xb9\xac\xe2\xb4\x87", false); } // [B1, B4, V7]
16246test { try toAsciiFail("\xf0\x90\xb7\x83\xd9\xa2\xf0\x9d\x85\xbb\xf0\x9d\x9f\xa7\xef\xbc\x8e\xf0\x90\xb9\xae\xf0\x90\xb9\xac\xe2\xb4\x87", true); } // [B1, B4, V7]
6561test { try toUnicodeFail("xn--5-cqc8833rhv7f.xn--fnd3401kfa"); } // [B1, B4, V7]16247test { try toUnicodeFail("xn--5-cqc8833rhv7f.xn--fnd3401kfa"); } // [B1, B4, V7]
16248test { try toAsciiFail("xn--5-cqc8833rhv7f.xn--fnd3401kfa", false); } // [B1, B4, V7]
16249test { try toAsciiFail("xn--5-cqc8833rhv7f.xn--fnd3401kfa", true); } // [B1, B4, V7]
6562test { try toUnicodeFail("\xe1\x82\xb7\xef\xbc\x8e\xd7\x82\xf0\x91\x84\xb4\xea\xa6\xb7\xf1\x98\x83\xa8"); } // [V6, V7]16250test { try toUnicodeFail("\xe1\x82\xb7\xef\xbc\x8e\xd7\x82\xf0\x91\x84\xb4\xea\xa6\xb7\xf1\x98\x83\xa8"); } // [V6, V7]
16251test { try toAsciiFail("\xe1\x82\xb7\xef\xbc\x8e\xd7\x82\xf0\x91\x84\xb4\xea\xa6\xb7\xf1\x98\x83\xa8", false); } // [V6, V7]
16252test { try toAsciiFail("\xe1\x82\xb7\xef\xbc\x8e\xd7\x82\xf0\x91\x84\xb4\xea\xa6\xb7\xf1\x98\x83\xa8", true); } // [V6, V7]
6563test { try toUnicodeFail("\xe1\x82\xb7\xef\xbc\x8e\xf0\x91\x84\xb4\xd7\x82\xea\xa6\xb7\xf1\x98\x83\xa8"); } // [V6, V7]16253test { try toUnicodeFail("\xe1\x82\xb7\xef\xbc\x8e\xf0\x91\x84\xb4\xd7\x82\xea\xa6\xb7\xf1\x98\x83\xa8"); } // [V6, V7]
16254test { try toAsciiFail("\xe1\x82\xb7\xef\xbc\x8e\xf0\x91\x84\xb4\xd7\x82\xea\xa6\xb7\xf1\x98\x83\xa8", false); } // [V6, V7]
16255test { try toAsciiFail("\xe1\x82\xb7\xef\xbc\x8e\xf0\x91\x84\xb4\xd7\x82\xea\xa6\xb7\xf1\x98\x83\xa8", true); } // [V6, V7]
6564test { try toUnicodeFail("\xe1\x82\xb7.\xf0\x91\x84\xb4\xd7\x82\xea\xa6\xb7\xf1\x98\x83\xa8"); } // [V6, V7]16256test { try toUnicodeFail("\xe1\x82\xb7.\xf0\x91\x84\xb4\xd7\x82\xea\xa6\xb7\xf1\x98\x83\xa8"); } // [V6, V7]
16257test { try toAsciiFail("\xe1\x82\xb7.\xf0\x91\x84\xb4\xd7\x82\xea\xa6\xb7\xf1\x98\x83\xa8", false); } // [V6, V7]
16258test { try toAsciiFail("\xe1\x82\xb7.\xf0\x91\x84\xb4\xd7\x82\xea\xa6\xb7\xf1\x98\x83\xa8", true); } // [V6, V7]
6565test { try toUnicodeFail("\xe2\xb4\x97.\xf0\x91\x84\xb4\xd7\x82\xea\xa6\xb7\xf1\x98\x83\xa8"); } // [V6, V7]16259test { try toUnicodeFail("\xe2\xb4\x97.\xf0\x91\x84\xb4\xd7\x82\xea\xa6\xb7\xf1\x98\x83\xa8"); } // [V6, V7]
16260test { try toAsciiFail("\xe2\xb4\x97.\xf0\x91\x84\xb4\xd7\x82\xea\xa6\xb7\xf1\x98\x83\xa8", false); } // [V6, V7]
16261test { try toAsciiFail("\xe2\xb4\x97.\xf0\x91\x84\xb4\xd7\x82\xea\xa6\xb7\xf1\x98\x83\xa8", true); } // [V6, V7]
6566test { try toUnicodeFail("xn--flj.xn--qdb0605f14ycrms3c"); } // [V6, V7]16262test { try toUnicodeFail("xn--flj.xn--qdb0605f14ycrms3c"); } // [V6, V7]
16263test { try toAsciiFail("xn--flj.xn--qdb0605f14ycrms3c", false); } // [V6, V7]
16264test { try toAsciiFail("xn--flj.xn--qdb0605f14ycrms3c", true); } // [V6, V7]
6567test { try toUnicodeFail("\xe2\xb4\x97\xef\xbc\x8e\xf0\x91\x84\xb4\xd7\x82\xea\xa6\xb7\xf1\x98\x83\xa8"); } // [V6, V7]16265test { try toUnicodeFail("\xe2\xb4\x97\xef\xbc\x8e\xf0\x91\x84\xb4\xd7\x82\xea\xa6\xb7\xf1\x98\x83\xa8"); } // [V6, V7]
16266test { try toAsciiFail("\xe2\xb4\x97\xef\xbc\x8e\xf0\x91\x84\xb4\xd7\x82\xea\xa6\xb7\xf1\x98\x83\xa8", false); } // [V6, V7]
16267test { try toAsciiFail("\xe2\xb4\x97\xef\xbc\x8e\xf0\x91\x84\xb4\xd7\x82\xea\xa6\xb7\xf1\x98\x83\xa8", true); } // [V6, V7]
6568test { try toUnicodeFail("\xe2\xb4\x97\xef\xbc\x8e\xd7\x82\xf0\x91\x84\xb4\xea\xa6\xb7\xf1\x98\x83\xa8"); } // [V6, V7]16268test { try toUnicodeFail("\xe2\xb4\x97\xef\xbc\x8e\xd7\x82\xf0\x91\x84\xb4\xea\xa6\xb7\xf1\x98\x83\xa8"); } // [V6, V7]
16269test { try toAsciiFail("\xe2\xb4\x97\xef\xbc\x8e\xd7\x82\xf0\x91\x84\xb4\xea\xa6\xb7\xf1\x98\x83\xa8", false); } // [V6, V7]
16270test { try toAsciiFail("\xe2\xb4\x97\xef\xbc\x8e\xd7\x82\xf0\x91\x84\xb4\xea\xa6\xb7\xf1\x98\x83\xa8", true); } // [V6, V7]
6569test { try toUnicodeFail("xn--vnd.xn--qdb0605f14ycrms3c"); } // [V6, V7]16271test { try toUnicodeFail("xn--vnd.xn--qdb0605f14ycrms3c"); } // [V6, V7]
16272test { try toAsciiFail("xn--vnd.xn--qdb0605f14ycrms3c", false); } // [V6, V7]
16273test { try toAsciiFail("xn--vnd.xn--qdb0605f14ycrms3c", true); } // [V6, V7]
6570test { try toUnicodeFail("\xf0\x9d\x9f\xbe\xf0\xbe\xa4\x98\xef\xbc\x8e\xf2\x87\x95\x9b\xd9\xac"); } // [B1, B5, B6, V7]16274test { try toUnicodeFail("\xf0\x9d\x9f\xbe\xf0\xbe\xa4\x98\xef\xbc\x8e\xf2\x87\x95\x9b\xd9\xac"); } // [B1, B5, B6, V7]
16275test { try toAsciiFail("\xf0\x9d\x9f\xbe\xf0\xbe\xa4\x98\xef\xbc\x8e\xf2\x87\x95\x9b\xd9\xac", false); } // [B1, B5, B6, V7]
16276test { try toAsciiFail("\xf0\x9d\x9f\xbe\xf0\xbe\xa4\x98\xef\xbc\x8e\xf2\x87\x95\x9b\xd9\xac", true); } // [B1, B5, B6, V7]
6571test { try toUnicodeFail("8\xf0\xbe\xa4\x98.\xf2\x87\x95\x9b\xd9\xac"); } // [B1, B5, B6, V7]16277test { try toUnicodeFail("8\xf0\xbe\xa4\x98.\xf2\x87\x95\x9b\xd9\xac"); } // [B1, B5, B6, V7]
16278test { try toAsciiFail("8\xf0\xbe\xa4\x98.\xf2\x87\x95\x9b\xd9\xac", false); } // [B1, B5, B6, V7]
16279test { try toAsciiFail("8\xf0\xbe\xa4\x98.\xf2\x87\x95\x9b\xd9\xac", true); } // [B1, B5, B6, V7]
6572test { try toUnicodeFail("xn--8-kh23b.xn--lib78461i"); } // [B1, B5, B6, V7]16280test { try toUnicodeFail("xn--8-kh23b.xn--lib78461i"); } // [B1, B5, B6, V7]
16281test { try toAsciiFail("xn--8-kh23b.xn--lib78461i", false); } // [B1, B5, B6, V7]
16282test { try toAsciiFail("xn--8-kh23b.xn--lib78461i", true); } // [B1, B5, B6, V7]
6573test { try toUnicodeFail("\xe2\x92\x88\xe9\x85\xab\xef\xb8\x92\xe3\x80\x82\xe0\xa3\x96"); } // [V6, V7]16283test { try toUnicodeFail("\xe2\x92\x88\xe9\x85\xab\xef\xb8\x92\xe3\x80\x82\xe0\xa3\x96"); } // [V6, V7]
16284test { try toAsciiFail("\xe2\x92\x88\xe9\x85\xab\xef\xb8\x92\xe3\x80\x82\xe0\xa3\x96", false); } // [V6, V7]
16285test { try toAsciiFail("\xe2\x92\x88\xe9\x85\xab\xef\xb8\x92\xe3\x80\x82\xe0\xa3\x96", true); } // [V6, V7]
6574test { try toUnicodeFail("1.\xe9\x85\xab\xe3\x80\x82\xe3\x80\x82\xe0\xa3\x96"); } // [V6, X4_2]16286test { try toUnicodeFail("1.\xe9\x85\xab\xe3\x80\x82\xe3\x80\x82\xe0\xa3\x96"); } // [V6, X4_2]
16287test { try toAsciiFail("1.\xe9\x85\xab\xe3\x80\x82\xe3\x80\x82\xe0\xa3\x96", false); } // [V6, A4_2]
16288test { try toAsciiFail("1.\xe9\x85\xab\xe3\x80\x82\xe3\x80\x82\xe0\xa3\x96", true); } // [V6, A4_2]
6575test { try toUnicodeFail("1.xn--8j4a..xn--8zb"); } // [V6, X4_2]16289test { try toUnicodeFail("1.xn--8j4a..xn--8zb"); } // [V6, X4_2]
16290test { try toAsciiFail("1.xn--8j4a..xn--8zb", false); } // [V6, A4_2]
16291test { try toAsciiFail("1.xn--8j4a..xn--8zb", true); } // [V6, A4_2]
6576test { try toUnicodeFail("xn--tsh4490bfe8c.xn--8zb"); } // [V6, V7]16292test { try toUnicodeFail("xn--tsh4490bfe8c.xn--8zb"); } // [V6, V7]
16293test { try toAsciiFail("xn--tsh4490bfe8c.xn--8zb", false); } // [V6, V7]
16294test { try toAsciiFail("xn--tsh4490bfe8c.xn--8zb", true); } // [V6, V7]
6577test { try toUnicodeFail("\xe2\xb7\xa3\xe2\x80\x8c\xe2\x89\xae\xe1\xa9\xab.\xe2\x80\x8c\xe0\xb8\xba"); } // [C1, V6]16295test { try toUnicodeFail("\xe2\xb7\xa3\xe2\x80\x8c\xe2\x89\xae\xe1\xa9\xab.\xe2\x80\x8c\xe0\xb8\xba"); } // [C1, V6]
16296test { try toAsciiFail("\xe2\xb7\xa3\xe2\x80\x8c\xe2\x89\xae\xe1\xa9\xab.\xe2\x80\x8c\xe0\xb8\xba", false); } // [C1, V6]
16297test { try toAsciiFail("\xe2\xb7\xa3\xe2\x80\x8c\xe2\x89\xae\xe1\xa9\xab.\xe2\x80\x8c\xe0\xb8\xba", true); } // [V6]
6578test { try toUnicodeFail("\xe2\xb7\xa3\xe2\x80\x8c<\xcc\xb8\xe1\xa9\xab.\xe2\x80\x8c\xe0\xb8\xba"); } // [C1, V6]16298test { try toUnicodeFail("\xe2\xb7\xa3\xe2\x80\x8c<\xcc\xb8\xe1\xa9\xab.\xe2\x80\x8c\xe0\xb8\xba"); } // [C1, V6]
16299test { try toAsciiFail("\xe2\xb7\xa3\xe2\x80\x8c<\xcc\xb8\xe1\xa9\xab.\xe2\x80\x8c\xe0\xb8\xba", false); } // [C1, V6]
16300test { try toAsciiFail("\xe2\xb7\xa3\xe2\x80\x8c<\xcc\xb8\xe1\xa9\xab.\xe2\x80\x8c\xe0\xb8\xba", true); } // [V6]
6579test { try toUnicodeFail("xn--uof548an0j.xn--o4c"); } // [V6]16301test { try toUnicodeFail("xn--uof548an0j.xn--o4c"); } // [V6]
16302test { try toAsciiFail("xn--uof548an0j.xn--o4c", false); } // [V6]
16303test { try toAsciiFail("xn--uof548an0j.xn--o4c", true); } // [V6]
6580test { try toUnicodeFail("xn--uof63xk4bf3s.xn--o4c732g"); } // [C1, V6]16304test { try toUnicodeFail("xn--uof63xk4bf3s.xn--o4c732g"); } // [C1, V6]
16305test { try toAsciiFail("xn--uof63xk4bf3s.xn--o4c732g", false); } // [C1, V6]
16306test { try toAsciiFail("xn--uof63xk4bf3s.xn--o4c732g", true); } // [C1, V6]
6581test { try toUnicodeFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe1\x82\xb7\xe1\x82\xbd\xc2\xb9\xe2\x80\x8d"); } // [B6, C2, V7]16307test { try toUnicodeFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe1\x82\xb7\xe1\x82\xbd\xc2\xb9\xe2\x80\x8d"); } // [B6, C2, V7]
16308test { try toAsciiFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe1\x82\xb7\xe1\x82\xbd\xc2\xb9\xe2\x80\x8d", false); } // [B6, C2, V7]
16309test { try toAsciiFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe1\x82\xb7\xe1\x82\xbd\xc2\xb9\xe2\x80\x8d", true); } // [V7]
6582test { try toUnicodeFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe1\x82\xb7\xe1\x82\xbd1\xe2\x80\x8d"); } // [B6, C2, V7]16310test { try toUnicodeFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe1\x82\xb7\xe1\x82\xbd1\xe2\x80\x8d"); } // [B6, C2, V7]
16311test { try toAsciiFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe1\x82\xb7\xe1\x82\xbd1\xe2\x80\x8d", false); } // [B6, C2, V7]
16312test { try toAsciiFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe1\x82\xb7\xe1\x82\xbd1\xe2\x80\x8d", true); } // [V7]
6583test { try toUnicodeFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe2\xb4\x97\xe2\xb4\x9d1\xe2\x80\x8d"); } // [B6, C2, V7]16313test { try toUnicodeFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe2\xb4\x97\xe2\xb4\x9d1\xe2\x80\x8d"); } // [B6, C2, V7]
16314test { try toAsciiFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe2\xb4\x97\xe2\xb4\x9d1\xe2\x80\x8d", false); } // [B6, C2, V7]
16315test { try toAsciiFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe2\xb4\x97\xe2\xb4\x9d1\xe2\x80\x8d", true); } // [V7]
6584test { try toUnicodeFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe1\x82\xb7\xe2\xb4\x9d1\xe2\x80\x8d"); } // [B6, C2, V7]16316test { try toUnicodeFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe1\x82\xb7\xe2\xb4\x9d1\xe2\x80\x8d"); } // [B6, C2, V7]
16317test { try toAsciiFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe1\x82\xb7\xe2\xb4\x9d1\xe2\x80\x8d", false); } // [B6, C2, V7]
16318test { try toAsciiFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe1\x82\xb7\xe2\xb4\x9d1\xe2\x80\x8d", true); } // [V7]
6585test { try toUnicodeFail("xn--co6h.xn--1-kwssa"); } // [V7]16319test { try toUnicodeFail("xn--co6h.xn--1-kwssa"); } // [V7]
16320test { try toAsciiFail("xn--co6h.xn--1-kwssa", false); } // [V7]
16321test { try toAsciiFail("xn--co6h.xn--1-kwssa", true); } // [V7]
6586test { try toUnicodeFail("xn--co6h.xn--1-ugn710dya"); } // [B6, C2, V7]16322test { try toUnicodeFail("xn--co6h.xn--1-ugn710dya"); } // [B6, C2, V7]
16323test { try toAsciiFail("xn--co6h.xn--1-ugn710dya", false); } // [B6, C2, V7]
16324test { try toAsciiFail("xn--co6h.xn--1-ugn710dya", true); } // [B6, C2, V7]
6587test { try toUnicodeFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe2\xb4\x97\xe2\xb4\x9d\xc2\xb9\xe2\x80\x8d"); } // [B6, C2, V7]16325test { try toUnicodeFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe2\xb4\x97\xe2\xb4\x9d\xc2\xb9\xe2\x80\x8d"); } // [B6, C2, V7]
16326test { try toAsciiFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe2\xb4\x97\xe2\xb4\x9d\xc2\xb9\xe2\x80\x8d", false); } // [B6, C2, V7]
16327test { try toAsciiFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe2\xb4\x97\xe2\xb4\x9d\xc2\xb9\xe2\x80\x8d", true); } // [V7]
6588test { try toUnicodeFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe1\x82\xb7\xe2\xb4\x9d\xc2\xb9\xe2\x80\x8d"); } // [B6, C2, V7]16328test { try toUnicodeFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe1\x82\xb7\xe2\xb4\x9d\xc2\xb9\xe2\x80\x8d"); } // [B6, C2, V7]
16329test { try toAsciiFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe1\x82\xb7\xe2\xb4\x9d\xc2\xb9\xe2\x80\x8d", false); } // [B6, C2, V7]
16330test { try toAsciiFail("\xf0\x9e\xaa\x82\xe3\x80\x82\xe1\x82\xb7\xe2\xb4\x9d\xc2\xb9\xe2\x80\x8d", true); } // [V7]
6589test { try toUnicodeFail("xn--co6h.xn--1-h1g429s"); } // [V7]16331test { try toUnicodeFail("xn--co6h.xn--1-h1g429s"); } // [V7]
16332test { try toAsciiFail("xn--co6h.xn--1-h1g429s", false); } // [V7]
16333test { try toAsciiFail("xn--co6h.xn--1-h1g429s", true); } // [V7]
6590test { try toUnicodeFail("xn--co6h.xn--1-h1g398iewm"); } // [B6, C2, V7]16334test { try toUnicodeFail("xn--co6h.xn--1-h1g398iewm"); } // [B6, C2, V7]
16335test { try toAsciiFail("xn--co6h.xn--1-h1g398iewm", false); } // [B6, C2, V7]
16336test { try toAsciiFail("xn--co6h.xn--1-h1g398iewm", true); } // [B6, C2, V7]
6591test { try toUnicodeFail("xn--co6h.xn--1-h1gs"); } // [V7]16337test { try toUnicodeFail("xn--co6h.xn--1-h1gs"); } // [V7]
16338test { try toAsciiFail("xn--co6h.xn--1-h1gs", false); } // [V7]
16339test { try toAsciiFail("xn--co6h.xn--1-h1gs", true); } // [V7]
6592test { try toUnicodeFail("xn--co6h.xn--1-h1gs597m"); } // [B6, C2, V7]16340test { try toUnicodeFail("xn--co6h.xn--1-h1gs597m"); } // [B6, C2, V7]
16341test { try toAsciiFail("xn--co6h.xn--1-h1gs597m", false); } // [B6, C2, V7]
16342test { try toAsciiFail("xn--co6h.xn--1-h1gs597m", true); } // [B6, C2, V7]
6593test { try toUnicodeFail("\xf0\x91\x84\xb4\xf0\x91\x84\xb32.\xf0\x9e\xb3\xbf\xf3\xa0\x80\xb3-"); } // [B1, B3, V3, V6, V7]16343test { try toUnicodeFail("\xf0\x91\x84\xb4\xf0\x91\x84\xb32.\xf0\x9e\xb3\xbf\xf3\xa0\x80\xb3-"); } // [B1, B3, V3, V6, V7]
16344test { try toAsciiFail("\xf0\x91\x84\xb4\xf0\x91\x84\xb32.\xf0\x9e\xb3\xbf\xf3\xa0\x80\xb3-", false); } // [B1, B3, V3, V6, V7]
16345test { try toAsciiFail("\xf0\x91\x84\xb4\xf0\x91\x84\xb32.\xf0\x9e\xb3\xbf\xf3\xa0\x80\xb3-", true); } // [B1, B3, V3, V6, V7]
6594test { try toUnicodeFail("xn--2-h87ic.xn----s39r33498d"); } // [B1, B3, V3, V6, V7]16346test { try toUnicodeFail("xn--2-h87ic.xn----s39r33498d"); } // [B1, B3, V3, V6, V7]
16347test { try toAsciiFail("xn--2-h87ic.xn----s39r33498d", false); } // [B1, B3, V3, V6, V7]
16348test { try toAsciiFail("xn--2-h87ic.xn----s39r33498d", true); } // [B1, B3, V3, V6, V7]
6595test { try toUnicodeFail("\xf3\xa0\x95\xb2\xf3\x9f\xb6\xb6\xd9\xa5\xef\xbd\xa1\xf1\x80\x81\x81\xf0\x91\x84\xb3\xf0\x9e\xa4\x83\xdc\x90"); } // [B1, B5, B6, V7]16349test { try toUnicodeFail("\xf3\xa0\x95\xb2\xf3\x9f\xb6\xb6\xd9\xa5\xef\xbd\xa1\xf1\x80\x81\x81\xf0\x91\x84\xb3\xf0\x9e\xa4\x83\xdc\x90"); } // [B1, B5, B6, V7]
16350test { try toAsciiFail("\xf3\xa0\x95\xb2\xf3\x9f\xb6\xb6\xd9\xa5\xef\xbd\xa1\xf1\x80\x81\x81\xf0\x91\x84\xb3\xf0\x9e\xa4\x83\xdc\x90", false); } // [B1, B5, B6, V7]
16351test { try toAsciiFail("\xf3\xa0\x95\xb2\xf3\x9f\xb6\xb6\xd9\xa5\xef\xbd\xa1\xf1\x80\x81\x81\xf0\x91\x84\xb3\xf0\x9e\xa4\x83\xdc\x90", true); } // [B1, B5, B6, V7]
6596test { try toUnicodeFail("\xf3\xa0\x95\xb2\xf3\x9f\xb6\xb6\xd9\xa5\xe3\x80\x82\xf1\x80\x81\x81\xf0\x91\x84\xb3\xf0\x9e\xa4\x83\xdc\x90"); } // [B1, B5, B6, V7]16352test { try toUnicodeFail("\xf3\xa0\x95\xb2\xf3\x9f\xb6\xb6\xd9\xa5\xe3\x80\x82\xf1\x80\x81\x81\xf0\x91\x84\xb3\xf0\x9e\xa4\x83\xdc\x90"); } // [B1, B5, B6, V7]
16353test { try toAsciiFail("\xf3\xa0\x95\xb2\xf3\x9f\xb6\xb6\xd9\xa5\xe3\x80\x82\xf1\x80\x81\x81\xf0\x91\x84\xb3\xf0\x9e\xa4\x83\xdc\x90", false); } // [B1, B5, B6, V7]
16354test { try toAsciiFail("\xf3\xa0\x95\xb2\xf3\x9f\xb6\xb6\xd9\xa5\xe3\x80\x82\xf1\x80\x81\x81\xf0\x91\x84\xb3\xf0\x9e\xa4\x83\xdc\x90", true); } // [B1, B5, B6, V7]
6597test { try toUnicodeFail("\xf3\xa0\x95\xb2\xf3\x9f\xb6\xb6\xd9\xa5\xe3\x80\x82\xf1\x80\x81\x81\xf0\x91\x84\xb3\xf0\x9e\xa4\xa5\xdc\x90"); } // [B1, B5, B6, V7]16355test { try toUnicodeFail("\xf3\xa0\x95\xb2\xf3\x9f\xb6\xb6\xd9\xa5\xe3\x80\x82\xf1\x80\x81\x81\xf0\x91\x84\xb3\xf0\x9e\xa4\xa5\xdc\x90"); } // [B1, B5, B6, V7]
16356test { try toAsciiFail("\xf3\xa0\x95\xb2\xf3\x9f\xb6\xb6\xd9\xa5\xe3\x80\x82\xf1\x80\x81\x81\xf0\x91\x84\xb3\xf0\x9e\xa4\xa5\xdc\x90", false); } // [B1, B5, B6, V7]
16357test { try toAsciiFail("\xf3\xa0\x95\xb2\xf3\x9f\xb6\xb6\xd9\xa5\xe3\x80\x82\xf1\x80\x81\x81\xf0\x91\x84\xb3\xf0\x9e\xa4\xa5\xdc\x90", true); } // [B1, B5, B6, V7]
6598test { try toUnicodeFail("xn--eib57614py3ea.xn--9mb5737kqnpfzkwr"); } // [B1, B5, B6, V7]16358test { try toUnicodeFail("xn--eib57614py3ea.xn--9mb5737kqnpfzkwr"); } // [B1, B5, B6, V7]
16359test { try toAsciiFail("xn--eib57614py3ea.xn--9mb5737kqnpfzkwr", false); } // [B1, B5, B6, V7]
16360test { try toAsciiFail("xn--eib57614py3ea.xn--9mb5737kqnpfzkwr", true); } // [B1, B5, B6, V7]
6599test { try toUnicodeFail("\xf3\xa0\x95\xb2\xf3\x9f\xb6\xb6\xd9\xa5\xef\xbd\xa1\xf1\x80\x81\x81\xf0\x91\x84\xb3\xf0\x9e\xa4\xa5\xdc\x90"); } // [B1, B5, B6, V7]16361test { try toUnicodeFail("\xf3\xa0\x95\xb2\xf3\x9f\xb6\xb6\xd9\xa5\xef\xbd\xa1\xf1\x80\x81\x81\xf0\x91\x84\xb3\xf0\x9e\xa4\xa5\xdc\x90"); } // [B1, B5, B6, V7]
16362test { try toAsciiFail("\xf3\xa0\x95\xb2\xf3\x9f\xb6\xb6\xd9\xa5\xef\xbd\xa1\xf1\x80\x81\x81\xf0\x91\x84\xb3\xf0\x9e\xa4\xa5\xdc\x90", false); } // [B1, B5, B6, V7]
16363test { try toAsciiFail("\xf3\xa0\x95\xb2\xf3\x9f\xb6\xb6\xd9\xa5\xef\xbd\xa1\xf1\x80\x81\x81\xf0\x91\x84\xb3\xf0\x9e\xa4\xa5\xdc\x90", true); } // [B1, B5, B6, V7]
6600test { try toUnicodeFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xef\xbd\xa1\xcf\x82\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c"); } // [B2, B6, C1, V7]16364test { try toUnicodeFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xef\xbd\xa1\xcf\x82\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c"); } // [B2, B6, C1, V7]
16365test { try toAsciiFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xef\xbd\xa1\xcf\x82\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c", false); } // [B2, B6, C1, V7]
16366test { try toAsciiFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xef\xbd\xa1\xcf\x82\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c", true); } // [B2, B6, V7]
6601test { try toUnicodeFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xe3\x80\x82\xcf\x82\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c"); } // [B2, B6, C1, V7]16367test { try toUnicodeFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xe3\x80\x82\xcf\x82\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c"); } // [B2, B6, C1, V7]
16368test { try toAsciiFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xe3\x80\x82\xcf\x82\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c", false); } // [B2, B6, C1, V7]
16369test { try toAsciiFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xe3\x80\x82\xcf\x82\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c", true); } // [B2, B6, V7]
6602test { try toUnicodeFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xe3\x80\x82\xce\xa3\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c"); } // [B2, B6, C1, V7]16370test { try toUnicodeFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xe3\x80\x82\xce\xa3\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c"); } // [B2, B6, C1, V7]
16371test { try toAsciiFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xe3\x80\x82\xce\xa3\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c", false); } // [B2, B6, C1, V7]
16372test { try toAsciiFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xe3\x80\x82\xce\xa3\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c", true); } // [B2, B6, V7]
6603test { try toUnicodeFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xe3\x80\x82\xcf\x83\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c"); } // [B2, B6, C1, V7]16373test { try toUnicodeFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xe3\x80\x82\xcf\x83\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c"); } // [B2, B6, C1, V7]
16374test { try toAsciiFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xe3\x80\x82\xcf\x83\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c", false); } // [B2, B6, C1, V7]
16375test { try toAsciiFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xe3\x80\x82\xcf\x83\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c", true); } // [B2, B6, V7]
6604test { try toUnicodeFail("xn--qnb616fis0qzt36f.xn--4xa847hli46a"); } // [B2, B6, V7]16376test { try toUnicodeFail("xn--qnb616fis0qzt36f.xn--4xa847hli46a"); } // [B2, B6, V7]
16377test { try toAsciiFail("xn--qnb616fis0qzt36f.xn--4xa847hli46a", false); } // [B2, B6, V7]
16378test { try toAsciiFail("xn--qnb616fis0qzt36f.xn--4xa847hli46a", true); } // [B2, B6, V7]
6605test { try toUnicodeFail("xn--qnb616fis0qzt36f.xn--4xa847h6ofgl44c"); } // [B2, B6, C1, V7]16379test { try toUnicodeFail("xn--qnb616fis0qzt36f.xn--4xa847h6ofgl44c"); } // [B2, B6, C1, V7]
16380test { try toAsciiFail("xn--qnb616fis0qzt36f.xn--4xa847h6ofgl44c", false); } // [B2, B6, C1, V7]
16381test { try toAsciiFail("xn--qnb616fis0qzt36f.xn--4xa847h6ofgl44c", true); } // [B2, B6, C1, V7]
6606test { try toUnicodeFail("xn--qnb616fis0qzt36f.xn--3xa057h6ofgl44c"); } // [B2, B6, C1, V7]16382test { try toUnicodeFail("xn--qnb616fis0qzt36f.xn--3xa057h6ofgl44c"); } // [B2, B6, C1, V7]
16383test { try toAsciiFail("xn--qnb616fis0qzt36f.xn--3xa057h6ofgl44c", false); } // [B2, B6, C1, V7]
16384test { try toAsciiFail("xn--qnb616fis0qzt36f.xn--3xa057h6ofgl44c", true); } // [B2, B6, C1, V7]
6607test { try toUnicodeFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xef\xbd\xa1\xce\xa3\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c"); } // [B2, B6, C1, V7]16385test { try toUnicodeFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xef\xbd\xa1\xce\xa3\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c"); } // [B2, B6, C1, V7]
16386test { try toAsciiFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xef\xbd\xa1\xce\xa3\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c", false); } // [B2, B6, C1, V7]
16387test { try toAsciiFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xef\xbd\xa1\xce\xa3\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c", true); } // [B2, B6, V7]
6608test { try toUnicodeFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xef\xbd\xa1\xcf\x83\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c"); } // [B2, B6, C1, V7]16388test { try toUnicodeFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xef\xbd\xa1\xcf\x83\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c"); } // [B2, B6, C1, V7]
16389test { try toAsciiFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xef\xbd\xa1\xcf\x83\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c", false); } // [B2, B6, C1, V7]
16390test { try toAsciiFail("\xdc\xa0\xf2\xb2\xa0\xbd\xf0\x90\xb9\xa2\xe1\x9e\xbb\xef\xbd\xa1\xcf\x83\xe1\xa2\x88\xf0\x9f\x9d\xad\xe2\x80\x8c", true); } // [B2, B6, V7]
6609test { try toUnicodeFail("\xe2\x80\x8d--\xe2\x89\xae\xe3\x80\x82\xf0\x90\xb9\xa7"); } // [B1, C2]16391test { try toUnicodeFail("\xe2\x80\x8d--\xe2\x89\xae\xe3\x80\x82\xf0\x90\xb9\xa7"); } // [B1, C2]
16392test { try toAsciiFail("\xe2\x80\x8d--\xe2\x89\xae\xe3\x80\x82\xf0\x90\xb9\xa7", false); } // [B1, C2]
16393test { try toAsciiFail("\xe2\x80\x8d--\xe2\x89\xae\xe3\x80\x82\xf0\x90\xb9\xa7", true); } // [B1, V3]
6610test { try toUnicodeFail("\xe2\x80\x8d--<\xcc\xb8\xe3\x80\x82\xf0\x90\xb9\xa7"); } // [B1, C2]16394test { try toUnicodeFail("\xe2\x80\x8d--<\xcc\xb8\xe3\x80\x82\xf0\x90\xb9\xa7"); } // [B1, C2]
16395test { try toAsciiFail("\xe2\x80\x8d--<\xcc\xb8\xe3\x80\x82\xf0\x90\xb9\xa7", false); } // [B1, C2]
16396test { try toAsciiFail("\xe2\x80\x8d--<\xcc\xb8\xe3\x80\x82\xf0\x90\xb9\xa7", true); } // [B1, V3]
6611test { try toUnicodeFail("xn-----ujv.xn--fo0d"); } // [B1, V3]16397test { try toUnicodeFail("xn-----ujv.xn--fo0d"); } // [B1, V3]
16398test { try toAsciiFail("xn-----ujv.xn--fo0d", false); } // [B1, V3]
16399test { try toAsciiFail("xn-----ujv.xn--fo0d", true); } // [B1, V3]
6612test { try toUnicodeFail("xn-----l1tz1k.xn--fo0d"); } // [B1, C2]16400test { try toUnicodeFail("xn-----l1tz1k.xn--fo0d"); } // [B1, C2]
16401test { try toAsciiFail("xn-----l1tz1k.xn--fo0d", false); } // [B1, C2]
16402test { try toAsciiFail("xn-----l1tz1k.xn--fo0d", true); } // [B1, C2]
6613test { try toUnicodeFail("\xea\xa0\x86\xe3\x80\x82\xf0\xbb\x9a\x8f\xe0\xbe\xb0\xe2\x92\x95"); } // [V6, V7]16403test { try toUnicodeFail("\xea\xa0\x86\xe3\x80\x82\xf0\xbb\x9a\x8f\xe0\xbe\xb0\xe2\x92\x95"); } // [V6, V7]
16404test { try toAsciiFail("\xea\xa0\x86\xe3\x80\x82\xf0\xbb\x9a\x8f\xe0\xbe\xb0\xe2\x92\x95", false); } // [V6, V7]
16405test { try toAsciiFail("\xea\xa0\x86\xe3\x80\x82\xf0\xbb\x9a\x8f\xe0\xbe\xb0\xe2\x92\x95", true); } // [V6, V7]
6614test { try toUnicodeFail("\xea\xa0\x86\xe3\x80\x82\xf0\xbb\x9a\x8f\xe0\xbe\xb014."); } // [V6, V7]16406test { try toUnicodeFail("\xea\xa0\x86\xe3\x80\x82\xf0\xbb\x9a\x8f\xe0\xbe\xb014."); } // [V6, V7]
16407test { try toAsciiFail("\xea\xa0\x86\xe3\x80\x82\xf0\xbb\x9a\x8f\xe0\xbe\xb014.", false); } // [V6, V7, A4_2]
16408test { try toAsciiFail("\xea\xa0\x86\xe3\x80\x82\xf0\xbb\x9a\x8f\xe0\xbe\xb014.", true); } // [V6, V7, A4_2]
6615test { try toUnicodeFail("xn--l98a.xn--14-jsj57880f."); } // [V6, V7]16409test { try toUnicodeFail("xn--l98a.xn--14-jsj57880f."); } // [V6, V7]
16410test { try toAsciiFail("xn--l98a.xn--14-jsj57880f.", false); } // [V6, V7, A4_2]
16411test { try toAsciiFail("xn--l98a.xn--14-jsj57880f.", true); } // [V6, V7, A4_2]
6616test { try toUnicodeFail("xn--l98a.xn--dgd218hhp28d"); } // [V6, V7]16412test { try toUnicodeFail("xn--l98a.xn--dgd218hhp28d"); } // [V6, V7]
16413test { try toAsciiFail("xn--l98a.xn--dgd218hhp28d", false); } // [V6, V7]
16414test { try toAsciiFail("xn--l98a.xn--dgd218hhp28d", true); } // [V6, V7]
6617test { try toUnicodeFail("\xf2\xae\x89\x82\xda\xbc\xef\xbc\x8e\xf0\x91\x86\xba\xd9\xa9"); } // [B1, B5, B6, V6, V7]16415test { try toUnicodeFail("\xf2\xae\x89\x82\xda\xbc\xef\xbc\x8e\xf0\x91\x86\xba\xd9\xa9"); } // [B1, B5, B6, V6, V7]
16416test { try toAsciiFail("\xf2\xae\x89\x82\xda\xbc\xef\xbc\x8e\xf0\x91\x86\xba\xd9\xa9", false); } // [B1, B5, B6, V6, V7]
16417test { try toAsciiFail("\xf2\xae\x89\x82\xda\xbc\xef\xbc\x8e\xf0\x91\x86\xba\xd9\xa9", true); } // [B1, B5, B6, V6, V7]
6618test { try toUnicodeFail("\xf2\xae\x89\x82\xda\xbc.\xf0\x91\x86\xba\xd9\xa9"); } // [B1, B5, B6, V6, V7]16418test { try toUnicodeFail("\xf2\xae\x89\x82\xda\xbc.\xf0\x91\x86\xba\xd9\xa9"); } // [B1, B5, B6, V6, V7]
16419test { try toAsciiFail("\xf2\xae\x89\x82\xda\xbc.\xf0\x91\x86\xba\xd9\xa9", false); } // [B1, B5, B6, V6, V7]
16420test { try toAsciiFail("\xf2\xae\x89\x82\xda\xbc.\xf0\x91\x86\xba\xd9\xa9", true); } // [B1, B5, B6, V6, V7]
6619test { try toUnicodeFail("xn--vkb92243l.xn--iib9797k"); } // [B1, B5, B6, V6, V7]16421test { try toUnicodeFail("xn--vkb92243l.xn--iib9797k"); } // [B1, B5, B6, V6, V7]
16422test { try toAsciiFail("xn--vkb92243l.xn--iib9797k", false); } // [B1, B5, B6, V6, V7]
16423test { try toAsciiFail("xn--vkb92243l.xn--iib9797k", true); } // [B1, B5, B6, V6, V7]
6620test { try toUnicodeFail("\xf3\xa0\x81\x8e\xdb\x90-\xe3\x80\x82\xf0\x9e\xa4\xb4"); } // [B1, V3, V7]16424test { try toUnicodeFail("\xf3\xa0\x81\x8e\xdb\x90-\xe3\x80\x82\xf0\x9e\xa4\xb4"); } // [B1, V3, V7]
16425test { try toAsciiFail("\xf3\xa0\x81\x8e\xdb\x90-\xe3\x80\x82\xf0\x9e\xa4\xb4", false); } // [B1, V3, V7]
16426test { try toAsciiFail("\xf3\xa0\x81\x8e\xdb\x90-\xe3\x80\x82\xf0\x9e\xa4\xb4", true); } // [B1, V3, V7]
6621test { try toUnicodeFail("\xf3\xa0\x81\x8e\xdb\x90-\xe3\x80\x82\xf0\x9e\xa4\x92"); } // [B1, V3, V7]16427test { try toUnicodeFail("\xf3\xa0\x81\x8e\xdb\x90-\xe3\x80\x82\xf0\x9e\xa4\x92"); } // [B1, V3, V7]
16428test { try toAsciiFail("\xf3\xa0\x81\x8e\xdb\x90-\xe3\x80\x82\xf0\x9e\xa4\x92", false); } // [B1, V3, V7]
16429test { try toAsciiFail("\xf3\xa0\x81\x8e\xdb\x90-\xe3\x80\x82\xf0\x9e\xa4\x92", true); } // [B1, V3, V7]
6622test { try toUnicodeFail("xn----mwc72685y.xn--se6h"); } // [B1, V3, V7]16430test { try toUnicodeFail("xn----mwc72685y.xn--se6h"); } // [B1, V3, V7]
16431test { try toAsciiFail("xn----mwc72685y.xn--se6h", false); } // [B1, V3, V7]
16432test { try toAsciiFail("xn----mwc72685y.xn--se6h", true); } // [B1, V3, V7]
6623test { try toAsciiPass("\xf0\x9d\x9f\xa04\xf3\xa0\x87\x97\xf0\x9d\x88\xbb\xef\xbc\x8e\xe2\x80\x8d\xf0\x90\x8b\xb5\xe2\x9b\xa7\xe2\x80\x8d", "xn--84-s850a.xn--59h6326e", true); }16433test { try toAsciiPass("\xf0\x9d\x9f\xa04\xf3\xa0\x87\x97\xf0\x9d\x88\xbb\xef\xbc\x8e\xe2\x80\x8d\xf0\x90\x8b\xb5\xe2\x9b\xa7\xe2\x80\x8d", "xn--84-s850a.xn--59h6326e", true); }
6624test { try toUnicodeFail("\xf0\x9d\x9f\xa04\xf3\xa0\x87\x97\xf0\x9d\x88\xbb\xef\xbc\x8e\xe2\x80\x8d\xf0\x90\x8b\xb5\xe2\x9b\xa7\xe2\x80\x8d"); } // [C2]16434test { try toUnicodeFail("\xf0\x9d\x9f\xa04\xf3\xa0\x87\x97\xf0\x9d\x88\xbb\xef\xbc\x8e\xe2\x80\x8d\xf0\x90\x8b\xb5\xe2\x9b\xa7\xe2\x80\x8d"); } // [C2]
16435test { try toAsciiFail("\xf0\x9d\x9f\xa04\xf3\xa0\x87\x97\xf0\x9d\x88\xbb\xef\xbc\x8e\xe2\x80\x8d\xf0\x90\x8b\xb5\xe2\x9b\xa7\xe2\x80\x8d", false); } // [C2]
6625test { try toAsciiPass("84\xf3\xa0\x87\x97\xf0\x9d\x88\xbb.\xe2\x80\x8d\xf0\x90\x8b\xb5\xe2\x9b\xa7\xe2\x80\x8d", "xn--84-s850a.xn--59h6326e", true); }16436test { try toAsciiPass("84\xf3\xa0\x87\x97\xf0\x9d\x88\xbb.\xe2\x80\x8d\xf0\x90\x8b\xb5\xe2\x9b\xa7\xe2\x80\x8d", "xn--84-s850a.xn--59h6326e", true); }
6626test { try toUnicodeFail("84\xf3\xa0\x87\x97\xf0\x9d\x88\xbb.\xe2\x80\x8d\xf0\x90\x8b\xb5\xe2\x9b\xa7\xe2\x80\x8d"); } // [C2]16437test { try toUnicodeFail("84\xf3\xa0\x87\x97\xf0\x9d\x88\xbb.\xe2\x80\x8d\xf0\x90\x8b\xb5\xe2\x9b\xa7\xe2\x80\x8d"); } // [C2]
16438test { try toAsciiFail("84\xf3\xa0\x87\x97\xf0\x9d\x88\xbb.\xe2\x80\x8d\xf0\x90\x8b\xb5\xe2\x9b\xa7\xe2\x80\x8d", false); } // [C2]
6627test { try toUnicodePass("xn--84-s850a.xn--59h6326e", "84\xf0\x9d\x88\xbb.\xf0\x90\x8b\xb5\xe2\x9b\xa7"); }16439test { try toUnicodePass("xn--84-s850a.xn--59h6326e", "84\xf0\x9d\x88\xbb.\xf0\x90\x8b\xb5\xe2\x9b\xa7"); }
6628test { try toAsciiPass("xn--84-s850a.xn--59h6326e", "xn--84-s850a.xn--59h6326e", false); }16440test { try toAsciiPass("xn--84-s850a.xn--59h6326e", "xn--84-s850a.xn--59h6326e", false); }
6629test { try toAsciiPass("xn--84-s850a.xn--59h6326e", "xn--84-s850a.xn--59h6326e", true); }16441test { try toAsciiPass("xn--84-s850a.xn--59h6326e", "xn--84-s850a.xn--59h6326e", true); }
...@@ -6631,9 +16443,17 @@ test { try toUnicodePass("84\xf0\x9d\x88\xbb.\xf0\x90\x8b\xb5\xe2\x9b\xa7", "84\...@@ -6631,9 +16443,17 @@ test { try toUnicodePass("84\xf0\x9d\x88\xbb.\xf0\x90\x8b\xb5\xe2\x9b\xa7", "84\
6631test { try toAsciiPass("84\xf0\x9d\x88\xbb.\xf0\x90\x8b\xb5\xe2\x9b\xa7", "xn--84-s850a.xn--59h6326e", false); }16443test { try toAsciiPass("84\xf0\x9d\x88\xbb.\xf0\x90\x8b\xb5\xe2\x9b\xa7", "xn--84-s850a.xn--59h6326e", false); }
6632test { try toAsciiPass("84\xf0\x9d\x88\xbb.\xf0\x90\x8b\xb5\xe2\x9b\xa7", "xn--84-s850a.xn--59h6326e", true); }16444test { try toAsciiPass("84\xf0\x9d\x88\xbb.\xf0\x90\x8b\xb5\xe2\x9b\xa7", "xn--84-s850a.xn--59h6326e", true); }
6633test { try toUnicodeFail("xn--84-s850a.xn--1uga573cfq1w"); } // [C2]16445test { try toUnicodeFail("xn--84-s850a.xn--1uga573cfq1w"); } // [C2]
16446test { try toAsciiFail("xn--84-s850a.xn--1uga573cfq1w", false); } // [C2]
16447test { try toAsciiFail("xn--84-s850a.xn--1uga573cfq1w", true); } // [C2]
6634test { try toUnicodeFail("-\xd8\x81\xef\xbd\xa1\xe1\xa1\xaa"); } // [B1, V3, V7]16448test { try toUnicodeFail("-\xd8\x81\xef\xbd\xa1\xe1\xa1\xaa"); } // [B1, V3, V7]
16449test { try toAsciiFail("-\xd8\x81\xef\xbd\xa1\xe1\xa1\xaa", false); } // [B1, V3, V7]
16450test { try toAsciiFail("-\xd8\x81\xef\xbd\xa1\xe1\xa1\xaa", true); } // [B1, V3, V7]
6635test { try toUnicodeFail("-\xd8\x81\xe3\x80\x82\xe1\xa1\xaa"); } // [B1, V3, V7]16451test { try toUnicodeFail("-\xd8\x81\xe3\x80\x82\xe1\xa1\xaa"); } // [B1, V3, V7]
16452test { try toAsciiFail("-\xd8\x81\xe3\x80\x82\xe1\xa1\xaa", false); } // [B1, V3, V7]
16453test { try toAsciiFail("-\xd8\x81\xe3\x80\x82\xe1\xa1\xaa", true); } // [B1, V3, V7]
6636test { try toUnicodeFail("xn----tkc.xn--68e"); } // [B1, V3, V7]16454test { try toUnicodeFail("xn----tkc.xn--68e"); } // [B1, V3, V7]
16455test { try toAsciiFail("xn----tkc.xn--68e", false); } // [B1, V3, V7]
16456test { try toAsciiFail("xn----tkc.xn--68e", true); } // [B1, V3, V7]
6637test { try toUnicodePass("\xe2\x89\xae\xf0\x9d\x9f\x95\xef\xbc\x8e\xe8\xac\x96\xc3\x9f\xe2\x89\xaf", "\xe2\x89\xae7.\xe8\xac\x96\xc3\x9f\xe2\x89\xaf"); }16457test { try toUnicodePass("\xe2\x89\xae\xf0\x9d\x9f\x95\xef\xbc\x8e\xe8\xac\x96\xc3\x9f\xe2\x89\xaf", "\xe2\x89\xae7.\xe8\xac\x96\xc3\x9f\xe2\x89\xaf"); }
6638test { try toAsciiPass("\xe2\x89\xae\xf0\x9d\x9f\x95\xef\xbc\x8e\xe8\xac\x96\xc3\x9f\xe2\x89\xaf", "xn--7-mgo.xn--zca892oly5e", false); }16458test { try toAsciiPass("\xe2\x89\xae\xf0\x9d\x9f\x95\xef\xbc\x8e\xe8\xac\x96\xc3\x9f\xe2\x89\xaf", "xn--7-mgo.xn--zca892oly5e", false); }
6639test { try toAsciiPass("\xe2\x89\xae\xf0\x9d\x9f\x95\xef\xbc\x8e\xe8\xac\x96\xc3\x9f\xe2\x89\xaf", "xn--7-mgo.xn--ss-xjvv174c", true); }16459test { try toAsciiPass("\xe2\x89\xae\xf0\x9d\x9f\x95\xef\xbc\x8e\xe8\xac\x96\xc3\x9f\xe2\x89\xaf", "xn--7-mgo.xn--ss-xjvv174c", true); }
...@@ -6689,45 +16509,125 @@ test { try toUnicodePass("\xe2\x89\xae\xf0\x9d\x9f\x95\xef\xbc\x8e\xe8\xac\x96Ss...@@ -6689,45 +16509,125 @@ test { try toUnicodePass("\xe2\x89\xae\xf0\x9d\x9f\x95\xef\xbc\x8e\xe8\xac\x96Ss
6689test { try toAsciiPass("\xe2\x89\xae\xf0\x9d\x9f\x95\xef\xbc\x8e\xe8\xac\x96Ss\xe2\x89\xaf", "xn--7-mgo.xn--ss-xjvv174c", false); }16509test { try toAsciiPass("\xe2\x89\xae\xf0\x9d\x9f\x95\xef\xbc\x8e\xe8\xac\x96Ss\xe2\x89\xaf", "xn--7-mgo.xn--ss-xjvv174c", false); }
6690test { try toAsciiPass("\xe2\x89\xae\xf0\x9d\x9f\x95\xef\xbc\x8e\xe8\xac\x96Ss\xe2\x89\xaf", "xn--7-mgo.xn--ss-xjvv174c", true); }16510test { try toAsciiPass("\xe2\x89\xae\xf0\x9d\x9f\x95\xef\xbc\x8e\xe8\xac\x96Ss\xe2\x89\xaf", "xn--7-mgo.xn--ss-xjvv174c", true); }
6691test { try toUnicodeFail("\xe6\x9c\xb6\xe1\x82\xa9\xf0\x9e\xaa\xa1.\xf0\x9d\xa8\xbd\xe0\xa0\xa5\xf0\x9f\x93\xbb-"); } // [B1, B5, B6, V3, V6, V7]16511test { try toUnicodeFail("\xe6\x9c\xb6\xe1\x82\xa9\xf0\x9e\xaa\xa1.\xf0\x9d\xa8\xbd\xe0\xa0\xa5\xf0\x9f\x93\xbb-"); } // [B1, B5, B6, V3, V6, V7]
16512test { try toAsciiFail("\xe6\x9c\xb6\xe1\x82\xa9\xf0\x9e\xaa\xa1.\xf0\x9d\xa8\xbd\xe0\xa0\xa5\xf0\x9f\x93\xbb-", false); } // [B1, B5, B6, V3, V6, V7]
16513test { try toAsciiFail("\xe6\x9c\xb6\xe1\x82\xa9\xf0\x9e\xaa\xa1.\xf0\x9d\xa8\xbd\xe0\xa0\xa5\xf0\x9f\x93\xbb-", true); } // [B1, B5, B6, V3, V6, V7]
6692test { try toUnicodeFail("\xe6\x9c\xb6\xe2\xb4\x89\xf0\x9e\xaa\xa1.\xf0\x9d\xa8\xbd\xe0\xa0\xa5\xf0\x9f\x93\xbb-"); } // [B1, B5, B6, V3, V6, V7]16514test { try toUnicodeFail("\xe6\x9c\xb6\xe2\xb4\x89\xf0\x9e\xaa\xa1.\xf0\x9d\xa8\xbd\xe0\xa0\xa5\xf0\x9f\x93\xbb-"); } // [B1, B5, B6, V3, V6, V7]
16515test { try toAsciiFail("\xe6\x9c\xb6\xe2\xb4\x89\xf0\x9e\xaa\xa1.\xf0\x9d\xa8\xbd\xe0\xa0\xa5\xf0\x9f\x93\xbb-", false); } // [B1, B5, B6, V3, V6, V7]
16516test { try toAsciiFail("\xe6\x9c\xb6\xe2\xb4\x89\xf0\x9e\xaa\xa1.\xf0\x9d\xa8\xbd\xe0\xa0\xa5\xf0\x9f\x93\xbb-", true); } // [B1, B5, B6, V3, V6, V7]
6693test { try toUnicodeFail("xn--0kjz47pd57t.xn----3gd37096apmwa"); } // [B1, B5, B6, V3, V6, V7]16517test { try toUnicodeFail("xn--0kjz47pd57t.xn----3gd37096apmwa"); } // [B1, B5, B6, V3, V6, V7]
16518test { try toAsciiFail("xn--0kjz47pd57t.xn----3gd37096apmwa", false); } // [B1, B5, B6, V3, V6, V7]
16519test { try toAsciiFail("xn--0kjz47pd57t.xn----3gd37096apmwa", true); } // [B1, B5, B6, V3, V6, V7]
6694test { try toUnicodeFail("xn--hnd7245bd56p.xn----3gd37096apmwa"); } // [B1, B5, B6, V3, V6, V7]16520test { try toUnicodeFail("xn--hnd7245bd56p.xn----3gd37096apmwa"); } // [B1, B5, B6, V3, V6, V7]
16521test { try toAsciiFail("xn--hnd7245bd56p.xn----3gd37096apmwa", false); } // [B1, B5, B6, V3, V6, V7]
16522test { try toAsciiFail("xn--hnd7245bd56p.xn----3gd37096apmwa", true); } // [B1, B5, B6, V3, V6, V7]
6695test { try toUnicodeFail("\xf0\x90\xa4\x8e\xe3\x80\x82\xf3\x91\xbf\xb0\xe2\x80\x8c\xe2\x89\xae\xe2\x80\x8d"); } // [B6, C1, C2, V7]16523test { try toUnicodeFail("\xf0\x90\xa4\x8e\xe3\x80\x82\xf3\x91\xbf\xb0\xe2\x80\x8c\xe2\x89\xae\xe2\x80\x8d"); } // [B6, C1, C2, V7]
16524test { try toAsciiFail("\xf0\x90\xa4\x8e\xe3\x80\x82\xf3\x91\xbf\xb0\xe2\x80\x8c\xe2\x89\xae\xe2\x80\x8d", false); } // [B6, C1, C2, V7]
16525test { try toAsciiFail("\xf0\x90\xa4\x8e\xe3\x80\x82\xf3\x91\xbf\xb0\xe2\x80\x8c\xe2\x89\xae\xe2\x80\x8d", true); } // [B6, V7]
6696test { try toUnicodeFail("\xf0\x90\xa4\x8e\xe3\x80\x82\xf3\x91\xbf\xb0\xe2\x80\x8c<\xcc\xb8\xe2\x80\x8d"); } // [B6, C1, C2, V7]16526test { try toUnicodeFail("\xf0\x90\xa4\x8e\xe3\x80\x82\xf3\x91\xbf\xb0\xe2\x80\x8c<\xcc\xb8\xe2\x80\x8d"); } // [B6, C1, C2, V7]
16527test { try toAsciiFail("\xf0\x90\xa4\x8e\xe3\x80\x82\xf3\x91\xbf\xb0\xe2\x80\x8c<\xcc\xb8\xe2\x80\x8d", false); } // [B6, C1, C2, V7]
16528test { try toAsciiFail("\xf0\x90\xa4\x8e\xe3\x80\x82\xf3\x91\xbf\xb0\xe2\x80\x8c<\xcc\xb8\xe2\x80\x8d", true); } // [B6, V7]
6697test { try toUnicodeFail("xn--bk9c.xn--gdhx6802k"); } // [B6, V7]16529test { try toUnicodeFail("xn--bk9c.xn--gdhx6802k"); } // [B6, V7]
16530test { try toAsciiFail("xn--bk9c.xn--gdhx6802k", false); } // [B6, V7]
16531test { try toAsciiFail("xn--bk9c.xn--gdhx6802k", true); } // [B6, V7]
6698test { try toUnicodeFail("xn--bk9c.xn--0ugc04p2u638c"); } // [B6, C1, C2, V7]16532test { try toUnicodeFail("xn--bk9c.xn--0ugc04p2u638c"); } // [B6, C1, C2, V7]
16533test { try toAsciiFail("xn--bk9c.xn--0ugc04p2u638c", false); } // [B6, C1, C2, V7]
16534test { try toAsciiFail("xn--bk9c.xn--0ugc04p2u638c", true); } // [B6, C1, C2, V7]
6699test { try toUnicodeFail("\xf1\xad\x9c\x8e\xe2\x92\x88\xef\xbd\xa1\xe2\x80\x8c\xf0\x9d\x9f\xa4"); } // [C1, V7]16535test { try toUnicodeFail("\xf1\xad\x9c\x8e\xe2\x92\x88\xef\xbd\xa1\xe2\x80\x8c\xf0\x9d\x9f\xa4"); } // [C1, V7]
16536test { try toAsciiFail("\xf1\xad\x9c\x8e\xe2\x92\x88\xef\xbd\xa1\xe2\x80\x8c\xf0\x9d\x9f\xa4", false); } // [C1, V7]
16537test { try toAsciiFail("\xf1\xad\x9c\x8e\xe2\x92\x88\xef\xbd\xa1\xe2\x80\x8c\xf0\x9d\x9f\xa4", true); } // [V7]
6700test { try toUnicodeFail("\xf1\xad\x9c\x8e1.\xe3\x80\x82\xe2\x80\x8c2"); } // [C1, V7, X4_2]16538test { try toUnicodeFail("\xf1\xad\x9c\x8e1.\xe3\x80\x82\xe2\x80\x8c2"); } // [C1, V7, X4_2]
16539test { try toAsciiFail("\xf1\xad\x9c\x8e1.\xe3\x80\x82\xe2\x80\x8c2", false); } // [C1, V7, A4_2]
16540test { try toAsciiFail("\xf1\xad\x9c\x8e1.\xe3\x80\x82\xe2\x80\x8c2", true); } // [V7, A4_2]
6701test { try toUnicodeFail("xn--1-ex54e..c"); } // [V7, X4_2]16541test { try toUnicodeFail("xn--1-ex54e..c"); } // [V7, X4_2]
16542test { try toAsciiFail("xn--1-ex54e..c", false); } // [V7, A4_2]
16543test { try toAsciiFail("xn--1-ex54e..c", true); } // [V7, A4_2]
6702test { try toUnicodeFail("xn--1-ex54e..xn--2-rgn"); } // [C1, V7, X4_2]16544test { try toUnicodeFail("xn--1-ex54e..xn--2-rgn"); } // [C1, V7, X4_2]
16545test { try toAsciiFail("xn--1-ex54e..xn--2-rgn", false); } // [C1, V7, A4_2]
16546test { try toAsciiFail("xn--1-ex54e..xn--2-rgn", true); } // [C1, V7, A4_2]
6703test { try toUnicodeFail("xn--tsh94183d.c"); } // [V7]16547test { try toUnicodeFail("xn--tsh94183d.c"); } // [V7]
16548test { try toAsciiFail("xn--tsh94183d.c", false); } // [V7]
16549test { try toAsciiFail("xn--tsh94183d.c", true); } // [V7]
6704test { try toUnicodeFail("xn--tsh94183d.xn--2-rgn"); } // [C1, V7]16550test { try toUnicodeFail("xn--tsh94183d.xn--2-rgn"); } // [C1, V7]
16551test { try toAsciiFail("xn--tsh94183d.xn--2-rgn", false); } // [C1, V7]
16552test { try toAsciiFail("xn--tsh94183d.xn--2-rgn", true); } // [C1, V7]
6705test { try toUnicodeFail("\xf3\xa0\x9f\x8a\xf0\x90\xb9\xa4\xe2\x80\x8d\xef\xbc\x8e\xf0\x90\xb9\xb3\xf3\x99\x84\xb5\xf0\x90\xb9\xb6"); } // [B1, C2, V7]16553test { try toUnicodeFail("\xf3\xa0\x9f\x8a\xf0\x90\xb9\xa4\xe2\x80\x8d\xef\xbc\x8e\xf0\x90\xb9\xb3\xf3\x99\x84\xb5\xf0\x90\xb9\xb6"); } // [B1, C2, V7]
16554test { try toAsciiFail("\xf3\xa0\x9f\x8a\xf0\x90\xb9\xa4\xe2\x80\x8d\xef\xbc\x8e\xf0\x90\xb9\xb3\xf3\x99\x84\xb5\xf0\x90\xb9\xb6", false); } // [B1, C2, V7]
16555test { try toAsciiFail("\xf3\xa0\x9f\x8a\xf0\x90\xb9\xa4\xe2\x80\x8d\xef\xbc\x8e\xf0\x90\xb9\xb3\xf3\x99\x84\xb5\xf0\x90\xb9\xb6", true); } // [B1, V7]
6706test { try toUnicodeFail("\xf3\xa0\x9f\x8a\xf0\x90\xb9\xa4\xe2\x80\x8d.\xf0\x90\xb9\xb3\xf3\x99\x84\xb5\xf0\x90\xb9\xb6"); } // [B1, C2, V7]16556test { try toUnicodeFail("\xf3\xa0\x9f\x8a\xf0\x90\xb9\xa4\xe2\x80\x8d.\xf0\x90\xb9\xb3\xf3\x99\x84\xb5\xf0\x90\xb9\xb6"); } // [B1, C2, V7]
16557test { try toAsciiFail("\xf3\xa0\x9f\x8a\xf0\x90\xb9\xa4\xe2\x80\x8d.\xf0\x90\xb9\xb3\xf3\x99\x84\xb5\xf0\x90\xb9\xb6", false); } // [B1, C2, V7]
16558test { try toAsciiFail("\xf3\xa0\x9f\x8a\xf0\x90\xb9\xa4\xe2\x80\x8d.\xf0\x90\xb9\xb3\xf3\x99\x84\xb5\xf0\x90\xb9\xb6", true); } // [B1, V7]
6707test { try toUnicodeFail("xn--co0d98977c.xn--ro0dga22807v"); } // [B1, V7]16559test { try toUnicodeFail("xn--co0d98977c.xn--ro0dga22807v"); } // [B1, V7]
16560test { try toAsciiFail("xn--co0d98977c.xn--ro0dga22807v", false); } // [B1, V7]
16561test { try toAsciiFail("xn--co0d98977c.xn--ro0dga22807v", true); } // [B1, V7]
6708test { try toUnicodeFail("xn--1ugy994g7k93g.xn--ro0dga22807v"); } // [B1, C2, V7]16562test { try toUnicodeFail("xn--1ugy994g7k93g.xn--ro0dga22807v"); } // [B1, C2, V7]
16563test { try toAsciiFail("xn--1ugy994g7k93g.xn--ro0dga22807v", false); } // [B1, C2, V7]
16564test { try toAsciiFail("xn--1ugy994g7k93g.xn--ro0dga22807v", true); } // [B1, C2, V7]
6709test { try toUnicodeFail("\xf0\x9e\xa4\xb4\xf0\x90\xb9\xbb\xf0\x91\x93\x82\xf0\x90\xad\x9d\xef\xbc\x8e\xe0\xa5\x8d\xef\xb8\x87\xf4\x89\x9b\xaf"); } // [B1, V6, V7]16565test { try toUnicodeFail("\xf0\x9e\xa4\xb4\xf0\x90\xb9\xbb\xf0\x91\x93\x82\xf0\x90\xad\x9d\xef\xbc\x8e\xe0\xa5\x8d\xef\xb8\x87\xf4\x89\x9b\xaf"); } // [B1, V6, V7]
16566test { try toAsciiFail("\xf0\x9e\xa4\xb4\xf0\x90\xb9\xbb\xf0\x91\x93\x82\xf0\x90\xad\x9d\xef\xbc\x8e\xe0\xa5\x8d\xef\xb8\x87\xf4\x89\x9b\xaf", false); } // [B1, V6, V7]
16567test { try toAsciiFail("\xf0\x9e\xa4\xb4\xf0\x90\xb9\xbb\xf0\x91\x93\x82\xf0\x90\xad\x9d\xef\xbc\x8e\xe0\xa5\x8d\xef\xb8\x87\xf4\x89\x9b\xaf", true); } // [B1, V6, V7]
6710test { try toUnicodeFail("\xf0\x9e\xa4\xb4\xf0\x90\xb9\xbb\xf0\x91\x93\x82\xf0\x90\xad\x9d.\xe0\xa5\x8d\xef\xb8\x87\xf4\x89\x9b\xaf"); } // [B1, V6, V7]16568test { try toUnicodeFail("\xf0\x9e\xa4\xb4\xf0\x90\xb9\xbb\xf0\x91\x93\x82\xf0\x90\xad\x9d.\xe0\xa5\x8d\xef\xb8\x87\xf4\x89\x9b\xaf"); } // [B1, V6, V7]
16569test { try toAsciiFail("\xf0\x9e\xa4\xb4\xf0\x90\xb9\xbb\xf0\x91\x93\x82\xf0\x90\xad\x9d.\xe0\xa5\x8d\xef\xb8\x87\xf4\x89\x9b\xaf", false); } // [B1, V6, V7]
16570test { try toAsciiFail("\xf0\x9e\xa4\xb4\xf0\x90\xb9\xbb\xf0\x91\x93\x82\xf0\x90\xad\x9d.\xe0\xa5\x8d\xef\xb8\x87\xf4\x89\x9b\xaf", true); } // [B1, V6, V7]
6711test { try toUnicodeFail("\xf0\x9e\xa4\x92\xf0\x90\xb9\xbb\xf0\x91\x93\x82\xf0\x90\xad\x9d.\xe0\xa5\x8d\xef\xb8\x87\xf4\x89\x9b\xaf"); } // [B1, V6, V7]16571test { try toUnicodeFail("\xf0\x9e\xa4\x92\xf0\x90\xb9\xbb\xf0\x91\x93\x82\xf0\x90\xad\x9d.\xe0\xa5\x8d\xef\xb8\x87\xf4\x89\x9b\xaf"); } // [B1, V6, V7]
16572test { try toAsciiFail("\xf0\x9e\xa4\x92\xf0\x90\xb9\xbb\xf0\x91\x93\x82\xf0\x90\xad\x9d.\xe0\xa5\x8d\xef\xb8\x87\xf4\x89\x9b\xaf", false); } // [B1, V6, V7]
16573test { try toAsciiFail("\xf0\x9e\xa4\x92\xf0\x90\xb9\xbb\xf0\x91\x93\x82\xf0\x90\xad\x9d.\xe0\xa5\x8d\xef\xb8\x87\xf4\x89\x9b\xaf", true); } // [B1, V6, V7]
6712test { try toUnicodeFail("xn--609c96c09grp2w.xn--n3b28708s"); } // [B1, V6, V7]16574test { try toUnicodeFail("xn--609c96c09grp2w.xn--n3b28708s"); } // [B1, V6, V7]
16575test { try toAsciiFail("xn--609c96c09grp2w.xn--n3b28708s", false); } // [B1, V6, V7]
16576test { try toAsciiFail("xn--609c96c09grp2w.xn--n3b28708s", true); } // [B1, V6, V7]
6713test { try toUnicodeFail("\xf0\x9e\xa4\x92\xf0\x90\xb9\xbb\xf0\x91\x93\x82\xf0\x90\xad\x9d\xef\xbc\x8e\xe0\xa5\x8d\xef\xb8\x87\xf4\x89\x9b\xaf"); } // [B1, V6, V7]16577test { try toUnicodeFail("\xf0\x9e\xa4\x92\xf0\x90\xb9\xbb\xf0\x91\x93\x82\xf0\x90\xad\x9d\xef\xbc\x8e\xe0\xa5\x8d\xef\xb8\x87\xf4\x89\x9b\xaf"); } // [B1, V6, V7]
16578test { try toAsciiFail("\xf0\x9e\xa4\x92\xf0\x90\xb9\xbb\xf0\x91\x93\x82\xf0\x90\xad\x9d\xef\xbc\x8e\xe0\xa5\x8d\xef\xb8\x87\xf4\x89\x9b\xaf", false); } // [B1, V6, V7]
16579test { try toAsciiFail("\xf0\x9e\xa4\x92\xf0\x90\xb9\xbb\xf0\x91\x93\x82\xf0\x90\xad\x9d\xef\xbc\x8e\xe0\xa5\x8d\xef\xb8\x87\xf4\x89\x9b\xaf", true); } // [B1, V6, V7]
6714test { try toUnicodeFail("\xd9\xa8\xef\xbd\xa1\xf0\x90\xb9\xa0\xf0\x90\xb9\xbd\xf1\x97\xae\xb6"); } // [B1, V7]16580test { try toUnicodeFail("\xd9\xa8\xef\xbd\xa1\xf0\x90\xb9\xa0\xf0\x90\xb9\xbd\xf1\x97\xae\xb6"); } // [B1, V7]
16581test { try toAsciiFail("\xd9\xa8\xef\xbd\xa1\xf0\x90\xb9\xa0\xf0\x90\xb9\xbd\xf1\x97\xae\xb6", false); } // [B1, V7]
16582test { try toAsciiFail("\xd9\xa8\xef\xbd\xa1\xf0\x90\xb9\xa0\xf0\x90\xb9\xbd\xf1\x97\xae\xb6", true); } // [B1, V7]
6715test { try toUnicodeFail("\xd9\xa8\xe3\x80\x82\xf0\x90\xb9\xa0\xf0\x90\xb9\xbd\xf1\x97\xae\xb6"); } // [B1, V7]16583test { try toUnicodeFail("\xd9\xa8\xe3\x80\x82\xf0\x90\xb9\xa0\xf0\x90\xb9\xbd\xf1\x97\xae\xb6"); } // [B1, V7]
16584test { try toAsciiFail("\xd9\xa8\xe3\x80\x82\xf0\x90\xb9\xa0\xf0\x90\xb9\xbd\xf1\x97\xae\xb6", false); } // [B1, V7]
16585test { try toAsciiFail("\xd9\xa8\xe3\x80\x82\xf0\x90\xb9\xa0\xf0\x90\xb9\xbd\xf1\x97\xae\xb6", true); } // [B1, V7]
6716test { try toUnicodeFail("xn--hib.xn--7n0d2bu9196b"); } // [B1, V7]16586test { try toUnicodeFail("xn--hib.xn--7n0d2bu9196b"); } // [B1, V7]
16587test { try toAsciiFail("xn--hib.xn--7n0d2bu9196b", false); } // [B1, V7]
16588test { try toAsciiFail("xn--hib.xn--7n0d2bu9196b", true); } // [B1, V7]
6717test { try toUnicodeFail("\xe1\x85\xa0\xf1\x8d\x80\x9c.8\xf2\xb6\xbe\xb5\xda\x9c"); } // [B1, V7]16589test { try toUnicodeFail("\xe1\x85\xa0\xf1\x8d\x80\x9c.8\xf2\xb6\xbe\xb5\xda\x9c"); } // [B1, V7]
16590test { try toAsciiFail("\xe1\x85\xa0\xf1\x8d\x80\x9c.8\xf2\xb6\xbe\xb5\xda\x9c", false); } // [B1, V7]
16591test { try toAsciiFail("\xe1\x85\xa0\xf1\x8d\x80\x9c.8\xf2\xb6\xbe\xb5\xda\x9c", true); } // [B1, V7]
6718test { try toUnicodeFail("xn--mn1x.xn--8-otc61545t"); } // [B1, V7]16592test { try toUnicodeFail("xn--mn1x.xn--8-otc61545t"); } // [B1, V7]
16593test { try toAsciiFail("xn--mn1x.xn--8-otc61545t", false); } // [B1, V7]
16594test { try toAsciiFail("xn--mn1x.xn--8-otc61545t", true); } // [B1, V7]
6719test { try toUnicodeFail("xn--psd85033d.xn--8-otc61545t"); } // [B1, V7]16595test { try toUnicodeFail("xn--psd85033d.xn--8-otc61545t"); } // [B1, V7]
16596test { try toAsciiFail("xn--psd85033d.xn--8-otc61545t", false); } // [B1, V7]
16597test { try toAsciiFail("xn--psd85033d.xn--8-otc61545t", true); } // [B1, V7]
6720test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xef\xbd\xa1\xc3\x9f\xf0\x91\x93\x83"); } // [C1, C2]16598test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xef\xbd\xa1\xc3\x9f\xf0\x91\x93\x83"); } // [C1, C2]
16599test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xef\xbd\xa1\xc3\x9f\xf0\x91\x93\x83", false); } // [C1, C2]
16600test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xef\xbd\xa1\xc3\x9f\xf0\x91\x93\x83", true); } // [A4_2]
6721test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xe3\x80\x82\xc3\x9f\xf0\x91\x93\x83"); } // [C1, C2]16601test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xe3\x80\x82\xc3\x9f\xf0\x91\x93\x83"); } // [C1, C2]
16602test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xe3\x80\x82\xc3\x9f\xf0\x91\x93\x83", false); } // [C1, C2]
16603test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xe3\x80\x82\xc3\x9f\xf0\x91\x93\x83", true); } // [A4_2]
6722test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xe3\x80\x82SS\xf0\x91\x93\x83"); } // [C1, C2]16604test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xe3\x80\x82SS\xf0\x91\x93\x83"); } // [C1, C2]
16605test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xe3\x80\x82SS\xf0\x91\x93\x83", false); } // [C1, C2]
16606test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xe3\x80\x82SS\xf0\x91\x93\x83", true); } // [A4_2]
6723test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xe3\x80\x82ss\xf0\x91\x93\x83"); } // [C1, C2]16607test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xe3\x80\x82ss\xf0\x91\x93\x83"); } // [C1, C2]
16608test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xe3\x80\x82ss\xf0\x91\x93\x83", false); } // [C1, C2]
16609test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xe3\x80\x82ss\xf0\x91\x93\x83", true); } // [A4_2]
6724test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xe3\x80\x82Ss\xf0\x91\x93\x83"); } // [C1, C2]16610test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xe3\x80\x82Ss\xf0\x91\x93\x83"); } // [C1, C2]
16611test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xe3\x80\x82Ss\xf0\x91\x93\x83", false); } // [C1, C2]
16612test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xe3\x80\x82Ss\xf0\x91\x93\x83", true); } // [A4_2]
6725test { try toUnicodeFail(".xn--ss-bh7o"); } // [X4_2]16613test { try toUnicodeFail(".xn--ss-bh7o"); } // [X4_2]
16614test { try toAsciiFail(".xn--ss-bh7o", false); } // [A4_2]
16615test { try toAsciiFail(".xn--ss-bh7o", true); } // [A4_2]
6726test { try toUnicodeFail("xn--0ugb.xn--ss-bh7o"); } // [C1, C2]16616test { try toUnicodeFail("xn--0ugb.xn--ss-bh7o"); } // [C1, C2]
16617test { try toAsciiFail("xn--0ugb.xn--ss-bh7o", false); } // [C1, C2]
16618test { try toAsciiFail("xn--0ugb.xn--ss-bh7o", true); } // [C1, C2]
6727test { try toUnicodeFail("xn--0ugb.xn--zca0732l"); } // [C1, C2]16619test { try toUnicodeFail("xn--0ugb.xn--zca0732l"); } // [C1, C2]
16620test { try toAsciiFail("xn--0ugb.xn--zca0732l", false); } // [C1, C2]
16621test { try toAsciiFail("xn--0ugb.xn--zca0732l", true); } // [C1, C2]
6728test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xef\xbd\xa1SS\xf0\x91\x93\x83"); } // [C1, C2]16622test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xef\xbd\xa1SS\xf0\x91\x93\x83"); } // [C1, C2]
16623test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xef\xbd\xa1SS\xf0\x91\x93\x83", false); } // [C1, C2]
16624test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xef\xbd\xa1SS\xf0\x91\x93\x83", true); } // [A4_2]
6729test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xef\xbd\xa1ss\xf0\x91\x93\x83"); } // [C1, C2]16625test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xef\xbd\xa1ss\xf0\x91\x93\x83"); } // [C1, C2]
16626test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xef\xbd\xa1ss\xf0\x91\x93\x83", false); } // [C1, C2]
16627test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xef\xbd\xa1ss\xf0\x91\x93\x83", true); } // [A4_2]
6730test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xef\xbd\xa1Ss\xf0\x91\x93\x83"); } // [C1, C2]16628test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xef\xbd\xa1Ss\xf0\x91\x93\x83"); } // [C1, C2]
16629test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xef\xbd\xa1Ss\xf0\x91\x93\x83", false); } // [C1, C2]
16630test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xef\xbd\xa1Ss\xf0\x91\x93\x83", true); } // [A4_2]
6731test { try toUnicodePass("xn--ss-bh7o", "ss\xf0\x91\x93\x83"); }16631test { try toUnicodePass("xn--ss-bh7o", "ss\xf0\x91\x93\x83"); }
6732test { try toAsciiPass("xn--ss-bh7o", "xn--ss-bh7o", false); }16632test { try toAsciiPass("xn--ss-bh7o", "xn--ss-bh7o", false); }
6733test { try toAsciiPass("xn--ss-bh7o", "xn--ss-bh7o", true); }16633test { try toAsciiPass("xn--ss-bh7o", "xn--ss-bh7o", true); }
...@@ -6741,11 +16641,23 @@ test { try toUnicodePass("Ss\xf0\x91\x93\x83", "ss\xf0\x91\x93\x83"); }...@@ -6741,11 +16641,23 @@ test { try toUnicodePass("Ss\xf0\x91\x93\x83", "ss\xf0\x91\x93\x83"); }
6741test { try toAsciiPass("Ss\xf0\x91\x93\x83", "xn--ss-bh7o", false); }16641test { try toAsciiPass("Ss\xf0\x91\x93\x83", "xn--ss-bh7o", false); }
6742test { try toAsciiPass("Ss\xf0\x91\x93\x83", "xn--ss-bh7o", true); }16642test { try toAsciiPass("Ss\xf0\x91\x93\x83", "xn--ss-bh7o", true); }
6743test { try toUnicodeFail("\xef\xb8\x92\xe2\x80\x8c\xe3\x83\xb6\xe4\x92\xa9.\xea\xa1\xaa"); } // [C1, V7]16643test { try toUnicodeFail("\xef\xb8\x92\xe2\x80\x8c\xe3\x83\xb6\xe4\x92\xa9.\xea\xa1\xaa"); } // [C1, V7]
16644test { try toAsciiFail("\xef\xb8\x92\xe2\x80\x8c\xe3\x83\xb6\xe4\x92\xa9.\xea\xa1\xaa", false); } // [C1, V7]
16645test { try toAsciiFail("\xef\xb8\x92\xe2\x80\x8c\xe3\x83\xb6\xe4\x92\xa9.\xea\xa1\xaa", true); } // [V7]
6744test { try toUnicodeFail("\xe3\x80\x82\xe2\x80\x8c\xe3\x83\xb6\xe4\x92\xa9.\xea\xa1\xaa"); } // [C1, X4_2]16646test { try toUnicodeFail("\xe3\x80\x82\xe2\x80\x8c\xe3\x83\xb6\xe4\x92\xa9.\xea\xa1\xaa"); } // [C1, X4_2]
16647test { try toAsciiFail("\xe3\x80\x82\xe2\x80\x8c\xe3\x83\xb6\xe4\x92\xa9.\xea\xa1\xaa", false); } // [C1, A4_2]
16648test { try toAsciiFail("\xe3\x80\x82\xe2\x80\x8c\xe3\x83\xb6\xe4\x92\xa9.\xea\xa1\xaa", true); } // [A4_2]
6745test { try toUnicodeFail(".xn--qekw60d.xn--gd9a"); } // [X4_2]16649test { try toUnicodeFail(".xn--qekw60d.xn--gd9a"); } // [X4_2]
16650test { try toAsciiFail(".xn--qekw60d.xn--gd9a", false); } // [A4_2]
16651test { try toAsciiFail(".xn--qekw60d.xn--gd9a", true); } // [A4_2]
6746test { try toUnicodeFail(".xn--0ug287dj0o.xn--gd9a"); } // [C1, X4_2]16652test { try toUnicodeFail(".xn--0ug287dj0o.xn--gd9a"); } // [C1, X4_2]
16653test { try toAsciiFail(".xn--0ug287dj0o.xn--gd9a", false); } // [C1, A4_2]
16654test { try toAsciiFail(".xn--0ug287dj0o.xn--gd9a", true); } // [C1, A4_2]
6747test { try toUnicodeFail("xn--qekw60dns9k.xn--gd9a"); } // [V7]16655test { try toUnicodeFail("xn--qekw60dns9k.xn--gd9a"); } // [V7]
16656test { try toAsciiFail("xn--qekw60dns9k.xn--gd9a", false); } // [V7]
16657test { try toAsciiFail("xn--qekw60dns9k.xn--gd9a", true); } // [V7]
6748test { try toUnicodeFail("xn--0ug287dj0or48o.xn--gd9a"); } // [C1, V7]16658test { try toUnicodeFail("xn--0ug287dj0or48o.xn--gd9a"); } // [C1, V7]
16659test { try toAsciiFail("xn--0ug287dj0or48o.xn--gd9a", false); } // [C1, V7]
16660test { try toAsciiFail("xn--0ug287dj0or48o.xn--gd9a", true); } // [C1, V7]
6749test { try toUnicodePass("xn--qekw60d.xn--gd9a", "\xe3\x83\xb6\xe4\x92\xa9.\xea\xa1\xaa"); }16661test { try toUnicodePass("xn--qekw60d.xn--gd9a", "\xe3\x83\xb6\xe4\x92\xa9.\xea\xa1\xaa"); }
6750test { try toAsciiPass("xn--qekw60d.xn--gd9a", "xn--qekw60d.xn--gd9a", false); }16662test { try toAsciiPass("xn--qekw60d.xn--gd9a", "xn--qekw60d.xn--gd9a", false); }
6751test { try toAsciiPass("xn--qekw60d.xn--gd9a", "xn--qekw60d.xn--gd9a", true); }16663test { try toAsciiPass("xn--qekw60d.xn--gd9a", "xn--qekw60d.xn--gd9a", true); }
...@@ -6753,39 +16665,98 @@ test { try toUnicodePass("\xe3\x83\xb6\xe4\x92\xa9.\xea\xa1\xaa", "\xe3\x83\xb6\...@@ -6753,39 +16665,98 @@ test { try toUnicodePass("\xe3\x83\xb6\xe4\x92\xa9.\xea\xa1\xaa", "\xe3\x83\xb6\
6753test { try toAsciiPass("\xe3\x83\xb6\xe4\x92\xa9.\xea\xa1\xaa", "xn--qekw60d.xn--gd9a", false); }16665test { try toAsciiPass("\xe3\x83\xb6\xe4\x92\xa9.\xea\xa1\xaa", "xn--qekw60d.xn--gd9a", false); }
6754test { try toAsciiPass("\xe3\x83\xb6\xe4\x92\xa9.\xea\xa1\xaa", "xn--qekw60d.xn--gd9a", true); }16666test { try toAsciiPass("\xe3\x83\xb6\xe4\x92\xa9.\xea\xa1\xaa", "xn--qekw60d.xn--gd9a", true); }
6755test { try toUnicodeFail("\xe2\x80\x8c\xe2\x92\x88\xf0\xa4\xae\x8d.\xf3\xa2\x93\x8b\xe1\xa9\xa0"); } // [C1, V7]16667test { try toUnicodeFail("\xe2\x80\x8c\xe2\x92\x88\xf0\xa4\xae\x8d.\xf3\xa2\x93\x8b\xe1\xa9\xa0"); } // [C1, V7]
16668test { try toAsciiFail("\xe2\x80\x8c\xe2\x92\x88\xf0\xa4\xae\x8d.\xf3\xa2\x93\x8b\xe1\xa9\xa0", false); } // [C1, V7]
16669test { try toAsciiFail("\xe2\x80\x8c\xe2\x92\x88\xf0\xa4\xae\x8d.\xf3\xa2\x93\x8b\xe1\xa9\xa0", true); } // [V7]
6756test { try toUnicodeFail("\xe2\x80\x8c1.\xf0\xa4\xae\x8d.\xf3\xa2\x93\x8b\xe1\xa9\xa0"); } // [C1, V7]16670test { try toUnicodeFail("\xe2\x80\x8c1.\xf0\xa4\xae\x8d.\xf3\xa2\x93\x8b\xe1\xa9\xa0"); } // [C1, V7]
16671test { try toAsciiFail("\xe2\x80\x8c1.\xf0\xa4\xae\x8d.\xf3\xa2\x93\x8b\xe1\xa9\xa0", false); } // [C1, V7]
16672test { try toAsciiFail("\xe2\x80\x8c1.\xf0\xa4\xae\x8d.\xf3\xa2\x93\x8b\xe1\xa9\xa0", true); } // [V7]
6757test { try toUnicodeFail("1.xn--4x6j.xn--jof45148n"); } // [V7]16673test { try toUnicodeFail("1.xn--4x6j.xn--jof45148n"); } // [V7]
16674test { try toAsciiFail("1.xn--4x6j.xn--jof45148n", false); } // [V7]
16675test { try toAsciiFail("1.xn--4x6j.xn--jof45148n", true); } // [V7]
6758test { try toUnicodeFail("xn--1-rgn.xn--4x6j.xn--jof45148n"); } // [C1, V7]16676test { try toUnicodeFail("xn--1-rgn.xn--4x6j.xn--jof45148n"); } // [C1, V7]
16677test { try toAsciiFail("xn--1-rgn.xn--4x6j.xn--jof45148n", false); } // [C1, V7]
16678test { try toAsciiFail("xn--1-rgn.xn--4x6j.xn--jof45148n", true); } // [C1, V7]
6759test { try toUnicodeFail("xn--tshw462r.xn--jof45148n"); } // [V7]16679test { try toUnicodeFail("xn--tshw462r.xn--jof45148n"); } // [V7]
16680test { try toAsciiFail("xn--tshw462r.xn--jof45148n", false); } // [V7]
16681test { try toAsciiFail("xn--tshw462r.xn--jof45148n", true); } // [V7]
6760test { try toUnicodeFail("xn--0ug88o7471d.xn--jof45148n"); } // [C1, V7]16682test { try toUnicodeFail("xn--0ug88o7471d.xn--jof45148n"); } // [C1, V7]
16683test { try toAsciiFail("xn--0ug88o7471d.xn--jof45148n", false); } // [C1, V7]
16684test { try toAsciiFail("xn--0ug88o7471d.xn--jof45148n", true); } // [C1, V7]
6761test { try toUnicodeFail("\xe2\x92\x88\xe2\x80\x8c\xf0\x90\xab\x93\xf3\xa0\x80\xba\xe3\x80\x82\xe1\xa9\xa0\xf1\xa4\xb0\xb5\xe2\x80\x8d"); } // [B1, C1, C2, V6, V7]16685test { try toUnicodeFail("\xe2\x92\x88\xe2\x80\x8c\xf0\x90\xab\x93\xf3\xa0\x80\xba\xe3\x80\x82\xe1\xa9\xa0\xf1\xa4\xb0\xb5\xe2\x80\x8d"); } // [B1, C1, C2, V6, V7]
16686test { try toAsciiFail("\xe2\x92\x88\xe2\x80\x8c\xf0\x90\xab\x93\xf3\xa0\x80\xba\xe3\x80\x82\xe1\xa9\xa0\xf1\xa4\xb0\xb5\xe2\x80\x8d", false); } // [B1, C1, C2, V6, V7]
16687test { try toAsciiFail("\xe2\x92\x88\xe2\x80\x8c\xf0\x90\xab\x93\xf3\xa0\x80\xba\xe3\x80\x82\xe1\xa9\xa0\xf1\xa4\xb0\xb5\xe2\x80\x8d", true); } // [B1, V6, V7]
6762test { try toUnicodeFail("1.\xe2\x80\x8c\xf0\x90\xab\x93\xf3\xa0\x80\xba\xe3\x80\x82\xe1\xa9\xa0\xf1\xa4\xb0\xb5\xe2\x80\x8d"); } // [B1, C1, C2, V6, V7]16688test { try toUnicodeFail("1.\xe2\x80\x8c\xf0\x90\xab\x93\xf3\xa0\x80\xba\xe3\x80\x82\xe1\xa9\xa0\xf1\xa4\xb0\xb5\xe2\x80\x8d"); } // [B1, C1, C2, V6, V7]
16689test { try toAsciiFail("1.\xe2\x80\x8c\xf0\x90\xab\x93\xf3\xa0\x80\xba\xe3\x80\x82\xe1\xa9\xa0\xf1\xa4\xb0\xb5\xe2\x80\x8d", false); } // [B1, C1, C2, V6, V7]
16690test { try toAsciiFail("1.\xe2\x80\x8c\xf0\x90\xab\x93\xf3\xa0\x80\xba\xe3\x80\x82\xe1\xa9\xa0\xf1\xa4\xb0\xb5\xe2\x80\x8d", true); } // [B1, B3, V6, V7]
6763test { try toUnicodeFail("1.xn--8w9c40377c.xn--jofz5294e"); } // [B1, B3, V6, V7]16691test { try toUnicodeFail("1.xn--8w9c40377c.xn--jofz5294e"); } // [B1, B3, V6, V7]
16692test { try toAsciiFail("1.xn--8w9c40377c.xn--jofz5294e", false); } // [B1, B3, V6, V7]
16693test { try toAsciiFail("1.xn--8w9c40377c.xn--jofz5294e", true); } // [B1, B3, V6, V7]
6764test { try toUnicodeFail("1.xn--0ug8853gk263g.xn--jof95xex98m"); } // [B1, C1, C2, V6, V7]16694test { try toUnicodeFail("1.xn--0ug8853gk263g.xn--jof95xex98m"); } // [B1, C1, C2, V6, V7]
16695test { try toAsciiFail("1.xn--0ug8853gk263g.xn--jof95xex98m", false); } // [B1, C1, C2, V6, V7]
16696test { try toAsciiFail("1.xn--0ug8853gk263g.xn--jof95xex98m", true); } // [B1, C1, C2, V6, V7]
6765test { try toUnicodeFail("xn--tsh4435fk263g.xn--jofz5294e"); } // [B1, V6, V7]16697test { try toUnicodeFail("xn--tsh4435fk263g.xn--jofz5294e"); } // [B1, V6, V7]
16698test { try toAsciiFail("xn--tsh4435fk263g.xn--jofz5294e", false); } // [B1, V6, V7]
16699test { try toAsciiFail("xn--tsh4435fk263g.xn--jofz5294e", true); } // [B1, V6, V7]
6766test { try toUnicodeFail("xn--0ug78ol75wzcx4i.xn--jof95xex98m"); } // [B1, C1, C2, V6, V7]16700test { try toUnicodeFail("xn--0ug78ol75wzcx4i.xn--jof95xex98m"); } // [B1, C1, C2, V6, V7]
16701test { try toAsciiFail("xn--0ug78ol75wzcx4i.xn--jof95xex98m", false); } // [B1, C1, C2, V6, V7]
16702test { try toAsciiFail("xn--0ug78ol75wzcx4i.xn--jof95xex98m", true); } // [B1, C1, C2, V6, V7]
6767test { try toUnicodeFail("\xf0\x9d\x85\xb5\xef\xbd\xa1\xf0\x9d\x9f\xab\xf0\x9e\x80\x88\xe4\xac\xba\xe2\x92\x88"); } // [V7, X4_2]16703test { try toUnicodeFail("\xf0\x9d\x85\xb5\xef\xbd\xa1\xf0\x9d\x9f\xab\xf0\x9e\x80\x88\xe4\xac\xba\xe2\x92\x88"); } // [V7, X4_2]
16704test { try toAsciiFail("\xf0\x9d\x85\xb5\xef\xbd\xa1\xf0\x9d\x9f\xab\xf0\x9e\x80\x88\xe4\xac\xba\xe2\x92\x88", false); } // [V7, A4_2]
16705test { try toAsciiFail("\xf0\x9d\x85\xb5\xef\xbd\xa1\xf0\x9d\x9f\xab\xf0\x9e\x80\x88\xe4\xac\xba\xe2\x92\x88", true); } // [V7, A4_2]
6768test { try toUnicodeFail("\xf0\x9d\x85\xb5\xe3\x80\x829\xf0\x9e\x80\x88\xe4\xac\xba1."); } // [X4_2]16706test { try toUnicodeFail("\xf0\x9d\x85\xb5\xe3\x80\x829\xf0\x9e\x80\x88\xe4\xac\xba1."); } // [X4_2]
16707test { try toAsciiFail("\xf0\x9d\x85\xb5\xe3\x80\x829\xf0\x9e\x80\x88\xe4\xac\xba1.", false); } // [A4_2]
16708test { try toAsciiFail("\xf0\x9d\x85\xb5\xe3\x80\x829\xf0\x9e\x80\x88\xe4\xac\xba1.", true); } // [A4_2]
6769test { try toUnicodeFail(".xn--91-030c1650n."); } // [X4_2]16709test { try toUnicodeFail(".xn--91-030c1650n."); } // [X4_2]
16710test { try toAsciiFail(".xn--91-030c1650n.", false); } // [A4_2]
16711test { try toAsciiFail(".xn--91-030c1650n.", true); } // [A4_2]
6770test { try toUnicodeFail(".xn--9-ecp936non25a"); } // [V7, X4_2]16712test { try toUnicodeFail(".xn--9-ecp936non25a"); } // [V7, X4_2]
16713test { try toAsciiFail(".xn--9-ecp936non25a", false); } // [V7, A4_2]
16714test { try toAsciiFail(".xn--9-ecp936non25a", true); } // [V7, A4_2]
6771test { try toUnicodeFail("xn--3f1h.xn--91-030c1650n."); } // [V7]16715test { try toUnicodeFail("xn--3f1h.xn--91-030c1650n."); } // [V7]
16716test { try toAsciiFail("xn--3f1h.xn--91-030c1650n.", false); } // [V7, A4_2]
16717test { try toAsciiFail("xn--3f1h.xn--91-030c1650n.", true); } // [V7, A4_2]
6772test { try toUnicodeFail("xn--3f1h.xn--9-ecp936non25a"); } // [V7]16718test { try toUnicodeFail("xn--3f1h.xn--9-ecp936non25a"); } // [V7]
16719test { try toAsciiFail("xn--3f1h.xn--9-ecp936non25a", false); } // [V7]
16720test { try toAsciiFail("xn--3f1h.xn--9-ecp936non25a", true); } // [V7]
6773test { try toUnicodeFail("\xf2\xa1\xbc\xba\xe2\x89\xaf\xe3\x80\x82\xe7\x9b\x9a\xd8\xb5"); } // [B5, B6, V7]16721test { try toUnicodeFail("\xf2\xa1\xbc\xba\xe2\x89\xaf\xe3\x80\x82\xe7\x9b\x9a\xd8\xb5"); } // [B5, B6, V7]
16722test { try toAsciiFail("\xf2\xa1\xbc\xba\xe2\x89\xaf\xe3\x80\x82\xe7\x9b\x9a\xd8\xb5", false); } // [B5, B6, V7]
16723test { try toAsciiFail("\xf2\xa1\xbc\xba\xe2\x89\xaf\xe3\x80\x82\xe7\x9b\x9a\xd8\xb5", true); } // [B5, B6, V7]
6774test { try toUnicodeFail("\xf2\xa1\xbc\xba>\xcc\xb8\xe3\x80\x82\xe7\x9b\x9a\xd8\xb5"); } // [B5, B6, V7]16724test { try toUnicodeFail("\xf2\xa1\xbc\xba>\xcc\xb8\xe3\x80\x82\xe7\x9b\x9a\xd8\xb5"); } // [B5, B6, V7]
16725test { try toAsciiFail("\xf2\xa1\xbc\xba>\xcc\xb8\xe3\x80\x82\xe7\x9b\x9a\xd8\xb5", false); } // [B5, B6, V7]
16726test { try toAsciiFail("\xf2\xa1\xbc\xba>\xcc\xb8\xe3\x80\x82\xe7\x9b\x9a\xd8\xb5", true); } // [B5, B6, V7]
6775test { try toUnicodeFail("xn--hdh30181h.xn--0gb7878c"); } // [B5, B6, V7]16727test { try toUnicodeFail("xn--hdh30181h.xn--0gb7878c"); } // [B5, B6, V7]
16728test { try toAsciiFail("xn--hdh30181h.xn--0gb7878c", false); } // [B5, B6, V7]
16729test { try toAsciiFail("xn--hdh30181h.xn--0gb7878c", true); } // [B5, B6, V7]
6776test { try toUnicodeFail("-\xf1\xbf\xb0\xad\xd6\xb4\xe3\x80\x82-\xf3\xa0\x81\x8a\xf0\x90\xa2\xb8\xe2\x89\xaf"); } // [B1, V3, V7]16730test { try toUnicodeFail("-\xf1\xbf\xb0\xad\xd6\xb4\xe3\x80\x82-\xf3\xa0\x81\x8a\xf0\x90\xa2\xb8\xe2\x89\xaf"); } // [B1, V3, V7]
16731test { try toAsciiFail("-\xf1\xbf\xb0\xad\xd6\xb4\xe3\x80\x82-\xf3\xa0\x81\x8a\xf0\x90\xa2\xb8\xe2\x89\xaf", false); } // [B1, V3, V7]
16732test { try toAsciiFail("-\xf1\xbf\xb0\xad\xd6\xb4\xe3\x80\x82-\xf3\xa0\x81\x8a\xf0\x90\xa2\xb8\xe2\x89\xaf", true); } // [B1, V3, V7]
6777test { try toUnicodeFail("-\xf1\xbf\xb0\xad\xd6\xb4\xe3\x80\x82-\xf3\xa0\x81\x8a\xf0\x90\xa2\xb8>\xcc\xb8"); } // [B1, V3, V7]16733test { try toUnicodeFail("-\xf1\xbf\xb0\xad\xd6\xb4\xe3\x80\x82-\xf3\xa0\x81\x8a\xf0\x90\xa2\xb8>\xcc\xb8"); } // [B1, V3, V7]
16734test { try toAsciiFail("-\xf1\xbf\xb0\xad\xd6\xb4\xe3\x80\x82-\xf3\xa0\x81\x8a\xf0\x90\xa2\xb8>\xcc\xb8", false); } // [B1, V3, V7]
16735test { try toAsciiFail("-\xf1\xbf\xb0\xad\xd6\xb4\xe3\x80\x82-\xf3\xa0\x81\x8a\xf0\x90\xa2\xb8>\xcc\xb8", true); } // [B1, V3, V7]
6778test { try toUnicodeFail("xn----fgc06667m.xn----pgoy615he5y4i"); } // [B1, V3, V7]16736test { try toUnicodeFail("xn----fgc06667m.xn----pgoy615he5y4i"); } // [B1, V3, V7]
16737test { try toAsciiFail("xn----fgc06667m.xn----pgoy615he5y4i", false); } // [B1, V3, V7]
16738test { try toAsciiFail("xn----fgc06667m.xn----pgoy615he5y4i", true); } // [B1, V3, V7]
6779test { try toUnicodeFail("\xf3\xbf\xad\x93\xe1\xad\x84\xe2\x80\x8c\xe0\xa9\x8d\xef\xbc\x8e\xf0\x90\xad\x9b\xf1\xb3\x8b\x94"); } // [B2, B3, B6, V7]16739test { try toUnicodeFail("\xf3\xbf\xad\x93\xe1\xad\x84\xe2\x80\x8c\xe0\xa9\x8d\xef\xbc\x8e\xf0\x90\xad\x9b\xf1\xb3\x8b\x94"); } // [B2, B3, B6, V7]
16740test { try toAsciiFail("\xf3\xbf\xad\x93\xe1\xad\x84\xe2\x80\x8c\xe0\xa9\x8d\xef\xbc\x8e\xf0\x90\xad\x9b\xf1\xb3\x8b\x94", false); } // [B2, B3, B6, V7]
16741test { try toAsciiFail("\xf3\xbf\xad\x93\xe1\xad\x84\xe2\x80\x8c\xe0\xa9\x8d\xef\xbc\x8e\xf0\x90\xad\x9b\xf1\xb3\x8b\x94", true); } // [B2, B3, V7]
6780test { try toUnicodeFail("\xf3\xbf\xad\x93\xe1\xad\x84\xe2\x80\x8c\xe0\xa9\x8d.\xf0\x90\xad\x9b\xf1\xb3\x8b\x94"); } // [B2, B3, B6, V7]16742test { try toUnicodeFail("\xf3\xbf\xad\x93\xe1\xad\x84\xe2\x80\x8c\xe0\xa9\x8d.\xf0\x90\xad\x9b\xf1\xb3\x8b\x94"); } // [B2, B3, B6, V7]
16743test { try toAsciiFail("\xf3\xbf\xad\x93\xe1\xad\x84\xe2\x80\x8c\xe0\xa9\x8d.\xf0\x90\xad\x9b\xf1\xb3\x8b\x94", false); } // [B2, B3, B6, V7]
16744test { try toAsciiFail("\xf3\xbf\xad\x93\xe1\xad\x84\xe2\x80\x8c\xe0\xa9\x8d.\xf0\x90\xad\x9b\xf1\xb3\x8b\x94", true); } // [B2, B3, V7]
6781test { try toUnicodeFail("xn--ybc997fb5881a.xn--409c6100y"); } // [B2, B3, V7]16745test { try toUnicodeFail("xn--ybc997fb5881a.xn--409c6100y"); } // [B2, B3, V7]
16746test { try toAsciiFail("xn--ybc997fb5881a.xn--409c6100y", false); } // [B2, B3, V7]
16747test { try toAsciiFail("xn--ybc997fb5881a.xn--409c6100y", true); } // [B2, B3, V7]
6782test { try toUnicodeFail("xn--ybc997f6rd2n772c.xn--409c6100y"); } // [B2, B3, B6, V7]16748test { try toUnicodeFail("xn--ybc997f6rd2n772c.xn--409c6100y"); } // [B2, B3, B6, V7]
16749test { try toAsciiFail("xn--ybc997f6rd2n772c.xn--409c6100y", false); } // [B2, B3, B6, V7]
16750test { try toAsciiFail("xn--ybc997f6rd2n772c.xn--409c6100y", true); } // [B2, B3, B6, V7]
6783test { try toAsciiPass("\xe2\xbe\x87.\xd9\xbd\xf0\x9e\xa4\xb4\xda\xbb\xe2\x80\x8d", "xn--8c1a.xn--2ib8jn539l", true); }16751test { try toAsciiPass("\xe2\xbe\x87.\xd9\xbd\xf0\x9e\xa4\xb4\xda\xbb\xe2\x80\x8d", "xn--8c1a.xn--2ib8jn539l", true); }
6784test { try toUnicodeFail("\xe2\xbe\x87.\xd9\xbd\xf0\x9e\xa4\xb4\xda\xbb\xe2\x80\x8d"); } // [B3, C2]16752test { try toUnicodeFail("\xe2\xbe\x87.\xd9\xbd\xf0\x9e\xa4\xb4\xda\xbb\xe2\x80\x8d"); } // [B3, C2]
16753test { try toAsciiFail("\xe2\xbe\x87.\xd9\xbd\xf0\x9e\xa4\xb4\xda\xbb\xe2\x80\x8d", false); } // [B3, C2]
6785test { try toAsciiPass("\xe8\x88\x9b.\xd9\xbd\xf0\x9e\xa4\xb4\xda\xbb\xe2\x80\x8d", "xn--8c1a.xn--2ib8jn539l", true); }16754test { try toAsciiPass("\xe8\x88\x9b.\xd9\xbd\xf0\x9e\xa4\xb4\xda\xbb\xe2\x80\x8d", "xn--8c1a.xn--2ib8jn539l", true); }
6786test { try toUnicodeFail("\xe8\x88\x9b.\xd9\xbd\xf0\x9e\xa4\xb4\xda\xbb\xe2\x80\x8d"); } // [B3, C2]16755test { try toUnicodeFail("\xe8\x88\x9b.\xd9\xbd\xf0\x9e\xa4\xb4\xda\xbb\xe2\x80\x8d"); } // [B3, C2]
16756test { try toAsciiFail("\xe8\x88\x9b.\xd9\xbd\xf0\x9e\xa4\xb4\xda\xbb\xe2\x80\x8d", false); } // [B3, C2]
6787test { try toAsciiPass("\xe8\x88\x9b.\xd9\xbd\xf0\x9e\xa4\x92\xda\xbb\xe2\x80\x8d", "xn--8c1a.xn--2ib8jn539l", true); }16757test { try toAsciiPass("\xe8\x88\x9b.\xd9\xbd\xf0\x9e\xa4\x92\xda\xbb\xe2\x80\x8d", "xn--8c1a.xn--2ib8jn539l", true); }
6788test { try toUnicodeFail("\xe8\x88\x9b.\xd9\xbd\xf0\x9e\xa4\x92\xda\xbb\xe2\x80\x8d"); } // [B3, C2]16758test { try toUnicodeFail("\xe8\x88\x9b.\xd9\xbd\xf0\x9e\xa4\x92\xda\xbb\xe2\x80\x8d"); } // [B3, C2]
16759test { try toAsciiFail("\xe8\x88\x9b.\xd9\xbd\xf0\x9e\xa4\x92\xda\xbb\xe2\x80\x8d", false); } // [B3, C2]
6789test { try toUnicodePass("xn--8c1a.xn--2ib8jn539l", "\xe8\x88\x9b.\xd9\xbd\xf0\x9e\xa4\xb4\xda\xbb"); }16760test { try toUnicodePass("xn--8c1a.xn--2ib8jn539l", "\xe8\x88\x9b.\xd9\xbd\xf0\x9e\xa4\xb4\xda\xbb"); }
6790test { try toAsciiPass("xn--8c1a.xn--2ib8jn539l", "xn--8c1a.xn--2ib8jn539l", false); }16761test { try toAsciiPass("xn--8c1a.xn--2ib8jn539l", "xn--8c1a.xn--2ib8jn539l", false); }
6791test { try toAsciiPass("xn--8c1a.xn--2ib8jn539l", "xn--8c1a.xn--2ib8jn539l", true); }16762test { try toAsciiPass("xn--8c1a.xn--2ib8jn539l", "xn--8c1a.xn--2ib8jn539l", true); }
...@@ -6796,376 +16767,1115 @@ test { try toUnicodePass("\xe8\x88\x9b.\xd9\xbd\xf0\x9e\xa4\x92\xda\xbb", "\xe8\...@@ -6796,376 +16767,1115 @@ test { try toUnicodePass("\xe8\x88\x9b.\xd9\xbd\xf0\x9e\xa4\x92\xda\xbb", "\xe8\
6796test { try toAsciiPass("\xe8\x88\x9b.\xd9\xbd\xf0\x9e\xa4\x92\xda\xbb", "xn--8c1a.xn--2ib8jn539l", false); }16767test { try toAsciiPass("\xe8\x88\x9b.\xd9\xbd\xf0\x9e\xa4\x92\xda\xbb", "xn--8c1a.xn--2ib8jn539l", false); }
6797test { try toAsciiPass("\xe8\x88\x9b.\xd9\xbd\xf0\x9e\xa4\x92\xda\xbb", "xn--8c1a.xn--2ib8jn539l", true); }16768test { try toAsciiPass("\xe8\x88\x9b.\xd9\xbd\xf0\x9e\xa4\x92\xda\xbb", "xn--8c1a.xn--2ib8jn539l", true); }
6798test { try toUnicodeFail("xn--8c1a.xn--2ib8jv19e6413b"); } // [B3, C2]16769test { try toUnicodeFail("xn--8c1a.xn--2ib8jv19e6413b"); } // [B3, C2]
16770test { try toAsciiFail("xn--8c1a.xn--2ib8jv19e6413b", false); } // [B3, C2]
16771test { try toAsciiFail("xn--8c1a.xn--2ib8jv19e6413b", true); } // [B3, C2]
6799test { try toAsciiPass("\xe2\xbe\x87.\xd9\xbd\xf0\x9e\xa4\x92\xda\xbb\xe2\x80\x8d", "xn--8c1a.xn--2ib8jn539l", true); }16772test { try toAsciiPass("\xe2\xbe\x87.\xd9\xbd\xf0\x9e\xa4\x92\xda\xbb\xe2\x80\x8d", "xn--8c1a.xn--2ib8jn539l", true); }
6800test { try toUnicodeFail("\xe2\xbe\x87.\xd9\xbd\xf0\x9e\xa4\x92\xda\xbb\xe2\x80\x8d"); } // [B3, C2]16773test { try toUnicodeFail("\xe2\xbe\x87.\xd9\xbd\xf0\x9e\xa4\x92\xda\xbb\xe2\x80\x8d"); } // [B3, C2]
16774test { try toAsciiFail("\xe2\xbe\x87.\xd9\xbd\xf0\x9e\xa4\x92\xda\xbb\xe2\x80\x8d", false); } // [B3, C2]
6801test { try toUnicodeFail("4\xf2\xad\x86\xa5\xe3\x80\x82\xdd\xa7\xe2\x89\xaf"); } // [B1, B3, V7]16775test { try toUnicodeFail("4\xf2\xad\x86\xa5\xe3\x80\x82\xdd\xa7\xe2\x89\xaf"); } // [B1, B3, V7]
16776test { try toAsciiFail("4\xf2\xad\x86\xa5\xe3\x80\x82\xdd\xa7\xe2\x89\xaf", false); } // [B1, B3, V7]
16777test { try toAsciiFail("4\xf2\xad\x86\xa5\xe3\x80\x82\xdd\xa7\xe2\x89\xaf", true); } // [B1, B3, V7]
6802test { try toUnicodeFail("4\xf2\xad\x86\xa5\xe3\x80\x82\xdd\xa7>\xcc\xb8"); } // [B1, B3, V7]16778test { try toUnicodeFail("4\xf2\xad\x86\xa5\xe3\x80\x82\xdd\xa7>\xcc\xb8"); } // [B1, B3, V7]
16779test { try toAsciiFail("4\xf2\xad\x86\xa5\xe3\x80\x82\xdd\xa7>\xcc\xb8", false); } // [B1, B3, V7]
16780test { try toAsciiFail("4\xf2\xad\x86\xa5\xe3\x80\x82\xdd\xa7>\xcc\xb8", true); } // [B1, B3, V7]
6803test { try toUnicodeFail("xn--4-xn17i.xn--rpb459k"); } // [B1, B3, V7]16781test { try toUnicodeFail("xn--4-xn17i.xn--rpb459k"); } // [B1, B3, V7]
16782test { try toAsciiFail("xn--4-xn17i.xn--rpb459k", false); } // [B1, B3, V7]
16783test { try toAsciiFail("xn--4-xn17i.xn--rpb459k", true); } // [B1, B3, V7]
6804test { try toUnicodeFail("\xf0\xb2\x94\x8f\xf0\x9e\xab\xa8\xf1\xba\xbf\x82\xe7\xa1\xb2\xef\xbc\x8e\xda\xad"); } // [B5, V7]16784test { try toUnicodeFail("\xf0\xb2\x94\x8f\xf0\x9e\xab\xa8\xf1\xba\xbf\x82\xe7\xa1\xb2\xef\xbc\x8e\xda\xad"); } // [B5, V7]
16785test { try toAsciiFail("\xf0\xb2\x94\x8f\xf0\x9e\xab\xa8\xf1\xba\xbf\x82\xe7\xa1\xb2\xef\xbc\x8e\xda\xad", false); } // [B5, V7]
16786test { try toAsciiFail("\xf0\xb2\x94\x8f\xf0\x9e\xab\xa8\xf1\xba\xbf\x82\xe7\xa1\xb2\xef\xbc\x8e\xda\xad", true); } // [B5, V7]
6805test { try toUnicodeFail("\xf0\xb2\x94\x8f\xf0\x9e\xab\xa8\xf1\xba\xbf\x82\xe7\xa1\xb2.\xda\xad"); } // [B5, V7]16787test { try toUnicodeFail("\xf0\xb2\x94\x8f\xf0\x9e\xab\xa8\xf1\xba\xbf\x82\xe7\xa1\xb2.\xda\xad"); } // [B5, V7]
16788test { try toAsciiFail("\xf0\xb2\x94\x8f\xf0\x9e\xab\xa8\xf1\xba\xbf\x82\xe7\xa1\xb2.\xda\xad", false); } // [B5, V7]
16789test { try toAsciiFail("\xf0\xb2\x94\x8f\xf0\x9e\xab\xa8\xf1\xba\xbf\x82\xe7\xa1\xb2.\xda\xad", true); } // [B5, V7]
6806test { try toUnicodeFail("xn--lcz1610fn78gk609a.xn--gkb"); } // [B5, V7]16790test { try toUnicodeFail("xn--lcz1610fn78gk609a.xn--gkb"); } // [B5, V7]
16791test { try toAsciiFail("xn--lcz1610fn78gk609a.xn--gkb", false); } // [B5, V7]
16792test { try toAsciiFail("xn--lcz1610fn78gk609a.xn--gkb", true); } // [B5, V7]
6807test { try toUnicodeFail("\xe2\x80\x8c.\xef\xb8\x88\xd9\xa6\xe1\x82\xa6\xe2\x84\xae"); } // [B1, C1]16793test { try toUnicodeFail("\xe2\x80\x8c.\xef\xb8\x88\xd9\xa6\xe1\x82\xa6\xe2\x84\xae"); } // [B1, C1]
16794test { try toAsciiFail("\xe2\x80\x8c.\xef\xb8\x88\xd9\xa6\xe1\x82\xa6\xe2\x84\xae", false); } // [B1, C1]
16795test { try toAsciiFail("\xe2\x80\x8c.\xef\xb8\x88\xd9\xa6\xe1\x82\xa6\xe2\x84\xae", true); } // [B1, A4_2]
6808test { try toUnicodeFail("\xe2\x80\x8c.\xef\xb8\x88\xd9\xa6\xe2\xb4\x86\xe2\x84\xae"); } // [B1, C1]16796test { try toUnicodeFail("\xe2\x80\x8c.\xef\xb8\x88\xd9\xa6\xe2\xb4\x86\xe2\x84\xae"); } // [B1, C1]
16797test { try toAsciiFail("\xe2\x80\x8c.\xef\xb8\x88\xd9\xa6\xe2\xb4\x86\xe2\x84\xae", false); } // [B1, C1]
16798test { try toAsciiFail("\xe2\x80\x8c.\xef\xb8\x88\xd9\xa6\xe2\xb4\x86\xe2\x84\xae", true); } // [B1, A4_2]
6809test { try toUnicodeFail(".xn--fib628k4li"); } // [B1, X4_2]16799test { try toUnicodeFail(".xn--fib628k4li"); } // [B1, X4_2]
16800test { try toAsciiFail(".xn--fib628k4li", false); } // [B1, A4_2]
16801test { try toAsciiFail(".xn--fib628k4li", true); } // [B1, A4_2]
6810test { try toUnicodeFail("xn--0ug.xn--fib628k4li"); } // [B1, C1]16802test { try toUnicodeFail("xn--0ug.xn--fib628k4li"); } // [B1, C1]
16803test { try toAsciiFail("xn--0ug.xn--fib628k4li", false); } // [B1, C1]
16804test { try toAsciiFail("xn--0ug.xn--fib628k4li", true); } // [B1, C1]
6811test { try toUnicodeFail(".xn--fib263c0yn"); } // [B1, V7, X4_2]16805test { try toUnicodeFail(".xn--fib263c0yn"); } // [B1, V7, X4_2]
16806test { try toAsciiFail(".xn--fib263c0yn", false); } // [B1, V7, A4_2]
16807test { try toAsciiFail(".xn--fib263c0yn", true); } // [B1, V7, A4_2]
6812test { try toUnicodeFail("xn--0ug.xn--fib263c0yn"); } // [B1, C1, V7]16808test { try toUnicodeFail("xn--0ug.xn--fib263c0yn"); } // [B1, C1, V7]
16809test { try toAsciiFail("xn--0ug.xn--fib263c0yn", false); } // [B1, C1, V7]
16810test { try toAsciiFail("xn--0ug.xn--fib263c0yn", true); } // [B1, C1, V7]
6813test { try toUnicodeFail("\xda\xa3\xef\xbc\x8e\xe0\xb5\x8d\xe2\x80\x8d\xcf\x9e"); } // [B1, V6]16811test { try toUnicodeFail("\xda\xa3\xef\xbc\x8e\xe0\xb5\x8d\xe2\x80\x8d\xcf\x9e"); } // [B1, V6]
16812test { try toAsciiFail("\xda\xa3\xef\xbc\x8e\xe0\xb5\x8d\xe2\x80\x8d\xcf\x9e", false); } // [B1, V6]
16813test { try toAsciiFail("\xda\xa3\xef\xbc\x8e\xe0\xb5\x8d\xe2\x80\x8d\xcf\x9e", true); } // [B1, V6]
6814test { try toUnicodeFail("\xda\xa3.\xe0\xb5\x8d\xe2\x80\x8d\xcf\x9e"); } // [B1, V6]16814test { try toUnicodeFail("\xda\xa3.\xe0\xb5\x8d\xe2\x80\x8d\xcf\x9e"); } // [B1, V6]
16815test { try toAsciiFail("\xda\xa3.\xe0\xb5\x8d\xe2\x80\x8d\xcf\x9e", false); } // [B1, V6]
16816test { try toAsciiFail("\xda\xa3.\xe0\xb5\x8d\xe2\x80\x8d\xcf\x9e", true); } // [B1, V6]
6815test { try toUnicodeFail("\xda\xa3.\xe0\xb5\x8d\xe2\x80\x8d\xcf\x9f"); } // [B1, V6]16817test { try toUnicodeFail("\xda\xa3.\xe0\xb5\x8d\xe2\x80\x8d\xcf\x9f"); } // [B1, V6]
16818test { try toAsciiFail("\xda\xa3.\xe0\xb5\x8d\xe2\x80\x8d\xcf\x9f", false); } // [B1, V6]
16819test { try toAsciiFail("\xda\xa3.\xe0\xb5\x8d\xe2\x80\x8d\xcf\x9f", true); } // [B1, V6]
6816test { try toUnicodeFail("xn--5jb.xn--xya149b"); } // [B1, V6]16820test { try toUnicodeFail("xn--5jb.xn--xya149b"); } // [B1, V6]
16821test { try toAsciiFail("xn--5jb.xn--xya149b", false); } // [B1, V6]
16822test { try toAsciiFail("xn--5jb.xn--xya149b", true); } // [B1, V6]
6817test { try toUnicodeFail("xn--5jb.xn--xya149bpvp"); } // [B1, V6]16823test { try toUnicodeFail("xn--5jb.xn--xya149bpvp"); } // [B1, V6]
16824test { try toAsciiFail("xn--5jb.xn--xya149bpvp", false); } // [B1, V6]
16825test { try toAsciiFail("xn--5jb.xn--xya149bpvp", true); } // [B1, V6]
6818test { try toUnicodeFail("\xda\xa3\xef\xbc\x8e\xe0\xb5\x8d\xe2\x80\x8d\xcf\x9f"); } // [B1, V6]16826test { try toUnicodeFail("\xda\xa3\xef\xbc\x8e\xe0\xb5\x8d\xe2\x80\x8d\xcf\x9f"); } // [B1, V6]
16827test { try toAsciiFail("\xda\xa3\xef\xbc\x8e\xe0\xb5\x8d\xe2\x80\x8d\xcf\x9f", false); } // [B1, V6]
16828test { try toAsciiFail("\xda\xa3\xef\xbc\x8e\xe0\xb5\x8d\xe2\x80\x8d\xcf\x9f", true); } // [B1, V6]
6819test { try toUnicodeFail("\xe2\x80\x8c\xf0\x9e\xb8\x87\xf0\x91\x98\xbf\xe3\x80\x82\xd8\xa3\xf0\x90\xae\x82-\xe8\x85\x8d"); } // [B1, B2, B3, C1]16829test { try toUnicodeFail("\xe2\x80\x8c\xf0\x9e\xb8\x87\xf0\x91\x98\xbf\xe3\x80\x82\xd8\xa3\xf0\x90\xae\x82-\xe8\x85\x8d"); } // [B1, B2, B3, C1]
16830test { try toAsciiFail("\xe2\x80\x8c\xf0\x9e\xb8\x87\xf0\x91\x98\xbf\xe3\x80\x82\xd8\xa3\xf0\x90\xae\x82-\xe8\x85\x8d", false); } // [B1, B2, B3, C1]
16831test { try toAsciiFail("\xe2\x80\x8c\xf0\x9e\xb8\x87\xf0\x91\x98\xbf\xe3\x80\x82\xd8\xa3\xf0\x90\xae\x82-\xe8\x85\x8d", true); } // [B2, B3]
6820test { try toUnicodeFail("\xe2\x80\x8c\xf0\x9e\xb8\x87\xf0\x91\x98\xbf\xe3\x80\x82\xd8\xa7\xd9\x94\xf0\x90\xae\x82-\xe8\x85\x8d"); } // [B1, B2, B3, C1]16832test { try toUnicodeFail("\xe2\x80\x8c\xf0\x9e\xb8\x87\xf0\x91\x98\xbf\xe3\x80\x82\xd8\xa7\xd9\x94\xf0\x90\xae\x82-\xe8\x85\x8d"); } // [B1, B2, B3, C1]
16833test { try toAsciiFail("\xe2\x80\x8c\xf0\x9e\xb8\x87\xf0\x91\x98\xbf\xe3\x80\x82\xd8\xa7\xd9\x94\xf0\x90\xae\x82-\xe8\x85\x8d", false); } // [B1, B2, B3, C1]
16834test { try toAsciiFail("\xe2\x80\x8c\xf0\x9e\xb8\x87\xf0\x91\x98\xbf\xe3\x80\x82\xd8\xa7\xd9\x94\xf0\x90\xae\x82-\xe8\x85\x8d", true); } // [B2, B3]
6821test { try toUnicodeFail("\xe2\x80\x8c\xd8\xad\xf0\x91\x98\xbf\xe3\x80\x82\xd8\xa3\xf0\x90\xae\x82-\xe8\x85\x8d"); } // [B1, B2, B3, C1]16835test { try toUnicodeFail("\xe2\x80\x8c\xd8\xad\xf0\x91\x98\xbf\xe3\x80\x82\xd8\xa3\xf0\x90\xae\x82-\xe8\x85\x8d"); } // [B1, B2, B3, C1]
16836test { try toAsciiFail("\xe2\x80\x8c\xd8\xad\xf0\x91\x98\xbf\xe3\x80\x82\xd8\xa3\xf0\x90\xae\x82-\xe8\x85\x8d", false); } // [B1, B2, B3, C1]
16837test { try toAsciiFail("\xe2\x80\x8c\xd8\xad\xf0\x91\x98\xbf\xe3\x80\x82\xd8\xa3\xf0\x90\xae\x82-\xe8\x85\x8d", true); } // [B2, B3]
6822test { try toUnicodeFail("\xe2\x80\x8c\xd8\xad\xf0\x91\x98\xbf\xe3\x80\x82\xd8\xa7\xd9\x94\xf0\x90\xae\x82-\xe8\x85\x8d"); } // [B1, B2, B3, C1]16838test { try toUnicodeFail("\xe2\x80\x8c\xd8\xad\xf0\x91\x98\xbf\xe3\x80\x82\xd8\xa7\xd9\x94\xf0\x90\xae\x82-\xe8\x85\x8d"); } // [B1, B2, B3, C1]
16839test { try toAsciiFail("\xe2\x80\x8c\xd8\xad\xf0\x91\x98\xbf\xe3\x80\x82\xd8\xa7\xd9\x94\xf0\x90\xae\x82-\xe8\x85\x8d", false); } // [B1, B2, B3, C1]
16840test { try toAsciiFail("\xe2\x80\x8c\xd8\xad\xf0\x91\x98\xbf\xe3\x80\x82\xd8\xa7\xd9\x94\xf0\x90\xae\x82-\xe8\x85\x8d", true); } // [B2, B3]
6823test { try toUnicodeFail("xn--sgb4140l.xn----qmc5075grs9e"); } // [B2, B3]16841test { try toUnicodeFail("xn--sgb4140l.xn----qmc5075grs9e"); } // [B2, B3]
16842test { try toAsciiFail("xn--sgb4140l.xn----qmc5075grs9e", false); } // [B2, B3]
16843test { try toAsciiFail("xn--sgb4140l.xn----qmc5075grs9e", true); } // [B2, B3]
6824test { try toUnicodeFail("xn--sgb953kmi8o.xn----qmc5075grs9e"); } // [B1, B2, B3, C1]16844test { try toUnicodeFail("xn--sgb953kmi8o.xn----qmc5075grs9e"); } // [B1, B2, B3, C1]
16845test { try toAsciiFail("xn--sgb953kmi8o.xn----qmc5075grs9e", false); } // [B1, B2, B3, C1]
16846test { try toAsciiFail("xn--sgb953kmi8o.xn----qmc5075grs9e", true); } // [B1, B2, B3, C1]
6825test { try toUnicodeFail("-\xf2\xad\xb7\x99\xd9\xab\xe7\xba\x9b\xef\xbd\xa1\xf0\x9d\x9f\x9b\xf1\xad\xa4\x87\xf0\x9f\x84\x85"); } // [B1, V3, V7, U1]16847test { try toUnicodeFail("-\xf2\xad\xb7\x99\xd9\xab\xe7\xba\x9b\xef\xbd\xa1\xf0\x9d\x9f\x9b\xf1\xad\xa4\x87\xf0\x9f\x84\x85"); } // [B1, V3, V7, U1]
16848test { try toAsciiFail("-\xf2\xad\xb7\x99\xd9\xab\xe7\xba\x9b\xef\xbd\xa1\xf0\x9d\x9f\x9b\xf1\xad\xa4\x87\xf0\x9f\x84\x85", false); } // [B1, V3, V7, U1]
16849test { try toAsciiFail("-\xf2\xad\xb7\x99\xd9\xab\xe7\xba\x9b\xef\xbd\xa1\xf0\x9d\x9f\x9b\xf1\xad\xa4\x87\xf0\x9f\x84\x85", true); } // [B1, V3, V7, U1]
6826test { try toUnicodeFail("-\xf2\xad\xb7\x99\xd9\xab\xe7\xba\x9b\xe3\x80\x823\xf1\xad\xa4\x874,"); } // [B1, V3, V7, U1]16850test { try toUnicodeFail("-\xf2\xad\xb7\x99\xd9\xab\xe7\xba\x9b\xe3\x80\x823\xf1\xad\xa4\x874,"); } // [B1, V3, V7, U1]
16851test { try toAsciiFail("-\xf2\xad\xb7\x99\xd9\xab\xe7\xba\x9b\xe3\x80\x823\xf1\xad\xa4\x874,", false); } // [B1, V3, V7, U1]
16852test { try toAsciiFail("-\xf2\xad\xb7\x99\xd9\xab\xe7\xba\x9b\xe3\x80\x823\xf1\xad\xa4\x874,", true); } // [B1, V3, V7, U1]
6827test { try toUnicodeFail("xn----vqc8143g0tt4i.xn--34,-8787l"); } // [B1, V3, V7, U1]16853test { try toUnicodeFail("xn----vqc8143g0tt4i.xn--34,-8787l"); } // [B1, V3, V7, U1]
16854test { try toAsciiFail("xn----vqc8143g0tt4i.xn--34,-8787l", false); } // [B1, V3, V7, U1]
16855test { try toAsciiFail("xn----vqc8143g0tt4i.xn--34,-8787l", true); } // [B1, V3, V7, U1]
6828test { try toUnicodeFail("xn----vqc8143g0tt4i.xn--3-os1sn476y"); } // [B1, V3, V7]16856test { try toUnicodeFail("xn----vqc8143g0tt4i.xn--3-os1sn476y"); } // [B1, V3, V7]
16857test { try toAsciiFail("xn----vqc8143g0tt4i.xn--3-os1sn476y", false); } // [B1, V3, V7]
16858test { try toAsciiFail("xn----vqc8143g0tt4i.xn--3-os1sn476y", true); } // [B1, V3, V7]
6829test { try toUnicodeFail("\xf0\x9f\x94\x94\xef\xbc\x8e\xe1\x82\xa2\xdf\x8c\xe0\xaf\x8d\xf0\x90\x8b\xae"); } // [B1, B5]16859test { try toUnicodeFail("\xf0\x9f\x94\x94\xef\xbc\x8e\xe1\x82\xa2\xdf\x8c\xe0\xaf\x8d\xf0\x90\x8b\xae"); } // [B1, B5]
16860test { try toAsciiFail("\xf0\x9f\x94\x94\xef\xbc\x8e\xe1\x82\xa2\xdf\x8c\xe0\xaf\x8d\xf0\x90\x8b\xae", false); } // [B1, B5]
16861test { try toAsciiFail("\xf0\x9f\x94\x94\xef\xbc\x8e\xe1\x82\xa2\xdf\x8c\xe0\xaf\x8d\xf0\x90\x8b\xae", true); } // [B1, B5]
6830test { try toUnicodeFail("\xf0\x9f\x94\x94.\xe1\x82\xa2\xdf\x8c\xe0\xaf\x8d\xf0\x90\x8b\xae"); } // [B1, B5]16862test { try toUnicodeFail("\xf0\x9f\x94\x94.\xe1\x82\xa2\xdf\x8c\xe0\xaf\x8d\xf0\x90\x8b\xae"); } // [B1, B5]
16863test { try toAsciiFail("\xf0\x9f\x94\x94.\xe1\x82\xa2\xdf\x8c\xe0\xaf\x8d\xf0\x90\x8b\xae", false); } // [B1, B5]
16864test { try toAsciiFail("\xf0\x9f\x94\x94.\xe1\x82\xa2\xdf\x8c\xe0\xaf\x8d\xf0\x90\x8b\xae", true); } // [B1, B5]
6831test { try toUnicodeFail("\xf0\x9f\x94\x94.\xe2\xb4\x82\xdf\x8c\xe0\xaf\x8d\xf0\x90\x8b\xae"); } // [B1, B5]16865test { try toUnicodeFail("\xf0\x9f\x94\x94.\xe2\xb4\x82\xdf\x8c\xe0\xaf\x8d\xf0\x90\x8b\xae"); } // [B1, B5]
16866test { try toAsciiFail("\xf0\x9f\x94\x94.\xe2\xb4\x82\xdf\x8c\xe0\xaf\x8d\xf0\x90\x8b\xae", false); } // [B1, B5]
16867test { try toAsciiFail("\xf0\x9f\x94\x94.\xe2\xb4\x82\xdf\x8c\xe0\xaf\x8d\xf0\x90\x8b\xae", true); } // [B1, B5]
6832test { try toUnicodeFail("xn--nv8h.xn--nsb46rvz1b222p"); } // [B1, B5]16868test { try toUnicodeFail("xn--nv8h.xn--nsb46rvz1b222p"); } // [B1, B5]
16869test { try toAsciiFail("xn--nv8h.xn--nsb46rvz1b222p", false); } // [B1, B5]
16870test { try toAsciiFail("xn--nv8h.xn--nsb46rvz1b222p", true); } // [B1, B5]
6833test { try toUnicodeFail("\xf0\x9f\x94\x94\xef\xbc\x8e\xe2\xb4\x82\xdf\x8c\xe0\xaf\x8d\xf0\x90\x8b\xae"); } // [B1, B5]16871test { try toUnicodeFail("\xf0\x9f\x94\x94\xef\xbc\x8e\xe2\xb4\x82\xdf\x8c\xe0\xaf\x8d\xf0\x90\x8b\xae"); } // [B1, B5]
16872test { try toAsciiFail("\xf0\x9f\x94\x94\xef\xbc\x8e\xe2\xb4\x82\xdf\x8c\xe0\xaf\x8d\xf0\x90\x8b\xae", false); } // [B1, B5]
16873test { try toAsciiFail("\xf0\x9f\x94\x94\xef\xbc\x8e\xe2\xb4\x82\xdf\x8c\xe0\xaf\x8d\xf0\x90\x8b\xae", true); } // [B1, B5]
6834test { try toUnicodeFail("xn--nv8h.xn--nsb46r83e8112a"); } // [B1, B5, V7]16874test { try toUnicodeFail("xn--nv8h.xn--nsb46r83e8112a"); } // [B1, B5, V7]
16875test { try toAsciiFail("xn--nv8h.xn--nsb46r83e8112a", false); } // [B1, B5, V7]
16876test { try toAsciiFail("xn--nv8h.xn--nsb46r83e8112a", true); } // [B1, B5, V7]
6835test { try toUnicodeFail("\xe8\xbb\xa5\xda\xb3.-\xf0\x96\xac\xb5"); } // [B1, B5, B6, V3]16877test { try toUnicodeFail("\xe8\xbb\xa5\xda\xb3.-\xf0\x96\xac\xb5"); } // [B1, B5, B6, V3]
16878test { try toAsciiFail("\xe8\xbb\xa5\xda\xb3.-\xf0\x96\xac\xb5", false); } // [B1, B5, B6, V3]
16879test { try toAsciiFail("\xe8\xbb\xa5\xda\xb3.-\xf0\x96\xac\xb5", true); } // [B1, B5, B6, V3]
6836test { try toUnicodeFail("xn--mkb5480e.xn----6u5m"); } // [B1, B5, B6, V3]16880test { try toUnicodeFail("xn--mkb5480e.xn----6u5m"); } // [B1, B5, B6, V3]
16881test { try toAsciiFail("xn--mkb5480e.xn----6u5m", false); } // [B1, B5, B6, V3]
16882test { try toAsciiFail("xn--mkb5480e.xn----6u5m", true); } // [B1, B5, B6, V3]
6837test { try toUnicodeFail("\xf0\x90\xb9\xa4\xdf\x8a\xda\xb6.\xf0\x90\xa8\x82-"); } // [B1, V3, V6]16883test { try toUnicodeFail("\xf0\x90\xb9\xa4\xdf\x8a\xda\xb6.\xf0\x90\xa8\x82-"); } // [B1, V3, V6]
16884test { try toAsciiFail("\xf0\x90\xb9\xa4\xdf\x8a\xda\xb6.\xf0\x90\xa8\x82-", false); } // [B1, V3, V6]
16885test { try toAsciiFail("\xf0\x90\xb9\xa4\xdf\x8a\xda\xb6.\xf0\x90\xa8\x82-", true); } // [B1, V3, V6]
6838test { try toUnicodeFail("xn--pkb56cn614d.xn----974i"); } // [B1, V3, V6]16886test { try toUnicodeFail("xn--pkb56cn614d.xn----974i"); } // [B1, V3, V6]
16887test { try toAsciiFail("xn--pkb56cn614d.xn----974i", false); } // [B1, V3, V6]
16888test { try toAsciiFail("xn--pkb56cn614d.xn----974i", true); } // [B1, V3, V6]
6839test { try toUnicodeFail("-\xf3\xa0\x85\xb10\xef\xbd\xa1\xe1\x9f\x8f\xe1\xb7\xbd\xed\x86\x87\xec\x8b\xad"); } // [V3, V6]16889test { try toUnicodeFail("-\xf3\xa0\x85\xb10\xef\xbd\xa1\xe1\x9f\x8f\xe1\xb7\xbd\xed\x86\x87\xec\x8b\xad"); } // [V3, V6]
16890test { try toAsciiFail("-\xf3\xa0\x85\xb10\xef\xbd\xa1\xe1\x9f\x8f\xe1\xb7\xbd\xed\x86\x87\xec\x8b\xad", false); } // [V3, V6]
16891test { try toAsciiFail("-\xf3\xa0\x85\xb10\xef\xbd\xa1\xe1\x9f\x8f\xe1\xb7\xbd\xed\x86\x87\xec\x8b\xad", true); } // [V3, V6]
6840test { try toUnicodeFail("-\xf3\xa0\x85\xb10\xef\xbd\xa1\xe1\x9f\x8f\xe1\xb7\xbd\xe1\x84\x90\xe1\x85\xa8\xe1\x86\xaa\xe1\x84\x89\xe1\x85\xb5\xe1\x86\xb8"); } // [V3, V6]16892test { try toUnicodeFail("-\xf3\xa0\x85\xb10\xef\xbd\xa1\xe1\x9f\x8f\xe1\xb7\xbd\xe1\x84\x90\xe1\x85\xa8\xe1\x86\xaa\xe1\x84\x89\xe1\x85\xb5\xe1\x86\xb8"); } // [V3, V6]
16893test { try toAsciiFail("-\xf3\xa0\x85\xb10\xef\xbd\xa1\xe1\x9f\x8f\xe1\xb7\xbd\xe1\x84\x90\xe1\x85\xa8\xe1\x86\xaa\xe1\x84\x89\xe1\x85\xb5\xe1\x86\xb8", false); } // [V3, V6]
16894test { try toAsciiFail("-\xf3\xa0\x85\xb10\xef\xbd\xa1\xe1\x9f\x8f\xe1\xb7\xbd\xe1\x84\x90\xe1\x85\xa8\xe1\x86\xaa\xe1\x84\x89\xe1\x85\xb5\xe1\x86\xb8", true); } // [V3, V6]
6841test { try toUnicodeFail("-\xf3\xa0\x85\xb10\xe3\x80\x82\xe1\x9f\x8f\xe1\xb7\xbd\xed\x86\x87\xec\x8b\xad"); } // [V3, V6]16895test { try toUnicodeFail("-\xf3\xa0\x85\xb10\xe3\x80\x82\xe1\x9f\x8f\xe1\xb7\xbd\xed\x86\x87\xec\x8b\xad"); } // [V3, V6]
16896test { try toAsciiFail("-\xf3\xa0\x85\xb10\xe3\x80\x82\xe1\x9f\x8f\xe1\xb7\xbd\xed\x86\x87\xec\x8b\xad", false); } // [V3, V6]
16897test { try toAsciiFail("-\xf3\xa0\x85\xb10\xe3\x80\x82\xe1\x9f\x8f\xe1\xb7\xbd\xed\x86\x87\xec\x8b\xad", true); } // [V3, V6]
6842test { try toUnicodeFail("-\xf3\xa0\x85\xb10\xe3\x80\x82\xe1\x9f\x8f\xe1\xb7\xbd\xe1\x84\x90\xe1\x85\xa8\xe1\x86\xaa\xe1\x84\x89\xe1\x85\xb5\xe1\x86\xb8"); } // [V3, V6]16898test { try toUnicodeFail("-\xf3\xa0\x85\xb10\xe3\x80\x82\xe1\x9f\x8f\xe1\xb7\xbd\xe1\x84\x90\xe1\x85\xa8\xe1\x86\xaa\xe1\x84\x89\xe1\x85\xb5\xe1\x86\xb8"); } // [V3, V6]
16899test { try toAsciiFail("-\xf3\xa0\x85\xb10\xe3\x80\x82\xe1\x9f\x8f\xe1\xb7\xbd\xe1\x84\x90\xe1\x85\xa8\xe1\x86\xaa\xe1\x84\x89\xe1\x85\xb5\xe1\x86\xb8", false); } // [V3, V6]
16900test { try toAsciiFail("-\xf3\xa0\x85\xb10\xe3\x80\x82\xe1\x9f\x8f\xe1\xb7\xbd\xe1\x84\x90\xe1\x85\xa8\xe1\x86\xaa\xe1\x84\x89\xe1\x85\xb5\xe1\x86\xb8", true); } // [V3, V6]
6843test { try toUnicodeFail("-0.xn--r4e872ah77nghm"); } // [V3, V6]16901test { try toUnicodeFail("-0.xn--r4e872ah77nghm"); } // [V3, V6]
16902test { try toAsciiFail("-0.xn--r4e872ah77nghm", false); } // [V3, V6]
16903test { try toAsciiFail("-0.xn--r4e872ah77nghm", true); } // [V3, V6]
6844test { try toUnicodeFail("\xea\xa1\xb0\xef\xb8\x92--\xef\xbd\xa1\xe1\x9f\x8c\xe9\x9d\x88\xf0\x90\xb9\xa2\xf1\x98\xb3\xae"); } // [B1, B6, V2, V3, V6, V7]16904test { try toUnicodeFail("\xea\xa1\xb0\xef\xb8\x92--\xef\xbd\xa1\xe1\x9f\x8c\xe9\x9d\x88\xf0\x90\xb9\xa2\xf1\x98\xb3\xae"); } // [B1, B6, V2, V3, V6, V7]
16905test { try toAsciiFail("\xea\xa1\xb0\xef\xb8\x92--\xef\xbd\xa1\xe1\x9f\x8c\xe9\x9d\x88\xf0\x90\xb9\xa2\xf1\x98\xb3\xae", false); } // [B1, B6, V2, V3, V6, V7]
16906test { try toAsciiFail("\xea\xa1\xb0\xef\xb8\x92--\xef\xbd\xa1\xe1\x9f\x8c\xe9\x9d\x88\xf0\x90\xb9\xa2\xf1\x98\xb3\xae", true); } // [B1, B6, V2, V3, V6, V7]
6845test { try toUnicodeFail("\xea\xa1\xb0\xe3\x80\x82--\xe3\x80\x82\xe1\x9f\x8c\xe9\x9d\x88\xf0\x90\xb9\xa2\xf1\x98\xb3\xae"); } // [B1, V3, V6, V7]16907test { try toUnicodeFail("\xea\xa1\xb0\xe3\x80\x82--\xe3\x80\x82\xe1\x9f\x8c\xe9\x9d\x88\xf0\x90\xb9\xa2\xf1\x98\xb3\xae"); } // [B1, V3, V6, V7]
16908test { try toAsciiFail("\xea\xa1\xb0\xe3\x80\x82--\xe3\x80\x82\xe1\x9f\x8c\xe9\x9d\x88\xf0\x90\xb9\xa2\xf1\x98\xb3\xae", false); } // [B1, V3, V6, V7]
16909test { try toAsciiFail("\xea\xa1\xb0\xe3\x80\x82--\xe3\x80\x82\xe1\x9f\x8c\xe9\x9d\x88\xf0\x90\xb9\xa2\xf1\x98\xb3\xae", true); } // [B1, V3, V6, V7]
6846test { try toUnicodeFail("xn--md9a.--.xn--o4e6836dpxudz0v1c"); } // [B1, V3, V6, V7]16910test { try toUnicodeFail("xn--md9a.--.xn--o4e6836dpxudz0v1c"); } // [B1, V3, V6, V7]
16911test { try toAsciiFail("xn--md9a.--.xn--o4e6836dpxudz0v1c", false); } // [B1, V3, V6, V7]
16912test { try toAsciiFail("xn--md9a.--.xn--o4e6836dpxudz0v1c", true); } // [B1, V3, V6, V7]
6847test { try toUnicodeFail("xn-----bk9hu24z.xn--o4e6836dpxudz0v1c"); } // [B1, B6, V2, V3, V6, V7]16913test { try toUnicodeFail("xn-----bk9hu24z.xn--o4e6836dpxudz0v1c"); } // [B1, B6, V2, V3, V6, V7]
16914test { try toAsciiFail("xn-----bk9hu24z.xn--o4e6836dpxudz0v1c", false); } // [B1, B6, V2, V3, V6, V7]
16915test { try toAsciiFail("xn-----bk9hu24z.xn--o4e6836dpxudz0v1c", true); } // [B1, B6, V2, V3, V6, V7]
6848test { try toUnicodeFail("\xe1\x85\x9f\xe1\x82\xbf\xe1\x82\xb5\xe1\x83\xa0\xef\xbd\xa1\xe0\xad\x8d"); } // [V6]16916test { try toUnicodeFail("\xe1\x85\x9f\xe1\x82\xbf\xe1\x82\xb5\xe1\x83\xa0\xef\xbd\xa1\xe0\xad\x8d"); } // [V6]
16917test { try toAsciiFail("\xe1\x85\x9f\xe1\x82\xbf\xe1\x82\xb5\xe1\x83\xa0\xef\xbd\xa1\xe0\xad\x8d", false); } // [V6]
16918test { try toAsciiFail("\xe1\x85\x9f\xe1\x82\xbf\xe1\x82\xb5\xe1\x83\xa0\xef\xbd\xa1\xe0\xad\x8d", true); } // [V6]
6849test { try toUnicodeFail("\xe1\x85\x9f\xe1\x82\xbf\xe1\x82\xb5\xe1\x83\xa0\xe3\x80\x82\xe0\xad\x8d"); } // [V6]16919test { try toUnicodeFail("\xe1\x85\x9f\xe1\x82\xbf\xe1\x82\xb5\xe1\x83\xa0\xe3\x80\x82\xe0\xad\x8d"); } // [V6]
16920test { try toAsciiFail("\xe1\x85\x9f\xe1\x82\xbf\xe1\x82\xb5\xe1\x83\xa0\xe3\x80\x82\xe0\xad\x8d", false); } // [V6]
16921test { try toAsciiFail("\xe1\x85\x9f\xe1\x82\xbf\xe1\x82\xb5\xe1\x83\xa0\xe3\x80\x82\xe0\xad\x8d", true); } // [V6]
6850test { try toUnicodeFail("\xe1\x85\x9f\xe2\xb4\x9f\xe2\xb4\x95\xe1\x83\xa0\xe3\x80\x82\xe0\xad\x8d"); } // [V6]16922test { try toUnicodeFail("\xe1\x85\x9f\xe2\xb4\x9f\xe2\xb4\x95\xe1\x83\xa0\xe3\x80\x82\xe0\xad\x8d"); } // [V6]
16923test { try toAsciiFail("\xe1\x85\x9f\xe2\xb4\x9f\xe2\xb4\x95\xe1\x83\xa0\xe3\x80\x82\xe0\xad\x8d", false); } // [V6]
16924test { try toAsciiFail("\xe1\x85\x9f\xe2\xb4\x9f\xe2\xb4\x95\xe1\x83\xa0\xe3\x80\x82\xe0\xad\x8d", true); } // [V6]
6851test { try toUnicodeFail("\xe1\x85\x9f\xe1\x82\xbf\xe1\x82\xb5\xe1\xb2\xa0\xe3\x80\x82\xe0\xad\x8d"); } // [V6]16925test { try toUnicodeFail("\xe1\x85\x9f\xe1\x82\xbf\xe1\x82\xb5\xe1\xb2\xa0\xe3\x80\x82\xe0\xad\x8d"); } // [V6]
16926test { try toAsciiFail("\xe1\x85\x9f\xe1\x82\xbf\xe1\x82\xb5\xe1\xb2\xa0\xe3\x80\x82\xe0\xad\x8d", false); } // [V6]
16927test { try toAsciiFail("\xe1\x85\x9f\xe1\x82\xbf\xe1\x82\xb5\xe1\xb2\xa0\xe3\x80\x82\xe0\xad\x8d", true); } // [V6]
6852test { try toUnicodeFail("xn--1od555l3a.xn--9ic"); } // [V6]16928test { try toUnicodeFail("xn--1od555l3a.xn--9ic"); } // [V6]
16929test { try toAsciiFail("xn--1od555l3a.xn--9ic", false); } // [V6]
16930test { try toAsciiFail("xn--1od555l3a.xn--9ic", true); } // [V6]
6853test { try toUnicodeFail("\xe1\x85\x9f\xe2\xb4\x9f\xe2\xb4\x95\xe1\x83\xa0\xef\xbd\xa1\xe0\xad\x8d"); } // [V6]16931test { try toUnicodeFail("\xe1\x85\x9f\xe2\xb4\x9f\xe2\xb4\x95\xe1\x83\xa0\xef\xbd\xa1\xe0\xad\x8d"); } // [V6]
16932test { try toAsciiFail("\xe1\x85\x9f\xe2\xb4\x9f\xe2\xb4\x95\xe1\x83\xa0\xef\xbd\xa1\xe0\xad\x8d", false); } // [V6]
16933test { try toAsciiFail("\xe1\x85\x9f\xe2\xb4\x9f\xe2\xb4\x95\xe1\x83\xa0\xef\xbd\xa1\xe0\xad\x8d", true); } // [V6]
6854test { try toUnicodeFail("\xe1\x85\x9f\xe1\x82\xbf\xe1\x82\xb5\xe1\xb2\xa0\xef\xbd\xa1\xe0\xad\x8d"); } // [V6]16934test { try toUnicodeFail("\xe1\x85\x9f\xe1\x82\xbf\xe1\x82\xb5\xe1\xb2\xa0\xef\xbd\xa1\xe0\xad\x8d"); } // [V6]
16935test { try toAsciiFail("\xe1\x85\x9f\xe1\x82\xbf\xe1\x82\xb5\xe1\xb2\xa0\xef\xbd\xa1\xe0\xad\x8d", false); } // [V6]
16936test { try toAsciiFail("\xe1\x85\x9f\xe1\x82\xbf\xe1\x82\xb5\xe1\xb2\xa0\xef\xbd\xa1\xe0\xad\x8d", true); } // [V6]
6855test { try toUnicodeFail("xn--tndt4hvw.xn--9ic"); } // [V6, V7]16937test { try toUnicodeFail("xn--tndt4hvw.xn--9ic"); } // [V6, V7]
16938test { try toAsciiFail("xn--tndt4hvw.xn--9ic", false); } // [V6, V7]
16939test { try toAsciiFail("xn--tndt4hvw.xn--9ic", true); } // [V6, V7]
6856test { try toUnicodeFail("xn--1od7wz74eeb.xn--9ic"); } // [V6, V7]16940test { try toUnicodeFail("xn--1od7wz74eeb.xn--9ic"); } // [V6, V7]
16941test { try toAsciiFail("xn--1od7wz74eeb.xn--9ic", false); } // [V6, V7]
16942test { try toAsciiFail("xn--1od7wz74eeb.xn--9ic", true); } // [V6, V7]
6857test { try toUnicodeFail("\xe1\x85\x9f\xe1\x82\xbf\xe2\xb4\x95\xe1\x83\xa0\xe3\x80\x82\xe0\xad\x8d"); } // [V6]16943test { try toUnicodeFail("\xe1\x85\x9f\xe1\x82\xbf\xe2\xb4\x95\xe1\x83\xa0\xe3\x80\x82\xe0\xad\x8d"); } // [V6]
16944test { try toAsciiFail("\xe1\x85\x9f\xe1\x82\xbf\xe2\xb4\x95\xe1\x83\xa0\xe3\x80\x82\xe0\xad\x8d", false); } // [V6]
16945test { try toAsciiFail("\xe1\x85\x9f\xe1\x82\xbf\xe2\xb4\x95\xe1\x83\xa0\xe3\x80\x82\xe0\xad\x8d", true); } // [V6]
6858test { try toUnicodeFail("xn--3nd0etsm92g.xn--9ic"); } // [V6, V7]16946test { try toUnicodeFail("xn--3nd0etsm92g.xn--9ic"); } // [V6, V7]
16947test { try toAsciiFail("xn--3nd0etsm92g.xn--9ic", false); } // [V6, V7]
16948test { try toAsciiFail("xn--3nd0etsm92g.xn--9ic", true); } // [V6, V7]
6859test { try toUnicodeFail("\xe1\x85\x9f\xe1\x82\xbf\xe2\xb4\x95\xe1\x83\xa0\xef\xbd\xa1\xe0\xad\x8d"); } // [V6]16949test { try toUnicodeFail("\xe1\x85\x9f\xe1\x82\xbf\xe2\xb4\x95\xe1\x83\xa0\xef\xbd\xa1\xe0\xad\x8d"); } // [V6]
16950test { try toAsciiFail("\xe1\x85\x9f\xe1\x82\xbf\xe2\xb4\x95\xe1\x83\xa0\xef\xbd\xa1\xe0\xad\x8d", false); } // [V6]
16951test { try toAsciiFail("\xe1\x85\x9f\xe1\x82\xbf\xe2\xb4\x95\xe1\x83\xa0\xef\xbd\xa1\xe0\xad\x8d", true); } // [V6]
6860test { try toUnicodeFail("\xf0\x9f\x84\x83\xf0\x90\xb9\xa0.\xd9\xa4\xf3\xa0\x85\x87"); } // [B1, U1]16952test { try toUnicodeFail("\xf0\x9f\x84\x83\xf0\x90\xb9\xa0.\xd9\xa4\xf3\xa0\x85\x87"); } // [B1, U1]
16953test { try toAsciiFail("\xf0\x9f\x84\x83\xf0\x90\xb9\xa0.\xd9\xa4\xf3\xa0\x85\x87", false); } // [B1, U1]
16954test { try toAsciiFail("\xf0\x9f\x84\x83\xf0\x90\xb9\xa0.\xd9\xa4\xf3\xa0\x85\x87", true); } // [B1, U1]
6861test { try toUnicodeFail("2,\xf0\x90\xb9\xa0.\xd9\xa4\xf3\xa0\x85\x87"); } // [B1, U1]16955test { try toUnicodeFail("2,\xf0\x90\xb9\xa0.\xd9\xa4\xf3\xa0\x85\x87"); } // [B1, U1]
16956test { try toAsciiFail("2,\xf0\x90\xb9\xa0.\xd9\xa4\xf3\xa0\x85\x87", false); } // [B1, U1]
16957test { try toAsciiFail("2,\xf0\x90\xb9\xa0.\xd9\xa4\xf3\xa0\x85\x87", true); } // [B1, U1]
6862test { try toUnicodeFail("xn--2,-5g3o.xn--dib"); } // [B1, U1]16958test { try toUnicodeFail("xn--2,-5g3o.xn--dib"); } // [B1, U1]
16959test { try toAsciiFail("xn--2,-5g3o.xn--dib", false); } // [B1, U1]
16960test { try toAsciiFail("xn--2,-5g3o.xn--dib", true); } // [B1, U1]
6863test { try toUnicodeFail("xn--7n0d1189a.xn--dib"); } // [B1, V7]16961test { try toUnicodeFail("xn--7n0d1189a.xn--dib"); } // [B1, V7]
16962test { try toAsciiFail("xn--7n0d1189a.xn--dib", false); } // [B1, V7]
16963test { try toAsciiFail("xn--7n0d1189a.xn--dib", true); } // [B1, V7]
6864test { try toUnicodeFail("\xf2\xbb\xb2\xbc\xe2\x80\x8c\xef\xb1\x9b\xef\xbc\x8e\xdf\x92\xe0\xa1\x88\xe1\xaf\xb3"); } // [B2, B3, B5, B6, C1, V7]16964test { try toUnicodeFail("\xf2\xbb\xb2\xbc\xe2\x80\x8c\xef\xb1\x9b\xef\xbc\x8e\xdf\x92\xe0\xa1\x88\xe1\xaf\xb3"); } // [B2, B3, B5, B6, C1, V7]
16965test { try toAsciiFail("\xf2\xbb\xb2\xbc\xe2\x80\x8c\xef\xb1\x9b\xef\xbc\x8e\xdf\x92\xe0\xa1\x88\xe1\xaf\xb3", false); } // [B2, B3, B5, B6, C1, V7]
16966test { try toAsciiFail("\xf2\xbb\xb2\xbc\xe2\x80\x8c\xef\xb1\x9b\xef\xbc\x8e\xdf\x92\xe0\xa1\x88\xe1\xaf\xb3", true); } // [B2, B3, B5, B6, V7]
6865test { try toUnicodeFail("\xf2\xbb\xb2\xbc\xe2\x80\x8c\xd8\xb0\xd9\xb0.\xdf\x92\xe0\xa1\x88\xe1\xaf\xb3"); } // [B2, B3, B5, B6, C1, V7]16967test { try toUnicodeFail("\xf2\xbb\xb2\xbc\xe2\x80\x8c\xd8\xb0\xd9\xb0.\xdf\x92\xe0\xa1\x88\xe1\xaf\xb3"); } // [B2, B3, B5, B6, C1, V7]
16968test { try toAsciiFail("\xf2\xbb\xb2\xbc\xe2\x80\x8c\xd8\xb0\xd9\xb0.\xdf\x92\xe0\xa1\x88\xe1\xaf\xb3", false); } // [B2, B3, B5, B6, C1, V7]
16969test { try toAsciiFail("\xf2\xbb\xb2\xbc\xe2\x80\x8c\xd8\xb0\xd9\xb0.\xdf\x92\xe0\xa1\x88\xe1\xaf\xb3", true); } // [B2, B3, B5, B6, V7]
6866test { try toUnicodeFail("xn--vgb2kp1223g.xn--tsb0vz43c"); } // [B2, B3, B5, B6, V7]16970test { try toUnicodeFail("xn--vgb2kp1223g.xn--tsb0vz43c"); } // [B2, B3, B5, B6, V7]
16971test { try toAsciiFail("xn--vgb2kp1223g.xn--tsb0vz43c", false); } // [B2, B3, B5, B6, V7]
16972test { try toAsciiFail("xn--vgb2kp1223g.xn--tsb0vz43c", true); } // [B2, B3, B5, B6, V7]
6867test { try toUnicodeFail("xn--vgb2kq00fl213y.xn--tsb0vz43c"); } // [B2, B3, B5, B6, C1, V7]16973test { try toUnicodeFail("xn--vgb2kq00fl213y.xn--tsb0vz43c"); } // [B2, B3, B5, B6, C1, V7]
16974test { try toAsciiFail("xn--vgb2kq00fl213y.xn--tsb0vz43c", false); } // [B2, B3, B5, B6, C1, V7]
16975test { try toAsciiFail("xn--vgb2kq00fl213y.xn--tsb0vz43c", true); } // [B2, B3, B5, B6, C1, V7]
6868test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8d\xf0\x9e\xb5\xaa\xe2\x80\x8c\xe3\x80\x82\xe1\xa1\x98\xf0\x91\xb2\xad\xe1\x9e\xb5"); } // [B1, C1, C2, V7]16976test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8d\xf0\x9e\xb5\xaa\xe2\x80\x8c\xe3\x80\x82\xe1\xa1\x98\xf0\x91\xb2\xad\xe1\x9e\xb5"); } // [B1, C1, C2, V7]
16977test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8d\xf0\x9e\xb5\xaa\xe2\x80\x8c\xe3\x80\x82\xe1\xa1\x98\xf0\x91\xb2\xad\xe1\x9e\xb5", false); } // [B1, C1, C2, V7]
16978test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8d\xf0\x9e\xb5\xaa\xe2\x80\x8c\xe3\x80\x82\xe1\xa1\x98\xf0\x91\xb2\xad\xe1\x9e\xb5", true); } // [V7]
6869test { try toUnicodeFail("xn--l96h.xn--o8e4044k"); } // [V7]16979test { try toUnicodeFail("xn--l96h.xn--o8e4044k"); } // [V7]
16980test { try toAsciiFail("xn--l96h.xn--o8e4044k", false); } // [V7]
16981test { try toAsciiFail("xn--l96h.xn--o8e4044k", true); } // [V7]
6870test { try toUnicodeFail("xn--0ugba05538b.xn--o8e4044k"); } // [B1, C1, C2, V7]16982test { try toUnicodeFail("xn--0ugba05538b.xn--o8e4044k"); } // [B1, C1, C2, V7]
16983test { try toAsciiFail("xn--0ugba05538b.xn--o8e4044k", false); } // [B1, C1, C2, V7]
16984test { try toAsciiFail("xn--0ugba05538b.xn--o8e4044k", true); } // [B1, C1, C2, V7]
6871test { try toUnicodeFail("xn--l96h.xn--03e93aq365d"); } // [V7]16985test { try toUnicodeFail("xn--l96h.xn--03e93aq365d"); } // [V7]
16986test { try toAsciiFail("xn--l96h.xn--03e93aq365d", false); } // [V7]
16987test { try toAsciiFail("xn--l96h.xn--03e93aq365d", true); } // [V7]
6872test { try toUnicodeFail("xn--0ugba05538b.xn--03e93aq365d"); } // [B1, C1, C2, V7]16988test { try toUnicodeFail("xn--0ugba05538b.xn--03e93aq365d"); } // [B1, C1, C2, V7]
16989test { try toAsciiFail("xn--0ugba05538b.xn--03e93aq365d", false); } // [B1, C1, C2, V7]
16990test { try toAsciiFail("xn--0ugba05538b.xn--03e93aq365d", true); } // [B1, C1, C2, V7]
6873test { try toUnicodeFail("\xf0\x9e\xb7\xbb\xe3\x80\x82\xe2\x9a\x84\xf1\x97\x91\x87\xf0\x91\x81\xbf"); } // [B1, V7]16991test { try toUnicodeFail("\xf0\x9e\xb7\xbb\xe3\x80\x82\xe2\x9a\x84\xf1\x97\x91\x87\xf0\x91\x81\xbf"); } // [B1, V7]
16992test { try toAsciiFail("\xf0\x9e\xb7\xbb\xe3\x80\x82\xe2\x9a\x84\xf1\x97\x91\x87\xf0\x91\x81\xbf", false); } // [B1, V7]
16993test { try toAsciiFail("\xf0\x9e\xb7\xbb\xe3\x80\x82\xe2\x9a\x84\xf1\x97\x91\x87\xf0\x91\x81\xbf", true); } // [B1, V7]
6874test { try toUnicodeFail("xn--qe7h.xn--c7h2966f7so4a"); } // [B1, V7]16994test { try toUnicodeFail("xn--qe7h.xn--c7h2966f7so4a"); } // [B1, V7]
16995test { try toAsciiFail("xn--qe7h.xn--c7h2966f7so4a", false); } // [B1, V7]
16996test { try toAsciiFail("xn--qe7h.xn--c7h2966f7so4a", true); } // [B1, V7]
6875test { try toUnicodeFail("\xea\xa3\x84\xe2\x89\xa0\xef\xbc\x8e\xf0\x9e\xa0\xa8\xd9\xa7"); } // [B1, V6]16997test { try toUnicodeFail("\xea\xa3\x84\xe2\x89\xa0\xef\xbc\x8e\xf0\x9e\xa0\xa8\xd9\xa7"); } // [B1, V6]
16998test { try toAsciiFail("\xea\xa3\x84\xe2\x89\xa0\xef\xbc\x8e\xf0\x9e\xa0\xa8\xd9\xa7", false); } // [B1, V6]
16999test { try toAsciiFail("\xea\xa3\x84\xe2\x89\xa0\xef\xbc\x8e\xf0\x9e\xa0\xa8\xd9\xa7", true); } // [B1, V6]
6876test { try toUnicodeFail("\xea\xa3\x84=\xcc\xb8\xef\xbc\x8e\xf0\x9e\xa0\xa8\xd9\xa7"); } // [B1, V6]17000test { try toUnicodeFail("\xea\xa3\x84=\xcc\xb8\xef\xbc\x8e\xf0\x9e\xa0\xa8\xd9\xa7"); } // [B1, V6]
17001test { try toAsciiFail("\xea\xa3\x84=\xcc\xb8\xef\xbc\x8e\xf0\x9e\xa0\xa8\xd9\xa7", false); } // [B1, V6]
17002test { try toAsciiFail("\xea\xa3\x84=\xcc\xb8\xef\xbc\x8e\xf0\x9e\xa0\xa8\xd9\xa7", true); } // [B1, V6]
6877test { try toUnicodeFail("\xea\xa3\x84\xe2\x89\xa0.\xf0\x9e\xa0\xa8\xd9\xa7"); } // [B1, V6]17003test { try toUnicodeFail("\xea\xa3\x84\xe2\x89\xa0.\xf0\x9e\xa0\xa8\xd9\xa7"); } // [B1, V6]
17004test { try toAsciiFail("\xea\xa3\x84\xe2\x89\xa0.\xf0\x9e\xa0\xa8\xd9\xa7", false); } // [B1, V6]
17005test { try toAsciiFail("\xea\xa3\x84\xe2\x89\xa0.\xf0\x9e\xa0\xa8\xd9\xa7", true); } // [B1, V6]
6878test { try toUnicodeFail("\xea\xa3\x84=\xcc\xb8.\xf0\x9e\xa0\xa8\xd9\xa7"); } // [B1, V6]17006test { try toUnicodeFail("\xea\xa3\x84=\xcc\xb8.\xf0\x9e\xa0\xa8\xd9\xa7"); } // [B1, V6]
17007test { try toAsciiFail("\xea\xa3\x84=\xcc\xb8.\xf0\x9e\xa0\xa8\xd9\xa7", false); } // [B1, V6]
17008test { try toAsciiFail("\xea\xa3\x84=\xcc\xb8.\xf0\x9e\xa0\xa8\xd9\xa7", true); } // [B1, V6]
6879test { try toUnicodeFail("xn--1chy504c.xn--gib1777v"); } // [B1, V6]17009test { try toUnicodeFail("xn--1chy504c.xn--gib1777v"); } // [B1, V6]
17010test { try toAsciiFail("xn--1chy504c.xn--gib1777v", false); } // [B1, V6]
17011test { try toAsciiFail("xn--1chy504c.xn--gib1777v", true); } // [B1, V6]
6880test { try toUnicodeFail("\xf0\x9d\x9f\x9b\xf0\x9d\x86\xaa\xea\xa3\x84\xef\xbd\xa1\xea\xa3\xaa-"); } // [V3, V6]17012test { try toUnicodeFail("\xf0\x9d\x9f\x9b\xf0\x9d\x86\xaa\xea\xa3\x84\xef\xbd\xa1\xea\xa3\xaa-"); } // [V3, V6]
17013test { try toAsciiFail("\xf0\x9d\x9f\x9b\xf0\x9d\x86\xaa\xea\xa3\x84\xef\xbd\xa1\xea\xa3\xaa-", false); } // [V3, V6]
17014test { try toAsciiFail("\xf0\x9d\x9f\x9b\xf0\x9d\x86\xaa\xea\xa3\x84\xef\xbd\xa1\xea\xa3\xaa-", true); } // [V3, V6]
6881test { try toUnicodeFail("\xf0\x9d\x9f\x9b\xea\xa3\x84\xf0\x9d\x86\xaa\xef\xbd\xa1\xea\xa3\xaa-"); } // [V3, V6]17015test { try toUnicodeFail("\xf0\x9d\x9f\x9b\xea\xa3\x84\xf0\x9d\x86\xaa\xef\xbd\xa1\xea\xa3\xaa-"); } // [V3, V6]
17016test { try toAsciiFail("\xf0\x9d\x9f\x9b\xea\xa3\x84\xf0\x9d\x86\xaa\xef\xbd\xa1\xea\xa3\xaa-", false); } // [V3, V6]
17017test { try toAsciiFail("\xf0\x9d\x9f\x9b\xea\xa3\x84\xf0\x9d\x86\xaa\xef\xbd\xa1\xea\xa3\xaa-", true); } // [V3, V6]
6882test { try toUnicodeFail("3\xea\xa3\x84\xf0\x9d\x86\xaa\xe3\x80\x82\xea\xa3\xaa-"); } // [V3, V6]17018test { try toUnicodeFail("3\xea\xa3\x84\xf0\x9d\x86\xaa\xe3\x80\x82\xea\xa3\xaa-"); } // [V3, V6]
17019test { try toAsciiFail("3\xea\xa3\x84\xf0\x9d\x86\xaa\xe3\x80\x82\xea\xa3\xaa-", false); } // [V3, V6]
17020test { try toAsciiFail("3\xea\xa3\x84\xf0\x9d\x86\xaa\xe3\x80\x82\xea\xa3\xaa-", true); } // [V3, V6]
6883test { try toUnicodeFail("xn--3-sl4eu679e.xn----xn4e"); } // [V3, V6]17021test { try toUnicodeFail("xn--3-sl4eu679e.xn----xn4e"); } // [V3, V6]
17022test { try toAsciiFail("xn--3-sl4eu679e.xn----xn4e", false); } // [V3, V6]
17023test { try toAsciiFail("xn--3-sl4eu679e.xn----xn4e", true); } // [V3, V6]
6884test { try toUnicodeFail("\xdd\x9f\xe1\xae\xa2\xe1\x80\xba\xe1\x82\xa7.e"); } // [B2, B3]17024test { try toUnicodeFail("\xdd\x9f\xe1\xae\xa2\xe1\x80\xba\xe1\x82\xa7.e"); } // [B2, B3]
17025test { try toAsciiFail("\xdd\x9f\xe1\xae\xa2\xe1\x80\xba\xe1\x82\xa7.e", false); } // [B2, B3]
17026test { try toAsciiFail("\xdd\x9f\xe1\xae\xa2\xe1\x80\xba\xe1\x82\xa7.e", true); } // [B2, B3]
6885test { try toUnicodeFail("\xdd\x9f\xe1\xae\xa2\xe1\x80\xba\xe2\xb4\x87.e"); } // [B2, B3]17027test { try toUnicodeFail("\xdd\x9f\xe1\xae\xa2\xe1\x80\xba\xe2\xb4\x87.e"); } // [B2, B3]
17028test { try toAsciiFail("\xdd\x9f\xe1\xae\xa2\xe1\x80\xba\xe2\xb4\x87.e", false); } // [B2, B3]
17029test { try toAsciiFail("\xdd\x9f\xe1\xae\xa2\xe1\x80\xba\xe2\xb4\x87.e", true); } // [B2, B3]
6886test { try toUnicodeFail("\xdd\x9f\xe1\xae\xa2\xe1\x80\xba\xe1\x82\xa7.E"); } // [B2, B3]17030test { try toUnicodeFail("\xdd\x9f\xe1\xae\xa2\xe1\x80\xba\xe1\x82\xa7.E"); } // [B2, B3]
17031test { try toAsciiFail("\xdd\x9f\xe1\xae\xa2\xe1\x80\xba\xe1\x82\xa7.E", false); } // [B2, B3]
17032test { try toAsciiFail("\xdd\x9f\xe1\xae\xa2\xe1\x80\xba\xe1\x82\xa7.E", true); } // [B2, B3]
6887test { try toUnicodeFail("xn--jpb846bjzj7pr.e"); } // [B2, B3]17033test { try toUnicodeFail("xn--jpb846bjzj7pr.e"); } // [B2, B3]
17034test { try toAsciiFail("xn--jpb846bjzj7pr.e", false); } // [B2, B3]
17035test { try toAsciiFail("xn--jpb846bjzj7pr.e", true); } // [B2, B3]
6888test { try toUnicodeFail("xn--jpb846bmjw88a.e"); } // [B2, B3, V7]17036test { try toUnicodeFail("xn--jpb846bmjw88a.e"); } // [B2, B3, V7]
17037test { try toAsciiFail("xn--jpb846bmjw88a.e", false); } // [B2, B3, V7]
17038test { try toAsciiFail("xn--jpb846bmjw88a.e", true); } // [B2, B3, V7]
6889test { try toUnicodeFail("\xe1\x84\xb9\xef\xbd\xa1\xe0\xbb\x8a\xf2\xa0\xaf\xa4\xf3\xa0\x84\x9e"); } // [V6, V7]17039test { try toUnicodeFail("\xe1\x84\xb9\xef\xbd\xa1\xe0\xbb\x8a\xf2\xa0\xaf\xa4\xf3\xa0\x84\x9e"); } // [V6, V7]
17040test { try toAsciiFail("\xe1\x84\xb9\xef\xbd\xa1\xe0\xbb\x8a\xf2\xa0\xaf\xa4\xf3\xa0\x84\x9e", false); } // [V6, V7]
17041test { try toAsciiFail("\xe1\x84\xb9\xef\xbd\xa1\xe0\xbb\x8a\xf2\xa0\xaf\xa4\xf3\xa0\x84\x9e", true); } // [V6, V7]
6890test { try toUnicodeFail("\xe1\x84\xb9\xe3\x80\x82\xe0\xbb\x8a\xf2\xa0\xaf\xa4\xf3\xa0\x84\x9e"); } // [V6, V7]17042test { try toUnicodeFail("\xe1\x84\xb9\xe3\x80\x82\xe0\xbb\x8a\xf2\xa0\xaf\xa4\xf3\xa0\x84\x9e"); } // [V6, V7]
17043test { try toAsciiFail("\xe1\x84\xb9\xe3\x80\x82\xe0\xbb\x8a\xf2\xa0\xaf\xa4\xf3\xa0\x84\x9e", false); } // [V6, V7]
17044test { try toAsciiFail("\xe1\x84\xb9\xe3\x80\x82\xe0\xbb\x8a\xf2\xa0\xaf\xa4\xf3\xa0\x84\x9e", true); } // [V6, V7]
6891test { try toUnicodeFail("xn--lrd.xn--s8c05302k"); } // [V6, V7]17045test { try toUnicodeFail("xn--lrd.xn--s8c05302k"); } // [V6, V7]
17046test { try toAsciiFail("xn--lrd.xn--s8c05302k", false); } // [V6, V7]
17047test { try toAsciiFail("xn--lrd.xn--s8c05302k", true); } // [V6, V7]
6892test { try toUnicodeFail("\xe1\x82\xa6\xf2\xbb\xa2\xa9\xef\xbc\x8e\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\x8d"); } // [V7]17048test { try toUnicodeFail("\xe1\x82\xa6\xf2\xbb\xa2\xa9\xef\xbc\x8e\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\x8d"); } // [V7]
17049test { try toAsciiFail("\xe1\x82\xa6\xf2\xbb\xa2\xa9\xef\xbc\x8e\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\x8d", false); } // [V7]
17050test { try toAsciiFail("\xe1\x82\xa6\xf2\xbb\xa2\xa9\xef\xbc\x8e\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\x8d", true); } // [V7]
6893test { try toUnicodeFail("\xe1\x82\xa6\xf2\xbb\xa2\xa9.\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\x8d"); } // [V7]17051test { try toUnicodeFail("\xe1\x82\xa6\xf2\xbb\xa2\xa9.\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\x8d"); } // [V7]
17052test { try toAsciiFail("\xe1\x82\xa6\xf2\xbb\xa2\xa9.\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\x8d", false); } // [V7]
17053test { try toAsciiFail("\xe1\x82\xa6\xf2\xbb\xa2\xa9.\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\x8d", true); } // [V7]
6894test { try toUnicodeFail("\xe2\xb4\x86\xf2\xbb\xa2\xa9.\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\xaf"); } // [V7]17054test { try toUnicodeFail("\xe2\xb4\x86\xf2\xbb\xa2\xa9.\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\xaf"); } // [V7]
17055test { try toAsciiFail("\xe2\xb4\x86\xf2\xbb\xa2\xa9.\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\xaf", false); } // [V7]
17056test { try toAsciiFail("\xe2\xb4\x86\xf2\xbb\xa2\xa9.\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\xaf", true); } // [V7]
6895test { try toUnicodeFail("xn--xkjw3965g.xn--ne6h"); } // [V7]17057test { try toUnicodeFail("xn--xkjw3965g.xn--ne6h"); } // [V7]
17058test { try toAsciiFail("xn--xkjw3965g.xn--ne6h", false); } // [V7]
17059test { try toAsciiFail("xn--xkjw3965g.xn--ne6h", true); } // [V7]
6896test { try toUnicodeFail("\xe2\xb4\x86\xf2\xbb\xa2\xa9\xef\xbc\x8e\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\xaf"); } // [V7]17060test { try toUnicodeFail("\xe2\xb4\x86\xf2\xbb\xa2\xa9\xef\xbc\x8e\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\xaf"); } // [V7]
17061test { try toAsciiFail("\xe2\xb4\x86\xf2\xbb\xa2\xa9\xef\xbc\x8e\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\xaf", false); } // [V7]
17062test { try toAsciiFail("\xe2\xb4\x86\xf2\xbb\xa2\xa9\xef\xbc\x8e\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\xaf", true); } // [V7]
6897test { try toUnicodeFail("xn--end82983m.xn--ne6h"); } // [V7]17063test { try toUnicodeFail("xn--end82983m.xn--ne6h"); } // [V7]
17064test { try toAsciiFail("xn--end82983m.xn--ne6h", false); } // [V7]
17065test { try toAsciiFail("xn--end82983m.xn--ne6h", true); } // [V7]
6898test { try toUnicodeFail("\xe2\xb4\x86\xf2\xbb\xa2\xa9.\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\x8d"); } // [V7]17066test { try toUnicodeFail("\xe2\xb4\x86\xf2\xbb\xa2\xa9.\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\x8d"); } // [V7]
17067test { try toAsciiFail("\xe2\xb4\x86\xf2\xbb\xa2\xa9.\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\x8d", false); } // [V7]
17068test { try toAsciiFail("\xe2\xb4\x86\xf2\xbb\xa2\xa9.\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\x8d", true); } // [V7]
6899test { try toUnicodeFail("\xe2\xb4\x86\xf2\xbb\xa2\xa9\xef\xbc\x8e\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\x8d"); } // [V7]17069test { try toUnicodeFail("\xe2\xb4\x86\xf2\xbb\xa2\xa9\xef\xbc\x8e\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\x8d"); } // [V7]
17070test { try toAsciiFail("\xe2\xb4\x86\xf2\xbb\xa2\xa9\xef\xbc\x8e\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\x8d", false); } // [V7]
17071test { try toAsciiFail("\xe2\xb4\x86\xf2\xbb\xa2\xa9\xef\xbc\x8e\xf3\xa0\x86\xa1\xef\xb8\x89\xf0\x9e\xa4\x8d", true); } // [V7]
6900test { try toUnicodeFail("\xc3\x9f\xe0\xa0\x8b\xef\xb8\x92\xd9\xbb\xef\xbc\x8e\xe5\xb8\xbcF\xe2\x88\xac\xe2\x80\x8c"); } // [B5, B6, C1, V7]17072test { try toUnicodeFail("\xc3\x9f\xe0\xa0\x8b\xef\xb8\x92\xd9\xbb\xef\xbc\x8e\xe5\xb8\xbcF\xe2\x88\xac\xe2\x80\x8c"); } // [B5, B6, C1, V7]
17073test { try toAsciiFail("\xc3\x9f\xe0\xa0\x8b\xef\xb8\x92\xd9\xbb\xef\xbc\x8e\xe5\xb8\xbcF\xe2\x88\xac\xe2\x80\x8c", false); } // [B5, B6, C1, V7]
17074test { try toAsciiFail("\xc3\x9f\xe0\xa0\x8b\xef\xb8\x92\xd9\xbb\xef\xbc\x8e\xe5\xb8\xbcF\xe2\x88\xac\xe2\x80\x8c", true); } // [B5, B6, V7]
6901test { try toUnicodeFail("\xc3\x9f\xe0\xa0\x8b\xe3\x80\x82\xd9\xbb.\xe5\xb8\xbcF\xe2\x88\xab\xe2\x88\xab\xe2\x80\x8c"); } // [B5, B6, C1]17075test { try toUnicodeFail("\xc3\x9f\xe0\xa0\x8b\xe3\x80\x82\xd9\xbb.\xe5\xb8\xbcF\xe2\x88\xab\xe2\x88\xab\xe2\x80\x8c"); } // [B5, B6, C1]
17076test { try toAsciiFail("\xc3\x9f\xe0\xa0\x8b\xe3\x80\x82\xd9\xbb.\xe5\xb8\xbcF\xe2\x88\xab\xe2\x88\xab\xe2\x80\x8c", false); } // [B5, B6, C1]
17077test { try toAsciiFail("\xc3\x9f\xe0\xa0\x8b\xe3\x80\x82\xd9\xbb.\xe5\xb8\xbcF\xe2\x88\xab\xe2\x88\xab\xe2\x80\x8c", true); } // [B5, B6]
6902test { try toUnicodeFail("\xc3\x9f\xe0\xa0\x8b\xe3\x80\x82\xd9\xbb.\xe5\xb8\xbcf\xe2\x88\xab\xe2\x88\xab\xe2\x80\x8c"); } // [B5, B6, C1]17078test { try toUnicodeFail("\xc3\x9f\xe0\xa0\x8b\xe3\x80\x82\xd9\xbb.\xe5\xb8\xbcf\xe2\x88\xab\xe2\x88\xab\xe2\x80\x8c"); } // [B5, B6, C1]
17079test { try toAsciiFail("\xc3\x9f\xe0\xa0\x8b\xe3\x80\x82\xd9\xbb.\xe5\xb8\xbcf\xe2\x88\xab\xe2\x88\xab\xe2\x80\x8c", false); } // [B5, B6, C1]
17080test { try toAsciiFail("\xc3\x9f\xe0\xa0\x8b\xe3\x80\x82\xd9\xbb.\xe5\xb8\xbcf\xe2\x88\xab\xe2\x88\xab\xe2\x80\x8c", true); } // [B5, B6]
6903test { try toUnicodeFail("SS\xe0\xa0\x8b\xe3\x80\x82\xd9\xbb.\xe5\xb8\xbcF\xe2\x88\xab\xe2\x88\xab\xe2\x80\x8c"); } // [B5, B6, C1]17081test { try toUnicodeFail("SS\xe0\xa0\x8b\xe3\x80\x82\xd9\xbb.\xe5\xb8\xbcF\xe2\x88\xab\xe2\x88\xab\xe2\x80\x8c"); } // [B5, B6, C1]
17082test { try toAsciiFail("SS\xe0\xa0\x8b\xe3\x80\x82\xd9\xbb.\xe5\xb8\xbcF\xe2\x88\xab\xe2\x88\xab\xe2\x80\x8c", false); } // [B5, B6, C1]
17083test { try toAsciiFail("SS\xe0\xa0\x8b\xe3\x80\x82\xd9\xbb.\xe5\xb8\xbcF\xe2\x88\xab\xe2\x88\xab\xe2\x80\x8c", true); } // [B5, B6]
6904test { try toUnicodeFail("ss\xe0\xa0\x8b\xe3\x80\x82\xd9\xbb.\xe5\xb8\xbcf\xe2\x88\xab\xe2\x88\xab\xe2\x80\x8c"); } // [B5, B6, C1]17084test { try toUnicodeFail("ss\xe0\xa0\x8b\xe3\x80\x82\xd9\xbb.\xe5\xb8\xbcf\xe2\x88\xab\xe2\x88\xab\xe2\x80\x8c"); } // [B5, B6, C1]
17085test { try toAsciiFail("ss\xe0\xa0\x8b\xe3\x80\x82\xd9\xbb.\xe5\xb8\xbcf\xe2\x88\xab\xe2\x88\xab\xe2\x80\x8c", false); } // [B5, B6, C1]
17086test { try toAsciiFail("ss\xe0\xa0\x8b\xe3\x80\x82\xd9\xbb.\xe5\xb8\xbcf\xe2\x88\xab\xe2\x88\xab\xe2\x80\x8c", true); } // [B5, B6]
6905test { try toUnicodeFail("Ss\xe0\xa0\x8b\xe3\x80\x82\xd9\xbb.\xe5\xb8\xbcF\xe2\x88\xab\xe2\x88\xab\xe2\x80\x8c"); } // [B5, B6, C1]17087test { try toUnicodeFail("Ss\xe0\xa0\x8b\xe3\x80\x82\xd9\xbb.\xe5\xb8\xbcF\xe2\x88\xab\xe2\x88\xab\xe2\x80\x8c"); } // [B5, B6, C1]
17088test { try toAsciiFail("Ss\xe0\xa0\x8b\xe3\x80\x82\xd9\xbb.\xe5\xb8\xbcF\xe2\x88\xab\xe2\x88\xab\xe2\x80\x8c", false); } // [B5, B6, C1]
17089test { try toAsciiFail("Ss\xe0\xa0\x8b\xe3\x80\x82\xd9\xbb.\xe5\xb8\xbcF\xe2\x88\xab\xe2\x88\xab\xe2\x80\x8c", true); } // [B5, B6]
6906test { try toUnicodeFail("xn--ss-uze.xn--0ib.xn--f-tcoa9162d"); } // [B5, B6]17090test { try toUnicodeFail("xn--ss-uze.xn--0ib.xn--f-tcoa9162d"); } // [B5, B6]
17091test { try toAsciiFail("xn--ss-uze.xn--0ib.xn--f-tcoa9162d", false); } // [B5, B6]
17092test { try toAsciiFail("xn--ss-uze.xn--0ib.xn--f-tcoa9162d", true); } // [B5, B6]
6907test { try toUnicodeFail("xn--ss-uze.xn--0ib.xn--f-sgn48ga6997e"); } // [B5, B6, C1]17093test { try toUnicodeFail("xn--ss-uze.xn--0ib.xn--f-sgn48ga6997e"); } // [B5, B6, C1]
17094test { try toAsciiFail("xn--ss-uze.xn--0ib.xn--f-sgn48ga6997e", false); } // [B5, B6, C1]
17095test { try toAsciiFail("xn--ss-uze.xn--0ib.xn--f-sgn48ga6997e", true); } // [B5, B6, C1]
6908test { try toUnicodeFail("xn--zca687a.xn--0ib.xn--f-sgn48ga6997e"); } // [B5, B6, C1]17096test { try toUnicodeFail("xn--zca687a.xn--0ib.xn--f-sgn48ga6997e"); } // [B5, B6, C1]
17097test { try toAsciiFail("xn--zca687a.xn--0ib.xn--f-sgn48ga6997e", false); } // [B5, B6, C1]
17098test { try toAsciiFail("xn--zca687a.xn--0ib.xn--f-sgn48ga6997e", true); } // [B5, B6, C1]
6909test { try toUnicodeFail("\xc3\x9f\xe0\xa0\x8b\xef\xb8\x92\xd9\xbb\xef\xbc\x8e\xe5\xb8\xbcf\xe2\x88\xac\xe2\x80\x8c"); } // [B5, B6, C1, V7]17099test { try toUnicodeFail("\xc3\x9f\xe0\xa0\x8b\xef\xb8\x92\xd9\xbb\xef\xbc\x8e\xe5\xb8\xbcf\xe2\x88\xac\xe2\x80\x8c"); } // [B5, B6, C1, V7]
17100test { try toAsciiFail("\xc3\x9f\xe0\xa0\x8b\xef\xb8\x92\xd9\xbb\xef\xbc\x8e\xe5\xb8\xbcf\xe2\x88\xac\xe2\x80\x8c", false); } // [B5, B6, C1, V7]
17101test { try toAsciiFail("\xc3\x9f\xe0\xa0\x8b\xef\xb8\x92\xd9\xbb\xef\xbc\x8e\xe5\xb8\xbcf\xe2\x88\xac\xe2\x80\x8c", true); } // [B5, B6, V7]
6910test { try toUnicodeFail("SS\xe0\xa0\x8b\xef\xb8\x92\xd9\xbb\xef\xbc\x8e\xe5\xb8\xbcF\xe2\x88\xac\xe2\x80\x8c"); } // [B5, B6, C1, V7]17102test { try toUnicodeFail("SS\xe0\xa0\x8b\xef\xb8\x92\xd9\xbb\xef\xbc\x8e\xe5\xb8\xbcF\xe2\x88\xac\xe2\x80\x8c"); } // [B5, B6, C1, V7]
17103test { try toAsciiFail("SS\xe0\xa0\x8b\xef\xb8\x92\xd9\xbb\xef\xbc\x8e\xe5\xb8\xbcF\xe2\x88\xac\xe2\x80\x8c", false); } // [B5, B6, C1, V7]
17104test { try toAsciiFail("SS\xe0\xa0\x8b\xef\xb8\x92\xd9\xbb\xef\xbc\x8e\xe5\xb8\xbcF\xe2\x88\xac\xe2\x80\x8c", true); } // [B5, B6, V7]
6911test { try toUnicodeFail("ss\xe0\xa0\x8b\xef\xb8\x92\xd9\xbb\xef\xbc\x8e\xe5\xb8\xbcf\xe2\x88\xac\xe2\x80\x8c"); } // [B5, B6, C1, V7]17105test { try toUnicodeFail("ss\xe0\xa0\x8b\xef\xb8\x92\xd9\xbb\xef\xbc\x8e\xe5\xb8\xbcf\xe2\x88\xac\xe2\x80\x8c"); } // [B5, B6, C1, V7]
17106test { try toAsciiFail("ss\xe0\xa0\x8b\xef\xb8\x92\xd9\xbb\xef\xbc\x8e\xe5\xb8\xbcf\xe2\x88\xac\xe2\x80\x8c", false); } // [B5, B6, C1, V7]
17107test { try toAsciiFail("ss\xe0\xa0\x8b\xef\xb8\x92\xd9\xbb\xef\xbc\x8e\xe5\xb8\xbcf\xe2\x88\xac\xe2\x80\x8c", true); } // [B5, B6, V7]
6912test { try toUnicodeFail("Ss\xe0\xa0\x8b\xef\xb8\x92\xd9\xbb\xef\xbc\x8e\xe5\xb8\xbcF\xe2\x88\xac\xe2\x80\x8c"); } // [B5, B6, C1, V7]17108test { try toUnicodeFail("Ss\xe0\xa0\x8b\xef\xb8\x92\xd9\xbb\xef\xbc\x8e\xe5\xb8\xbcF\xe2\x88\xac\xe2\x80\x8c"); } // [B5, B6, C1, V7]
17109test { try toAsciiFail("Ss\xe0\xa0\x8b\xef\xb8\x92\xd9\xbb\xef\xbc\x8e\xe5\xb8\xbcF\xe2\x88\xac\xe2\x80\x8c", false); } // [B5, B6, C1, V7]
17110test { try toAsciiFail("Ss\xe0\xa0\x8b\xef\xb8\x92\xd9\xbb\xef\xbc\x8e\xe5\xb8\xbcF\xe2\x88\xac\xe2\x80\x8c", true); } // [B5, B6, V7]
6913test { try toUnicodeFail("xn--ss-k0d31nu121d.xn--f-tcoa9162d"); } // [B5, B6, V7]17111test { try toUnicodeFail("xn--ss-k0d31nu121d.xn--f-tcoa9162d"); } // [B5, B6, V7]
17112test { try toAsciiFail("xn--ss-k0d31nu121d.xn--f-tcoa9162d", false); } // [B5, B6, V7]
17113test { try toAsciiFail("xn--ss-k0d31nu121d.xn--f-tcoa9162d", true); } // [B5, B6, V7]
6914test { try toUnicodeFail("xn--ss-k0d31nu121d.xn--f-sgn48ga6997e"); } // [B5, B6, C1, V7]17114test { try toUnicodeFail("xn--ss-k0d31nu121d.xn--f-sgn48ga6997e"); } // [B5, B6, C1, V7]
17115test { try toAsciiFail("xn--ss-k0d31nu121d.xn--f-sgn48ga6997e", false); } // [B5, B6, C1, V7]
17116test { try toAsciiFail("xn--ss-k0d31nu121d.xn--f-sgn48ga6997e", true); } // [B5, B6, C1, V7]
6915test { try toUnicodeFail("xn--zca68zj8ac956c.xn--f-sgn48ga6997e"); } // [B5, B6, C1, V7]17117test { try toUnicodeFail("xn--zca68zj8ac956c.xn--f-sgn48ga6997e"); } // [B5, B6, C1, V7]
17118test { try toAsciiFail("xn--zca68zj8ac956c.xn--f-sgn48ga6997e", false); } // [B5, B6, C1, V7]
17119test { try toAsciiFail("xn--zca68zj8ac956c.xn--f-sgn48ga6997e", true); } // [B5, B6, C1, V7]
6916test { try toUnicodeFail("\xf3\x98\xaa\x97\xef\xbd\xa1\xf0\x90\xb9\xb4\xf0\x9e\xa8\x8c\xe2\x80\x8d"); } // [B1, C2, V7]17120test { try toUnicodeFail("\xf3\x98\xaa\x97\xef\xbd\xa1\xf0\x90\xb9\xb4\xf0\x9e\xa8\x8c\xe2\x80\x8d"); } // [B1, C2, V7]
17121test { try toAsciiFail("\xf3\x98\xaa\x97\xef\xbd\xa1\xf0\x90\xb9\xb4\xf0\x9e\xa8\x8c\xe2\x80\x8d", false); } // [B1, C2, V7]
17122test { try toAsciiFail("\xf3\x98\xaa\x97\xef\xbd\xa1\xf0\x90\xb9\xb4\xf0\x9e\xa8\x8c\xe2\x80\x8d", true); } // [B1, V7]
6917test { try toUnicodeFail("\xf3\x98\xaa\x97\xe3\x80\x82\xf0\x90\xb9\xb4\xf0\x9e\xa8\x8c\xe2\x80\x8d"); } // [B1, C2, V7]17123test { try toUnicodeFail("\xf3\x98\xaa\x97\xe3\x80\x82\xf0\x90\xb9\xb4\xf0\x9e\xa8\x8c\xe2\x80\x8d"); } // [B1, C2, V7]
17124test { try toAsciiFail("\xf3\x98\xaa\x97\xe3\x80\x82\xf0\x90\xb9\xb4\xf0\x9e\xa8\x8c\xe2\x80\x8d", false); } // [B1, C2, V7]
17125test { try toAsciiFail("\xf3\x98\xaa\x97\xe3\x80\x82\xf0\x90\xb9\xb4\xf0\x9e\xa8\x8c\xe2\x80\x8d", true); } // [B1, V7]
6918test { try toUnicodeFail("xn--8l83e.xn--so0dw168a"); } // [B1, V7]17126test { try toUnicodeFail("xn--8l83e.xn--so0dw168a"); } // [B1, V7]
17127test { try toAsciiFail("xn--8l83e.xn--so0dw168a", false); } // [B1, V7]
17128test { try toAsciiFail("xn--8l83e.xn--so0dw168a", true); } // [B1, V7]
6919test { try toUnicodeFail("xn--8l83e.xn--1ug4105gsxwf"); } // [B1, C2, V7]17129test { try toUnicodeFail("xn--8l83e.xn--1ug4105gsxwf"); } // [B1, C2, V7]
17130test { try toAsciiFail("xn--8l83e.xn--1ug4105gsxwf", false); } // [B1, C2, V7]
17131test { try toAsciiFail("xn--8l83e.xn--1ug4105gsxwf", true); } // [B1, C2, V7]
6920test { try toUnicodeFail("\xf1\x97\x9b\xa8.\xf2\x85\x9f\xa2\xf0\x9d\x9f\xa8\xea\xa3\x84"); } // [V7]17132test { try toUnicodeFail("\xf1\x97\x9b\xa8.\xf2\x85\x9f\xa2\xf0\x9d\x9f\xa8\xea\xa3\x84"); } // [V7]
17133test { try toAsciiFail("\xf1\x97\x9b\xa8.\xf2\x85\x9f\xa2\xf0\x9d\x9f\xa8\xea\xa3\x84", false); } // [V7]
17134test { try toAsciiFail("\xf1\x97\x9b\xa8.\xf2\x85\x9f\xa2\xf0\x9d\x9f\xa8\xea\xa3\x84", true); } // [V7]
6921test { try toUnicodeFail("\xf1\x97\x9b\xa8.\xf2\x85\x9f\xa26\xea\xa3\x84"); } // [V7]17135test { try toUnicodeFail("\xf1\x97\x9b\xa8.\xf2\x85\x9f\xa26\xea\xa3\x84"); } // [V7]
17136test { try toAsciiFail("\xf1\x97\x9b\xa8.\xf2\x85\x9f\xa26\xea\xa3\x84", false); } // [V7]
17137test { try toAsciiFail("\xf1\x97\x9b\xa8.\xf2\x85\x9f\xa26\xea\xa3\x84", true); } // [V7]
6922test { try toUnicodeFail("xn--mi60a.xn--6-sl4es8023c"); } // [V7]17138test { try toUnicodeFail("xn--mi60a.xn--6-sl4es8023c"); } // [V7]
17139test { try toAsciiFail("xn--mi60a.xn--6-sl4es8023c", false); } // [V7]
17140test { try toAsciiFail("xn--mi60a.xn--6-sl4es8023c", true); } // [V7]
6923test { try toUnicodeFail("\xe1\xaa\xb2\xef\xb6\x8e\xe3\x80\x82-\xdb\xb9\xe1\x82\xb1\xe1\x82\xa8"); } // [B1, V3, V6]17141test { try toUnicodeFail("\xe1\xaa\xb2\xef\xb6\x8e\xe3\x80\x82-\xdb\xb9\xe1\x82\xb1\xe1\x82\xa8"); } // [B1, V3, V6]
17142test { try toAsciiFail("\xe1\xaa\xb2\xef\xb6\x8e\xe3\x80\x82-\xdb\xb9\xe1\x82\xb1\xe1\x82\xa8", false); } // [B1, V3, V6]
17143test { try toAsciiFail("\xe1\xaa\xb2\xef\xb6\x8e\xe3\x80\x82-\xdb\xb9\xe1\x82\xb1\xe1\x82\xa8", true); } // [B1, V3, V6]
6924test { try toUnicodeFail("\xe1\xaa\xb2\xd9\x85\xd8\xae\xd8\xac\xe3\x80\x82-\xdb\xb9\xe1\x82\xb1\xe1\x82\xa8"); } // [B1, V3, V6]17144test { try toUnicodeFail("\xe1\xaa\xb2\xd9\x85\xd8\xae\xd8\xac\xe3\x80\x82-\xdb\xb9\xe1\x82\xb1\xe1\x82\xa8"); } // [B1, V3, V6]
17145test { try toAsciiFail("\xe1\xaa\xb2\xd9\x85\xd8\xae\xd8\xac\xe3\x80\x82-\xdb\xb9\xe1\x82\xb1\xe1\x82\xa8", false); } // [B1, V3, V6]
17146test { try toAsciiFail("\xe1\xaa\xb2\xd9\x85\xd8\xae\xd8\xac\xe3\x80\x82-\xdb\xb9\xe1\x82\xb1\xe1\x82\xa8", true); } // [B1, V3, V6]
6925test { try toUnicodeFail("\xe1\xaa\xb2\xd9\x85\xd8\xae\xd8\xac\xe3\x80\x82-\xdb\xb9\xe2\xb4\x91\xe2\xb4\x88"); } // [B1, V3, V6]17147test { try toUnicodeFail("\xe1\xaa\xb2\xd9\x85\xd8\xae\xd8\xac\xe3\x80\x82-\xdb\xb9\xe2\xb4\x91\xe2\xb4\x88"); } // [B1, V3, V6]
17148test { try toAsciiFail("\xe1\xaa\xb2\xd9\x85\xd8\xae\xd8\xac\xe3\x80\x82-\xdb\xb9\xe2\xb4\x91\xe2\xb4\x88", false); } // [B1, V3, V6]
17149test { try toAsciiFail("\xe1\xaa\xb2\xd9\x85\xd8\xae\xd8\xac\xe3\x80\x82-\xdb\xb9\xe2\xb4\x91\xe2\xb4\x88", true); } // [B1, V3, V6]
6926test { try toUnicodeFail("xn--rgbd2e831i.xn----zyc3430a9a"); } // [B1, V3, V6]17150test { try toUnicodeFail("xn--rgbd2e831i.xn----zyc3430a9a"); } // [B1, V3, V6]
17151test { try toAsciiFail("xn--rgbd2e831i.xn----zyc3430a9a", false); } // [B1, V3, V6]
17152test { try toAsciiFail("xn--rgbd2e831i.xn----zyc3430a9a", true); } // [B1, V3, V6]
6927test { try toUnicodeFail("\xe1\xaa\xb2\xef\xb6\x8e\xe3\x80\x82-\xdb\xb9\xe2\xb4\x91\xe2\xb4\x88"); } // [B1, V3, V6]17153test { try toUnicodeFail("\xe1\xaa\xb2\xef\xb6\x8e\xe3\x80\x82-\xdb\xb9\xe2\xb4\x91\xe2\xb4\x88"); } // [B1, V3, V6]
17154test { try toAsciiFail("\xe1\xaa\xb2\xef\xb6\x8e\xe3\x80\x82-\xdb\xb9\xe2\xb4\x91\xe2\xb4\x88", false); } // [B1, V3, V6]
17155test { try toAsciiFail("\xe1\xaa\xb2\xef\xb6\x8e\xe3\x80\x82-\xdb\xb9\xe2\xb4\x91\xe2\xb4\x88", true); } // [B1, V3, V6]
6928test { try toUnicodeFail("xn--rgbd2e831i.xn----zyc155e9a"); } // [B1, V3, V6, V7]17156test { try toUnicodeFail("xn--rgbd2e831i.xn----zyc155e9a"); } // [B1, V3, V6, V7]
17157test { try toAsciiFail("xn--rgbd2e831i.xn----zyc155e9a", false); } // [B1, V3, V6, V7]
17158test { try toAsciiFail("xn--rgbd2e831i.xn----zyc155e9a", true); } // [B1, V3, V6, V7]
6929test { try toUnicodeFail("\xe1\xaa\xb2\xd9\x85\xd8\xae\xd8\xac\xe3\x80\x82-\xdb\xb9\xe1\x82\xb1\xe2\xb4\x88"); } // [B1, V3, V6]17159test { try toUnicodeFail("\xe1\xaa\xb2\xd9\x85\xd8\xae\xd8\xac\xe3\x80\x82-\xdb\xb9\xe1\x82\xb1\xe2\xb4\x88"); } // [B1, V3, V6]
17160test { try toAsciiFail("\xe1\xaa\xb2\xd9\x85\xd8\xae\xd8\xac\xe3\x80\x82-\xdb\xb9\xe1\x82\xb1\xe2\xb4\x88", false); } // [B1, V3, V6]
17161test { try toAsciiFail("\xe1\xaa\xb2\xd9\x85\xd8\xae\xd8\xac\xe3\x80\x82-\xdb\xb9\xe1\x82\xb1\xe2\xb4\x88", true); } // [B1, V3, V6]
6930test { try toUnicodeFail("xn--rgbd2e831i.xn----zyc875efr3a"); } // [B1, V3, V6, V7]17162test { try toUnicodeFail("xn--rgbd2e831i.xn----zyc875efr3a"); } // [B1, V3, V6, V7]
17163test { try toAsciiFail("xn--rgbd2e831i.xn----zyc875efr3a", false); } // [B1, V3, V6, V7]
17164test { try toAsciiFail("xn--rgbd2e831i.xn----zyc875efr3a", true); } // [B1, V3, V6, V7]
6931test { try toUnicodeFail("\xe1\xaa\xb2\xef\xb6\x8e\xe3\x80\x82-\xdb\xb9\xe1\x82\xb1\xe2\xb4\x88"); } // [B1, V3, V6]17165test { try toUnicodeFail("\xe1\xaa\xb2\xef\xb6\x8e\xe3\x80\x82-\xdb\xb9\xe1\x82\xb1\xe2\xb4\x88"); } // [B1, V3, V6]
17166test { try toAsciiFail("\xe1\xaa\xb2\xef\xb6\x8e\xe3\x80\x82-\xdb\xb9\xe1\x82\xb1\xe2\xb4\x88", false); } // [B1, V3, V6]
17167test { try toAsciiFail("\xe1\xaa\xb2\xef\xb6\x8e\xe3\x80\x82-\xdb\xb9\xe1\x82\xb1\xe2\xb4\x88", true); } // [B1, V3, V6]
6932test { try toUnicodeFail("\xf0\x9e\xa4\xa4\xef\xbc\x8e-\xe0\xa2\xa3\xef\xb8\x92"); } // [B1, V3, V7]17168test { try toUnicodeFail("\xf0\x9e\xa4\xa4\xef\xbc\x8e-\xe0\xa2\xa3\xef\xb8\x92"); } // [B1, V3, V7]
17169test { try toAsciiFail("\xf0\x9e\xa4\xa4\xef\xbc\x8e-\xe0\xa2\xa3\xef\xb8\x92", false); } // [B1, V3, V7]
17170test { try toAsciiFail("\xf0\x9e\xa4\xa4\xef\xbc\x8e-\xe0\xa2\xa3\xef\xb8\x92", true); } // [B1, V3, V7]
6933test { try toUnicodeFail("\xf0\x9e\xa4\xa4.-\xe0\xa2\xa3\xe3\x80\x82"); } // [B1, V3]17171test { try toUnicodeFail("\xf0\x9e\xa4\xa4.-\xe0\xa2\xa3\xe3\x80\x82"); } // [B1, V3]
17172test { try toAsciiFail("\xf0\x9e\xa4\xa4.-\xe0\xa2\xa3\xe3\x80\x82", false); } // [B1, V3, A4_2]
17173test { try toAsciiFail("\xf0\x9e\xa4\xa4.-\xe0\xa2\xa3\xe3\x80\x82", true); } // [B1, V3, A4_2]
6934test { try toUnicodeFail("\xf0\x9e\xa4\x82.-\xe0\xa2\xa3\xe3\x80\x82"); } // [B1, V3]17174test { try toUnicodeFail("\xf0\x9e\xa4\x82.-\xe0\xa2\xa3\xe3\x80\x82"); } // [B1, V3]
17175test { try toAsciiFail("\xf0\x9e\xa4\x82.-\xe0\xa2\xa3\xe3\x80\x82", false); } // [B1, V3, A4_2]
17176test { try toAsciiFail("\xf0\x9e\xa4\x82.-\xe0\xa2\xa3\xe3\x80\x82", true); } // [B1, V3, A4_2]
6935test { try toUnicodeFail("xn--ce6h.xn----cod."); } // [B1, V3]17177test { try toUnicodeFail("xn--ce6h.xn----cod."); } // [B1, V3]
17178test { try toAsciiFail("xn--ce6h.xn----cod.", false); } // [B1, V3, A4_2]
17179test { try toAsciiFail("xn--ce6h.xn----cod.", true); } // [B1, V3, A4_2]
6936test { try toUnicodeFail("\xf0\x9e\xa4\x82\xef\xbc\x8e-\xe0\xa2\xa3\xef\xb8\x92"); } // [B1, V3, V7]17180test { try toUnicodeFail("\xf0\x9e\xa4\x82\xef\xbc\x8e-\xe0\xa2\xa3\xef\xb8\x92"); } // [B1, V3, V7]
17181test { try toAsciiFail("\xf0\x9e\xa4\x82\xef\xbc\x8e-\xe0\xa2\xa3\xef\xb8\x92", false); } // [B1, V3, V7]
17182test { try toAsciiFail("\xf0\x9e\xa4\x82\xef\xbc\x8e-\xe0\xa2\xa3\xef\xb8\x92", true); } // [B1, V3, V7]
6937test { try toUnicodeFail("xn--ce6h.xn----cod7069p"); } // [B1, V3, V7]17183test { try toUnicodeFail("xn--ce6h.xn----cod7069p"); } // [B1, V3, V7]
17184test { try toAsciiFail("xn--ce6h.xn----cod7069p", false); } // [B1, V3, V7]
17185test { try toAsciiFail("xn--ce6h.xn----cod7069p", true); } // [B1, V3, V7]
6938test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xba\xa8.\xe0\xa1\x99--"); } // [B1, C1, V3, V6]17186test { try toUnicodeFail("\xe2\x80\x8c\xf0\x90\xba\xa8.\xe0\xa1\x99--"); } // [B1, C1, V3, V6]
17187test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xba\xa8.\xe0\xa1\x99--", false); } // [B1, C1, V3, V6]
17188test { try toAsciiFail("\xe2\x80\x8c\xf0\x90\xba\xa8.\xe0\xa1\x99--", true); } // [B1, V3, V6]
6939test { try toUnicodeFail("xn--9p0d.xn-----h6e"); } // [B1, V3, V6]17189test { try toUnicodeFail("xn--9p0d.xn-----h6e"); } // [B1, V3, V6]
17190test { try toAsciiFail("xn--9p0d.xn-----h6e", false); } // [B1, V3, V6]
17191test { try toAsciiFail("xn--9p0d.xn-----h6e", true); } // [B1, V3, V6]
6940test { try toUnicodeFail("xn--0ug7905g.xn-----h6e"); } // [B1, C1, V3, V6]17192test { try toUnicodeFail("xn--0ug7905g.xn-----h6e"); } // [B1, C1, V3, V6]
17193test { try toAsciiFail("xn--0ug7905g.xn-----h6e", false); } // [B1, C1, V3, V6]
17194test { try toAsciiFail("xn--0ug7905g.xn-----h6e", true); } // [B1, C1, V3, V6]
6941test { try toUnicodeFail("\xf0\x90\x8b\xb8\xf3\xae\x98\x8b\xe1\x83\x82.\xe1\x82\xa1"); } // [V7]17195test { try toUnicodeFail("\xf0\x90\x8b\xb8\xf3\xae\x98\x8b\xe1\x83\x82.\xe1\x82\xa1"); } // [V7]
17196test { try toAsciiFail("\xf0\x90\x8b\xb8\xf3\xae\x98\x8b\xe1\x83\x82.\xe1\x82\xa1", false); } // [V7]
17197test { try toAsciiFail("\xf0\x90\x8b\xb8\xf3\xae\x98\x8b\xe1\x83\x82.\xe1\x82\xa1", true); } // [V7]
6942test { try toUnicodeFail("\xf0\x90\x8b\xb8\xf3\xae\x98\x8b\xe2\xb4\xa2.\xe2\xb4\x81"); } // [V7]17198test { try toUnicodeFail("\xf0\x90\x8b\xb8\xf3\xae\x98\x8b\xe2\xb4\xa2.\xe2\xb4\x81"); } // [V7]
17199test { try toAsciiFail("\xf0\x90\x8b\xb8\xf3\xae\x98\x8b\xe2\xb4\xa2.\xe2\xb4\x81", false); } // [V7]
17200test { try toAsciiFail("\xf0\x90\x8b\xb8\xf3\xae\x98\x8b\xe2\xb4\xa2.\xe2\xb4\x81", true); } // [V7]
6943test { try toUnicodeFail("\xf0\x90\x8b\xb8\xf3\xae\x98\x8b\xe1\x83\x82.\xe2\xb4\x81"); } // [V7]17201test { try toUnicodeFail("\xf0\x90\x8b\xb8\xf3\xae\x98\x8b\xe1\x83\x82.\xe2\xb4\x81"); } // [V7]
17202test { try toAsciiFail("\xf0\x90\x8b\xb8\xf3\xae\x98\x8b\xe1\x83\x82.\xe2\xb4\x81", false); } // [V7]
17203test { try toAsciiFail("\xf0\x90\x8b\xb8\xf3\xae\x98\x8b\xe1\x83\x82.\xe2\xb4\x81", true); } // [V7]
6944test { try toUnicodeFail("xn--qlj1559dr224h.xn--skj"); } // [V7]17204test { try toUnicodeFail("xn--qlj1559dr224h.xn--skj"); } // [V7]
17205test { try toAsciiFail("xn--qlj1559dr224h.xn--skj", false); } // [V7]
17206test { try toAsciiFail("xn--qlj1559dr224h.xn--skj", true); } // [V7]
6945test { try toUnicodeFail("xn--6nd5215jr2u0h.xn--skj"); } // [V7]17207test { try toUnicodeFail("xn--6nd5215jr2u0h.xn--skj"); } // [V7]
17208test { try toAsciiFail("xn--6nd5215jr2u0h.xn--skj", false); } // [V7]
17209test { try toAsciiFail("xn--6nd5215jr2u0h.xn--skj", true); } // [V7]
6946test { try toUnicodeFail("xn--6nd5215jr2u0h.xn--8md"); } // [V7]17210test { try toUnicodeFail("xn--6nd5215jr2u0h.xn--8md"); } // [V7]
17211test { try toAsciiFail("xn--6nd5215jr2u0h.xn--8md", false); } // [V7]
17212test { try toAsciiFail("xn--6nd5215jr2u0h.xn--8md", true); } // [V7]
6947test { try toUnicodeFail("\xf1\x97\x91\xbf\xea\xa0\x86\xe2\x82\x84\xf2\xa9\x9e\x86\xef\xbd\xa1\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xcf\x82"); } // [V7]17213test { try toUnicodeFail("\xf1\x97\x91\xbf\xea\xa0\x86\xe2\x82\x84\xf2\xa9\x9e\x86\xef\xbd\xa1\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xcf\x82"); } // [V7]
17214test { try toAsciiFail("\xf1\x97\x91\xbf\xea\xa0\x86\xe2\x82\x84\xf2\xa9\x9e\x86\xef\xbd\xa1\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xcf\x82", false); } // [V7]
17215test { try toAsciiFail("\xf1\x97\x91\xbf\xea\xa0\x86\xe2\x82\x84\xf2\xa9\x9e\x86\xef\xbd\xa1\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xcf\x82", true); } // [V7]
6948test { try toUnicodeFail("\xf1\x97\x91\xbf\xea\xa0\x864\xf2\xa9\x9e\x86\xe3\x80\x82\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xcf\x82"); } // [V7]17216test { try toUnicodeFail("\xf1\x97\x91\xbf\xea\xa0\x864\xf2\xa9\x9e\x86\xe3\x80\x82\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xcf\x82"); } // [V7]
17217test { try toAsciiFail("\xf1\x97\x91\xbf\xea\xa0\x864\xf2\xa9\x9e\x86\xe3\x80\x82\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xcf\x82", false); } // [V7]
17218test { try toAsciiFail("\xf1\x97\x91\xbf\xea\xa0\x864\xf2\xa9\x9e\x86\xe3\x80\x82\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xcf\x82", true); } // [V7]
6949test { try toUnicodeFail("\xf1\x97\x91\xbf\xea\xa0\x864\xf2\xa9\x9e\x86\xe3\x80\x82\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xce\xa3"); } // [V7]17219test { try toUnicodeFail("\xf1\x97\x91\xbf\xea\xa0\x864\xf2\xa9\x9e\x86\xe3\x80\x82\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xce\xa3"); } // [V7]
17220test { try toAsciiFail("\xf1\x97\x91\xbf\xea\xa0\x864\xf2\xa9\x9e\x86\xe3\x80\x82\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xce\xa3", false); } // [V7]
17221test { try toAsciiFail("\xf1\x97\x91\xbf\xea\xa0\x864\xf2\xa9\x9e\x86\xe3\x80\x82\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xce\xa3", true); } // [V7]
6950test { try toUnicodeFail("\xf1\x97\x91\xbf\xea\xa0\x864\xf2\xa9\x9e\x86\xe3\x80\x82\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xcf\x83"); } // [V7]17222test { try toUnicodeFail("\xf1\x97\x91\xbf\xea\xa0\x864\xf2\xa9\x9e\x86\xe3\x80\x82\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xcf\x83"); } // [V7]
17223test { try toAsciiFail("\xf1\x97\x91\xbf\xea\xa0\x864\xf2\xa9\x9e\x86\xe3\x80\x82\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xcf\x83", false); } // [V7]
17224test { try toAsciiFail("\xf1\x97\x91\xbf\xea\xa0\x864\xf2\xa9\x9e\x86\xe3\x80\x82\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xcf\x83", true); } // [V7]
6951test { try toUnicodeFail("xn--4-w93ej7463a9io5a.xn--4xa31142bk3f0d"); } // [V7]17225test { try toUnicodeFail("xn--4-w93ej7463a9io5a.xn--4xa31142bk3f0d"); } // [V7]
17226test { try toAsciiFail("xn--4-w93ej7463a9io5a.xn--4xa31142bk3f0d", false); } // [V7]
17227test { try toAsciiFail("xn--4-w93ej7463a9io5a.xn--4xa31142bk3f0d", true); } // [V7]
6952test { try toUnicodeFail("xn--4-w93ej7463a9io5a.xn--3xa51142bk3f0d"); } // [V7]17228test { try toUnicodeFail("xn--4-w93ej7463a9io5a.xn--3xa51142bk3f0d"); } // [V7]
17229test { try toAsciiFail("xn--4-w93ej7463a9io5a.xn--3xa51142bk3f0d", false); } // [V7]
17230test { try toAsciiFail("xn--4-w93ej7463a9io5a.xn--3xa51142bk3f0d", true); } // [V7]
6953test { try toUnicodeFail("\xf1\x97\x91\xbf\xea\xa0\x86\xe2\x82\x84\xf2\xa9\x9e\x86\xef\xbd\xa1\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xce\xa3"); } // [V7]17231test { try toUnicodeFail("\xf1\x97\x91\xbf\xea\xa0\x86\xe2\x82\x84\xf2\xa9\x9e\x86\xef\xbd\xa1\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xce\xa3"); } // [V7]
17232test { try toAsciiFail("\xf1\x97\x91\xbf\xea\xa0\x86\xe2\x82\x84\xf2\xa9\x9e\x86\xef\xbd\xa1\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xce\xa3", false); } // [V7]
17233test { try toAsciiFail("\xf1\x97\x91\xbf\xea\xa0\x86\xe2\x82\x84\xf2\xa9\x9e\x86\xef\xbd\xa1\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xce\xa3", true); } // [V7]
6954test { try toUnicodeFail("\xf1\x97\x91\xbf\xea\xa0\x86\xe2\x82\x84\xf2\xa9\x9e\x86\xef\xbd\xa1\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xcf\x83"); } // [V7]17234test { try toUnicodeFail("\xf1\x97\x91\xbf\xea\xa0\x86\xe2\x82\x84\xf2\xa9\x9e\x86\xef\xbd\xa1\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xcf\x83"); } // [V7]
17235test { try toAsciiFail("\xf1\x97\x91\xbf\xea\xa0\x86\xe2\x82\x84\xf2\xa9\x9e\x86\xef\xbd\xa1\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xcf\x83", false); } // [V7]
17236test { try toAsciiFail("\xf1\x97\x91\xbf\xea\xa0\x86\xe2\x82\x84\xf2\xa9\x9e\x86\xef\xbd\xa1\xf0\xb2\xa9\xa7\xf3\xa0\x92\xb9\xcf\x83", true); } // [V7]
6955test { try toUnicodeFail("\xf3\xa0\x86\x80\xdc\xa3\xe3\x80\x82\xe1\xb7\xb4\xdd\xb5"); } // [B1, V6]17237test { try toUnicodeFail("\xf3\xa0\x86\x80\xdc\xa3\xe3\x80\x82\xe1\xb7\xb4\xdd\xb5"); } // [B1, V6]
17238test { try toAsciiFail("\xf3\xa0\x86\x80\xdc\xa3\xe3\x80\x82\xe1\xb7\xb4\xdd\xb5", false); } // [B1, V6]
17239test { try toAsciiFail("\xf3\xa0\x86\x80\xdc\xa3\xe3\x80\x82\xe1\xb7\xb4\xdd\xb5", true); } // [B1, V6]
6956test { try toUnicodeFail("xn--tnb.xn--5pb136i"); } // [B1, V6]17240test { try toUnicodeFail("xn--tnb.xn--5pb136i"); } // [B1, V6]
17241test { try toAsciiFail("xn--tnb.xn--5pb136i", false); } // [B1, V6]
17242test { try toAsciiFail("xn--tnb.xn--5pb136i", true); } // [B1, V6]
6957test { try toUnicodeFail("\xf0\x90\xb9\xb1\xe0\xa1\x82\xf0\x9d\xaa\xa8\xef\xbd\xa1\xf0\xac\xbc\x96\xe1\x82\xb1\xe2\x80\x8d"); } // [B1, B6, C2]17243test { try toUnicodeFail("\xf0\x90\xb9\xb1\xe0\xa1\x82\xf0\x9d\xaa\xa8\xef\xbd\xa1\xf0\xac\xbc\x96\xe1\x82\xb1\xe2\x80\x8d"); } // [B1, B6, C2]
17244test { try toAsciiFail("\xf0\x90\xb9\xb1\xe0\xa1\x82\xf0\x9d\xaa\xa8\xef\xbd\xa1\xf0\xac\xbc\x96\xe1\x82\xb1\xe2\x80\x8d", false); } // [B1, B6, C2]
17245test { try toAsciiFail("\xf0\x90\xb9\xb1\xe0\xa1\x82\xf0\x9d\xaa\xa8\xef\xbd\xa1\xf0\xac\xbc\x96\xe1\x82\xb1\xe2\x80\x8d", true); } // [B1]
6958test { try toUnicodeFail("\xf0\x90\xb9\xb1\xe0\xa1\x82\xf0\x9d\xaa\xa8\xe3\x80\x82\xf0\xac\xbc\x96\xe1\x82\xb1\xe2\x80\x8d"); } // [B1, B6, C2]17246test { try toUnicodeFail("\xf0\x90\xb9\xb1\xe0\xa1\x82\xf0\x9d\xaa\xa8\xe3\x80\x82\xf0\xac\xbc\x96\xe1\x82\xb1\xe2\x80\x8d"); } // [B1, B6, C2]
17247test { try toAsciiFail("\xf0\x90\xb9\xb1\xe0\xa1\x82\xf0\x9d\xaa\xa8\xe3\x80\x82\xf0\xac\xbc\x96\xe1\x82\xb1\xe2\x80\x8d", false); } // [B1, B6, C2]
17248test { try toAsciiFail("\xf0\x90\xb9\xb1\xe0\xa1\x82\xf0\x9d\xaa\xa8\xe3\x80\x82\xf0\xac\xbc\x96\xe1\x82\xb1\xe2\x80\x8d", true); } // [B1]
6959test { try toUnicodeFail("\xf0\x90\xb9\xb1\xe0\xa1\x82\xf0\x9d\xaa\xa8\xe3\x80\x82\xf0\xac\xbc\x96\xe2\xb4\x91\xe2\x80\x8d"); } // [B1, B6, C2]17249test { try toUnicodeFail("\xf0\x90\xb9\xb1\xe0\xa1\x82\xf0\x9d\xaa\xa8\xe3\x80\x82\xf0\xac\xbc\x96\xe2\xb4\x91\xe2\x80\x8d"); } // [B1, B6, C2]
17250test { try toAsciiFail("\xf0\x90\xb9\xb1\xe0\xa1\x82\xf0\x9d\xaa\xa8\xe3\x80\x82\xf0\xac\xbc\x96\xe2\xb4\x91\xe2\x80\x8d", false); } // [B1, B6, C2]
17251test { try toAsciiFail("\xf0\x90\xb9\xb1\xe0\xa1\x82\xf0\x9d\xaa\xa8\xe3\x80\x82\xf0\xac\xbc\x96\xe2\xb4\x91\xe2\x80\x8d", true); } // [B1]
6960test { try toUnicodeFail("xn--0vb1535kdb6e.xn--8kjz186s"); } // [B1]17252test { try toUnicodeFail("xn--0vb1535kdb6e.xn--8kjz186s"); } // [B1]
17253test { try toAsciiFail("xn--0vb1535kdb6e.xn--8kjz186s", false); } // [B1]
17254test { try toAsciiFail("xn--0vb1535kdb6e.xn--8kjz186s", true); } // [B1]
6961test { try toUnicodeFail("xn--0vb1535kdb6e.xn--1ug742c5714c"); } // [B1, B6, C2]17255test { try toUnicodeFail("xn--0vb1535kdb6e.xn--1ug742c5714c"); } // [B1, B6, C2]
17256test { try toAsciiFail("xn--0vb1535kdb6e.xn--1ug742c5714c", false); } // [B1, B6, C2]
17257test { try toAsciiFail("xn--0vb1535kdb6e.xn--1ug742c5714c", true); } // [B1, B6, C2]
6962test { try toUnicodeFail("\xf0\x90\xb9\xb1\xe0\xa1\x82\xf0\x9d\xaa\xa8\xef\xbd\xa1\xf0\xac\xbc\x96\xe2\xb4\x91\xe2\x80\x8d"); } // [B1, B6, C2]17258test { try toUnicodeFail("\xf0\x90\xb9\xb1\xe0\xa1\x82\xf0\x9d\xaa\xa8\xef\xbd\xa1\xf0\xac\xbc\x96\xe2\xb4\x91\xe2\x80\x8d"); } // [B1, B6, C2]
17259test { try toAsciiFail("\xf0\x90\xb9\xb1\xe0\xa1\x82\xf0\x9d\xaa\xa8\xef\xbd\xa1\xf0\xac\xbc\x96\xe2\xb4\x91\xe2\x80\x8d", false); } // [B1, B6, C2]
17260test { try toAsciiFail("\xf0\x90\xb9\xb1\xe0\xa1\x82\xf0\x9d\xaa\xa8\xef\xbd\xa1\xf0\xac\xbc\x96\xe2\xb4\x91\xe2\x80\x8d", true); } // [B1]
6963test { try toUnicodeFail("xn--0vb1535kdb6e.xn--pnd93707a"); } // [B1, V7]17261test { try toUnicodeFail("xn--0vb1535kdb6e.xn--pnd93707a"); } // [B1, V7]
17262test { try toAsciiFail("xn--0vb1535kdb6e.xn--pnd93707a", false); } // [B1, V7]
17263test { try toAsciiFail("xn--0vb1535kdb6e.xn--pnd93707a", true); } // [B1, V7]
6964test { try toUnicodeFail("xn--0vb1535kdb6e.xn--pnd879eqy33c"); } // [B1, B6, C2, V7]17264test { try toUnicodeFail("xn--0vb1535kdb6e.xn--pnd879eqy33c"); } // [B1, B6, C2, V7]
17265test { try toAsciiFail("xn--0vb1535kdb6e.xn--pnd879eqy33c", false); } // [B1, B6, C2, V7]
17266test { try toAsciiFail("xn--0vb1535kdb6e.xn--pnd879eqy33c", true); } // [B1, B6, C2, V7]
6965test { try toUnicodeFail("\xe1\x9c\x94\xf0\x90\xad\xaa\xf3\xa0\x99\x98\xe2\x80\x8d\xef\xbd\xa1-\xf0\x90\xb9\xb4"); } // [B1, C2, V3, V6, V7]17267test { try toUnicodeFail("\xe1\x9c\x94\xf0\x90\xad\xaa\xf3\xa0\x99\x98\xe2\x80\x8d\xef\xbd\xa1-\xf0\x90\xb9\xb4"); } // [B1, C2, V3, V6, V7]
17268test { try toAsciiFail("\xe1\x9c\x94\xf0\x90\xad\xaa\xf3\xa0\x99\x98\xe2\x80\x8d\xef\xbd\xa1-\xf0\x90\xb9\xb4", false); } // [B1, C2, V3, V6, V7]
17269test { try toAsciiFail("\xe1\x9c\x94\xf0\x90\xad\xaa\xf3\xa0\x99\x98\xe2\x80\x8d\xef\xbd\xa1-\xf0\x90\xb9\xb4", true); } // [B1, V3, V6, V7]
6966test { try toUnicodeFail("\xe1\x9c\x94\xf0\x90\xad\xaa\xf3\xa0\x99\x98\xe2\x80\x8d\xe3\x80\x82-\xf0\x90\xb9\xb4"); } // [B1, C2, V3, V6, V7]17270test { try toUnicodeFail("\xe1\x9c\x94\xf0\x90\xad\xaa\xf3\xa0\x99\x98\xe2\x80\x8d\xe3\x80\x82-\xf0\x90\xb9\xb4"); } // [B1, C2, V3, V6, V7]
17271test { try toAsciiFail("\xe1\x9c\x94\xf0\x90\xad\xaa\xf3\xa0\x99\x98\xe2\x80\x8d\xe3\x80\x82-\xf0\x90\xb9\xb4", false); } // [B1, C2, V3, V6, V7]
17272test { try toAsciiFail("\xe1\x9c\x94\xf0\x90\xad\xaa\xf3\xa0\x99\x98\xe2\x80\x8d\xe3\x80\x82-\xf0\x90\xb9\xb4", true); } // [B1, V3, V6, V7]
6967test { try toUnicodeFail("xn--fze4126jujt0g.xn----c36i"); } // [B1, V3, V6, V7]17273test { try toUnicodeFail("xn--fze4126jujt0g.xn----c36i"); } // [B1, V3, V6, V7]
17274test { try toAsciiFail("xn--fze4126jujt0g.xn----c36i", false); } // [B1, V3, V6, V7]
17275test { try toAsciiFail("xn--fze4126jujt0g.xn----c36i", true); } // [B1, V3, V6, V7]
6968test { try toUnicodeFail("xn--fze807bso0spy14i.xn----c36i"); } // [B1, C2, V3, V6, V7]17276test { try toUnicodeFail("xn--fze807bso0spy14i.xn----c36i"); } // [B1, C2, V3, V6, V7]
17277test { try toAsciiFail("xn--fze807bso0spy14i.xn----c36i", false); } // [B1, C2, V3, V6, V7]
17278test { try toAsciiFail("xn--fze807bso0spy14i.xn----c36i", true); } // [B1, C2, V3, V6, V7]
6969test { try toUnicodeFail("\xf0\xbe\xa2\xac\xef\xbd\xa1\xdc\xa9\xef\xb8\x92\xec\xaf\x99\xf0\x9d\x9f\xa7"); } // [B2, V7]17279test { try toUnicodeFail("\xf0\xbe\xa2\xac\xef\xbd\xa1\xdc\xa9\xef\xb8\x92\xec\xaf\x99\xf0\x9d\x9f\xa7"); } // [B2, V7]
17280test { try toAsciiFail("\xf0\xbe\xa2\xac\xef\xbd\xa1\xdc\xa9\xef\xb8\x92\xec\xaf\x99\xf0\x9d\x9f\xa7", false); } // [B2, V7]
17281test { try toAsciiFail("\xf0\xbe\xa2\xac\xef\xbd\xa1\xdc\xa9\xef\xb8\x92\xec\xaf\x99\xf0\x9d\x9f\xa7", true); } // [B2, V7]
6970test { try toUnicodeFail("\xf0\xbe\xa2\xac\xef\xbd\xa1\xdc\xa9\xef\xb8\x92\xe1\x84\x8d\xe1\x85\xb3\xe1\x86\xac\xf0\x9d\x9f\xa7"); } // [B2, V7]17282test { try toUnicodeFail("\xf0\xbe\xa2\xac\xef\xbd\xa1\xdc\xa9\xef\xb8\x92\xe1\x84\x8d\xe1\x85\xb3\xe1\x86\xac\xf0\x9d\x9f\xa7"); } // [B2, V7]
17283test { try toAsciiFail("\xf0\xbe\xa2\xac\xef\xbd\xa1\xdc\xa9\xef\xb8\x92\xe1\x84\x8d\xe1\x85\xb3\xe1\x86\xac\xf0\x9d\x9f\xa7", false); } // [B2, V7]
17284test { try toAsciiFail("\xf0\xbe\xa2\xac\xef\xbd\xa1\xdc\xa9\xef\xb8\x92\xe1\x84\x8d\xe1\x85\xb3\xe1\x86\xac\xf0\x9d\x9f\xa7", true); } // [B2, V7]
6971test { try toUnicodeFail("\xf0\xbe\xa2\xac\xe3\x80\x82\xdc\xa9\xe3\x80\x82\xec\xaf\x995"); } // [V7]17285test { try toUnicodeFail("\xf0\xbe\xa2\xac\xe3\x80\x82\xdc\xa9\xe3\x80\x82\xec\xaf\x995"); } // [V7]
17286test { try toAsciiFail("\xf0\xbe\xa2\xac\xe3\x80\x82\xdc\xa9\xe3\x80\x82\xec\xaf\x995", false); } // [V7]
17287test { try toAsciiFail("\xf0\xbe\xa2\xac\xe3\x80\x82\xdc\xa9\xe3\x80\x82\xec\xaf\x995", true); } // [V7]
6972test { try toUnicodeFail("\xf0\xbe\xa2\xac\xe3\x80\x82\xdc\xa9\xe3\x80\x82\xe1\x84\x8d\xe1\x85\xb3\xe1\x86\xac5"); } // [V7]17288test { try toUnicodeFail("\xf0\xbe\xa2\xac\xe3\x80\x82\xdc\xa9\xe3\x80\x82\xe1\x84\x8d\xe1\x85\xb3\xe1\x86\xac5"); } // [V7]
17289test { try toAsciiFail("\xf0\xbe\xa2\xac\xe3\x80\x82\xdc\xa9\xe3\x80\x82\xe1\x84\x8d\xe1\x85\xb3\xe1\x86\xac5", false); } // [V7]
17290test { try toAsciiFail("\xf0\xbe\xa2\xac\xe3\x80\x82\xdc\xa9\xe3\x80\x82\xe1\x84\x8d\xe1\x85\xb3\xe1\x86\xac5", true); } // [V7]
6973test { try toUnicodeFail("xn--t92s.xn--znb.xn--5-y88f"); } // [V7]17291test { try toUnicodeFail("xn--t92s.xn--znb.xn--5-y88f"); } // [V7]
17292test { try toAsciiFail("xn--t92s.xn--znb.xn--5-y88f", false); } // [V7]
17293test { try toAsciiFail("xn--t92s.xn--znb.xn--5-y88f", true); } // [V7]
6974test { try toUnicodeFail("xn--t92s.xn--5-p1c0712mm8rb"); } // [B2, V7]17294test { try toUnicodeFail("xn--t92s.xn--5-p1c0712mm8rb"); } // [B2, V7]
17295test { try toAsciiFail("xn--t92s.xn--5-p1c0712mm8rb", false); } // [B2, V7]
17296test { try toAsciiFail("xn--t92s.xn--5-p1c0712mm8rb", true); } // [B2, V7]
6975test { try toUnicodeFail("\xf0\x9e\xa4\x9f-\xe3\x80\x82\xdd\xa2\xe2\x89\xae\xeb\xbb\x90"); } // [B2, B3, V3]17297test { try toUnicodeFail("\xf0\x9e\xa4\x9f-\xe3\x80\x82\xdd\xa2\xe2\x89\xae\xeb\xbb\x90"); } // [B2, B3, V3]
17298test { try toAsciiFail("\xf0\x9e\xa4\x9f-\xe3\x80\x82\xdd\xa2\xe2\x89\xae\xeb\xbb\x90", false); } // [B2, B3, V3]
17299test { try toAsciiFail("\xf0\x9e\xa4\x9f-\xe3\x80\x82\xdd\xa2\xe2\x89\xae\xeb\xbb\x90", true); } // [B2, B3, V3]
6976test { try toUnicodeFail("\xf0\x9e\xa4\x9f-\xe3\x80\x82\xdd\xa2<\xcc\xb8\xe1\x84\x88\xe1\x85\xa5"); } // [B2, B3, V3]17300test { try toUnicodeFail("\xf0\x9e\xa4\x9f-\xe3\x80\x82\xdd\xa2<\xcc\xb8\xe1\x84\x88\xe1\x85\xa5"); } // [B2, B3, V3]
17301test { try toAsciiFail("\xf0\x9e\xa4\x9f-\xe3\x80\x82\xdd\xa2<\xcc\xb8\xe1\x84\x88\xe1\x85\xa5", false); } // [B2, B3, V3]
17302test { try toAsciiFail("\xf0\x9e\xa4\x9f-\xe3\x80\x82\xdd\xa2<\xcc\xb8\xe1\x84\x88\xe1\x85\xa5", true); } // [B2, B3, V3]
6977test { try toUnicodeFail("\xf0\x9e\xa5\x81-\xe3\x80\x82\xdd\xa2<\xcc\xb8\xe1\x84\x88\xe1\x85\xa5"); } // [B2, B3, V3]17303test { try toUnicodeFail("\xf0\x9e\xa5\x81-\xe3\x80\x82\xdd\xa2<\xcc\xb8\xe1\x84\x88\xe1\x85\xa5"); } // [B2, B3, V3]
17304test { try toAsciiFail("\xf0\x9e\xa5\x81-\xe3\x80\x82\xdd\xa2<\xcc\xb8\xe1\x84\x88\xe1\x85\xa5", false); } // [B2, B3, V3]
17305test { try toAsciiFail("\xf0\x9e\xa5\x81-\xe3\x80\x82\xdd\xa2<\xcc\xb8\xe1\x84\x88\xe1\x85\xa5", true); } // [B2, B3, V3]
6978test { try toUnicodeFail("\xf0\x9e\xa5\x81-\xe3\x80\x82\xdd\xa2\xe2\x89\xae\xeb\xbb\x90"); } // [B2, B3, V3]17306test { try toUnicodeFail("\xf0\x9e\xa5\x81-\xe3\x80\x82\xdd\xa2\xe2\x89\xae\xeb\xbb\x90"); } // [B2, B3, V3]
17307test { try toAsciiFail("\xf0\x9e\xa5\x81-\xe3\x80\x82\xdd\xa2\xe2\x89\xae\xeb\xbb\x90", false); } // [B2, B3, V3]
17308test { try toAsciiFail("\xf0\x9e\xa5\x81-\xe3\x80\x82\xdd\xa2\xe2\x89\xae\xeb\xbb\x90", true); } // [B2, B3, V3]
6979test { try toUnicodeFail("xn----1j8r.xn--mpb269krv4i"); } // [B2, B3, V3]17309test { try toUnicodeFail("xn----1j8r.xn--mpb269krv4i"); } // [B2, B3, V3]
17310test { try toAsciiFail("xn----1j8r.xn--mpb269krv4i", false); } // [B2, B3, V3]
17311test { try toAsciiFail("xn----1j8r.xn--mpb269krv4i", true); } // [B2, B3, V3]
6980test { try toUnicodeFail("\xf0\x9e\xa5\xa9-\xf2\x8a\xab\xa0\xef\xbc\x8e\xe0\xa2\xb4\xe2\x89\xa0"); } // [B2, B3, V7]17312test { try toUnicodeFail("\xf0\x9e\xa5\xa9-\xf2\x8a\xab\xa0\xef\xbc\x8e\xe0\xa2\xb4\xe2\x89\xa0"); } // [B2, B3, V7]
17313test { try toAsciiFail("\xf0\x9e\xa5\xa9-\xf2\x8a\xab\xa0\xef\xbc\x8e\xe0\xa2\xb4\xe2\x89\xa0", false); } // [B2, B3, V7]
17314test { try toAsciiFail("\xf0\x9e\xa5\xa9-\xf2\x8a\xab\xa0\xef\xbc\x8e\xe0\xa2\xb4\xe2\x89\xa0", true); } // [B2, B3, V7]
6981test { try toUnicodeFail("\xf0\x9e\xa5\xa9-\xf2\x8a\xab\xa0\xef\xbc\x8e\xe0\xa2\xb4=\xcc\xb8"); } // [B2, B3, V7]17315test { try toUnicodeFail("\xf0\x9e\xa5\xa9-\xf2\x8a\xab\xa0\xef\xbc\x8e\xe0\xa2\xb4=\xcc\xb8"); } // [B2, B3, V7]
17316test { try toAsciiFail("\xf0\x9e\xa5\xa9-\xf2\x8a\xab\xa0\xef\xbc\x8e\xe0\xa2\xb4=\xcc\xb8", false); } // [B2, B3, V7]
17317test { try toAsciiFail("\xf0\x9e\xa5\xa9-\xf2\x8a\xab\xa0\xef\xbc\x8e\xe0\xa2\xb4=\xcc\xb8", true); } // [B2, B3, V7]
6982test { try toUnicodeFail("\xf0\x9e\xa5\xa9-\xf2\x8a\xab\xa0.\xe0\xa2\xb4\xe2\x89\xa0"); } // [B2, B3, V7]17318test { try toUnicodeFail("\xf0\x9e\xa5\xa9-\xf2\x8a\xab\xa0.\xe0\xa2\xb4\xe2\x89\xa0"); } // [B2, B3, V7]
17319test { try toAsciiFail("\xf0\x9e\xa5\xa9-\xf2\x8a\xab\xa0.\xe0\xa2\xb4\xe2\x89\xa0", false); } // [B2, B3, V7]
17320test { try toAsciiFail("\xf0\x9e\xa5\xa9-\xf2\x8a\xab\xa0.\xe0\xa2\xb4\xe2\x89\xa0", true); } // [B2, B3, V7]
6983test { try toUnicodeFail("\xf0\x9e\xa5\xa9-\xf2\x8a\xab\xa0.\xe0\xa2\xb4=\xcc\xb8"); } // [B2, B3, V7]17321test { try toUnicodeFail("\xf0\x9e\xa5\xa9-\xf2\x8a\xab\xa0.\xe0\xa2\xb4=\xcc\xb8"); } // [B2, B3, V7]
17322test { try toAsciiFail("\xf0\x9e\xa5\xa9-\xf2\x8a\xab\xa0.\xe0\xa2\xb4=\xcc\xb8", false); } // [B2, B3, V7]
17323test { try toAsciiFail("\xf0\x9e\xa5\xa9-\xf2\x8a\xab\xa0.\xe0\xa2\xb4=\xcc\xb8", true); } // [B2, B3, V7]
6984test { try toUnicodeFail("xn----cm8rp3609a.xn--9yb852k"); } // [B2, B3, V7]17324test { try toUnicodeFail("xn----cm8rp3609a.xn--9yb852k"); } // [B2, B3, V7]
17325test { try toAsciiFail("xn----cm8rp3609a.xn--9yb852k", false); } // [B2, B3, V7]
17326test { try toAsciiFail("xn----cm8rp3609a.xn--9yb852k", true); } // [B2, B3, V7]
6985test { try toUnicodeFail("-\xf1\x85\x82\x8f\xcf\x82\xe1\x82\xbc\xef\xbc\x8e\xd9\xa1"); } // [B1, V3, V7]17327test { try toUnicodeFail("-\xf1\x85\x82\x8f\xcf\x82\xe1\x82\xbc\xef\xbc\x8e\xd9\xa1"); } // [B1, V3, V7]
17328test { try toAsciiFail("-\xf1\x85\x82\x8f\xcf\x82\xe1\x82\xbc\xef\xbc\x8e\xd9\xa1", false); } // [B1, V3, V7]
17329test { try toAsciiFail("-\xf1\x85\x82\x8f\xcf\x82\xe1\x82\xbc\xef\xbc\x8e\xd9\xa1", true); } // [B1, V3, V7]
6986test { try toUnicodeFail("-\xf1\x85\x82\x8f\xcf\x82\xe1\x82\xbc.\xd9\xa1"); } // [B1, V3, V7]17330test { try toUnicodeFail("-\xf1\x85\x82\x8f\xcf\x82\xe1\x82\xbc.\xd9\xa1"); } // [B1, V3, V7]
17331test { try toAsciiFail("-\xf1\x85\x82\x8f\xcf\x82\xe1\x82\xbc.\xd9\xa1", false); } // [B1, V3, V7]
17332test { try toAsciiFail("-\xf1\x85\x82\x8f\xcf\x82\xe1\x82\xbc.\xd9\xa1", true); } // [B1, V3, V7]
6987test { try toUnicodeFail("-\xf1\x85\x82\x8f\xcf\x82\xe2\xb4\x9c.\xd9\xa1"); } // [B1, V3, V7]17333test { try toUnicodeFail("-\xf1\x85\x82\x8f\xcf\x82\xe2\xb4\x9c.\xd9\xa1"); } // [B1, V3, V7]
17334test { try toAsciiFail("-\xf1\x85\x82\x8f\xcf\x82\xe2\xb4\x9c.\xd9\xa1", false); } // [B1, V3, V7]
17335test { try toAsciiFail("-\xf1\x85\x82\x8f\xcf\x82\xe2\xb4\x9c.\xd9\xa1", true); } // [B1, V3, V7]
6988test { try toUnicodeFail("-\xf1\x85\x82\x8f\xce\xa3\xe1\x82\xbc.\xd9\xa1"); } // [B1, V3, V7]17336test { try toUnicodeFail("-\xf1\x85\x82\x8f\xce\xa3\xe1\x82\xbc.\xd9\xa1"); } // [B1, V3, V7]
17337test { try toAsciiFail("-\xf1\x85\x82\x8f\xce\xa3\xe1\x82\xbc.\xd9\xa1", false); } // [B1, V3, V7]
17338test { try toAsciiFail("-\xf1\x85\x82\x8f\xce\xa3\xe1\x82\xbc.\xd9\xa1", true); } // [B1, V3, V7]
6989test { try toUnicodeFail("-\xf1\x85\x82\x8f\xcf\x83\xe2\xb4\x9c.\xd9\xa1"); } // [B1, V3, V7]17339test { try toUnicodeFail("-\xf1\x85\x82\x8f\xcf\x83\xe2\xb4\x9c.\xd9\xa1"); } // [B1, V3, V7]
17340test { try toAsciiFail("-\xf1\x85\x82\x8f\xcf\x83\xe2\xb4\x9c.\xd9\xa1", false); } // [B1, V3, V7]
17341test { try toAsciiFail("-\xf1\x85\x82\x8f\xcf\x83\xe2\xb4\x9c.\xd9\xa1", true); } // [B1, V3, V7]
6990test { try toUnicodeFail("-\xf1\x85\x82\x8f\xce\xa3\xe2\xb4\x9c.\xd9\xa1"); } // [B1, V3, V7]17342test { try toUnicodeFail("-\xf1\x85\x82\x8f\xce\xa3\xe2\xb4\x9c.\xd9\xa1"); } // [B1, V3, V7]
17343test { try toAsciiFail("-\xf1\x85\x82\x8f\xce\xa3\xe2\xb4\x9c.\xd9\xa1", false); } // [B1, V3, V7]
17344test { try toAsciiFail("-\xf1\x85\x82\x8f\xce\xa3\xe2\xb4\x9c.\xd9\xa1", true); } // [B1, V3, V7]
6991test { try toUnicodeFail("xn----0mb9682aov12f.xn--9hb"); } // [B1, V3, V7]17345test { try toUnicodeFail("xn----0mb9682aov12f.xn--9hb"); } // [B1, V3, V7]
17346test { try toAsciiFail("xn----0mb9682aov12f.xn--9hb", false); } // [B1, V3, V7]
17347test { try toAsciiFail("xn----0mb9682aov12f.xn--9hb", true); } // [B1, V3, V7]
6992test { try toUnicodeFail("xn----ymb2782aov12f.xn--9hb"); } // [B1, V3, V7]17348test { try toUnicodeFail("xn----ymb2782aov12f.xn--9hb"); } // [B1, V3, V7]
17349test { try toAsciiFail("xn----ymb2782aov12f.xn--9hb", false); } // [B1, V3, V7]
17350test { try toAsciiFail("xn----ymb2782aov12f.xn--9hb", true); } // [B1, V3, V7]
6993test { try toUnicodeFail("-\xf1\x85\x82\x8f\xcf\x82\xe2\xb4\x9c\xef\xbc\x8e\xd9\xa1"); } // [B1, V3, V7]17351test { try toUnicodeFail("-\xf1\x85\x82\x8f\xcf\x82\xe2\xb4\x9c\xef\xbc\x8e\xd9\xa1"); } // [B1, V3, V7]
17352test { try toAsciiFail("-\xf1\x85\x82\x8f\xcf\x82\xe2\xb4\x9c\xef\xbc\x8e\xd9\xa1", false); } // [B1, V3, V7]
17353test { try toAsciiFail("-\xf1\x85\x82\x8f\xcf\x82\xe2\xb4\x9c\xef\xbc\x8e\xd9\xa1", true); } // [B1, V3, V7]
6994test { try toUnicodeFail("-\xf1\x85\x82\x8f\xce\xa3\xe1\x82\xbc\xef\xbc\x8e\xd9\xa1"); } // [B1, V3, V7]17354test { try toUnicodeFail("-\xf1\x85\x82\x8f\xce\xa3\xe1\x82\xbc\xef\xbc\x8e\xd9\xa1"); } // [B1, V3, V7]
17355test { try toAsciiFail("-\xf1\x85\x82\x8f\xce\xa3\xe1\x82\xbc\xef\xbc\x8e\xd9\xa1", false); } // [B1, V3, V7]
17356test { try toAsciiFail("-\xf1\x85\x82\x8f\xce\xa3\xe1\x82\xbc\xef\xbc\x8e\xd9\xa1", true); } // [B1, V3, V7]
6995test { try toUnicodeFail("-\xf1\x85\x82\x8f\xcf\x83\xe2\xb4\x9c\xef\xbc\x8e\xd9\xa1"); } // [B1, V3, V7]17357test { try toUnicodeFail("-\xf1\x85\x82\x8f\xcf\x83\xe2\xb4\x9c\xef\xbc\x8e\xd9\xa1"); } // [B1, V3, V7]
17358test { try toAsciiFail("-\xf1\x85\x82\x8f\xcf\x83\xe2\xb4\x9c\xef\xbc\x8e\xd9\xa1", false); } // [B1, V3, V7]
17359test { try toAsciiFail("-\xf1\x85\x82\x8f\xcf\x83\xe2\xb4\x9c\xef\xbc\x8e\xd9\xa1", true); } // [B1, V3, V7]
6996test { try toUnicodeFail("-\xf1\x85\x82\x8f\xce\xa3\xe2\xb4\x9c\xef\xbc\x8e\xd9\xa1"); } // [B1, V3, V7]17360test { try toUnicodeFail("-\xf1\x85\x82\x8f\xce\xa3\xe2\xb4\x9c\xef\xbc\x8e\xd9\xa1"); } // [B1, V3, V7]
17361test { try toAsciiFail("-\xf1\x85\x82\x8f\xce\xa3\xe2\xb4\x9c\xef\xbc\x8e\xd9\xa1", false); } // [B1, V3, V7]
17362test { try toAsciiFail("-\xf1\x85\x82\x8f\xce\xa3\xe2\xb4\x9c\xef\xbc\x8e\xd9\xa1", true); } // [B1, V3, V7]
6997test { try toUnicodeFail("xn----0mb770hun11i.xn--9hb"); } // [B1, V3, V7]17363test { try toUnicodeFail("xn----0mb770hun11i.xn--9hb"); } // [B1, V3, V7]
17364test { try toAsciiFail("xn----0mb770hun11i.xn--9hb", false); } // [B1, V3, V7]
17365test { try toAsciiFail("xn----0mb770hun11i.xn--9hb", true); } // [B1, V3, V7]
6998test { try toUnicodeFail("xn----ymb080hun11i.xn--9hb"); } // [B1, V3, V7]17366test { try toUnicodeFail("xn----ymb080hun11i.xn--9hb"); } // [B1, V3, V7]
17367test { try toAsciiFail("xn----ymb080hun11i.xn--9hb", false); } // [B1, V3, V7]
17368test { try toAsciiFail("xn----ymb080hun11i.xn--9hb", true); } // [B1, V3, V7]
6999test { try toUnicodeFail("\xe1\x9f\x8a.\xe2\x80\x8d\xf0\x9d\x9f\xae\xf0\x91\x80\xbf"); } // [C2, V6]17369test { try toUnicodeFail("\xe1\x9f\x8a.\xe2\x80\x8d\xf0\x9d\x9f\xae\xf0\x91\x80\xbf"); } // [C2, V6]
17370test { try toAsciiFail("\xe1\x9f\x8a.\xe2\x80\x8d\xf0\x9d\x9f\xae\xf0\x91\x80\xbf", false); } // [C2, V6]
17371test { try toAsciiFail("\xe1\x9f\x8a.\xe2\x80\x8d\xf0\x9d\x9f\xae\xf0\x91\x80\xbf", true); } // [V6]
7000test { try toUnicodeFail("\xe1\x9f\x8a.\xe2\x80\x8d2\xf0\x91\x80\xbf"); } // [C2, V6]17372test { try toUnicodeFail("\xe1\x9f\x8a.\xe2\x80\x8d2\xf0\x91\x80\xbf"); } // [C2, V6]
17373test { try toAsciiFail("\xe1\x9f\x8a.\xe2\x80\x8d2\xf0\x91\x80\xbf", false); } // [C2, V6]
17374test { try toAsciiFail("\xe1\x9f\x8a.\xe2\x80\x8d2\xf0\x91\x80\xbf", true); } // [V6]
7001test { try toUnicodeFail("xn--m4e.xn--2-ku7i"); } // [V6]17375test { try toUnicodeFail("xn--m4e.xn--2-ku7i"); } // [V6]
17376test { try toAsciiFail("xn--m4e.xn--2-ku7i", false); } // [V6]
17377test { try toAsciiFail("xn--m4e.xn--2-ku7i", true); } // [V6]
7002test { try toUnicodeFail("xn--m4e.xn--2-tgnv469h"); } // [C2, V6]17378test { try toUnicodeFail("xn--m4e.xn--2-tgnv469h"); } // [C2, V6]
17379test { try toAsciiFail("xn--m4e.xn--2-tgnv469h", false); } // [C2, V6]
17380test { try toAsciiFail("xn--m4e.xn--2-tgnv469h", true); } // [C2, V6]
7003test { try toUnicodeFail("\xe2\x89\xaf\xf0\x9d\x9f\x96\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\xab\x93\xf2\x9f\x87\x91"); } // [B1, V6, V7]17381test { try toUnicodeFail("\xe2\x89\xaf\xf0\x9d\x9f\x96\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\xab\x93\xf2\x9f\x87\x91"); } // [B1, V6, V7]
17382test { try toAsciiFail("\xe2\x89\xaf\xf0\x9d\x9f\x96\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\xab\x93\xf2\x9f\x87\x91", false); } // [B1, V6, V7]
17383test { try toAsciiFail("\xe2\x89\xaf\xf0\x9d\x9f\x96\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\xab\x93\xf2\x9f\x87\x91", true); } // [B1, V6, V7]
7004test { try toUnicodeFail(">\xcc\xb8\xf0\x9d\x9f\x96\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\xab\x93\xf2\x9f\x87\x91"); } // [B1, V6, V7]17384test { try toUnicodeFail(">\xcc\xb8\xf0\x9d\x9f\x96\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\xab\x93\xf2\x9f\x87\x91"); } // [B1, V6, V7]
17385test { try toAsciiFail(">\xcc\xb8\xf0\x9d\x9f\x96\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\xab\x93\xf2\x9f\x87\x91", false); } // [B1, V6, V7]
17386test { try toAsciiFail(">\xcc\xb8\xf0\x9d\x9f\x96\xef\xbd\xa1\xe1\xa9\xa0\xf0\x90\xab\x93\xf2\x9f\x87\x91", true); } // [B1, V6, V7]
7005test { try toUnicodeFail("\xe2\x89\xaf8\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\xab\x93\xf2\x9f\x87\x91"); } // [B1, V6, V7]17387test { try toUnicodeFail("\xe2\x89\xaf8\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\xab\x93\xf2\x9f\x87\x91"); } // [B1, V6, V7]
17388test { try toAsciiFail("\xe2\x89\xaf8\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\xab\x93\xf2\x9f\x87\x91", false); } // [B1, V6, V7]
17389test { try toAsciiFail("\xe2\x89\xaf8\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\xab\x93\xf2\x9f\x87\x91", true); } // [B1, V6, V7]
7006test { try toUnicodeFail(">\xcc\xb88\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\xab\x93\xf2\x9f\x87\x91"); } // [B1, V6, V7]17390test { try toUnicodeFail(">\xcc\xb88\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\xab\x93\xf2\x9f\x87\x91"); } // [B1, V6, V7]
17391test { try toAsciiFail(">\xcc\xb88\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\xab\x93\xf2\x9f\x87\x91", false); } // [B1, V6, V7]
17392test { try toAsciiFail(">\xcc\xb88\xe3\x80\x82\xe1\xa9\xa0\xf0\x90\xab\x93\xf2\x9f\x87\x91", true); } // [B1, V6, V7]
7007test { try toUnicodeFail("xn--8-ogo.xn--jof5303iv1z5d"); } // [B1, V6, V7]17393test { try toUnicodeFail("xn--8-ogo.xn--jof5303iv1z5d"); } // [B1, V6, V7]
17394test { try toAsciiFail("xn--8-ogo.xn--jof5303iv1z5d", false); } // [B1, V6, V7]
17395test { try toAsciiFail("xn--8-ogo.xn--jof5303iv1z5d", true); } // [B1, V6, V7]
7008test { try toUnicodeFail("\xf0\x91\xb2\xab\xe2\x86\x83\xd9\xa4\xef\xbd\xa1\xe2\x80\x8c"); } // [B1, C1, V6]17396test { try toUnicodeFail("\xf0\x91\xb2\xab\xe2\x86\x83\xd9\xa4\xef\xbd\xa1\xe2\x80\x8c"); } // [B1, C1, V6]
17397test { try toAsciiFail("\xf0\x91\xb2\xab\xe2\x86\x83\xd9\xa4\xef\xbd\xa1\xe2\x80\x8c", false); } // [B1, C1, V6]
17398test { try toAsciiFail("\xf0\x91\xb2\xab\xe2\x86\x83\xd9\xa4\xef\xbd\xa1\xe2\x80\x8c", true); } // [B1, V6, A4_2]
7009test { try toUnicodeFail("\xf0\x91\xb2\xab\xe2\x86\x83\xd9\xa4\xe3\x80\x82\xe2\x80\x8c"); } // [B1, C1, V6]17399test { try toUnicodeFail("\xf0\x91\xb2\xab\xe2\x86\x83\xd9\xa4\xe3\x80\x82\xe2\x80\x8c"); } // [B1, C1, V6]
17400test { try toAsciiFail("\xf0\x91\xb2\xab\xe2\x86\x83\xd9\xa4\xe3\x80\x82\xe2\x80\x8c", false); } // [B1, C1, V6]
17401test { try toAsciiFail("\xf0\x91\xb2\xab\xe2\x86\x83\xd9\xa4\xe3\x80\x82\xe2\x80\x8c", true); } // [B1, V6, A4_2]
7010test { try toUnicodeFail("\xf0\x91\xb2\xab\xe2\x86\x84\xd9\xa4\xe3\x80\x82\xe2\x80\x8c"); } // [B1, C1, V6]17402test { try toUnicodeFail("\xf0\x91\xb2\xab\xe2\x86\x84\xd9\xa4\xe3\x80\x82\xe2\x80\x8c"); } // [B1, C1, V6]
17403test { try toAsciiFail("\xf0\x91\xb2\xab\xe2\x86\x84\xd9\xa4\xe3\x80\x82\xe2\x80\x8c", false); } // [B1, C1, V6]
17404test { try toAsciiFail("\xf0\x91\xb2\xab\xe2\x86\x84\xd9\xa4\xe3\x80\x82\xe2\x80\x8c", true); } // [B1, V6, A4_2]
7011test { try toUnicodeFail("xn--dib100l8x1p."); } // [B1, V6]17405test { try toUnicodeFail("xn--dib100l8x1p."); } // [B1, V6]
17406test { try toAsciiFail("xn--dib100l8x1p.", false); } // [B1, V6, A4_2]
17407test { try toAsciiFail("xn--dib100l8x1p.", true); } // [B1, V6, A4_2]
7012test { try toUnicodeFail("xn--dib100l8x1p.xn--0ug"); } // [B1, C1, V6]17408test { try toUnicodeFail("xn--dib100l8x1p.xn--0ug"); } // [B1, C1, V6]
17409test { try toAsciiFail("xn--dib100l8x1p.xn--0ug", false); } // [B1, C1, V6]
17410test { try toAsciiFail("xn--dib100l8x1p.xn--0ug", true); } // [B1, C1, V6]
7013test { try toUnicodeFail("\xf0\x91\xb2\xab\xe2\x86\x84\xd9\xa4\xef\xbd\xa1\xe2\x80\x8c"); } // [B1, C1, V6]17411test { try toUnicodeFail("\xf0\x91\xb2\xab\xe2\x86\x84\xd9\xa4\xef\xbd\xa1\xe2\x80\x8c"); } // [B1, C1, V6]
17412test { try toAsciiFail("\xf0\x91\xb2\xab\xe2\x86\x84\xd9\xa4\xef\xbd\xa1\xe2\x80\x8c", false); } // [B1, C1, V6]
17413test { try toAsciiFail("\xf0\x91\xb2\xab\xe2\x86\x84\xd9\xa4\xef\xbd\xa1\xe2\x80\x8c", true); } // [B1, V6, A4_2]
7014test { try toUnicodeFail("xn--dib999kcy1p."); } // [B1, V6, V7]17414test { try toUnicodeFail("xn--dib999kcy1p."); } // [B1, V6, V7]
17415test { try toAsciiFail("xn--dib999kcy1p.", false); } // [B1, V6, V7, A4_2]
17416test { try toAsciiFail("xn--dib999kcy1p.", true); } // [B1, V6, V7, A4_2]
7015test { try toUnicodeFail("xn--dib999kcy1p.xn--0ug"); } // [B1, C1, V6, V7]17417test { try toUnicodeFail("xn--dib999kcy1p.xn--0ug"); } // [B1, C1, V6, V7]
17418test { try toAsciiFail("xn--dib999kcy1p.xn--0ug", false); } // [B1, C1, V6, V7]
17419test { try toAsciiFail("xn--dib999kcy1p.xn--0ug", true); } // [B1, C1, V6, V7]
7016test { try toUnicodeFail("\xe0\xb0\x80\xf0\x9d\x9f\xb5\xe2\x80\x8d\xef\xb2\x9d.\xe2\x80\x8d\xdd\x90\xe2\x92\x88"); } // [B1, C2, V6, V7]17420test { try toUnicodeFail("\xe0\xb0\x80\xf0\x9d\x9f\xb5\xe2\x80\x8d\xef\xb2\x9d.\xe2\x80\x8d\xdd\x90\xe2\x92\x88"); } // [B1, C2, V6, V7]
17421test { try toAsciiFail("\xe0\xb0\x80\xf0\x9d\x9f\xb5\xe2\x80\x8d\xef\xb2\x9d.\xe2\x80\x8d\xdd\x90\xe2\x92\x88", false); } // [B1, C2, V6, V7]
17422test { try toAsciiFail("\xe0\xb0\x80\xf0\x9d\x9f\xb5\xe2\x80\x8d\xef\xb2\x9d.\xe2\x80\x8d\xdd\x90\xe2\x92\x88", true); } // [B1, V6, V7]
7017test { try toUnicodeFail("\xe0\xb0\x809\xe2\x80\x8d\xd8\xa8\xd8\xad.\xe2\x80\x8d\xdd\x901."); } // [B1, C2, V6]17423test { try toUnicodeFail("\xe0\xb0\x809\xe2\x80\x8d\xd8\xa8\xd8\xad.\xe2\x80\x8d\xdd\x901."); } // [B1, C2, V6]
17424test { try toAsciiFail("\xe0\xb0\x809\xe2\x80\x8d\xd8\xa8\xd8\xad.\xe2\x80\x8d\xdd\x901.", false); } // [B1, C2, V6, A4_2]
17425test { try toAsciiFail("\xe0\xb0\x809\xe2\x80\x8d\xd8\xa8\xd8\xad.\xe2\x80\x8d\xdd\x901.", true); } // [B1, V6, A4_2]
7018test { try toUnicodeFail("xn--9-1mcp570d.xn--1-x3c."); } // [B1, V6]17426test { try toUnicodeFail("xn--9-1mcp570d.xn--1-x3c."); } // [B1, V6]
17427test { try toAsciiFail("xn--9-1mcp570d.xn--1-x3c.", false); } // [B1, V6, A4_2]
17428test { try toAsciiFail("xn--9-1mcp570d.xn--1-x3c.", true); } // [B1, V6, A4_2]
7019test { try toUnicodeFail("xn--9-1mcp570dl51a.xn--1-x3c211q."); } // [B1, C2, V6]17429test { try toUnicodeFail("xn--9-1mcp570dl51a.xn--1-x3c211q."); } // [B1, C2, V6]
17430test { try toAsciiFail("xn--9-1mcp570dl51a.xn--1-x3c211q.", false); } // [B1, C2, V6, A4_2]
17431test { try toAsciiFail("xn--9-1mcp570dl51a.xn--1-x3c211q.", true); } // [B1, C2, V6, A4_2]
7020test { try toUnicodeFail("xn--9-1mcp570d.xn--3ob470m"); } // [B1, V6, V7]17432test { try toUnicodeFail("xn--9-1mcp570d.xn--3ob470m"); } // [B1, V6, V7]
17433test { try toAsciiFail("xn--9-1mcp570d.xn--3ob470m", false); } // [B1, V6, V7]
17434test { try toAsciiFail("xn--9-1mcp570d.xn--3ob470m", true); } // [B1, V6, V7]
7021test { try toUnicodeFail("xn--9-1mcp570dl51a.xn--3ob977jmfd"); } // [B1, C2, V6, V7]17435test { try toUnicodeFail("xn--9-1mcp570dl51a.xn--3ob977jmfd"); } // [B1, C2, V6, V7]
17436test { try toAsciiFail("xn--9-1mcp570dl51a.xn--3ob977jmfd", false); } // [B1, C2, V6, V7]
17437test { try toAsciiFail("xn--9-1mcp570dl51a.xn--3ob977jmfd", true); } // [B1, C2, V6, V7]
7022test { try toUnicodeFail("\xea\xab\xb6\xe3\x80\x82\xe5\xac\xb6\xc3\x9f\xe8\x91\xbd"); } // [V6]17438test { try toUnicodeFail("\xea\xab\xb6\xe3\x80\x82\xe5\xac\xb6\xc3\x9f\xe8\x91\xbd"); } // [V6]
17439test { try toAsciiFail("\xea\xab\xb6\xe3\x80\x82\xe5\xac\xb6\xc3\x9f\xe8\x91\xbd", false); } // [V6]
17440test { try toAsciiFail("\xea\xab\xb6\xe3\x80\x82\xe5\xac\xb6\xc3\x9f\xe8\x91\xbd", true); } // [V6]
7023test { try toUnicodeFail("\xea\xab\xb6\xe3\x80\x82\xe5\xac\xb6SS\xe8\x91\xbd"); } // [V6]17441test { try toUnicodeFail("\xea\xab\xb6\xe3\x80\x82\xe5\xac\xb6SS\xe8\x91\xbd"); } // [V6]
17442test { try toAsciiFail("\xea\xab\xb6\xe3\x80\x82\xe5\xac\xb6SS\xe8\x91\xbd", false); } // [V6]
17443test { try toAsciiFail("\xea\xab\xb6\xe3\x80\x82\xe5\xac\xb6SS\xe8\x91\xbd", true); } // [V6]
7024test { try toUnicodeFail("\xea\xab\xb6\xe3\x80\x82\xe5\xac\xb6ss\xe8\x91\xbd"); } // [V6]17444test { try toUnicodeFail("\xea\xab\xb6\xe3\x80\x82\xe5\xac\xb6ss\xe8\x91\xbd"); } // [V6]
17445test { try toAsciiFail("\xea\xab\xb6\xe3\x80\x82\xe5\xac\xb6ss\xe8\x91\xbd", false); } // [V6]
17446test { try toAsciiFail("\xea\xab\xb6\xe3\x80\x82\xe5\xac\xb6ss\xe8\x91\xbd", true); } // [V6]
7025test { try toUnicodeFail("\xea\xab\xb6\xe3\x80\x82\xe5\xac\xb6Ss\xe8\x91\xbd"); } // [V6]17447test { try toUnicodeFail("\xea\xab\xb6\xe3\x80\x82\xe5\xac\xb6Ss\xe8\x91\xbd"); } // [V6]
17448test { try toAsciiFail("\xea\xab\xb6\xe3\x80\x82\xe5\xac\xb6Ss\xe8\x91\xbd", false); } // [V6]
17449test { try toAsciiFail("\xea\xab\xb6\xe3\x80\x82\xe5\xac\xb6Ss\xe8\x91\xbd", true); } // [V6]
7026test { try toUnicodeFail("xn--2v9a.xn--ss-q40dp97m"); } // [V6]17450test { try toUnicodeFail("xn--2v9a.xn--ss-q40dp97m"); } // [V6]
17451test { try toAsciiFail("xn--2v9a.xn--ss-q40dp97m", false); } // [V6]
17452test { try toAsciiFail("xn--2v9a.xn--ss-q40dp97m", true); } // [V6]
7027test { try toUnicodeFail("xn--2v9a.xn--zca7637b14za"); } // [V6]17453test { try toUnicodeFail("xn--2v9a.xn--zca7637b14za"); } // [V6]
17454test { try toAsciiFail("xn--2v9a.xn--zca7637b14za", false); } // [V6]
17455test { try toAsciiFail("xn--2v9a.xn--zca7637b14za", true); } // [V6]
7028test { try toUnicodeFail("\xf0\x91\x9a\xb6\xe2\x92\x88\xe3\x80\x82\xf1\x9e\xbb\xa1\xf0\x90\xb9\xba"); } // [B5, B6, V6, V7]17456test { try toUnicodeFail("\xf0\x91\x9a\xb6\xe2\x92\x88\xe3\x80\x82\xf1\x9e\xbb\xa1\xf0\x90\xb9\xba"); } // [B5, B6, V6, V7]
17457test { try toAsciiFail("\xf0\x91\x9a\xb6\xe2\x92\x88\xe3\x80\x82\xf1\x9e\xbb\xa1\xf0\x90\xb9\xba", false); } // [B5, B6, V6, V7]
17458test { try toAsciiFail("\xf0\x91\x9a\xb6\xe2\x92\x88\xe3\x80\x82\xf1\x9e\xbb\xa1\xf0\x90\xb9\xba", true); } // [B5, B6, V6, V7]
7029test { try toUnicodeFail("\xf0\x91\x9a\xb61.\xe3\x80\x82\xf1\x9e\xbb\xa1\xf0\x90\xb9\xba"); } // [B5, B6, V6, V7, X4_2]17459test { try toUnicodeFail("\xf0\x91\x9a\xb61.\xe3\x80\x82\xf1\x9e\xbb\xa1\xf0\x90\xb9\xba"); } // [B5, B6, V6, V7, X4_2]
17460test { try toAsciiFail("\xf0\x91\x9a\xb61.\xe3\x80\x82\xf1\x9e\xbb\xa1\xf0\x90\xb9\xba", false); } // [B5, B6, V6, V7, A4_2]
17461test { try toAsciiFail("\xf0\x91\x9a\xb61.\xe3\x80\x82\xf1\x9e\xbb\xa1\xf0\x90\xb9\xba", true); } // [B5, B6, V6, V7, A4_2]
7030test { try toUnicodeFail("xn--1-3j0j..xn--yo0d5914s"); } // [B5, B6, V6, V7, X4_2]17462test { try toUnicodeFail("xn--1-3j0j..xn--yo0d5914s"); } // [B5, B6, V6, V7, X4_2]
17463test { try toAsciiFail("xn--1-3j0j..xn--yo0d5914s", false); } // [B5, B6, V6, V7, A4_2]
17464test { try toAsciiFail("xn--1-3j0j..xn--yo0d5914s", true); } // [B5, B6, V6, V7, A4_2]
7031test { try toUnicodeFail("xn--tshz969f.xn--yo0d5914s"); } // [B5, B6, V6, V7]17465test { try toUnicodeFail("xn--tshz969f.xn--yo0d5914s"); } // [B5, B6, V6, V7]
17466test { try toAsciiFail("xn--tshz969f.xn--yo0d5914s", false); } // [B5, B6, V6, V7]
17467test { try toAsciiFail("xn--tshz969f.xn--yo0d5914s", true); } // [B5, B6, V6, V7]
7032test { try toUnicodeFail("\xf0\x91\x9c\xa4\xef\xb8\x92\xe2\x89\xae\xef\xbc\x8e\xf1\x9a\x95\xbd\xd7\x98\xf0\x9e\xbe\xa9"); } // [B1, B5, B6, V6, V7]17468test { try toUnicodeFail("\xf0\x91\x9c\xa4\xef\xb8\x92\xe2\x89\xae\xef\xbc\x8e\xf1\x9a\x95\xbd\xd7\x98\xf0\x9e\xbe\xa9"); } // [B1, B5, B6, V6, V7]
17469test { try toAsciiFail("\xf0\x91\x9c\xa4\xef\xb8\x92\xe2\x89\xae\xef\xbc\x8e\xf1\x9a\x95\xbd\xd7\x98\xf0\x9e\xbe\xa9", false); } // [B1, B5, B6, V6, V7]
17470test { try toAsciiFail("\xf0\x91\x9c\xa4\xef\xb8\x92\xe2\x89\xae\xef\xbc\x8e\xf1\x9a\x95\xbd\xd7\x98\xf0\x9e\xbe\xa9", true); } // [B1, B5, B6, V6, V7]
7033test { try toUnicodeFail("\xf0\x91\x9c\xa4\xef\xb8\x92<\xcc\xb8\xef\xbc\x8e\xf1\x9a\x95\xbd\xd7\x98\xf0\x9e\xbe\xa9"); } // [B1, B5, B6, V6, V7]17471test { try toUnicodeFail("\xf0\x91\x9c\xa4\xef\xb8\x92<\xcc\xb8\xef\xbc\x8e\xf1\x9a\x95\xbd\xd7\x98\xf0\x9e\xbe\xa9"); } // [B1, B5, B6, V6, V7]
17472test { try toAsciiFail("\xf0\x91\x9c\xa4\xef\xb8\x92<\xcc\xb8\xef\xbc\x8e\xf1\x9a\x95\xbd\xd7\x98\xf0\x9e\xbe\xa9", false); } // [B1, B5, B6, V6, V7]
17473test { try toAsciiFail("\xf0\x91\x9c\xa4\xef\xb8\x92<\xcc\xb8\xef\xbc\x8e\xf1\x9a\x95\xbd\xd7\x98\xf0\x9e\xbe\xa9", true); } // [B1, B5, B6, V6, V7]
7034test { try toUnicodeFail("\xf0\x91\x9c\xa4\xe3\x80\x82\xe2\x89\xae.\xf1\x9a\x95\xbd\xd7\x98\xf0\x9e\xbe\xa9"); } // [B1, B5, B6, V6, V7]17474test { try toUnicodeFail("\xf0\x91\x9c\xa4\xe3\x80\x82\xe2\x89\xae.\xf1\x9a\x95\xbd\xd7\x98\xf0\x9e\xbe\xa9"); } // [B1, B5, B6, V6, V7]
17475test { try toAsciiFail("\xf0\x91\x9c\xa4\xe3\x80\x82\xe2\x89\xae.\xf1\x9a\x95\xbd\xd7\x98\xf0\x9e\xbe\xa9", false); } // [B1, B5, B6, V6, V7]
17476test { try toAsciiFail("\xf0\x91\x9c\xa4\xe3\x80\x82\xe2\x89\xae.\xf1\x9a\x95\xbd\xd7\x98\xf0\x9e\xbe\xa9", true); } // [B1, B5, B6, V6, V7]
7035test { try toUnicodeFail("\xf0\x91\x9c\xa4\xe3\x80\x82<\xcc\xb8.\xf1\x9a\x95\xbd\xd7\x98\xf0\x9e\xbe\xa9"); } // [B1, B5, B6, V6, V7]17477test { try toUnicodeFail("\xf0\x91\x9c\xa4\xe3\x80\x82<\xcc\xb8.\xf1\x9a\x95\xbd\xd7\x98\xf0\x9e\xbe\xa9"); } // [B1, B5, B6, V6, V7]
17478test { try toAsciiFail("\xf0\x91\x9c\xa4\xe3\x80\x82<\xcc\xb8.\xf1\x9a\x95\xbd\xd7\x98\xf0\x9e\xbe\xa9", false); } // [B1, B5, B6, V6, V7]
17479test { try toAsciiFail("\xf0\x91\x9c\xa4\xe3\x80\x82<\xcc\xb8.\xf1\x9a\x95\xbd\xd7\x98\xf0\x9e\xbe\xa9", true); } // [B1, B5, B6, V6, V7]
7036test { try toUnicodeFail("xn--ci2d.xn--gdh.xn--deb0091w5q9u"); } // [B1, B5, B6, V6, V7]17480test { try toUnicodeFail("xn--ci2d.xn--gdh.xn--deb0091w5q9u"); } // [B1, B5, B6, V6, V7]
17481test { try toAsciiFail("xn--ci2d.xn--gdh.xn--deb0091w5q9u", false); } // [B1, B5, B6, V6, V7]
17482test { try toAsciiFail("xn--ci2d.xn--gdh.xn--deb0091w5q9u", true); } // [B1, B5, B6, V6, V7]
7037test { try toUnicodeFail("xn--gdh5267fdzpa.xn--deb0091w5q9u"); } // [B1, B5, B6, V6, V7]17483test { try toUnicodeFail("xn--gdh5267fdzpa.xn--deb0091w5q9u"); } // [B1, B5, B6, V6, V7]
17484test { try toAsciiFail("xn--gdh5267fdzpa.xn--deb0091w5q9u", false); } // [B1, B5, B6, V6, V7]
17485test { try toAsciiFail("xn--gdh5267fdzpa.xn--deb0091w5q9u", true); } // [B1, B5, B6, V6, V7]
7038test { try toUnicodeFail("\xf3\xa0\x86\x8b\xd8\x83\xf1\x8f\xa6\xa4.\xe2\x87\x81\xcf\x82\xf2\x8f\x8b\x88\xf2\xba\x87\xa5"); } // [B1, V7]17486test { try toUnicodeFail("\xf3\xa0\x86\x8b\xd8\x83\xf1\x8f\xa6\xa4.\xe2\x87\x81\xcf\x82\xf2\x8f\x8b\x88\xf2\xba\x87\xa5"); } // [B1, V7]
17487test { try toAsciiFail("\xf3\xa0\x86\x8b\xd8\x83\xf1\x8f\xa6\xa4.\xe2\x87\x81\xcf\x82\xf2\x8f\x8b\x88\xf2\xba\x87\xa5", false); } // [B1, V7]
17488test { try toAsciiFail("\xf3\xa0\x86\x8b\xd8\x83\xf1\x8f\xa6\xa4.\xe2\x87\x81\xcf\x82\xf2\x8f\x8b\x88\xf2\xba\x87\xa5", true); } // [B1, V7]
7039test { try toUnicodeFail("\xf3\xa0\x86\x8b\xd8\x83\xf1\x8f\xa6\xa4.\xe2\x87\x81\xce\xa3\xf2\x8f\x8b\x88\xf2\xba\x87\xa5"); } // [B1, V7]17489test { try toUnicodeFail("\xf3\xa0\x86\x8b\xd8\x83\xf1\x8f\xa6\xa4.\xe2\x87\x81\xce\xa3\xf2\x8f\x8b\x88\xf2\xba\x87\xa5"); } // [B1, V7]
17490test { try toAsciiFail("\xf3\xa0\x86\x8b\xd8\x83\xf1\x8f\xa6\xa4.\xe2\x87\x81\xce\xa3\xf2\x8f\x8b\x88\xf2\xba\x87\xa5", false); } // [B1, V7]
17491test { try toAsciiFail("\xf3\xa0\x86\x8b\xd8\x83\xf1\x8f\xa6\xa4.\xe2\x87\x81\xce\xa3\xf2\x8f\x8b\x88\xf2\xba\x87\xa5", true); } // [B1, V7]
7040test { try toUnicodeFail("\xf3\xa0\x86\x8b\xd8\x83\xf1\x8f\xa6\xa4.\xe2\x87\x81\xcf\x83\xf2\x8f\x8b\x88\xf2\xba\x87\xa5"); } // [B1, V7]17492test { try toUnicodeFail("\xf3\xa0\x86\x8b\xd8\x83\xf1\x8f\xa6\xa4.\xe2\x87\x81\xcf\x83\xf2\x8f\x8b\x88\xf2\xba\x87\xa5"); } // [B1, V7]
17493test { try toAsciiFail("\xf3\xa0\x86\x8b\xd8\x83\xf1\x8f\xa6\xa4.\xe2\x87\x81\xcf\x83\xf2\x8f\x8b\x88\xf2\xba\x87\xa5", false); } // [B1, V7]
17494test { try toAsciiFail("\xf3\xa0\x86\x8b\xd8\x83\xf1\x8f\xa6\xa4.\xe2\x87\x81\xcf\x83\xf2\x8f\x8b\x88\xf2\xba\x87\xa5", true); } // [B1, V7]
7041test { try toUnicodeFail("xn--lfb04106d.xn--4xa964mxv16m8moq"); } // [B1, V7]17495test { try toUnicodeFail("xn--lfb04106d.xn--4xa964mxv16m8moq"); } // [B1, V7]
17496test { try toAsciiFail("xn--lfb04106d.xn--4xa964mxv16m8moq", false); } // [B1, V7]
17497test { try toAsciiFail("xn--lfb04106d.xn--4xa964mxv16m8moq", true); } // [B1, V7]
7042test { try toUnicodeFail("xn--lfb04106d.xn--3xa174mxv16m8moq"); } // [B1, V7]17498test { try toUnicodeFail("xn--lfb04106d.xn--3xa174mxv16m8moq"); } // [B1, V7]
17499test { try toAsciiFail("xn--lfb04106d.xn--3xa174mxv16m8moq", false); } // [B1, V7]
17500test { try toAsciiFail("xn--lfb04106d.xn--3xa174mxv16m8moq", true); } // [B1, V7]
7043test { try toUnicodeFail("\xcf\x82\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xef\xbd\xa1\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84"); } // [C1, V7]17501test { try toUnicodeFail("\xcf\x82\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xef\xbd\xa1\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84"); } // [C1, V7]
17502test { try toAsciiFail("\xcf\x82\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xef\xbd\xa1\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84", false); } // [C1, V7]
17503test { try toAsciiFail("\xcf\x82\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xef\xbd\xa1\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84", true); } // [V7]
7044test { try toUnicodeFail("\xcf\x82\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xe3\x80\x82\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84"); } // [C1, V7]17504test { try toUnicodeFail("\xcf\x82\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xe3\x80\x82\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84"); } // [C1, V7]
17505test { try toAsciiFail("\xcf\x82\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xe3\x80\x82\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84", false); } // [C1, V7]
17506test { try toAsciiFail("\xcf\x82\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xe3\x80\x82\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84", true); } // [V7]
7045test { try toUnicodeFail("\xce\xa3\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xe3\x80\x82\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84"); } // [C1, V7]17507test { try toUnicodeFail("\xce\xa3\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xe3\x80\x82\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84"); } // [C1, V7]
17508test { try toAsciiFail("\xce\xa3\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xe3\x80\x82\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84", false); } // [C1, V7]
17509test { try toAsciiFail("\xce\xa3\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xe3\x80\x82\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84", true); } // [V7]
7046test { try toUnicodeFail("\xcf\x83\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xe3\x80\x82\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84"); } // [C1, V7]17510test { try toUnicodeFail("\xcf\x83\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xe3\x80\x82\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84"); } // [C1, V7]
17511test { try toAsciiFail("\xcf\x83\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xe3\x80\x82\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84", false); } // [C1, V7]
17512test { try toAsciiFail("\xcf\x83\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xe3\x80\x82\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84", true); } // [V7]
7047test { try toUnicodeFail("xn--4xa2260lk3b8z15g.xn--tw9ct349a"); } // [V7]17513test { try toUnicodeFail("xn--4xa2260lk3b8z15g.xn--tw9ct349a"); } // [V7]
17514test { try toAsciiFail("xn--4xa2260lk3b8z15g.xn--tw9ct349a", false); } // [V7]
17515test { try toAsciiFail("xn--4xa2260lk3b8z15g.xn--tw9ct349a", true); } // [V7]
7048test { try toUnicodeFail("xn--4xa2260lk3b8z15g.xn--0ug4653g2xzf"); } // [C1, V7]17516test { try toUnicodeFail("xn--4xa2260lk3b8z15g.xn--0ug4653g2xzf"); } // [C1, V7]
17517test { try toAsciiFail("xn--4xa2260lk3b8z15g.xn--0ug4653g2xzf", false); } // [C1, V7]
17518test { try toAsciiFail("xn--4xa2260lk3b8z15g.xn--0ug4653g2xzf", true); } // [C1, V7]
7049test { try toUnicodeFail("xn--3xa4260lk3b8z15g.xn--0ug4653g2xzf"); } // [C1, V7]17519test { try toUnicodeFail("xn--3xa4260lk3b8z15g.xn--0ug4653g2xzf"); } // [C1, V7]
17520test { try toAsciiFail("xn--3xa4260lk3b8z15g.xn--0ug4653g2xzf", false); } // [C1, V7]
17521test { try toAsciiFail("xn--3xa4260lk3b8z15g.xn--0ug4653g2xzf", true); } // [C1, V7]
7050test { try toUnicodeFail("\xce\xa3\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xef\xbd\xa1\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84"); } // [C1, V7]17522test { try toUnicodeFail("\xce\xa3\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xef\xbd\xa1\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84"); } // [C1, V7]
17523test { try toAsciiFail("\xce\xa3\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xef\xbd\xa1\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84", false); } // [C1, V7]
17524test { try toAsciiFail("\xce\xa3\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xef\xbd\xa1\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84", true); } // [V7]
7051test { try toUnicodeFail("\xcf\x83\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xef\xbd\xa1\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84"); } // [C1, V7]17525test { try toUnicodeFail("\xcf\x83\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xef\xbd\xa1\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84"); } // [C1, V7]
17526test { try toAsciiFail("\xcf\x83\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xef\xbd\xa1\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84", false); } // [C1, V7]
17527test { try toAsciiFail("\xcf\x83\xf0\x91\x90\xbd\xf0\xb5\xa2\x88\xf0\x91\x9c\xab\xef\xbd\xa1\xf0\x9e\xac\xa9\xe2\x80\x8c\xf0\x90\xab\x84", true); } // [V7]
7052test { try toUnicodeFail("-\xf2\xb5\x8f\xbd\xef\xbd\xa1-\xef\xb1\x8c\xdd\x9b"); } // [B1, V3, V7]17528test { try toUnicodeFail("-\xf2\xb5\x8f\xbd\xef\xbd\xa1-\xef\xb1\x8c\xdd\x9b"); } // [B1, V3, V7]
17529test { try toAsciiFail("-\xf2\xb5\x8f\xbd\xef\xbd\xa1-\xef\xb1\x8c\xdd\x9b", false); } // [B1, V3, V7]
17530test { try toAsciiFail("-\xf2\xb5\x8f\xbd\xef\xbd\xa1-\xef\xb1\x8c\xdd\x9b", true); } // [B1, V3, V7]
7053test { try toUnicodeFail("-\xf2\xb5\x8f\xbd\xe3\x80\x82-\xd9\x86\xd8\xad\xdd\x9b"); } // [B1, V3, V7]17531test { try toUnicodeFail("-\xf2\xb5\x8f\xbd\xe3\x80\x82-\xd9\x86\xd8\xad\xdd\x9b"); } // [B1, V3, V7]
17532test { try toAsciiFail("-\xf2\xb5\x8f\xbd\xe3\x80\x82-\xd9\x86\xd8\xad\xdd\x9b", false); } // [B1, V3, V7]
17533test { try toAsciiFail("-\xf2\xb5\x8f\xbd\xe3\x80\x82-\xd9\x86\xd8\xad\xdd\x9b", true); } // [B1, V3, V7]
7054test { try toUnicodeFail("xn----o452j.xn----cnc8e38c"); } // [B1, V3, V7]17534test { try toUnicodeFail("xn----o452j.xn----cnc8e38c"); } // [B1, V3, V7]
17535test { try toAsciiFail("xn----o452j.xn----cnc8e38c", false); } // [B1, V3, V7]
17536test { try toAsciiFail("xn----o452j.xn----cnc8e38c", true); } // [B1, V3, V7]
7055test { try toUnicodeFail("\xe2\xba\xa2\xf2\x87\xba\x85\xf0\x9d\x9f\xa4\xef\xbd\xa1\xe2\x80\x8d\xf0\x9f\x9a\xb7"); } // [C2, V7]17537test { try toUnicodeFail("\xe2\xba\xa2\xf2\x87\xba\x85\xf0\x9d\x9f\xa4\xef\xbd\xa1\xe2\x80\x8d\xf0\x9f\x9a\xb7"); } // [C2, V7]
17538test { try toAsciiFail("\xe2\xba\xa2\xf2\x87\xba\x85\xf0\x9d\x9f\xa4\xef\xbd\xa1\xe2\x80\x8d\xf0\x9f\x9a\xb7", false); } // [C2, V7]
17539test { try toAsciiFail("\xe2\xba\xa2\xf2\x87\xba\x85\xf0\x9d\x9f\xa4\xef\xbd\xa1\xe2\x80\x8d\xf0\x9f\x9a\xb7", true); } // [V7]
7056test { try toUnicodeFail("\xe2\xba\xa2\xf2\x87\xba\x852\xe3\x80\x82\xe2\x80\x8d\xf0\x9f\x9a\xb7"); } // [C2, V7]17540test { try toUnicodeFail("\xe2\xba\xa2\xf2\x87\xba\x852\xe3\x80\x82\xe2\x80\x8d\xf0\x9f\x9a\xb7"); } // [C2, V7]
17541test { try toAsciiFail("\xe2\xba\xa2\xf2\x87\xba\x852\xe3\x80\x82\xe2\x80\x8d\xf0\x9f\x9a\xb7", false); } // [C2, V7]
17542test { try toAsciiFail("\xe2\xba\xa2\xf2\x87\xba\x852\xe3\x80\x82\xe2\x80\x8d\xf0\x9f\x9a\xb7", true); } // [V7]
7057test { try toUnicodeFail("xn--2-4jtr4282f.xn--m78h"); } // [V7]17543test { try toUnicodeFail("xn--2-4jtr4282f.xn--m78h"); } // [V7]
17544test { try toAsciiFail("xn--2-4jtr4282f.xn--m78h", false); } // [V7]
17545test { try toAsciiFail("xn--2-4jtr4282f.xn--m78h", true); } // [V7]
7058test { try toUnicodeFail("xn--2-4jtr4282f.xn--1ugz946p"); } // [C2, V7]17546test { try toUnicodeFail("xn--2-4jtr4282f.xn--1ugz946p"); } // [C2, V7]
17547test { try toAsciiFail("xn--2-4jtr4282f.xn--1ugz946p", false); } // [C2, V7]
17548test { try toAsciiFail("xn--2-4jtr4282f.xn--1ugz946p", true); } // [C2, V7]
7059test { try toUnicodeFail("\xe0\xb3\xb8\xe2\x80\x8d\xe2\xb7\xbe\xf0\x90\xb9\xb2\xef\xbd\xa1\xf2\xa4\x90\xb6"); } // [B5, B6, C2, V7]17549test { try toUnicodeFail("\xe0\xb3\xb8\xe2\x80\x8d\xe2\xb7\xbe\xf0\x90\xb9\xb2\xef\xbd\xa1\xf2\xa4\x90\xb6"); } // [B5, B6, C2, V7]
17550test { try toAsciiFail("\xe0\xb3\xb8\xe2\x80\x8d\xe2\xb7\xbe\xf0\x90\xb9\xb2\xef\xbd\xa1\xf2\xa4\x90\xb6", false); } // [B5, B6, C2, V7]
17551test { try toAsciiFail("\xe0\xb3\xb8\xe2\x80\x8d\xe2\xb7\xbe\xf0\x90\xb9\xb2\xef\xbd\xa1\xf2\xa4\x90\xb6", true); } // [B5, B6, V7]
7060test { try toUnicodeFail("\xe0\xb3\xb8\xe2\x80\x8d\xe2\xb7\xbe\xf0\x90\xb9\xb2\xe3\x80\x82\xf2\xa4\x90\xb6"); } // [B5, B6, C2, V7]17552test { try toUnicodeFail("\xe0\xb3\xb8\xe2\x80\x8d\xe2\xb7\xbe\xf0\x90\xb9\xb2\xe3\x80\x82\xf2\xa4\x90\xb6"); } // [B5, B6, C2, V7]
17553test { try toAsciiFail("\xe0\xb3\xb8\xe2\x80\x8d\xe2\xb7\xbe\xf0\x90\xb9\xb2\xe3\x80\x82\xf2\xa4\x90\xb6", false); } // [B5, B6, C2, V7]
17554test { try toAsciiFail("\xe0\xb3\xb8\xe2\x80\x8d\xe2\xb7\xbe\xf0\x90\xb9\xb2\xe3\x80\x82\xf2\xa4\x90\xb6", true); } // [B5, B6, V7]
7061test { try toUnicodeFail("xn--hvc220of37m.xn--3e36c"); } // [B5, B6, V7]17555test { try toUnicodeFail("xn--hvc220of37m.xn--3e36c"); } // [B5, B6, V7]
17556test { try toAsciiFail("xn--hvc220of37m.xn--3e36c", false); } // [B5, B6, V7]
17557test { try toAsciiFail("xn--hvc220of37m.xn--3e36c", true); } // [B5, B6, V7]
7062test { try toUnicodeFail("xn--hvc488g69j402t.xn--3e36c"); } // [B5, B6, C2, V7]17558test { try toUnicodeFail("xn--hvc488g69j402t.xn--3e36c"); } // [B5, B6, C2, V7]
17559test { try toAsciiFail("xn--hvc488g69j402t.xn--3e36c", false); } // [B5, B6, C2, V7]
17560test { try toAsciiFail("xn--hvc488g69j402t.xn--3e36c", true); } // [B5, B6, C2, V7]
7063test { try toUnicodeFail("\xf0\x90\xb9\xa2\xef\xbc\x8e\xe1\x82\xad\xe2\x82\x89\xe2\x81\xb8"); } // [B1]17561test { try toUnicodeFail("\xf0\x90\xb9\xa2\xef\xbc\x8e\xe1\x82\xad\xe2\x82\x89\xe2\x81\xb8"); } // [B1]
17562test { try toAsciiFail("\xf0\x90\xb9\xa2\xef\xbc\x8e\xe1\x82\xad\xe2\x82\x89\xe2\x81\xb8", false); } // [B1]
17563test { try toAsciiFail("\xf0\x90\xb9\xa2\xef\xbc\x8e\xe1\x82\xad\xe2\x82\x89\xe2\x81\xb8", true); } // [B1]
7064test { try toUnicodeFail("\xf0\x90\xb9\xa2.\xe1\x82\xad98"); } // [B1]17564test { try toUnicodeFail("\xf0\x90\xb9\xa2.\xe1\x82\xad98"); } // [B1]
17565test { try toAsciiFail("\xf0\x90\xb9\xa2.\xe1\x82\xad98", false); } // [B1]
17566test { try toAsciiFail("\xf0\x90\xb9\xa2.\xe1\x82\xad98", true); } // [B1]
7065test { try toUnicodeFail("\xf0\x90\xb9\xa2.\xe2\xb4\x8d98"); } // [B1]17567test { try toUnicodeFail("\xf0\x90\xb9\xa2.\xe2\xb4\x8d98"); } // [B1]
17568test { try toAsciiFail("\xf0\x90\xb9\xa2.\xe2\xb4\x8d98", false); } // [B1]
17569test { try toAsciiFail("\xf0\x90\xb9\xa2.\xe2\xb4\x8d98", true); } // [B1]
7066test { try toUnicodeFail("xn--9n0d.xn--98-u61a"); } // [B1]17570test { try toUnicodeFail("xn--9n0d.xn--98-u61a"); } // [B1]
17571test { try toAsciiFail("xn--9n0d.xn--98-u61a", false); } // [B1]
17572test { try toAsciiFail("xn--9n0d.xn--98-u61a", true); } // [B1]
7067test { try toUnicodeFail("\xf0\x90\xb9\xa2\xef\xbc\x8e\xe2\xb4\x8d\xe2\x82\x89\xe2\x81\xb8"); } // [B1]17573test { try toUnicodeFail("\xf0\x90\xb9\xa2\xef\xbc\x8e\xe2\xb4\x8d\xe2\x82\x89\xe2\x81\xb8"); } // [B1]
17574test { try toAsciiFail("\xf0\x90\xb9\xa2\xef\xbc\x8e\xe2\xb4\x8d\xe2\x82\x89\xe2\x81\xb8", false); } // [B1]
17575test { try toAsciiFail("\xf0\x90\xb9\xa2\xef\xbc\x8e\xe2\xb4\x8d\xe2\x82\x89\xe2\x81\xb8", true); } // [B1]
7068test { try toUnicodeFail("xn--9n0d.xn--98-7ek"); } // [B1, V7]17576test { try toUnicodeFail("xn--9n0d.xn--98-7ek"); } // [B1, V7]
17577test { try toAsciiFail("xn--9n0d.xn--98-7ek", false); } // [B1, V7]
17578test { try toAsciiFail("xn--9n0d.xn--98-7ek", true); } // [B1, V7]
7069test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1\xc3\x9f\xe0\xa3\xa2\xe2\x92\x9a\xe2\x89\xaf"); } // [B1, B5, B6, C1, V7]17579test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1\xc3\x9f\xe0\xa3\xa2\xe2\x92\x9a\xe2\x89\xaf"); } // [B1, B5, B6, C1, V7]
17580test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1\xc3\x9f\xe0\xa3\xa2\xe2\x92\x9a\xe2\x89\xaf", false); } // [B1, B5, B6, C1, V7]
17581test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1\xc3\x9f\xe0\xa3\xa2\xe2\x92\x9a\xe2\x89\xaf", true); } // [B5, B6, V7, A4_2]
7070test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1\xc3\x9f\xe0\xa3\xa2\xe2\x92\x9a>\xcc\xb8"); } // [B1, B5, B6, C1, V7]17582test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1\xc3\x9f\xe0\xa3\xa2\xe2\x92\x9a>\xcc\xb8"); } // [B1, B5, B6, C1, V7]
17583test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1\xc3\x9f\xe0\xa3\xa2\xe2\x92\x9a>\xcc\xb8", false); } // [B1, B5, B6, C1, V7]
17584test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1\xc3\x9f\xe0\xa3\xa2\xe2\x92\x9a>\xcc\xb8", true); } // [B5, B6, V7, A4_2]
7071test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82\xc3\x9f\xe0\xa3\xa219.\xe2\x89\xaf"); } // [B1, B5, C1, V7]17585test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82\xc3\x9f\xe0\xa3\xa219.\xe2\x89\xaf"); } // [B1, B5, C1, V7]
17586test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82\xc3\x9f\xe0\xa3\xa219.\xe2\x89\xaf", false); } // [B1, B5, C1, V7]
17587test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82\xc3\x9f\xe0\xa3\xa219.\xe2\x89\xaf", true); } // [B1, B5, V7, A4_2]
7072test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82\xc3\x9f\xe0\xa3\xa219.>\xcc\xb8"); } // [B1, B5, C1, V7]17588test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82\xc3\x9f\xe0\xa3\xa219.>\xcc\xb8"); } // [B1, B5, C1, V7]
17589test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82\xc3\x9f\xe0\xa3\xa219.>\xcc\xb8", false); } // [B1, B5, C1, V7]
17590test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82\xc3\x9f\xe0\xa3\xa219.>\xcc\xb8", true); } // [B1, B5, V7, A4_2]
7073test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82SS\xe0\xa3\xa219.>\xcc\xb8"); } // [B1, B5, C1, V7]17591test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82SS\xe0\xa3\xa219.>\xcc\xb8"); } // [B1, B5, C1, V7]
17592test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82SS\xe0\xa3\xa219.>\xcc\xb8", false); } // [B1, B5, C1, V7]
17593test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82SS\xe0\xa3\xa219.>\xcc\xb8", true); } // [B1, B5, V7, A4_2]
7074test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82SS\xe0\xa3\xa219.\xe2\x89\xaf"); } // [B1, B5, C1, V7]17594test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82SS\xe0\xa3\xa219.\xe2\x89\xaf"); } // [B1, B5, C1, V7]
17595test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82SS\xe0\xa3\xa219.\xe2\x89\xaf", false); } // [B1, B5, C1, V7]
17596test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82SS\xe0\xa3\xa219.\xe2\x89\xaf", true); } // [B1, B5, V7, A4_2]
7075test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82ss\xe0\xa3\xa219.\xe2\x89\xaf"); } // [B1, B5, C1, V7]17597test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82ss\xe0\xa3\xa219.\xe2\x89\xaf"); } // [B1, B5, C1, V7]
17598test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82ss\xe0\xa3\xa219.\xe2\x89\xaf", false); } // [B1, B5, C1, V7]
17599test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82ss\xe0\xa3\xa219.\xe2\x89\xaf", true); } // [B1, B5, V7, A4_2]
7076test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82ss\xe0\xa3\xa219.>\xcc\xb8"); } // [B1, B5, C1, V7]17600test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82ss\xe0\xa3\xa219.>\xcc\xb8"); } // [B1, B5, C1, V7]
17601test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82ss\xe0\xa3\xa219.>\xcc\xb8", false); } // [B1, B5, C1, V7]
17602test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82ss\xe0\xa3\xa219.>\xcc\xb8", true); } // [B1, B5, V7, A4_2]
7077test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82Ss\xe0\xa3\xa219.>\xcc\xb8"); } // [B1, B5, C1, V7]17603test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82Ss\xe0\xa3\xa219.>\xcc\xb8"); } // [B1, B5, C1, V7]
17604test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82Ss\xe0\xa3\xa219.>\xcc\xb8", false); } // [B1, B5, C1, V7]
17605test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82Ss\xe0\xa3\xa219.>\xcc\xb8", true); } // [B1, B5, V7, A4_2]
7078test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82Ss\xe0\xa3\xa219.\xe2\x89\xaf"); } // [B1, B5, C1, V7]17606test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82Ss\xe0\xa3\xa219.\xe2\x89\xaf"); } // [B1, B5, C1, V7]
17607test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82Ss\xe0\xa3\xa219.\xe2\x89\xaf", false); } // [B1, B5, C1, V7]
17608test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xe3\x80\x82Ss\xe0\xa3\xa219.\xe2\x89\xaf", true); } // [B1, B5, V7, A4_2]
7079test { try toUnicodeFail(".xn--ss19-w0i.xn--hdh"); } // [B1, B5, V7, X4_2]17609test { try toUnicodeFail(".xn--ss19-w0i.xn--hdh"); } // [B1, B5, V7, X4_2]
17610test { try toAsciiFail(".xn--ss19-w0i.xn--hdh", false); } // [B1, B5, V7, A4_2]
17611test { try toAsciiFail(".xn--ss19-w0i.xn--hdh", true); } // [B1, B5, V7, A4_2]
7080test { try toUnicodeFail("xn--0ug.xn--ss19-w0i.xn--hdh"); } // [B1, B5, C1, V7]17612test { try toUnicodeFail("xn--0ug.xn--ss19-w0i.xn--hdh"); } // [B1, B5, C1, V7]
17613test { try toAsciiFail("xn--0ug.xn--ss19-w0i.xn--hdh", false); } // [B1, B5, C1, V7]
17614test { try toAsciiFail("xn--0ug.xn--ss19-w0i.xn--hdh", true); } // [B1, B5, C1, V7]
7081test { try toUnicodeFail("xn--0ug.xn--19-fia813f.xn--hdh"); } // [B1, B5, C1, V7]17615test { try toUnicodeFail("xn--0ug.xn--19-fia813f.xn--hdh"); } // [B1, B5, C1, V7]
17616test { try toAsciiFail("xn--0ug.xn--19-fia813f.xn--hdh", false); } // [B1, B5, C1, V7]
17617test { try toAsciiFail("xn--0ug.xn--19-fia813f.xn--hdh", true); } // [B1, B5, C1, V7]
7082test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1SS\xe0\xa3\xa2\xe2\x92\x9a>\xcc\xb8"); } // [B1, B5, B6, C1, V7]17618test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1SS\xe0\xa3\xa2\xe2\x92\x9a>\xcc\xb8"); } // [B1, B5, B6, C1, V7]
17619test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1SS\xe0\xa3\xa2\xe2\x92\x9a>\xcc\xb8", false); } // [B1, B5, B6, C1, V7]
17620test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1SS\xe0\xa3\xa2\xe2\x92\x9a>\xcc\xb8", true); } // [B5, B6, V7, A4_2]
7083test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1SS\xe0\xa3\xa2\xe2\x92\x9a\xe2\x89\xaf"); } // [B1, B5, B6, C1, V7]17621test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1SS\xe0\xa3\xa2\xe2\x92\x9a\xe2\x89\xaf"); } // [B1, B5, B6, C1, V7]
17622test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1SS\xe0\xa3\xa2\xe2\x92\x9a\xe2\x89\xaf", false); } // [B1, B5, B6, C1, V7]
17623test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1SS\xe0\xa3\xa2\xe2\x92\x9a\xe2\x89\xaf", true); } // [B5, B6, V7, A4_2]
7084test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1ss\xe0\xa3\xa2\xe2\x92\x9a\xe2\x89\xaf"); } // [B1, B5, B6, C1, V7]17624test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1ss\xe0\xa3\xa2\xe2\x92\x9a\xe2\x89\xaf"); } // [B1, B5, B6, C1, V7]
17625test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1ss\xe0\xa3\xa2\xe2\x92\x9a\xe2\x89\xaf", false); } // [B1, B5, B6, C1, V7]
17626test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1ss\xe0\xa3\xa2\xe2\x92\x9a\xe2\x89\xaf", true); } // [B5, B6, V7, A4_2]
7085test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1ss\xe0\xa3\xa2\xe2\x92\x9a>\xcc\xb8"); } // [B1, B5, B6, C1, V7]17627test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1ss\xe0\xa3\xa2\xe2\x92\x9a>\xcc\xb8"); } // [B1, B5, B6, C1, V7]
17628test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1ss\xe0\xa3\xa2\xe2\x92\x9a>\xcc\xb8", false); } // [B1, B5, B6, C1, V7]
17629test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1ss\xe0\xa3\xa2\xe2\x92\x9a>\xcc\xb8", true); } // [B5, B6, V7, A4_2]
7086test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1Ss\xe0\xa3\xa2\xe2\x92\x9a>\xcc\xb8"); } // [B1, B5, B6, C1, V7]17630test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1Ss\xe0\xa3\xa2\xe2\x92\x9a>\xcc\xb8"); } // [B1, B5, B6, C1, V7]
17631test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1Ss\xe0\xa3\xa2\xe2\x92\x9a>\xcc\xb8", false); } // [B1, B5, B6, C1, V7]
17632test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1Ss\xe0\xa3\xa2\xe2\x92\x9a>\xcc\xb8", true); } // [B5, B6, V7, A4_2]
7087test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1Ss\xe0\xa3\xa2\xe2\x92\x9a\xe2\x89\xaf"); } // [B1, B5, B6, C1, V7]17633test { try toUnicodeFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1Ss\xe0\xa3\xa2\xe2\x92\x9a\xe2\x89\xaf"); } // [B1, B5, B6, C1, V7]
17634test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1Ss\xe0\xa3\xa2\xe2\x92\x9a\xe2\x89\xaf", false); } // [B1, B5, B6, C1, V7]
17635test { try toAsciiFail("\xe2\x80\x8c\xcd\x8f\xef\xbd\xa1Ss\xe0\xa3\xa2\xe2\x92\x9a\xe2\x89\xaf", true); } // [B5, B6, V7, A4_2]
7088test { try toUnicodeFail(".xn--ss-9if872xjjc"); } // [B5, B6, V7, X4_2]17636test { try toUnicodeFail(".xn--ss-9if872xjjc"); } // [B5, B6, V7, X4_2]
17637test { try toAsciiFail(".xn--ss-9if872xjjc", false); } // [B5, B6, V7, A4_2]
17638test { try toAsciiFail(".xn--ss-9if872xjjc", true); } // [B5, B6, V7, A4_2]
7089test { try toUnicodeFail("xn--0ug.xn--ss-9if872xjjc"); } // [B1, B5, B6, C1, V7]17639test { try toUnicodeFail("xn--0ug.xn--ss-9if872xjjc"); } // [B1, B5, B6, C1, V7]
17640test { try toAsciiFail("xn--0ug.xn--ss-9if872xjjc", false); } // [B1, B5, B6, C1, V7]
17641test { try toAsciiFail("xn--0ug.xn--ss-9if872xjjc", true); } // [B1, B5, B6, C1, V7]
7090test { try toUnicodeFail("xn--0ug.xn--zca612bx9vo5b"); } // [B1, B5, B6, C1, V7]17642test { try toUnicodeFail("xn--0ug.xn--zca612bx9vo5b"); } // [B1, B5, B6, C1, V7]
17643test { try toAsciiFail("xn--0ug.xn--zca612bx9vo5b", false); } // [B1, B5, B6, C1, V7]
17644test { try toAsciiFail("xn--0ug.xn--zca612bx9vo5b", true); } // [B1, B5, B6, C1, V7]
7091test { try toUnicodeFail("\xe2\x80\x8c\xf0\x9e\xa5\x8d\xe1\xa1\x8c\xef\xbc\x8e\xf0\xa3\x83\x94"); } // [B1, C1, V7]17645test { try toUnicodeFail("\xe2\x80\x8c\xf0\x9e\xa5\x8d\xe1\xa1\x8c\xef\xbc\x8e\xf0\xa3\x83\x94"); } // [B1, C1, V7]
17646test { try toAsciiFail("\xe2\x80\x8c\xf0\x9e\xa5\x8d\xe1\xa1\x8c\xef\xbc\x8e\xf0\xa3\x83\x94", false); } // [B1, C1, V7]
17647test { try toAsciiFail("\xe2\x80\x8c\xf0\x9e\xa5\x8d\xe1\xa1\x8c\xef\xbc\x8e\xf0\xa3\x83\x94", true); } // [B2, B3, V7]
7092test { try toUnicodeFail("\xe2\x80\x8c\xf0\x9e\xa5\x8d\xe1\xa1\x8c.\xf0\xa3\x83\x94"); } // [B1, C1, V7]17648test { try toUnicodeFail("\xe2\x80\x8c\xf0\x9e\xa5\x8d\xe1\xa1\x8c.\xf0\xa3\x83\x94"); } // [B1, C1, V7]
17649test { try toAsciiFail("\xe2\x80\x8c\xf0\x9e\xa5\x8d\xe1\xa1\x8c.\xf0\xa3\x83\x94", false); } // [B1, C1, V7]
17650test { try toAsciiFail("\xe2\x80\x8c\xf0\x9e\xa5\x8d\xe1\xa1\x8c.\xf0\xa3\x83\x94", true); } // [B2, B3, V7]
7093test { try toUnicodeFail("xn--c8e5919u.xn--od1j"); } // [B2, B3, V7]17651test { try toUnicodeFail("xn--c8e5919u.xn--od1j"); } // [B2, B3, V7]
17652test { try toAsciiFail("xn--c8e5919u.xn--od1j", false); } // [B2, B3, V7]
17653test { try toAsciiFail("xn--c8e5919u.xn--od1j", true); } // [B2, B3, V7]
7094test { try toUnicodeFail("xn--c8e180bqz13b.xn--od1j"); } // [B1, C1, V7]17654test { try toUnicodeFail("xn--c8e180bqz13b.xn--od1j"); } // [B1, C1, V7]
17655test { try toAsciiFail("xn--c8e180bqz13b.xn--od1j", false); } // [B1, C1, V7]
17656test { try toAsciiFail("xn--c8e180bqz13b.xn--od1j", true); } // [B1, C1, V7]
7095test { try toUnicodeFail("\xdf\x90\xf2\x9c\xac\x9d-\xf1\xa1\xa2\xac\xe3\x80\x82\xe0\xbe\xa0\xe1\x82\xbb\xf0\x9e\xb7\x8f\xf0\x9d\x86\xac"); } // [B1, B2, B3, V6, V7]17657test { try toUnicodeFail("\xdf\x90\xf2\x9c\xac\x9d-\xf1\xa1\xa2\xac\xe3\x80\x82\xe0\xbe\xa0\xe1\x82\xbb\xf0\x9e\xb7\x8f\xf0\x9d\x86\xac"); } // [B1, B2, B3, V6, V7]
17658test { try toAsciiFail("\xdf\x90\xf2\x9c\xac\x9d-\xf1\xa1\xa2\xac\xe3\x80\x82\xe0\xbe\xa0\xe1\x82\xbb\xf0\x9e\xb7\x8f\xf0\x9d\x86\xac", false); } // [B1, B2, B3, V6, V7]
17659test { try toAsciiFail("\xdf\x90\xf2\x9c\xac\x9d-\xf1\xa1\xa2\xac\xe3\x80\x82\xe0\xbe\xa0\xe1\x82\xbb\xf0\x9e\xb7\x8f\xf0\x9d\x86\xac", true); } // [B1, B2, B3, V6, V7]
7096test { try toUnicodeFail("\xdf\x90\xf2\x9c\xac\x9d-\xf1\xa1\xa2\xac\xe3\x80\x82\xe0\xbe\xa0\xe2\xb4\x9b\xf0\x9e\xb7\x8f\xf0\x9d\x86\xac"); } // [B1, B2, B3, V6, V7]17660test { try toUnicodeFail("\xdf\x90\xf2\x9c\xac\x9d-\xf1\xa1\xa2\xac\xe3\x80\x82\xe0\xbe\xa0\xe2\xb4\x9b\xf0\x9e\xb7\x8f\xf0\x9d\x86\xac"); } // [B1, B2, B3, V6, V7]
17661test { try toAsciiFail("\xdf\x90\xf2\x9c\xac\x9d-\xf1\xa1\xa2\xac\xe3\x80\x82\xe0\xbe\xa0\xe2\xb4\x9b\xf0\x9e\xb7\x8f\xf0\x9d\x86\xac", false); } // [B1, B2, B3, V6, V7]
17662test { try toAsciiFail("\xdf\x90\xf2\x9c\xac\x9d-\xf1\xa1\xa2\xac\xe3\x80\x82\xe0\xbe\xa0\xe2\xb4\x9b\xf0\x9e\xb7\x8f\xf0\x9d\x86\xac", true); } // [B1, B2, B3, V6, V7]
7097test { try toUnicodeFail("xn----8bd11730jefvw.xn--wfd802mpm20agsxa"); } // [B1, B2, B3, V6, V7]17663test { try toUnicodeFail("xn----8bd11730jefvw.xn--wfd802mpm20agsxa"); } // [B1, B2, B3, V6, V7]
17664test { try toAsciiFail("xn----8bd11730jefvw.xn--wfd802mpm20agsxa", false); } // [B1, B2, B3, V6, V7]
17665test { try toAsciiFail("xn----8bd11730jefvw.xn--wfd802mpm20agsxa", true); } // [B1, B2, B3, V6, V7]
7098test { try toUnicodeFail("xn----8bd11730jefvw.xn--wfd08cd265hgsxa"); } // [B1, B2, B3, V6, V7]17666test { try toUnicodeFail("xn----8bd11730jefvw.xn--wfd08cd265hgsxa"); } // [B1, B2, B3, V6, V7]
17667test { try toAsciiFail("xn----8bd11730jefvw.xn--wfd08cd265hgsxa", false); } // [B1, B2, B3, V6, V7]
17668test { try toAsciiFail("xn----8bd11730jefvw.xn--wfd08cd265hgsxa", true); } // [B1, B2, B3, V6, V7]
7099test { try toUnicodeFail("\xf0\x9d\xa8\xa5\xe3\x80\x82\xe2\xab\x9f\xf0\x91\x88\xbe"); } // [V6]17669test { try toUnicodeFail("\xf0\x9d\xa8\xa5\xe3\x80\x82\xe2\xab\x9f\xf0\x91\x88\xbe"); } // [V6]
17670test { try toAsciiFail("\xf0\x9d\xa8\xa5\xe3\x80\x82\xe2\xab\x9f\xf0\x91\x88\xbe", false); } // [V6]
17671test { try toAsciiFail("\xf0\x9d\xa8\xa5\xe3\x80\x82\xe2\xab\x9f\xf0\x91\x88\xbe", true); } // [V6]
7100test { try toUnicodeFail("xn--n82h.xn--63iw010f"); } // [V6]17672test { try toUnicodeFail("xn--n82h.xn--63iw010f"); } // [V6]
17673test { try toAsciiFail("xn--n82h.xn--63iw010f", false); } // [V6]
17674test { try toAsciiFail("xn--n82h.xn--63iw010f", true); } // [V6]
7101test { try toUnicodeFail("\xe2\xbe\x9b\xdd\x93.\xe1\x82\xb5\xf0\x9e\xa0\xac\xd8\x84\xe2\x80\x8d"); } // [B5, B6, C2, V7]17675test { try toUnicodeFail("\xe2\xbe\x9b\xdd\x93.\xe1\x82\xb5\xf0\x9e\xa0\xac\xd8\x84\xe2\x80\x8d"); } // [B5, B6, C2, V7]
17676test { try toAsciiFail("\xe2\xbe\x9b\xdd\x93.\xe1\x82\xb5\xf0\x9e\xa0\xac\xd8\x84\xe2\x80\x8d", false); } // [B5, B6, C2, V7]
17677test { try toAsciiFail("\xe2\xbe\x9b\xdd\x93.\xe1\x82\xb5\xf0\x9e\xa0\xac\xd8\x84\xe2\x80\x8d", true); } // [B5, B6, V7]
7102test { try toUnicodeFail("\xe8\xb5\xb0\xdd\x93.\xe1\x82\xb5\xf0\x9e\xa0\xac\xd8\x84\xe2\x80\x8d"); } // [B5, B6, C2, V7]17678test { try toUnicodeFail("\xe8\xb5\xb0\xdd\x93.\xe1\x82\xb5\xf0\x9e\xa0\xac\xd8\x84\xe2\x80\x8d"); } // [B5, B6, C2, V7]
17679test { try toAsciiFail("\xe8\xb5\xb0\xdd\x93.\xe1\x82\xb5\xf0\x9e\xa0\xac\xd8\x84\xe2\x80\x8d", false); } // [B5, B6, C2, V7]
17680test { try toAsciiFail("\xe8\xb5\xb0\xdd\x93.\xe1\x82\xb5\xf0\x9e\xa0\xac\xd8\x84\xe2\x80\x8d", true); } // [B5, B6, V7]
7103test { try toUnicodeFail("\xe8\xb5\xb0\xdd\x93.\xe2\xb4\x95\xf0\x9e\xa0\xac\xd8\x84\xe2\x80\x8d"); } // [B5, B6, C2, V7]17681test { try toUnicodeFail("\xe8\xb5\xb0\xdd\x93.\xe2\xb4\x95\xf0\x9e\xa0\xac\xd8\x84\xe2\x80\x8d"); } // [B5, B6, C2, V7]
17682test { try toAsciiFail("\xe8\xb5\xb0\xdd\x93.\xe2\xb4\x95\xf0\x9e\xa0\xac\xd8\x84\xe2\x80\x8d", false); } // [B5, B6, C2, V7]
17683test { try toAsciiFail("\xe8\xb5\xb0\xdd\x93.\xe2\xb4\x95\xf0\x9e\xa0\xac\xd8\x84\xe2\x80\x8d", true); } // [B5, B6, V7]
7104test { try toUnicodeFail("xn--6ob9779d.xn--mfb511rxu80a"); } // [B5, B6, V7]17684test { try toUnicodeFail("xn--6ob9779d.xn--mfb511rxu80a"); } // [B5, B6, V7]
17685test { try toAsciiFail("xn--6ob9779d.xn--mfb511rxu80a", false); } // [B5, B6, V7]
17686test { try toAsciiFail("xn--6ob9779d.xn--mfb511rxu80a", true); } // [B5, B6, V7]
7105test { try toUnicodeFail("xn--6ob9779d.xn--mfb444k5gjt754b"); } // [B5, B6, C2, V7]17687test { try toUnicodeFail("xn--6ob9779d.xn--mfb444k5gjt754b"); } // [B5, B6, C2, V7]
17688test { try toAsciiFail("xn--6ob9779d.xn--mfb444k5gjt754b", false); } // [B5, B6, C2, V7]
17689test { try toAsciiFail("xn--6ob9779d.xn--mfb444k5gjt754b", true); } // [B5, B6, C2, V7]
7106test { try toUnicodeFail("\xe2\xbe\x9b\xdd\x93.\xe2\xb4\x95\xf0\x9e\xa0\xac\xd8\x84\xe2\x80\x8d"); } // [B5, B6, C2, V7]17690test { try toUnicodeFail("\xe2\xbe\x9b\xdd\x93.\xe2\xb4\x95\xf0\x9e\xa0\xac\xd8\x84\xe2\x80\x8d"); } // [B5, B6, C2, V7]
17691test { try toAsciiFail("\xe2\xbe\x9b\xdd\x93.\xe2\xb4\x95\xf0\x9e\xa0\xac\xd8\x84\xe2\x80\x8d", false); } // [B5, B6, C2, V7]
17692test { try toAsciiFail("\xe2\xbe\x9b\xdd\x93.\xe2\xb4\x95\xf0\x9e\xa0\xac\xd8\x84\xe2\x80\x8d", true); } // [B5, B6, V7]
7107test { try toUnicodeFail("xn--6ob9779d.xn--mfb785ck569a"); } // [B5, B6, V7]17693test { try toUnicodeFail("xn--6ob9779d.xn--mfb785ck569a"); } // [B5, B6, V7]
17694test { try toAsciiFail("xn--6ob9779d.xn--mfb785ck569a", false); } // [B5, B6, V7]
17695test { try toAsciiFail("xn--6ob9779d.xn--mfb785ck569a", true); } // [B5, B6, V7]
7108test { try toUnicodeFail("xn--6ob9779d.xn--mfb785czmm0y85b"); } // [B5, B6, C2, V7]17696test { try toUnicodeFail("xn--6ob9779d.xn--mfb785czmm0y85b"); } // [B5, B6, C2, V7]
17697test { try toAsciiFail("xn--6ob9779d.xn--mfb785czmm0y85b", false); } // [B5, B6, C2, V7]
17698test { try toAsciiFail("xn--6ob9779d.xn--mfb785czmm0y85b", true); } // [B5, B6, C2, V7]
7109test { try toUnicodeFail("-\xe1\xa2\x97\xe2\x80\x8c\xf0\x9f\x84\x84.\xf0\x91\x9c\xa2"); } // [C1, V3, V6, U1]17699test { try toUnicodeFail("-\xe1\xa2\x97\xe2\x80\x8c\xf0\x9f\x84\x84.\xf0\x91\x9c\xa2"); } // [C1, V3, V6, U1]
17700test { try toAsciiFail("-\xe1\xa2\x97\xe2\x80\x8c\xf0\x9f\x84\x84.\xf0\x91\x9c\xa2", false); } // [C1, V3, V6, U1]
17701test { try toAsciiFail("-\xe1\xa2\x97\xe2\x80\x8c\xf0\x9f\x84\x84.\xf0\x91\x9c\xa2", true); } // [V3, V6, U1]
7110test { try toUnicodeFail("-\xe1\xa2\x97\xe2\x80\x8c3,.\xf0\x91\x9c\xa2"); } // [C1, V3, V6, U1]17702test { try toUnicodeFail("-\xe1\xa2\x97\xe2\x80\x8c3,.\xf0\x91\x9c\xa2"); } // [C1, V3, V6, U1]
17703test { try toAsciiFail("-\xe1\xa2\x97\xe2\x80\x8c3,.\xf0\x91\x9c\xa2", false); } // [C1, V3, V6, U1]
17704test { try toAsciiFail("-\xe1\xa2\x97\xe2\x80\x8c3,.\xf0\x91\x9c\xa2", true); } // [V3, V6, U1]
7111test { try toUnicodeFail("xn---3,-3eu.xn--9h2d"); } // [V3, V6, U1]17705test { try toUnicodeFail("xn---3,-3eu.xn--9h2d"); } // [V3, V6, U1]
17706test { try toAsciiFail("xn---3,-3eu.xn--9h2d", false); } // [V3, V6, U1]
17707test { try toAsciiFail("xn---3,-3eu.xn--9h2d", true); } // [V3, V6, U1]
7112test { try toUnicodeFail("xn---3,-3eu051c.xn--9h2d"); } // [C1, V3, V6, U1]17708test { try toUnicodeFail("xn---3,-3eu051c.xn--9h2d"); } // [C1, V3, V6, U1]
17709test { try toAsciiFail("xn---3,-3eu051c.xn--9h2d", false); } // [C1, V3, V6, U1]
17710test { try toAsciiFail("xn---3,-3eu051c.xn--9h2d", true); } // [C1, V3, V6, U1]
7113test { try toUnicodeFail("xn----pck1820x.xn--9h2d"); } // [V3, V6, V7]17711test { try toUnicodeFail("xn----pck1820x.xn--9h2d"); } // [V3, V6, V7]
17712test { try toAsciiFail("xn----pck1820x.xn--9h2d", false); } // [V3, V6, V7]
17713test { try toAsciiFail("xn----pck1820x.xn--9h2d", true); } // [V3, V6, V7]
7114test { try toUnicodeFail("xn----pck312bx563c.xn--9h2d"); } // [C1, V3, V6, V7]17714test { try toUnicodeFail("xn----pck312bx563c.xn--9h2d"); } // [C1, V3, V6, V7]
17715test { try toAsciiFail("xn----pck312bx563c.xn--9h2d", false); } // [C1, V3, V6, V7]
17716test { try toAsciiFail("xn----pck312bx563c.xn--9h2d", true); } // [C1, V3, V6, V7]
7115test { try toUnicodeFail("\xe2\x89\xa0\xf0\x90\xb8\x81\xf0\xb9\x8f\x81\xe2\x80\x8c.\xe1\x82\xba\xf2\xb3\x84\xa0"); } // [B1, C1, V7]17717test { try toUnicodeFail("\xe2\x89\xa0\xf0\x90\xb8\x81\xf0\xb9\x8f\x81\xe2\x80\x8c.\xe1\x82\xba\xf2\xb3\x84\xa0"); } // [B1, C1, V7]
17718test { try toAsciiFail("\xe2\x89\xa0\xf0\x90\xb8\x81\xf0\xb9\x8f\x81\xe2\x80\x8c.\xe1\x82\xba\xf2\xb3\x84\xa0", false); } // [B1, C1, V7]
17719test { try toAsciiFail("\xe2\x89\xa0\xf0\x90\xb8\x81\xf0\xb9\x8f\x81\xe2\x80\x8c.\xe1\x82\xba\xf2\xb3\x84\xa0", true); } // [B1, V7]
7116test { try toUnicodeFail("=\xcc\xb8\xf0\x90\xb8\x81\xf0\xb9\x8f\x81\xe2\x80\x8c.\xe1\x82\xba\xf2\xb3\x84\xa0"); } // [B1, C1, V7]17720test { try toUnicodeFail("=\xcc\xb8\xf0\x90\xb8\x81\xf0\xb9\x8f\x81\xe2\x80\x8c.\xe1\x82\xba\xf2\xb3\x84\xa0"); } // [B1, C1, V7]
17721test { try toAsciiFail("=\xcc\xb8\xf0\x90\xb8\x81\xf0\xb9\x8f\x81\xe2\x80\x8c.\xe1\x82\xba\xf2\xb3\x84\xa0", false); } // [B1, C1, V7]
17722test { try toAsciiFail("=\xcc\xb8\xf0\x90\xb8\x81\xf0\xb9\x8f\x81\xe2\x80\x8c.\xe1\x82\xba\xf2\xb3\x84\xa0", true); } // [B1, V7]
7117test { try toUnicodeFail("=\xcc\xb8\xf0\x90\xb8\x81\xf0\xb9\x8f\x81\xe2\x80\x8c.\xe2\xb4\x9a\xf2\xb3\x84\xa0"); } // [B1, C1, V7]17723test { try toUnicodeFail("=\xcc\xb8\xf0\x90\xb8\x81\xf0\xb9\x8f\x81\xe2\x80\x8c.\xe2\xb4\x9a\xf2\xb3\x84\xa0"); } // [B1, C1, V7]
17724test { try toAsciiFail("=\xcc\xb8\xf0\x90\xb8\x81\xf0\xb9\x8f\x81\xe2\x80\x8c.\xe2\xb4\x9a\xf2\xb3\x84\xa0", false); } // [B1, C1, V7]
17725test { try toAsciiFail("=\xcc\xb8\xf0\x90\xb8\x81\xf0\xb9\x8f\x81\xe2\x80\x8c.\xe2\xb4\x9a\xf2\xb3\x84\xa0", true); } // [B1, V7]
7118test { try toUnicodeFail("\xe2\x89\xa0\xf0\x90\xb8\x81\xf0\xb9\x8f\x81\xe2\x80\x8c.\xe2\xb4\x9a\xf2\xb3\x84\xa0"); } // [B1, C1, V7]17726test { try toUnicodeFail("\xe2\x89\xa0\xf0\x90\xb8\x81\xf0\xb9\x8f\x81\xe2\x80\x8c.\xe2\xb4\x9a\xf2\xb3\x84\xa0"); } // [B1, C1, V7]
17727test { try toAsciiFail("\xe2\x89\xa0\xf0\x90\xb8\x81\xf0\xb9\x8f\x81\xe2\x80\x8c.\xe2\xb4\x9a\xf2\xb3\x84\xa0", false); } // [B1, C1, V7]
17728test { try toAsciiFail("\xe2\x89\xa0\xf0\x90\xb8\x81\xf0\xb9\x8f\x81\xe2\x80\x8c.\xe2\xb4\x9a\xf2\xb3\x84\xa0", true); } // [B1, V7]
7119test { try toUnicodeFail("xn--1ch2293gv3nr.xn--ilj23531g"); } // [B1, V7]17729test { try toUnicodeFail("xn--1ch2293gv3nr.xn--ilj23531g"); } // [B1, V7]
17730test { try toAsciiFail("xn--1ch2293gv3nr.xn--ilj23531g", false); } // [B1, V7]
17731test { try toAsciiFail("xn--1ch2293gv3nr.xn--ilj23531g", true); } // [B1, V7]
7120test { try toUnicodeFail("xn--0ug83gn618a21ov.xn--ilj23531g"); } // [B1, C1, V7]17732test { try toUnicodeFail("xn--0ug83gn618a21ov.xn--ilj23531g"); } // [B1, C1, V7]
17733test { try toAsciiFail("xn--0ug83gn618a21ov.xn--ilj23531g", false); } // [B1, C1, V7]
17734test { try toAsciiFail("xn--0ug83gn618a21ov.xn--ilj23531g", true); } // [B1, C1, V7]
7121test { try toUnicodeFail("xn--1ch2293gv3nr.xn--ynd49496l"); } // [B1, V7]17735test { try toUnicodeFail("xn--1ch2293gv3nr.xn--ynd49496l"); } // [B1, V7]
17736test { try toAsciiFail("xn--1ch2293gv3nr.xn--ynd49496l", false); } // [B1, V7]
17737test { try toAsciiFail("xn--1ch2293gv3nr.xn--ynd49496l", true); } // [B1, V7]
7122test { try toUnicodeFail("xn--0ug83gn618a21ov.xn--ynd49496l"); } // [B1, C1, V7]17738test { try toUnicodeFail("xn--0ug83gn618a21ov.xn--ynd49496l"); } // [B1, C1, V7]
17739test { try toAsciiFail("xn--0ug83gn618a21ov.xn--ynd49496l", false); } // [B1, C1, V7]
17740test { try toAsciiFail("xn--0ug83gn618a21ov.xn--ynd49496l", true); } // [B1, C1, V7]
7123test { try toUnicodeFail("\xd9\xa9\xef\xbd\xa1\xf3\xa0\x87\x80\xf0\x91\x87\x8a"); } // [B1, V6]17741test { try toUnicodeFail("\xd9\xa9\xef\xbd\xa1\xf3\xa0\x87\x80\xf0\x91\x87\x8a"); } // [B1, V6]
17742test { try toAsciiFail("\xd9\xa9\xef\xbd\xa1\xf3\xa0\x87\x80\xf0\x91\x87\x8a", false); } // [B1, V6]
17743test { try toAsciiFail("\xd9\xa9\xef\xbd\xa1\xf3\xa0\x87\x80\xf0\x91\x87\x8a", true); } // [B1, V6]
7124test { try toUnicodeFail("\xd9\xa9\xe3\x80\x82\xf3\xa0\x87\x80\xf0\x91\x87\x8a"); } // [B1, V6]17744test { try toUnicodeFail("\xd9\xa9\xe3\x80\x82\xf3\xa0\x87\x80\xf0\x91\x87\x8a"); } // [B1, V6]
17745test { try toAsciiFail("\xd9\xa9\xe3\x80\x82\xf3\xa0\x87\x80\xf0\x91\x87\x8a", false); } // [B1, V6]
17746test { try toAsciiFail("\xd9\xa9\xe3\x80\x82\xf3\xa0\x87\x80\xf0\x91\x87\x8a", true); } // [B1, V6]
7125test { try toUnicodeFail("xn--iib.xn--6d1d"); } // [B1, V6]17747test { try toUnicodeFail("xn--iib.xn--6d1d"); } // [B1, V6]
17748test { try toAsciiFail("xn--iib.xn--6d1d", false); } // [B1, V6]
17749test { try toAsciiFail("xn--iib.xn--6d1d", true); } // [B1, V6]
7126test { try toUnicodeFail("\xe1\x82\x86\xf0\x9e\xb6\x80\xe2\x89\xaf\xe2\x92\x8d\xe3\x80\x82-"); } // [B1, V3, V6, V7]17750test { try toUnicodeFail("\xe1\x82\x86\xf0\x9e\xb6\x80\xe2\x89\xaf\xe2\x92\x8d\xe3\x80\x82-"); } // [B1, V3, V6, V7]
17751test { try toAsciiFail("\xe1\x82\x86\xf0\x9e\xb6\x80\xe2\x89\xaf\xe2\x92\x8d\xe3\x80\x82-", false); } // [B1, V3, V6, V7]
17752test { try toAsciiFail("\xe1\x82\x86\xf0\x9e\xb6\x80\xe2\x89\xaf\xe2\x92\x8d\xe3\x80\x82-", true); } // [B1, V3, V6, V7]
7127test { try toUnicodeFail("\xe1\x82\x86\xf0\x9e\xb6\x80>\xcc\xb8\xe2\x92\x8d\xe3\x80\x82-"); } // [B1, V3, V6, V7]17753test { try toUnicodeFail("\xe1\x82\x86\xf0\x9e\xb6\x80>\xcc\xb8\xe2\x92\x8d\xe3\x80\x82-"); } // [B1, V3, V6, V7]
17754test { try toAsciiFail("\xe1\x82\x86\xf0\x9e\xb6\x80>\xcc\xb8\xe2\x92\x8d\xe3\x80\x82-", false); } // [B1, V3, V6, V7]
17755test { try toAsciiFail("\xe1\x82\x86\xf0\x9e\xb6\x80>\xcc\xb8\xe2\x92\x8d\xe3\x80\x82-", true); } // [B1, V3, V6, V7]
7128test { try toUnicodeFail("\xe1\x82\x86\xf0\x9e\xb6\x80\xe2\x89\xaf6.\xe3\x80\x82-"); } // [B1, V3, V6, V7, X4_2]17756test { try toUnicodeFail("\xe1\x82\x86\xf0\x9e\xb6\x80\xe2\x89\xaf6.\xe3\x80\x82-"); } // [B1, V3, V6, V7, X4_2]
17757test { try toAsciiFail("\xe1\x82\x86\xf0\x9e\xb6\x80\xe2\x89\xaf6.\xe3\x80\x82-", false); } // [B1, V3, V6, V7, A4_2]
17758test { try toAsciiFail("\xe1\x82\x86\xf0\x9e\xb6\x80\xe2\x89\xaf6.\xe3\x80\x82-", true); } // [B1, V3, V6, V7, A4_2]
7129test { try toUnicodeFail("\xe1\x82\x86\xf0\x9e\xb6\x80>\xcc\xb86.\xe3\x80\x82-"); } // [B1, V3, V6, V7, X4_2]17759test { try toUnicodeFail("\xe1\x82\x86\xf0\x9e\xb6\x80>\xcc\xb86.\xe3\x80\x82-"); } // [B1, V3, V6, V7, X4_2]
17760test { try toAsciiFail("\xe1\x82\x86\xf0\x9e\xb6\x80>\xcc\xb86.\xe3\x80\x82-", false); } // [B1, V3, V6, V7, A4_2]
17761test { try toAsciiFail("\xe1\x82\x86\xf0\x9e\xb6\x80>\xcc\xb86.\xe3\x80\x82-", true); } // [B1, V3, V6, V7, A4_2]
7130test { try toUnicodeFail("xn--6-oyg968k7h74b..-"); } // [B1, V3, V6, V7, X4_2]17762test { try toUnicodeFail("xn--6-oyg968k7h74b..-"); } // [B1, V3, V6, V7, X4_2]
17763test { try toAsciiFail("xn--6-oyg968k7h74b..-", false); } // [B1, V3, V6, V7, A4_2]
17764test { try toAsciiFail("xn--6-oyg968k7h74b..-", true); } // [B1, V3, V6, V7, A4_2]
7131test { try toUnicodeFail("xn--hmd482gqqb8730g.-"); } // [B1, V3, V6, V7]17765test { try toUnicodeFail("xn--hmd482gqqb8730g.-"); } // [B1, V3, V6, V7]
17766test { try toAsciiFail("xn--hmd482gqqb8730g.-", false); } // [B1, V3, V6, V7]
17767test { try toAsciiFail("xn--hmd482gqqb8730g.-", true); } // [B1, V3, V6, V7]
7132test { try toUnicodeFail("\xe1\x9e\xb4.\xec\xae\x87-"); } // [V3, X4_2]17768test { try toUnicodeFail("\xe1\x9e\xb4.\xec\xae\x87-"); } // [V3, X4_2]
17769test { try toAsciiFail("\xe1\x9e\xb4.\xec\xae\x87-", false); } // [V3, A4_2]
17770test { try toAsciiFail("\xe1\x9e\xb4.\xec\xae\x87-", true); } // [V3, A4_2]
7133test { try toUnicodeFail("\xe1\x9e\xb4.\xe1\x84\x8d\xe1\x85\xb0\xe1\x86\xae-"); } // [V3, X4_2]17771test { try toUnicodeFail("\xe1\x9e\xb4.\xe1\x84\x8d\xe1\x85\xb0\xe1\x86\xae-"); } // [V3, X4_2]
17772test { try toAsciiFail("\xe1\x9e\xb4.\xe1\x84\x8d\xe1\x85\xb0\xe1\x86\xae-", false); } // [V3, A4_2]
17773test { try toAsciiFail("\xe1\x9e\xb4.\xe1\x84\x8d\xe1\x85\xb0\xe1\x86\xae-", true); } // [V3, A4_2]
7134test { try toUnicodeFail(".xn----938f"); } // [V3, X4_2]17774test { try toUnicodeFail(".xn----938f"); } // [V3, X4_2]
17775test { try toAsciiFail(".xn----938f", false); } // [V3, A4_2]
17776test { try toAsciiFail(".xn----938f", true); } // [V3, A4_2]
7135test { try toUnicodeFail("xn--z3e.xn----938f"); } // [V3, V6, V7]17777test { try toUnicodeFail("xn--z3e.xn----938f"); } // [V3, V6, V7]
17778test { try toAsciiFail("xn--z3e.xn----938f", false); } // [V3, V6, V7]
17779test { try toAsciiFail("xn--z3e.xn----938f", true); } // [V3, V6, V7]
7136test { try toUnicodeFail("\xe2\x80\x8c\xf0\x91\x93\x82\xe3\x80\x82\xe2\x92\x88-\xf4\x80\xaa\x9b"); } // [C1, V7]17780test { try toUnicodeFail("\xe2\x80\x8c\xf0\x91\x93\x82\xe3\x80\x82\xe2\x92\x88-\xf4\x80\xaa\x9b"); } // [C1, V7]
17781test { try toAsciiFail("\xe2\x80\x8c\xf0\x91\x93\x82\xe3\x80\x82\xe2\x92\x88-\xf4\x80\xaa\x9b", false); } // [C1, V7]
17782test { try toAsciiFail("\xe2\x80\x8c\xf0\x91\x93\x82\xe3\x80\x82\xe2\x92\x88-\xf4\x80\xaa\x9b", true); } // [V6, V7]
7137test { try toUnicodeFail("\xe2\x80\x8c\xf0\x91\x93\x82\xe3\x80\x821.-\xf4\x80\xaa\x9b"); } // [C1, V3, V7]17783test { try toUnicodeFail("\xe2\x80\x8c\xf0\x91\x93\x82\xe3\x80\x821.-\xf4\x80\xaa\x9b"); } // [C1, V3, V7]
17784test { try toAsciiFail("\xe2\x80\x8c\xf0\x91\x93\x82\xe3\x80\x821.-\xf4\x80\xaa\x9b", false); } // [C1, V3, V7]
17785test { try toAsciiFail("\xe2\x80\x8c\xf0\x91\x93\x82\xe3\x80\x821.-\xf4\x80\xaa\x9b", true); } // [V3, V6, V7]
7138test { try toUnicodeFail("xn--wz1d.1.xn----rg03o"); } // [V3, V6, V7]17786test { try toUnicodeFail("xn--wz1d.1.xn----rg03o"); } // [V3, V6, V7]
17787test { try toAsciiFail("xn--wz1d.1.xn----rg03o", false); } // [V3, V6, V7]
17788test { try toAsciiFail("xn--wz1d.1.xn----rg03o", true); } // [V3, V6, V7]
7139test { try toUnicodeFail("xn--0ugy057g.1.xn----rg03o"); } // [C1, V3, V7]17789test { try toUnicodeFail("xn--0ugy057g.1.xn----rg03o"); } // [C1, V3, V7]
17790test { try toAsciiFail("xn--0ugy057g.1.xn----rg03o", false); } // [C1, V3, V7]
17791test { try toAsciiFail("xn--0ugy057g.1.xn----rg03o", true); } // [C1, V3, V7]
7140test { try toUnicodeFail("xn--wz1d.xn----dcp29674o"); } // [V6, V7]17792test { try toUnicodeFail("xn--wz1d.xn----dcp29674o"); } // [V6, V7]
17793test { try toAsciiFail("xn--wz1d.xn----dcp29674o", false); } // [V6, V7]
17794test { try toAsciiFail("xn--wz1d.xn----dcp29674o", true); } // [V6, V7]
7141test { try toUnicodeFail("xn--0ugy057g.xn----dcp29674o"); } // [C1, V7]17795test { try toUnicodeFail("xn--0ugy057g.xn----dcp29674o"); } // [C1, V7]
17796test { try toAsciiFail("xn--0ugy057g.xn----dcp29674o", false); } // [C1, V7]
17797test { try toAsciiFail("xn--0ugy057g.xn----dcp29674o", true); } // [C1, V7]
7142test { try toUnicodeFail("\xe2\x92\x88\xef\xba\xae\xe2\x80\x8c\xe3\x80\x82\xe2\x83\xa9\xf0\x9f\x96\x9e\xe2\x80\x8c\xf0\x96\xac\xb4"); } // [B1, C1, V6, V7]17798test { try toUnicodeFail("\xe2\x92\x88\xef\xba\xae\xe2\x80\x8c\xe3\x80\x82\xe2\x83\xa9\xf0\x9f\x96\x9e\xe2\x80\x8c\xf0\x96\xac\xb4"); } // [B1, C1, V6, V7]
17799test { try toAsciiFail("\xe2\x92\x88\xef\xba\xae\xe2\x80\x8c\xe3\x80\x82\xe2\x83\xa9\xf0\x9f\x96\x9e\xe2\x80\x8c\xf0\x96\xac\xb4", false); } // [B1, C1, V6, V7]
17800test { try toAsciiFail("\xe2\x92\x88\xef\xba\xae\xe2\x80\x8c\xe3\x80\x82\xe2\x83\xa9\xf0\x9f\x96\x9e\xe2\x80\x8c\xf0\x96\xac\xb4", true); } // [B1, V6, V7]
7143test { try toUnicodeFail("1.\xd8\xb1\xe2\x80\x8c\xe3\x80\x82\xe2\x83\xa9\xf0\x9f\x96\x9e\xe2\x80\x8c\xf0\x96\xac\xb4"); } // [B1, B3, C1, V6]17801test { try toUnicodeFail("1.\xd8\xb1\xe2\x80\x8c\xe3\x80\x82\xe2\x83\xa9\xf0\x9f\x96\x9e\xe2\x80\x8c\xf0\x96\xac\xb4"); } // [B1, B3, C1, V6]
17802test { try toAsciiFail("1.\xd8\xb1\xe2\x80\x8c\xe3\x80\x82\xe2\x83\xa9\xf0\x9f\x96\x9e\xe2\x80\x8c\xf0\x96\xac\xb4", false); } // [B1, B3, C1, V6]
17803test { try toAsciiFail("1.\xd8\xb1\xe2\x80\x8c\xe3\x80\x82\xe2\x83\xa9\xf0\x9f\x96\x9e\xe2\x80\x8c\xf0\x96\xac\xb4", true); } // [B1, V6]
7144test { try toUnicodeFail("1.xn--wgb.xn--c1g6021kg18c"); } // [B1, V6]17804test { try toUnicodeFail("1.xn--wgb.xn--c1g6021kg18c"); } // [B1, V6]
17805test { try toAsciiFail("1.xn--wgb.xn--c1g6021kg18c", false); } // [B1, V6]
17806test { try toAsciiFail("1.xn--wgb.xn--c1g6021kg18c", true); } // [B1, V6]
7145test { try toUnicodeFail("1.xn--wgb253k.xn--0ugz6a8040fty5d"); } // [B1, B3, C1, V6]17807test { try toUnicodeFail("1.xn--wgb253k.xn--0ugz6a8040fty5d"); } // [B1, B3, C1, V6]
17808test { try toAsciiFail("1.xn--wgb253k.xn--0ugz6a8040fty5d", false); } // [B1, B3, C1, V6]
17809test { try toAsciiFail("1.xn--wgb253k.xn--0ugz6a8040fty5d", true); } // [B1, B3, C1, V6]
7146test { try toUnicodeFail("xn--wgb746m.xn--c1g6021kg18c"); } // [B1, V6, V7]17810test { try toUnicodeFail("xn--wgb746m.xn--c1g6021kg18c"); } // [B1, V6, V7]
17811test { try toAsciiFail("xn--wgb746m.xn--c1g6021kg18c", false); } // [B1, V6, V7]
17812test { try toAsciiFail("xn--wgb746m.xn--c1g6021kg18c", true); } // [B1, V6, V7]
7147test { try toUnicodeFail("xn--wgb253kmfd.xn--0ugz6a8040fty5d"); } // [B1, C1, V6, V7]17813test { try toUnicodeFail("xn--wgb253kmfd.xn--0ugz6a8040fty5d"); } // [B1, C1, V6, V7]
17814test { try toAsciiFail("xn--wgb253kmfd.xn--0ugz6a8040fty5d", false); } // [B1, C1, V6, V7]
17815test { try toAsciiFail("xn--wgb253kmfd.xn--0ugz6a8040fty5d", true); } // [B1, C1, V6, V7]
7148test { try toUnicodeFail("\xf3\x8c\xad\x87\xef\xbd\xa1\xf0\x9d\x9f\x90\xe1\xae\xa8\xdf\x94"); } // [B1, V7]17816test { try toUnicodeFail("\xf3\x8c\xad\x87\xef\xbd\xa1\xf0\x9d\x9f\x90\xe1\xae\xa8\xdf\x94"); } // [B1, V7]
17817test { try toAsciiFail("\xf3\x8c\xad\x87\xef\xbd\xa1\xf0\x9d\x9f\x90\xe1\xae\xa8\xdf\x94", false); } // [B1, V7]
17818test { try toAsciiFail("\xf3\x8c\xad\x87\xef\xbd\xa1\xf0\x9d\x9f\x90\xe1\xae\xa8\xdf\x94", true); } // [B1, V7]
7149test { try toUnicodeFail("\xf3\x8c\xad\x87\xe3\x80\x822\xe1\xae\xa8\xdf\x94"); } // [B1, V7]17819test { try toUnicodeFail("\xf3\x8c\xad\x87\xe3\x80\x822\xe1\xae\xa8\xdf\x94"); } // [B1, V7]
17820test { try toAsciiFail("\xf3\x8c\xad\x87\xe3\x80\x822\xe1\xae\xa8\xdf\x94", false); } // [B1, V7]
17821test { try toAsciiFail("\xf3\x8c\xad\x87\xe3\x80\x822\xe1\xae\xa8\xdf\x94", true); } // [B1, V7]
7150test { try toUnicodeFail("xn--xm89d.xn--2-icd143m"); } // [B1, V7]17822test { try toUnicodeFail("xn--xm89d.xn--2-icd143m"); } // [B1, V7]
17823test { try toAsciiFail("xn--xm89d.xn--2-icd143m", false); } // [B1, V7]
17824test { try toAsciiFail("xn--xm89d.xn--2-icd143m", true); } // [B1, V7]
7151test { try toUnicodeFail("\xef\xb6\x8f\xf2\xab\xb3\xba.\xcf\x82\xe2\x80\x8d\xf0\x90\xb9\xb7"); } // [B2, B3, B5, B6, C2, V7]17825test { try toUnicodeFail("\xef\xb6\x8f\xf2\xab\xb3\xba.\xcf\x82\xe2\x80\x8d\xf0\x90\xb9\xb7"); } // [B2, B3, B5, B6, C2, V7]
17826test { try toAsciiFail("\xef\xb6\x8f\xf2\xab\xb3\xba.\xcf\x82\xe2\x80\x8d\xf0\x90\xb9\xb7", false); } // [B2, B3, B5, B6, C2, V7]
17827test { try toAsciiFail("\xef\xb6\x8f\xf2\xab\xb3\xba.\xcf\x82\xe2\x80\x8d\xf0\x90\xb9\xb7", true); } // [B2, B3, B5, B6, V7]
7152test { try toUnicodeFail("\xd9\x85\xd8\xae\xd9\x85\xf2\xab\xb3\xba.\xcf\x82\xe2\x80\x8d\xf0\x90\xb9\xb7"); } // [B2, B3, B5, B6, C2, V7]17828test { try toUnicodeFail("\xd9\x85\xd8\xae\xd9\x85\xf2\xab\xb3\xba.\xcf\x82\xe2\x80\x8d\xf0\x90\xb9\xb7"); } // [B2, B3, B5, B6, C2, V7]
17829test { try toAsciiFail("\xd9\x85\xd8\xae\xd9\x85\xf2\xab\xb3\xba.\xcf\x82\xe2\x80\x8d\xf0\x90\xb9\xb7", false); } // [B2, B3, B5, B6, C2, V7]
17830test { try toAsciiFail("\xd9\x85\xd8\xae\xd9\x85\xf2\xab\xb3\xba.\xcf\x82\xe2\x80\x8d\xf0\x90\xb9\xb7", true); } // [B2, B3, B5, B6, V7]
7153test { try toUnicodeFail("\xd9\x85\xd8\xae\xd9\x85\xf2\xab\xb3\xba.\xce\xa3\xe2\x80\x8d\xf0\x90\xb9\xb7"); } // [B2, B3, B5, B6, C2, V7]17831test { try toUnicodeFail("\xd9\x85\xd8\xae\xd9\x85\xf2\xab\xb3\xba.\xce\xa3\xe2\x80\x8d\xf0\x90\xb9\xb7"); } // [B2, B3, B5, B6, C2, V7]
17832test { try toAsciiFail("\xd9\x85\xd8\xae\xd9\x85\xf2\xab\xb3\xba.\xce\xa3\xe2\x80\x8d\xf0\x90\xb9\xb7", false); } // [B2, B3, B5, B6, C2, V7]
17833test { try toAsciiFail("\xd9\x85\xd8\xae\xd9\x85\xf2\xab\xb3\xba.\xce\xa3\xe2\x80\x8d\xf0\x90\xb9\xb7", true); } // [B2, B3, B5, B6, V7]
7154test { try toUnicodeFail("\xd9\x85\xd8\xae\xd9\x85\xf2\xab\xb3\xba.\xcf\x83\xe2\x80\x8d\xf0\x90\xb9\xb7"); } // [B2, B3, B5, B6, C2, V7]17834test { try toUnicodeFail("\xd9\x85\xd8\xae\xd9\x85\xf2\xab\xb3\xba.\xcf\x83\xe2\x80\x8d\xf0\x90\xb9\xb7"); } // [B2, B3, B5, B6, C2, V7]
17835test { try toAsciiFail("\xd9\x85\xd8\xae\xd9\x85\xf2\xab\xb3\xba.\xcf\x83\xe2\x80\x8d\xf0\x90\xb9\xb7", false); } // [B2, B3, B5, B6, C2, V7]
17836test { try toAsciiFail("\xd9\x85\xd8\xae\xd9\x85\xf2\xab\xb3\xba.\xcf\x83\xe2\x80\x8d\xf0\x90\xb9\xb7", true); } // [B2, B3, B5, B6, V7]
7155test { try toUnicodeFail("xn--tgb9bb64691z.xn--4xa6667k"); } // [B2, B3, B5, B6, V7]17837test { try toUnicodeFail("xn--tgb9bb64691z.xn--4xa6667k"); } // [B2, B3, B5, B6, V7]
17838test { try toAsciiFail("xn--tgb9bb64691z.xn--4xa6667k", false); } // [B2, B3, B5, B6, V7]
17839test { try toAsciiFail("xn--tgb9bb64691z.xn--4xa6667k", true); } // [B2, B3, B5, B6, V7]
7156test { try toUnicodeFail("xn--tgb9bb64691z.xn--4xa895lrp7n"); } // [B2, B3, B5, B6, C2, V7]17840test { try toUnicodeFail("xn--tgb9bb64691z.xn--4xa895lrp7n"); } // [B2, B3, B5, B6, C2, V7]
17841test { try toAsciiFail("xn--tgb9bb64691z.xn--4xa895lrp7n", false); } // [B2, B3, B5, B6, C2, V7]
17842test { try toAsciiFail("xn--tgb9bb64691z.xn--4xa895lrp7n", true); } // [B2, B3, B5, B6, C2, V7]
7157test { try toUnicodeFail("xn--tgb9bb64691z.xn--3xa006lrp7n"); } // [B2, B3, B5, B6, C2, V7]17843test { try toUnicodeFail("xn--tgb9bb64691z.xn--3xa006lrp7n"); } // [B2, B3, B5, B6, C2, V7]
17844test { try toAsciiFail("xn--tgb9bb64691z.xn--3xa006lrp7n", false); } // [B2, B3, B5, B6, C2, V7]
17845test { try toAsciiFail("xn--tgb9bb64691z.xn--3xa006lrp7n", true); } // [B2, B3, B5, B6, C2, V7]
7158test { try toUnicodeFail("\xef\xb6\x8f\xf2\xab\xb3\xba.\xce\xa3\xe2\x80\x8d\xf0\x90\xb9\xb7"); } // [B2, B3, B5, B6, C2, V7]17846test { try toUnicodeFail("\xef\xb6\x8f\xf2\xab\xb3\xba.\xce\xa3\xe2\x80\x8d\xf0\x90\xb9\xb7"); } // [B2, B3, B5, B6, C2, V7]
17847test { try toAsciiFail("\xef\xb6\x8f\xf2\xab\xb3\xba.\xce\xa3\xe2\x80\x8d\xf0\x90\xb9\xb7", false); } // [B2, B3, B5, B6, C2, V7]
17848test { try toAsciiFail("\xef\xb6\x8f\xf2\xab\xb3\xba.\xce\xa3\xe2\x80\x8d\xf0\x90\xb9\xb7", true); } // [B2, B3, B5, B6, V7]
7159test { try toUnicodeFail("\xef\xb6\x8f\xf2\xab\xb3\xba.\xcf\x83\xe2\x80\x8d\xf0\x90\xb9\xb7"); } // [B2, B3, B5, B6, C2, V7]17849test { try toUnicodeFail("\xef\xb6\x8f\xf2\xab\xb3\xba.\xcf\x83\xe2\x80\x8d\xf0\x90\xb9\xb7"); } // [B2, B3, B5, B6, C2, V7]
17850test { try toAsciiFail("\xef\xb6\x8f\xf2\xab\xb3\xba.\xcf\x83\xe2\x80\x8d\xf0\x90\xb9\xb7", false); } // [B2, B3, B5, B6, C2, V7]
17851test { try toAsciiFail("\xef\xb6\x8f\xf2\xab\xb3\xba.\xcf\x83\xe2\x80\x8d\xf0\x90\xb9\xb7", true); } // [B2, B3, B5, B6, V7]
7160test { try toUnicodeFail("\xe2\x92\x8e\xdb\x81\xd8\x85\xef\xbd\xa1\xea\xab\xb6\xdb\xb5\xf0\x90\x87\xbd"); } // [B1, V6, V7]17852test { try toUnicodeFail("\xe2\x92\x8e\xdb\x81\xd8\x85\xef\xbd\xa1\xea\xab\xb6\xdb\xb5\xf0\x90\x87\xbd"); } // [B1, V6, V7]
17853test { try toAsciiFail("\xe2\x92\x8e\xdb\x81\xd8\x85\xef\xbd\xa1\xea\xab\xb6\xdb\xb5\xf0\x90\x87\xbd", false); } // [B1, V6, V7]
17854test { try toAsciiFail("\xe2\x92\x8e\xdb\x81\xd8\x85\xef\xbd\xa1\xea\xab\xb6\xdb\xb5\xf0\x90\x87\xbd", true); } // [B1, V6, V7]
7161test { try toUnicodeFail("7.\xdb\x81\xd8\x85\xe3\x80\x82\xea\xab\xb6\xdb\xb5\xf0\x90\x87\xbd"); } // [B1, V6, V7]17855test { try toUnicodeFail("7.\xdb\x81\xd8\x85\xe3\x80\x82\xea\xab\xb6\xdb\xb5\xf0\x90\x87\xbd"); } // [B1, V6, V7]
17856test { try toAsciiFail("7.\xdb\x81\xd8\x85\xe3\x80\x82\xea\xab\xb6\xdb\xb5\xf0\x90\x87\xbd", false); } // [B1, V6, V7]
17857test { try toAsciiFail("7.\xdb\x81\xd8\x85\xe3\x80\x82\xea\xab\xb6\xdb\xb5\xf0\x90\x87\xbd", true); } // [B1, V6, V7]
7162test { try toUnicodeFail("7.xn--nfb98a.xn--imb3805fxt8b"); } // [B1, V6, V7]17858test { try toUnicodeFail("7.xn--nfb98a.xn--imb3805fxt8b"); } // [B1, V6, V7]
17859test { try toAsciiFail("7.xn--nfb98a.xn--imb3805fxt8b", false); } // [B1, V6, V7]
17860test { try toAsciiFail("7.xn--nfb98a.xn--imb3805fxt8b", true); } // [B1, V6, V7]
7163test { try toUnicodeFail("xn--nfb98ai25e.xn--imb3805fxt8b"); } // [B1, V6, V7]17861test { try toUnicodeFail("xn--nfb98ai25e.xn--imb3805fxt8b"); } // [B1, V6, V7]
17862test { try toAsciiFail("xn--nfb98ai25e.xn--imb3805fxt8b", false); } // [B1, V6, V7]
17863test { try toAsciiFail("xn--nfb98ai25e.xn--imb3805fxt8b", true); } // [B1, V6, V7]
7164test { try toUnicodeFail("-\xe1\xa1\xa5\xe1\xa0\x86\xf3\x8d\xb2\xad\xe3\x80\x82\xd8\x85\xe1\xa9\x9d\xf0\x90\xb9\xa1"); } // [B1, V3, V7]17864test { try toUnicodeFail("-\xe1\xa1\xa5\xe1\xa0\x86\xf3\x8d\xb2\xad\xe3\x80\x82\xd8\x85\xe1\xa9\x9d\xf0\x90\xb9\xa1"); } // [B1, V3, V7]
17865test { try toAsciiFail("-\xe1\xa1\xa5\xe1\xa0\x86\xf3\x8d\xb2\xad\xe3\x80\x82\xd8\x85\xe1\xa9\x9d\xf0\x90\xb9\xa1", false); } // [B1, V3, V7]
17866test { try toAsciiFail("-\xe1\xa1\xa5\xe1\xa0\x86\xf3\x8d\xb2\xad\xe3\x80\x82\xd8\x85\xe1\xa9\x9d\xf0\x90\xb9\xa1", true); } // [B1, V3, V7]
7165test { try toUnicodeFail("xn----f3j6s87156i.xn--nfb035hoo2p"); } // [B1, V3, V7]17867test { try toUnicodeFail("xn----f3j6s87156i.xn--nfb035hoo2p"); } // [B1, V3, V7]
17868test { try toAsciiFail("xn----f3j6s87156i.xn--nfb035hoo2p", false); } // [B1, V3, V7]
17869test { try toAsciiFail("xn----f3j6s87156i.xn--nfb035hoo2p", true); } // [B1, V3, V7]
7166test { try toUnicodeFail("\xe2\x80\x8d.\xda\xbd\xd9\xa3\xd6\x96"); } // [B1, C2]17870test { try toUnicodeFail("\xe2\x80\x8d.\xda\xbd\xd9\xa3\xd6\x96"); } // [B1, C2]
17871test { try toAsciiFail("\xe2\x80\x8d.\xda\xbd\xd9\xa3\xd6\x96", false); } // [B1, C2]
17872test { try toAsciiFail("\xe2\x80\x8d.\xda\xbd\xd9\xa3\xd6\x96", true); } // [A4_2]
7167test { try toUnicodeFail(".xn--hcb32bni"); } // [X4_2]17873test { try toUnicodeFail(".xn--hcb32bni"); } // [X4_2]
17874test { try toAsciiFail(".xn--hcb32bni", false); } // [A4_2]
17875test { try toAsciiFail(".xn--hcb32bni", true); } // [A4_2]
7168test { try toUnicodeFail("xn--1ug.xn--hcb32bni"); } // [B1, C2]17876test { try toUnicodeFail("xn--1ug.xn--hcb32bni"); } // [B1, C2]
17877test { try toAsciiFail("xn--1ug.xn--hcb32bni", false); } // [B1, C2]
17878test { try toAsciiFail("xn--1ug.xn--hcb32bni", true); } // [B1, C2]
7169test { try toUnicodePass("xn--hcb32bni", "\xda\xbd\xd9\xa3\xd6\x96"); }17879test { try toUnicodePass("xn--hcb32bni", "\xda\xbd\xd9\xa3\xd6\x96"); }
7170test { try toAsciiPass("xn--hcb32bni", "xn--hcb32bni", false); }17880test { try toAsciiPass("xn--hcb32bni", "xn--hcb32bni", false); }
7171test { try toAsciiPass("xn--hcb32bni", "xn--hcb32bni", true); }17881test { try toAsciiPass("xn--hcb32bni", "xn--hcb32bni", true); }
...@@ -7173,129 +17883,371 @@ test { try toUnicodePass("\xda\xbd\xd9\xa3\xd6\x96", "\xda\xbd\xd9\xa3\xd6\x96")...@@ -7173,129 +17883,371 @@ test { try toUnicodePass("\xda\xbd\xd9\xa3\xd6\x96", "\xda\xbd\xd9\xa3\xd6\x96")
7173test { try toAsciiPass("\xda\xbd\xd9\xa3\xd6\x96", "xn--hcb32bni", false); }17883test { try toAsciiPass("\xda\xbd\xd9\xa3\xd6\x96", "xn--hcb32bni", false); }
7174test { try toAsciiPass("\xda\xbd\xd9\xa3\xd6\x96", "xn--hcb32bni", true); }17884test { try toAsciiPass("\xda\xbd\xd9\xa3\xd6\x96", "xn--hcb32bni", true); }
7175test { try toUnicodeFail("\xe3\x92\xa7\xdb\xb1.\xe1\x82\xba\xd9\xb8\xe2\x80\x8d"); } // [B5, B6, C2]17885test { try toUnicodeFail("\xe3\x92\xa7\xdb\xb1.\xe1\x82\xba\xd9\xb8\xe2\x80\x8d"); } // [B5, B6, C2]
17886test { try toAsciiFail("\xe3\x92\xa7\xdb\xb1.\xe1\x82\xba\xd9\xb8\xe2\x80\x8d", false); } // [B5, B6, C2]
17887test { try toAsciiFail("\xe3\x92\xa7\xdb\xb1.\xe1\x82\xba\xd9\xb8\xe2\x80\x8d", true); } // [B5, B6]
7176test { try toUnicodeFail("\xe3\x92\xa7\xdb\xb1.\xe1\x82\xba\xd9\x8a\xd9\xb4\xe2\x80\x8d"); } // [B5, B6, C2]17888test { try toUnicodeFail("\xe3\x92\xa7\xdb\xb1.\xe1\x82\xba\xd9\x8a\xd9\xb4\xe2\x80\x8d"); } // [B5, B6, C2]
17889test { try toAsciiFail("\xe3\x92\xa7\xdb\xb1.\xe1\x82\xba\xd9\x8a\xd9\xb4\xe2\x80\x8d", false); } // [B5, B6, C2]
17890test { try toAsciiFail("\xe3\x92\xa7\xdb\xb1.\xe1\x82\xba\xd9\x8a\xd9\xb4\xe2\x80\x8d", true); } // [B5, B6]
7177test { try toUnicodeFail("\xe3\x92\xa7\xdb\xb1.\xe2\xb4\x9a\xd9\x8a\xd9\xb4\xe2\x80\x8d"); } // [B5, B6, C2]17891test { try toUnicodeFail("\xe3\x92\xa7\xdb\xb1.\xe2\xb4\x9a\xd9\x8a\xd9\xb4\xe2\x80\x8d"); } // [B5, B6, C2]
17892test { try toAsciiFail("\xe3\x92\xa7\xdb\xb1.\xe2\xb4\x9a\xd9\x8a\xd9\xb4\xe2\x80\x8d", false); } // [B5, B6, C2]
17893test { try toAsciiFail("\xe3\x92\xa7\xdb\xb1.\xe2\xb4\x9a\xd9\x8a\xd9\xb4\xe2\x80\x8d", true); } // [B5, B6]
7178test { try toUnicodeFail("xn--emb715u.xn--mhb8fy26k"); } // [B5, B6]17894test { try toUnicodeFail("xn--emb715u.xn--mhb8fy26k"); } // [B5, B6]
17895test { try toAsciiFail("xn--emb715u.xn--mhb8fy26k", false); } // [B5, B6]
17896test { try toAsciiFail("xn--emb715u.xn--mhb8fy26k", true); } // [B5, B6]
7179test { try toUnicodeFail("xn--emb715u.xn--mhb8f960g03l"); } // [B5, B6, C2]17897test { try toUnicodeFail("xn--emb715u.xn--mhb8f960g03l"); } // [B5, B6, C2]
17898test { try toAsciiFail("xn--emb715u.xn--mhb8f960g03l", false); } // [B5, B6, C2]
17899test { try toAsciiFail("xn--emb715u.xn--mhb8f960g03l", true); } // [B5, B6, C2]
7180test { try toUnicodeFail("\xe3\x92\xa7\xdb\xb1.\xe2\xb4\x9a\xd9\xb8\xe2\x80\x8d"); } // [B5, B6, C2]17900test { try toUnicodeFail("\xe3\x92\xa7\xdb\xb1.\xe2\xb4\x9a\xd9\xb8\xe2\x80\x8d"); } // [B5, B6, C2]
17901test { try toAsciiFail("\xe3\x92\xa7\xdb\xb1.\xe2\xb4\x9a\xd9\xb8\xe2\x80\x8d", false); } // [B5, B6, C2]
17902test { try toAsciiFail("\xe3\x92\xa7\xdb\xb1.\xe2\xb4\x9a\xd9\xb8\xe2\x80\x8d", true); } // [B5, B6]
7181test { try toUnicodeFail("xn--emb715u.xn--mhb8f817a"); } // [B5, B6, V7]17903test { try toUnicodeFail("xn--emb715u.xn--mhb8f817a"); } // [B5, B6, V7]
17904test { try toAsciiFail("xn--emb715u.xn--mhb8f817a", false); } // [B5, B6, V7]
17905test { try toAsciiFail("xn--emb715u.xn--mhb8f817a", true); } // [B5, B6, V7]
7182test { try toUnicodeFail("xn--emb715u.xn--mhb8f817ao2p"); } // [B5, B6, C2, V7]17906test { try toUnicodeFail("xn--emb715u.xn--mhb8f817ao2p"); } // [B5, B6, C2, V7]
17907test { try toAsciiFail("xn--emb715u.xn--mhb8f817ao2p", false); } // [B5, B6, C2, V7]
17908test { try toAsciiFail("xn--emb715u.xn--mhb8f817ao2p", true); } // [B5, B6, C2, V7]
7183test { try toUnicodeFail("\xe0\xbe\x94\xea\xa1\x8b-\xef\xbc\x8e-\xf0\x96\xac\xb4"); } // [V3, V6]17909test { try toUnicodeFail("\xe0\xbe\x94\xea\xa1\x8b-\xef\xbc\x8e-\xf0\x96\xac\xb4"); } // [V3, V6]
17910test { try toAsciiFail("\xe0\xbe\x94\xea\xa1\x8b-\xef\xbc\x8e-\xf0\x96\xac\xb4", false); } // [V3, V6]
17911test { try toAsciiFail("\xe0\xbe\x94\xea\xa1\x8b-\xef\xbc\x8e-\xf0\x96\xac\xb4", true); } // [V3, V6]
7184test { try toUnicodeFail("\xe0\xbe\x94\xea\xa1\x8b-.-\xf0\x96\xac\xb4"); } // [V3, V6]17912test { try toUnicodeFail("\xe0\xbe\x94\xea\xa1\x8b-.-\xf0\x96\xac\xb4"); } // [V3, V6]
17913test { try toAsciiFail("\xe0\xbe\x94\xea\xa1\x8b-.-\xf0\x96\xac\xb4", false); } // [V3, V6]
17914test { try toAsciiFail("\xe0\xbe\x94\xea\xa1\x8b-.-\xf0\x96\xac\xb4", true); } // [V3, V6]
7185test { try toUnicodeFail("xn----ukg9938i.xn----4u5m"); } // [V3, V6]17915test { try toUnicodeFail("xn----ukg9938i.xn----4u5m"); } // [V3, V6]
17916test { try toAsciiFail("xn----ukg9938i.xn----4u5m", false); } // [V3, V6]
17917test { try toAsciiFail("xn----ukg9938i.xn----4u5m", true); } // [V3, V6]
7186test { try toUnicodeFail("\xf1\xbf\x92\xb3-\xe2\x8b\xa2\xe2\x80\x8c\xef\xbc\x8e\xe6\xa0\x87-"); } // [C1, V3, V7]17918test { try toUnicodeFail("\xf1\xbf\x92\xb3-\xe2\x8b\xa2\xe2\x80\x8c\xef\xbc\x8e\xe6\xa0\x87-"); } // [C1, V3, V7]
17919test { try toAsciiFail("\xf1\xbf\x92\xb3-\xe2\x8b\xa2\xe2\x80\x8c\xef\xbc\x8e\xe6\xa0\x87-", false); } // [C1, V3, V7]
17920test { try toAsciiFail("\xf1\xbf\x92\xb3-\xe2\x8b\xa2\xe2\x80\x8c\xef\xbc\x8e\xe6\xa0\x87-", true); } // [V3, V7]
7187test { try toUnicodeFail("\xf1\xbf\x92\xb3-\xe2\x8a\x91\xcc\xb8\xe2\x80\x8c\xef\xbc\x8e\xe6\xa0\x87-"); } // [C1, V3, V7]17921test { try toUnicodeFail("\xf1\xbf\x92\xb3-\xe2\x8a\x91\xcc\xb8\xe2\x80\x8c\xef\xbc\x8e\xe6\xa0\x87-"); } // [C1, V3, V7]
17922test { try toAsciiFail("\xf1\xbf\x92\xb3-\xe2\x8a\x91\xcc\xb8\xe2\x80\x8c\xef\xbc\x8e\xe6\xa0\x87-", false); } // [C1, V3, V7]
17923test { try toAsciiFail("\xf1\xbf\x92\xb3-\xe2\x8a\x91\xcc\xb8\xe2\x80\x8c\xef\xbc\x8e\xe6\xa0\x87-", true); } // [V3, V7]
7188test { try toUnicodeFail("\xf1\xbf\x92\xb3-\xe2\x8b\xa2\xe2\x80\x8c.\xe6\xa0\x87-"); } // [C1, V3, V7]17924test { try toUnicodeFail("\xf1\xbf\x92\xb3-\xe2\x8b\xa2\xe2\x80\x8c.\xe6\xa0\x87-"); } // [C1, V3, V7]
17925test { try toAsciiFail("\xf1\xbf\x92\xb3-\xe2\x8b\xa2\xe2\x80\x8c.\xe6\xa0\x87-", false); } // [C1, V3, V7]
17926test { try toAsciiFail("\xf1\xbf\x92\xb3-\xe2\x8b\xa2\xe2\x80\x8c.\xe6\xa0\x87-", true); } // [V3, V7]
7189test { try toUnicodeFail("\xf1\xbf\x92\xb3-\xe2\x8a\x91\xcc\xb8\xe2\x80\x8c.\xe6\xa0\x87-"); } // [C1, V3, V7]17927test { try toUnicodeFail("\xf1\xbf\x92\xb3-\xe2\x8a\x91\xcc\xb8\xe2\x80\x8c.\xe6\xa0\x87-"); } // [C1, V3, V7]
17928test { try toAsciiFail("\xf1\xbf\x92\xb3-\xe2\x8a\x91\xcc\xb8\xe2\x80\x8c.\xe6\xa0\x87-", false); } // [C1, V3, V7]
17929test { try toAsciiFail("\xf1\xbf\x92\xb3-\xe2\x8a\x91\xcc\xb8\xe2\x80\x8c.\xe6\xa0\x87-", true); } // [V3, V7]
7190test { try toUnicodeFail("xn----9mo67451g.xn----qj7b"); } // [V3, V7]17930test { try toUnicodeFail("xn----9mo67451g.xn----qj7b"); } // [V3, V7]
17931test { try toAsciiFail("xn----9mo67451g.xn----qj7b", false); } // [V3, V7]
17932test { try toAsciiFail("xn----9mo67451g.xn----qj7b", true); } // [V3, V7]
7191test { try toUnicodeFail("xn----sgn90kn5663a.xn----qj7b"); } // [C1, V3, V7]17933test { try toUnicodeFail("xn----sgn90kn5663a.xn----qj7b"); } // [C1, V3, V7]
17934test { try toAsciiFail("xn----sgn90kn5663a.xn----qj7b", false); } // [C1, V3, V7]
17935test { try toAsciiFail("xn----sgn90kn5663a.xn----qj7b", true); } // [C1, V3, V7]
7192test { try toUnicodeFail("\xd9\xb1\xef\xbc\x8e\xcf\x82\xdf\x9c"); } // [B5, B6]17936test { try toUnicodeFail("\xd9\xb1\xef\xbc\x8e\xcf\x82\xdf\x9c"); } // [B5, B6]
17937test { try toAsciiFail("\xd9\xb1\xef\xbc\x8e\xcf\x82\xdf\x9c", false); } // [B5, B6]
17938test { try toAsciiFail("\xd9\xb1\xef\xbc\x8e\xcf\x82\xdf\x9c", true); } // [B5, B6]
7193test { try toUnicodeFail("\xd9\xb1.\xcf\x82\xdf\x9c"); } // [B5, B6]17939test { try toUnicodeFail("\xd9\xb1.\xcf\x82\xdf\x9c"); } // [B5, B6]
17940test { try toAsciiFail("\xd9\xb1.\xcf\x82\xdf\x9c", false); } // [B5, B6]
17941test { try toAsciiFail("\xd9\xb1.\xcf\x82\xdf\x9c", true); } // [B5, B6]
7194test { try toUnicodeFail("\xd9\xb1.\xce\xa3\xdf\x9c"); } // [B5, B6]17942test { try toUnicodeFail("\xd9\xb1.\xce\xa3\xdf\x9c"); } // [B5, B6]
17943test { try toAsciiFail("\xd9\xb1.\xce\xa3\xdf\x9c", false); } // [B5, B6]
17944test { try toAsciiFail("\xd9\xb1.\xce\xa3\xdf\x9c", true); } // [B5, B6]
7195test { try toUnicodeFail("\xd9\xb1.\xcf\x83\xdf\x9c"); } // [B5, B6]17945test { try toUnicodeFail("\xd9\xb1.\xcf\x83\xdf\x9c"); } // [B5, B6]
17946test { try toAsciiFail("\xd9\xb1.\xcf\x83\xdf\x9c", false); } // [B5, B6]
17947test { try toAsciiFail("\xd9\xb1.\xcf\x83\xdf\x9c", true); } // [B5, B6]
7196test { try toUnicodeFail("xn--qib.xn--4xa21s"); } // [B5, B6]17948test { try toUnicodeFail("xn--qib.xn--4xa21s"); } // [B5, B6]
17949test { try toAsciiFail("xn--qib.xn--4xa21s", false); } // [B5, B6]
17950test { try toAsciiFail("xn--qib.xn--4xa21s", true); } // [B5, B6]
7197test { try toUnicodeFail("xn--qib.xn--3xa41s"); } // [B5, B6]17951test { try toUnicodeFail("xn--qib.xn--3xa41s"); } // [B5, B6]
17952test { try toAsciiFail("xn--qib.xn--3xa41s", false); } // [B5, B6]
17953test { try toAsciiFail("xn--qib.xn--3xa41s", true); } // [B5, B6]
7198test { try toUnicodeFail("\xd9\xb1\xef\xbc\x8e\xce\xa3\xdf\x9c"); } // [B5, B6]17954test { try toUnicodeFail("\xd9\xb1\xef\xbc\x8e\xce\xa3\xdf\x9c"); } // [B5, B6]
17955test { try toAsciiFail("\xd9\xb1\xef\xbc\x8e\xce\xa3\xdf\x9c", false); } // [B5, B6]
17956test { try toAsciiFail("\xd9\xb1\xef\xbc\x8e\xce\xa3\xdf\x9c", true); } // [B5, B6]
7199test { try toUnicodeFail("\xd9\xb1\xef\xbc\x8e\xcf\x83\xdf\x9c"); } // [B5, B6]17957test { try toUnicodeFail("\xd9\xb1\xef\xbc\x8e\xcf\x83\xdf\x9c"); } // [B5, B6]
17958test { try toAsciiFail("\xd9\xb1\xef\xbc\x8e\xcf\x83\xdf\x9c", false); } // [B5, B6]
17959test { try toAsciiFail("\xd9\xb1\xef\xbc\x8e\xcf\x83\xdf\x9c", true); } // [B5, B6]
7200test { try toUnicodeFail("\xf1\xbc\x88\xb6\xd8\x85\xef\xbc\x8e\xe0\xa3\x81\xe2\x80\x8d\xf0\x91\x91\x82\xf0\xb1\xbc\xb1"); } // [B2, B3, B5, B6, C2, V7]17960test { try toUnicodeFail("\xf1\xbc\x88\xb6\xd8\x85\xef\xbc\x8e\xe0\xa3\x81\xe2\x80\x8d\xf0\x91\x91\x82\xf0\xb1\xbc\xb1"); } // [B2, B3, B5, B6, C2, V7]
17961test { try toAsciiFail("\xf1\xbc\x88\xb6\xd8\x85\xef\xbc\x8e\xe0\xa3\x81\xe2\x80\x8d\xf0\x91\x91\x82\xf0\xb1\xbc\xb1", false); } // [B2, B3, B5, B6, C2, V7]
17962test { try toAsciiFail("\xf1\xbc\x88\xb6\xd8\x85\xef\xbc\x8e\xe0\xa3\x81\xe2\x80\x8d\xf0\x91\x91\x82\xf0\xb1\xbc\xb1", true); } // [B2, B3, B5, B6, V7]
7201test { try toUnicodeFail("\xf1\xbc\x88\xb6\xd8\x85.\xe0\xa3\x81\xe2\x80\x8d\xf0\x91\x91\x82\xf0\xb1\xbc\xb1"); } // [B2, B3, B5, B6, C2, V7]17963test { try toUnicodeFail("\xf1\xbc\x88\xb6\xd8\x85.\xe0\xa3\x81\xe2\x80\x8d\xf0\x91\x91\x82\xf0\xb1\xbc\xb1"); } // [B2, B3, B5, B6, C2, V7]
17964test { try toAsciiFail("\xf1\xbc\x88\xb6\xd8\x85.\xe0\xa3\x81\xe2\x80\x8d\xf0\x91\x91\x82\xf0\xb1\xbc\xb1", false); } // [B2, B3, B5, B6, C2, V7]
17965test { try toAsciiFail("\xf1\xbc\x88\xb6\xd8\x85.\xe0\xa3\x81\xe2\x80\x8d\xf0\x91\x91\x82\xf0\xb1\xbc\xb1", true); } // [B2, B3, B5, B6, V7]
7202test { try toUnicodeFail("xn--nfb17942h.xn--nzb6708kx3pn"); } // [B2, B3, B5, B6, V7]17966test { try toUnicodeFail("xn--nfb17942h.xn--nzb6708kx3pn"); } // [B2, B3, B5, B6, V7]
17967test { try toAsciiFail("xn--nfb17942h.xn--nzb6708kx3pn", false); } // [B2, B3, B5, B6, V7]
17968test { try toAsciiFail("xn--nfb17942h.xn--nzb6708kx3pn", true); } // [B2, B3, B5, B6, V7]
7203test { try toUnicodeFail("xn--nfb17942h.xn--nzb240jv06otevq"); } // [B2, B3, B5, B6, C2, V7]17969test { try toUnicodeFail("xn--nfb17942h.xn--nzb240jv06otevq"); } // [B2, B3, B5, B6, C2, V7]
17970test { try toAsciiFail("xn--nfb17942h.xn--nzb240jv06otevq", false); } // [B2, B3, B5, B6, C2, V7]
17971test { try toAsciiFail("xn--nfb17942h.xn--nzb240jv06otevq", true); } // [B2, B3, B5, B6, C2, V7]
7204test { try toUnicodeFail("\xf0\x90\xb9\xbe\xf0\x90\x8b\xa9\xf0\x9e\xb5\x9c\xef\xbd\xa1\xe1\xaf\xb2"); } // [B1, V6, V7]17972test { try toUnicodeFail("\xf0\x90\xb9\xbe\xf0\x90\x8b\xa9\xf0\x9e\xb5\x9c\xef\xbd\xa1\xe1\xaf\xb2"); } // [B1, V6, V7]
17973test { try toAsciiFail("\xf0\x90\xb9\xbe\xf0\x90\x8b\xa9\xf0\x9e\xb5\x9c\xef\xbd\xa1\xe1\xaf\xb2", false); } // [B1, V6, V7]
17974test { try toAsciiFail("\xf0\x90\xb9\xbe\xf0\x90\x8b\xa9\xf0\x9e\xb5\x9c\xef\xbd\xa1\xe1\xaf\xb2", true); } // [B1, V6, V7]
7205test { try toUnicodeFail("\xf0\x90\xb9\xbe\xf0\x90\x8b\xa9\xf0\x9e\xb5\x9c\xe3\x80\x82\xe1\xaf\xb2"); } // [B1, V6, V7]17975test { try toUnicodeFail("\xf0\x90\xb9\xbe\xf0\x90\x8b\xa9\xf0\x9e\xb5\x9c\xe3\x80\x82\xe1\xaf\xb2"); } // [B1, V6, V7]
17976test { try toAsciiFail("\xf0\x90\xb9\xbe\xf0\x90\x8b\xa9\xf0\x9e\xb5\x9c\xe3\x80\x82\xe1\xaf\xb2", false); } // [B1, V6, V7]
17977test { try toAsciiFail("\xf0\x90\xb9\xbe\xf0\x90\x8b\xa9\xf0\x9e\xb5\x9c\xe3\x80\x82\xe1\xaf\xb2", true); } // [B1, V6, V7]
7206test { try toUnicodeFail("xn--d97cn8rn44p.xn--0zf"); } // [B1, V6, V7]17978test { try toUnicodeFail("xn--d97cn8rn44p.xn--0zf"); } // [B1, V6, V7]
17979test { try toAsciiFail("xn--d97cn8rn44p.xn--0zf", false); } // [B1, V6, V7]
17980test { try toAsciiFail("xn--d97cn8rn44p.xn--0zf", true); } // [B1, V6, V7]
7207test { try toUnicodeFail("6\xe1\x85\xa0\xe1\xb0\xb3\xf3\xa0\xb8\xa7.\xf2\x9f\x9c\x8a\xe9\x94\xb0\xdc\xac\xcf\x82"); } // [B1, B5, V7]17981test { try toUnicodeFail("6\xe1\x85\xa0\xe1\xb0\xb3\xf3\xa0\xb8\xa7.\xf2\x9f\x9c\x8a\xe9\x94\xb0\xdc\xac\xcf\x82"); } // [B1, B5, V7]
17982test { try toAsciiFail("6\xe1\x85\xa0\xe1\xb0\xb3\xf3\xa0\xb8\xa7.\xf2\x9f\x9c\x8a\xe9\x94\xb0\xdc\xac\xcf\x82", false); } // [B1, B5, V7]
17983test { try toAsciiFail("6\xe1\x85\xa0\xe1\xb0\xb3\xf3\xa0\xb8\xa7.\xf2\x9f\x9c\x8a\xe9\x94\xb0\xdc\xac\xcf\x82", true); } // [B1, B5, V7]
7208test { try toUnicodeFail("6\xe1\x85\xa0\xe1\xb0\xb3\xf3\xa0\xb8\xa7.\xf2\x9f\x9c\x8a\xe9\x94\xb0\xdc\xac\xce\xa3"); } // [B1, B5, V7]17984test { try toUnicodeFail("6\xe1\x85\xa0\xe1\xb0\xb3\xf3\xa0\xb8\xa7.\xf2\x9f\x9c\x8a\xe9\x94\xb0\xdc\xac\xce\xa3"); } // [B1, B5, V7]
17985test { try toAsciiFail("6\xe1\x85\xa0\xe1\xb0\xb3\xf3\xa0\xb8\xa7.\xf2\x9f\x9c\x8a\xe9\x94\xb0\xdc\xac\xce\xa3", false); } // [B1, B5, V7]
17986test { try toAsciiFail("6\xe1\x85\xa0\xe1\xb0\xb3\xf3\xa0\xb8\xa7.\xf2\x9f\x9c\x8a\xe9\x94\xb0\xdc\xac\xce\xa3", true); } // [B1, B5, V7]
7209test { try toUnicodeFail("6\xe1\x85\xa0\xe1\xb0\xb3\xf3\xa0\xb8\xa7.\xf2\x9f\x9c\x8a\xe9\x94\xb0\xdc\xac\xcf\x83"); } // [B1, B5, V7]17987test { try toUnicodeFail("6\xe1\x85\xa0\xe1\xb0\xb3\xf3\xa0\xb8\xa7.\xf2\x9f\x9c\x8a\xe9\x94\xb0\xdc\xac\xcf\x83"); } // [B1, B5, V7]
17988test { try toAsciiFail("6\xe1\x85\xa0\xe1\xb0\xb3\xf3\xa0\xb8\xa7.\xf2\x9f\x9c\x8a\xe9\x94\xb0\xdc\xac\xcf\x83", false); } // [B1, B5, V7]
17989test { try toAsciiFail("6\xe1\x85\xa0\xe1\xb0\xb3\xf3\xa0\xb8\xa7.\xf2\x9f\x9c\x8a\xe9\x94\xb0\xdc\xac\xcf\x83", true); } // [B1, B5, V7]
7210test { try toUnicodeFail("xn--6-iuly4983p.xn--4xa95ohw6pk078g"); } // [B1, B5, V7]17990test { try toUnicodeFail("xn--6-iuly4983p.xn--4xa95ohw6pk078g"); } // [B1, B5, V7]
17991test { try toAsciiFail("xn--6-iuly4983p.xn--4xa95ohw6pk078g", false); } // [B1, B5, V7]
17992test { try toAsciiFail("xn--6-iuly4983p.xn--4xa95ohw6pk078g", true); } // [B1, B5, V7]
7211test { try toUnicodeFail("xn--6-iuly4983p.xn--3xa16ohw6pk078g"); } // [B1, B5, V7]17993test { try toUnicodeFail("xn--6-iuly4983p.xn--3xa16ohw6pk078g"); } // [B1, B5, V7]
17994test { try toAsciiFail("xn--6-iuly4983p.xn--3xa16ohw6pk078g", false); } // [B1, B5, V7]
17995test { try toAsciiFail("xn--6-iuly4983p.xn--3xa16ohw6pk078g", true); } // [B1, B5, V7]
7212test { try toUnicodeFail("xn--6-5bh476ewr517a.xn--4xa95ohw6pk078g"); } // [B1, B5, V7]17996test { try toUnicodeFail("xn--6-5bh476ewr517a.xn--4xa95ohw6pk078g"); } // [B1, B5, V7]
17997test { try toAsciiFail("xn--6-5bh476ewr517a.xn--4xa95ohw6pk078g", false); } // [B1, B5, V7]
17998test { try toAsciiFail("xn--6-5bh476ewr517a.xn--4xa95ohw6pk078g", true); } // [B1, B5, V7]
7213test { try toUnicodeFail("xn--6-5bh476ewr517a.xn--3xa16ohw6pk078g"); } // [B1, B5, V7]17999test { try toUnicodeFail("xn--6-5bh476ewr517a.xn--3xa16ohw6pk078g"); } // [B1, B5, V7]
18000test { try toAsciiFail("xn--6-5bh476ewr517a.xn--3xa16ohw6pk078g", false); } // [B1, B5, V7]
18001test { try toAsciiFail("xn--6-5bh476ewr517a.xn--3xa16ohw6pk078g", true); } // [B1, B5, V7]
7214test { try toUnicodeFail("\xda\xb3\xef\xb8\x84\xf1\x85\x8e\xa6\xf0\x9d\x9f\xbd\xef\xbd\xa1\xf0\x90\xb9\xbd"); } // [B1, B2, V7]18002test { try toUnicodeFail("\xda\xb3\xef\xb8\x84\xf1\x85\x8e\xa6\xf0\x9d\x9f\xbd\xef\xbd\xa1\xf0\x90\xb9\xbd"); } // [B1, B2, V7]
18003test { try toAsciiFail("\xda\xb3\xef\xb8\x84\xf1\x85\x8e\xa6\xf0\x9d\x9f\xbd\xef\xbd\xa1\xf0\x90\xb9\xbd", false); } // [B1, B2, V7]
18004test { try toAsciiFail("\xda\xb3\xef\xb8\x84\xf1\x85\x8e\xa6\xf0\x9d\x9f\xbd\xef\xbd\xa1\xf0\x90\xb9\xbd", true); } // [B1, B2, V7]
7215test { try toUnicodeFail("\xda\xb3\xef\xb8\x84\xf1\x85\x8e\xa67\xe3\x80\x82\xf0\x90\xb9\xbd"); } // [B1, B2, V7]18005test { try toUnicodeFail("\xda\xb3\xef\xb8\x84\xf1\x85\x8e\xa67\xe3\x80\x82\xf0\x90\xb9\xbd"); } // [B1, B2, V7]
18006test { try toAsciiFail("\xda\xb3\xef\xb8\x84\xf1\x85\x8e\xa67\xe3\x80\x82\xf0\x90\xb9\xbd", false); } // [B1, B2, V7]
18007test { try toAsciiFail("\xda\xb3\xef\xb8\x84\xf1\x85\x8e\xa67\xe3\x80\x82\xf0\x90\xb9\xbd", true); } // [B1, B2, V7]
7216test { try toUnicodeFail("xn--7-yuc34665f.xn--1o0d"); } // [B1, B2, V7]18008test { try toUnicodeFail("xn--7-yuc34665f.xn--1o0d"); } // [B1, B2, V7]
18009test { try toAsciiFail("xn--7-yuc34665f.xn--1o0d", false); } // [B1, B2, V7]
18010test { try toAsciiFail("xn--7-yuc34665f.xn--1o0d", true); } // [B1, B2, V7]
7217test { try toUnicodeFail("\xf0\x9e\xae\xa7\xef\xbc\x8e\xe2\x80\x8c\xe2\xab\x9e"); } // [B1, C1, V7]18011test { try toUnicodeFail("\xf0\x9e\xae\xa7\xef\xbc\x8e\xe2\x80\x8c\xe2\xab\x9e"); } // [B1, C1, V7]
18012test { try toAsciiFail("\xf0\x9e\xae\xa7\xef\xbc\x8e\xe2\x80\x8c\xe2\xab\x9e", false); } // [B1, C1, V7]
18013test { try toAsciiFail("\xf0\x9e\xae\xa7\xef\xbc\x8e\xe2\x80\x8c\xe2\xab\x9e", true); } // [B1, V7]
7218test { try toUnicodeFail("\xf0\x9e\xae\xa7.\xe2\x80\x8c\xe2\xab\x9e"); } // [B1, C1, V7]18014test { try toUnicodeFail("\xf0\x9e\xae\xa7.\xe2\x80\x8c\xe2\xab\x9e"); } // [B1, C1, V7]
18015test { try toAsciiFail("\xf0\x9e\xae\xa7.\xe2\x80\x8c\xe2\xab\x9e", false); } // [B1, C1, V7]
18016test { try toAsciiFail("\xf0\x9e\xae\xa7.\xe2\x80\x8c\xe2\xab\x9e", true); } // [B1, V7]
7219test { try toUnicodeFail("xn--pw6h.xn--53i"); } // [B1, V7]18017test { try toUnicodeFail("xn--pw6h.xn--53i"); } // [B1, V7]
18018test { try toAsciiFail("xn--pw6h.xn--53i", false); } // [B1, V7]
18019test { try toAsciiFail("xn--pw6h.xn--53i", true); } // [B1, V7]
7220test { try toUnicodeFail("xn--pw6h.xn--0ug283b"); } // [B1, C1, V7]18020test { try toUnicodeFail("xn--pw6h.xn--0ug283b"); } // [B1, C1, V7]
18021test { try toAsciiFail("xn--pw6h.xn--0ug283b", false); } // [B1, C1, V7]
18022test { try toAsciiFail("xn--pw6h.xn--0ug283b", true); } // [B1, C1, V7]
7221test { try toUnicodeFail("-\xf1\x95\x89\xb4.\xdb\xa0\xe1\xa2\x9a-"); } // [V3, V6, V7]18023test { try toUnicodeFail("-\xf1\x95\x89\xb4.\xdb\xa0\xe1\xa2\x9a-"); } // [V3, V6, V7]
18024test { try toAsciiFail("-\xf1\x95\x89\xb4.\xdb\xa0\xe1\xa2\x9a-", false); } // [V3, V6, V7]
18025test { try toAsciiFail("-\xf1\x95\x89\xb4.\xdb\xa0\xe1\xa2\x9a-", true); } // [V3, V6, V7]
7222test { try toUnicodeFail("xn----qi38c.xn----jxc827k"); } // [V3, V6, V7]18026test { try toUnicodeFail("xn----qi38c.xn----jxc827k"); } // [V3, V6, V7]
18027test { try toAsciiFail("xn----qi38c.xn----jxc827k", false); } // [V3, V6, V7]
18028test { try toAsciiFail("xn----qi38c.xn----jxc827k", true); } // [V3, V6, V7]
7223test { try toUnicodeFail("\xe2\x8c\x81\xe2\x80\x8d\xf0\x91\x84\xb4\xef\xbc\x8e\xe2\x80\x8c\xf0\x9d\x9f\xa9\xd9\xac"); } // [B1, C1, C2]18029test { try toUnicodeFail("\xe2\x8c\x81\xe2\x80\x8d\xf0\x91\x84\xb4\xef\xbc\x8e\xe2\x80\x8c\xf0\x9d\x9f\xa9\xd9\xac"); } // [B1, C1, C2]
18030test { try toAsciiFail("\xe2\x8c\x81\xe2\x80\x8d\xf0\x91\x84\xb4\xef\xbc\x8e\xe2\x80\x8c\xf0\x9d\x9f\xa9\xd9\xac", false); } // [B1, C1, C2]
18031test { try toAsciiFail("\xe2\x8c\x81\xe2\x80\x8d\xf0\x91\x84\xb4\xef\xbc\x8e\xe2\x80\x8c\xf0\x9d\x9f\xa9\xd9\xac", true); } // [B1]
7224test { try toUnicodeFail("\xe2\x8c\x81\xe2\x80\x8d\xf0\x91\x84\xb4.\xe2\x80\x8c7\xd9\xac"); } // [B1, C1, C2]18032test { try toUnicodeFail("\xe2\x8c\x81\xe2\x80\x8d\xf0\x91\x84\xb4.\xe2\x80\x8c7\xd9\xac"); } // [B1, C1, C2]
18033test { try toAsciiFail("\xe2\x8c\x81\xe2\x80\x8d\xf0\x91\x84\xb4.\xe2\x80\x8c7\xd9\xac", false); } // [B1, C1, C2]
18034test { try toAsciiFail("\xe2\x8c\x81\xe2\x80\x8d\xf0\x91\x84\xb4.\xe2\x80\x8c7\xd9\xac", true); } // [B1]
7225test { try toUnicodeFail("xn--nhh5394g.xn--7-xqc"); } // [B1]18035test { try toUnicodeFail("xn--nhh5394g.xn--7-xqc"); } // [B1]
18036test { try toAsciiFail("xn--nhh5394g.xn--7-xqc", false); } // [B1]
18037test { try toAsciiFail("xn--nhh5394g.xn--7-xqc", true); } // [B1]
7226test { try toUnicodeFail("xn--1ug38i2093a.xn--7-xqc297q"); } // [B1, C1, C2]18038test { try toUnicodeFail("xn--1ug38i2093a.xn--7-xqc297q"); } // [B1, C1, C2]
18039test { try toAsciiFail("xn--1ug38i2093a.xn--7-xqc297q", false); } // [B1, C1, C2]
18040test { try toAsciiFail("xn--1ug38i2093a.xn--7-xqc297q", true); } // [B1, C1, C2]
7227test { try toUnicodeFail("\xef\xb8\x92\xef\xb4\x85\xe0\xb8\xb7\xef\xbb\xbc\xe3\x80\x82\xe5\xb2\x93\xe1\xaf\xb2\xf3\xa0\xbe\x83\xe1\xa1\x82"); } // [B1, V7]18041test { try toUnicodeFail("\xef\xb8\x92\xef\xb4\x85\xe0\xb8\xb7\xef\xbb\xbc\xe3\x80\x82\xe5\xb2\x93\xe1\xaf\xb2\xf3\xa0\xbe\x83\xe1\xa1\x82"); } // [B1, V7]
18042test { try toAsciiFail("\xef\xb8\x92\xef\xb4\x85\xe0\xb8\xb7\xef\xbb\xbc\xe3\x80\x82\xe5\xb2\x93\xe1\xaf\xb2\xf3\xa0\xbe\x83\xe1\xa1\x82", false); } // [B1, V7]
18043test { try toAsciiFail("\xef\xb8\x92\xef\xb4\x85\xe0\xb8\xb7\xef\xbb\xbc\xe3\x80\x82\xe5\xb2\x93\xe1\xaf\xb2\xf3\xa0\xbe\x83\xe1\xa1\x82", true); } // [B1, V7]
7228test { try toUnicodeFail("\xe3\x80\x82\xd8\xb5\xd9\x89\xe0\xb8\xb7\xd9\x84\xd8\xa7\xe3\x80\x82\xe5\xb2\x93\xe1\xaf\xb2\xf3\xa0\xbe\x83\xe1\xa1\x82"); } // [V7, X4_2]18044test { try toUnicodeFail("\xe3\x80\x82\xd8\xb5\xd9\x89\xe0\xb8\xb7\xd9\x84\xd8\xa7\xe3\x80\x82\xe5\xb2\x93\xe1\xaf\xb2\xf3\xa0\xbe\x83\xe1\xa1\x82"); } // [V7, X4_2]
18045test { try toAsciiFail("\xe3\x80\x82\xd8\xb5\xd9\x89\xe0\xb8\xb7\xd9\x84\xd8\xa7\xe3\x80\x82\xe5\xb2\x93\xe1\xaf\xb2\xf3\xa0\xbe\x83\xe1\xa1\x82", false); } // [V7, A4_2]
18046test { try toAsciiFail("\xe3\x80\x82\xd8\xb5\xd9\x89\xe0\xb8\xb7\xd9\x84\xd8\xa7\xe3\x80\x82\xe5\xb2\x93\xe1\xaf\xb2\xf3\xa0\xbe\x83\xe1\xa1\x82", true); } // [V7, A4_2]
7229test { try toUnicodeFail(".xn--mgb1a7bt462h.xn--17e10qe61f9r71s"); } // [V7, X4_2]18047test { try toUnicodeFail(".xn--mgb1a7bt462h.xn--17e10qe61f9r71s"); } // [V7, X4_2]
18048test { try toAsciiFail(".xn--mgb1a7bt462h.xn--17e10qe61f9r71s", false); } // [V7, A4_2]
18049test { try toAsciiFail(".xn--mgb1a7bt462h.xn--17e10qe61f9r71s", true); } // [V7, A4_2]
7230test { try toUnicodeFail("xn--mgb1a7bt462hf267a.xn--17e10qe61f9r71s"); } // [B1, V7]18050test { try toUnicodeFail("xn--mgb1a7bt462hf267a.xn--17e10qe61f9r71s"); } // [B1, V7]
18051test { try toAsciiFail("xn--mgb1a7bt462hf267a.xn--17e10qe61f9r71s", false); } // [B1, V7]
18052test { try toAsciiFail("xn--mgb1a7bt462hf267a.xn--17e10qe61f9r71s", true); } // [B1, V7]
7231test { try toUnicodeFail("\xf0\x90\xb9\xa8\xe3\x80\x828\xf0\x91\x81\x86"); } // [B1]18053test { try toUnicodeFail("\xf0\x90\xb9\xa8\xe3\x80\x828\xf0\x91\x81\x86"); } // [B1]
18054test { try toAsciiFail("\xf0\x90\xb9\xa8\xe3\x80\x828\xf0\x91\x81\x86", false); } // [B1]
18055test { try toAsciiFail("\xf0\x90\xb9\xa8\xe3\x80\x828\xf0\x91\x81\x86", true); } // [B1]
7232test { try toUnicodeFail("xn--go0d.xn--8-yu7i"); } // [B1]18056test { try toUnicodeFail("xn--go0d.xn--8-yu7i"); } // [B1]
18057test { try toAsciiFail("xn--go0d.xn--8-yu7i", false); } // [B1]
18058test { try toAsciiFail("xn--go0d.xn--8-yu7i", true); } // [B1]
7233test { try toUnicodeFail("\xf0\x9e\x80\x95\xe0\xb5\x83\xef\xbc\x8e\xea\xa1\x9a\xe0\xa3\xba\xf0\x90\xb9\xb0\xe0\xb5\x84"); } // [B1, B5, B6, V6]18059test { try toUnicodeFail("\xf0\x9e\x80\x95\xe0\xb5\x83\xef\xbc\x8e\xea\xa1\x9a\xe0\xa3\xba\xf0\x90\xb9\xb0\xe0\xb5\x84"); } // [B1, B5, B6, V6]
18060test { try toAsciiFail("\xf0\x9e\x80\x95\xe0\xb5\x83\xef\xbc\x8e\xea\xa1\x9a\xe0\xa3\xba\xf0\x90\xb9\xb0\xe0\xb5\x84", false); } // [B1, B5, B6, V6]
18061test { try toAsciiFail("\xf0\x9e\x80\x95\xe0\xb5\x83\xef\xbc\x8e\xea\xa1\x9a\xe0\xa3\xba\xf0\x90\xb9\xb0\xe0\xb5\x84", true); } // [B1, B5, B6, V6]
7234test { try toUnicodeFail("\xf0\x9e\x80\x95\xe0\xb5\x83.\xea\xa1\x9a\xe0\xa3\xba\xf0\x90\xb9\xb0\xe0\xb5\x84"); } // [B1, B5, B6, V6]18062test { try toUnicodeFail("\xf0\x9e\x80\x95\xe0\xb5\x83.\xea\xa1\x9a\xe0\xa3\xba\xf0\x90\xb9\xb0\xe0\xb5\x84"); } // [B1, B5, B6, V6]
18063test { try toAsciiFail("\xf0\x9e\x80\x95\xe0\xb5\x83.\xea\xa1\x9a\xe0\xa3\xba\xf0\x90\xb9\xb0\xe0\xb5\x84", false); } // [B1, B5, B6, V6]
18064test { try toAsciiFail("\xf0\x9e\x80\x95\xe0\xb5\x83.\xea\xa1\x9a\xe0\xa3\xba\xf0\x90\xb9\xb0\xe0\xb5\x84", true); } // [B1, B5, B6, V6]
7235test { try toUnicodeFail("xn--mxc5210v.xn--90b01t8u2p1ltd"); } // [B1, B5, B6, V6]18065test { try toUnicodeFail("xn--mxc5210v.xn--90b01t8u2p1ltd"); } // [B1, B5, B6, V6]
18066test { try toAsciiFail("xn--mxc5210v.xn--90b01t8u2p1ltd", false); } // [B1, B5, B6, V6]
18067test { try toAsciiFail("xn--mxc5210v.xn--90b01t8u2p1ltd", true); } // [B1, B5, B6, V6]
7236test { try toUnicodeFail("\xf3\x86\xa9\x8f\xf0\x90\xa6\xb9\xcc\x83\xef\xbd\xa1\xf3\xa0\x8d\x85"); } // [B1, B5, B6, V7]18068test { try toUnicodeFail("\xf3\x86\xa9\x8f\xf0\x90\xa6\xb9\xcc\x83\xef\xbd\xa1\xf3\xa0\x8d\x85"); } // [B1, B5, B6, V7]
18069test { try toAsciiFail("\xf3\x86\xa9\x8f\xf0\x90\xa6\xb9\xcc\x83\xef\xbd\xa1\xf3\xa0\x8d\x85", false); } // [B1, B5, B6, V7]
18070test { try toAsciiFail("\xf3\x86\xa9\x8f\xf0\x90\xa6\xb9\xcc\x83\xef\xbd\xa1\xf3\xa0\x8d\x85", true); } // [B1, B5, B6, V7]
7237test { try toUnicodeFail("\xf3\x86\xa9\x8f\xf0\x90\xa6\xb9\xcc\x83\xe3\x80\x82\xf3\xa0\x8d\x85"); } // [B1, B5, B6, V7]18071test { try toUnicodeFail("\xf3\x86\xa9\x8f\xf0\x90\xa6\xb9\xcc\x83\xe3\x80\x82\xf3\xa0\x8d\x85"); } // [B1, B5, B6, V7]
18072test { try toAsciiFail("\xf3\x86\xa9\x8f\xf0\x90\xa6\xb9\xcc\x83\xe3\x80\x82\xf3\xa0\x8d\x85", false); } // [B1, B5, B6, V7]
18073test { try toAsciiFail("\xf3\x86\xa9\x8f\xf0\x90\xa6\xb9\xcc\x83\xe3\x80\x82\xf3\xa0\x8d\x85", true); } // [B1, B5, B6, V7]
7238test { try toUnicodeFail("xn--nsa1265kp9z9e.xn--xt36e"); } // [B1, B5, B6, V7]18074test { try toUnicodeFail("xn--nsa1265kp9z9e.xn--xt36e"); } // [B1, B5, B6, V7]
18075test { try toAsciiFail("xn--nsa1265kp9z9e.xn--xt36e", false); } // [B1, B5, B6, V7]
18076test { try toAsciiFail("xn--nsa1265kp9z9e.xn--xt36e", true); } // [B1, B5, B6, V7]
7239test { try toUnicodeFail("\xe1\xa2\x8c\xef\xbc\x8e-\xe0\xa1\x9a"); } // [V3]18077test { try toUnicodeFail("\xe1\xa2\x8c\xef\xbc\x8e-\xe0\xa1\x9a"); } // [V3]
18078test { try toAsciiFail("\xe1\xa2\x8c\xef\xbc\x8e-\xe0\xa1\x9a", false); } // [V3]
18079test { try toAsciiFail("\xe1\xa2\x8c\xef\xbc\x8e-\xe0\xa1\x9a", true); } // [V3]
7240test { try toUnicodeFail("\xe1\xa2\x8c.-\xe0\xa1\x9a"); } // [V3]18080test { try toUnicodeFail("\xe1\xa2\x8c.-\xe0\xa1\x9a"); } // [V3]
18081test { try toAsciiFail("\xe1\xa2\x8c.-\xe0\xa1\x9a", false); } // [V3]
18082test { try toAsciiFail("\xe1\xa2\x8c.-\xe0\xa1\x9a", true); } // [V3]
7241test { try toUnicodeFail("xn--59e.xn----5jd"); } // [V3]18083test { try toUnicodeFail("xn--59e.xn----5jd"); } // [V3]
18084test { try toAsciiFail("xn--59e.xn----5jd", false); } // [V3]
18085test { try toAsciiFail("xn--59e.xn----5jd", true); } // [V3]
7242test { try toUnicodeFail("\xf0\xa5\x9b\x9b\xf0\x91\x98\xb6\xef\xbd\xa1\xf0\x90\xb9\xac\xf0\x90\xb2\xb8\xe0\xaf\x8d"); } // [B1, V7]18086test { try toUnicodeFail("\xf0\xa5\x9b\x9b\xf0\x91\x98\xb6\xef\xbd\xa1\xf0\x90\xb9\xac\xf0\x90\xb2\xb8\xe0\xaf\x8d"); } // [B1, V7]
18087test { try toAsciiFail("\xf0\xa5\x9b\x9b\xf0\x91\x98\xb6\xef\xbd\xa1\xf0\x90\xb9\xac\xf0\x90\xb2\xb8\xe0\xaf\x8d", false); } // [B1, V7]
18088test { try toAsciiFail("\xf0\xa5\x9b\x9b\xf0\x91\x98\xb6\xef\xbd\xa1\xf0\x90\xb9\xac\xf0\x90\xb2\xb8\xe0\xaf\x8d", true); } // [B1, V7]
7243test { try toUnicodeFail("\xf0\xa5\x9b\x9b\xf0\x91\x98\xb6\xe3\x80\x82\xf0\x90\xb9\xac\xf0\x90\xb2\xb8\xe0\xaf\x8d"); } // [B1, V7]18089test { try toUnicodeFail("\xf0\xa5\x9b\x9b\xf0\x91\x98\xb6\xe3\x80\x82\xf0\x90\xb9\xac\xf0\x90\xb2\xb8\xe0\xaf\x8d"); } // [B1, V7]
18090test { try toAsciiFail("\xf0\xa5\x9b\x9b\xf0\x91\x98\xb6\xe3\x80\x82\xf0\x90\xb9\xac\xf0\x90\xb2\xb8\xe0\xaf\x8d", false); } // [B1, V7]
18091test { try toAsciiFail("\xf0\xa5\x9b\x9b\xf0\x91\x98\xb6\xe3\x80\x82\xf0\x90\xb9\xac\xf0\x90\xb2\xb8\xe0\xaf\x8d", true); } // [B1, V7]
7244test { try toUnicodeFail("xn--jb2dj685c.xn--xmc5562kmcb"); } // [B1, V7]18092test { try toUnicodeFail("xn--jb2dj685c.xn--xmc5562kmcb"); } // [B1, V7]
18093test { try toAsciiFail("xn--jb2dj685c.xn--xmc5562kmcb", false); } // [B1, V7]
18094test { try toAsciiFail("xn--jb2dj685c.xn--xmc5562kmcb", true); } // [B1, V7]
7245test { try toUnicodeFail("\xe1\x82\xb0\xdd\xbf\xef\xbc\x8e\xe2\x80\x8c"); } // [B1, B5, B6, C1]18095test { try toUnicodeFail("\xe1\x82\xb0\xdd\xbf\xef\xbc\x8e\xe2\x80\x8c"); } // [B1, B5, B6, C1]
18096test { try toAsciiFail("\xe1\x82\xb0\xdd\xbf\xef\xbc\x8e\xe2\x80\x8c", false); } // [B1, B5, B6, C1]
18097test { try toAsciiFail("\xe1\x82\xb0\xdd\xbf\xef\xbc\x8e\xe2\x80\x8c", true); } // [B5, B6, A4_2]
7246test { try toUnicodeFail("\xe1\x82\xb0\xdd\xbf.\xe2\x80\x8c"); } // [B1, B5, B6, C1]18098test { try toUnicodeFail("\xe1\x82\xb0\xdd\xbf.\xe2\x80\x8c"); } // [B1, B5, B6, C1]
18099test { try toAsciiFail("\xe1\x82\xb0\xdd\xbf.\xe2\x80\x8c", false); } // [B1, B5, B6, C1]
18100test { try toAsciiFail("\xe1\x82\xb0\xdd\xbf.\xe2\x80\x8c", true); } // [B5, B6, A4_2]
7247test { try toUnicodeFail("\xe2\xb4\x90\xdd\xbf.\xe2\x80\x8c"); } // [B1, B5, B6, C1]18101test { try toUnicodeFail("\xe2\xb4\x90\xdd\xbf.\xe2\x80\x8c"); } // [B1, B5, B6, C1]
18102test { try toAsciiFail("\xe2\xb4\x90\xdd\xbf.\xe2\x80\x8c", false); } // [B1, B5, B6, C1]
18103test { try toAsciiFail("\xe2\xb4\x90\xdd\xbf.\xe2\x80\x8c", true); } // [B5, B6, A4_2]
7248test { try toUnicodeFail("xn--gqb743q."); } // [B5, B6]18104test { try toUnicodeFail("xn--gqb743q."); } // [B5, B6]
18105test { try toAsciiFail("xn--gqb743q.", false); } // [B5, B6, A4_2]
18106test { try toAsciiFail("xn--gqb743q.", true); } // [B5, B6, A4_2]
7249test { try toUnicodeFail("xn--gqb743q.xn--0ug"); } // [B1, B5, B6, C1]18107test { try toUnicodeFail("xn--gqb743q.xn--0ug"); } // [B1, B5, B6, C1]
18108test { try toAsciiFail("xn--gqb743q.xn--0ug", false); } // [B1, B5, B6, C1]
18109test { try toAsciiFail("xn--gqb743q.xn--0ug", true); } // [B1, B5, B6, C1]
7250test { try toUnicodeFail("\xe2\xb4\x90\xdd\xbf\xef\xbc\x8e\xe2\x80\x8c"); } // [B1, B5, B6, C1]18110test { try toUnicodeFail("\xe2\xb4\x90\xdd\xbf\xef\xbc\x8e\xe2\x80\x8c"); } // [B1, B5, B6, C1]
18111test { try toAsciiFail("\xe2\xb4\x90\xdd\xbf\xef\xbc\x8e\xe2\x80\x8c", false); } // [B1, B5, B6, C1]
18112test { try toAsciiFail("\xe2\xb4\x90\xdd\xbf\xef\xbc\x8e\xe2\x80\x8c", true); } // [B5, B6, A4_2]
7251test { try toUnicodeFail("xn--gqb918b."); } // [B5, B6, V7]18113test { try toUnicodeFail("xn--gqb918b."); } // [B5, B6, V7]
18114test { try toAsciiFail("xn--gqb918b.", false); } // [B5, B6, V7, A4_2]
18115test { try toAsciiFail("xn--gqb918b.", true); } // [B5, B6, V7, A4_2]
7252test { try toUnicodeFail("xn--gqb918b.xn--0ug"); } // [B1, B5, B6, C1, V7]18116test { try toUnicodeFail("xn--gqb918b.xn--0ug"); } // [B1, B5, B6, C1, V7]
18117test { try toAsciiFail("xn--gqb918b.xn--0ug", false); } // [B1, B5, B6, C1, V7]
18118test { try toAsciiFail("xn--gqb918b.xn--0ug", true); } // [B1, B5, B6, C1, V7]
7253test { try toUnicodeFail("\xf0\x9f\x84\x85\xf0\x91\xb2\x9e-\xe2\x92\x88\xe3\x80\x82\xe2\x80\x8d\xe1\xa0\xa9\xda\xa5"); } // [B1, C2, V7, U1]18119test { try toUnicodeFail("\xf0\x9f\x84\x85\xf0\x91\xb2\x9e-\xe2\x92\x88\xe3\x80\x82\xe2\x80\x8d\xe1\xa0\xa9\xda\xa5"); } // [B1, C2, V7, U1]
18120test { try toAsciiFail("\xf0\x9f\x84\x85\xf0\x91\xb2\x9e-\xe2\x92\x88\xe3\x80\x82\xe2\x80\x8d\xe1\xa0\xa9\xda\xa5", false); } // [B1, C2, V7, U1]
18121test { try toAsciiFail("\xf0\x9f\x84\x85\xf0\x91\xb2\x9e-\xe2\x92\x88\xe3\x80\x82\xe2\x80\x8d\xe1\xa0\xa9\xda\xa5", true); } // [B1, B5, B6, V7, U1]
7254test { try toUnicodeFail("4,\xf0\x91\xb2\x9e-1.\xe3\x80\x82\xe2\x80\x8d\xe1\xa0\xa9\xda\xa5"); } // [B1, C2, U1, X4_2]18122test { try toUnicodeFail("4,\xf0\x91\xb2\x9e-1.\xe3\x80\x82\xe2\x80\x8d\xe1\xa0\xa9\xda\xa5"); } // [B1, C2, U1, X4_2]
18123test { try toAsciiFail("4,\xf0\x91\xb2\x9e-1.\xe3\x80\x82\xe2\x80\x8d\xe1\xa0\xa9\xda\xa5", false); } // [B1, C2, U1, A4_2]
18124test { try toAsciiFail("4,\xf0\x91\xb2\x9e-1.\xe3\x80\x82\xe2\x80\x8d\xe1\xa0\xa9\xda\xa5", true); } // [B1, B5, B6, U1, A4_2]
7255test { try toUnicodeFail("xn--4,-1-w401a..xn--7jb180g"); } // [B1, B5, B6, U1, X4_2]18125test { try toUnicodeFail("xn--4,-1-w401a..xn--7jb180g"); } // [B1, B5, B6, U1, X4_2]
18126test { try toAsciiFail("xn--4,-1-w401a..xn--7jb180g", false); } // [B1, B5, B6, U1, A4_2]
18127test { try toAsciiFail("xn--4,-1-w401a..xn--7jb180g", true); } // [B1, B5, B6, U1, A4_2]
7256test { try toUnicodeFail("xn--4,-1-w401a..xn--7jb180gexf"); } // [B1, C2, U1, X4_2]18128test { try toUnicodeFail("xn--4,-1-w401a..xn--7jb180gexf"); } // [B1, C2, U1, X4_2]
18129test { try toAsciiFail("xn--4,-1-w401a..xn--7jb180gexf", false); } // [B1, C2, U1, A4_2]
18130test { try toAsciiFail("xn--4,-1-w401a..xn--7jb180gexf", true); } // [B1, C2, U1, A4_2]
7257test { try toUnicodeFail("xn--4,--je4aw745l.xn--7jb180g"); } // [B1, B5, B6, V7, U1]18131test { try toUnicodeFail("xn--4,--je4aw745l.xn--7jb180g"); } // [B1, B5, B6, V7, U1]
18132test { try toAsciiFail("xn--4,--je4aw745l.xn--7jb180g", false); } // [B1, B5, B6, V7, U1]
18133test { try toAsciiFail("xn--4,--je4aw745l.xn--7jb180g", true); } // [B1, B5, B6, V7, U1]
7258test { try toUnicodeFail("xn--4,--je4aw745l.xn--7jb180gexf"); } // [B1, C2, V7, U1]18134test { try toUnicodeFail("xn--4,--je4aw745l.xn--7jb180gexf"); } // [B1, C2, V7, U1]
18135test { try toAsciiFail("xn--4,--je4aw745l.xn--7jb180gexf", false); } // [B1, C2, V7, U1]
18136test { try toAsciiFail("xn--4,--je4aw745l.xn--7jb180gexf", true); } // [B1, C2, V7, U1]
7259test { try toUnicodeFail("xn----ecp8796hjtvg.xn--7jb180g"); } // [B1, B5, B6, V7]18137test { try toUnicodeFail("xn----ecp8796hjtvg.xn--7jb180g"); } // [B1, B5, B6, V7]
18138test { try toAsciiFail("xn----ecp8796hjtvg.xn--7jb180g", false); } // [B1, B5, B6, V7]
18139test { try toAsciiFail("xn----ecp8796hjtvg.xn--7jb180g", true); } // [B1, B5, B6, V7]
7260test { try toUnicodeFail("xn----ecp8796hjtvg.xn--7jb180gexf"); } // [B1, C2, V7]18140test { try toUnicodeFail("xn----ecp8796hjtvg.xn--7jb180gexf"); } // [B1, C2, V7]
18141test { try toAsciiFail("xn----ecp8796hjtvg.xn--7jb180gexf", false); } // [B1, C2, V7]
18142test { try toAsciiFail("xn----ecp8796hjtvg.xn--7jb180gexf", true); } // [B1, C2, V7]
7261test { try toUnicodeFail("\xf1\x97\x80\xa4\xe3\x80\x82\xf0\x9e\xa4\xaa\xf2\xae\xbf\x8b"); } // [B2, B3, V7]18143test { try toUnicodeFail("\xf1\x97\x80\xa4\xe3\x80\x82\xf0\x9e\xa4\xaa\xf2\xae\xbf\x8b"); } // [B2, B3, V7]
18144test { try toAsciiFail("\xf1\x97\x80\xa4\xe3\x80\x82\xf0\x9e\xa4\xaa\xf2\xae\xbf\x8b", false); } // [B2, B3, V7]
18145test { try toAsciiFail("\xf1\x97\x80\xa4\xe3\x80\x82\xf0\x9e\xa4\xaa\xf2\xae\xbf\x8b", true); } // [B2, B3, V7]
7262test { try toUnicodeFail("\xf1\x97\x80\xa4\xe3\x80\x82\xf0\x9e\xa4\x88\xf2\xae\xbf\x8b"); } // [B2, B3, V7]18146test { try toUnicodeFail("\xf1\x97\x80\xa4\xe3\x80\x82\xf0\x9e\xa4\x88\xf2\xae\xbf\x8b"); } // [B2, B3, V7]
18147test { try toAsciiFail("\xf1\x97\x80\xa4\xe3\x80\x82\xf0\x9e\xa4\x88\xf2\xae\xbf\x8b", false); } // [B2, B3, V7]
18148test { try toAsciiFail("\xf1\x97\x80\xa4\xe3\x80\x82\xf0\x9e\xa4\x88\xf2\xae\xbf\x8b", true); } // [B2, B3, V7]
7263test { try toUnicodeFail("xn--4240a.xn--ie6h83808a"); } // [B2, B3, V7]18149test { try toUnicodeFail("xn--4240a.xn--ie6h83808a"); } // [B2, B3, V7]
18150test { try toAsciiFail("xn--4240a.xn--ie6h83808a", false); } // [B2, B3, V7]
18151test { try toAsciiFail("xn--4240a.xn--ie6h83808a", true); } // [B2, B3, V7]
7264test { try toUnicodeFail("\xd7\x81\xdb\xb2\xef\xbd\xa1\xf0\x90\xae\x8a\xd9\xac\xf0\x9d\xa8\x8a\xe9\x84\xa8"); } // [B1, B2, B3, V6]18152test { try toUnicodeFail("\xd7\x81\xdb\xb2\xef\xbd\xa1\xf0\x90\xae\x8a\xd9\xac\xf0\x9d\xa8\x8a\xe9\x84\xa8"); } // [B1, B2, B3, V6]
18153test { try toAsciiFail("\xd7\x81\xdb\xb2\xef\xbd\xa1\xf0\x90\xae\x8a\xd9\xac\xf0\x9d\xa8\x8a\xe9\x84\xa8", false); } // [B1, B2, B3, V6]
18154test { try toAsciiFail("\xd7\x81\xdb\xb2\xef\xbd\xa1\xf0\x90\xae\x8a\xd9\xac\xf0\x9d\xa8\x8a\xe9\x84\xa8", true); } // [B1, B2, B3, V6]
7265test { try toUnicodeFail("\xd7\x81\xdb\xb2\xe3\x80\x82\xf0\x90\xae\x8a\xd9\xac\xf0\x9d\xa8\x8a\xe9\x84\xa8"); } // [B1, B2, B3, V6]18155test { try toUnicodeFail("\xd7\x81\xdb\xb2\xe3\x80\x82\xf0\x90\xae\x8a\xd9\xac\xf0\x9d\xa8\x8a\xe9\x84\xa8"); } // [B1, B2, B3, V6]
18156test { try toAsciiFail("\xd7\x81\xdb\xb2\xe3\x80\x82\xf0\x90\xae\x8a\xd9\xac\xf0\x9d\xa8\x8a\xe9\x84\xa8", false); } // [B1, B2, B3, V6]
18157test { try toAsciiFail("\xd7\x81\xdb\xb2\xe3\x80\x82\xf0\x90\xae\x8a\xd9\xac\xf0\x9d\xa8\x8a\xe9\x84\xa8", true); } // [B1, B2, B3, V6]
7266test { try toUnicodeFail("xn--pdb42d.xn--lib6412enztdwv6h"); } // [B1, B2, B3, V6]18158test { try toUnicodeFail("xn--pdb42d.xn--lib6412enztdwv6h"); } // [B1, B2, B3, V6]
18159test { try toAsciiFail("xn--pdb42d.xn--lib6412enztdwv6h", false); } // [B1, B2, B3, V6]
18160test { try toAsciiFail("xn--pdb42d.xn--lib6412enztdwv6h", true); } // [B1, B2, B3, V6]
7267test { try toUnicodeFail("\xf0\x9e\xad\xb3-\xea\xa1\x81\xe3\x80\x82\xe1\xa9\xa9\xe0\xaf\x8d-"); } // [B1, B2, B3, V3, V6, V7]18161test { try toUnicodeFail("\xf0\x9e\xad\xb3-\xea\xa1\x81\xe3\x80\x82\xe1\xa9\xa9\xe0\xaf\x8d-"); } // [B1, B2, B3, V3, V6, V7]
18162test { try toAsciiFail("\xf0\x9e\xad\xb3-\xea\xa1\x81\xe3\x80\x82\xe1\xa9\xa9\xe0\xaf\x8d-", false); } // [B1, B2, B3, V3, V6, V7]
18163test { try toAsciiFail("\xf0\x9e\xad\xb3-\xea\xa1\x81\xe3\x80\x82\xe1\xa9\xa9\xe0\xaf\x8d-", true); } // [B1, B2, B3, V3, V6, V7]
7268test { try toUnicodeFail("xn----be4e4276f.xn----lze333i"); } // [B1, B2, B3, V3, V6, V7]18164test { try toUnicodeFail("xn----be4e4276f.xn----lze333i"); } // [B1, B2, B3, V3, V6, V7]
18165test { try toAsciiFail("xn----be4e4276f.xn----lze333i", false); } // [B1, B2, B3, V3, V6, V7]
18166test { try toAsciiFail("xn----be4e4276f.xn----lze333i", true); } // [B1, B2, B3, V3, V6, V7]
7269test { try toUnicodeFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2\xef\xbc\x8e\xc3\x9f"); } // [V6, V7]18167test { try toUnicodeFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2\xef\xbc\x8e\xc3\x9f"); } // [V6, V7]
18168test { try toAsciiFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2\xef\xbc\x8e\xc3\x9f", false); } // [V6, V7]
18169test { try toAsciiFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2\xef\xbc\x8e\xc3\x9f", true); } // [V6, V7]
7270test { try toUnicodeFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2.\xc3\x9f"); } // [V6, V7]18170test { try toUnicodeFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2.\xc3\x9f"); } // [V6, V7]
18171test { try toAsciiFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2.\xc3\x9f", false); } // [V6, V7]
18172test { try toAsciiFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2.\xc3\x9f", true); } // [V6, V7]
7271test { try toUnicodeFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2.SS"); } // [V6, V7]18173test { try toUnicodeFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2.SS"); } // [V6, V7]
18174test { try toAsciiFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2.SS", false); } // [V6, V7]
18175test { try toAsciiFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2.SS", true); } // [V6, V7]
7272test { try toUnicodeFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2.ss"); } // [V6, V7]18176test { try toUnicodeFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2.ss"); } // [V6, V7]
18177test { try toAsciiFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2.ss", false); } // [V6, V7]
18178test { try toAsciiFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2.ss", true); } // [V6, V7]
7273test { try toUnicodeFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2.Ss"); } // [V6, V7]18179test { try toUnicodeFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2.Ss"); } // [V6, V7]
18180test { try toAsciiFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2.Ss", false); } // [V6, V7]
18181test { try toAsciiFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2.Ss", true); } // [V6, V7]
7274test { try toUnicodeFail("xn----9tg11172akr8b.ss"); } // [V6, V7]18182test { try toUnicodeFail("xn----9tg11172akr8b.ss"); } // [V6, V7]
18183test { try toAsciiFail("xn----9tg11172akr8b.ss", false); } // [V6, V7]
18184test { try toAsciiFail("xn----9tg11172akr8b.ss", true); } // [V6, V7]
7275test { try toUnicodeFail("xn----9tg11172akr8b.xn--zca"); } // [V6, V7]18185test { try toUnicodeFail("xn----9tg11172akr8b.xn--zca"); } // [V6, V7]
18186test { try toAsciiFail("xn----9tg11172akr8b.xn--zca", false); } // [V6, V7]
18187test { try toAsciiFail("xn----9tg11172akr8b.xn--zca", true); } // [V6, V7]
7276test { try toUnicodeFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2\xef\xbc\x8eSS"); } // [V6, V7]18188test { try toUnicodeFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2\xef\xbc\x8eSS"); } // [V6, V7]
18189test { try toAsciiFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2\xef\xbc\x8eSS", false); } // [V6, V7]
18190test { try toAsciiFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2\xef\xbc\x8eSS", true); } // [V6, V7]
7277test { try toUnicodeFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2\xef\xbc\x8ess"); } // [V6, V7]18191test { try toUnicodeFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2\xef\xbc\x8ess"); } // [V6, V7]
18192test { try toAsciiFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2\xef\xbc\x8ess", false); } // [V6, V7]
18193test { try toAsciiFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2\xef\xbc\x8ess", true); } // [V6, V7]
7278test { try toUnicodeFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2\xef\xbc\x8eSs"); } // [V6, V7]18194test { try toUnicodeFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2\xef\xbc\x8eSs"); } // [V6, V7]
18195test { try toAsciiFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2\xef\xbc\x8eSs", false); } // [V6, V7]
18196test { try toAsciiFail("\xe1\x80\xb9-\xf0\x9a\xae\xad\xf0\x9f\x9e\xa2\xef\xbc\x8eSs", true); } // [V6, V7]
7279test { try toUnicodeFail("\xef\xb3\xb2-\xe2\x80\x8c\xef\xbd\xa1\xe1\x82\xbf\xe2\x80\x8c\xe2\x90\xa3"); } // [B3, B6, C1]18197test { try toUnicodeFail("\xef\xb3\xb2-\xe2\x80\x8c\xef\xbd\xa1\xe1\x82\xbf\xe2\x80\x8c\xe2\x90\xa3"); } // [B3, B6, C1]
18198test { try toAsciiFail("\xef\xb3\xb2-\xe2\x80\x8c\xef\xbd\xa1\xe1\x82\xbf\xe2\x80\x8c\xe2\x90\xa3", false); } // [B3, B6, C1]
18199test { try toAsciiFail("\xef\xb3\xb2-\xe2\x80\x8c\xef\xbd\xa1\xe1\x82\xbf\xe2\x80\x8c\xe2\x90\xa3", true); } // [B3, B6, V3]
7280test { try toUnicodeFail("\xd9\x80\xd9\x8e\xd9\x91-\xe2\x80\x8c\xe3\x80\x82\xe1\x82\xbf\xe2\x80\x8c\xe2\x90\xa3"); } // [B3, B6, C1]18200test { try toUnicodeFail("\xd9\x80\xd9\x8e\xd9\x91-\xe2\x80\x8c\xe3\x80\x82\xe1\x82\xbf\xe2\x80\x8c\xe2\x90\xa3"); } // [B3, B6, C1]
18201test { try toAsciiFail("\xd9\x80\xd9\x8e\xd9\x91-\xe2\x80\x8c\xe3\x80\x82\xe1\x82\xbf\xe2\x80\x8c\xe2\x90\xa3", false); } // [B3, B6, C1]
18202test { try toAsciiFail("\xd9\x80\xd9\x8e\xd9\x91-\xe2\x80\x8c\xe3\x80\x82\xe1\x82\xbf\xe2\x80\x8c\xe2\x90\xa3", true); } // [B3, B6, V3]
7281test { try toUnicodeFail("\xd9\x80\xd9\x8e\xd9\x91-\xe2\x80\x8c\xe3\x80\x82\xe2\xb4\x9f\xe2\x80\x8c\xe2\x90\xa3"); } // [B3, B6, C1]18203test { try toUnicodeFail("\xd9\x80\xd9\x8e\xd9\x91-\xe2\x80\x8c\xe3\x80\x82\xe2\xb4\x9f\xe2\x80\x8c\xe2\x90\xa3"); } // [B3, B6, C1]
18204test { try toAsciiFail("\xd9\x80\xd9\x8e\xd9\x91-\xe2\x80\x8c\xe3\x80\x82\xe2\xb4\x9f\xe2\x80\x8c\xe2\x90\xa3", false); } // [B3, B6, C1]
18205test { try toAsciiFail("\xd9\x80\xd9\x8e\xd9\x91-\xe2\x80\x8c\xe3\x80\x82\xe2\xb4\x9f\xe2\x80\x8c\xe2\x90\xa3", true); } // [B3, B6, V3]
7282test { try toUnicodeFail("xn----eoc6bm.xn--xph904a"); } // [B3, B6, V3]18206test { try toUnicodeFail("xn----eoc6bm.xn--xph904a"); } // [B3, B6, V3]
18207test { try toAsciiFail("xn----eoc6bm.xn--xph904a", false); } // [B3, B6, V3]
18208test { try toAsciiFail("xn----eoc6bm.xn--xph904a", true); } // [B3, B6, V3]
7283test { try toUnicodeFail("xn----eoc6bm0504a.xn--0ug13nd0j"); } // [B3, B6, C1]18209test { try toUnicodeFail("xn----eoc6bm0504a.xn--0ug13nd0j"); } // [B3, B6, C1]
18210test { try toAsciiFail("xn----eoc6bm0504a.xn--0ug13nd0j", false); } // [B3, B6, C1]
18211test { try toAsciiFail("xn----eoc6bm0504a.xn--0ug13nd0j", true); } // [B3, B6, C1]
7284test { try toUnicodeFail("\xef\xb3\xb2-\xe2\x80\x8c\xef\xbd\xa1\xe2\xb4\x9f\xe2\x80\x8c\xe2\x90\xa3"); } // [B3, B6, C1]18212test { try toUnicodeFail("\xef\xb3\xb2-\xe2\x80\x8c\xef\xbd\xa1\xe2\xb4\x9f\xe2\x80\x8c\xe2\x90\xa3"); } // [B3, B6, C1]
18213test { try toAsciiFail("\xef\xb3\xb2-\xe2\x80\x8c\xef\xbd\xa1\xe2\xb4\x9f\xe2\x80\x8c\xe2\x90\xa3", false); } // [B3, B6, C1]
18214test { try toAsciiFail("\xef\xb3\xb2-\xe2\x80\x8c\xef\xbd\xa1\xe2\xb4\x9f\xe2\x80\x8c\xe2\x90\xa3", true); } // [B3, B6, V3]
7285test { try toUnicodeFail("xn----eoc6bm.xn--3nd240h"); } // [B3, B6, V3, V7]18215test { try toUnicodeFail("xn----eoc6bm.xn--3nd240h"); } // [B3, B6, V3, V7]
18216test { try toAsciiFail("xn----eoc6bm.xn--3nd240h", false); } // [B3, B6, V3, V7]
18217test { try toAsciiFail("xn----eoc6bm.xn--3nd240h", true); } // [B3, B6, V3, V7]
7286test { try toUnicodeFail("xn----eoc6bm0504a.xn--3nd849e05c"); } // [B3, B6, C1, V7]18218test { try toUnicodeFail("xn----eoc6bm0504a.xn--3nd849e05c"); } // [B3, B6, C1, V7]
18219test { try toAsciiFail("xn----eoc6bm0504a.xn--3nd849e05c", false); } // [B3, B6, C1, V7]
18220test { try toAsciiFail("xn----eoc6bm0504a.xn--3nd849e05c", true); } // [B3, B6, C1, V7]
7287test { try toUnicodeFail("\xe0\xb5\x8d-\xe2\x80\x8d\xe2\x80\x8c\xef\xbd\xa1\xf1\xa5\x9e\xa7\xe2\x82\x85\xe2\x89\xa0"); } // [C1, C2, V6, V7]18221test { try toUnicodeFail("\xe0\xb5\x8d-\xe2\x80\x8d\xe2\x80\x8c\xef\xbd\xa1\xf1\xa5\x9e\xa7\xe2\x82\x85\xe2\x89\xa0"); } // [C1, C2, V6, V7]
18222test { try toAsciiFail("\xe0\xb5\x8d-\xe2\x80\x8d\xe2\x80\x8c\xef\xbd\xa1\xf1\xa5\x9e\xa7\xe2\x82\x85\xe2\x89\xa0", false); } // [C1, C2, V6, V7]
18223test { try toAsciiFail("\xe0\xb5\x8d-\xe2\x80\x8d\xe2\x80\x8c\xef\xbd\xa1\xf1\xa5\x9e\xa7\xe2\x82\x85\xe2\x89\xa0", true); } // [V3, V6, V7]
7288test { try toUnicodeFail("\xe0\xb5\x8d-\xe2\x80\x8d\xe2\x80\x8c\xef\xbd\xa1\xf1\xa5\x9e\xa7\xe2\x82\x85=\xcc\xb8"); } // [C1, C2, V6, V7]18224test { try toUnicodeFail("\xe0\xb5\x8d-\xe2\x80\x8d\xe2\x80\x8c\xef\xbd\xa1\xf1\xa5\x9e\xa7\xe2\x82\x85=\xcc\xb8"); } // [C1, C2, V6, V7]
18225test { try toAsciiFail("\xe0\xb5\x8d-\xe2\x80\x8d\xe2\x80\x8c\xef\xbd\xa1\xf1\xa5\x9e\xa7\xe2\x82\x85=\xcc\xb8", false); } // [C1, C2, V6, V7]
18226test { try toAsciiFail("\xe0\xb5\x8d-\xe2\x80\x8d\xe2\x80\x8c\xef\xbd\xa1\xf1\xa5\x9e\xa7\xe2\x82\x85=\xcc\xb8", true); } // [V3, V6, V7]
7289test { try toUnicodeFail("\xe0\xb5\x8d-\xe2\x80\x8d\xe2\x80\x8c\xe3\x80\x82\xf1\xa5\x9e\xa75\xe2\x89\xa0"); } // [C1, C2, V6, V7]18227test { try toUnicodeFail("\xe0\xb5\x8d-\xe2\x80\x8d\xe2\x80\x8c\xe3\x80\x82\xf1\xa5\x9e\xa75\xe2\x89\xa0"); } // [C1, C2, V6, V7]
18228test { try toAsciiFail("\xe0\xb5\x8d-\xe2\x80\x8d\xe2\x80\x8c\xe3\x80\x82\xf1\xa5\x9e\xa75\xe2\x89\xa0", false); } // [C1, C2, V6, V7]
18229test { try toAsciiFail("\xe0\xb5\x8d-\xe2\x80\x8d\xe2\x80\x8c\xe3\x80\x82\xf1\xa5\x9e\xa75\xe2\x89\xa0", true); } // [V3, V6, V7]
7290test { try toUnicodeFail("\xe0\xb5\x8d-\xe2\x80\x8d\xe2\x80\x8c\xe3\x80\x82\xf1\xa5\x9e\xa75=\xcc\xb8"); } // [C1, C2, V6, V7]18230test { try toUnicodeFail("\xe0\xb5\x8d-\xe2\x80\x8d\xe2\x80\x8c\xe3\x80\x82\xf1\xa5\x9e\xa75=\xcc\xb8"); } // [C1, C2, V6, V7]
18231test { try toAsciiFail("\xe0\xb5\x8d-\xe2\x80\x8d\xe2\x80\x8c\xe3\x80\x82\xf1\xa5\x9e\xa75=\xcc\xb8", false); } // [C1, C2, V6, V7]
18232test { try toAsciiFail("\xe0\xb5\x8d-\xe2\x80\x8d\xe2\x80\x8c\xe3\x80\x82\xf1\xa5\x9e\xa75=\xcc\xb8", true); } // [V3, V6, V7]
7291test { try toUnicodeFail("xn----jmf.xn--5-ufo50192e"); } // [V3, V6, V7]18233test { try toUnicodeFail("xn----jmf.xn--5-ufo50192e"); } // [V3, V6, V7]
18234test { try toAsciiFail("xn----jmf.xn--5-ufo50192e", false); } // [V3, V6, V7]
18235test { try toAsciiFail("xn----jmf.xn--5-ufo50192e", true); } // [V3, V6, V7]
7292test { try toUnicodeFail("xn----jmf215lda.xn--5-ufo50192e"); } // [C1, C2, V6, V7]18236test { try toUnicodeFail("xn----jmf215lda.xn--5-ufo50192e"); } // [C1, C2, V6, V7]
18237test { try toAsciiFail("xn----jmf215lda.xn--5-ufo50192e", false); } // [C1, C2, V6, V7]
18238test { try toAsciiFail("xn----jmf215lda.xn--5-ufo50192e", true); } // [C1, C2, V6, V7]
7293test { try toUnicodeFail("\xe9\x94\xa3\xe3\x80\x82\xe0\xa9\x8d\xf3\xa0\x98\xbb\xf3\xa0\x9a\x86"); } // [V6, V7]18239test { try toUnicodeFail("\xe9\x94\xa3\xe3\x80\x82\xe0\xa9\x8d\xf3\xa0\x98\xbb\xf3\xa0\x9a\x86"); } // [V6, V7]
18240test { try toAsciiFail("\xe9\x94\xa3\xe3\x80\x82\xe0\xa9\x8d\xf3\xa0\x98\xbb\xf3\xa0\x9a\x86", false); } // [V6, V7]
18241test { try toAsciiFail("\xe9\x94\xa3\xe3\x80\x82\xe0\xa9\x8d\xf3\xa0\x98\xbb\xf3\xa0\x9a\x86", true); } // [V6, V7]
7294test { try toUnicodeFail("xn--gc5a.xn--ybc83044ppga"); } // [V6, V7]18242test { try toUnicodeFail("xn--gc5a.xn--ybc83044ppga"); } // [V6, V7]
18243test { try toAsciiFail("xn--gc5a.xn--ybc83044ppga", false); } // [V6, V7]
18244test { try toAsciiFail("xn--gc5a.xn--ybc83044ppga", true); } // [V6, V7]
7295test { try toAsciiPass("\xd8\xbd\xf0\x91\x88\xbe\xef\xbc\x8e\xd9\x89\xe2\x80\x8d\xea\xa4\xab", "xn--8gb2338k.xn--lhb0154f", true); }18245test { try toAsciiPass("\xd8\xbd\xf0\x91\x88\xbe\xef\xbc\x8e\xd9\x89\xe2\x80\x8d\xea\xa4\xab", "xn--8gb2338k.xn--lhb0154f", true); }
7296test { try toUnicodeFail("\xd8\xbd\xf0\x91\x88\xbe\xef\xbc\x8e\xd9\x89\xe2\x80\x8d\xea\xa4\xab"); } // [B3, C2]18246test { try toUnicodeFail("\xd8\xbd\xf0\x91\x88\xbe\xef\xbc\x8e\xd9\x89\xe2\x80\x8d\xea\xa4\xab"); } // [B3, C2]
18247test { try toAsciiFail("\xd8\xbd\xf0\x91\x88\xbe\xef\xbc\x8e\xd9\x89\xe2\x80\x8d\xea\xa4\xab", false); } // [B3, C2]
7297test { try toAsciiPass("\xd8\xbd\xf0\x91\x88\xbe.\xd9\x89\xe2\x80\x8d\xea\xa4\xab", "xn--8gb2338k.xn--lhb0154f", true); }18248test { try toAsciiPass("\xd8\xbd\xf0\x91\x88\xbe.\xd9\x89\xe2\x80\x8d\xea\xa4\xab", "xn--8gb2338k.xn--lhb0154f", true); }
7298test { try toUnicodeFail("\xd8\xbd\xf0\x91\x88\xbe.\xd9\x89\xe2\x80\x8d\xea\xa4\xab"); } // [B3, C2]18249test { try toUnicodeFail("\xd8\xbd\xf0\x91\x88\xbe.\xd9\x89\xe2\x80\x8d\xea\xa4\xab"); } // [B3, C2]
18250test { try toAsciiFail("\xd8\xbd\xf0\x91\x88\xbe.\xd9\x89\xe2\x80\x8d\xea\xa4\xab", false); } // [B3, C2]
7299test { try toUnicodePass("xn--8gb2338k.xn--lhb0154f", "\xd8\xbd\xf0\x91\x88\xbe.\xd9\x89\xea\xa4\xab"); }18251test { try toUnicodePass("xn--8gb2338k.xn--lhb0154f", "\xd8\xbd\xf0\x91\x88\xbe.\xd9\x89\xea\xa4\xab"); }
7300test { try toAsciiPass("xn--8gb2338k.xn--lhb0154f", "xn--8gb2338k.xn--lhb0154f", false); }18252test { try toAsciiPass("xn--8gb2338k.xn--lhb0154f", "xn--8gb2338k.xn--lhb0154f", false); }
7301test { try toAsciiPass("xn--8gb2338k.xn--lhb0154f", "xn--8gb2338k.xn--lhb0154f", true); }18253test { try toAsciiPass("xn--8gb2338k.xn--lhb0154f", "xn--8gb2338k.xn--lhb0154f", true); }
...@@ -7303,14 +18255,32 @@ test { try toUnicodePass("\xd8\xbd\xf0\x91\x88\xbe.\xd9\x89\xea\xa4\xab", "\xd8\...@@ -7303,14 +18255,32 @@ test { try toUnicodePass("\xd8\xbd\xf0\x91\x88\xbe.\xd9\x89\xea\xa4\xab", "\xd8\
7303test { try toAsciiPass("\xd8\xbd\xf0\x91\x88\xbe.\xd9\x89\xea\xa4\xab", "xn--8gb2338k.xn--lhb0154f", false); }18255test { try toAsciiPass("\xd8\xbd\xf0\x91\x88\xbe.\xd9\x89\xea\xa4\xab", "xn--8gb2338k.xn--lhb0154f", false); }
7304test { try toAsciiPass("\xd8\xbd\xf0\x91\x88\xbe.\xd9\x89\xea\xa4\xab", "xn--8gb2338k.xn--lhb0154f", true); }18256test { try toAsciiPass("\xd8\xbd\xf0\x91\x88\xbe.\xd9\x89\xea\xa4\xab", "xn--8gb2338k.xn--lhb0154f", true); }
7305test { try toUnicodeFail("xn--8gb2338k.xn--lhb603k060h"); } // [B3, C2]18257test { try toUnicodeFail("xn--8gb2338k.xn--lhb603k060h"); } // [B3, C2]
18258test { try toAsciiFail("xn--8gb2338k.xn--lhb603k060h", false); } // [B3, C2]
18259test { try toAsciiFail("xn--8gb2338k.xn--lhb603k060h", true); } // [B3, C2]
7306test { try toUnicodeFail("\xd9\xa6\xe2\x81\xb4\xe1\x82\xa5\xef\xbc\x8e\xe0\xa2\xbd\xe2\x80\x8c"); } // [B1, B3, C1]18260test { try toUnicodeFail("\xd9\xa6\xe2\x81\xb4\xe1\x82\xa5\xef\xbc\x8e\xe0\xa2\xbd\xe2\x80\x8c"); } // [B1, B3, C1]
18261test { try toAsciiFail("\xd9\xa6\xe2\x81\xb4\xe1\x82\xa5\xef\xbc\x8e\xe0\xa2\xbd\xe2\x80\x8c", false); } // [B1, B3, C1]
18262test { try toAsciiFail("\xd9\xa6\xe2\x81\xb4\xe1\x82\xa5\xef\xbc\x8e\xe0\xa2\xbd\xe2\x80\x8c", true); } // [B1]
7307test { try toUnicodeFail("\xd9\xa64\xe1\x82\xa5.\xe0\xa2\xbd\xe2\x80\x8c"); } // [B1, B3, C1]18263test { try toUnicodeFail("\xd9\xa64\xe1\x82\xa5.\xe0\xa2\xbd\xe2\x80\x8c"); } // [B1, B3, C1]
18264test { try toAsciiFail("\xd9\xa64\xe1\x82\xa5.\xe0\xa2\xbd\xe2\x80\x8c", false); } // [B1, B3, C1]
18265test { try toAsciiFail("\xd9\xa64\xe1\x82\xa5.\xe0\xa2\xbd\xe2\x80\x8c", true); } // [B1]
7308test { try toUnicodeFail("\xd9\xa64\xe2\xb4\x85.\xe0\xa2\xbd\xe2\x80\x8c"); } // [B1, B3, C1]18266test { try toUnicodeFail("\xd9\xa64\xe2\xb4\x85.\xe0\xa2\xbd\xe2\x80\x8c"); } // [B1, B3, C1]
18267test { try toAsciiFail("\xd9\xa64\xe2\xb4\x85.\xe0\xa2\xbd\xe2\x80\x8c", false); } // [B1, B3, C1]
18268test { try toAsciiFail("\xd9\xa64\xe2\xb4\x85.\xe0\xa2\xbd\xe2\x80\x8c", true); } // [B1]
7309test { try toUnicodeFail("xn--4-kqc6770a.xn--jzb"); } // [B1]18269test { try toUnicodeFail("xn--4-kqc6770a.xn--jzb"); } // [B1]
18270test { try toAsciiFail("xn--4-kqc6770a.xn--jzb", false); } // [B1]
18271test { try toAsciiFail("xn--4-kqc6770a.xn--jzb", true); } // [B1]
7310test { try toUnicodeFail("xn--4-kqc6770a.xn--jzb840j"); } // [B1, B3, C1]18272test { try toUnicodeFail("xn--4-kqc6770a.xn--jzb840j"); } // [B1, B3, C1]
18273test { try toAsciiFail("xn--4-kqc6770a.xn--jzb840j", false); } // [B1, B3, C1]
18274test { try toAsciiFail("xn--4-kqc6770a.xn--jzb840j", true); } // [B1, B3, C1]
7311test { try toUnicodeFail("\xd9\xa6\xe2\x81\xb4\xe2\xb4\x85\xef\xbc\x8e\xe0\xa2\xbd\xe2\x80\x8c"); } // [B1, B3, C1]18275test { try toUnicodeFail("\xd9\xa6\xe2\x81\xb4\xe2\xb4\x85\xef\xbc\x8e\xe0\xa2\xbd\xe2\x80\x8c"); } // [B1, B3, C1]
18276test { try toAsciiFail("\xd9\xa6\xe2\x81\xb4\xe2\xb4\x85\xef\xbc\x8e\xe0\xa2\xbd\xe2\x80\x8c", false); } // [B1, B3, C1]
18277test { try toAsciiFail("\xd9\xa6\xe2\x81\xb4\xe2\xb4\x85\xef\xbc\x8e\xe0\xa2\xbd\xe2\x80\x8c", true); } // [B1]
7312test { try toUnicodeFail("xn--4-kqc489e.xn--jzb"); } // [B1, V7]18278test { try toUnicodeFail("xn--4-kqc489e.xn--jzb"); } // [B1, V7]
18279test { try toAsciiFail("xn--4-kqc489e.xn--jzb", false); } // [B1, V7]
18280test { try toAsciiFail("xn--4-kqc489e.xn--jzb", true); } // [B1, V7]
7313test { try toUnicodeFail("xn--4-kqc489e.xn--jzb840j"); } // [B1, B3, C1, V7]18281test { try toUnicodeFail("xn--4-kqc489e.xn--jzb840j"); } // [B1, B3, C1, V7]
18282test { try toAsciiFail("xn--4-kqc489e.xn--jzb840j", false); } // [B1, B3, C1, V7]
18283test { try toAsciiFail("xn--4-kqc489e.xn--jzb840j", true); } // [B1, B3, C1, V7]
7314test { try toUnicodePass("\xe1\x83\x81\xe1\x82\xb16\xcc\x98\xe3\x80\x82\xc3\x9f\xe1\xac\x83", "\xe2\xb4\xa1\xe2\xb4\x916\xcc\x98.\xc3\x9f\xe1\xac\x83"); }18284test { try toUnicodePass("\xe1\x83\x81\xe1\x82\xb16\xcc\x98\xe3\x80\x82\xc3\x9f\xe1\xac\x83", "\xe2\xb4\xa1\xe2\xb4\x916\xcc\x98.\xc3\x9f\xe1\xac\x83"); }
7315test { try toAsciiPass("\xe1\x83\x81\xe1\x82\xb16\xcc\x98\xe3\x80\x82\xc3\x9f\xe1\xac\x83", "xn--6-8cb7433a2ba.xn--zca894k", false); }18285test { try toAsciiPass("\xe1\x83\x81\xe1\x82\xb16\xcc\x98\xe3\x80\x82\xc3\x9f\xe1\xac\x83", "xn--6-8cb7433a2ba.xn--zca894k", false); }
7316test { try toAsciiPass("\xe1\x83\x81\xe1\x82\xb16\xcc\x98\xe3\x80\x82\xc3\x9f\xe1\xac\x83", "xn--6-8cb7433a2ba.xn--ss-2vq", true); }18286test { try toAsciiPass("\xe1\x83\x81\xe1\x82\xb16\xcc\x98\xe3\x80\x82\xc3\x9f\xe1\xac\x83", "xn--6-8cb7433a2ba.xn--ss-2vq", true); }
...@@ -7345,117 +18315,329 @@ test { try toUnicodePass("\xe2\xb4\xa1\xe2\xb4\x916\xcc\x98.\xc3\x9f\xe1\xac\x83...@@ -7345,117 +18315,329 @@ test { try toUnicodePass("\xe2\xb4\xa1\xe2\xb4\x916\xcc\x98.\xc3\x9f\xe1\xac\x83
7345test { try toAsciiPass("\xe2\xb4\xa1\xe2\xb4\x916\xcc\x98.\xc3\x9f\xe1\xac\x83", "xn--6-8cb7433a2ba.xn--zca894k", false); }18315test { try toAsciiPass("\xe2\xb4\xa1\xe2\xb4\x916\xcc\x98.\xc3\x9f\xe1\xac\x83", "xn--6-8cb7433a2ba.xn--zca894k", false); }
7346test { try toAsciiPass("\xe2\xb4\xa1\xe2\xb4\x916\xcc\x98.\xc3\x9f\xe1\xac\x83", "xn--6-8cb7433a2ba.xn--ss-2vq", true); }18316test { try toAsciiPass("\xe2\xb4\xa1\xe2\xb4\x916\xcc\x98.\xc3\x9f\xe1\xac\x83", "xn--6-8cb7433a2ba.xn--ss-2vq", true); }
7347test { try toUnicodeFail("xn--6-8cb306hms1a.xn--ss-2vq"); } // [V7]18317test { try toUnicodeFail("xn--6-8cb306hms1a.xn--ss-2vq"); } // [V7]
18318test { try toAsciiFail("xn--6-8cb306hms1a.xn--ss-2vq", false); } // [V7]
18319test { try toAsciiFail("xn--6-8cb306hms1a.xn--ss-2vq", true); } // [V7]
7348test { try toUnicodeFail("xn--6-8cb555h2b.xn--ss-2vq"); } // [V7]18320test { try toUnicodeFail("xn--6-8cb555h2b.xn--ss-2vq"); } // [V7]
18321test { try toAsciiFail("xn--6-8cb555h2b.xn--ss-2vq", false); } // [V7]
18322test { try toAsciiFail("xn--6-8cb555h2b.xn--ss-2vq", true); } // [V7]
7349test { try toUnicodeFail("xn--6-8cb555h2b.xn--zca894k"); } // [V7]18323test { try toUnicodeFail("xn--6-8cb555h2b.xn--zca894k"); } // [V7]
18324test { try toAsciiFail("xn--6-8cb555h2b.xn--zca894k", false); } // [V7]
18325test { try toAsciiFail("xn--6-8cb555h2b.xn--zca894k", true); } // [V7]
7350test { try toUnicodeFail("\xf2\x8b\xa1\x90\xef\xbd\xa1\xe2\x89\xaf\xf0\x91\x8b\xaa"); } // [V7]18326test { try toUnicodeFail("\xf2\x8b\xa1\x90\xef\xbd\xa1\xe2\x89\xaf\xf0\x91\x8b\xaa"); } // [V7]
18327test { try toAsciiFail("\xf2\x8b\xa1\x90\xef\xbd\xa1\xe2\x89\xaf\xf0\x91\x8b\xaa", false); } // [V7]
18328test { try toAsciiFail("\xf2\x8b\xa1\x90\xef\xbd\xa1\xe2\x89\xaf\xf0\x91\x8b\xaa", true); } // [V7]
7351test { try toUnicodeFail("\xf2\x8b\xa1\x90\xef\xbd\xa1>\xcc\xb8\xf0\x91\x8b\xaa"); } // [V7]18329test { try toUnicodeFail("\xf2\x8b\xa1\x90\xef\xbd\xa1>\xcc\xb8\xf0\x91\x8b\xaa"); } // [V7]
18330test { try toAsciiFail("\xf2\x8b\xa1\x90\xef\xbd\xa1>\xcc\xb8\xf0\x91\x8b\xaa", false); } // [V7]
18331test { try toAsciiFail("\xf2\x8b\xa1\x90\xef\xbd\xa1>\xcc\xb8\xf0\x91\x8b\xaa", true); } // [V7]
7352test { try toUnicodeFail("\xf2\x8b\xa1\x90\xe3\x80\x82\xe2\x89\xaf\xf0\x91\x8b\xaa"); } // [V7]18332test { try toUnicodeFail("\xf2\x8b\xa1\x90\xe3\x80\x82\xe2\x89\xaf\xf0\x91\x8b\xaa"); } // [V7]
18333test { try toAsciiFail("\xf2\x8b\xa1\x90\xe3\x80\x82\xe2\x89\xaf\xf0\x91\x8b\xaa", false); } // [V7]
18334test { try toAsciiFail("\xf2\x8b\xa1\x90\xe3\x80\x82\xe2\x89\xaf\xf0\x91\x8b\xaa", true); } // [V7]
7353test { try toUnicodeFail("\xf2\x8b\xa1\x90\xe3\x80\x82>\xcc\xb8\xf0\x91\x8b\xaa"); } // [V7]18335test { try toUnicodeFail("\xf2\x8b\xa1\x90\xe3\x80\x82>\xcc\xb8\xf0\x91\x8b\xaa"); } // [V7]
18336test { try toAsciiFail("\xf2\x8b\xa1\x90\xe3\x80\x82>\xcc\xb8\xf0\x91\x8b\xaa", false); } // [V7]
18337test { try toAsciiFail("\xf2\x8b\xa1\x90\xe3\x80\x82>\xcc\xb8\xf0\x91\x8b\xaa", true); } // [V7]
7354test { try toUnicodeFail("xn--eo08b.xn--hdh3385g"); } // [V7]18338test { try toUnicodeFail("xn--eo08b.xn--hdh3385g"); } // [V7]
18339test { try toAsciiFail("xn--eo08b.xn--hdh3385g", false); } // [V7]
18340test { try toAsciiFail("xn--eo08b.xn--hdh3385g", true); } // [V7]
7355test { try toUnicodeFail("\xd9\x9a\xdb\xb2\xe3\x80\x82\xe2\x80\x8c-\xe1\xaf\xb3\xe0\xa3\xa2"); } // [B1, C1, V6, V7]18341test { try toUnicodeFail("\xd9\x9a\xdb\xb2\xe3\x80\x82\xe2\x80\x8c-\xe1\xaf\xb3\xe0\xa3\xa2"); } // [B1, C1, V6, V7]
18342test { try toAsciiFail("\xd9\x9a\xdb\xb2\xe3\x80\x82\xe2\x80\x8c-\xe1\xaf\xb3\xe0\xa3\xa2", false); } // [B1, C1, V6, V7]
18343test { try toAsciiFail("\xd9\x9a\xdb\xb2\xe3\x80\x82\xe2\x80\x8c-\xe1\xaf\xb3\xe0\xa3\xa2", true); } // [B1, V3, V6, V7]
7356test { try toUnicodeFail("xn--2hb81a.xn----xrd657l"); } // [B1, V3, V6, V7]18344test { try toUnicodeFail("xn--2hb81a.xn----xrd657l"); } // [B1, V3, V6, V7]
18345test { try toAsciiFail("xn--2hb81a.xn----xrd657l", false); } // [B1, V3, V6, V7]
18346test { try toAsciiFail("xn--2hb81a.xn----xrd657l", true); } // [B1, V3, V6, V7]
7357test { try toUnicodeFail("xn--2hb81a.xn----xrd657l30d"); } // [B1, C1, V6, V7]18347test { try toUnicodeFail("xn--2hb81a.xn----xrd657l30d"); } // [B1, C1, V6, V7]
18348test { try toAsciiFail("xn--2hb81a.xn----xrd657l30d", false); } // [B1, C1, V6, V7]
18349test { try toAsciiFail("xn--2hb81a.xn----xrd657l30d", true); } // [B1, C1, V6, V7]
7358test { try toUnicodeFail("\xf3\xa0\x84\x8f\xf0\x96\xac\xb4\xf3\xa0\xb2\xbd\xef\xbd\xa1\xef\xbe\xa0"); } // [V6, V7]18350test { try toUnicodeFail("\xf3\xa0\x84\x8f\xf0\x96\xac\xb4\xf3\xa0\xb2\xbd\xef\xbd\xa1\xef\xbe\xa0"); } // [V6, V7]
18351test { try toAsciiFail("\xf3\xa0\x84\x8f\xf0\x96\xac\xb4\xf3\xa0\xb2\xbd\xef\xbd\xa1\xef\xbe\xa0", false); } // [V6, V7, A4_2]
18352test { try toAsciiFail("\xf3\xa0\x84\x8f\xf0\x96\xac\xb4\xf3\xa0\xb2\xbd\xef\xbd\xa1\xef\xbe\xa0", true); } // [V6, V7, A4_2]
7359test { try toUnicodeFail("\xf3\xa0\x84\x8f\xf0\x96\xac\xb4\xf3\xa0\xb2\xbd\xe3\x80\x82\xe1\x85\xa0"); } // [V6, V7]18353test { try toUnicodeFail("\xf3\xa0\x84\x8f\xf0\x96\xac\xb4\xf3\xa0\xb2\xbd\xe3\x80\x82\xe1\x85\xa0"); } // [V6, V7]
18354test { try toAsciiFail("\xf3\xa0\x84\x8f\xf0\x96\xac\xb4\xf3\xa0\xb2\xbd\xe3\x80\x82\xe1\x85\xa0", false); } // [V6, V7, A4_2]
18355test { try toAsciiFail("\xf3\xa0\x84\x8f\xf0\x96\xac\xb4\xf3\xa0\xb2\xbd\xe3\x80\x82\xe1\x85\xa0", true); } // [V6, V7, A4_2]
7360test { try toUnicodeFail("xn--619ep9154c."); } // [V6, V7]18356test { try toUnicodeFail("xn--619ep9154c."); } // [V6, V7]
18357test { try toAsciiFail("xn--619ep9154c.", false); } // [V6, V7, A4_2]
18358test { try toAsciiFail("xn--619ep9154c.", true); } // [V6, V7, A4_2]
7361test { try toUnicodeFail("xn--619ep9154c.xn--psd"); } // [V6, V7]18359test { try toUnicodeFail("xn--619ep9154c.xn--psd"); } // [V6, V7]
18360test { try toAsciiFail("xn--619ep9154c.xn--psd", false); } // [V6, V7]
18361test { try toAsciiFail("xn--619ep9154c.xn--psd", true); } // [V6, V7]
7362test { try toUnicodeFail("xn--619ep9154c.xn--cl7c"); } // [V6, V7]18362test { try toUnicodeFail("xn--619ep9154c.xn--cl7c"); } // [V6, V7]
18363test { try toAsciiFail("xn--619ep9154c.xn--cl7c", false); } // [V6, V7]
18364test { try toAsciiFail("xn--619ep9154c.xn--cl7c", true); } // [V6, V7]
7363test { try toUnicodeFail("\xc3\x9f\xe2\x92\x88\xdd\xa0\xed\x9e\xae\xef\xbc\x8e\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf"); } // [B5, V7]18365test { try toUnicodeFail("\xc3\x9f\xe2\x92\x88\xdd\xa0\xed\x9e\xae\xef\xbc\x8e\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf"); } // [B5, V7]
18366test { try toAsciiFail("\xc3\x9f\xe2\x92\x88\xdd\xa0\xed\x9e\xae\xef\xbc\x8e\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf", false); } // [B5, V7]
18367test { try toAsciiFail("\xc3\x9f\xe2\x92\x88\xdd\xa0\xed\x9e\xae\xef\xbc\x8e\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf", true); } // [B5, V7]
7364test { try toUnicodeFail("\xc3\x9f1.\xdd\xa0\xed\x9e\xae.\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf"); } // [B2, B3, B5, V7]18368test { try toUnicodeFail("\xc3\x9f1.\xdd\xa0\xed\x9e\xae.\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf"); } // [B2, B3, B5, V7]
18369test { try toAsciiFail("\xc3\x9f1.\xdd\xa0\xed\x9e\xae.\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf", false); } // [B2, B3, B5, V7]
18370test { try toAsciiFail("\xc3\x9f1.\xdd\xa0\xed\x9e\xae.\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf", true); } // [B2, B3, B5, V7]
7365test { try toUnicodeFail("SS1.\xdd\xa0\xed\x9e\xae.\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf"); } // [B2, B3, B5, V7]18371test { try toUnicodeFail("SS1.\xdd\xa0\xed\x9e\xae.\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf"); } // [B2, B3, B5, V7]
18372test { try toAsciiFail("SS1.\xdd\xa0\xed\x9e\xae.\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf", false); } // [B2, B3, B5, V7]
18373test { try toAsciiFail("SS1.\xdd\xa0\xed\x9e\xae.\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf", true); } // [B2, B3, B5, V7]
7366test { try toUnicodeFail("ss1.\xdd\xa0\xed\x9e\xae.\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf"); } // [B2, B3, B5, V7]18374test { try toUnicodeFail("ss1.\xdd\xa0\xed\x9e\xae.\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf"); } // [B2, B3, B5, V7]
18375test { try toAsciiFail("ss1.\xdd\xa0\xed\x9e\xae.\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf", false); } // [B2, B3, B5, V7]
18376test { try toAsciiFail("ss1.\xdd\xa0\xed\x9e\xae.\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf", true); } // [B2, B3, B5, V7]
7367test { try toUnicodeFail("Ss1.\xdd\xa0\xed\x9e\xae.\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf"); } // [B2, B3, B5, V7]18377test { try toUnicodeFail("Ss1.\xdd\xa0\xed\x9e\xae.\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf"); } // [B2, B3, B5, V7]
18378test { try toAsciiFail("Ss1.\xdd\xa0\xed\x9e\xae.\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf", false); } // [B2, B3, B5, V7]
18379test { try toAsciiFail("Ss1.\xdd\xa0\xed\x9e\xae.\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf", true); } // [B2, B3, B5, V7]
7368test { try toUnicodeFail("ss1.xn--kpb6677h.xn--nfb09923ifkyyb"); } // [B2, B3, B5, V7]18380test { try toUnicodeFail("ss1.xn--kpb6677h.xn--nfb09923ifkyyb"); } // [B2, B3, B5, V7]
18381test { try toAsciiFail("ss1.xn--kpb6677h.xn--nfb09923ifkyyb", false); } // [B2, B3, B5, V7]
18382test { try toAsciiFail("ss1.xn--kpb6677h.xn--nfb09923ifkyyb", true); } // [B2, B3, B5, V7]
7369test { try toUnicodeFail("xn--1-pfa.xn--kpb6677h.xn--nfb09923ifkyyb"); } // [B2, B3, B5, V7]18383test { try toUnicodeFail("xn--1-pfa.xn--kpb6677h.xn--nfb09923ifkyyb"); } // [B2, B3, B5, V7]
18384test { try toAsciiFail("xn--1-pfa.xn--kpb6677h.xn--nfb09923ifkyyb", false); } // [B2, B3, B5, V7]
18385test { try toAsciiFail("xn--1-pfa.xn--kpb6677h.xn--nfb09923ifkyyb", true); } // [B2, B3, B5, V7]
7370test { try toUnicodeFail("SS\xe2\x92\x88\xdd\xa0\xed\x9e\xae\xef\xbc\x8e\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf"); } // [B5, V7]18386test { try toUnicodeFail("SS\xe2\x92\x88\xdd\xa0\xed\x9e\xae\xef\xbc\x8e\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf"); } // [B5, V7]
18387test { try toAsciiFail("SS\xe2\x92\x88\xdd\xa0\xed\x9e\xae\xef\xbc\x8e\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf", false); } // [B5, V7]
18388test { try toAsciiFail("SS\xe2\x92\x88\xdd\xa0\xed\x9e\xae\xef\xbc\x8e\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf", true); } // [B5, V7]
7371test { try toUnicodeFail("ss\xe2\x92\x88\xdd\xa0\xed\x9e\xae\xef\xbc\x8e\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf"); } // [B5, V7]18389test { try toUnicodeFail("ss\xe2\x92\x88\xdd\xa0\xed\x9e\xae\xef\xbc\x8e\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf"); } // [B5, V7]
18390test { try toAsciiFail("ss\xe2\x92\x88\xdd\xa0\xed\x9e\xae\xef\xbc\x8e\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf", false); } // [B5, V7]
18391test { try toAsciiFail("ss\xe2\x92\x88\xdd\xa0\xed\x9e\xae\xef\xbc\x8e\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf", true); } // [B5, V7]
7372test { try toUnicodeFail("Ss\xe2\x92\x88\xdd\xa0\xed\x9e\xae\xef\xbc\x8e\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf"); } // [B5, V7]18392test { try toUnicodeFail("Ss\xe2\x92\x88\xdd\xa0\xed\x9e\xae\xef\xbc\x8e\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf"); } // [B5, V7]
18393test { try toAsciiFail("Ss\xe2\x92\x88\xdd\xa0\xed\x9e\xae\xef\xbc\x8e\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf", false); } // [B5, V7]
18394test { try toAsciiFail("Ss\xe2\x92\x88\xdd\xa0\xed\x9e\xae\xef\xbc\x8e\xf4\x89\x96\xb2\xf3\xa0\x85\x84\xd8\x85\xf2\x89\x94\xaf", true); } // [B5, V7]
7373test { try toUnicodeFail("xn--ss-6ke9690a0g1q.xn--nfb09923ifkyyb"); } // [B5, V7]18395test { try toUnicodeFail("xn--ss-6ke9690a0g1q.xn--nfb09923ifkyyb"); } // [B5, V7]
18396test { try toAsciiFail("xn--ss-6ke9690a0g1q.xn--nfb09923ifkyyb", false); } // [B5, V7]
18397test { try toAsciiFail("xn--ss-6ke9690a0g1q.xn--nfb09923ifkyyb", true); } // [B5, V7]
7374test { try toUnicodeFail("xn--zca444a0s1ao12n.xn--nfb09923ifkyyb"); } // [B5, V7]18398test { try toUnicodeFail("xn--zca444a0s1ao12n.xn--nfb09923ifkyyb"); } // [B5, V7]
18399test { try toAsciiFail("xn--zca444a0s1ao12n.xn--nfb09923ifkyyb", false); } // [B5, V7]
18400test { try toAsciiFail("xn--zca444a0s1ao12n.xn--nfb09923ifkyyb", true); } // [B5, V7]
7375test { try toUnicodeFail("\xf3\xa0\xad\x94.\xf0\x90\x8b\xb1\xe2\x82\x82"); } // [V7]18401test { try toUnicodeFail("\xf3\xa0\xad\x94.\xf0\x90\x8b\xb1\xe2\x82\x82"); } // [V7]
18402test { try toAsciiFail("\xf3\xa0\xad\x94.\xf0\x90\x8b\xb1\xe2\x82\x82", false); } // [V7]
18403test { try toAsciiFail("\xf3\xa0\xad\x94.\xf0\x90\x8b\xb1\xe2\x82\x82", true); } // [V7]
7376test { try toUnicodeFail("\xf3\xa0\xad\x94.\xf0\x90\x8b\xb12"); } // [V7]18404test { try toUnicodeFail("\xf3\xa0\xad\x94.\xf0\x90\x8b\xb12"); } // [V7]
18405test { try toAsciiFail("\xf3\xa0\xad\x94.\xf0\x90\x8b\xb12", false); } // [V7]
18406test { try toAsciiFail("\xf3\xa0\xad\x94.\xf0\x90\x8b\xb12", true); } // [V7]
7377test { try toUnicodeFail("xn--vi56e.xn--2-w91i"); } // [V7]18407test { try toUnicodeFail("xn--vi56e.xn--2-w91i"); } // [V7]
18408test { try toAsciiFail("xn--vi56e.xn--2-w91i", false); } // [V7]
18409test { try toAsciiFail("xn--vi56e.xn--2-w91i", true); } // [V7]
7378test { try toUnicodeFail("\xdc\x96\xe0\xa5\x87\xe3\x80\x82-\xc3\x9f\xda\xa5\xe2\x80\x8c"); } // [B1, C1, V3]18410test { try toUnicodeFail("\xdc\x96\xe0\xa5\x87\xe3\x80\x82-\xc3\x9f\xda\xa5\xe2\x80\x8c"); } // [B1, C1, V3]
18411test { try toAsciiFail("\xdc\x96\xe0\xa5\x87\xe3\x80\x82-\xc3\x9f\xda\xa5\xe2\x80\x8c", false); } // [B1, C1, V3]
18412test { try toAsciiFail("\xdc\x96\xe0\xa5\x87\xe3\x80\x82-\xc3\x9f\xda\xa5\xe2\x80\x8c", true); } // [B1, V3]
7379test { try toUnicodeFail("\xdc\x96\xe0\xa5\x87\xe3\x80\x82-SS\xda\xa5\xe2\x80\x8c"); } // [B1, C1, V3]18413test { try toUnicodeFail("\xdc\x96\xe0\xa5\x87\xe3\x80\x82-SS\xda\xa5\xe2\x80\x8c"); } // [B1, C1, V3]
18414test { try toAsciiFail("\xdc\x96\xe0\xa5\x87\xe3\x80\x82-SS\xda\xa5\xe2\x80\x8c", false); } // [B1, C1, V3]
18415test { try toAsciiFail("\xdc\x96\xe0\xa5\x87\xe3\x80\x82-SS\xda\xa5\xe2\x80\x8c", true); } // [B1, V3]
7380test { try toUnicodeFail("\xdc\x96\xe0\xa5\x87\xe3\x80\x82-ss\xda\xa5\xe2\x80\x8c"); } // [B1, C1, V3]18416test { try toUnicodeFail("\xdc\x96\xe0\xa5\x87\xe3\x80\x82-ss\xda\xa5\xe2\x80\x8c"); } // [B1, C1, V3]
18417test { try toAsciiFail("\xdc\x96\xe0\xa5\x87\xe3\x80\x82-ss\xda\xa5\xe2\x80\x8c", false); } // [B1, C1, V3]
18418test { try toAsciiFail("\xdc\x96\xe0\xa5\x87\xe3\x80\x82-ss\xda\xa5\xe2\x80\x8c", true); } // [B1, V3]
7381test { try toUnicodeFail("\xdc\x96\xe0\xa5\x87\xe3\x80\x82-Ss\xda\xa5\xe2\x80\x8c"); } // [B1, C1, V3]18419test { try toUnicodeFail("\xdc\x96\xe0\xa5\x87\xe3\x80\x82-Ss\xda\xa5\xe2\x80\x8c"); } // [B1, C1, V3]
18420test { try toAsciiFail("\xdc\x96\xe0\xa5\x87\xe3\x80\x82-Ss\xda\xa5\xe2\x80\x8c", false); } // [B1, C1, V3]
18421test { try toAsciiFail("\xdc\x96\xe0\xa5\x87\xe3\x80\x82-Ss\xda\xa5\xe2\x80\x8c", true); } // [B1, V3]
7382test { try toUnicodeFail("xn--gnb63i.xn---ss-4ef"); } // [B1, V3]18422test { try toUnicodeFail("xn--gnb63i.xn---ss-4ef"); } // [B1, V3]
18423test { try toAsciiFail("xn--gnb63i.xn---ss-4ef", false); } // [B1, V3]
18424test { try toAsciiFail("xn--gnb63i.xn---ss-4ef", true); } // [B1, V3]
7383test { try toUnicodeFail("xn--gnb63i.xn---ss-4ef9263a"); } // [B1, C1, V3]18425test { try toUnicodeFail("xn--gnb63i.xn---ss-4ef9263a"); } // [B1, C1, V3]
18426test { try toAsciiFail("xn--gnb63i.xn---ss-4ef9263a", false); } // [B1, C1, V3]
18427test { try toAsciiFail("xn--gnb63i.xn---ss-4ef9263a", true); } // [B1, C1, V3]
7384test { try toUnicodeFail("xn--gnb63i.xn----qfa845bhx4a"); } // [B1, C1, V3]18428test { try toUnicodeFail("xn--gnb63i.xn----qfa845bhx4a"); } // [B1, C1, V3]
18429test { try toAsciiFail("xn--gnb63i.xn----qfa845bhx4a", false); } // [B1, C1, V3]
18430test { try toAsciiFail("xn--gnb63i.xn----qfa845bhx4a", true); } // [B1, C1, V3]
7385test { try toUnicodeFail("\xe1\xae\xa9\xe2\x80\x8d\xd8\xaa\xf1\xa1\x9a\x88\xef\xbc\x8e\xe1\xb3\x95\xe4\xb7\x89\xe1\x83\x81"); } // [B1, C2, V6, V7]18431test { try toUnicodeFail("\xe1\xae\xa9\xe2\x80\x8d\xd8\xaa\xf1\xa1\x9a\x88\xef\xbc\x8e\xe1\xb3\x95\xe4\xb7\x89\xe1\x83\x81"); } // [B1, C2, V6, V7]
18432test { try toAsciiFail("\xe1\xae\xa9\xe2\x80\x8d\xd8\xaa\xf1\xa1\x9a\x88\xef\xbc\x8e\xe1\xb3\x95\xe4\xb7\x89\xe1\x83\x81", false); } // [B1, C2, V6, V7]
18433test { try toAsciiFail("\xe1\xae\xa9\xe2\x80\x8d\xd8\xaa\xf1\xa1\x9a\x88\xef\xbc\x8e\xe1\xb3\x95\xe4\xb7\x89\xe1\x83\x81", true); } // [B1, V6, V7]
7386test { try toUnicodeFail("\xe1\xae\xa9\xe2\x80\x8d\xd8\xaa\xf1\xa1\x9a\x88.\xe1\xb3\x95\xe4\xb7\x89\xe1\x83\x81"); } // [B1, C2, V6, V7]18434test { try toUnicodeFail("\xe1\xae\xa9\xe2\x80\x8d\xd8\xaa\xf1\xa1\x9a\x88.\xe1\xb3\x95\xe4\xb7\x89\xe1\x83\x81"); } // [B1, C2, V6, V7]
18435test { try toAsciiFail("\xe1\xae\xa9\xe2\x80\x8d\xd8\xaa\xf1\xa1\x9a\x88.\xe1\xb3\x95\xe4\xb7\x89\xe1\x83\x81", false); } // [B1, C2, V6, V7]
18436test { try toAsciiFail("\xe1\xae\xa9\xe2\x80\x8d\xd8\xaa\xf1\xa1\x9a\x88.\xe1\xb3\x95\xe4\xb7\x89\xe1\x83\x81", true); } // [B1, V6, V7]
7387test { try toUnicodeFail("\xe1\xae\xa9\xe2\x80\x8d\xd8\xaa\xf1\xa1\x9a\x88.\xe1\xb3\x95\xe4\xb7\x89\xe2\xb4\xa1"); } // [B1, C2, V6, V7]18437test { try toUnicodeFail("\xe1\xae\xa9\xe2\x80\x8d\xd8\xaa\xf1\xa1\x9a\x88.\xe1\xb3\x95\xe4\xb7\x89\xe2\xb4\xa1"); } // [B1, C2, V6, V7]
18438test { try toAsciiFail("\xe1\xae\xa9\xe2\x80\x8d\xd8\xaa\xf1\xa1\x9a\x88.\xe1\xb3\x95\xe4\xb7\x89\xe2\xb4\xa1", false); } // [B1, C2, V6, V7]
18439test { try toAsciiFail("\xe1\xae\xa9\xe2\x80\x8d\xd8\xaa\xf1\xa1\x9a\x88.\xe1\xb3\x95\xe4\xb7\x89\xe2\xb4\xa1", true); } // [B1, V6, V7]
7388test { try toUnicodeFail("xn--pgb911izv33i.xn--i6f270etuy"); } // [B1, V6, V7]18440test { try toUnicodeFail("xn--pgb911izv33i.xn--i6f270etuy"); } // [B1, V6, V7]
18441test { try toAsciiFail("xn--pgb911izv33i.xn--i6f270etuy", false); } // [B1, V6, V7]
18442test { try toAsciiFail("xn--pgb911izv33i.xn--i6f270etuy", true); } // [B1, V6, V7]
7389test { try toUnicodeFail("xn--pgb911imgdrw34r.xn--i6f270etuy"); } // [B1, C2, V6, V7]18443test { try toUnicodeFail("xn--pgb911imgdrw34r.xn--i6f270etuy"); } // [B1, C2, V6, V7]
18444test { try toAsciiFail("xn--pgb911imgdrw34r.xn--i6f270etuy", false); } // [B1, C2, V6, V7]
18445test { try toAsciiFail("xn--pgb911imgdrw34r.xn--i6f270etuy", true); } // [B1, C2, V6, V7]
7390test { try toUnicodeFail("\xe1\xae\xa9\xe2\x80\x8d\xd8\xaa\xf1\xa1\x9a\x88\xef\xbc\x8e\xe1\xb3\x95\xe4\xb7\x89\xe2\xb4\xa1"); } // [B1, C2, V6, V7]18446test { try toUnicodeFail("\xe1\xae\xa9\xe2\x80\x8d\xd8\xaa\xf1\xa1\x9a\x88\xef\xbc\x8e\xe1\xb3\x95\xe4\xb7\x89\xe2\xb4\xa1"); } // [B1, C2, V6, V7]
18447test { try toAsciiFail("\xe1\xae\xa9\xe2\x80\x8d\xd8\xaa\xf1\xa1\x9a\x88\xef\xbc\x8e\xe1\xb3\x95\xe4\xb7\x89\xe2\xb4\xa1", false); } // [B1, C2, V6, V7]
18448test { try toAsciiFail("\xe1\xae\xa9\xe2\x80\x8d\xd8\xaa\xf1\xa1\x9a\x88\xef\xbc\x8e\xe1\xb3\x95\xe4\xb7\x89\xe2\xb4\xa1", true); } // [B1, V6, V7]
7391test { try toUnicodeFail("xn--pgb911izv33i.xn--5nd792dgv3b"); } // [B1, V6, V7]18449test { try toUnicodeFail("xn--pgb911izv33i.xn--5nd792dgv3b"); } // [B1, V6, V7]
18450test { try toAsciiFail("xn--pgb911izv33i.xn--5nd792dgv3b", false); } // [B1, V6, V7]
18451test { try toAsciiFail("xn--pgb911izv33i.xn--5nd792dgv3b", true); } // [B1, V6, V7]
7392test { try toUnicodeFail("xn--pgb911imgdrw34r.xn--5nd792dgv3b"); } // [B1, C2, V6, V7]18452test { try toUnicodeFail("xn--pgb911imgdrw34r.xn--5nd792dgv3b"); } // [B1, C2, V6, V7]
18453test { try toAsciiFail("xn--pgb911imgdrw34r.xn--5nd792dgv3b", false); } // [B1, C2, V6, V7]
18454test { try toAsciiFail("xn--pgb911imgdrw34r.xn--5nd792dgv3b", true); } // [B1, C2, V6, V7]
7393test { try toUnicodeFail("\xe2\xb6\xbf.\xc3\x9f\xe2\x80\x8d"); } // [C2, V7]18455test { try toUnicodeFail("\xe2\xb6\xbf.\xc3\x9f\xe2\x80\x8d"); } // [C2, V7]
18456test { try toAsciiFail("\xe2\xb6\xbf.\xc3\x9f\xe2\x80\x8d", false); } // [C2, V7]
18457test { try toAsciiFail("\xe2\xb6\xbf.\xc3\x9f\xe2\x80\x8d", true); } // [V7]
7394test { try toUnicodeFail("\xe2\xb6\xbf.SS\xe2\x80\x8d"); } // [C2, V7]18458test { try toUnicodeFail("\xe2\xb6\xbf.SS\xe2\x80\x8d"); } // [C2, V7]
18459test { try toAsciiFail("\xe2\xb6\xbf.SS\xe2\x80\x8d", false); } // [C2, V7]
18460test { try toAsciiFail("\xe2\xb6\xbf.SS\xe2\x80\x8d", true); } // [V7]
7395test { try toUnicodeFail("\xe2\xb6\xbf.ss\xe2\x80\x8d"); } // [C2, V7]18461test { try toUnicodeFail("\xe2\xb6\xbf.ss\xe2\x80\x8d"); } // [C2, V7]
18462test { try toAsciiFail("\xe2\xb6\xbf.ss\xe2\x80\x8d", false); } // [C2, V7]
18463test { try toAsciiFail("\xe2\xb6\xbf.ss\xe2\x80\x8d", true); } // [V7]
7396test { try toUnicodeFail("\xe2\xb6\xbf.Ss\xe2\x80\x8d"); } // [C2, V7]18464test { try toUnicodeFail("\xe2\xb6\xbf.Ss\xe2\x80\x8d"); } // [C2, V7]
18465test { try toAsciiFail("\xe2\xb6\xbf.Ss\xe2\x80\x8d", false); } // [C2, V7]
18466test { try toAsciiFail("\xe2\xb6\xbf.Ss\xe2\x80\x8d", true); } // [V7]
7397test { try toUnicodeFail("xn--7pj.ss"); } // [V7]18467test { try toUnicodeFail("xn--7pj.ss"); } // [V7]
18468test { try toAsciiFail("xn--7pj.ss", false); } // [V7]
18469test { try toAsciiFail("xn--7pj.ss", true); } // [V7]
7398test { try toUnicodeFail("xn--7pj.xn--ss-n1t"); } // [C2, V7]18470test { try toUnicodeFail("xn--7pj.xn--ss-n1t"); } // [C2, V7]
18471test { try toAsciiFail("xn--7pj.xn--ss-n1t", false); } // [C2, V7]
18472test { try toAsciiFail("xn--7pj.xn--ss-n1t", true); } // [C2, V7]
7399test { try toUnicodeFail("xn--7pj.xn--zca870n"); } // [C2, V7]18473test { try toUnicodeFail("xn--7pj.xn--zca870n"); } // [C2, V7]
18474test { try toAsciiFail("xn--7pj.xn--zca870n", false); } // [C2, V7]
18475test { try toAsciiFail("xn--7pj.xn--zca870n", true); } // [C2, V7]
7400test { try toUnicodeFail("\xe1\xaf\xb3\xef\xb8\x92.\xd8\xaa\xe2\x89\xaf\xea\xa1\x82"); } // [B2, B3, B6, V6, V7]18476test { try toUnicodeFail("\xe1\xaf\xb3\xef\xb8\x92.\xd8\xaa\xe2\x89\xaf\xea\xa1\x82"); } // [B2, B3, B6, V6, V7]
18477test { try toAsciiFail("\xe1\xaf\xb3\xef\xb8\x92.\xd8\xaa\xe2\x89\xaf\xea\xa1\x82", false); } // [B2, B3, B6, V6, V7]
18478test { try toAsciiFail("\xe1\xaf\xb3\xef\xb8\x92.\xd8\xaa\xe2\x89\xaf\xea\xa1\x82", true); } // [B2, B3, B6, V6, V7]
7401test { try toUnicodeFail("\xe1\xaf\xb3\xef\xb8\x92.\xd8\xaa>\xcc\xb8\xea\xa1\x82"); } // [B2, B3, B6, V6, V7]18479test { try toUnicodeFail("\xe1\xaf\xb3\xef\xb8\x92.\xd8\xaa>\xcc\xb8\xea\xa1\x82"); } // [B2, B3, B6, V6, V7]
18480test { try toAsciiFail("\xe1\xaf\xb3\xef\xb8\x92.\xd8\xaa>\xcc\xb8\xea\xa1\x82", false); } // [B2, B3, B6, V6, V7]
18481test { try toAsciiFail("\xe1\xaf\xb3\xef\xb8\x92.\xd8\xaa>\xcc\xb8\xea\xa1\x82", true); } // [B2, B3, B6, V6, V7]
7402test { try toUnicodeFail("\xe1\xaf\xb3\xe3\x80\x82.\xd8\xaa\xe2\x89\xaf\xea\xa1\x82"); } // [B2, B3, V6, X4_2]18482test { try toUnicodeFail("\xe1\xaf\xb3\xe3\x80\x82.\xd8\xaa\xe2\x89\xaf\xea\xa1\x82"); } // [B2, B3, V6, X4_2]
18483test { try toAsciiFail("\xe1\xaf\xb3\xe3\x80\x82.\xd8\xaa\xe2\x89\xaf\xea\xa1\x82", false); } // [B2, B3, V6, A4_2]
18484test { try toAsciiFail("\xe1\xaf\xb3\xe3\x80\x82.\xd8\xaa\xe2\x89\xaf\xea\xa1\x82", true); } // [B2, B3, V6, A4_2]
7403test { try toUnicodeFail("\xe1\xaf\xb3\xe3\x80\x82.\xd8\xaa>\xcc\xb8\xea\xa1\x82"); } // [B2, B3, V6, X4_2]18485test { try toUnicodeFail("\xe1\xaf\xb3\xe3\x80\x82.\xd8\xaa>\xcc\xb8\xea\xa1\x82"); } // [B2, B3, V6, X4_2]
18486test { try toAsciiFail("\xe1\xaf\xb3\xe3\x80\x82.\xd8\xaa>\xcc\xb8\xea\xa1\x82", false); } // [B2, B3, V6, A4_2]
18487test { try toAsciiFail("\xe1\xaf\xb3\xe3\x80\x82.\xd8\xaa>\xcc\xb8\xea\xa1\x82", true); } // [B2, B3, V6, A4_2]
7404test { try toUnicodeFail("xn--1zf..xn--pgb885lry5g"); } // [B2, B3, V6, X4_2]18488test { try toUnicodeFail("xn--1zf..xn--pgb885lry5g"); } // [B2, B3, V6, X4_2]
18489test { try toAsciiFail("xn--1zf..xn--pgb885lry5g", false); } // [B2, B3, V6, A4_2]
18490test { try toAsciiFail("xn--1zf..xn--pgb885lry5g", true); } // [B2, B3, V6, A4_2]
7405test { try toUnicodeFail("xn--1zf8957g.xn--pgb885lry5g"); } // [B2, B3, B6, V6, V7]18491test { try toUnicodeFail("xn--1zf8957g.xn--pgb885lry5g"); } // [B2, B3, B6, V6, V7]
18492test { try toAsciiFail("xn--1zf8957g.xn--pgb885lry5g", false); } // [B2, B3, B6, V6, V7]
18493test { try toAsciiFail("xn--1zf8957g.xn--pgb885lry5g", true); } // [B2, B3, B6, V6, V7]
7406test { try toUnicodeFail("\xe2\x89\xae\xe2\x89\xa0\xf1\x8f\xbb\x83\xef\xbd\xa1-\xf0\xab\xa0\x86\xda\xb7\xf0\x90\xb9\xaa"); } // [B1, V3, V7]18494test { try toUnicodeFail("\xe2\x89\xae\xe2\x89\xa0\xf1\x8f\xbb\x83\xef\xbd\xa1-\xf0\xab\xa0\x86\xda\xb7\xf0\x90\xb9\xaa"); } // [B1, V3, V7]
18495test { try toAsciiFail("\xe2\x89\xae\xe2\x89\xa0\xf1\x8f\xbb\x83\xef\xbd\xa1-\xf0\xab\xa0\x86\xda\xb7\xf0\x90\xb9\xaa", false); } // [B1, V3, V7]
18496test { try toAsciiFail("\xe2\x89\xae\xe2\x89\xa0\xf1\x8f\xbb\x83\xef\xbd\xa1-\xf0\xab\xa0\x86\xda\xb7\xf0\x90\xb9\xaa", true); } // [B1, V3, V7]
7407test { try toUnicodeFail("<\xcc\xb8=\xcc\xb8\xf1\x8f\xbb\x83\xef\xbd\xa1-\xf0\xab\xa0\x86\xda\xb7\xf0\x90\xb9\xaa"); } // [B1, V3, V7]18497test { try toUnicodeFail("<\xcc\xb8=\xcc\xb8\xf1\x8f\xbb\x83\xef\xbd\xa1-\xf0\xab\xa0\x86\xda\xb7\xf0\x90\xb9\xaa"); } // [B1, V3, V7]
18498test { try toAsciiFail("<\xcc\xb8=\xcc\xb8\xf1\x8f\xbb\x83\xef\xbd\xa1-\xf0\xab\xa0\x86\xda\xb7\xf0\x90\xb9\xaa", false); } // [B1, V3, V7]
18499test { try toAsciiFail("<\xcc\xb8=\xcc\xb8\xf1\x8f\xbb\x83\xef\xbd\xa1-\xf0\xab\xa0\x86\xda\xb7\xf0\x90\xb9\xaa", true); } // [B1, V3, V7]
7408test { try toUnicodeFail("\xe2\x89\xae\xe2\x89\xa0\xf1\x8f\xbb\x83\xe3\x80\x82-\xf0\xab\xa0\x86\xda\xb7\xf0\x90\xb9\xaa"); } // [B1, V3, V7]18500test { try toUnicodeFail("\xe2\x89\xae\xe2\x89\xa0\xf1\x8f\xbb\x83\xe3\x80\x82-\xf0\xab\xa0\x86\xda\xb7\xf0\x90\xb9\xaa"); } // [B1, V3, V7]
18501test { try toAsciiFail("\xe2\x89\xae\xe2\x89\xa0\xf1\x8f\xbb\x83\xe3\x80\x82-\xf0\xab\xa0\x86\xda\xb7\xf0\x90\xb9\xaa", false); } // [B1, V3, V7]
18502test { try toAsciiFail("\xe2\x89\xae\xe2\x89\xa0\xf1\x8f\xbb\x83\xe3\x80\x82-\xf0\xab\xa0\x86\xda\xb7\xf0\x90\xb9\xaa", true); } // [B1, V3, V7]
7409test { try toUnicodeFail("<\xcc\xb8=\xcc\xb8\xf1\x8f\xbb\x83\xe3\x80\x82-\xf0\xab\xa0\x86\xda\xb7\xf0\x90\xb9\xaa"); } // [B1, V3, V7]18503test { try toUnicodeFail("<\xcc\xb8=\xcc\xb8\xf1\x8f\xbb\x83\xe3\x80\x82-\xf0\xab\xa0\x86\xda\xb7\xf0\x90\xb9\xaa"); } // [B1, V3, V7]
18504test { try toAsciiFail("<\xcc\xb8=\xcc\xb8\xf1\x8f\xbb\x83\xe3\x80\x82-\xf0\xab\xa0\x86\xda\xb7\xf0\x90\xb9\xaa", false); } // [B1, V3, V7]
18505test { try toAsciiFail("<\xcc\xb8=\xcc\xb8\xf1\x8f\xbb\x83\xe3\x80\x82-\xf0\xab\xa0\x86\xda\xb7\xf0\x90\xb9\xaa", true); } // [B1, V3, V7]
7410test { try toUnicodeFail("xn--1ch1a29470f.xn----7uc5363rc1rn"); } // [B1, V3, V7]18506test { try toUnicodeFail("xn--1ch1a29470f.xn----7uc5363rc1rn"); } // [B1, V3, V7]
18507test { try toAsciiFail("xn--1ch1a29470f.xn----7uc5363rc1rn", false); } // [B1, V3, V7]
18508test { try toAsciiFail("xn--1ch1a29470f.xn----7uc5363rc1rn", true); } // [B1, V3, V7]
7411test { try toUnicodeFail("\xf0\x90\xb9\xa1\xdd\xb7\xe3\x80\x82\xea\xa1\x82"); } // [B1]18509test { try toUnicodeFail("\xf0\x90\xb9\xa1\xdd\xb7\xe3\x80\x82\xea\xa1\x82"); } // [B1]
18510test { try toAsciiFail("\xf0\x90\xb9\xa1\xdd\xb7\xe3\x80\x82\xea\xa1\x82", false); } // [B1]
18511test { try toAsciiFail("\xf0\x90\xb9\xa1\xdd\xb7\xe3\x80\x82\xea\xa1\x82", true); } // [B1]
7412test { try toUnicodeFail("xn--7pb5275k.xn--bc9a"); } // [B1]18512test { try toUnicodeFail("xn--7pb5275k.xn--bc9a"); } // [B1]
18513test { try toAsciiFail("xn--7pb5275k.xn--bc9a", false); } // [B1]
18514test { try toAsciiFail("xn--7pb5275k.xn--bc9a", true); } // [B1]
7413test { try toUnicodeFail("\xe1\x82\xa9\xf0\x9d\x86\x85\xf1\x94\xbb\x85\xd8\x99.\xc3\x9f\xf0\x90\xa7\xa6\xf0\x90\xb9\xb3\xdd\xb5"); } // [B5, B6, V7]18515test { try toUnicodeFail("\xe1\x82\xa9\xf0\x9d\x86\x85\xf1\x94\xbb\x85\xd8\x99.\xc3\x9f\xf0\x90\xa7\xa6\xf0\x90\xb9\xb3\xdd\xb5"); } // [B5, B6, V7]
18516test { try toAsciiFail("\xe1\x82\xa9\xf0\x9d\x86\x85\xf1\x94\xbb\x85\xd8\x99.\xc3\x9f\xf0\x90\xa7\xa6\xf0\x90\xb9\xb3\xdd\xb5", false); } // [B5, B6, V7]
18517test { try toAsciiFail("\xe1\x82\xa9\xf0\x9d\x86\x85\xf1\x94\xbb\x85\xd8\x99.\xc3\x9f\xf0\x90\xa7\xa6\xf0\x90\xb9\xb3\xdd\xb5", true); } // [B5, B6, V7]
7414test { try toUnicodeFail("\xe2\xb4\x89\xf0\x9d\x86\x85\xf1\x94\xbb\x85\xd8\x99.\xc3\x9f\xf0\x90\xa7\xa6\xf0\x90\xb9\xb3\xdd\xb5"); } // [B5, B6, V7]18518test { try toUnicodeFail("\xe2\xb4\x89\xf0\x9d\x86\x85\xf1\x94\xbb\x85\xd8\x99.\xc3\x9f\xf0\x90\xa7\xa6\xf0\x90\xb9\xb3\xdd\xb5"); } // [B5, B6, V7]
18519test { try toAsciiFail("\xe2\xb4\x89\xf0\x9d\x86\x85\xf1\x94\xbb\x85\xd8\x99.\xc3\x9f\xf0\x90\xa7\xa6\xf0\x90\xb9\xb3\xdd\xb5", false); } // [B5, B6, V7]
18520test { try toAsciiFail("\xe2\xb4\x89\xf0\x9d\x86\x85\xf1\x94\xbb\x85\xd8\x99.\xc3\x9f\xf0\x90\xa7\xa6\xf0\x90\xb9\xb3\xdd\xb5", true); } // [B5, B6, V7]
7415test { try toUnicodeFail("\xe1\x82\xa9\xf0\x9d\x86\x85\xf1\x94\xbb\x85\xd8\x99.SS\xf0\x90\xa7\xa6\xf0\x90\xb9\xb3\xdd\xb5"); } // [B5, B6, V7]18521test { try toUnicodeFail("\xe1\x82\xa9\xf0\x9d\x86\x85\xf1\x94\xbb\x85\xd8\x99.SS\xf0\x90\xa7\xa6\xf0\x90\xb9\xb3\xdd\xb5"); } // [B5, B6, V7]
18522test { try toAsciiFail("\xe1\x82\xa9\xf0\x9d\x86\x85\xf1\x94\xbb\x85\xd8\x99.SS\xf0\x90\xa7\xa6\xf0\x90\xb9\xb3\xdd\xb5", false); } // [B5, B6, V7]
18523test { try toAsciiFail("\xe1\x82\xa9\xf0\x9d\x86\x85\xf1\x94\xbb\x85\xd8\x99.SS\xf0\x90\xa7\xa6\xf0\x90\xb9\xb3\xdd\xb5", true); } // [B5, B6, V7]
7416test { try toUnicodeFail("\xe2\xb4\x89\xf0\x9d\x86\x85\xf1\x94\xbb\x85\xd8\x99.ss\xf0\x90\xa7\xa6\xf0\x90\xb9\xb3\xdd\xb5"); } // [B5, B6, V7]18524test { try toUnicodeFail("\xe2\xb4\x89\xf0\x9d\x86\x85\xf1\x94\xbb\x85\xd8\x99.ss\xf0\x90\xa7\xa6\xf0\x90\xb9\xb3\xdd\xb5"); } // [B5, B6, V7]
18525test { try toAsciiFail("\xe2\xb4\x89\xf0\x9d\x86\x85\xf1\x94\xbb\x85\xd8\x99.ss\xf0\x90\xa7\xa6\xf0\x90\xb9\xb3\xdd\xb5", false); } // [B5, B6, V7]
18526test { try toAsciiFail("\xe2\xb4\x89\xf0\x9d\x86\x85\xf1\x94\xbb\x85\xd8\x99.ss\xf0\x90\xa7\xa6\xf0\x90\xb9\xb3\xdd\xb5", true); } // [B5, B6, V7]
7417test { try toUnicodeFail("\xe1\x82\xa9\xf0\x9d\x86\x85\xf1\x94\xbb\x85\xd8\x99.Ss\xf0\x90\xa7\xa6\xf0\x90\xb9\xb3\xdd\xb5"); } // [B5, B6, V7]18527test { try toUnicodeFail("\xe1\x82\xa9\xf0\x9d\x86\x85\xf1\x94\xbb\x85\xd8\x99.Ss\xf0\x90\xa7\xa6\xf0\x90\xb9\xb3\xdd\xb5"); } // [B5, B6, V7]
18528test { try toAsciiFail("\xe1\x82\xa9\xf0\x9d\x86\x85\xf1\x94\xbb\x85\xd8\x99.Ss\xf0\x90\xa7\xa6\xf0\x90\xb9\xb3\xdd\xb5", false); } // [B5, B6, V7]
18529test { try toAsciiFail("\xe1\x82\xa9\xf0\x9d\x86\x85\xf1\x94\xbb\x85\xd8\x99.Ss\xf0\x90\xa7\xa6\xf0\x90\xb9\xb3\xdd\xb5", true); } // [B5, B6, V7]
7418test { try toUnicodeFail("xn--7fb940rwt3z7xvz.xn--ss-zme7575xp0e"); } // [B5, B6, V7]18530test { try toUnicodeFail("xn--7fb940rwt3z7xvz.xn--ss-zme7575xp0e"); } // [B5, B6, V7]
18531test { try toAsciiFail("xn--7fb940rwt3z7xvz.xn--ss-zme7575xp0e", false); } // [B5, B6, V7]
18532test { try toAsciiFail("xn--7fb940rwt3z7xvz.xn--ss-zme7575xp0e", true); } // [B5, B6, V7]
7419test { try toUnicodeFail("xn--7fb940rwt3z7xvz.xn--zca684a699vf2d"); } // [B5, B6, V7]18533test { try toUnicodeFail("xn--7fb940rwt3z7xvz.xn--zca684a699vf2d"); } // [B5, B6, V7]
18534test { try toAsciiFail("xn--7fb940rwt3z7xvz.xn--zca684a699vf2d", false); } // [B5, B6, V7]
18535test { try toAsciiFail("xn--7fb940rwt3z7xvz.xn--zca684a699vf2d", true); } // [B5, B6, V7]
7420test { try toUnicodeFail("xn--7fb125cjv87a7xvz.xn--ss-zme7575xp0e"); } // [B5, B6, V7]18536test { try toUnicodeFail("xn--7fb125cjv87a7xvz.xn--ss-zme7575xp0e"); } // [B5, B6, V7]
18537test { try toAsciiFail("xn--7fb125cjv87a7xvz.xn--ss-zme7575xp0e", false); } // [B5, B6, V7]
18538test { try toAsciiFail("xn--7fb125cjv87a7xvz.xn--ss-zme7575xp0e", true); } // [B5, B6, V7]
7421test { try toUnicodeFail("xn--7fb125cjv87a7xvz.xn--zca684a699vf2d"); } // [B5, B6, V7]18539test { try toUnicodeFail("xn--7fb125cjv87a7xvz.xn--zca684a699vf2d"); } // [B5, B6, V7]
18540test { try toAsciiFail("xn--7fb125cjv87a7xvz.xn--zca684a699vf2d", false); } // [B5, B6, V7]
18541test { try toAsciiFail("xn--7fb125cjv87a7xvz.xn--zca684a699vf2d", true); } // [B5, B6, V7]
7422test { try toUnicodeFail("\xe2\x80\x8d\xd9\x83\xf0\x90\xa7\xbe\xe2\x86\x99.\xf1\x8a\xbd\xa1"); } // [B1, C2, V7]18542test { try toUnicodeFail("\xe2\x80\x8d\xd9\x83\xf0\x90\xa7\xbe\xe2\x86\x99.\xf1\x8a\xbd\xa1"); } // [B1, C2, V7]
18543test { try toAsciiFail("\xe2\x80\x8d\xd9\x83\xf0\x90\xa7\xbe\xe2\x86\x99.\xf1\x8a\xbd\xa1", false); } // [B1, C2, V7]
18544test { try toAsciiFail("\xe2\x80\x8d\xd9\x83\xf0\x90\xa7\xbe\xe2\x86\x99.\xf1\x8a\xbd\xa1", true); } // [B3, V7]
7423test { try toUnicodeFail("xn--fhb011lnp8n.xn--7s4w"); } // [B3, V7]18545test { try toUnicodeFail("xn--fhb011lnp8n.xn--7s4w"); } // [B3, V7]
18546test { try toAsciiFail("xn--fhb011lnp8n.xn--7s4w", false); } // [B3, V7]
18547test { try toAsciiFail("xn--fhb011lnp8n.xn--7s4w", true); } // [B3, V7]
7424test { try toUnicodeFail("xn--fhb713k87ag053c.xn--7s4w"); } // [B1, C2, V7]18548test { try toUnicodeFail("xn--fhb713k87ag053c.xn--7s4w"); } // [B1, C2, V7]
18549test { try toAsciiFail("xn--fhb713k87ag053c.xn--7s4w", false); } // [B1, C2, V7]
18550test { try toAsciiFail("xn--fhb713k87ag053c.xn--7s4w", true); } // [B1, C2, V7]
7425test { try toUnicodeFail("\xe6\xa2\x89\xe3\x80\x82\xe2\x80\x8c"); } // [C1]18551test { try toUnicodeFail("\xe6\xa2\x89\xe3\x80\x82\xe2\x80\x8c"); } // [C1]
18552test { try toAsciiFail("\xe6\xa2\x89\xe3\x80\x82\xe2\x80\x8c", false); } // [C1]
18553test { try toAsciiFail("\xe6\xa2\x89\xe3\x80\x82\xe2\x80\x8c", true); } // [A4_2]
7426test { try toUnicodePass("xn--7zv.", "\xe6\xa2\x89."); }18554test { try toUnicodePass("xn--7zv.", "\xe6\xa2\x89."); }
18555test { try toAsciiFail("xn--7zv.", false); } // [A4_2]
18556test { try toAsciiFail("xn--7zv.", true); } // [A4_2]
7427test { try toUnicodePass("\xe6\xa2\x89.", "\xe6\xa2\x89."); }18557test { try toUnicodePass("\xe6\xa2\x89.", "\xe6\xa2\x89."); }
18558test { try toAsciiFail("\xe6\xa2\x89.", false); } // [A4_2]
18559test { try toAsciiFail("\xe6\xa2\x89.", true); } // [A4_2]
7428test { try toUnicodeFail("xn--7zv.xn--0ug"); } // [C1]18560test { try toUnicodeFail("xn--7zv.xn--0ug"); } // [C1]
18561test { try toAsciiFail("xn--7zv.xn--0ug", false); } // [C1]
18562test { try toAsciiFail("xn--7zv.xn--0ug", true); } // [C1]
7429test { try toUnicodeFail("\xea\xa1\xa3-\xe2\x89\xa0.\xe2\x80\x8d\xf0\x9e\xa4\x97\xf0\x90\x85\xa2\xe2\x86\x83"); } // [B1, B6, C2]18563test { try toUnicodeFail("\xea\xa1\xa3-\xe2\x89\xa0.\xe2\x80\x8d\xf0\x9e\xa4\x97\xf0\x90\x85\xa2\xe2\x86\x83"); } // [B1, B6, C2]
18564test { try toAsciiFail("\xea\xa1\xa3-\xe2\x89\xa0.\xe2\x80\x8d\xf0\x9e\xa4\x97\xf0\x90\x85\xa2\xe2\x86\x83", false); } // [B1, B6, C2]
18565test { try toAsciiFail("\xea\xa1\xa3-\xe2\x89\xa0.\xe2\x80\x8d\xf0\x9e\xa4\x97\xf0\x90\x85\xa2\xe2\x86\x83", true); } // [B2, B3, B6]
7430test { try toUnicodeFail("\xea\xa1\xa3-=\xcc\xb8.\xe2\x80\x8d\xf0\x9e\xa4\x97\xf0\x90\x85\xa2\xe2\x86\x83"); } // [B1, B6, C2]18566test { try toUnicodeFail("\xea\xa1\xa3-=\xcc\xb8.\xe2\x80\x8d\xf0\x9e\xa4\x97\xf0\x90\x85\xa2\xe2\x86\x83"); } // [B1, B6, C2]
18567test { try toAsciiFail("\xea\xa1\xa3-=\xcc\xb8.\xe2\x80\x8d\xf0\x9e\xa4\x97\xf0\x90\x85\xa2\xe2\x86\x83", false); } // [B1, B6, C2]
18568test { try toAsciiFail("\xea\xa1\xa3-=\xcc\xb8.\xe2\x80\x8d\xf0\x9e\xa4\x97\xf0\x90\x85\xa2\xe2\x86\x83", true); } // [B2, B3, B6]
7431test { try toUnicodeFail("\xea\xa1\xa3-=\xcc\xb8.\xe2\x80\x8d\xf0\x9e\xa4\xb9\xf0\x90\x85\xa2\xe2\x86\x84"); } // [B1, B6, C2]18569test { try toUnicodeFail("\xea\xa1\xa3-=\xcc\xb8.\xe2\x80\x8d\xf0\x9e\xa4\xb9\xf0\x90\x85\xa2\xe2\x86\x84"); } // [B1, B6, C2]
18570test { try toAsciiFail("\xea\xa1\xa3-=\xcc\xb8.\xe2\x80\x8d\xf0\x9e\xa4\xb9\xf0\x90\x85\xa2\xe2\x86\x84", false); } // [B1, B6, C2]
18571test { try toAsciiFail("\xea\xa1\xa3-=\xcc\xb8.\xe2\x80\x8d\xf0\x9e\xa4\xb9\xf0\x90\x85\xa2\xe2\x86\x84", true); } // [B2, B3, B6]
7432test { try toUnicodeFail("\xea\xa1\xa3-\xe2\x89\xa0.\xe2\x80\x8d\xf0\x9e\xa4\xb9\xf0\x90\x85\xa2\xe2\x86\x84"); } // [B1, B6, C2]18572test { try toUnicodeFail("\xea\xa1\xa3-\xe2\x89\xa0.\xe2\x80\x8d\xf0\x9e\xa4\xb9\xf0\x90\x85\xa2\xe2\x86\x84"); } // [B1, B6, C2]
18573test { try toAsciiFail("\xea\xa1\xa3-\xe2\x89\xa0.\xe2\x80\x8d\xf0\x9e\xa4\xb9\xf0\x90\x85\xa2\xe2\x86\x84", false); } // [B1, B6, C2]
18574test { try toAsciiFail("\xea\xa1\xa3-\xe2\x89\xa0.\xe2\x80\x8d\xf0\x9e\xa4\xb9\xf0\x90\x85\xa2\xe2\x86\x84", true); } // [B2, B3, B6]
7433test { try toUnicodeFail("\xea\xa1\xa3-\xe2\x89\xa0.\xe2\x80\x8d\xf0\x9e\xa4\x97\xf0\x90\x85\xa2\xe2\x86\x84"); } // [B1, B6, C2]18575test { try toUnicodeFail("\xea\xa1\xa3-\xe2\x89\xa0.\xe2\x80\x8d\xf0\x9e\xa4\x97\xf0\x90\x85\xa2\xe2\x86\x84"); } // [B1, B6, C2]
18576test { try toAsciiFail("\xea\xa1\xa3-\xe2\x89\xa0.\xe2\x80\x8d\xf0\x9e\xa4\x97\xf0\x90\x85\xa2\xe2\x86\x84", false); } // [B1, B6, C2]
18577test { try toAsciiFail("\xea\xa1\xa3-\xe2\x89\xa0.\xe2\x80\x8d\xf0\x9e\xa4\x97\xf0\x90\x85\xa2\xe2\x86\x84", true); } // [B2, B3, B6]
7434test { try toUnicodeFail("\xea\xa1\xa3-=\xcc\xb8.\xe2\x80\x8d\xf0\x9e\xa4\x97\xf0\x90\x85\xa2\xe2\x86\x84"); } // [B1, B6, C2]18578test { try toUnicodeFail("\xea\xa1\xa3-=\xcc\xb8.\xe2\x80\x8d\xf0\x9e\xa4\x97\xf0\x90\x85\xa2\xe2\x86\x84"); } // [B1, B6, C2]
18579test { try toAsciiFail("\xea\xa1\xa3-=\xcc\xb8.\xe2\x80\x8d\xf0\x9e\xa4\x97\xf0\x90\x85\xa2\xe2\x86\x84", false); } // [B1, B6, C2]
18580test { try toAsciiFail("\xea\xa1\xa3-=\xcc\xb8.\xe2\x80\x8d\xf0\x9e\xa4\x97\xf0\x90\x85\xa2\xe2\x86\x84", true); } // [B2, B3, B6]
7435test { try toUnicodeFail("xn----ufo9661d.xn--r5gy929fhm4f"); } // [B2, B3, B6]18581test { try toUnicodeFail("xn----ufo9661d.xn--r5gy929fhm4f"); } // [B2, B3, B6]
18582test { try toAsciiFail("xn----ufo9661d.xn--r5gy929fhm4f", false); } // [B2, B3, B6]
18583test { try toAsciiFail("xn----ufo9661d.xn--r5gy929fhm4f", true); } // [B2, B3, B6]
7436test { try toUnicodeFail("xn----ufo9661d.xn--1ug99cj620c71sh"); } // [B1, B6, C2]18584test { try toUnicodeFail("xn----ufo9661d.xn--1ug99cj620c71sh"); } // [B1, B6, C2]
18585test { try toAsciiFail("xn----ufo9661d.xn--1ug99cj620c71sh", false); } // [B1, B6, C2]
18586test { try toAsciiFail("xn----ufo9661d.xn--1ug99cj620c71sh", true); } // [B1, B6, C2]
7437test { try toUnicodeFail("xn----ufo9661d.xn--q5g0929fhm4f"); } // [B2, B3, B6, V7]18587test { try toUnicodeFail("xn----ufo9661d.xn--q5g0929fhm4f"); } // [B2, B3, B6, V7]
18588test { try toAsciiFail("xn----ufo9661d.xn--q5g0929fhm4f", false); } // [B2, B3, B6, V7]
18589test { try toAsciiFail("xn----ufo9661d.xn--q5g0929fhm4f", true); } // [B2, B3, B6, V7]
7438test { try toUnicodeFail("xn----ufo9661d.xn--1ug79cm620c71sh"); } // [B1, B6, C2, V7]18590test { try toUnicodeFail("xn----ufo9661d.xn--1ug79cm620c71sh"); } // [B1, B6, C2, V7]
18591test { try toAsciiFail("xn----ufo9661d.xn--1ug79cm620c71sh", false); } // [B1, B6, C2, V7]
18592test { try toAsciiFail("xn----ufo9661d.xn--1ug79cm620c71sh", true); } // [B1, B6, C2, V7]
7439test { try toUnicodeFail("\xcf\x82\xe2\x92\x90\xf0\x9d\x86\xab\xe2\xb8\xb5\xef\xbd\xa1\xf0\x90\xb1\xa2\xf0\x9f\x84\x8a\xf0\x9d\x9f\xb3"); } // [B6, V7, U1]18593test { try toUnicodeFail("\xcf\x82\xe2\x92\x90\xf0\x9d\x86\xab\xe2\xb8\xb5\xef\xbd\xa1\xf0\x90\xb1\xa2\xf0\x9f\x84\x8a\xf0\x9d\x9f\xb3"); } // [B6, V7, U1]
18594test { try toAsciiFail("\xcf\x82\xe2\x92\x90\xf0\x9d\x86\xab\xe2\xb8\xb5\xef\xbd\xa1\xf0\x90\xb1\xa2\xf0\x9f\x84\x8a\xf0\x9d\x9f\xb3", false); } // [B6, V7, U1]
18595test { try toAsciiFail("\xcf\x82\xe2\x92\x90\xf0\x9d\x86\xab\xe2\xb8\xb5\xef\xbd\xa1\xf0\x90\xb1\xa2\xf0\x9f\x84\x8a\xf0\x9d\x9f\xb3", true); } // [B6, V7, U1]
7440test { try toUnicodeFail("\xcf\x829.\xf0\x9d\x86\xab\xe2\xb8\xb5\xe3\x80\x82\xf0\x90\xb1\xa29,7"); } // [B1, V6, V7, U1]18596test { try toUnicodeFail("\xcf\x829.\xf0\x9d\x86\xab\xe2\xb8\xb5\xe3\x80\x82\xf0\x90\xb1\xa29,7"); } // [B1, V6, V7, U1]
18597test { try toAsciiFail("\xcf\x829.\xf0\x9d\x86\xab\xe2\xb8\xb5\xe3\x80\x82\xf0\x90\xb1\xa29,7", false); } // [B1, V6, V7, U1]
18598test { try toAsciiFail("\xcf\x829.\xf0\x9d\x86\xab\xe2\xb8\xb5\xe3\x80\x82\xf0\x90\xb1\xa29,7", true); } // [B1, V6, V7, U1]
7441test { try toUnicodeFail("\xce\xa39.\xf0\x9d\x86\xab\xe2\xb8\xb5\xe3\x80\x82\xf0\x90\xb1\xa29,7"); } // [B1, V6, V7, U1]18599test { try toUnicodeFail("\xce\xa39.\xf0\x9d\x86\xab\xe2\xb8\xb5\xe3\x80\x82\xf0\x90\xb1\xa29,7"); } // [B1, V6, V7, U1]
18600test { try toAsciiFail("\xce\xa39.\xf0\x9d\x86\xab\xe2\xb8\xb5\xe3\x80\x82\xf0\x90\xb1\xa29,7", false); } // [B1, V6, V7, U1]
18601test { try toAsciiFail("\xce\xa39.\xf0\x9d\x86\xab\xe2\xb8\xb5\xe3\x80\x82\xf0\x90\xb1\xa29,7", true); } // [B1, V6, V7, U1]
7442test { try toUnicodeFail("\xcf\x839.\xf0\x9d\x86\xab\xe2\xb8\xb5\xe3\x80\x82\xf0\x90\xb1\xa29,7"); } // [B1, V6, V7, U1]18602test { try toUnicodeFail("\xcf\x839.\xf0\x9d\x86\xab\xe2\xb8\xb5\xe3\x80\x82\xf0\x90\xb1\xa29,7"); } // [B1, V6, V7, U1]
18603test { try toAsciiFail("\xcf\x839.\xf0\x9d\x86\xab\xe2\xb8\xb5\xe3\x80\x82\xf0\x90\xb1\xa29,7", false); } // [B1, V6, V7, U1]
18604test { try toAsciiFail("\xcf\x839.\xf0\x9d\x86\xab\xe2\xb8\xb5\xe3\x80\x82\xf0\x90\xb1\xa29,7", true); } // [B1, V6, V7, U1]
7443test { try toUnicodeFail("xn--9-zmb.xn--ltj1535k.xn--9,7-r67t"); } // [B1, V6, V7, U1]18605test { try toUnicodeFail("xn--9-zmb.xn--ltj1535k.xn--9,7-r67t"); } // [B1, V6, V7, U1]
18606test { try toAsciiFail("xn--9-zmb.xn--ltj1535k.xn--9,7-r67t", false); } // [B1, V6, V7, U1]
18607test { try toAsciiFail("xn--9-zmb.xn--ltj1535k.xn--9,7-r67t", true); } // [B1, V6, V7, U1]
7444test { try toUnicodeFail("xn--9-xmb.xn--ltj1535k.xn--9,7-r67t"); } // [B1, V6, V7, U1]18608test { try toUnicodeFail("xn--9-xmb.xn--ltj1535k.xn--9,7-r67t"); } // [B1, V6, V7, U1]
18609test { try toAsciiFail("xn--9-xmb.xn--ltj1535k.xn--9,7-r67t", false); } // [B1, V6, V7, U1]
18610test { try toAsciiFail("xn--9-xmb.xn--ltj1535k.xn--9,7-r67t", true); } // [B1, V6, V7, U1]
7445test { try toUnicodeFail("\xce\xa3\xe2\x92\x90\xf0\x9d\x86\xab\xe2\xb8\xb5\xef\xbd\xa1\xf0\x90\xb1\xa2\xf0\x9f\x84\x8a\xf0\x9d\x9f\xb3"); } // [B6, V7, U1]18611test { try toUnicodeFail("\xce\xa3\xe2\x92\x90\xf0\x9d\x86\xab\xe2\xb8\xb5\xef\xbd\xa1\xf0\x90\xb1\xa2\xf0\x9f\x84\x8a\xf0\x9d\x9f\xb3"); } // [B6, V7, U1]
18612test { try toAsciiFail("\xce\xa3\xe2\x92\x90\xf0\x9d\x86\xab\xe2\xb8\xb5\xef\xbd\xa1\xf0\x90\xb1\xa2\xf0\x9f\x84\x8a\xf0\x9d\x9f\xb3", false); } // [B6, V7, U1]
18613test { try toAsciiFail("\xce\xa3\xe2\x92\x90\xf0\x9d\x86\xab\xe2\xb8\xb5\xef\xbd\xa1\xf0\x90\xb1\xa2\xf0\x9f\x84\x8a\xf0\x9d\x9f\xb3", true); } // [B6, V7, U1]
7446test { try toUnicodeFail("\xcf\x83\xe2\x92\x90\xf0\x9d\x86\xab\xe2\xb8\xb5\xef\xbd\xa1\xf0\x90\xb1\xa2\xf0\x9f\x84\x8a\xf0\x9d\x9f\xb3"); } // [B6, V7, U1]18614test { try toUnicodeFail("\xcf\x83\xe2\x92\x90\xf0\x9d\x86\xab\xe2\xb8\xb5\xef\xbd\xa1\xf0\x90\xb1\xa2\xf0\x9f\x84\x8a\xf0\x9d\x9f\xb3"); } // [B6, V7, U1]
18615test { try toAsciiFail("\xcf\x83\xe2\x92\x90\xf0\x9d\x86\xab\xe2\xb8\xb5\xef\xbd\xa1\xf0\x90\xb1\xa2\xf0\x9f\x84\x8a\xf0\x9d\x9f\xb3", false); } // [B6, V7, U1]
18616test { try toAsciiFail("\xcf\x83\xe2\x92\x90\xf0\x9d\x86\xab\xe2\xb8\xb5\xef\xbd\xa1\xf0\x90\xb1\xa2\xf0\x9f\x84\x8a\xf0\x9d\x9f\xb3", true); } // [B6, V7, U1]
7447test { try toUnicodeFail("xn--4xa809nwtghi25b.xn--9,7-r67t"); } // [B6, V7, U1]18617test { try toUnicodeFail("xn--4xa809nwtghi25b.xn--9,7-r67t"); } // [B6, V7, U1]
18618test { try toAsciiFail("xn--4xa809nwtghi25b.xn--9,7-r67t", false); } // [B6, V7, U1]
18619test { try toAsciiFail("xn--4xa809nwtghi25b.xn--9,7-r67t", true); } // [B6, V7, U1]
7448test { try toUnicodeFail("xn--3xa019nwtghi25b.xn--9,7-r67t"); } // [B6, V7, U1]18620test { try toUnicodeFail("xn--3xa019nwtghi25b.xn--9,7-r67t"); } // [B6, V7, U1]
18621test { try toAsciiFail("xn--3xa019nwtghi25b.xn--9,7-r67t", false); } // [B6, V7, U1]
18622test { try toAsciiFail("xn--3xa019nwtghi25b.xn--9,7-r67t", true); } // [B6, V7, U1]
7449test { try toUnicodeFail("xn--4xa809nwtghi25b.xn--7-075iy877c"); } // [B6, V7]18623test { try toUnicodeFail("xn--4xa809nwtghi25b.xn--7-075iy877c"); } // [B6, V7]
18624test { try toAsciiFail("xn--4xa809nwtghi25b.xn--7-075iy877c", false); } // [B6, V7]
18625test { try toAsciiFail("xn--4xa809nwtghi25b.xn--7-075iy877c", true); } // [B6, V7]
7450test { try toUnicodeFail("xn--3xa019nwtghi25b.xn--7-075iy877c"); } // [B6, V7]18626test { try toUnicodeFail("xn--3xa019nwtghi25b.xn--7-075iy877c"); } // [B6, V7]
18627test { try toAsciiFail("xn--3xa019nwtghi25b.xn--7-075iy877c", false); } // [B6, V7]
18628test { try toAsciiFail("xn--3xa019nwtghi25b.xn--7-075iy877c", true); } // [B6, V7]
7451test { try toAsciiPass("\xe0\xa1\x93\xef\xbc\x8e\xe2\x80\x8c\xc3\x9f", "xn--iwb.ss", true); }18629test { try toAsciiPass("\xe0\xa1\x93\xef\xbc\x8e\xe2\x80\x8c\xc3\x9f", "xn--iwb.ss", true); }
7452test { try toUnicodeFail("\xe0\xa1\x93\xef\xbc\x8e\xe2\x80\x8c\xc3\x9f"); } // [B1, C1]18630test { try toUnicodeFail("\xe0\xa1\x93\xef\xbc\x8e\xe2\x80\x8c\xc3\x9f"); } // [B1, C1]
18631test { try toAsciiFail("\xe0\xa1\x93\xef\xbc\x8e\xe2\x80\x8c\xc3\x9f", false); } // [B1, C1]
7453test { try toAsciiPass("\xe0\xa1\x93.\xe2\x80\x8c\xc3\x9f", "xn--iwb.ss", true); }18632test { try toAsciiPass("\xe0\xa1\x93.\xe2\x80\x8c\xc3\x9f", "xn--iwb.ss", true); }
7454test { try toUnicodeFail("\xe0\xa1\x93.\xe2\x80\x8c\xc3\x9f"); } // [B1, C1]18633test { try toUnicodeFail("\xe0\xa1\x93.\xe2\x80\x8c\xc3\x9f"); } // [B1, C1]
18634test { try toAsciiFail("\xe0\xa1\x93.\xe2\x80\x8c\xc3\x9f", false); } // [B1, C1]
7455test { try toAsciiPass("\xe0\xa1\x93.\xe2\x80\x8cSS", "xn--iwb.ss", true); }18635test { try toAsciiPass("\xe0\xa1\x93.\xe2\x80\x8cSS", "xn--iwb.ss", true); }
7456test { try toUnicodeFail("\xe0\xa1\x93.\xe2\x80\x8cSS"); } // [B1, C1]18636test { try toUnicodeFail("\xe0\xa1\x93.\xe2\x80\x8cSS"); } // [B1, C1]
18637test { try toAsciiFail("\xe0\xa1\x93.\xe2\x80\x8cSS", false); } // [B1, C1]
7457test { try toAsciiPass("\xe0\xa1\x93.\xe2\x80\x8css", "xn--iwb.ss", true); }18638test { try toAsciiPass("\xe0\xa1\x93.\xe2\x80\x8css", "xn--iwb.ss", true); }
7458test { try toUnicodeFail("\xe0\xa1\x93.\xe2\x80\x8css"); } // [B1, C1]18639test { try toUnicodeFail("\xe0\xa1\x93.\xe2\x80\x8css"); } // [B1, C1]
18640test { try toAsciiFail("\xe0\xa1\x93.\xe2\x80\x8css", false); } // [B1, C1]
7459test { try toUnicodePass("xn--iwb.ss", "\xe0\xa1\x93.ss"); }18641test { try toUnicodePass("xn--iwb.ss", "\xe0\xa1\x93.ss"); }
7460test { try toAsciiPass("xn--iwb.ss", "xn--iwb.ss", false); }18642test { try toAsciiPass("xn--iwb.ss", "xn--iwb.ss", false); }
7461test { try toAsciiPass("xn--iwb.ss", "xn--iwb.ss", true); }18643test { try toAsciiPass("xn--iwb.ss", "xn--iwb.ss", true); }
...@@ -7466,81 +18648,215 @@ test { try toUnicodePass("\xe0\xa1\x93.SS", "\xe0\xa1\x93.ss"); }...@@ -7466,81 +18648,215 @@ test { try toUnicodePass("\xe0\xa1\x93.SS", "\xe0\xa1\x93.ss"); }
7466test { try toAsciiPass("\xe0\xa1\x93.SS", "xn--iwb.ss", false); }18648test { try toAsciiPass("\xe0\xa1\x93.SS", "xn--iwb.ss", false); }
7467test { try toAsciiPass("\xe0\xa1\x93.SS", "xn--iwb.ss", true); }18649test { try toAsciiPass("\xe0\xa1\x93.SS", "xn--iwb.ss", true); }
7468test { try toUnicodeFail("xn--iwb.xn--ss-i1t"); } // [B1, C1]18650test { try toUnicodeFail("xn--iwb.xn--ss-i1t"); } // [B1, C1]
18651test { try toAsciiFail("xn--iwb.xn--ss-i1t", false); } // [B1, C1]
18652test { try toAsciiFail("xn--iwb.xn--ss-i1t", true); } // [B1, C1]
7469test { try toUnicodeFail("xn--iwb.xn--zca570n"); } // [B1, C1]18653test { try toUnicodeFail("xn--iwb.xn--zca570n"); } // [B1, C1]
18654test { try toAsciiFail("xn--iwb.xn--zca570n", false); } // [B1, C1]
18655test { try toAsciiFail("xn--iwb.xn--zca570n", true); } // [B1, C1]
7470test { try toAsciiPass("\xe0\xa1\x93\xef\xbc\x8e\xe2\x80\x8cSS", "xn--iwb.ss", true); }18656test { try toAsciiPass("\xe0\xa1\x93\xef\xbc\x8e\xe2\x80\x8cSS", "xn--iwb.ss", true); }
7471test { try toUnicodeFail("\xe0\xa1\x93\xef\xbc\x8e\xe2\x80\x8cSS"); } // [B1, C1]18657test { try toUnicodeFail("\xe0\xa1\x93\xef\xbc\x8e\xe2\x80\x8cSS"); } // [B1, C1]
18658test { try toAsciiFail("\xe0\xa1\x93\xef\xbc\x8e\xe2\x80\x8cSS", false); } // [B1, C1]
7472test { try toAsciiPass("\xe0\xa1\x93\xef\xbc\x8e\xe2\x80\x8css", "xn--iwb.ss", true); }18659test { try toAsciiPass("\xe0\xa1\x93\xef\xbc\x8e\xe2\x80\x8css", "xn--iwb.ss", true); }
7473test { try toUnicodeFail("\xe0\xa1\x93\xef\xbc\x8e\xe2\x80\x8css"); } // [B1, C1]18660test { try toUnicodeFail("\xe0\xa1\x93\xef\xbc\x8e\xe2\x80\x8css"); } // [B1, C1]
18661test { try toAsciiFail("\xe0\xa1\x93\xef\xbc\x8e\xe2\x80\x8css", false); } // [B1, C1]
7474test { try toAsciiPass("\xe0\xa1\x93.\xe2\x80\x8cSs", "xn--iwb.ss", true); }18662test { try toAsciiPass("\xe0\xa1\x93.\xe2\x80\x8cSs", "xn--iwb.ss", true); }
7475test { try toUnicodeFail("\xe0\xa1\x93.\xe2\x80\x8cSs"); } // [B1, C1]18663test { try toUnicodeFail("\xe0\xa1\x93.\xe2\x80\x8cSs"); } // [B1, C1]
18664test { try toAsciiFail("\xe0\xa1\x93.\xe2\x80\x8cSs", false); } // [B1, C1]
7476test { try toAsciiPass("\xe0\xa1\x93\xef\xbc\x8e\xe2\x80\x8cSs", "xn--iwb.ss", true); }18665test { try toAsciiPass("\xe0\xa1\x93\xef\xbc\x8e\xe2\x80\x8cSs", "xn--iwb.ss", true); }
7477test { try toUnicodeFail("\xe0\xa1\x93\xef\xbc\x8e\xe2\x80\x8cSs"); } // [B1, C1]18666test { try toUnicodeFail("\xe0\xa1\x93\xef\xbc\x8e\xe2\x80\x8cSs"); } // [B1, C1]
18667test { try toAsciiFail("\xe0\xa1\x93\xef\xbc\x8e\xe2\x80\x8cSs", false); } // [B1, C1]
7478test { try toUnicodeFail("\xf1\xaf\xb6\xa3-.\xe2\x80\x8d\xdd\x8e\xea\xa5\x8d\xf3\xa0\xbb\xa8"); } // [B1, B6, C2, V3, V7]18668test { try toUnicodeFail("\xf1\xaf\xb6\xa3-.\xe2\x80\x8d\xdd\x8e\xea\xa5\x8d\xf3\xa0\xbb\xa8"); } // [B1, B6, C2, V3, V7]
18669test { try toAsciiFail("\xf1\xaf\xb6\xa3-.\xe2\x80\x8d\xdd\x8e\xea\xa5\x8d\xf3\xa0\xbb\xa8", false); } // [B1, B6, C2, V3, V7]
18670test { try toAsciiFail("\xf1\xaf\xb6\xa3-.\xe2\x80\x8d\xdd\x8e\xea\xa5\x8d\xf3\xa0\xbb\xa8", true); } // [B3, B6, V3, V7]
7479test { try toUnicodeFail("xn----s116e.xn--1ob6504fmf40i"); } // [B3, B6, V3, V7]18671test { try toUnicodeFail("xn----s116e.xn--1ob6504fmf40i"); } // [B3, B6, V3, V7]
18672test { try toAsciiFail("xn----s116e.xn--1ob6504fmf40i", false); } // [B3, B6, V3, V7]
18673test { try toAsciiFail("xn----s116e.xn--1ob6504fmf40i", true); } // [B3, B6, V3, V7]
7480test { try toUnicodeFail("xn----s116e.xn--1ob387jy90hq459k"); } // [B1, B6, C2, V3, V7]18674test { try toUnicodeFail("xn----s116e.xn--1ob387jy90hq459k"); } // [B1, B6, C2, V3, V7]
18675test { try toAsciiFail("xn----s116e.xn--1ob387jy90hq459k", false); } // [B1, B6, C2, V3, V7]
18676test { try toAsciiFail("xn----s116e.xn--1ob387jy90hq459k", true); } // [B1, B6, C2, V3, V7]
7481test { try toUnicodeFail("\xe4\x83\x9a\xe8\x9f\xa5-\xe3\x80\x82-\xf1\xbd\x92\x98\xe2\x92\x88"); } // [V3, V7]18677test { try toUnicodeFail("\xe4\x83\x9a\xe8\x9f\xa5-\xe3\x80\x82-\xf1\xbd\x92\x98\xe2\x92\x88"); } // [V3, V7]
18678test { try toAsciiFail("\xe4\x83\x9a\xe8\x9f\xa5-\xe3\x80\x82-\xf1\xbd\x92\x98\xe2\x92\x88", false); } // [V3, V7]
18679test { try toAsciiFail("\xe4\x83\x9a\xe8\x9f\xa5-\xe3\x80\x82-\xf1\xbd\x92\x98\xe2\x92\x88", true); } // [V3, V7]
7482test { try toUnicodeFail("\xe4\x83\x9a\xe8\x9f\xa5-\xe3\x80\x82-\xf1\xbd\x92\x981."); } // [V3, V7]18680test { try toUnicodeFail("\xe4\x83\x9a\xe8\x9f\xa5-\xe3\x80\x82-\xf1\xbd\x92\x981."); } // [V3, V7]
18681test { try toAsciiFail("\xe4\x83\x9a\xe8\x9f\xa5-\xe3\x80\x82-\xf1\xbd\x92\x981.", false); } // [V3, V7, A4_2]
18682test { try toAsciiFail("\xe4\x83\x9a\xe8\x9f\xa5-\xe3\x80\x82-\xf1\xbd\x92\x981.", true); } // [V3, V7, A4_2]
7483test { try toUnicodeFail("xn----n50a258u.xn---1-up07j."); } // [V3, V7]18683test { try toUnicodeFail("xn----n50a258u.xn---1-up07j."); } // [V3, V7]
18684test { try toAsciiFail("xn----n50a258u.xn---1-up07j.", false); } // [V3, V7, A4_2]
18685test { try toAsciiFail("xn----n50a258u.xn---1-up07j.", true); } // [V3, V7, A4_2]
7484test { try toUnicodeFail("xn----n50a258u.xn----ecp33805f"); } // [V3, V7]18686test { try toUnicodeFail("xn----n50a258u.xn----ecp33805f"); } // [V3, V7]
18687test { try toAsciiFail("xn----n50a258u.xn----ecp33805f", false); } // [V3, V7]
18688test { try toAsciiFail("xn----n50a258u.xn----ecp33805f", true); } // [V3, V7]
7485test { try toUnicodeFail("\xf0\x90\xb9\xb8\xe4\x9a\xb5-\xea\xa1\xa1\xe3\x80\x82\xe2\xba\x87"); } // [B1]18689test { try toUnicodeFail("\xf0\x90\xb9\xb8\xe4\x9a\xb5-\xea\xa1\xa1\xe3\x80\x82\xe2\xba\x87"); } // [B1]
18690test { try toAsciiFail("\xf0\x90\xb9\xb8\xe4\x9a\xb5-\xea\xa1\xa1\xe3\x80\x82\xe2\xba\x87", false); } // [B1]
18691test { try toAsciiFail("\xf0\x90\xb9\xb8\xe4\x9a\xb5-\xea\xa1\xa1\xe3\x80\x82\xe2\xba\x87", true); } // [B1]
7486test { try toUnicodeFail("xn----bm3an932a1l5d.xn--xvj"); } // [B1]18692test { try toUnicodeFail("xn----bm3an932a1l5d.xn--xvj"); } // [B1]
18693test { try toAsciiFail("xn----bm3an932a1l5d.xn--xvj", false); } // [B1]
18694test { try toAsciiFail("xn----bm3an932a1l5d.xn--xvj", true); } // [B1]
7487test { try toUnicodeFail("\xf0\x91\x84\xb3\xe3\x80\x82\xe1\xab\x9c\xf0\x90\xb9\xbb"); } // [B1, V6]18695test { try toUnicodeFail("\xf0\x91\x84\xb3\xe3\x80\x82\xe1\xab\x9c\xf0\x90\xb9\xbb"); } // [B1, V6]
18696test { try toAsciiFail("\xf0\x91\x84\xb3\xe3\x80\x82\xe1\xab\x9c\xf0\x90\xb9\xbb", false); } // [B1, V6]
18697test { try toAsciiFail("\xf0\x91\x84\xb3\xe3\x80\x82\xe1\xab\x9c\xf0\x90\xb9\xbb", true); } // [B1, V6]
7488test { try toUnicodeFail("xn--v80d.xn--2rf1154i"); } // [B1, V6]18698test { try toUnicodeFail("xn--v80d.xn--2rf1154i"); } // [B1, V6]
18699test { try toAsciiFail("xn--v80d.xn--2rf1154i", false); } // [B1, V6]
18700test { try toAsciiFail("xn--v80d.xn--2rf1154i", true); } // [B1, V6]
7489test { try toUnicodeFail("\xe2\x89\xae\xf0\x90\xb9\xbb.\xe2\x92\x8e\xf0\x91\x82\xb5\xda\xba\xd8\x82"); } // [B1, V7]18701test { try toUnicodeFail("\xe2\x89\xae\xf0\x90\xb9\xbb.\xe2\x92\x8e\xf0\x91\x82\xb5\xda\xba\xd8\x82"); } // [B1, V7]
18702test { try toAsciiFail("\xe2\x89\xae\xf0\x90\xb9\xbb.\xe2\x92\x8e\xf0\x91\x82\xb5\xda\xba\xd8\x82", false); } // [B1, V7]
18703test { try toAsciiFail("\xe2\x89\xae\xf0\x90\xb9\xbb.\xe2\x92\x8e\xf0\x91\x82\xb5\xda\xba\xd8\x82", true); } // [B1, V7]
7490test { try toUnicodeFail("<\xcc\xb8\xf0\x90\xb9\xbb.\xe2\x92\x8e\xf0\x91\x82\xb5\xda\xba\xd8\x82"); } // [B1, V7]18704test { try toUnicodeFail("<\xcc\xb8\xf0\x90\xb9\xbb.\xe2\x92\x8e\xf0\x91\x82\xb5\xda\xba\xd8\x82"); } // [B1, V7]
18705test { try toAsciiFail("<\xcc\xb8\xf0\x90\xb9\xbb.\xe2\x92\x8e\xf0\x91\x82\xb5\xda\xba\xd8\x82", false); } // [B1, V7]
18706test { try toAsciiFail("<\xcc\xb8\xf0\x90\xb9\xbb.\xe2\x92\x8e\xf0\x91\x82\xb5\xda\xba\xd8\x82", true); } // [B1, V7]
7491test { try toUnicodeFail("\xe2\x89\xae\xf0\x90\xb9\xbb.7.\xf0\x91\x82\xb5\xda\xba\xd8\x82"); } // [B1, V6, V7]18707test { try toUnicodeFail("\xe2\x89\xae\xf0\x90\xb9\xbb.7.\xf0\x91\x82\xb5\xda\xba\xd8\x82"); } // [B1, V6, V7]
18708test { try toAsciiFail("\xe2\x89\xae\xf0\x90\xb9\xbb.7.\xf0\x91\x82\xb5\xda\xba\xd8\x82", false); } // [B1, V6, V7]
18709test { try toAsciiFail("\xe2\x89\xae\xf0\x90\xb9\xbb.7.\xf0\x91\x82\xb5\xda\xba\xd8\x82", true); } // [B1, V6, V7]
7492test { try toUnicodeFail("<\xcc\xb8\xf0\x90\xb9\xbb.7.\xf0\x91\x82\xb5\xda\xba\xd8\x82"); } // [B1, V6, V7]18710test { try toUnicodeFail("<\xcc\xb8\xf0\x90\xb9\xbb.7.\xf0\x91\x82\xb5\xda\xba\xd8\x82"); } // [B1, V6, V7]
18711test { try toAsciiFail("<\xcc\xb8\xf0\x90\xb9\xbb.7.\xf0\x91\x82\xb5\xda\xba\xd8\x82", false); } // [B1, V6, V7]
18712test { try toAsciiFail("<\xcc\xb8\xf0\x90\xb9\xbb.7.\xf0\x91\x82\xb5\xda\xba\xd8\x82", true); } // [B1, V6, V7]
7493test { try toUnicodeFail("xn--gdhx904g.7.xn--kfb18an307d"); } // [B1, V6, V7]18713test { try toUnicodeFail("xn--gdhx904g.7.xn--kfb18an307d"); } // [B1, V6, V7]
18714test { try toAsciiFail("xn--gdhx904g.7.xn--kfb18an307d", false); } // [B1, V6, V7]
18715test { try toAsciiFail("xn--gdhx904g.7.xn--kfb18an307d", true); } // [B1, V6, V7]
7494test { try toUnicodeFail("xn--gdhx904g.xn--kfb18a325efm3s"); } // [B1, V7]18716test { try toUnicodeFail("xn--gdhx904g.xn--kfb18a325efm3s"); } // [B1, V7]
18717test { try toAsciiFail("xn--gdhx904g.xn--kfb18a325efm3s", false); } // [B1, V7]
18718test { try toAsciiFail("xn--gdhx904g.xn--kfb18a325efm3s", true); } // [B1, V7]
7495test { try toUnicodeFail("\xe1\xa2\x94\xe2\x89\xa0\xf4\x8b\x89\x82.\xe2\x80\x8d\xf0\x90\x8b\xa2"); } // [C2, V7]18719test { try toUnicodeFail("\xe1\xa2\x94\xe2\x89\xa0\xf4\x8b\x89\x82.\xe2\x80\x8d\xf0\x90\x8b\xa2"); } // [C2, V7]
18720test { try toAsciiFail("\xe1\xa2\x94\xe2\x89\xa0\xf4\x8b\x89\x82.\xe2\x80\x8d\xf0\x90\x8b\xa2", false); } // [C2, V7]
18721test { try toAsciiFail("\xe1\xa2\x94\xe2\x89\xa0\xf4\x8b\x89\x82.\xe2\x80\x8d\xf0\x90\x8b\xa2", true); } // [V7]
7496test { try toUnicodeFail("\xe1\xa2\x94=\xcc\xb8\xf4\x8b\x89\x82.\xe2\x80\x8d\xf0\x90\x8b\xa2"); } // [C2, V7]18722test { try toUnicodeFail("\xe1\xa2\x94=\xcc\xb8\xf4\x8b\x89\x82.\xe2\x80\x8d\xf0\x90\x8b\xa2"); } // [C2, V7]
18723test { try toAsciiFail("\xe1\xa2\x94=\xcc\xb8\xf4\x8b\x89\x82.\xe2\x80\x8d\xf0\x90\x8b\xa2", false); } // [C2, V7]
18724test { try toAsciiFail("\xe1\xa2\x94=\xcc\xb8\xf4\x8b\x89\x82.\xe2\x80\x8d\xf0\x90\x8b\xa2", true); } // [V7]
7497test { try toUnicodeFail("xn--ebf031cf7196a.xn--587c"); } // [V7]18725test { try toUnicodeFail("xn--ebf031cf7196a.xn--587c"); } // [V7]
18726test { try toAsciiFail("xn--ebf031cf7196a.xn--587c", false); } // [V7]
18727test { try toAsciiFail("xn--ebf031cf7196a.xn--587c", true); } // [V7]
7498test { try toUnicodeFail("xn--ebf031cf7196a.xn--1ug9540g"); } // [C2, V7]18728test { try toUnicodeFail("xn--ebf031cf7196a.xn--1ug9540g"); } // [C2, V7]
18729test { try toAsciiFail("xn--ebf031cf7196a.xn--1ug9540g", false); } // [C2, V7]
18730test { try toAsciiFail("xn--ebf031cf7196a.xn--1ug9540g", true); } // [C2, V7]
7499test { try toUnicodeFail("\xf0\x90\xa9\x81\xe2\x89\xae\xf1\xa3\x8a\x9b\xe2\x89\xaf\xef\xbc\x8e\xd9\xac\xf0\x9e\xb5\x95\xe2\xb3\xbf"); } // [B1, B2, B3, V7]18731test { try toUnicodeFail("\xf0\x90\xa9\x81\xe2\x89\xae\xf1\xa3\x8a\x9b\xe2\x89\xaf\xef\xbc\x8e\xd9\xac\xf0\x9e\xb5\x95\xe2\xb3\xbf"); } // [B1, B2, B3, V7]
18732test { try toAsciiFail("\xf0\x90\xa9\x81\xe2\x89\xae\xf1\xa3\x8a\x9b\xe2\x89\xaf\xef\xbc\x8e\xd9\xac\xf0\x9e\xb5\x95\xe2\xb3\xbf", false); } // [B1, B2, B3, V7]
18733test { try toAsciiFail("\xf0\x90\xa9\x81\xe2\x89\xae\xf1\xa3\x8a\x9b\xe2\x89\xaf\xef\xbc\x8e\xd9\xac\xf0\x9e\xb5\x95\xe2\xb3\xbf", true); } // [B1, B2, B3, V7]
7500test { try toUnicodeFail("\xf0\x90\xa9\x81<\xcc\xb8\xf1\xa3\x8a\x9b>\xcc\xb8\xef\xbc\x8e\xd9\xac\xf0\x9e\xb5\x95\xe2\xb3\xbf"); } // [B1, B2, B3, V7]18734test { try toUnicodeFail("\xf0\x90\xa9\x81<\xcc\xb8\xf1\xa3\x8a\x9b>\xcc\xb8\xef\xbc\x8e\xd9\xac\xf0\x9e\xb5\x95\xe2\xb3\xbf"); } // [B1, B2, B3, V7]
18735test { try toAsciiFail("\xf0\x90\xa9\x81<\xcc\xb8\xf1\xa3\x8a\x9b>\xcc\xb8\xef\xbc\x8e\xd9\xac\xf0\x9e\xb5\x95\xe2\xb3\xbf", false); } // [B1, B2, B3, V7]
18736test { try toAsciiFail("\xf0\x90\xa9\x81<\xcc\xb8\xf1\xa3\x8a\x9b>\xcc\xb8\xef\xbc\x8e\xd9\xac\xf0\x9e\xb5\x95\xe2\xb3\xbf", true); } // [B1, B2, B3, V7]
7501test { try toUnicodeFail("\xf0\x90\xa9\x81\xe2\x89\xae\xf1\xa3\x8a\x9b\xe2\x89\xaf.\xd9\xac\xf0\x9e\xb5\x95\xe2\xb3\xbf"); } // [B1, B2, B3, V7]18737test { try toUnicodeFail("\xf0\x90\xa9\x81\xe2\x89\xae\xf1\xa3\x8a\x9b\xe2\x89\xaf.\xd9\xac\xf0\x9e\xb5\x95\xe2\xb3\xbf"); } // [B1, B2, B3, V7]
18738test { try toAsciiFail("\xf0\x90\xa9\x81\xe2\x89\xae\xf1\xa3\x8a\x9b\xe2\x89\xaf.\xd9\xac\xf0\x9e\xb5\x95\xe2\xb3\xbf", false); } // [B1, B2, B3, V7]
18739test { try toAsciiFail("\xf0\x90\xa9\x81\xe2\x89\xae\xf1\xa3\x8a\x9b\xe2\x89\xaf.\xd9\xac\xf0\x9e\xb5\x95\xe2\xb3\xbf", true); } // [B1, B2, B3, V7]
7502test { try toUnicodeFail("\xf0\x90\xa9\x81<\xcc\xb8\xf1\xa3\x8a\x9b>\xcc\xb8.\xd9\xac\xf0\x9e\xb5\x95\xe2\xb3\xbf"); } // [B1, B2, B3, V7]18740test { try toUnicodeFail("\xf0\x90\xa9\x81<\xcc\xb8\xf1\xa3\x8a\x9b>\xcc\xb8.\xd9\xac\xf0\x9e\xb5\x95\xe2\xb3\xbf"); } // [B1, B2, B3, V7]
18741test { try toAsciiFail("\xf0\x90\xa9\x81<\xcc\xb8\xf1\xa3\x8a\x9b>\xcc\xb8.\xd9\xac\xf0\x9e\xb5\x95\xe2\xb3\xbf", false); } // [B1, B2, B3, V7]
18742test { try toAsciiFail("\xf0\x90\xa9\x81<\xcc\xb8\xf1\xa3\x8a\x9b>\xcc\xb8.\xd9\xac\xf0\x9e\xb5\x95\xe2\xb3\xbf", true); } // [B1, B2, B3, V7]
7503test { try toUnicodeFail("xn--gdhc0519o0y27b.xn--lib468q0d21a"); } // [B1, B2, B3, V7]18743test { try toUnicodeFail("xn--gdhc0519o0y27b.xn--lib468q0d21a"); } // [B1, B2, B3, V7]
18744test { try toAsciiFail("xn--gdhc0519o0y27b.xn--lib468q0d21a", false); } // [B1, B2, B3, V7]
18745test { try toAsciiFail("xn--gdhc0519o0y27b.xn--lib468q0d21a", true); } // [B1, B2, B3, V7]
7504test { try toUnicodeFail("-\xef\xbd\xa1\xe2\xba\x90"); } // [V3]18746test { try toUnicodeFail("-\xef\xbd\xa1\xe2\xba\x90"); } // [V3]
18747test { try toAsciiFail("-\xef\xbd\xa1\xe2\xba\x90", false); } // [V3]
18748test { try toAsciiFail("-\xef\xbd\xa1\xe2\xba\x90", true); } // [V3]
7505test { try toUnicodeFail("-\xe3\x80\x82\xe2\xba\x90"); } // [V3]18749test { try toUnicodeFail("-\xe3\x80\x82\xe2\xba\x90"); } // [V3]
18750test { try toAsciiFail("-\xe3\x80\x82\xe2\xba\x90", false); } // [V3]
18751test { try toAsciiFail("-\xe3\x80\x82\xe2\xba\x90", true); } // [V3]
7506test { try toUnicodeFail("-.xn--6vj"); } // [V3]18752test { try toUnicodeFail("-.xn--6vj"); } // [V3]
18753test { try toAsciiFail("-.xn--6vj", false); } // [V3]
18754test { try toAsciiFail("-.xn--6vj", true); } // [V3]
7507test { try toUnicodeFail("\xf3\xa0\xb0\xa9\xf0\x91\xb2\xac\xef\xbc\x8e\xd9\x9c"); } // [V6, V7]18755test { try toUnicodeFail("\xf3\xa0\xb0\xa9\xf0\x91\xb2\xac\xef\xbc\x8e\xd9\x9c"); } // [V6, V7]
18756test { try toAsciiFail("\xf3\xa0\xb0\xa9\xf0\x91\xb2\xac\xef\xbc\x8e\xd9\x9c", false); } // [V6, V7]
18757test { try toAsciiFail("\xf3\xa0\xb0\xa9\xf0\x91\xb2\xac\xef\xbc\x8e\xd9\x9c", true); } // [V6, V7]
7508test { try toUnicodeFail("\xf3\xa0\xb0\xa9\xf0\x91\xb2\xac.\xd9\x9c"); } // [V6, V7]18758test { try toUnicodeFail("\xf3\xa0\xb0\xa9\xf0\x91\xb2\xac.\xd9\x9c"); } // [V6, V7]
18759test { try toAsciiFail("\xf3\xa0\xb0\xa9\xf0\x91\xb2\xac.\xd9\x9c", false); } // [V6, V7]
18760test { try toAsciiFail("\xf3\xa0\xb0\xa9\xf0\x91\xb2\xac.\xd9\x9c", true); } // [V6, V7]
7509test { try toUnicodeFail("xn--sn3d59267c.xn--4hb"); } // [V6, V7]18761test { try toUnicodeFail("xn--sn3d59267c.xn--4hb"); } // [V6, V7]
18762test { try toAsciiFail("xn--sn3d59267c.xn--4hb", false); } // [V6, V7]
18763test { try toAsciiFail("xn--sn3d59267c.xn--4hb", true); } // [V6, V7]
7510test { try toUnicodeFail("\xf0\x90\x8d\xba.\xf1\x9a\x87\x83\xe2\x80\x8c"); } // [C1, V6, V7]18764test { try toUnicodeFail("\xf0\x90\x8d\xba.\xf1\x9a\x87\x83\xe2\x80\x8c"); } // [C1, V6, V7]
18765test { try toAsciiFail("\xf0\x90\x8d\xba.\xf1\x9a\x87\x83\xe2\x80\x8c", false); } // [C1, V6, V7]
18766test { try toAsciiFail("\xf0\x90\x8d\xba.\xf1\x9a\x87\x83\xe2\x80\x8c", true); } // [V6, V7]
7511test { try toUnicodeFail("xn--ie8c.xn--2g51a"); } // [V6, V7]18767test { try toUnicodeFail("xn--ie8c.xn--2g51a"); } // [V6, V7]
18768test { try toAsciiFail("xn--ie8c.xn--2g51a", false); } // [V6, V7]
18769test { try toAsciiFail("xn--ie8c.xn--2g51a", true); } // [V6, V7]
7512test { try toUnicodeFail("xn--ie8c.xn--0ug03366c"); } // [C1, V6, V7]18770test { try toUnicodeFail("xn--ie8c.xn--0ug03366c"); } // [C1, V6, V7]
18771test { try toAsciiFail("xn--ie8c.xn--0ug03366c", false); } // [C1, V6, V7]
18772test { try toAsciiFail("xn--ie8c.xn--0ug03366c", true); } // [C1, V6, V7]
7513test { try toUnicodeFail("\xd8\xbd\xdb\xa3.\xf0\x90\xa8\x8e"); } // [B1, V6]18773test { try toUnicodeFail("\xd8\xbd\xdb\xa3.\xf0\x90\xa8\x8e"); } // [B1, V6]
18774test { try toAsciiFail("\xd8\xbd\xdb\xa3.\xf0\x90\xa8\x8e", false); } // [B1, V6]
18775test { try toAsciiFail("\xd8\xbd\xdb\xa3.\xf0\x90\xa8\x8e", true); } // [B1, V6]
7514test { try toUnicodeFail("xn--8gb64a.xn--mr9c"); } // [B1, V6]18776test { try toUnicodeFail("xn--8gb64a.xn--mr9c"); } // [B1, V6]
18777test { try toAsciiFail("xn--8gb64a.xn--mr9c", false); } // [B1, V6]
18778test { try toAsciiFail("xn--8gb64a.xn--mr9c", true); } // [B1, V6]
7515test { try toUnicodeFail("\xe6\xbc\xa6\xe1\x82\xb9\xcf\x82.\xf1\xa1\xbb\x80\xf0\x90\xb4\x84"); } // [B5, B6, V7]18779test { try toUnicodeFail("\xe6\xbc\xa6\xe1\x82\xb9\xcf\x82.\xf1\xa1\xbb\x80\xf0\x90\xb4\x84"); } // [B5, B6, V7]
18780test { try toAsciiFail("\xe6\xbc\xa6\xe1\x82\xb9\xcf\x82.\xf1\xa1\xbb\x80\xf0\x90\xb4\x84", false); } // [B5, B6, V7]
18781test { try toAsciiFail("\xe6\xbc\xa6\xe1\x82\xb9\xcf\x82.\xf1\xa1\xbb\x80\xf0\x90\xb4\x84", true); } // [B5, B6, V7]
7516test { try toUnicodeFail("\xe6\xbc\xa6\xe2\xb4\x99\xcf\x82.\xf1\xa1\xbb\x80\xf0\x90\xb4\x84"); } // [B5, B6, V7]18782test { try toUnicodeFail("\xe6\xbc\xa6\xe2\xb4\x99\xcf\x82.\xf1\xa1\xbb\x80\xf0\x90\xb4\x84"); } // [B5, B6, V7]
18783test { try toAsciiFail("\xe6\xbc\xa6\xe2\xb4\x99\xcf\x82.\xf1\xa1\xbb\x80\xf0\x90\xb4\x84", false); } // [B5, B6, V7]
18784test { try toAsciiFail("\xe6\xbc\xa6\xe2\xb4\x99\xcf\x82.\xf1\xa1\xbb\x80\xf0\x90\xb4\x84", true); } // [B5, B6, V7]
7517test { try toUnicodeFail("\xe6\xbc\xa6\xe1\x82\xb9\xce\xa3.\xf1\xa1\xbb\x80\xf0\x90\xb4\x84"); } // [B5, B6, V7]18785test { try toUnicodeFail("\xe6\xbc\xa6\xe1\x82\xb9\xce\xa3.\xf1\xa1\xbb\x80\xf0\x90\xb4\x84"); } // [B5, B6, V7]
18786test { try toAsciiFail("\xe6\xbc\xa6\xe1\x82\xb9\xce\xa3.\xf1\xa1\xbb\x80\xf0\x90\xb4\x84", false); } // [B5, B6, V7]
18787test { try toAsciiFail("\xe6\xbc\xa6\xe1\x82\xb9\xce\xa3.\xf1\xa1\xbb\x80\xf0\x90\xb4\x84", true); } // [B5, B6, V7]
7518test { try toUnicodeFail("\xe6\xbc\xa6\xe2\xb4\x99\xcf\x83.\xf1\xa1\xbb\x80\xf0\x90\xb4\x84"); } // [B5, B6, V7]18788test { try toUnicodeFail("\xe6\xbc\xa6\xe2\xb4\x99\xcf\x83.\xf1\xa1\xbb\x80\xf0\x90\xb4\x84"); } // [B5, B6, V7]
18789test { try toAsciiFail("\xe6\xbc\xa6\xe2\xb4\x99\xcf\x83.\xf1\xa1\xbb\x80\xf0\x90\xb4\x84", false); } // [B5, B6, V7]
18790test { try toAsciiFail("\xe6\xbc\xa6\xe2\xb4\x99\xcf\x83.\xf1\xa1\xbb\x80\xf0\x90\xb4\x84", true); } // [B5, B6, V7]
7519test { try toUnicodeFail("\xe6\xbc\xa6\xe1\x82\xb9\xcf\x83.\xf1\xa1\xbb\x80\xf0\x90\xb4\x84"); } // [B5, B6, V7]18791test { try toUnicodeFail("\xe6\xbc\xa6\xe1\x82\xb9\xcf\x83.\xf1\xa1\xbb\x80\xf0\x90\xb4\x84"); } // [B5, B6, V7]
18792test { try toAsciiFail("\xe6\xbc\xa6\xe1\x82\xb9\xcf\x83.\xf1\xa1\xbb\x80\xf0\x90\xb4\x84", false); } // [B5, B6, V7]
18793test { try toAsciiFail("\xe6\xbc\xa6\xe1\x82\xb9\xcf\x83.\xf1\xa1\xbb\x80\xf0\x90\xb4\x84", true); } // [B5, B6, V7]
7520test { try toUnicodeFail("xn--4xa772sl47b.xn--9d0d3162t"); } // [B5, B6, V7]18794test { try toUnicodeFail("xn--4xa772sl47b.xn--9d0d3162t"); } // [B5, B6, V7]
18795test { try toAsciiFail("xn--4xa772sl47b.xn--9d0d3162t", false); } // [B5, B6, V7]
18796test { try toAsciiFail("xn--4xa772sl47b.xn--9d0d3162t", true); } // [B5, B6, V7]
7521test { try toUnicodeFail("xn--3xa972sl47b.xn--9d0d3162t"); } // [B5, B6, V7]18797test { try toUnicodeFail("xn--3xa972sl47b.xn--9d0d3162t"); } // [B5, B6, V7]
18798test { try toAsciiFail("xn--3xa972sl47b.xn--9d0d3162t", false); } // [B5, B6, V7]
18799test { try toAsciiFail("xn--3xa972sl47b.xn--9d0d3162t", true); } // [B5, B6, V7]
7522test { try toUnicodeFail("xn--4xa947d717e.xn--9d0d3162t"); } // [B5, B6, V7]18800test { try toUnicodeFail("xn--4xa947d717e.xn--9d0d3162t"); } // [B5, B6, V7]
18801test { try toAsciiFail("xn--4xa947d717e.xn--9d0d3162t", false); } // [B5, B6, V7]
18802test { try toAsciiFail("xn--4xa947d717e.xn--9d0d3162t", true); } // [B5, B6, V7]
7523test { try toUnicodeFail("xn--3xa157d717e.xn--9d0d3162t"); } // [B5, B6, V7]18803test { try toUnicodeFail("xn--3xa157d717e.xn--9d0d3162t"); } // [B5, B6, V7]
18804test { try toAsciiFail("xn--3xa157d717e.xn--9d0d3162t", false); } // [B5, B6, V7]
18805test { try toAsciiFail("xn--3xa157d717e.xn--9d0d3162t", true); } // [B5, B6, V7]
7524test { try toUnicodeFail("\xf0\x90\xb9\xab\xe8\xb8\xa7\xe0\xb3\x8d\xf2\xab\x9a\x87.\xf3\x9c\x80\x83\xe2\x92\x88\xf0\x9d\xa8\xa4"); } // [B1, V7]18806test { try toUnicodeFail("\xf0\x90\xb9\xab\xe8\xb8\xa7\xe0\xb3\x8d\xf2\xab\x9a\x87.\xf3\x9c\x80\x83\xe2\x92\x88\xf0\x9d\xa8\xa4"); } // [B1, V7]
18807test { try toAsciiFail("\xf0\x90\xb9\xab\xe8\xb8\xa7\xe0\xb3\x8d\xf2\xab\x9a\x87.\xf3\x9c\x80\x83\xe2\x92\x88\xf0\x9d\xa8\xa4", false); } // [B1, V7]
18808test { try toAsciiFail("\xf0\x90\xb9\xab\xe8\xb8\xa7\xe0\xb3\x8d\xf2\xab\x9a\x87.\xf3\x9c\x80\x83\xe2\x92\x88\xf0\x9d\xa8\xa4", true); } // [B1, V7]
7525test { try toUnicodeFail("\xf0\x90\xb9\xab\xe8\xb8\xa7\xe0\xb3\x8d\xf2\xab\x9a\x87.\xf3\x9c\x80\x831.\xf0\x9d\xa8\xa4"); } // [B1, V6, V7]18809test { try toUnicodeFail("\xf0\x90\xb9\xab\xe8\xb8\xa7\xe0\xb3\x8d\xf2\xab\x9a\x87.\xf3\x9c\x80\x831.\xf0\x9d\xa8\xa4"); } // [B1, V6, V7]
18810test { try toAsciiFail("\xf0\x90\xb9\xab\xe8\xb8\xa7\xe0\xb3\x8d\xf2\xab\x9a\x87.\xf3\x9c\x80\x831.\xf0\x9d\xa8\xa4", false); } // [B1, V6, V7]
18811test { try toAsciiFail("\xf0\x90\xb9\xab\xe8\xb8\xa7\xe0\xb3\x8d\xf2\xab\x9a\x87.\xf3\x9c\x80\x831.\xf0\x9d\xa8\xa4", true); } // [B1, V6, V7]
7526test { try toUnicodeFail("xn--8tc1437dro0d6q06h.xn--1-p948l.xn--m82h"); } // [B1, V6, V7]18812test { try toUnicodeFail("xn--8tc1437dro0d6q06h.xn--1-p948l.xn--m82h"); } // [B1, V6, V7]
18813test { try toAsciiFail("xn--8tc1437dro0d6q06h.xn--1-p948l.xn--m82h", false); } // [B1, V6, V7]
18814test { try toAsciiFail("xn--8tc1437dro0d6q06h.xn--1-p948l.xn--m82h", true); } // [B1, V6, V7]
7527test { try toUnicodeFail("xn--8tc1437dro0d6q06h.xn--tsh2611ncu71e"); } // [B1, V7]18815test { try toUnicodeFail("xn--8tc1437dro0d6q06h.xn--tsh2611ncu71e"); } // [B1, V7]
18816test { try toAsciiFail("xn--8tc1437dro0d6q06h.xn--tsh2611ncu71e", false); } // [B1, V7]
18817test { try toAsciiFail("xn--8tc1437dro0d6q06h.xn--tsh2611ncu71e", true); } // [B1, V7]
7528test { try toUnicodeFail("\xe2\x80\x8d\xe2\x89\xae\xef\xbc\x8e\xf3\xa0\x9f\xaa\xf0\xb9\xab\x8f-"); } // [C2, V3, V7]18818test { try toUnicodeFail("\xe2\x80\x8d\xe2\x89\xae\xef\xbc\x8e\xf3\xa0\x9f\xaa\xf0\xb9\xab\x8f-"); } // [C2, V3, V7]
18819test { try toAsciiFail("\xe2\x80\x8d\xe2\x89\xae\xef\xbc\x8e\xf3\xa0\x9f\xaa\xf0\xb9\xab\x8f-", false); } // [C2, V3, V7]
18820test { try toAsciiFail("\xe2\x80\x8d\xe2\x89\xae\xef\xbc\x8e\xf3\xa0\x9f\xaa\xf0\xb9\xab\x8f-", true); } // [V3, V7]
7529test { try toUnicodeFail("\xe2\x80\x8d<\xcc\xb8\xef\xbc\x8e\xf3\xa0\x9f\xaa\xf0\xb9\xab\x8f-"); } // [C2, V3, V7]18821test { try toUnicodeFail("\xe2\x80\x8d<\xcc\xb8\xef\xbc\x8e\xf3\xa0\x9f\xaa\xf0\xb9\xab\x8f-"); } // [C2, V3, V7]
18822test { try toAsciiFail("\xe2\x80\x8d<\xcc\xb8\xef\xbc\x8e\xf3\xa0\x9f\xaa\xf0\xb9\xab\x8f-", false); } // [C2, V3, V7]
18823test { try toAsciiFail("\xe2\x80\x8d<\xcc\xb8\xef\xbc\x8e\xf3\xa0\x9f\xaa\xf0\xb9\xab\x8f-", true); } // [V3, V7]
7530test { try toUnicodeFail("\xe2\x80\x8d\xe2\x89\xae.\xf3\xa0\x9f\xaa\xf0\xb9\xab\x8f-"); } // [C2, V3, V7]18824test { try toUnicodeFail("\xe2\x80\x8d\xe2\x89\xae.\xf3\xa0\x9f\xaa\xf0\xb9\xab\x8f-"); } // [C2, V3, V7]
18825test { try toAsciiFail("\xe2\x80\x8d\xe2\x89\xae.\xf3\xa0\x9f\xaa\xf0\xb9\xab\x8f-", false); } // [C2, V3, V7]
18826test { try toAsciiFail("\xe2\x80\x8d\xe2\x89\xae.\xf3\xa0\x9f\xaa\xf0\xb9\xab\x8f-", true); } // [V3, V7]
7531test { try toUnicodeFail("\xe2\x80\x8d<\xcc\xb8.\xf3\xa0\x9f\xaa\xf0\xb9\xab\x8f-"); } // [C2, V3, V7]18827test { try toUnicodeFail("\xe2\x80\x8d<\xcc\xb8.\xf3\xa0\x9f\xaa\xf0\xb9\xab\x8f-"); } // [C2, V3, V7]
18828test { try toAsciiFail("\xe2\x80\x8d<\xcc\xb8.\xf3\xa0\x9f\xaa\xf0\xb9\xab\x8f-", false); } // [C2, V3, V7]
18829test { try toAsciiFail("\xe2\x80\x8d<\xcc\xb8.\xf3\xa0\x9f\xaa\xf0\xb9\xab\x8f-", true); } // [V3, V7]
7532test { try toUnicodeFail("xn--gdh.xn----cr99a1w710b"); } // [V3, V7]18830test { try toUnicodeFail("xn--gdh.xn----cr99a1w710b"); } // [V3, V7]
18831test { try toAsciiFail("xn--gdh.xn----cr99a1w710b", false); } // [V3, V7]
18832test { try toAsciiFail("xn--gdh.xn----cr99a1w710b", true); } // [V3, V7]
7533test { try toUnicodeFail("xn--1ug95g.xn----cr99a1w710b"); } // [C2, V3, V7]18833test { try toUnicodeFail("xn--1ug95g.xn----cr99a1w710b"); } // [C2, V3, V7]
18834test { try toAsciiFail("xn--1ug95g.xn----cr99a1w710b", false); } // [C2, V3, V7]
18835test { try toAsciiFail("xn--1ug95g.xn----cr99a1w710b", true); } // [C2, V3, V7]
7534test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8d\xe8\xa5\x94\xe3\x80\x82\xe1\x82\xbc5\xea\xa1\xae\xf1\xb5\x9d\x8f"); } // [C2, V7]18836test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8d\xe8\xa5\x94\xe3\x80\x82\xe1\x82\xbc5\xea\xa1\xae\xf1\xb5\x9d\x8f"); } // [C2, V7]
18837test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8d\xe8\xa5\x94\xe3\x80\x82\xe1\x82\xbc5\xea\xa1\xae\xf1\xb5\x9d\x8f", false); } // [C2, V7]
18838test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8d\xe8\xa5\x94\xe3\x80\x82\xe1\x82\xbc5\xea\xa1\xae\xf1\xb5\x9d\x8f", true); } // [V7]
7535test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8d\xe8\xa5\x94\xe3\x80\x82\xe2\xb4\x9c5\xea\xa1\xae\xf1\xb5\x9d\x8f"); } // [C2, V7]18839test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8d\xe8\xa5\x94\xe3\x80\x82\xe2\xb4\x9c5\xea\xa1\xae\xf1\xb5\x9d\x8f"); } // [C2, V7]
18840test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8d\xe8\xa5\x94\xe3\x80\x82\xe2\xb4\x9c5\xea\xa1\xae\xf1\xb5\x9d\x8f", false); } // [C2, V7]
18841test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8d\xe8\xa5\x94\xe3\x80\x82\xe2\xb4\x9c5\xea\xa1\xae\xf1\xb5\x9d\x8f", true); } // [V7]
7536test { try toUnicodeFail("xn--2u2a.xn--5-uws5848bpf44e"); } // [V7]18842test { try toUnicodeFail("xn--2u2a.xn--5-uws5848bpf44e"); } // [V7]
18843test { try toAsciiFail("xn--2u2a.xn--5-uws5848bpf44e", false); } // [V7]
18844test { try toAsciiFail("xn--2u2a.xn--5-uws5848bpf44e", true); } // [V7]
7537test { try toUnicodeFail("xn--1uga7691f.xn--5-uws5848bpf44e"); } // [C2, V7]18845test { try toUnicodeFail("xn--1uga7691f.xn--5-uws5848bpf44e"); } // [C2, V7]
18846test { try toAsciiFail("xn--1uga7691f.xn--5-uws5848bpf44e", false); } // [C2, V7]
18847test { try toAsciiFail("xn--1uga7691f.xn--5-uws5848bpf44e", true); } // [C2, V7]
7538test { try toUnicodeFail("xn--2u2a.xn--5-r1g7167ipfw8d"); } // [V7]18848test { try toUnicodeFail("xn--2u2a.xn--5-r1g7167ipfw8d"); } // [V7]
18849test { try toAsciiFail("xn--2u2a.xn--5-r1g7167ipfw8d", false); } // [V7]
18850test { try toAsciiFail("xn--2u2a.xn--5-r1g7167ipfw8d", true); } // [V7]
7539test { try toUnicodeFail("xn--1uga7691f.xn--5-r1g7167ipfw8d"); } // [C2, V7]18851test { try toUnicodeFail("xn--1uga7691f.xn--5-r1g7167ipfw8d"); } // [C2, V7]
18852test { try toAsciiFail("xn--1uga7691f.xn--5-r1g7167ipfw8d", false); } // [C2, V7]
18853test { try toAsciiFail("xn--1uga7691f.xn--5-r1g7167ipfw8d", true); } // [C2, V7]
7540test { try toAsciiPass("\xf0\x90\xab\x9c\xf0\x91\x8c\xbc\xe2\x80\x8d\xef\xbc\x8e\xe5\xa9\x80", "xn--ix9c26l.xn--q0s", true); }18854test { try toAsciiPass("\xf0\x90\xab\x9c\xf0\x91\x8c\xbc\xe2\x80\x8d\xef\xbc\x8e\xe5\xa9\x80", "xn--ix9c26l.xn--q0s", true); }
7541test { try toUnicodeFail("\xf0\x90\xab\x9c\xf0\x91\x8c\xbc\xe2\x80\x8d\xef\xbc\x8e\xe5\xa9\x80"); } // [B3, C2]18855test { try toUnicodeFail("\xf0\x90\xab\x9c\xf0\x91\x8c\xbc\xe2\x80\x8d\xef\xbc\x8e\xe5\xa9\x80"); } // [B3, C2]
18856test { try toAsciiFail("\xf0\x90\xab\x9c\xf0\x91\x8c\xbc\xe2\x80\x8d\xef\xbc\x8e\xe5\xa9\x80", false); } // [B3, C2]
7542test { try toAsciiPass("\xf0\x90\xab\x9c\xf0\x91\x8c\xbc\xe2\x80\x8d.\xe5\xa9\x80", "xn--ix9c26l.xn--q0s", true); }18857test { try toAsciiPass("\xf0\x90\xab\x9c\xf0\x91\x8c\xbc\xe2\x80\x8d.\xe5\xa9\x80", "xn--ix9c26l.xn--q0s", true); }
7543test { try toUnicodeFail("\xf0\x90\xab\x9c\xf0\x91\x8c\xbc\xe2\x80\x8d.\xe5\xa9\x80"); } // [B3, C2]18858test { try toUnicodeFail("\xf0\x90\xab\x9c\xf0\x91\x8c\xbc\xe2\x80\x8d.\xe5\xa9\x80"); } // [B3, C2]
18859test { try toAsciiFail("\xf0\x90\xab\x9c\xf0\x91\x8c\xbc\xe2\x80\x8d.\xe5\xa9\x80", false); } // [B3, C2]
7544test { try toUnicodePass("xn--ix9c26l.xn--q0s", "\xf0\x90\xab\x9c\xf0\x91\x8c\xbc.\xe5\xa9\x80"); }18860test { try toUnicodePass("xn--ix9c26l.xn--q0s", "\xf0\x90\xab\x9c\xf0\x91\x8c\xbc.\xe5\xa9\x80"); }
7545test { try toAsciiPass("xn--ix9c26l.xn--q0s", "xn--ix9c26l.xn--q0s", false); }18861test { try toAsciiPass("xn--ix9c26l.xn--q0s", "xn--ix9c26l.xn--q0s", false); }
7546test { try toAsciiPass("xn--ix9c26l.xn--q0s", "xn--ix9c26l.xn--q0s", true); }18862test { try toAsciiPass("xn--ix9c26l.xn--q0s", "xn--ix9c26l.xn--q0s", true); }
...@@ -7548,65 +18864,185 @@ test { try toUnicodePass("\xf0\x90\xab\x9c\xf0\x91\x8c\xbc.\xe5\xa9\x80", "\xf0\...@@ -7548,65 +18864,185 @@ test { try toUnicodePass("\xf0\x90\xab\x9c\xf0\x91\x8c\xbc.\xe5\xa9\x80", "\xf0\
7548test { try toAsciiPass("\xf0\x90\xab\x9c\xf0\x91\x8c\xbc.\xe5\xa9\x80", "xn--ix9c26l.xn--q0s", false); }18864test { try toAsciiPass("\xf0\x90\xab\x9c\xf0\x91\x8c\xbc.\xe5\xa9\x80", "xn--ix9c26l.xn--q0s", false); }
7549test { try toAsciiPass("\xf0\x90\xab\x9c\xf0\x91\x8c\xbc.\xe5\xa9\x80", "xn--ix9c26l.xn--q0s", true); }18865test { try toAsciiPass("\xf0\x90\xab\x9c\xf0\x91\x8c\xbc.\xe5\xa9\x80", "xn--ix9c26l.xn--q0s", true); }
7550test { try toUnicodeFail("xn--1ugx063g1if.xn--q0s"); } // [B3, C2]18866test { try toUnicodeFail("xn--1ugx063g1if.xn--q0s"); } // [B3, C2]
18867test { try toAsciiFail("xn--1ugx063g1if.xn--q0s", false); } // [B3, C2]
18868test { try toAsciiFail("xn--1ugx063g1if.xn--q0s", true); } // [B3, C2]
7551test { try toUnicodeFail("\xf3\xa0\x85\xbd\xef\xb8\x92\xef\xb8\x92\xf0\x90\xb9\xaf\xef\xbd\xa1\xe2\xac\xb3\xe1\xa9\xb8"); } // [B1, V7]18869test { try toUnicodeFail("\xf3\xa0\x85\xbd\xef\xb8\x92\xef\xb8\x92\xf0\x90\xb9\xaf\xef\xbd\xa1\xe2\xac\xb3\xe1\xa9\xb8"); } // [B1, V7]
18870test { try toAsciiFail("\xf3\xa0\x85\xbd\xef\xb8\x92\xef\xb8\x92\xf0\x90\xb9\xaf\xef\xbd\xa1\xe2\xac\xb3\xe1\xa9\xb8", false); } // [B1, V7]
18871test { try toAsciiFail("\xf3\xa0\x85\xbd\xef\xb8\x92\xef\xb8\x92\xf0\x90\xb9\xaf\xef\xbd\xa1\xe2\xac\xb3\xe1\xa9\xb8", true); } // [B1, V7]
7552test { try toUnicodeFail("\xf3\xa0\x85\xbd\xe3\x80\x82\xe3\x80\x82\xf0\x90\xb9\xaf\xe3\x80\x82\xe2\xac\xb3\xe1\xa9\xb8"); } // [B1, X4_2]18872test { try toUnicodeFail("\xf3\xa0\x85\xbd\xe3\x80\x82\xe3\x80\x82\xf0\x90\xb9\xaf\xe3\x80\x82\xe2\xac\xb3\xe1\xa9\xb8"); } // [B1, X4_2]
18873test { try toAsciiFail("\xf3\xa0\x85\xbd\xe3\x80\x82\xe3\x80\x82\xf0\x90\xb9\xaf\xe3\x80\x82\xe2\xac\xb3\xe1\xa9\xb8", false); } // [B1, A4_2]
18874test { try toAsciiFail("\xf3\xa0\x85\xbd\xe3\x80\x82\xe3\x80\x82\xf0\x90\xb9\xaf\xe3\x80\x82\xe2\xac\xb3\xe1\xa9\xb8", true); } // [B1, A4_2]
7553test { try toUnicodeFail("..xn--no0d.xn--7of309e"); } // [B1, X4_2]18875test { try toUnicodeFail("..xn--no0d.xn--7of309e"); } // [B1, X4_2]
18876test { try toAsciiFail("..xn--no0d.xn--7of309e", false); } // [B1, A4_2]
18877test { try toAsciiFail("..xn--no0d.xn--7of309e", true); } // [B1, A4_2]
7554test { try toUnicodeFail("xn--y86ca186j.xn--7of309e"); } // [B1, V7]18878test { try toUnicodeFail("xn--y86ca186j.xn--7of309e"); } // [B1, V7]
18879test { try toAsciiFail("xn--y86ca186j.xn--7of309e", false); } // [B1, V7]
18880test { try toAsciiFail("xn--y86ca186j.xn--7of309e", true); } // [B1, V7]
7555test { try toUnicodeFail("\xf0\x9d\x9f\x96\xc3\x9f\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe1\x82\xaf"); } // [V3, U1]18881test { try toUnicodeFail("\xf0\x9d\x9f\x96\xc3\x9f\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe1\x82\xaf"); } // [V3, U1]
18882test { try toAsciiFail("\xf0\x9d\x9f\x96\xc3\x9f\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe1\x82\xaf", false); } // [V3, U1]
18883test { try toAsciiFail("\xf0\x9d\x9f\x96\xc3\x9f\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe1\x82\xaf", true); } // [V3, U1]
7556test { try toUnicodeFail("8\xc3\x9f.\xf3\xa0\x84\x90-?\xe1\x82\xaf"); } // [V3, U1]18884test { try toUnicodeFail("8\xc3\x9f.\xf3\xa0\x84\x90-?\xe1\x82\xaf"); } // [V3, U1]
18885test { try toAsciiFail("8\xc3\x9f.\xf3\xa0\x84\x90-?\xe1\x82\xaf", false); } // [V3, U1]
18886test { try toAsciiFail("8\xc3\x9f.\xf3\xa0\x84\x90-?\xe1\x82\xaf", true); } // [V3, U1]
7557test { try toUnicodeFail("8\xc3\x9f.\xf3\xa0\x84\x90-?\xe2\xb4\x8f"); } // [V3, U1]18887test { try toUnicodeFail("8\xc3\x9f.\xf3\xa0\x84\x90-?\xe2\xb4\x8f"); } // [V3, U1]
18888test { try toAsciiFail("8\xc3\x9f.\xf3\xa0\x84\x90-?\xe2\xb4\x8f", false); } // [V3, U1]
18889test { try toAsciiFail("8\xc3\x9f.\xf3\xa0\x84\x90-?\xe2\xb4\x8f", true); } // [V3, U1]
7558test { try toUnicodeFail("8SS.\xf3\xa0\x84\x90-?\xe1\x82\xaf"); } // [V3, U1]18890test { try toUnicodeFail("8SS.\xf3\xa0\x84\x90-?\xe1\x82\xaf"); } // [V3, U1]
18891test { try toAsciiFail("8SS.\xf3\xa0\x84\x90-?\xe1\x82\xaf", false); } // [V3, U1]
18892test { try toAsciiFail("8SS.\xf3\xa0\x84\x90-?\xe1\x82\xaf", true); } // [V3, U1]
7559test { try toUnicodeFail("8ss.\xf3\xa0\x84\x90-?\xe2\xb4\x8f"); } // [V3, U1]18893test { try toUnicodeFail("8ss.\xf3\xa0\x84\x90-?\xe2\xb4\x8f"); } // [V3, U1]
18894test { try toAsciiFail("8ss.\xf3\xa0\x84\x90-?\xe2\xb4\x8f", false); } // [V3, U1]
18895test { try toAsciiFail("8ss.\xf3\xa0\x84\x90-?\xe2\xb4\x8f", true); } // [V3, U1]
7560test { try toUnicodeFail("8ss.\xf3\xa0\x84\x90-?\xe1\x82\xaf"); } // [V3, U1]18896test { try toUnicodeFail("8ss.\xf3\xa0\x84\x90-?\xe1\x82\xaf"); } // [V3, U1]
18897test { try toAsciiFail("8ss.\xf3\xa0\x84\x90-?\xe1\x82\xaf", false); } // [V3, U1]
18898test { try toAsciiFail("8ss.\xf3\xa0\x84\x90-?\xe1\x82\xaf", true); } // [V3, U1]
7561test { try toUnicodeFail("8ss.xn---?-261a"); } // [V3, U1]18899test { try toUnicodeFail("8ss.xn---?-261a"); } // [V3, U1]
18900test { try toAsciiFail("8ss.xn---?-261a", false); } // [V3, U1]
18901test { try toAsciiFail("8ss.xn---?-261a", true); } // [V3, U1]
7562test { try toUnicodeFail("xn--8-qfa.xn---?-261a"); } // [V3, U1]18902test { try toUnicodeFail("xn--8-qfa.xn---?-261a"); } // [V3, U1]
18903test { try toAsciiFail("xn--8-qfa.xn---?-261a", false); } // [V3, U1]
18904test { try toAsciiFail("xn--8-qfa.xn---?-261a", true); } // [V3, U1]
7563test { try toUnicodeFail("\xf0\x9d\x9f\x96\xc3\x9f\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe2\xb4\x8f"); } // [V3, U1]18905test { try toUnicodeFail("\xf0\x9d\x9f\x96\xc3\x9f\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe2\xb4\x8f"); } // [V3, U1]
18906test { try toAsciiFail("\xf0\x9d\x9f\x96\xc3\x9f\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe2\xb4\x8f", false); } // [V3, U1]
18907test { try toAsciiFail("\xf0\x9d\x9f\x96\xc3\x9f\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe2\xb4\x8f", true); } // [V3, U1]
7564test { try toUnicodeFail("\xf0\x9d\x9f\x96SS\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe1\x82\xaf"); } // [V3, U1]18908test { try toUnicodeFail("\xf0\x9d\x9f\x96SS\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe1\x82\xaf"); } // [V3, U1]
18909test { try toAsciiFail("\xf0\x9d\x9f\x96SS\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe1\x82\xaf", false); } // [V3, U1]
18910test { try toAsciiFail("\xf0\x9d\x9f\x96SS\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe1\x82\xaf", true); } // [V3, U1]
7565test { try toUnicodeFail("\xf0\x9d\x9f\x96ss\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe2\xb4\x8f"); } // [V3, U1]18911test { try toUnicodeFail("\xf0\x9d\x9f\x96ss\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe2\xb4\x8f"); } // [V3, U1]
18912test { try toAsciiFail("\xf0\x9d\x9f\x96ss\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe2\xb4\x8f", false); } // [V3, U1]
18913test { try toAsciiFail("\xf0\x9d\x9f\x96ss\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe2\xb4\x8f", true); } // [V3, U1]
7566test { try toUnicodeFail("\xf0\x9d\x9f\x96ss\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe1\x82\xaf"); } // [V3, U1]18914test { try toUnicodeFail("\xf0\x9d\x9f\x96ss\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe1\x82\xaf"); } // [V3, U1]
18915test { try toAsciiFail("\xf0\x9d\x9f\x96ss\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe1\x82\xaf", false); } // [V3, U1]
18916test { try toAsciiFail("\xf0\x9d\x9f\x96ss\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe1\x82\xaf", true); } // [V3, U1]
7567test { try toUnicodeFail("8ss.xn---?-gfk"); } // [V3, V7, U1]18917test { try toUnicodeFail("8ss.xn---?-gfk"); } // [V3, V7, U1]
18918test { try toAsciiFail("8ss.xn---?-gfk", false); } // [V3, V7, U1]
18919test { try toAsciiFail("8ss.xn---?-gfk", true); } // [V3, V7, U1]
7568test { try toUnicodeFail("xn--8-qfa.xn---?-gfk"); } // [V3, V7, U1]18920test { try toUnicodeFail("xn--8-qfa.xn---?-gfk"); } // [V3, V7, U1]
18921test { try toAsciiFail("xn--8-qfa.xn---?-gfk", false); } // [V3, V7, U1]
18922test { try toAsciiFail("xn--8-qfa.xn---?-gfk", true); } // [V3, V7, U1]
7569test { try toUnicodeFail("8ss.-?\xe1\x82\xaf"); } // [V3, U1]18923test { try toUnicodeFail("8ss.-?\xe1\x82\xaf"); } // [V3, U1]
18924test { try toAsciiFail("8ss.-?\xe1\x82\xaf", false); } // [V3, U1]
18925test { try toAsciiFail("8ss.-?\xe1\x82\xaf", true); } // [V3, U1]
7570test { try toUnicodeFail("8ss.-?\xe2\xb4\x8f"); } // [V3, U1]18926test { try toUnicodeFail("8ss.-?\xe2\xb4\x8f"); } // [V3, U1]
18927test { try toAsciiFail("8ss.-?\xe2\xb4\x8f", false); } // [V3, U1]
18928test { try toAsciiFail("8ss.-?\xe2\xb4\x8f", true); } // [V3, U1]
7571test { try toUnicodeFail("8SS.-?\xe1\x82\xaf"); } // [V3, U1]18929test { try toUnicodeFail("8SS.-?\xe1\x82\xaf"); } // [V3, U1]
18930test { try toAsciiFail("8SS.-?\xe1\x82\xaf", false); } // [V3, U1]
18931test { try toAsciiFail("8SS.-?\xe1\x82\xaf", true); } // [V3, U1]
7572test { try toUnicodeFail("xn--8-qfa.-?\xe2\xb4\x8f"); } // [V3, U1]18932test { try toUnicodeFail("xn--8-qfa.-?\xe2\xb4\x8f"); } // [V3, U1]
18933test { try toAsciiFail("xn--8-qfa.-?\xe2\xb4\x8f", false); } // [V3, U1]
18934test { try toAsciiFail("xn--8-qfa.-?\xe2\xb4\x8f", true); } // [V3, U1]
7573test { try toUnicodeFail("XN--8-QFA.-?\xe1\x82\xaf"); } // [V3, U1]18935test { try toUnicodeFail("XN--8-QFA.-?\xe1\x82\xaf"); } // [V3, U1]
18936test { try toAsciiFail("XN--8-QFA.-?\xe1\x82\xaf", false); } // [V3, U1]
18937test { try toAsciiFail("XN--8-QFA.-?\xe1\x82\xaf", true); } // [V3, U1]
7574test { try toUnicodeFail("Xn--8-Qfa.-?\xe1\x82\xaf"); } // [V3, U1]18938test { try toUnicodeFail("Xn--8-Qfa.-?\xe1\x82\xaf"); } // [V3, U1]
18939test { try toAsciiFail("Xn--8-Qfa.-?\xe1\x82\xaf", false); } // [V3, U1]
18940test { try toAsciiFail("Xn--8-Qfa.-?\xe1\x82\xaf", true); } // [V3, U1]
7575test { try toUnicodeFail("xn--8-qfa.-?\xe1\x82\xaf"); } // [V3, U1]18941test { try toUnicodeFail("xn--8-qfa.-?\xe1\x82\xaf"); } // [V3, U1]
18942test { try toAsciiFail("xn--8-qfa.-?\xe1\x82\xaf", false); } // [V3, U1]
18943test { try toAsciiFail("xn--8-qfa.-?\xe1\x82\xaf", true); } // [V3, U1]
7576test { try toUnicodeFail("\xf0\x9d\x9f\x96Ss\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe1\x82\xaf"); } // [V3, U1]18944test { try toUnicodeFail("\xf0\x9d\x9f\x96Ss\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe1\x82\xaf"); } // [V3, U1]
18945test { try toAsciiFail("\xf0\x9d\x9f\x96Ss\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe1\x82\xaf", false); } // [V3, U1]
18946test { try toAsciiFail("\xf0\x9d\x9f\x96Ss\xef\xbc\x8e\xf3\xa0\x84\x90-?\xe1\x82\xaf", true); } // [V3, U1]
7577test { try toUnicodeFail("8Ss.\xf3\xa0\x84\x90-?\xe1\x82\xaf"); } // [V3, U1]18947test { try toUnicodeFail("8Ss.\xf3\xa0\x84\x90-?\xe1\x82\xaf"); } // [V3, U1]
18948test { try toAsciiFail("8Ss.\xf3\xa0\x84\x90-?\xe1\x82\xaf", false); } // [V3, U1]
18949test { try toAsciiFail("8Ss.\xf3\xa0\x84\x90-?\xe1\x82\xaf", true); } // [V3, U1]
7578test { try toUnicodeFail("-\xe2\x80\x8d\xf3\xa0\x8b\x9f.\xe2\x80\x8c\xf0\x90\xb9\xa3\xe1\x82\xa5"); } // [B1, C1, C2, V3, V7]18950test { try toUnicodeFail("-\xe2\x80\x8d\xf3\xa0\x8b\x9f.\xe2\x80\x8c\xf0\x90\xb9\xa3\xe1\x82\xa5"); } // [B1, C1, C2, V3, V7]
18951test { try toAsciiFail("-\xe2\x80\x8d\xf3\xa0\x8b\x9f.\xe2\x80\x8c\xf0\x90\xb9\xa3\xe1\x82\xa5", false); } // [B1, C1, C2, V3, V7]
18952test { try toAsciiFail("-\xe2\x80\x8d\xf3\xa0\x8b\x9f.\xe2\x80\x8c\xf0\x90\xb9\xa3\xe1\x82\xa5", true); } // [B1, V3, V7]
7579test { try toUnicodeFail("-\xe2\x80\x8d\xf3\xa0\x8b\x9f.\xe2\x80\x8c\xf0\x90\xb9\xa3\xe2\xb4\x85"); } // [B1, C1, C2, V3, V7]18953test { try toUnicodeFail("-\xe2\x80\x8d\xf3\xa0\x8b\x9f.\xe2\x80\x8c\xf0\x90\xb9\xa3\xe2\xb4\x85"); } // [B1, C1, C2, V3, V7]
18954test { try toAsciiFail("-\xe2\x80\x8d\xf3\xa0\x8b\x9f.\xe2\x80\x8c\xf0\x90\xb9\xa3\xe2\xb4\x85", false); } // [B1, C1, C2, V3, V7]
18955test { try toAsciiFail("-\xe2\x80\x8d\xf3\xa0\x8b\x9f.\xe2\x80\x8c\xf0\x90\xb9\xa3\xe2\xb4\x85", true); } // [B1, V3, V7]
7580test { try toUnicodeFail("xn----s721m.xn--wkj1423e"); } // [B1, V3, V7]18956test { try toUnicodeFail("xn----s721m.xn--wkj1423e"); } // [B1, V3, V7]
18957test { try toAsciiFail("xn----s721m.xn--wkj1423e", false); } // [B1, V3, V7]
18958test { try toAsciiFail("xn----s721m.xn--wkj1423e", true); } // [B1, V3, V7]
7581test { try toUnicodeFail("xn----ugnv7071n.xn--0ugz32cgr0p"); } // [B1, C1, C2, V3, V7]18959test { try toUnicodeFail("xn----ugnv7071n.xn--0ugz32cgr0p"); } // [B1, C1, C2, V3, V7]
18960test { try toAsciiFail("xn----ugnv7071n.xn--0ugz32cgr0p", false); } // [B1, C1, C2, V3, V7]
18961test { try toAsciiFail("xn----ugnv7071n.xn--0ugz32cgr0p", true); } // [B1, C1, C2, V3, V7]
7582test { try toUnicodeFail("xn----s721m.xn--dnd9201k"); } // [B1, V3, V7]18962test { try toUnicodeFail("xn----s721m.xn--dnd9201k"); } // [B1, V3, V7]
18963test { try toAsciiFail("xn----s721m.xn--dnd9201k", false); } // [B1, V3, V7]
18964test { try toAsciiFail("xn----s721m.xn--dnd9201k", true); } // [B1, V3, V7]
7583test { try toUnicodeFail("xn----ugnv7071n.xn--dnd999e4j4p"); } // [B1, C1, C2, V3, V7]18965test { try toUnicodeFail("xn----ugnv7071n.xn--dnd999e4j4p"); } // [B1, C1, C2, V3, V7]
18966test { try toAsciiFail("xn----ugnv7071n.xn--dnd999e4j4p", false); } // [B1, C1, C2, V3, V7]
18967test { try toAsciiFail("xn----ugnv7071n.xn--dnd999e4j4p", true); } // [B1, C1, C2, V3, V7]
7584test { try toUnicodeFail("\xea\xa6\xb9\xe2\x80\x8d\xed\x81\xb7\xf0\xbb\xb6\xa1\xef\xbd\xa1\xe2\x82\x82"); } // [C2, V6, V7]18968test { try toUnicodeFail("\xea\xa6\xb9\xe2\x80\x8d\xed\x81\xb7\xf0\xbb\xb6\xa1\xef\xbd\xa1\xe2\x82\x82"); } // [C2, V6, V7]
18969test { try toAsciiFail("\xea\xa6\xb9\xe2\x80\x8d\xed\x81\xb7\xf0\xbb\xb6\xa1\xef\xbd\xa1\xe2\x82\x82", false); } // [C2, V6, V7]
18970test { try toAsciiFail("\xea\xa6\xb9\xe2\x80\x8d\xed\x81\xb7\xf0\xbb\xb6\xa1\xef\xbd\xa1\xe2\x82\x82", true); } // [V6, V7]
7585test { try toUnicodeFail("\xea\xa6\xb9\xe2\x80\x8d\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xb2\xf0\xbb\xb6\xa1\xef\xbd\xa1\xe2\x82\x82"); } // [C2, V6, V7]18971test { try toUnicodeFail("\xea\xa6\xb9\xe2\x80\x8d\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xb2\xf0\xbb\xb6\xa1\xef\xbd\xa1\xe2\x82\x82"); } // [C2, V6, V7]
18972test { try toAsciiFail("\xea\xa6\xb9\xe2\x80\x8d\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xb2\xf0\xbb\xb6\xa1\xef\xbd\xa1\xe2\x82\x82", false); } // [C2, V6, V7]
18973test { try toAsciiFail("\xea\xa6\xb9\xe2\x80\x8d\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xb2\xf0\xbb\xb6\xa1\xef\xbd\xa1\xe2\x82\x82", true); } // [V6, V7]
7586test { try toUnicodeFail("\xea\xa6\xb9\xe2\x80\x8d\xed\x81\xb7\xf0\xbb\xb6\xa1\xe3\x80\x822"); } // [C2, V6, V7]18974test { try toUnicodeFail("\xea\xa6\xb9\xe2\x80\x8d\xed\x81\xb7\xf0\xbb\xb6\xa1\xe3\x80\x822"); } // [C2, V6, V7]
18975test { try toAsciiFail("\xea\xa6\xb9\xe2\x80\x8d\xed\x81\xb7\xf0\xbb\xb6\xa1\xe3\x80\x822", false); } // [C2, V6, V7]
18976test { try toAsciiFail("\xea\xa6\xb9\xe2\x80\x8d\xed\x81\xb7\xf0\xbb\xb6\xa1\xe3\x80\x822", true); } // [V6, V7]
7587test { try toUnicodeFail("\xea\xa6\xb9\xe2\x80\x8d\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xb2\xf0\xbb\xb6\xa1\xe3\x80\x822"); } // [C2, V6, V7]18977test { try toUnicodeFail("\xea\xa6\xb9\xe2\x80\x8d\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xb2\xf0\xbb\xb6\xa1\xe3\x80\x822"); } // [C2, V6, V7]
18978test { try toAsciiFail("\xea\xa6\xb9\xe2\x80\x8d\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xb2\xf0\xbb\xb6\xa1\xe3\x80\x822", false); } // [C2, V6, V7]
18979test { try toAsciiFail("\xea\xa6\xb9\xe2\x80\x8d\xe1\x84\x8f\xe1\x85\xb3\xe1\x86\xb2\xf0\xbb\xb6\xa1\xe3\x80\x822", true); } // [V6, V7]
7588test { try toUnicodeFail("xn--0m9as84e2e21c.c"); } // [V6, V7]18980test { try toUnicodeFail("xn--0m9as84e2e21c.c"); } // [V6, V7]
18981test { try toAsciiFail("xn--0m9as84e2e21c.c", false); } // [V6, V7]
18982test { try toAsciiFail("xn--0m9as84e2e21c.c", true); } // [V6, V7]
7589test { try toUnicodeFail("xn--1ug1435cfkyaoi04d.c"); } // [C2, V6, V7]18983test { try toUnicodeFail("xn--1ug1435cfkyaoi04d.c"); } // [C2, V6, V7]
18984test { try toAsciiFail("xn--1ug1435cfkyaoi04d.c", false); } // [C2, V6, V7]
18985test { try toAsciiFail("xn--1ug1435cfkyaoi04d.c", true); } // [C2, V6, V7]
7590test { try toUnicodeFail("?.\xf0\x9f\x84\x84\xf0\x9e\xaf\x98"); } // [B1, V7, U1]18986test { try toUnicodeFail("?.\xf0\x9f\x84\x84\xf0\x9e\xaf\x98"); } // [B1, V7, U1]
18987test { try toAsciiFail("?.\xf0\x9f\x84\x84\xf0\x9e\xaf\x98", false); } // [B1, V7, U1]
18988test { try toAsciiFail("?.\xf0\x9f\x84\x84\xf0\x9e\xaf\x98", true); } // [B1, V7, U1]
7591test { try toUnicodeFail("?.3,\xf0\x9e\xaf\x98"); } // [B1, V7, U1]18989test { try toUnicodeFail("?.3,\xf0\x9e\xaf\x98"); } // [B1, V7, U1]
18990test { try toAsciiFail("?.3,\xf0\x9e\xaf\x98", false); } // [B1, V7, U1]
18991test { try toAsciiFail("?.3,\xf0\x9e\xaf\x98", true); } // [B1, V7, U1]
7592test { try toUnicodeFail("?.xn--3,-tb22a"); } // [B1, V7, U1]18992test { try toUnicodeFail("?.xn--3,-tb22a"); } // [B1, V7, U1]
18993test { try toAsciiFail("?.xn--3,-tb22a", false); } // [B1, V7, U1]
18994test { try toAsciiFail("?.xn--3,-tb22a", true); } // [B1, V7, U1]
7593test { try toUnicodeFail("?.xn--3x6hx6f"); } // [B1, V7, U1]18995test { try toUnicodeFail("?.xn--3x6hx6f"); } // [B1, V7, U1]
18996test { try toAsciiFail("?.xn--3x6hx6f", false); } // [B1, V7, U1]
18997test { try toAsciiFail("?.xn--3x6hx6f", true); } // [B1, V7, U1]
7594test { try toUnicodeFail("\xf0\x9d\xa8\x96\xf0\x90\xa9\x99\xe3\x80\x82\xdb\x9d\xf3\x80\xa1\xb6\xea\xa3\x85\xe2\x92\x88"); } // [B1, V6, V7]18998test { try toUnicodeFail("\xf0\x9d\xa8\x96\xf0\x90\xa9\x99\xe3\x80\x82\xdb\x9d\xf3\x80\xa1\xb6\xea\xa3\x85\xe2\x92\x88"); } // [B1, V6, V7]
18999test { try toAsciiFail("\xf0\x9d\xa8\x96\xf0\x90\xa9\x99\xe3\x80\x82\xdb\x9d\xf3\x80\xa1\xb6\xea\xa3\x85\xe2\x92\x88", false); } // [B1, V6, V7]
19000test { try toAsciiFail("\xf0\x9d\xa8\x96\xf0\x90\xa9\x99\xe3\x80\x82\xdb\x9d\xf3\x80\xa1\xb6\xea\xa3\x85\xe2\x92\x88", true); } // [B1, V6, V7]
7595test { try toUnicodeFail("\xf0\x9d\xa8\x96\xf0\x90\xa9\x99\xe3\x80\x82\xdb\x9d\xf3\x80\xa1\xb6\xea\xa3\x851."); } // [B1, V6, V7]19001test { try toUnicodeFail("\xf0\x9d\xa8\x96\xf0\x90\xa9\x99\xe3\x80\x82\xdb\x9d\xf3\x80\xa1\xb6\xea\xa3\x851."); } // [B1, V6, V7]
19002test { try toAsciiFail("\xf0\x9d\xa8\x96\xf0\x90\xa9\x99\xe3\x80\x82\xdb\x9d\xf3\x80\xa1\xb6\xea\xa3\x851.", false); } // [B1, V6, V7, A4_2]
19003test { try toAsciiFail("\xf0\x9d\xa8\x96\xf0\x90\xa9\x99\xe3\x80\x82\xdb\x9d\xf3\x80\xa1\xb6\xea\xa3\x851.", true); } // [B1, V6, V7, A4_2]
7596test { try toUnicodeFail("xn--rt9cl956a.xn--1-dxc8545j0693i."); } // [B1, V6, V7]19004test { try toUnicodeFail("xn--rt9cl956a.xn--1-dxc8545j0693i."); } // [B1, V6, V7]
19005test { try toAsciiFail("xn--rt9cl956a.xn--1-dxc8545j0693i.", false); } // [B1, V6, V7, A4_2]
19006test { try toAsciiFail("xn--rt9cl956a.xn--1-dxc8545j0693i.", true); } // [B1, V6, V7, A4_2]
7597test { try toUnicodeFail("xn--rt9cl956a.xn--tlb403mxv4g06s9i"); } // [B1, V6, V7]19007test { try toUnicodeFail("xn--rt9cl956a.xn--tlb403mxv4g06s9i"); } // [B1, V6, V7]
19008test { try toAsciiFail("xn--rt9cl956a.xn--tlb403mxv4g06s9i", false); } // [B1, V6, V7]
19009test { try toAsciiFail("xn--rt9cl956a.xn--tlb403mxv4g06s9i", true); } // [B1, V6, V7]
7598test { try toUnicodeFail("\xf2\x92\x88\xa3\xd7\xa1\xda\xb8\xe3\x80\x82\xe1\x82\xa8\xe2\x80\x8d"); } // [B5, B6, C2, V7]19010test { try toUnicodeFail("\xf2\x92\x88\xa3\xd7\xa1\xda\xb8\xe3\x80\x82\xe1\x82\xa8\xe2\x80\x8d"); } // [B5, B6, C2, V7]
19011test { try toAsciiFail("\xf2\x92\x88\xa3\xd7\xa1\xda\xb8\xe3\x80\x82\xe1\x82\xa8\xe2\x80\x8d", false); } // [B5, B6, C2, V7]
19012test { try toAsciiFail("\xf2\x92\x88\xa3\xd7\xa1\xda\xb8\xe3\x80\x82\xe1\x82\xa8\xe2\x80\x8d", true); } // [B5, B6, V7]
7599test { try toUnicodeFail("\xf2\x92\x88\xa3\xd7\xa1\xda\xb8\xe3\x80\x82\xe2\xb4\x88\xe2\x80\x8d"); } // [B5, B6, C2, V7]19013test { try toUnicodeFail("\xf2\x92\x88\xa3\xd7\xa1\xda\xb8\xe3\x80\x82\xe2\xb4\x88\xe2\x80\x8d"); } // [B5, B6, C2, V7]
19014test { try toAsciiFail("\xf2\x92\x88\xa3\xd7\xa1\xda\xb8\xe3\x80\x82\xe2\xb4\x88\xe2\x80\x8d", false); } // [B5, B6, C2, V7]
19015test { try toAsciiFail("\xf2\x92\x88\xa3\xd7\xa1\xda\xb8\xe3\x80\x82\xe2\xb4\x88\xe2\x80\x8d", true); } // [B5, B6, V7]
7600test { try toUnicodeFail("xn--meb44b57607c.xn--zkj"); } // [B5, B6, V7]19016test { try toUnicodeFail("xn--meb44b57607c.xn--zkj"); } // [B5, B6, V7]
19017test { try toAsciiFail("xn--meb44b57607c.xn--zkj", false); } // [B5, B6, V7]
19018test { try toAsciiFail("xn--meb44b57607c.xn--zkj", true); } // [B5, B6, V7]
7601test { try toUnicodeFail("xn--meb44b57607c.xn--1ug232c"); } // [B5, B6, C2, V7]19019test { try toUnicodeFail("xn--meb44b57607c.xn--1ug232c"); } // [B5, B6, C2, V7]
19020test { try toAsciiFail("xn--meb44b57607c.xn--1ug232c", false); } // [B5, B6, C2, V7]
19021test { try toAsciiFail("xn--meb44b57607c.xn--1ug232c", true); } // [B5, B6, C2, V7]
7602test { try toUnicodeFail("xn--meb44b57607c.xn--gnd"); } // [B5, B6, V7]19022test { try toUnicodeFail("xn--meb44b57607c.xn--gnd"); } // [B5, B6, V7]
19023test { try toAsciiFail("xn--meb44b57607c.xn--gnd", false); } // [B5, B6, V7]
19024test { try toAsciiFail("xn--meb44b57607c.xn--gnd", true); } // [B5, B6, V7]
7603test { try toUnicodeFail("xn--meb44b57607c.xn--gnd699e"); } // [B5, B6, C2, V7]19025test { try toUnicodeFail("xn--meb44b57607c.xn--gnd699e"); } // [B5, B6, C2, V7]
19026test { try toAsciiFail("xn--meb44b57607c.xn--gnd699e", false); } // [B5, B6, C2, V7]
19027test { try toAsciiFail("xn--meb44b57607c.xn--gnd699e", true); } // [B5, B6, C2, V7]
7604test { try toUnicodeFail("\xf3\x80\x9a\xb6\xf0\x9d\xa8\xb1\xdf\xa6\xe2\x92\x88\xef\xbc\x8e\xf0\x91\x97\x9d\xe9\xab\xaf\xe2\x80\x8c"); } // [B1, B5, C1, V6, V7]19028test { try toUnicodeFail("\xf3\x80\x9a\xb6\xf0\x9d\xa8\xb1\xdf\xa6\xe2\x92\x88\xef\xbc\x8e\xf0\x91\x97\x9d\xe9\xab\xaf\xe2\x80\x8c"); } // [B1, B5, C1, V6, V7]
19029test { try toAsciiFail("\xf3\x80\x9a\xb6\xf0\x9d\xa8\xb1\xdf\xa6\xe2\x92\x88\xef\xbc\x8e\xf0\x91\x97\x9d\xe9\xab\xaf\xe2\x80\x8c", false); } // [B1, B5, C1, V6, V7]
19030test { try toAsciiFail("\xf3\x80\x9a\xb6\xf0\x9d\xa8\xb1\xdf\xa6\xe2\x92\x88\xef\xbc\x8e\xf0\x91\x97\x9d\xe9\xab\xaf\xe2\x80\x8c", true); } // [B1, B5, V6, V7]
7605test { try toUnicodeFail("\xf3\x80\x9a\xb6\xf0\x9d\xa8\xb1\xdf\xa61..\xf0\x91\x97\x9d\xe9\xab\xaf\xe2\x80\x8c"); } // [B1, B5, C1, V6, V7, X4_2]19031test { try toUnicodeFail("\xf3\x80\x9a\xb6\xf0\x9d\xa8\xb1\xdf\xa61..\xf0\x91\x97\x9d\xe9\xab\xaf\xe2\x80\x8c"); } // [B1, B5, C1, V6, V7, X4_2]
19032test { try toAsciiFail("\xf3\x80\x9a\xb6\xf0\x9d\xa8\xb1\xdf\xa61..\xf0\x91\x97\x9d\xe9\xab\xaf\xe2\x80\x8c", false); } // [B1, B5, C1, V6, V7, A4_2]
19033test { try toAsciiFail("\xf3\x80\x9a\xb6\xf0\x9d\xa8\xb1\xdf\xa61..\xf0\x91\x97\x9d\xe9\xab\xaf\xe2\x80\x8c", true); } // [B1, B5, V6, V7, A4_2]
7606test { try toUnicodeFail("xn--1-idd62296a1fr6e..xn--uj6at43v"); } // [B1, B5, V6, V7, X4_2]19034test { try toUnicodeFail("xn--1-idd62296a1fr6e..xn--uj6at43v"); } // [B1, B5, V6, V7, X4_2]
19035test { try toAsciiFail("xn--1-idd62296a1fr6e..xn--uj6at43v", false); } // [B1, B5, V6, V7, A4_2]
19036test { try toAsciiFail("xn--1-idd62296a1fr6e..xn--uj6at43v", true); } // [B1, B5, V6, V7, A4_2]
7607test { try toUnicodeFail("xn--1-idd62296a1fr6e..xn--0ugx259bocxd"); } // [B1, B5, C1, V6, V7, X4_2]19037test { try toUnicodeFail("xn--1-idd62296a1fr6e..xn--0ugx259bocxd"); } // [B1, B5, C1, V6, V7, X4_2]
19038test { try toAsciiFail("xn--1-idd62296a1fr6e..xn--0ugx259bocxd", false); } // [B1, B5, C1, V6, V7, A4_2]
19039test { try toAsciiFail("xn--1-idd62296a1fr6e..xn--0ugx259bocxd", true); } // [B1, B5, C1, V6, V7, A4_2]
7608test { try toUnicodeFail("xn--etb477lq931a1f58e.xn--uj6at43v"); } // [B1, B5, V6, V7]19040test { try toUnicodeFail("xn--etb477lq931a1f58e.xn--uj6at43v"); } // [B1, B5, V6, V7]
19041test { try toAsciiFail("xn--etb477lq931a1f58e.xn--uj6at43v", false); } // [B1, B5, V6, V7]
19042test { try toAsciiFail("xn--etb477lq931a1f58e.xn--uj6at43v", true); } // [B1, B5, V6, V7]
7609test { try toUnicodeFail("xn--etb477lq931a1f58e.xn--0ugx259bocxd"); } // [B1, B5, C1, V6, V7]19043test { try toUnicodeFail("xn--etb477lq931a1f58e.xn--0ugx259bocxd"); } // [B1, B5, C1, V6, V7]
19044test { try toAsciiFail("xn--etb477lq931a1f58e.xn--0ugx259bocxd", false); } // [B1, B5, C1, V6, V7]
19045test { try toAsciiFail("xn--etb477lq931a1f58e.xn--0ugx259bocxd", true); } // [B1, B5, C1, V6, V7]
7610test { try toUnicodePass("\xf0\x90\xab\x80\xef\xbc\x8e\xda\x89\xf0\x91\x8c\x80", "\xf0\x90\xab\x80.\xda\x89\xf0\x91\x8c\x80"); }19046test { try toUnicodePass("\xf0\x90\xab\x80\xef\xbc\x8e\xda\x89\xf0\x91\x8c\x80", "\xf0\x90\xab\x80.\xda\x89\xf0\x91\x8c\x80"); }
7611test { try toAsciiPass("\xf0\x90\xab\x80\xef\xbc\x8e\xda\x89\xf0\x91\x8c\x80", "xn--pw9c.xn--fjb8658k", false); }19047test { try toAsciiPass("\xf0\x90\xab\x80\xef\xbc\x8e\xda\x89\xf0\x91\x8c\x80", "xn--pw9c.xn--fjb8658k", false); }
7612test { try toAsciiPass("\xf0\x90\xab\x80\xef\xbc\x8e\xda\x89\xf0\x91\x8c\x80", "xn--pw9c.xn--fjb8658k", true); }19048test { try toAsciiPass("\xf0\x90\xab\x80\xef\xbc\x8e\xda\x89\xf0\x91\x8c\x80", "xn--pw9c.xn--fjb8658k", true); }
...@@ -7617,61 +19053,179 @@ test { try toUnicodePass("xn--pw9c.xn--fjb8658k", "\xf0\x90\xab\x80.\xda\x89\xf0...@@ -7617,61 +19053,179 @@ test { try toUnicodePass("xn--pw9c.xn--fjb8658k", "\xf0\x90\xab\x80.\xda\x89\xf0
7617test { try toAsciiPass("xn--pw9c.xn--fjb8658k", "xn--pw9c.xn--fjb8658k", false); }19053test { try toAsciiPass("xn--pw9c.xn--fjb8658k", "xn--pw9c.xn--fjb8658k", false); }
7618test { try toAsciiPass("xn--pw9c.xn--fjb8658k", "xn--pw9c.xn--fjb8658k", true); }19054test { try toAsciiPass("xn--pw9c.xn--fjb8658k", "xn--pw9c.xn--fjb8658k", true); }
7619test { try toUnicodeFail("\xf0\x91\x8b\xaa\xef\xbc\x8e\xf0\x90\xb3\x9d"); } // [B1, V6]19055test { try toUnicodeFail("\xf0\x91\x8b\xaa\xef\xbc\x8e\xf0\x90\xb3\x9d"); } // [B1, V6]
19056test { try toAsciiFail("\xf0\x91\x8b\xaa\xef\xbc\x8e\xf0\x90\xb3\x9d", false); } // [B1, V6]
19057test { try toAsciiFail("\xf0\x91\x8b\xaa\xef\xbc\x8e\xf0\x90\xb3\x9d", true); } // [B1, V6]
7620test { try toUnicodeFail("\xf0\x91\x8b\xaa.\xf0\x90\xb3\x9d"); } // [B1, V6]19058test { try toUnicodeFail("\xf0\x91\x8b\xaa.\xf0\x90\xb3\x9d"); } // [B1, V6]
19059test { try toAsciiFail("\xf0\x91\x8b\xaa.\xf0\x90\xb3\x9d", false); } // [B1, V6]
19060test { try toAsciiFail("\xf0\x91\x8b\xaa.\xf0\x90\xb3\x9d", true); } // [B1, V6]
7621test { try toUnicodeFail("\xf0\x91\x8b\xaa.\xf0\x90\xb2\x9d"); } // [B1, V6]19061test { try toUnicodeFail("\xf0\x91\x8b\xaa.\xf0\x90\xb2\x9d"); } // [B1, V6]
19062test { try toAsciiFail("\xf0\x91\x8b\xaa.\xf0\x90\xb2\x9d", false); } // [B1, V6]
19063test { try toAsciiFail("\xf0\x91\x8b\xaa.\xf0\x90\xb2\x9d", true); } // [B1, V6]
7622test { try toUnicodeFail("xn--fm1d.xn--5c0d"); } // [B1, V6]19064test { try toUnicodeFail("xn--fm1d.xn--5c0d"); } // [B1, V6]
19065test { try toAsciiFail("xn--fm1d.xn--5c0d", false); } // [B1, V6]
19066test { try toAsciiFail("xn--fm1d.xn--5c0d", true); } // [B1, V6]
7623test { try toUnicodeFail("\xf0\x91\x8b\xaa\xef\xbc\x8e\xf0\x90\xb2\x9d"); } // [B1, V6]19067test { try toUnicodeFail("\xf0\x91\x8b\xaa\xef\xbc\x8e\xf0\x90\xb2\x9d"); } // [B1, V6]
19068test { try toAsciiFail("\xf0\x91\x8b\xaa\xef\xbc\x8e\xf0\x90\xb2\x9d", false); } // [B1, V6]
19069test { try toAsciiFail("\xf0\x91\x8b\xaa\xef\xbc\x8e\xf0\x90\xb2\x9d", true); } // [B1, V6]
7624test { try toUnicodeFail("\xe2\x89\xa0\xe8\x86\xa3\xe3\x80\x82\xe0\xbe\x83"); } // [V6]19070test { try toUnicodeFail("\xe2\x89\xa0\xe8\x86\xa3\xe3\x80\x82\xe0\xbe\x83"); } // [V6]
19071test { try toAsciiFail("\xe2\x89\xa0\xe8\x86\xa3\xe3\x80\x82\xe0\xbe\x83", false); } // [V6]
19072test { try toAsciiFail("\xe2\x89\xa0\xe8\x86\xa3\xe3\x80\x82\xe0\xbe\x83", true); } // [V6]
7625test { try toUnicodeFail("=\xcc\xb8\xe8\x86\xa3\xe3\x80\x82\xe0\xbe\x83"); } // [V6]19073test { try toUnicodeFail("=\xcc\xb8\xe8\x86\xa3\xe3\x80\x82\xe0\xbe\x83"); } // [V6]
19074test { try toAsciiFail("=\xcc\xb8\xe8\x86\xa3\xe3\x80\x82\xe0\xbe\x83", false); } // [V6]
19075test { try toAsciiFail("=\xcc\xb8\xe8\x86\xa3\xe3\x80\x82\xe0\xbe\x83", true); } // [V6]
7626test { try toUnicodeFail("xn--1chy468a.xn--2ed"); } // [V6]19076test { try toUnicodeFail("xn--1chy468a.xn--2ed"); } // [V6]
19077test { try toAsciiFail("xn--1chy468a.xn--2ed", false); } // [V6]
19078test { try toAsciiFail("xn--1chy468a.xn--2ed", true); } // [V6]
7627test { try toUnicodeFail("\xf1\xb0\x80\x8e-\xdd\xbd\xef\xbd\xa1\xc3\x9f"); } // [B5, B6, V7]19079test { try toUnicodeFail("\xf1\xb0\x80\x8e-\xdd\xbd\xef\xbd\xa1\xc3\x9f"); } // [B5, B6, V7]
19080test { try toAsciiFail("\xf1\xb0\x80\x8e-\xdd\xbd\xef\xbd\xa1\xc3\x9f", false); } // [B5, B6, V7]
19081test { try toAsciiFail("\xf1\xb0\x80\x8e-\xdd\xbd\xef\xbd\xa1\xc3\x9f", true); } // [B5, B6, V7]
7628test { try toUnicodeFail("\xf1\xb0\x80\x8e-\xdd\xbd\xe3\x80\x82\xc3\x9f"); } // [B5, B6, V7]19082test { try toUnicodeFail("\xf1\xb0\x80\x8e-\xdd\xbd\xe3\x80\x82\xc3\x9f"); } // [B5, B6, V7]
19083test { try toAsciiFail("\xf1\xb0\x80\x8e-\xdd\xbd\xe3\x80\x82\xc3\x9f", false); } // [B5, B6, V7]
19084test { try toAsciiFail("\xf1\xb0\x80\x8e-\xdd\xbd\xe3\x80\x82\xc3\x9f", true); } // [B5, B6, V7]
7629test { try toUnicodeFail("\xf1\xb0\x80\x8e-\xdd\xbd\xe3\x80\x82SS"); } // [B5, B6, V7]19085test { try toUnicodeFail("\xf1\xb0\x80\x8e-\xdd\xbd\xe3\x80\x82SS"); } // [B5, B6, V7]
19086test { try toAsciiFail("\xf1\xb0\x80\x8e-\xdd\xbd\xe3\x80\x82SS", false); } // [B5, B6, V7]
19087test { try toAsciiFail("\xf1\xb0\x80\x8e-\xdd\xbd\xe3\x80\x82SS", true); } // [B5, B6, V7]
7630test { try toUnicodeFail("\xf1\xb0\x80\x8e-\xdd\xbd\xe3\x80\x82ss"); } // [B5, B6, V7]19088test { try toUnicodeFail("\xf1\xb0\x80\x8e-\xdd\xbd\xe3\x80\x82ss"); } // [B5, B6, V7]
19089test { try toAsciiFail("\xf1\xb0\x80\x8e-\xdd\xbd\xe3\x80\x82ss", false); } // [B5, B6, V7]
19090test { try toAsciiFail("\xf1\xb0\x80\x8e-\xdd\xbd\xe3\x80\x82ss", true); } // [B5, B6, V7]
7631test { try toUnicodeFail("\xf1\xb0\x80\x8e-\xdd\xbd\xe3\x80\x82Ss"); } // [B5, B6, V7]19091test { try toUnicodeFail("\xf1\xb0\x80\x8e-\xdd\xbd\xe3\x80\x82Ss"); } // [B5, B6, V7]
19092test { try toAsciiFail("\xf1\xb0\x80\x8e-\xdd\xbd\xe3\x80\x82Ss", false); } // [B5, B6, V7]
19093test { try toAsciiFail("\xf1\xb0\x80\x8e-\xdd\xbd\xe3\x80\x82Ss", true); } // [B5, B6, V7]
7632test { try toUnicodeFail("xn----j6c95618k.ss"); } // [B5, B6, V7]19094test { try toUnicodeFail("xn----j6c95618k.ss"); } // [B5, B6, V7]
19095test { try toAsciiFail("xn----j6c95618k.ss", false); } // [B5, B6, V7]
19096test { try toAsciiFail("xn----j6c95618k.ss", true); } // [B5, B6, V7]
7633test { try toUnicodeFail("xn----j6c95618k.xn--zca"); } // [B5, B6, V7]19097test { try toUnicodeFail("xn----j6c95618k.xn--zca"); } // [B5, B6, V7]
19098test { try toAsciiFail("xn----j6c95618k.xn--zca", false); } // [B5, B6, V7]
19099test { try toAsciiFail("xn----j6c95618k.xn--zca", true); } // [B5, B6, V7]
7634test { try toUnicodeFail("\xf1\xb0\x80\x8e-\xdd\xbd\xef\xbd\xa1SS"); } // [B5, B6, V7]19100test { try toUnicodeFail("\xf1\xb0\x80\x8e-\xdd\xbd\xef\xbd\xa1SS"); } // [B5, B6, V7]
19101test { try toAsciiFail("\xf1\xb0\x80\x8e-\xdd\xbd\xef\xbd\xa1SS", false); } // [B5, B6, V7]
19102test { try toAsciiFail("\xf1\xb0\x80\x8e-\xdd\xbd\xef\xbd\xa1SS", true); } // [B5, B6, V7]
7635test { try toUnicodeFail("\xf1\xb0\x80\x8e-\xdd\xbd\xef\xbd\xa1ss"); } // [B5, B6, V7]19103test { try toUnicodeFail("\xf1\xb0\x80\x8e-\xdd\xbd\xef\xbd\xa1ss"); } // [B5, B6, V7]
19104test { try toAsciiFail("\xf1\xb0\x80\x8e-\xdd\xbd\xef\xbd\xa1ss", false); } // [B5, B6, V7]
19105test { try toAsciiFail("\xf1\xb0\x80\x8e-\xdd\xbd\xef\xbd\xa1ss", true); } // [B5, B6, V7]
7636test { try toUnicodeFail("\xf1\xb0\x80\x8e-\xdd\xbd\xef\xbd\xa1Ss"); } // [B5, B6, V7]19106test { try toUnicodeFail("\xf1\xb0\x80\x8e-\xdd\xbd\xef\xbd\xa1Ss"); } // [B5, B6, V7]
19107test { try toAsciiFail("\xf1\xb0\x80\x8e-\xdd\xbd\xef\xbd\xa1Ss", false); } // [B5, B6, V7]
19108test { try toAsciiFail("\xf1\xb0\x80\x8e-\xdd\xbd\xef\xbd\xa1Ss", true); } // [B5, B6, V7]
7637test { try toUnicodeFail("\xcf\x82\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3\xef\xbc\x8e\xe2\xbe\xad\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c"); } // [B5, B6, V7]19109test { try toUnicodeFail("\xcf\x82\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3\xef\xbc\x8e\xe2\xbe\xad\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c"); } // [B5, B6, V7]
19110test { try toAsciiFail("\xcf\x82\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3\xef\xbc\x8e\xe2\xbe\xad\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c", false); } // [B5, B6, V7]
19111test { try toAsciiFail("\xcf\x82\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3\xef\xbc\x8e\xe2\xbe\xad\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c", true); } // [B5, B6, V7]
7638test { try toUnicodeFail("\xcf\x82\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3.\xe9\x9d\x91\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c"); } // [B5, B6, V7]19112test { try toUnicodeFail("\xcf\x82\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3.\xe9\x9d\x91\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c"); } // [B5, B6, V7]
19113test { try toAsciiFail("\xcf\x82\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3.\xe9\x9d\x91\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c", false); } // [B5, B6, V7]
19114test { try toAsciiFail("\xcf\x82\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3.\xe9\x9d\x91\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c", true); } // [B5, B6, V7]
7639test { try toUnicodeFail("\xce\xa3\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3.\xe9\x9d\x91\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c"); } // [B5, B6, V7]19115test { try toUnicodeFail("\xce\xa3\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3.\xe9\x9d\x91\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c"); } // [B5, B6, V7]
19116test { try toAsciiFail("\xce\xa3\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3.\xe9\x9d\x91\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c", false); } // [B5, B6, V7]
19117test { try toAsciiFail("\xce\xa3\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3.\xe9\x9d\x91\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c", true); } // [B5, B6, V7]
7640test { try toUnicodeFail("\xcf\x83\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3.\xe9\x9d\x91\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c"); } // [B5, B6, V7]19118test { try toUnicodeFail("\xcf\x83\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3.\xe9\x9d\x91\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c"); } // [B5, B6, V7]
19119test { try toAsciiFail("\xcf\x83\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3.\xe9\x9d\x91\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c", false); } // [B5, B6, V7]
19120test { try toAsciiFail("\xcf\x83\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3.\xe9\x9d\x91\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c", true); } // [B5, B6, V7]
7641test { try toUnicodeFail("xn--4xa656hp23pxmc.xn--es5a888tvjc2u15h"); } // [B5, B6, V7]19121test { try toUnicodeFail("xn--4xa656hp23pxmc.xn--es5a888tvjc2u15h"); } // [B5, B6, V7]
19122test { try toAsciiFail("xn--4xa656hp23pxmc.xn--es5a888tvjc2u15h", false); } // [B5, B6, V7]
19123test { try toAsciiFail("xn--4xa656hp23pxmc.xn--es5a888tvjc2u15h", true); } // [B5, B6, V7]
7642test { try toUnicodeFail("xn--3xa856hp23pxmc.xn--es5a888tvjc2u15h"); } // [B5, B6, V7]19124test { try toUnicodeFail("xn--3xa856hp23pxmc.xn--es5a888tvjc2u15h"); } // [B5, B6, V7]
19125test { try toAsciiFail("xn--3xa856hp23pxmc.xn--es5a888tvjc2u15h", false); } // [B5, B6, V7]
19126test { try toAsciiFail("xn--3xa856hp23pxmc.xn--es5a888tvjc2u15h", true); } // [B5, B6, V7]
7643test { try toUnicodeFail("\xce\xa3\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3\xef\xbc\x8e\xe2\xbe\xad\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c"); } // [B5, B6, V7]19127test { try toUnicodeFail("\xce\xa3\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3\xef\xbc\x8e\xe2\xbe\xad\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c"); } // [B5, B6, V7]
19128test { try toAsciiFail("\xce\xa3\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3\xef\xbc\x8e\xe2\xbe\xad\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c", false); } // [B5, B6, V7]
19129test { try toAsciiFail("\xce\xa3\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3\xef\xbc\x8e\xe2\xbe\xad\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c", true); } // [B5, B6, V7]
7644test { try toUnicodeFail("\xcf\x83\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3\xef\xbc\x8e\xe2\xbe\xad\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c"); } // [B5, B6, V7]19130test { try toUnicodeFail("\xcf\x83\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3\xef\xbc\x8e\xe2\xbe\xad\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c"); } // [B5, B6, V7]
19131test { try toAsciiFail("\xcf\x83\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3\xef\xbc\x8e\xe2\xbe\xad\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c", false); } // [B5, B6, V7]
19132test { try toAsciiFail("\xcf\x83\xf0\x90\xb9\xa0\xe1\xa1\x9a\xf0\x91\x84\xb3\xef\xbc\x8e\xe2\xbe\xad\xf0\x90\xb9\xbd\xf0\xbd\x90\x96\xf0\x90\xab\x9c", true); } // [B5, B6, V7]
7645test { try toUnicodeFail("\xf0\x90\x8b\xb7\xe3\x80\x82\xe2\x80\x8d"); } // [C2]19133test { try toUnicodeFail("\xf0\x90\x8b\xb7\xe3\x80\x82\xe2\x80\x8d"); } // [C2]
19134test { try toAsciiFail("\xf0\x90\x8b\xb7\xe3\x80\x82\xe2\x80\x8d", false); } // [C2]
19135test { try toAsciiFail("\xf0\x90\x8b\xb7\xe3\x80\x82\xe2\x80\x8d", true); } // [A4_2]
7646test { try toUnicodePass("xn--r97c.", "\xf0\x90\x8b\xb7."); }19136test { try toUnicodePass("xn--r97c.", "\xf0\x90\x8b\xb7."); }
19137test { try toAsciiFail("xn--r97c.", false); } // [A4_2]
19138test { try toAsciiFail("xn--r97c.", true); } // [A4_2]
7647test { try toUnicodePass("\xf0\x90\x8b\xb7.", "\xf0\x90\x8b\xb7."); }19139test { try toUnicodePass("\xf0\x90\x8b\xb7.", "\xf0\x90\x8b\xb7."); }
19140test { try toAsciiFail("\xf0\x90\x8b\xb7.", false); } // [A4_2]
19141test { try toAsciiFail("\xf0\x90\x8b\xb7.", true); } // [A4_2]
7648test { try toUnicodeFail("xn--r97c.xn--1ug"); } // [C2]19142test { try toUnicodeFail("xn--r97c.xn--1ug"); } // [C2]
19143test { try toAsciiFail("xn--r97c.xn--1ug", false); } // [C2]
19144test { try toAsciiFail("xn--r97c.xn--1ug", true); } // [C2]
7649test { try toUnicodeFail("\xf0\x91\xb0\xb3\xf0\x91\x88\xaf\xe3\x80\x82\xe2\xa5\xaa"); } // [V6]19145test { try toUnicodeFail("\xf0\x91\xb0\xb3\xf0\x91\x88\xaf\xe3\x80\x82\xe2\xa5\xaa"); } // [V6]
19146test { try toAsciiFail("\xf0\x91\xb0\xb3\xf0\x91\x88\xaf\xe3\x80\x82\xe2\xa5\xaa", false); } // [V6]
19147test { try toAsciiFail("\xf0\x91\xb0\xb3\xf0\x91\x88\xaf\xe3\x80\x82\xe2\xa5\xaa", true); } // [V6]
7650test { try toUnicodeFail("xn--2g1d14o.xn--jti"); } // [V6]19148test { try toUnicodeFail("xn--2g1d14o.xn--jti"); } // [V6]
19149test { try toAsciiFail("xn--2g1d14o.xn--jti", false); } // [V6]
19150test { try toAsciiFail("xn--2g1d14o.xn--jti", true); } // [V6]
7651test { try toUnicodeFail("\xf0\x91\x86\x80\xe4\x81\xb4\xf1\xa4\xa7\xa3\xef\xbc\x8e\xe1\x82\xb5\xf0\x9d\x9f\x9c\xe2\x80\x8c\xcd\x88"); } // [C1, V6, V7]19151test { try toUnicodeFail("\xf0\x91\x86\x80\xe4\x81\xb4\xf1\xa4\xa7\xa3\xef\xbc\x8e\xe1\x82\xb5\xf0\x9d\x9f\x9c\xe2\x80\x8c\xcd\x88"); } // [C1, V6, V7]
19152test { try toAsciiFail("\xf0\x91\x86\x80\xe4\x81\xb4\xf1\xa4\xa7\xa3\xef\xbc\x8e\xe1\x82\xb5\xf0\x9d\x9f\x9c\xe2\x80\x8c\xcd\x88", false); } // [C1, V6, V7]
19153test { try toAsciiFail("\xf0\x91\x86\x80\xe4\x81\xb4\xf1\xa4\xa7\xa3\xef\xbc\x8e\xe1\x82\xb5\xf0\x9d\x9f\x9c\xe2\x80\x8c\xcd\x88", true); } // [V6, V7]
7652test { try toUnicodeFail("\xf0\x91\x86\x80\xe4\x81\xb4\xf1\xa4\xa7\xa3.\xe1\x82\xb54\xe2\x80\x8c\xcd\x88"); } // [C1, V6, V7]19154test { try toUnicodeFail("\xf0\x91\x86\x80\xe4\x81\xb4\xf1\xa4\xa7\xa3.\xe1\x82\xb54\xe2\x80\x8c\xcd\x88"); } // [C1, V6, V7]
19155test { try toAsciiFail("\xf0\x91\x86\x80\xe4\x81\xb4\xf1\xa4\xa7\xa3.\xe1\x82\xb54\xe2\x80\x8c\xcd\x88", false); } // [C1, V6, V7]
19156test { try toAsciiFail("\xf0\x91\x86\x80\xe4\x81\xb4\xf1\xa4\xa7\xa3.\xe1\x82\xb54\xe2\x80\x8c\xcd\x88", true); } // [V6, V7]
7653test { try toUnicodeFail("\xf0\x91\x86\x80\xe4\x81\xb4\xf1\xa4\xa7\xa3.\xe2\xb4\x954\xe2\x80\x8c\xcd\x88"); } // [C1, V6, V7]19157test { try toUnicodeFail("\xf0\x91\x86\x80\xe4\x81\xb4\xf1\xa4\xa7\xa3.\xe2\xb4\x954\xe2\x80\x8c\xcd\x88"); } // [C1, V6, V7]
19158test { try toAsciiFail("\xf0\x91\x86\x80\xe4\x81\xb4\xf1\xa4\xa7\xa3.\xe2\xb4\x954\xe2\x80\x8c\xcd\x88", false); } // [C1, V6, V7]
19159test { try toAsciiFail("\xf0\x91\x86\x80\xe4\x81\xb4\xf1\xa4\xa7\xa3.\xe2\xb4\x954\xe2\x80\x8c\xcd\x88", true); } // [V6, V7]
7654test { try toUnicodeFail("xn--1mnx647cg3x1b.xn--4-zfb5123a"); } // [V6, V7]19160test { try toUnicodeFail("xn--1mnx647cg3x1b.xn--4-zfb5123a"); } // [V6, V7]
19161test { try toAsciiFail("xn--1mnx647cg3x1b.xn--4-zfb5123a", false); } // [V6, V7]
19162test { try toAsciiFail("xn--1mnx647cg3x1b.xn--4-zfb5123a", true); } // [V6, V7]
7655test { try toUnicodeFail("xn--1mnx647cg3x1b.xn--4-zfb502tlsl"); } // [C1, V6, V7]19163test { try toUnicodeFail("xn--1mnx647cg3x1b.xn--4-zfb502tlsl"); } // [C1, V6, V7]
19164test { try toAsciiFail("xn--1mnx647cg3x1b.xn--4-zfb502tlsl", false); } // [C1, V6, V7]
19165test { try toAsciiFail("xn--1mnx647cg3x1b.xn--4-zfb502tlsl", true); } // [C1, V6, V7]
7656test { try toUnicodeFail("\xf0\x91\x86\x80\xe4\x81\xb4\xf1\xa4\xa7\xa3\xef\xbc\x8e\xe2\xb4\x95\xf0\x9d\x9f\x9c\xe2\x80\x8c\xcd\x88"); } // [C1, V6, V7]19166test { try toUnicodeFail("\xf0\x91\x86\x80\xe4\x81\xb4\xf1\xa4\xa7\xa3\xef\xbc\x8e\xe2\xb4\x95\xf0\x9d\x9f\x9c\xe2\x80\x8c\xcd\x88"); } // [C1, V6, V7]
19167test { try toAsciiFail("\xf0\x91\x86\x80\xe4\x81\xb4\xf1\xa4\xa7\xa3\xef\xbc\x8e\xe2\xb4\x95\xf0\x9d\x9f\x9c\xe2\x80\x8c\xcd\x88", false); } // [C1, V6, V7]
19168test { try toAsciiFail("\xf0\x91\x86\x80\xe4\x81\xb4\xf1\xa4\xa7\xa3\xef\xbc\x8e\xe2\xb4\x95\xf0\x9d\x9f\x9c\xe2\x80\x8c\xcd\x88", true); } // [V6, V7]
7657test { try toUnicodeFail("xn--1mnx647cg3x1b.xn--4-zfb324h"); } // [V6, V7]19169test { try toUnicodeFail("xn--1mnx647cg3x1b.xn--4-zfb324h"); } // [V6, V7]
19170test { try toAsciiFail("xn--1mnx647cg3x1b.xn--4-zfb324h", false); } // [V6, V7]
19171test { try toAsciiFail("xn--1mnx647cg3x1b.xn--4-zfb324h", true); } // [V6, V7]
7658test { try toUnicodeFail("xn--1mnx647cg3x1b.xn--4-zfb324h32o"); } // [C1, V6, V7]19172test { try toUnicodeFail("xn--1mnx647cg3x1b.xn--4-zfb324h32o"); } // [C1, V6, V7]
19173test { try toAsciiFail("xn--1mnx647cg3x1b.xn--4-zfb324h32o", false); } // [C1, V6, V7]
19174test { try toAsciiFail("xn--1mnx647cg3x1b.xn--4-zfb324h32o", true); } // [C1, V6, V7]
7659test { try toUnicodeFail("\xe6\x86\xa1?\xe2\x80\x8c\xe1\x82\xb4.\xf0\x90\x8b\xae\xe2\x80\x8d\xe2\x89\xa0"); } // [C1, C2, U1]19175test { try toUnicodeFail("\xe6\x86\xa1?\xe2\x80\x8c\xe1\x82\xb4.\xf0\x90\x8b\xae\xe2\x80\x8d\xe2\x89\xa0"); } // [C1, C2, U1]
19176test { try toAsciiFail("\xe6\x86\xa1?\xe2\x80\x8c\xe1\x82\xb4.\xf0\x90\x8b\xae\xe2\x80\x8d\xe2\x89\xa0", false); } // [C1, C2, U1]
19177test { try toAsciiFail("\xe6\x86\xa1?\xe2\x80\x8c\xe1\x82\xb4.\xf0\x90\x8b\xae\xe2\x80\x8d\xe2\x89\xa0", true); } // [U1]
7660test { try toUnicodeFail("\xe6\x86\xa1?\xe2\x80\x8c\xe1\x82\xb4.\xf0\x90\x8b\xae\xe2\x80\x8d=\xcc\xb8"); } // [C1, C2, U1]19178test { try toUnicodeFail("\xe6\x86\xa1?\xe2\x80\x8c\xe1\x82\xb4.\xf0\x90\x8b\xae\xe2\x80\x8d=\xcc\xb8"); } // [C1, C2, U1]
19179test { try toAsciiFail("\xe6\x86\xa1?\xe2\x80\x8c\xe1\x82\xb4.\xf0\x90\x8b\xae\xe2\x80\x8d=\xcc\xb8", false); } // [C1, C2, U1]
19180test { try toAsciiFail("\xe6\x86\xa1?\xe2\x80\x8c\xe1\x82\xb4.\xf0\x90\x8b\xae\xe2\x80\x8d=\xcc\xb8", true); } // [U1]
7661test { try toUnicodeFail("\xe6\x86\xa1?\xe2\x80\x8c\xe2\xb4\x94.\xf0\x90\x8b\xae\xe2\x80\x8d=\xcc\xb8"); } // [C1, C2, U1]19181test { try toUnicodeFail("\xe6\x86\xa1?\xe2\x80\x8c\xe2\xb4\x94.\xf0\x90\x8b\xae\xe2\x80\x8d=\xcc\xb8"); } // [C1, C2, U1]
19182test { try toAsciiFail("\xe6\x86\xa1?\xe2\x80\x8c\xe2\xb4\x94.\xf0\x90\x8b\xae\xe2\x80\x8d=\xcc\xb8", false); } // [C1, C2, U1]
19183test { try toAsciiFail("\xe6\x86\xa1?\xe2\x80\x8c\xe2\xb4\x94.\xf0\x90\x8b\xae\xe2\x80\x8d=\xcc\xb8", true); } // [U1]
7662test { try toUnicodeFail("\xe6\x86\xa1?\xe2\x80\x8c\xe2\xb4\x94.\xf0\x90\x8b\xae\xe2\x80\x8d\xe2\x89\xa0"); } // [C1, C2, U1]19184test { try toUnicodeFail("\xe6\x86\xa1?\xe2\x80\x8c\xe2\xb4\x94.\xf0\x90\x8b\xae\xe2\x80\x8d\xe2\x89\xa0"); } // [C1, C2, U1]
19185test { try toAsciiFail("\xe6\x86\xa1?\xe2\x80\x8c\xe2\xb4\x94.\xf0\x90\x8b\xae\xe2\x80\x8d\xe2\x89\xa0", false); } // [C1, C2, U1]
19186test { try toAsciiFail("\xe6\x86\xa1?\xe2\x80\x8c\xe2\xb4\x94.\xf0\x90\x8b\xae\xe2\x80\x8d\xe2\x89\xa0", true); } // [U1]
7663test { try toUnicodeFail("xn--?-fwsr13r.xn--1chz659f"); } // [U1]19187test { try toUnicodeFail("xn--?-fwsr13r.xn--1chz659f"); } // [U1]
19188test { try toAsciiFail("xn--?-fwsr13r.xn--1chz659f", false); } // [U1]
19189test { try toAsciiFail("xn--?-fwsr13r.xn--1chz659f", true); } // [U1]
7664test { try toUnicodeFail("xn--?-sgn310doh5c.xn--1ug73gl146a"); } // [C1, C2, U1]19190test { try toUnicodeFail("xn--?-sgn310doh5c.xn--1ug73gl146a"); } // [C1, C2, U1]
19191test { try toAsciiFail("xn--?-sgn310doh5c.xn--1ug73gl146a", false); } // [C1, C2, U1]
19192test { try toAsciiFail("xn--?-sgn310doh5c.xn--1ug73gl146a", true); } // [C1, C2, U1]
7665test { try toUnicodeFail("xn--?-c1g3623d.xn--1chz659f"); } // [V7, U1]19193test { try toUnicodeFail("xn--?-c1g3623d.xn--1chz659f"); } // [V7, U1]
19194test { try toAsciiFail("xn--?-c1g3623d.xn--1chz659f", false); } // [V7, U1]
19195test { try toAsciiFail("xn--?-c1g3623d.xn--1chz659f", true); } // [V7, U1]
7666test { try toUnicodeFail("xn--?-c1g798iy27d.xn--1ug73gl146a"); } // [C1, C2, V7, U1]19196test { try toUnicodeFail("xn--?-c1g798iy27d.xn--1ug73gl146a"); } // [C1, C2, V7, U1]
19197test { try toAsciiFail("xn--?-c1g798iy27d.xn--1ug73gl146a", false); } // [C1, C2, V7, U1]
19198test { try toAsciiFail("xn--?-c1g798iy27d.xn--1ug73gl146a", true); } // [C1, C2, V7, U1]
7667test { try toUnicodeFail("\xe6\x86\xa1?\xe2\xb4\x94.xn--1chz659f"); } // [U1]19199test { try toUnicodeFail("\xe6\x86\xa1?\xe2\xb4\x94.xn--1chz659f"); } // [U1]
19200test { try toAsciiFail("\xe6\x86\xa1?\xe2\xb4\x94.xn--1chz659f", false); } // [U1]
19201test { try toAsciiFail("\xe6\x86\xa1?\xe2\xb4\x94.xn--1chz659f", true); } // [U1]
7668test { try toUnicodeFail("\xe6\x86\xa1?\xe1\x82\xb4.XN--1CHZ659F"); } // [U1]19202test { try toUnicodeFail("\xe6\x86\xa1?\xe1\x82\xb4.XN--1CHZ659F"); } // [U1]
19203test { try toAsciiFail("\xe6\x86\xa1?\xe1\x82\xb4.XN--1CHZ659F", false); } // [U1]
19204test { try toAsciiFail("\xe6\x86\xa1?\xe1\x82\xb4.XN--1CHZ659F", true); } // [U1]
7669test { try toUnicodeFail("\xe6\x86\xa1?\xe1\x82\xb4.xn--1chz659f"); } // [U1]19205test { try toUnicodeFail("\xe6\x86\xa1?\xe1\x82\xb4.xn--1chz659f"); } // [U1]
19206test { try toAsciiFail("\xe6\x86\xa1?\xe1\x82\xb4.xn--1chz659f", false); } // [U1]
19207test { try toAsciiFail("\xe6\x86\xa1?\xe1\x82\xb4.xn--1chz659f", true); } // [U1]
7670test { try toUnicodeFail("\xe6\x86\xa1?\xe2\x80\x8c\xe2\xb4\x94.xn--1ug73gl146a"); } // [C1, C2, U1]19208test { try toUnicodeFail("\xe6\x86\xa1?\xe2\x80\x8c\xe2\xb4\x94.xn--1ug73gl146a"); } // [C1, C2, U1]
19209test { try toAsciiFail("\xe6\x86\xa1?\xe2\x80\x8c\xe2\xb4\x94.xn--1ug73gl146a", false); } // [C1, C2, U1]
19210test { try toAsciiFail("\xe6\x86\xa1?\xe2\x80\x8c\xe2\xb4\x94.xn--1ug73gl146a", true); } // [C2, U1]
7671test { try toUnicodeFail("\xe6\x86\xa1?\xe2\x80\x8c\xe1\x82\xb4.XN--1UG73GL146A"); } // [C1, C2, U1]19211test { try toUnicodeFail("\xe6\x86\xa1?\xe2\x80\x8c\xe1\x82\xb4.XN--1UG73GL146A"); } // [C1, C2, U1]
19212test { try toAsciiFail("\xe6\x86\xa1?\xe2\x80\x8c\xe1\x82\xb4.XN--1UG73GL146A", false); } // [C1, C2, U1]
19213test { try toAsciiFail("\xe6\x86\xa1?\xe2\x80\x8c\xe1\x82\xb4.XN--1UG73GL146A", true); } // [C2, U1]
7672test { try toUnicodeFail("\xe6\x86\xa1?\xe2\x80\x8c\xe1\x82\xb4.xn--1ug73gl146a"); } // [C1, C2, U1]19214test { try toUnicodeFail("\xe6\x86\xa1?\xe2\x80\x8c\xe1\x82\xb4.xn--1ug73gl146a"); } // [C1, C2, U1]
19215test { try toAsciiFail("\xe6\x86\xa1?\xe2\x80\x8c\xe1\x82\xb4.xn--1ug73gl146a", false); } // [C1, C2, U1]
19216test { try toAsciiFail("\xe6\x86\xa1?\xe2\x80\x8c\xe1\x82\xb4.xn--1ug73gl146a", true); } // [C2, U1]
7673test { try toUnicodeFail("xn--?-fwsr13r.xn--1ug73gl146a"); } // [C2, U1]19217test { try toUnicodeFail("xn--?-fwsr13r.xn--1ug73gl146a"); } // [C2, U1]
19218test { try toAsciiFail("xn--?-fwsr13r.xn--1ug73gl146a", false); } // [C2, U1]
19219test { try toAsciiFail("xn--?-fwsr13r.xn--1ug73gl146a", true); } // [C2, U1]
7674test { try toUnicodeFail("xn--?-c1g3623d.xn--1ug73gl146a"); } // [C2, V7, U1]19220test { try toUnicodeFail("xn--?-c1g3623d.xn--1ug73gl146a"); } // [C2, V7, U1]
19221test { try toAsciiFail("xn--?-c1g3623d.xn--1ug73gl146a", false); } // [C2, V7, U1]
19222test { try toAsciiFail("xn--?-c1g3623d.xn--1ug73gl146a", true); } // [C2, V7, U1]
7675test { try toUnicodeFail("\xe6\x86\xa1?\xe1\x82\xb4.xn--1ug73gl146a"); } // [C2, U1]19223test { try toUnicodeFail("\xe6\x86\xa1?\xe1\x82\xb4.xn--1ug73gl146a"); } // [C2, U1]
19224test { try toAsciiFail("\xe6\x86\xa1?\xe1\x82\xb4.xn--1ug73gl146a", false); } // [C2, U1]
19225test { try toAsciiFail("\xe6\x86\xa1?\xe1\x82\xb4.xn--1ug73gl146a", true); } // [C2, U1]
7676test { try toUnicodeFail("\xe6\x86\xa1?\xe2\xb4\x94.xn--1ug73gl146a"); } // [C2, U1]19226test { try toUnicodeFail("\xe6\x86\xa1?\xe2\xb4\x94.xn--1ug73gl146a"); } // [C2, U1]
19227test { try toAsciiFail("\xe6\x86\xa1?\xe2\xb4\x94.xn--1ug73gl146a", false); } // [C2, U1]
19228test { try toAsciiFail("\xe6\x86\xa1?\xe2\xb4\x94.xn--1ug73gl146a", true); } // [C2, U1]
7677test { try toUnicodeFail("\xe6\x86\xa1?\xe1\x82\xb4.XN--1UG73GL146A"); } // [C2, U1]19229test { try toUnicodeFail("\xe6\x86\xa1?\xe1\x82\xb4.XN--1UG73GL146A"); } // [C2, U1]
19230test { try toAsciiFail("\xe6\x86\xa1?\xe1\x82\xb4.XN--1UG73GL146A", false); } // [C2, U1]
19231test { try toAsciiFail("\xe6\x86\xa1?\xe1\x82\xb4.XN--1UG73GL146A", true); } // [C2, U1]