authorgravatar for hello@nektro.netMeghan Denny <hello@nektro.net> 2026-01-24 14:07:58 -08:00
committergravatar for hello@nektro.netMeghan Denny <hello@nektro.net> 2026-01-24 14:07:58 -08:00
log3ccf2d3baa2f477362be1e641bf33870c2da2e44
treee7b787fc584ac3c97f28c2024d780c3cc26b477d
parent947aa51d3d1ae9acb82beb7abe5309eb265f7461

delete the in-repo files


2 files changed, 0 insertions(+), 23052 deletions(-)

IdnaTestV2.json deleted-12810
...@@ -1,12810 +0,0 @@
1[
2 "THIS IS A GENERATED FILE. PLEASE DO NOT MODIFY DIRECTLY. See ../tools/IdnaTestV2-parser.py instead.",
3 "--exclude-ipv4-like: True; --exclude-std3: True; --exclude-bidi: True",
4 {
5 "input": "fass.de",
6 "output": "fass.de"
7 },
8 {
9 "input": "fa\u00df.de",
10 "output": "xn--fa-hia.de"
11 },
12 {
13 "input": "Fa\u00df.de",
14 "output": "xn--fa-hia.de"
15 },
16 {
17 "input": "xn--fa-hia.de",
18 "output": "xn--fa-hia.de"
19 },
20 {
21 "input": "\u00e0.\u05d0\u0308",
22 "output": "xn--0ca.xn--ssa73l"
23 },
24 {
25 "input": "a\u0300.\u05d0\u0308",
26 "output": "xn--0ca.xn--ssa73l"
27 },
28 {
29 "input": "A\u0300.\u05d0\u0308",
30 "output": "xn--0ca.xn--ssa73l"
31 },
32 {
33 "input": "\u00c0.\u05d0\u0308",
34 "output": "xn--0ca.xn--ssa73l"
35 },
36 {
37 "input": "xn--0ca.xn--ssa73l",
38 "output": "xn--0ca.xn--ssa73l"
39 },
40 {
41 "input": "\u00e0\u0308.\u05d0",
42 "output": "xn--0ca81i.xn--4db"
43 },
44 {
45 "input": "a\u0300\u0308.\u05d0",
46 "output": "xn--0ca81i.xn--4db"
47 },
48 {
49 "input": "A\u0300\u0308.\u05d0",
50 "output": "xn--0ca81i.xn--4db"
51 },
52 {
53 "input": "\u00c0\u0308.\u05d0",
54 "output": "xn--0ca81i.xn--4db"
55 },
56 {
57 "input": "xn--0ca81i.xn--4db",
58 "output": "xn--0ca81i.xn--4db"
59 },
60 {
61 "comment": "C1",
62 "input": "a\u200cb",
63 "output": null
64 },
65 {
66 "comment": "C1",
67 "input": "A\u200cB",
68 "output": null
69 },
70 {
71 "comment": "C1",
72 "input": "A\u200cb",
73 "output": null
74 },
75 {
76 "input": "ab",
77 "output": "ab"
78 },
79 {
80 "comment": "C1",
81 "input": "xn--ab-j1t",
82 "output": null
83 },
84 {
85 "input": "a\u094d\u200cb",
86 "output": "xn--ab-fsf604u"
87 },
88 {
89 "input": "A\u094d\u200cB",
90 "output": "xn--ab-fsf604u"
91 },
92 {
93 "input": "A\u094d\u200cb",
94 "output": "xn--ab-fsf604u"
95 },
96 {
97 "input": "xn--ab-fsf",
98 "output": "xn--ab-fsf"
99 },
100 {
101 "input": "a\u094db",
102 "output": "xn--ab-fsf"
103 },
104 {
105 "input": "A\u094dB",
106 "output": "xn--ab-fsf"
107 },
108 {
109 "input": "A\u094db",
110 "output": "xn--ab-fsf"
111 },
112 {
113 "input": "xn--ab-fsf604u",
114 "output": "xn--ab-fsf604u"
115 },
116 {
117 "comment": "C2",
118 "input": "a\u200db",
119 "output": null
120 },
121 {
122 "comment": "C2",
123 "input": "A\u200dB",
124 "output": null
125 },
126 {
127 "comment": "C2",
128 "input": "A\u200db",
129 "output": null
130 },
131 {
132 "comment": "C2",
133 "input": "xn--ab-m1t",
134 "output": null
135 },
136 {
137 "input": "a\u094d\u200db",
138 "output": "xn--ab-fsf014u"
139 },
140 {
141 "input": "A\u094d\u200dB",
142 "output": "xn--ab-fsf014u"
143 },
144 {
145 "input": "A\u094d\u200db",
146 "output": "xn--ab-fsf014u"
147 },
148 {
149 "input": "xn--ab-fsf014u",
150 "output": "xn--ab-fsf014u"
151 },
152 {
153 "input": "\u00a1",
154 "output": "xn--7a"
155 },
156 {
157 "input": "xn--7a",
158 "output": "xn--7a"
159 },
160 {
161 "input": "\u19da",
162 "output": "xn--pkf"
163 },
164 {
165 "input": "xn--pkf",
166 "output": "xn--pkf"
167 },
168 {
169 "comment": "A4_1 (ignored); A4_2 (ignored)",
170 "input": "",
171 "output": ""
172 },
173 {
174 "comment": "A4_1 (ignored); A4_2 (ignored)",
175 "input": "\u3002",
176 "output": "."
177 },
178 {
179 "comment": "A4_1 (ignored); A4_2 (ignored)",
180 "input": ".",
181 "output": "."
182 },
183 {
184 "input": "\uab60",
185 "output": "xn--3y9a"
186 },
187 {
188 "input": "xn--3y9a",
189 "output": "xn--3y9a"
190 },
191 {
192 "comment": "A4_2 (ignored)",
193 "input": "1234567890\u00e41234567890123456789012345678901234567890123456",
194 "output": "xn--12345678901234567890123456789012345678901234567890123456-fxe"
195 },
196 {
197 "comment": "A4_2 (ignored)",
198 "input": "1234567890a\u03081234567890123456789012345678901234567890123456",
199 "output": "xn--12345678901234567890123456789012345678901234567890123456-fxe"
200 },
201 {
202 "comment": "A4_2 (ignored)",
203 "input": "1234567890A\u03081234567890123456789012345678901234567890123456",
204 "output": "xn--12345678901234567890123456789012345678901234567890123456-fxe"
205 },
206 {
207 "comment": "A4_2 (ignored)",
208 "input": "1234567890\u00c41234567890123456789012345678901234567890123456",
209 "output": "xn--12345678901234567890123456789012345678901234567890123456-fxe"
210 },
211 {
212 "comment": "A4_2 (ignored)",
213 "input": "xn--12345678901234567890123456789012345678901234567890123456-fxe",
214 "output": "xn--12345678901234567890123456789012345678901234567890123456-fxe"
215 },
216 {
217 "input": "www.eXample.cOm",
218 "output": "www.example.com"
219 },
220 {
221 "input": "B\u00fccher.de",
222 "output": "xn--bcher-kva.de"
223 },
224 {
225 "input": "Bu\u0308cher.de",
226 "output": "xn--bcher-kva.de"
227 },
228 {
229 "input": "bu\u0308cher.de",
230 "output": "xn--bcher-kva.de"
231 },
232 {
233 "input": "b\u00fccher.de",
234 "output": "xn--bcher-kva.de"
235 },
236 {
237 "input": "B\u00dcCHER.DE",
238 "output": "xn--bcher-kva.de"
239 },
240 {
241 "input": "BU\u0308CHER.DE",
242 "output": "xn--bcher-kva.de"
243 },
244 {
245 "input": "xn--bcher-kva.de",
246 "output": "xn--bcher-kva.de"
247 },
248 {
249 "input": "\u00d6BB",
250 "output": "xn--bb-eka"
251 },
252 {
253 "input": "O\u0308BB",
254 "output": "xn--bb-eka"
255 },
256 {
257 "input": "o\u0308bb",
258 "output": "xn--bb-eka"
259 },
260 {
261 "input": "\u00f6bb",
262 "output": "xn--bb-eka"
263 },
264 {
265 "input": "\u00d6bb",
266 "output": "xn--bb-eka"
267 },
268 {
269 "input": "O\u0308bb",
270 "output": "xn--bb-eka"
271 },
272 {
273 "input": "xn--bb-eka",
274 "output": "xn--bb-eka"
275 },
276 {
277 "input": "FA\u1e9e.de",
278 "output": "xn--fa-hia.de"
279 },
280 {
281 "input": "FA\u1e9e.DE",
282 "output": "xn--fa-hia.de"
283 },
284 {
285 "input": "\u03b2\u03cc\u03bb\u03bf\u03c2.com",
286 "output": "xn--nxasmm1c.com"
287 },
288 {
289 "input": "\u03b2\u03bf\u0301\u03bb\u03bf\u03c2.com",
290 "output": "xn--nxasmm1c.com"
291 },
292 {
293 "input": "\u0392\u039f\u0301\u039b\u039f\u03a3.COM",
294 "output": "xn--nxasmq6b.com"
295 },
296 {
297 "input": "\u0392\u038c\u039b\u039f\u03a3.COM",
298 "output": "xn--nxasmq6b.com"
299 },
300 {
301 "input": "\u03b2\u03cc\u03bb\u03bf\u03c3.com",
302 "output": "xn--nxasmq6b.com"
303 },
304 {
305 "input": "\u03b2\u03bf\u0301\u03bb\u03bf\u03c3.com",
306 "output": "xn--nxasmq6b.com"
307 },
308 {
309 "input": "\u0392\u03bf\u0301\u03bb\u03bf\u03c3.com",
310 "output": "xn--nxasmq6b.com"
311 },
312 {
313 "input": "\u0392\u03cc\u03bb\u03bf\u03c3.com",
314 "output": "xn--nxasmq6b.com"
315 },
316 {
317 "input": "xn--nxasmq6b.com",
318 "output": "xn--nxasmq6b.com"
319 },
320 {
321 "input": "\u0392\u03bf\u0301\u03bb\u03bf\u03c2.com",
322 "output": "xn--nxasmm1c.com"
323 },
324 {
325 "input": "\u0392\u03cc\u03bb\u03bf\u03c2.com",
326 "output": "xn--nxasmm1c.com"
327 },
328 {
329 "input": "xn--nxasmm1c.com",
330 "output": "xn--nxasmm1c.com"
331 },
332 {
333 "input": "xn--nxasmm1c",
334 "output": "xn--nxasmm1c"
335 },
336 {
337 "input": "\u03b2\u03cc\u03bb\u03bf\u03c2",
338 "output": "xn--nxasmm1c"
339 },
340 {
341 "input": "\u03b2\u03bf\u0301\u03bb\u03bf\u03c2",
342 "output": "xn--nxasmm1c"
343 },
344 {
345 "input": "\u0392\u039f\u0301\u039b\u039f\u03a3",
346 "output": "xn--nxasmq6b"
347 },
348 {
349 "input": "\u0392\u038c\u039b\u039f\u03a3",
350 "output": "xn--nxasmq6b"
351 },
352 {
353 "input": "\u03b2\u03cc\u03bb\u03bf\u03c3",
354 "output": "xn--nxasmq6b"
355 },
356 {
357 "input": "\u03b2\u03bf\u0301\u03bb\u03bf\u03c3",
358 "output": "xn--nxasmq6b"
359 },
360 {
361 "input": "\u0392\u03bf\u0301\u03bb\u03bf\u03c3",
362 "output": "xn--nxasmq6b"
363 },
364 {
365 "input": "\u0392\u03cc\u03bb\u03bf\u03c3",
366 "output": "xn--nxasmq6b"
367 },
368 {
369 "input": "xn--nxasmq6b",
370 "output": "xn--nxasmq6b"
371 },
372 {
373 "input": "\u0392\u03cc\u03bb\u03bf\u03c2",
374 "output": "xn--nxasmm1c"
375 },
376 {
377 "input": "\u0392\u03bf\u0301\u03bb\u03bf\u03c2",
378 "output": "xn--nxasmm1c"
379 },
380 {
381 "input": "www.\u0dc1\u0dca\u200d\u0dbb\u0dd3.com",
382 "output": "www.xn--10cl1a0b660p.com"
383 },
384 {
385 "input": "WWW.\u0dc1\u0dca\u200d\u0dbb\u0dd3.COM",
386 "output": "www.xn--10cl1a0b660p.com"
387 },
388 {
389 "input": "Www.\u0dc1\u0dca\u200d\u0dbb\u0dd3.com",
390 "output": "www.xn--10cl1a0b660p.com"
391 },
392 {
393 "input": "www.xn--10cl1a0b.com",
394 "output": "www.xn--10cl1a0b.com"
395 },
396 {
397 "input": "www.\u0dc1\u0dca\u0dbb\u0dd3.com",
398 "output": "www.xn--10cl1a0b.com"
399 },
400 {
401 "input": "WWW.\u0dc1\u0dca\u0dbb\u0dd3.COM",
402 "output": "www.xn--10cl1a0b.com"
403 },
404 {
405 "input": "Www.\u0dc1\u0dca\u0dbb\u0dd3.com",
406 "output": "www.xn--10cl1a0b.com"
407 },
408 {
409 "input": "www.xn--10cl1a0b660p.com",
410 "output": "www.xn--10cl1a0b660p.com"
411 },
412 {
413 "input": "\u0646\u0627\u0645\u0647\u200c\u0627\u06cc",
414 "output": "xn--mgba3gch31f060k"
415 },
416 {
417 "input": "xn--mgba3gch31f",
418 "output": "xn--mgba3gch31f"
419 },
420 {
421 "input": "\u0646\u0627\u0645\u0647\u0627\u06cc",
422 "output": "xn--mgba3gch31f"
423 },
424 {
425 "input": "xn--mgba3gch31f060k",
426 "output": "xn--mgba3gch31f060k"
427 },
428 {
429 "input": "xn--mgba3gch31f060k.com",
430 "output": "xn--mgba3gch31f060k.com"
431 },
432 {
433 "input": "\u0646\u0627\u0645\u0647\u200c\u0627\u06cc.com",
434 "output": "xn--mgba3gch31f060k.com"
435 },
436 {
437 "input": "\u0646\u0627\u0645\u0647\u200c\u0627\u06cc.COM",
438 "output": "xn--mgba3gch31f060k.com"
439 },
440 {
441 "input": "xn--mgba3gch31f.com",
442 "output": "xn--mgba3gch31f.com"
443 },
444 {
445 "input": "\u0646\u0627\u0645\u0647\u0627\u06cc.com",
446 "output": "xn--mgba3gch31f.com"
447 },
448 {
449 "input": "\u0646\u0627\u0645\u0647\u0627\u06cc.COM",
450 "output": "xn--mgba3gch31f.com"
451 },
452 {
453 "comment": "A4_2 (ignored)",
454 "input": "a.b\uff0ec\u3002d\uff61",
455 "output": "a.b.c.d."
456 },
457 {
458 "comment": "A4_2 (ignored)",
459 "input": "a.b.c\u3002d\u3002",
460 "output": "a.b.c.d."
461 },
462 {
463 "comment": "A4_2 (ignored)",
464 "input": "A.B.C\u3002D\u3002",
465 "output": "a.b.c.d."
466 },
467 {
468 "comment": "A4_2 (ignored)",
469 "input": "A.b.c\u3002D\u3002",
470 "output": "a.b.c.d."
471 },
472 {
473 "comment": "A4_2 (ignored)",
474 "input": "a.b.c.d.",
475 "output": "a.b.c.d."
476 },
477 {
478 "comment": "A4_2 (ignored)",
479 "input": "A.B\uff0eC\u3002D\uff61",
480 "output": "a.b.c.d."
481 },
482 {
483 "comment": "A4_2 (ignored)",
484 "input": "A.b\uff0ec\u3002D\uff61",
485 "output": "a.b.c.d."
486 },
487 {
488 "input": "U\u0308.xn--tda",
489 "output": "xn--tda.xn--tda"
490 },
491 {
492 "input": "\u00dc.xn--tda",
493 "output": "xn--tda.xn--tda"
494 },
495 {
496 "input": "\u00fc.xn--tda",
497 "output": "xn--tda.xn--tda"
498 },
499 {
500 "input": "u\u0308.xn--tda",
501 "output": "xn--tda.xn--tda"
502 },
503 {
504 "input": "U\u0308.XN--TDA",
505 "output": "xn--tda.xn--tda"
506 },
507 {
508 "input": "\u00dc.XN--TDA",
509 "output": "xn--tda.xn--tda"
510 },
511 {
512 "input": "\u00dc.xn--Tda",
513 "output": "xn--tda.xn--tda"
514 },
515 {
516 "input": "U\u0308.xn--Tda",
517 "output": "xn--tda.xn--tda"
518 },
519 {
520 "input": "xn--tda.xn--tda",
521 "output": "xn--tda.xn--tda"
522 },
523 {
524 "input": "\u00fc.\u00fc",
525 "output": "xn--tda.xn--tda"
526 },
527 {
528 "input": "u\u0308.u\u0308",
529 "output": "xn--tda.xn--tda"
530 },
531 {
532 "input": "U\u0308.U\u0308",
533 "output": "xn--tda.xn--tda"
534 },
535 {
536 "input": "\u00dc.\u00dc",
537 "output": "xn--tda.xn--tda"
538 },
539 {
540 "input": "\u00dc.\u00fc",
541 "output": "xn--tda.xn--tda"
542 },
543 {
544 "input": "U\u0308.u\u0308",
545 "output": "xn--tda.xn--tda"
546 },
547 {
548 "comment": "V1",
549 "input": "xn--u-ccb",
550 "output": null
551 },
552 {
553 "comment": "V7",
554 "input": "a\u2488com",
555 "output": null
556 },
557 {
558 "input": "a1.com",
559 "output": "a1.com"
560 },
561 {
562 "comment": "V7",
563 "input": "A\u2488COM",
564 "output": null
565 },
566 {
567 "comment": "V7",
568 "input": "A\u2488Com",
569 "output": null
570 },
571 {
572 "comment": "V7",
573 "input": "xn--acom-0w1b",
574 "output": null
575 },
576 {
577 "comment": "V7",
578 "input": "xn--a-ecp.ru",
579 "output": null
580 },
581 {
582 "comment": "P4",
583 "input": "xn--0.pt",
584 "output": null
585 },
586 {
587 "comment": "V7",
588 "input": "xn--a.pt",
589 "output": null
590 },
591 {
592 "comment": "P4",
593 "input": "xn--a-\u00c4.pt",
594 "output": null
595 },
596 {
597 "comment": "P4",
598 "input": "xn--a-A\u0308.pt",
599 "output": null
600 },
601 {
602 "comment": "P4",
603 "input": "xn--a-a\u0308.pt",
604 "output": null
605 },
606 {
607 "comment": "P4",
608 "input": "xn--a-\u00e4.pt",
609 "output": null
610 },
611 {
612 "comment": "P4",
613 "input": "XN--A-\u00c4.PT",
614 "output": null
615 },
616 {
617 "comment": "P4",
618 "input": "XN--A-A\u0308.PT",
619 "output": null
620 },
621 {
622 "comment": "P4",
623 "input": "Xn--A-A\u0308.pt",
624 "output": null
625 },
626 {
627 "comment": "P4",
628 "input": "Xn--A-\u00c4.pt",
629 "output": null
630 },
631 {
632 "comment": "V4; V2 (ignored)",
633 "input": "xn--xn--a--gua.pt",
634 "output": null
635 },
636 {
637 "input": "\u65e5\u672c\u8a9e\u3002\uff2a\uff30",
638 "output": "xn--wgv71a119e.jp"
639 },
640 {
641 "input": "\u65e5\u672c\u8a9e\u3002JP",
642 "output": "xn--wgv71a119e.jp"
643 },
644 {
645 "input": "\u65e5\u672c\u8a9e\u3002jp",
646 "output": "xn--wgv71a119e.jp"
647 },
648 {
649 "input": "\u65e5\u672c\u8a9e\u3002Jp",
650 "output": "xn--wgv71a119e.jp"
651 },
652 {
653 "input": "xn--wgv71a119e.jp",
654 "output": "xn--wgv71a119e.jp"
655 },
656 {
657 "input": "\u65e5\u672c\u8a9e.jp",
658 "output": "xn--wgv71a119e.jp"
659 },
660 {
661 "input": "\u65e5\u672c\u8a9e.JP",
662 "output": "xn--wgv71a119e.jp"
663 },
664 {
665 "input": "\u65e5\u672c\u8a9e.Jp",
666 "output": "xn--wgv71a119e.jp"
667 },
668 {
669 "input": "\u65e5\u672c\u8a9e\u3002\uff4a\uff50",
670 "output": "xn--wgv71a119e.jp"
671 },
672 {
673 "input": "\u65e5\u672c\u8a9e\u3002\uff2a\uff50",
674 "output": "xn--wgv71a119e.jp"
675 },
676 {
677 "input": "\u2615",
678 "output": "xn--53h"
679 },
680 {
681 "input": "xn--53h",
682 "output": "xn--53h"
683 },
684 {
685 "comment": "C1; C2; A4_2 (ignored)",
686 "input": "1.a\u00df\u200c\u200db\u200c\u200dc\u00df\u00df\u00df\u00dfd\u03c2\u03c3\u00df\u00df\u00df\u00df\u00df\u00df\u00df\u00dfe\u00df\u00df\u00df\u00df\u00df\u00df\u00df\u00df\u00df\u00dfx\u00df\u00df\u00df\u00df\u00df\u00df\u00df\u00df\u00df\u00dfy\u00df\u00df\u00df\u00df\u00df\u00df\u00df\u00df\u0302\u00dfz",
687 "output": null
688 },
689 {
690 "comment": "C1; C2; A4_2 (ignored)",
691 "input": "1.ASS\u200c\u200dB\u200c\u200dCSSSSSSSSD\u03a3\u03a3SSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSSS\u0302SSZ",
692 "output": null
693 },
694 {
695 "comment": "C1; C2; A4_2 (ignored)",
696 "input": "1.ASS\u200c\u200dB\u200c\u200dCSSSSSSSSD\u03a3\u03a3SSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSS\u015cSSZ",
697 "output": null
698 },
699 {
700 "comment": "C1; C2; A4_2 (ignored)",
701 "input": "1.ass\u200c\u200db\u200c\u200dcssssssssd\u03c3\u03c3ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\u015dssz",
702 "output": null
703 },
704 {
705 "comment": "C1; C2; A4_2 (ignored)",
706 "input": "1.ass\u200c\u200db\u200c\u200dcssssssssd\u03c3\u03c3ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssyssssssssssssssss\u0302ssz",
707 "output": null
708 },
709 {
710 "comment": "C1; C2; A4_2 (ignored)",
711 "input": "1.Ass\u200c\u200db\u200c\u200dcssssssssd\u03c3\u03c3ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssyssssssssssssssss\u0302ssz",
712 "output": null
713 },
714 {
715 "comment": "C1; C2; A4_2 (ignored)",
716 "input": "1.Ass\u200c\u200db\u200c\u200dcssssssssd\u03c3\u03c3ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\u015dssz",
717 "output": null
718 },
719 {
720 "comment": "A4_2 (ignored)",
721 "input": "1.xn--assbcssssssssdssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssssz-pxq1419aa",
722 "output": "1.xn--assbcssssssssdssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssssz-pxq1419aa"
723 },
724 {
725 "comment": "A4_2 (ignored)",
726 "input": "1.assbcssssssssd\u03c3\u03c3ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\u015dssz",
727 "output": "1.xn--assbcssssssssdssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssssz-pxq1419aa"
728 },
729 {
730 "comment": "A4_2 (ignored)",
731 "input": "1.assbcssssssssd\u03c3\u03c3ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssyssssssssssssssss\u0302ssz",
732 "output": "1.xn--assbcssssssssdssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssssz-pxq1419aa"
733 },
734 {
735 "comment": "A4_2 (ignored)",
736 "input": "1.ASSBCSSSSSSSSD\u03a3\u03a3SSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSSS\u0302SSZ",
737 "output": "1.xn--assbcssssssssdssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssssz-pxq1419aa"
738 },
739 {
740 "comment": "A4_2 (ignored)",
741 "input": "1.ASSBCSSSSSSSSD\u03a3\u03a3SSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSS\u015cSSZ",
742 "output": "1.xn--assbcssssssssdssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssssz-pxq1419aa"
743 },
744 {
745 "comment": "A4_2 (ignored)",
746 "input": "1.Assbcssssssssd\u03c3\u03c3ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssss\u015dssz",
747 "output": "1.xn--assbcssssssssdssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssssz-pxq1419aa"
748 },
749 {
750 "comment": "A4_2 (ignored)",
751 "input": "1.Assbcssssssssd\u03c3\u03c3ssssssssssssssssessssssssssssssssssssxssssssssssssssssssssyssssssssssssssss\u0302ssz",
752 "output": "1.xn--assbcssssssssdssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssssz-pxq1419aa"
753 },
754 {
755 "comment": "C1; C2; A4_2 (ignored)",
756 "input": "1.xn--assbcssssssssdssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssssz-pxq1419aa69989dba9gc",
757 "output": null
758 },
759 {
760 "comment": "C1; C2; A4_2 (ignored)",
761 "input": "1.A\u00df\u200c\u200db\u200c\u200dc\u00df\u00df\u00df\u00dfd\u03c2\u03c3\u00df\u00df\u00df\u00df\u00df\u00df\u00df\u00dfe\u00df\u00df\u00df\u00df\u00df\u00df\u00df\u00df\u00df\u00dfx\u00df\u00df\u00df\u00df\u00df\u00df\u00df\u00df\u00df\u00dfy\u00df\u00df\u00df\u00df\u00df\u00df\u00df\u00df\u0302\u00dfz",
762 "output": null
763 },
764 {
765 "comment": "C1; C2; A4_2 (ignored)",
766 "input": "1.xn--abcdexyz-qyacaaabaaaaaaabaaaaaaaaabaaaaaaaaabaaaaaaaa010ze2isb1140zba8cc",
767 "output": null
768 },
769 {
770 "comment": "C1; C2",
771 "input": "\u200cx\u200dn\u200c-\u200d-b\u00df",
772 "output": null
773 },
774 {
775 "comment": "C1; C2",
776 "input": "\u200cX\u200dN\u200c-\u200d-BSS",
777 "output": null
778 },
779 {
780 "comment": "C1; C2",
781 "input": "\u200cx\u200dn\u200c-\u200d-bss",
782 "output": null
783 },
784 {
785 "comment": "C1; C2",
786 "input": "\u200cX\u200dn\u200c-\u200d-Bss",
787 "output": null
788 },
789 {
790 "input": "xn--bss",
791 "output": "xn--bss"
792 },
793 {
794 "input": "\u5919",
795 "output": "xn--bss"
796 },
797 {
798 "comment": "C1; C2",
799 "input": "xn--xn--bss-7z6ccid",
800 "output": null
801 },
802 {
803 "comment": "C1; C2",
804 "input": "\u200cX\u200dn\u200c-\u200d-B\u00df",
805 "output": null
806 },
807 {
808 "comment": "C1; C2",
809 "input": "xn--xn--b-pqa5796ccahd",
810 "output": null
811 },
812 {
813 "input": "\u02e3\u034f\u2115\u200b\ufe63\u00ad\uff0d\u180c\u212c\ufe00\u017f\u2064\ud835\udd30\udb40\uddef\ufb04",
814 "output": "xn--bssffl"
815 },
816 {
817 "input": "x\u034fN\u200b-\u00ad-\u180cB\ufe00s\u2064s\udb40\uddefffl",
818 "output": "xn--bssffl"
819 },
820 {
821 "input": "x\u034fn\u200b-\u00ad-\u180cb\ufe00s\u2064s\udb40\uddefffl",
822 "output": "xn--bssffl"
823 },
824 {
825 "input": "X\u034fN\u200b-\u00ad-\u180cB\ufe00S\u2064S\udb40\uddefFFL",
826 "output": "xn--bssffl"
827 },
828 {
829 "input": "X\u034fn\u200b-\u00ad-\u180cB\ufe00s\u2064s\udb40\uddefffl",
830 "output": "xn--bssffl"
831 },
832 {
833 "input": "xn--bssffl",
834 "output": "xn--bssffl"
835 },
836 {
837 "input": "\u5921\u591e\u591c\u5919",
838 "output": "xn--bssffl"
839 },
840 {
841 "input": "\u02e3\u034f\u2115\u200b\ufe63\u00ad\uff0d\u180c\u212c\ufe00S\u2064\ud835\udd30\udb40\uddefFFL",
842 "output": "xn--bssffl"
843 },
844 {
845 "input": "x\u034fN\u200b-\u00ad-\u180cB\ufe00S\u2064s\udb40\uddefFFL",
846 "output": "xn--bssffl"
847 },
848 {
849 "input": "\u02e3\u034f\u2115\u200b\ufe63\u00ad\uff0d\u180c\u212c\ufe00s\u2064\ud835\udd30\udb40\uddefffl",
850 "output": "xn--bssffl"
851 },
852 {
853 "input": "123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b",
854 "output": "123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"
855 },
856 {
857 "comment": "A4_2 (ignored)",
858 "input": "123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.",
859 "output": "123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."
860 },
861 {
862 "comment": "A4_1 (ignored)",
863 "input": "123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c",
864 "output": "123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"
865 },
866 {
867 "comment": "A4_2 (ignored)",
868 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a",
869 "output": "123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"
870 },
871 {
872 "comment": "A4_2 (ignored)",
873 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.",
874 "output": "123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."
875 },
876 {
877 "comment": "A4_1 (ignored); A4_2 (ignored)",
878 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b",
879 "output": "123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"
880 },
881 {
882 "input": "\u00e41234567890123456789012345678901234567890123456789012345",
883 "output": "xn--1234567890123456789012345678901234567890123456789012345-9te"
884 },
885 {
886 "input": "a\u03081234567890123456789012345678901234567890123456789012345",
887 "output": "xn--1234567890123456789012345678901234567890123456789012345-9te"
888 },
889 {
890 "input": "A\u03081234567890123456789012345678901234567890123456789012345",
891 "output": "xn--1234567890123456789012345678901234567890123456789012345-9te"
892 },
893 {
894 "input": "\u00c41234567890123456789012345678901234567890123456789012345",
895 "output": "xn--1234567890123456789012345678901234567890123456789012345-9te"
896 },
897 {
898 "input": "xn--1234567890123456789012345678901234567890123456789012345-9te",
899 "output": "xn--1234567890123456789012345678901234567890123456789012345-9te"
900 },
901 {
902 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890\u00e4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b",
903 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"
904 },
905 {
906 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890a\u0308123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b",
907 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"
908 },
909 {
910 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890A\u0308123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B",
911 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"
912 },
913 {
914 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890\u00c4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B",
915 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"
916 },
917 {
918 "input": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b",
919 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"
920 },
921 {
922 "comment": "A4_2 (ignored)",
923 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890\u00e4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.",
924 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."
925 },
926 {
927 "comment": "A4_2 (ignored)",
928 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890a\u0308123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.",
929 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."
930 },
931 {
932 "comment": "A4_2 (ignored)",
933 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890A\u0308123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B.",
934 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."
935 },
936 {
937 "comment": "A4_2 (ignored)",
938 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890\u00c4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B.",
939 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."
940 },
941 {
942 "comment": "A4_2 (ignored)",
943 "input": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.",
944 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."
945 },
946 {
947 "comment": "A4_1 (ignored)",
948 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890\u00e4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c",
949 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"
950 },
951 {
952 "comment": "A4_1 (ignored)",
953 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890a\u0308123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c",
954 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"
955 },
956 {
957 "comment": "A4_1 (ignored)",
958 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890A\u0308123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901C",
959 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"
960 },
961 {
962 "comment": "A4_1 (ignored)",
963 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890\u00c4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901C",
964 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"
965 },
966 {
967 "comment": "A4_1 (ignored)",
968 "input": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c",
969 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"
970 },
971 {
972 "comment": "A4_2 (ignored)",
973 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890\u00e41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a",
974 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"
975 },
976 {
977 "comment": "A4_2 (ignored)",
978 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890a\u03081234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a",
979 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"
980 },
981 {
982 "comment": "A4_2 (ignored)",
983 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890A\u03081234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A",
984 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"
985 },
986 {
987 "comment": "A4_2 (ignored)",
988 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890\u00c41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A",
989 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"
990 },
991 {
992 "comment": "A4_2 (ignored)",
993 "input": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a",
994 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"
995 },
996 {
997 "comment": "A4_2 (ignored)",
998 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890\u00e41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.",
999 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."
1000 },
1001 {
1002 "comment": "A4_2 (ignored)",
1003 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890a\u03081234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.",
1004 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."
1005 },
1006 {
1007 "comment": "A4_2 (ignored)",
1008 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890A\u03081234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A.",
1009 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."
1010 },
1011 {
1012 "comment": "A4_2 (ignored)",
1013 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890\u00c41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A.",
1014 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."
1015 },
1016 {
1017 "comment": "A4_2 (ignored)",
1018 "input": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.",
1019 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."
1020 },
1021 {
1022 "comment": "A4_1 (ignored); A4_2 (ignored)",
1023 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890\u00e41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b",
1024 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"
1025 },
1026 {
1027 "comment": "A4_1 (ignored); A4_2 (ignored)",
1028 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890a\u03081234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b",
1029 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"
1030 },
1031 {
1032 "comment": "A4_1 (ignored); A4_2 (ignored)",
1033 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890A\u03081234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B",
1034 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"
1035 },
1036 {
1037 "comment": "A4_1 (ignored); A4_2 (ignored)",
1038 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890\u00c41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B",
1039 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"
1040 },
1041 {
1042 "comment": "A4_1 (ignored); A4_2 (ignored)",
1043 "input": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b",
1044 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"
1045 },
1046 {
1047 "comment": "V2 (ignored); V3 (ignored); A4_2 (ignored)",
1048 "input": "a.b..-q--a-.e",
1049 "output": "a.b..-q--a-.e"
1050 },
1051 {
1052 "comment": "V2 (ignored); V3 (ignored); A4_2 (ignored)",
1053 "input": "a.b..-q--\u00e4-.e",
1054 "output": "a.b..xn---q----jra.e"
1055 },
1056 {
1057 "comment": "V2 (ignored); V3 (ignored); A4_2 (ignored)",
1058 "input": "a.b..-q--a\u0308-.e",
1059 "output": "a.b..xn---q----jra.e"
1060 },
1061 {
1062 "comment": "V2 (ignored); V3 (ignored); A4_2 (ignored)",
1063 "input": "A.B..-Q--A\u0308-.E",
1064 "output": "a.b..xn---q----jra.e"
1065 },
1066 {
1067 "comment": "V2 (ignored); V3 (ignored); A4_2 (ignored)",
1068 "input": "A.B..-Q--\u00c4-.E",
1069 "output": "a.b..xn---q----jra.e"
1070 },
1071 {
1072 "comment": "V2 (ignored); V3 (ignored); A4_2 (ignored)",
1073 "input": "A.b..-Q--\u00c4-.E",
1074 "output": "a.b..xn---q----jra.e"
1075 },
1076 {
1077 "comment": "V2 (ignored); V3 (ignored); A4_2 (ignored)",
1078 "input": "A.b..-Q--A\u0308-.E",
1079 "output": "a.b..xn---q----jra.e"
1080 },
1081 {
1082 "comment": "V2 (ignored); V3 (ignored); A4_2 (ignored)",
1083 "input": "a.b..xn---q----jra.e",
1084 "output": "a.b..xn---q----jra.e"
1085 },
1086 {
1087 "comment": "A4_2 (ignored)",
1088 "input": "a..c",
1089 "output": "a..c"
1090 },
1091 {
1092 "comment": "V3 (ignored); A4_2 (ignored)",
1093 "input": "a.-b.",
1094 "output": "a.-b."
1095 },
1096 {
1097 "comment": "V3 (ignored)",
1098 "input": "a.b-.c",
1099 "output": "a.b-.c"
1100 },
1101 {
1102 "comment": "V3 (ignored)",
1103 "input": "a.-.c",
1104 "output": "a.-.c"
1105 },
1106 {
1107 "comment": "V2 (ignored)",
1108 "input": "a.bc--de.f",
1109 "output": "a.bc--de.f"
1110 },
1111 {
1112 "comment": "V4; V2 (ignored)",
1113 "input": "xn--xn---epa",
1114 "output": null
1115 },
1116 {
1117 "comment": "A4_2 (ignored)",
1118 "input": "\u00e4.\u00ad.c",
1119 "output": "xn--4ca..c"
1120 },
1121 {
1122 "comment": "A4_2 (ignored)",
1123 "input": "a\u0308.\u00ad.c",
1124 "output": "xn--4ca..c"
1125 },
1126 {
1127 "comment": "A4_2 (ignored)",
1128 "input": "A\u0308.\u00ad.C",
1129 "output": "xn--4ca..c"
1130 },
1131 {
1132 "comment": "A4_2 (ignored)",
1133 "input": "\u00c4.\u00ad.C",
1134 "output": "xn--4ca..c"
1135 },
1136 {
1137 "comment": "A4_2 (ignored)",
1138 "input": "xn--4ca..c",
1139 "output": "xn--4ca..c"
1140 },
1141 {
1142 "comment": "V3 (ignored); A4_2 (ignored)",
1143 "input": "\u00e4.-b.",
1144 "output": "xn--4ca.-b."
1145 },
1146 {
1147 "comment": "V3 (ignored); A4_2 (ignored)",
1148 "input": "a\u0308.-b.",
1149 "output": "xn--4ca.-b."
1150 },
1151 {
1152 "comment": "V3 (ignored); A4_2 (ignored)",
1153 "input": "A\u0308.-B.",
1154 "output": "xn--4ca.-b."
1155 },
1156 {
1157 "comment": "V3 (ignored); A4_2 (ignored)",
1158 "input": "\u00c4.-B.",
1159 "output": "xn--4ca.-b."
1160 },
1161 {
1162 "comment": "V3 (ignored); A4_2 (ignored)",
1163 "input": "xn--4ca.-b.",
1164 "output": "xn--4ca.-b."
1165 },
1166 {
1167 "comment": "V3 (ignored)",
1168 "input": "\u00e4.b-.c",
1169 "output": "xn--4ca.b-.c"
1170 },
1171 {
1172 "comment": "V3 (ignored)",
1173 "input": "a\u0308.b-.c",
1174 "output": "xn--4ca.b-.c"
1175 },
1176 {
1177 "comment": "V3 (ignored)",
1178 "input": "A\u0308.B-.C",
1179 "output": "xn--4ca.b-.c"
1180 },
1181 {
1182 "comment": "V3 (ignored)",
1183 "input": "\u00c4.B-.C",
1184 "output": "xn--4ca.b-.c"
1185 },
1186 {
1187 "comment": "V3 (ignored)",
1188 "input": "\u00c4.b-.C",
1189 "output": "xn--4ca.b-.c"
1190 },
1191 {
1192 "comment": "V3 (ignored)",
1193 "input": "A\u0308.b-.C",
1194 "output": "xn--4ca.b-.c"
1195 },
1196 {
1197 "comment": "V3 (ignored)",
1198 "input": "xn--4ca.b-.c",
1199 "output": "xn--4ca.b-.c"
1200 },
1201 {
1202 "comment": "V3 (ignored)",
1203 "input": "\u00e4.-.c",
1204 "output": "xn--4ca.-.c"
1205 },
1206 {
1207 "comment": "V3 (ignored)",
1208 "input": "a\u0308.-.c",
1209 "output": "xn--4ca.-.c"
1210 },
1211 {
1212 "comment": "V3 (ignored)",
1213 "input": "A\u0308.-.C",
1214 "output": "xn--4ca.-.c"
1215 },
1216 {
1217 "comment": "V3 (ignored)",
1218 "input": "\u00c4.-.C",
1219 "output": "xn--4ca.-.c"
1220 },
1221 {
1222 "comment": "V3 (ignored)",
1223 "input": "xn--4ca.-.c",
1224 "output": "xn--4ca.-.c"
1225 },
1226 {
1227 "comment": "V2 (ignored)",
1228 "input": "\u00e4.bc--de.f",
1229 "output": "xn--4ca.bc--de.f"
1230 },
1231 {
1232 "comment": "V2 (ignored)",
1233 "input": "a\u0308.bc--de.f",
1234 "output": "xn--4ca.bc--de.f"
1235 },
1236 {
1237 "comment": "V2 (ignored)",
1238 "input": "A\u0308.BC--DE.F",
1239 "output": "xn--4ca.bc--de.f"
1240 },
1241 {
1242 "comment": "V2 (ignored)",
1243 "input": "\u00c4.BC--DE.F",
1244 "output": "xn--4ca.bc--de.f"
1245 },
1246 {
1247 "comment": "V2 (ignored)",
1248 "input": "\u00c4.bc--De.f",
1249 "output": "xn--4ca.bc--de.f"
1250 },
1251 {
1252 "comment": "V2 (ignored)",
1253 "input": "A\u0308.bc--De.f",
1254 "output": "xn--4ca.bc--de.f"
1255 },
1256 {
1257 "comment": "V2 (ignored)",
1258 "input": "xn--4ca.bc--de.f",
1259 "output": "xn--4ca.bc--de.f"
1260 },
1261 {
1262 "comment": "V6",
1263 "input": "a.b.\u0308c.d",
1264 "output": null
1265 },
1266 {
1267 "comment": "V6",
1268 "input": "A.B.\u0308C.D",
1269 "output": null
1270 },
1271 {
1272 "comment": "V6",
1273 "input": "A.b.\u0308c.d",
1274 "output": null
1275 },
1276 {
1277 "comment": "V6",
1278 "input": "a.b.xn--c-bcb.d",
1279 "output": null
1280 },
1281 {
1282 "input": "A0",
1283 "output": "a0"
1284 },
1285 {
1286 "input": "0A",
1287 "output": "0a"
1288 },
1289 {
1290 "input": "\u05d0\u05c7",
1291 "output": "xn--vdbr"
1292 },
1293 {
1294 "input": "xn--vdbr",
1295 "output": "xn--vdbr"
1296 },
1297 {
1298 "input": "\u05d09\u05c7",
1299 "output": "xn--9-ihcz"
1300 },
1301 {
1302 "input": "xn--9-ihcz",
1303 "output": "xn--9-ihcz"
1304 },
1305 {
1306 "input": "\u05d0\u05ea",
1307 "output": "xn--4db6c"
1308 },
1309 {
1310 "input": "xn--4db6c",
1311 "output": "xn--4db6c"
1312 },
1313 {
1314 "input": "\u05d0\u05f3\u05ea",
1315 "output": "xn--4db6c0a"
1316 },
1317 {
1318 "input": "xn--4db6c0a",
1319 "output": "xn--4db6c0a"
1320 },
1321 {
1322 "input": "\u05d07\u05ea",
1323 "output": "xn--7-zhc3f"
1324 },
1325 {
1326 "input": "xn--7-zhc3f",
1327 "output": "xn--7-zhc3f"
1328 },
1329 {
1330 "input": "\u05d0\u0667\u05ea",
1331 "output": "xn--4db6c6t"
1332 },
1333 {
1334 "input": "xn--4db6c6t",
1335 "output": "xn--4db6c6t"
1336 },
1337 {
1338 "input": "\u0bb9\u0bcd\u200d",
1339 "output": "xn--dmc4b194h"
1340 },
1341 {
1342 "input": "xn--dmc4b",
1343 "output": "xn--dmc4b"
1344 },
1345 {
1346 "input": "\u0bb9\u0bcd",
1347 "output": "xn--dmc4b"
1348 },
1349 {
1350 "input": "xn--dmc4b194h",
1351 "output": "xn--dmc4b194h"
1352 },
1353 {
1354 "comment": "C2",
1355 "input": "\u0bb9\u200d",
1356 "output": null
1357 },
1358 {
1359 "input": "xn--dmc",
1360 "output": "xn--dmc"
1361 },
1362 {
1363 "input": "\u0bb9",
1364 "output": "xn--dmc"
1365 },
1366 {
1367 "comment": "C2",
1368 "input": "xn--dmc225h",
1369 "output": null
1370 },
1371 {
1372 "comment": "C2",
1373 "input": "\u200d",
1374 "output": null
1375 },
1376 {
1377 "comment": "C2",
1378 "input": "xn--1ug",
1379 "output": null
1380 },
1381 {
1382 "input": "\u0bb9\u0bcd\u200c",
1383 "output": "xn--dmc4by94h"
1384 },
1385 {
1386 "input": "xn--dmc4by94h",
1387 "output": "xn--dmc4by94h"
1388 },
1389 {
1390 "comment": "C1",
1391 "input": "\u0bb9\u200c",
1392 "output": null
1393 },
1394 {
1395 "comment": "C1",
1396 "input": "xn--dmc025h",
1397 "output": null
1398 },
1399 {
1400 "comment": "C1",
1401 "input": "\u200c",
1402 "output": null
1403 },
1404 {
1405 "comment": "C1",
1406 "input": "xn--0ug",
1407 "output": null
1408 },
1409 {
1410 "input": "\u0644\u0670\u200c\u06ed\u06ef",
1411 "output": "xn--ghb2gxqia7523a"
1412 },
1413 {
1414 "input": "xn--ghb2gxqia",
1415 "output": "xn--ghb2gxqia"
1416 },
1417 {
1418 "input": "\u0644\u0670\u06ed\u06ef",
1419 "output": "xn--ghb2gxqia"
1420 },
1421 {
1422 "input": "xn--ghb2gxqia7523a",
1423 "output": "xn--ghb2gxqia7523a"
1424 },
1425 {
1426 "input": "\u0644\u0670\u200c\u06ef",
1427 "output": "xn--ghb2g3qq34f"
1428 },
1429 {
1430 "input": "xn--ghb2g3q",
1431 "output": "xn--ghb2g3q"
1432 },
1433 {
1434 "input": "\u0644\u0670\u06ef",
1435 "output": "xn--ghb2g3q"
1436 },
1437 {
1438 "input": "xn--ghb2g3qq34f",
1439 "output": "xn--ghb2g3qq34f"
1440 },
1441 {
1442 "input": "\u0644\u200c\u06ed\u06ef",
1443 "output": "xn--ghb25aga828w"
1444 },
1445 {
1446 "input": "xn--ghb25aga",
1447 "output": "xn--ghb25aga"
1448 },
1449 {
1450 "input": "\u0644\u06ed\u06ef",
1451 "output": "xn--ghb25aga"
1452 },
1453 {
1454 "input": "xn--ghb25aga828w",
1455 "output": "xn--ghb25aga828w"
1456 },
1457 {
1458 "input": "\u0644\u200c\u06ef",
1459 "output": "xn--ghb65a953d"
1460 },
1461 {
1462 "input": "xn--ghb65a",
1463 "output": "xn--ghb65a"
1464 },
1465 {
1466 "input": "\u0644\u06ef",
1467 "output": "xn--ghb65a"
1468 },
1469 {
1470 "input": "xn--ghb65a953d",
1471 "output": "xn--ghb65a953d"
1472 },
1473 {
1474 "input": "xn--ghb2gxq",
1475 "output": "xn--ghb2gxq"
1476 },
1477 {
1478 "input": "\u0644\u0670\u06ed",
1479 "output": "xn--ghb2gxq"
1480 },
1481 {
1482 "comment": "C1",
1483 "input": "\u06ef\u200c\u06ef",
1484 "output": null
1485 },
1486 {
1487 "input": "xn--cmba",
1488 "output": "xn--cmba"
1489 },
1490 {
1491 "input": "\u06ef\u06ef",
1492 "output": "xn--cmba"
1493 },
1494 {
1495 "comment": "C1",
1496 "input": "xn--cmba004q",
1497 "output": null
1498 },
1499 {
1500 "input": "xn--ghb",
1501 "output": "xn--ghb"
1502 },
1503 {
1504 "input": "\u0644",
1505 "output": "xn--ghb"
1506 },
1507 {
1508 "comment": "A4_2 (ignored)",
1509 "input": "a\u3002\u3002b",
1510 "output": "a..b"
1511 },
1512 {
1513 "comment": "A4_2 (ignored)",
1514 "input": "A\u3002\u3002B",
1515 "output": "a..b"
1516 },
1517 {
1518 "comment": "A4_2 (ignored)",
1519 "input": "a..b",
1520 "output": "a..b"
1521 },
1522 {
1523 "comment": "A4_2 (ignored)",
1524 "input": "..xn--skb",
1525 "output": "..xn--skb"
1526 },
1527 {
1528 "comment": "U1 (ignored)",
1529 "input": "$",
1530 "output": "$"
1531 },
1532 {
1533 "comment": "U1 (ignored)",
1534 "input": "\u2477.four",
1535 "output": "(4).four"
1536 },
1537 {
1538 "comment": "U1 (ignored)",
1539 "input": "(4).four",
1540 "output": "(4).four"
1541 },
1542 {
1543 "comment": "U1 (ignored)",
1544 "input": "\u2477.FOUR",
1545 "output": "(4).four"
1546 },
1547 {
1548 "comment": "U1 (ignored)",
1549 "input": "\u2477.Four",
1550 "output": "(4).four"
1551 },
1552 {
1553 "comment": "V7; A3",
1554 "input": "a\ud900z",
1555 "output": null
1556 },
1557 {
1558 "comment": "V7; A3",
1559 "input": "A\ud900Z",
1560 "output": null
1561 },
1562 {
1563 "comment": "P4; A4_1 (ignored); A4_2 (ignored)",
1564 "input": "xn--",
1565 "output": null
1566 },
1567 {
1568 "comment": "P4",
1569 "input": "xn---",
1570 "output": null
1571 },
1572 {
1573 "comment": "P4",
1574 "input": "xn--ASCII-",
1575 "output": null
1576 },
1577 {
1578 "input": "ascii",
1579 "output": "ascii"
1580 },
1581 {
1582 "comment": "P4",
1583 "input": "xn--unicode-.org",
1584 "output": null
1585 },
1586 {
1587 "input": "unicode.org",
1588 "output": "unicode.org"
1589 },
1590 {
1591 "input": "\uf951\ud87e\udc68\ud87e\udc74\ud87e\udd1f\ud87e\udd5f\ud87e\uddbf",
1592 "output": "xn--snl253bgitxhzwu2arn60c"
1593 },
1594 {
1595 "input": "\u964b\u36fc\u5f53\ud850\udfab\u7aee\u45d7",
1596 "output": "xn--snl253bgitxhzwu2arn60c"
1597 },
1598 {
1599 "input": "xn--snl253bgitxhzwu2arn60c",
1600 "output": "xn--snl253bgitxhzwu2arn60c"
1601 },
1602 {
1603 "input": "\u96fb\ud844\udf6a\u5f33\u43ab\u7aae\u4d57",
1604 "output": "xn--kbo60w31ob3z6t3av9z5b"
1605 },
1606 {
1607 "input": "xn--kbo60w31ob3z6t3av9z5b",
1608 "output": "xn--kbo60w31ob3z6t3av9z5b"
1609 },
1610 {
1611 "input": "xn--A-1ga",
1612 "output": "xn--a-1ga"
1613 },
1614 {
1615 "input": "a\u00f6",
1616 "output": "xn--a-1ga"
1617 },
1618 {
1619 "input": "ao\u0308",
1620 "output": "xn--a-1ga"
1621 },
1622 {
1623 "input": "AO\u0308",
1624 "output": "xn--a-1ga"
1625 },
1626 {
1627 "input": "A\u00d6",
1628 "output": "xn--a-1ga"
1629 },
1630 {
1631 "input": "A\u00f6",
1632 "output": "xn--a-1ga"
1633 },
1634 {
1635 "input": "Ao\u0308",
1636 "output": "xn--a-1ga"
1637 },
1638 {
1639 "input": "\uff1d\u0338",
1640 "output": "xn--1ch"
1641 },
1642 {
1643 "input": "\u2260",
1644 "output": "xn--1ch"
1645 },
1646 {
1647 "input": "=\u0338",
1648 "output": "xn--1ch"
1649 },
1650 {
1651 "input": "xn--1ch",
1652 "output": "xn--1ch"
1653 },
1654 {
1655 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890A\u0308123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b",
1656 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"
1657 },
1658 {
1659 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890\u00c4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b",
1660 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"
1661 },
1662 {
1663 "comment": "A4_2 (ignored)",
1664 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890A\u0308123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.",
1665 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."
1666 },
1667 {
1668 "comment": "A4_2 (ignored)",
1669 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890\u00c4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.",
1670 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b."
1671 },
1672 {
1673 "comment": "A4_1 (ignored)",
1674 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890A\u0308123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c",
1675 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"
1676 },
1677 {
1678 "comment": "A4_1 (ignored)",
1679 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890\u00c4123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c",
1680 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c"
1681 },
1682 {
1683 "comment": "A4_2 (ignored)",
1684 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890A\u03081234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a",
1685 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"
1686 },
1687 {
1688 "comment": "A4_2 (ignored)",
1689 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890\u00c41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a",
1690 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a"
1691 },
1692 {
1693 "comment": "A4_2 (ignored)",
1694 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890A\u03081234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.",
1695 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."
1696 },
1697 {
1698 "comment": "A4_2 (ignored)",
1699 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890\u00c41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.",
1700 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a."
1701 },
1702 {
1703 "comment": "A4_1 (ignored); A4_2 (ignored)",
1704 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890A\u03081234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b",
1705 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"
1706 },
1707 {
1708 "comment": "A4_1 (ignored); A4_2 (ignored)",
1709 "input": "123456789012345678901234567890123456789012345678901234567890123.1234567890\u00c41234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b",
1710 "output": "123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b"
1711 },
1712 {
1713 "comment": "V7; V3 (ignored)",
1714 "input": "\u2495\u221d\u065f\uda0e\udd26\uff0e-\udb40\udd2f",
1715 "output": null
1716 },
1717 {
1718 "comment": "V7; V3 (ignored)",
1719 "input": "14.\u221d\u065f\uda0e\udd26.-\udb40\udd2f",
1720 "output": null
1721 },
1722 {
1723 "comment": "V7; V3 (ignored)",
1724 "input": "14.xn--7hb713l3v90n.-",
1725 "output": null
1726 },
1727 {
1728 "comment": "V7; V3 (ignored)",
1729 "input": "xn--7hb713lfwbi1311b.-",
1730 "output": null
1731 },
1732 {
1733 "input": "\ua863.\u07cf",
1734 "output": "xn--8c9a.xn--qsb"
1735 },
1736 {
1737 "input": "xn--8c9a.xn--qsb",
1738 "output": "xn--8c9a.xn--qsb"
1739 },
1740 {
1741 "comment": "C2",
1742 "input": "\u200d\u2260\u1899\u226f.\uc1a3-\u1874\u10a0",
1743 "output": null
1744 },
1745 {
1746 "comment": "C2",
1747 "input": "\u200d=\u0338\u1899>\u0338.\u1109\u1169\u11be-\u1874\u10a0",
1748 "output": null
1749 },
1750 {
1751 "comment": "C2",
1752 "input": "\u200d=\u0338\u1899>\u0338.\u1109\u1169\u11be-\u1874\u2d00",
1753 "output": null
1754 },
1755 {
1756 "comment": "C2",
1757 "input": "\u200d\u2260\u1899\u226f.\uc1a3-\u1874\u2d00",
1758 "output": null
1759 },
1760 {
1761 "input": "xn--jbf911clb.xn----p9j493ivi4l",
1762 "output": "xn--jbf911clb.xn----p9j493ivi4l"
1763 },
1764 {
1765 "input": "\u2260\u1899\u226f.\uc1a3-\u1874\u2d00",
1766 "output": "xn--jbf911clb.xn----p9j493ivi4l"
1767 },
1768 {
1769 "input": "=\u0338\u1899>\u0338.\u1109\u1169\u11be-\u1874\u2d00",
1770 "output": "xn--jbf911clb.xn----p9j493ivi4l"
1771 },
1772 {
1773 "input": "=\u0338\u1899>\u0338.\u1109\u1169\u11be-\u1874\u10a0",
1774 "output": "xn--jbf911clb.xn----p9j493ivi4l"
1775 },
1776 {
1777 "input": "\u2260\u1899\u226f.\uc1a3-\u1874\u10a0",
1778 "output": "xn--jbf911clb.xn----p9j493ivi4l"
1779 },
1780 {
1781 "comment": "C2",
1782 "input": "xn--jbf929a90b0b.xn----p9j493ivi4l",
1783 "output": null
1784 },
1785 {
1786 "comment": "V7",
1787 "input": "xn--jbf911clb.xn----6zg521d196p",
1788 "output": null
1789 },
1790 {
1791 "comment": "C2; V7",
1792 "input": "xn--jbf929a90b0b.xn----6zg521d196p",
1793 "output": null
1794 },
1795 {
1796 "comment": "V7",
1797 "input": "\ud97d\udf9c\uff0e\ud803\udfc7\u0fa2\u077d\u0600",
1798 "output": null
1799 },
1800 {
1801 "comment": "V7",
1802 "input": "\ud97d\udf9c\uff0e\ud803\udfc7\u0fa1\u0fb7\u077d\u0600",
1803 "output": null
1804 },
1805 {
1806 "comment": "V7",
1807 "input": "\ud97d\udf9c.\ud803\udfc7\u0fa1\u0fb7\u077d\u0600",
1808 "output": null
1809 },
1810 {
1811 "comment": "V7",
1812 "input": "xn--gw68a.xn--ifb57ev2psc6027m",
1813 "output": null
1814 },
1815 {
1816 "comment": "V6",
1817 "input": "\ud84f\udcd4\u0303.\ud805\udcc2",
1818 "output": null
1819 },
1820 {
1821 "comment": "V6",
1822 "input": "xn--nsa95820a.xn--wz1d",
1823 "output": null
1824 },
1825 {
1826 "comment": "C1; V7",
1827 "input": "\u200c\ud9d4\udfad.\u10b2\ud804\uddc0",
1828 "output": null
1829 },
1830 {
1831 "comment": "C1; V7",
1832 "input": "\u200c\ud9d4\udfad.\u2d12\ud804\uddc0",
1833 "output": null
1834 },
1835 {
1836 "comment": "V7",
1837 "input": "xn--bn95b.xn--9kj2034e",
1838 "output": null
1839 },
1840 {
1841 "comment": "C1; V7",
1842 "input": "xn--0ug15083f.xn--9kj2034e",
1843 "output": null
1844 },
1845 {
1846 "comment": "V7",
1847 "input": "xn--bn95b.xn--qnd6272k",
1848 "output": null
1849 },
1850 {
1851 "comment": "C1; V7",
1852 "input": "xn--0ug15083f.xn--qnd6272k",
1853 "output": null
1854 },
1855 {
1856 "comment": "V7",
1857 "input": "\u7e71\ud805\uddbf\u200d.\uff18\ufe12",
1858 "output": null
1859 },
1860 {
1861 "comment": "A4_2 (ignored)",
1862 "input": "xn--gl0as212a.i.",
1863 "output": "xn--gl0as212a.i."
1864 },
1865 {
1866 "comment": "A4_2 (ignored)",
1867 "input": "\u7e71\ud805\uddbf.i.",
1868 "output": "xn--gl0as212a.i."
1869 },
1870 {
1871 "comment": "A4_2 (ignored)",
1872 "input": "\u7e71\ud805\uddbf.I.",
1873 "output": "xn--gl0as212a.i."
1874 },
1875 {
1876 "comment": "A4_2 (ignored)",
1877 "input": "xn--1ug6928ac48e.i.",
1878 "output": "xn--1ug6928ac48e.i."
1879 },
1880 {
1881 "comment": "A4_2 (ignored)",
1882 "input": "\u7e71\ud805\uddbf\u200d.i.",
1883 "output": "xn--1ug6928ac48e.i."
1884 },
1885 {
1886 "comment": "A4_2 (ignored)",
1887 "input": "\u7e71\ud805\uddbf\u200d.I.",
1888 "output": "xn--1ug6928ac48e.i."
1889 },
1890 {
1891 "comment": "V7",
1892 "input": "xn--gl0as212a.xn--8-o89h",
1893 "output": null
1894 },
1895 {
1896 "comment": "V7",
1897 "input": "xn--1ug6928ac48e.xn--8-o89h",
1898 "output": null
1899 },
1900 {
1901 "comment": "V6; A4_2 (ignored)",
1902 "input": "\udb40\uddbe\uff0e\ud838\udc08",
1903 "output": null
1904 },
1905 {
1906 "comment": "V6; A4_2 (ignored)",
1907 "input": "\udb40\uddbe.\ud838\udc08",
1908 "output": null
1909 },
1910 {
1911 "comment": "V6; A4_2 (ignored)",
1912 "input": ".xn--ph4h",
1913 "output": null
1914 },
1915 {
1916 "comment": "C2",
1917 "input": "\u00df\u06eb\u3002\u200d",
1918 "output": null
1919 },
1920 {
1921 "comment": "C2",
1922 "input": "SS\u06eb\u3002\u200d",
1923 "output": null
1924 },
1925 {
1926 "comment": "C2",
1927 "input": "ss\u06eb\u3002\u200d",
1928 "output": null
1929 },
1930 {
1931 "comment": "C2",
1932 "input": "Ss\u06eb\u3002\u200d",
1933 "output": null
1934 },
1935 {
1936 "comment": "A4_2 (ignored)",
1937 "input": "xn--ss-59d.",
1938 "output": "xn--ss-59d."
1939 },
1940 {
1941 "comment": "A4_2 (ignored)",
1942 "input": "ss\u06eb.",
1943 "output": "xn--ss-59d."
1944 },
1945 {
1946 "comment": "A4_2 (ignored)",
1947 "input": "SS\u06eb.",
1948 "output": "xn--ss-59d."
1949 },
1950 {
1951 "comment": "A4_2 (ignored)",
1952 "input": "Ss\u06eb.",
1953 "output": "xn--ss-59d."
1954 },
1955 {
1956 "comment": "C2",
1957 "input": "xn--ss-59d.xn--1ug",
1958 "output": null
1959 },
1960 {
1961 "comment": "C2",
1962 "input": "xn--zca012a.xn--1ug",
1963 "output": null
1964 },
1965 {
1966 "comment": "C1; V7",
1967 "input": "\udb41\udc35\u200c\u2488\uff0e\udb40\udf87",
1968 "output": null
1969 },
1970 {
1971 "comment": "C1; V7; A4_2 (ignored)",
1972 "input": "\udb41\udc35\u200c1..\udb40\udf87",
1973 "output": null
1974 },
1975 {
1976 "comment": "V7; A4_2 (ignored)",
1977 "input": "xn--1-bs31m..xn--tv36e",
1978 "output": null
1979 },
1980 {
1981 "comment": "C1; V7; A4_2 (ignored)",
1982 "input": "xn--1-rgn37671n..xn--tv36e",
1983 "output": null
1984 },
1985 {
1986 "comment": "V7",
1987 "input": "xn--tshz2001k.xn--tv36e",
1988 "output": null
1989 },
1990 {
1991 "comment": "C1; V7",
1992 "input": "xn--0ug88o47900b.xn--tv36e",
1993 "output": null
1994 },
1995 {
1996 "comment": "V7",
1997 "input": "\udb3c\ude23\u065f\uaab2\u00df\u3002\udaf1\udce7",
1998 "output": null
1999 },
2000 {
2001 "comment": "V7",
2002 "input": "\udb3c\ude23\u065f\uaab2SS\u3002\udaf1\udce7",
2003 "output": null
2004 },
2005 {
2006 "comment": "V7",
2007 "input": "\udb3c\ude23\u065f\uaab2ss\u3002\udaf1\udce7",
2008 "output": null
2009 },
2010 {
2011 "comment": "V7",
2012 "input": "\udb3c\ude23\u065f\uaab2Ss\u3002\udaf1\udce7",
2013 "output": null
2014 },
2015 {
2016 "comment": "V7",
2017 "input": "xn--ss-3xd2839nncy1m.xn--bb79d",
2018 "output": null
2019 },
2020 {
2021 "comment": "V7",
2022 "input": "xn--zca92z0t7n5w96j.xn--bb79d",
2023 "output": null
2024 },
2025 {
2026 "comment": "C1; C2; V7",
2027 "input": "\u0774\u200c\ud83a\udd3f\u3002\ud8b5\ude10\u425c\u200d\ud9be\udd3c",
2028 "output": null
2029 },
2030 {
2031 "comment": "C1; C2; V7",
2032 "input": "\u0774\u200c\ud83a\udd1d\u3002\ud8b5\ude10\u425c\u200d\ud9be\udd3c",
2033 "output": null
2034 },
2035 {
2036 "comment": "V7",
2037 "input": "xn--4pb2977v.xn--z0nt555ukbnv",
2038 "output": null
2039 },
2040 {
2041 "comment": "C1; C2; V7",
2042 "input": "xn--4pb607jjt73a.xn--1ug236ke314donv1a",
2043 "output": null
2044 },
2045 {
2046 "comment": "V6; A4_2 (ignored)",
2047 "input": "\u3164\u094d\u10a0\u17d0.\u180b",
2048 "output": null
2049 },
2050 {
2051 "comment": "V6; A4_2 (ignored)",
2052 "input": "\u1160\u094d\u10a0\u17d0.\u180b",
2053 "output": null
2054 },
2055 {
2056 "comment": "V6; A4_2 (ignored)",
2057 "input": "\u1160\u094d\u2d00\u17d0.\u180b",
2058 "output": null
2059 },
2060 {
2061 "comment": "V6; A4_2 (ignored)",
2062 "input": "xn--n3b445e53p.",
2063 "output": null
2064 },
2065 {
2066 "comment": "V6; A4_2 (ignored)",
2067 "input": "\u3164\u094d\u2d00\u17d0.\u180b",
2068 "output": null
2069 },
2070 {
2071 "comment": "V7; A4_2 (ignored)",
2072 "input": "xn--n3b742bkqf4ty.",
2073 "output": null
2074 },
2075 {
2076 "comment": "V7; A4_2 (ignored)",
2077 "input": "xn--n3b468aoqa89r.",
2078 "output": null
2079 },
2080 {
2081 "comment": "V7; A4_2 (ignored)",
2082 "input": "xn--n3b445e53po6d.",
2083 "output": null
2084 },
2085 {
2086 "comment": "V7; A4_2 (ignored)",
2087 "input": "xn--n3b468azngju2a.",
2088 "output": null
2089 },
2090 {
2091 "comment": "C2; V6",
2092 "input": "\u2763\u200d\uff0e\u09cd\ud807\udc3d\u0612\ua929",
2093 "output": null
2094 },
2095 {
2096 "comment": "C2; V6",
2097 "input": "\u2763\u200d.\u09cd\ud807\udc3d\u0612\ua929",
2098 "output": null
2099 },
2100 {
2101 "comment": "V6",
2102 "input": "xn--pei.xn--0fb32q3w7q2g4d",
2103 "output": null
2104 },
2105 {
2106 "comment": "C2; V6",
2107 "input": "xn--1ugy10a.xn--0fb32q3w7q2g4d",
2108 "output": null
2109 },
2110 {
2111 "comment": "V6",
2112 "input": "\u0349\u3002\ud85e\udc6b",
2113 "output": null
2114 },
2115 {
2116 "comment": "V6",
2117 "input": "xn--nua.xn--bc6k",
2118 "output": null
2119 },
2120 {
2121 "comment": "V6; A4_2 (ignored)",
2122 "input": "\ud807\udc3f\udb40\udd66\uff0e\u1160",
2123 "output": null
2124 },
2125 {
2126 "comment": "V6; A4_2 (ignored)",
2127 "input": "\ud807\udc3f\udb40\udd66.\u1160",
2128 "output": null
2129 },
2130 {
2131 "comment": "V6; A4_2 (ignored)",
2132 "input": "xn--ok3d.",
2133 "output": null
2134 },
2135 {
2136 "comment": "V6; V7",
2137 "input": "xn--ok3d.xn--psd",
2138 "output": null
2139 },
2140 {
2141 "comment": "V6",
2142 "input": "\u850f\uff61\ud807\udc3a",
2143 "output": null
2144 },
2145 {
2146 "comment": "V6",
2147 "input": "\u850f\u3002\ud807\udc3a",
2148 "output": null
2149 },
2150 {
2151 "comment": "V6",
2152 "input": "xn--uy1a.xn--jk3d",
2153 "output": null
2154 },
2155 {
2156 "comment": "V7",
2157 "input": "xn--8g1d12120a.xn--5l6h",
2158 "output": null
2159 },
2160 {
2161 "comment": "V6; V7",
2162 "input": "\ud804\udee7\ua9c02\uff61\u39c9\uda09\udd84",
2163 "output": null
2164 },
2165 {
2166 "comment": "V6; V7",
2167 "input": "\ud804\udee7\ua9c02\u3002\u39c9\uda09\udd84",
2168 "output": null
2169 },
2170 {
2171 "comment": "V6; V7",
2172 "input": "xn--2-5z4eu89y.xn--97l02706d",
2173 "output": null
2174 },
2175 {
2176 "comment": "V7; A4_2 (ignored)",
2177 "input": "\u2938\u03c2\ud8ab\udc40\uff61\uffa0",
2178 "output": null
2179 },
2180 {
2181 "comment": "V7; A4_2 (ignored)",
2182 "input": "\u2938\u03c2\ud8ab\udc40\u3002\u1160",
2183 "output": null
2184 },
2185 {
2186 "comment": "V7; A4_2 (ignored)",
2187 "input": "\u2938\u03a3\ud8ab\udc40\u3002\u1160",
2188 "output": null
2189 },
2190 {
2191 "comment": "V7; A4_2 (ignored)",
2192 "input": "\u2938\u03c3\ud8ab\udc40\u3002\u1160",
2193 "output": null
2194 },
2195 {
2196 "comment": "V7; A4_2 (ignored)",
2197 "input": "xn--4xa192qmp03d.",
2198 "output": null
2199 },
2200 {
2201 "comment": "V7; A4_2 (ignored)",
2202 "input": "xn--3xa392qmp03d.",
2203 "output": null
2204 },
2205 {
2206 "comment": "V7; A4_2 (ignored)",
2207 "input": "\u2938\u03a3\ud8ab\udc40\uff61\uffa0",
2208 "output": null
2209 },
2210 {
2211 "comment": "V7; A4_2 (ignored)",
2212 "input": "\u2938\u03c3\ud8ab\udc40\uff61\uffa0",
2213 "output": null
2214 },
2215 {
2216 "comment": "V7",
2217 "input": "xn--4xa192qmp03d.xn--psd",
2218 "output": null
2219 },
2220 {
2221 "comment": "V7",
2222 "input": "xn--3xa392qmp03d.xn--psd",
2223 "output": null
2224 },
2225 {
2226 "comment": "V7",
2227 "input": "xn--4xa192qmp03d.xn--cl7c",
2228 "output": null
2229 },
2230 {
2231 "comment": "V7",
2232 "input": "xn--3xa392qmp03d.xn--cl7c",
2233 "output": null
2234 },
2235 {
2236 "comment": "C2; V6; V7",
2237 "input": "\u200d\udb7d\udc56\udb40\udc50\uff0e\u05bd\ud826\udfb0\ua85d\ud800\udee1",
2238 "output": null
2239 },
2240 {
2241 "comment": "C2; V6; V7",
2242 "input": "\u200d\udb7d\udc56\udb40\udc50.\u05bd\ud826\udfb0\ua85d\ud800\udee1",
2243 "output": null
2244 },
2245 {
2246 "comment": "V6; V7",
2247 "input": "xn--b726ey18m.xn--ldb8734fg0qcyzzg",
2248 "output": null
2249 },
2250 {
2251 "comment": "C2; V6; V7",
2252 "input": "xn--1ug66101lt8me.xn--ldb8734fg0qcyzzg",
2253 "output": null
2254 },
2255 {
2256 "comment": "V7; A4_2 (ignored)",
2257 "input": "\u3002\udbcc\ude35\u03c2\ud8c2\udc07\u3002\ud802\udf88",
2258 "output": null
2259 },
2260 {
2261 "comment": "V7; A4_2 (ignored)",
2262 "input": "\u3002\udbcc\ude35\u03a3\ud8c2\udc07\u3002\ud802\udf88",
2263 "output": null
2264 },
2265 {
2266 "comment": "V7; A4_2 (ignored)",
2267 "input": "\u3002\udbcc\ude35\u03c3\ud8c2\udc07\u3002\ud802\udf88",
2268 "output": null
2269 },
2270 {
2271 "comment": "V7; A4_2 (ignored)",
2272 "input": ".xn--4xa68573c7n64d.xn--f29c",
2273 "output": null
2274 },
2275 {
2276 "comment": "V7; A4_2 (ignored)",
2277 "input": ".xn--3xa88573c7n64d.xn--f29c",
2278 "output": null
2279 },
2280 {
2281 "comment": "V7",
2282 "input": "\u2489\udb40\ude93\u2260\uff61\u10bf\u2b23\u10a8",
2283 "output": null
2284 },
2285 {
2286 "comment": "V7",
2287 "input": "\u2489\udb40\ude93=\u0338\uff61\u10bf\u2b23\u10a8",
2288 "output": null
2289 },
2290 {
2291 "comment": "V7",
2292 "input": "2.\udb40\ude93\u2260\u3002\u10bf\u2b23\u10a8",
2293 "output": null
2294 },
2295 {
2296 "comment": "V7",
2297 "input": "2.\udb40\ude93=\u0338\u3002\u10bf\u2b23\u10a8",
2298 "output": null
2299 },
2300 {
2301 "comment": "V7",
2302 "input": "2.\udb40\ude93=\u0338\u3002\u2d1f\u2b23\u2d08",
2303 "output": null
2304 },
2305 {
2306 "comment": "V7",
2307 "input": "2.\udb40\ude93\u2260\u3002\u2d1f\u2b23\u2d08",
2308 "output": null
2309 },
2310 {
2311 "comment": "V7",
2312 "input": "2.xn--1chz4101l.xn--45iz7d6b",
2313 "output": null
2314 },
2315 {
2316 "comment": "V7",
2317 "input": "\u2489\udb40\ude93=\u0338\uff61\u2d1f\u2b23\u2d08",
2318 "output": null
2319 },
2320 {
2321 "comment": "V7",
2322 "input": "\u2489\udb40\ude93\u2260\uff61\u2d1f\u2b23\u2d08",
2323 "output": null
2324 },
2325 {
2326 "comment": "V7",
2327 "input": "xn--1ch07f91401d.xn--45iz7d6b",
2328 "output": null
2329 },
2330 {
2331 "comment": "V7",
2332 "input": "2.xn--1chz4101l.xn--gnd9b297j",
2333 "output": null
2334 },
2335 {
2336 "comment": "V7",
2337 "input": "xn--1ch07f91401d.xn--gnd9b297j",
2338 "output": null
2339 },
2340 {
2341 "input": "\ud83a\udd37.\ud802\udf90\ud83a\udc81\ud803\ude60\u0624",
2342 "output": "xn--ve6h.xn--jgb1694kz0b2176a"
2343 },
2344 {
2345 "input": "\ud83a\udd37.\ud802\udf90\ud83a\udc81\ud803\ude60\u0648\u0654",
2346 "output": "xn--ve6h.xn--jgb1694kz0b2176a"
2347 },
2348 {
2349 "input": "\ud83a\udd15.\ud802\udf90\ud83a\udc81\ud803\ude60\u0648\u0654",
2350 "output": "xn--ve6h.xn--jgb1694kz0b2176a"
2351 },
2352 {
2353 "input": "\ud83a\udd15.\ud802\udf90\ud83a\udc81\ud803\ude60\u0624",
2354 "output": "xn--ve6h.xn--jgb1694kz0b2176a"
2355 },
2356 {
2357 "input": "xn--ve6h.xn--jgb1694kz0b2176a",
2358 "output": "xn--ve6h.xn--jgb1694kz0b2176a"
2359 },
2360 {
2361 "comment": "V7; V3 (ignored); U1 (ignored)",
2362 "input": "-\udb40\ude56\ua867\uff0e\udb40\ude82\ud8dc\udd83\ud83c\udd09",
2363 "output": null
2364 },
2365 {
2366 "comment": "V7; V3 (ignored); U1 (ignored)",
2367 "input": "-\udb40\ude56\ua867.\udb40\ude82\ud8dc\udd838,",
2368 "output": null
2369 },
2370 {
2371 "comment": "V7; V3 (ignored); U1 (ignored)",
2372 "input": "xn----hg4ei0361g.xn--8,-k362evu488a",
2373 "output": null
2374 },
2375 {
2376 "comment": "V7; V3 (ignored)",
2377 "input": "xn----hg4ei0361g.xn--207ht163h7m94c",
2378 "output": null
2379 },
2380 {
2381 "comment": "C1; V6",
2382 "input": "\u200c\uff61\u0354",
2383 "output": null
2384 },
2385 {
2386 "comment": "C1; V6",
2387 "input": "\u200c\u3002\u0354",
2388 "output": null
2389 },
2390 {
2391 "comment": "V6; A4_2 (ignored)",
2392 "input": ".xn--yua",
2393 "output": null
2394 },
2395 {
2396 "comment": "C1; V6",
2397 "input": "xn--0ug.xn--yua",
2398 "output": null
2399 },
2400 {
2401 "input": "\ud83a\udd25\udb40\udd6e\uff0e\u1844\u10ae",
2402 "output": "xn--de6h.xn--37e857h"
2403 },
2404 {
2405 "input": "\ud83a\udd25\udb40\udd6e.\u1844\u10ae",
2406 "output": "xn--de6h.xn--37e857h"
2407 },
2408 {
2409 "input": "\ud83a\udd25\udb40\udd6e.\u1844\u2d0e",
2410 "output": "xn--de6h.xn--37e857h"
2411 },
2412 {
2413 "input": "\ud83a\udd03\udb40\udd6e.\u1844\u10ae",
2414 "output": "xn--de6h.xn--37e857h"
2415 },
2416 {
2417 "input": "\ud83a\udd03\udb40\udd6e.\u1844\u2d0e",
2418 "output": "xn--de6h.xn--37e857h"
2419 },
2420 {
2421 "input": "xn--de6h.xn--37e857h",
2422 "output": "xn--de6h.xn--37e857h"
2423 },
2424 {
2425 "input": "\ud83a\udd25.\u1844\u2d0e",
2426 "output": "xn--de6h.xn--37e857h"
2427 },
2428 {
2429 "input": "\ud83a\udd03.\u1844\u10ae",
2430 "output": "xn--de6h.xn--37e857h"
2431 },
2432 {
2433 "input": "\ud83a\udd03.\u1844\u2d0e",
2434 "output": "xn--de6h.xn--37e857h"
2435 },
2436 {
2437 "input": "\ud83a\udd25\udb40\udd6e\uff0e\u1844\u2d0e",
2438 "output": "xn--de6h.xn--37e857h"
2439 },
2440 {
2441 "input": "\ud83a\udd03\udb40\udd6e\uff0e\u1844\u10ae",
2442 "output": "xn--de6h.xn--37e857h"
2443 },
2444 {
2445 "input": "\ud83a\udd03\udb40\udd6e\uff0e\u1844\u2d0e",
2446 "output": "xn--de6h.xn--37e857h"
2447 },
2448 {
2449 "comment": "V7",
2450 "input": "xn--de6h.xn--mnd799a",
2451 "output": null
2452 },
2453 {
2454 "input": "\ud83a\udd25.\u1844\u10ae",
2455 "output": "xn--de6h.xn--37e857h"
2456 },
2457 {
2458 "comment": "V6; V7",
2459 "input": "\u0fa4\ud986\udd2f\uff0e\ud835\udfed\u10bb",
2460 "output": null
2461 },
2462 {
2463 "comment": "V6; V7",
2464 "input": "\u0fa4\ud986\udd2f.1\u10bb",
2465 "output": null
2466 },
2467 {
2468 "comment": "V6; V7",
2469 "input": "\u0fa4\ud986\udd2f.1\u2d1b",
2470 "output": null
2471 },
2472 {
2473 "comment": "V6; V7",
2474 "input": "xn--0fd40533g.xn--1-tws",
2475 "output": null
2476 },
2477 {
2478 "comment": "V6; V7",
2479 "input": "\u0fa4\ud986\udd2f\uff0e\ud835\udfed\u2d1b",
2480 "output": null
2481 },
2482 {
2483 "comment": "V6; V7",
2484 "input": "xn--0fd40533g.xn--1-q1g",
2485 "output": null
2486 },
2487 {
2488 "comment": "V7",
2489 "input": "\u03c2\ud9d5\udf0c\uff18.\ud83a\udf64",
2490 "output": null
2491 },
2492 {
2493 "comment": "V7",
2494 "input": "\u03c2\ud9d5\udf0c8.\ud83a\udf64",
2495 "output": null
2496 },
2497 {
2498 "comment": "V7",
2499 "input": "\u03a3\ud9d5\udf0c8.\ud83a\udf64",
2500 "output": null
2501 },
2502 {
2503 "comment": "V7",
2504 "input": "\u03c3\ud9d5\udf0c8.\ud83a\udf64",
2505 "output": null
2506 },
2507 {
2508 "comment": "V7",
2509 "input": "xn--8-zmb14974n.xn--su6h",
2510 "output": null
2511 },
2512 {
2513 "comment": "V7",
2514 "input": "xn--8-xmb44974n.xn--su6h",
2515 "output": null
2516 },
2517 {
2518 "comment": "V7",
2519 "input": "\u03a3\ud9d5\udf0c\uff18.\ud83a\udf64",
2520 "output": null
2521 },
2522 {
2523 "comment": "V7",
2524 "input": "\u03c3\ud9d5\udf0c\uff18.\ud83a\udf64",
2525 "output": null
2526 },
2527 {
2528 "comment": "C1; V3 (ignored)",
2529 "input": "\u200c\uae03.\u69b6-",
2530 "output": null
2531 },
2532 {
2533 "comment": "C1; V3 (ignored)",
2534 "input": "\u200c\u1100\u1173\u11b2.\u69b6-",
2535 "output": null
2536 },
2537 {
2538 "comment": "V3 (ignored)",
2539 "input": "xn--ej0b.xn----d87b",
2540 "output": "xn--ej0b.xn----d87b"
2541 },
2542 {
2543 "comment": "C1; V3 (ignored)",
2544 "input": "xn--0ug3307c.xn----d87b",
2545 "output": null
2546 },
2547 {
2548 "comment": "V6",
2549 "input": "\ub253\u6cd3\ud833\udd7d.\u09cd\u200d",
2550 "output": null
2551 },
2552 {
2553 "comment": "V6",
2554 "input": "\u1102\u1170\u11be\u6cd3\ud833\udd7d.\u09cd\u200d",
2555 "output": null
2556 },
2557 {
2558 "comment": "V6",
2559 "input": "xn--lwwp69lqs7m.xn--b7b",
2560 "output": null
2561 },
2562 {
2563 "comment": "V6",
2564 "input": "xn--lwwp69lqs7m.xn--b7b605i",
2565 "output": null
2566 },
2567 {
2568 "comment": "V6",
2569 "input": "\u1b44\uff0e\u1baa-\u226e\u2260",
2570 "output": null
2571 },
2572 {
2573 "comment": "V6",
2574 "input": "\u1b44\uff0e\u1baa-<\u0338=\u0338",
2575 "output": null
2576 },
2577 {
2578 "comment": "V6",
2579 "input": "\u1b44.\u1baa-\u226e\u2260",
2580 "output": null
2581 },
2582 {
2583 "comment": "V6",
2584 "input": "\u1b44.\u1baa-<\u0338=\u0338",
2585 "output": null
2586 },
2587 {
2588 "comment": "V6",
2589 "input": "xn--1uf.xn----nmlz65aub",
2590 "output": null
2591 },
2592 {
2593 "comment": "V6",
2594 "input": "\u1bf3\u10b1\u115f\uff0e\ud804\udd34\u2132",
2595 "output": null
2596 },
2597 {
2598 "comment": "V6",
2599 "input": "\u1bf3\u10b1\u115f.\ud804\udd34\u2132",
2600 "output": null
2601 },
2602 {
2603 "comment": "V6",
2604 "input": "\u1bf3\u2d11\u115f.\ud804\udd34\u214e",
2605 "output": null
2606 },
2607 {
2608 "comment": "V6",
2609 "input": "\u1bf3\u10b1\u115f.\ud804\udd34\u214e",
2610 "output": null
2611 },
2612 {
2613 "comment": "V6",
2614 "input": "xn--1zf224e.xn--73g3065g",
2615 "output": null
2616 },
2617 {
2618 "comment": "V6",
2619 "input": "\u1bf3\u2d11\u115f\uff0e\ud804\udd34\u214e",
2620 "output": null
2621 },
2622 {
2623 "comment": "V6",
2624 "input": "\u1bf3\u10b1\u115f\uff0e\ud804\udd34\u214e",
2625 "output": null
2626 },
2627 {
2628 "comment": "V6; V7",
2629 "input": "xn--pnd26a55x.xn--73g3065g",
2630 "output": null
2631 },
2632 {
2633 "comment": "V6; V7",
2634 "input": "xn--osd925cvyn.xn--73g3065g",
2635 "output": null
2636 },
2637 {
2638 "comment": "V6; V7",
2639 "input": "xn--pnd26a55x.xn--f3g7465g",
2640 "output": null
2641 },
2642 {
2643 "comment": "V7",
2644 "input": "\u10a9\u7315\udba5\udeeb\u226e\uff0e\ufe12",
2645 "output": null
2646 },
2647 {
2648 "comment": "V7",
2649 "input": "\u10a9\u7315\udba5\udeeb<\u0338\uff0e\ufe12",
2650 "output": null
2651 },
2652 {
2653 "comment": "V7; A4_2 (ignored)",
2654 "input": "\u10a9\u7315\udba5\udeeb\u226e.\u3002",
2655 "output": null
2656 },
2657 {
2658 "comment": "V7; A4_2 (ignored)",
2659 "input": "\u10a9\u7315\udba5\udeeb<\u0338.\u3002",
2660 "output": null
2661 },
2662 {
2663 "comment": "V7; A4_2 (ignored)",
2664 "input": "\u2d09\u7315\udba5\udeeb<\u0338.\u3002",
2665 "output": null
2666 },
2667 {
2668 "comment": "V7; A4_2 (ignored)",
2669 "input": "\u2d09\u7315\udba5\udeeb\u226e.\u3002",
2670 "output": null
2671 },
2672 {
2673 "comment": "V7; A4_2 (ignored)",
2674 "input": "xn--gdh892bbz0d5438s..",
2675 "output": null
2676 },
2677 {
2678 "comment": "V7",
2679 "input": "\u2d09\u7315\udba5\udeeb<\u0338\uff0e\ufe12",
2680 "output": null
2681 },
2682 {
2683 "comment": "V7",
2684 "input": "\u2d09\u7315\udba5\udeeb\u226e\uff0e\ufe12",
2685 "output": null
2686 },
2687 {
2688 "comment": "V7",
2689 "input": "xn--gdh892bbz0d5438s.xn--y86c",
2690 "output": null
2691 },
2692 {
2693 "comment": "V7; A4_2 (ignored)",
2694 "input": "xn--hnd212gz32d54x5r..",
2695 "output": null
2696 },
2697 {
2698 "comment": "V7",
2699 "input": "xn--hnd212gz32d54x5r.xn--y86c",
2700 "output": null
2701 },
2702 {
2703 "comment": "C1; V3 (ignored)",
2704 "input": "\u00c5\ub444-\uff0e\u200c",
2705 "output": null
2706 },
2707 {
2708 "comment": "C1; V3 (ignored)",
2709 "input": "A\u030a\u1103\u116d\u11b7-\uff0e\u200c",
2710 "output": null
2711 },
2712 {
2713 "comment": "C1; V3 (ignored)",
2714 "input": "\u00c5\ub444-.\u200c",
2715 "output": null
2716 },
2717 {
2718 "comment": "C1; V3 (ignored)",
2719 "input": "A\u030a\u1103\u116d\u11b7-.\u200c",
2720 "output": null
2721 },
2722 {
2723 "comment": "C1; V3 (ignored)",
2724 "input": "a\u030a\u1103\u116d\u11b7-.\u200c",
2725 "output": null
2726 },
2727 {
2728 "comment": "C1; V3 (ignored)",
2729 "input": "\u00e5\ub444-.\u200c",
2730 "output": null
2731 },
2732 {
2733 "comment": "V3 (ignored); A4_2 (ignored)",
2734 "input": "xn----1fa1788k.",
2735 "output": "xn----1fa1788k."
2736 },
2737 {
2738 "comment": "C1; V3 (ignored)",
2739 "input": "xn----1fa1788k.xn--0ug",
2740 "output": null
2741 },
2742 {
2743 "comment": "C1; V3 (ignored)",
2744 "input": "a\u030a\u1103\u116d\u11b7-\uff0e\u200c",
2745 "output": null
2746 },
2747 {
2748 "comment": "C1; V3 (ignored)",
2749 "input": "\u00e5\ub444-\uff0e\u200c",
2750 "output": null
2751 },
2752 {
2753 "comment": "C1; C2; V6; V7",
2754 "input": "\ub8f1\u200d\ud880\udf68\u200c\u3002\ud836\ude16\ufe12",
2755 "output": null
2756 },
2757 {
2758 "comment": "C1; C2; V6; V7",
2759 "input": "\u1105\u116e\u11b0\u200d\ud880\udf68\u200c\u3002\ud836\ude16\ufe12",
2760 "output": null
2761 },
2762 {
2763 "comment": "C1; C2; V6; A4_2 (ignored)",
2764 "input": "\ub8f1\u200d\ud880\udf68\u200c\u3002\ud836\ude16\u3002",
2765 "output": null
2766 },
2767 {
2768 "comment": "C1; C2; V6; A4_2 (ignored)",
2769 "input": "\u1105\u116e\u11b0\u200d\ud880\udf68\u200c\u3002\ud836\ude16\u3002",
2770 "output": null
2771 },
2772 {
2773 "comment": "V6; A4_2 (ignored)",
2774 "input": "xn--ct2b0738h.xn--772h.",
2775 "output": null
2776 },
2777 {
2778 "comment": "C1; C2; V6; A4_2 (ignored)",
2779 "input": "xn--0ugb3358ili2v.xn--772h.",
2780 "output": null
2781 },
2782 {
2783 "comment": "V6; V7",
2784 "input": "xn--ct2b0738h.xn--y86cl899a",
2785 "output": null
2786 },
2787 {
2788 "comment": "C1; C2; V6; V7",
2789 "input": "xn--0ugb3358ili2v.xn--y86cl899a",
2790 "output": null
2791 },
2792 {
2793 "comment": "V6; V7; U1 (ignored)",
2794 "input": "\ud83c\udd04\uff0e\u1cdc\u2488\u00df",
2795 "output": null
2796 },
2797 {
2798 "comment": "V6; U1 (ignored)",
2799 "input": "3,.\u1cdc1.\u00df",
2800 "output": null
2801 },
2802 {
2803 "comment": "V6; U1 (ignored)",
2804 "input": "3,.\u1cdc1.SS",
2805 "output": null
2806 },
2807 {
2808 "comment": "V6; U1 (ignored)",
2809 "input": "3,.\u1cdc1.ss",
2810 "output": null
2811 },
2812 {
2813 "comment": "V6; U1 (ignored)",
2814 "input": "3,.\u1cdc1.Ss",
2815 "output": null
2816 },
2817 {
2818 "comment": "V6; U1 (ignored)",
2819 "input": "3,.xn--1-43l.ss",
2820 "output": null
2821 },
2822 {
2823 "comment": "V6; U1 (ignored)",
2824 "input": "3,.xn--1-43l.xn--zca",
2825 "output": null
2826 },
2827 {
2828 "comment": "V6; V7; U1 (ignored)",
2829 "input": "\ud83c\udd04\uff0e\u1cdc\u2488SS",
2830 "output": null
2831 },
2832 {
2833 "comment": "V6; V7; U1 (ignored)",
2834 "input": "\ud83c\udd04\uff0e\u1cdc\u2488ss",
2835 "output": null
2836 },
2837 {
2838 "comment": "V6; V7; U1 (ignored)",
2839 "input": "\ud83c\udd04\uff0e\u1cdc\u2488Ss",
2840 "output": null
2841 },
2842 {
2843 "comment": "V6; V7; U1 (ignored)",
2844 "input": "3,.xn--ss-k1r094b",
2845 "output": null
2846 },
2847 {
2848 "comment": "V6; V7; U1 (ignored)",
2849 "input": "3,.xn--zca344lmif",
2850 "output": null
2851 },
2852 {
2853 "comment": "V6; V7",
2854 "input": "xn--x07h.xn--ss-k1r094b",
2855 "output": null
2856 },
2857 {
2858 "comment": "V6; V7",
2859 "input": "xn--x07h.xn--zca344lmif",
2860 "output": null
2861 },
2862 {
2863 "comment": "C2; V6",
2864 "input": "\u1dfd\u103a\u094d\uff0e\u2260\u200d\u31db",
2865 "output": null
2866 },
2867 {
2868 "comment": "C2; V6",
2869 "input": "\u103a\u094d\u1dfd\uff0e\u2260\u200d\u31db",
2870 "output": null
2871 },
2872 {
2873 "comment": "C2; V6",
2874 "input": "\u103a\u094d\u1dfd\uff0e=\u0338\u200d\u31db",
2875 "output": null
2876 },
2877 {
2878 "comment": "C2; V6",
2879 "input": "\u103a\u094d\u1dfd.\u2260\u200d\u31db",
2880 "output": null
2881 },
2882 {
2883 "comment": "C2; V6",
2884 "input": "\u103a\u094d\u1dfd.=\u0338\u200d\u31db",
2885 "output": null
2886 },
2887 {
2888 "comment": "V6",
2889 "input": "xn--n3b956a9zm.xn--1ch912d",
2890 "output": null
2891 },
2892 {
2893 "comment": "C2; V6",
2894 "input": "xn--n3b956a9zm.xn--1ug63gz5w",
2895 "output": null
2896 },
2897 {
2898 "comment": "V6; V7; V3 (ignored)",
2899 "input": "\u1bf3.-\u900b\ud98e\uddad\udb25\ude6e",
2900 "output": null
2901 },
2902 {
2903 "comment": "V6; V7; V3 (ignored)",
2904 "input": "xn--1zf.xn----483d46987byr50b",
2905 "output": null
2906 },
2907 {
2908 "input": "xn--9ob.xn--4xa",
2909 "output": "xn--9ob.xn--4xa"
2910 },
2911 {
2912 "input": "\u0756.\u03c3",
2913 "output": "xn--9ob.xn--4xa"
2914 },
2915 {
2916 "input": "\u0756.\u03a3",
2917 "output": "xn--9ob.xn--4xa"
2918 },
2919 {
2920 "comment": "V7",
2921 "input": "xn--9ob.xn--4xa380e",
2922 "output": null
2923 },
2924 {
2925 "comment": "C2; V7",
2926 "input": "xn--9ob.xn--4xa380ebol",
2927 "output": null
2928 },
2929 {
2930 "comment": "C2; V7",
2931 "input": "xn--9ob.xn--3xa580ebol",
2932 "output": null
2933 },
2934 {
2935 "comment": "V7",
2936 "input": "xn--9ob.xn--4xa574u",
2937 "output": null
2938 },
2939 {
2940 "comment": "C2; V7",
2941 "input": "xn--9ob.xn--4xa795lq2l",
2942 "output": null
2943 },
2944 {
2945 "comment": "C2; V7",
2946 "input": "xn--9ob.xn--3xa995lq2l",
2947 "output": null
2948 },
2949 {
2950 "comment": "C2; V7",
2951 "input": "\u1846\u10a3\uff61\udb3a\udca7\u0315\u200d\u200d",
2952 "output": null
2953 },
2954 {
2955 "comment": "C2; V7",
2956 "input": "\u1846\u10a3\u3002\udb3a\udca7\u0315\u200d\u200d",
2957 "output": null
2958 },
2959 {
2960 "comment": "C2; V7",
2961 "input": "\u1846\u2d03\u3002\udb3a\udca7\u0315\u200d\u200d",
2962 "output": null
2963 },
2964 {
2965 "comment": "V7",
2966 "input": "xn--57e237h.xn--5sa98523p",
2967 "output": null
2968 },
2969 {
2970 "comment": "C2; V7",
2971 "input": "xn--57e237h.xn--5sa649la993427a",
2972 "output": null
2973 },
2974 {
2975 "comment": "C2; V7",
2976 "input": "\u1846\u2d03\uff61\udb3a\udca7\u0315\u200d\u200d",
2977 "output": null
2978 },
2979 {
2980 "comment": "V7",
2981 "input": "xn--bnd320b.xn--5sa98523p",
2982 "output": null
2983 },
2984 {
2985 "comment": "C2; V7",
2986 "input": "xn--bnd320b.xn--5sa649la993427a",
2987 "output": null
2988 },
2989 {
2990 "comment": "V6; V7",
2991 "input": "\ud838\udc28\uff61\u1b44\uda45\udee8\ud838\udf87",
2992 "output": null
2993 },
2994 {
2995 "comment": "V6; V7",
2996 "input": "\ud838\udc28\u3002\u1b44\uda45\udee8\ud838\udf87",
2997 "output": null
2998 },
2999 {
3000 "comment": "V6; V7",
3001 "input": "xn--mi4h.xn--1uf6843smg20c",
3002 "output": null
3003 },
3004 {
3005 "comment": "V7",
3006 "input": "\u189b\udb60\udd5f\u00df.\u1327",
3007 "output": null
3008 },
3009 {
3010 "comment": "V7",
3011 "input": "\u189b\udb60\udd5fSS.\u1327",
3012 "output": null
3013 },
3014 {
3015 "comment": "V7",
3016 "input": "\u189b\udb60\udd5fss.\u1327",
3017 "output": null
3018 },
3019 {
3020 "comment": "V7",
3021 "input": "\u189b\udb60\udd5fSs.\u1327",
3022 "output": null
3023 },
3024 {
3025 "comment": "V7",
3026 "input": "xn--ss-7dp66033t.xn--p5d",
3027 "output": null
3028 },
3029 {
3030 "comment": "V7",
3031 "input": "xn--zca562jc642x.xn--p5d",
3032 "output": null
3033 },
3034 {
3035 "comment": "C1; V7",
3036 "input": "\u2b92\u200c.\ud909\ude97\u200c",
3037 "output": null
3038 },
3039 {
3040 "comment": "V7",
3041 "input": "xn--b9i.xn--5p9y",
3042 "output": null
3043 },
3044 {
3045 "comment": "C1; V7",
3046 "input": "xn--0ugx66b.xn--0ugz2871c",
3047 "output": null
3048 },
3049 {
3050 "comment": "V6; V7",
3051 "input": "\u226f\ud805\udf2b\udb42\udf47.\u1734\ud909\udfa4\ud804\udf6c\u18a7",
3052 "output": null
3053 },
3054 {
3055 "comment": "V6; V7",
3056 "input": ">\u0338\ud805\udf2b\udb42\udf47.\u1734\ud909\udfa4\ud804\udf6c\u18a7",
3057 "output": null
3058 },
3059 {
3060 "comment": "V6; V7",
3061 "input": "xn--hdhx157g68o0g.xn--c0e65eu616c34o7a",
3062 "output": null
3063 },
3064 {
3065 "input": "\u00df\uff61\ud800\udef3\u10ac\u0fb8",
3066 "output": "xn--zca.xn--lgd921mvv0m"
3067 },
3068 {
3069 "input": "\u00df\u3002\ud800\udef3\u10ac\u0fb8",
3070 "output": "xn--zca.xn--lgd921mvv0m"
3071 },
3072 {
3073 "input": "\u00df\u3002\ud800\udef3\u2d0c\u0fb8",
3074 "output": "xn--zca.xn--lgd921mvv0m"
3075 },
3076 {
3077 "input": "SS\u3002\ud800\udef3\u10ac\u0fb8",
3078 "output": "ss.xn--lgd921mvv0m"
3079 },
3080 {
3081 "input": "ss\u3002\ud800\udef3\u2d0c\u0fb8",
3082 "output": "ss.xn--lgd921mvv0m"
3083 },
3084 {
3085 "input": "Ss\u3002\ud800\udef3\u10ac\u0fb8",
3086 "output": "ss.xn--lgd921mvv0m"
3087 },
3088 {
3089 "input": "ss.xn--lgd921mvv0m",
3090 "output": "ss.xn--lgd921mvv0m"
3091 },
3092 {
3093 "input": "ss.\ud800\udef3\u2d0c\u0fb8",
3094 "output": "ss.xn--lgd921mvv0m"
3095 },
3096 {
3097 "input": "SS.\ud800\udef3\u10ac\u0fb8",
3098 "output": "ss.xn--lgd921mvv0m"
3099 },
3100 {
3101 "input": "Ss.\ud800\udef3\u10ac\u0fb8",
3102 "output": "ss.xn--lgd921mvv0m"
3103 },
3104 {
3105 "input": "xn--zca.xn--lgd921mvv0m",
3106 "output": "xn--zca.xn--lgd921mvv0m"
3107 },
3108 {
3109 "input": "\u00df.\ud800\udef3\u2d0c\u0fb8",
3110 "output": "xn--zca.xn--lgd921mvv0m"
3111 },
3112 {
3113 "input": "\u00df\uff61\ud800\udef3\u2d0c\u0fb8",
3114 "output": "xn--zca.xn--lgd921mvv0m"
3115 },
3116 {
3117 "input": "SS\uff61\ud800\udef3\u10ac\u0fb8",
3118 "output": "ss.xn--lgd921mvv0m"
3119 },
3120 {
3121 "input": "ss\uff61\ud800\udef3\u2d0c\u0fb8",
3122 "output": "ss.xn--lgd921mvv0m"
3123 },
3124 {
3125 "input": "Ss\uff61\ud800\udef3\u10ac\u0fb8",
3126 "output": "ss.xn--lgd921mvv0m"
3127 },
3128 {
3129 "comment": "V7",
3130 "input": "ss.xn--lgd10cu829c",
3131 "output": null
3132 },
3133 {
3134 "comment": "V7",
3135 "input": "xn--zca.xn--lgd10cu829c",
3136 "output": null
3137 },
3138 {
3139 "comment": "V6; V7",
3140 "input": "\u1a5a\ud82e\udd9d\u0c4d\u3002\ud829\udf6c\ud835\udff5",
3141 "output": null
3142 },
3143 {
3144 "comment": "V6; V7",
3145 "input": "\u1a5a\ud82e\udd9d\u0c4d\u3002\ud829\udf6c9",
3146 "output": null
3147 },
3148 {
3149 "comment": "V6; V7",
3150 "input": "xn--lqc703ebm93a.xn--9-000p",
3151 "output": null
3152 },
3153 {
3154 "comment": "V6; V7; V3 (ignored)",
3155 "input": "\u1856\uff61\u031f\ud91d\udee8\u0b82-",
3156 "output": null
3157 },
3158 {
3159 "comment": "V6; V7; V3 (ignored)",
3160 "input": "\u1856\u3002\u031f\ud91d\udee8\u0b82-",
3161 "output": null
3162 },
3163 {
3164 "comment": "V6; V7; V3 (ignored)",
3165 "input": "xn--m8e.xn----mdb555dkk71m",
3166 "output": null
3167 },
3168 {
3169 "comment": "V6; V7",
3170 "input": "\u0596\u10ab\uff0e\ud835\udff3\u226f\ufe12\ufe0a",
3171 "output": null
3172 },
3173 {
3174 "comment": "V6; V7",
3175 "input": "\u0596\u10ab\uff0e\ud835\udff3>\u0338\ufe12\ufe0a",
3176 "output": null
3177 },
3178 {
3179 "comment": "V6; A4_2 (ignored)",
3180 "input": "\u0596\u10ab.7\u226f\u3002\ufe0a",
3181 "output": null
3182 },
3183 {
3184 "comment": "V6; A4_2 (ignored)",
3185 "input": "\u0596\u10ab.7>\u0338\u3002\ufe0a",
3186 "output": null
3187 },
3188 {
3189 "comment": "V6; A4_2 (ignored)",
3190 "input": "\u0596\u2d0b.7>\u0338\u3002\ufe0a",
3191 "output": null
3192 },
3193 {
3194 "comment": "V6; A4_2 (ignored)",
3195 "input": "\u0596\u2d0b.7\u226f\u3002\ufe0a",
3196 "output": null
3197 },
3198 {
3199 "comment": "V6; A4_2 (ignored)",
3200 "input": "xn--hcb613r.xn--7-pgo.",
3201 "output": null
3202 },
3203 {
3204 "comment": "V6; V7",
3205 "input": "\u0596\u2d0b\uff0e\ud835\udff3>\u0338\ufe12\ufe0a",
3206 "output": null
3207 },
3208 {
3209 "comment": "V6; V7",
3210 "input": "\u0596\u2d0b\uff0e\ud835\udff3\u226f\ufe12\ufe0a",
3211 "output": null
3212 },
3213 {
3214 "comment": "V6; V7",
3215 "input": "xn--hcb613r.xn--7-pgoy530h",
3216 "output": null
3217 },
3218 {
3219 "comment": "V6; V7; A4_2 (ignored)",
3220 "input": "xn--hcb887c.xn--7-pgo.",
3221 "output": null
3222 },
3223 {
3224 "comment": "V6; V7",
3225 "input": "xn--hcb887c.xn--7-pgoy530h",
3226 "output": null
3227 },
3228 {
3229 "comment": "V7; U1 (ignored)",
3230 "input": "\ud83c\udd07\u4f10\ufe12.\ud831\ude5a\ua8c4",
3231 "output": null
3232 },
3233 {
3234 "comment": "V7; U1 (ignored); A4_2 (ignored)",
3235 "input": "6,\u4f10\u3002.\ud831\ude5a\ua8c4",
3236 "output": null
3237 },
3238 {
3239 "comment": "V7; U1 (ignored); A4_2 (ignored)",
3240 "input": "xn--6,-7i3c..xn--0f9ao925c",
3241 "output": null
3242 },
3243 {
3244 "comment": "V7; U1 (ignored)",
3245 "input": "xn--6,-7i3cj157d.xn--0f9ao925c",
3246 "output": null
3247 },
3248 {
3249 "comment": "V7",
3250 "input": "xn--woqs083bel0g.xn--0f9ao925c",
3251 "output": null
3252 },
3253 {
3254 "comment": "V7; A4_2 (ignored)",
3255 "input": "\udb40\udda0\uff0e\ud99d\udc34\udaf1\udfc8",
3256 "output": null
3257 },
3258 {
3259 "comment": "V7; A4_2 (ignored)",
3260 "input": "\udb40\udda0.\ud99d\udc34\udaf1\udfc8",
3261 "output": null
3262 },
3263 {
3264 "comment": "V7; A4_2 (ignored)",
3265 "input": ".xn--rx21bhv12i",
3266 "output": null
3267 },
3268 {
3269 "comment": "V6; V7; V3 (ignored)",
3270 "input": "-.\u1886\udb47\udca3-",
3271 "output": null
3272 },
3273 {
3274 "comment": "V6; V7; V3 (ignored)",
3275 "input": "-.xn----pbkx6497q",
3276 "output": null
3277 },
3278 {
3279 "comment": "V7; V3 (ignored)",
3280 "input": "\udafd\udcb0\uff0e-\ud835\udffb\u00df",
3281 "output": null
3282 },
3283 {
3284 "comment": "V7; V3 (ignored)",
3285 "input": "\udafd\udcb0.-5\u00df",
3286 "output": null
3287 },
3288 {
3289 "comment": "V7; V3 (ignored)",
3290 "input": "\udafd\udcb0.-5SS",
3291 "output": null
3292 },
3293 {
3294 "comment": "V7; V3 (ignored)",
3295 "input": "\udafd\udcb0.-5ss",
3296 "output": null
3297 },
3298 {
3299 "comment": "V7; V3 (ignored)",
3300 "input": "xn--t960e.-5ss",
3301 "output": null
3302 },
3303 {
3304 "comment": "V7; V3 (ignored)",
3305 "input": "xn--t960e.xn---5-hia",
3306 "output": null
3307 },
3308 {
3309 "comment": "V7; V3 (ignored)",
3310 "input": "\udafd\udcb0\uff0e-\ud835\udffbSS",
3311 "output": null
3312 },
3313 {
3314 "comment": "V7; V3 (ignored)",
3315 "input": "\udafd\udcb0\uff0e-\ud835\udffbss",
3316 "output": null
3317 },
3318 {
3319 "comment": "V7; V3 (ignored)",
3320 "input": "\udafd\udcb0\uff0e-\ud835\udffbSs",
3321 "output": null
3322 },
3323 {
3324 "comment": "V7; V3 (ignored)",
3325 "input": "\udafd\udcb0.-5Ss",
3326 "output": null
3327 },
3328 {
3329 "comment": "C2; V7",
3330 "input": "\u200d\ud802\ude3f.\ud83e\udd12\u10c5\uda06\udfb6",
3331 "output": null
3332 },
3333 {
3334 "comment": "C2; V7",
3335 "input": "\u200d\ud802\ude3f.\ud83e\udd12\u2d25\uda06\udfb6",
3336 "output": null
3337 },
3338 {
3339 "comment": "V6; V7",
3340 "input": "xn--0s9c.xn--tljz038l0gz4b",
3341 "output": null
3342 },
3343 {
3344 "comment": "C2; V7",
3345 "input": "xn--1ug9533g.xn--tljz038l0gz4b",
3346 "output": null
3347 },
3348 {
3349 "comment": "V6; V7",
3350 "input": "xn--0s9c.xn--9nd3211w0gz4b",
3351 "output": null
3352 },
3353 {
3354 "comment": "C2; V7",
3355 "input": "xn--1ug9533g.xn--9nd3211w0gz4b",
3356 "output": null
3357 },
3358 {
3359 "comment": "C2; V7",
3360 "input": "\ud894\udec5\u3002\u00df\ud873\udd69\u200d",
3361 "output": null
3362 },
3363 {
3364 "comment": "C2; V7",
3365 "input": "\ud894\udec5\u3002SS\ud873\udd69\u200d",
3366 "output": null
3367 },
3368 {
3369 "comment": "C2; V7",
3370 "input": "\ud894\udec5\u3002ss\ud873\udd69\u200d",
3371 "output": null
3372 },
3373 {
3374 "comment": "C2; V7",
3375 "input": "\ud894\udec5\u3002Ss\ud873\udd69\u200d",
3376 "output": null
3377 },
3378 {
3379 "comment": "V7",
3380 "input": "xn--ey1p.xn--ss-eq36b",
3381 "output": null
3382 },
3383 {
3384 "comment": "C2; V7",
3385 "input": "xn--ey1p.xn--ss-n1tx0508a",
3386 "output": null
3387 },
3388 {
3389 "comment": "C2; V7",
3390 "input": "xn--ey1p.xn--zca870nz438b",
3391 "output": null
3392 },
3393 {
3394 "comment": "C1; V6; V7",
3395 "input": "\udb40\udd6f\ud9df\udf6d\u200c\ud83d\udf2d\uff61\ud805\uddbf\u1abb\u03c2\u2260",
3396 "output": null
3397 },
3398 {
3399 "comment": "C1; V6; V7",
3400 "input": "\udb40\udd6f\ud9df\udf6d\u200c\ud83d\udf2d\uff61\ud805\uddbf\u1abb\u03c2=\u0338",
3401 "output": null
3402 },
3403 {
3404 "comment": "C1; V6; V7",
3405 "input": "\udb40\udd6f\ud9df\udf6d\u200c\ud83d\udf2d\u3002\ud805\uddbf\u1abb\u03c2\u2260",
3406 "output": null
3407 },
3408 {
3409 "comment": "C1; V6; V7",
3410 "input": "\udb40\udd6f\ud9df\udf6d\u200c\ud83d\udf2d\u3002\ud805\uddbf\u1abb\u03c2=\u0338",
3411 "output": null
3412 },
3413 {
3414 "comment": "C1; V6; V7",
3415 "input": "\udb40\udd6f\ud9df\udf6d\u200c\ud83d\udf2d\u3002\ud805\uddbf\u1abb\u03a3=\u0338",
3416 "output": null
3417 },
3418 {
3419 "comment": "C1; V6; V7",
3420 "input": "\udb40\udd6f\ud9df\udf6d\u200c\ud83d\udf2d\u3002\ud805\uddbf\u1abb\u03a3\u2260",
3421 "output": null
3422 },
3423 {
3424 "comment": "C1; V6; V7",
3425 "input": "\udb40\udd6f\ud9df\udf6d\u200c\ud83d\udf2d\u3002\ud805\uddbf\u1abb\u03c3\u2260",
3426 "output": null
3427 },
3428 {
3429 "comment": "C1; V6; V7",
3430 "input": "\udb40\udd6f\ud9df\udf6d\u200c\ud83d\udf2d\u3002\ud805\uddbf\u1abb\u03c3=\u0338",
3431 "output": null
3432 },
3433 {
3434 "comment": "V6; V7",
3435 "input": "xn--zb9h5968x.xn--4xa378i1mfjw7y",
3436 "output": null
3437 },
3438 {
3439 "comment": "C1; V6; V7",
3440 "input": "xn--0ug3766p5nm1b.xn--4xa378i1mfjw7y",
3441 "output": null
3442 },
3443 {
3444 "comment": "C1; V6; V7",
3445 "input": "xn--0ug3766p5nm1b.xn--3xa578i1mfjw7y",
3446 "output": null
3447 },
3448 {
3449 "comment": "C1; V6; V7",
3450 "input": "\udb40\udd6f\ud9df\udf6d\u200c\ud83d\udf2d\uff61\ud805\uddbf\u1abb\u03a3=\u0338",
3451 "output": null
3452 },
3453 {
3454 "comment": "C1; V6; V7",
3455 "input": "\udb40\udd6f\ud9df\udf6d\u200c\ud83d\udf2d\uff61\ud805\uddbf\u1abb\u03a3\u2260",
3456 "output": null
3457 },
3458 {
3459 "comment": "C1; V6; V7",
3460 "input": "\udb40\udd6f\ud9df\udf6d\u200c\ud83d\udf2d\uff61\ud805\uddbf\u1abb\u03c3\u2260",
3461 "output": null
3462 },
3463 {
3464 "comment": "C1; V6; V7",
3465 "input": "\udb40\udd6f\ud9df\udf6d\u200c\ud83d\udf2d\uff61\ud805\uddbf\u1abb\u03c3=\u0338",
3466 "output": null
3467 },
3468 {
3469 "comment": "C2; V7",
3470 "input": "\u248b\uff61\u2488\u200d\uda8f\udd22",
3471 "output": null
3472 },
3473 {
3474 "comment": "C2; V7; A4_2 (ignored)",
3475 "input": "4.\u30021.\u200d\uda8f\udd22",
3476 "output": null
3477 },
3478 {
3479 "comment": "V7; A4_2 (ignored)",
3480 "input": "4..1.xn--sf51d",
3481 "output": null
3482 },
3483 {
3484 "comment": "C2; V7; A4_2 (ignored)",
3485 "input": "4..1.xn--1ug64613i",
3486 "output": null
3487 },
3488 {
3489 "comment": "V7",
3490 "input": "xn--wsh.xn--tsh07994h",
3491 "output": null
3492 },
3493 {
3494 "comment": "C2; V7",
3495 "input": "xn--wsh.xn--1ug58o74922a",
3496 "output": null
3497 },
3498 {
3499 "comment": "V7",
3500 "input": "\u10b3\ud805\udf2b\u200d\uda1e\udf53\uff0e\u06a7\ud807\udc36",
3501 "output": null
3502 },
3503 {
3504 "comment": "V7",
3505 "input": "\u10b3\ud805\udf2b\u200d\uda1e\udf53.\u06a7\ud807\udc36",
3506 "output": null
3507 },
3508 {
3509 "comment": "V7",
3510 "input": "\u2d13\ud805\udf2b\u200d\uda1e\udf53.\u06a7\ud807\udc36",
3511 "output": null
3512 },
3513 {
3514 "comment": "V7",
3515 "input": "xn--blj6306ey091d.xn--9jb4223l",
3516 "output": null
3517 },
3518 {
3519 "comment": "V7",
3520 "input": "xn--1ugy52cym7p7xu5e.xn--9jb4223l",
3521 "output": null
3522 },
3523 {
3524 "comment": "V7",
3525 "input": "\u2d13\ud805\udf2b\u200d\uda1e\udf53\uff0e\u06a7\ud807\udc36",
3526 "output": null
3527 },
3528 {
3529 "comment": "V7",
3530 "input": "xn--rnd8945ky009c.xn--9jb4223l",
3531 "output": null
3532 },
3533 {
3534 "comment": "V7",
3535 "input": "xn--rnd479ep20q7x12e.xn--9jb4223l",
3536 "output": null
3537 },
3538 {
3539 "comment": "V6; U1 (ignored)",
3540 "input": "\ud802\ude3f.\ud83c\udd06\u2014",
3541 "output": null
3542 },
3543 {
3544 "comment": "V6; U1 (ignored)",
3545 "input": "\ud802\ude3f.5,\u2014",
3546 "output": null
3547 },
3548 {
3549 "comment": "V6; U1 (ignored)",
3550 "input": "xn--0s9c.xn--5,-81t",
3551 "output": null
3552 },
3553 {
3554 "comment": "V6; V7",
3555 "input": "xn--0s9c.xn--8ug8324p",
3556 "output": null
3557 },
3558 {
3559 "comment": "V7; V3 (ignored)",
3560 "input": "\uda10\udeb1\ud8c6\uddae\u06f8\u3002\udb43\udfad-",
3561 "output": null
3562 },
3563 {
3564 "comment": "V7; V3 (ignored)",
3565 "input": "xn--lmb18944c0g2z.xn----2k81m",
3566 "output": null
3567 },
3568 {
3569 "comment": "V7",
3570 "input": "\ud83d\udf85\udb43\udce1\udb30\udf59.\ud989\uddb7",
3571 "output": null
3572 },
3573 {
3574 "comment": "V7",
3575 "input": "xn--ie9hi1349bqdlb.xn--oj69a",
3576 "output": null
3577 },
3578 {
3579 "comment": "C1; V6; V7",
3580 "input": "\u20e7\ud97e\udc4e-\uda6e\udcdd.4\u10a4\u200c",
3581 "output": null
3582 },
3583 {
3584 "comment": "C1; V6; V7",
3585 "input": "\u20e7\ud97e\udc4e-\uda6e\udcdd.4\u2d04\u200c",
3586 "output": null
3587 },
3588 {
3589 "comment": "V6; V7",
3590 "input": "xn----9snu5320fi76w.xn--4-ivs",
3591 "output": null
3592 },
3593 {
3594 "comment": "C1; V6; V7",
3595 "input": "xn----9snu5320fi76w.xn--4-sgn589c",
3596 "output": null
3597 },
3598 {
3599 "comment": "V6; V7",
3600 "input": "xn----9snu5320fi76w.xn--4-f0g",
3601 "output": null
3602 },
3603 {
3604 "comment": "C1; V6; V7",
3605 "input": "xn----9snu5320fi76w.xn--4-f0g649i",
3606 "output": null
3607 },
3608 {
3609 "input": "\u16ad\uff61\ud834\udf20\u00df\ud81a\udef1",
3610 "output": "xn--hwe.xn--zca4946pblnc"
3611 },
3612 {
3613 "input": "\u16ad\u3002\ud834\udf20\u00df\ud81a\udef1",
3614 "output": "xn--hwe.xn--zca4946pblnc"
3615 },
3616 {
3617 "input": "\u16ad\u3002\ud834\udf20SS\ud81a\udef1",
3618 "output": "xn--hwe.xn--ss-ci1ub261a"
3619 },
3620 {
3621 "input": "\u16ad\u3002\ud834\udf20ss\ud81a\udef1",
3622 "output": "xn--hwe.xn--ss-ci1ub261a"
3623 },
3624 {
3625 "input": "\u16ad\u3002\ud834\udf20Ss\ud81a\udef1",
3626 "output": "xn--hwe.xn--ss-ci1ub261a"
3627 },
3628 {
3629 "input": "xn--hwe.xn--ss-ci1ub261a",
3630 "output": "xn--hwe.xn--ss-ci1ub261a"
3631 },
3632 {
3633 "input": "\u16ad.\ud834\udf20ss\ud81a\udef1",
3634 "output": "xn--hwe.xn--ss-ci1ub261a"
3635 },
3636 {
3637 "input": "\u16ad.\ud834\udf20SS\ud81a\udef1",
3638 "output": "xn--hwe.xn--ss-ci1ub261a"
3639 },
3640 {
3641 "input": "\u16ad.\ud834\udf20Ss\ud81a\udef1",
3642 "output": "xn--hwe.xn--ss-ci1ub261a"
3643 },
3644 {
3645 "input": "xn--hwe.xn--zca4946pblnc",
3646 "output": "xn--hwe.xn--zca4946pblnc"
3647 },
3648 {
3649 "input": "\u16ad.\ud834\udf20\u00df\ud81a\udef1",
3650 "output": "xn--hwe.xn--zca4946pblnc"
3651 },
3652 {
3653 "input": "\u16ad\uff61\ud834\udf20SS\ud81a\udef1",
3654 "output": "xn--hwe.xn--ss-ci1ub261a"
3655 },
3656 {
3657 "input": "\u16ad\uff61\ud834\udf20ss\ud81a\udef1",
3658 "output": "xn--hwe.xn--ss-ci1ub261a"
3659 },
3660 {
3661 "input": "\u16ad\uff61\ud834\udf20Ss\ud81a\udef1",
3662 "output": "xn--hwe.xn--ss-ci1ub261a"
3663 },
3664 {
3665 "comment": "V6",
3666 "input": "\ud805\udc44\u226f\uff61\ud805\udf24",
3667 "output": null
3668 },
3669 {
3670 "comment": "V6",
3671 "input": "\ud805\udc44>\u0338\uff61\ud805\udf24",
3672 "output": null
3673 },
3674 {
3675 "comment": "V6",
3676 "input": "\ud805\udc44\u226f\u3002\ud805\udf24",
3677 "output": null
3678 },
3679 {
3680 "comment": "V6",
3681 "input": "\ud805\udc44>\u0338\u3002\ud805\udf24",
3682 "output": null
3683 },
3684 {
3685 "comment": "V6",
3686 "input": "xn--hdh5636g.xn--ci2d",
3687 "output": null
3688 },
3689 {
3690 "comment": "C2",
3691 "input": "\u10ab\u226e\ud887\udc86\u3002\u200d\u07a7\ud800\udee3",
3692 "output": null
3693 },
3694 {
3695 "comment": "C2",
3696 "input": "\u10ab<\u0338\ud887\udc86\u3002\u200d\u07a7\ud800\udee3",
3697 "output": null
3698 },
3699 {
3700 "comment": "C2",
3701 "input": "\u2d0b<\u0338\ud887\udc86\u3002\u200d\u07a7\ud800\udee3",
3702 "output": null
3703 },
3704 {
3705 "comment": "C2",
3706 "input": "\u2d0b\u226e\ud887\udc86\u3002\u200d\u07a7\ud800\udee3",
3707 "output": null
3708 },
3709 {
3710 "comment": "V6",
3711 "input": "xn--gdhz03bxt42d.xn--lrb6479j",
3712 "output": null
3713 },
3714 {
3715 "comment": "C2",
3716 "input": "xn--gdhz03bxt42d.xn--lrb506jqr4n",
3717 "output": null
3718 },
3719 {
3720 "comment": "V6; V7",
3721 "input": "xn--jnd802gsm17c.xn--lrb6479j",
3722 "output": null
3723 },
3724 {
3725 "comment": "C2; V7",
3726 "input": "xn--jnd802gsm17c.xn--lrb506jqr4n",
3727 "output": null
3728 },
3729 {
3730 "comment": "V6; V7",
3731 "input": "\u17d2.\ud9db\udf52\u226f",
3732 "output": null
3733 },
3734 {
3735 "comment": "V6; V7",
3736 "input": "\u17d2.\ud9db\udf52>\u0338",
3737 "output": null
3738 },
3739 {
3740 "comment": "V6; V7",
3741 "input": "xn--u4e.xn--hdhx0084f",
3742 "output": null
3743 },
3744 {
3745 "comment": "V6; V7",
3746 "input": "\ud8fc\udc47\u1734\uff0e\ud802\ude3a\u00c9\u2b13\ud804\udd34",
3747 "output": null
3748 },
3749 {
3750 "comment": "V6; V7",
3751 "input": "\ud8fc\udc47\u1734\uff0e\ud802\ude3aE\u0301\u2b13\ud804\udd34",
3752 "output": null
3753 },
3754 {
3755 "comment": "V6; V7",
3756 "input": "\ud8fc\udc47\u1734.\ud802\ude3a\u00c9\u2b13\ud804\udd34",
3757 "output": null
3758 },
3759 {
3760 "comment": "V6; V7",
3761 "input": "\ud8fc\udc47\u1734.\ud802\ude3aE\u0301\u2b13\ud804\udd34",
3762 "output": null
3763 },
3764 {
3765 "comment": "V6; V7",
3766 "input": "\ud8fc\udc47\u1734.\ud802\ude3ae\u0301\u2b13\ud804\udd34",
3767 "output": null
3768 },
3769 {
3770 "comment": "V6; V7",
3771 "input": "\ud8fc\udc47\u1734.\ud802\ude3a\u00e9\u2b13\ud804\udd34",
3772 "output": null
3773 },
3774 {
3775 "comment": "V6; V7",
3776 "input": "xn--c0e34564d.xn--9ca207st53lg3f",
3777 "output": null
3778 },
3779 {
3780 "comment": "V6; V7",
3781 "input": "\ud8fc\udc47\u1734\uff0e\ud802\ude3ae\u0301\u2b13\ud804\udd34",
3782 "output": null
3783 },
3784 {
3785 "comment": "V6; V7",
3786 "input": "\ud8fc\udc47\u1734\uff0e\ud802\ude3a\u00e9\u2b13\ud804\udd34",
3787 "output": null
3788 },
3789 {
3790 "comment": "A4_2 (ignored)",
3791 "input": "xn--09e4694e..xn--ye6h",
3792 "output": "xn--09e4694e..xn--ye6h"
3793 },
3794 {
3795 "comment": "V6",
3796 "input": "\u10c3\uff0e\u0653\u18a4",
3797 "output": null
3798 },
3799 {
3800 "comment": "V6",
3801 "input": "\u10c3.\u0653\u18a4",
3802 "output": null
3803 },
3804 {
3805 "comment": "V6",
3806 "input": "\u2d23.\u0653\u18a4",
3807 "output": null
3808 },
3809 {
3810 "comment": "V6",
3811 "input": "xn--rlj.xn--vhb294g",
3812 "output": null
3813 },
3814 {
3815 "comment": "V6",
3816 "input": "\u2d23\uff0e\u0653\u18a4",
3817 "output": null
3818 },
3819 {
3820 "comment": "V6; V7",
3821 "input": "xn--7nd.xn--vhb294g",
3822 "output": null
3823 },
3824 {
3825 "comment": "V7",
3826 "input": "\udb40\udd08\u0813\uff0e\uc2c9\ud9d0\uddbb\u10c4\ud9ca\udc50",
3827 "output": null
3828 },
3829 {
3830 "comment": "V7",
3831 "input": "\udb40\udd08\u0813\uff0e\u1109\u1174\u11b0\ud9d0\uddbb\u10c4\ud9ca\udc50",
3832 "output": null
3833 },
3834 {
3835 "comment": "V7",
3836 "input": "\udb40\udd08\u0813.\uc2c9\ud9d0\uddbb\u10c4\ud9ca\udc50",
3837 "output": null
3838 },
3839 {
3840 "comment": "V7",
3841 "input": "\udb40\udd08\u0813.\u1109\u1174\u11b0\ud9d0\uddbb\u10c4\ud9ca\udc50",
3842 "output": null
3843 },
3844 {
3845 "comment": "V7",
3846 "input": "\udb40\udd08\u0813.\u1109\u1174\u11b0\ud9d0\uddbb\u2d24\ud9ca\udc50",
3847 "output": null
3848 },
3849 {
3850 "comment": "V7",
3851 "input": "\udb40\udd08\u0813.\uc2c9\ud9d0\uddbb\u2d24\ud9ca\udc50",
3852 "output": null
3853 },
3854 {
3855 "comment": "V7",
3856 "input": "xn--oub.xn--sljz109bpe25dviva",
3857 "output": null
3858 },
3859 {
3860 "comment": "V7",
3861 "input": "\udb40\udd08\u0813\uff0e\u1109\u1174\u11b0\ud9d0\uddbb\u2d24\ud9ca\udc50",
3862 "output": null
3863 },
3864 {
3865 "comment": "V7",
3866 "input": "\udb40\udd08\u0813\uff0e\uc2c9\ud9d0\uddbb\u2d24\ud9ca\udc50",
3867 "output": null
3868 },
3869 {
3870 "comment": "V7",
3871 "input": "xn--oub.xn--8nd9522gpe69cviva",
3872 "output": null
3873 },
3874 {
3875 "comment": "V6",
3876 "input": "\uaa2c\ud807\udcab\u226e\uff0e\u2902",
3877 "output": null
3878 },
3879 {
3880 "comment": "V6",
3881 "input": "\uaa2c\ud807\udcab<\u0338\uff0e\u2902",
3882 "output": null
3883 },
3884 {
3885 "comment": "V6",
3886 "input": "\uaa2c\ud807\udcab\u226e.\u2902",
3887 "output": null
3888 },
3889 {
3890 "comment": "V6",
3891 "input": "\uaa2c\ud807\udcab<\u0338.\u2902",
3892 "output": null
3893 },
3894 {
3895 "comment": "V6",
3896 "input": "xn--gdh1854cn19c.xn--kqi",
3897 "output": null
3898 },
3899 {
3900 "comment": "V6; V3 (ignored)",
3901 "input": "\ud804\udc45\u3002-",
3902 "output": null
3903 },
3904 {
3905 "comment": "V6; V3 (ignored)",
3906 "input": "xn--210d.-",
3907 "output": null
3908 },
3909 {
3910 "comment": "C2; V7; V3 (ignored)",
3911 "input": "\ua866\u1851\u200d\u2488\u3002\ud800\udee3-",
3912 "output": null
3913 },
3914 {
3915 "comment": "C2; V3 (ignored); A4_2 (ignored)",
3916 "input": "\ua866\u1851\u200d1.\u3002\ud800\udee3-",
3917 "output": null
3918 },
3919 {
3920 "comment": "V3 (ignored); A4_2 (ignored)",
3921 "input": "xn--1-o7j0610f..xn----381i",
3922 "output": "xn--1-o7j0610f..xn----381i"
3923 },
3924 {
3925 "comment": "C2; V3 (ignored); A4_2 (ignored)",
3926 "input": "xn--1-o7j663bdl7m..xn----381i",
3927 "output": null
3928 },
3929 {
3930 "comment": "V7; V3 (ignored)",
3931 "input": "xn--h8e863drj7h.xn----381i",
3932 "output": null
3933 },
3934 {
3935 "comment": "C2; V7; V3 (ignored)",
3936 "input": "xn--h8e470bl0d838o.xn----381i",
3937 "output": null
3938 },
3939 {
3940 "comment": "C2; V7; V3 (ignored)",
3941 "input": "\u2488\u4c39\u200d-\u3002\uc6c8",
3942 "output": null
3943 },
3944 {
3945 "comment": "C2; V7; V3 (ignored)",
3946 "input": "\u2488\u4c39\u200d-\u3002\u110b\u116e\u11bf",
3947 "output": null
3948 },
3949 {
3950 "comment": "C2; V3 (ignored)",
3951 "input": "1.\u4c39\u200d-\u3002\uc6c8",
3952 "output": null
3953 },
3954 {
3955 "comment": "C2; V3 (ignored)",
3956 "input": "1.\u4c39\u200d-\u3002\u110b\u116e\u11bf",
3957 "output": null
3958 },
3959 {
3960 "comment": "V3 (ignored)",
3961 "input": "1.xn----zw5a.xn--kp5b",
3962 "output": "1.xn----zw5a.xn--kp5b"
3963 },
3964 {
3965 "comment": "C2; V3 (ignored)",
3966 "input": "1.xn----tgnz80r.xn--kp5b",
3967 "output": null
3968 },
3969 {
3970 "comment": "V7; V3 (ignored)",
3971 "input": "xn----dcp160o.xn--kp5b",
3972 "output": null
3973 },
3974 {
3975 "comment": "C2; V7; V3 (ignored)",
3976 "input": "xn----tgnx5rjr6c.xn--kp5b",
3977 "output": null
3978 },
3979 {
3980 "comment": "C1; V7",
3981 "input": "\u3066\u3002\u200c\udb43\udcfd\u07f3",
3982 "output": null
3983 },
3984 {
3985 "comment": "V7",
3986 "input": "xn--m9j.xn--rtb10784p",
3987 "output": null
3988 },
3989 {
3990 "comment": "C1; V7",
3991 "input": "xn--m9j.xn--rtb154j9l73w",
3992 "output": null
3993 },
3994 {
3995 "comment": "V6",
3996 "input": "\u03c2\uff61\ua9c0\u06e7",
3997 "output": null
3998 },
3999 {
4000 "comment": "V6",
4001 "input": "\u03c2\u3002\ua9c0\u06e7",
4002 "output": null
4003 },
4004 {
4005 "comment": "V6",
4006 "input": "\u03a3\u3002\ua9c0\u06e7",
4007 "output": null
4008 },
4009 {
4010 "comment": "V6",
4011 "input": "\u03c3\u3002\ua9c0\u06e7",
4012 "output": null
4013 },
4014 {
4015 "comment": "V6",
4016 "input": "xn--4xa.xn--3lb1944f",
4017 "output": null
4018 },
4019 {
4020 "comment": "V6",
4021 "input": "xn--3xa.xn--3lb1944f",
4022 "output": null
4023 },
4024 {
4025 "comment": "V6",
4026 "input": "\u03a3\uff61\ua9c0\u06e7",
4027 "output": null
4028 },
4029 {
4030 "comment": "V6",
4031 "input": "\u03c3\uff61\ua9c0\u06e7",
4032 "output": null
4033 },
4034 {
4035 "comment": "V6; V7",
4036 "input": "\u0bcd\udb56\udec5\ud9f0\ude51.\u10a2\u10b5",
4037 "output": null
4038 },
4039 {
4040 "comment": "V6; V7",
4041 "input": "\u0bcd\udb56\udec5\ud9f0\ude51.\u2d02\u2d15",
4042 "output": null
4043 },
4044 {
4045 "comment": "V6; V7",
4046 "input": "\u0bcd\udb56\udec5\ud9f0\ude51.\u10a2\u2d15",
4047 "output": null
4048 },
4049 {
4050 "comment": "V6; V7",
4051 "input": "xn--xmc83135idcxza.xn--tkjwb",
4052 "output": null
4053 },
4054 {
4055 "comment": "V6; V7",
4056 "input": "xn--xmc83135idcxza.xn--9md086l",
4057 "output": null
4058 },
4059 {
4060 "comment": "V6; V7",
4061 "input": "xn--xmc83135idcxza.xn--9md2b",
4062 "output": null
4063 },
4064 {
4065 "comment": "C2; V6; V7; U1 (ignored)",
4066 "input": "\u1c32\ud83c\udd08\u2f9b\u05a6\uff0e\u200d\uda7e\udd64\u07fd",
4067 "output": null
4068 },
4069 {
4070 "comment": "C2; V6; V7; U1 (ignored)",
4071 "input": "\u1c327,\u8d70\u05a6.\u200d\uda7e\udd64\u07fd",
4072 "output": null
4073 },
4074 {
4075 "comment": "V6; V7; U1 (ignored)",
4076 "input": "xn--7,-bid991urn3k.xn--1tb13454l",
4077 "output": null
4078 },
4079 {
4080 "comment": "C2; V6; V7; U1 (ignored)",
4081 "input": "xn--7,-bid991urn3k.xn--1tb334j1197q",
4082 "output": null
4083 },
4084 {
4085 "comment": "V6; V7",
4086 "input": "xn--xcb756i493fwi5o.xn--1tb13454l",
4087 "output": null
4088 },
4089 {
4090 "comment": "C2; V6; V7",
4091 "input": "xn--xcb756i493fwi5o.xn--1tb334j1197q",
4092 "output": null
4093 },
4094 {
4095 "comment": "V7",
4096 "input": "\u1897\uff61\u04c0\ud934\udd3b",
4097 "output": null
4098 },
4099 {
4100 "comment": "V7",
4101 "input": "\u1897\u3002\u04c0\ud934\udd3b",
4102 "output": null
4103 },
4104 {
4105 "comment": "V7",
4106 "input": "\u1897\u3002\u04cf\ud934\udd3b",
4107 "output": null
4108 },
4109 {
4110 "comment": "V7",
4111 "input": "xn--hbf.xn--s5a83117e",
4112 "output": null
4113 },
4114 {
4115 "comment": "V7",
4116 "input": "\u1897\uff61\u04cf\ud934\udd3b",
4117 "output": null
4118 },
4119 {
4120 "comment": "V7",
4121 "input": "xn--hbf.xn--d5a86117e",
4122 "output": null
4123 },
4124 {
4125 "comment": "V3 (ignored); A4_2 (ignored)",
4126 "input": "-\ud800\udef7\ud81b\udf91\u3002\udb40\uddac",
4127 "output": "xn----991iq40y."
4128 },
4129 {
4130 "comment": "V3 (ignored); A4_2 (ignored)",
4131 "input": "xn----991iq40y.",
4132 "output": "xn----991iq40y."
4133 },
4134 {
4135 "comment": "V6",
4136 "input": "\ud807\udc98\udb40\udd12\ud80d\udc61\uff61\ud835\udfea\u10bc",
4137 "output": null
4138 },
4139 {
4140 "comment": "V6",
4141 "input": "\ud807\udc98\udb40\udd12\ud80d\udc61\u30028\u10bc",
4142 "output": null
4143 },
4144 {
4145 "comment": "V6",
4146 "input": "\ud807\udc98\udb40\udd12\ud80d\udc61\u30028\u2d1c",
4147 "output": null
4148 },
4149 {
4150 "comment": "V6",
4151 "input": "xn--7m3d291b.xn--8-vws",
4152 "output": null
4153 },
4154 {
4155 "comment": "V6",
4156 "input": "\ud807\udc98\udb40\udd12\ud80d\udc61\uff61\ud835\udfea\u2d1c",
4157 "output": null
4158 },
4159 {
4160 "comment": "V6; V7",
4161 "input": "xn--7m3d291b.xn--8-s1g",
4162 "output": null
4163 },
4164 {
4165 "comment": "V6; V7",
4166 "input": "\u1bab\uff61\ud83c\udc89\udb40\udc70",
4167 "output": null
4168 },
4169 {
4170 "comment": "V6; V7",
4171 "input": "\u1bab\u3002\ud83c\udc89\udb40\udc70",
4172 "output": null
4173 },
4174 {
4175 "comment": "V6; V7",
4176 "input": "xn--zxf.xn--fx7ho0250c",
4177 "output": null
4178 },
4179 {
4180 "comment": "C1; V7; V3 (ignored)",
4181 "input": "\udb71\udeb6\udba0\uded6\uda1a\ude70-\u3002\u200c",
4182 "output": null
4183 },
4184 {
4185 "comment": "V7; V3 (ignored); A4_2 (ignored)",
4186 "input": "xn----7i12hu122k9ire.",
4187 "output": null
4188 },
4189 {
4190 "comment": "C1; V7; V3 (ignored)",
4191 "input": "xn----7i12hu122k9ire.xn--0ug",
4192 "output": null
4193 },
4194 {
4195 "comment": "V6; V7",
4196 "input": "\ufe12\uff0e\ufe2f\ud805\udc42",
4197 "output": null
4198 },
4199 {
4200 "comment": "V6; V7",
4201 "input": "\ufe12\uff0e\ud805\udc42\ufe2f",
4202 "output": null
4203 },
4204 {
4205 "comment": "V6; A4_2 (ignored)",
4206 "input": "\u3002.\ud805\udc42\ufe2f",
4207 "output": null
4208 },
4209 {
4210 "comment": "V6; A4_2 (ignored)",
4211 "input": "..xn--s96cu30b",
4212 "output": null
4213 },
4214 {
4215 "comment": "V6; V7",
4216 "input": "xn--y86c.xn--s96cu30b",
4217 "output": null
4218 },
4219 {
4220 "comment": "C2; V6",
4221 "input": "\ua92c\u3002\u200d",
4222 "output": null
4223 },
4224 {
4225 "comment": "V6; A4_2 (ignored)",
4226 "input": "xn--zi9a.",
4227 "output": null
4228 },
4229 {
4230 "comment": "C2; V6",
4231 "input": "xn--zi9a.xn--1ug",
4232 "output": null
4233 },
4234 {
4235 "comment": "V7; V3 (ignored)",
4236 "input": "\udb58\ude04\u3002-",
4237 "output": null
4238 },
4239 {
4240 "comment": "V7; V3 (ignored)",
4241 "input": "xn--xm38e.-",
4242 "output": null
4243 },
4244 {
4245 "comment": "V7",
4246 "input": "\u22e0\ud800\udeee\uff0e\uda98\ude2e\u0f18\u00df\u226f",
4247 "output": null
4248 },
4249 {
4250 "comment": "V7",
4251 "input": "\u227c\u0338\ud800\udeee\uff0e\uda98\ude2e\u0f18\u00df>\u0338",
4252 "output": null
4253 },
4254 {
4255 "comment": "V7",
4256 "input": "\u22e0\ud800\udeee.\uda98\ude2e\u0f18\u00df\u226f",
4257 "output": null
4258 },
4259 {
4260 "comment": "V7",
4261 "input": "\u227c\u0338\ud800\udeee.\uda98\ude2e\u0f18\u00df>\u0338",
4262 "output": null
4263 },
4264 {
4265 "comment": "V7",
4266 "input": "\u227c\u0338\ud800\udeee.\uda98\ude2e\u0f18SS>\u0338",
4267 "output": null
4268 },
4269 {
4270 "comment": "V7",
4271 "input": "\u22e0\ud800\udeee.\uda98\ude2e\u0f18SS\u226f",
4272 "output": null
4273 },
4274 {
4275 "comment": "V7",
4276 "input": "\u22e0\ud800\udeee.\uda98\ude2e\u0f18ss\u226f",
4277 "output": null
4278 },
4279 {
4280 "comment": "V7",
4281 "input": "\u227c\u0338\ud800\udeee.\uda98\ude2e\u0f18ss>\u0338",
4282 "output": null
4283 },
4284 {
4285 "comment": "V7",
4286 "input": "\u227c\u0338\ud800\udeee.\uda98\ude2e\u0f18Ss>\u0338",
4287 "output": null
4288 },
4289 {
4290 "comment": "V7",
4291 "input": "\u22e0\ud800\udeee.\uda98\ude2e\u0f18Ss\u226f",
4292 "output": null
4293 },
4294 {
4295 "comment": "V7",
4296 "input": "xn--pgh4639f.xn--ss-ifj426nle504a",
4297 "output": null
4298 },
4299 {
4300 "comment": "V7",
4301 "input": "xn--pgh4639f.xn--zca593eo6oc013y",
4302 "output": null
4303 },
4304 {
4305 "comment": "V7",
4306 "input": "\u227c\u0338\ud800\udeee\uff0e\uda98\ude2e\u0f18SS>\u0338",
4307 "output": null
4308 },
4309 {
4310 "comment": "V7",
4311 "input": "\u22e0\ud800\udeee\uff0e\uda98\ude2e\u0f18SS\u226f",
4312 "output": null
4313 },
4314 {
4315 "comment": "V7",
4316 "input": "\u22e0\ud800\udeee\uff0e\uda98\ude2e\u0f18ss\u226f",
4317 "output": null
4318 },
4319 {
4320 "comment": "V7",
4321 "input": "\u227c\u0338\ud800\udeee\uff0e\uda98\ude2e\u0f18ss>\u0338",
4322 "output": null
4323 },
4324 {
4325 "comment": "V7",
4326 "input": "\u227c\u0338\ud800\udeee\uff0e\uda98\ude2e\u0f18Ss>\u0338",
4327 "output": null
4328 },
4329 {
4330 "comment": "V7",
4331 "input": "\u22e0\ud800\udeee\uff0e\uda98\ude2e\u0f18Ss\u226f",
4332 "output": null
4333 },
4334 {
4335 "comment": "V6; V7",
4336 "input": "\u0330\uff0e\udb81\udf31\u8680",
4337 "output": null
4338 },
4339 {
4340 "comment": "V6; V7",
4341 "input": "\u0330.\udb81\udf31\u8680",
4342 "output": null
4343 },
4344 {
4345 "comment": "V6; V7",
4346 "input": "xn--xta.xn--e91aw9417e",
4347 "output": null
4348 },
4349 {
4350 "comment": "C2; V6; U1 (ignored)",
4351 "input": "\ud83e\udc9f\ud83c\udd08\u200d\ua84e\uff61\u0f84",
4352 "output": null
4353 },
4354 {
4355 "comment": "C2; V6; U1 (ignored)",
4356 "input": "\ud83e\udc9f7,\u200d\ua84e\u3002\u0f84",
4357 "output": null
4358 },
4359 {
4360 "comment": "V6; U1 (ignored)",
4361 "input": "xn--7,-gh9hg322i.xn--3ed",
4362 "output": null
4363 },
4364 {
4365 "comment": "C2; V6; U1 (ignored)",
4366 "input": "xn--7,-n1t0654eqo3o.xn--3ed",
4367 "output": null
4368 },
4369 {
4370 "comment": "V6; V7",
4371 "input": "xn--nc9aq743ds0e.xn--3ed",
4372 "output": null
4373 },
4374 {
4375 "comment": "C2; V6; V7",
4376 "input": "xn--1ug4874cfd0kbmg.xn--3ed",
4377 "output": null
4378 },
4379 {
4380 "comment": "V6",
4381 "input": "\ua854\u3002\u1039\u1887",
4382 "output": null
4383 },
4384 {
4385 "comment": "V6",
4386 "input": "xn--tc9a.xn--9jd663b",
4387 "output": null
4388 },
4389 {
4390 "comment": "V6",
4391 "input": "\u20eb\u226e.\ud836\ude16",
4392 "output": null
4393 },
4394 {
4395 "comment": "V6",
4396 "input": "\u20eb<\u0338.\ud836\ude16",
4397 "output": null
4398 },
4399 {
4400 "comment": "V6",
4401 "input": "xn--e1g71d.xn--772h",
4402 "output": null
4403 },
4404 {
4405 "comment": "C1",
4406 "input": "\u200c.\u226f",
4407 "output": null
4408 },
4409 {
4410 "comment": "C1",
4411 "input": "\u200c.>\u0338",
4412 "output": null
4413 },
4414 {
4415 "comment": "A4_2 (ignored)",
4416 "input": ".xn--hdh",
4417 "output": ".xn--hdh"
4418 },
4419 {
4420 "comment": "C1",
4421 "input": "xn--0ug.xn--hdh",
4422 "output": null
4423 },
4424 {
4425 "comment": "V6; V7; V3 (ignored)",
4426 "input": "\ud880\udd67\ud94e\ude60-\uff0e\uabed-\u609c",
4427 "output": null
4428 },
4429 {
4430 "comment": "V6; V7; V3 (ignored)",
4431 "input": "\ud880\udd67\ud94e\ude60-.\uabed-\u609c",
4432 "output": null
4433 },
4434 {
4435 "comment": "V6; V7; V3 (ignored)",
4436 "input": "xn----7m53aj640l.xn----8f4br83t",
4437 "output": null
4438 },
4439 {
4440 "comment": "C2; V7; V3 (ignored)",
4441 "input": "\u1849\ud899\udce7\u2b1e\u189c.-\u200d\ud83a\udcd1\u202e",
4442 "output": null
4443 },
4444 {
4445 "comment": "V7; V3 (ignored)",
4446 "input": "xn--87e0ol04cdl39e.xn----qinu247r",
4447 "output": null
4448 },
4449 {
4450 "comment": "C2; V7; V3 (ignored)",
4451 "input": "xn--87e0ol04cdl39e.xn----ugn5e3763s",
4452 "output": null
4453 },
4454 {
4455 "input": "\ud83a\udd53\uff0e\u0718",
4456 "output": "xn--of6h.xn--inb"
4457 },
4458 {
4459 "input": "\ud83a\udd53.\u0718",
4460 "output": "xn--of6h.xn--inb"
4461 },
4462 {
4463 "input": "xn--of6h.xn--inb",
4464 "output": "xn--of6h.xn--inb"
4465 },
4466 {
4467 "comment": "V3 (ignored)",
4468 "input": "\udb40\udd3d-\uff0e-\u0dca",
4469 "output": "-.xn----ptf"
4470 },
4471 {
4472 "comment": "V3 (ignored)",
4473 "input": "\udb40\udd3d-.-\u0dca",
4474 "output": "-.xn----ptf"
4475 },
4476 {
4477 "comment": "V3 (ignored)",
4478 "input": "-.xn----ptf",
4479 "output": "-.xn----ptf"
4480 },
4481 {
4482 "input": "\u10ba\ud800\udef8\udb40\udd04\u3002\ud835\udfdd\ud7f6\u103a",
4483 "output": "xn--ilj2659d.xn--5-dug9054m"
4484 },
4485 {
4486 "input": "\u10ba\ud800\udef8\udb40\udd04\u30025\ud7f6\u103a",
4487 "output": "xn--ilj2659d.xn--5-dug9054m"
4488 },
4489 {
4490 "input": "\u2d1a\ud800\udef8\udb40\udd04\u30025\ud7f6\u103a",
4491 "output": "xn--ilj2659d.xn--5-dug9054m"
4492 },
4493 {
4494 "input": "xn--ilj2659d.xn--5-dug9054m",
4495 "output": "xn--ilj2659d.xn--5-dug9054m"
4496 },
4497 {
4498 "input": "\u2d1a\ud800\udef8.5\ud7f6\u103a",
4499 "output": "xn--ilj2659d.xn--5-dug9054m"
4500 },
4501 {
4502 "input": "\u10ba\ud800\udef8.5\ud7f6\u103a",
4503 "output": "xn--ilj2659d.xn--5-dug9054m"
4504 },
4505 {
4506 "input": "\u2d1a\ud800\udef8\udb40\udd04\u3002\ud835\udfdd\ud7f6\u103a",
4507 "output": "xn--ilj2659d.xn--5-dug9054m"
4508 },
4509 {
4510 "comment": "V7",
4511 "input": "xn--ynd2415j.xn--5-dug9054m",
4512 "output": null
4513 },
4514 {
4515 "comment": "C2; V6; U1 (ignored)",
4516 "input": "\u200d-\u1839\ufe6a.\u1de1\u1922",
4517 "output": null
4518 },
4519 {
4520 "comment": "C2; V6; U1 (ignored)",
4521 "input": "\u200d-\u1839%.\u1de1\u1922",
4522 "output": null
4523 },
4524 {
4525 "comment": "V6; V3 (ignored); U1 (ignored)",
4526 "input": "xn---%-u4o.xn--gff52t",
4527 "output": null
4528 },
4529 {
4530 "comment": "C2; V6; U1 (ignored)",
4531 "input": "xn---%-u4oy48b.xn--gff52t",
4532 "output": null
4533 },
4534 {
4535 "comment": "V6; V7; V3 (ignored)",
4536 "input": "xn----c6jx047j.xn--gff52t",
4537 "output": null
4538 },
4539 {
4540 "comment": "C2; V6; V7",
4541 "input": "xn----c6j614b1z4v.xn--gff52t",
4542 "output": null
4543 },
4544 {
4545 "input": "\u2260.\u183f",
4546 "output": "xn--1ch.xn--y7e"
4547 },
4548 {
4549 "input": "=\u0338.\u183f",
4550 "output": "xn--1ch.xn--y7e"
4551 },
4552 {
4553 "input": "xn--1ch.xn--y7e",
4554 "output": "xn--1ch.xn--y7e"
4555 },
4556 {
4557 "input": "\u0723\u05a3\uff61\u332a",
4558 "output": "xn--ucb18e.xn--eck4c5a"
4559 },
4560 {
4561 "input": "\u0723\u05a3\u3002\u30cf\u30a4\u30c4",
4562 "output": "xn--ucb18e.xn--eck4c5a"
4563 },
4564 {
4565 "input": "xn--ucb18e.xn--eck4c5a",
4566 "output": "xn--ucb18e.xn--eck4c5a"
4567 },
4568 {
4569 "input": "\u0723\u05a3.\u30cf\u30a4\u30c4",
4570 "output": "xn--ucb18e.xn--eck4c5a"
4571 },
4572 {
4573 "comment": "V7",
4574 "input": "\ud84e\ude6b\uff0e\ud9f1\udc72",
4575 "output": null
4576 },
4577 {
4578 "comment": "V7",
4579 "input": "\ud84e\ude6b.\ud9f1\udc72",
4580 "output": null
4581 },
4582 {
4583 "comment": "V7",
4584 "input": "xn--td3j.xn--4628b",
4585 "output": null
4586 },
4587 {
4588 "input": "xn--skb",
4589 "output": "xn--skb"
4590 },
4591 {
4592 "input": "\u06b9",
4593 "output": "xn--skb"
4594 },
4595 {
4596 "comment": "V6; V3 (ignored)",
4597 "input": "\u0c4d\ud836\ude3e\u05a9\ud835\udfed\u3002-\ud805\udf28",
4598 "output": null
4599 },
4600 {
4601 "comment": "V6; V3 (ignored)",
4602 "input": "\u0c4d\ud836\ude3e\u05a91\u3002-\ud805\udf28",
4603 "output": null
4604 },
4605 {
4606 "comment": "V6; V3 (ignored)",
4607 "input": "xn--1-rfc312cdp45c.xn----nq0j",
4608 "output": null
4609 },
4610 {
4611 "comment": "V7",
4612 "input": "\uda4f\udfc8\u3002\ub64f",
4613 "output": null
4614 },
4615 {
4616 "comment": "V7",
4617 "input": "\uda4f\udfc8\u3002\u1104\u116b\u11ae",
4618 "output": null
4619 },
4620 {
4621 "comment": "V7",
4622 "input": "xn--ph26c.xn--281b",
4623 "output": null
4624 },
4625 {
4626 "comment": "V7",
4627 "input": "\ud916\ude1a\udb40\udd0c\udb07\udf40\u1840.\u08b6",
4628 "output": null
4629 },
4630 {
4631 "comment": "V7",
4632 "input": "xn--z7e98100evc01b.xn--czb",
4633 "output": null
4634 },
4635 {
4636 "comment": "C2; V7",
4637 "input": "\u200d\uff61\ud8d4\udc5b",
4638 "output": null
4639 },
4640 {
4641 "comment": "C2; V7",
4642 "input": "\u200d\u3002\ud8d4\udc5b",
4643 "output": null
4644 },
4645 {
4646 "comment": "V7; A4_2 (ignored)",
4647 "input": ".xn--6x4u",
4648 "output": null
4649 },
4650 {
4651 "comment": "C2; V7",
4652 "input": "xn--1ug.xn--6x4u",
4653 "output": null
4654 },
4655 {
4656 "comment": "C1; V7",
4657 "input": "\ufff9\u200c\uff61\u66f3\u2f91\ud800\udef0\u226f",
4658 "output": null
4659 },
4660 {
4661 "comment": "C1; V7",
4662 "input": "\ufff9\u200c\uff61\u66f3\u2f91\ud800\udef0>\u0338",
4663 "output": null
4664 },
4665 {
4666 "comment": "C1; V7",
4667 "input": "\ufff9\u200c\u3002\u66f3\u897e\ud800\udef0\u226f",
4668 "output": null
4669 },
4670 {
4671 "comment": "C1; V7",
4672 "input": "\ufff9\u200c\u3002\u66f3\u897e\ud800\udef0>\u0338",
4673 "output": null
4674 },
4675 {
4676 "comment": "V7",
4677 "input": "xn--vn7c.xn--hdh501y8wvfs5h",
4678 "output": null
4679 },
4680 {
4681 "comment": "C1; V7",
4682 "input": "xn--0ug2139f.xn--hdh501y8wvfs5h",
4683 "output": null
4684 },
4685 {
4686 "comment": "V7",
4687 "input": "\u226f\u2488\u3002\u00df",
4688 "output": null
4689 },
4690 {
4691 "comment": "V7",
4692 "input": ">\u0338\u2488\u3002\u00df",
4693 "output": null
4694 },
4695 {
4696 "comment": "A4_2 (ignored)",
4697 "input": "\u226f1.\u3002\u00df",
4698 "output": "xn--1-ogo..xn--zca"
4699 },
4700 {
4701 "comment": "A4_2 (ignored)",
4702 "input": ">\u03381.\u3002\u00df",
4703 "output": "xn--1-ogo..xn--zca"
4704 },
4705 {
4706 "comment": "A4_2 (ignored)",
4707 "input": ">\u03381.\u3002SS",
4708 "output": "xn--1-ogo..ss"
4709 },
4710 {
4711 "comment": "A4_2 (ignored)",
4712 "input": "\u226f1.\u3002SS",
4713 "output": "xn--1-ogo..ss"
4714 },
4715 {
4716 "comment": "A4_2 (ignored)",
4717 "input": "\u226f1.\u3002ss",
4718 "output": "xn--1-ogo..ss"
4719 },
4720 {
4721 "comment": "A4_2 (ignored)",
4722 "input": ">\u03381.\u3002ss",
4723 "output": "xn--1-ogo..ss"
4724 },
4725 {
4726 "comment": "A4_2 (ignored)",
4727 "input": ">\u03381.\u3002Ss",
4728 "output": "xn--1-ogo..ss"
4729 },
4730 {
4731 "comment": "A4_2 (ignored)",
4732 "input": "\u226f1.\u3002Ss",
4733 "output": "xn--1-ogo..ss"
4734 },
4735 {
4736 "comment": "A4_2 (ignored)",
4737 "input": "xn--1-ogo..ss",
4738 "output": "xn--1-ogo..ss"
4739 },
4740 {
4741 "comment": "A4_2 (ignored)",
4742 "input": "xn--1-ogo..xn--zca",
4743 "output": "xn--1-ogo..xn--zca"
4744 },
4745 {
4746 "comment": "V7",
4747 "input": ">\u0338\u2488\u3002SS",
4748 "output": null
4749 },
4750 {
4751 "comment": "V7",
4752 "input": "\u226f\u2488\u3002SS",
4753 "output": null
4754 },
4755 {
4756 "comment": "V7",
4757 "input": "\u226f\u2488\u3002ss",
4758 "output": null
4759 },
4760 {
4761 "comment": "V7",
4762 "input": ">\u0338\u2488\u3002ss",
4763 "output": null
4764 },
4765 {
4766 "comment": "V7",
4767 "input": ">\u0338\u2488\u3002Ss",
4768 "output": null
4769 },
4770 {
4771 "comment": "V7",
4772 "input": "\u226f\u2488\u3002Ss",
4773 "output": null
4774 },
4775 {
4776 "comment": "V7",
4777 "input": "xn--hdh84f.ss",
4778 "output": null
4779 },
4780 {
4781 "comment": "V7",
4782 "input": "xn--hdh84f.xn--zca",
4783 "output": null
4784 },
4785 {
4786 "comment": "C1",
4787 "input": "\u200c\uff61\u2260",
4788 "output": null
4789 },
4790 {
4791 "comment": "C1",
4792 "input": "\u200c\uff61=\u0338",
4793 "output": null
4794 },
4795 {
4796 "comment": "C1",
4797 "input": "\u200c\u3002\u2260",
4798 "output": null
4799 },
4800 {
4801 "comment": "C1",
4802 "input": "\u200c\u3002=\u0338",
4803 "output": null
4804 },
4805 {
4806 "comment": "A4_2 (ignored)",
4807 "input": ".xn--1ch",
4808 "output": ".xn--1ch"
4809 },
4810 {
4811 "comment": "C1",
4812 "input": "xn--0ug.xn--1ch",
4813 "output": null
4814 },
4815 {
4816 "comment": "C1; V6",
4817 "input": "\ud805\uddbf\ud836\ude14.\u185f\ud805\uddbf\u1b42\u200c",
4818 "output": null
4819 },
4820 {
4821 "comment": "V6",
4822 "input": "xn--461dw464a.xn--v8e29loy65a",
4823 "output": null
4824 },
4825 {
4826 "comment": "C1; V6",
4827 "input": "xn--461dw464a.xn--v8e29ldzfo952a",
4828 "output": null
4829 },
4830 {
4831 "comment": "C2; V6; V7; V3 (ignored)",
4832 "input": "\uda12\udcf3\u200d\uda05\udf71.\ud81a\udf34\u2183\u2260-",
4833 "output": null
4834 },
4835 {
4836 "comment": "C2; V6; V7; V3 (ignored)",
4837 "input": "\uda12\udcf3\u200d\uda05\udf71.\ud81a\udf34\u2183=\u0338-",
4838 "output": null
4839 },
4840 {
4841 "comment": "C2; V6; V7; V3 (ignored)",
4842 "input": "\uda12\udcf3\u200d\uda05\udf71.\ud81a\udf34\u2184=\u0338-",
4843 "output": null
4844 },
4845 {
4846 "comment": "C2; V6; V7; V3 (ignored)",
4847 "input": "\uda12\udcf3\u200d\uda05\udf71.\ud81a\udf34\u2184\u2260-",
4848 "output": null
4849 },
4850 {
4851 "comment": "V6; V7; V3 (ignored)",
4852 "input": "xn--6j00chy9a.xn----81n51bt713h",
4853 "output": null
4854 },
4855 {
4856 "comment": "C2; V6; V7; V3 (ignored)",
4857 "input": "xn--1ug15151gkb5a.xn----81n51bt713h",
4858 "output": null
4859 },
4860 {
4861 "comment": "V6; V7; V3 (ignored)",
4862 "input": "xn--6j00chy9a.xn----61n81bt713h",
4863 "output": null
4864 },
4865 {
4866 "comment": "C2; V6; V7; V3 (ignored)",
4867 "input": "xn--1ug15151gkb5a.xn----61n81bt713h",
4868 "output": null
4869 },
4870 {
4871 "comment": "C2; V6",
4872 "input": "\u200d\u252e\udb40\uddd0\uff0e\u0c00\u0c4d\u1734\u200d",
4873 "output": null
4874 },
4875 {
4876 "comment": "C2; V6",
4877 "input": "\u200d\u252e\udb40\uddd0.\u0c00\u0c4d\u1734\u200d",
4878 "output": null
4879 },
4880 {
4881 "comment": "V6",
4882 "input": "xn--kxh.xn--eoc8m432a",
4883 "output": null
4884 },
4885 {
4886 "comment": "C2; V6",
4887 "input": "xn--1ug04r.xn--eoc8m432a40i",
4888 "output": null
4889 },
4890 {
4891 "comment": "V7; U1 (ignored)",
4892 "input": "\udaa5\udeaa\uff61\ud83c\udd02",
4893 "output": null
4894 },
4895 {
4896 "comment": "V7; U1 (ignored)",
4897 "input": "\udaa5\udeaa\u30021,",
4898 "output": null
4899 },
4900 {
4901 "comment": "V7; U1 (ignored)",
4902 "input": "xn--n433d.1,",
4903 "output": null
4904 },
4905 {
4906 "comment": "V7",
4907 "input": "xn--n433d.xn--v07h",
4908 "output": null
4909 },
4910 {
4911 "comment": "V6",
4912 "input": "\ud804\udf68\u520d.\ud83d\udee6",
4913 "output": null
4914 },
4915 {
4916 "comment": "V6",
4917 "input": "xn--rbry728b.xn--y88h",
4918 "output": null
4919 },
4920 {
4921 "comment": "V6; V7",
4922 "input": "\udb40\udf0f3\uff61\u1bf1\ud835\udfd2",
4923 "output": null
4924 },
4925 {
4926 "comment": "V6; V7",
4927 "input": "\udb40\udf0f3\u3002\u1bf14",
4928 "output": null
4929 },
4930 {
4931 "comment": "V6; V7",
4932 "input": "xn--3-ib31m.xn--4-pql",
4933 "output": null
4934 },
4935 {
4936 "comment": "V7",
4937 "input": "\ua87d\u226f\uff0e\udaaf\udc80\uda0b\udcc4",
4938 "output": null
4939 },
4940 {
4941 "comment": "V7",
4942 "input": "\ua87d>\u0338\uff0e\udaaf\udc80\uda0b\udcc4",
4943 "output": null
4944 },
4945 {
4946 "comment": "V7",
4947 "input": "\ua87d\u226f.\udaaf\udc80\uda0b\udcc4",
4948 "output": null
4949 },
4950 {
4951 "comment": "V7",
4952 "input": "\ua87d>\u0338.\udaaf\udc80\uda0b\udcc4",
4953 "output": null
4954 },
4955 {
4956 "comment": "V7",
4957 "input": "xn--hdh8193c.xn--5z40cp629b",
4958 "output": null
4959 },
4960 {
4961 "comment": "C2; V7",
4962 "input": "\udb43\udcdb\uff0e\u200d\u492b\u2260\u10be",
4963 "output": null
4964 },
4965 {
4966 "comment": "C2; V7",
4967 "input": "\udb43\udcdb\uff0e\u200d\u492b=\u0338\u10be",
4968 "output": null
4969 },
4970 {
4971 "comment": "C2; V7",
4972 "input": "\udb43\udcdb.\u200d\u492b\u2260\u10be",
4973 "output": null
4974 },
4975 {
4976 "comment": "C2; V7",
4977 "input": "\udb43\udcdb.\u200d\u492b=\u0338\u10be",
4978 "output": null
4979 },
4980 {
4981 "comment": "C2; V7",
4982 "input": "\udb43\udcdb.\u200d\u492b=\u0338\u2d1e",
4983 "output": null
4984 },
4985 {
4986 "comment": "C2; V7",
4987 "input": "\udb43\udcdb.\u200d\u492b\u2260\u2d1e",
4988 "output": null
4989 },
4990 {
4991 "comment": "V7",
4992 "input": "xn--1t56e.xn--1ch153bqvw",
4993 "output": null
4994 },
4995 {
4996 "comment": "C2; V7",
4997 "input": "xn--1t56e.xn--1ug73gzzpwi3a",
4998 "output": null
4999 },
5000 {
5001 "comment": "C2; V7",
5002 "input": "\udb43\udcdb\uff0e\u200d\u492b=\u0338\u2d1e",
5003 "output": null
5004 },
5005 {
5006 "comment": "C2; V7",
5007 "input": "\udb43\udcdb\uff0e\u200d\u492b\u2260\u2d1e",
5008 "output": null
5009 },
5010 {
5011 "comment": "V7",
5012 "input": "xn--1t56e.xn--2nd141ghl2a",
5013 "output": null
5014 },
5015 {
5016 "comment": "C2; V7",
5017 "input": "xn--1t56e.xn--2nd159e9vb743e",
5018 "output": null
5019 },
5020 {
5021 "comment": "V6",
5022 "input": "3.1.xn--110d.j",
5023 "output": null
5024 },
5025 {
5026 "comment": "V7",
5027 "input": "xn--tshd3512p.j",
5028 "output": null
5029 },
5030 {
5031 "comment": "V6",
5032 "input": "\u034a\uff0e\ud802\ude0e",
5033 "output": null
5034 },
5035 {
5036 "comment": "V6",
5037 "input": "\u034a.\ud802\ude0e",
5038 "output": null
5039 },
5040 {
5041 "comment": "V6",
5042 "input": "xn--oua.xn--mr9c",
5043 "output": null
5044 },
5045 {
5046 "comment": "V6",
5047 "input": "\ud6c9\u226e\uff61\u0e34",
5048 "output": null
5049 },
5050 {
5051 "comment": "V6",
5052 "input": "\u1112\u116e\u11ac<\u0338\uff61\u0e34",
5053 "output": null
5054 },
5055 {
5056 "comment": "V6",
5057 "input": "\ud6c9\u226e\u3002\u0e34",
5058 "output": null
5059 },
5060 {
5061 "comment": "V6",
5062 "input": "\u1112\u116e\u11ac<\u0338\u3002\u0e34",
5063 "output": null
5064 },
5065 {
5066 "comment": "V6",
5067 "input": "xn--gdh2512e.xn--i4c",
5068 "output": null
5069 },
5070 {
5071 "comment": "V3 (ignored)",
5072 "input": "\ua846\u3002\u2183\u0fb5\ub1ae-",
5073 "output": "xn--fc9a.xn----qmg097k469k"
5074 },
5075 {
5076 "comment": "V3 (ignored)",
5077 "input": "\ua846\u3002\u2183\u0fb5\u1102\u116a\u11c1-",
5078 "output": "xn--fc9a.xn----qmg097k469k"
5079 },
5080 {
5081 "comment": "V3 (ignored)",
5082 "input": "\ua846\u3002\u2184\u0fb5\u1102\u116a\u11c1-",
5083 "output": "xn--fc9a.xn----qmg097k469k"
5084 },
5085 {
5086 "comment": "V3 (ignored)",
5087 "input": "\ua846\u3002\u2184\u0fb5\ub1ae-",
5088 "output": "xn--fc9a.xn----qmg097k469k"
5089 },
5090 {
5091 "comment": "V3 (ignored)",
5092 "input": "xn--fc9a.xn----qmg097k469k",
5093 "output": "xn--fc9a.xn----qmg097k469k"
5094 },
5095 {
5096 "comment": "V7; V3 (ignored)",
5097 "input": "xn--fc9a.xn----qmg787k869k",
5098 "output": null
5099 },
5100 {
5101 "comment": "V7",
5102 "input": "\u226e\ud834\udd76\uff0e\ud987\udc81\uaaec\u2e48\udb82\udd6d",
5103 "output": null
5104 },
5105 {
5106 "comment": "V7",
5107 "input": "<\u0338\ud834\udd76\uff0e\ud987\udc81\uaaec\u2e48\udb82\udd6d",
5108 "output": null
5109 },
5110 {
5111 "comment": "V7",
5112 "input": "\u226e\ud834\udd76.\ud987\udc81\uaaec\u2e48\udb82\udd6d",
5113 "output": null
5114 },
5115 {
5116 "comment": "V7",
5117 "input": "<\u0338\ud834\udd76.\ud987\udc81\uaaec\u2e48\udb82\udd6d",
5118 "output": null
5119 },
5120 {
5121 "comment": "V7",
5122 "input": "xn--gdh.xn--4tjx101bsg00ds9pyc",
5123 "output": null
5124 },
5125 {
5126 "comment": "V7",
5127 "input": "xn--gdh0880o.xn--4tjx101bsg00ds9pyc",
5128 "output": null
5129 },
5130 {
5131 "comment": "C2; V6; V7",
5132 "input": "\ud805\udc42\uff61\u200d\udb55\udf80\ud83d\udf95\uda54\udc54",
5133 "output": null
5134 },
5135 {
5136 "comment": "C2; V6; V7",
5137 "input": "\ud805\udc42\u3002\u200d\udb55\udf80\ud83d\udf95\uda54\udc54",
5138 "output": null
5139 },
5140 {
5141 "comment": "V6; V7",
5142 "input": "xn--8v1d.xn--ye9h41035a2qqs",
5143 "output": null
5144 },
5145 {
5146 "comment": "C2; V6; V7",
5147 "input": "xn--8v1d.xn--1ug1386plvx1cd8vya",
5148 "output": null
5149 },
5150 {
5151 "input": "\u00df\u09c1\u1ded\u3002\u06208\u2085",
5152 "output": "xn--zca266bwrr.xn--85-psd"
5153 },
5154 {
5155 "input": "\u00df\u09c1\u1ded\u3002\u062085",
5156 "output": "xn--zca266bwrr.xn--85-psd"
5157 },
5158 {
5159 "input": "SS\u09c1\u1ded\u3002\u062085",
5160 "output": "xn--ss-e2f077r.xn--85-psd"
5161 },
5162 {
5163 "input": "ss\u09c1\u1ded\u3002\u062085",
5164 "output": "xn--ss-e2f077r.xn--85-psd"
5165 },
5166 {
5167 "input": "Ss\u09c1\u1ded\u3002\u062085",
5168 "output": "xn--ss-e2f077r.xn--85-psd"
5169 },
5170 {
5171 "input": "xn--ss-e2f077r.xn--85-psd",
5172 "output": "xn--ss-e2f077r.xn--85-psd"
5173 },
5174 {
5175 "input": "ss\u09c1\u1ded.\u062085",
5176 "output": "xn--ss-e2f077r.xn--85-psd"
5177 },
5178 {
5179 "input": "SS\u09c1\u1ded.\u062085",
5180 "output": "xn--ss-e2f077r.xn--85-psd"
5181 },
5182 {
5183 "input": "Ss\u09c1\u1ded.\u062085",
5184 "output": "xn--ss-e2f077r.xn--85-psd"
5185 },
5186 {
5187 "input": "xn--zca266bwrr.xn--85-psd",
5188 "output": "xn--zca266bwrr.xn--85-psd"
5189 },
5190 {
5191 "input": "\u00df\u09c1\u1ded.\u062085",
5192 "output": "xn--zca266bwrr.xn--85-psd"
5193 },
5194 {
5195 "input": "SS\u09c1\u1ded\u3002\u06208\u2085",
5196 "output": "xn--ss-e2f077r.xn--85-psd"
5197 },
5198 {
5199 "input": "ss\u09c1\u1ded\u3002\u06208\u2085",
5200 "output": "xn--ss-e2f077r.xn--85-psd"
5201 },
5202 {
5203 "input": "Ss\u09c1\u1ded\u3002\u06208\u2085",
5204 "output": "xn--ss-e2f077r.xn--85-psd"
5205 },
5206 {
5207 "input": "\ufe0d\u0a9b\u3002\u5d68",
5208 "output": "xn--6dc.xn--tot"
5209 },
5210 {
5211 "input": "xn--6dc.xn--tot",
5212 "output": "xn--6dc.xn--tot"
5213 },
5214 {
5215 "input": "\u0a9b.\u5d68",
5216 "output": "xn--6dc.xn--tot"
5217 },
5218 {
5219 "comment": "C1; V6; V7; V3 (ignored)",
5220 "input": "-\u200c\u2499\ud802\udee5\uff61\ud836\ude35",
5221 "output": null
5222 },
5223 {
5224 "comment": "C1; V6; V3 (ignored)",
5225 "input": "-\u200c18.\ud802\udee5\u3002\ud836\ude35",
5226 "output": null
5227 },
5228 {
5229 "comment": "V6; V3 (ignored)",
5230 "input": "-18.xn--rx9c.xn--382h",
5231 "output": null
5232 },
5233 {
5234 "comment": "C1; V6; V3 (ignored)",
5235 "input": "xn---18-9m0a.xn--rx9c.xn--382h",
5236 "output": null
5237 },
5238 {
5239 "comment": "V6; V7; V3 (ignored)",
5240 "input": "xn----ddps939g.xn--382h",
5241 "output": null
5242 },
5243 {
5244 "comment": "C1; V6; V7; V3 (ignored)",
5245 "input": "xn----sgn18r3191a.xn--382h",
5246 "output": null
5247 },
5248 {
5249 "comment": "V7",
5250 "input": "\ufe05\ufe12\u3002\ud858\udc3e\u1ce0",
5251 "output": null
5252 },
5253 {
5254 "comment": "A4_2 (ignored)",
5255 "input": "\ufe05\u3002\u3002\ud858\udc3e\u1ce0",
5256 "output": "..xn--t6f5138v"
5257 },
5258 {
5259 "comment": "A4_2 (ignored)",
5260 "input": "..xn--t6f5138v",
5261 "output": "..xn--t6f5138v"
5262 },
5263 {
5264 "comment": "V7",
5265 "input": "xn--y86c.xn--t6f5138v",
5266 "output": null
5267 },
5268 {
5269 "input": "xn--t6f5138v",
5270 "output": "xn--t6f5138v"
5271 },
5272 {
5273 "input": "\ud858\udc3e\u1ce0",
5274 "output": "xn--t6f5138v"
5275 },
5276 {
5277 "comment": "C1; V7; V3 (ignored)",
5278 "input": "\udb41\udd4f\uff0e-\u00df\u200c\u2260",
5279 "output": null
5280 },
5281 {
5282 "comment": "C1; V7; V3 (ignored)",
5283 "input": "\udb41\udd4f\uff0e-\u00df\u200c=\u0338",
5284 "output": null
5285 },
5286 {
5287 "comment": "C1; V7; V3 (ignored)",
5288 "input": "\udb41\udd4f.-\u00df\u200c\u2260",
5289 "output": null
5290 },
5291 {
5292 "comment": "C1; V7; V3 (ignored)",
5293 "input": "\udb41\udd4f.-\u00df\u200c=\u0338",
5294 "output": null
5295 },
5296 {
5297 "comment": "C1; V7; V3 (ignored)",
5298 "input": "\udb41\udd4f.-SS\u200c=\u0338",
5299 "output": null
5300 },
5301 {
5302 "comment": "C1; V7; V3 (ignored)",
5303 "input": "\udb41\udd4f.-SS\u200c\u2260",
5304 "output": null
5305 },
5306 {
5307 "comment": "C1; V7; V3 (ignored)",
5308 "input": "\udb41\udd4f.-ss\u200c\u2260",
5309 "output": null
5310 },
5311 {
5312 "comment": "C1; V7; V3 (ignored)",
5313 "input": "\udb41\udd4f.-ss\u200c=\u0338",
5314 "output": null
5315 },
5316 {
5317 "comment": "C1; V7; V3 (ignored)",
5318 "input": "\udb41\udd4f.-Ss\u200c=\u0338",
5319 "output": null
5320 },
5321 {
5322 "comment": "C1; V7; V3 (ignored)",
5323 "input": "\udb41\udd4f.-Ss\u200c\u2260",
5324 "output": null
5325 },
5326 {
5327 "comment": "V7; V3 (ignored)",
5328 "input": "xn--u836e.xn---ss-gl2a",
5329 "output": null
5330 },
5331 {
5332 "comment": "C1; V7; V3 (ignored)",
5333 "input": "xn--u836e.xn---ss-cn0at5l",
5334 "output": null
5335 },
5336 {
5337 "comment": "C1; V7; V3 (ignored)",
5338 "input": "xn--u836e.xn----qfa750ve7b",
5339 "output": null
5340 },
5341 {
5342 "comment": "C1; V7; V3 (ignored)",
5343 "input": "\udb41\udd4f\uff0e-SS\u200c=\u0338",
5344 "output": null
5345 },
5346 {
5347 "comment": "C1; V7; V3 (ignored)",
5348 "input": "\udb41\udd4f\uff0e-SS\u200c\u2260",
5349 "output": null
5350 },
5351 {
5352 "comment": "C1; V7; V3 (ignored)",
5353 "input": "\udb41\udd4f\uff0e-ss\u200c\u2260",
5354 "output": null
5355 },
5356 {
5357 "comment": "C1; V7; V3 (ignored)",
5358 "input": "\udb41\udd4f\uff0e-ss\u200c=\u0338",
5359 "output": null
5360 },
5361 {
5362 "comment": "C1; V7; V3 (ignored)",
5363 "input": "\udb41\udd4f\uff0e-Ss\u200c=\u0338",
5364 "output": null
5365 },
5366 {
5367 "comment": "C1; V7; V3 (ignored)",
5368 "input": "\udb41\udd4f\uff0e-Ss\u200c\u2260",
5369 "output": null
5370 },
5371 {
5372 "comment": "C1",
5373 "input": "\u1859\u200c\uff61\u226f\ud800\udef2\u2260",
5374 "output": null
5375 },
5376 {
5377 "comment": "C1",
5378 "input": "\u1859\u200c\uff61>\u0338\ud800\udef2=\u0338",
5379 "output": null
5380 },
5381 {
5382 "comment": "C1",
5383 "input": "\u1859\u200c\u3002\u226f\ud800\udef2\u2260",
5384 "output": null
5385 },
5386 {
5387 "comment": "C1",
5388 "input": "\u1859\u200c\u3002>\u0338\ud800\udef2=\u0338",
5389 "output": null
5390 },
5391 {
5392 "input": "xn--p8e.xn--1ch3a7084l",
5393 "output": "xn--p8e.xn--1ch3a7084l"
5394 },
5395 {
5396 "input": "\u1859.\u226f\ud800\udef2\u2260",
5397 "output": "xn--p8e.xn--1ch3a7084l"
5398 },
5399 {
5400 "input": "\u1859.>\u0338\ud800\udef2=\u0338",
5401 "output": "xn--p8e.xn--1ch3a7084l"
5402 },
5403 {
5404 "comment": "C1",
5405 "input": "xn--p8e650b.xn--1ch3a7084l",
5406 "output": null
5407 },
5408 {
5409 "comment": "V7",
5410 "input": "\uda7b\udd5b\u0613.\u10b5",
5411 "output": null
5412 },
5413 {
5414 "comment": "V7",
5415 "input": "\uda7b\udd5b\u0613.\u2d15",
5416 "output": null
5417 },
5418 {
5419 "comment": "V7",
5420 "input": "xn--1fb94204l.xn--dlj",
5421 "output": null
5422 },
5423 {
5424 "comment": "V7",
5425 "input": "xn--1fb94204l.xn--tnd",
5426 "output": null
5427 },
5428 {
5429 "comment": "C1; V7",
5430 "input": "\u200c\udb40\udd37\uff61\uda09\udc41",
5431 "output": null
5432 },
5433 {
5434 "comment": "C1; V7",
5435 "input": "\u200c\udb40\udd37\u3002\uda09\udc41",
5436 "output": null
5437 },
5438 {
5439 "comment": "V7; A4_2 (ignored)",
5440 "input": ".xn--w720c",
5441 "output": null
5442 },
5443 {
5444 "comment": "C1; V7",
5445 "input": "xn--0ug.xn--w720c",
5446 "output": null
5447 },
5448 {
5449 "comment": "C2; V7",
5450 "input": "\u2488\u0dd6\u7105.\udb1e\udc59\u200d\ua85f",
5451 "output": null
5452 },
5453 {
5454 "comment": "C2; V6; V7",
5455 "input": "1.\u0dd6\u7105.\udb1e\udc59\u200d\ua85f",
5456 "output": null
5457 },
5458 {
5459 "comment": "V6; V7",
5460 "input": "1.xn--t1c6981c.xn--4c9a21133d",
5461 "output": null
5462 },
5463 {
5464 "comment": "C2; V6; V7",
5465 "input": "1.xn--t1c6981c.xn--1ugz184c9lw7i",
5466 "output": null
5467 },
5468 {
5469 "comment": "V7",
5470 "input": "xn--t1c337io97c.xn--4c9a21133d",
5471 "output": null
5472 },
5473 {
5474 "comment": "C2; V7",
5475 "input": "xn--t1c337io97c.xn--1ugz184c9lw7i",
5476 "output": null
5477 },
5478 {
5479 "comment": "V6",
5480 "input": "\ud804\uddc0\u258d.\u205e\u1830",
5481 "output": null
5482 },
5483 {
5484 "comment": "V6",
5485 "input": "xn--9zh3057f.xn--j7e103b",
5486 "output": null
5487 },
5488 {
5489 "comment": "C2; V3 (ignored)",
5490 "input": "-3.\u200d\u30cc\u1895",
5491 "output": null
5492 },
5493 {
5494 "comment": "V3 (ignored)",
5495 "input": "-3.xn--fbf115j",
5496 "output": "-3.xn--fbf115j"
5497 },
5498 {
5499 "comment": "C2; V3 (ignored)",
5500 "input": "-3.xn--fbf739aq5o",
5501 "output": null
5502 },
5503 {
5504 "comment": "C1; C2",
5505 "input": "\u2132\u17d2\u200d\uff61\u2260\u200d\u200c",
5506 "output": null
5507 },
5508 {
5509 "comment": "C1; C2",
5510 "input": "\u2132\u17d2\u200d\uff61=\u0338\u200d\u200c",
5511 "output": null
5512 },
5513 {
5514 "comment": "C1; C2",
5515 "input": "\u2132\u17d2\u200d\u3002\u2260\u200d\u200c",
5516 "output": null
5517 },
5518 {
5519 "comment": "C1; C2",
5520 "input": "\u2132\u17d2\u200d\u3002=\u0338\u200d\u200c",
5521 "output": null
5522 },
5523 {
5524 "comment": "C1; C2",
5525 "input": "\u214e\u17d2\u200d\u3002=\u0338\u200d\u200c",
5526 "output": null
5527 },
5528 {
5529 "comment": "C1; C2",
5530 "input": "\u214e\u17d2\u200d\u3002\u2260\u200d\u200c",
5531 "output": null
5532 },
5533 {
5534 "input": "xn--u4e969b.xn--1ch",
5535 "output": "xn--u4e969b.xn--1ch"
5536 },
5537 {
5538 "input": "\u214e\u17d2.\u2260",
5539 "output": "xn--u4e969b.xn--1ch"
5540 },
5541 {
5542 "input": "\u214e\u17d2.=\u0338",
5543 "output": "xn--u4e969b.xn--1ch"
5544 },
5545 {
5546 "input": "\u2132\u17d2.=\u0338",
5547 "output": "xn--u4e969b.xn--1ch"
5548 },
5549 {
5550 "input": "\u2132\u17d2.\u2260",
5551 "output": "xn--u4e969b.xn--1ch"
5552 },
5553 {
5554 "comment": "C1; C2",
5555 "input": "xn--u4e823bq1a.xn--0ugb89o",
5556 "output": null
5557 },
5558 {
5559 "comment": "C1; C2",
5560 "input": "\u214e\u17d2\u200d\uff61=\u0338\u200d\u200c",
5561 "output": null
5562 },
5563 {
5564 "comment": "C1; C2",
5565 "input": "\u214e\u17d2\u200d\uff61\u2260\u200d\u200c",
5566 "output": null
5567 },
5568 {
5569 "comment": "V7",
5570 "input": "xn--u4e319b.xn--1ch",
5571 "output": null
5572 },
5573 {
5574 "comment": "C1; C2; V7",
5575 "input": "xn--u4e823bcza.xn--0ugb89o",
5576 "output": null
5577 },
5578 {
5579 "comment": "V7",
5580 "input": "\ud9a9\udd2f\u0fa8\uff0e\u226f",
5581 "output": null
5582 },
5583 {
5584 "comment": "V7",
5585 "input": "\ud9a9\udd2f\u0fa8\uff0e>\u0338",
5586 "output": null
5587 },
5588 {
5589 "comment": "V7",
5590 "input": "\ud9a9\udd2f\u0fa8.\u226f",
5591 "output": null
5592 },
5593 {
5594 "comment": "V7",
5595 "input": "\ud9a9\udd2f\u0fa8.>\u0338",
5596 "output": null
5597 },
5598 {
5599 "comment": "V7",
5600 "input": "xn--4fd57150h.xn--hdh",
5601 "output": null
5602 },
5603 {
5604 "comment": "V6",
5605 "input": "\ud802\ude3f\udb40\udd8c\u9e2e\ud805\udeb6.\u03c2",
5606 "output": null
5607 },
5608 {
5609 "comment": "V6",
5610 "input": "\ud802\ude3f\udb40\udd8c\u9e2e\ud805\udeb6.\u03a3",
5611 "output": null
5612 },
5613 {
5614 "comment": "V6",
5615 "input": "\ud802\ude3f\udb40\udd8c\u9e2e\ud805\udeb6.\u03c3",
5616 "output": null
5617 },
5618 {
5619 "comment": "V6",
5620 "input": "xn--l76a726rt2h.xn--4xa",
5621 "output": null
5622 },
5623 {
5624 "comment": "V6",
5625 "input": "xn--l76a726rt2h.xn--3xa",
5626 "output": null
5627 },
5628 {
5629 "comment": "C1; V3 (ignored)",
5630 "input": "\u03c2-\u3002\u200c\ud835\udfed-",
5631 "output": null
5632 },
5633 {
5634 "comment": "C1; V3 (ignored)",
5635 "input": "\u03c2-\u3002\u200c1-",
5636 "output": null
5637 },
5638 {
5639 "comment": "C1; V3 (ignored)",
5640 "input": "\u03a3-\u3002\u200c1-",
5641 "output": null
5642 },
5643 {
5644 "comment": "C1; V3 (ignored)",
5645 "input": "\u03c3-\u3002\u200c1-",
5646 "output": null
5647 },
5648 {
5649 "comment": "V3 (ignored)",
5650 "input": "xn----zmb.1-",
5651 "output": "xn----zmb.1-"
5652 },
5653 {
5654 "comment": "C1; V3 (ignored)",
5655 "input": "xn----zmb.xn--1--i1t",
5656 "output": null
5657 },
5658 {
5659 "comment": "C1; V3 (ignored)",
5660 "input": "xn----xmb.xn--1--i1t",
5661 "output": null
5662 },
5663 {
5664 "comment": "C1; V3 (ignored)",
5665 "input": "\u03a3-\u3002\u200c\ud835\udfed-",
5666 "output": null
5667 },
5668 {
5669 "comment": "C1; V3 (ignored)",
5670 "input": "\u03c3-\u3002\u200c\ud835\udfed-",
5671 "output": null
5672 },
5673 {
5674 "comment": "V6",
5675 "input": "\u1734-\u0ce2\uff0e\udb40\udd29\u10a4",
5676 "output": null
5677 },
5678 {
5679 "comment": "V6",
5680 "input": "\u1734-\u0ce2.\udb40\udd29\u10a4",
5681 "output": null
5682 },
5683 {
5684 "comment": "V6",
5685 "input": "\u1734-\u0ce2.\udb40\udd29\u2d04",
5686 "output": null
5687 },
5688 {
5689 "comment": "V6",
5690 "input": "xn----ggf830f.xn--vkj",
5691 "output": null
5692 },
5693 {
5694 "comment": "V6",
5695 "input": "\u1734-\u0ce2\uff0e\udb40\udd29\u2d04",
5696 "output": null
5697 },
5698 {
5699 "comment": "V6; V7",
5700 "input": "xn----ggf830f.xn--cnd",
5701 "output": null
5702 },
5703 {
5704 "comment": "C2; V6; V7",
5705 "input": "\u200d\u3002\ud838\udc18\u2488\ua84d\u64c9",
5706 "output": null
5707 },
5708 {
5709 "comment": "C2; V6",
5710 "input": "\u200d\u3002\ud838\udc181.\ua84d\u64c9",
5711 "output": null
5712 },
5713 {
5714 "comment": "V6; A4_2 (ignored)",
5715 "input": ".xn--1-1p4r.xn--s7uv61m",
5716 "output": null
5717 },
5718 {
5719 "comment": "C2; V6",
5720 "input": "xn--1ug.xn--1-1p4r.xn--s7uv61m",
5721 "output": null
5722 },
5723 {
5724 "comment": "V6; V7; A4_2 (ignored)",
5725 "input": ".xn--tsh026uql4bew9p",
5726 "output": null
5727 },
5728 {
5729 "comment": "C2; V6; V7",
5730 "input": "xn--1ug.xn--tsh026uql4bew9p",
5731 "output": null
5732 },
5733 {
5734 "comment": "V7",
5735 "input": "\u2ad0\uff61\u10c0-\udacd\udc22",
5736 "output": null
5737 },
5738 {
5739 "comment": "V7",
5740 "input": "\u2ad0\u3002\u10c0-\udacd\udc22",
5741 "output": null
5742 },
5743 {
5744 "comment": "V7",
5745 "input": "\u2ad0\u3002\u2d20-\udacd\udc22",
5746 "output": null
5747 },
5748 {
5749 "comment": "V7",
5750 "input": "xn--r3i.xn----2wst7439i",
5751 "output": null
5752 },
5753 {
5754 "comment": "V7",
5755 "input": "\u2ad0\uff61\u2d20-\udacd\udc22",
5756 "output": null
5757 },
5758 {
5759 "comment": "V7",
5760 "input": "xn--r3i.xn----z1g58579u",
5761 "output": null
5762 },
5763 {
5764 "comment": "V6",
5765 "input": "\ud805\udc42\u25ca\uff0e\u299f\u2220",
5766 "output": null
5767 },
5768 {
5769 "comment": "V6",
5770 "input": "\ud805\udc42\u25ca.\u299f\u2220",
5771 "output": null
5772 },
5773 {
5774 "comment": "V6",
5775 "input": "xn--01h3338f.xn--79g270a",
5776 "output": null
5777 },
5778 {
5779 "comment": "V7",
5780 "input": "\ud5c1\udb21\udd99\u0e3a\udb28\udf5a\u3002\u06ba\ud835\udfdc",
5781 "output": null
5782 },
5783 {
5784 "comment": "V7",
5785 "input": "\u1112\u1164\u11bc\udb21\udd99\u0e3a\udb28\udf5a\u3002\u06ba\ud835\udfdc",
5786 "output": null
5787 },
5788 {
5789 "comment": "V7",
5790 "input": "\ud5c1\udb21\udd99\u0e3a\udb28\udf5a\u3002\u06ba4",
5791 "output": null
5792 },
5793 {
5794 "comment": "V7",
5795 "input": "\u1112\u1164\u11bc\udb21\udd99\u0e3a\udb28\udf5a\u3002\u06ba4",
5796 "output": null
5797 },
5798 {
5799 "comment": "V7",
5800 "input": "xn--o4c1723h8g85gt4ya.xn--4-dvc",
5801 "output": null
5802 },
5803 {
5804 "comment": "V6; V7",
5805 "input": "\ua953.\u033d\ud804\udcbd\u998b",
5806 "output": null
5807 },
5808 {
5809 "comment": "V6; V7",
5810 "input": "xn--3j9a.xn--bua0708eqzrd",
5811 "output": null
5812 },
5813 {
5814 "comment": "C2; V7",
5815 "input": "\udae2\udedd\uda69\udef8\u200d\uff61\u4716",
5816 "output": null
5817 },
5818 {
5819 "comment": "C2; V7",
5820 "input": "\udae2\udedd\uda69\udef8\u200d\u3002\u4716",
5821 "output": null
5822 },
5823 {
5824 "comment": "V7",
5825 "input": "xn--g138cxw05a.xn--k0o",
5826 "output": null
5827 },
5828 {
5829 "comment": "C2; V7",
5830 "input": "xn--1ug30527h9mxi.xn--k0o",
5831 "output": null
5832 },
5833 {
5834 "comment": "C2; U1 (ignored)",
5835 "input": "\u186f\u2689\u59f6\ud83c\udd09\uff0e\u06f7\u200d\ud83c\udfaa\u200d",
5836 "output": null
5837 },
5838 {
5839 "comment": "C2; U1 (ignored)",
5840 "input": "\u186f\u2689\u59f68,.\u06f7\u200d\ud83c\udfaa\u200d",
5841 "output": null
5842 },
5843 {
5844 "comment": "U1 (ignored)",
5845 "input": "xn--8,-g9oy26fzu4d.xn--kmb6733w",
5846 "output": "xn--8,-g9oy26fzu4d.xn--kmb6733w"
5847 },
5848 {
5849 "comment": "C2; U1 (ignored)",
5850 "input": "xn--8,-g9oy26fzu4d.xn--kmb859ja94998b",
5851 "output": null
5852 },
5853 {
5854 "comment": "V7",
5855 "input": "xn--c9e433epi4b3j20a.xn--kmb6733w",
5856 "output": null
5857 },
5858 {
5859 "comment": "C2; V7",
5860 "input": "xn--c9e433epi4b3j20a.xn--kmb859ja94998b",
5861 "output": null
5862 },
5863 {
5864 "comment": "C1; V6; V7; V3 (ignored)",
5865 "input": "\u135f\u1848\u200c\uff0e\ufe12-\ud81b\udf90-",
5866 "output": null
5867 },
5868 {
5869 "comment": "C1; V6; V3 (ignored); A4_2 (ignored)",
5870 "input": "\u135f\u1848\u200c.\u3002-\ud81b\udf90-",
5871 "output": null
5872 },
5873 {
5874 "comment": "V6; V3 (ignored); A4_2 (ignored)",
5875 "input": "xn--b7d82w..xn-----pe4u",
5876 "output": null
5877 },
5878 {
5879 "comment": "C1; V6; V3 (ignored); A4_2 (ignored)",
5880 "input": "xn--b7d82wo4h..xn-----pe4u",
5881 "output": null
5882 },
5883 {
5884 "comment": "V6; V7; V3 (ignored)",
5885 "input": "xn--b7d82w.xn-----c82nz547a",
5886 "output": null
5887 },
5888 {
5889 "comment": "C1; V6; V7; V3 (ignored)",
5890 "input": "xn--b7d82wo4h.xn-----c82nz547a",
5891 "output": null
5892 },
5893 {
5894 "comment": "V6; V3 (ignored)",
5895 "input": "\ud836\ude5c\u3002-\u0b4d\u10ab",
5896 "output": null
5897 },
5898 {
5899 "comment": "V6; V3 (ignored)",
5900 "input": "\ud836\ude5c\u3002-\u0b4d\u2d0b",
5901 "output": null
5902 },
5903 {
5904 "comment": "V6; V3 (ignored)",
5905 "input": "xn--792h.xn----bse820x",
5906 "output": null
5907 },
5908 {
5909 "comment": "V6; V7; V3 (ignored)",
5910 "input": "xn--792h.xn----bse632b",
5911 "output": null
5912 },
5913 {
5914 "comment": "C1",
5915 "input": "\ud835\udff5\u9681\u2bee\uff0e\u180d\u200c",
5916 "output": null
5917 },
5918 {
5919 "comment": "C1",
5920 "input": "9\u9681\u2bee.\u180d\u200c",
5921 "output": null
5922 },
5923 {
5924 "comment": "A4_2 (ignored)",
5925 "input": "xn--9-mfs8024b.",
5926 "output": "xn--9-mfs8024b."
5927 },
5928 {
5929 "comment": "A4_2 (ignored)",
5930 "input": "9\u9681\u2bee.",
5931 "output": "xn--9-mfs8024b."
5932 },
5933 {
5934 "comment": "C1",
5935 "input": "xn--9-mfs8024b.xn--0ug",
5936 "output": null
5937 },
5938 {
5939 "comment": "C1; V6",
5940 "input": "\u1bac\u10ac\u200c\u0325\u3002\ud835\udff8",
5941 "output": null
5942 },
5943 {
5944 "comment": "V6",
5945 "input": "xn--mta176jjjm.c",
5946 "output": null
5947 },
5948 {
5949 "comment": "C1; V6",
5950 "input": "xn--mta176j97cl2q.c",
5951 "output": null
5952 },
5953 {
5954 "comment": "C1; V6",
5955 "input": "\u1bac\u2d0c\u200c\u0325\u3002\ud835\udff8",
5956 "output": null
5957 },
5958 {
5959 "comment": "V6; V7",
5960 "input": "xn--mta930emri.c",
5961 "output": null
5962 },
5963 {
5964 "comment": "C1; V6; V7",
5965 "input": "xn--mta930emribme.c",
5966 "output": null
5967 },
5968 {
5969 "comment": "V6; V7",
5970 "input": "\udb40\udd01\u035f\u2fb6\uff61\u2087\ufe12\ub207\u226e",
5971 "output": null
5972 },
5973 {
5974 "comment": "V6; V7",
5975 "input": "\udb40\udd01\u035f\u2fb6\uff61\u2087\ufe12\u1102\u116e\u11aa<\u0338",
5976 "output": null
5977 },
5978 {
5979 "comment": "V6",
5980 "input": "\udb40\udd01\u035f\u98db\u30027\u3002\ub207\u226e",
5981 "output": null
5982 },
5983 {
5984 "comment": "V6",
5985 "input": "\udb40\udd01\u035f\u98db\u30027\u3002\u1102\u116e\u11aa<\u0338",
5986 "output": null
5987 },
5988 {
5989 "comment": "V6",
5990 "input": "xn--9ua0567e.7.xn--gdh6767c",
5991 "output": null
5992 },
5993 {
5994 "comment": "V6; V7",
5995 "input": "xn--9ua0567e.xn--7-ngou006d1ttc",
5996 "output": null
5997 },
5998 {
5999 "input": "xn--2ib43l.xn--te6h",
6000 "output": "xn--2ib43l.xn--te6h"
6001 },
6002 {
6003 "input": "\u067d\u0943.\ud83a\udd35",
6004 "output": "xn--2ib43l.xn--te6h"
6005 },
6006 {
6007 "input": "\u067d\u0943.\ud83a\udd13",
6008 "output": "xn--2ib43l.xn--te6h"
6009 },
6010 {
6011 "comment": "C1; V6",
6012 "input": "\u200c\u3002\uffa0\u0f84\u0f96",
6013 "output": null
6014 },
6015 {
6016 "comment": "C1; V6",
6017 "input": "\u200c\u3002\u1160\u0f84\u0f96",
6018 "output": null
6019 },
6020 {
6021 "comment": "V6; A4_2 (ignored)",
6022 "input": ".xn--3ed0b",
6023 "output": null
6024 },
6025 {
6026 "comment": "C1; V6",
6027 "input": "xn--0ug.xn--3ed0b",
6028 "output": null
6029 },
6030 {
6031 "comment": "V7; A4_2 (ignored)",
6032 "input": ".xn--3ed0b20h",
6033 "output": null
6034 },
6035 {
6036 "comment": "C1; V7",
6037 "input": "xn--0ug.xn--3ed0b20h",
6038 "output": null
6039 },
6040 {
6041 "comment": "V7; A4_2 (ignored)",
6042 "input": ".xn--3ed0by082k",
6043 "output": null
6044 },
6045 {
6046 "comment": "C1; V7",
6047 "input": "xn--0ug.xn--3ed0by082k",
6048 "output": null
6049 },
6050 {
6051 "comment": "C2; V7",
6052 "input": "\u226f\ud9f5\ude05\uff0e\u200d\ud800\udd7c\uda88\udddb",
6053 "output": null
6054 },
6055 {
6056 "comment": "C2; V7",
6057 "input": ">\u0338\ud9f5\ude05\uff0e\u200d\ud800\udd7c\uda88\udddb",
6058 "output": null
6059 },
6060 {
6061 "comment": "C2; V7",
6062 "input": "\u226f\ud9f5\ude05.\u200d\ud800\udd7c\uda88\udddb",
6063 "output": null
6064 },
6065 {
6066 "comment": "C2; V7",
6067 "input": ">\u0338\ud9f5\ude05.\u200d\ud800\udd7c\uda88\udddb",
6068 "output": null
6069 },
6070 {
6071 "comment": "V7",
6072 "input": "xn--hdh84488f.xn--xy7cw2886b",
6073 "output": null
6074 },
6075 {
6076 "comment": "C2; V7",
6077 "input": "xn--hdh84488f.xn--1ug8099fbjp4e",
6078 "output": null
6079 },
6080 {
6081 "input": "\ua9d0\u04c0\u1baa\u08f6\uff0e\ub235",
6082 "output": "xn--s5a04sn4u297k.xn--2e1b"
6083 },
6084 {
6085 "input": "\ua9d0\u04c0\u1baa\u08f6\uff0e\u1102\u116f\u11bc",
6086 "output": "xn--s5a04sn4u297k.xn--2e1b"
6087 },
6088 {
6089 "input": "\ua9d0\u04c0\u1baa\u08f6.\ub235",
6090 "output": "xn--s5a04sn4u297k.xn--2e1b"
6091 },
6092 {
6093 "input": "\ua9d0\u04c0\u1baa\u08f6.\u1102\u116f\u11bc",
6094 "output": "xn--s5a04sn4u297k.xn--2e1b"
6095 },
6096 {
6097 "input": "\ua9d0\u04cf\u1baa\u08f6.\u1102\u116f\u11bc",
6098 "output": "xn--s5a04sn4u297k.xn--2e1b"
6099 },
6100 {
6101 "input": "\ua9d0\u04cf\u1baa\u08f6.\ub235",
6102 "output": "xn--s5a04sn4u297k.xn--2e1b"
6103 },
6104 {
6105 "input": "xn--s5a04sn4u297k.xn--2e1b",
6106 "output": "xn--s5a04sn4u297k.xn--2e1b"
6107 },
6108 {
6109 "input": "\ua9d0\u04cf\u1baa\u08f6\uff0e\u1102\u116f\u11bc",
6110 "output": "xn--s5a04sn4u297k.xn--2e1b"
6111 },
6112 {
6113 "input": "\ua9d0\u04cf\u1baa\u08f6\uff0e\ub235",
6114 "output": "xn--s5a04sn4u297k.xn--2e1b"
6115 },
6116 {
6117 "comment": "V7",
6118 "input": "xn--d5a07sn4u297k.xn--2e1b",
6119 "output": null
6120 },
6121 {
6122 "comment": "V6; V7",
6123 "input": "\ua8ea\uff61\ud818\udd3f\ud804\uddbe\udb40\uddd7",
6124 "output": null
6125 },
6126 {
6127 "comment": "V6; V7",
6128 "input": "\ua8ea\u3002\ud818\udd3f\ud804\uddbe\udb40\uddd7",
6129 "output": null
6130 },
6131 {
6132 "comment": "V6; V7",
6133 "input": "xn--3g9a.xn--ud1dz07k",
6134 "output": null
6135 },
6136 {
6137 "comment": "V7",
6138 "input": "\udadd\udcd3\ud805\udeb3\u3002\ud903\uddff\u226f\u2f87",
6139 "output": null
6140 },
6141 {
6142 "comment": "V7",
6143 "input": "\udadd\udcd3\ud805\udeb3\u3002\ud903\uddff>\u0338\u2f87",
6144 "output": null
6145 },
6146 {
6147 "comment": "V7",
6148 "input": "\udadd\udcd3\ud805\udeb3\u3002\ud903\uddff\u226f\u821b",
6149 "output": null
6150 },
6151 {
6152 "comment": "V7",
6153 "input": "\udadd\udcd3\ud805\udeb3\u3002\ud903\uddff>\u0338\u821b",
6154 "output": null
6155 },
6156 {
6157 "comment": "V7",
6158 "input": "xn--3e2d79770c.xn--hdh0088abyy1c",
6159 "output": null
6160 },
6161 {
6162 "comment": "A4_2 (ignored)",
6163 "input": "xn--9hb7344k.",
6164 "output": "xn--9hb7344k."
6165 },
6166 {
6167 "comment": "A4_2 (ignored)",
6168 "input": "\ud802\udec7\u0661.",
6169 "output": "xn--9hb7344k."
6170 },
6171 {
6172 "comment": "C1; V7",
6173 "input": "\ud944\udd48\u782a\u226f\u1891\uff61\u226f\ud836\ude5a\uda0f\udd14\u200c",
6174 "output": null
6175 },
6176 {
6177 "comment": "C1; V7",
6178 "input": "\ud944\udd48\u782a>\u0338\u1891\uff61>\u0338\ud836\ude5a\uda0f\udd14\u200c",
6179 "output": null
6180 },
6181 {
6182 "comment": "C1; V7",
6183 "input": "\ud944\udd48\u782a\u226f\u1891\u3002\u226f\ud836\ude5a\uda0f\udd14\u200c",
6184 "output": null
6185 },
6186 {
6187 "comment": "C1; V7",
6188 "input": "\ud944\udd48\u782a>\u0338\u1891\u3002>\u0338\ud836\ude5a\uda0f\udd14\u200c",
6189 "output": null
6190 },
6191 {
6192 "comment": "V7",
6193 "input": "xn--bbf561cf95e57y3e.xn--hdh0834o7mj6b",
6194 "output": null
6195 },
6196 {
6197 "comment": "C1; V7",
6198 "input": "xn--bbf561cf95e57y3e.xn--0ugz6gc910ejro8c",
6199 "output": null
6200 },
6201 {
6202 "comment": "V6",
6203 "input": "\u10c5.\ud804\udd33\u32b8",
6204 "output": null
6205 },
6206 {
6207 "comment": "V6",
6208 "input": "\u10c5.\ud804\udd3343",
6209 "output": null
6210 },
6211 {
6212 "comment": "V6",
6213 "input": "\u2d25.\ud804\udd3343",
6214 "output": null
6215 },
6216 {
6217 "comment": "V6",
6218 "input": "xn--tlj.xn--43-274o",
6219 "output": null
6220 },
6221 {
6222 "comment": "V6",
6223 "input": "\u2d25.\ud804\udd33\u32b8",
6224 "output": null
6225 },
6226 {
6227 "comment": "V6; V7",
6228 "input": "xn--9nd.xn--43-274o",
6229 "output": null
6230 },
6231 {
6232 "comment": "V7",
6233 "input": "\ud91e\udea8\udb40\udd09\uffa0\u0fb7.\ud9a1\udfb0\ua953",
6234 "output": null
6235 },
6236 {
6237 "comment": "V7",
6238 "input": "\ud91e\udea8\udb40\udd09\u1160\u0fb7.\ud9a1\udfb0\ua953",
6239 "output": null
6240 },
6241 {
6242 "comment": "V7",
6243 "input": "xn--kgd72212e.xn--3j9au7544a",
6244 "output": null
6245 },
6246 {
6247 "comment": "V7",
6248 "input": "xn--kgd36f9z57y.xn--3j9au7544a",
6249 "output": null
6250 },
6251 {
6252 "comment": "V7",
6253 "input": "xn--kgd7493jee34a.xn--3j9au7544a",
6254 "output": null
6255 },
6256 {
6257 "comment": "C1; V6",
6258 "input": "\u0618.\u06f3\u200c\ua953",
6259 "output": null
6260 },
6261 {
6262 "comment": "V6",
6263 "input": "xn--6fb.xn--gmb0524f",
6264 "output": null
6265 },
6266 {
6267 "comment": "C1; V6",
6268 "input": "xn--6fb.xn--gmb469jjf1h",
6269 "output": null
6270 },
6271 {
6272 "comment": "V7",
6273 "input": "\u184c\uff0e\ufe12\u1891",
6274 "output": null
6275 },
6276 {
6277 "comment": "A4_2 (ignored)",
6278 "input": "\u184c.\u3002\u1891",
6279 "output": "xn--c8e..xn--bbf"
6280 },
6281 {
6282 "comment": "A4_2 (ignored)",
6283 "input": "xn--c8e..xn--bbf",
6284 "output": "xn--c8e..xn--bbf"
6285 },
6286 {
6287 "comment": "V7",
6288 "input": "xn--c8e.xn--bbf9168i",
6289 "output": null
6290 },
6291 {
6292 "comment": "V7",
6293 "input": "\ud83b\uddcf\u3002\u1822\uda0d\ude06",
6294 "output": null
6295 },
6296 {
6297 "comment": "V7",
6298 "input": "xn--hd7h.xn--46e66060j",
6299 "output": null
6300 },
6301 {
6302 "comment": "V7",
6303 "input": "\ud9f0\uded4\udb40\udd8e\udb40\udd97\ud807\udc95\u3002\u226e",
6304 "output": null
6305 },
6306 {
6307 "comment": "V7",
6308 "input": "\ud9f0\uded4\udb40\udd8e\udb40\udd97\ud807\udc95\u3002<\u0338",
6309 "output": null
6310 },
6311 {
6312 "comment": "V7",
6313 "input": "xn--4m3dv4354a.xn--gdh",
6314 "output": null
6315 },
6316 {
6317 "comment": "V6; A4_2 (ignored)",
6318 "input": "\udb40\udda6.\u08e3\u6680\u2260",
6319 "output": null
6320 },
6321 {
6322 "comment": "V6; A4_2 (ignored)",
6323 "input": "\udb40\udda6.\u08e3\u6680=\u0338",
6324 "output": null
6325 },
6326 {
6327 "comment": "V6; A4_2 (ignored)",
6328 "input": ".xn--m0b461k3g2c",
6329 "output": null
6330 },
6331 {
6332 "comment": "C2; V7",
6333 "input": "\u40b9\udbb9\udd85\ud800\udee6\uff0e\u200d",
6334 "output": null
6335 },
6336 {
6337 "comment": "C2; V7",
6338 "input": "\u40b9\udbb9\udd85\ud800\udee6.\u200d",
6339 "output": null
6340 },
6341 {
6342 "comment": "V7; A4_2 (ignored)",
6343 "input": "xn--0on3543c5981i.",
6344 "output": null
6345 },
6346 {
6347 "comment": "C2; V7",
6348 "input": "xn--0on3543c5981i.xn--1ug",
6349 "output": null
6350 },
6351 {
6352 "comment": "V7",
6353 "input": "\ufe12\uff61\u10a3\u226f",
6354 "output": null
6355 },
6356 {
6357 "comment": "V7",
6358 "input": "\ufe12\uff61\u10a3>\u0338",
6359 "output": null
6360 },
6361 {
6362 "comment": "A4_2 (ignored)",
6363 "input": "\u3002\u3002\u10a3\u226f",
6364 "output": "..xn--hdh782b"
6365 },
6366 {
6367 "comment": "A4_2 (ignored)",
6368 "input": "\u3002\u3002\u10a3>\u0338",
6369 "output": "..xn--hdh782b"
6370 },
6371 {
6372 "comment": "A4_2 (ignored)",
6373 "input": "\u3002\u3002\u2d03>\u0338",
6374 "output": "..xn--hdh782b"
6375 },
6376 {
6377 "comment": "A4_2 (ignored)",
6378 "input": "\u3002\u3002\u2d03\u226f",
6379 "output": "..xn--hdh782b"
6380 },
6381 {
6382 "comment": "A4_2 (ignored)",
6383 "input": "..xn--hdh782b",
6384 "output": "..xn--hdh782b"
6385 },
6386 {
6387 "comment": "V7",
6388 "input": "\ufe12\uff61\u2d03>\u0338",
6389 "output": null
6390 },
6391 {
6392 "comment": "V7",
6393 "input": "\ufe12\uff61\u2d03\u226f",
6394 "output": null
6395 },
6396 {
6397 "comment": "V7",
6398 "input": "xn--y86c.xn--hdh782b",
6399 "output": null
6400 },
6401 {
6402 "comment": "V7; A4_2 (ignored)",
6403 "input": "..xn--bnd622g",
6404 "output": null
6405 },
6406 {
6407 "comment": "V7",
6408 "input": "xn--y86c.xn--bnd622g",
6409 "output": null
6410 },
6411 {
6412 "comment": "V7",
6413 "input": "\u7b83\u10c1-\udb40\udc5d\uff61\u2260-\ud83e\udd16",
6414 "output": null
6415 },
6416 {
6417 "comment": "V7",
6418 "input": "\u7b83\u10c1-\udb40\udc5d\uff61=\u0338-\ud83e\udd16",
6419 "output": null
6420 },
6421 {
6422 "comment": "V7",
6423 "input": "\u7b83\u10c1-\udb40\udc5d\u3002\u2260-\ud83e\udd16",
6424 "output": null
6425 },
6426 {
6427 "comment": "V7",
6428 "input": "\u7b83\u10c1-\udb40\udc5d\u3002=\u0338-\ud83e\udd16",
6429 "output": null
6430 },
6431 {
6432 "comment": "V7",
6433 "input": "\u7b83\u2d21-\udb40\udc5d\u3002=\u0338-\ud83e\udd16",
6434 "output": null
6435 },
6436 {
6437 "comment": "V7",
6438 "input": "\u7b83\u2d21-\udb40\udc5d\u3002\u2260-\ud83e\udd16",
6439 "output": null
6440 },
6441 {
6442 "comment": "V7",
6443 "input": "xn----4wsr321ay823p.xn----tfot873s",
6444 "output": null
6445 },
6446 {
6447 "comment": "V7",
6448 "input": "\u7b83\u2d21-\udb40\udc5d\uff61=\u0338-\ud83e\udd16",
6449 "output": null
6450 },
6451 {
6452 "comment": "V7",
6453 "input": "\u7b83\u2d21-\udb40\udc5d\uff61\u2260-\ud83e\udd16",
6454 "output": null
6455 },
6456 {
6457 "comment": "V7",
6458 "input": "xn----11g3013fy8x5m.xn----tfot873s",
6459 "output": null
6460 },
6461 {
6462 "input": "\u07e5.\u06b5",
6463 "output": "xn--dtb.xn--okb"
6464 },
6465 {
6466 "input": "xn--dtb.xn--okb",
6467 "output": "xn--dtb.xn--okb"
6468 },
6469 {
6470 "comment": "A4_2 (ignored)",
6471 "input": ".xn--3e6h",
6472 "output": ".xn--3e6h"
6473 },
6474 {
6475 "input": "xn--3e6h",
6476 "output": "xn--3e6h"
6477 },
6478 {
6479 "input": "\ud83a\udd3f",
6480 "output": "xn--3e6h"
6481 },
6482 {
6483 "input": "\ud83a\udd1d",
6484 "output": "xn--3e6h"
6485 },
6486 {
6487 "comment": "C1; V6; V3 (ignored)",
6488 "input": "\u103a\u200d\u200c\u3002-\u200c",
6489 "output": null
6490 },
6491 {
6492 "comment": "V6; V3 (ignored)",
6493 "input": "xn--bkd.-",
6494 "output": null
6495 },
6496 {
6497 "comment": "C1; V6; V3 (ignored)",
6498 "input": "xn--bkd412fca.xn----sgn",
6499 "output": null
6500 },
6501 {
6502 "comment": "V6; V7",
6503 "input": "\ufe12\uff61\u1b44\u1849",
6504 "output": null
6505 },
6506 {
6507 "comment": "V6; A4_2 (ignored)",
6508 "input": "\u3002\u3002\u1b44\u1849",
6509 "output": null
6510 },
6511 {
6512 "comment": "V6; A4_2 (ignored)",
6513 "input": "..xn--87e93m",
6514 "output": null
6515 },
6516 {
6517 "comment": "V6; V7",
6518 "input": "xn--y86c.xn--87e93m",
6519 "output": null
6520 },
6521 {
6522 "comment": "C2; V7; V3 (ignored)",
6523 "input": "-\u1bab\ufe12\u200d.\ud90b\udd88\ud957\ude53",
6524 "output": null
6525 },
6526 {
6527 "comment": "C2; V7; V3 (ignored)",
6528 "input": "-\u1bab\u3002\u200d.\ud90b\udd88\ud957\ude53",
6529 "output": null
6530 },
6531 {
6532 "comment": "V7; V3 (ignored); A4_2 (ignored)",
6533 "input": "xn----qml..xn--x50zy803a",
6534 "output": null
6535 },
6536 {
6537 "comment": "C2; V7; V3 (ignored)",
6538 "input": "xn----qml.xn--1ug.xn--x50zy803a",
6539 "output": null
6540 },
6541 {
6542 "comment": "V7; V3 (ignored)",
6543 "input": "xn----qml1407i.xn--x50zy803a",
6544 "output": null
6545 },
6546 {
6547 "comment": "C2; V7; V3 (ignored)",
6548 "input": "xn----qmlv7tw180a.xn--x50zy803a",
6549 "output": null
6550 },
6551 {
6552 "comment": "V7",
6553 "input": "\udb42\uddae.\u226f\ud838\udc06",
6554 "output": null
6555 },
6556 {
6557 "comment": "V7",
6558 "input": "\udb42\uddae.>\u0338\ud838\udc06",
6559 "output": null
6560 },
6561 {
6562 "comment": "V7",
6563 "input": "xn--t546e.xn--hdh5166o",
6564 "output": null
6565 },
6566 {
6567 "input": "\u06b9\uff0e\u1873\u115f",
6568 "output": "xn--skb.xn--g9e"
6569 },
6570 {
6571 "input": "\u06b9.\u1873\u115f",
6572 "output": "xn--skb.xn--g9e"
6573 },
6574 {
6575 "input": "xn--skb.xn--g9e",
6576 "output": "xn--skb.xn--g9e"
6577 },
6578 {
6579 "input": "\u06b9.\u1873",
6580 "output": "xn--skb.xn--g9e"
6581 },
6582 {
6583 "comment": "V7",
6584 "input": "xn--skb.xn--osd737a",
6585 "output": null
6586 },
6587 {
6588 "comment": "V7",
6589 "input": "\u3a1b\ud823\udc4e.\ufe12\ud835\udfd5\u0d01",
6590 "output": null
6591 },
6592 {
6593 "comment": "A4_2 (ignored)",
6594 "input": "\u3a1b\ud823\udc4e.\u30027\u0d01",
6595 "output": "xn--mbm8237g..xn--7-7hf"
6596 },
6597 {
6598 "comment": "A4_2 (ignored)",
6599 "input": "xn--mbm8237g..xn--7-7hf",
6600 "output": "xn--mbm8237g..xn--7-7hf"
6601 },
6602 {
6603 "comment": "V7",
6604 "input": "xn--mbm8237g.xn--7-7hf1526p",
6605 "output": null
6606 },
6607 {
6608 "comment": "C1",
6609 "input": "\u00df\u200c\uaaf6\u18a5\uff0e\u22b6\u10c1\u10b6",
6610 "output": null
6611 },
6612 {
6613 "comment": "C1",
6614 "input": "\u00df\u200c\uaaf6\u18a5.\u22b6\u10c1\u10b6",
6615 "output": null
6616 },
6617 {
6618 "comment": "C1",
6619 "input": "\u00df\u200c\uaaf6\u18a5.\u22b6\u2d21\u2d16",
6620 "output": null
6621 },
6622 {
6623 "comment": "C1",
6624 "input": "SS\u200c\uaaf6\u18a5.\u22b6\u10c1\u10b6",
6625 "output": null
6626 },
6627 {
6628 "comment": "C1",
6629 "input": "ss\u200c\uaaf6\u18a5.\u22b6\u2d21\u2d16",
6630 "output": null
6631 },
6632 {
6633 "comment": "C1",
6634 "input": "Ss\u200c\uaaf6\u18a5.\u22b6\u10c1\u2d16",
6635 "output": null
6636 },
6637 {
6638 "input": "xn--ss-4epx629f.xn--ifh802b6a",
6639 "output": "xn--ss-4epx629f.xn--ifh802b6a"
6640 },
6641 {
6642 "input": "ss\uaaf6\u18a5.\u22b6\u2d21\u2d16",
6643 "output": "xn--ss-4epx629f.xn--ifh802b6a"
6644 },
6645 {
6646 "input": "SS\uaaf6\u18a5.\u22b6\u10c1\u10b6",
6647 "output": "xn--ss-4epx629f.xn--ifh802b6a"
6648 },
6649 {
6650 "input": "Ss\uaaf6\u18a5.\u22b6\u10c1\u2d16",
6651 "output": "xn--ss-4epx629f.xn--ifh802b6a"
6652 },
6653 {
6654 "comment": "C1",
6655 "input": "xn--ss-4ep585bkm5p.xn--ifh802b6a",
6656 "output": null
6657 },
6658 {
6659 "comment": "C1",
6660 "input": "xn--zca682johfi89m.xn--ifh802b6a",
6661 "output": null
6662 },
6663 {
6664 "comment": "C1",
6665 "input": "\u00df\u200c\uaaf6\u18a5\uff0e\u22b6\u2d21\u2d16",
6666 "output": null
6667 },
6668 {
6669 "comment": "C1",
6670 "input": "SS\u200c\uaaf6\u18a5\uff0e\u22b6\u10c1\u10b6",
6671 "output": null
6672 },
6673 {
6674 "comment": "C1",
6675 "input": "ss\u200c\uaaf6\u18a5\uff0e\u22b6\u2d21\u2d16",
6676 "output": null
6677 },
6678 {
6679 "comment": "C1",
6680 "input": "Ss\u200c\uaaf6\u18a5\uff0e\u22b6\u10c1\u2d16",
6681 "output": null
6682 },
6683 {
6684 "comment": "V7",
6685 "input": "xn--ss-4epx629f.xn--5nd703gyrh",
6686 "output": null
6687 },
6688 {
6689 "comment": "C1; V7",
6690 "input": "xn--ss-4ep585bkm5p.xn--5nd703gyrh",
6691 "output": null
6692 },
6693 {
6694 "comment": "V7",
6695 "input": "xn--ss-4epx629f.xn--undv409k",
6696 "output": null
6697 },
6698 {
6699 "comment": "C1; V7",
6700 "input": "xn--ss-4ep585bkm5p.xn--undv409k",
6701 "output": null
6702 },
6703 {
6704 "comment": "C1; V7",
6705 "input": "xn--zca682johfi89m.xn--undv409k",
6706 "output": null
6707 },
6708 {
6709 "comment": "C2; V7",
6710 "input": "\u200d\u3002\u03c2\udb40\udc49",
6711 "output": null
6712 },
6713 {
6714 "comment": "C2; V7",
6715 "input": "\u200d\u3002\u03a3\udb40\udc49",
6716 "output": null
6717 },
6718 {
6719 "comment": "C2; V7",
6720 "input": "\u200d\u3002\u03c3\udb40\udc49",
6721 "output": null
6722 },
6723 {
6724 "comment": "V7; A4_2 (ignored)",
6725 "input": ".xn--4xa24344p",
6726 "output": null
6727 },
6728 {
6729 "comment": "C2; V7",
6730 "input": "xn--1ug.xn--4xa24344p",
6731 "output": null
6732 },
6733 {
6734 "comment": "C2; V7",
6735 "input": "xn--1ug.xn--3xa44344p",
6736 "output": null
6737 },
6738 {
6739 "comment": "V7; V3 (ignored)",
6740 "input": "\u2492\uda61\ude19\uda8f\udce0\ud805\udcc0.-\udb3a\udc4a",
6741 "output": null
6742 },
6743 {
6744 "comment": "V7; V3 (ignored)",
6745 "input": "11.\uda61\ude19\uda8f\udce0\ud805\udcc0.-\udb3a\udc4a",
6746 "output": null
6747 },
6748 {
6749 "comment": "V7; V3 (ignored)",
6750 "input": "11.xn--uz1d59632bxujd.xn----x310m",
6751 "output": null
6752 },
6753 {
6754 "comment": "V7; V3 (ignored)",
6755 "input": "xn--3shy698frsu9dt1me.xn----x310m",
6756 "output": null
6757 },
6758 {
6759 "comment": "C2; V3 (ignored)",
6760 "input": "-\uff61\u200d",
6761 "output": null
6762 },
6763 {
6764 "comment": "C2; V3 (ignored)",
6765 "input": "-\u3002\u200d",
6766 "output": null
6767 },
6768 {
6769 "comment": "V3 (ignored); A4_2 (ignored)",
6770 "input": "-.",
6771 "output": "-."
6772 },
6773 {
6774 "comment": "C2; V3 (ignored)",
6775 "input": "-.xn--1ug",
6776 "output": null
6777 },
6778 {
6779 "comment": "V7",
6780 "input": "\u126c\uda12\udc3c\ud8c5\uddf6\uff61\ud802\ude2c\ud835\udfe0",
6781 "output": null
6782 },
6783 {
6784 "comment": "V7",
6785 "input": "\u126c\uda12\udc3c\ud8c5\uddf6\u3002\ud802\ude2c8",
6786 "output": null
6787 },
6788 {
6789 "comment": "V7",
6790 "input": "xn--d0d41273c887z.xn--8-ob5i",
6791 "output": null
6792 },
6793 {
6794 "comment": "C2; V3 (ignored)",
6795 "input": "\u03c2\u200d-.\u10c3\ud859\udfd9",
6796 "output": null
6797 },
6798 {
6799 "comment": "C2; V3 (ignored)",
6800 "input": "\u03c2\u200d-.\u2d23\ud859\udfd9",
6801 "output": null
6802 },
6803 {
6804 "comment": "C2; V3 (ignored)",
6805 "input": "\u03a3\u200d-.\u10c3\ud859\udfd9",
6806 "output": null
6807 },
6808 {
6809 "comment": "C2; V3 (ignored)",
6810 "input": "\u03c3\u200d-.\u2d23\ud859\udfd9",
6811 "output": null
6812 },
6813 {
6814 "comment": "V3 (ignored)",
6815 "input": "xn----zmb.xn--rlj2573p",
6816 "output": "xn----zmb.xn--rlj2573p"
6817 },
6818 {
6819 "comment": "C2; V3 (ignored)",
6820 "input": "xn----zmb048s.xn--rlj2573p",
6821 "output": null
6822 },
6823 {
6824 "comment": "C2; V3 (ignored)",
6825 "input": "xn----xmb348s.xn--rlj2573p",
6826 "output": null
6827 },
6828 {
6829 "comment": "V7; V3 (ignored)",
6830 "input": "xn----zmb.xn--7nd64871a",
6831 "output": null
6832 },
6833 {
6834 "comment": "C2; V7; V3 (ignored)",
6835 "input": "xn----zmb048s.xn--7nd64871a",
6836 "output": null
6837 },
6838 {
6839 "comment": "C2; V7; V3 (ignored)",
6840 "input": "xn----xmb348s.xn--7nd64871a",
6841 "output": null
6842 },
6843 {
6844 "input": "\u2260\u3002\ud83d\udfb3\ud835\udff2",
6845 "output": "xn--1ch.xn--6-dl4s"
6846 },
6847 {
6848 "input": "=\u0338\u3002\ud83d\udfb3\ud835\udff2",
6849 "output": "xn--1ch.xn--6-dl4s"
6850 },
6851 {
6852 "input": "\u2260\u3002\ud83d\udfb36",
6853 "output": "xn--1ch.xn--6-dl4s"
6854 },
6855 {
6856 "input": "=\u0338\u3002\ud83d\udfb36",
6857 "output": "xn--1ch.xn--6-dl4s"
6858 },
6859 {
6860 "input": "xn--1ch.xn--6-dl4s",
6861 "output": "xn--1ch.xn--6-dl4s"
6862 },
6863 {
6864 "input": "\u2260.\ud83d\udfb36",
6865 "output": "xn--1ch.xn--6-dl4s"
6866 },
6867 {
6868 "input": "=\u0338.\ud83d\udfb36",
6869 "output": "xn--1ch.xn--6-dl4s"
6870 },
6871 {
6872 "comment": "V7",
6873 "input": "\udad6\udf3d.\u8814",
6874 "output": null
6875 },
6876 {
6877 "comment": "V7",
6878 "input": "xn--g747d.xn--xl2a",
6879 "output": null
6880 },
6881 {
6882 "comment": "C2; V6",
6883 "input": "\u08e6\u200d\uff0e\ubf3d",
6884 "output": null
6885 },
6886 {
6887 "comment": "C2; V6",
6888 "input": "\u08e6\u200d\uff0e\u1108\u1168\u11c0",
6889 "output": null
6890 },
6891 {
6892 "comment": "C2; V6",
6893 "input": "\u08e6\u200d.\ubf3d",
6894 "output": null
6895 },
6896 {
6897 "comment": "C2; V6",
6898 "input": "\u08e6\u200d.\u1108\u1168\u11c0",
6899 "output": null
6900 },
6901 {
6902 "comment": "V6",
6903 "input": "xn--p0b.xn--e43b",
6904 "output": null
6905 },
6906 {
6907 "comment": "C2; V6",
6908 "input": "xn--p0b869i.xn--e43b",
6909 "output": null
6910 },
6911 {
6912 "comment": "V7",
6913 "input": "\ud8f6\ude3d\uff0e\ud8ef\ude15",
6914 "output": null
6915 },
6916 {
6917 "comment": "V7",
6918 "input": "\ud8f6\ude3d.\ud8ef\ude15",
6919 "output": null
6920 },
6921 {
6922 "comment": "V7",
6923 "input": "xn--pr3x.xn--rv7w",
6924 "output": null
6925 },
6926 {
6927 "comment": "V7",
6928 "input": "\ud802\udfc0\ud803\ude09\ud83a\uddcf\u3002\ud949\udea7\u2084\u10ab\ud8cb\ude6b",
6929 "output": null
6930 },
6931 {
6932 "comment": "V7",
6933 "input": "\ud802\udfc0\ud803\ude09\ud83a\uddcf\u3002\ud949\udea74\u10ab\ud8cb\ude6b",
6934 "output": null
6935 },
6936 {
6937 "comment": "V7",
6938 "input": "\ud802\udfc0\ud803\ude09\ud83a\uddcf\u3002\ud949\udea74\u2d0b\ud8cb\ude6b",
6939 "output": null
6940 },
6941 {
6942 "comment": "V7",
6943 "input": "xn--039c42bq865a.xn--4-wvs27840bnrzm",
6944 "output": null
6945 },
6946 {
6947 "comment": "V7",
6948 "input": "\ud802\udfc0\ud803\ude09\ud83a\uddcf\u3002\ud949\udea7\u2084\u2d0b\ud8cb\ude6b",
6949 "output": null
6950 },
6951 {
6952 "comment": "V7",
6953 "input": "xn--039c42bq865a.xn--4-t0g49302fnrzm",
6954 "output": null
6955 },
6956 {
6957 "comment": "V6",
6958 "input": "\ud835\udfd3\u3002\u06d7",
6959 "output": null
6960 },
6961 {
6962 "comment": "V6",
6963 "input": "5\u3002\u06d7",
6964 "output": null
6965 },
6966 {
6967 "comment": "V6",
6968 "input": "5.xn--nlb",
6969 "output": null
6970 },
6971 {
6972 "comment": "C1; V7",
6973 "input": "\u200c\udaab\ude29.\u2f95",
6974 "output": null
6975 },
6976 {
6977 "comment": "C1; V7",
6978 "input": "\u200c\udaab\ude29.\u8c37",
6979 "output": null
6980 },
6981 {
6982 "comment": "V7",
6983 "input": "xn--i183d.xn--6g3a",
6984 "output": null
6985 },
6986 {
6987 "comment": "C1; V7",
6988 "input": "xn--0ug26167i.xn--6g3a",
6989 "output": null
6990 },
6991 {
6992 "comment": "C1; C2; V7; V3 (ignored)",
6993 "input": "\ufe12\udafb\udc07\u200d.-\u073c\u200c",
6994 "output": null
6995 },
6996 {
6997 "comment": "C1; C2; V7; V3 (ignored); A4_2 (ignored)",
6998 "input": "\u3002\udafb\udc07\u200d.-\u073c\u200c",
6999 "output": null
7000 },
7001 {
7002 "comment": "V7; V3 (ignored); A4_2 (ignored)",
7003 "input": ".xn--hh50e.xn----t2c",
7004 "output": null
7005 },
7006 {
7007 "comment": "C1; C2; V7; V3 (ignored); A4_2 (ignored)",
7008 "input": ".xn--1ug05310k.xn----t2c071q",
7009 "output": null
7010 },
7011 {
7012 "comment": "V7; V3 (ignored)",
7013 "input": "xn--y86c71305c.xn----t2c",
7014 "output": null
7015 },
7016 {
7017 "comment": "C1; C2; V7; V3 (ignored)",
7018 "input": "xn--1ug1658ftw26f.xn----t2c071q",
7019 "output": null
7020 },
7021 {
7022 "comment": "C2",
7023 "input": "\u200d\uff0e\ud835\udfd7",
7024 "output": null
7025 },
7026 {
7027 "comment": "C2",
7028 "input": "\u200d.j",
7029 "output": null
7030 },
7031 {
7032 "comment": "C2",
7033 "input": "\u200d.J",
7034 "output": null
7035 },
7036 {
7037 "comment": "A4_2 (ignored)",
7038 "input": ".j",
7039 "output": ".j"
7040 },
7041 {
7042 "comment": "C2",
7043 "input": "xn--1ug.j",
7044 "output": null
7045 },
7046 {
7047 "input": "j",
7048 "output": "j"
7049 },
7050 {
7051 "comment": "C1; V7",
7052 "input": "\u10ad\ud8be\udccd\ua868\u05ae\u3002\u10be\u200c\u200c",
7053 "output": null
7054 },
7055 {
7056 "comment": "C1; V7",
7057 "input": "\u2d0d\ud8be\udccd\ua868\u05ae\u3002\u2d1e\u200c\u200c",
7058 "output": null
7059 },
7060 {
7061 "comment": "V7",
7062 "input": "xn--5cb172r175fug38a.xn--mlj",
7063 "output": null
7064 },
7065 {
7066 "comment": "C1; V7",
7067 "input": "xn--5cb172r175fug38a.xn--0uga051h",
7068 "output": null
7069 },
7070 {
7071 "comment": "V7",
7072 "input": "xn--5cb347co96jug15a.xn--2nd",
7073 "output": null
7074 },
7075 {
7076 "comment": "C1; V7",
7077 "input": "xn--5cb347co96jug15a.xn--2nd059ea",
7078 "output": null
7079 },
7080 {
7081 "comment": "V7",
7082 "input": "\ud800\udef0\u3002\udb05\udcf1",
7083 "output": null
7084 },
7085 {
7086 "comment": "V7",
7087 "input": "xn--k97c.xn--q031e",
7088 "output": null
7089 },
7090 {
7091 "comment": "V6; V7",
7092 "input": "\u08df\u10ab\ud89b\udff8\uade4\uff0e\uda40\udd7c\ud835\udfe2\ud72a\u0ae3",
7093 "output": null
7094 },
7095 {
7096 "comment": "V6; V7",
7097 "input": "\u08df\u10ab\ud89b\udff8\u1100\u1172\u11af\uff0e\uda40\udd7c\ud835\udfe2\u1112\u1171\u11b9\u0ae3",
7098 "output": null
7099 },
7100 {
7101 "comment": "V6; V7",
7102 "input": "\u08df\u10ab\ud89b\udff8\uade4.\uda40\udd7c0\ud72a\u0ae3",
7103 "output": null
7104 },
7105 {
7106 "comment": "V6; V7",
7107 "input": "\u08df\u10ab\ud89b\udff8\u1100\u1172\u11af.\uda40\udd7c0\u1112\u1171\u11b9\u0ae3",
7108 "output": null
7109 },
7110 {
7111 "comment": "V6; V7",
7112 "input": "\u08df\u2d0b\ud89b\udff8\u1100\u1172\u11af.\uda40\udd7c0\u1112\u1171\u11b9\u0ae3",
7113 "output": null
7114 },
7115 {
7116 "comment": "V6; V7",
7117 "input": "\u08df\u2d0b\ud89b\udff8\uade4.\uda40\udd7c0\ud72a\u0ae3",
7118 "output": null
7119 },
7120 {
7121 "comment": "V6; V7",
7122 "input": "xn--i0b436pkl2g2h42a.xn--0-8le8997mulr5f",
7123 "output": null
7124 },
7125 {
7126 "comment": "V6; V7",
7127 "input": "\u08df\u2d0b\ud89b\udff8\u1100\u1172\u11af\uff0e\uda40\udd7c\ud835\udfe2\u1112\u1171\u11b9\u0ae3",
7128 "output": null
7129 },
7130 {
7131 "comment": "V6; V7",
7132 "input": "\u08df\u2d0b\ud89b\udff8\uade4\uff0e\uda40\udd7c\ud835\udfe2\ud72a\u0ae3",
7133 "output": null
7134 },
7135 {
7136 "comment": "V6; V7",
7137 "input": "xn--i0b601b6r7l2hs0a.xn--0-8le8997mulr5f",
7138 "output": null
7139 },
7140 {
7141 "comment": "V7",
7142 "input": "\u0784\uff0e\ud83a\udc5d\u0601",
7143 "output": null
7144 },
7145 {
7146 "comment": "V7",
7147 "input": "\u0784.\ud83a\udc5d\u0601",
7148 "output": null
7149 },
7150 {
7151 "comment": "V7",
7152 "input": "xn--lqb.xn--jfb1808v",
7153 "output": null
7154 },
7155 {
7156 "comment": "V6",
7157 "input": "\u0acd\u2083.8\ua8c4\u200d\ud83c\udce4",
7158 "output": null
7159 },
7160 {
7161 "comment": "V6",
7162 "input": "\u0acd3.8\ua8c4\u200d\ud83c\udce4",
7163 "output": null
7164 },
7165 {
7166 "comment": "V6",
7167 "input": "xn--3-yke.xn--8-sl4et308f",
7168 "output": null
7169 },
7170 {
7171 "comment": "V6",
7172 "input": "xn--3-yke.xn--8-ugnv982dbkwm",
7173 "output": null
7174 },
7175 {
7176 "comment": "V7",
7177 "input": "\ua855\u2260\u105e\udb7b\udff1\uff61\ud803\udd67\udb40\udd2b\uffa0",
7178 "output": null
7179 },
7180 {
7181 "comment": "V7",
7182 "input": "\ua855=\u0338\u105e\udb7b\udff1\uff61\ud803\udd67\udb40\udd2b\uffa0",
7183 "output": null
7184 },
7185 {
7186 "comment": "V7",
7187 "input": "\ua855\u2260\u105e\udb7b\udff1\u3002\ud803\udd67\udb40\udd2b\u1160",
7188 "output": null
7189 },
7190 {
7191 "comment": "V7",
7192 "input": "\ua855=\u0338\u105e\udb7b\udff1\u3002\ud803\udd67\udb40\udd2b\u1160",
7193 "output": null
7194 },
7195 {
7196 "comment": "V7",
7197 "input": "xn--cld333gn31h0158l.xn--3g0d",
7198 "output": null
7199 },
7200 {
7201 "comment": "C1",
7202 "input": "\u9c4a\u3002\u200c",
7203 "output": null
7204 },
7205 {
7206 "comment": "A4_2 (ignored)",
7207 "input": "xn--rt6a.",
7208 "output": "xn--rt6a."
7209 },
7210 {
7211 "comment": "A4_2 (ignored)",
7212 "input": "\u9c4a.",
7213 "output": "xn--rt6a."
7214 },
7215 {
7216 "comment": "C1",
7217 "input": "xn--rt6a.xn--0ug",
7218 "output": null
7219 },
7220 {
7221 "comment": "A4_2 (ignored)",
7222 "input": "xn--4-0bd15808a.",
7223 "output": "xn--4-0bd15808a."
7224 },
7225 {
7226 "comment": "A4_2 (ignored)",
7227 "input": "\ud83a\udd3a\u07cc4.",
7228 "output": "xn--4-0bd15808a."
7229 },
7230 {
7231 "comment": "A4_2 (ignored)",
7232 "input": "\ud83a\udd18\u07cc4.",
7233 "output": "xn--4-0bd15808a."
7234 },
7235 {
7236 "comment": "V3 (ignored)",
7237 "input": "-\uff61\u43db",
7238 "output": "-.xn--xco"
7239 },
7240 {
7241 "comment": "V3 (ignored)",
7242 "input": "-\u3002\u43db",
7243 "output": "-.xn--xco"
7244 },
7245 {
7246 "comment": "V3 (ignored)",
7247 "input": "-.xn--xco",
7248 "output": "-.xn--xco"
7249 },
7250 {
7251 "comment": "C1; C2; V7",
7252 "input": "\u200c\ud908\udce0\uff0e\u200d",
7253 "output": null
7254 },
7255 {
7256 "comment": "C1; C2; V7",
7257 "input": "\u200c\ud908\udce0.\u200d",
7258 "output": null
7259 },
7260 {
7261 "comment": "V7; A4_2 (ignored)",
7262 "input": "xn--dj8y.",
7263 "output": null
7264 },
7265 {
7266 "comment": "C1; C2; V7",
7267 "input": "xn--0ugz7551c.xn--1ug",
7268 "output": null
7269 },
7270 {
7271 "comment": "V6; V7",
7272 "input": "\ud804\uddc0.\udb42\ude31",
7273 "output": null
7274 },
7275 {
7276 "comment": "V6; V7",
7277 "input": "xn--wd1d.xn--k946e",
7278 "output": null
7279 },
7280 {
7281 "input": "\u2f86\uff0e\ua848\uff15\u226f\u00df",
7282 "output": "xn--tc1a.xn--5-qfa988w745i"
7283 },
7284 {
7285 "input": "\u2f86\uff0e\ua848\uff15>\u0338\u00df",
7286 "output": "xn--tc1a.xn--5-qfa988w745i"
7287 },
7288 {
7289 "input": "\u820c.\ua8485\u226f\u00df",
7290 "output": "xn--tc1a.xn--5-qfa988w745i"
7291 },
7292 {
7293 "input": "\u820c.\ua8485>\u0338\u00df",
7294 "output": "xn--tc1a.xn--5-qfa988w745i"
7295 },
7296 {
7297 "input": "\u820c.\ua8485>\u0338SS",
7298 "output": "xn--tc1a.xn--5ss-3m2a5009e"
7299 },
7300 {
7301 "input": "\u820c.\ua8485\u226fSS",
7302 "output": "xn--tc1a.xn--5ss-3m2a5009e"
7303 },
7304 {
7305 "input": "\u820c.\ua8485\u226fss",
7306 "output": "xn--tc1a.xn--5ss-3m2a5009e"
7307 },
7308 {
7309 "input": "\u820c.\ua8485>\u0338ss",
7310 "output": "xn--tc1a.xn--5ss-3m2a5009e"
7311 },
7312 {
7313 "input": "\u820c.\ua8485>\u0338Ss",
7314 "output": "xn--tc1a.xn--5ss-3m2a5009e"
7315 },
7316 {
7317 "input": "\u820c.\ua8485\u226fSs",
7318 "output": "xn--tc1a.xn--5ss-3m2a5009e"
7319 },
7320 {
7321 "input": "xn--tc1a.xn--5ss-3m2a5009e",
7322 "output": "xn--tc1a.xn--5ss-3m2a5009e"
7323 },
7324 {
7325 "input": "xn--tc1a.xn--5-qfa988w745i",
7326 "output": "xn--tc1a.xn--5-qfa988w745i"
7327 },
7328 {
7329 "input": "\u2f86\uff0e\ua848\uff15>\u0338SS",
7330 "output": "xn--tc1a.xn--5ss-3m2a5009e"
7331 },
7332 {
7333 "input": "\u2f86\uff0e\ua848\uff15\u226fSS",
7334 "output": "xn--tc1a.xn--5ss-3m2a5009e"
7335 },
7336 {
7337 "input": "\u2f86\uff0e\ua848\uff15\u226fss",
7338 "output": "xn--tc1a.xn--5ss-3m2a5009e"
7339 },
7340 {
7341 "input": "\u2f86\uff0e\ua848\uff15>\u0338ss",
7342 "output": "xn--tc1a.xn--5ss-3m2a5009e"
7343 },
7344 {
7345 "input": "\u2f86\uff0e\ua848\uff15>\u0338Ss",
7346 "output": "xn--tc1a.xn--5ss-3m2a5009e"
7347 },
7348 {
7349 "input": "\u2f86\uff0e\ua848\uff15\u226fSs",
7350 "output": "xn--tc1a.xn--5ss-3m2a5009e"
7351 },
7352 {
7353 "input": "\ud83a\udd2a.\u03c2",
7354 "output": "xn--ie6h.xn--3xa"
7355 },
7356 {
7357 "input": "\ud83a\udd08.\u03a3",
7358 "output": "xn--ie6h.xn--4xa"
7359 },
7360 {
7361 "input": "\ud83a\udd2a.\u03c3",
7362 "output": "xn--ie6h.xn--4xa"
7363 },
7364 {
7365 "input": "\ud83a\udd08.\u03c3",
7366 "output": "xn--ie6h.xn--4xa"
7367 },
7368 {
7369 "input": "xn--ie6h.xn--4xa",
7370 "output": "xn--ie6h.xn--4xa"
7371 },
7372 {
7373 "input": "\ud83a\udd08.\u03c2",
7374 "output": "xn--ie6h.xn--3xa"
7375 },
7376 {
7377 "input": "xn--ie6h.xn--3xa",
7378 "output": "xn--ie6h.xn--3xa"
7379 },
7380 {
7381 "input": "\ud83a\udd2a.\u03a3",
7382 "output": "xn--ie6h.xn--4xa"
7383 },
7384 {
7385 "comment": "C1",
7386 "input": "\u200c\u10ba\uff61\u03c2",
7387 "output": null
7388 },
7389 {
7390 "comment": "C1",
7391 "input": "\u200c\u10ba\u3002\u03c2",
7392 "output": null
7393 },
7394 {
7395 "comment": "C1",
7396 "input": "\u200c\u2d1a\u3002\u03c2",
7397 "output": null
7398 },
7399 {
7400 "comment": "C1",
7401 "input": "\u200c\u10ba\u3002\u03a3",
7402 "output": null
7403 },
7404 {
7405 "comment": "C1",
7406 "input": "\u200c\u2d1a\u3002\u03c3",
7407 "output": null
7408 },
7409 {
7410 "input": "xn--ilj.xn--4xa",
7411 "output": "xn--ilj.xn--4xa"
7412 },
7413 {
7414 "input": "\u2d1a.\u03c3",
7415 "output": "xn--ilj.xn--4xa"
7416 },
7417 {
7418 "input": "\u10ba.\u03a3",
7419 "output": "xn--ilj.xn--4xa"
7420 },
7421 {
7422 "input": "\u2d1a.\u03c2",
7423 "output": "xn--ilj.xn--3xa"
7424 },
7425 {
7426 "input": "\u10ba.\u03c2",
7427 "output": "xn--ilj.xn--3xa"
7428 },
7429 {
7430 "input": "xn--ilj.xn--3xa",
7431 "output": "xn--ilj.xn--3xa"
7432 },
7433 {
7434 "input": "\u10ba.\u03c3",
7435 "output": "xn--ilj.xn--4xa"
7436 },
7437 {
7438 "comment": "C1",
7439 "input": "xn--0ug262c.xn--4xa",
7440 "output": null
7441 },
7442 {
7443 "comment": "C1",
7444 "input": "xn--0ug262c.xn--3xa",
7445 "output": null
7446 },
7447 {
7448 "comment": "C1",
7449 "input": "\u200c\u2d1a\uff61\u03c2",
7450 "output": null
7451 },
7452 {
7453 "comment": "C1",
7454 "input": "\u200c\u10ba\uff61\u03a3",
7455 "output": null
7456 },
7457 {
7458 "comment": "C1",
7459 "input": "\u200c\u2d1a\uff61\u03c3",
7460 "output": null
7461 },
7462 {
7463 "comment": "V7",
7464 "input": "xn--ynd.xn--4xa",
7465 "output": null
7466 },
7467 {
7468 "comment": "V7",
7469 "input": "xn--ynd.xn--3xa",
7470 "output": null
7471 },
7472 {
7473 "comment": "C1; V7",
7474 "input": "xn--ynd759e.xn--4xa",
7475 "output": null
7476 },
7477 {
7478 "comment": "C1; V7",
7479 "input": "xn--ynd759e.xn--3xa",
7480 "output": null
7481 },
7482 {
7483 "comment": "C1; C2",
7484 "input": "\u200d\u2f95\u3002\u200c\u0310\ua953\ua84e",
7485 "output": null
7486 },
7487 {
7488 "comment": "C1; C2",
7489 "input": "\u200d\u2f95\u3002\u200c\ua953\u0310\ua84e",
7490 "output": null
7491 },
7492 {
7493 "comment": "C1; C2",
7494 "input": "\u200d\u8c37\u3002\u200c\ua953\u0310\ua84e",
7495 "output": null
7496 },
7497 {
7498 "comment": "V6",
7499 "input": "xn--6g3a.xn--0sa8175flwa",
7500 "output": null
7501 },
7502 {
7503 "comment": "C1; C2",
7504 "input": "xn--1ug0273b.xn--0sa359l6n7g13a",
7505 "output": null
7506 },
7507 {
7508 "input": "\u6dfd\u3002\u183e",
7509 "output": "xn--34w.xn--x7e"
7510 },
7511 {
7512 "input": "xn--34w.xn--x7e",
7513 "output": "xn--34w.xn--x7e"
7514 },
7515 {
7516 "input": "\u6dfd.\u183e",
7517 "output": "xn--34w.xn--x7e"
7518 },
7519 {
7520 "comment": "V6; V7",
7521 "input": "\uda72\ude29\u10b3\u2753\uff61\ud804\udd28",
7522 "output": null
7523 },
7524 {
7525 "comment": "V6; V7",
7526 "input": "\uda72\ude29\u10b3\u2753\u3002\ud804\udd28",
7527 "output": null
7528 },
7529 {
7530 "comment": "V6; V7",
7531 "input": "\uda72\ude29\u2d13\u2753\u3002\ud804\udd28",
7532 "output": null
7533 },
7534 {
7535 "comment": "V6; V7",
7536 "input": "xn--8di78qvw32y.xn--k80d",
7537 "output": null
7538 },
7539 {
7540 "comment": "V6; V7",
7541 "input": "\uda72\ude29\u2d13\u2753\uff61\ud804\udd28",
7542 "output": null
7543 },
7544 {
7545 "comment": "V6; V7",
7546 "input": "xn--rnd896i0j14q.xn--k80d",
7547 "output": null
7548 },
7549 {
7550 "comment": "V7",
7551 "input": "\u17ff\uff61\ud83a\udf33",
7552 "output": null
7553 },
7554 {
7555 "comment": "V7",
7556 "input": "\u17ff\u3002\ud83a\udf33",
7557 "output": null
7558 },
7559 {
7560 "comment": "V7",
7561 "input": "xn--45e.xn--et6h",
7562 "output": null
7563 },
7564 {
7565 "comment": "C2; V6",
7566 "input": "\u0652\u200d\uff61\u0ccd\ud805\udeb3",
7567 "output": null
7568 },
7569 {
7570 "comment": "C2; V6",
7571 "input": "\u0652\u200d\u3002\u0ccd\ud805\udeb3",
7572 "output": null
7573 },
7574 {
7575 "comment": "V6",
7576 "input": "xn--uhb.xn--8tc4527k",
7577 "output": null
7578 },
7579 {
7580 "comment": "C2; V6",
7581 "input": "xn--uhb882k.xn--8tc4527k",
7582 "output": null
7583 },
7584 {
7585 "comment": "V6; V7",
7586 "input": "\u00df\ud880\udc3b\ud8da\udf17\uff61\ud836\ude68\ud83d\udd6e\u00df",
7587 "output": null
7588 },
7589 {
7590 "comment": "V6; V7",
7591 "input": "\u00df\ud880\udc3b\ud8da\udf17\u3002\ud836\ude68\ud83d\udd6e\u00df",
7592 "output": null
7593 },
7594 {
7595 "comment": "V6; V7",
7596 "input": "SS\ud880\udc3b\ud8da\udf17\u3002\ud836\ude68\ud83d\udd6eSS",
7597 "output": null
7598 },
7599 {
7600 "comment": "V6; V7",
7601 "input": "ss\ud880\udc3b\ud8da\udf17\u3002\ud836\ude68\ud83d\udd6ess",
7602 "output": null
7603 },
7604 {
7605 "comment": "V6; V7",
7606 "input": "Ss\ud880\udc3b\ud8da\udf17\u3002\ud836\ude68\ud83d\udd6eSs",
7607 "output": null
7608 },
7609 {
7610 "comment": "V6; V7",
7611 "input": "xn--ss-jl59biy67d.xn--ss-4d11aw87d",
7612 "output": null
7613 },
7614 {
7615 "comment": "V6; V7",
7616 "input": "xn--zca20040bgrkh.xn--zca3653v86qa",
7617 "output": null
7618 },
7619 {
7620 "comment": "V6; V7",
7621 "input": "SS\ud880\udc3b\ud8da\udf17\uff61\ud836\ude68\ud83d\udd6eSS",
7622 "output": null
7623 },
7624 {
7625 "comment": "V6; V7",
7626 "input": "ss\ud880\udc3b\ud8da\udf17\uff61\ud836\ude68\ud83d\udd6ess",
7627 "output": null
7628 },
7629 {
7630 "comment": "V6; V7",
7631 "input": "Ss\ud880\udc3b\ud8da\udf17\uff61\ud836\ude68\ud83d\udd6eSs",
7632 "output": null
7633 },
7634 {
7635 "comment": "C1; C2",
7636 "input": "\u200d\u3002\u200c",
7637 "output": null
7638 },
7639 {
7640 "comment": "C1; C2",
7641 "input": "xn--1ug.xn--0ug",
7642 "output": null
7643 },
7644 {
7645 "comment": "V7; A4_2 (ignored)",
7646 "input": "\udb41\udc58\uff0e\udb40\udd2e",
7647 "output": null
7648 },
7649 {
7650 "comment": "V7; A4_2 (ignored)",
7651 "input": "\udb41\udc58.\udb40\udd2e",
7652 "output": null
7653 },
7654 {
7655 "comment": "V7; A4_2 (ignored)",
7656 "input": "xn--s136e.",
7657 "output": null
7658 },
7659 {
7660 "comment": "V6; V7",
7661 "input": "\ua9b7\udb37\udd59\uba79\u3002\u249b\udb42\ude07",
7662 "output": null
7663 },
7664 {
7665 "comment": "V6; V7",
7666 "input": "\ua9b7\udb37\udd59\u1106\u1167\u11b0\u3002\u249b\udb42\ude07",
7667 "output": null
7668 },
7669 {
7670 "comment": "V6; V7",
7671 "input": "\ua9b7\udb37\udd59\uba79\u300220.\udb42\ude07",
7672 "output": null
7673 },
7674 {
7675 "comment": "V6; V7",
7676 "input": "\ua9b7\udb37\udd59\u1106\u1167\u11b0\u300220.\udb42\ude07",
7677 "output": null
7678 },
7679 {
7680 "comment": "V6; V7",
7681 "input": "xn--ym9av13acp85w.20.xn--d846e",
7682 "output": null
7683 },
7684 {
7685 "comment": "V6; V7",
7686 "input": "xn--ym9av13acp85w.xn--dth22121k",
7687 "output": null
7688 },
7689 {
7690 "comment": "C1; V7",
7691 "input": "\u200c\uff61\ufe12",
7692 "output": null
7693 },
7694 {
7695 "comment": "C1; A4_2 (ignored)",
7696 "input": "\u200c\u3002\u3002",
7697 "output": null
7698 },
7699 {
7700 "comment": "A4_2 (ignored)",
7701 "input": "..",
7702 "output": ".."
7703 },
7704 {
7705 "comment": "C1; A4_2 (ignored)",
7706 "input": "xn--0ug..",
7707 "output": null
7708 },
7709 {
7710 "comment": "V7; A4_2 (ignored)",
7711 "input": ".xn--y86c",
7712 "output": null
7713 },
7714 {
7715 "comment": "C1; V7",
7716 "input": "xn--0ug.xn--y86c",
7717 "output": null
7718 },
7719 {
7720 "comment": "C1; V3 (ignored)",
7721 "input": "\u1872-\ud835\udff9.\u00df-\u200c-",
7722 "output": null
7723 },
7724 {
7725 "comment": "C1; V3 (ignored)",
7726 "input": "\u1872-3.\u00df-\u200c-",
7727 "output": null
7728 },
7729 {
7730 "comment": "C1; V3 (ignored)",
7731 "input": "\u1872-3.SS-\u200c-",
7732 "output": null
7733 },
7734 {
7735 "comment": "C1; V3 (ignored)",
7736 "input": "\u1872-3.ss-\u200c-",
7737 "output": null
7738 },
7739 {
7740 "comment": "C1; V3 (ignored)",
7741 "input": "\u1872-3.Ss-\u200c-",
7742 "output": null
7743 },
7744 {
7745 "comment": "V2 (ignored); V3 (ignored)",
7746 "input": "xn---3-p9o.ss--",
7747 "output": "xn---3-p9o.ss--"
7748 },
7749 {
7750 "comment": "C1; V3 (ignored)",
7751 "input": "xn---3-p9o.xn--ss---276a",
7752 "output": null
7753 },
7754 {
7755 "comment": "C1; V3 (ignored)",
7756 "input": "xn---3-p9o.xn-----fia9303a",
7757 "output": null
7758 },
7759 {
7760 "comment": "C1; V3 (ignored)",
7761 "input": "\u1872-\ud835\udff9.SS-\u200c-",
7762 "output": null
7763 },
7764 {
7765 "comment": "C1; V3 (ignored)",
7766 "input": "\u1872-\ud835\udff9.ss-\u200c-",
7767 "output": null
7768 },
7769 {
7770 "comment": "C1; V3 (ignored)",
7771 "input": "\u1872-\ud835\udff9.Ss-\u200c-",
7772 "output": null
7773 },
7774 {
7775 "comment": "V6; V7",
7776 "input": "\udb27\udd9c\u1898\u3002\u1a7f\u2ea2",
7777 "output": null
7778 },
7779 {
7780 "comment": "V6; V7",
7781 "input": "xn--ibf35138o.xn--fpfz94g",
7782 "output": null
7783 },
7784 {
7785 "comment": "V7",
7786 "input": "\uda1c\udda7\ud835\udfef\u3002\u2488\u1a76\ud835\udfda\uda41\ude0c",
7787 "output": null
7788 },
7789 {
7790 "comment": "V6; V7",
7791 "input": "\uda1c\udda73\u30021.\u1a762\uda41\ude0c",
7792 "output": null
7793 },
7794 {
7795 "comment": "V6; V7",
7796 "input": "xn--3-rj42h.1.xn--2-13k96240l",
7797 "output": null
7798 },
7799 {
7800 "comment": "V7",
7801 "input": "xn--3-rj42h.xn--2-13k746cq465x",
7802 "output": null
7803 },
7804 {
7805 "comment": "C2; V7",
7806 "input": "\u200d\u2085\u2488\u3002\u226f\ud835\udff4\u200d",
7807 "output": null
7808 },
7809 {
7810 "comment": "C2; V7",
7811 "input": "\u200d\u2085\u2488\u3002>\u0338\ud835\udff4\u200d",
7812 "output": null
7813 },
7814 {
7815 "comment": "C2; A4_2 (ignored)",
7816 "input": "\u200d51.\u3002\u226f8\u200d",
7817 "output": null
7818 },
7819 {
7820 "comment": "C2; A4_2 (ignored)",
7821 "input": "\u200d51.\u3002>\u03388\u200d",
7822 "output": null
7823 },
7824 {
7825 "comment": "A4_2 (ignored)",
7826 "input": "51..xn--8-ogo",
7827 "output": "51..xn--8-ogo"
7828 },
7829 {
7830 "comment": "C2; A4_2 (ignored)",
7831 "input": "xn--51-l1t..xn--8-ugn00i",
7832 "output": null
7833 },
7834 {
7835 "comment": "V7",
7836 "input": "xn--5-ecp.xn--8-ogo",
7837 "output": null
7838 },
7839 {
7840 "comment": "C2; V7",
7841 "input": "xn--5-tgnz5r.xn--8-ugn00i",
7842 "output": null
7843 },
7844 {
7845 "comment": "V7",
7846 "input": "\ud8bb\uddc2\u0a42\u10aa\ud8c8\udc9f.\u226e",
7847 "output": null
7848 },
7849 {
7850 "comment": "V7",
7851 "input": "\ud8bb\uddc2\u0a42\u10aa\ud8c8\udc9f.<\u0338",
7852 "output": null
7853 },
7854 {
7855 "comment": "V7",
7856 "input": "\ud8bb\uddc2\u0a42\u2d0a\ud8c8\udc9f.<\u0338",
7857 "output": null
7858 },
7859 {
7860 "comment": "V7",
7861 "input": "\ud8bb\uddc2\u0a42\u2d0a\ud8c8\udc9f.\u226e",
7862 "output": null
7863 },
7864 {
7865 "comment": "V7",
7866 "input": "xn--nbc229o4y27dgskb.xn--gdh",
7867 "output": null
7868 },
7869 {
7870 "comment": "V7",
7871 "input": "xn--nbc493aro75ggskb.xn--gdh",
7872 "output": null
7873 },
7874 {
7875 "input": "\ua860\uff0e\u06f2",
7876 "output": "xn--5c9a.xn--fmb"
7877 },
7878 {
7879 "input": "\ua860.\u06f2",
7880 "output": "xn--5c9a.xn--fmb"
7881 },
7882 {
7883 "input": "xn--5c9a.xn--fmb",
7884 "output": "xn--5c9a.xn--fmb"
7885 },
7886 {
7887 "comment": "C1; V6; U1 (ignored)",
7888 "input": "\ua67d\u200c\ud87e\uddf5\ud83c\udd06\uff61\u200c\ud804\udc42\u1b01",
7889 "output": null
7890 },
7891 {
7892 "comment": "C1; V6; U1 (ignored)",
7893 "input": "\ua67d\u200c\u9723\ud83c\udd06\uff61\u200c\ud804\udc42\u1b01",
7894 "output": null
7895 },
7896 {
7897 "comment": "C1; V6; U1 (ignored)",
7898 "input": "\ua67d\u200c\u97235,\u3002\u200c\ud804\udc42\u1b01",
7899 "output": null
7900 },
7901 {
7902 "comment": "V6; U1 (ignored)",
7903 "input": "xn--5,-op8g373c.xn--4sf0725i",
7904 "output": null
7905 },
7906 {
7907 "comment": "C1; V6; U1 (ignored)",
7908 "input": "xn--5,-i1tz135dnbqa.xn--4sf36u6u4w",
7909 "output": null
7910 },
7911 {
7912 "comment": "V6; V7",
7913 "input": "xn--2q5a751a653w.xn--4sf0725i",
7914 "output": null
7915 },
7916 {
7917 "comment": "C1; V6; V7",
7918 "input": "xn--0ug4208b2vjuk63a.xn--4sf36u6u4w",
7919 "output": null
7920 },
7921 {
7922 "comment": "V7",
7923 "input": "\u514e\uff61\u183c\udb43\udd1c\ud805\udeb6\ud807\udc3f",
7924 "output": null
7925 },
7926 {
7927 "comment": "V7",
7928 "input": "\u514e\u3002\u183c\udb43\udd1c\ud805\udeb6\ud807\udc3f",
7929 "output": null
7930 },
7931 {
7932 "comment": "V7",
7933 "input": "xn--b5q.xn--v7e6041kqqd4m251b",
7934 "output": null
7935 },
7936 {
7937 "comment": "C2",
7938 "input": "\ud835\udfd9\uff61\u200d\ud835\udff8\u200d\u2077",
7939 "output": null
7940 },
7941 {
7942 "comment": "C2",
7943 "input": "1\u3002\u200d2\u200d7",
7944 "output": null
7945 },
7946 {
7947 "input": "1.2h",
7948 "output": "1.2h"
7949 },
7950 {
7951 "comment": "C2",
7952 "input": "1.xn--27-l1tb",
7953 "output": null
7954 },
7955 {
7956 "comment": "V7; V3 (ignored)",
7957 "input": "\u1868-\uff61\udb43\udecb\ud835\udff7",
7958 "output": null
7959 },
7960 {
7961 "comment": "V7; V3 (ignored)",
7962 "input": "\u1868-\u3002\udb43\udecb1",
7963 "output": null
7964 },
7965 {
7966 "comment": "V7; V3 (ignored)",
7967 "input": "xn----z8j.xn--1-5671m",
7968 "output": null
7969 },
7970 {
7971 "comment": "C1; V7",
7972 "input": "\u10bc\ud9e3\udded\u0f80\u2f87\u3002\u10af\u2640\u200c\u200c",
7973 "output": null
7974 },
7975 {
7976 "comment": "C1; V7",
7977 "input": "\u10bc\ud9e3\udded\u0f80\u821b\u3002\u10af\u2640\u200c\u200c",
7978 "output": null
7979 },
7980 {
7981 "comment": "C1; V7",
7982 "input": "\u2d1c\ud9e3\udded\u0f80\u821b\u3002\u2d0f\u2640\u200c\u200c",
7983 "output": null
7984 },
7985 {
7986 "comment": "V7",
7987 "input": "xn--zed372mdj2do3v4h.xn--e5h11w",
7988 "output": null
7989 },
7990 {
7991 "comment": "C1; V7",
7992 "input": "xn--zed372mdj2do3v4h.xn--0uga678bgyh",
7993 "output": null
7994 },
7995 {
7996 "comment": "C1; V7",
7997 "input": "\u2d1c\ud9e3\udded\u0f80\u2f87\u3002\u2d0f\u2640\u200c\u200c",
7998 "output": null
7999 },
8000 {
8001 "comment": "V7",
8002 "input": "xn--zed54dz10wo343g.xn--nnd651i",
8003 "output": null
8004 },
8005 {
8006 "comment": "C1; V7",
8007 "input": "xn--zed54dz10wo343g.xn--nnd089ea464d",
8008 "output": null
8009 },
8010 {
8011 "comment": "C2; V6",
8012 "input": "\ud804\udc46\ud835\udff0.\u200d",
8013 "output": null
8014 },
8015 {
8016 "comment": "C2; V6",
8017 "input": "\ud804\udc464.\u200d",
8018 "output": null
8019 },
8020 {
8021 "comment": "V6; A4_2 (ignored)",
8022 "input": "xn--4-xu7i.",
8023 "output": null
8024 },
8025 {
8026 "comment": "C2; V6",
8027 "input": "xn--4-xu7i.xn--1ug",
8028 "output": null
8029 },
8030 {
8031 "comment": "C1; V6; V7",
8032 "input": "\ud97b\udd18\u10be\u7640\uff61\ud805\ude3f\u200d\u200c\ubdbc",
8033 "output": null
8034 },
8035 {
8036 "comment": "C1; V6; V7",
8037 "input": "\ud97b\udd18\u10be\u7640\uff61\ud805\ude3f\u200d\u200c\u1107\u1170\u11ab",
8038 "output": null
8039 },
8040 {
8041 "comment": "C1; V6; V7",
8042 "input": "\ud97b\udd18\u10be\u7640\u3002\ud805\ude3f\u200d\u200c\ubdbc",
8043 "output": null
8044 },
8045 {
8046 "comment": "C1; V6; V7",
8047 "input": "\ud97b\udd18\u10be\u7640\u3002\ud805\ude3f\u200d\u200c\u1107\u1170\u11ab",
8048 "output": null
8049 },
8050 {
8051 "comment": "C1; V6; V7",
8052 "input": "\ud97b\udd18\u2d1e\u7640\u3002\ud805\ude3f\u200d\u200c\u1107\u1170\u11ab",
8053 "output": null
8054 },
8055 {
8056 "comment": "C1; V6; V7",
8057 "input": "\ud97b\udd18\u2d1e\u7640\u3002\ud805\ude3f\u200d\u200c\ubdbc",
8058 "output": null
8059 },
8060 {
8061 "comment": "V6; V7",
8062 "input": "xn--mlju35u7qx2f.xn--et3bn23n",
8063 "output": null
8064 },
8065 {
8066 "comment": "C1; V6; V7",
8067 "input": "xn--mlju35u7qx2f.xn--0ugb6122js83c",
8068 "output": null
8069 },
8070 {
8071 "comment": "C1; V6; V7",
8072 "input": "\ud97b\udd18\u2d1e\u7640\uff61\ud805\ude3f\u200d\u200c\u1107\u1170\u11ab",
8073 "output": null
8074 },
8075 {
8076 "comment": "C1; V6; V7",
8077 "input": "\ud97b\udd18\u2d1e\u7640\uff61\ud805\ude3f\u200d\u200c\ubdbc",
8078 "output": null
8079 },
8080 {
8081 "comment": "V6; V7",
8082 "input": "xn--2nd6803c7q37d.xn--et3bn23n",
8083 "output": null
8084 },
8085 {
8086 "comment": "C1; V6; V7",
8087 "input": "xn--2nd6803c7q37d.xn--0ugb6122js83c",
8088 "output": null
8089 },
8090 {
8091 "comment": "V7",
8092 "input": "\u1843\ud835\udfe7\u226f\u1823\uff0e\u6c01\ud960\udff1\ua06b",
8093 "output": null
8094 },
8095 {
8096 "comment": "V7",
8097 "input": "\u1843\ud835\udfe7>\u0338\u1823\uff0e\u6c01\ud960\udff1\ua06b",
8098 "output": null
8099 },
8100 {
8101 "comment": "V7",
8102 "input": "\u18435\u226f\u1823.\u6c01\ud960\udff1\ua06b",
8103 "output": null
8104 },
8105 {
8106 "comment": "V7",
8107 "input": "\u18435>\u0338\u1823.\u6c01\ud960\udff1\ua06b",
8108 "output": null
8109 },
8110 {
8111 "comment": "V7",
8112 "input": "xn--5-24jyf768b.xn--lqw213ime95g",
8113 "output": null
8114 },
8115 {
8116 "comment": "V7; V3 (ignored)",
8117 "input": "-\ud804\ude36\u248f\uff0e\u248e\ud881\udee2\udb40\udfad",
8118 "output": null
8119 },
8120 {
8121 "comment": "V7; V3 (ignored); A4_2 (ignored)",
8122 "input": "-\ud804\ude368..7.\ud881\udee2\udb40\udfad",
8123 "output": null
8124 },
8125 {
8126 "comment": "V7; V3 (ignored); A4_2 (ignored)",
8127 "input": "xn---8-bv5o..7.xn--c35nf1622b",
8128 "output": null
8129 },
8130 {
8131 "comment": "V7; V3 (ignored)",
8132 "input": "xn----scp6252h.xn--zshy411yzpx2d",
8133 "output": null
8134 },
8135 {
8136 "comment": "C1; C2",
8137 "input": "\u200c\u10a1\u755d\u200d\uff0e\u226e",
8138 "output": null
8139 },
8140 {
8141 "comment": "C1; C2",
8142 "input": "\u200c\u10a1\u755d\u200d\uff0e<\u0338",
8143 "output": null
8144 },
8145 {
8146 "comment": "C1; C2",
8147 "input": "\u200c\u10a1\u755d\u200d.\u226e",
8148 "output": null
8149 },
8150 {
8151 "comment": "C1; C2",
8152 "input": "\u200c\u10a1\u755d\u200d.<\u0338",
8153 "output": null
8154 },
8155 {
8156 "comment": "C1; C2",
8157 "input": "\u200c\u2d01\u755d\u200d.<\u0338",
8158 "output": null
8159 },
8160 {
8161 "comment": "C1; C2",
8162 "input": "\u200c\u2d01\u755d\u200d.\u226e",
8163 "output": null
8164 },
8165 {
8166 "input": "xn--skjy82u.xn--gdh",
8167 "output": "xn--skjy82u.xn--gdh"
8168 },
8169 {
8170 "input": "\u2d01\u755d.\u226e",
8171 "output": "xn--skjy82u.xn--gdh"
8172 },
8173 {
8174 "input": "\u2d01\u755d.<\u0338",
8175 "output": "xn--skjy82u.xn--gdh"
8176 },
8177 {
8178 "input": "\u10a1\u755d.<\u0338",
8179 "output": "xn--skjy82u.xn--gdh"
8180 },
8181 {
8182 "input": "\u10a1\u755d.\u226e",
8183 "output": "xn--skjy82u.xn--gdh"
8184 },
8185 {
8186 "comment": "C1; C2",
8187 "input": "xn--0ugc160hb36e.xn--gdh",
8188 "output": null
8189 },
8190 {
8191 "comment": "C1; C2",
8192 "input": "\u200c\u2d01\u755d\u200d\uff0e<\u0338",
8193 "output": null
8194 },
8195 {
8196 "comment": "C1; C2",
8197 "input": "\u200c\u2d01\u755d\u200d\uff0e\u226e",
8198 "output": null
8199 },
8200 {
8201 "comment": "V7",
8202 "input": "xn--8md0962c.xn--gdh",
8203 "output": null
8204 },
8205 {
8206 "comment": "C1; C2; V7",
8207 "input": "xn--8md700fea3748f.xn--gdh",
8208 "output": null
8209 },
8210 {
8211 "comment": "C2; V6; V7",
8212 "input": "\u0ecb\u200d\uff0e\u9381\udb43\udc11",
8213 "output": null
8214 },
8215 {
8216 "comment": "C2; V6; V7",
8217 "input": "\u0ecb\u200d.\u9381\udb43\udc11",
8218 "output": null
8219 },
8220 {
8221 "comment": "V6; V7",
8222 "input": "xn--t8c.xn--iz4a43209d",
8223 "output": null
8224 },
8225 {
8226 "comment": "C2; V6; V7",
8227 "input": "xn--t8c059f.xn--iz4a43209d",
8228 "output": null
8229 },
8230 {
8231 "comment": "V7; V3 (ignored)",
8232 "input": "\ud9e5\udef4.-\u1862\u0592\ud836\ude20",
8233 "output": null
8234 },
8235 {
8236 "comment": "V7; V3 (ignored)",
8237 "input": "xn--ep37b.xn----hec165lho83b",
8238 "output": null
8239 },
8240 {
8241 "comment": "C2; V6; V7",
8242 "input": "\ud8bc\udc2b\uff0e\u1baa\u03c2\u10a6\u200d",
8243 "output": null
8244 },
8245 {
8246 "comment": "C2; V6; V7",
8247 "input": "\ud8bc\udc2b.\u1baa\u03c2\u10a6\u200d",
8248 "output": null
8249 },
8250 {
8251 "comment": "C2; V6; V7",
8252 "input": "\ud8bc\udc2b.\u1baa\u03c2\u2d06\u200d",
8253 "output": null
8254 },
8255 {
8256 "comment": "C2; V6; V7",
8257 "input": "\ud8bc\udc2b.\u1baa\u03a3\u10a6\u200d",
8258 "output": null
8259 },
8260 {
8261 "comment": "C2; V6; V7",
8262 "input": "\ud8bc\udc2b.\u1baa\u03c3\u2d06\u200d",
8263 "output": null
8264 },
8265 {
8266 "comment": "C2; V6; V7",
8267 "input": "\ud8bc\udc2b.\u1baa\u03a3\u2d06\u200d",
8268 "output": null
8269 },
8270 {
8271 "comment": "V6; V7",
8272 "input": "xn--nu4s.xn--4xa153j7im",
8273 "output": null
8274 },
8275 {
8276 "comment": "C2; V6; V7",
8277 "input": "xn--nu4s.xn--4xa153jk8cs1q",
8278 "output": null
8279 },
8280 {
8281 "comment": "C2; V6; V7",
8282 "input": "xn--nu4s.xn--3xa353jk8cs1q",
8283 "output": null
8284 },
8285 {
8286 "comment": "C2; V6; V7",
8287 "input": "\ud8bc\udc2b\uff0e\u1baa\u03c2\u2d06\u200d",
8288 "output": null
8289 },
8290 {
8291 "comment": "C2; V6; V7",
8292 "input": "\ud8bc\udc2b\uff0e\u1baa\u03a3\u10a6\u200d",
8293 "output": null
8294 },
8295 {
8296 "comment": "C2; V6; V7",
8297 "input": "\ud8bc\udc2b\uff0e\u1baa\u03c3\u2d06\u200d",
8298 "output": null
8299 },
8300 {
8301 "comment": "C2; V6; V7",
8302 "input": "\ud8bc\udc2b\uff0e\u1baa\u03a3\u2d06\u200d",
8303 "output": null
8304 },
8305 {
8306 "comment": "V6; V7",
8307 "input": "xn--nu4s.xn--4xa217dxri",
8308 "output": null
8309 },
8310 {
8311 "comment": "C2; V6; V7",
8312 "input": "xn--nu4s.xn--4xa217dxriome",
8313 "output": null
8314 },
8315 {
8316 "comment": "C2; V6; V7",
8317 "input": "xn--nu4s.xn--3xa417dxriome",
8318 "output": null
8319 },
8320 {
8321 "comment": "C1; V6; V7",
8322 "input": "\u2488\u200c\uaaec\ufe12\uff0e\u0acd",
8323 "output": null
8324 },
8325 {
8326 "comment": "C1; V6; A4_2 (ignored)",
8327 "input": "1.\u200c\uaaec\u3002.\u0acd",
8328 "output": null
8329 },
8330 {
8331 "comment": "V6; A4_2 (ignored)",
8332 "input": "1.xn--sv9a..xn--mfc",
8333 "output": null
8334 },
8335 {
8336 "comment": "C1; V6; A4_2 (ignored)",
8337 "input": "1.xn--0ug7185c..xn--mfc",
8338 "output": null
8339 },
8340 {
8341 "comment": "V6; V7",
8342 "input": "xn--tsh0720cse8b.xn--mfc",
8343 "output": null
8344 },
8345 {
8346 "comment": "C1; V6; V7",
8347 "input": "xn--0ug78o720myr1c.xn--mfc",
8348 "output": null
8349 },
8350 {
8351 "comment": "C2; V6; V7",
8352 "input": "\u00df\u200d.\u1bf2\ud8d3\udfbc",
8353 "output": null
8354 },
8355 {
8356 "comment": "C2; V6; V7",
8357 "input": "SS\u200d.\u1bf2\ud8d3\udfbc",
8358 "output": null
8359 },
8360 {
8361 "comment": "C2; V6; V7",
8362 "input": "ss\u200d.\u1bf2\ud8d3\udfbc",
8363 "output": null
8364 },
8365 {
8366 "comment": "C2; V6; V7",
8367 "input": "Ss\u200d.\u1bf2\ud8d3\udfbc",
8368 "output": null
8369 },
8370 {
8371 "comment": "V6; V7",
8372 "input": "ss.xn--0zf22107b",
8373 "output": null
8374 },
8375 {
8376 "comment": "C2; V6; V7",
8377 "input": "xn--ss-n1t.xn--0zf22107b",
8378 "output": null
8379 },
8380 {
8381 "comment": "C2; V6; V7",
8382 "input": "xn--zca870n.xn--0zf22107b",
8383 "output": null
8384 },
8385 {
8386 "comment": "V6",
8387 "input": "\ud805\udcc2\u200c\u226e.\u226e",
8388 "output": null
8389 },
8390 {
8391 "comment": "V6",
8392 "input": "\ud805\udcc2\u200c<\u0338.<\u0338",
8393 "output": null
8394 },
8395 {
8396 "comment": "V6",
8397 "input": "xn--gdhz656g.xn--gdh",
8398 "output": null
8399 },
8400 {
8401 "comment": "V6",
8402 "input": "xn--0ugy6glz29a.xn--gdh",
8403 "output": null
8404 },
8405 {
8406 "comment": "A4_2 (ignored)",
8407 "input": "\ud83d\udd7c\uff0e\uffa0",
8408 "output": "xn--my8h."
8409 },
8410 {
8411 "comment": "A4_2 (ignored)",
8412 "input": "\ud83d\udd7c.\u1160",
8413 "output": "xn--my8h."
8414 },
8415 {
8416 "comment": "A4_2 (ignored)",
8417 "input": "xn--my8h.",
8418 "output": "xn--my8h."
8419 },
8420 {
8421 "comment": "A4_2 (ignored)",
8422 "input": "\ud83d\udd7c.",
8423 "output": "xn--my8h."
8424 },
8425 {
8426 "comment": "V7",
8427 "input": "xn--my8h.xn--psd",
8428 "output": null
8429 },
8430 {
8431 "comment": "V7",
8432 "input": "xn--my8h.xn--cl7c",
8433 "output": null
8434 },
8435 {
8436 "comment": "V7",
8437 "input": "\u7215\uda8d\ude51\uff0e\ud835\udff0\u6c17",
8438 "output": null
8439 },
8440 {
8441 "comment": "V7",
8442 "input": "\u7215\uda8d\ude51.4\u6c17",
8443 "output": null
8444 },
8445 {
8446 "comment": "V7",
8447 "input": "xn--1zxq3199c.xn--4-678b",
8448 "output": null
8449 },
8450 {
8451 "comment": "V7; V2 (ignored); V3 (ignored)",
8452 "input": "\udb39\udf43\u3002\uda04\udd83\ud8e6\udc97--",
8453 "output": null
8454 },
8455 {
8456 "comment": "V7; V2 (ignored); V3 (ignored)",
8457 "input": "xn--2y75e.xn-----1l15eer88n",
8458 "output": null
8459 },
8460 {
8461 "comment": "V7",
8462 "input": "\u8530\u3002\udb40\udc79\u08dd-\ud804\ude35",
8463 "output": null
8464 },
8465 {
8466 "comment": "V7",
8467 "input": "xn--sz1a.xn----mrd9984r3dl0i",
8468 "output": null
8469 },
8470 {
8471 "input": "\u03c2\u10c5\u3002\u075a",
8472 "output": "xn--3xa403s.xn--epb"
8473 },
8474 {
8475 "input": "\u03c2\u2d25\u3002\u075a",
8476 "output": "xn--3xa403s.xn--epb"
8477 },
8478 {
8479 "input": "\u03a3\u10c5\u3002\u075a",
8480 "output": "xn--4xa203s.xn--epb"
8481 },
8482 {
8483 "input": "\u03c3\u2d25\u3002\u075a",
8484 "output": "xn--4xa203s.xn--epb"
8485 },
8486 {
8487 "input": "\u03a3\u2d25\u3002\u075a",
8488 "output": "xn--4xa203s.xn--epb"
8489 },
8490 {
8491 "input": "xn--4xa203s.xn--epb",
8492 "output": "xn--4xa203s.xn--epb"
8493 },
8494 {
8495 "input": "\u03c3\u2d25.\u075a",
8496 "output": "xn--4xa203s.xn--epb"
8497 },
8498 {
8499 "input": "\u03a3\u10c5.\u075a",
8500 "output": "xn--4xa203s.xn--epb"
8501 },
8502 {
8503 "input": "\u03a3\u2d25.\u075a",
8504 "output": "xn--4xa203s.xn--epb"
8505 },
8506 {
8507 "input": "xn--3xa403s.xn--epb",
8508 "output": "xn--3xa403s.xn--epb"
8509 },
8510 {
8511 "input": "\u03c2\u2d25.\u075a",
8512 "output": "xn--3xa403s.xn--epb"
8513 },
8514 {
8515 "comment": "V7",
8516 "input": "xn--4xa477d.xn--epb",
8517 "output": null
8518 },
8519 {
8520 "comment": "V7",
8521 "input": "xn--3xa677d.xn--epb",
8522 "output": null
8523 },
8524 {
8525 "input": "xn--vkb.xn--08e172a",
8526 "output": "xn--vkb.xn--08e172a"
8527 },
8528 {
8529 "input": "\u06bc.\u1e8f\u1864",
8530 "output": "xn--vkb.xn--08e172a"
8531 },
8532 {
8533 "input": "\u06bc.y\u0307\u1864",
8534 "output": "xn--vkb.xn--08e172a"
8535 },
8536 {
8537 "input": "\u06bc.Y\u0307\u1864",
8538 "output": "xn--vkb.xn--08e172a"
8539 },
8540 {
8541 "input": "\u06bc.\u1e8e\u1864",
8542 "output": "xn--vkb.xn--08e172a"
8543 },
8544 {
8545 "input": "xn--pt9c.xn--0kjya",
8546 "output": "xn--pt9c.xn--0kjya"
8547 },
8548 {
8549 "input": "\ud802\ude57.\u2d09\u2d15",
8550 "output": "xn--pt9c.xn--0kjya"
8551 },
8552 {
8553 "input": "\ud802\ude57.\u10a9\u10b5",
8554 "output": "xn--pt9c.xn--0kjya"
8555 },
8556 {
8557 "input": "\ud802\ude57.\u10a9\u2d15",
8558 "output": "xn--pt9c.xn--0kjya"
8559 },
8560 {
8561 "comment": "V7",
8562 "input": "xn--pt9c.xn--hnd666l",
8563 "output": null
8564 },
8565 {
8566 "comment": "V7",
8567 "input": "xn--pt9c.xn--hndy",
8568 "output": null
8569 },
8570 {
8571 "comment": "C1; V6; V7",
8572 "input": "\u200c\u200c\u3124\uff0e\u032e\udb16\ude11\u09c2",
8573 "output": null
8574 },
8575 {
8576 "comment": "C1; V6; V7",
8577 "input": "\u200c\u200c\u3124.\u032e\udb16\ude11\u09c2",
8578 "output": null
8579 },
8580 {
8581 "comment": "V6; V7",
8582 "input": "xn--1fk.xn--vta284a9o563a",
8583 "output": null
8584 },
8585 {
8586 "comment": "C1; V6; V7",
8587 "input": "xn--0uga242k.xn--vta284a9o563a",
8588 "output": null
8589 },
8590 {
8591 "comment": "V7",
8592 "input": "\u10b4\ud836\ude28\u2083\udb40\udc66\uff0e\ud835\udff3\ud804\udcb9\u0b82",
8593 "output": null
8594 },
8595 {
8596 "comment": "V7",
8597 "input": "\u10b4\ud836\ude283\udb40\udc66.7\ud804\udcb9\u0b82",
8598 "output": null
8599 },
8600 {
8601 "comment": "V7",
8602 "input": "\u2d14\ud836\ude283\udb40\udc66.7\ud804\udcb9\u0b82",
8603 "output": null
8604 },
8605 {
8606 "comment": "V7",
8607 "input": "xn--3-ews6985n35s3g.xn--7-cve6271r",
8608 "output": null
8609 },
8610 {
8611 "comment": "V7",
8612 "input": "\u2d14\ud836\ude28\u2083\udb40\udc66\uff0e\ud835\udff3\ud804\udcb9\u0b82",
8613 "output": null
8614 },
8615 {
8616 "comment": "V7",
8617 "input": "xn--3-b1g83426a35t0g.xn--7-cve6271r",
8618 "output": null
8619 },
8620 {
8621 "comment": "C1; V7",
8622 "input": "\u43c8\u200c\u3002\u200c\u2488\ud986\udc95",
8623 "output": null
8624 },
8625 {
8626 "comment": "C1; V7",
8627 "input": "\u43c8\u200c\u3002\u200c1.\ud986\udc95",
8628 "output": null
8629 },
8630 {
8631 "comment": "V7",
8632 "input": "xn--eco.1.xn--ms39a",
8633 "output": null
8634 },
8635 {
8636 "comment": "C1; V7",
8637 "input": "xn--0ug491l.xn--1-rgn.xn--ms39a",
8638 "output": null
8639 },
8640 {
8641 "comment": "V7",
8642 "input": "xn--eco.xn--tsh21126d",
8643 "output": null
8644 },
8645 {
8646 "comment": "C1; V7",
8647 "input": "xn--0ug491l.xn--0ug88oot66q",
8648 "output": null
8649 },
8650 {
8651 "comment": "V6",
8652 "input": "\uff11\uaaf6\u00df\ud807\udca5\uff61\u1dd8",
8653 "output": null
8654 },
8655 {
8656 "comment": "V6",
8657 "input": "1\uaaf6\u00df\ud807\udca5\u3002\u1dd8",
8658 "output": null
8659 },
8660 {
8661 "comment": "V6",
8662 "input": "1\uaaf6SS\ud807\udca5\u3002\u1dd8",
8663 "output": null
8664 },
8665 {
8666 "comment": "V6",
8667 "input": "1\uaaf6ss\ud807\udca5\u3002\u1dd8",
8668 "output": null
8669 },
8670 {
8671 "comment": "V6",
8672 "input": "xn--1ss-ir6ln166b.xn--weg",
8673 "output": null
8674 },
8675 {
8676 "comment": "V6",
8677 "input": "xn--1-qfa2471kdb0d.xn--weg",
8678 "output": null
8679 },
8680 {
8681 "comment": "V6",
8682 "input": "\uff11\uaaf6SS\ud807\udca5\uff61\u1dd8",
8683 "output": null
8684 },
8685 {
8686 "comment": "V6",
8687 "input": "\uff11\uaaf6ss\ud807\udca5\uff61\u1dd8",
8688 "output": null
8689 },
8690 {
8691 "comment": "V6",
8692 "input": "1\uaaf6Ss\ud807\udca5\u3002\u1dd8",
8693 "output": null
8694 },
8695 {
8696 "comment": "V6",
8697 "input": "\uff11\uaaf6Ss\ud807\udca5\uff61\u1dd8",
8698 "output": null
8699 },
8700 {
8701 "comment": "V7",
8702 "input": "xn--3j78f.xn--mkb20b",
8703 "output": null
8704 },
8705 {
8706 "comment": "V7",
8707 "input": "\ud88a\udd31\u249b\u2fb3\uff0e\ua866\u2488",
8708 "output": null
8709 },
8710 {
8711 "comment": "A4_2 (ignored)",
8712 "input": "\ud88a\udd3120.\u97f3.\ua8661.",
8713 "output": "xn--20-9802c.xn--0w5a.xn--1-eg4e."
8714 },
8715 {
8716 "comment": "A4_2 (ignored)",
8717 "input": "xn--20-9802c.xn--0w5a.xn--1-eg4e.",
8718 "output": "xn--20-9802c.xn--0w5a.xn--1-eg4e."
8719 },
8720 {
8721 "comment": "V7",
8722 "input": "xn--dth6033bzbvx.xn--tsh9439b",
8723 "output": null
8724 },
8725 {
8726 "input": "\u10b5\u3002\u06f0\u226e\u00df\u0745",
8727 "output": "xn--dlj.xn--zca912alh227g"
8728 },
8729 {
8730 "input": "\u10b5\u3002\u06f0<\u0338\u00df\u0745",
8731 "output": "xn--dlj.xn--zca912alh227g"
8732 },
8733 {
8734 "input": "\u2d15\u3002\u06f0<\u0338\u00df\u0745",
8735 "output": "xn--dlj.xn--zca912alh227g"
8736 },
8737 {
8738 "input": "\u2d15\u3002\u06f0\u226e\u00df\u0745",
8739 "output": "xn--dlj.xn--zca912alh227g"
8740 },
8741 {
8742 "input": "\u10b5\u3002\u06f0\u226eSS\u0745",
8743 "output": "xn--dlj.xn--ss-jbe65aw27i"
8744 },
8745 {
8746 "input": "\u10b5\u3002\u06f0<\u0338SS\u0745",
8747 "output": "xn--dlj.xn--ss-jbe65aw27i"
8748 },
8749 {
8750 "input": "\u2d15\u3002\u06f0<\u0338ss\u0745",
8751 "output": "xn--dlj.xn--ss-jbe65aw27i"
8752 },
8753 {
8754 "input": "\u2d15\u3002\u06f0\u226ess\u0745",
8755 "output": "xn--dlj.xn--ss-jbe65aw27i"
8756 },
8757 {
8758 "input": "\u10b5\u3002\u06f0\u226eSs\u0745",
8759 "output": "xn--dlj.xn--ss-jbe65aw27i"
8760 },
8761 {
8762 "input": "\u10b5\u3002\u06f0<\u0338Ss\u0745",
8763 "output": "xn--dlj.xn--ss-jbe65aw27i"
8764 },
8765 {
8766 "input": "xn--dlj.xn--ss-jbe65aw27i",
8767 "output": "xn--dlj.xn--ss-jbe65aw27i"
8768 },
8769 {
8770 "input": "\u2d15.\u06f0\u226ess\u0745",
8771 "output": "xn--dlj.xn--ss-jbe65aw27i"
8772 },
8773 {
8774 "input": "\u2d15.\u06f0<\u0338ss\u0745",
8775 "output": "xn--dlj.xn--ss-jbe65aw27i"
8776 },
8777 {
8778 "input": "\u10b5.\u06f0<\u0338SS\u0745",
8779 "output": "xn--dlj.xn--ss-jbe65aw27i"
8780 },
8781 {
8782 "input": "\u10b5.\u06f0\u226eSS\u0745",
8783 "output": "xn--dlj.xn--ss-jbe65aw27i"
8784 },
8785 {
8786 "input": "\u10b5.\u06f0\u226eSs\u0745",
8787 "output": "xn--dlj.xn--ss-jbe65aw27i"
8788 },
8789 {
8790 "input": "\u10b5.\u06f0<\u0338Ss\u0745",
8791 "output": "xn--dlj.xn--ss-jbe65aw27i"
8792 },
8793 {
8794 "input": "xn--dlj.xn--zca912alh227g",
8795 "output": "xn--dlj.xn--zca912alh227g"
8796 },
8797 {
8798 "input": "\u2d15.\u06f0\u226e\u00df\u0745",
8799 "output": "xn--dlj.xn--zca912alh227g"
8800 },
8801 {
8802 "input": "\u2d15.\u06f0<\u0338\u00df\u0745",
8803 "output": "xn--dlj.xn--zca912alh227g"
8804 },
8805 {
8806 "comment": "V7",
8807 "input": "xn--tnd.xn--ss-jbe65aw27i",
8808 "output": null
8809 },
8810 {
8811 "comment": "V7",
8812 "input": "xn--tnd.xn--zca912alh227g",
8813 "output": null
8814 },
8815 {
8816 "input": "xn--ge6h.xn--oc9a",
8817 "output": "xn--ge6h.xn--oc9a"
8818 },
8819 {
8820 "input": "\ud83a\udd28.\ua84f",
8821 "output": "xn--ge6h.xn--oc9a"
8822 },
8823 {
8824 "input": "\ud83a\udd06.\ua84f",
8825 "output": "xn--ge6h.xn--oc9a"
8826 },
8827 {
8828 "comment": "V7",
8829 "input": "\u2132\udb40\udd7a\ud937\udd52\u3002\u226f\u2f91",
8830 "output": null
8831 },
8832 {
8833 "comment": "V7",
8834 "input": "\u2132\udb40\udd7a\ud937\udd52\u3002>\u0338\u2f91",
8835 "output": null
8836 },
8837 {
8838 "comment": "V7",
8839 "input": "\u2132\udb40\udd7a\ud937\udd52\u3002\u226f\u897e",
8840 "output": null
8841 },
8842 {
8843 "comment": "V7",
8844 "input": "\u2132\udb40\udd7a\ud937\udd52\u3002>\u0338\u897e",
8845 "output": null
8846 },
8847 {
8848 "comment": "V7",
8849 "input": "\u214e\udb40\udd7a\ud937\udd52\u3002>\u0338\u897e",
8850 "output": null
8851 },
8852 {
8853 "comment": "V7",
8854 "input": "\u214e\udb40\udd7a\ud937\udd52\u3002\u226f\u897e",
8855 "output": null
8856 },
8857 {
8858 "comment": "V7",
8859 "input": "xn--73g39298c.xn--hdhz171b",
8860 "output": null
8861 },
8862 {
8863 "comment": "V7",
8864 "input": "\u214e\udb40\udd7a\ud937\udd52\u3002>\u0338\u2f91",
8865 "output": null
8866 },
8867 {
8868 "comment": "V7",
8869 "input": "\u214e\udb40\udd7a\ud937\udd52\u3002\u226f\u2f91",
8870 "output": null
8871 },
8872 {
8873 "comment": "V7",
8874 "input": "xn--f3g73398c.xn--hdhz171b",
8875 "output": null
8876 },
8877 {
8878 "comment": "C1; V3 (ignored)",
8879 "input": "\u200c.\u00df\u10a9-",
8880 "output": null
8881 },
8882 {
8883 "comment": "C1; V3 (ignored)",
8884 "input": "\u200c.\u00df\u2d09-",
8885 "output": null
8886 },
8887 {
8888 "comment": "C1; V3 (ignored)",
8889 "input": "\u200c.SS\u10a9-",
8890 "output": null
8891 },
8892 {
8893 "comment": "C1; V3 (ignored)",
8894 "input": "\u200c.ss\u2d09-",
8895 "output": null
8896 },
8897 {
8898 "comment": "C1; V3 (ignored)",
8899 "input": "\u200c.Ss\u2d09-",
8900 "output": null
8901 },
8902 {
8903 "comment": "V3 (ignored); A4_2 (ignored)",
8904 "input": ".xn--ss--bi1b",
8905 "output": ".xn--ss--bi1b"
8906 },
8907 {
8908 "comment": "C1; V3 (ignored)",
8909 "input": "xn--0ug.xn--ss--bi1b",
8910 "output": null
8911 },
8912 {
8913 "comment": "C1; V3 (ignored)",
8914 "input": "xn--0ug.xn----pfa2305a",
8915 "output": null
8916 },
8917 {
8918 "comment": "V7; V3 (ignored); A4_2 (ignored)",
8919 "input": ".xn--ss--4rn",
8920 "output": null
8921 },
8922 {
8923 "comment": "C1; V7; V3 (ignored)",
8924 "input": "xn--0ug.xn--ss--4rn",
8925 "output": null
8926 },
8927 {
8928 "comment": "C1; V7; V3 (ignored)",
8929 "input": "xn--0ug.xn----pfa042j",
8930 "output": null
8931 },
8932 {
8933 "input": "\u9f59--\ud835\udff0.\u00df",
8934 "output": "xn----4-p16k.xn--zca"
8935 },
8936 {
8937 "input": "\u9f59--4.\u00df",
8938 "output": "xn----4-p16k.xn--zca"
8939 },
8940 {
8941 "input": "\u9f59--4.SS",
8942 "output": "xn----4-p16k.ss"
8943 },
8944 {
8945 "input": "\u9f59--4.ss",
8946 "output": "xn----4-p16k.ss"
8947 },
8948 {
8949 "input": "\u9f59--4.Ss",
8950 "output": "xn----4-p16k.ss"
8951 },
8952 {
8953 "input": "xn----4-p16k.ss",
8954 "output": "xn----4-p16k.ss"
8955 },
8956 {
8957 "input": "xn----4-p16k.xn--zca",
8958 "output": "xn----4-p16k.xn--zca"
8959 },
8960 {
8961 "input": "\u9f59--\ud835\udff0.SS",
8962 "output": "xn----4-p16k.ss"
8963 },
8964 {
8965 "input": "\u9f59--\ud835\udff0.ss",
8966 "output": "xn----4-p16k.ss"
8967 },
8968 {
8969 "input": "\u9f59--\ud835\udff0.Ss",
8970 "output": "xn----4-p16k.ss"
8971 },
8972 {
8973 "comment": "V7; V3 (ignored)",
8974 "input": "\udb42\udea2-\u3002\uda2c\udc8f\u226e\ud805\udf2b",
8975 "output": null
8976 },
8977 {
8978 "comment": "V7; V3 (ignored)",
8979 "input": "\udb42\udea2-\u3002\uda2c\udc8f<\u0338\ud805\udf2b",
8980 "output": null
8981 },
8982 {
8983 "comment": "V7; V3 (ignored)",
8984 "input": "xn----bh61m.xn--gdhz157g0em1d",
8985 "output": null
8986 },
8987 {
8988 "comment": "C1; C2; V7",
8989 "input": "\u200c\udb40\ude79\u200d\u3002\ud9f3\udfe7\u226e\u10a9",
8990 "output": null
8991 },
8992 {
8993 "comment": "C1; C2; V7",
8994 "input": "\u200c\udb40\ude79\u200d\u3002\ud9f3\udfe7<\u0338\u10a9",
8995 "output": null
8996 },
8997 {
8998 "comment": "C1; C2; V7",
8999 "input": "\u200c\udb40\ude79\u200d\u3002\ud9f3\udfe7<\u0338\u2d09",
9000 "output": null
9001 },
9002 {
9003 "comment": "C1; C2; V7",
9004 "input": "\u200c\udb40\ude79\u200d\u3002\ud9f3\udfe7\u226e\u2d09",
9005 "output": null
9006 },
9007 {
9008 "comment": "V7",
9009 "input": "xn--3n36e.xn--gdh992byu01p",
9010 "output": null
9011 },
9012 {
9013 "comment": "C1; C2; V7",
9014 "input": "xn--0ugc90904y.xn--gdh992byu01p",
9015 "output": null
9016 },
9017 {
9018 "comment": "V7",
9019 "input": "xn--3n36e.xn--hnd112gpz83n",
9020 "output": null
9021 },
9022 {
9023 "comment": "C1; C2; V7",
9024 "input": "xn--0ugc90904y.xn--hnd112gpz83n",
9025 "output": null
9026 },
9027 {
9028 "comment": "V6",
9029 "input": "\ud836\ude9e\u10b0\uff61\ucaa1",
9030 "output": null
9031 },
9032 {
9033 "comment": "V6",
9034 "input": "\ud836\ude9e\u10b0\uff61\u110d\u1168\u11a8",
9035 "output": null
9036 },
9037 {
9038 "comment": "V6",
9039 "input": "\ud836\ude9e\u10b0\u3002\ucaa1",
9040 "output": null
9041 },
9042 {
9043 "comment": "V6",
9044 "input": "\ud836\ude9e\u10b0\u3002\u110d\u1168\u11a8",
9045 "output": null
9046 },
9047 {
9048 "comment": "V6",
9049 "input": "\ud836\ude9e\u2d10\u3002\u110d\u1168\u11a8",
9050 "output": null
9051 },
9052 {
9053 "comment": "V6",
9054 "input": "\ud836\ude9e\u2d10\u3002\ucaa1",
9055 "output": null
9056 },
9057 {
9058 "comment": "V6",
9059 "input": "xn--7kj1858k.xn--pi6b",
9060 "output": null
9061 },
9062 {
9063 "comment": "V6",
9064 "input": "\ud836\ude9e\u2d10\uff61\u110d\u1168\u11a8",
9065 "output": null
9066 },
9067 {
9068 "comment": "V6",
9069 "input": "\ud836\ude9e\u2d10\uff61\ucaa1",
9070 "output": null
9071 },
9072 {
9073 "comment": "V6; V7",
9074 "input": "xn--ond3755u.xn--pi6b",
9075 "output": null
9076 },
9077 {
9078 "comment": "C1; V7",
9079 "input": "\u1845\uff10\u200c\uff61\u23a2\udb52\ude04",
9080 "output": null
9081 },
9082 {
9083 "comment": "C1; V7",
9084 "input": "\u18450\u200c\u3002\u23a2\udb52\ude04",
9085 "output": null
9086 },
9087 {
9088 "comment": "V7",
9089 "input": "xn--0-z6j.xn--8lh28773l",
9090 "output": null
9091 },
9092 {
9093 "comment": "C1; V7",
9094 "input": "xn--0-z6jy93b.xn--8lh28773l",
9095 "output": null
9096 },
9097 {
9098 "comment": "C2",
9099 "input": "\ud88a\udf9a\uff19\ua369\u17d3\uff0e\u200d\u00df",
9100 "output": null
9101 },
9102 {
9103 "comment": "C2",
9104 "input": "\ud88a\udf9a9\ua369\u17d3.\u200d\u00df",
9105 "output": null
9106 },
9107 {
9108 "comment": "C2",
9109 "input": "\ud88a\udf9a9\ua369\u17d3.\u200dSS",
9110 "output": null
9111 },
9112 {
9113 "comment": "C2",
9114 "input": "\ud88a\udf9a9\ua369\u17d3.\u200dss",
9115 "output": null
9116 },
9117 {
9118 "input": "xn--9-i0j5967eg3qz.ss",
9119 "output": "xn--9-i0j5967eg3qz.ss"
9120 },
9121 {
9122 "input": "\ud88a\udf9a9\ua369\u17d3.ss",
9123 "output": "xn--9-i0j5967eg3qz.ss"
9124 },
9125 {
9126 "input": "\ud88a\udf9a9\ua369\u17d3.SS",
9127 "output": "xn--9-i0j5967eg3qz.ss"
9128 },
9129 {
9130 "comment": "C2",
9131 "input": "xn--9-i0j5967eg3qz.xn--ss-l1t",
9132 "output": null
9133 },
9134 {
9135 "comment": "C2",
9136 "input": "xn--9-i0j5967eg3qz.xn--zca770n",
9137 "output": null
9138 },
9139 {
9140 "comment": "C2",
9141 "input": "\ud88a\udf9a\uff19\ua369\u17d3\uff0e\u200dSS",
9142 "output": null
9143 },
9144 {
9145 "comment": "C2",
9146 "input": "\ud88a\udf9a\uff19\ua369\u17d3\uff0e\u200dss",
9147 "output": null
9148 },
9149 {
9150 "comment": "C2",
9151 "input": "\ud88a\udf9a9\ua369\u17d3.\u200dSs",
9152 "output": null
9153 },
9154 {
9155 "comment": "C2",
9156 "input": "\ud88a\udf9a\uff19\ua369\u17d3\uff0e\u200dSs",
9157 "output": null
9158 },
9159 {
9160 "input": "\ua5f7\ud804\udd80.\u075d\ud802\ude52",
9161 "output": "xn--ju8a625r.xn--hpb0073k"
9162 },
9163 {
9164 "input": "xn--ju8a625r.xn--hpb0073k",
9165 "output": "xn--ju8a625r.xn--hpb0073k"
9166 },
9167 {
9168 "comment": "V7; V3 (ignored)",
9169 "input": "\u2490\u226f-\u3002\ufe12\uda65\udc63-\ud939\udee0",
9170 "output": null
9171 },
9172 {
9173 "comment": "V7; V3 (ignored)",
9174 "input": "\u2490>\u0338-\u3002\ufe12\uda65\udc63-\ud939\udee0",
9175 "output": null
9176 },
9177 {
9178 "comment": "V7; V3 (ignored); A4_2 (ignored)",
9179 "input": "9.\u226f-\u3002\u3002\uda65\udc63-\ud939\udee0",
9180 "output": null
9181 },
9182 {
9183 "comment": "V7; V3 (ignored); A4_2 (ignored)",
9184 "input": "9.>\u0338-\u3002\u3002\uda65\udc63-\ud939\udee0",
9185 "output": null
9186 },
9187 {
9188 "comment": "V7; V3 (ignored); A4_2 (ignored)",
9189 "input": "9.xn----ogo..xn----xj54d1s69k",
9190 "output": null
9191 },
9192 {
9193 "comment": "V7; V3 (ignored)",
9194 "input": "xn----ogot9g.xn----n89hl0522az9u2a",
9195 "output": null
9196 },
9197 {
9198 "comment": "C2; V3 (ignored)",
9199 "input": "\u10af\udb40\udd4b-\uff0e\u200d\u10a9",
9200 "output": null
9201 },
9202 {
9203 "comment": "C2; V3 (ignored)",
9204 "input": "\u10af\udb40\udd4b-.\u200d\u10a9",
9205 "output": null
9206 },
9207 {
9208 "comment": "C2; V3 (ignored)",
9209 "input": "\u2d0f\udb40\udd4b-.\u200d\u2d09",
9210 "output": null
9211 },
9212 {
9213 "comment": "V3 (ignored)",
9214 "input": "xn----3vs.xn--0kj",
9215 "output": "xn----3vs.xn--0kj"
9216 },
9217 {
9218 "comment": "C2; V3 (ignored)",
9219 "input": "xn----3vs.xn--1ug532c",
9220 "output": null
9221 },
9222 {
9223 "comment": "C2; V3 (ignored)",
9224 "input": "\u2d0f\udb40\udd4b-\uff0e\u200d\u2d09",
9225 "output": null
9226 },
9227 {
9228 "comment": "V7; V3 (ignored)",
9229 "input": "xn----00g.xn--hnd",
9230 "output": null
9231 },
9232 {
9233 "comment": "C2; V7; V3 (ignored)",
9234 "input": "xn----00g.xn--hnd399e",
9235 "output": null
9236 },
9237 {
9238 "comment": "V6; V3 (ignored)",
9239 "input": "\u1714\u3002\udb40\udda3-\ud804\udeea",
9240 "output": null
9241 },
9242 {
9243 "comment": "V6; V3 (ignored)",
9244 "input": "xn--fze.xn----ly8i",
9245 "output": null
9246 },
9247 {
9248 "comment": "V6; V7; V3 (ignored)",
9249 "input": "\uabe8-\uff0e\uda60\udfdc\u05bd\u00df",
9250 "output": null
9251 },
9252 {
9253 "comment": "V6; V7; V3 (ignored)",
9254 "input": "\uabe8-.\uda60\udfdc\u05bd\u00df",
9255 "output": null
9256 },
9257 {
9258 "comment": "V6; V7; V3 (ignored)",
9259 "input": "\uabe8-.\uda60\udfdc\u05bdSS",
9260 "output": null
9261 },
9262 {
9263 "comment": "V6; V7; V3 (ignored)",
9264 "input": "\uabe8-.\uda60\udfdc\u05bdss",
9265 "output": null
9266 },
9267 {
9268 "comment": "V6; V7; V3 (ignored)",
9269 "input": "\uabe8-.\uda60\udfdc\u05bdSs",
9270 "output": null
9271 },
9272 {
9273 "comment": "V6; V7; V3 (ignored)",
9274 "input": "xn----pw5e.xn--ss-7jd10716y",
9275 "output": null
9276 },
9277 {
9278 "comment": "V6; V7; V3 (ignored)",
9279 "input": "xn----pw5e.xn--zca50wfv060a",
9280 "output": null
9281 },
9282 {
9283 "comment": "V6; V7; V3 (ignored)",
9284 "input": "\uabe8-\uff0e\uda60\udfdc\u05bdSS",
9285 "output": null
9286 },
9287 {
9288 "comment": "V6; V7; V3 (ignored)",
9289 "input": "\uabe8-\uff0e\uda60\udfdc\u05bdss",
9290 "output": null
9291 },
9292 {
9293 "comment": "V6; V7; V3 (ignored)",
9294 "input": "\uabe8-\uff0e\uda60\udfdc\u05bdSs",
9295 "output": null
9296 },
9297 {
9298 "comment": "V6",
9299 "input": "\ud835\udfe5\u266e\ud805\udf2b\u08ed\uff0e\u17d2\ud805\udf2b8\udb40\udd8f",
9300 "output": null
9301 },
9302 {
9303 "comment": "V6",
9304 "input": "3\u266e\ud805\udf2b\u08ed.\u17d2\ud805\udf2b8\udb40\udd8f",
9305 "output": null
9306 },
9307 {
9308 "comment": "V6",
9309 "input": "xn--3-ksd277tlo7s.xn--8-f0jx021l",
9310 "output": null
9311 },
9312 {
9313 "comment": "C2; V7; V3 (ignored)",
9314 "input": "-\uff61\uda14\udf00\u200d\u2761",
9315 "output": null
9316 },
9317 {
9318 "comment": "C2; V7; V3 (ignored)",
9319 "input": "-\u3002\uda14\udf00\u200d\u2761",
9320 "output": null
9321 },
9322 {
9323 "comment": "V7; V3 (ignored)",
9324 "input": "-.xn--nei54421f",
9325 "output": null
9326 },
9327 {
9328 "comment": "C2; V7; V3 (ignored)",
9329 "input": "-.xn--1ug800aq795s",
9330 "output": null
9331 },
9332 {
9333 "comment": "V6; V7",
9334 "input": "\ud835\udfd3\u2631\ud835\udfd0\uda57\udc35\uff61\ud836\udeae\ud902\udc73",
9335 "output": null
9336 },
9337 {
9338 "comment": "V6; V7",
9339 "input": "5\u26312\uda57\udc35\u3002\ud836\udeae\ud902\udc73",
9340 "output": null
9341 },
9342 {
9343 "comment": "V6; V7",
9344 "input": "xn--52-dwx47758j.xn--kd3hk431k",
9345 "output": null
9346 },
9347 {
9348 "comment": "V7; V3 (ignored)",
9349 "input": "-.-\u251c\uda1a\udda3",
9350 "output": null
9351 },
9352 {
9353 "comment": "V7; V3 (ignored)",
9354 "input": "-.xn----ukp70432h",
9355 "output": null
9356 },
9357 {
9358 "comment": "V7",
9359 "input": "\u03c2\uff0e\ufdc1\ud83d\udf9b\u2488",
9360 "output": null
9361 },
9362 {
9363 "comment": "A4_2 (ignored)",
9364 "input": "\u03c2.\u0641\u0645\u064a\ud83d\udf9b1.",
9365 "output": "xn--3xa.xn--1-gocmu97674d."
9366 },
9367 {
9368 "comment": "A4_2 (ignored)",
9369 "input": "\u03a3.\u0641\u0645\u064a\ud83d\udf9b1.",
9370 "output": "xn--4xa.xn--1-gocmu97674d."
9371 },
9372 {
9373 "comment": "A4_2 (ignored)",
9374 "input": "\u03c3.\u0641\u0645\u064a\ud83d\udf9b1.",
9375 "output": "xn--4xa.xn--1-gocmu97674d."
9376 },
9377 {
9378 "comment": "A4_2 (ignored)",
9379 "input": "xn--4xa.xn--1-gocmu97674d.",
9380 "output": "xn--4xa.xn--1-gocmu97674d."
9381 },
9382 {
9383 "comment": "A4_2 (ignored)",
9384 "input": "xn--3xa.xn--1-gocmu97674d.",
9385 "output": "xn--3xa.xn--1-gocmu97674d."
9386 },
9387 {
9388 "comment": "V7",
9389 "input": "\u03a3\uff0e\ufdc1\ud83d\udf9b\u2488",
9390 "output": null
9391 },
9392 {
9393 "comment": "V7",
9394 "input": "\u03c3\uff0e\ufdc1\ud83d\udf9b\u2488",
9395 "output": null
9396 },
9397 {
9398 "comment": "V7",
9399 "input": "xn--4xa.xn--dhbip2802atb20c",
9400 "output": null
9401 },
9402 {
9403 "comment": "V7",
9404 "input": "xn--3xa.xn--dhbip2802atb20c",
9405 "output": null
9406 },
9407 {
9408 "comment": "V7",
9409 "input": "9\udb40\udde5\uff0e\udb6b\udd34\u1893",
9410 "output": null
9411 },
9412 {
9413 "comment": "V7",
9414 "input": "9\udb40\udde5.\udb6b\udd34\u1893",
9415 "output": null
9416 },
9417 {
9418 "comment": "V7",
9419 "input": "9.xn--dbf91222q",
9420 "output": null
9421 },
9422 {
9423 "comment": "C1; V7",
9424 "input": "\ufe12\u10b6\u0366\uff0e\u200c",
9425 "output": null
9426 },
9427 {
9428 "comment": "C1; A4_2 (ignored)",
9429 "input": "\u3002\u10b6\u0366.\u200c",
9430 "output": null
9431 },
9432 {
9433 "comment": "C1; A4_2 (ignored)",
9434 "input": "\u3002\u2d16\u0366.\u200c",
9435 "output": null
9436 },
9437 {
9438 "comment": "A4_2 (ignored)",
9439 "input": ".xn--hva754s.",
9440 "output": ".xn--hva754s."
9441 },
9442 {
9443 "comment": "C1; A4_2 (ignored)",
9444 "input": ".xn--hva754s.xn--0ug",
9445 "output": null
9446 },
9447 {
9448 "comment": "C1; V7",
9449 "input": "\ufe12\u2d16\u0366\uff0e\u200c",
9450 "output": null
9451 },
9452 {
9453 "comment": "V7; A4_2 (ignored)",
9454 "input": "xn--hva754sy94k.",
9455 "output": null
9456 },
9457 {
9458 "comment": "C1; V7",
9459 "input": "xn--hva754sy94k.xn--0ug",
9460 "output": null
9461 },
9462 {
9463 "comment": "V7; A4_2 (ignored)",
9464 "input": ".xn--hva929d.",
9465 "output": null
9466 },
9467 {
9468 "comment": "C1; V7; A4_2 (ignored)",
9469 "input": ".xn--hva929d.xn--0ug",
9470 "output": null
9471 },
9472 {
9473 "comment": "V7; A4_2 (ignored)",
9474 "input": "xn--hva929dl29p.",
9475 "output": null
9476 },
9477 {
9478 "comment": "C1; V7",
9479 "input": "xn--hva929dl29p.xn--0ug",
9480 "output": null
9481 },
9482 {
9483 "comment": "A4_2 (ignored)",
9484 "input": "xn--hva754s.",
9485 "output": "xn--hva754s."
9486 },
9487 {
9488 "comment": "A4_2 (ignored)",
9489 "input": "\u2d16\u0366.",
9490 "output": "xn--hva754s."
9491 },
9492 {
9493 "comment": "A4_2 (ignored)",
9494 "input": "\u10b6\u0366.",
9495 "output": "xn--hva754s."
9496 },
9497 {
9498 "comment": "V7; A4_2 (ignored)",
9499 "input": "xn--hva929d.",
9500 "output": null
9501 },
9502 {
9503 "input": "xn--hzb.xn--ukj4430l",
9504 "output": "xn--hzb.xn--ukj4430l"
9505 },
9506 {
9507 "input": "\u08bb.\u2d03\ud838\udc12",
9508 "output": "xn--hzb.xn--ukj4430l"
9509 },
9510 {
9511 "input": "\u08bb.\u10a3\ud838\udc12",
9512 "output": "xn--hzb.xn--ukj4430l"
9513 },
9514 {
9515 "comment": "V7",
9516 "input": "xn--hzb.xn--bnd2938u",
9517 "output": null
9518 },
9519 {
9520 "comment": "C1; C2; V7",
9521 "input": "\u200d\u200c\u3002\uff12\u4af7\udb42\uddf7",
9522 "output": null
9523 },
9524 {
9525 "comment": "C1; C2; V7",
9526 "input": "\u200d\u200c\u30022\u4af7\udb42\uddf7",
9527 "output": null
9528 },
9529 {
9530 "comment": "V7; A4_2 (ignored)",
9531 "input": ".xn--2-me5ay1273i",
9532 "output": null
9533 },
9534 {
9535 "comment": "C1; C2; V7",
9536 "input": "xn--0ugb.xn--2-me5ay1273i",
9537 "output": null
9538 },
9539 {
9540 "comment": "V7; V3 (ignored)",
9541 "input": "-\ud838\udc24\udb32\udc10\u3002\ud9e2\udf16",
9542 "output": null
9543 },
9544 {
9545 "comment": "V7; V3 (ignored)",
9546 "input": "xn----rq4re4997d.xn--l707b",
9547 "output": null
9548 },
9549 {
9550 "comment": "C1; V7",
9551 "input": "\udb8d\udec2\ufe12\u200c\u37c0\uff0e\u0624\u2488",
9552 "output": null
9553 },
9554 {
9555 "comment": "C1; V7",
9556 "input": "\udb8d\udec2\ufe12\u200c\u37c0\uff0e\u0648\u0654\u2488",
9557 "output": null
9558 },
9559 {
9560 "comment": "V7; A4_2 (ignored)",
9561 "input": "xn--z272f.xn--etl.xn--1-smc.",
9562 "output": null
9563 },
9564 {
9565 "comment": "V7",
9566 "input": "xn--etlt457ccrq7h.xn--jgb476m",
9567 "output": null
9568 },
9569 {
9570 "comment": "C1; V7",
9571 "input": "xn--0ug754gxl4ldlt0k.xn--jgb476m",
9572 "output": null
9573 },
9574 {
9575 "comment": "V7",
9576 "input": "\u07fc\ud803\ude06.\ud80d\udd8f\ufe12\ud8ea\ude29\u10b0",
9577 "output": null
9578 },
9579 {
9580 "comment": "V7",
9581 "input": "\u07fc\ud803\ude06.\ud80d\udd8f\u3002\ud8ea\ude29\u10b0",
9582 "output": null
9583 },
9584 {
9585 "comment": "V7",
9586 "input": "\u07fc\ud803\ude06.\ud80d\udd8f\u3002\ud8ea\ude29\u2d10",
9587 "output": null
9588 },
9589 {
9590 "comment": "V7",
9591 "input": "xn--0tb8725k.xn--tu8d.xn--7kj73887a",
9592 "output": null
9593 },
9594 {
9595 "comment": "V7",
9596 "input": "\u07fc\ud803\ude06.\ud80d\udd8f\ufe12\ud8ea\ude29\u2d10",
9597 "output": null
9598 },
9599 {
9600 "comment": "V7",
9601 "input": "xn--0tb8725k.xn--7kj9008dt18a7py9c",
9602 "output": null
9603 },
9604 {
9605 "comment": "V7",
9606 "input": "xn--0tb8725k.xn--tu8d.xn--ond97931d",
9607 "output": null
9608 },
9609 {
9610 "comment": "V7",
9611 "input": "xn--0tb8725k.xn--ond3562jt18a7py9c",
9612 "output": null
9613 },
9614 {
9615 "comment": "V6; V7",
9616 "input": "\u10c5\u26ad\udb41\uddab\u22c3\uff61\ud804\udf3c",
9617 "output": null
9618 },
9619 {
9620 "comment": "V6; V7",
9621 "input": "\u10c5\u26ad\udb41\uddab\u22c3\u3002\ud804\udf3c",
9622 "output": null
9623 },
9624 {
9625 "comment": "V6; V7",
9626 "input": "\u2d25\u26ad\udb41\uddab\u22c3\u3002\ud804\udf3c",
9627 "output": null
9628 },
9629 {
9630 "comment": "V6; V7",
9631 "input": "xn--vfh16m67gx1162b.xn--ro1d",
9632 "output": null
9633 },
9634 {
9635 "comment": "V6; V7",
9636 "input": "\u2d25\u26ad\udb41\uddab\u22c3\uff61\ud804\udf3c",
9637 "output": null
9638 },
9639 {
9640 "comment": "V6; V7",
9641 "input": "xn--9nd623g4zc5z060c.xn--ro1d",
9642 "output": null
9643 },
9644 {
9645 "comment": "V3 (ignored)",
9646 "input": "\udb40\udd93\u26cf-\u3002\ua852",
9647 "output": "xn----o9p.xn--rc9a"
9648 },
9649 {
9650 "comment": "V3 (ignored)",
9651 "input": "xn----o9p.xn--rc9a",
9652 "output": "xn----o9p.xn--rc9a"
9653 },
9654 {
9655 "comment": "V7; V3 (ignored)",
9656 "input": "\ud8c8\ude26\u5e37\uff61\u226f\u843a\u1dc8-",
9657 "output": null
9658 },
9659 {
9660 "comment": "V7; V3 (ignored)",
9661 "input": "\ud8c8\ude26\u5e37\uff61>\u0338\u843a\u1dc8-",
9662 "output": null
9663 },
9664 {
9665 "comment": "V7; V3 (ignored)",
9666 "input": "\ud8c8\ude26\u5e37\u3002\u226f\u843a\u1dc8-",
9667 "output": null
9668 },
9669 {
9670 "comment": "V7; V3 (ignored)",
9671 "input": "\ud8c8\ude26\u5e37\u3002>\u0338\u843a\u1dc8-",
9672 "output": null
9673 },
9674 {
9675 "comment": "V7; V3 (ignored)",
9676 "input": "xn--qutw175s.xn----mimu6tf67j",
9677 "output": null
9678 },
9679 {
9680 "comment": "C2",
9681 "input": "\u200d\u650c\uabed\u3002\u1896-\u10b8",
9682 "output": null
9683 },
9684 {
9685 "comment": "C2",
9686 "input": "\u200d\u650c\uabed\u3002\u1896-\u2d18",
9687 "output": null
9688 },
9689 {
9690 "input": "xn--p9ut19m.xn----mck373i",
9691 "output": "xn--p9ut19m.xn----mck373i"
9692 },
9693 {
9694 "input": "\u650c\uabed.\u1896-\u2d18",
9695 "output": "xn--p9ut19m.xn----mck373i"
9696 },
9697 {
9698 "input": "\u650c\uabed.\u1896-\u10b8",
9699 "output": "xn--p9ut19m.xn----mck373i"
9700 },
9701 {
9702 "comment": "C2",
9703 "input": "xn--1ug592ykp6b.xn----mck373i",
9704 "output": null
9705 },
9706 {
9707 "comment": "V7",
9708 "input": "xn--p9ut19m.xn----k1g451d",
9709 "output": null
9710 },
9711 {
9712 "comment": "C2; V7",
9713 "input": "xn--1ug592ykp6b.xn----k1g451d",
9714 "output": null
9715 },
9716 {
9717 "comment": "C1; V7",
9718 "input": "\u200c\ua5a8\uff0e\u2497\uff13\ud212\u06f3",
9719 "output": null
9720 },
9721 {
9722 "comment": "C1; V7",
9723 "input": "\u200c\ua5a8\uff0e\u2497\uff13\u1110\u116d\u11a9\u06f3",
9724 "output": null
9725 },
9726 {
9727 "comment": "C1",
9728 "input": "\u200c\ua5a8.16.3\ud212\u06f3",
9729 "output": null
9730 },
9731 {
9732 "comment": "C1",
9733 "input": "\u200c\ua5a8.16.3\u1110\u116d\u11a9\u06f3",
9734 "output": null
9735 },
9736 {
9737 "input": "xn--9r8a.16.xn--3-nyc0117m",
9738 "output": "xn--9r8a.16.xn--3-nyc0117m"
9739 },
9740 {
9741 "input": "\ua5a8.16.3\ud212\u06f3",
9742 "output": "xn--9r8a.16.xn--3-nyc0117m"
9743 },
9744 {
9745 "input": "\ua5a8.16.3\u1110\u116d\u11a9\u06f3",
9746 "output": "xn--9r8a.16.xn--3-nyc0117m"
9747 },
9748 {
9749 "comment": "C1",
9750 "input": "xn--0ug2473c.16.xn--3-nyc0117m",
9751 "output": null
9752 },
9753 {
9754 "comment": "V7",
9755 "input": "xn--9r8a.xn--3-nyc678tu07m",
9756 "output": null
9757 },
9758 {
9759 "comment": "C1; V7",
9760 "input": "xn--0ug2473c.xn--3-nyc678tu07m",
9761 "output": null
9762 },
9763 {
9764 "comment": "C2",
9765 "input": "\ud835\udfcf\ud836\ude19\u2e16.\u200d",
9766 "output": null
9767 },
9768 {
9769 "comment": "C2",
9770 "input": "1\ud836\ude19\u2e16.\u200d",
9771 "output": null
9772 },
9773 {
9774 "comment": "A4_2 (ignored)",
9775 "input": "xn--1-5bt6845n.",
9776 "output": "xn--1-5bt6845n."
9777 },
9778 {
9779 "comment": "A4_2 (ignored)",
9780 "input": "1\ud836\ude19\u2e16.",
9781 "output": "xn--1-5bt6845n."
9782 },
9783 {
9784 "comment": "C2",
9785 "input": "xn--1-5bt6845n.xn--1ug",
9786 "output": null
9787 },
9788 {
9789 "comment": "V7",
9790 "input": "F\udb40\udd5f\uff61\ud9fd\uddc5\u265a",
9791 "output": null
9792 },
9793 {
9794 "comment": "V7",
9795 "input": "F\udb40\udd5f\u3002\ud9fd\uddc5\u265a",
9796 "output": null
9797 },
9798 {
9799 "comment": "V7",
9800 "input": "f\udb40\udd5f\u3002\ud9fd\uddc5\u265a",
9801 "output": null
9802 },
9803 {
9804 "comment": "V7",
9805 "input": "f.xn--45hz6953f",
9806 "output": null
9807 },
9808 {
9809 "comment": "V7",
9810 "input": "f\udb40\udd5f\uff61\ud9fd\uddc5\u265a",
9811 "output": null
9812 },
9813 {
9814 "comment": "V6; V7",
9815 "input": "\u0b4d\ud804\udd34\u1de9\u3002\ud835\udfee\u10b8\ud838\udc28\ud8ce\udd47",
9816 "output": null
9817 },
9818 {
9819 "comment": "V6; V7",
9820 "input": "\u0b4d\ud804\udd34\u1de9\u30022\u10b8\ud838\udc28\ud8ce\udd47",
9821 "output": null
9822 },
9823 {
9824 "comment": "V6; V7",
9825 "input": "\u0b4d\ud804\udd34\u1de9\u30022\u2d18\ud838\udc28\ud8ce\udd47",
9826 "output": null
9827 },
9828 {
9829 "comment": "V6; V7",
9830 "input": "xn--9ic246gs21p.xn--2-nws2918ndrjr",
9831 "output": null
9832 },
9833 {
9834 "comment": "V6; V7",
9835 "input": "\u0b4d\ud804\udd34\u1de9\u3002\ud835\udfee\u2d18\ud838\udc28\ud8ce\udd47",
9836 "output": null
9837 },
9838 {
9839 "comment": "V6; V7",
9840 "input": "xn--9ic246gs21p.xn--2-k1g43076adrwq",
9841 "output": null
9842 },
9843 {
9844 "comment": "C1; V7",
9845 "input": "\uda0e\udc2d\u200c\u200c\u2488\u3002\u52c9\ud804\udc45",
9846 "output": null
9847 },
9848 {
9849 "comment": "C1; V7; A4_2 (ignored)",
9850 "input": "\uda0e\udc2d\u200c\u200c1.\u3002\u52c9\ud804\udc45",
9851 "output": null
9852 },
9853 {
9854 "comment": "V7; A4_2 (ignored)",
9855 "input": "xn--1-yi00h..xn--4grs325b",
9856 "output": null
9857 },
9858 {
9859 "comment": "C1; V7; A4_2 (ignored)",
9860 "input": "xn--1-rgna61159u..xn--4grs325b",
9861 "output": null
9862 },
9863 {
9864 "comment": "V7",
9865 "input": "xn--tsh11906f.xn--4grs325b",
9866 "output": null
9867 },
9868 {
9869 "comment": "C1; V7",
9870 "input": "xn--0uga855aez302a.xn--4grs325b",
9871 "output": null
9872 },
9873 {
9874 "comment": "V7",
9875 "input": "\u1843.\u73bf\ud96c\ude1c\udb15\udf90",
9876 "output": null
9877 },
9878 {
9879 "comment": "V7",
9880 "input": "xn--27e.xn--7cy81125a0yq4a",
9881 "output": null
9882 },
9883 {
9884 "comment": "C1; V7",
9885 "input": "\u200c\u200c\uff61\u2488\u226f\ud835\udff5",
9886 "output": null
9887 },
9888 {
9889 "comment": "C1; V7",
9890 "input": "\u200c\u200c\uff61\u2488>\u0338\ud835\udff5",
9891 "output": null
9892 },
9893 {
9894 "comment": "C1",
9895 "input": "\u200c\u200c\u30021.\u226f9",
9896 "output": null
9897 },
9898 {
9899 "comment": "C1",
9900 "input": "\u200c\u200c\u30021.>\u03389",
9901 "output": null
9902 },
9903 {
9904 "comment": "A4_2 (ignored)",
9905 "input": ".1.xn--9-ogo",
9906 "output": ".1.xn--9-ogo"
9907 },
9908 {
9909 "comment": "C1",
9910 "input": "xn--0uga.1.xn--9-ogo",
9911 "output": null
9912 },
9913 {
9914 "comment": "V7; A4_2 (ignored)",
9915 "input": ".xn--9-ogo37g",
9916 "output": null
9917 },
9918 {
9919 "comment": "C1; V7",
9920 "input": "xn--0uga.xn--9-ogo37g",
9921 "output": null
9922 },
9923 {
9924 "comment": "V6; V3 (ignored)",
9925 "input": "\u20da\uff0e\ud805\ude3f-",
9926 "output": null
9927 },
9928 {
9929 "comment": "V6; V3 (ignored)",
9930 "input": "\u20da.\ud805\ude3f-",
9931 "output": null
9932 },
9933 {
9934 "comment": "V6; V3 (ignored)",
9935 "input": "xn--w0g.xn----bd0j",
9936 "output": null
9937 },
9938 {
9939 "comment": "C2; V6; V7",
9940 "input": "\u1082-\u200d\ua8ea\uff0e\ua84a\u200d\ud9b3\ude33",
9941 "output": null
9942 },
9943 {
9944 "comment": "C2; V6; V7",
9945 "input": "\u1082-\u200d\ua8ea.\ua84a\u200d\ud9b3\ude33",
9946 "output": null
9947 },
9948 {
9949 "comment": "V6; V7",
9950 "input": "xn----gyg3618i.xn--jc9ao4185a",
9951 "output": null
9952 },
9953 {
9954 "comment": "C2; V6; V7",
9955 "input": "xn----gyg250jio7k.xn--1ug8774cri56d",
9956 "output": null
9957 },
9958 {
9959 "comment": "V6",
9960 "input": "\ud804\ude35\u5eca.\ud802\udc0d",
9961 "output": null
9962 },
9963 {
9964 "comment": "V6",
9965 "input": "xn--xytw701b.xn--yc9c",
9966 "output": null
9967 },
9968 {
9969 "comment": "V7",
9970 "input": "\u10be\ud899\udec0\ud82d\uddfb\uff0e\u1897\ub9ab",
9971 "output": null
9972 },
9973 {
9974 "comment": "V7",
9975 "input": "\u10be\ud899\udec0\ud82d\uddfb\uff0e\u1897\u1105\u1174\u11c2",
9976 "output": null
9977 },
9978 {
9979 "comment": "V7",
9980 "input": "\u10be\ud899\udec0\ud82d\uddfb.\u1897\ub9ab",
9981 "output": null
9982 },
9983 {
9984 "comment": "V7",
9985 "input": "\u10be\ud899\udec0\ud82d\uddfb.\u1897\u1105\u1174\u11c2",
9986 "output": null
9987 },
9988 {
9989 "comment": "V7",
9990 "input": "\u2d1e\ud899\udec0\ud82d\uddfb.\u1897\u1105\u1174\u11c2",
9991 "output": null
9992 },
9993 {
9994 "comment": "V7",
9995 "input": "\u2d1e\ud899\udec0\ud82d\uddfb.\u1897\ub9ab",
9996 "output": null
9997 },
9998 {
9999 "comment": "V7",
10000 "input": "xn--mlj0486jgl2j.xn--hbf6853f",
10001 "output": null
10002 },
10003 {
10004 "comment": "V7",
10005 "input": "\u2d1e\ud899\udec0\ud82d\uddfb\uff0e\u1897\u1105\u1174\u11c2",
10006 "output": null
10007 },
10008 {
10009 "comment": "V7",
10010 "input": "\u2d1e\ud899\udec0\ud82d\uddfb\uff0e\u1897\ub9ab",
10011 "output": null
10012 },
10013 {
10014 "comment": "V7",
10015 "input": "xn--2nd8876sgl2j.xn--hbf6853f",
10016 "output": null
10017 },
10018 {
10019 "comment": "C2; V7",
10020 "input": "\u00df\u200d\u103a\uff61\u2488",
10021 "output": null
10022 },
10023 {
10024 "comment": "A4_2 (ignored)",
10025 "input": "xn--ss-f4j.b.",
10026 "output": "xn--ss-f4j.b."
10027 },
10028 {
10029 "comment": "A4_2 (ignored)",
10030 "input": "ss\u103a.b.",
10031 "output": "xn--ss-f4j.b."
10032 },
10033 {
10034 "comment": "A4_2 (ignored)",
10035 "input": "SS\u103a.B.",
10036 "output": "xn--ss-f4j.b."
10037 },
10038 {
10039 "comment": "A4_2 (ignored)",
10040 "input": "Ss\u103a.b.",
10041 "output": "xn--ss-f4j.b."
10042 },
10043 {
10044 "comment": "C2; A4_2 (ignored)",
10045 "input": "xn--ss-f4j585j.b.",
10046 "output": null
10047 },
10048 {
10049 "comment": "C2; A4_2 (ignored)",
10050 "input": "xn--zca679eh2l.b.",
10051 "output": null
10052 },
10053 {
10054 "comment": "C2; V7",
10055 "input": "SS\u200d\u103a\uff61\u2488",
10056 "output": null
10057 },
10058 {
10059 "comment": "C2; V7",
10060 "input": "ss\u200d\u103a\uff61\u2488",
10061 "output": null
10062 },
10063 {
10064 "comment": "C2; V7",
10065 "input": "Ss\u200d\u103a\uff61\u2488",
10066 "output": null
10067 },
10068 {
10069 "comment": "V7",
10070 "input": "xn--ss-f4j.xn--tsh",
10071 "output": null
10072 },
10073 {
10074 "comment": "C2; V7",
10075 "input": "xn--ss-f4j585j.xn--tsh",
10076 "output": null
10077 },
10078 {
10079 "comment": "C2; V7",
10080 "input": "xn--zca679eh2l.xn--tsh",
10081 "output": null
10082 },
10083 {
10084 "comment": "A4_2 (ignored)",
10085 "input": "SS\u103a.b.",
10086 "output": "xn--ss-f4j.b."
10087 },
10088 {
10089 "input": "\u06cc\ud802\ude3f\uff0e\u00df\u0f84\ud804\udf6c",
10090 "output": "xn--clb2593k.xn--zca216edt0r"
10091 },
10092 {
10093 "input": "\u06cc\ud802\ude3f.\u00df\u0f84\ud804\udf6c",
10094 "output": "xn--clb2593k.xn--zca216edt0r"
10095 },
10096 {
10097 "input": "\u06cc\ud802\ude3f.SS\u0f84\ud804\udf6c",
10098 "output": "xn--clb2593k.xn--ss-toj6092t"
10099 },
10100 {
10101 "input": "\u06cc\ud802\ude3f.ss\u0f84\ud804\udf6c",
10102 "output": "xn--clb2593k.xn--ss-toj6092t"
10103 },
10104 {
10105 "input": "xn--clb2593k.xn--ss-toj6092t",
10106 "output": "xn--clb2593k.xn--ss-toj6092t"
10107 },
10108 {
10109 "input": "xn--clb2593k.xn--zca216edt0r",
10110 "output": "xn--clb2593k.xn--zca216edt0r"
10111 },
10112 {
10113 "input": "\u06cc\ud802\ude3f\uff0eSS\u0f84\ud804\udf6c",
10114 "output": "xn--clb2593k.xn--ss-toj6092t"
10115 },
10116 {
10117 "input": "\u06cc\ud802\ude3f\uff0ess\u0f84\ud804\udf6c",
10118 "output": "xn--clb2593k.xn--ss-toj6092t"
10119 },
10120 {
10121 "input": "\u06cc\ud802\ude3f.Ss\u0f84\ud804\udf6c",
10122 "output": "xn--clb2593k.xn--ss-toj6092t"
10123 },
10124 {
10125 "input": "\u06cc\ud802\ude3f\uff0eSs\u0f84\ud804\udf6c",
10126 "output": "xn--clb2593k.xn--ss-toj6092t"
10127 },
10128 {
10129 "comment": "C1; A4_2 (ignored)",
10130 "input": "\ud835\udfe0\u226e\u200c\uff61\udb40\udd71\u17b4",
10131 "output": null
10132 },
10133 {
10134 "comment": "C1; A4_2 (ignored)",
10135 "input": "\ud835\udfe0<\u0338\u200c\uff61\udb40\udd71\u17b4",
10136 "output": null
10137 },
10138 {
10139 "comment": "C1; A4_2 (ignored)",
10140 "input": "8\u226e\u200c\u3002\udb40\udd71\u17b4",
10141 "output": null
10142 },
10143 {
10144 "comment": "C1; A4_2 (ignored)",
10145 "input": "8<\u0338\u200c\u3002\udb40\udd71\u17b4",
10146 "output": null
10147 },
10148 {
10149 "comment": "A4_2 (ignored)",
10150 "input": "xn--8-ngo.",
10151 "output": "xn--8-ngo."
10152 },
10153 {
10154 "comment": "A4_2 (ignored)",
10155 "input": "8\u226e.",
10156 "output": "xn--8-ngo."
10157 },
10158 {
10159 "comment": "A4_2 (ignored)",
10160 "input": "8<\u0338.",
10161 "output": "xn--8-ngo."
10162 },
10163 {
10164 "comment": "C1; A4_2 (ignored)",
10165 "input": "xn--8-sgn10i.",
10166 "output": null
10167 },
10168 {
10169 "comment": "V6; V7",
10170 "input": "xn--8-ngo.xn--z3e",
10171 "output": null
10172 },
10173 {
10174 "comment": "C1; V6; V7",
10175 "input": "xn--8-sgn10i.xn--z3e",
10176 "output": null
10177 },
10178 {
10179 "comment": "V7",
10180 "input": "\u1895\u226f\ufe12\ud8d0\udcaf\uff0e\u10a0",
10181 "output": null
10182 },
10183 {
10184 "comment": "V7",
10185 "input": "\u1895>\u0338\ufe12\ud8d0\udcaf\uff0e\u10a0",
10186 "output": null
10187 },
10188 {
10189 "comment": "V7",
10190 "input": "\u1895\u226f\u3002\ud8d0\udcaf.\u10a0",
10191 "output": null
10192 },
10193 {
10194 "comment": "V7",
10195 "input": "\u1895>\u0338\u3002\ud8d0\udcaf.\u10a0",
10196 "output": null
10197 },
10198 {
10199 "comment": "V7",
10200 "input": "\u1895>\u0338\u3002\ud8d0\udcaf.\u2d00",
10201 "output": null
10202 },
10203 {
10204 "comment": "V7",
10205 "input": "\u1895\u226f\u3002\ud8d0\udcaf.\u2d00",
10206 "output": null
10207 },
10208 {
10209 "comment": "V7",
10210 "input": "xn--fbf851c.xn--ko1u.xn--rkj",
10211 "output": null
10212 },
10213 {
10214 "comment": "V7",
10215 "input": "\u1895>\u0338\ufe12\ud8d0\udcaf\uff0e\u2d00",
10216 "output": null
10217 },
10218 {
10219 "comment": "V7",
10220 "input": "\u1895\u226f\ufe12\ud8d0\udcaf\uff0e\u2d00",
10221 "output": null
10222 },
10223 {
10224 "comment": "V7",
10225 "input": "xn--fbf851cq98poxw1a.xn--rkj",
10226 "output": null
10227 },
10228 {
10229 "comment": "V7",
10230 "input": "xn--fbf851c.xn--ko1u.xn--7md",
10231 "output": null
10232 },
10233 {
10234 "comment": "V7",
10235 "input": "xn--fbf851cq98poxw1a.xn--7md",
10236 "output": null
10237 },
10238 {
10239 "comment": "V6; V3 (ignored)",
10240 "input": "\u0f9f\uff0e-\u082a",
10241 "output": null
10242 },
10243 {
10244 "comment": "V6; V3 (ignored)",
10245 "input": "\u0f9f.-\u082a",
10246 "output": null
10247 },
10248 {
10249 "comment": "V6; V3 (ignored)",
10250 "input": "xn--vfd.xn----fhd",
10251 "output": null
10252 },
10253 {
10254 "comment": "V7",
10255 "input": "\u1d6c\udb40\udda0\uff0e\ud552\u2492\u2488\udbe0\udd26",
10256 "output": null
10257 },
10258 {
10259 "comment": "V7",
10260 "input": "\u1d6c\udb40\udda0\uff0e\u1111\u1175\u11bd\u2492\u2488\udbe0\udd26",
10261 "output": null
10262 },
10263 {
10264 "comment": "V7",
10265 "input": "\u1d6c\udb40\udda0.\ud55211.1.\udbe0\udd26",
10266 "output": null
10267 },
10268 {
10269 "comment": "V7",
10270 "input": "\u1d6c\udb40\udda0.\u1111\u1175\u11bd11.1.\udbe0\udd26",
10271 "output": null
10272 },
10273 {
10274 "comment": "V7",
10275 "input": "xn--tbg.xn--11-5o7k.1.xn--k469f",
10276 "output": null
10277 },
10278 {
10279 "comment": "V7",
10280 "input": "xn--tbg.xn--tsht7586kyts9l",
10281 "output": null
10282 },
10283 {
10284 "comment": "V7",
10285 "input": "\u2488\u270c\uda3e\udf1f\uff0e\ud835\udfe1\ud943\udc63",
10286 "output": null
10287 },
10288 {
10289 "comment": "V7",
10290 "input": "1.\u270c\uda3e\udf1f.9\ud943\udc63",
10291 "output": null
10292 },
10293 {
10294 "comment": "V7",
10295 "input": "1.xn--7bi44996f.xn--9-o706d",
10296 "output": null
10297 },
10298 {
10299 "comment": "V7",
10300 "input": "xn--tsh24g49550b.xn--9-o706d",
10301 "output": null
10302 },
10303 {
10304 "comment": "V6",
10305 "input": "\u03c2\uff0e\ua9c0\ua8c4",
10306 "output": null
10307 },
10308 {
10309 "comment": "V6",
10310 "input": "\u03c2.\ua9c0\ua8c4",
10311 "output": null
10312 },
10313 {
10314 "comment": "V6",
10315 "input": "\u03a3.\ua9c0\ua8c4",
10316 "output": null
10317 },
10318 {
10319 "comment": "V6",
10320 "input": "\u03c3.\ua9c0\ua8c4",
10321 "output": null
10322 },
10323 {
10324 "comment": "V6",
10325 "input": "xn--4xa.xn--0f9ars",
10326 "output": null
10327 },
10328 {
10329 "comment": "V6",
10330 "input": "xn--3xa.xn--0f9ars",
10331 "output": null
10332 },
10333 {
10334 "comment": "V6",
10335 "input": "\u03a3\uff0e\ua9c0\ua8c4",
10336 "output": null
10337 },
10338 {
10339 "comment": "V6",
10340 "input": "\u03c3\uff0e\ua9c0\ua8c4",
10341 "output": null
10342 },
10343 {
10344 "input": "\u7f9a\uff61\u226f",
10345 "output": "xn--xt0a.xn--hdh"
10346 },
10347 {
10348 "input": "\u7f9a\uff61>\u0338",
10349 "output": "xn--xt0a.xn--hdh"
10350 },
10351 {
10352 "input": "\u7f9a\u3002\u226f",
10353 "output": "xn--xt0a.xn--hdh"
10354 },
10355 {
10356 "input": "\u7f9a\u3002>\u0338",
10357 "output": "xn--xt0a.xn--hdh"
10358 },
10359 {
10360 "input": "xn--xt0a.xn--hdh",
10361 "output": "xn--xt0a.xn--hdh"
10362 },
10363 {
10364 "input": "\u7f9a.\u226f",
10365 "output": "xn--xt0a.xn--hdh"
10366 },
10367 {
10368 "input": "\u7f9a.>\u0338",
10369 "output": "xn--xt0a.xn--hdh"
10370 },
10371 {
10372 "comment": "V7",
10373 "input": "\u2786\ud99e\uddd5\u1ed7\u2488\uff0e\uda06\udf12\ud945\ude2e\u085b\ud835\udfeb",
10374 "output": null
10375 },
10376 {
10377 "comment": "V7",
10378 "input": "\u2786\ud99e\uddd5o\u0302\u0303\u2488\uff0e\uda06\udf12\ud945\ude2e\u085b\ud835\udfeb",
10379 "output": null
10380 },
10381 {
10382 "comment": "V7; A4_2 (ignored)",
10383 "input": "\u2786\ud99e\uddd5\u1ed71..\uda06\udf12\ud945\ude2e\u085b9",
10384 "output": null
10385 },
10386 {
10387 "comment": "V7; A4_2 (ignored)",
10388 "input": "\u2786\ud99e\uddd5o\u0302\u03031..\uda06\udf12\ud945\ude2e\u085b9",
10389 "output": null
10390 },
10391 {
10392 "comment": "V7; A4_2 (ignored)",
10393 "input": "\u2786\ud99e\uddd5O\u0302\u03031..\uda06\udf12\ud945\ude2e\u085b9",
10394 "output": null
10395 },
10396 {
10397 "comment": "V7; A4_2 (ignored)",
10398 "input": "\u2786\ud99e\uddd5\u1ed61..\uda06\udf12\ud945\ude2e\u085b9",
10399 "output": null
10400 },
10401 {
10402 "comment": "V7; A4_2 (ignored)",
10403 "input": "xn--1-3xm292b6044r..xn--9-6jd87310jtcqs",
10404 "output": null
10405 },
10406 {
10407 "comment": "V7",
10408 "input": "\u2786\ud99e\uddd5O\u0302\u0303\u2488\uff0e\uda06\udf12\ud945\ude2e\u085b\ud835\udfeb",
10409 "output": null
10410 },
10411 {
10412 "comment": "V7",
10413 "input": "\u2786\ud99e\uddd5\u1ed6\u2488\uff0e\uda06\udf12\ud945\ude2e\u085b\ud835\udfeb",
10414 "output": null
10415 },
10416 {
10417 "comment": "V7",
10418 "input": "xn--6lg26tvvc6v99z.xn--9-6jd87310jtcqs",
10419 "output": null
10420 },
10421 {
10422 "comment": "A4_2 (ignored)",
10423 "input": ".xn--ye6h",
10424 "output": ".xn--ye6h"
10425 },
10426 {
10427 "input": "xn--ye6h",
10428 "output": "xn--ye6h"
10429 },
10430 {
10431 "input": "\ud83a\udd3a",
10432 "output": "xn--ye6h"
10433 },
10434 {
10435 "input": "\ud83a\udd18",
10436 "output": "xn--ye6h"
10437 },
10438 {
10439 "comment": "C1; V6; V7; V3 (ignored)",
10440 "input": "\u073c\u200c-\u3002\ud80d\udc3e\u00df",
10441 "output": null
10442 },
10443 {
10444 "comment": "C1; V6; V7; V3 (ignored)",
10445 "input": "\u073c\u200c-\u3002\ud80d\udc3eSS",
10446 "output": null
10447 },
10448 {
10449 "comment": "C1; V6; V7; V3 (ignored)",
10450 "input": "\u073c\u200c-\u3002\ud80d\udc3ess",
10451 "output": null
10452 },
10453 {
10454 "comment": "C1; V6; V7; V3 (ignored)",
10455 "input": "\u073c\u200c-\u3002\ud80d\udc3eSs",
10456 "output": null
10457 },
10458 {
10459 "comment": "V6; V7; V3 (ignored)",
10460 "input": "xn----s2c.xn--ss-066q",
10461 "output": null
10462 },
10463 {
10464 "comment": "C1; V6; V7; V3 (ignored)",
10465 "input": "xn----s2c071q.xn--ss-066q",
10466 "output": null
10467 },
10468 {
10469 "comment": "C1; V6; V7; V3 (ignored)",
10470 "input": "xn----s2c071q.xn--zca7848m",
10471 "output": null
10472 },
10473 {
10474 "comment": "V6; V7; V3 (ignored)",
10475 "input": "-\uda9d\udf6c\u135e\ud805\udf27.\u1deb-\ufe12",
10476 "output": null
10477 },
10478 {
10479 "comment": "V6; V7; V3 (ignored); A4_2 (ignored)",
10480 "input": "-\uda9d\udf6c\u135e\ud805\udf27.\u1deb-\u3002",
10481 "output": null
10482 },
10483 {
10484 "comment": "V6; V7; V3 (ignored); A4_2 (ignored)",
10485 "input": "xn----b5h1837n2ok9f.xn----mkm.",
10486 "output": null
10487 },
10488 {
10489 "comment": "V6; V7; V3 (ignored)",
10490 "input": "xn----b5h1837n2ok9f.xn----mkmw278h",
10491 "output": null
10492 },
10493 {
10494 "comment": "V7",
10495 "input": "\ufe12.\uda2a\udc21\u1a59",
10496 "output": null
10497 },
10498 {
10499 "comment": "V7; A4_2 (ignored)",
10500 "input": "\u3002.\uda2a\udc21\u1a59",
10501 "output": null
10502 },
10503 {
10504 "comment": "V7; A4_2 (ignored)",
10505 "input": "..xn--cof61594i",
10506 "output": null
10507 },
10508 {
10509 "comment": "V7",
10510 "input": "xn--y86c.xn--cof61594i",
10511 "output": null
10512 },
10513 {
10514 "comment": "V6; V7; V3 (ignored)",
10515 "input": "\ud807\udc3a.-\uda05\udfcf",
10516 "output": null
10517 },
10518 {
10519 "comment": "V6; V7; V3 (ignored)",
10520 "input": "xn--jk3d.xn----iz68g",
10521 "output": null
10522 },
10523 {
10524 "comment": "V7",
10525 "input": "\udb43\udee9\uff0e\u8d4f",
10526 "output": null
10527 },
10528 {
10529 "comment": "V7",
10530 "input": "\udb43\udee9.\u8d4f",
10531 "output": null
10532 },
10533 {
10534 "comment": "V7",
10535 "input": "xn--2856e.xn--6o3a",
10536 "output": null
10537 },
10538 {
10539 "comment": "C1; V7",
10540 "input": "\u10ad\uff0e\ud8f4\udde6\u200c",
10541 "output": null
10542 },
10543 {
10544 "comment": "C1; V7",
10545 "input": "\u10ad.\ud8f4\udde6\u200c",
10546 "output": null
10547 },
10548 {
10549 "comment": "C1; V7",
10550 "input": "\u2d0d.\ud8f4\udde6\u200c",
10551 "output": null
10552 },
10553 {
10554 "comment": "V7",
10555 "input": "xn--4kj.xn--p01x",
10556 "output": null
10557 },
10558 {
10559 "comment": "C1; V7",
10560 "input": "xn--4kj.xn--0ug56448b",
10561 "output": null
10562 },
10563 {
10564 "comment": "C1; V7",
10565 "input": "\u2d0d\uff0e\ud8f4\udde6\u200c",
10566 "output": null
10567 },
10568 {
10569 "comment": "V7",
10570 "input": "xn--lnd.xn--p01x",
10571 "output": null
10572 },
10573 {
10574 "comment": "C1; V7",
10575 "input": "xn--lnd.xn--0ug56448b",
10576 "output": null
10577 },
10578 {
10579 "input": "\ud835\udfdb\uff0e\uf9f8",
10580 "output": "3.xn--6vz"
10581 },
10582 {
10583 "input": "\ud835\udfdb\uff0e\u7b20",
10584 "output": "3.xn--6vz"
10585 },
10586 {
10587 "input": "3.\u7b20",
10588 "output": "3.xn--6vz"
10589 },
10590 {
10591 "input": "3.xn--6vz",
10592 "output": "3.xn--6vz"
10593 },
10594 {
10595 "comment": "C2; V3 (ignored)",
10596 "input": "-\u200d.\u10be\ud800\udef7",
10597 "output": null
10598 },
10599 {
10600 "comment": "C2; V3 (ignored)",
10601 "input": "-\u200d.\u2d1e\ud800\udef7",
10602 "output": null
10603 },
10604 {
10605 "comment": "V3 (ignored)",
10606 "input": "-.xn--mlj8559d",
10607 "output": "-.xn--mlj8559d"
10608 },
10609 {
10610 "comment": "C2; V3 (ignored)",
10611 "input": "xn----ugn.xn--mlj8559d",
10612 "output": null
10613 },
10614 {
10615 "comment": "V7; V3 (ignored)",
10616 "input": "-.xn--2nd2315j",
10617 "output": null
10618 },
10619 {
10620 "comment": "C2; V7; V3 (ignored)",
10621 "input": "xn----ugn.xn--2nd2315j",
10622 "output": null
10623 },
10624 {
10625 "comment": "C2; V6",
10626 "input": "\u200d\u03c2\u00df\u0731\uff0e\u0bcd",
10627 "output": null
10628 },
10629 {
10630 "comment": "C2; V6",
10631 "input": "\u200d\u03c2\u00df\u0731.\u0bcd",
10632 "output": null
10633 },
10634 {
10635 "comment": "C2; V6",
10636 "input": "\u200d\u03a3SS\u0731.\u0bcd",
10637 "output": null
10638 },
10639 {
10640 "comment": "C2; V6",
10641 "input": "\u200d\u03c3ss\u0731.\u0bcd",
10642 "output": null
10643 },
10644 {
10645 "comment": "C2; V6",
10646 "input": "\u200d\u03a3ss\u0731.\u0bcd",
10647 "output": null
10648 },
10649 {
10650 "comment": "V6",
10651 "input": "xn--ss-ubc826a.xn--xmc",
10652 "output": null
10653 },
10654 {
10655 "comment": "C2; V6",
10656 "input": "xn--ss-ubc826ab34b.xn--xmc",
10657 "output": null
10658 },
10659 {
10660 "comment": "C2; V6",
10661 "input": "\u200d\u03a3\u00df\u0731.\u0bcd",
10662 "output": null
10663 },
10664 {
10665 "comment": "C2; V6",
10666 "input": "\u200d\u03c3\u00df\u0731.\u0bcd",
10667 "output": null
10668 },
10669 {
10670 "comment": "C2; V6",
10671 "input": "xn--zca39lk1di19a.xn--xmc",
10672 "output": null
10673 },
10674 {
10675 "comment": "C2; V6",
10676 "input": "xn--zca19ln1di19a.xn--xmc",
10677 "output": null
10678 },
10679 {
10680 "comment": "C2; V6",
10681 "input": "\u200d\u03a3SS\u0731\uff0e\u0bcd",
10682 "output": null
10683 },
10684 {
10685 "comment": "C2; V6",
10686 "input": "\u200d\u03c3ss\u0731\uff0e\u0bcd",
10687 "output": null
10688 },
10689 {
10690 "comment": "C2; V6",
10691 "input": "\u200d\u03a3ss\u0731\uff0e\u0bcd",
10692 "output": null
10693 },
10694 {
10695 "comment": "C2; V6",
10696 "input": "\u200d\u03a3\u00df\u0731\uff0e\u0bcd",
10697 "output": null
10698 },
10699 {
10700 "comment": "C2; V6",
10701 "input": "\u200d\u03c3\u00df\u0731\uff0e\u0bcd",
10702 "output": null
10703 },
10704 {
10705 "comment": "C2",
10706 "input": "\u2260\uff0e\u200d",
10707 "output": null
10708 },
10709 {
10710 "comment": "C2",
10711 "input": "=\u0338\uff0e\u200d",
10712 "output": null
10713 },
10714 {
10715 "comment": "C2",
10716 "input": "\u2260.\u200d",
10717 "output": null
10718 },
10719 {
10720 "comment": "C2",
10721 "input": "=\u0338.\u200d",
10722 "output": null
10723 },
10724 {
10725 "comment": "A4_2 (ignored)",
10726 "input": "xn--1ch.",
10727 "output": "xn--1ch."
10728 },
10729 {
10730 "comment": "A4_2 (ignored)",
10731 "input": "\u2260.",
10732 "output": "xn--1ch."
10733 },
10734 {
10735 "comment": "A4_2 (ignored)",
10736 "input": "=\u0338.",
10737 "output": "xn--1ch."
10738 },
10739 {
10740 "comment": "C2",
10741 "input": "xn--1ch.xn--1ug",
10742 "output": null
10743 },
10744 {
10745 "comment": "V7",
10746 "input": "\udb5c\udef5\u09cd\u03c2\uff0e\u03c2\ud802\ude3f",
10747 "output": null
10748 },
10749 {
10750 "comment": "V7",
10751 "input": "\udb5c\udef5\u09cd\u03c2.\u03c2\ud802\ude3f",
10752 "output": null
10753 },
10754 {
10755 "comment": "V7",
10756 "input": "\udb5c\udef5\u09cd\u03a3.\u03a3\ud802\ude3f",
10757 "output": null
10758 },
10759 {
10760 "comment": "V7",
10761 "input": "\udb5c\udef5\u09cd\u03c3.\u03c2\ud802\ude3f",
10762 "output": null
10763 },
10764 {
10765 "comment": "V7",
10766 "input": "\udb5c\udef5\u09cd\u03c3.\u03c3\ud802\ude3f",
10767 "output": null
10768 },
10769 {
10770 "comment": "V7",
10771 "input": "\udb5c\udef5\u09cd\u03a3.\u03c3\ud802\ude3f",
10772 "output": null
10773 },
10774 {
10775 "comment": "V7",
10776 "input": "xn--4xa502av8297a.xn--4xa6055k",
10777 "output": null
10778 },
10779 {
10780 "comment": "V7",
10781 "input": "\udb5c\udef5\u09cd\u03a3.\u03c2\ud802\ude3f",
10782 "output": null
10783 },
10784 {
10785 "comment": "V7",
10786 "input": "xn--4xa502av8297a.xn--3xa8055k",
10787 "output": null
10788 },
10789 {
10790 "comment": "V7",
10791 "input": "xn--3xa702av8297a.xn--3xa8055k",
10792 "output": null
10793 },
10794 {
10795 "comment": "V7",
10796 "input": "\udb5c\udef5\u09cd\u03a3\uff0e\u03a3\ud802\ude3f",
10797 "output": null
10798 },
10799 {
10800 "comment": "V7",
10801 "input": "\udb5c\udef5\u09cd\u03c3\uff0e\u03c2\ud802\ude3f",
10802 "output": null
10803 },
10804 {
10805 "comment": "V7",
10806 "input": "\udb5c\udef5\u09cd\u03c3\uff0e\u03c3\ud802\ude3f",
10807 "output": null
10808 },
10809 {
10810 "comment": "V7",
10811 "input": "\udb5c\udef5\u09cd\u03a3\uff0e\u03c3\ud802\ude3f",
10812 "output": null
10813 },
10814 {
10815 "comment": "V7",
10816 "input": "\udb5c\udef5\u09cd\u03a3\uff0e\u03c2\ud802\ude3f",
10817 "output": null
10818 },
10819 {
10820 "comment": "V7",
10821 "input": "\ud94e\udd12\uff61\ub967",
10822 "output": null
10823 },
10824 {
10825 "comment": "V7",
10826 "input": "\ud94e\udd12\uff61\u1105\u1172\u11b6",
10827 "output": null
10828 },
10829 {
10830 "comment": "V7",
10831 "input": "\ud94e\udd12\u3002\ub967",
10832 "output": null
10833 },
10834 {
10835 "comment": "V7",
10836 "input": "\ud94e\udd12\u3002\u1105\u1172\u11b6",
10837 "output": null
10838 },
10839 {
10840 "comment": "V7",
10841 "input": "xn--s264a.xn--pw2b",
10842 "output": null
10843 },
10844 {
10845 "comment": "V7",
10846 "input": "\u1846\ud805\udcdd\uff0e\ud83b\udd46",
10847 "output": null
10848 },
10849 {
10850 "comment": "V7",
10851 "input": "\u1846\ud805\udcdd.\ud83b\udd46",
10852 "output": null
10853 },
10854 {
10855 "comment": "V7",
10856 "input": "xn--57e0440k.xn--k86h",
10857 "output": null
10858 },
10859 {
10860 "comment": "V7",
10861 "input": "\udbef\udfe6\uff61\u183d",
10862 "output": null
10863 },
10864 {
10865 "comment": "V7",
10866 "input": "\udbef\udfe6\u3002\u183d",
10867 "output": null
10868 },
10869 {
10870 "comment": "V7",
10871 "input": "xn--j890g.xn--w7e",
10872 "output": null
10873 },
10874 {
10875 "comment": "C2",
10876 "input": "\u5b03\ud834\udf4c\uff0e\u200d\u0b44",
10877 "output": null
10878 },
10879 {
10880 "comment": "C2",
10881 "input": "\u5b03\ud834\udf4c.\u200d\u0b44",
10882 "output": null
10883 },
10884 {
10885 "comment": "V6",
10886 "input": "xn--b6s0078f.xn--0ic",
10887 "output": null
10888 },
10889 {
10890 "comment": "C2",
10891 "input": "xn--b6s0078f.xn--0ic557h",
10892 "output": null
10893 },
10894 {
10895 "comment": "C1; V7",
10896 "input": "\u200c.\ud93d\udee4",
10897 "output": null
10898 },
10899 {
10900 "comment": "V7; A4_2 (ignored)",
10901 "input": ".xn--q823a",
10902 "output": null
10903 },
10904 {
10905 "comment": "C1; V7",
10906 "input": "xn--0ug.xn--q823a",
10907 "output": null
10908 },
10909 {
10910 "comment": "V7",
10911 "input": "\udaa9\uded5\u10a3\u4805\uff0e\ud803\ude11",
10912 "output": null
10913 },
10914 {
10915 "comment": "V7",
10916 "input": "\udaa9\uded5\u10a3\u4805.\ud803\ude11",
10917 "output": null
10918 },
10919 {
10920 "comment": "V7",
10921 "input": "\udaa9\uded5\u2d03\u4805.\ud803\ude11",
10922 "output": null
10923 },
10924 {
10925 "comment": "V7",
10926 "input": "xn--ukju77frl47r.xn--yl0d",
10927 "output": null
10928 },
10929 {
10930 "comment": "V7",
10931 "input": "\udaa9\uded5\u2d03\u4805\uff0e\ud803\ude11",
10932 "output": null
10933 },
10934 {
10935 "comment": "V7",
10936 "input": "xn--bnd074zr557n.xn--yl0d",
10937 "output": null
10938 },
10939 {
10940 "comment": "V7; V3 (ignored)",
10941 "input": "-\uff61\ufe12",
10942 "output": null
10943 },
10944 {
10945 "comment": "V3 (ignored); A4_2 (ignored)",
10946 "input": "-\u3002\u3002",
10947 "output": "-.."
10948 },
10949 {
10950 "comment": "V3 (ignored); A4_2 (ignored)",
10951 "input": "-..",
10952 "output": "-.."
10953 },
10954 {
10955 "comment": "V7; V3 (ignored)",
10956 "input": "-.xn--y86c",
10957 "output": null
10958 },
10959 {
10960 "comment": "C2",
10961 "input": "\u200d.F",
10962 "output": null
10963 },
10964 {
10965 "comment": "C2",
10966 "input": "\u200d.f",
10967 "output": null
10968 },
10969 {
10970 "comment": "A4_2 (ignored)",
10971 "input": ".f",
10972 "output": ".f"
10973 },
10974 {
10975 "comment": "C2",
10976 "input": "xn--1ug.f",
10977 "output": null
10978 },
10979 {
10980 "input": "f",
10981 "output": "f"
10982 },
10983 {
10984 "comment": "C2",
10985 "input": "\u200d\u3a32\uff61\u00df",
10986 "output": null
10987 },
10988 {
10989 "comment": "C2",
10990 "input": "\u200d\u3a32\u3002\u00df",
10991 "output": null
10992 },
10993 {
10994 "comment": "C2",
10995 "input": "\u200d\u3a32\u3002SS",
10996 "output": null
10997 },
10998 {
10999 "comment": "C2",
11000 "input": "\u200d\u3a32\u3002ss",
11001 "output": null
11002 },
11003 {
11004 "comment": "C2",
11005 "input": "\u200d\u3a32\u3002Ss",
11006 "output": null
11007 },
11008 {
11009 "input": "xn--9bm.ss",
11010 "output": "xn--9bm.ss"
11011 },
11012 {
11013 "input": "\u3a32.ss",
11014 "output": "xn--9bm.ss"
11015 },
11016 {
11017 "input": "\u3a32.SS",
11018 "output": "xn--9bm.ss"
11019 },
11020 {
11021 "input": "\u3a32.Ss",
11022 "output": "xn--9bm.ss"
11023 },
11024 {
11025 "comment": "C2",
11026 "input": "xn--1ug914h.ss",
11027 "output": null
11028 },
11029 {
11030 "comment": "C2",
11031 "input": "xn--1ug914h.xn--zca",
11032 "output": null
11033 },
11034 {
11035 "comment": "C2",
11036 "input": "\u200d\u3a32\uff61SS",
11037 "output": null
11038 },
11039 {
11040 "comment": "C2",
11041 "input": "\u200d\u3a32\uff61ss",
11042 "output": null
11043 },
11044 {
11045 "comment": "C2",
11046 "input": "\u200d\u3a32\uff61Ss",
11047 "output": null
11048 },
11049 {
11050 "comment": "C2; V7",
11051 "input": "\u200d\uff0e\udbc3\ude28",
11052 "output": null
11053 },
11054 {
11055 "comment": "C2; V7",
11056 "input": "\u200d.\udbc3\ude28",
11057 "output": null
11058 },
11059 {
11060 "comment": "V7; A4_2 (ignored)",
11061 "input": ".xn--h327f",
11062 "output": null
11063 },
11064 {
11065 "comment": "C2; V7",
11066 "input": "xn--1ug.xn--h327f",
11067 "output": null
11068 },
11069 {
11070 "comment": "V7",
11071 "input": "\ud94e\udf7b\ud8f2\udd41\uff61\u2260\ud835\udff2",
11072 "output": null
11073 },
11074 {
11075 "comment": "V7",
11076 "input": "\ud94e\udf7b\ud8f2\udd41\uff61=\u0338\ud835\udff2",
11077 "output": null
11078 },
11079 {
11080 "comment": "V7",
11081 "input": "\ud94e\udf7b\ud8f2\udd41\u3002\u22606",
11082 "output": null
11083 },
11084 {
11085 "comment": "V7",
11086 "input": "\ud94e\udf7b\ud8f2\udd41\u3002=\u03386",
11087 "output": null
11088 },
11089 {
11090 "comment": "V7",
11091 "input": "xn--h79w4z99a.xn--6-tfo",
11092 "output": null
11093 },
11094 {
11095 "comment": "V7",
11096 "input": "xn--98e.xn--om9c",
11097 "output": null
11098 },
11099 {
11100 "comment": "V6; V7",
11101 "input": "\uaaf6\u188f\u0e3a\uff12.\ud800\udee2\u0745\u0f9f\ufe12",
11102 "output": null
11103 },
11104 {
11105 "comment": "V6; A4_2 (ignored)",
11106 "input": "\uaaf6\u188f\u0e3a2.\ud800\udee2\u0745\u0f9f\u3002",
11107 "output": null
11108 },
11109 {
11110 "comment": "V6; A4_2 (ignored)",
11111 "input": "xn--2-2zf840fk16m.xn--sob093b2m7s.",
11112 "output": null
11113 },
11114 {
11115 "comment": "V6; V7",
11116 "input": "xn--2-2zf840fk16m.xn--sob093bj62sz9d",
11117 "output": null
11118 },
11119 {
11120 "comment": "V7",
11121 "input": "\udad7\udd27\uff61\u2260-\udb41\ude44\u2f9b",
11122 "output": null
11123 },
11124 {
11125 "comment": "V7",
11126 "input": "\udad7\udd27\uff61=\u0338-\udb41\ude44\u2f9b",
11127 "output": null
11128 },
11129 {
11130 "comment": "V7",
11131 "input": "\udad7\udd27\u3002\u2260-\udb41\ude44\u8d70",
11132 "output": null
11133 },
11134 {
11135 "comment": "V7",
11136 "input": "\udad7\udd27\u3002=\u0338-\udb41\ude44\u8d70",
11137 "output": null
11138 },
11139 {
11140 "comment": "V7",
11141 "input": "xn--gm57d.xn----tfo4949b3664m",
11142 "output": null
11143 },
11144 {
11145 "input": "\ud835\udfce\u3002\u752f",
11146 "output": "0.xn--qny"
11147 },
11148 {
11149 "input": "0\u3002\u752f",
11150 "output": "0.xn--qny"
11151 },
11152 {
11153 "input": "0.xn--qny",
11154 "output": "0.xn--qny"
11155 },
11156 {
11157 "input": "0.\u752f",
11158 "output": "0.xn--qny"
11159 },
11160 {
11161 "comment": "V6; V3 (ignored)",
11162 "input": "-\u2f86\uff0e\uaaf6",
11163 "output": null
11164 },
11165 {
11166 "comment": "V6; V3 (ignored)",
11167 "input": "-\u820c.\uaaf6",
11168 "output": null
11169 },
11170 {
11171 "comment": "V6; V3 (ignored)",
11172 "input": "xn----ef8c.xn--2v9a",
11173 "output": null
11174 },
11175 {
11176 "comment": "V3 (ignored)",
11177 "input": "-\uff61\u1898",
11178 "output": "-.xn--ibf"
11179 },
11180 {
11181 "comment": "V3 (ignored)",
11182 "input": "-\u3002\u1898",
11183 "output": "-.xn--ibf"
11184 },
11185 {
11186 "comment": "V3 (ignored)",
11187 "input": "-.xn--ibf",
11188 "output": "-.xn--ibf"
11189 },
11190 {
11191 "input": "\ud83c\udcb4\u10ab.\u226e",
11192 "output": "xn--2kj7565l.xn--gdh"
11193 },
11194 {
11195 "input": "\ud83c\udcb4\u10ab.<\u0338",
11196 "output": "xn--2kj7565l.xn--gdh"
11197 },
11198 {
11199 "input": "\ud83c\udcb4\u2d0b.<\u0338",
11200 "output": "xn--2kj7565l.xn--gdh"
11201 },
11202 {
11203 "input": "\ud83c\udcb4\u2d0b.\u226e",
11204 "output": "xn--2kj7565l.xn--gdh"
11205 },
11206 {
11207 "input": "xn--2kj7565l.xn--gdh",
11208 "output": "xn--2kj7565l.xn--gdh"
11209 },
11210 {
11211 "comment": "V7",
11212 "input": "xn--jnd1986v.xn--gdh",
11213 "output": null
11214 },
11215 {
11216 "comment": "C1",
11217 "input": "\u74bc\ud836\ude2d\uff61\u200c\udb40\udddf",
11218 "output": null
11219 },
11220 {
11221 "comment": "C1",
11222 "input": "\u74bc\ud836\ude2d\u3002\u200c\udb40\udddf",
11223 "output": null
11224 },
11225 {
11226 "comment": "A4_2 (ignored)",
11227 "input": "xn--gky8837e.",
11228 "output": "xn--gky8837e."
11229 },
11230 {
11231 "comment": "A4_2 (ignored)",
11232 "input": "\u74bc\ud836\ude2d.",
11233 "output": "xn--gky8837e."
11234 },
11235 {
11236 "comment": "C1",
11237 "input": "xn--gky8837e.xn--0ug",
11238 "output": null
11239 },
11240 {
11241 "comment": "C1",
11242 "input": "\u200c.\u200c",
11243 "output": null
11244 },
11245 {
11246 "comment": "C1",
11247 "input": "xn--0ug.xn--0ug",
11248 "output": null
11249 },
11250 {
11251 "input": "xn--157b.xn--gnb",
11252 "output": "xn--157b.xn--gnb"
11253 },
11254 {
11255 "input": "\ud29b.\u0716",
11256 "output": "xn--157b.xn--gnb"
11257 },
11258 {
11259 "input": "\u1110\u1171\u11c2.\u0716",
11260 "output": "xn--157b.xn--gnb"
11261 },
11262 {
11263 "comment": "V6; V7",
11264 "input": "\u10b7\uff0e\u05c2\ud804\udd34\ua9b7\ud920\udce8",
11265 "output": null
11266 },
11267 {
11268 "comment": "V6; V7",
11269 "input": "\u10b7\uff0e\ud804\udd34\u05c2\ua9b7\ud920\udce8",
11270 "output": null
11271 },
11272 {
11273 "comment": "V6; V7",
11274 "input": "\u10b7.\ud804\udd34\u05c2\ua9b7\ud920\udce8",
11275 "output": null
11276 },
11277 {
11278 "comment": "V6; V7",
11279 "input": "\u2d17.\ud804\udd34\u05c2\ua9b7\ud920\udce8",
11280 "output": null
11281 },
11282 {
11283 "comment": "V6; V7",
11284 "input": "xn--flj.xn--qdb0605f14ycrms3c",
11285 "output": null
11286 },
11287 {
11288 "comment": "V6; V7",
11289 "input": "\u2d17\uff0e\ud804\udd34\u05c2\ua9b7\ud920\udce8",
11290 "output": null
11291 },
11292 {
11293 "comment": "V6; V7",
11294 "input": "\u2d17\uff0e\u05c2\ud804\udd34\ua9b7\ud920\udce8",
11295 "output": null
11296 },
11297 {
11298 "comment": "V6; V7",
11299 "input": "xn--vnd.xn--qdb0605f14ycrms3c",
11300 "output": null
11301 },
11302 {
11303 "comment": "V6; V7",
11304 "input": "\u2488\u916b\ufe12\u3002\u08d6",
11305 "output": null
11306 },
11307 {
11308 "comment": "V6; A4_2 (ignored)",
11309 "input": "1.\u916b\u3002\u3002\u08d6",
11310 "output": null
11311 },
11312 {
11313 "comment": "V6; A4_2 (ignored)",
11314 "input": "1.xn--8j4a..xn--8zb",
11315 "output": null
11316 },
11317 {
11318 "comment": "V6; V7",
11319 "input": "xn--tsh4490bfe8c.xn--8zb",
11320 "output": null
11321 },
11322 {
11323 "comment": "C1; V6",
11324 "input": "\u2de3\u200c\u226e\u1a6b.\u200c\u0e3a",
11325 "output": null
11326 },
11327 {
11328 "comment": "C1; V6",
11329 "input": "\u2de3\u200c<\u0338\u1a6b.\u200c\u0e3a",
11330 "output": null
11331 },
11332 {
11333 "comment": "V6",
11334 "input": "xn--uof548an0j.xn--o4c",
11335 "output": null
11336 },
11337 {
11338 "comment": "C1; V6",
11339 "input": "xn--uof63xk4bf3s.xn--o4c732g",
11340 "output": null
11341 },
11342 {
11343 "comment": "V7",
11344 "input": "xn--co6h.xn--1-kwssa",
11345 "output": null
11346 },
11347 {
11348 "comment": "V7",
11349 "input": "xn--co6h.xn--1-h1g429s",
11350 "output": null
11351 },
11352 {
11353 "comment": "V7",
11354 "input": "xn--co6h.xn--1-h1gs",
11355 "output": null
11356 },
11357 {
11358 "comment": "V6; V7",
11359 "input": "\ua806\u3002\ud8ad\ude8f\u0fb0\u2495",
11360 "output": null
11361 },
11362 {
11363 "comment": "V6; V7; A4_2 (ignored)",
11364 "input": "\ua806\u3002\ud8ad\ude8f\u0fb014.",
11365 "output": null
11366 },
11367 {
11368 "comment": "V6; V7; A4_2 (ignored)",
11369 "input": "xn--l98a.xn--14-jsj57880f.",
11370 "output": null
11371 },
11372 {
11373 "comment": "V6; V7",
11374 "input": "xn--l98a.xn--dgd218hhp28d",
11375 "output": null
11376 },
11377 {
11378 "comment": "C2",
11379 "input": "\ud835\udfe04\udb40\uddd7\ud834\ude3b\uff0e\u200d\ud800\udef5\u26e7\u200d",
11380 "output": null
11381 },
11382 {
11383 "comment": "C2",
11384 "input": "84\udb40\uddd7\ud834\ude3b.\u200d\ud800\udef5\u26e7\u200d",
11385 "output": null
11386 },
11387 {
11388 "input": "xn--84-s850a.xn--59h6326e",
11389 "output": "xn--84-s850a.xn--59h6326e"
11390 },
11391 {
11392 "input": "84\ud834\ude3b.\ud800\udef5\u26e7",
11393 "output": "xn--84-s850a.xn--59h6326e"
11394 },
11395 {
11396 "comment": "C2",
11397 "input": "xn--84-s850a.xn--1uga573cfq1w",
11398 "output": null
11399 },
11400 {
11401 "input": "\u226e\ud835\udfd5\uff0e\u8b16\u00df\u226f",
11402 "output": "xn--7-mgo.xn--zca892oly5e"
11403 },
11404 {
11405 "input": "<\u0338\ud835\udfd5\uff0e\u8b16\u00df>\u0338",
11406 "output": "xn--7-mgo.xn--zca892oly5e"
11407 },
11408 {
11409 "input": "\u226e7.\u8b16\u00df\u226f",
11410 "output": "xn--7-mgo.xn--zca892oly5e"
11411 },
11412 {
11413 "input": "<\u03387.\u8b16\u00df>\u0338",
11414 "output": "xn--7-mgo.xn--zca892oly5e"
11415 },
11416 {
11417 "input": "<\u03387.\u8b16SS>\u0338",
11418 "output": "xn--7-mgo.xn--ss-xjvv174c"
11419 },
11420 {
11421 "input": "\u226e7.\u8b16SS\u226f",
11422 "output": "xn--7-mgo.xn--ss-xjvv174c"
11423 },
11424 {
11425 "input": "\u226e7.\u8b16ss\u226f",
11426 "output": "xn--7-mgo.xn--ss-xjvv174c"
11427 },
11428 {
11429 "input": "<\u03387.\u8b16ss>\u0338",
11430 "output": "xn--7-mgo.xn--ss-xjvv174c"
11431 },
11432 {
11433 "input": "<\u03387.\u8b16Ss>\u0338",
11434 "output": "xn--7-mgo.xn--ss-xjvv174c"
11435 },
11436 {
11437 "input": "\u226e7.\u8b16Ss\u226f",
11438 "output": "xn--7-mgo.xn--ss-xjvv174c"
11439 },
11440 {
11441 "input": "xn--7-mgo.xn--ss-xjvv174c",
11442 "output": "xn--7-mgo.xn--ss-xjvv174c"
11443 },
11444 {
11445 "input": "xn--7-mgo.xn--zca892oly5e",
11446 "output": "xn--7-mgo.xn--zca892oly5e"
11447 },
11448 {
11449 "input": "<\u0338\ud835\udfd5\uff0e\u8b16SS>\u0338",
11450 "output": "xn--7-mgo.xn--ss-xjvv174c"
11451 },
11452 {
11453 "input": "\u226e\ud835\udfd5\uff0e\u8b16SS\u226f",
11454 "output": "xn--7-mgo.xn--ss-xjvv174c"
11455 },
11456 {
11457 "input": "\u226e\ud835\udfd5\uff0e\u8b16ss\u226f",
11458 "output": "xn--7-mgo.xn--ss-xjvv174c"
11459 },
11460 {
11461 "input": "<\u0338\ud835\udfd5\uff0e\u8b16ss>\u0338",
11462 "output": "xn--7-mgo.xn--ss-xjvv174c"
11463 },
11464 {
11465 "input": "<\u0338\ud835\udfd5\uff0e\u8b16Ss>\u0338",
11466 "output": "xn--7-mgo.xn--ss-xjvv174c"
11467 },
11468 {
11469 "input": "\u226e\ud835\udfd5\uff0e\u8b16Ss\u226f",
11470 "output": "xn--7-mgo.xn--ss-xjvv174c"
11471 },
11472 {
11473 "comment": "C1; V7",
11474 "input": "\ud975\udf0e\u2488\uff61\u200c\ud835\udfe4",
11475 "output": null
11476 },
11477 {
11478 "comment": "C1; V7; A4_2 (ignored)",
11479 "input": "\ud975\udf0e1.\u3002\u200c2",
11480 "output": null
11481 },
11482 {
11483 "comment": "V7; A4_2 (ignored)",
11484 "input": "xn--1-ex54e..c",
11485 "output": null
11486 },
11487 {
11488 "comment": "C1; V7; A4_2 (ignored)",
11489 "input": "xn--1-ex54e..xn--2-rgn",
11490 "output": null
11491 },
11492 {
11493 "comment": "V7",
11494 "input": "xn--tsh94183d.c",
11495 "output": null
11496 },
11497 {
11498 "comment": "C1; V7",
11499 "input": "xn--tsh94183d.xn--2-rgn",
11500 "output": null
11501 },
11502 {
11503 "comment": "C1; C2",
11504 "input": "\u200d\u200c\udb40\uddaa\uff61\u00df\ud805\udcc3",
11505 "output": null
11506 },
11507 {
11508 "comment": "C1; C2",
11509 "input": "\u200d\u200c\udb40\uddaa\u3002\u00df\ud805\udcc3",
11510 "output": null
11511 },
11512 {
11513 "comment": "C1; C2",
11514 "input": "\u200d\u200c\udb40\uddaa\u3002SS\ud805\udcc3",
11515 "output": null
11516 },
11517 {
11518 "comment": "C1; C2",
11519 "input": "\u200d\u200c\udb40\uddaa\u3002ss\ud805\udcc3",
11520 "output": null
11521 },
11522 {
11523 "comment": "C1; C2",
11524 "input": "\u200d\u200c\udb40\uddaa\u3002Ss\ud805\udcc3",
11525 "output": null
11526 },
11527 {
11528 "comment": "A4_2 (ignored)",
11529 "input": ".xn--ss-bh7o",
11530 "output": ".xn--ss-bh7o"
11531 },
11532 {
11533 "comment": "C1; C2",
11534 "input": "xn--0ugb.xn--ss-bh7o",
11535 "output": null
11536 },
11537 {
11538 "comment": "C1; C2",
11539 "input": "xn--0ugb.xn--zca0732l",
11540 "output": null
11541 },
11542 {
11543 "comment": "C1; C2",
11544 "input": "\u200d\u200c\udb40\uddaa\uff61SS\ud805\udcc3",
11545 "output": null
11546 },
11547 {
11548 "comment": "C1; C2",
11549 "input": "\u200d\u200c\udb40\uddaa\uff61ss\ud805\udcc3",
11550 "output": null
11551 },
11552 {
11553 "comment": "C1; C2",
11554 "input": "\u200d\u200c\udb40\uddaa\uff61Ss\ud805\udcc3",
11555 "output": null
11556 },
11557 {
11558 "input": "xn--ss-bh7o",
11559 "output": "xn--ss-bh7o"
11560 },
11561 {
11562 "input": "ss\ud805\udcc3",
11563 "output": "xn--ss-bh7o"
11564 },
11565 {
11566 "input": "SS\ud805\udcc3",
11567 "output": "xn--ss-bh7o"
11568 },
11569 {
11570 "input": "Ss\ud805\udcc3",
11571 "output": "xn--ss-bh7o"
11572 },
11573 {
11574 "comment": "C1; V7",
11575 "input": "\ufe12\u200c\u30f6\u44a9.\ua86a",
11576 "output": null
11577 },
11578 {
11579 "comment": "C1; A4_2 (ignored)",
11580 "input": "\u3002\u200c\u30f6\u44a9.\ua86a",
11581 "output": null
11582 },
11583 {
11584 "comment": "A4_2 (ignored)",
11585 "input": ".xn--qekw60d.xn--gd9a",
11586 "output": ".xn--qekw60d.xn--gd9a"
11587 },
11588 {
11589 "comment": "C1; A4_2 (ignored)",
11590 "input": ".xn--0ug287dj0o.xn--gd9a",
11591 "output": null
11592 },
11593 {
11594 "comment": "V7",
11595 "input": "xn--qekw60dns9k.xn--gd9a",
11596 "output": null
11597 },
11598 {
11599 "comment": "C1; V7",
11600 "input": "xn--0ug287dj0or48o.xn--gd9a",
11601 "output": null
11602 },
11603 {
11604 "input": "xn--qekw60d.xn--gd9a",
11605 "output": "xn--qekw60d.xn--gd9a"
11606 },
11607 {
11608 "input": "\u30f6\u44a9.\ua86a",
11609 "output": "xn--qekw60d.xn--gd9a"
11610 },
11611 {
11612 "comment": "C1; V7",
11613 "input": "\u200c\u2488\ud852\udf8d.\udb49\udccb\u1a60",
11614 "output": null
11615 },
11616 {
11617 "comment": "C1; V7",
11618 "input": "\u200c1.\ud852\udf8d.\udb49\udccb\u1a60",
11619 "output": null
11620 },
11621 {
11622 "comment": "V7",
11623 "input": "1.xn--4x6j.xn--jof45148n",
11624 "output": null
11625 },
11626 {
11627 "comment": "C1; V7",
11628 "input": "xn--1-rgn.xn--4x6j.xn--jof45148n",
11629 "output": null
11630 },
11631 {
11632 "comment": "V7",
11633 "input": "xn--tshw462r.xn--jof45148n",
11634 "output": null
11635 },
11636 {
11637 "comment": "C1; V7",
11638 "input": "xn--0ug88o7471d.xn--jof45148n",
11639 "output": null
11640 },
11641 {
11642 "comment": "V7; A4_2 (ignored)",
11643 "input": "\ud834\udd75\uff61\ud835\udfeb\ud838\udc08\u4b3a\u2488",
11644 "output": null
11645 },
11646 {
11647 "comment": "A4_2 (ignored)",
11648 "input": "\ud834\udd75\u30029\ud838\udc08\u4b3a1.",
11649 "output": ".xn--91-030c1650n."
11650 },
11651 {
11652 "comment": "A4_2 (ignored)",
11653 "input": ".xn--91-030c1650n.",
11654 "output": ".xn--91-030c1650n."
11655 },
11656 {
11657 "comment": "V7; A4_2 (ignored)",
11658 "input": ".xn--9-ecp936non25a",
11659 "output": null
11660 },
11661 {
11662 "comment": "V7; A4_2 (ignored)",
11663 "input": "xn--3f1h.xn--91-030c1650n.",
11664 "output": null
11665 },
11666 {
11667 "comment": "V7",
11668 "input": "xn--3f1h.xn--9-ecp936non25a",
11669 "output": null
11670 },
11671 {
11672 "input": "xn--8c1a.xn--2ib8jn539l",
11673 "output": "xn--8c1a.xn--2ib8jn539l"
11674 },
11675 {
11676 "input": "\u821b.\u067d\ud83a\udd34\u06bb",
11677 "output": "xn--8c1a.xn--2ib8jn539l"
11678 },
11679 {
11680 "input": "\u821b.\u067d\ud83a\udd12\u06bb",
11681 "output": "xn--8c1a.xn--2ib8jn539l"
11682 },
11683 {
11684 "comment": "V6; V3 (ignored)",
11685 "input": "-\udb40\udd710\uff61\u17cf\u1dfd\ud187\uc2ed",
11686 "output": null
11687 },
11688 {
11689 "comment": "V6; V3 (ignored)",
11690 "input": "-\udb40\udd710\uff61\u17cf\u1dfd\u1110\u1168\u11aa\u1109\u1175\u11b8",
11691 "output": null
11692 },
11693 {
11694 "comment": "V6; V3 (ignored)",
11695 "input": "-\udb40\udd710\u3002\u17cf\u1dfd\ud187\uc2ed",
11696 "output": null
11697 },
11698 {
11699 "comment": "V6; V3 (ignored)",
11700 "input": "-\udb40\udd710\u3002\u17cf\u1dfd\u1110\u1168\u11aa\u1109\u1175\u11b8",
11701 "output": null
11702 },
11703 {
11704 "comment": "V6; V3 (ignored)",
11705 "input": "-0.xn--r4e872ah77nghm",
11706 "output": null
11707 },
11708 {
11709 "comment": "V6",
11710 "input": "\u115f\u10bf\u10b5\u10e0\uff61\u0b4d",
11711 "output": null
11712 },
11713 {
11714 "comment": "V6",
11715 "input": "\u115f\u10bf\u10b5\u10e0\u3002\u0b4d",
11716 "output": null
11717 },
11718 {
11719 "comment": "V6",
11720 "input": "\u115f\u2d1f\u2d15\u10e0\u3002\u0b4d",
11721 "output": null
11722 },
11723 {
11724 "comment": "V6",
11725 "input": "\u115f\u10bf\u10b5\u1ca0\u3002\u0b4d",
11726 "output": null
11727 },
11728 {
11729 "comment": "V6",
11730 "input": "xn--1od555l3a.xn--9ic",
11731 "output": null
11732 },
11733 {
11734 "comment": "V6",
11735 "input": "\u115f\u2d1f\u2d15\u10e0\uff61\u0b4d",
11736 "output": null
11737 },
11738 {
11739 "comment": "V6",
11740 "input": "\u115f\u10bf\u10b5\u1ca0\uff61\u0b4d",
11741 "output": null
11742 },
11743 {
11744 "comment": "V6; V7",
11745 "input": "xn--tndt4hvw.xn--9ic",
11746 "output": null
11747 },
11748 {
11749 "comment": "V6; V7",
11750 "input": "xn--1od7wz74eeb.xn--9ic",
11751 "output": null
11752 },
11753 {
11754 "comment": "V6",
11755 "input": "\u115f\u10bf\u2d15\u10e0\u3002\u0b4d",
11756 "output": null
11757 },
11758 {
11759 "comment": "V6; V7",
11760 "input": "xn--3nd0etsm92g.xn--9ic",
11761 "output": null
11762 },
11763 {
11764 "comment": "V6",
11765 "input": "\u115f\u10bf\u2d15\u10e0\uff61\u0b4d",
11766 "output": null
11767 },
11768 {
11769 "comment": "V7",
11770 "input": "xn--l96h.xn--o8e4044k",
11771 "output": null
11772 },
11773 {
11774 "comment": "V7",
11775 "input": "xn--l96h.xn--03e93aq365d",
11776 "output": null
11777 },
11778 {
11779 "comment": "V6; V3 (ignored)",
11780 "input": "\ud835\udfdb\ud834\uddaa\ua8c4\uff61\ua8ea-",
11781 "output": null
11782 },
11783 {
11784 "comment": "V6; V3 (ignored)",
11785 "input": "\ud835\udfdb\ua8c4\ud834\uddaa\uff61\ua8ea-",
11786 "output": null
11787 },
11788 {
11789 "comment": "V6; V3 (ignored)",
11790 "input": "3\ua8c4\ud834\uddaa\u3002\ua8ea-",
11791 "output": null
11792 },
11793 {
11794 "comment": "V6; V3 (ignored)",
11795 "input": "xn--3-sl4eu679e.xn----xn4e",
11796 "output": null
11797 },
11798 {
11799 "comment": "V6; V7",
11800 "input": "\u1139\uff61\u0eca\uda42\udfe4\udb40\udd1e",
11801 "output": null
11802 },
11803 {
11804 "comment": "V6; V7",
11805 "input": "\u1139\u3002\u0eca\uda42\udfe4\udb40\udd1e",
11806 "output": null
11807 },
11808 {
11809 "comment": "V6; V7",
11810 "input": "xn--lrd.xn--s8c05302k",
11811 "output": null
11812 },
11813 {
11814 "comment": "V7",
11815 "input": "\u10a6\udaae\udca9\uff0e\udb40\udda1\ufe09\ud83a\udd0d",
11816 "output": null
11817 },
11818 {
11819 "comment": "V7",
11820 "input": "\u10a6\udaae\udca9.\udb40\udda1\ufe09\ud83a\udd0d",
11821 "output": null
11822 },
11823 {
11824 "comment": "V7",
11825 "input": "\u2d06\udaae\udca9.\udb40\udda1\ufe09\ud83a\udd2f",
11826 "output": null
11827 },
11828 {
11829 "comment": "V7",
11830 "input": "xn--xkjw3965g.xn--ne6h",
11831 "output": null
11832 },
11833 {
11834 "comment": "V7",
11835 "input": "\u2d06\udaae\udca9\uff0e\udb40\udda1\ufe09\ud83a\udd2f",
11836 "output": null
11837 },
11838 {
11839 "comment": "V7",
11840 "input": "xn--end82983m.xn--ne6h",
11841 "output": null
11842 },
11843 {
11844 "comment": "V7",
11845 "input": "\u2d06\udaae\udca9.\udb40\udda1\ufe09\ud83a\udd0d",
11846 "output": null
11847 },
11848 {
11849 "comment": "V7",
11850 "input": "\u2d06\udaae\udca9\uff0e\udb40\udda1\ufe09\ud83a\udd0d",
11851 "output": null
11852 },
11853 {
11854 "comment": "V7",
11855 "input": "\ud91d\udee8.\ud9d5\udfe2\ud835\udfe8\ua8c4",
11856 "output": null
11857 },
11858 {
11859 "comment": "V7",
11860 "input": "\ud91d\udee8.\ud9d5\udfe26\ua8c4",
11861 "output": null
11862 },
11863 {
11864 "comment": "V7",
11865 "input": "xn--mi60a.xn--6-sl4es8023c",
11866 "output": null
11867 },
11868 {
11869 "comment": "V7",
11870 "input": "\ud800\udef8\udb79\ude0b\u10c2.\u10a1",
11871 "output": null
11872 },
11873 {
11874 "comment": "V7",
11875 "input": "\ud800\udef8\udb79\ude0b\u2d22.\u2d01",
11876 "output": null
11877 },
11878 {
11879 "comment": "V7",
11880 "input": "\ud800\udef8\udb79\ude0b\u10c2.\u2d01",
11881 "output": null
11882 },
11883 {
11884 "comment": "V7",
11885 "input": "xn--qlj1559dr224h.xn--skj",
11886 "output": null
11887 },
11888 {
11889 "comment": "V7",
11890 "input": "xn--6nd5215jr2u0h.xn--skj",
11891 "output": null
11892 },
11893 {
11894 "comment": "V7",
11895 "input": "xn--6nd5215jr2u0h.xn--8md",
11896 "output": null
11897 },
11898 {
11899 "comment": "V7",
11900 "input": "\ud91d\udc7f\ua806\u2084\uda65\udf86\uff61\ud88a\ude67\udb41\udcb9\u03c2",
11901 "output": null
11902 },
11903 {
11904 "comment": "V7",
11905 "input": "\ud91d\udc7f\ua8064\uda65\udf86\u3002\ud88a\ude67\udb41\udcb9\u03c2",
11906 "output": null
11907 },
11908 {
11909 "comment": "V7",
11910 "input": "\ud91d\udc7f\ua8064\uda65\udf86\u3002\ud88a\ude67\udb41\udcb9\u03a3",
11911 "output": null
11912 },
11913 {
11914 "comment": "V7",
11915 "input": "\ud91d\udc7f\ua8064\uda65\udf86\u3002\ud88a\ude67\udb41\udcb9\u03c3",
11916 "output": null
11917 },
11918 {
11919 "comment": "V7",
11920 "input": "xn--4-w93ej7463a9io5a.xn--4xa31142bk3f0d",
11921 "output": null
11922 },
11923 {
11924 "comment": "V7",
11925 "input": "xn--4-w93ej7463a9io5a.xn--3xa51142bk3f0d",
11926 "output": null
11927 },
11928 {
11929 "comment": "V7",
11930 "input": "\ud91d\udc7f\ua806\u2084\uda65\udf86\uff61\ud88a\ude67\udb41\udcb9\u03a3",
11931 "output": null
11932 },
11933 {
11934 "comment": "V7",
11935 "input": "\ud91d\udc7f\ua806\u2084\uda65\udf86\uff61\ud88a\ude67\udb41\udcb9\u03c3",
11936 "output": null
11937 },
11938 {
11939 "comment": "V7",
11940 "input": "\ud8ba\udcac\u3002\u0729\u3002\ucbd95",
11941 "output": null
11942 },
11943 {
11944 "comment": "V7",
11945 "input": "\ud8ba\udcac\u3002\u0729\u3002\u110d\u1173\u11ac5",
11946 "output": null
11947 },
11948 {
11949 "comment": "V7",
11950 "input": "xn--t92s.xn--znb.xn--5-y88f",
11951 "output": null
11952 },
11953 {
11954 "comment": "C2; V6",
11955 "input": "\u17ca.\u200d\ud835\udfee\ud804\udc3f",
11956 "output": null
11957 },
11958 {
11959 "comment": "C2; V6",
11960 "input": "\u17ca.\u200d2\ud804\udc3f",
11961 "output": null
11962 },
11963 {
11964 "comment": "V6",
11965 "input": "xn--m4e.xn--2-ku7i",
11966 "output": null
11967 },
11968 {
11969 "comment": "C2; V6",
11970 "input": "xn--m4e.xn--2-tgnv469h",
11971 "output": null
11972 },
11973 {
11974 "comment": "V6",
11975 "input": "\uaaf6\u3002\u5b36\u00df\u847d",
11976 "output": null
11977 },
11978 {
11979 "comment": "V6",
11980 "input": "\uaaf6\u3002\u5b36SS\u847d",
11981 "output": null
11982 },
11983 {
11984 "comment": "V6",
11985 "input": "\uaaf6\u3002\u5b36ss\u847d",
11986 "output": null
11987 },
11988 {
11989 "comment": "V6",
11990 "input": "\uaaf6\u3002\u5b36Ss\u847d",
11991 "output": null
11992 },
11993 {
11994 "comment": "V6",
11995 "input": "xn--2v9a.xn--ss-q40dp97m",
11996 "output": null
11997 },
11998 {
11999 "comment": "V6",
12000 "input": "xn--2v9a.xn--zca7637b14za",
12001 "output": null
12002 },
12003 {
12004 "comment": "C1; V7",
12005 "input": "\u03c2\ud805\udc3d\ud896\udc88\ud805\udf2b\uff61\ud83a\udf29\u200c\ud802\udec4",
12006 "output": null
12007 },
12008 {
12009 "comment": "C1; V7",
12010 "input": "\u03c2\ud805\udc3d\ud896\udc88\ud805\udf2b\u3002\ud83a\udf29\u200c\ud802\udec4",
12011 "output": null
12012 },
12013 {
12014 "comment": "C1; V7",
12015 "input": "\u03a3\ud805\udc3d\ud896\udc88\ud805\udf2b\u3002\ud83a\udf29\u200c\ud802\udec4",
12016 "output": null
12017 },
12018 {
12019 "comment": "C1; V7",
12020 "input": "\u03c3\ud805\udc3d\ud896\udc88\ud805\udf2b\u3002\ud83a\udf29\u200c\ud802\udec4",
12021 "output": null
12022 },
12023 {
12024 "comment": "V7",
12025 "input": "xn--4xa2260lk3b8z15g.xn--tw9ct349a",
12026 "output": null
12027 },
12028 {
12029 "comment": "C1; V7",
12030 "input": "xn--4xa2260lk3b8z15g.xn--0ug4653g2xzf",
12031 "output": null
12032 },
12033 {
12034 "comment": "C1; V7",
12035 "input": "xn--3xa4260lk3b8z15g.xn--0ug4653g2xzf",
12036 "output": null
12037 },
12038 {
12039 "comment": "C1; V7",
12040 "input": "\u03a3\ud805\udc3d\ud896\udc88\ud805\udf2b\uff61\ud83a\udf29\u200c\ud802\udec4",
12041 "output": null
12042 },
12043 {
12044 "comment": "C1; V7",
12045 "input": "\u03c3\ud805\udc3d\ud896\udc88\ud805\udf2b\uff61\ud83a\udf29\u200c\ud802\udec4",
12046 "output": null
12047 },
12048 {
12049 "comment": "C2; V7",
12050 "input": "\u2ea2\ud9df\ude85\ud835\udfe4\uff61\u200d\ud83d\udeb7",
12051 "output": null
12052 },
12053 {
12054 "comment": "C2; V7",
12055 "input": "\u2ea2\ud9df\ude852\u3002\u200d\ud83d\udeb7",
12056 "output": null
12057 },
12058 {
12059 "comment": "V7",
12060 "input": "xn--2-4jtr4282f.xn--m78h",
12061 "output": null
12062 },
12063 {
12064 "comment": "C2; V7",
12065 "input": "xn--2-4jtr4282f.xn--1ugz946p",
12066 "output": null
12067 },
12068 {
12069 "comment": "V6",
12070 "input": "\ud836\ude25\u3002\u2adf\ud804\ude3e",
12071 "output": null
12072 },
12073 {
12074 "comment": "V6",
12075 "input": "xn--n82h.xn--63iw010f",
12076 "output": null
12077 },
12078 {
12079 "comment": "C1; V6; V3 (ignored); U1 (ignored)",
12080 "input": "-\u1897\u200c\ud83c\udd04.\ud805\udf22",
12081 "output": null
12082 },
12083 {
12084 "comment": "C1; V6; V3 (ignored); U1 (ignored)",
12085 "input": "-\u1897\u200c3,.\ud805\udf22",
12086 "output": null
12087 },
12088 {
12089 "comment": "V6; V3 (ignored); U1 (ignored)",
12090 "input": "xn---3,-3eu.xn--9h2d",
12091 "output": null
12092 },
12093 {
12094 "comment": "C1; V6; V3 (ignored); U1 (ignored)",
12095 "input": "xn---3,-3eu051c.xn--9h2d",
12096 "output": null
12097 },
12098 {
12099 "comment": "V6; V7; V3 (ignored)",
12100 "input": "xn----pck1820x.xn--9h2d",
12101 "output": null
12102 },
12103 {
12104 "comment": "C1; V6; V7; V3 (ignored)",
12105 "input": "xn----pck312bx563c.xn--9h2d",
12106 "output": null
12107 },
12108 {
12109 "comment": "V3 (ignored); A4_2 (ignored)",
12110 "input": "\u17b4.\ucb87-",
12111 "output": ".xn----938f"
12112 },
12113 {
12114 "comment": "V3 (ignored); A4_2 (ignored)",
12115 "input": "\u17b4.\u110d\u1170\u11ae-",
12116 "output": ".xn----938f"
12117 },
12118 {
12119 "comment": "V3 (ignored); A4_2 (ignored)",
12120 "input": ".xn----938f",
12121 "output": ".xn----938f"
12122 },
12123 {
12124 "comment": "V6; V7; V3 (ignored)",
12125 "input": "xn--z3e.xn----938f",
12126 "output": null
12127 },
12128 {
12129 "comment": "C1; V7",
12130 "input": "\u200c\ud805\udcc2\u3002\u2488-\udbc2\ude9b",
12131 "output": null
12132 },
12133 {
12134 "comment": "C1; V7; V3 (ignored)",
12135 "input": "\u200c\ud805\udcc2\u30021.-\udbc2\ude9b",
12136 "output": null
12137 },
12138 {
12139 "comment": "V6; V7; V3 (ignored)",
12140 "input": "xn--wz1d.1.xn----rg03o",
12141 "output": null
12142 },
12143 {
12144 "comment": "C1; V7; V3 (ignored)",
12145 "input": "xn--0ugy057g.1.xn----rg03o",
12146 "output": null
12147 },
12148 {
12149 "comment": "V6; V7",
12150 "input": "xn--wz1d.xn----dcp29674o",
12151 "output": null
12152 },
12153 {
12154 "comment": "C1; V7",
12155 "input": "xn--0ugy057g.xn----dcp29674o",
12156 "output": null
12157 },
12158 {
12159 "comment": "A4_2 (ignored)",
12160 "input": ".xn--hcb32bni",
12161 "output": ".xn--hcb32bni"
12162 },
12163 {
12164 "input": "xn--hcb32bni",
12165 "output": "xn--hcb32bni"
12166 },
12167 {
12168 "input": "\u06bd\u0663\u0596",
12169 "output": "xn--hcb32bni"
12170 },
12171 {
12172 "comment": "V6; V3 (ignored)",
12173 "input": "\u0f94\ua84b-\uff0e-\ud81a\udf34",
12174 "output": null
12175 },
12176 {
12177 "comment": "V6; V3 (ignored)",
12178 "input": "\u0f94\ua84b-.-\ud81a\udf34",
12179 "output": null
12180 },
12181 {
12182 "comment": "V6; V3 (ignored)",
12183 "input": "xn----ukg9938i.xn----4u5m",
12184 "output": null
12185 },
12186 {
12187 "comment": "C1; V7; V3 (ignored)",
12188 "input": "\ud9bd\udcb3-\u22e2\u200c\uff0e\u6807-",
12189 "output": null
12190 },
12191 {
12192 "comment": "C1; V7; V3 (ignored)",
12193 "input": "\ud9bd\udcb3-\u2291\u0338\u200c\uff0e\u6807-",
12194 "output": null
12195 },
12196 {
12197 "comment": "C1; V7; V3 (ignored)",
12198 "input": "\ud9bd\udcb3-\u22e2\u200c.\u6807-",
12199 "output": null
12200 },
12201 {
12202 "comment": "C1; V7; V3 (ignored)",
12203 "input": "\ud9bd\udcb3-\u2291\u0338\u200c.\u6807-",
12204 "output": null
12205 },
12206 {
12207 "comment": "V7; V3 (ignored)",
12208 "input": "xn----9mo67451g.xn----qj7b",
12209 "output": null
12210 },
12211 {
12212 "comment": "C1; V7; V3 (ignored)",
12213 "input": "xn----sgn90kn5663a.xn----qj7b",
12214 "output": null
12215 },
12216 {
12217 "comment": "V6; V7; V3 (ignored)",
12218 "input": "-\ud914\ude74.\u06e0\u189a-",
12219 "output": null
12220 },
12221 {
12222 "comment": "V6; V7; V3 (ignored)",
12223 "input": "xn----qi38c.xn----jxc827k",
12224 "output": null
12225 },
12226 {
12227 "comment": "V7; A4_2 (ignored)",
12228 "input": "\u3002\u0635\u0649\u0e37\u0644\u0627\u3002\u5c93\u1bf2\udb43\udf83\u1842",
12229 "output": null
12230 },
12231 {
12232 "comment": "V7; A4_2 (ignored)",
12233 "input": ".xn--mgb1a7bt462h.xn--17e10qe61f9r71s",
12234 "output": null
12235 },
12236 {
12237 "comment": "V3 (ignored)",
12238 "input": "\u188c\uff0e-\u085a",
12239 "output": "xn--59e.xn----5jd"
12240 },
12241 {
12242 "comment": "V3 (ignored)",
12243 "input": "\u188c.-\u085a",
12244 "output": "xn--59e.xn----5jd"
12245 },
12246 {
12247 "comment": "V3 (ignored)",
12248 "input": "xn--59e.xn----5jd",
12249 "output": "xn--59e.xn----5jd"
12250 },
12251 {
12252 "comment": "V6; V7",
12253 "input": "\u1039-\ud82a\udfad\ud83d\udfa2\uff0e\u00df",
12254 "output": null
12255 },
12256 {
12257 "comment": "V6; V7",
12258 "input": "\u1039-\ud82a\udfad\ud83d\udfa2.\u00df",
12259 "output": null
12260 },
12261 {
12262 "comment": "V6; V7",
12263 "input": "\u1039-\ud82a\udfad\ud83d\udfa2.SS",
12264 "output": null
12265 },
12266 {
12267 "comment": "V6; V7",
12268 "input": "\u1039-\ud82a\udfad\ud83d\udfa2.ss",
12269 "output": null
12270 },
12271 {
12272 "comment": "V6; V7",
12273 "input": "\u1039-\ud82a\udfad\ud83d\udfa2.Ss",
12274 "output": null
12275 },
12276 {
12277 "comment": "V6; V7",
12278 "input": "xn----9tg11172akr8b.ss",
12279 "output": null
12280 },
12281 {
12282 "comment": "V6; V7",
12283 "input": "xn----9tg11172akr8b.xn--zca",
12284 "output": null
12285 },
12286 {
12287 "comment": "V6; V7",
12288 "input": "\u1039-\ud82a\udfad\ud83d\udfa2\uff0eSS",
12289 "output": null
12290 },
12291 {
12292 "comment": "V6; V7",
12293 "input": "\u1039-\ud82a\udfad\ud83d\udfa2\uff0ess",
12294 "output": null
12295 },
12296 {
12297 "comment": "V6; V7",
12298 "input": "\u1039-\ud82a\udfad\ud83d\udfa2\uff0eSs",
12299 "output": null
12300 },
12301 {
12302 "comment": "C1; C2; V6; V7",
12303 "input": "\u0d4d-\u200d\u200c\uff61\ud955\udfa7\u2085\u2260",
12304 "output": null
12305 },
12306 {
12307 "comment": "C1; C2; V6; V7",
12308 "input": "\u0d4d-\u200d\u200c\uff61\ud955\udfa7\u2085=\u0338",
12309 "output": null
12310 },
12311 {
12312 "comment": "C1; C2; V6; V7",
12313 "input": "\u0d4d-\u200d\u200c\u3002\ud955\udfa75\u2260",
12314 "output": null
12315 },
12316 {
12317 "comment": "C1; C2; V6; V7",
12318 "input": "\u0d4d-\u200d\u200c\u3002\ud955\udfa75=\u0338",
12319 "output": null
12320 },
12321 {
12322 "comment": "V6; V7; V3 (ignored)",
12323 "input": "xn----jmf.xn--5-ufo50192e",
12324 "output": null
12325 },
12326 {
12327 "comment": "C1; C2; V6; V7",
12328 "input": "xn----jmf215lda.xn--5-ufo50192e",
12329 "output": null
12330 },
12331 {
12332 "comment": "V6; V7",
12333 "input": "\u9523\u3002\u0a4d\udb41\ude3b\udb41\ude86",
12334 "output": null
12335 },
12336 {
12337 "comment": "V6; V7",
12338 "input": "xn--gc5a.xn--ybc83044ppga",
12339 "output": null
12340 },
12341 {
12342 "input": "xn--8gb2338k.xn--lhb0154f",
12343 "output": "xn--8gb2338k.xn--lhb0154f"
12344 },
12345 {
12346 "input": "\u063d\ud804\ude3e.\u0649\ua92b",
12347 "output": "xn--8gb2338k.xn--lhb0154f"
12348 },
12349 {
12350 "input": "\u10c1\u10b16\u0318\u3002\u00df\u1b03",
12351 "output": "xn--6-8cb7433a2ba.xn--zca894k"
12352 },
12353 {
12354 "input": "\u2d21\u2d116\u0318\u3002\u00df\u1b03",
12355 "output": "xn--6-8cb7433a2ba.xn--zca894k"
12356 },
12357 {
12358 "input": "\u10c1\u10b16\u0318\u3002SS\u1b03",
12359 "output": "xn--6-8cb7433a2ba.xn--ss-2vq"
12360 },
12361 {
12362 "input": "\u2d21\u2d116\u0318\u3002ss\u1b03",
12363 "output": "xn--6-8cb7433a2ba.xn--ss-2vq"
12364 },
12365 {
12366 "input": "\u10c1\u2d116\u0318\u3002Ss\u1b03",
12367 "output": "xn--6-8cb7433a2ba.xn--ss-2vq"
12368 },
12369 {
12370 "input": "xn--6-8cb7433a2ba.xn--ss-2vq",
12371 "output": "xn--6-8cb7433a2ba.xn--ss-2vq"
12372 },
12373 {
12374 "input": "\u2d21\u2d116\u0318.ss\u1b03",
12375 "output": "xn--6-8cb7433a2ba.xn--ss-2vq"
12376 },
12377 {
12378 "input": "\u10c1\u10b16\u0318.SS\u1b03",
12379 "output": "xn--6-8cb7433a2ba.xn--ss-2vq"
12380 },
12381 {
12382 "input": "\u10c1\u2d116\u0318.Ss\u1b03",
12383 "output": "xn--6-8cb7433a2ba.xn--ss-2vq"
12384 },
12385 {
12386 "input": "xn--6-8cb7433a2ba.xn--zca894k",
12387 "output": "xn--6-8cb7433a2ba.xn--zca894k"
12388 },
12389 {
12390 "input": "\u2d21\u2d116\u0318.\u00df\u1b03",
12391 "output": "xn--6-8cb7433a2ba.xn--zca894k"
12392 },
12393 {
12394 "comment": "V7",
12395 "input": "xn--6-8cb306hms1a.xn--ss-2vq",
12396 "output": null
12397 },
12398 {
12399 "comment": "V7",
12400 "input": "xn--6-8cb555h2b.xn--ss-2vq",
12401 "output": null
12402 },
12403 {
12404 "comment": "V7",
12405 "input": "xn--6-8cb555h2b.xn--zca894k",
12406 "output": null
12407 },
12408 {
12409 "comment": "V7",
12410 "input": "\ud9ee\udc50\uff61\u226f\ud804\udeea",
12411 "output": null
12412 },
12413 {
12414 "comment": "V7",
12415 "input": "\ud9ee\udc50\uff61>\u0338\ud804\udeea",
12416 "output": null
12417 },
12418 {
12419 "comment": "V7",
12420 "input": "\ud9ee\udc50\u3002\u226f\ud804\udeea",
12421 "output": null
12422 },
12423 {
12424 "comment": "V7",
12425 "input": "\ud9ee\udc50\u3002>\u0338\ud804\udeea",
12426 "output": null
12427 },
12428 {
12429 "comment": "V7",
12430 "input": "xn--eo08b.xn--hdh3385g",
12431 "output": null
12432 },
12433 {
12434 "comment": "V6; V7; A4_2 (ignored)",
12435 "input": "\udb40\udd0f\ud81a\udf34\udb43\udcbd\uff61\uffa0",
12436 "output": null
12437 },
12438 {
12439 "comment": "V6; V7; A4_2 (ignored)",
12440 "input": "\udb40\udd0f\ud81a\udf34\udb43\udcbd\u3002\u1160",
12441 "output": null
12442 },
12443 {
12444 "comment": "V6; V7; A4_2 (ignored)",
12445 "input": "xn--619ep9154c.",
12446 "output": null
12447 },
12448 {
12449 "comment": "V6; V7",
12450 "input": "xn--619ep9154c.xn--psd",
12451 "output": null
12452 },
12453 {
12454 "comment": "V6; V7",
12455 "input": "xn--619ep9154c.xn--cl7c",
12456 "output": null
12457 },
12458 {
12459 "comment": "V7",
12460 "input": "\udb42\udf54.\ud800\udef1\u2082",
12461 "output": null
12462 },
12463 {
12464 "comment": "V7",
12465 "input": "\udb42\udf54.\ud800\udef12",
12466 "output": null
12467 },
12468 {
12469 "comment": "V7",
12470 "input": "xn--vi56e.xn--2-w91i",
12471 "output": null
12472 },
12473 {
12474 "comment": "C2; V7",
12475 "input": "\u2dbf.\u00df\u200d",
12476 "output": null
12477 },
12478 {
12479 "comment": "C2; V7",
12480 "input": "\u2dbf.SS\u200d",
12481 "output": null
12482 },
12483 {
12484 "comment": "C2; V7",
12485 "input": "\u2dbf.ss\u200d",
12486 "output": null
12487 },
12488 {
12489 "comment": "C2; V7",
12490 "input": "\u2dbf.Ss\u200d",
12491 "output": null
12492 },
12493 {
12494 "comment": "V7",
12495 "input": "xn--7pj.ss",
12496 "output": null
12497 },
12498 {
12499 "comment": "C2; V7",
12500 "input": "xn--7pj.xn--ss-n1t",
12501 "output": null
12502 },
12503 {
12504 "comment": "C2; V7",
12505 "input": "xn--7pj.xn--zca870n",
12506 "output": null
12507 },
12508 {
12509 "comment": "C1",
12510 "input": "\u6889\u3002\u200c",
12511 "output": null
12512 },
12513 {
12514 "comment": "A4_2 (ignored)",
12515 "input": "xn--7zv.",
12516 "output": "xn--7zv."
12517 },
12518 {
12519 "comment": "A4_2 (ignored)",
12520 "input": "\u6889.",
12521 "output": "xn--7zv."
12522 },
12523 {
12524 "comment": "C1",
12525 "input": "xn--7zv.xn--0ug",
12526 "output": null
12527 },
12528 {
12529 "input": "xn--iwb.ss",
12530 "output": "xn--iwb.ss"
12531 },
12532 {
12533 "input": "\u0853.ss",
12534 "output": "xn--iwb.ss"
12535 },
12536 {
12537 "input": "\u0853.SS",
12538 "output": "xn--iwb.ss"
12539 },
12540 {
12541 "comment": "V7; V3 (ignored)",
12542 "input": "\u40da\u87e5-\u3002-\ud9b5\udc98\u2488",
12543 "output": null
12544 },
12545 {
12546 "comment": "V7; V3 (ignored); A4_2 (ignored)",
12547 "input": "\u40da\u87e5-\u3002-\ud9b5\udc981.",
12548 "output": null
12549 },
12550 {
12551 "comment": "V7; V3 (ignored); A4_2 (ignored)",
12552 "input": "xn----n50a258u.xn---1-up07j.",
12553 "output": null
12554 },
12555 {
12556 "comment": "V7; V3 (ignored)",
12557 "input": "xn----n50a258u.xn----ecp33805f",
12558 "output": null
12559 },
12560 {
12561 "comment": "C2; V7",
12562 "input": "\u1894\u2260\udbec\ude42.\u200d\ud800\udee2",
12563 "output": null
12564 },
12565 {
12566 "comment": "C2; V7",
12567 "input": "\u1894=\u0338\udbec\ude42.\u200d\ud800\udee2",
12568 "output": null
12569 },
12570 {
12571 "comment": "V7",
12572 "input": "xn--ebf031cf7196a.xn--587c",
12573 "output": null
12574 },
12575 {
12576 "comment": "C2; V7",
12577 "input": "xn--ebf031cf7196a.xn--1ug9540g",
12578 "output": null
12579 },
12580 {
12581 "comment": "V3 (ignored)",
12582 "input": "-\uff61\u2e90",
12583 "output": "-.xn--6vj"
12584 },
12585 {
12586 "comment": "V3 (ignored)",
12587 "input": "-\u3002\u2e90",
12588 "output": "-.xn--6vj"
12589 },
12590 {
12591 "comment": "V3 (ignored)",
12592 "input": "-.xn--6vj",
12593 "output": "-.xn--6vj"
12594 },
12595 {
12596 "comment": "V6; V7",
12597 "input": "\udb43\udc29\ud807\udcac\uff0e\u065c",
12598 "output": null
12599 },
12600 {
12601 "comment": "V6; V7",
12602 "input": "\udb43\udc29\ud807\udcac.\u065c",
12603 "output": null
12604 },
12605 {
12606 "comment": "V6; V7",
12607 "input": "xn--sn3d59267c.xn--4hb",
12608 "output": null
12609 },
12610 {
12611 "comment": "C1; V6; V7",
12612 "input": "\ud800\udf7a.\ud928\uddc3\u200c",
12613 "output": null
12614 },
12615 {
12616 "comment": "V6; V7",
12617 "input": "xn--ie8c.xn--2g51a",
12618 "output": null
12619 },
12620 {
12621 "comment": "C1; V6; V7",
12622 "input": "xn--ie8c.xn--0ug03366c",
12623 "output": null
12624 },
12625 {
12626 "comment": "C2; V7; V3 (ignored)",
12627 "input": "\u200d\u226e\uff0e\udb41\udfea\ud8a6\udecf-",
12628 "output": null
12629 },
12630 {
12631 "comment": "C2; V7; V3 (ignored)",
12632 "input": "\u200d<\u0338\uff0e\udb41\udfea\ud8a6\udecf-",
12633 "output": null
12634 },
12635 {
12636 "comment": "C2; V7; V3 (ignored)",
12637 "input": "\u200d\u226e.\udb41\udfea\ud8a6\udecf-",
12638 "output": null
12639 },
12640 {
12641 "comment": "C2; V7; V3 (ignored)",
12642 "input": "\u200d<\u0338.\udb41\udfea\ud8a6\udecf-",
12643 "output": null
12644 },
12645 {
12646 "comment": "V7; V3 (ignored)",
12647 "input": "xn--gdh.xn----cr99a1w710b",
12648 "output": null
12649 },
12650 {
12651 "comment": "C2; V7; V3 (ignored)",
12652 "input": "xn--1ug95g.xn----cr99a1w710b",
12653 "output": null
12654 },
12655 {
12656 "comment": "C2; V7",
12657 "input": "\u200d\u200d\u8954\u3002\u10bc5\ua86e\ud995\udf4f",
12658 "output": null
12659 },
12660 {
12661 "comment": "C2; V7",
12662 "input": "\u200d\u200d\u8954\u3002\u2d1c5\ua86e\ud995\udf4f",
12663 "output": null
12664 },
12665 {
12666 "comment": "V7",
12667 "input": "xn--2u2a.xn--5-uws5848bpf44e",
12668 "output": null
12669 },
12670 {
12671 "comment": "C2; V7",
12672 "input": "xn--1uga7691f.xn--5-uws5848bpf44e",
12673 "output": null
12674 },
12675 {
12676 "comment": "V7",
12677 "input": "xn--2u2a.xn--5-r1g7167ipfw8d",
12678 "output": null
12679 },
12680 {
12681 "comment": "C2; V7",
12682 "input": "xn--1uga7691f.xn--5-r1g7167ipfw8d",
12683 "output": null
12684 },
12685 {
12686 "input": "xn--ix9c26l.xn--q0s",
12687 "output": "xn--ix9c26l.xn--q0s"
12688 },
12689 {
12690 "input": "\ud802\udedc\ud804\udf3c.\u5a40",
12691 "output": "xn--ix9c26l.xn--q0s"
12692 },
12693 {
12694 "comment": "C2; V6; V7",
12695 "input": "\ua9b9\u200d\ud077\ud8af\udda1\uff61\u2082",
12696 "output": null
12697 },
12698 {
12699 "comment": "C2; V6; V7",
12700 "input": "\ua9b9\u200d\u110f\u1173\u11b2\ud8af\udda1\uff61\u2082",
12701 "output": null
12702 },
12703 {
12704 "comment": "V6; V7",
12705 "input": "xn--0m9as84e2e21c.c",
12706 "output": null
12707 },
12708 {
12709 "comment": "C2; V6; V7",
12710 "input": "xn--1ug1435cfkyaoi04d.c",
12711 "output": null
12712 },
12713 {
12714 "input": "\ud802\udec0\uff0e\u0689\ud804\udf00",
12715 "output": "xn--pw9c.xn--fjb8658k"
12716 },
12717 {
12718 "input": "\ud802\udec0.\u0689\ud804\udf00",
12719 "output": "xn--pw9c.xn--fjb8658k"
12720 },
12721 {
12722 "input": "xn--pw9c.xn--fjb8658k",
12723 "output": "xn--pw9c.xn--fjb8658k"
12724 },
12725 {
12726 "comment": "V6",
12727 "input": "\u2260\u81a3\u3002\u0f83",
12728 "output": null
12729 },
12730 {
12731 "comment": "V6",
12732 "input": "=\u0338\u81a3\u3002\u0f83",
12733 "output": null
12734 },
12735 {
12736 "comment": "V6",
12737 "input": "xn--1chy468a.xn--2ed",
12738 "output": null
12739 },
12740 {
12741 "comment": "C2",
12742 "input": "\ud800\udef7\u3002\u200d",
12743 "output": null
12744 },
12745 {
12746 "comment": "A4_2 (ignored)",
12747 "input": "xn--r97c.",
12748 "output": "xn--r97c."
12749 },
12750 {
12751 "comment": "A4_2 (ignored)",
12752 "input": "\ud800\udef7.",
12753 "output": "xn--r97c."
12754 },
12755 {
12756 "comment": "C2",
12757 "input": "xn--r97c.xn--1ug",
12758 "output": null
12759 },
12760 {
12761 "comment": "V6",
12762 "input": "\ud807\udc33\ud804\ude2f\u3002\u296a",
12763 "output": null
12764 },
12765 {
12766 "comment": "V6",
12767 "input": "xn--2g1d14o.xn--jti",
12768 "output": null
12769 },
12770 {
12771 "comment": "C1; V6; V7",
12772 "input": "\ud804\udd80\u4074\ud952\udde3\uff0e\u10b5\ud835\udfdc\u200c\u0348",
12773 "output": null
12774 },
12775 {
12776 "comment": "C1; V6; V7",
12777 "input": "\ud804\udd80\u4074\ud952\udde3.\u10b54\u200c\u0348",
12778 "output": null
12779 },
12780 {
12781 "comment": "C1; V6; V7",
12782 "input": "\ud804\udd80\u4074\ud952\udde3.\u2d154\u200c\u0348",
12783 "output": null
12784 },
12785 {
12786 "comment": "V6; V7",
12787 "input": "xn--1mnx647cg3x1b.xn--4-zfb5123a",
12788 "output": null
12789 },
12790 {
12791 "comment": "C1; V6; V7",
12792 "input": "xn--1mnx647cg3x1b.xn--4-zfb502tlsl",
12793 "output": null
12794 },
12795 {
12796 "comment": "C1; V6; V7",
12797 "input": "\ud804\udd80\u4074\ud952\udde3\uff0e\u2d15\ud835\udfdc\u200c\u0348",
12798 "output": null
12799 },
12800 {
12801 "comment": "V6; V7",
12802 "input": "xn--1mnx647cg3x1b.xn--4-zfb324h",
12803 "output": null
12804 },
12805 {
12806 "comment": "C1; V6; V7",
12807 "input": "xn--1mnx647cg3x1b.xn--4-zfb324h32o",
12808 "output": null
12809 }
12810]
urltestdata.json deleted-10242
...@@ -1,10242 +0,0 @@
1[
2 "See ../README.md for a description of the format.",
3 {
4 "input": "http://example\t.\norg",
5 "base": "http://example.org/foo/bar",
6 "href": "http://example.org/",
7 "origin": "http://example.org",
8 "protocol": "http:",
9 "username": "",
10 "password": "",
11 "host": "example.org",
12 "hostname": "example.org",
13 "port": "",
14 "pathname": "/",
15 "search": "",
16 "hash": ""
17 },
18 {
19 "input": "http://user:pass@foo:21/bar;par?b#c",
20 "base": "http://example.org/foo/bar",
21 "href": "http://user:pass@foo:21/bar;par?b#c",
22 "origin": "http://foo:21",
23 "protocol": "http:",
24 "username": "user",
25 "password": "pass",
26 "host": "foo:21",
27 "hostname": "foo",
28 "port": "21",
29 "pathname": "/bar;par",
30 "search": "?b",
31 "hash": "#c"
32 },
33 {
34 "input": "https://test:@test",
35 "base": null,
36 "href": "https://test@test/",
37 "origin": "https://test",
38 "protocol": "https:",
39 "username": "test",
40 "password": "",
41 "host": "test",
42 "hostname": "test",
43 "port": "",
44 "pathname": "/",
45 "search": "",
46 "hash": ""
47 },
48 {
49 "input": "https://:@test",
50 "base": null,
51 "href": "https://test/",
52 "origin": "https://test",
53 "protocol": "https:",
54 "username": "",
55 "password": "",
56 "host": "test",
57 "hostname": "test",
58 "port": "",
59 "pathname": "/",
60 "search": "",
61 "hash": ""
62 },
63 {
64 "input": "non-special://test:@test/x",
65 "base": null,
66 "href": "non-special://test@test/x",
67 "origin": "null",
68 "protocol": "non-special:",
69 "username": "test",
70 "password": "",
71 "host": "test",
72 "hostname": "test",
73 "port": "",
74 "pathname": "/x",
75 "search": "",
76 "hash": ""
77 },
78 {
79 "input": "non-special://:@test/x",
80 "base": null,
81 "href": "non-special://test/x",
82 "origin": "null",
83 "protocol": "non-special:",
84 "username": "",
85 "password": "",
86 "host": "test",
87 "hostname": "test",
88 "port": "",
89 "pathname": "/x",
90 "search": "",
91 "hash": ""
92 },
93 {
94 "input": "http:foo.com",
95 "base": "http://example.org/foo/bar",
96 "href": "http://example.org/foo/foo.com",
97 "origin": "http://example.org",
98 "protocol": "http:",
99 "username": "",
100 "password": "",
101 "host": "example.org",
102 "hostname": "example.org",
103 "port": "",
104 "pathname": "/foo/foo.com",
105 "search": "",
106 "hash": ""
107 },
108 {
109 "input": "\t :foo.com \n",
110 "base": "http://example.org/foo/bar",
111 "href": "http://example.org/foo/:foo.com",
112 "origin": "http://example.org",
113 "protocol": "http:",
114 "username": "",
115 "password": "",
116 "host": "example.org",
117 "hostname": "example.org",
118 "port": "",
119 "pathname": "/foo/:foo.com",
120 "search": "",
121 "hash": ""
122 },
123 {
124 "input": " foo.com ",
125 "base": "http://example.org/foo/bar",
126 "href": "http://example.org/foo/foo.com",
127 "origin": "http://example.org",
128 "protocol": "http:",
129 "username": "",
130 "password": "",
131 "host": "example.org",
132 "hostname": "example.org",
133 "port": "",
134 "pathname": "/foo/foo.com",
135 "search": "",
136 "hash": ""
137 },
138 {
139 "input": "a:\t foo.com",
140 "base": "http://example.org/foo/bar",
141 "href": "a: foo.com",
142 "origin": "null",
143 "protocol": "a:",
144 "username": "",
145 "password": "",
146 "host": "",
147 "hostname": "",
148 "port": "",
149 "pathname": " foo.com",
150 "search": "",
151 "hash": ""
152 },
153 {
154 "input": "http://f:21/ b ? d # e ",
155 "base": "http://example.org/foo/bar",
156 "href": "http://f:21/%20b%20?%20d%20#%20e",
157 "origin": "http://f:21",
158 "protocol": "http:",
159 "username": "",
160 "password": "",
161 "host": "f:21",
162 "hostname": "f",
163 "port": "21",
164 "pathname": "/%20b%20",
165 "search": "?%20d%20",
166 "hash": "#%20e"
167 },
168 {
169 "input": "lolscheme:x x#x x",
170 "base": null,
171 "href": "lolscheme:x x#x%20x",
172 "protocol": "lolscheme:",
173 "username": "",
174 "password": "",
175 "host": "",
176 "hostname": "",
177 "port": "",
178 "pathname": "x x",
179 "search": "",
180 "hash": "#x%20x"
181 },
182 {
183 "input": "http://f:/c",
184 "base": "http://example.org/foo/bar",
185 "href": "http://f/c",
186 "origin": "http://f",
187 "protocol": "http:",
188 "username": "",
189 "password": "",
190 "host": "f",
191 "hostname": "f",
192 "port": "",
193 "pathname": "/c",
194 "search": "",
195 "hash": ""
196 },
197 {
198 "input": "http://f:0/c",
199 "base": "http://example.org/foo/bar",
200 "href": "http://f:0/c",
201 "origin": "http://f:0",
202 "protocol": "http:",
203 "username": "",
204 "password": "",
205 "host": "f:0",
206 "hostname": "f",
207 "port": "0",
208 "pathname": "/c",
209 "search": "",
210 "hash": ""
211 },
212 {
213 "input": "http://f:00000000000000/c",
214 "base": "http://example.org/foo/bar",
215 "href": "http://f:0/c",
216 "origin": "http://f:0",
217 "protocol": "http:",
218 "username": "",
219 "password": "",
220 "host": "f:0",
221 "hostname": "f",
222 "port": "0",
223 "pathname": "/c",
224 "search": "",
225 "hash": ""
226 },
227 {
228 "input": "http://f:00000000000000000000080/c",
229 "base": "http://example.org/foo/bar",
230 "href": "http://f/c",
231 "origin": "http://f",
232 "protocol": "http:",
233 "username": "",
234 "password": "",
235 "host": "f",
236 "hostname": "f",
237 "port": "",
238 "pathname": "/c",
239 "search": "",
240 "hash": ""
241 },
242 {
243 "input": "http://f:b/c",
244 "base": "http://example.org/foo/bar",
245 "failure": true
246 },
247 {
248 "input": "http://f: /c",
249 "base": "http://example.org/foo/bar",
250 "failure": true
251 },
252 {
253 "input": "http://f:\n/c",
254 "base": "http://example.org/foo/bar",
255 "href": "http://f/c",
256 "origin": "http://f",
257 "protocol": "http:",
258 "username": "",
259 "password": "",
260 "host": "f",
261 "hostname": "f",
262 "port": "",
263 "pathname": "/c",
264 "search": "",
265 "hash": ""
266 },
267 {
268 "input": "http://f:fifty-two/c",
269 "base": "http://example.org/foo/bar",
270 "failure": true
271 },
272 {
273 "input": "http://f:999999/c",
274 "base": "http://example.org/foo/bar",
275 "failure": true
276 },
277 {
278 "input": "non-special://f:999999/c",
279 "base": "http://example.org/foo/bar",
280 "failure": true
281 },
282 {
283 "input": "http://f: 21 / b ? d # e ",
284 "base": "http://example.org/foo/bar",
285 "failure": true
286 },
287 {
288 "input": "",
289 "base": "http://example.org/foo/bar",
290 "href": "http://example.org/foo/bar",
291 "origin": "http://example.org",
292 "protocol": "http:",
293 "username": "",
294 "password": "",
295 "host": "example.org",
296 "hostname": "example.org",
297 "port": "",
298 "pathname": "/foo/bar",
299 "search": "",
300 "hash": ""
301 },
302 {
303 "input": " \t",
304 "base": "http://example.org/foo/bar",
305 "href": "http://example.org/foo/bar",
306 "origin": "http://example.org",
307 "protocol": "http:",
308 "username": "",
309 "password": "",
310 "host": "example.org",
311 "hostname": "example.org",
312 "port": "",
313 "pathname": "/foo/bar",
314 "search": "",
315 "hash": ""
316 },
317 {
318 "input": ":foo.com/",
319 "base": "http://example.org/foo/bar",
320 "href": "http://example.org/foo/:foo.com/",
321 "origin": "http://example.org",
322 "protocol": "http:",
323 "username": "",
324 "password": "",
325 "host": "example.org",
326 "hostname": "example.org",
327 "port": "",
328 "pathname": "/foo/:foo.com/",
329 "search": "",
330 "hash": ""
331 },
332 {
333 "input": ":foo.com\\",
334 "base": "http://example.org/foo/bar",
335 "href": "http://example.org/foo/:foo.com/",
336 "origin": "http://example.org",
337 "protocol": "http:",
338 "username": "",
339 "password": "",
340 "host": "example.org",
341 "hostname": "example.org",
342 "port": "",
343 "pathname": "/foo/:foo.com/",
344 "search": "",
345 "hash": ""
346 },
347 {
348 "input": ":",
349 "base": "http://example.org/foo/bar",
350 "href": "http://example.org/foo/:",
351 "origin": "http://example.org",
352 "protocol": "http:",
353 "username": "",
354 "password": "",
355 "host": "example.org",
356 "hostname": "example.org",
357 "port": "",
358 "pathname": "/foo/:",
359 "search": "",
360 "hash": ""
361 },
362 {
363 "input": ":a",
364 "base": "http://example.org/foo/bar",
365 "href": "http://example.org/foo/:a",
366 "origin": "http://example.org",
367 "protocol": "http:",
368 "username": "",
369 "password": "",
370 "host": "example.org",
371 "hostname": "example.org",
372 "port": "",
373 "pathname": "/foo/:a",
374 "search": "",
375 "hash": ""
376 },
377 {
378 "input": ":/",
379 "base": "http://example.org/foo/bar",
380 "href": "http://example.org/foo/:/",
381 "origin": "http://example.org",
382 "protocol": "http:",
383 "username": "",
384 "password": "",
385 "host": "example.org",
386 "hostname": "example.org",
387 "port": "",
388 "pathname": "/foo/:/",
389 "search": "",
390 "hash": ""
391 },
392 {
393 "input": ":\\",
394 "base": "http://example.org/foo/bar",
395 "href": "http://example.org/foo/:/",
396 "origin": "http://example.org",
397 "protocol": "http:",
398 "username": "",
399 "password": "",
400 "host": "example.org",
401 "hostname": "example.org",
402 "port": "",
403 "pathname": "/foo/:/",
404 "search": "",
405 "hash": ""
406 },
407 {
408 "input": ":#",
409 "base": "http://example.org/foo/bar",
410 "href": "http://example.org/foo/:#",
411 "origin": "http://example.org",
412 "protocol": "http:",
413 "username": "",
414 "password": "",
415 "host": "example.org",
416 "hostname": "example.org",
417 "port": "",
418 "pathname": "/foo/:",
419 "search": "",
420 "hash": ""
421 },
422 {
423 "input": "#",
424 "base": "http://example.org/foo/bar",
425 "href": "http://example.org/foo/bar#",
426 "origin": "http://example.org",
427 "protocol": "http:",
428 "username": "",
429 "password": "",
430 "host": "example.org",
431 "hostname": "example.org",
432 "port": "",
433 "pathname": "/foo/bar",
434 "search": "",
435 "hash": ""
436 },
437 {
438 "input": "#/",
439 "base": "http://example.org/foo/bar",
440 "href": "http://example.org/foo/bar#/",
441 "origin": "http://example.org",
442 "protocol": "http:",
443 "username": "",
444 "password": "",
445 "host": "example.org",
446 "hostname": "example.org",
447 "port": "",
448 "pathname": "/foo/bar",
449 "search": "",
450 "hash": "#/"
451 },
452 {
453 "input": "#\\",
454 "base": "http://example.org/foo/bar",
455 "href": "http://example.org/foo/bar#\\",
456 "origin": "http://example.org",
457 "protocol": "http:",
458 "username": "",
459 "password": "",
460 "host": "example.org",
461 "hostname": "example.org",
462 "port": "",
463 "pathname": "/foo/bar",
464 "search": "",
465 "hash": "#\\"
466 },
467 {
468 "input": "#;?",
469 "base": "http://example.org/foo/bar",
470 "href": "http://example.org/foo/bar#;?",
471 "origin": "http://example.org",
472 "protocol": "http:",
473 "username": "",
474 "password": "",
475 "host": "example.org",
476 "hostname": "example.org",
477 "port": "",
478 "pathname": "/foo/bar",
479 "search": "",
480 "hash": "#;?"
481 },
482 {
483 "input": "?",
484 "base": "http://example.org/foo/bar",
485 "href": "http://example.org/foo/bar?",
486 "origin": "http://example.org",
487 "protocol": "http:",
488 "username": "",
489 "password": "",
490 "host": "example.org",
491 "hostname": "example.org",
492 "port": "",
493 "pathname": "/foo/bar",
494 "search": "",
495 "hash": ""
496 },
497 {
498 "input": "/",
499 "base": "http://example.org/foo/bar",
500 "href": "http://example.org/",
501 "origin": "http://example.org",
502 "protocol": "http:",
503 "username": "",
504 "password": "",
505 "host": "example.org",
506 "hostname": "example.org",
507 "port": "",
508 "pathname": "/",
509 "search": "",
510 "hash": ""
511 },
512 {
513 "input": ":23",
514 "base": "http://example.org/foo/bar",
515 "href": "http://example.org/foo/:23",
516 "origin": "http://example.org",
517 "protocol": "http:",
518 "username": "",
519 "password": "",
520 "host": "example.org",
521 "hostname": "example.org",
522 "port": "",
523 "pathname": "/foo/:23",
524 "search": "",
525 "hash": ""
526 },
527 {
528 "input": "/:23",
529 "base": "http://example.org/foo/bar",
530 "href": "http://example.org/:23",
531 "origin": "http://example.org",
532 "protocol": "http:",
533 "username": "",
534 "password": "",
535 "host": "example.org",
536 "hostname": "example.org",
537 "port": "",
538 "pathname": "/:23",
539 "search": "",
540 "hash": ""
541 },
542 {
543 "input": "\\x",
544 "base": "http://example.org/foo/bar",
545 "href": "http://example.org/x",
546 "origin": "http://example.org",
547 "protocol": "http:",
548 "username": "",
549 "password": "",
550 "host": "example.org",
551 "hostname": "example.org",
552 "port": "",
553 "pathname": "/x",
554 "search": "",
555 "hash": ""
556 },
557 {
558 "input": "\\\\x\\hello",
559 "base": "http://example.org/foo/bar",
560 "href": "http://x/hello",
561 "origin": "http://x",
562 "protocol": "http:",
563 "username": "",
564 "password": "",
565 "host": "x",
566 "hostname": "x",
567 "port": "",
568 "pathname": "/hello",
569 "search": "",
570 "hash": ""
571 },
572 {
573 "input": "::",
574 "base": "http://example.org/foo/bar",
575 "href": "http://example.org/foo/::",
576 "origin": "http://example.org",
577 "protocol": "http:",
578 "username": "",
579 "password": "",
580 "host": "example.org",
581 "hostname": "example.org",
582 "port": "",
583 "pathname": "/foo/::",
584 "search": "",
585 "hash": ""
586 },
587 {
588 "input": "::23",
589 "base": "http://example.org/foo/bar",
590 "href": "http://example.org/foo/::23",
591 "origin": "http://example.org",
592 "protocol": "http:",
593 "username": "",
594 "password": "",
595 "host": "example.org",
596 "hostname": "example.org",
597 "port": "",
598 "pathname": "/foo/::23",
599 "search": "",
600 "hash": ""
601 },
602 {
603 "input": "foo://",
604 "base": "http://example.org/foo/bar",
605 "href": "foo://",
606 "origin": "null",
607 "protocol": "foo:",
608 "username": "",
609 "password": "",
610 "host": "",
611 "hostname": "",
612 "port": "",
613 "pathname": "",
614 "search": "",
615 "hash": ""
616 },
617 {
618 "input": "http://a:b@c:29/d",
619 "base": "http://example.org/foo/bar",
620 "href": "http://a:b@c:29/d",
621 "origin": "http://c:29",
622 "protocol": "http:",
623 "username": "a",
624 "password": "b",
625 "host": "c:29",
626 "hostname": "c",
627 "port": "29",
628 "pathname": "/d",
629 "search": "",
630 "hash": ""
631 },
632 {
633 "input": "http::@c:29",
634 "base": "http://example.org/foo/bar",
635 "href": "http://example.org/foo/:@c:29",
636 "origin": "http://example.org",
637 "protocol": "http:",
638 "username": "",
639 "password": "",
640 "host": "example.org",
641 "hostname": "example.org",
642 "port": "",
643 "pathname": "/foo/:@c:29",
644 "search": "",
645 "hash": ""
646 },
647 {
648 "input": "http://&a:foo(b]c@d:2/",
649 "base": "http://example.org/foo/bar",
650 "href": "http://&a:foo(b%5Dc@d:2/",
651 "origin": "http://d:2",
652 "protocol": "http:",
653 "username": "&a",
654 "password": "foo(b%5Dc",
655 "host": "d:2",
656 "hostname": "d",
657 "port": "2",
658 "pathname": "/",
659 "search": "",
660 "hash": ""
661 },
662 {
663 "input": "http://::@c@d:2",
664 "base": "http://example.org/foo/bar",
665 "href": "http://:%3A%40c@d:2/",
666 "origin": "http://d:2",
667 "protocol": "http:",
668 "username": "",
669 "password": "%3A%40c",
670 "host": "d:2",
671 "hostname": "d",
672 "port": "2",
673 "pathname": "/",
674 "search": "",
675 "hash": ""
676 },
677 {
678 "input": "http://foo.com:b@d/",
679 "base": "http://example.org/foo/bar",
680 "href": "http://foo.com:b@d/",
681 "origin": "http://d",
682 "protocol": "http:",
683 "username": "foo.com",
684 "password": "b",
685 "host": "d",
686 "hostname": "d",
687 "port": "",
688 "pathname": "/",
689 "search": "",
690 "hash": ""
691 },
692 {
693 "input": "http://foo.com/\\@",
694 "base": "http://example.org/foo/bar",
695 "href": "http://foo.com//@",
696 "origin": "http://foo.com",
697 "protocol": "http:",
698 "username": "",
699 "password": "",
700 "host": "foo.com",
701 "hostname": "foo.com",
702 "port": "",
703 "pathname": "//@",
704 "search": "",
705 "hash": ""
706 },
707 {
708 "input": "http:\\\\foo.com\\",
709 "base": "http://example.org/foo/bar",
710 "href": "http://foo.com/",
711 "origin": "http://foo.com",
712 "protocol": "http:",
713 "username": "",
714 "password": "",
715 "host": "foo.com",
716 "hostname": "foo.com",
717 "port": "",
718 "pathname": "/",
719 "search": "",
720 "hash": ""
721 },
722 {
723 "input": "http:\\\\a\\b:c\\d@foo.com\\",
724 "base": "http://example.org/foo/bar",
725 "href": "http://a/b:c/d@foo.com/",
726 "origin": "http://a",
727 "protocol": "http:",
728 "username": "",
729 "password": "",
730 "host": "a",
731 "hostname": "a",
732 "port": "",
733 "pathname": "/b:c/d@foo.com/",
734 "search": "",
735 "hash": ""
736 },
737 {
738 "input": "http://a:b@c\\",
739 "base": null,
740 "href": "http://a:b@c/",
741 "origin": "http://c",
742 "protocol": "http:",
743 "username": "a",
744 "password": "b",
745 "host": "c",
746 "hostname": "c",
747 "port": "",
748 "pathname": "/",
749 "search": "",
750 "hash": ""
751 },
752 {
753 "input": "ws://a@b\\c",
754 "base": null,
755 "href": "ws://a@b/c",
756 "origin": "ws://b",
757 "protocol": "ws:",
758 "username": "a",
759 "password": "",
760 "host": "b",
761 "hostname": "b",
762 "port": "",
763 "pathname": "/c",
764 "search": "",
765 "hash": ""
766 },
767 {
768 "input": "foo:/",
769 "base": "http://example.org/foo/bar",
770 "href": "foo:/",
771 "origin": "null",
772 "protocol": "foo:",
773 "username": "",
774 "password": "",
775 "host": "",
776 "hostname": "",
777 "port": "",
778 "pathname": "/",
779 "search": "",
780 "hash": ""
781 },
782 {
783 "input": "foo:/bar.com/",
784 "base": "http://example.org/foo/bar",
785 "href": "foo:/bar.com/",
786 "origin": "null",
787 "protocol": "foo:",
788 "username": "",
789 "password": "",
790 "host": "",
791 "hostname": "",
792 "port": "",
793 "pathname": "/bar.com/",
794 "search": "",
795 "hash": ""
796 },
797 {
798 "input": "foo://///////",
799 "base": "http://example.org/foo/bar",
800 "href": "foo://///////",
801 "origin": "null",
802 "protocol": "foo:",
803 "username": "",
804 "password": "",
805 "host": "",
806 "hostname": "",
807 "port": "",
808 "pathname": "///////",
809 "search": "",
810 "hash": ""
811 },
812 {
813 "input": "foo://///////bar.com/",
814 "base": "http://example.org/foo/bar",
815 "href": "foo://///////bar.com/",
816 "origin": "null",
817 "protocol": "foo:",
818 "username": "",
819 "password": "",
820 "host": "",
821 "hostname": "",
822 "port": "",
823 "pathname": "///////bar.com/",
824 "search": "",
825 "hash": ""
826 },
827 {
828 "input": "foo:////://///",
829 "base": "http://example.org/foo/bar",
830 "href": "foo:////://///",
831 "origin": "null",
832 "protocol": "foo:",
833 "username": "",
834 "password": "",
835 "host": "",
836 "hostname": "",
837 "port": "",
838 "pathname": "//://///",
839 "search": "",
840 "hash": ""
841 },
842 {
843 "input": "c:/foo",
844 "base": "http://example.org/foo/bar",
845 "href": "c:/foo",
846 "origin": "null",
847 "protocol": "c:",
848 "username": "",
849 "password": "",
850 "host": "",
851 "hostname": "",
852 "port": "",
853 "pathname": "/foo",
854 "search": "",
855 "hash": ""
856 },
857 {
858 "input": "//foo/bar",
859 "base": "http://example.org/foo/bar",
860 "href": "http://foo/bar",
861 "origin": "http://foo",
862 "protocol": "http:",
863 "username": "",
864 "password": "",
865 "host": "foo",
866 "hostname": "foo",
867 "port": "",
868 "pathname": "/bar",
869 "search": "",
870 "hash": ""
871 },
872 {
873 "input": "http://foo/path;a??e#f#g",
874 "base": "http://example.org/foo/bar",
875 "href": "http://foo/path;a??e#f#g",
876 "origin": "http://foo",
877 "protocol": "http:",
878 "username": "",
879 "password": "",
880 "host": "foo",
881 "hostname": "foo",
882 "port": "",
883 "pathname": "/path;a",
884 "search": "??e",
885 "hash": "#f#g"
886 },
887 {
888 "input": "http://foo/abcd?efgh?ijkl",
889 "base": "http://example.org/foo/bar",
890 "href": "http://foo/abcd?efgh?ijkl",
891 "origin": "http://foo",
892 "protocol": "http:",
893 "username": "",
894 "password": "",
895 "host": "foo",
896 "hostname": "foo",
897 "port": "",
898 "pathname": "/abcd",
899 "search": "?efgh?ijkl",
900 "hash": ""
901 },
902 {
903 "input": "http://foo/abcd#foo?bar",
904 "base": "http://example.org/foo/bar",
905 "href": "http://foo/abcd#foo?bar",
906 "origin": "http://foo",
907 "protocol": "http:",
908 "username": "",
909 "password": "",
910 "host": "foo",
911 "hostname": "foo",
912 "port": "",
913 "pathname": "/abcd",
914 "search": "",
915 "hash": "#foo?bar"
916 },
917 {
918 "input": "[61:24:74]:98",
919 "base": "http://example.org/foo/bar",
920 "href": "http://example.org/foo/[61:24:74]:98",
921 "origin": "http://example.org",
922 "protocol": "http:",
923 "username": "",
924 "password": "",
925 "host": "example.org",
926 "hostname": "example.org",
927 "port": "",
928 "pathname": "/foo/[61:24:74]:98",
929 "search": "",
930 "hash": ""
931 },
932 {
933 "input": "http:[61:27]/:foo",
934 "base": "http://example.org/foo/bar",
935 "href": "http://example.org/foo/[61:27]/:foo",
936 "origin": "http://example.org",
937 "protocol": "http:",
938 "username": "",
939 "password": "",
940 "host": "example.org",
941 "hostname": "example.org",
942 "port": "",
943 "pathname": "/foo/[61:27]/:foo",
944 "search": "",
945 "hash": ""
946 },
947 {
948 "input": "http://[1::2]:3:4",
949 "base": "http://example.org/foo/bar",
950 "failure": true
951 },
952 {
953 "input": "http://2001::1",
954 "base": "http://example.org/foo/bar",
955 "failure": true
956 },
957 {
958 "input": "http://2001::1]",
959 "base": "http://example.org/foo/bar",
960 "failure": true
961 },
962 {
963 "input": "http://2001::1]:80",
964 "base": "http://example.org/foo/bar",
965 "failure": true
966 },
967 {
968 "input": "http://[2001::1]",
969 "base": "http://example.org/foo/bar",
970 "href": "http://[2001::1]/",
971 "origin": "http://[2001::1]",
972 "protocol": "http:",
973 "username": "",
974 "password": "",
975 "host": "[2001::1]",
976 "hostname": "[2001::1]",
977 "port": "",
978 "pathname": "/",
979 "search": "",
980 "hash": ""
981 },
982 {
983 "input": "http://[::127.0.0.1]",
984 "base": "http://example.org/foo/bar",
985 "href": "http://[::7f00:1]/",
986 "origin": "http://[::7f00:1]",
987 "protocol": "http:",
988 "username": "",
989 "password": "",
990 "host": "[::7f00:1]",
991 "hostname": "[::7f00:1]",
992 "port": "",
993 "pathname": "/",
994 "search": "",
995 "hash": ""
996 },
997 {
998 "input": "http://[::127.0.0.1.]",
999 "base": "http://example.org/foo/bar",
1000 "failure": true
1001 },
1002 {
1003 "input": "http://[0:0:0:0:0:0:13.1.68.3]",
1004 "base": "http://example.org/foo/bar",
1005 "href": "http://[::d01:4403]/",
1006 "origin": "http://[::d01:4403]",
1007 "protocol": "http:",
1008 "username": "",
1009 "password": "",
1010 "host": "[::d01:4403]",
1011 "hostname": "[::d01:4403]",
1012 "port": "",
1013 "pathname": "/",
1014 "search": "",
1015 "hash": ""
1016 },
1017 {
1018 "input": "http://[2001::1]:80",
1019 "base": "http://example.org/foo/bar",
1020 "href": "http://[2001::1]/",
1021 "origin": "http://[2001::1]",
1022 "protocol": "http:",
1023 "username": "",
1024 "password": "",
1025 "host": "[2001::1]",
1026 "hostname": "[2001::1]",
1027 "port": "",
1028 "pathname": "/",
1029 "search": "",
1030 "hash": ""
1031 },
1032 {
1033 "input": "http:/example.com/",
1034 "base": "http://example.org/foo/bar",
1035 "href": "http://example.org/example.com/",
1036 "origin": "http://example.org",
1037 "protocol": "http:",
1038 "username": "",
1039 "password": "",
1040 "host": "example.org",
1041 "hostname": "example.org",
1042 "port": "",
1043 "pathname": "/example.com/",
1044 "search": "",
1045 "hash": ""
1046 },
1047 {
1048 "input": "ftp:/example.com/",
1049 "base": "http://example.org/foo/bar",
1050 "href": "ftp://example.com/",
1051 "origin": "ftp://example.com",
1052 "protocol": "ftp:",
1053 "username": "",
1054 "password": "",
1055 "host": "example.com",
1056 "hostname": "example.com",
1057 "port": "",
1058 "pathname": "/",
1059 "search": "",
1060 "hash": ""
1061 },
1062 {
1063 "input": "https:/example.com/",
1064 "base": "http://example.org/foo/bar",
1065 "href": "https://example.com/",
1066 "origin": "https://example.com",
1067 "protocol": "https:",
1068 "username": "",
1069 "password": "",
1070 "host": "example.com",
1071 "hostname": "example.com",
1072 "port": "",
1073 "pathname": "/",
1074 "search": "",
1075 "hash": ""
1076 },
1077 {
1078 "input": "madeupscheme:/example.com/",
1079 "base": "http://example.org/foo/bar",
1080 "href": "madeupscheme:/example.com/",
1081 "origin": "null",
1082 "protocol": "madeupscheme:",
1083 "username": "",
1084 "password": "",
1085 "host": "",
1086 "hostname": "",
1087 "port": "",
1088 "pathname": "/example.com/",
1089 "search": "",
1090 "hash": ""
1091 },
1092 {
1093 "input": "file:/example.com/",
1094 "base": "http://example.org/foo/bar",
1095 "href": "file:///example.com/",
1096 "protocol": "file:",
1097 "username": "",
1098 "password": "",
1099 "host": "",
1100 "hostname": "",
1101 "port": "",
1102 "pathname": "/example.com/",
1103 "search": "",
1104 "hash": ""
1105 },
1106 {
1107 "input": "file://example:1/",
1108 "base": null,
1109 "failure": true
1110 },
1111 {
1112 "input": "file://example:test/",
1113 "base": null,
1114 "failure": true
1115 },
1116 {
1117 "input": "file://example%/",
1118 "base": null,
1119 "failure": true
1120 },
1121 {
1122 "input": "file://[example]/",
1123 "base": null,
1124 "failure": true
1125 },
1126 {
1127 "input": "ftps:/example.com/",
1128 "base": "http://example.org/foo/bar",
1129 "href": "ftps:/example.com/",
1130 "origin": "null",
1131 "protocol": "ftps:",
1132 "username": "",
1133 "password": "",
1134 "host": "",
1135 "hostname": "",
1136 "port": "",
1137 "pathname": "/example.com/",
1138 "search": "",
1139 "hash": ""
1140 },
1141 {
1142 "input": "gopher:/example.com/",
1143 "base": "http://example.org/foo/bar",
1144 "href": "gopher:/example.com/",
1145 "origin": "null",
1146 "protocol": "gopher:",
1147 "username": "",
1148 "password": "",
1149 "host": "",
1150 "hostname": "",
1151 "port": "",
1152 "pathname": "/example.com/",
1153 "search": "",
1154 "hash": ""
1155 },
1156 {
1157 "input": "ws:/example.com/",
1158 "base": "http://example.org/foo/bar",
1159 "href": "ws://example.com/",
1160 "origin": "ws://example.com",
1161 "protocol": "ws:",
1162 "username": "",
1163 "password": "",
1164 "host": "example.com",
1165 "hostname": "example.com",
1166 "port": "",
1167 "pathname": "/",
1168 "search": "",
1169 "hash": ""
1170 },
1171 {
1172 "input": "wss:/example.com/",
1173 "base": "http://example.org/foo/bar",
1174 "href": "wss://example.com/",
1175 "origin": "wss://example.com",
1176 "protocol": "wss:",
1177 "username": "",
1178 "password": "",
1179 "host": "example.com",
1180 "hostname": "example.com",
1181 "port": "",
1182 "pathname": "/",
1183 "search": "",
1184 "hash": ""
1185 },
1186 {
1187 "input": "data:/example.com/",
1188 "base": "http://example.org/foo/bar",
1189 "href": "data:/example.com/",
1190 "origin": "null",
1191 "protocol": "data:",
1192 "username": "",
1193 "password": "",
1194 "host": "",
1195 "hostname": "",
1196 "port": "",
1197 "pathname": "/example.com/",
1198 "search": "",
1199 "hash": ""
1200 },
1201 {
1202 "input": "javascript:/example.com/",
1203 "base": "http://example.org/foo/bar",
1204 "href": "javascript:/example.com/",
1205 "origin": "null",
1206 "protocol": "javascript:",
1207 "username": "",
1208 "password": "",
1209 "host": "",
1210 "hostname": "",
1211 "port": "",
1212 "pathname": "/example.com/",
1213 "search": "",
1214 "hash": ""
1215 },
1216 {
1217 "input": "mailto:/example.com/",
1218 "base": "http://example.org/foo/bar",
1219 "href": "mailto:/example.com/",
1220 "origin": "null",
1221 "protocol": "mailto:",
1222 "username": "",
1223 "password": "",
1224 "host": "",
1225 "hostname": "",
1226 "port": "",
1227 "pathname": "/example.com/",
1228 "search": "",
1229 "hash": ""
1230 },
1231 {
1232 "input": "http:example.com/",
1233 "base": "http://example.org/foo/bar",
1234 "href": "http://example.org/foo/example.com/",
1235 "origin": "http://example.org",
1236 "protocol": "http:",
1237 "username": "",
1238 "password": "",
1239 "host": "example.org",
1240 "hostname": "example.org",
1241 "port": "",
1242 "pathname": "/foo/example.com/",
1243 "search": "",
1244 "hash": ""
1245 },
1246 {
1247 "input": "ftp:example.com/",
1248 "base": "http://example.org/foo/bar",
1249 "href": "ftp://example.com/",
1250 "origin": "ftp://example.com",
1251 "protocol": "ftp:",
1252 "username": "",
1253 "password": "",
1254 "host": "example.com",
1255 "hostname": "example.com",
1256 "port": "",
1257 "pathname": "/",
1258 "search": "",
1259 "hash": ""
1260 },
1261 {
1262 "input": "https:example.com/",
1263 "base": "http://example.org/foo/bar",
1264 "href": "https://example.com/",
1265 "origin": "https://example.com",
1266 "protocol": "https:",
1267 "username": "",
1268 "password": "",
1269 "host": "example.com",
1270 "hostname": "example.com",
1271 "port": "",
1272 "pathname": "/",
1273 "search": "",
1274 "hash": ""
1275 },
1276 {
1277 "input": "madeupscheme:example.com/",
1278 "base": "http://example.org/foo/bar",
1279 "href": "madeupscheme:example.com/",
1280 "origin": "null",
1281 "protocol": "madeupscheme:",
1282 "username": "",
1283 "password": "",
1284 "host": "",
1285 "hostname": "",
1286 "port": "",
1287 "pathname": "example.com/",
1288 "search": "",
1289 "hash": ""
1290 },
1291 {
1292 "input": "ftps:example.com/",
1293 "base": "http://example.org/foo/bar",
1294 "href": "ftps:example.com/",
1295 "origin": "null",
1296 "protocol": "ftps:",
1297 "username": "",
1298 "password": "",
1299 "host": "",
1300 "hostname": "",
1301 "port": "",
1302 "pathname": "example.com/",
1303 "search": "",
1304 "hash": ""
1305 },
1306 {
1307 "input": "gopher:example.com/",
1308 "base": "http://example.org/foo/bar",
1309 "href": "gopher:example.com/",
1310 "origin": "null",
1311 "protocol": "gopher:",
1312 "username": "",
1313 "password": "",
1314 "host": "",
1315 "hostname": "",
1316 "port": "",
1317 "pathname": "example.com/",
1318 "search": "",
1319 "hash": ""
1320 },
1321 {
1322 "input": "ws:example.com/",
1323 "base": "http://example.org/foo/bar",
1324 "href": "ws://example.com/",
1325 "origin": "ws://example.com",
1326 "protocol": "ws:",
1327 "username": "",
1328 "password": "",
1329 "host": "example.com",
1330 "hostname": "example.com",
1331 "port": "",
1332 "pathname": "/",
1333 "search": "",
1334 "hash": ""
1335 },
1336 {
1337 "input": "wss:example.com/",
1338 "base": "http://example.org/foo/bar",
1339 "href": "wss://example.com/",
1340 "origin": "wss://example.com",
1341 "protocol": "wss:",
1342 "username": "",
1343 "password": "",
1344 "host": "example.com",
1345 "hostname": "example.com",
1346 "port": "",
1347 "pathname": "/",
1348 "search": "",
1349 "hash": ""
1350 },
1351 {
1352 "input": "data:example.com/",
1353 "base": "http://example.org/foo/bar",
1354 "href": "data:example.com/",
1355 "origin": "null",
1356 "protocol": "data:",
1357 "username": "",
1358 "password": "",
1359 "host": "",
1360 "hostname": "",
1361 "port": "",
1362 "pathname": "example.com/",
1363 "search": "",
1364 "hash": ""
1365 },
1366 {
1367 "input": "javascript:example.com/",
1368 "base": "http://example.org/foo/bar",
1369 "href": "javascript:example.com/",
1370 "origin": "null",
1371 "protocol": "javascript:",
1372 "username": "",
1373 "password": "",
1374 "host": "",
1375 "hostname": "",
1376 "port": "",
1377 "pathname": "example.com/",
1378 "search": "",
1379 "hash": ""
1380 },
1381 {
1382 "input": "mailto:example.com/",
1383 "base": "http://example.org/foo/bar",
1384 "href": "mailto:example.com/",
1385 "origin": "null",
1386 "protocol": "mailto:",
1387 "username": "",
1388 "password": "",
1389 "host": "",
1390 "hostname": "",
1391 "port": "",
1392 "pathname": "example.com/",
1393 "search": "",
1394 "hash": ""
1395 },
1396 {
1397 "input": "/a/b/c",
1398 "base": "http://example.org/foo/bar",
1399 "href": "http://example.org/a/b/c",
1400 "origin": "http://example.org",
1401 "protocol": "http:",
1402 "username": "",
1403 "password": "",
1404 "host": "example.org",
1405 "hostname": "example.org",
1406 "port": "",
1407 "pathname": "/a/b/c",
1408 "search": "",
1409 "hash": ""
1410 },
1411 {
1412 "input": "/a/ /c",
1413 "base": "http://example.org/foo/bar",
1414 "href": "http://example.org/a/%20/c",
1415 "origin": "http://example.org",
1416 "protocol": "http:",
1417 "username": "",
1418 "password": "",
1419 "host": "example.org",
1420 "hostname": "example.org",
1421 "port": "",
1422 "pathname": "/a/%20/c",
1423 "search": "",
1424 "hash": ""
1425 },
1426 {
1427 "input": "/a%2fc",
1428 "base": "http://example.org/foo/bar",
1429 "href": "http://example.org/a%2fc",
1430 "origin": "http://example.org",
1431 "protocol": "http:",
1432 "username": "",
1433 "password": "",
1434 "host": "example.org",
1435 "hostname": "example.org",
1436 "port": "",
1437 "pathname": "/a%2fc",
1438 "search": "",
1439 "hash": ""
1440 },
1441 {
1442 "input": "/a/%2f/c",
1443 "base": "http://example.org/foo/bar",
1444 "href": "http://example.org/a/%2f/c",
1445 "origin": "http://example.org",
1446 "protocol": "http:",
1447 "username": "",
1448 "password": "",
1449 "host": "example.org",
1450 "hostname": "example.org",
1451 "port": "",
1452 "pathname": "/a/%2f/c",
1453 "search": "",
1454 "hash": ""
1455 },
1456 {
1457 "input": "#β",
1458 "base": "http://example.org/foo/bar",
1459 "href": "http://example.org/foo/bar#%CE%B2",
1460 "origin": "http://example.org",
1461 "protocol": "http:",
1462 "username": "",
1463 "password": "",
1464 "host": "example.org",
1465 "hostname": "example.org",
1466 "port": "",
1467 "pathname": "/foo/bar",
1468 "search": "",
1469 "hash": "#%CE%B2"
1470 },
1471 {
1472 "input": "data:text/html,test#test",
1473 "base": "http://example.org/foo/bar",
1474 "href": "data:text/html,test#test",
1475 "origin": "null",
1476 "protocol": "data:",
1477 "username": "",
1478 "password": "",
1479 "host": "",
1480 "hostname": "",
1481 "port": "",
1482 "pathname": "text/html,test",
1483 "search": "",
1484 "hash": "#test"
1485 },
1486 {
1487 "input": "tel:1234567890",
1488 "base": "http://example.org/foo/bar",
1489 "href": "tel:1234567890",
1490 "origin": "null",
1491 "protocol": "tel:",
1492 "username": "",
1493 "password": "",
1494 "host": "",
1495 "hostname": "",
1496 "port": "",
1497 "pathname": "1234567890",
1498 "search": "",
1499 "hash": ""
1500 },
1501 "# Based on https://felixfbecker.github.io/whatwg-url-custom-host-repro/",
1502 {
1503 "input": "ssh://example.com/foo/bar.git",
1504 "base": "http://example.org/",
1505 "href": "ssh://example.com/foo/bar.git",
1506 "origin": "null",
1507 "protocol": "ssh:",
1508 "username": "",
1509 "password": "",
1510 "host": "example.com",
1511 "hostname": "example.com",
1512 "port": "",
1513 "pathname": "/foo/bar.git",
1514 "search": "",
1515 "hash": ""
1516 },
1517 "# Based on http://trac.webkit.org/browser/trunk/LayoutTests/fast/url/file.html",
1518 {
1519 "input": "file:c:\\foo\\bar.html",
1520 "base": "file:///tmp/mock/path",
1521 "href": "file:///c:/foo/bar.html",
1522 "protocol": "file:",
1523 "username": "",
1524 "password": "",
1525 "host": "",
1526 "hostname": "",
1527 "port": "",
1528 "pathname": "/c:/foo/bar.html",
1529 "search": "",
1530 "hash": ""
1531 },
1532 {
1533 "input": " File:c|////foo\\bar.html",
1534 "base": "file:///tmp/mock/path",
1535 "href": "file:///c:////foo/bar.html",
1536 "protocol": "file:",
1537 "username": "",
1538 "password": "",
1539 "host": "",
1540 "hostname": "",
1541 "port": "",
1542 "pathname": "/c:////foo/bar.html",
1543 "search": "",
1544 "hash": ""
1545 },
1546 {
1547 "input": "C|/foo/bar",
1548 "base": "file:///tmp/mock/path",
1549 "href": "file:///C:/foo/bar",
1550 "protocol": "file:",
1551 "username": "",
1552 "password": "",
1553 "host": "",
1554 "hostname": "",
1555 "port": "",
1556 "pathname": "/C:/foo/bar",
1557 "search": "",
1558 "hash": ""
1559 },
1560 {
1561 "input": "/C|\\foo\\bar",
1562 "base": "file:///tmp/mock/path",
1563 "href": "file:///C:/foo/bar",
1564 "protocol": "file:",
1565 "username": "",
1566 "password": "",
1567 "host": "",
1568 "hostname": "",
1569 "port": "",
1570 "pathname": "/C:/foo/bar",
1571 "search": "",
1572 "hash": ""
1573 },
1574 {
1575 "input": "//C|/foo/bar",
1576 "base": "file:///tmp/mock/path",
1577 "href": "file:///C:/foo/bar",
1578 "protocol": "file:",
1579 "username": "",
1580 "password": "",
1581 "host": "",
1582 "hostname": "",
1583 "port": "",
1584 "pathname": "/C:/foo/bar",
1585 "search": "",
1586 "hash": ""
1587 },
1588 {
1589 "input": "//server/file",
1590 "base": "file:///tmp/mock/path",
1591 "href": "file://server/file",
1592 "protocol": "file:",
1593 "username": "",
1594 "password": "",
1595 "host": "server",
1596 "hostname": "server",
1597 "port": "",
1598 "pathname": "/file",
1599 "search": "",
1600 "hash": ""
1601 },
1602 {
1603 "input": "\\\\server\\file",
1604 "base": "file:///tmp/mock/path",
1605 "href": "file://server/file",
1606 "protocol": "file:",
1607 "username": "",
1608 "password": "",
1609 "host": "server",
1610 "hostname": "server",
1611 "port": "",
1612 "pathname": "/file",
1613 "search": "",
1614 "hash": ""
1615 },
1616 {
1617 "input": "/\\server/file",
1618 "base": "file:///tmp/mock/path",
1619 "href": "file://server/file",
1620 "protocol": "file:",
1621 "username": "",
1622 "password": "",
1623 "host": "server",
1624 "hostname": "server",
1625 "port": "",
1626 "pathname": "/file",
1627 "search": "",
1628 "hash": ""
1629 },
1630 {
1631 "input": "file:///foo/bar.txt",
1632 "base": "file:///tmp/mock/path",
1633 "href": "file:///foo/bar.txt",
1634 "protocol": "file:",
1635 "username": "",
1636 "password": "",
1637 "host": "",
1638 "hostname": "",
1639 "port": "",
1640 "pathname": "/foo/bar.txt",
1641 "search": "",
1642 "hash": ""
1643 },
1644 {
1645 "input": "file:///home/me",
1646 "base": "file:///tmp/mock/path",
1647 "href": "file:///home/me",
1648 "protocol": "file:",
1649 "username": "",
1650 "password": "",
1651 "host": "",
1652 "hostname": "",
1653 "port": "",
1654 "pathname": "/home/me",
1655 "search": "",
1656 "hash": ""
1657 },
1658 {
1659 "input": "//",
1660 "base": "file:///tmp/mock/path",
1661 "href": "file:///",
1662 "protocol": "file:",
1663 "username": "",
1664 "password": "",
1665 "host": "",
1666 "hostname": "",
1667 "port": "",
1668 "pathname": "/",
1669 "search": "",
1670 "hash": ""
1671 },
1672 {
1673 "input": "///",
1674 "base": "file:///tmp/mock/path",
1675 "href": "file:///",
1676 "protocol": "file:",
1677 "username": "",
1678 "password": "",
1679 "host": "",
1680 "hostname": "",
1681 "port": "",
1682 "pathname": "/",
1683 "search": "",
1684 "hash": ""
1685 },
1686 {
1687 "input": "///test",
1688 "base": "file:///tmp/mock/path",
1689 "href": "file:///test",
1690 "protocol": "file:",
1691 "username": "",
1692 "password": "",
1693 "host": "",
1694 "hostname": "",
1695 "port": "",
1696 "pathname": "/test",
1697 "search": "",
1698 "hash": ""
1699 },
1700 {
1701 "input": "file://test",
1702 "base": "file:///tmp/mock/path",
1703 "href": "file://test/",
1704 "protocol": "file:",
1705 "username": "",
1706 "password": "",
1707 "host": "test",
1708 "hostname": "test",
1709 "port": "",
1710 "pathname": "/",
1711 "search": "",
1712 "hash": ""
1713 },
1714 {
1715 "input": "file://localhost",
1716 "base": "file:///tmp/mock/path",
1717 "href": "file:///",
1718 "protocol": "file:",
1719 "username": "",
1720 "password": "",
1721 "host": "",
1722 "hostname": "",
1723 "port": "",
1724 "pathname": "/",
1725 "search": "",
1726 "hash": ""
1727 },
1728 {
1729 "input": "file://localhost/",
1730 "base": "file:///tmp/mock/path",
1731 "href": "file:///",
1732 "protocol": "file:",
1733 "username": "",
1734 "password": "",
1735 "host": "",
1736 "hostname": "",
1737 "port": "",
1738 "pathname": "/",
1739 "search": "",
1740 "hash": ""
1741 },
1742 {
1743 "input": "file://localhost/test",
1744 "base": "file:///tmp/mock/path",
1745 "href": "file:///test",
1746 "protocol": "file:",
1747 "username": "",
1748 "password": "",
1749 "host": "",
1750 "hostname": "",
1751 "port": "",
1752 "pathname": "/test",
1753 "search": "",
1754 "hash": ""
1755 },
1756 {
1757 "input": "test",
1758 "base": "file:///tmp/mock/path",
1759 "href": "file:///tmp/mock/test",
1760 "protocol": "file:",
1761 "username": "",
1762 "password": "",
1763 "host": "",
1764 "hostname": "",
1765 "port": "",
1766 "pathname": "/tmp/mock/test",
1767 "search": "",
1768 "hash": ""
1769 },
1770 {
1771 "input": "file:test",
1772 "base": "file:///tmp/mock/path",
1773 "href": "file:///tmp/mock/test",
1774 "protocol": "file:",
1775 "username": "",
1776 "password": "",
1777 "host": "",
1778 "hostname": "",
1779 "port": "",
1780 "pathname": "/tmp/mock/test",
1781 "search": "",
1782 "hash": ""
1783 },
1784 {
1785 "input": "file:///w|m",
1786 "base": null,
1787 "href": "file:///w|m",
1788 "protocol": "file:",
1789 "username": "",
1790 "password": "",
1791 "host": "",
1792 "hostname": "",
1793 "port": "",
1794 "pathname": "/w|m",
1795 "search": "",
1796 "hash": ""
1797 },
1798 {
1799 "input": "file:///w||m",
1800 "base": null,
1801 "href": "file:///w||m",
1802 "protocol": "file:",
1803 "username": "",
1804 "password": "",
1805 "host": "",
1806 "hostname": "",
1807 "port": "",
1808 "pathname": "/w||m",
1809 "search": "",
1810 "hash": ""
1811 },
1812 {
1813 "input": "file:///w|/m",
1814 "base": null,
1815 "href": "file:///w:/m",
1816 "protocol": "file:",
1817 "username": "",
1818 "password": "",
1819 "host": "",
1820 "hostname": "",
1821 "port": "",
1822 "pathname": "/w:/m",
1823 "search": "",
1824 "hash": ""
1825 },
1826 {
1827 "input": "file:C|/m/",
1828 "base": null,
1829 "href": "file:///C:/m/",
1830 "protocol": "file:",
1831 "username": "",
1832 "password": "",
1833 "host": "",
1834 "hostname": "",
1835 "port": "",
1836 "pathname": "/C:/m/",
1837 "search": "",
1838 "hash": ""
1839 },
1840 {
1841 "input": "file:C||/m/",
1842 "base": null,
1843 "href": "file:///C||/m/",
1844 "protocol": "file:",
1845 "username": "",
1846 "password": "",
1847 "host": "",
1848 "hostname": "",
1849 "port": "",
1850 "pathname": "/C||/m/",
1851 "search": "",
1852 "hash": ""
1853 },
1854 "# Based on http://trac.webkit.org/browser/trunk/LayoutTests/fast/url/script-tests/path.js",
1855 {
1856 "input": "http://example.com/././foo",
1857 "base": null,
1858 "href": "http://example.com/foo",
1859 "origin": "http://example.com",
1860 "protocol": "http:",
1861 "username": "",
1862 "password": "",
1863 "host": "example.com",
1864 "hostname": "example.com",
1865 "port": "",
1866 "pathname": "/foo",
1867 "search": "",
1868 "hash": ""
1869 },
1870 {
1871 "input": "http://example.com/./.foo",
1872 "base": null,
1873 "href": "http://example.com/.foo",
1874 "origin": "http://example.com",
1875 "protocol": "http:",
1876 "username": "",
1877 "password": "",
1878 "host": "example.com",
1879 "hostname": "example.com",
1880 "port": "",
1881 "pathname": "/.foo",
1882 "search": "",
1883 "hash": ""
1884 },
1885 {
1886 "input": "http://example.com/foo/.",
1887 "base": null,
1888 "href": "http://example.com/foo/",
1889 "origin": "http://example.com",
1890 "protocol": "http:",
1891 "username": "",
1892 "password": "",
1893 "host": "example.com",
1894 "hostname": "example.com",
1895 "port": "",
1896 "pathname": "/foo/",
1897 "search": "",
1898 "hash": ""
1899 },
1900 {
1901 "input": "http://example.com/foo/./",
1902 "base": null,
1903 "href": "http://example.com/foo/",
1904 "origin": "http://example.com",
1905 "protocol": "http:",
1906 "username": "",
1907 "password": "",
1908 "host": "example.com",
1909 "hostname": "example.com",
1910 "port": "",
1911 "pathname": "/foo/",
1912 "search": "",
1913 "hash": ""
1914 },
1915 {
1916 "input": "http://example.com/foo/bar/..",
1917 "base": null,
1918 "href": "http://example.com/foo/",
1919 "origin": "http://example.com",
1920 "protocol": "http:",
1921 "username": "",
1922 "password": "",
1923 "host": "example.com",
1924 "hostname": "example.com",
1925 "port": "",
1926 "pathname": "/foo/",
1927 "search": "",
1928 "hash": ""
1929 },
1930 {
1931 "input": "http://example.com/foo/bar/../",
1932 "base": null,
1933 "href": "http://example.com/foo/",
1934 "origin": "http://example.com",
1935 "protocol": "http:",
1936 "username": "",
1937 "password": "",
1938 "host": "example.com",
1939 "hostname": "example.com",
1940 "port": "",
1941 "pathname": "/foo/",
1942 "search": "",
1943 "hash": ""
1944 },
1945 {
1946 "input": "http://example.com/foo/..bar",
1947 "base": null,
1948 "href": "http://example.com/foo/..bar",
1949 "origin": "http://example.com",
1950 "protocol": "http:",
1951 "username": "",
1952 "password": "",
1953 "host": "example.com",
1954 "hostname": "example.com",
1955 "port": "",
1956 "pathname": "/foo/..bar",
1957 "search": "",
1958 "hash": ""
1959 },
1960 {
1961 "input": "http://example.com/foo/bar/../ton",
1962 "base": null,
1963 "href": "http://example.com/foo/ton",
1964 "origin": "http://example.com",
1965 "protocol": "http:",
1966 "username": "",
1967 "password": "",
1968 "host": "example.com",
1969 "hostname": "example.com",
1970 "port": "",
1971 "pathname": "/foo/ton",
1972 "search": "",
1973 "hash": ""
1974 },
1975 {
1976 "input": "http://example.com/foo/bar/../ton/../../a",
1977 "base": null,
1978 "href": "http://example.com/a",
1979 "origin": "http://example.com",
1980 "protocol": "http:",
1981 "username": "",
1982 "password": "",
1983 "host": "example.com",
1984 "hostname": "example.com",
1985 "port": "",
1986 "pathname": "/a",
1987 "search": "",
1988 "hash": ""
1989 },
1990 {
1991 "input": "http://example.com/foo/../../..",
1992 "base": null,
1993 "href": "http://example.com/",
1994 "origin": "http://example.com",
1995 "protocol": "http:",
1996 "username": "",
1997 "password": "",
1998 "host": "example.com",
1999 "hostname": "example.com",
2000 "port": "",
2001 "pathname": "/",
2002 "search": "",
2003 "hash": ""
2004 },
2005 {
2006 "input": "http://example.com/foo/../../../ton",
2007 "base": null,
2008 "href": "http://example.com/ton",
2009 "origin": "http://example.com",
2010 "protocol": "http:",
2011 "username": "",
2012 "password": "",
2013 "host": "example.com",
2014 "hostname": "example.com",
2015 "port": "",
2016 "pathname": "/ton",
2017 "search": "",
2018 "hash": ""
2019 },
2020 {
2021 "input": "http://example.com/foo/%2e",
2022 "base": null,
2023 "href": "http://example.com/foo/",
2024 "origin": "http://example.com",
2025 "protocol": "http:",
2026 "username": "",
2027 "password": "",
2028 "host": "example.com",
2029 "hostname": "example.com",
2030 "port": "",
2031 "pathname": "/foo/",
2032 "search": "",
2033 "hash": ""
2034 },
2035 {
2036 "input": "http://example.com/foo/%2e%2",
2037 "base": null,
2038 "href": "http://example.com/foo/%2e%2",
2039 "origin": "http://example.com",
2040 "protocol": "http:",
2041 "username": "",
2042 "password": "",
2043 "host": "example.com",
2044 "hostname": "example.com",
2045 "port": "",
2046 "pathname": "/foo/%2e%2",
2047 "search": "",
2048 "hash": ""
2049 },
2050 {
2051 "input": "http://example.com/foo/%2e./%2e%2e/.%2e/%2e.bar",
2052 "base": null,
2053 "href": "http://example.com/%2e.bar",
2054 "origin": "http://example.com",
2055 "protocol": "http:",
2056 "username": "",
2057 "password": "",
2058 "host": "example.com",
2059 "hostname": "example.com",
2060 "port": "",
2061 "pathname": "/%2e.bar",
2062 "search": "",
2063 "hash": ""
2064 },
2065 {
2066 "input": "http://example.com////../..",
2067 "base": null,
2068 "href": "http://example.com//",
2069 "origin": "http://example.com",
2070 "protocol": "http:",
2071 "username": "",
2072 "password": "",
2073 "host": "example.com",
2074 "hostname": "example.com",
2075 "port": "",
2076 "pathname": "//",
2077 "search": "",
2078 "hash": ""
2079 },
2080 {
2081 "input": "http://example.com/foo/bar//../..",
2082 "base": null,
2083 "href": "http://example.com/foo/",
2084 "origin": "http://example.com",
2085 "protocol": "http:",
2086 "username": "",
2087 "password": "",
2088 "host": "example.com",
2089 "hostname": "example.com",
2090 "port": "",
2091 "pathname": "/foo/",
2092 "search": "",
2093 "hash": ""
2094 },
2095 {
2096 "input": "http://example.com/foo/bar//..",
2097 "base": null,
2098 "href": "http://example.com/foo/bar/",
2099 "origin": "http://example.com",
2100 "protocol": "http:",
2101 "username": "",
2102 "password": "",
2103 "host": "example.com",
2104 "hostname": "example.com",
2105 "port": "",
2106 "pathname": "/foo/bar/",
2107 "search": "",
2108 "hash": ""
2109 },
2110 {
2111 "input": "http://example.com/foo",
2112 "base": null,
2113 "href": "http://example.com/foo",
2114 "origin": "http://example.com",
2115 "protocol": "http:",
2116 "username": "",
2117 "password": "",
2118 "host": "example.com",
2119 "hostname": "example.com",
2120 "port": "",
2121 "pathname": "/foo",
2122 "search": "",
2123 "hash": ""
2124 },
2125 {
2126 "input": "http://example.com/%20foo",
2127 "base": null,
2128 "href": "http://example.com/%20foo",
2129 "origin": "http://example.com",
2130 "protocol": "http:",
2131 "username": "",
2132 "password": "",
2133 "host": "example.com",
2134 "hostname": "example.com",
2135 "port": "",
2136 "pathname": "/%20foo",
2137 "search": "",
2138 "hash": ""
2139 },
2140 {
2141 "input": "http://example.com/foo%",
2142 "base": null,
2143 "href": "http://example.com/foo%",
2144 "origin": "http://example.com",
2145 "protocol": "http:",
2146 "username": "",
2147 "password": "",
2148 "host": "example.com",
2149 "hostname": "example.com",
2150 "port": "",
2151 "pathname": "/foo%",
2152 "search": "",
2153 "hash": ""
2154 },
2155 {
2156 "input": "http://example.com/foo%2",
2157 "base": null,
2158 "href": "http://example.com/foo%2",
2159 "origin": "http://example.com",
2160 "protocol": "http:",
2161 "username": "",
2162 "password": "",
2163 "host": "example.com",
2164 "hostname": "example.com",
2165 "port": "",
2166 "pathname": "/foo%2",
2167 "search": "",
2168 "hash": ""
2169 },
2170 {
2171 "input": "http://example.com/foo%2zbar",
2172 "base": null,
2173 "href": "http://example.com/foo%2zbar",
2174 "origin": "http://example.com",
2175 "protocol": "http:",
2176 "username": "",
2177 "password": "",
2178 "host": "example.com",
2179 "hostname": "example.com",
2180 "port": "",
2181 "pathname": "/foo%2zbar",
2182 "search": "",
2183 "hash": ""
2184 },
2185 {
2186 "input": "http://example.com/foo%2©zbar",
2187 "base": null,
2188 "href": "http://example.com/foo%2%C3%82%C2%A9zbar",
2189 "origin": "http://example.com",
2190 "protocol": "http:",
2191 "username": "",
2192 "password": "",
2193 "host": "example.com",
2194 "hostname": "example.com",
2195 "port": "",
2196 "pathname": "/foo%2%C3%82%C2%A9zbar",
2197 "search": "",
2198 "hash": ""
2199 },
2200 {
2201 "input": "http://example.com/foo%41%7a",
2202 "base": null,
2203 "href": "http://example.com/foo%41%7a",
2204 "origin": "http://example.com",
2205 "protocol": "http:",
2206 "username": "",
2207 "password": "",
2208 "host": "example.com",
2209 "hostname": "example.com",
2210 "port": "",
2211 "pathname": "/foo%41%7a",
2212 "search": "",
2213 "hash": ""
2214 },
2215 {
2216 "input": "http://example.com/foo\t\u0091%91",
2217 "base": null,
2218 "href": "http://example.com/foo%C2%91%91",
2219 "origin": "http://example.com",
2220 "protocol": "http:",
2221 "username": "",
2222 "password": "",
2223 "host": "example.com",
2224 "hostname": "example.com",
2225 "port": "",
2226 "pathname": "/foo%C2%91%91",
2227 "search": "",
2228 "hash": ""
2229 },
2230 {
2231 "input": "http://example.com/foo%00%51",
2232 "base": null,
2233 "href": "http://example.com/foo%00%51",
2234 "origin": "http://example.com",
2235 "protocol": "http:",
2236 "username": "",
2237 "password": "",
2238 "host": "example.com",
2239 "hostname": "example.com",
2240 "port": "",
2241 "pathname": "/foo%00%51",
2242 "search": "",
2243 "hash": ""
2244 },
2245 {
2246 "input": "http://example.com/(%28:%3A%29)",
2247 "base": null,
2248 "href": "http://example.com/(%28:%3A%29)",
2249 "origin": "http://example.com",
2250 "protocol": "http:",
2251 "username": "",
2252 "password": "",
2253 "host": "example.com",
2254 "hostname": "example.com",
2255 "port": "",
2256 "pathname": "/(%28:%3A%29)",
2257 "search": "",
2258 "hash": ""
2259 },
2260 {
2261 "input": "http://example.com/%3A%3a%3C%3c",
2262 "base": null,
2263 "href": "http://example.com/%3A%3a%3C%3c",
2264 "origin": "http://example.com",
2265 "protocol": "http:",
2266 "username": "",
2267 "password": "",
2268 "host": "example.com",
2269 "hostname": "example.com",
2270 "port": "",
2271 "pathname": "/%3A%3a%3C%3c",
2272 "search": "",
2273 "hash": ""
2274 },
2275 {
2276 "input": "http://example.com/foo\tbar",
2277 "base": null,
2278 "href": "http://example.com/foobar",
2279 "origin": "http://example.com",
2280 "protocol": "http:",
2281 "username": "",
2282 "password": "",
2283 "host": "example.com",
2284 "hostname": "example.com",
2285 "port": "",
2286 "pathname": "/foobar",
2287 "search": "",
2288 "hash": ""
2289 },
2290 {
2291 "input": "http://example.com\\\\foo\\\\bar",
2292 "base": null,
2293 "href": "http://example.com//foo//bar",
2294 "origin": "http://example.com",
2295 "protocol": "http:",
2296 "username": "",
2297 "password": "",
2298 "host": "example.com",
2299 "hostname": "example.com",
2300 "port": "",
2301 "pathname": "//foo//bar",
2302 "search": "",
2303 "hash": ""
2304 },
2305 {
2306 "input": "http://example.com/%7Ffp3%3Eju%3Dduvgw%3Dd",
2307 "base": null,
2308 "href": "http://example.com/%7Ffp3%3Eju%3Dduvgw%3Dd",
2309 "origin": "http://example.com",
2310 "protocol": "http:",
2311 "username": "",
2312 "password": "",
2313 "host": "example.com",
2314 "hostname": "example.com",
2315 "port": "",
2316 "pathname": "/%7Ffp3%3Eju%3Dduvgw%3Dd",
2317 "search": "",
2318 "hash": ""
2319 },
2320 {
2321 "input": "http://example.com/@asdf%40",
2322 "base": null,
2323 "href": "http://example.com/@asdf%40",
2324 "origin": "http://example.com",
2325 "protocol": "http:",
2326 "username": "",
2327 "password": "",
2328 "host": "example.com",
2329 "hostname": "example.com",
2330 "port": "",
2331 "pathname": "/@asdf%40",
2332 "search": "",
2333 "hash": ""
2334 },
2335 {
2336 "input": "http://example.com/你好你好",
2337 "base": null,
2338 "href": "http://example.com/%E4%BD%A0%E5%A5%BD%E4%BD%A0%E5%A5%BD",
2339 "origin": "http://example.com",
2340 "protocol": "http:",
2341 "username": "",
2342 "password": "",
2343 "host": "example.com",
2344 "hostname": "example.com",
2345 "port": "",
2346 "pathname": "/%E4%BD%A0%E5%A5%BD%E4%BD%A0%E5%A5%BD",
2347 "search": "",
2348 "hash": ""
2349 },
2350 {
2351 "input": "http://example.com/‥/foo",
2352 "base": null,
2353 "href": "http://example.com/%E2%80%A5/foo",
2354 "origin": "http://example.com",
2355 "protocol": "http:",
2356 "username": "",
2357 "password": "",
2358 "host": "example.com",
2359 "hostname": "example.com",
2360 "port": "",
2361 "pathname": "/%E2%80%A5/foo",
2362 "search": "",
2363 "hash": ""
2364 },
2365 {
2366 "input": "http://example.com//foo",
2367 "base": null,
2368 "href": "http://example.com/%EF%BB%BF/foo",
2369 "origin": "http://example.com",
2370 "protocol": "http:",
2371 "username": "",
2372 "password": "",
2373 "host": "example.com",
2374 "hostname": "example.com",
2375 "port": "",
2376 "pathname": "/%EF%BB%BF/foo",
2377 "search": "",
2378 "hash": ""
2379 },
2380 {
2381 "input": "http://example.com/‮/foo/‭/bar",
2382 "base": null,
2383 "href": "http://example.com/%E2%80%AE/foo/%E2%80%AD/bar",
2384 "origin": "http://example.com",
2385 "protocol": "http:",
2386 "username": "",
2387 "password": "",
2388 "host": "example.com",
2389 "hostname": "example.com",
2390 "port": "",
2391 "pathname": "/%E2%80%AE/foo/%E2%80%AD/bar",
2392 "search": "",
2393 "hash": ""
2394 },
2395 "# Based on http://trac.webkit.org/browser/trunk/LayoutTests/fast/url/script-tests/relative.js",
2396 {
2397 "input": "http://www.google.com/foo?bar=baz#",
2398 "base": null,
2399 "href": "http://www.google.com/foo?bar=baz#",
2400 "origin": "http://www.google.com",
2401 "protocol": "http:",
2402 "username": "",
2403 "password": "",
2404 "host": "www.google.com",
2405 "hostname": "www.google.com",
2406 "port": "",
2407 "pathname": "/foo",
2408 "search": "?bar=baz",
2409 "hash": ""
2410 },
2411 {
2412 "input": "http://www.google.com/foo?bar=baz# »",
2413 "base": null,
2414 "href": "http://www.google.com/foo?bar=baz#%20%C2%BB",
2415 "origin": "http://www.google.com",
2416 "protocol": "http:",
2417 "username": "",
2418 "password": "",
2419 "host": "www.google.com",
2420 "hostname": "www.google.com",
2421 "port": "",
2422 "pathname": "/foo",
2423 "search": "?bar=baz",
2424 "hash": "#%20%C2%BB"
2425 },
2426 {
2427 "input": "data:test# »",
2428 "base": null,
2429 "href": "data:test#%20%C2%BB",
2430 "origin": "null",
2431 "protocol": "data:",
2432 "username": "",
2433 "password": "",
2434 "host": "",
2435 "hostname": "",
2436 "port": "",
2437 "pathname": "test",
2438 "search": "",
2439 "hash": "#%20%C2%BB"
2440 },
2441 {
2442 "input": "http://www.google.com",
2443 "base": null,
2444 "href": "http://www.google.com/",
2445 "origin": "http://www.google.com",
2446 "protocol": "http:",
2447 "username": "",
2448 "password": "",
2449 "host": "www.google.com",
2450 "hostname": "www.google.com",
2451 "port": "",
2452 "pathname": "/",
2453 "search": "",
2454 "hash": ""
2455 },
2456 {
2457 "input": "http://192.0x00A80001",
2458 "base": null,
2459 "href": "http://192.168.0.1/",
2460 "origin": "http://192.168.0.1",
2461 "protocol": "http:",
2462 "username": "",
2463 "password": "",
2464 "host": "192.168.0.1",
2465 "hostname": "192.168.0.1",
2466 "port": "",
2467 "pathname": "/",
2468 "search": "",
2469 "hash": ""
2470 },
2471 {
2472 "input": "http://www/foo%2Ehtml",
2473 "base": null,
2474 "href": "http://www/foo%2Ehtml",
2475 "origin": "http://www",
2476 "protocol": "http:",
2477 "username": "",
2478 "password": "",
2479 "host": "www",
2480 "hostname": "www",
2481 "port": "",
2482 "pathname": "/foo%2Ehtml",
2483 "search": "",
2484 "hash": ""
2485 },
2486 {
2487 "input": "http://www/foo/%2E/html",
2488 "base": null,
2489 "href": "http://www/foo/html",
2490 "origin": "http://www",
2491 "protocol": "http:",
2492 "username": "",
2493 "password": "",
2494 "host": "www",
2495 "hostname": "www",
2496 "port": "",
2497 "pathname": "/foo/html",
2498 "search": "",
2499 "hash": ""
2500 },
2501 {
2502 "input": "http://user:pass@/",
2503 "base": null,
2504 "failure": true
2505 },
2506 {
2507 "input": "http://%25DOMAIN:foobar@foodomain.com/",
2508 "base": null,
2509 "href": "http://%25DOMAIN:foobar@foodomain.com/",
2510 "origin": "http://foodomain.com",
2511 "protocol": "http:",
2512 "username": "%25DOMAIN",
2513 "password": "foobar",
2514 "host": "foodomain.com",
2515 "hostname": "foodomain.com",
2516 "port": "",
2517 "pathname": "/",
2518 "search": "",
2519 "hash": ""
2520 },
2521 {
2522 "input": "http:\\\\www.google.com\\foo",
2523 "base": null,
2524 "href": "http://www.google.com/foo",
2525 "origin": "http://www.google.com",
2526 "protocol": "http:",
2527 "username": "",
2528 "password": "",
2529 "host": "www.google.com",
2530 "hostname": "www.google.com",
2531 "port": "",
2532 "pathname": "/foo",
2533 "search": "",
2534 "hash": ""
2535 },
2536 {
2537 "input": "http://foo:80/",
2538 "base": null,
2539 "href": "http://foo/",
2540 "origin": "http://foo",
2541 "protocol": "http:",
2542 "username": "",
2543 "password": "",
2544 "host": "foo",
2545 "hostname": "foo",
2546 "port": "",
2547 "pathname": "/",
2548 "search": "",
2549 "hash": ""
2550 },
2551 {
2552 "input": "http://foo:81/",
2553 "base": null,
2554 "href": "http://foo:81/",
2555 "origin": "http://foo:81",
2556 "protocol": "http:",
2557 "username": "",
2558 "password": "",
2559 "host": "foo:81",
2560 "hostname": "foo",
2561 "port": "81",
2562 "pathname": "/",
2563 "search": "",
2564 "hash": ""
2565 },
2566 {
2567 "input": "httpa://foo:80/",
2568 "base": null,
2569 "href": "httpa://foo:80/",
2570 "origin": "null",
2571 "protocol": "httpa:",
2572 "username": "",
2573 "password": "",
2574 "host": "foo:80",
2575 "hostname": "foo",
2576 "port": "80",
2577 "pathname": "/",
2578 "search": "",
2579 "hash": ""
2580 },
2581 {
2582 "input": "http://foo:-80/",
2583 "base": null,
2584 "failure": true
2585 },
2586 {
2587 "input": "https://foo:443/",
2588 "base": null,
2589 "href": "https://foo/",
2590 "origin": "https://foo",
2591 "protocol": "https:",
2592 "username": "",
2593 "password": "",
2594 "host": "foo",
2595 "hostname": "foo",
2596 "port": "",
2597 "pathname": "/",
2598 "search": "",
2599 "hash": ""
2600 },
2601 {
2602 "input": "https://foo:80/",
2603 "base": null,
2604 "href": "https://foo:80/",
2605 "origin": "https://foo:80",
2606 "protocol": "https:",
2607 "username": "",
2608 "password": "",
2609 "host": "foo:80",
2610 "hostname": "foo",
2611 "port": "80",
2612 "pathname": "/",
2613 "search": "",
2614 "hash": ""
2615 },
2616 {
2617 "input": "ftp://foo:21/",
2618 "base": null,
2619 "href": "ftp://foo/",
2620 "origin": "ftp://foo",
2621 "protocol": "ftp:",
2622 "username": "",
2623 "password": "",
2624 "host": "foo",
2625 "hostname": "foo",
2626 "port": "",
2627 "pathname": "/",
2628 "search": "",
2629 "hash": ""
2630 },
2631 {
2632 "input": "ftp://foo:80/",
2633 "base": null,
2634 "href": "ftp://foo:80/",
2635 "origin": "ftp://foo:80",
2636 "protocol": "ftp:",
2637 "username": "",
2638 "password": "",
2639 "host": "foo:80",
2640 "hostname": "foo",
2641 "port": "80",
2642 "pathname": "/",
2643 "search": "",
2644 "hash": ""
2645 },
2646 {
2647 "input": "gopher://foo:70/",
2648 "base": null,
2649 "href": "gopher://foo:70/",
2650 "origin": "null",
2651 "protocol": "gopher:",
2652 "username": "",
2653 "password": "",
2654 "host": "foo:70",
2655 "hostname": "foo",
2656 "port": "70",
2657 "pathname": "/",
2658 "search": "",
2659 "hash": ""
2660 },
2661 {
2662 "input": "gopher://foo:443/",
2663 "base": null,
2664 "href": "gopher://foo:443/",
2665 "origin": "null",
2666 "protocol": "gopher:",
2667 "username": "",
2668 "password": "",
2669 "host": "foo:443",
2670 "hostname": "foo",
2671 "port": "443",
2672 "pathname": "/",
2673 "search": "",
2674 "hash": ""
2675 },
2676 {
2677 "input": "ws://foo:80/",
2678 "base": null,
2679 "href": "ws://foo/",
2680 "origin": "ws://foo",
2681 "protocol": "ws:",
2682 "username": "",
2683 "password": "",
2684 "host": "foo",
2685 "hostname": "foo",
2686 "port": "",
2687 "pathname": "/",
2688 "search": "",
2689 "hash": ""
2690 },
2691 {
2692 "input": "ws://foo:81/",
2693 "base": null,
2694 "href": "ws://foo:81/",
2695 "origin": "ws://foo:81",
2696 "protocol": "ws:",
2697 "username": "",
2698 "password": "",
2699 "host": "foo:81",
2700 "hostname": "foo",
2701 "port": "81",
2702 "pathname": "/",
2703 "search": "",
2704 "hash": ""
2705 },
2706 {
2707 "input": "ws://foo:443/",
2708 "base": null,
2709 "href": "ws://foo:443/",
2710 "origin": "ws://foo:443",
2711 "protocol": "ws:",
2712 "username": "",
2713 "password": "",
2714 "host": "foo:443",
2715 "hostname": "foo",
2716 "port": "443",
2717 "pathname": "/",
2718 "search": "",
2719 "hash": ""
2720 },
2721 {
2722 "input": "ws://foo:815/",
2723 "base": null,
2724 "href": "ws://foo:815/",
2725 "origin": "ws://foo:815",
2726 "protocol": "ws:",
2727 "username": "",
2728 "password": "",
2729 "host": "foo:815",
2730 "hostname": "foo",
2731 "port": "815",
2732 "pathname": "/",
2733 "search": "",
2734 "hash": ""
2735 },
2736 {
2737 "input": "wss://foo:80/",
2738 "base": null,
2739 "href": "wss://foo:80/",
2740 "origin": "wss://foo:80",
2741 "protocol": "wss:",
2742 "username": "",
2743 "password": "",
2744 "host": "foo:80",
2745 "hostname": "foo",
2746 "port": "80",
2747 "pathname": "/",
2748 "search": "",
2749 "hash": ""
2750 },
2751 {
2752 "input": "wss://foo:81/",
2753 "base": null,
2754 "href": "wss://foo:81/",
2755 "origin": "wss://foo:81",
2756 "protocol": "wss:",
2757 "username": "",
2758 "password": "",
2759 "host": "foo:81",
2760 "hostname": "foo",
2761 "port": "81",
2762 "pathname": "/",
2763 "search": "",
2764 "hash": ""
2765 },
2766 {
2767 "input": "wss://foo:443/",
2768 "base": null,
2769 "href": "wss://foo/",
2770 "origin": "wss://foo",
2771 "protocol": "wss:",
2772 "username": "",
2773 "password": "",
2774 "host": "foo",
2775 "hostname": "foo",
2776 "port": "",
2777 "pathname": "/",
2778 "search": "",
2779 "hash": ""
2780 },
2781 {
2782 "input": "wss://foo:815/",
2783 "base": null,
2784 "href": "wss://foo:815/",
2785 "origin": "wss://foo:815",
2786 "protocol": "wss:",
2787 "username": "",
2788 "password": "",
2789 "host": "foo:815",
2790 "hostname": "foo",
2791 "port": "815",
2792 "pathname": "/",
2793 "search": "",
2794 "hash": ""
2795 },
2796 {
2797 "input": "http:/example.com/",
2798 "base": null,
2799 "href": "http://example.com/",
2800 "origin": "http://example.com",
2801 "protocol": "http:",
2802 "username": "",
2803 "password": "",
2804 "host": "example.com",
2805 "hostname": "example.com",
2806 "port": "",
2807 "pathname": "/",
2808 "search": "",
2809 "hash": ""
2810 },
2811 {
2812 "input": "ftp:/example.com/",
2813 "base": null,
2814 "href": "ftp://example.com/",
2815 "origin": "ftp://example.com",
2816 "protocol": "ftp:",
2817 "username": "",
2818 "password": "",
2819 "host": "example.com",
2820 "hostname": "example.com",
2821 "port": "",
2822 "pathname": "/",
2823 "search": "",
2824 "hash": ""
2825 },
2826 {
2827 "input": "https:/example.com/",
2828 "base": null,
2829 "href": "https://example.com/",
2830 "origin": "https://example.com",
2831 "protocol": "https:",
2832 "username": "",
2833 "password": "",
2834 "host": "example.com",
2835 "hostname": "example.com",
2836 "port": "",
2837 "pathname": "/",
2838 "search": "",
2839 "hash": ""
2840 },
2841 {
2842 "input": "madeupscheme:/example.com/",
2843 "base": null,
2844 "href": "madeupscheme:/example.com/",
2845 "origin": "null",
2846 "protocol": "madeupscheme:",
2847 "username": "",
2848 "password": "",
2849 "host": "",
2850 "hostname": "",
2851 "port": "",
2852 "pathname": "/example.com/",
2853 "search": "",
2854 "hash": ""
2855 },
2856 {
2857 "input": "file:/example.com/",
2858 "base": null,
2859 "href": "file:///example.com/",
2860 "protocol": "file:",
2861 "username": "",
2862 "password": "",
2863 "host": "",
2864 "hostname": "",
2865 "port": "",
2866 "pathname": "/example.com/",
2867 "search": "",
2868 "hash": ""
2869 },
2870 {
2871 "input": "ftps:/example.com/",
2872 "base": null,
2873 "href": "ftps:/example.com/",
2874 "origin": "null",
2875 "protocol": "ftps:",
2876 "username": "",
2877 "password": "",
2878 "host": "",
2879 "hostname": "",
2880 "port": "",
2881 "pathname": "/example.com/",
2882 "search": "",
2883 "hash": ""
2884 },
2885 {
2886 "input": "gopher:/example.com/",
2887 "base": null,
2888 "href": "gopher:/example.com/",
2889 "origin": "null",
2890 "protocol": "gopher:",
2891 "username": "",
2892 "password": "",
2893 "host": "",
2894 "hostname": "",
2895 "port": "",
2896 "pathname": "/example.com/",
2897 "search": "",
2898 "hash": ""
2899 },
2900 {
2901 "input": "ws:/example.com/",
2902 "base": null,
2903 "href": "ws://example.com/",
2904 "origin": "ws://example.com",
2905 "protocol": "ws:",
2906 "username": "",
2907 "password": "",
2908 "host": "example.com",
2909 "hostname": "example.com",
2910 "port": "",
2911 "pathname": "/",
2912 "search": "",
2913 "hash": ""
2914 },
2915 {
2916 "input": "wss:/example.com/",
2917 "base": null,
2918 "href": "wss://example.com/",
2919 "origin": "wss://example.com",
2920 "protocol": "wss:",
2921 "username": "",
2922 "password": "",
2923 "host": "example.com",
2924 "hostname": "example.com",
2925 "port": "",
2926 "pathname": "/",
2927 "search": "",
2928 "hash": ""
2929 },
2930 {
2931 "input": "data:/example.com/",
2932 "base": null,
2933 "href": "data:/example.com/",
2934 "origin": "null",
2935 "protocol": "data:",
2936 "username": "",
2937 "password": "",
2938 "host": "",
2939 "hostname": "",
2940 "port": "",
2941 "pathname": "/example.com/",
2942 "search": "",
2943 "hash": ""
2944 },
2945 {
2946 "input": "javascript:/example.com/",
2947 "base": null,
2948 "href": "javascript:/example.com/",
2949 "origin": "null",
2950 "protocol": "javascript:",
2951 "username": "",
2952 "password": "",
2953 "host": "",
2954 "hostname": "",
2955 "port": "",
2956 "pathname": "/example.com/",
2957 "search": "",
2958 "hash": ""
2959 },
2960 {
2961 "input": "mailto:/example.com/",
2962 "base": null,
2963 "href": "mailto:/example.com/",
2964 "origin": "null",
2965 "protocol": "mailto:",
2966 "username": "",
2967 "password": "",
2968 "host": "",
2969 "hostname": "",
2970 "port": "",
2971 "pathname": "/example.com/",
2972 "search": "",
2973 "hash": ""
2974 },
2975 {
2976 "input": "http:example.com/",
2977 "base": null,
2978 "href": "http://example.com/",
2979 "origin": "http://example.com",
2980 "protocol": "http:",
2981 "username": "",
2982 "password": "",
2983 "host": "example.com",
2984 "hostname": "example.com",
2985 "port": "",
2986 "pathname": "/",
2987 "search": "",
2988 "hash": ""
2989 },
2990 {
2991 "input": "ftp:example.com/",
2992 "base": null,
2993 "href": "ftp://example.com/",
2994 "origin": "ftp://example.com",
2995 "protocol": "ftp:",
2996 "username": "",
2997 "password": "",
2998 "host": "example.com",
2999 "hostname": "example.com",
3000 "port": "",
3001 "pathname": "/",
3002 "search": "",
3003 "hash": ""
3004 },
3005 {
3006 "input": "https:example.com/",
3007 "base": null,
3008 "href": "https://example.com/",
3009 "origin": "https://example.com",
3010 "protocol": "https:",
3011 "username": "",
3012 "password": "",
3013 "host": "example.com",
3014 "hostname": "example.com",
3015 "port": "",
3016 "pathname": "/",
3017 "search": "",
3018 "hash": ""
3019 },
3020 {
3021 "input": "madeupscheme:example.com/",
3022 "base": null,
3023 "href": "madeupscheme:example.com/",
3024 "origin": "null",
3025 "protocol": "madeupscheme:",
3026 "username": "",
3027 "password": "",
3028 "host": "",
3029 "hostname": "",
3030 "port": "",
3031 "pathname": "example.com/",
3032 "search": "",
3033 "hash": ""
3034 },
3035 {
3036 "input": "ftps:example.com/",
3037 "base": null,
3038 "href": "ftps:example.com/",
3039 "origin": "null",
3040 "protocol": "ftps:",
3041 "username": "",
3042 "password": "",
3043 "host": "",
3044 "hostname": "",
3045 "port": "",
3046 "pathname": "example.com/",
3047 "search": "",
3048 "hash": ""
3049 },
3050 {
3051 "input": "gopher:example.com/",
3052 "base": null,
3053 "href": "gopher:example.com/",
3054 "origin": "null",
3055 "protocol": "gopher:",
3056 "username": "",
3057 "password": "",
3058 "host": "",
3059 "hostname": "",
3060 "port": "",
3061 "pathname": "example.com/",
3062 "search": "",
3063 "hash": ""
3064 },
3065 {
3066 "input": "ws:example.com/",
3067 "base": null,
3068 "href": "ws://example.com/",
3069 "origin": "ws://example.com",
3070 "protocol": "ws:",
3071 "username": "",
3072 "password": "",
3073 "host": "example.com",
3074 "hostname": "example.com",
3075 "port": "",
3076 "pathname": "/",
3077 "search": "",
3078 "hash": ""
3079 },
3080 {
3081 "input": "wss:example.com/",
3082 "base": null,
3083 "href": "wss://example.com/",
3084 "origin": "wss://example.com",
3085 "protocol": "wss:",
3086 "username": "",
3087 "password": "",
3088 "host": "example.com",
3089 "hostname": "example.com",
3090 "port": "",
3091 "pathname": "/",
3092 "search": "",
3093 "hash": ""
3094 },
3095 {
3096 "input": "data:example.com/",
3097 "base": null,
3098 "href": "data:example.com/",
3099 "origin": "null",
3100 "protocol": "data:",
3101 "username": "",
3102 "password": "",
3103 "host": "",
3104 "hostname": "",
3105 "port": "",
3106 "pathname": "example.com/",
3107 "search": "",
3108 "hash": ""
3109 },
3110 {
3111 "input": "javascript:example.com/",
3112 "base": null,
3113 "href": "javascript:example.com/",
3114 "origin": "null",
3115 "protocol": "javascript:",
3116 "username": "",
3117 "password": "",
3118 "host": "",
3119 "hostname": "",
3120 "port": "",
3121 "pathname": "example.com/",
3122 "search": "",
3123 "hash": ""
3124 },
3125 {
3126 "input": "mailto:example.com/",
3127 "base": null,
3128 "href": "mailto:example.com/",
3129 "origin": "null",
3130 "protocol": "mailto:",
3131 "username": "",
3132 "password": "",
3133 "host": "",
3134 "hostname": "",
3135 "port": "",
3136 "pathname": "example.com/",
3137 "search": "",
3138 "hash": ""
3139 },
3140 {
3141 "input": "https://example.com/aaa/bbb/%2e%2e?query",
3142 "base": null,
3143 "href": "https://example.com/aaa/?query",
3144 "origin": "https://example.com",
3145 "protocol": "https:",
3146 "username": "",
3147 "password": "",
3148 "host": "example.com",
3149 "hostname": "example.com",
3150 "port": "",
3151 "pathname": "/aaa/",
3152 "search": "?query",
3153 "hash": ""
3154 },
3155 "# Based on http://trac.webkit.org/browser/trunk/LayoutTests/fast/url/segments-userinfo-vs-host.html",
3156 {
3157 "input": "http:@www.example.com",
3158 "base": null,
3159 "href": "http://www.example.com/",
3160 "origin": "http://www.example.com",
3161 "protocol": "http:",
3162 "username": "",
3163 "password": "",
3164 "host": "www.example.com",
3165 "hostname": "www.example.com",
3166 "port": "",
3167 "pathname": "/",
3168 "search": "",
3169 "hash": ""
3170 },
3171 {
3172 "input": "http:/@www.example.com",
3173 "base": null,
3174 "href": "http://www.example.com/",
3175 "origin": "http://www.example.com",
3176 "protocol": "http:",
3177 "username": "",
3178 "password": "",
3179 "host": "www.example.com",
3180 "hostname": "www.example.com",
3181 "port": "",
3182 "pathname": "/",
3183 "search": "",
3184 "hash": ""
3185 },
3186 {
3187 "input": "http://@www.example.com",
3188 "base": null,
3189 "href": "http://www.example.com/",
3190 "origin": "http://www.example.com",
3191 "protocol": "http:",
3192 "username": "",
3193 "password": "",
3194 "host": "www.example.com",
3195 "hostname": "www.example.com",
3196 "port": "",
3197 "pathname": "/",
3198 "search": "",
3199 "hash": ""
3200 },
3201 {
3202 "input": "http:a:b@www.example.com",
3203 "base": null,
3204 "href": "http://a:b@www.example.com/",
3205 "origin": "http://www.example.com",
3206 "protocol": "http:",
3207 "username": "a",
3208 "password": "b",
3209 "host": "www.example.com",
3210 "hostname": "www.example.com",
3211 "port": "",
3212 "pathname": "/",
3213 "search": "",
3214 "hash": ""
3215 },
3216 {
3217 "input": "http:/a:b@www.example.com",
3218 "base": null,
3219 "href": "http://a:b@www.example.com/",
3220 "origin": "http://www.example.com",
3221 "protocol": "http:",
3222 "username": "a",
3223 "password": "b",
3224 "host": "www.example.com",
3225 "hostname": "www.example.com",
3226 "port": "",
3227 "pathname": "/",
3228 "search": "",
3229 "hash": ""
3230 },
3231 {
3232 "input": "http://a:b@www.example.com",
3233 "base": null,
3234 "href": "http://a:b@www.example.com/",
3235 "origin": "http://www.example.com",
3236 "protocol": "http:",
3237 "username": "a",
3238 "password": "b",
3239 "host": "www.example.com",
3240 "hostname": "www.example.com",
3241 "port": "",
3242 "pathname": "/",
3243 "search": "",
3244 "hash": ""
3245 },
3246 {
3247 "input": "http://@pple.com",
3248 "base": null,
3249 "href": "http://pple.com/",
3250 "origin": "http://pple.com",
3251 "protocol": "http:",
3252 "username": "",
3253 "password": "",
3254 "host": "pple.com",
3255 "hostname": "pple.com",
3256 "port": "",
3257 "pathname": "/",
3258 "search": "",
3259 "hash": ""
3260 },
3261 {
3262 "input": "http::b@www.example.com",
3263 "base": null,
3264 "href": "http://:b@www.example.com/",
3265 "origin": "http://www.example.com",
3266 "protocol": "http:",
3267 "username": "",
3268 "password": "b",
3269 "host": "www.example.com",
3270 "hostname": "www.example.com",
3271 "port": "",
3272 "pathname": "/",
3273 "search": "",
3274 "hash": ""
3275 },
3276 {
3277 "input": "http:/:b@www.example.com",
3278 "base": null,
3279 "href": "http://:b@www.example.com/",
3280 "origin": "http://www.example.com",
3281 "protocol": "http:",
3282 "username": "",
3283 "password": "b",
3284 "host": "www.example.com",
3285 "hostname": "www.example.com",
3286 "port": "",
3287 "pathname": "/",
3288 "search": "",
3289 "hash": ""
3290 },
3291 {
3292 "input": "http://:b@www.example.com",
3293 "base": null,
3294 "href": "http://:b@www.example.com/",
3295 "origin": "http://www.example.com",
3296 "protocol": "http:",
3297 "username": "",
3298 "password": "b",
3299 "host": "www.example.com",
3300 "hostname": "www.example.com",
3301 "port": "",
3302 "pathname": "/",
3303 "search": "",
3304 "hash": ""
3305 },
3306 {
3307 "input": "http:/:@/www.example.com",
3308 "base": null,
3309 "failure": true,
3310 "relativeTo": "non-opaque-path-base"
3311 },
3312 {
3313 "input": "http://user@/www.example.com",
3314 "base": null,
3315 "failure": true
3316 },
3317 {
3318 "input": "http:@/www.example.com",
3319 "base": null,
3320 "failure": true,
3321 "relativeTo": "non-opaque-path-base"
3322 },
3323 {
3324 "input": "http:/@/www.example.com",
3325 "base": null,
3326 "failure": true,
3327 "relativeTo": "non-opaque-path-base"
3328 },
3329 {
3330 "input": "http://@/www.example.com",
3331 "base": null,
3332 "failure": true
3333 },
3334 {
3335 "input": "https:@/www.example.com",
3336 "base": null,
3337 "failure": true,
3338 "relativeTo": "non-opaque-path-base"
3339 },
3340 {
3341 "input": "http:a:b@/www.example.com",
3342 "base": null,
3343 "failure": true,
3344 "relativeTo": "non-opaque-path-base"
3345 },
3346 {
3347 "input": "http:/a:b@/www.example.com",
3348 "base": null,
3349 "failure": true,
3350 "relativeTo": "non-opaque-path-base"
3351 },
3352 {
3353 "input": "http://a:b@/www.example.com",
3354 "base": null,
3355 "failure": true
3356 },
3357 {
3358 "input": "http::@/www.example.com",
3359 "base": null,
3360 "failure": true,
3361 "relativeTo": "non-opaque-path-base"
3362 },
3363 {
3364 "input": "http:a:@www.example.com",
3365 "base": null,
3366 "href": "http://a@www.example.com/",
3367 "origin": "http://www.example.com",
3368 "protocol": "http:",
3369 "username": "a",
3370 "password": "",
3371 "host": "www.example.com",
3372 "hostname": "www.example.com",
3373 "port": "",
3374 "pathname": "/",
3375 "search": "",
3376 "hash": ""
3377 },
3378 {
3379 "input": "http:/a:@www.example.com",
3380 "base": null,
3381 "href": "http://a@www.example.com/",
3382 "origin": "http://www.example.com",
3383 "protocol": "http:",
3384 "username": "a",
3385 "password": "",
3386 "host": "www.example.com",
3387 "hostname": "www.example.com",
3388 "port": "",
3389 "pathname": "/",
3390 "search": "",
3391 "hash": ""
3392 },
3393 {
3394 "input": "http://a:@www.example.com",
3395 "base": null,
3396 "href": "http://a@www.example.com/",
3397 "origin": "http://www.example.com",
3398 "protocol": "http:",
3399 "username": "a",
3400 "password": "",
3401 "host": "www.example.com",
3402 "hostname": "www.example.com",
3403 "port": "",
3404 "pathname": "/",
3405 "search": "",
3406 "hash": ""
3407 },
3408 {
3409 "input": "http://www.@pple.com",
3410 "base": null,
3411 "href": "http://www.@pple.com/",
3412 "origin": "http://pple.com",
3413 "protocol": "http:",
3414 "username": "www.",
3415 "password": "",
3416 "host": "pple.com",
3417 "hostname": "pple.com",
3418 "port": "",
3419 "pathname": "/",
3420 "search": "",
3421 "hash": ""
3422 },
3423 {
3424 "input": "http:@:www.example.com",
3425 "base": null,
3426 "failure": true,
3427 "relativeTo": "non-opaque-path-base"
3428 },
3429 {
3430 "input": "http:/@:www.example.com",
3431 "base": null,
3432 "failure": true,
3433 "relativeTo": "non-opaque-path-base"
3434 },
3435 {
3436 "input": "http://@:www.example.com",
3437 "base": null,
3438 "failure": true
3439 },
3440 {
3441 "input": "http://:@www.example.com",
3442 "base": null,
3443 "href": "http://www.example.com/",
3444 "origin": "http://www.example.com",
3445 "protocol": "http:",
3446 "username": "",
3447 "password": "",
3448 "host": "www.example.com",
3449 "hostname": "www.example.com",
3450 "port": "",
3451 "pathname": "/",
3452 "search": "",
3453 "hash": ""
3454 },
3455 "# Others",
3456 {
3457 "input": "/",
3458 "base": "http://www.example.com/test",
3459 "href": "http://www.example.com/",
3460 "origin": "http://www.example.com",
3461 "protocol": "http:",
3462 "username": "",
3463 "password": "",
3464 "host": "www.example.com",
3465 "hostname": "www.example.com",
3466 "port": "",
3467 "pathname": "/",
3468 "search": "",
3469 "hash": ""
3470 },
3471 {
3472 "input": "/test.txt",
3473 "base": "http://www.example.com/test",
3474 "href": "http://www.example.com/test.txt",
3475 "origin": "http://www.example.com",
3476 "protocol": "http:",
3477 "username": "",
3478 "password": "",
3479 "host": "www.example.com",
3480 "hostname": "www.example.com",
3481 "port": "",
3482 "pathname": "/test.txt",
3483 "search": "",
3484 "hash": ""
3485 },
3486 {
3487 "input": ".",
3488 "base": "http://www.example.com/test",
3489 "href": "http://www.example.com/",
3490 "origin": "http://www.example.com",
3491 "protocol": "http:",
3492 "username": "",
3493 "password": "",
3494 "host": "www.example.com",
3495 "hostname": "www.example.com",
3496 "port": "",
3497 "pathname": "/",
3498 "search": "",
3499 "hash": ""
3500 },
3501 {
3502 "input": "..",
3503 "base": "http://www.example.com/test",
3504 "href": "http://www.example.com/",
3505 "origin": "http://www.example.com",
3506 "protocol": "http:",
3507 "username": "",
3508 "password": "",
3509 "host": "www.example.com",
3510 "hostname": "www.example.com",
3511 "port": "",
3512 "pathname": "/",
3513 "search": "",
3514 "hash": ""
3515 },
3516 {
3517 "input": "test.txt",
3518 "base": "http://www.example.com/test",
3519 "href": "http://www.example.com/test.txt",
3520 "origin": "http://www.example.com",
3521 "protocol": "http:",
3522 "username": "",
3523 "password": "",
3524 "host": "www.example.com",
3525 "hostname": "www.example.com",
3526 "port": "",
3527 "pathname": "/test.txt",
3528 "search": "",
3529 "hash": ""
3530 },
3531 {
3532 "input": "./test.txt",
3533 "base": "http://www.example.com/test",
3534 "href": "http://www.example.com/test.txt",
3535 "origin": "http://www.example.com",
3536 "protocol": "http:",
3537 "username": "",
3538 "password": "",
3539 "host": "www.example.com",
3540 "hostname": "www.example.com",
3541 "port": "",
3542 "pathname": "/test.txt",
3543 "search": "",
3544 "hash": ""
3545 },
3546 {
3547 "input": "../test.txt",
3548 "base": "http://www.example.com/test",
3549 "href": "http://www.example.com/test.txt",
3550 "origin": "http://www.example.com",
3551 "protocol": "http:",
3552 "username": "",
3553 "password": "",
3554 "host": "www.example.com",
3555 "hostname": "www.example.com",
3556 "port": "",
3557 "pathname": "/test.txt",
3558 "search": "",
3559 "hash": ""
3560 },
3561 {
3562 "input": "../aaa/test.txt",
3563 "base": "http://www.example.com/test",
3564 "href": "http://www.example.com/aaa/test.txt",
3565 "origin": "http://www.example.com",
3566 "protocol": "http:",
3567 "username": "",
3568 "password": "",
3569 "host": "www.example.com",
3570 "hostname": "www.example.com",
3571 "port": "",
3572 "pathname": "/aaa/test.txt",
3573 "search": "",
3574 "hash": ""
3575 },
3576 {
3577 "input": "../../test.txt",
3578 "base": "http://www.example.com/test",
3579 "href": "http://www.example.com/test.txt",
3580 "origin": "http://www.example.com",
3581 "protocol": "http:",
3582 "username": "",
3583 "password": "",
3584 "host": "www.example.com",
3585 "hostname": "www.example.com",
3586 "port": "",
3587 "pathname": "/test.txt",
3588 "search": "",
3589 "hash": ""
3590 },
3591 {
3592 "input": "中/test.txt",
3593 "base": "http://www.example.com/test",
3594 "href": "http://www.example.com/%E4%B8%AD/test.txt",
3595 "origin": "http://www.example.com",
3596 "protocol": "http:",
3597 "username": "",
3598 "password": "",
3599 "host": "www.example.com",
3600 "hostname": "www.example.com",
3601 "port": "",
3602 "pathname": "/%E4%B8%AD/test.txt",
3603 "search": "",
3604 "hash": ""
3605 },
3606 {
3607 "input": "http://www.example2.com",
3608 "base": "http://www.example.com/test",
3609 "href": "http://www.example2.com/",
3610 "origin": "http://www.example2.com",
3611 "protocol": "http:",
3612 "username": "",
3613 "password": "",
3614 "host": "www.example2.com",
3615 "hostname": "www.example2.com",
3616 "port": "",
3617 "pathname": "/",
3618 "search": "",
3619 "hash": ""
3620 },
3621 {
3622 "input": "//www.example2.com",
3623 "base": "http://www.example.com/test",
3624 "href": "http://www.example2.com/",
3625 "origin": "http://www.example2.com",
3626 "protocol": "http:",
3627 "username": "",
3628 "password": "",
3629 "host": "www.example2.com",
3630 "hostname": "www.example2.com",
3631 "port": "",
3632 "pathname": "/",
3633 "search": "",
3634 "hash": ""
3635 },
3636 {
3637 "input": "file:...",
3638 "base": "http://www.example.com/test",
3639 "href": "file:///...",
3640 "protocol": "file:",
3641 "username": "",
3642 "password": "",
3643 "host": "",
3644 "hostname": "",
3645 "port": "",
3646 "pathname": "/...",
3647 "search": "",
3648 "hash": ""
3649 },
3650 {
3651 "input": "file:..",
3652 "base": "http://www.example.com/test",
3653 "href": "file:///",
3654 "protocol": "file:",
3655 "username": "",
3656 "password": "",
3657 "host": "",
3658 "hostname": "",
3659 "port": "",
3660 "pathname": "/",
3661 "search": "",
3662 "hash": ""
3663 },
3664 {
3665 "input": "file:a",
3666 "base": "http://www.example.com/test",
3667 "href": "file:///a",
3668 "protocol": "file:",
3669 "username": "",
3670 "password": "",
3671 "host": "",
3672 "hostname": "",
3673 "port": "",
3674 "pathname": "/a",
3675 "search": "",
3676 "hash": ""
3677 },
3678 {
3679 "input": "file:.",
3680 "base": null,
3681 "href": "file:///",
3682 "protocol": "file:",
3683 "username": "",
3684 "password": "",
3685 "host": "",
3686 "hostname": "",
3687 "port": "",
3688 "pathname": "/",
3689 "search": "",
3690 "hash": ""
3691 },
3692 {
3693 "input": "file:.",
3694 "base": "http://www.example.com/test",
3695 "href": "file:///",
3696 "protocol": "file:",
3697 "username": "",
3698 "password": "",
3699 "host": "",
3700 "hostname": "",
3701 "port": "",
3702 "pathname": "/",
3703 "search": "",
3704 "hash": ""
3705 },
3706 "# Based on http://trac.webkit.org/browser/trunk/LayoutTests/fast/url/host.html",
3707 "Basic canonicalization, uppercase should be converted to lowercase",
3708 {
3709 "input": "http://ExAmPlE.CoM",
3710 "base": "http://other.com/",
3711 "href": "http://example.com/",
3712 "origin": "http://example.com",
3713 "protocol": "http:",
3714 "username": "",
3715 "password": "",
3716 "host": "example.com",
3717 "hostname": "example.com",
3718 "port": "",
3719 "pathname": "/",
3720 "search": "",
3721 "hash": ""
3722 },
3723 {
3724 "input": "http://example example.com",
3725 "base": "http://other.com/",
3726 "failure": true
3727 },
3728 {
3729 "input": "http://Goo%20 goo%7C|.com",
3730 "base": "http://other.com/",
3731 "failure": true
3732 },
3733 {
3734 "input": "http://[]",
3735 "base": "http://other.com/",
3736 "failure": true
3737 },
3738 {
3739 "input": "http://[:]",
3740 "base": "http://other.com/",
3741 "failure": true
3742 },
3743 "U+3000 is mapped to U+0020 (space) which is disallowed",
3744 {
3745 "input": "http://GOO\u00a0\u3000goo.com",
3746 "base": "http://other.com/",
3747 "failure": true
3748 },
3749 "Other types of space (no-break, zero-width, zero-width-no-break) are name-prepped away to nothing. U+200B, U+2060, and U+FEFF, are ignored",
3750 {
3751 "input": "http://GOO\u200b\u2060\ufeffgoo.com",
3752 "base": "http://other.com/",
3753 "href": "http://googoo.com/",
3754 "origin": "http://googoo.com",
3755 "protocol": "http:",
3756 "username": "",
3757 "password": "",
3758 "host": "googoo.com",
3759 "hostname": "googoo.com",
3760 "port": "",
3761 "pathname": "/",
3762 "search": "",
3763 "hash": ""
3764 },
3765 "Leading and trailing C0 control or space",
3766 {
3767 "input": "\u0000\u001b\u0004\u0012 http://example.com/\u001f \u000d ",
3768 "base": null,
3769 "href": "http://example.com/",
3770 "origin": "http://example.com",
3771 "protocol": "http:",
3772 "username": "",
3773 "password": "",
3774 "host": "example.com",
3775 "hostname": "example.com",
3776 "port": "",
3777 "pathname": "/",
3778 "search": "",
3779 "hash": ""
3780 },
3781 {
3782 "input": "non-special:opaque ",
3783 "base": null,
3784 "href": "non-special:opaque",
3785 "origin": "null",
3786 "protocol": "non-special:",
3787 "username": "",
3788 "password": "",
3789 "host": "",
3790 "hostname": "",
3791 "port": "",
3792 "pathname": "opaque",
3793 "search": "",
3794 "hash": ""
3795 },
3796 {
3797 "input": "non-special:opaque ?hi",
3798 "base": null,
3799 "href": "non-special:opaque %20?hi",
3800 "origin": "null",
3801 "protocol": "non-special:",
3802 "username": "",
3803 "password": "",
3804 "host": "",
3805 "hostname": "",
3806 "port": "",
3807 "pathname": "opaque %20",
3808 "search": "?hi",
3809 "hash": ""
3810 },
3811 {
3812 "input": "non-special:opaque #hi",
3813 "base": null,
3814 "href": "non-special:opaque %20#hi",
3815 "origin": "null",
3816 "protocol": "non-special:",
3817 "username": "",
3818 "password": "",
3819 "host": "",
3820 "hostname": "",
3821 "port": "",
3822 "pathname": "opaque %20",
3823 "search": "",
3824 "hash": "#hi"
3825 },
3826 {
3827 "input": "non-special:opaque x?hi",
3828 "base": null,
3829 "href": "non-special:opaque x?hi",
3830 "origin": "null",
3831 "protocol": "non-special:",
3832 "username": "",
3833 "password": "",
3834 "host": "",
3835 "hostname": "",
3836 "port": "",
3837 "pathname": "opaque x",
3838 "search": "?hi",
3839 "hash": ""
3840 },
3841 {
3842 "input": "non-special:opaque x#hi",
3843 "base": null,
3844 "href": "non-special:opaque x#hi",
3845 "origin": "null",
3846 "protocol": "non-special:",
3847 "username": "",
3848 "password": "",
3849 "host": "",
3850 "hostname": "",
3851 "port": "",
3852 "pathname": "opaque x",
3853 "search": "",
3854 "hash": "#hi"
3855 },
3856 {
3857 "input": "non-special:opaque \t\t \t#hi",
3858 "base": null,
3859 "href": "non-special:opaque %20#hi",
3860 "origin": "null",
3861 "protocol": "non-special:",
3862 "username": "",
3863 "password": "",
3864 "host": "",
3865 "hostname": "",
3866 "port": "",
3867 "pathname": "opaque %20",
3868 "search": "",
3869 "hash": "#hi"
3870 },
3871 {
3872 "input": "non-special:opaque \t\t #hi",
3873 "base": null,
3874 "href": "non-special:opaque %20#hi",
3875 "origin": "null",
3876 "protocol": "non-special:",
3877 "username": "",
3878 "password": "",
3879 "host": "",
3880 "hostname": "",
3881 "port": "",
3882 "pathname": "opaque %20",
3883 "search": "",
3884 "hash": "#hi"
3885 },
3886 {
3887 "input": "non-special:opaque\t\t \r #hi",
3888 "base": null,
3889 "href": "non-special:opaque %20#hi",
3890 "origin": "null",
3891 "protocol": "non-special:",
3892 "username": "",
3893 "password": "",
3894 "host": "",
3895 "hostname": "",
3896 "port": "",
3897 "pathname": "opaque %20",
3898 "search": "",
3899 "hash": "#hi"
3900 },
3901 "Ideographic full stop (full-width period for Chinese, etc.) should be treated as a dot. U+3002 is mapped to U+002E (dot)",
3902 {
3903 "input": "http://www.foo。bar.com",
3904 "base": "http://other.com/",
3905 "href": "http://www.foo.bar.com/",
3906 "origin": "http://www.foo.bar.com",
3907 "protocol": "http:",
3908 "username": "",
3909 "password": "",
3910 "host": "www.foo.bar.com",
3911 "hostname": "www.foo.bar.com",
3912 "port": "",
3913 "pathname": "/",
3914 "search": "",
3915 "hash": ""
3916 },
3917 "Invalid unicode characters should fail... U+FDD0 is disallowed; %ef%b7%90 is U+FDD0",
3918 {
3919 "input": "http://\ufdd0zyx.com",
3920 "base": "http://other.com/",
3921 "failure": true
3922 },
3923 "This is the same as previous but escaped",
3924 {
3925 "input": "http://%ef%b7%90zyx.com",
3926 "base": "http://other.com/",
3927 "failure": true
3928 },
3929 "U+FFFD",
3930 {
3931 "input": "https://\ufffd",
3932 "base": null,
3933 "failure": true
3934 },
3935 {
3936 "input": "https://%EF%BF%BD",
3937 "base": null,
3938 "failure": true
3939 },
3940 {
3941 "input": "https://x/\ufffd?\ufffd#\ufffd",
3942 "base": null,
3943 "href": "https://x/%EF%BF%BD?%EF%BF%BD#%EF%BF%BD",
3944 "origin": "https://x",
3945 "protocol": "https:",
3946 "username": "",
3947 "password": "",
3948 "host": "x",
3949 "hostname": "x",
3950 "port": "",
3951 "pathname": "/%EF%BF%BD",
3952 "search": "?%EF%BF%BD",
3953 "hash": "#%EF%BF%BD"
3954 },
3955 "Domain is ASCII, but a label is invalid IDNA",
3956 {
3957 "input": "http://a.b.c.xn--pokxncvks",
3958 "base": null,
3959 "failure": true
3960 },
3961 {
3962 "input": "http://10.0.0.xn--pokxncvks",
3963 "base": null,
3964 "failure": true
3965 },
3966 "IDNA labels should be matched case-insensitively",
3967 {
3968 "input": "http://a.b.c.XN--pokxncvks",
3969 "base": null,
3970 "failure": true
3971 },
3972 {
3973 "input": "http://a.b.c.Xn--pokxncvks",
3974 "base": null,
3975 "failure": true
3976 },
3977 {
3978 "input": "http://10.0.0.XN--pokxncvks",
3979 "base": null,
3980 "failure": true
3981 },
3982 {
3983 "input": "http://10.0.0.xN--pokxncvks",
3984 "base": null,
3985 "failure": true
3986 },
3987 "Test name prepping, fullwidth input should be converted to ASCII and NOT IDN-ized. This is 'Go' in fullwidth UTF-8/UTF-16.",
3988 {
3989 "input": "http://Go.com",
3990 "base": "http://other.com/",
3991 "href": "http://go.com/",
3992 "origin": "http://go.com",
3993 "protocol": "http:",
3994 "username": "",
3995 "password": "",
3996 "host": "go.com",
3997 "hostname": "go.com",
3998 "port": "",
3999 "pathname": "/",
4000 "search": "",
4001 "hash": ""
4002 },
4003 "URL spec forbids the following. https://www.w3.org/Bugs/Public/show_bug.cgi?id=24257",
4004 {
4005 "input": "http://%41.com",
4006 "base": "http://other.com/",
4007 "failure": true
4008 },
4009 {
4010 "input": "http://%ef%bc%85%ef%bc%94%ef%bc%91.com",
4011 "base": "http://other.com/",
4012 "failure": true
4013 },
4014 "...%00 in fullwidth should fail (also as escaped UTF-8 input)",
4015 {
4016 "input": "http://%00.com",
4017 "base": "http://other.com/",
4018 "failure": true
4019 },
4020 {
4021 "input": "http://%ef%bc%85%ef%bc%90%ef%bc%90.com",
4022 "base": "http://other.com/",
4023 "failure": true
4024 },
4025 "Basic IDN support, UTF-8 and UTF-16 input should be converted to IDN",
4026 {
4027 "input": "http://你好你好",
4028 "base": "http://other.com/",
4029 "href": "http://xn--6qqa088eba/",
4030 "origin": "http://xn--6qqa088eba",
4031 "protocol": "http:",
4032 "username": "",
4033 "password": "",
4034 "host": "xn--6qqa088eba",
4035 "hostname": "xn--6qqa088eba",
4036 "port": "",
4037 "pathname": "/",
4038 "search": "",
4039 "hash": ""
4040 },
4041 {
4042 "input": "https://faß.ExAmPlE/",
4043 "base": null,
4044 "href": "https://xn--fa-hia.example/",
4045 "origin": "https://xn--fa-hia.example",
4046 "protocol": "https:",
4047 "username": "",
4048 "password": "",
4049 "host": "xn--fa-hia.example",
4050 "hostname": "xn--fa-hia.example",
4051 "port": "",
4052 "pathname": "/",
4053 "search": "",
4054 "hash": ""
4055 },
4056 {
4057 "input": "sc://faß.ExAmPlE/",
4058 "base": null,
4059 "href": "sc://fa%C3%9F.ExAmPlE/",
4060 "origin": "null",
4061 "protocol": "sc:",
4062 "username": "",
4063 "password": "",
4064 "host": "fa%C3%9F.ExAmPlE",
4065 "hostname": "fa%C3%9F.ExAmPlE",
4066 "port": "",
4067 "pathname": "/",
4068 "search": "",
4069 "hash": ""
4070 },
4071 "Invalid escaped characters should fail and the percents should be escaped. https://www.w3.org/Bugs/Public/show_bug.cgi?id=24191",
4072 {
4073 "input": "http://%zz%66%a.com",
4074 "base": "http://other.com/",
4075 "failure": true
4076 },
4077 "If we get an invalid character that has been escaped.",
4078 {
4079 "input": "http://%25",
4080 "base": "http://other.com/",
4081 "failure": true
4082 },
4083 {
4084 "input": "http://hello%00",
4085 "base": "http://other.com/",
4086 "failure": true
4087 },
4088 "Escaped numbers should be treated like IP addresses if they are.",
4089 {
4090 "input": "http://%30%78%63%30%2e%30%32%35%30.01",
4091 "base": "http://other.com/",
4092 "href": "http://192.168.0.1/",
4093 "origin": "http://192.168.0.1",
4094 "protocol": "http:",
4095 "username": "",
4096 "password": "",
4097 "host": "192.168.0.1",
4098 "hostname": "192.168.0.1",
4099 "port": "",
4100 "pathname": "/",
4101 "search": "",
4102 "hash": ""
4103 },
4104 {
4105 "input": "http://%30%78%63%30%2e%30%32%35%30.01%2e",
4106 "base": "http://other.com/",
4107 "href": "http://192.168.0.1/",
4108 "origin": "http://192.168.0.1",
4109 "protocol": "http:",
4110 "username": "",
4111 "password": "",
4112 "host": "192.168.0.1",
4113 "hostname": "192.168.0.1",
4114 "port": "",
4115 "pathname": "/",
4116 "search": "",
4117 "hash": ""
4118 },
4119 {
4120 "input": "http://192.168.0.257",
4121 "base": "http://other.com/",
4122 "failure": true
4123 },
4124 "Invalid escaping in hosts causes failure",
4125 {
4126 "input": "http://%3g%78%63%30%2e%30%32%35%30%2E.01",
4127 "base": "http://other.com/",
4128 "failure": true
4129 },
4130 "A space in a host causes failure",
4131 {
4132 "input": "http://192.168.0.1 hello",
4133 "base": "http://other.com/",
4134 "failure": true
4135 },
4136 {
4137 "input": "https://x x:12",
4138 "base": null,
4139 "failure": true
4140 },
4141 "Fullwidth and escaped UTF-8 fullwidth should still be treated as IP",
4142 {
4143 "input": "http://0Xc0.0250.01",
4144 "base": "http://other.com/",
4145 "href": "http://192.168.0.1/",
4146 "origin": "http://192.168.0.1",
4147 "protocol": "http:",
4148 "username": "",
4149 "password": "",
4150 "host": "192.168.0.1",
4151 "hostname": "192.168.0.1",
4152 "port": "",
4153 "pathname": "/",
4154 "search": "",
4155 "hash": ""
4156 },
4157 "Domains with empty labels",
4158 {
4159 "input": "http://./",
4160 "base": null,
4161 "href": "http://./",
4162 "origin": "http://.",
4163 "protocol": "http:",
4164 "username": "",
4165 "password": "",
4166 "host": ".",
4167 "hostname": ".",
4168 "port": "",
4169 "pathname": "/",
4170 "search": "",
4171 "hash": ""
4172 },
4173 {
4174 "input": "http://../",
4175 "base": null,
4176 "href": "http://../",
4177 "origin": "http://..",
4178 "protocol": "http:",
4179 "username": "",
4180 "password": "",
4181 "host": "..",
4182 "hostname": "..",
4183 "port": "",
4184 "pathname": "/",
4185 "search": "",
4186 "hash": ""
4187 },
4188 "Non-special domains with empty labels",
4189 {
4190 "input": "h://.",
4191 "base": null,
4192 "href": "h://.",
4193 "origin": "null",
4194 "protocol": "h:",
4195 "username": "",
4196 "password": "",
4197 "host": ".",
4198 "hostname": ".",
4199 "port": "",
4200 "pathname": "",
4201 "search": "",
4202 "hash": ""
4203 },
4204 "Broken IPv6",
4205 {
4206 "input": "http://[www.google.com]/",
4207 "base": null,
4208 "failure": true
4209 },
4210 {
4211 "input": "http://[google.com]",
4212 "base": "http://other.com/",
4213 "failure": true
4214 },
4215 {
4216 "input": "http://[::1.2.3.4x]",
4217 "base": "http://other.com/",
4218 "failure": true
4219 },
4220 {
4221 "input": "http://[::1.2.3.]",
4222 "base": "http://other.com/",
4223 "failure": true
4224 },
4225 {
4226 "input": "http://[::1.2.]",
4227 "base": "http://other.com/",
4228 "failure": true
4229 },
4230 {
4231 "input": "http://[::.1.2]",
4232 "base": "http://other.com/",
4233 "failure": true
4234 },
4235 {
4236 "input": "http://[::1.]",
4237 "base": "http://other.com/",
4238 "failure": true
4239 },
4240 {
4241 "input": "http://[::.1]",
4242 "base": "http://other.com/",
4243 "failure": true
4244 },
4245 {
4246 "input": "http://[::%31]",
4247 "base": "http://other.com/",
4248 "failure": true
4249 },
4250 {
4251 "input": "http://%5B::1]",
4252 "base": "http://other.com/",
4253 "failure": true
4254 },
4255 "Misc Unicode",
4256 {
4257 "input": "http://foo:💩@example.com/bar",
4258 "base": "http://other.com/",
4259 "href": "http://foo:%F0%9F%92%A9@example.com/bar",
4260 "origin": "http://example.com",
4261 "protocol": "http:",
4262 "username": "foo",
4263 "password": "%F0%9F%92%A9",
4264 "host": "example.com",
4265 "hostname": "example.com",
4266 "port": "",
4267 "pathname": "/bar",
4268 "search": "",
4269 "hash": ""
4270 },
4271 "# resolving a fragment against any scheme succeeds",
4272 {
4273 "input": "#",
4274 "base": "test:test",
4275 "href": "test:test#",
4276 "origin": "null",
4277 "protocol": "test:",
4278 "username": "",
4279 "password": "",
4280 "host": "",
4281 "hostname": "",
4282 "port": "",
4283 "pathname": "test",
4284 "search": "",
4285 "hash": ""
4286 },
4287 {
4288 "input": "#x",
4289 "base": "mailto:x@x.com",
4290 "href": "mailto:x@x.com#x",
4291 "origin": "null",
4292 "protocol": "mailto:",
4293 "username": "",
4294 "password": "",
4295 "host": "",
4296 "hostname": "",
4297 "port": "",
4298 "pathname": "x@x.com",
4299 "search": "",
4300 "hash": "#x"
4301 },
4302 {
4303 "input": "#x",
4304 "base": "data:,",
4305 "href": "data:,#x",
4306 "origin": "null",
4307 "protocol": "data:",
4308 "username": "",
4309 "password": "",
4310 "host": "",
4311 "hostname": "",
4312 "port": "",
4313 "pathname": ",",
4314 "search": "",
4315 "hash": "#x"
4316 },
4317 {
4318 "input": "#x",
4319 "base": "about:blank",
4320 "href": "about:blank#x",
4321 "origin": "null",
4322 "protocol": "about:",
4323 "username": "",
4324 "password": "",
4325 "host": "",
4326 "hostname": "",
4327 "port": "",
4328 "pathname": "blank",
4329 "search": "",
4330 "hash": "#x"
4331 },
4332 {
4333 "input": "#x:y",
4334 "base": "about:blank",
4335 "href": "about:blank#x:y",
4336 "origin": "null",
4337 "protocol": "about:",
4338 "username": "",
4339 "password": "",
4340 "host": "",
4341 "hostname": "",
4342 "port": "",
4343 "pathname": "blank",
4344 "search": "",
4345 "hash": "#x:y"
4346 },
4347 {
4348 "input": "#",
4349 "base": "test:test?test",
4350 "href": "test:test?test#",
4351 "origin": "null",
4352 "protocol": "test:",
4353 "username": "",
4354 "password": "",
4355 "host": "",
4356 "hostname": "",
4357 "port": "",
4358 "pathname": "test",
4359 "search": "?test",
4360 "hash": ""
4361 },
4362 "# multiple @ in authority state",
4363 {
4364 "input": "https://@test@test@example:800/",
4365 "base": "http://doesnotmatter/",
4366 "href": "https://%40test%40test@example:800/",
4367 "origin": "https://example:800",
4368 "protocol": "https:",
4369 "username": "%40test%40test",
4370 "password": "",
4371 "host": "example:800",
4372 "hostname": "example",
4373 "port": "800",
4374 "pathname": "/",
4375 "search": "",
4376 "hash": ""
4377 },
4378 {
4379 "input": "https://@@@example",
4380 "base": "http://doesnotmatter/",
4381 "href": "https://%40%40@example/",
4382 "origin": "https://example",
4383 "protocol": "https:",
4384 "username": "%40%40",
4385 "password": "",
4386 "host": "example",
4387 "hostname": "example",
4388 "port": "",
4389 "pathname": "/",
4390 "search": "",
4391 "hash": ""
4392 },
4393 "non-az-09 characters",
4394 {
4395 "input": "http://`{}:`{}@h/`{}?`{}",
4396 "base": "http://doesnotmatter/",
4397 "href": "http://%60%7B%7D:%60%7B%7D@h/%60%7B%7D?`{}",
4398 "origin": "http://h",
4399 "protocol": "http:",
4400 "username": "%60%7B%7D",
4401 "password": "%60%7B%7D",
4402 "host": "h",
4403 "hostname": "h",
4404 "port": "",
4405 "pathname": "/%60%7B%7D",
4406 "search": "?`{}",
4407 "hash": ""
4408 },
4409 "byte is ' and url is special",
4410 {
4411 "input": "http://host/?'",
4412 "base": null,
4413 "href": "http://host/?%27",
4414 "origin": "http://host",
4415 "protocol": "http:",
4416 "username": "",
4417 "password": "",
4418 "host": "host",
4419 "hostname": "host",
4420 "port": "",
4421 "pathname": "/",
4422 "search": "?%27",
4423 "hash": ""
4424 },
4425 {
4426 "input": "notspecial://host/?'",
4427 "base": null,
4428 "href": "notspecial://host/?'",
4429 "origin": "null",
4430 "protocol": "notspecial:",
4431 "username": "",
4432 "password": "",
4433 "host": "host",
4434 "hostname": "host",
4435 "port": "",
4436 "pathname": "/",
4437 "search": "?'",
4438 "hash": ""
4439 },
4440 "# Credentials in base",
4441 {
4442 "input": "/some/path",
4443 "base": "http://user@example.org/smth",
4444 "href": "http://user@example.org/some/path",
4445 "origin": "http://example.org",
4446 "protocol": "http:",
4447 "username": "user",
4448 "password": "",
4449 "host": "example.org",
4450 "hostname": "example.org",
4451 "port": "",
4452 "pathname": "/some/path",
4453 "search": "",
4454 "hash": ""
4455 },
4456 {
4457 "input": "",
4458 "base": "http://user:pass@example.org:21/smth",
4459 "href": "http://user:pass@example.org:21/smth",
4460 "origin": "http://example.org:21",
4461 "protocol": "http:",
4462 "username": "user",
4463 "password": "pass",
4464 "host": "example.org:21",
4465 "hostname": "example.org",
4466 "port": "21",
4467 "pathname": "/smth",
4468 "search": "",
4469 "hash": ""
4470 },
4471 {
4472 "input": "/some/path",
4473 "base": "http://user:pass@example.org:21/smth",
4474 "href": "http://user:pass@example.org:21/some/path",
4475 "origin": "http://example.org:21",
4476 "protocol": "http:",
4477 "username": "user",
4478 "password": "pass",
4479 "host": "example.org:21",
4480 "hostname": "example.org",
4481 "port": "21",
4482 "pathname": "/some/path",
4483 "search": "",
4484 "hash": ""
4485 },
4486 "# a set of tests designed by zcorpan for relative URLs with unknown schemes",
4487 {
4488 "input": "i",
4489 "base": "sc:sd",
4490 "failure": true
4491 },
4492 {
4493 "input": "i",
4494 "base": "sc:sd/sd",
4495 "failure": true
4496 },
4497 {
4498 "input": "i",
4499 "base": "sc:/pa/pa",
4500 "href": "sc:/pa/i",
4501 "origin": "null",
4502 "protocol": "sc:",
4503 "username": "",
4504 "password": "",
4505 "host": "",
4506 "hostname": "",
4507 "port": "",
4508 "pathname": "/pa/i",
4509 "search": "",
4510 "hash": ""
4511 },
4512 {
4513 "input": "i",
4514 "base": "sc://ho/pa",
4515 "href": "sc://ho/i",
4516 "origin": "null",
4517 "protocol": "sc:",
4518 "username": "",
4519 "password": "",
4520 "host": "ho",
4521 "hostname": "ho",
4522 "port": "",
4523 "pathname": "/i",
4524 "search": "",
4525 "hash": ""
4526 },
4527 {
4528 "input": "i",
4529 "base": "sc:///pa/pa",
4530 "href": "sc:///pa/i",
4531 "origin": "null",
4532 "protocol": "sc:",
4533 "username": "",
4534 "password": "",
4535 "host": "",
4536 "hostname": "",
4537 "port": "",
4538 "pathname": "/pa/i",
4539 "search": "",
4540 "hash": ""
4541 },
4542 {
4543 "input": "../i",
4544 "base": "sc:sd",
4545 "failure": true
4546 },
4547 {
4548 "input": "../i",
4549 "base": "sc:sd/sd",
4550 "failure": true
4551 },
4552 {
4553 "input": "../i",
4554 "base": "sc:/pa/pa",
4555 "href": "sc:/i",
4556 "origin": "null",
4557 "protocol": "sc:",
4558 "username": "",
4559 "password": "",
4560 "host": "",
4561 "hostname": "",
4562 "port": "",
4563 "pathname": "/i",
4564 "search": "",
4565 "hash": ""
4566 },
4567 {
4568 "input": "../i",
4569 "base": "sc://ho/pa",
4570 "href": "sc://ho/i",
4571 "origin": "null",
4572 "protocol": "sc:",
4573 "username": "",
4574 "password": "",
4575 "host": "ho",
4576 "hostname": "ho",
4577 "port": "",
4578 "pathname": "/i",
4579 "search": "",
4580 "hash": ""
4581 },
4582 {
4583 "input": "../i",
4584 "base": "sc:///pa/pa",
4585 "href": "sc:///i",
4586 "origin": "null",
4587 "protocol": "sc:",
4588 "username": "",
4589 "password": "",
4590 "host": "",
4591 "hostname": "",
4592 "port": "",
4593 "pathname": "/i",
4594 "search": "",
4595 "hash": ""
4596 },
4597 {
4598 "input": "/i",
4599 "base": "sc:sd",
4600 "failure": true
4601 },
4602 {
4603 "input": "/i",
4604 "base": "sc:sd/sd",
4605 "failure": true
4606 },
4607 {
4608 "input": "/i",
4609 "base": "sc:/pa/pa",
4610 "href": "sc:/i",
4611 "origin": "null",
4612 "protocol": "sc:",
4613 "username": "",
4614 "password": "",
4615 "host": "",
4616 "hostname": "",
4617 "port": "",
4618 "pathname": "/i",
4619 "search": "",
4620 "hash": ""
4621 },
4622 {
4623 "input": "/i",
4624 "base": "sc://ho/pa",
4625 "href": "sc://ho/i",
4626 "origin": "null",
4627 "protocol": "sc:",
4628 "username": "",
4629 "password": "",
4630 "host": "ho",
4631 "hostname": "ho",
4632 "port": "",
4633 "pathname": "/i",
4634 "search": "",
4635 "hash": ""
4636 },
4637 {
4638 "input": "/i",
4639 "base": "sc:///pa/pa",
4640 "href": "sc:///i",
4641 "origin": "null",
4642 "protocol": "sc:",
4643 "username": "",
4644 "password": "",
4645 "host": "",
4646 "hostname": "",
4647 "port": "",
4648 "pathname": "/i",
4649 "search": "",
4650 "hash": ""
4651 },
4652 {
4653 "input": "?i",
4654 "base": "sc:sd",
4655 "failure": true
4656 },
4657 {
4658 "input": "?i",
4659 "base": "sc:sd/sd",
4660 "failure": true
4661 },
4662 {
4663 "input": "?i",
4664 "base": "sc:/pa/pa",
4665 "href": "sc:/pa/pa?i",
4666 "origin": "null",
4667 "protocol": "sc:",
4668 "username": "",
4669 "password": "",
4670 "host": "",
4671 "hostname": "",
4672 "port": "",
4673 "pathname": "/pa/pa",
4674 "search": "?i",
4675 "hash": ""
4676 },
4677 {
4678 "input": "?i",
4679 "base": "sc://ho/pa",
4680 "href": "sc://ho/pa?i",
4681 "origin": "null",
4682 "protocol": "sc:",
4683 "username": "",
4684 "password": "",
4685 "host": "ho",
4686 "hostname": "ho",
4687 "port": "",
4688 "pathname": "/pa",
4689 "search": "?i",
4690 "hash": ""
4691 },
4692 {
4693 "input": "?i",
4694 "base": "sc:///pa/pa",
4695 "href": "sc:///pa/pa?i",
4696 "origin": "null",
4697 "protocol": "sc:",
4698 "username": "",
4699 "password": "",
4700 "host": "",
4701 "hostname": "",
4702 "port": "",
4703 "pathname": "/pa/pa",
4704 "search": "?i",
4705 "hash": ""
4706 },
4707 {
4708 "input": "#i",
4709 "base": "sc:sd",
4710 "href": "sc:sd#i",
4711 "origin": "null",
4712 "protocol": "sc:",
4713 "username": "",
4714 "password": "",
4715 "host": "",
4716 "hostname": "",
4717 "port": "",
4718 "pathname": "sd",
4719 "search": "",
4720 "hash": "#i"
4721 },
4722 {
4723 "input": "#i",
4724 "base": "sc:sd/sd",
4725 "href": "sc:sd/sd#i",
4726 "origin": "null",
4727 "protocol": "sc:",
4728 "username": "",
4729 "password": "",
4730 "host": "",
4731 "hostname": "",
4732 "port": "",
4733 "pathname": "sd/sd",
4734 "search": "",
4735 "hash": "#i"
4736 },
4737 {
4738 "input": "#i",
4739 "base": "sc:/pa/pa",
4740 "href": "sc:/pa/pa#i",
4741 "origin": "null",
4742 "protocol": "sc:",
4743 "username": "",
4744 "password": "",
4745 "host": "",
4746 "hostname": "",
4747 "port": "",
4748 "pathname": "/pa/pa",
4749 "search": "",
4750 "hash": "#i"
4751 },
4752 {
4753 "input": "#i",
4754 "base": "sc://ho/pa",
4755 "href": "sc://ho/pa#i",
4756 "origin": "null",
4757 "protocol": "sc:",
4758 "username": "",
4759 "password": "",
4760 "host": "ho",
4761 "hostname": "ho",
4762 "port": "",
4763 "pathname": "/pa",
4764 "search": "",
4765 "hash": "#i"
4766 },
4767 {
4768 "input": "#i",
4769 "base": "sc:///pa/pa",
4770 "href": "sc:///pa/pa#i",
4771 "origin": "null",
4772 "protocol": "sc:",
4773 "username": "",
4774 "password": "",
4775 "host": "",
4776 "hostname": "",
4777 "port": "",
4778 "pathname": "/pa/pa",
4779 "search": "",
4780 "hash": "#i"
4781 },
4782 "# make sure that relative URL logic works on known typically non-relative schemes too",
4783 {
4784 "input": "about:/../",
4785 "base": null,
4786 "href": "about:/",
4787 "origin": "null",
4788 "protocol": "about:",
4789 "username": "",
4790 "password": "",
4791 "host": "",
4792 "hostname": "",
4793 "port": "",
4794 "pathname": "/",
4795 "search": "",
4796 "hash": ""
4797 },
4798 {
4799 "input": "data:/../",
4800 "base": null,
4801 "href": "data:/",
4802 "origin": "null",
4803 "protocol": "data:",
4804 "username": "",
4805 "password": "",
4806 "host": "",
4807 "hostname": "",
4808 "port": "",
4809 "pathname": "/",
4810 "search": "",
4811 "hash": ""
4812 },
4813 {
4814 "input": "javascript:/../",
4815 "base": null,
4816 "href": "javascript:/",
4817 "origin": "null",
4818 "protocol": "javascript:",
4819 "username": "",
4820 "password": "",
4821 "host": "",
4822 "hostname": "",
4823 "port": "",
4824 "pathname": "/",
4825 "search": "",
4826 "hash": ""
4827 },
4828 {
4829 "input": "mailto:/../",
4830 "base": null,
4831 "href": "mailto:/",
4832 "origin": "null",
4833 "protocol": "mailto:",
4834 "username": "",
4835 "password": "",
4836 "host": "",
4837 "hostname": "",
4838 "port": "",
4839 "pathname": "/",
4840 "search": "",
4841 "hash": ""
4842 },
4843 "# unknown schemes and their hosts",
4844 {
4845 "input": "sc://ñ.test/",
4846 "base": null,
4847 "href": "sc://%C3%B1.test/",
4848 "origin": "null",
4849 "protocol": "sc:",
4850 "username": "",
4851 "password": "",
4852 "host": "%C3%B1.test",
4853 "hostname": "%C3%B1.test",
4854 "port": "",
4855 "pathname": "/",
4856 "search": "",
4857 "hash": ""
4858 },
4859 {
4860 "input": "sc://%/",
4861 "base": null,
4862 "href": "sc://%/",
4863 "protocol": "sc:",
4864 "username": "",
4865 "password": "",
4866 "host": "%",
4867 "hostname": "%",
4868 "port": "",
4869 "pathname": "/",
4870 "search": "",
4871 "hash": ""
4872 },
4873 {
4874 "input": "sc://@/",
4875 "base": null,
4876 "failure": true
4877 },
4878 {
4879 "input": "sc://te@s:t@/",
4880 "base": null,
4881 "failure": true
4882 },
4883 {
4884 "input": "sc://:/",
4885 "base": null,
4886 "failure": true
4887 },
4888 {
4889 "input": "sc://:12/",
4890 "base": null,
4891 "failure": true
4892 },
4893 {
4894 "input": "x",
4895 "base": "sc://ñ",
4896 "href": "sc://%C3%B1/x",
4897 "origin": "null",
4898 "protocol": "sc:",
4899 "username": "",
4900 "password": "",
4901 "host": "%C3%B1",
4902 "hostname": "%C3%B1",
4903 "port": "",
4904 "pathname": "/x",
4905 "search": "",
4906 "hash": ""
4907 },
4908 "# unknown schemes and backslashes",
4909 {
4910 "input": "sc:\\../",
4911 "base": null,
4912 "href": "sc:\\../",
4913 "origin": "null",
4914 "protocol": "sc:",
4915 "username": "",
4916 "password": "",
4917 "host": "",
4918 "hostname": "",
4919 "port": "",
4920 "pathname": "\\../",
4921 "search": "",
4922 "hash": ""
4923 },
4924 "# unknown scheme with path looking like a password",
4925 {
4926 "input": "sc::a@example.net",
4927 "base": null,
4928 "href": "sc::a@example.net",
4929 "origin": "null",
4930 "protocol": "sc:",
4931 "username": "",
4932 "password": "",
4933 "host": "",
4934 "hostname": "",
4935 "port": "",
4936 "pathname": ":a@example.net",
4937 "search": "",
4938 "hash": ""
4939 },
4940 "# unknown scheme with bogus percent-encoding",
4941 {
4942 "input": "wow:%NBD",
4943 "base": null,
4944 "href": "wow:%NBD",
4945 "origin": "null",
4946 "protocol": "wow:",
4947 "username": "",
4948 "password": "",
4949 "host": "",
4950 "hostname": "",
4951 "port": "",
4952 "pathname": "%NBD",
4953 "search": "",
4954 "hash": ""
4955 },
4956 {
4957 "input": "wow:%1G",
4958 "base": null,
4959 "href": "wow:%1G",
4960 "origin": "null",
4961 "protocol": "wow:",
4962 "username": "",
4963 "password": "",
4964 "host": "",
4965 "hostname": "",
4966 "port": "",
4967 "pathname": "%1G",
4968 "search": "",
4969 "hash": ""
4970 },
4971 "# unknown scheme with non-URL characters",
4972 {
4973 "input": "wow:\uFFFF",
4974 "base": null,
4975 "href": "wow:%EF%BF%BF",
4976 "origin": "null",
4977 "protocol": "wow:",
4978 "username": "",
4979 "password": "",
4980 "host": "",
4981 "hostname": "",
4982 "port": "",
4983 "pathname": "%EF%BF%BF",
4984 "search": "",
4985 "hash": ""
4986 },
4987 "Forbidden host code points",
4988 {
4989 "input": "sc://a\u0000b/",
4990 "base": null,
4991 "failure": true
4992 },
4993 {
4994 "input": "sc://a b/",
4995 "base": null,
4996 "failure": true
4997 },
4998 {
4999 "input": "sc://a<b",
5000 "base": null,
5001 "failure": true
5002 },
5003 {
5004 "input": "sc://a>b",
5005 "base": null,
5006 "failure": true
5007 },
5008 {
5009 "input": "sc://a[b/",
5010 "base": null,
5011 "failure": true
5012 },
5013 {
5014 "input": "sc://a\\b/",
5015 "base": null,
5016 "failure": true
5017 },
5018 {
5019 "input": "sc://a]b/",
5020 "base": null,
5021 "failure": true
5022 },
5023 {
5024 "input": "sc://a^b",
5025 "base": null,
5026 "failure": true
5027 },
5028 {
5029 "input": "sc://a|b/",
5030 "base": null,
5031 "failure": true
5032 },
5033 "Forbidden host codepoints: tabs and newlines are removed during preprocessing",
5034 {
5035 "input": "foo://ho\u0009st/",
5036 "base": null,
5037 "hash": "",
5038 "host": "host",
5039 "hostname": "host",
5040 "href":"foo://host/",
5041 "password": "",
5042 "pathname": "/",
5043 "port":"",
5044 "protocol": "foo:",
5045 "search": "",
5046 "username": ""
5047 },
5048 {
5049 "input": "foo://ho\u000Ast/",
5050 "base": null,
5051 "hash": "",
5052 "host": "host",
5053 "hostname": "host",
5054 "href":"foo://host/",
5055 "password": "",
5056 "pathname": "/",
5057 "port":"",
5058 "protocol": "foo:",
5059 "search": "",
5060 "username": ""
5061 },
5062 {
5063 "input": "foo://ho\u000Dst/",
5064 "base": null,
5065 "hash": "",
5066 "host": "host",
5067 "hostname": "host",
5068 "href":"foo://host/",
5069 "password": "",
5070 "pathname": "/",
5071 "port":"",
5072 "protocol": "foo:",
5073 "search": "",
5074 "username": ""
5075 },
5076 "Forbidden domain code-points",
5077 {
5078 "input": "http://a\u0000b/",
5079 "base": null,
5080 "failure": true
5081 },
5082 {
5083 "input": "http://a\u0001b/",
5084 "base": null,
5085 "failure": true
5086 },
5087 {
5088 "input": "http://a\u0002b/",
5089 "base": null,
5090 "failure": true
5091 },
5092 {
5093 "input": "http://a\u0003b/",
5094 "base": null,
5095 "failure": true
5096 },
5097 {
5098 "input": "http://a\u0004b/",
5099 "base": null,
5100 "failure": true
5101 },
5102 {
5103 "input": "http://a\u0005b/",
5104 "base": null,
5105 "failure": true
5106 },
5107 {
5108 "input": "http://a\u0006b/",
5109 "base": null,
5110 "failure": true
5111 },
5112 {
5113 "input": "http://a\u0007b/",
5114 "base": null,
5115 "failure": true
5116 },
5117 {
5118 "input": "http://a\u0008b/",
5119 "base": null,
5120 "failure": true
5121 },
5122 {
5123 "input": "http://a\u000Bb/",
5124 "base": null,
5125 "failure": true
5126 },
5127 {
5128 "input": "http://a\u000Cb/",
5129 "base": null,
5130 "failure": true
5131 },
5132 {
5133 "input": "http://a\u000Eb/",
5134 "base": null,
5135 "failure": true
5136 },
5137 {
5138 "input": "http://a\u000Fb/",
5139 "base": null,
5140 "failure": true
5141 },
5142 {
5143 "input": "http://a\u0010b/",
5144 "base": null,
5145 "failure": true
5146 },
5147 {
5148 "input": "http://a\u0011b/",
5149 "base": null,
5150 "failure": true
5151 },
5152 {
5153 "input": "http://a\u0012b/",
5154 "base": null,
5155 "failure": true
5156 },
5157 {
5158 "input": "http://a\u0013b/",
5159 "base": null,
5160 "failure": true
5161 },
5162 {
5163 "input": "http://a\u0014b/",
5164 "base": null,
5165 "failure": true
5166 },
5167 {
5168 "input": "http://a\u0015b/",
5169 "base": null,
5170 "failure": true
5171 },
5172 {
5173 "input": "http://a\u0016b/",
5174 "base": null,
5175 "failure": true
5176 },
5177 {
5178 "input": "http://a\u0017b/",
5179 "base": null,
5180 "failure": true
5181 },
5182 {
5183 "input": "http://a\u0018b/",
5184 "base": null,
5185 "failure": true
5186 },
5187 {
5188 "input": "http://a\u0019b/",
5189 "base": null,
5190 "failure": true
5191 },
5192 {
5193 "input": "http://a\u001Ab/",
5194 "base": null,
5195 "failure": true
5196 },
5197 {
5198 "input": "http://a\u001Bb/",
5199 "base": null,
5200 "failure": true
5201 },
5202 {
5203 "input": "http://a\u001Cb/",
5204 "base": null,
5205 "failure": true
5206 },
5207 {
5208 "input": "http://a\u001Db/",
5209 "base": null,
5210 "failure": true
5211 },
5212 {
5213 "input": "http://a\u001Eb/",
5214 "base": null,
5215 "failure": true
5216 },
5217 {
5218 "input": "http://a\u001Fb/",
5219 "base": null,
5220 "failure": true
5221 },
5222 {
5223 "input": "http://a b/",
5224 "base": null,
5225 "failure": true
5226 },
5227 {
5228 "input": "http://a%b/",
5229 "base": null,
5230 "failure": true
5231 },
5232 {
5233 "input": "http://a<b",
5234 "base": null,
5235 "failure": true
5236 },
5237 {
5238 "input": "http://a>b",
5239 "base": null,
5240 "failure": true
5241 },
5242 {
5243 "input": "http://a[b/",
5244 "base": null,
5245 "failure": true
5246 },
5247 {
5248 "input": "http://a]b/",
5249 "base": null,
5250 "failure": true
5251 },
5252 {
5253 "input": "http://a^b",
5254 "base": null,
5255 "failure": true
5256 },
5257 {
5258 "input": "http://a|b/",
5259 "base": null,
5260 "failure": true
5261 },
5262 {
5263 "input": "http://a\u007Fb/",
5264 "base": null,
5265 "failure": true
5266 },
5267 "Forbidden domain codepoints: tabs and newlines are removed during preprocessing",
5268 {
5269 "input": "http://ho\u0009st/",
5270 "base": null,
5271 "hash": "",
5272 "host": "host",
5273 "hostname": "host",
5274 "href":"http://host/",
5275 "password": "",
5276 "pathname": "/",
5277 "port":"",
5278 "protocol": "http:",
5279 "search": "",
5280 "username": ""
5281 },
5282 {
5283 "input": "http://ho\u000Ast/",
5284 "base": null,
5285 "hash": "",
5286 "host": "host",
5287 "hostname": "host",
5288 "href":"http://host/",
5289 "password": "",
5290 "pathname": "/",
5291 "port":"",
5292 "protocol": "http:",
5293 "search": "",
5294 "username": ""
5295 },
5296 {
5297 "input": "http://ho\u000Dst/",
5298 "base": null,
5299 "hash": "",
5300 "host": "host",
5301 "hostname": "host",
5302 "href":"http://host/",
5303 "password": "",
5304 "pathname": "/",
5305 "port":"",
5306 "protocol": "http:",
5307 "search": "",
5308 "username": ""
5309 },
5310 "Encoded forbidden domain codepoints in special URLs",
5311 {
5312 "input": "http://ho%00st/",
5313 "base": null,
5314 "failure": true
5315 },
5316 {
5317 "input": "http://ho%01st/",
5318 "base": null,
5319 "failure": true
5320 },
5321 {
5322 "input": "http://ho%02st/",
5323 "base": null,
5324 "failure": true
5325 },
5326 {
5327 "input": "http://ho%03st/",
5328 "base": null,
5329 "failure": true
5330 },
5331 {
5332 "input": "http://ho%04st/",
5333 "base": null,
5334 "failure": true
5335 },
5336 {
5337 "input": "http://ho%05st/",
5338 "base": null,
5339 "failure": true
5340 },
5341 {
5342 "input": "http://ho%06st/",
5343 "base": null,
5344 "failure": true
5345 },
5346 {
5347 "input": "http://ho%07st/",
5348 "base": null,
5349 "failure": true
5350 },
5351 {
5352 "input": "http://ho%08st/",
5353 "base": null,
5354 "failure": true
5355 },
5356 {
5357 "input": "http://ho%09st/",
5358 "base": null,
5359 "failure": true
5360 },
5361 {
5362 "input": "http://ho%0Ast/",
5363 "base": null,
5364 "failure": true
5365 },
5366 {
5367 "input": "http://ho%0Bst/",
5368 "base": null,
5369 "failure": true
5370 },
5371 {
5372 "input": "http://ho%0Cst/",
5373 "base": null,
5374 "failure": true
5375 },
5376 {
5377 "input": "http://ho%0Dst/",
5378 "base": null,
5379 "failure": true
5380 },
5381 {
5382 "input": "http://ho%0Est/",
5383 "base": null,
5384 "failure": true
5385 },
5386 {
5387 "input": "http://ho%0Fst/",
5388 "base": null,
5389 "failure": true
5390 },
5391 {
5392 "input": "http://ho%10st/",
5393 "base": null,
5394 "failure": true
5395 },
5396 {
5397 "input": "http://ho%11st/",
5398 "base": null,
5399 "failure": true
5400 },
5401 {
5402 "input": "http://ho%12st/",
5403 "base": null,
5404 "failure": true
5405 },
5406 {
5407 "input": "http://ho%13st/",
5408 "base": null,
5409 "failure": true
5410 },
5411 {
5412 "input": "http://ho%14st/",
5413 "base": null,
5414 "failure": true
5415 },
5416 {
5417 "input": "http://ho%15st/",
5418 "base": null,
5419 "failure": true
5420 },
5421 {
5422 "input": "http://ho%16st/",
5423 "base": null,
5424 "failure": true
5425 },
5426 {
5427 "input": "http://ho%17st/",
5428 "base": null,
5429 "failure": true
5430 },
5431 {
5432 "input": "http://ho%18st/",
5433 "base": null,
5434 "failure": true
5435 },
5436 {
5437 "input": "http://ho%19st/",
5438 "base": null,
5439 "failure": true
5440 },
5441 {
5442 "input": "http://ho%1Ast/",
5443 "base": null,
5444 "failure": true
5445 },
5446 {
5447 "input": "http://ho%1Bst/",
5448 "base": null,
5449 "failure": true
5450 },
5451 {
5452 "input": "http://ho%1Cst/",
5453 "base": null,
5454 "failure": true
5455 },
5456 {
5457 "input": "http://ho%1Dst/",
5458 "base": null,
5459 "failure": true
5460 },
5461 {
5462 "input": "http://ho%1Est/",
5463 "base": null,
5464 "failure": true
5465 },
5466 {
5467 "input": "http://ho%1Fst/",
5468 "base": null,
5469 "failure": true
5470 },
5471 {
5472 "input": "http://ho%20st/",
5473 "base": null,
5474 "failure": true
5475 },
5476 {
5477 "input": "http://ho%23st/",
5478 "base": null,
5479 "failure": true
5480 },
5481 {
5482 "input": "http://ho%25st/",
5483 "base": null,
5484 "failure": true
5485 },
5486 {
5487 "input": "http://ho%2Fst/",
5488 "base": null,
5489 "failure": true
5490 },
5491 {
5492 "input": "http://ho%3Ast/",
5493 "base": null,
5494 "failure": true
5495 },
5496 {
5497 "input": "http://ho%3Cst/",
5498 "base": null,
5499 "failure": true
5500 },
5501 {
5502 "input": "http://ho%3Est/",
5503 "base": null,
5504 "failure": true
5505 },
5506 {
5507 "input": "http://ho%3Fst/",
5508 "base": null,
5509 "failure": true
5510 },
5511 {
5512 "input": "http://ho%40st/",
5513 "base": null,
5514 "failure": true
5515 },
5516 {
5517 "input": "http://ho%5Bst/",
5518 "base": null,
5519 "failure": true
5520 },
5521 {
5522 "input": "http://ho%5Cst/",
5523 "base": null,
5524 "failure": true
5525 },
5526 {
5527 "input": "http://ho%5Dst/",
5528 "base": null,
5529 "failure": true
5530 },
5531 {
5532 "input": "http://ho%7Cst/",
5533 "base": null,
5534 "failure": true
5535 },
5536 {
5537 "input": "http://ho%7Fst/",
5538 "base": null,
5539 "failure": true
5540 },
5541 "Allowed host/domain code points",
5542 {
5543 "input": "http://!\"$&'()*+,-.;=_`{}~/",
5544 "base": null,
5545 "href": "http://!\"$&'()*+,-.;=_`{}~/",
5546 "origin": "http://!\"$&'()*+,-.;=_`{}~",
5547 "protocol": "http:",
5548 "username": "",
5549 "password": "",
5550 "host": "!\"$&'()*+,-.;=_`{}~",
5551 "hostname": "!\"$&'()*+,-.;=_`{}~",
5552 "port": "",
5553 "pathname": "/",
5554 "search": "",
5555 "hash": ""
5556 },
5557 {
5558 "input": "sc://\u0001\u0002\u0003\u0004\u0005\u0006\u0007\u0008\u000B\u000C\u000E\u000F\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F\u007F!\"$%&'()*+,-.;=_`{}~/",
5559 "base": null,
5560 "href": "sc://%01%02%03%04%05%06%07%08%0B%0C%0E%0F%10%11%12%13%14%15%16%17%18%19%1A%1B%1C%1D%1E%1F%7F!\"$%&'()*+,-.;=_`{}~/",
5561 "origin": "null",
5562 "protocol": "sc:",
5563 "username": "",
5564 "password": "",
5565 "host": "%01%02%03%04%05%06%07%08%0B%0C%0E%0F%10%11%12%13%14%15%16%17%18%19%1A%1B%1C%1D%1E%1F%7F!\"$%&'()*+,-.;=_`{}~",
5566 "hostname": "%01%02%03%04%05%06%07%08%0B%0C%0E%0F%10%11%12%13%14%15%16%17%18%19%1A%1B%1C%1D%1E%1F%7F!\"$%&'()*+,-.;=_`{}~",
5567 "port": "",
5568 "pathname": "/",
5569 "search": "",
5570 "hash": ""
5571 },
5572 "# Hosts and percent-encoding",
5573 {
5574 "input": "ftp://example.com%80/",
5575 "base": null,
5576 "failure": true
5577 },
5578 {
5579 "input": "ftp://example.com%A0/",
5580 "base": null,
5581 "failure": true
5582 },
5583 {
5584 "input": "https://example.com%80/",
5585 "base": null,
5586 "failure": true
5587 },
5588 {
5589 "input": "https://example.com%A0/",
5590 "base": null,
5591 "failure": true
5592 },
5593 {
5594 "input": "ftp://%e2%98%83",
5595 "base": null,
5596 "href": "ftp://xn--n3h/",
5597 "origin": "ftp://xn--n3h",
5598 "protocol": "ftp:",
5599 "username": "",
5600 "password": "",
5601 "host": "xn--n3h",
5602 "hostname": "xn--n3h",
5603 "port": "",
5604 "pathname": "/",
5605 "search": "",
5606 "hash": ""
5607 },
5608 {
5609 "input": "https://%e2%98%83",
5610 "base": null,
5611 "href": "https://xn--n3h/",
5612 "origin": "https://xn--n3h",
5613 "protocol": "https:",
5614 "username": "",
5615 "password": "",
5616 "host": "xn--n3h",
5617 "hostname": "xn--n3h",
5618 "port": "",
5619 "pathname": "/",
5620 "search": "",
5621 "hash": ""
5622 },
5623 "# tests from jsdom/whatwg-url designed for code coverage",
5624 {
5625 "input": "http://127.0.0.1:10100/relative_import.html",
5626 "base": null,
5627 "href": "http://127.0.0.1:10100/relative_import.html",
5628 "origin": "http://127.0.0.1:10100",
5629 "protocol": "http:",
5630 "username": "",
5631 "password": "",
5632 "host": "127.0.0.1:10100",
5633 "hostname": "127.0.0.1",
5634 "port": "10100",
5635 "pathname": "/relative_import.html",
5636 "search": "",
5637 "hash": ""
5638 },
5639 {
5640 "input": "http://facebook.com/?foo=%7B%22abc%22",
5641 "base": null,
5642 "href": "http://facebook.com/?foo=%7B%22abc%22",
5643 "origin": "http://facebook.com",
5644 "protocol": "http:",
5645 "username": "",
5646 "password": "",
5647 "host": "facebook.com",
5648 "hostname": "facebook.com",
5649 "port": "",
5650 "pathname": "/",
5651 "search": "?foo=%7B%22abc%22",
5652 "hash": ""
5653 },
5654 {
5655 "input": "https://localhost:3000/jqueryui@1.2.3",
5656 "base": null,
5657 "href": "https://localhost:3000/jqueryui@1.2.3",
5658 "origin": "https://localhost:3000",
5659 "protocol": "https:",
5660 "username": "",
5661 "password": "",
5662 "host": "localhost:3000",
5663 "hostname": "localhost",
5664 "port": "3000",
5665 "pathname": "/jqueryui@1.2.3",
5666 "search": "",
5667 "hash": ""
5668 },
5669 "# tab/LF/CR",
5670 {
5671 "input": "h\tt\nt\rp://h\to\ns\rt:9\t0\n0\r0/p\ta\nt\rh?q\tu\ne\rry#f\tr\na\rg",
5672 "base": null,
5673 "href": "http://host:9000/path?query#frag",
5674 "origin": "http://host:9000",
5675 "protocol": "http:",
5676 "username": "",
5677 "password": "",
5678 "host": "host:9000",
5679 "hostname": "host",
5680 "port": "9000",
5681 "pathname": "/path",
5682 "search": "?query",
5683 "hash": "#frag"
5684 },
5685 "# Stringification of URL.searchParams",
5686 {
5687 "input": "?a=b&c=d",
5688 "base": "http://example.org/foo/bar",
5689 "href": "http://example.org/foo/bar?a=b&c=d",
5690 "origin": "http://example.org",
5691 "protocol": "http:",
5692 "username": "",
5693 "password": "",
5694 "host": "example.org",
5695 "hostname": "example.org",
5696 "port": "",
5697 "pathname": "/foo/bar",
5698 "search": "?a=b&c=d",
5699 "searchParams": "a=b&c=d",
5700 "hash": ""
5701 },
5702 {
5703 "input": "??a=b&c=d",
5704 "base": "http://example.org/foo/bar",
5705 "href": "http://example.org/foo/bar??a=b&c=d",
5706 "origin": "http://example.org",
5707 "protocol": "http:",
5708 "username": "",
5709 "password": "",
5710 "host": "example.org",
5711 "hostname": "example.org",
5712 "port": "",
5713 "pathname": "/foo/bar",
5714 "search": "??a=b&c=d",
5715 "searchParams": "%3Fa=b&c=d",
5716 "hash": ""
5717 },
5718 "# Scheme only",
5719 {
5720 "input": "http:",
5721 "base": "http://example.org/foo/bar",
5722 "href": "http://example.org/foo/bar",
5723 "origin": "http://example.org",
5724 "protocol": "http:",
5725 "username": "",
5726 "password": "",
5727 "host": "example.org",
5728 "hostname": "example.org",
5729 "port": "",
5730 "pathname": "/foo/bar",
5731 "search": "",
5732 "searchParams": "",
5733 "hash": ""
5734 },
5735 {
5736 "input": "http:",
5737 "base": "https://example.org/foo/bar",
5738 "failure": true
5739 },
5740 {
5741 "input": "sc:",
5742 "base": "https://example.org/foo/bar",
5743 "href": "sc:",
5744 "origin": "null",
5745 "protocol": "sc:",
5746 "username": "",
5747 "password": "",
5748 "host": "",
5749 "hostname": "",
5750 "port": "",
5751 "pathname": "",
5752 "search": "",
5753 "searchParams": "",
5754 "hash": ""
5755 },
5756 "# Percent encoding of fragments",
5757 {
5758 "input": "http://foo.bar/baz?qux#foo\bbar",
5759 "base": null,
5760 "href": "http://foo.bar/baz?qux#foo%08bar",
5761 "origin": "http://foo.bar",
5762 "protocol": "http:",
5763 "username": "",
5764 "password": "",
5765 "host": "foo.bar",
5766 "hostname": "foo.bar",
5767 "port": "",
5768 "pathname": "/baz",
5769 "search": "?qux",
5770 "searchParams": "qux=",
5771 "hash": "#foo%08bar"
5772 },
5773 {
5774 "input": "http://foo.bar/baz?qux#foo\"bar",
5775 "base": null,
5776 "href": "http://foo.bar/baz?qux#foo%22bar",
5777 "origin": "http://foo.bar",
5778 "protocol": "http:",
5779 "username": "",
5780 "password": "",
5781 "host": "foo.bar",
5782 "hostname": "foo.bar",
5783 "port": "",
5784 "pathname": "/baz",
5785 "search": "?qux",
5786 "searchParams": "qux=",
5787 "hash": "#foo%22bar"
5788 },
5789 {
5790 "input": "http://foo.bar/baz?qux#foo<bar",
5791 "base": null,
5792 "href": "http://foo.bar/baz?qux#foo%3Cbar",
5793 "origin": "http://foo.bar",
5794 "protocol": "http:",
5795 "username": "",
5796 "password": "",
5797 "host": "foo.bar",
5798 "hostname": "foo.bar",
5799 "port": "",
5800 "pathname": "/baz",
5801 "search": "?qux",
5802 "searchParams": "qux=",
5803 "hash": "#foo%3Cbar"
5804 },
5805 {
5806 "input": "http://foo.bar/baz?qux#foo>bar",
5807 "base": null,
5808 "href": "http://foo.bar/baz?qux#foo%3Ebar",
5809 "origin": "http://foo.bar",
5810 "protocol": "http:",
5811 "username": "",
5812 "password": "",
5813 "host": "foo.bar",
5814 "hostname": "foo.bar",
5815 "port": "",
5816 "pathname": "/baz",
5817 "search": "?qux",
5818 "searchParams": "qux=",
5819 "hash": "#foo%3Ebar"
5820 },
5821 {
5822 "input": "http://foo.bar/baz?qux#foo`bar",
5823 "base": null,
5824 "href": "http://foo.bar/baz?qux#foo%60bar",
5825 "origin": "http://foo.bar",
5826 "protocol": "http:",
5827 "username": "",
5828 "password": "",
5829 "host": "foo.bar",
5830 "hostname": "foo.bar",
5831 "port": "",
5832 "pathname": "/baz",
5833 "search": "?qux",
5834 "searchParams": "qux=",
5835 "hash": "#foo%60bar"
5836 },
5837 "# IPv4 parsing (via https://github.com/nodejs/node/pull/10317)",
5838 {
5839 "input": "http://1.2.3.4/",
5840 "base": "http://other.com/",
5841 "href": "http://1.2.3.4/",
5842 "origin": "http://1.2.3.4",
5843 "protocol": "http:",
5844 "username": "",
5845 "password": "",
5846 "host": "1.2.3.4",
5847 "hostname": "1.2.3.4",
5848 "port": "",
5849 "pathname": "/",
5850 "search": "",
5851 "hash": ""
5852 },
5853 {
5854 "input": "http://1.2.3.4./",
5855 "base": "http://other.com/",
5856 "href": "http://1.2.3.4/",
5857 "origin": "http://1.2.3.4",
5858 "protocol": "http:",
5859 "username": "",
5860 "password": "",
5861 "host": "1.2.3.4",
5862 "hostname": "1.2.3.4",
5863 "port": "",
5864 "pathname": "/",
5865 "search": "",
5866 "hash": ""
5867 },
5868 {
5869 "input": "http://192.168.257",
5870 "base": "http://other.com/",
5871 "href": "http://192.168.1.1/",
5872 "origin": "http://192.168.1.1",
5873 "protocol": "http:",
5874 "username": "",
5875 "password": "",
5876 "host": "192.168.1.1",
5877 "hostname": "192.168.1.1",
5878 "port": "",
5879 "pathname": "/",
5880 "search": "",
5881 "hash": ""
5882 },
5883 {
5884 "input": "http://192.168.257.",
5885 "base": "http://other.com/",
5886 "href": "http://192.168.1.1/",
5887 "origin": "http://192.168.1.1",
5888 "protocol": "http:",
5889 "username": "",
5890 "password": "",
5891 "host": "192.168.1.1",
5892 "hostname": "192.168.1.1",
5893 "port": "",
5894 "pathname": "/",
5895 "search": "",
5896 "hash": ""
5897 },
5898 {
5899 "input": "http://192.168.257.com",
5900 "base": "http://other.com/",
5901 "href": "http://192.168.257.com/",
5902 "origin": "http://192.168.257.com",
5903 "protocol": "http:",
5904 "username": "",
5905 "password": "",
5906 "host": "192.168.257.com",
5907 "hostname": "192.168.257.com",
5908 "port": "",
5909 "pathname": "/",
5910 "search": "",
5911 "hash": ""
5912 },
5913 {
5914 "input": "http://256",
5915 "base": "http://other.com/",
5916 "href": "http://0.0.1.0/",
5917 "origin": "http://0.0.1.0",
5918 "protocol": "http:",
5919 "username": "",
5920 "password": "",
5921 "host": "0.0.1.0",
5922 "hostname": "0.0.1.0",
5923 "port": "",
5924 "pathname": "/",
5925 "search": "",
5926 "hash": ""
5927 },
5928 {
5929 "input": "http://256.com",
5930 "base": "http://other.com/",
5931 "href": "http://256.com/",
5932 "origin": "http://256.com",
5933 "protocol": "http:",
5934 "username": "",
5935 "password": "",
5936 "host": "256.com",
5937 "hostname": "256.com",
5938 "port": "",
5939 "pathname": "/",
5940 "search": "",
5941 "hash": ""
5942 },
5943 {
5944 "input": "http://999999999",
5945 "base": "http://other.com/",
5946 "href": "http://59.154.201.255/",
5947 "origin": "http://59.154.201.255",
5948 "protocol": "http:",
5949 "username": "",
5950 "password": "",
5951 "host": "59.154.201.255",
5952 "hostname": "59.154.201.255",
5953 "port": "",
5954 "pathname": "/",
5955 "search": "",
5956 "hash": ""
5957 },
5958 {
5959 "input": "http://999999999.",
5960 "base": "http://other.com/",
5961 "href": "http://59.154.201.255/",
5962 "origin": "http://59.154.201.255",
5963 "protocol": "http:",
5964 "username": "",
5965 "password": "",
5966 "host": "59.154.201.255",
5967 "hostname": "59.154.201.255",
5968 "port": "",
5969 "pathname": "/",
5970 "search": "",
5971 "hash": ""
5972 },
5973 {
5974 "input": "http://999999999.com",
5975 "base": "http://other.com/",
5976 "href": "http://999999999.com/",
5977 "origin": "http://999999999.com",
5978 "protocol": "http:",
5979 "username": "",
5980 "password": "",
5981 "host": "999999999.com",
5982 "hostname": "999999999.com",
5983 "port": "",
5984 "pathname": "/",
5985 "search": "",
5986 "hash": ""
5987 },
5988 {
5989 "input": "http://10000000000",
5990 "base": "http://other.com/",
5991 "failure": true
5992 },
5993 {
5994 "input": "http://10000000000.com",
5995 "base": "http://other.com/",
5996 "href": "http://10000000000.com/",
5997 "origin": "http://10000000000.com",
5998 "protocol": "http:",
5999 "username": "",
6000 "password": "",
6001 "host": "10000000000.com",
6002 "hostname": "10000000000.com",
6003 "port": "",
6004 "pathname": "/",
6005 "search": "",
6006 "hash": ""
6007 },
6008 {
6009 "input": "http://4294967295",
6010 "base": "http://other.com/",
6011 "href": "http://255.255.255.255/",
6012 "origin": "http://255.255.255.255",
6013 "protocol": "http:",
6014 "username": "",
6015 "password": "",
6016 "host": "255.255.255.255",
6017 "hostname": "255.255.255.255",
6018 "port": "",
6019 "pathname": "/",
6020 "search": "",
6021 "hash": ""
6022 },
6023 {
6024 "input": "http://4294967296",
6025 "base": "http://other.com/",
6026 "failure": true
6027 },
6028 {
6029 "input": "http://0xffffffff",
6030 "base": "http://other.com/",
6031 "href": "http://255.255.255.255/",
6032 "origin": "http://255.255.255.255",
6033 "protocol": "http:",
6034 "username": "",
6035 "password": "",
6036 "host": "255.255.255.255",
6037 "hostname": "255.255.255.255",
6038 "port": "",
6039 "pathname": "/",
6040 "search": "",
6041 "hash": ""
6042 },
6043 {
6044 "input": "http://0xffffffff1",
6045 "base": "http://other.com/",
6046 "failure": true
6047 },
6048 {
6049 "input": "http://256.256.256.256",
6050 "base": "http://other.com/",
6051 "failure": true
6052 },
6053 {
6054 "input": "https://0x.0x.0",
6055 "base": null,
6056 "href": "https://0.0.0.0/",
6057 "origin": "https://0.0.0.0",
6058 "protocol": "https:",
6059 "username": "",
6060 "password": "",
6061 "host": "0.0.0.0",
6062 "hostname": "0.0.0.0",
6063 "port": "",
6064 "pathname": "/",
6065 "search": "",
6066 "hash": ""
6067 },
6068 "More IPv4 parsing (via https://github.com/jsdom/whatwg-url/issues/92)",
6069 {
6070 "input": "https://0x100000000/test",
6071 "base": null,
6072 "failure": true
6073 },
6074 {
6075 "input": "https://256.0.0.1/test",
6076 "base": null,
6077 "failure": true
6078 },
6079 "# file URLs containing percent-encoded Windows drive letters (shouldn't work)",
6080 {
6081 "input": "file:///C%3A/",
6082 "base": null,
6083 "href": "file:///C%3A/",
6084 "protocol": "file:",
6085 "username": "",
6086 "password": "",
6087 "host": "",
6088 "hostname": "",
6089 "port": "",
6090 "pathname": "/C%3A/",
6091 "search": "",
6092 "hash": ""
6093 },
6094 {
6095 "input": "file:///C%7C/",
6096 "base": null,
6097 "href": "file:///C%7C/",
6098 "protocol": "file:",
6099 "username": "",
6100 "password": "",
6101 "host": "",
6102 "hostname": "",
6103 "port": "",
6104 "pathname": "/C%7C/",
6105 "search": "",
6106 "hash": ""
6107 },
6108 {
6109 "input": "file://%43%3A",
6110 "base": null,
6111 "failure": true
6112 },
6113 {
6114 "input": "file://%43%7C",
6115 "base": null,
6116 "failure": true
6117 },
6118 {
6119 "input": "file://%43|",
6120 "base": null,
6121 "failure": true
6122 },
6123 {
6124 "input": "file://C%7C",
6125 "base": null,
6126 "failure": true
6127 },
6128 {
6129 "input": "file://%43%7C/",
6130 "base": null,
6131 "failure": true
6132 },
6133 {
6134 "input": "https://%43%7C/",
6135 "base": null,
6136 "failure": true
6137 },
6138 {
6139 "input": "asdf://%43|/",
6140 "base": null,
6141 "failure": true
6142 },
6143 {
6144 "input": "asdf://%43%7C/",
6145 "base": null,
6146 "href": "asdf://%43%7C/",
6147 "origin": "null",
6148 "protocol": "asdf:",
6149 "username": "",
6150 "password": "",
6151 "host": "%43%7C",
6152 "hostname": "%43%7C",
6153 "port": "",
6154 "pathname": "/",
6155 "search": "",
6156 "hash": ""
6157 },
6158 "# file URLs relative to other file URLs (via https://github.com/jsdom/whatwg-url/pull/60)",
6159 {
6160 "input": "pix/submit.gif",
6161 "base": "file:///C:/Users/Domenic/Dropbox/GitHub/tmpvar/jsdom/test/level2/html/files/anchor.html",
6162 "href": "file:///C:/Users/Domenic/Dropbox/GitHub/tmpvar/jsdom/test/level2/html/files/pix/submit.gif",
6163 "protocol": "file:",
6164 "username": "",
6165 "password": "",
6166 "host": "",
6167 "hostname": "",
6168 "port": "",
6169 "pathname": "/C:/Users/Domenic/Dropbox/GitHub/tmpvar/jsdom/test/level2/html/files/pix/submit.gif",
6170 "search": "",
6171 "hash": ""
6172 },
6173 {
6174 "input": "..",
6175 "base": "file:///C:/",
6176 "href": "file:///C:/",
6177 "protocol": "file:",
6178 "username": "",
6179 "password": "",
6180 "host": "",
6181 "hostname": "",
6182 "port": "",
6183 "pathname": "/C:/",
6184 "search": "",
6185 "hash": ""
6186 },
6187 {
6188 "input": "..",
6189 "base": "file:///",
6190 "href": "file:///",
6191 "protocol": "file:",
6192 "username": "",
6193 "password": "",
6194 "host": "",
6195 "hostname": "",
6196 "port": "",
6197 "pathname": "/",
6198 "search": "",
6199 "hash": ""
6200 },
6201 "# More file URL tests by zcorpan and annevk",
6202 {
6203 "input": "/",
6204 "base": "file:///C:/a/b",
6205 "href": "file:///C:/",
6206 "protocol": "file:",
6207 "username": "",
6208 "password": "",
6209 "host": "",
6210 "hostname": "",
6211 "port": "",
6212 "pathname": "/C:/",
6213 "search": "",
6214 "hash": ""
6215 },
6216 {
6217 "input": "/",
6218 "base": "file://h/C:/a/b",
6219 "href": "file://h/C:/",
6220 "protocol": "file:",
6221 "username": "",
6222 "password": "",
6223 "host": "h",
6224 "hostname": "h",
6225 "port": "",
6226 "pathname": "/C:/",
6227 "search": "",
6228 "hash": ""
6229 },
6230 {
6231 "input": "/",
6232 "base": "file://h/a/b",
6233 "href": "file://h/",
6234 "protocol": "file:",
6235 "username": "",
6236 "password": "",
6237 "host": "h",
6238 "hostname": "h",
6239 "port": "",
6240 "pathname": "/",
6241 "search": "",
6242 "hash": ""
6243 },
6244 {
6245 "input": "//d:",
6246 "base": "file:///C:/a/b",
6247 "href": "file:///d:",
6248 "protocol": "file:",
6249 "username": "",
6250 "password": "",
6251 "host": "",
6252 "hostname": "",
6253 "port": "",
6254 "pathname": "/d:",
6255 "search": "",
6256 "hash": ""
6257 },
6258 {
6259 "input": "//d:/..",
6260 "base": "file:///C:/a/b",
6261 "href": "file:///d:/",
6262 "protocol": "file:",
6263 "username": "",
6264 "password": "",
6265 "host": "",
6266 "hostname": "",
6267 "port": "",
6268 "pathname": "/d:/",
6269 "search": "",
6270 "hash": ""
6271 },
6272 {
6273 "input": "..",
6274 "base": "file:///ab:/",
6275 "href": "file:///",
6276 "protocol": "file:",
6277 "username": "",
6278 "password": "",
6279 "host": "",
6280 "hostname": "",
6281 "port": "",
6282 "pathname": "/",
6283 "search": "",
6284 "hash": ""
6285 },
6286 {
6287 "input": "..",
6288 "base": "file:///1:/",
6289 "href": "file:///",
6290 "protocol": "file:",
6291 "username": "",
6292 "password": "",
6293 "host": "",
6294 "hostname": "",
6295 "port": "",
6296 "pathname": "/",
6297 "search": "",
6298 "hash": ""
6299 },
6300 {
6301 "input": "",
6302 "base": "file:///test?test#test",
6303 "href": "file:///test?test",
6304 "protocol": "file:",
6305 "username": "",
6306 "password": "",
6307 "host": "",
6308 "hostname": "",
6309 "port": "",
6310 "pathname": "/test",
6311 "search": "?test",
6312 "hash": ""
6313 },
6314 {
6315 "input": "file:",
6316 "base": "file:///test?test#test",
6317 "href": "file:///test?test",
6318 "protocol": "file:",
6319 "username": "",
6320 "password": "",
6321 "host": "",
6322 "hostname": "",
6323 "port": "",
6324 "pathname": "/test",
6325 "search": "?test",
6326 "hash": ""
6327 },
6328 {
6329 "input": "?x",
6330 "base": "file:///test?test#test",
6331 "href": "file:///test?x",
6332 "protocol": "file:",
6333 "username": "",
6334 "password": "",
6335 "host": "",
6336 "hostname": "",
6337 "port": "",
6338 "pathname": "/test",
6339 "search": "?x",
6340 "hash": ""
6341 },
6342 {
6343 "input": "file:?x",
6344 "base": "file:///test?test#test",
6345 "href": "file:///test?x",
6346 "protocol": "file:",
6347 "username": "",
6348 "password": "",
6349 "host": "",
6350 "hostname": "",
6351 "port": "",
6352 "pathname": "/test",
6353 "search": "?x",
6354 "hash": ""
6355 },
6356 {
6357 "input": "#x",
6358 "base": "file:///test?test#test",
6359 "href": "file:///test?test#x",
6360 "protocol": "file:",
6361 "username": "",
6362 "password": "",
6363 "host": "",
6364 "hostname": "",
6365 "port": "",
6366 "pathname": "/test",
6367 "search": "?test",
6368 "hash": "#x"
6369 },
6370 {
6371 "input": "file:#x",
6372 "base": "file:///test?test#test",
6373 "href": "file:///test?test#x",
6374 "protocol": "file:",
6375 "username": "",
6376 "password": "",
6377 "host": "",
6378 "hostname": "",
6379 "port": "",
6380 "pathname": "/test",
6381 "search": "?test",
6382 "hash": "#x"
6383 },
6384 "# File URLs and many (back)slashes",
6385 {
6386 "input": "file:\\\\//",
6387 "base": null,
6388 "href": "file:////",
6389 "protocol": "file:",
6390 "username": "",
6391 "password": "",
6392 "host": "",
6393 "hostname": "",
6394 "port": "",
6395 "pathname": "//",
6396 "search": "",
6397 "hash": ""
6398 },
6399 {
6400 "input": "file:\\\\\\\\",
6401 "base": null,
6402 "href": "file:////",
6403 "protocol": "file:",
6404 "username": "",
6405 "password": "",
6406 "host": "",
6407 "hostname": "",
6408 "port": "",
6409 "pathname": "//",
6410 "search": "",
6411 "hash": ""
6412 },
6413 {
6414 "input": "file:\\\\\\\\?fox",
6415 "base": null,
6416 "href": "file:////?fox",
6417 "protocol": "file:",
6418 "username": "",
6419 "password": "",
6420 "host": "",
6421 "hostname": "",
6422 "port": "",
6423 "pathname": "//",
6424 "search": "?fox",
6425 "hash": ""
6426 },
6427 {
6428 "input": "file:\\\\\\\\#guppy",
6429 "base": null,
6430 "href": "file:////#guppy",
6431 "protocol": "file:",
6432 "username": "",
6433 "password": "",
6434 "host": "",
6435 "hostname": "",
6436 "port": "",
6437 "pathname": "//",
6438 "search": "",
6439 "hash": "#guppy"
6440 },
6441 {
6442 "input": "file://spider///",
6443 "base": null,
6444 "href": "file://spider///",
6445 "protocol": "file:",
6446 "username": "",
6447 "password": "",
6448 "host": "spider",
6449 "hostname": "spider",
6450 "port": "",
6451 "pathname": "///",
6452 "search": "",
6453 "hash": ""
6454 },
6455 {
6456 "input": "file:\\\\localhost//",
6457 "base": null,
6458 "href": "file:////",
6459 "protocol": "file:",
6460 "username": "",
6461 "password": "",
6462 "host": "",
6463 "hostname": "",
6464 "port": "",
6465 "pathname": "//",
6466 "search": "",
6467 "hash": ""
6468 },
6469 {
6470 "input": "file:///localhost//cat",
6471 "base": null,
6472 "href": "file:///localhost//cat",
6473 "protocol": "file:",
6474 "username": "",
6475 "password": "",
6476 "host": "",
6477 "hostname": "",
6478 "port": "",
6479 "pathname": "/localhost//cat",
6480 "search": "",
6481 "hash": ""
6482 },
6483 {
6484 "input": "file://\\/localhost//cat",
6485 "base": null,
6486 "href": "file:////localhost//cat",
6487 "protocol": "file:",
6488 "username": "",
6489 "password": "",
6490 "host": "",
6491 "hostname": "",
6492 "port": "",
6493 "pathname": "//localhost//cat",
6494 "search": "",
6495 "hash": ""
6496 },
6497 {
6498 "input": "file://localhost//a//../..//",
6499 "base": null,
6500 "href": "file://///",
6501 "protocol": "file:",
6502 "username": "",
6503 "password": "",
6504 "host": "",
6505 "hostname": "",
6506 "port": "",
6507 "pathname": "///",
6508 "search": "",
6509 "hash": ""
6510 },
6511 {
6512 "input": "/////mouse",
6513 "base": "file:///elephant",
6514 "href": "file://///mouse",
6515 "protocol": "file:",
6516 "username": "",
6517 "password": "",
6518 "host": "",
6519 "hostname": "",
6520 "port": "",
6521 "pathname": "///mouse",
6522 "search": "",
6523 "hash": ""
6524 },
6525 {
6526 "input": "\\//pig",
6527 "base": "file://lion/",
6528 "href": "file:///pig",
6529 "protocol": "file:",
6530 "username": "",
6531 "password": "",
6532 "host": "",
6533 "hostname": "",
6534 "port": "",
6535 "pathname": "/pig",
6536 "search": "",
6537 "hash": ""
6538 },
6539 {
6540 "input": "\\/localhost//pig",
6541 "base": "file://lion/",
6542 "href": "file:////pig",
6543 "protocol": "file:",
6544 "username": "",
6545 "password": "",
6546 "host": "",
6547 "hostname": "",
6548 "port": "",
6549 "pathname": "//pig",
6550 "search": "",
6551 "hash": ""
6552 },
6553 {
6554 "input": "//localhost//pig",
6555 "base": "file://lion/",
6556 "href": "file:////pig",
6557 "protocol": "file:",
6558 "username": "",
6559 "password": "",
6560 "host": "",
6561 "hostname": "",
6562 "port": "",
6563 "pathname": "//pig",
6564 "search": "",
6565 "hash": ""
6566 },
6567 {
6568 "input": "/..//localhost//pig",
6569 "base": "file://lion/",
6570 "href": "file://lion//localhost//pig",
6571 "protocol": "file:",
6572 "username": "",
6573 "password": "",
6574 "host": "lion",
6575 "hostname": "lion",
6576 "port": "",
6577 "pathname": "//localhost//pig",
6578 "search": "",
6579 "hash": ""
6580 },
6581 {
6582 "input": "file://",
6583 "base": "file://ape/",
6584 "href": "file:///",
6585 "protocol": "file:",
6586 "username": "",
6587 "password": "",
6588 "host": "",
6589 "hostname": "",
6590 "port": "",
6591 "pathname": "/",
6592 "search": "",
6593 "hash": ""
6594 },
6595 "# File URLs with non-empty hosts",
6596 {
6597 "input": "/rooibos",
6598 "base": "file://tea/",
6599 "href": "file://tea/rooibos",
6600 "protocol": "file:",
6601 "username": "",
6602 "password": "",
6603 "host": "tea",
6604 "hostname": "tea",
6605 "port": "",
6606 "pathname": "/rooibos",
6607 "search": "",
6608 "hash": ""
6609 },
6610 {
6611 "input": "/?chai",
6612 "base": "file://tea/",
6613 "href": "file://tea/?chai",
6614 "protocol": "file:",
6615 "username": "",
6616 "password": "",
6617 "host": "tea",
6618 "hostname": "tea",
6619 "port": "",
6620 "pathname": "/",
6621 "search": "?chai",
6622 "hash": ""
6623 },
6624 "# Windows drive letter handling with the 'file:' base URL",
6625 {
6626 "input": "C|",
6627 "base": "file://host/dir/file",
6628 "href": "file://host/C:",
6629 "protocol": "file:",
6630 "username": "",
6631 "password": "",
6632 "host": "host",
6633 "hostname": "host",
6634 "port": "",
6635 "pathname": "/C:",
6636 "search": "",
6637 "hash": ""
6638 },
6639 {
6640 "input": "C|",
6641 "base": "file://host/D:/dir1/dir2/file",
6642 "href": "file://host/C:",
6643 "protocol": "file:",
6644 "username": "",
6645 "password": "",
6646 "host": "host",
6647 "hostname": "host",
6648 "port": "",
6649 "pathname": "/C:",
6650 "search": "",
6651 "hash": ""
6652 },
6653 {
6654 "input": "C|#",
6655 "base": "file://host/dir/file",
6656 "href": "file://host/C:#",
6657 "protocol": "file:",
6658 "username": "",
6659 "password": "",
6660 "host": "host",
6661 "hostname": "host",
6662 "port": "",
6663 "pathname": "/C:",
6664 "search": "",
6665 "hash": ""
6666 },
6667 {
6668 "input": "C|?",
6669 "base": "file://host/dir/file",
6670 "href": "file://host/C:?",
6671 "protocol": "file:",
6672 "username": "",
6673 "password": "",
6674 "host": "host",
6675 "hostname": "host",
6676 "port": "",
6677 "pathname": "/C:",
6678 "search": "",
6679 "hash": ""
6680 },
6681 {
6682 "input": "C|/",
6683 "base": "file://host/dir/file",
6684 "href": "file://host/C:/",
6685 "protocol": "file:",
6686 "username": "",
6687 "password": "",
6688 "host": "host",
6689 "hostname": "host",
6690 "port": "",
6691 "pathname": "/C:/",
6692 "search": "",
6693 "hash": ""
6694 },
6695 {
6696 "input": "C|\n/",
6697 "base": "file://host/dir/file",
6698 "href": "file://host/C:/",
6699 "protocol": "file:",
6700 "username": "",
6701 "password": "",
6702 "host": "host",
6703 "hostname": "host",
6704 "port": "",
6705 "pathname": "/C:/",
6706 "search": "",
6707 "hash": ""
6708 },
6709 {
6710 "input": "C|\\",
6711 "base": "file://host/dir/file",
6712 "href": "file://host/C:/",
6713 "protocol": "file:",
6714 "username": "",
6715 "password": "",
6716 "host": "host",
6717 "hostname": "host",
6718 "port": "",
6719 "pathname": "/C:/",
6720 "search": "",
6721 "hash": ""
6722 },
6723 {
6724 "input": "C",
6725 "base": "file://host/dir/file",
6726 "href": "file://host/dir/C",
6727 "protocol": "file:",
6728 "username": "",
6729 "password": "",
6730 "host": "host",
6731 "hostname": "host",
6732 "port": "",
6733 "pathname": "/dir/C",
6734 "search": "",
6735 "hash": ""
6736 },
6737 {
6738 "input": "C|a",
6739 "base": "file://host/dir/file",
6740 "href": "file://host/dir/C|a",
6741 "protocol": "file:",
6742 "username": "",
6743 "password": "",
6744 "host": "host",
6745 "hostname": "host",
6746 "port": "",
6747 "pathname": "/dir/C|a",
6748 "search": "",
6749 "hash": ""
6750 },
6751 "# Windows drive letter quirk in the file slash state",
6752 {
6753 "input": "/c:/foo/bar",
6754 "base": "file:///c:/baz/qux",
6755 "href": "file:///c:/foo/bar",
6756 "protocol": "file:",
6757 "username": "",
6758 "password": "",
6759 "host": "",
6760 "hostname": "",
6761 "port": "",
6762 "pathname": "/c:/foo/bar",
6763 "search": "",
6764 "hash": ""
6765 },
6766 {
6767 "input": "/c|/foo/bar",
6768 "base": "file:///c:/baz/qux",
6769 "href": "file:///c:/foo/bar",
6770 "protocol": "file:",
6771 "username": "",
6772 "password": "",
6773 "host": "",
6774 "hostname": "",
6775 "port": "",
6776 "pathname": "/c:/foo/bar",
6777 "search": "",
6778 "hash": ""
6779 },
6780 {
6781 "input": "file:\\c:\\foo\\bar",
6782 "base": "file:///c:/baz/qux",
6783 "href": "file:///c:/foo/bar",
6784 "protocol": "file:",
6785 "username": "",
6786 "password": "",
6787 "host": "",
6788 "hostname": "",
6789 "port": "",
6790 "pathname": "/c:/foo/bar",
6791 "search": "",
6792 "hash": ""
6793 },
6794 {
6795 "input": "/c:/foo/bar",
6796 "base": "file://host/path",
6797 "href": "file://host/c:/foo/bar",
6798 "protocol": "file:",
6799 "username": "",
6800 "password": "",
6801 "host": "host",
6802 "hostname": "host",
6803 "port": "",
6804 "pathname": "/c:/foo/bar",
6805 "search": "",
6806 "hash": ""
6807 },
6808 "# Do not drop the host in the presence of a drive letter",
6809 {
6810 "input": "file://example.net/C:/",
6811 "base": null,
6812 "href": "file://example.net/C:/",
6813 "protocol": "file:",
6814 "username": "",
6815 "password": "",
6816 "host": "example.net",
6817 "hostname": "example.net",
6818 "port": "",
6819 "pathname": "/C:/",
6820 "search": "",
6821 "hash": ""
6822 },
6823 {
6824 "input": "file://1.2.3.4/C:/",
6825 "base": null,
6826 "href": "file://1.2.3.4/C:/",
6827 "protocol": "file:",
6828 "username": "",
6829 "password": "",
6830 "host": "1.2.3.4",
6831 "hostname": "1.2.3.4",
6832 "port": "",
6833 "pathname": "/C:/",
6834 "search": "",
6835 "hash": ""
6836 },
6837 {
6838 "input": "file://[1::8]/C:/",
6839 "base": null,
6840 "href": "file://[1::8]/C:/",
6841 "protocol": "file:",
6842 "username": "",
6843 "password": "",
6844 "host": "[1::8]",
6845 "hostname": "[1::8]",
6846 "port": "",
6847 "pathname": "/C:/",
6848 "search": "",
6849 "hash": ""
6850 },
6851 "# Copy the host from the base URL in the following cases",
6852 {
6853 "input": "C|/",
6854 "base": "file://host/",
6855 "href": "file://host/C:/",
6856 "protocol": "file:",
6857 "username": "",
6858 "password": "",
6859 "host": "host",
6860 "hostname": "host",
6861 "port": "",
6862 "pathname": "/C:/",
6863 "search": "",
6864 "hash": ""
6865 },
6866 {
6867 "input": "/C:/",
6868 "base": "file://host/",
6869 "href": "file://host/C:/",
6870 "protocol": "file:",
6871 "username": "",
6872 "password": "",
6873 "host": "host",
6874 "hostname": "host",
6875 "port": "",
6876 "pathname": "/C:/",
6877 "search": "",
6878 "hash": ""
6879 },
6880 {
6881 "input": "file:C:/",
6882 "base": "file://host/",
6883 "href": "file://host/C:/",
6884 "protocol": "file:",
6885 "username": "",
6886 "password": "",
6887 "host": "host",
6888 "hostname": "host",
6889 "port": "",
6890 "pathname": "/C:/",
6891 "search": "",
6892 "hash": ""
6893 },
6894 {
6895 "input": "file:/C:/",
6896 "base": "file://host/",
6897 "href": "file://host/C:/",
6898 "protocol": "file:",
6899 "username": "",
6900 "password": "",
6901 "host": "host",
6902 "hostname": "host",
6903 "port": "",
6904 "pathname": "/C:/",
6905 "search": "",
6906 "hash": ""
6907 },
6908 "# Copy the empty host from the input in the following cases",
6909 {
6910 "input": "//C:/",
6911 "base": "file://host/",
6912 "href": "file:///C:/",
6913 "protocol": "file:",
6914 "username": "",
6915 "password": "",
6916 "host": "",
6917 "hostname": "",
6918 "port": "",
6919 "pathname": "/C:/",
6920 "search": "",
6921 "hash": ""
6922 },
6923 {
6924 "input": "file://C:/",
6925 "base": "file://host/",
6926 "href": "file:///C:/",
6927 "protocol": "file:",
6928 "username": "",
6929 "password": "",
6930 "host": "",
6931 "hostname": "",
6932 "port": "",
6933 "pathname": "/C:/",
6934 "search": "",
6935 "hash": ""
6936 },
6937 {
6938 "input": "///C:/",
6939 "base": "file://host/",
6940 "href": "file:///C:/",
6941 "protocol": "file:",
6942 "username": "",
6943 "password": "",
6944 "host": "",
6945 "hostname": "",
6946 "port": "",
6947 "pathname": "/C:/",
6948 "search": "",
6949 "hash": ""
6950 },
6951 {
6952 "input": "file:///C:/",
6953 "base": "file://host/",
6954 "href": "file:///C:/",
6955 "protocol": "file:",
6956 "username": "",
6957 "password": "",
6958 "host": "",
6959 "hostname": "",
6960 "port": "",
6961 "pathname": "/C:/",
6962 "search": "",
6963 "hash": ""
6964 },
6965 "# Windows drive letter quirk (no host)",
6966 {
6967 "input": "file:/C|/",
6968 "base": null,
6969 "href": "file:///C:/",
6970 "protocol": "file:",
6971 "username": "",
6972 "password": "",
6973 "host": "",
6974 "hostname": "",
6975 "port": "",
6976 "pathname": "/C:/",
6977 "search": "",
6978 "hash": ""
6979 },
6980 {
6981 "input": "file://C|/",
6982 "base": null,
6983 "href": "file:///C:/",
6984 "protocol": "file:",
6985 "username": "",
6986 "password": "",
6987 "host": "",
6988 "hostname": "",
6989 "port": "",
6990 "pathname": "/C:/",
6991 "search": "",
6992 "hash": ""
6993 },
6994 "# file URLs without base URL by Rimas Misevičius",
6995 {
6996 "input": "file:",
6997 "base": null,
6998 "href": "file:///",
6999 "protocol": "file:",
7000 "username": "",
7001 "password": "",
7002 "host": "",
7003 "hostname": "",
7004 "port": "",
7005 "pathname": "/",
7006 "search": "",
7007 "hash": ""
7008 },
7009 {
7010 "input": "file:?q=v",
7011 "base": null,
7012 "href": "file:///?q=v",
7013 "protocol": "file:",
7014 "username": "",
7015 "password": "",
7016 "host": "",
7017 "hostname": "",
7018 "port": "",
7019 "pathname": "/",
7020 "search": "?q=v",
7021 "hash": ""
7022 },
7023 {
7024 "input": "file:#frag",
7025 "base": null,
7026 "href": "file:///#frag",
7027 "protocol": "file:",
7028 "username": "",
7029 "password": "",
7030 "host": "",
7031 "hostname": "",
7032 "port": "",
7033 "pathname": "/",
7034 "search": "",
7035 "hash": "#frag"
7036 },
7037 "# file: drive letter cases from https://crbug.com/1078698",
7038 {
7039 "input": "file:///Y:",
7040 "base": null,
7041 "href": "file:///Y:",
7042 "protocol": "file:",
7043 "username": "",
7044 "password": "",
7045 "host": "",
7046 "hostname": "",
7047 "port": "",
7048 "pathname": "/Y:",
7049 "search": "",
7050 "hash": ""
7051 },
7052 {
7053 "input": "file:///Y:/",
7054 "base": null,
7055 "href": "file:///Y:/",
7056 "protocol": "file:",
7057 "username": "",
7058 "password": "",
7059 "host": "",
7060 "hostname": "",
7061 "port": "",
7062 "pathname": "/Y:/",
7063 "search": "",
7064 "hash": ""
7065 },
7066 {
7067 "input": "file:///./Y",
7068 "base": null,
7069 "href": "file:///Y",
7070 "protocol": "file:",
7071 "username": "",
7072 "password": "",
7073 "host": "",
7074 "hostname": "",
7075 "port": "",
7076 "pathname": "/Y",
7077 "search": "",
7078 "hash": ""
7079 },
7080 {
7081 "input": "file:///./Y:",
7082 "base": null,
7083 "href": "file:///Y:",
7084 "protocol": "file:",
7085 "username": "",
7086 "password": "",
7087 "host": "",
7088 "hostname": "",
7089 "port": "",
7090 "pathname": "/Y:",
7091 "search": "",
7092 "hash": ""
7093 },
7094 {
7095 "input": "\\\\\\.\\Y:",
7096 "base": null,
7097 "failure": true,
7098 "relativeTo": "non-opaque-path-base"
7099 },
7100 "# file: drive letter cases from https://crbug.com/1078698 but lowercased",
7101 {
7102 "input": "file:///y:",
7103 "base": null,
7104 "href": "file:///y:",
7105 "protocol": "file:",
7106 "username": "",
7107 "password": "",
7108 "host": "",
7109 "hostname": "",
7110 "port": "",
7111 "pathname": "/y:",
7112 "search": "",
7113 "hash": ""
7114 },
7115 {
7116 "input": "file:///y:/",
7117 "base": null,
7118 "href": "file:///y:/",
7119 "protocol": "file:",
7120 "username": "",
7121 "password": "",
7122 "host": "",
7123 "hostname": "",
7124 "port": "",
7125 "pathname": "/y:/",
7126 "search": "",
7127 "hash": ""
7128 },
7129 {
7130 "input": "file:///./y",
7131 "base": null,
7132 "href": "file:///y",
7133 "protocol": "file:",
7134 "username": "",
7135 "password": "",
7136 "host": "",
7137 "hostname": "",
7138 "port": "",
7139 "pathname": "/y",
7140 "search": "",
7141 "hash": ""
7142 },
7143 {
7144 "input": "file:///./y:",
7145 "base": null,
7146 "href": "file:///y:",
7147 "protocol": "file:",
7148 "username": "",
7149 "password": "",
7150 "host": "",
7151 "hostname": "",
7152 "port": "",
7153 "pathname": "/y:",
7154 "search": "",
7155 "hash": ""
7156 },
7157 {
7158 "input": "\\\\\\.\\y:",
7159 "base": null,
7160 "failure": true,
7161 "relativeTo": "non-opaque-path-base"
7162 },
7163 "# Additional file URL tests for (https://github.com/whatwg/url/issues/405)",
7164 {
7165 "input": "file://localhost//a//../..//foo",
7166 "base": null,
7167 "href": "file://///foo",
7168 "protocol": "file:",
7169 "username": "",
7170 "password": "",
7171 "host": "",
7172 "hostname": "",
7173 "port": "",
7174 "pathname": "///foo",
7175 "search": "",
7176 "hash": ""
7177 },
7178 {
7179 "input": "file://localhost////foo",
7180 "base": null,
7181 "href": "file://////foo",
7182 "protocol": "file:",
7183 "username": "",
7184 "password": "",
7185 "host": "",
7186 "hostname": "",
7187 "port": "",
7188 "pathname": "////foo",
7189 "search": "",
7190 "hash": ""
7191 },
7192 {
7193 "input": "file:////foo",
7194 "base": null,
7195 "href": "file:////foo",
7196 "protocol": "file:",
7197 "username": "",
7198 "password": "",
7199 "host": "",
7200 "hostname": "",
7201 "port": "",
7202 "pathname": "//foo",
7203 "search": "",
7204 "hash": ""
7205 },
7206 {
7207 "input": "file:///one/two",
7208 "base": "file:///",
7209 "href": "file:///one/two",
7210 "protocol": "file:",
7211 "username": "",
7212 "password": "",
7213 "host": "",
7214 "hostname": "",
7215 "port": "",
7216 "pathname": "/one/two",
7217 "search": "",
7218 "hash": ""
7219 },
7220 {
7221 "input": "file:////one/two",
7222 "base": "file:///",
7223 "href": "file:////one/two",
7224 "protocol": "file:",
7225 "username": "",
7226 "password": "",
7227 "host": "",
7228 "hostname": "",
7229 "port": "",
7230 "pathname": "//one/two",
7231 "search": "",
7232 "hash": ""
7233 },
7234 {
7235 "input": "//one/two",
7236 "base": "file:///",
7237 "href": "file://one/two",
7238 "protocol": "file:",
7239 "username": "",
7240 "password": "",
7241 "host": "one",
7242 "hostname": "one",
7243 "port": "",
7244 "pathname": "/two",
7245 "search": "",
7246 "hash": ""
7247 },
7248 {
7249 "input": "///one/two",
7250 "base": "file:///",
7251 "href": "file:///one/two",
7252 "protocol": "file:",
7253 "username": "",
7254 "password": "",
7255 "host": "",
7256 "hostname": "",
7257 "port": "",
7258 "pathname": "/one/two",
7259 "search": "",
7260 "hash": ""
7261 },
7262 {
7263 "input": "////one/two",
7264 "base": "file:///",
7265 "href": "file:////one/two",
7266 "protocol": "file:",
7267 "username": "",
7268 "password": "",
7269 "host": "",
7270 "hostname": "",
7271 "port": "",
7272 "pathname": "//one/two",
7273 "search": "",
7274 "hash": ""
7275 },
7276 {
7277 "input": "file:///.//",
7278 "base": "file:////",
7279 "href": "file:////",
7280 "protocol": "file:",
7281 "username": "",
7282 "password": "",
7283 "host": "",
7284 "hostname": "",
7285 "port": "",
7286 "pathname": "//",
7287 "search": "",
7288 "hash": ""
7289 },
7290 "File URL tests for https://github.com/whatwg/url/issues/549",
7291 {
7292 "input": "file:.//p",
7293 "base": null,
7294 "href": "file:////p",
7295 "protocol": "file:",
7296 "username": "",
7297 "password": "",
7298 "host": "",
7299 "hostname": "",
7300 "port": "",
7301 "pathname": "//p",
7302 "search": "",
7303 "hash": ""
7304 },
7305 {
7306 "input": "file:/.//p",
7307 "base": null,
7308 "href": "file:////p",
7309 "protocol": "file:",
7310 "username": "",
7311 "password": "",
7312 "host": "",
7313 "hostname": "",
7314 "port": "",
7315 "pathname": "//p",
7316 "search": "",
7317 "hash": ""
7318 },
7319 "# IPv6 tests",
7320 {
7321 "input": "http://[1:0::]",
7322 "base": "http://example.net/",
7323 "href": "http://[1::]/",
7324 "origin": "http://[1::]",
7325 "protocol": "http:",
7326 "username": "",
7327 "password": "",
7328 "host": "[1::]",
7329 "hostname": "[1::]",
7330 "port": "",
7331 "pathname": "/",
7332 "search": "",
7333 "hash": ""
7334 },
7335 {
7336 "input": "http://[0:1:2:3:4:5:6:7:8]",
7337 "base": "http://example.net/",
7338 "failure": true
7339 },
7340 {
7341 "input": "https://[0::0::0]",
7342 "base": null,
7343 "failure": true
7344 },
7345 {
7346 "input": "https://[0:.0]",
7347 "base": null,
7348 "failure": true
7349 },
7350 {
7351 "input": "https://[0:0:]",
7352 "base": null,
7353 "failure": true
7354 },
7355 {
7356 "input": "https://[0:1:2:3:4:5:6:7.0.0.0.1]",
7357 "base": null,
7358 "failure": true
7359 },
7360 {
7361 "input": "https://[0:1.00.0.0.0]",
7362 "base": null,
7363 "failure": true
7364 },
7365 {
7366 "input": "https://[0:1.290.0.0.0]",
7367 "base": null,
7368 "failure": true
7369 },
7370 {
7371 "input": "https://[0:1.23.23]",
7372 "base": null,
7373 "failure": true
7374 },
7375 "# Empty host",
7376 {
7377 "input": "http://?",
7378 "base": null,
7379 "failure": true
7380 },
7381 {
7382 "input": "http://#",
7383 "base": null,
7384 "failure": true
7385 },
7386 "Port overflow (2^32 + 81)",
7387 {
7388 "input": "http://f:4294967377/c",
7389 "base": "http://example.org/",
7390 "failure": true
7391 },
7392 "Port overflow (2^64 + 81)",
7393 {
7394 "input": "http://f:18446744073709551697/c",
7395 "base": "http://example.org/",
7396 "failure": true
7397 },
7398 "Port overflow (2^128 + 81)",
7399 {
7400 "input": "http://f:340282366920938463463374607431768211537/c",
7401 "base": "http://example.org/",
7402 "failure": true
7403 },
7404 "# Non-special-URL path tests",
7405 {
7406 "input": "sc://ñ",
7407 "base": null,
7408 "href": "sc://%C3%B1",
7409 "origin": "null",
7410 "protocol": "sc:",
7411 "username": "",
7412 "password": "",
7413 "host": "%C3%B1",
7414 "hostname": "%C3%B1",
7415 "port": "",
7416 "pathname": "",
7417 "search": "",
7418 "hash": ""
7419 },
7420 {
7421 "input": "sc://ñ?x",
7422 "base": null,
7423 "href": "sc://%C3%B1?x",
7424 "origin": "null",
7425 "protocol": "sc:",
7426 "username": "",
7427 "password": "",
7428 "host": "%C3%B1",
7429 "hostname": "%C3%B1",
7430 "port": "",
7431 "pathname": "",
7432 "search": "?x",
7433 "hash": ""
7434 },
7435 {
7436 "input": "sc://ñ#x",
7437 "base": null,
7438 "href": "sc://%C3%B1#x",
7439 "origin": "null",
7440 "protocol": "sc:",
7441 "username": "",
7442 "password": "",
7443 "host": "%C3%B1",
7444 "hostname": "%C3%B1",
7445 "port": "",
7446 "pathname": "",
7447 "search": "",
7448 "hash": "#x"
7449 },
7450 {
7451 "input": "#x",
7452 "base": "sc://ñ",
7453 "href": "sc://%C3%B1#x",
7454 "origin": "null",
7455 "protocol": "sc:",
7456 "username": "",
7457 "password": "",
7458 "host": "%C3%B1",
7459 "hostname": "%C3%B1",
7460 "port": "",
7461 "pathname": "",
7462 "search": "",
7463 "hash": "#x"
7464 },
7465 {
7466 "input": "?x",
7467 "base": "sc://ñ",
7468 "href": "sc://%C3%B1?x",
7469 "origin": "null",
7470 "protocol": "sc:",
7471 "username": "",
7472 "password": "",
7473 "host": "%C3%B1",
7474 "hostname": "%C3%B1",
7475 "port": "",
7476 "pathname": "",
7477 "search": "?x",
7478 "hash": ""
7479 },
7480 {
7481 "input": "sc://?",
7482 "base": null,
7483 "href": "sc://?",
7484 "protocol": "sc:",
7485 "username": "",
7486 "password": "",
7487 "host": "",
7488 "hostname": "",
7489 "port": "",
7490 "pathname": "",
7491 "search": "",
7492 "hash": ""
7493 },
7494 {
7495 "input": "sc://#",
7496 "base": null,
7497 "href": "sc://#",
7498 "protocol": "sc:",
7499 "username": "",
7500 "password": "",
7501 "host": "",
7502 "hostname": "",
7503 "port": "",
7504 "pathname": "",
7505 "search": "",
7506 "hash": ""
7507 },
7508 {
7509 "input": "///",
7510 "base": "sc://x/",
7511 "href": "sc:///",
7512 "protocol": "sc:",
7513 "username": "",
7514 "password": "",
7515 "host": "",
7516 "hostname": "",
7517 "port": "",
7518 "pathname": "/",
7519 "search": "",
7520 "hash": ""
7521 },
7522 {
7523 "input": "////",
7524 "base": "sc://x/",
7525 "href": "sc:////",
7526 "protocol": "sc:",
7527 "username": "",
7528 "password": "",
7529 "host": "",
7530 "hostname": "",
7531 "port": "",
7532 "pathname": "//",
7533 "search": "",
7534 "hash": ""
7535 },
7536 {
7537 "input": "////x/",
7538 "base": "sc://x/",
7539 "href": "sc:////x/",
7540 "protocol": "sc:",
7541 "username": "",
7542 "password": "",
7543 "host": "",
7544 "hostname": "",
7545 "port": "",
7546 "pathname": "//x/",
7547 "search": "",
7548 "hash": ""
7549 },
7550 {
7551 "input": "tftp://foobar.com/someconfig;mode=netascii",
7552 "base": null,
7553 "href": "tftp://foobar.com/someconfig;mode=netascii",
7554 "origin": "null",
7555 "protocol": "tftp:",
7556 "username": "",
7557 "password": "",
7558 "host": "foobar.com",
7559 "hostname": "foobar.com",
7560 "port": "",
7561 "pathname": "/someconfig;mode=netascii",
7562 "search": "",
7563 "hash": ""
7564 },
7565 {
7566 "input": "telnet://user:pass@foobar.com:23/",
7567 "base": null,
7568 "href": "telnet://user:pass@foobar.com:23/",
7569 "origin": "null",
7570 "protocol": "telnet:",
7571 "username": "user",
7572 "password": "pass",
7573 "host": "foobar.com:23",
7574 "hostname": "foobar.com",
7575 "port": "23",
7576 "pathname": "/",
7577 "search": "",
7578 "hash": ""
7579 },
7580 {
7581 "input": "ut2004://10.10.10.10:7777/Index.ut2",
7582 "base": null,
7583 "href": "ut2004://10.10.10.10:7777/Index.ut2",
7584 "origin": "null",
7585 "protocol": "ut2004:",
7586 "username": "",
7587 "password": "",
7588 "host": "10.10.10.10:7777",
7589 "hostname": "10.10.10.10",
7590 "port": "7777",
7591 "pathname": "/Index.ut2",
7592 "search": "",
7593 "hash": ""
7594 },
7595 {
7596 "input": "redis://foo:bar@somehost:6379/0?baz=bam&qux=baz",
7597 "base": null,
7598 "href": "redis://foo:bar@somehost:6379/0?baz=bam&qux=baz",
7599 "origin": "null",
7600 "protocol": "redis:",
7601 "username": "foo",
7602 "password": "bar",
7603 "host": "somehost:6379",
7604 "hostname": "somehost",
7605 "port": "6379",
7606 "pathname": "/0",
7607 "search": "?baz=bam&qux=baz",
7608 "hash": ""
7609 },
7610 {
7611 "input": "rsync://foo@host:911/sup",
7612 "base": null,
7613 "href": "rsync://foo@host:911/sup",
7614 "origin": "null",
7615 "protocol": "rsync:",
7616 "username": "foo",
7617 "password": "",
7618 "host": "host:911",
7619 "hostname": "host",
7620 "port": "911",
7621 "pathname": "/sup",
7622 "search": "",
7623 "hash": ""
7624 },
7625 {
7626 "input": "git://github.com/foo/bar.git",
7627 "base": null,
7628 "href": "git://github.com/foo/bar.git",
7629 "origin": "null",
7630 "protocol": "git:",
7631 "username": "",
7632 "password": "",
7633 "host": "github.com",
7634 "hostname": "github.com",
7635 "port": "",
7636 "pathname": "/foo/bar.git",
7637 "search": "",
7638 "hash": ""
7639 },
7640 {
7641 "input": "irc://myserver.com:6999/channel?passwd",
7642 "base": null,
7643 "href": "irc://myserver.com:6999/channel?passwd",
7644 "origin": "null",
7645 "protocol": "irc:",
7646 "username": "",
7647 "password": "",
7648 "host": "myserver.com:6999",
7649 "hostname": "myserver.com",
7650 "port": "6999",
7651 "pathname": "/channel",
7652 "search": "?passwd",
7653 "hash": ""
7654 },
7655 {
7656 "input": "dns://fw.example.org:9999/foo.bar.org?type=TXT",
7657 "base": null,
7658 "href": "dns://fw.example.org:9999/foo.bar.org?type=TXT",
7659 "origin": "null",
7660 "protocol": "dns:",
7661 "username": "",
7662 "password": "",
7663 "host": "fw.example.org:9999",
7664 "hostname": "fw.example.org",
7665 "port": "9999",
7666 "pathname": "/foo.bar.org",
7667 "search": "?type=TXT",
7668 "hash": ""
7669 },
7670 {
7671 "input": "ldap://localhost:389/ou=People,o=JNDITutorial",
7672 "base": null,
7673 "href": "ldap://localhost:389/ou=People,o=JNDITutorial",
7674 "origin": "null",
7675 "protocol": "ldap:",
7676 "username": "",
7677 "password": "",
7678 "host": "localhost:389",
7679 "hostname": "localhost",
7680 "port": "389",
7681 "pathname": "/ou=People,o=JNDITutorial",
7682 "search": "",
7683 "hash": ""
7684 },
7685 {
7686 "input": "git+https://github.com/foo/bar",
7687 "base": null,
7688 "href": "git+https://github.com/foo/bar",
7689 "origin": "null",
7690 "protocol": "git+https:",
7691 "username": "",
7692 "password": "",
7693 "host": "github.com",
7694 "hostname": "github.com",
7695 "port": "",
7696 "pathname": "/foo/bar",
7697 "search": "",
7698 "hash": ""
7699 },
7700 {
7701 "input": "urn:ietf:rfc:2648",
7702 "base": null,
7703 "href": "urn:ietf:rfc:2648",
7704 "origin": "null",
7705 "protocol": "urn:",
7706 "username": "",
7707 "password": "",
7708 "host": "",
7709 "hostname": "",
7710 "port": "",
7711 "pathname": "ietf:rfc:2648",
7712 "search": "",
7713 "hash": ""
7714 },
7715 {
7716 "input": "tag:joe@example.org,2001:foo/bar",
7717 "base": null,
7718 "href": "tag:joe@example.org,2001:foo/bar",
7719 "origin": "null",
7720 "protocol": "tag:",
7721 "username": "",
7722 "password": "",
7723 "host": "",
7724 "hostname": "",
7725 "port": "",
7726 "pathname": "joe@example.org,2001:foo/bar",
7727 "search": "",
7728 "hash": ""
7729 },
7730 "Serialize /. in path",
7731 {
7732 "input": "non-spec:/.//",
7733 "base": null,
7734 "href": "non-spec:/.//",
7735 "protocol": "non-spec:",
7736 "username": "",
7737 "password": "",
7738 "host": "",
7739 "hostname": "",
7740 "port": "",
7741 "pathname": "//",
7742 "search": "",
7743 "hash": ""
7744 },
7745 {
7746 "input": "non-spec:/..//",
7747 "base": null,
7748 "href": "non-spec:/.//",
7749 "protocol": "non-spec:",
7750 "username": "",
7751 "password": "",
7752 "host": "",
7753 "hostname": "",
7754 "port": "",
7755 "pathname": "//",
7756 "search": "",
7757 "hash": ""
7758 },
7759 {
7760 "input": "non-spec:/a/..//",
7761 "base": null,
7762 "href": "non-spec:/.//",
7763 "protocol": "non-spec:",
7764 "username": "",
7765 "password": "",
7766 "host": "",
7767 "hostname": "",
7768 "port": "",
7769 "pathname": "//",
7770 "search": "",
7771 "hash": ""
7772 },
7773 {
7774 "input": "non-spec:/.//path",
7775 "base": null,
7776 "href": "non-spec:/.//path",
7777 "protocol": "non-spec:",
7778 "username": "",
7779 "password": "",
7780 "host": "",
7781 "hostname": "",
7782 "port": "",
7783 "pathname": "//path",
7784 "search": "",
7785 "hash": ""
7786 },
7787 {
7788 "input": "non-spec:/..//path",
7789 "base": null,
7790 "href": "non-spec:/.//path",
7791 "protocol": "non-spec:",
7792 "username": "",
7793 "password": "",
7794 "host": "",
7795 "hostname": "",
7796 "port": "",
7797 "pathname": "//path",
7798 "search": "",
7799 "hash": ""
7800 },
7801 {
7802 "input": "non-spec:/a/..//path",
7803 "base": null,
7804 "href": "non-spec:/.//path",
7805 "protocol": "non-spec:",
7806 "username": "",
7807 "password": "",
7808 "host": "",
7809 "hostname": "",
7810 "port": "",
7811 "pathname": "//path",
7812 "search": "",
7813 "hash": ""
7814 },
7815 {
7816 "input": "/.//path",
7817 "base": "non-spec:/p",
7818 "href": "non-spec:/.//path",
7819 "protocol": "non-spec:",
7820 "username": "",
7821 "password": "",
7822 "host": "",
7823 "hostname": "",
7824 "port": "",
7825 "pathname": "//path",
7826 "search": "",
7827 "hash": ""
7828 },
7829 {
7830 "input": "/..//path",
7831 "base": "non-spec:/p",
7832 "href": "non-spec:/.//path",
7833 "protocol": "non-spec:",
7834 "username": "",
7835 "password": "",
7836 "host": "",
7837 "hostname": "",
7838 "port": "",
7839 "pathname": "//path",
7840 "search": "",
7841 "hash": ""
7842 },
7843 {
7844 "input": "..//path",
7845 "base": "non-spec:/p",
7846 "href": "non-spec:/.//path",
7847 "protocol": "non-spec:",
7848 "username": "",
7849 "password": "",
7850 "host": "",
7851 "hostname": "",
7852 "port": "",
7853 "pathname": "//path",
7854 "search": "",
7855 "hash": ""
7856 },
7857 {
7858 "input": "a/..//path",
7859 "base": "non-spec:/p",
7860 "href": "non-spec:/.//path",
7861 "protocol": "non-spec:",
7862 "username": "",
7863 "password": "",
7864 "host": "",
7865 "hostname": "",
7866 "port": "",
7867 "pathname": "//path",
7868 "search": "",
7869 "hash": ""
7870 },
7871 {
7872 "input": "",
7873 "base": "non-spec:/..//p",
7874 "href": "non-spec:/.//p",
7875 "protocol": "non-spec:",
7876 "username": "",
7877 "password": "",
7878 "host": "",
7879 "hostname": "",
7880 "port": "",
7881 "pathname": "//p",
7882 "search": "",
7883 "hash": ""
7884 },
7885 {
7886 "input": "path",
7887 "base": "non-spec:/..//p",
7888 "href": "non-spec:/.//path",
7889 "protocol": "non-spec:",
7890 "username": "",
7891 "password": "",
7892 "host": "",
7893 "hostname": "",
7894 "port": "",
7895 "pathname": "//path",
7896 "search": "",
7897 "hash": ""
7898 },
7899 "Do not serialize /. in path",
7900 {
7901 "input": "../path",
7902 "base": "non-spec:/.//p",
7903 "href": "non-spec:/path",
7904 "protocol": "non-spec:",
7905 "username": "",
7906 "password": "",
7907 "host": "",
7908 "hostname": "",
7909 "port": "",
7910 "pathname": "/path",
7911 "search": "",
7912 "hash": ""
7913 },
7914 "# percent encoded hosts in non-special-URLs",
7915 {
7916 "input": "non-special://%E2%80%A0/",
7917 "base": null,
7918 "href": "non-special://%E2%80%A0/",
7919 "protocol": "non-special:",
7920 "username": "",
7921 "password": "",
7922 "host": "%E2%80%A0",
7923 "hostname": "%E2%80%A0",
7924 "port": "",
7925 "pathname": "/",
7926 "search": "",
7927 "hash": ""
7928 },
7929 {
7930 "input": "non-special://H%4fSt/path",
7931 "base": null,
7932 "href": "non-special://H%4fSt/path",
7933 "protocol": "non-special:",
7934 "username": "",
7935 "password": "",
7936 "host": "H%4fSt",
7937 "hostname": "H%4fSt",
7938 "port": "",
7939 "pathname": "/path",
7940 "search": "",
7941 "hash": ""
7942 },
7943 "# IPv6 in non-special-URLs",
7944 {
7945 "input": "non-special://[1:2:0:0:5:0:0:0]/",
7946 "base": null,
7947 "href": "non-special://[1:2:0:0:5::]/",
7948 "protocol": "non-special:",
7949 "username": "",
7950 "password": "",
7951 "host": "[1:2:0:0:5::]",
7952 "hostname": "[1:2:0:0:5::]",
7953 "port": "",
7954 "pathname": "/",
7955 "search": "",
7956 "hash": ""
7957 },
7958 {
7959 "input": "non-special://[1:2:0:0:0:0:0:3]/",
7960 "base": null,
7961 "href": "non-special://[1:2::3]/",
7962 "protocol": "non-special:",
7963 "username": "",
7964 "password": "",
7965 "host": "[1:2::3]",
7966 "hostname": "[1:2::3]",
7967 "port": "",
7968 "pathname": "/",
7969 "search": "",
7970 "hash": ""
7971 },
7972 {
7973 "input": "non-special://[1:2::3]:80/",
7974 "base": null,
7975 "href": "non-special://[1:2::3]:80/",
7976 "protocol": "non-special:",
7977 "username": "",
7978 "password": "",
7979 "host": "[1:2::3]:80",
7980 "hostname": "[1:2::3]",
7981 "port": "80",
7982 "pathname": "/",
7983 "search": "",
7984 "hash": ""
7985 },
7986 {
7987 "input": "non-special://[:80/",
7988 "base": null,
7989 "failure": true
7990 },
7991 {
7992 "input": "blob:https://example.com:443/",
7993 "base": null,
7994 "href": "blob:https://example.com:443/",
7995 "origin": "https://example.com",
7996 "protocol": "blob:",
7997 "username": "",
7998 "password": "",
7999 "host": "",
8000 "hostname": "",
8001 "port": "",
8002 "pathname": "https://example.com:443/",
8003 "search": "",
8004 "hash": ""
8005 },
8006 {
8007 "input": "blob:http://example.org:88/",
8008 "base": null,
8009 "href": "blob:http://example.org:88/",
8010 "origin": "http://example.org:88",
8011 "protocol": "blob:",
8012 "username": "",
8013 "password": "",
8014 "host": "",
8015 "hostname": "",
8016 "port": "",
8017 "pathname": "http://example.org:88/",
8018 "search": "",
8019 "hash": ""
8020 },
8021 {
8022 "input": "blob:d3958f5c-0777-0845-9dcf-2cb28783acaf",
8023 "base": null,
8024 "href": "blob:d3958f5c-0777-0845-9dcf-2cb28783acaf",
8025 "origin": "null",
8026 "protocol": "blob:",
8027 "username": "",
8028 "password": "",
8029 "host": "",
8030 "hostname": "",
8031 "port": "",
8032 "pathname": "d3958f5c-0777-0845-9dcf-2cb28783acaf",
8033 "search": "",
8034 "hash": ""
8035 },
8036 {
8037 "input": "blob:",
8038 "base": null,
8039 "href": "blob:",
8040 "origin": "null",
8041 "protocol": "blob:",
8042 "username": "",
8043 "password": "",
8044 "host": "",
8045 "hostname": "",
8046 "port": "",
8047 "pathname": "",
8048 "search": "",
8049 "hash": ""
8050 },
8051 "blob: in blob:",
8052 {
8053 "input": "blob:blob:",
8054 "base": null,
8055 "href": "blob:blob:",
8056 "origin": "null",
8057 "protocol": "blob:",
8058 "username": "",
8059 "password": "",
8060 "host": "",
8061 "hostname": "",
8062 "port": "",
8063 "pathname": "blob:",
8064 "search": "",
8065 "hash": ""
8066 },
8067 {
8068 "input": "blob:blob:https://example.org/",
8069 "base": null,
8070 "href": "blob:blob:https://example.org/",
8071 "origin": "null",
8072 "protocol": "blob:",
8073 "username": "",
8074 "password": "",
8075 "host": "",
8076 "hostname": "",
8077 "port": "",
8078 "pathname": "blob:https://example.org/",
8079 "search": "",
8080 "hash": ""
8081 },
8082 "Non-http(s): in blob:",
8083 {
8084 "input": "blob:about:blank",
8085 "base": null,
8086 "href": "blob:about:blank",
8087 "origin": "null",
8088 "protocol": "blob:",
8089 "username": "",
8090 "password": "",
8091 "host": "",
8092 "hostname": "",
8093 "port": "",
8094 "pathname": "about:blank",
8095 "search": "",
8096 "hash": ""
8097 },
8098 {
8099 "input": "blob:file://host/path",
8100 "base": null,
8101 "href": "blob:file://host/path",
8102 "protocol": "blob:",
8103 "username": "",
8104 "password": "",
8105 "host": "",
8106 "hostname": "",
8107 "port": "",
8108 "pathname": "file://host/path",
8109 "search": "",
8110 "hash": ""
8111 },
8112 {
8113 "input": "blob:ftp://host/path",
8114 "base": null,
8115 "href": "blob:ftp://host/path",
8116 "origin": "null",
8117 "protocol": "blob:",
8118 "username": "",
8119 "password": "",
8120 "host": "",
8121 "hostname": "",
8122 "port": "",
8123 "pathname": "ftp://host/path",
8124 "search": "",
8125 "hash": ""
8126 },
8127 {
8128 "input": "blob:ws://example.org/",
8129 "base": null,
8130 "href": "blob:ws://example.org/",
8131 "origin": "null",
8132 "protocol": "blob:",
8133 "username": "",
8134 "password": "",
8135 "host": "",
8136 "hostname": "",
8137 "port": "",
8138 "pathname": "ws://example.org/",
8139 "search": "",
8140 "hash": ""
8141 },
8142 {
8143 "input": "blob:wss://example.org/",
8144 "base": null,
8145 "href": "blob:wss://example.org/",
8146 "origin": "null",
8147 "protocol": "blob:",
8148 "username": "",
8149 "password": "",
8150 "host": "",
8151 "hostname": "",
8152 "port": "",
8153 "pathname": "wss://example.org/",
8154 "search": "",
8155 "hash": ""
8156 },
8157 "Percent-encoded http: in blob:",
8158 {
8159 "input": "blob:http%3a//example.org/",
8160 "base": null,
8161 "href": "blob:http%3a//example.org/",
8162 "origin": "null",
8163 "protocol": "blob:",
8164 "username": "",
8165 "password": "",
8166 "host": "",
8167 "hostname": "",
8168 "port": "",
8169 "pathname": "http%3a//example.org/",
8170 "search": "",
8171 "hash": ""
8172 },
8173 "Invalid IPv4 radix digits",
8174 {
8175 "input": "http://0x7f.0.0.0x7g",
8176 "base": null,
8177 "href": "http://0x7f.0.0.0x7g/",
8178 "protocol": "http:",
8179 "username": "",
8180 "password": "",
8181 "host": "0x7f.0.0.0x7g",
8182 "hostname": "0x7f.0.0.0x7g",
8183 "port": "",
8184 "pathname": "/",
8185 "search": "",
8186 "hash": ""
8187 },
8188 {
8189 "input": "http://0X7F.0.0.0X7G",
8190 "base": null,
8191 "href": "http://0x7f.0.0.0x7g/",
8192 "protocol": "http:",
8193 "username": "",
8194 "password": "",
8195 "host": "0x7f.0.0.0x7g",
8196 "hostname": "0x7f.0.0.0x7g",
8197 "port": "",
8198 "pathname": "/",
8199 "search": "",
8200 "hash": ""
8201 },
8202 "Invalid IPv4 portion of IPv6 address",
8203 {
8204 "input": "http://[::127.0.0.0.1]",
8205 "base": null,
8206 "failure": true
8207 },
8208 "Uncompressed IPv6 addresses with 0",
8209 {
8210 "input": "http://[0:1:0:1:0:1:0:1]",
8211 "base": null,
8212 "href": "http://[0:1:0:1:0:1:0:1]/",
8213 "protocol": "http:",
8214 "username": "",
8215 "password": "",
8216 "host": "[0:1:0:1:0:1:0:1]",
8217 "hostname": "[0:1:0:1:0:1:0:1]",
8218 "port": "",
8219 "pathname": "/",
8220 "search": "",
8221 "hash": ""
8222 },
8223 {
8224 "input": "http://[1:0:1:0:1:0:1:0]",
8225 "base": null,
8226 "href": "http://[1:0:1:0:1:0:1:0]/",
8227 "protocol": "http:",
8228 "username": "",
8229 "password": "",
8230 "host": "[1:0:1:0:1:0:1:0]",
8231 "hostname": "[1:0:1:0:1:0:1:0]",
8232 "port": "",
8233 "pathname": "/",
8234 "search": "",
8235 "hash": ""
8236 },
8237 "Percent-encoded query and fragment",
8238 {
8239 "input": "http://example.org/test?\u0022",
8240 "base": null,
8241 "href": "http://example.org/test?%22",
8242 "protocol": "http:",
8243 "username": "",
8244 "password": "",
8245 "host": "example.org",
8246 "hostname": "example.org",
8247 "port": "",
8248 "pathname": "/test",
8249 "search": "?%22",
8250 "hash": ""
8251 },
8252 {
8253 "input": "http://example.org/test?\u0023",
8254 "base": null,
8255 "href": "http://example.org/test?#",
8256 "protocol": "http:",
8257 "username": "",
8258 "password": "",
8259 "host": "example.org",
8260 "hostname": "example.org",
8261 "port": "",
8262 "pathname": "/test",
8263 "search": "",
8264 "hash": ""
8265 },
8266 {
8267 "input": "http://example.org/test?\u003C",
8268 "base": null,
8269 "href": "http://example.org/test?%3C",
8270 "protocol": "http:",
8271 "username": "",
8272 "password": "",
8273 "host": "example.org",
8274 "hostname": "example.org",
8275 "port": "",
8276 "pathname": "/test",
8277 "search": "?%3C",
8278 "hash": ""
8279 },
8280 {
8281 "input": "http://example.org/test?\u003E",
8282 "base": null,
8283 "href": "http://example.org/test?%3E",
8284 "protocol": "http:",
8285 "username": "",
8286 "password": "",
8287 "host": "example.org",
8288 "hostname": "example.org",
8289 "port": "",
8290 "pathname": "/test",
8291 "search": "?%3E",
8292 "hash": ""
8293 },
8294 {
8295 "input": "http://example.org/test?\u2323",
8296 "base": null,
8297 "href": "http://example.org/test?%E2%8C%A3",
8298 "protocol": "http:",
8299 "username": "",
8300 "password": "",
8301 "host": "example.org",
8302 "hostname": "example.org",
8303 "port": "",
8304 "pathname": "/test",
8305 "search": "?%E2%8C%A3",
8306 "hash": ""
8307 },
8308 {
8309 "input": "http://example.org/test?%23%23",
8310 "base": null,
8311 "href": "http://example.org/test?%23%23",
8312 "protocol": "http:",
8313 "username": "",
8314 "password": "",
8315 "host": "example.org",
8316 "hostname": "example.org",
8317 "port": "",
8318 "pathname": "/test",
8319 "search": "?%23%23",
8320 "hash": ""
8321 },
8322 {
8323 "input": "http://example.org/test?%GH",
8324 "base": null,
8325 "href": "http://example.org/test?%GH",
8326 "protocol": "http:",
8327 "username": "",
8328 "password": "",
8329 "host": "example.org",
8330 "hostname": "example.org",
8331 "port": "",
8332 "pathname": "/test",
8333 "search": "?%GH",
8334 "hash": ""
8335 },
8336 {
8337 "input": "http://example.org/test?a#%EF",
8338 "base": null,
8339 "href": "http://example.org/test?a#%EF",
8340 "protocol": "http:",
8341 "username": "",
8342 "password": "",
8343 "host": "example.org",
8344 "hostname": "example.org",
8345 "port": "",
8346 "pathname": "/test",
8347 "search": "?a",
8348 "hash": "#%EF"
8349 },
8350 {
8351 "input": "http://example.org/test?a#%GH",
8352 "base": null,
8353 "href": "http://example.org/test?a#%GH",
8354 "protocol": "http:",
8355 "username": "",
8356 "password": "",
8357 "host": "example.org",
8358 "hostname": "example.org",
8359 "port": "",
8360 "pathname": "/test",
8361 "search": "?a",
8362 "hash": "#%GH"
8363 },
8364 "URLs that require a non-about:blank base. (Also serve as invalid base tests.)",
8365 {
8366 "input": "a",
8367 "base": null,
8368 "failure": true,
8369 "relativeTo": "non-opaque-path-base"
8370 },
8371 {
8372 "input": "a/",
8373 "base": null,
8374 "failure": true,
8375 "relativeTo": "non-opaque-path-base"
8376 },
8377 {
8378 "input": "a//",
8379 "base": null,
8380 "failure": true,
8381 "relativeTo": "non-opaque-path-base"
8382 },
8383 "Bases that don't fail to parse but fail to be bases",
8384 {
8385 "input": "test-a-colon.html",
8386 "base": "a:",
8387 "failure": true
8388 },
8389 {
8390 "input": "test-a-colon-b.html",
8391 "base": "a:b",
8392 "failure": true
8393 },
8394 "Other base URL tests, that must succeed",
8395 {
8396 "input": "test-a-colon-slash.html",
8397 "base": "a:/",
8398 "href": "a:/test-a-colon-slash.html",
8399 "protocol": "a:",
8400 "username": "",
8401 "password": "",
8402 "host": "",
8403 "hostname": "",
8404 "port": "",
8405 "pathname": "/test-a-colon-slash.html",
8406 "search": "",
8407 "hash": ""
8408 },
8409 {
8410 "input": "test-a-colon-slash-slash.html",
8411 "base": "a://",
8412 "href": "a:///test-a-colon-slash-slash.html",
8413 "protocol": "a:",
8414 "username": "",
8415 "password": "",
8416 "host": "",
8417 "hostname": "",
8418 "port": "",
8419 "pathname": "/test-a-colon-slash-slash.html",
8420 "search": "",
8421 "hash": ""
8422 },
8423 {
8424 "input": "test-a-colon-slash-b.html",
8425 "base": "a:/b",
8426 "href": "a:/test-a-colon-slash-b.html",
8427 "protocol": "a:",
8428 "username": "",
8429 "password": "",
8430 "host": "",
8431 "hostname": "",
8432 "port": "",
8433 "pathname": "/test-a-colon-slash-b.html",
8434 "search": "",
8435 "hash": ""
8436 },
8437 {
8438 "input": "test-a-colon-slash-slash-b.html",
8439 "base": "a://b",
8440 "href": "a://b/test-a-colon-slash-slash-b.html",
8441 "protocol": "a:",
8442 "username": "",
8443 "password": "",
8444 "host": "b",
8445 "hostname": "b",
8446 "port": "",
8447 "pathname": "/test-a-colon-slash-slash-b.html",
8448 "search": "",
8449 "hash": ""
8450 },
8451 "Null code point in fragment",
8452 {
8453 "input": "http://example.org/test?a#b\u0000c",
8454 "base": null,
8455 "href": "http://example.org/test?a#b%00c",
8456 "protocol": "http:",
8457 "username": "",
8458 "password": "",
8459 "host": "example.org",
8460 "hostname": "example.org",
8461 "port": "",
8462 "pathname": "/test",
8463 "search": "?a",
8464 "hash": "#b%00c"
8465 },
8466 {
8467 "input": "non-spec://example.org/test?a#b\u0000c",
8468 "base": null,
8469 "href": "non-spec://example.org/test?a#b%00c",
8470 "protocol": "non-spec:",
8471 "username": "",
8472 "password": "",
8473 "host": "example.org",
8474 "hostname": "example.org",
8475 "port": "",
8476 "pathname": "/test",
8477 "search": "?a",
8478 "hash": "#b%00c"
8479 },
8480 {
8481 "input": "non-spec:/test?a#b\u0000c",
8482 "base": null,
8483 "href": "non-spec:/test?a#b%00c",
8484 "protocol": "non-spec:",
8485 "username": "",
8486 "password": "",
8487 "host": "",
8488 "hostname": "",
8489 "port": "",
8490 "pathname": "/test",
8491 "search": "?a",
8492 "hash": "#b%00c"
8493 },
8494 "First scheme char - not allowed: https://github.com/whatwg/url/issues/464",
8495 {
8496 "input": "10.0.0.7:8080/foo.html",
8497 "base": "file:///some/dir/bar.html",
8498 "href": "file:///some/dir/10.0.0.7:8080/foo.html",
8499 "protocol": "file:",
8500 "username": "",
8501 "password": "",
8502 "host": "",
8503 "hostname": "",
8504 "port": "",
8505 "pathname": "/some/dir/10.0.0.7:8080/foo.html",
8506 "search": "",
8507 "hash": ""
8508 },
8509 "Subsequent scheme chars - not allowed",
8510 {
8511 "input": "a!@$*=/foo.html",
8512 "base": "file:///some/dir/bar.html",
8513 "href": "file:///some/dir/a!@$*=/foo.html",
8514 "protocol": "file:",
8515 "username": "",
8516 "password": "",
8517 "host": "",
8518 "hostname": "",
8519 "port": "",
8520 "pathname": "/some/dir/a!@$*=/foo.html",
8521 "search": "",
8522 "hash": ""
8523 },
8524 "First and subsequent scheme chars - allowed",
8525 {
8526 "input": "a1234567890-+.:foo/bar",
8527 "base": "http://example.com/dir/file",
8528 "href": "a1234567890-+.:foo/bar",
8529 "protocol": "a1234567890-+.:",
8530 "username": "",
8531 "password": "",
8532 "host": "",
8533 "hostname": "",
8534 "port": "",
8535 "pathname": "foo/bar",
8536 "search": "",
8537 "hash": ""
8538 },
8539 "IDNA ignored code points in file URLs hosts",
8540 {
8541 "input": "file://a\u00ADb/p",
8542 "base": null,
8543 "href": "file://ab/p",
8544 "protocol": "file:",
8545 "username": "",
8546 "password": "",
8547 "host": "ab",
8548 "hostname": "ab",
8549 "port": "",
8550 "pathname": "/p",
8551 "search": "",
8552 "hash": ""
8553 },
8554 {
8555 "input": "file://a%C2%ADb/p",
8556 "base": null,
8557 "href": "file://ab/p",
8558 "protocol": "file:",
8559 "username": "",
8560 "password": "",
8561 "host": "ab",
8562 "hostname": "ab",
8563 "port": "",
8564 "pathname": "/p",
8565 "search": "",
8566 "hash": ""
8567 },
8568 "IDNA hostnames which get mapped to 'localhost'",
8569 {
8570 "input": "file://loC𝐀𝐋𝐇𝐨𝐬𝐭/usr/bin",
8571 "base": null,
8572 "href": "file:///usr/bin",
8573 "protocol": "file:",
8574 "username": "",
8575 "password": "",
8576 "host": "",
8577 "hostname": "",
8578 "port": "",
8579 "pathname": "/usr/bin",
8580 "search": "",
8581 "hash": ""
8582 },
8583 "Empty host after the domain to ASCII",
8584 {
8585 "input": "file://\u00ad/p",
8586 "base": null,
8587 "failure": true
8588 },
8589 {
8590 "input": "file://%C2%AD/p",
8591 "base": null,
8592 "failure": true
8593 },
8594 {
8595 "input": "file://xn--/p",
8596 "base": null,
8597 "failure": true
8598 },
8599 "https://bugzilla.mozilla.org/show_bug.cgi?id=1647058",
8600 {
8601 "input": "#link",
8602 "base": "https://example.org/##link",
8603 "href": "https://example.org/#link",
8604 "protocol": "https:",
8605 "username": "",
8606 "password": "",
8607 "host": "example.org",
8608 "hostname": "example.org",
8609 "port": "",
8610 "pathname": "/",
8611 "search": "",
8612 "hash": "#link"
8613 },
8614 "UTF-8 percent-encode of C0 control percent-encode set and supersets",
8615 {
8616 "input": "non-special:cannot-be-a-base-url-\u0000\u0001\u001F\u001E\u007E\u007F\u0080",
8617 "base": null,
8618 "hash": "",
8619 "host": "",
8620 "hostname": "",
8621 "href": "non-special:cannot-be-a-base-url-%00%01%1F%1E~%7F%C2%80",
8622 "origin": "null",
8623 "password": "",
8624 "pathname": "cannot-be-a-base-url-%00%01%1F%1E~%7F%C2%80",
8625 "port": "",
8626 "protocol": "non-special:",
8627 "search": "",
8628 "username": ""
8629 },
8630 {
8631 "input": "non-special:cannot-be-a-base-url-!\"$%&'()*+,-.;<=>@[\\]^_`{|}~@/",
8632 "base": null,
8633 "hash": "",
8634 "host": "",
8635 "hostname": "",
8636 "href": "non-special:cannot-be-a-base-url-!\"$%&'()*+,-.;<=>@[\\]^_`{|}~@/",
8637 "origin": "null",
8638 "password": "",
8639 "pathname": "cannot-be-a-base-url-!\"$%&'()*+,-.;<=>@[\\]^_`{|}~@/",
8640 "port": "",
8641 "protocol": "non-special:",
8642 "search": "",
8643 "username": ""
8644 },
8645 {
8646 "input": "https://www.example.com/path{\u007Fpath.html?query'\u007F=query#fragment<\u007Ffragment",
8647 "base": null,
8648 "hash": "#fragment%3C%7Ffragment",
8649 "host": "www.example.com",
8650 "hostname": "www.example.com",
8651 "href": "https://www.example.com/path%7B%7Fpath.html?query%27%7F=query#fragment%3C%7Ffragment",
8652 "origin": "https://www.example.com",
8653 "password": "",
8654 "pathname": "/path%7B%7Fpath.html",
8655 "port": "",
8656 "protocol": "https:",
8657 "search": "?query%27%7F=query",
8658 "username": ""
8659 },
8660 {
8661 "input": "https://user:pass[\u007F@foo/bar",
8662 "base": "http://example.org",
8663 "hash": "",
8664 "host": "foo",
8665 "hostname": "foo",
8666 "href": "https://user:pass%5B%7F@foo/bar",
8667 "origin": "https://foo",
8668 "password": "pass%5B%7F",
8669 "pathname": "/bar",
8670 "port": "",
8671 "protocol": "https:",
8672 "search": "",
8673 "username": "user"
8674 },
8675 "Tests for the distinct percent-encode sets",
8676 {
8677 "input": "foo:// !\"$%&'()*+,-.;<=>@[\\]^_`{|}~@host/",
8678 "base": null,
8679 "hash": "",
8680 "host": "host",
8681 "hostname": "host",
8682 "href": "foo://%20!%22$%&'()*+,-.%3B%3C%3D%3E%40%5B%5C%5D%5E_%60%7B%7C%7D~@host/",
8683 "origin": "null",
8684 "password": "",
8685 "pathname": "/",
8686 "port":"",
8687 "protocol": "foo:",
8688 "search": "",
8689 "username": "%20!%22$%&'()*+,-.%3B%3C%3D%3E%40%5B%5C%5D%5E_%60%7B%7C%7D~"
8690 },
8691 {
8692 "input": "wss:// !\"$%&'()*+,-.;<=>@[]^_`{|}~@host/",
8693 "base": null,
8694 "hash": "",
8695 "host": "host",
8696 "hostname": "host",
8697 "href": "wss://%20!%22$%&'()*+,-.%3B%3C%3D%3E%40%5B%5D%5E_%60%7B%7C%7D~@host/",
8698 "origin": "wss://host",
8699 "password": "",
8700 "pathname": "/",
8701 "port":"",
8702 "protocol": "wss:",
8703 "search": "",
8704 "username": "%20!%22$%&'()*+,-.%3B%3C%3D%3E%40%5B%5D%5E_%60%7B%7C%7D~"
8705 },
8706 {
8707 "input": "foo://joe: !\"$%&'()*+,-.:;<=>@[\\]^_`{|}~@host/",
8708 "base": null,
8709 "hash": "",
8710 "host": "host",
8711 "hostname": "host",
8712 "href": "foo://joe:%20!%22$%&'()*+,-.%3A%3B%3C%3D%3E%40%5B%5C%5D%5E_%60%7B%7C%7D~@host/",
8713 "origin": "null",
8714 "password": "%20!%22$%&'()*+,-.%3A%3B%3C%3D%3E%40%5B%5C%5D%5E_%60%7B%7C%7D~",
8715 "pathname": "/",
8716 "port":"",
8717 "protocol": "foo:",
8718 "search": "",
8719 "username": "joe"
8720 },
8721 {
8722 "input": "wss://joe: !\"$%&'()*+,-.:;<=>@[]^_`{|}~@host/",
8723 "base": null,
8724 "hash": "",
8725 "host": "host",
8726 "hostname": "host",
8727 "href": "wss://joe:%20!%22$%&'()*+,-.%3A%3B%3C%3D%3E%40%5B%5D%5E_%60%7B%7C%7D~@host/",
8728 "origin": "wss://host",
8729 "password": "%20!%22$%&'()*+,-.%3A%3B%3C%3D%3E%40%5B%5D%5E_%60%7B%7C%7D~",
8730 "pathname": "/",
8731 "port":"",
8732 "protocol": "wss:",
8733 "search": "",
8734 "username": "joe"
8735 },
8736 {
8737 "input": "foo://!\"$%&'()*+,-.;=_`{}~/",
8738 "base": null,
8739 "hash": "",
8740 "host": "!\"$%&'()*+,-.;=_`{}~",
8741 "hostname": "!\"$%&'()*+,-.;=_`{}~",
8742 "href":"foo://!\"$%&'()*+,-.;=_`{}~/",
8743 "origin": "null",
8744 "password": "",
8745 "pathname": "/",
8746 "port":"",
8747 "protocol": "foo:",
8748 "search": "",
8749 "username": ""
8750 },
8751 {
8752 "input": "wss://!\"$&'()*+,-.;=_`{}~/",
8753 "base": null,
8754 "hash": "",
8755 "host": "!\"$&'()*+,-.;=_`{}~",
8756 "hostname": "!\"$&'()*+,-.;=_`{}~",
8757 "href":"wss://!\"$&'()*+,-.;=_`{}~/",
8758 "origin": "wss://!\"$&'()*+,-.;=_`{}~",
8759 "password": "",
8760 "pathname": "/",
8761 "port":"",
8762 "protocol": "wss:",
8763 "search": "",
8764 "username": ""
8765 },
8766 {
8767 "input": "foo://host/ !\"$%&'()*+,-./:;<=>@[\\]^_`{|}~",
8768 "base": null,
8769 "hash": "",
8770 "host": "host",
8771 "hostname": "host",
8772 "href": "foo://host/%20!%22$%&'()*+,-./:;%3C=%3E@[\\]%5E_%60%7B|%7D~",
8773 "origin": "null",
8774 "password": "",
8775 "pathname": "/%20!%22$%&'()*+,-./:;%3C=%3E@[\\]%5E_%60%7B|%7D~",
8776 "port":"",
8777 "protocol": "foo:",
8778 "search": "",
8779 "username": ""
8780 },
8781 {
8782 "input": "wss://host/ !\"$%&'()*+,-./:;<=>@[\\]^_`{|}~",
8783 "base": null,
8784 "hash": "",
8785 "host": "host",
8786 "hostname": "host",
8787 "href": "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]%5E_%60%7B|%7D~",
8788 "origin": "wss://host",
8789 "password": "",
8790 "pathname": "/%20!%22$%&'()*+,-./:;%3C=%3E@[/]%5E_%60%7B|%7D~",
8791 "port":"",
8792 "protocol": "wss:",
8793 "search": "",
8794 "username": ""
8795 },
8796 {
8797 "input": "foo://host/dir/? !\"$%&'()*+,-./:;<=>?@[\\]^_`{|}~",
8798 "base": null,
8799 "hash": "",
8800 "host": "host",
8801 "hostname": "host",
8802 "href": "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~",
8803 "origin": "null",
8804 "password": "",
8805 "pathname": "/dir/",
8806 "port":"",
8807 "protocol": "foo:",
8808 "search": "?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~",
8809 "username": ""
8810 },
8811 {
8812 "input": "wss://host/dir/? !\"$%&'()*+,-./:;<=>?@[\\]^_`{|}~",
8813 "base": null,
8814 "hash": "",
8815 "host": "host",
8816 "hostname": "host",
8817 "href": "wss://host/dir/?%20!%22$%&%27()*+,-./:;%3C=%3E?@[\\]^_`{|}~",
8818 "origin": "wss://host",
8819 "password": "",
8820 "pathname": "/dir/",
8821 "port":"",
8822 "protocol": "wss:",
8823 "search": "?%20!%22$%&%27()*+,-./:;%3C=%3E?@[\\]^_`{|}~",
8824 "username": ""
8825 },
8826 {
8827 "input": "foo://host/dir/# !\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~",
8828 "base": null,
8829 "hash": "#%20!%22#$%&'()*+,-./:;%3C=%3E?@[\\]^_%60{|}~",
8830 "host": "host",
8831 "hostname": "host",
8832 "href": "foo://host/dir/#%20!%22#$%&'()*+,-./:;%3C=%3E?@[\\]^_%60{|}~",
8833 "origin": "null",
8834 "password": "",
8835 "pathname": "/dir/",
8836 "port":"",
8837 "protocol": "foo:",
8838 "search": "",
8839 "username": ""
8840 },
8841 {
8842 "input": "wss://host/dir/# !\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~",
8843 "base": null,
8844 "hash": "#%20!%22#$%&'()*+,-./:;%3C=%3E?@[\\]^_%60{|}~",
8845 "host": "host",
8846 "hostname": "host",
8847 "href": "wss://host/dir/#%20!%22#$%&'()*+,-./:;%3C=%3E?@[\\]^_%60{|}~",
8848 "origin": "wss://host",
8849 "password": "",
8850 "pathname": "/dir/",
8851 "port":"",
8852 "protocol": "wss:",
8853 "search": "",
8854 "username": ""
8855 },
8856 "Ensure that input schemes are not ignored when resolving non-special URLs",
8857 {
8858 "input": "abc:rootless",
8859 "base": "abc://host/path",
8860 "hash": "",
8861 "host": "",
8862 "hostname": "",
8863 "href":"abc:rootless",
8864 "password": "",
8865 "pathname": "rootless",
8866 "port":"",
8867 "protocol": "abc:",
8868 "search": "",
8869 "username": ""
8870 },
8871 {
8872 "input": "abc:rootless",
8873 "base": "abc:/path",
8874 "hash": "",
8875 "host": "",
8876 "hostname": "",
8877 "href":"abc:rootless",
8878 "password": "",
8879 "pathname": "rootless",
8880 "port":"",
8881 "protocol": "abc:",
8882 "search": "",
8883 "username": ""
8884 },
8885 {
8886 "input": "abc:rootless",
8887 "base": "abc:path",
8888 "hash": "",
8889 "host": "",
8890 "hostname": "",
8891 "href":"abc:rootless",
8892 "password": "",
8893 "pathname": "rootless",
8894 "port":"",
8895 "protocol": "abc:",
8896 "search": "",
8897 "username": ""
8898 },
8899 {
8900 "input": "abc:/rooted",
8901 "base": "abc://host/path",
8902 "hash": "",
8903 "host": "",
8904 "hostname": "",
8905 "href":"abc:/rooted",
8906 "password": "",
8907 "pathname": "/rooted",
8908 "port":"",
8909 "protocol": "abc:",
8910 "search": "",
8911 "username": ""
8912 },
8913 "Empty query and fragment with blank should throw an error",
8914 {
8915 "input": "#",
8916 "base": null,
8917 "failure": true,
8918 "relativeTo": "any-base"
8919 },
8920 {
8921 "input": "?",
8922 "base": null,
8923 "failure": true,
8924 "relativeTo": "non-opaque-path-base"
8925 },
8926 "Last component looks like a number, but not valid IPv4",
8927 {
8928 "input": "http://1.2.3.4.5",
8929 "base": "http://other.com/",
8930 "failure": true
8931 },
8932 {
8933 "input": "http://1.2.3.4.5.",
8934 "base": "http://other.com/",
8935 "failure": true
8936 },
8937 {
8938 "input": "http://0..0x300/",
8939 "base": null,
8940 "failure": true
8941 },
8942 {
8943 "input": "http://0..0x300./",
8944 "base": null,
8945 "failure": true
8946 },
8947 {
8948 "input": "http://256.256.256.256.256",
8949 "base": "http://other.com/",
8950 "failure": true
8951 },
8952 {
8953 "input": "http://256.256.256.256.256.",
8954 "base": "http://other.com/",
8955 "failure": true
8956 },
8957 {
8958 "input": "http://1.2.3.08",
8959 "base": null,
8960 "failure": true
8961 },
8962 {
8963 "input": "http://1.2.3.08.",
8964 "base": null,
8965 "failure": true
8966 },
8967 {
8968 "input": "http://1.2.3.09",
8969 "base": null,
8970 "failure": true
8971 },
8972 {
8973 "input": "http://09.2.3.4",
8974 "base": null,
8975 "failure": true
8976 },
8977 {
8978 "input": "http://09.2.3.4.",
8979 "base": null,
8980 "failure": true
8981 },
8982 {
8983 "input": "http://01.2.3.4.5",
8984 "base": null,
8985 "failure": true
8986 },
8987 {
8988 "input": "http://01.2.3.4.5.",
8989 "base": null,
8990 "failure": true
8991 },
8992 {
8993 "input": "http://0x100.2.3.4",
8994 "base": null,
8995 "failure": true
8996 },
8997 {
8998 "input": "http://0x100.2.3.4.",
8999 "base": null,
9000 "failure": true
9001 },
9002 {
9003 "input": "http://0x1.2.3.4.5",
9004 "base": null,
9005 "failure": true
9006 },
9007 {
9008 "input": "http://0x1.2.3.4.5.",
9009 "base": null,
9010 "failure": true
9011 },
9012 {
9013 "input": "http://foo.1.2.3.4",
9014 "base": null,
9015 "failure": true
9016 },
9017 {
9018 "input": "http://foo.1.2.3.4.",
9019 "base": null,
9020 "failure": true
9021 },
9022 {
9023 "input": "http://foo.2.3.4",
9024 "base": null,
9025 "failure": true
9026 },
9027 {
9028 "input": "http://foo.2.3.4.",
9029 "base": null,
9030 "failure": true
9031 },
9032 {
9033 "input": "http://foo.09",
9034 "base": null,
9035 "failure": true
9036 },
9037 {
9038 "input": "http://foo.09.",
9039 "base": null,
9040 "failure": true
9041 },
9042 {
9043 "input": "http://foo.0x4",
9044 "base": null,
9045 "failure": true
9046 },
9047 {
9048 "input": "http://foo.0x4.",
9049 "base": null,
9050 "failure": true
9051 },
9052 {
9053 "input": "http://foo.09..",
9054 "base": null,
9055 "hash": "",
9056 "host": "foo.09..",
9057 "hostname": "foo.09..",
9058 "href":"http://foo.09../",
9059 "password": "",
9060 "pathname": "/",
9061 "port":"",
9062 "protocol": "http:",
9063 "search": "",
9064 "username": ""
9065 },
9066 {
9067 "input": "http://0999999999999999999/",
9068 "base": null,
9069 "failure": true
9070 },
9071 {
9072 "input": "http://foo.0x",
9073 "base": null,
9074 "failure": true
9075 },
9076 {
9077 "input": "http://foo.0XFfFfFfFfFfFfFfFfFfAcE123",
9078 "base": null,
9079 "failure": true
9080 },
9081 {
9082 "input": "http://💩.123/",
9083 "base": null,
9084 "failure": true
9085 },
9086 "U+0000 and U+FFFF in various places",
9087 {
9088 "input": "https://\u0000y",
9089 "base": null,
9090 "failure": true
9091 },
9092 {
9093 "input": "https://x/\u0000y",
9094 "base": null,
9095 "hash": "",
9096 "host": "x",
9097 "hostname": "x",
9098 "href": "https://x/%00y",
9099 "password": "",
9100 "pathname": "/%00y",
9101 "port": "",
9102 "protocol": "https:",
9103 "search": "",
9104 "username": ""
9105 },
9106 {
9107 "input": "https://x/?\u0000y",
9108 "base": null,
9109 "hash": "",
9110 "host": "x",
9111 "hostname": "x",
9112 "href": "https://x/?%00y",
9113 "password": "",
9114 "pathname": "/",
9115 "port": "",
9116 "protocol": "https:",
9117 "search": "?%00y",
9118 "username": ""
9119 },
9120 {
9121 "input": "https://x/?#\u0000y",
9122 "base": null,
9123 "hash": "#%00y",
9124 "host": "x",
9125 "hostname": "x",
9126 "href": "https://x/?#%00y",
9127 "password": "",
9128 "pathname": "/",
9129 "port": "",
9130 "protocol": "https:",
9131 "search": "",
9132 "username": ""
9133 },
9134 {
9135 "input": "https://\uFFFFy",
9136 "base": null,
9137 "failure": true
9138 },
9139 {
9140 "input": "https://x/\uFFFFy",
9141 "base": null,
9142 "hash": "",
9143 "host": "x",
9144 "hostname": "x",
9145 "href": "https://x/%EF%BF%BFy",
9146 "password": "",
9147 "pathname": "/%EF%BF%BFy",
9148 "port": "",
9149 "protocol": "https:",
9150 "search": "",
9151 "username": ""
9152 },
9153 {
9154 "input": "https://x/?\uFFFFy",
9155 "base": null,
9156 "hash": "",
9157 "host": "x",
9158 "hostname": "x",
9159 "href": "https://x/?%EF%BF%BFy",
9160 "password": "",
9161 "pathname": "/",
9162 "port": "",
9163 "protocol": "https:",
9164 "search": "?%EF%BF%BFy",
9165 "username": ""
9166 },
9167 {
9168 "input": "https://x/?#\uFFFFy",
9169 "base": null,
9170 "hash": "#%EF%BF%BFy",
9171 "host": "x",
9172 "hostname": "x",
9173 "href": "https://x/?#%EF%BF%BFy",
9174 "password": "",
9175 "pathname": "/",
9176 "port": "",
9177 "protocol": "https:",
9178 "search": "",
9179 "username": ""
9180 },
9181 {
9182 "input": "non-special:\u0000y",
9183 "base": null,
9184 "hash": "",
9185 "host": "",
9186 "hostname": "",
9187 "href": "non-special:%00y",
9188 "password": "",
9189 "pathname": "%00y",
9190 "port": "",
9191 "protocol": "non-special:",
9192 "search": "",
9193 "username": ""
9194 },
9195 {
9196 "input": "non-special:x/\u0000y",
9197 "base": null,
9198 "hash": "",
9199 "host": "",
9200 "hostname": "",
9201 "href": "non-special:x/%00y",
9202 "password": "",
9203 "pathname": "x/%00y",
9204 "port": "",
9205 "protocol": "non-special:",
9206 "search": "",
9207 "username": ""
9208 },
9209 {
9210 "input": "non-special:x/?\u0000y",
9211 "base": null,
9212 "hash": "",
9213 "host": "",
9214 "hostname": "",
9215 "href": "non-special:x/?%00y",
9216 "password": "",
9217 "pathname": "x/",
9218 "port": "",
9219 "protocol": "non-special:",
9220 "search": "?%00y",
9221 "username": ""
9222 },
9223 {
9224 "input": "non-special:x/?#\u0000y",
9225 "base": null,
9226 "hash": "#%00y",
9227 "host": "",
9228 "hostname": "",
9229 "href": "non-special:x/?#%00y",
9230 "password": "",
9231 "pathname": "x/",
9232 "port": "",
9233 "protocol": "non-special:",
9234 "search": "",
9235 "username": ""
9236 },
9237 {
9238 "input": "non-special:\uFFFFy",
9239 "base": null,
9240 "hash": "",
9241 "host": "",
9242 "hostname": "",
9243 "href": "non-special:%EF%BF%BFy",
9244 "password": "",
9245 "pathname": "%EF%BF%BFy",
9246 "port": "",
9247 "protocol": "non-special:",
9248 "search": "",
9249 "username": ""
9250 },
9251 {
9252 "input": "non-special:x/\uFFFFy",
9253 "base": null,
9254 "hash": "",
9255 "host": "",
9256 "hostname": "",
9257 "href": "non-special:x/%EF%BF%BFy",
9258 "password": "",
9259 "pathname": "x/%EF%BF%BFy",
9260 "port": "",
9261 "protocol": "non-special:",
9262 "search": "",
9263 "username": ""
9264 },
9265 {
9266 "input": "non-special:x/?\uFFFFy",
9267 "base": null,
9268 "hash": "",
9269 "host": "",
9270 "hostname": "",
9271 "href": "non-special:x/?%EF%BF%BFy",
9272 "password": "",
9273 "pathname": "x/",
9274 "port": "",
9275 "protocol": "non-special:",
9276 "search": "?%EF%BF%BFy",
9277 "username": ""
9278 },
9279 {
9280 "input": "non-special:x/?#\uFFFFy",
9281 "base": null,
9282 "hash": "#%EF%BF%BFy",
9283 "host": "",
9284 "hostname": "",
9285 "href": "non-special:x/?#%EF%BF%BFy",
9286 "password": "",
9287 "pathname": "x/",
9288 "port": "",
9289 "protocol": "non-special:",
9290 "search": "",
9291 "username": ""
9292 },
9293 {
9294 "input": "",
9295 "base": null,
9296 "failure": true,
9297 "relativeTo": "non-opaque-path-base"
9298 },
9299 {
9300 "input": "https://example.com/\"quoted\"",
9301 "base": null,
9302 "hash": "",
9303 "host": "example.com",
9304 "hostname": "example.com",
9305 "href": "https://example.com/%22quoted%22",
9306 "origin": "https://example.com",
9307 "password": "",
9308 "pathname": "/%22quoted%22",
9309 "port": "",
9310 "protocol": "https:",
9311 "search": "",
9312 "username": ""
9313 },
9314 {
9315 "input": "https://a%C2%ADb/",
9316 "base": null,
9317 "hash": "",
9318 "host": "ab",
9319 "hostname": "ab",
9320 "href": "https://ab/",
9321 "origin": "https://ab",
9322 "password": "",
9323 "pathname": "/",
9324 "port": "",
9325 "protocol": "https:",
9326 "search": "",
9327 "username": ""
9328 },
9329 {
9330 "comment": "Empty host after domain to ASCII",
9331 "input": "https://\u00AD/",
9332 "base": null,
9333 "failure": true
9334 },
9335 {
9336 "input": "https://%C2%AD/",
9337 "base": null,
9338 "failure": true
9339 },
9340 {
9341 "input": "https://xn--/",
9342 "base": null,
9343 "failure": true
9344 },
9345 "Non-special schemes that some implementations might incorrectly treat as special",
9346 {
9347 "input": "data://example.com:8080/pathname?search#hash",
9348 "base": null,
9349 "href": "data://example.com:8080/pathname?search#hash",
9350 "origin": "null",
9351 "protocol": "data:",
9352 "username": "",
9353 "password": "",
9354 "host": "example.com:8080",
9355 "hostname": "example.com",
9356 "port": "8080",
9357 "pathname": "/pathname",
9358 "search": "?search",
9359 "hash": "#hash"
9360 },
9361 {
9362 "input": "data:///test",
9363 "base": null,
9364 "href": "data:///test",
9365 "origin": "null",
9366 "protocol": "data:",
9367 "username": "",
9368 "password": "",
9369 "host": "",
9370 "hostname": "",
9371 "port": "",
9372 "pathname": "/test",
9373 "search": "",
9374 "hash": ""
9375 },
9376 {
9377 "input": "data://test/a/../b",
9378 "base": null,
9379 "href": "data://test/b",
9380 "origin": "null",
9381 "protocol": "data:",
9382 "username": "",
9383 "password": "",
9384 "host": "test",
9385 "hostname": "test",
9386 "port": "",
9387 "pathname": "/b",
9388 "search": "",
9389 "hash": ""
9390 },
9391 {
9392 "input": "data://:443",
9393 "base": null,
9394 "failure": true
9395 },
9396 {
9397 "input": "data://test:test",
9398 "base": null,
9399 "failure": true
9400 },
9401 {
9402 "input": "data://[:1]",
9403 "base": null,
9404 "failure": true
9405 },
9406 {
9407 "input": "javascript://example.com:8080/pathname?search#hash",
9408 "base": null,
9409 "href": "javascript://example.com:8080/pathname?search#hash",
9410 "origin": "null",
9411 "protocol": "javascript:",
9412 "username": "",
9413 "password": "",
9414 "host": "example.com:8080",
9415 "hostname": "example.com",
9416 "port": "8080",
9417 "pathname": "/pathname",
9418 "search": "?search",
9419 "hash": "#hash"
9420 },
9421 {
9422 "input": "javascript:///test",
9423 "base": null,
9424 "href": "javascript:///test",
9425 "origin": "null",
9426 "protocol": "javascript:",
9427 "username": "",
9428 "password": "",
9429 "host": "",
9430 "hostname": "",
9431 "port": "",
9432 "pathname": "/test",
9433 "search": "",
9434 "hash": ""
9435 },
9436 {
9437 "input": "javascript://test/a/../b",
9438 "base": null,
9439 "href": "javascript://test/b",
9440 "origin": "null",
9441 "protocol": "javascript:",
9442 "username": "",
9443 "password": "",
9444 "host": "test",
9445 "hostname": "test",
9446 "port": "",
9447 "pathname": "/b",
9448 "search": "",
9449 "hash": ""
9450 },
9451 {
9452 "input": "javascript://:443",
9453 "base": null,
9454 "failure": true
9455 },
9456 {
9457 "input": "javascript://test:test",
9458 "base": null,
9459 "failure": true
9460 },
9461 {
9462 "input": "javascript://[:1]",
9463 "base": null,
9464 "failure": true
9465 },
9466 {
9467 "input": "mailto://example.com:8080/pathname?search#hash",
9468 "base": null,
9469 "href": "mailto://example.com:8080/pathname?search#hash",
9470 "origin": "null",
9471 "protocol": "mailto:",
9472 "username": "",
9473 "password": "",
9474 "host": "example.com:8080",
9475 "hostname": "example.com",
9476 "port": "8080",
9477 "pathname": "/pathname",
9478 "search": "?search",
9479 "hash": "#hash"
9480 },
9481 {
9482 "input": "mailto:///test",
9483 "base": null,
9484 "href": "mailto:///test",
9485 "origin": "null",
9486 "protocol": "mailto:",
9487 "username": "",
9488 "password": "",
9489 "host": "",
9490 "hostname": "",
9491 "port": "",
9492 "pathname": "/test",
9493 "search": "",
9494 "hash": ""
9495 },
9496 {
9497 "input": "mailto://test/a/../b",
9498 "base": null,
9499 "href": "mailto://test/b",
9500 "origin": "null",
9501 "protocol": "mailto:",
9502 "username": "",
9503 "password": "",
9504 "host": "test",
9505 "hostname": "test",
9506 "port": "",
9507 "pathname": "/b",
9508 "search": "",
9509 "hash": ""
9510 },
9511 {
9512 "input": "mailto://:443",
9513 "base": null,
9514 "failure": true
9515 },
9516 {
9517 "input": "mailto://test:test",
9518 "base": null,
9519 "failure": true
9520 },
9521 {
9522 "input": "mailto://[:1]",
9523 "base": null,
9524 "failure": true
9525 },
9526 {
9527 "input": "intent://example.com:8080/pathname?search#hash",
9528 "base": null,
9529 "href": "intent://example.com:8080/pathname?search#hash",
9530 "origin": "null",
9531 "protocol": "intent:",
9532 "username": "",
9533 "password": "",
9534 "host": "example.com:8080",
9535 "hostname": "example.com",
9536 "port": "8080",
9537 "pathname": "/pathname",
9538 "search": "?search",
9539 "hash": "#hash"
9540 },
9541 {
9542 "input": "intent:///test",
9543 "base": null,
9544 "href": "intent:///test",
9545 "origin": "null",
9546 "protocol": "intent:",
9547 "username": "",
9548 "password": "",
9549 "host": "",
9550 "hostname": "",
9551 "port": "",
9552 "pathname": "/test",
9553 "search": "",
9554 "hash": ""
9555 },
9556 {
9557 "input": "intent://test/a/../b",
9558 "base": null,
9559 "href": "intent://test/b",
9560 "origin": "null",
9561 "protocol": "intent:",
9562 "username": "",
9563 "password": "",
9564 "host": "test",
9565 "hostname": "test",
9566 "port": "",
9567 "pathname": "/b",
9568 "search": "",
9569 "hash": ""
9570 },
9571 {
9572 "input": "intent://:443",
9573 "base": null,
9574 "failure": true
9575 },
9576 {
9577 "input": "intent://test:test",
9578 "base": null,
9579 "failure": true
9580 },
9581 {
9582 "input": "intent://[:1]",
9583 "base": null,
9584 "failure": true
9585 },
9586 {
9587 "input": "urn://example.com:8080/pathname?search#hash",
9588 "base": null,
9589 "href": "urn://example.com:8080/pathname?search#hash",
9590 "origin": "null",
9591 "protocol": "urn:",
9592 "username": "",
9593 "password": "",
9594 "host": "example.com:8080",
9595 "hostname": "example.com",
9596 "port": "8080",
9597 "pathname": "/pathname",
9598 "search": "?search",
9599 "hash": "#hash"
9600 },
9601 {
9602 "input": "urn:///test",
9603 "base": null,
9604 "href": "urn:///test",
9605 "origin": "null",
9606 "protocol": "urn:",
9607 "username": "",
9608 "password": "",
9609 "host": "",
9610 "hostname": "",
9611 "port": "",
9612 "pathname": "/test",
9613 "search": "",
9614 "hash": ""
9615 },
9616 {
9617 "input": "urn://test/a/../b",
9618 "base": null,
9619 "href": "urn://test/b",
9620 "origin": "null",
9621 "protocol": "urn:",
9622 "username": "",
9623 "password": "",
9624 "host": "test",
9625 "hostname": "test",
9626 "port": "",
9627 "pathname": "/b",
9628 "search": "",
9629 "hash": ""
9630 },
9631 {
9632 "input": "urn://:443",
9633 "base": null,
9634 "failure": true
9635 },
9636 {
9637 "input": "urn://test:test",
9638 "base": null,
9639 "failure": true
9640 },
9641 {
9642 "input": "urn://[:1]",
9643 "base": null,
9644 "failure": true
9645 },
9646 {
9647 "input": "turn://example.com:8080/pathname?search#hash",
9648 "base": null,
9649 "href": "turn://example.com:8080/pathname?search#hash",
9650 "origin": "null",
9651 "protocol": "turn:",
9652 "username": "",
9653 "password": "",
9654 "host": "example.com:8080",
9655 "hostname": "example.com",
9656 "port": "8080",
9657 "pathname": "/pathname",
9658 "search": "?search",
9659 "hash": "#hash"
9660 },
9661 {
9662 "input": "turn:///test",
9663 "base": null,
9664 "href": "turn:///test",
9665 "origin": "null",
9666 "protocol": "turn:",
9667 "username": "",
9668 "password": "",
9669 "host": "",
9670 "hostname": "",
9671 "port": "",
9672 "pathname": "/test",
9673 "search": "",
9674 "hash": ""
9675 },
9676 {
9677 "input": "turn://test/a/../b",
9678 "base": null,
9679 "href": "turn://test/b",
9680 "origin": "null",
9681 "protocol": "turn:",
9682 "username": "",
9683 "password": "",
9684 "host": "test",
9685 "hostname": "test",
9686 "port": "",
9687 "pathname": "/b",
9688 "search": "",
9689 "hash": ""
9690 },
9691 {
9692 "input": "turn://:443",
9693 "base": null,
9694 "failure": true
9695 },
9696 {
9697 "input": "turn://test:test",
9698 "base": null,
9699 "failure": true
9700 },
9701 {
9702 "input": "turn://[:1]",
9703 "base": null,
9704 "failure": true
9705 },
9706 {
9707 "input": "stun://example.com:8080/pathname?search#hash",
9708 "base": null,
9709 "href": "stun://example.com:8080/pathname?search#hash",
9710 "origin": "null",
9711 "protocol": "stun:",
9712 "username": "",
9713 "password": "",
9714 "host": "example.com:8080",
9715 "hostname": "example.com",
9716 "port": "8080",
9717 "pathname": "/pathname",
9718 "search": "?search",
9719 "hash": "#hash"
9720 },
9721 {
9722 "input": "stun:///test",
9723 "base": null,
9724 "href": "stun:///test",
9725 "origin": "null",
9726 "protocol": "stun:",
9727 "username": "",
9728 "password": "",
9729 "host": "",
9730 "hostname": "",
9731 "port": "",
9732 "pathname": "/test",
9733 "search": "",
9734 "hash": ""
9735 },
9736 {
9737 "input": "stun://test/a/../b",
9738 "base": null,
9739 "href": "stun://test/b",
9740 "origin": "null",
9741 "protocol": "stun:",
9742 "username": "",
9743 "password": "",
9744 "host": "test",
9745 "hostname": "test",
9746 "port": "",
9747 "pathname": "/b",
9748 "search": "",
9749 "hash": ""
9750 },
9751 {
9752 "input": "stun://:443",
9753 "base": null,
9754 "failure": true
9755 },
9756 {
9757 "input": "stun://test:test",
9758 "base": null,
9759 "failure": true
9760 },
9761 {
9762 "input": "stun://[:1]",
9763 "base": null,
9764 "failure": true
9765 },
9766 {
9767 "input": "w://x:0",
9768 "base": null,
9769 "href": "w://x:0",
9770 "origin": "null",
9771 "protocol": "w:",
9772 "username": "",
9773 "password": "",
9774 "host": "x:0",
9775 "hostname": "x",
9776 "port": "0",
9777 "pathname": "",
9778 "search": "",
9779 "hash": ""
9780 },
9781 {
9782 "input": "west://x:0",
9783 "base": null,
9784 "href": "west://x:0",
9785 "origin": "null",
9786 "protocol": "west:",
9787 "username": "",
9788 "password": "",
9789 "host": "x:0",
9790 "hostname": "x",
9791 "port": "0",
9792 "pathname": "",
9793 "search": "",
9794 "hash": ""
9795 },
9796 {
9797 "input": "android://x:0/a",
9798 "base": null,
9799 "href": "android://x:0/a",
9800 "origin": "null",
9801 "protocol": "android:",
9802 "username": "",
9803 "password": "",
9804 "host": "x:0",
9805 "hostname": "x",
9806 "port": "0",
9807 "pathname": "/a",
9808 "search": "",
9809 "hash": ""
9810 },
9811 {
9812 "input": "drivefs://x:0/a",
9813 "base": null,
9814 "href": "drivefs://x:0/a",
9815 "origin": "null",
9816 "protocol": "drivefs:",
9817 "username": "",
9818 "password": "",
9819 "host": "x:0",
9820 "hostname": "x",
9821 "port": "0",
9822 "pathname": "/a",
9823 "search": "",
9824 "hash": ""
9825 },
9826 {
9827 "input": "chromeos-steam://x:0/a",
9828 "base": null,
9829 "href": "chromeos-steam://x:0/a",
9830 "origin": "null",
9831 "protocol": "chromeos-steam:",
9832 "username": "",
9833 "password": "",
9834 "host": "x:0",
9835 "hostname": "x",
9836 "port": "0",
9837 "pathname": "/a",
9838 "search": "",
9839 "hash": ""
9840 },
9841 {
9842 "input": "steam://x:0/a",
9843 "base": null,
9844 "href": "steam://x:0/a",
9845 "origin": "null",
9846 "protocol": "steam:",
9847 "username": "",
9848 "password": "",
9849 "host": "x:0",
9850 "hostname": "x",
9851 "port": "0",
9852 "pathname": "/a",
9853 "search": "",
9854 "hash": ""
9855 },
9856 {
9857 "input": "materialized-view://x:0/a",
9858 "base": null,
9859 "href": "materialized-view://x:0/a",
9860 "origin": "null",
9861 "protocol": "materialized-view:",
9862 "username": "",
9863 "password": "",
9864 "host": "x:0",
9865 "hostname": "x",
9866 "port": "0",
9867 "pathname": "/a",
9868 "search": "",
9869 "hash": ""
9870 },
9871 {
9872 "input": "android-app://x:0",
9873 "base": null,
9874 "href": "android-app://x:0",
9875 "origin": "null",
9876 "protocol": "android-app:",
9877 "username": "",
9878 "password": "",
9879 "host": "x:0",
9880 "hostname": "x",
9881 "port": "0",
9882 "pathname": "",
9883 "search": "",
9884 "hash": ""
9885 },
9886 {
9887 "input": "chrome-distiller://x:0",
9888 "base": null,
9889 "href": "chrome-distiller://x:0",
9890 "origin": "null",
9891 "protocol": "chrome-distiller:",
9892 "username": "",
9893 "password": "",
9894 "host": "x:0",
9895 "hostname": "x",
9896 "port": "0",
9897 "pathname": "",
9898 "search": "",
9899 "hash": ""
9900 },
9901 {
9902 "input": "chrome-extension://x:0",
9903 "base": null,
9904 "href": "chrome-extension://x:0",
9905 "origin": "null",
9906 "protocol": "chrome-extension:",
9907 "username": "",
9908 "password": "",
9909 "host": "x:0",
9910 "hostname": "x",
9911 "port": "0",
9912 "pathname": "",
9913 "search": "",
9914 "hash": ""
9915 },
9916 {
9917 "input": "chrome-native://x:0",
9918 "base": null,
9919 "href": "chrome-native://x:0",
9920 "origin": "null",
9921 "protocol": "chrome-native:",
9922 "username": "",
9923 "password": "",
9924 "host": "x:0",
9925 "hostname": "x",
9926 "port": "0",
9927 "pathname": "",
9928 "search": "",
9929 "hash": ""
9930 },
9931 {
9932 "input": "chrome-resource://x:0",
9933 "base": null,
9934 "href": "chrome-resource://x:0",
9935 "origin": "null",
9936 "protocol": "chrome-resource:",
9937 "username": "",
9938 "password": "",
9939 "host": "x:0",
9940 "hostname": "x",
9941 "port": "0",
9942 "pathname": "",
9943 "search": "",
9944 "hash": ""
9945 },
9946 {
9947 "input": "chrome-search://x:0",
9948 "base": null,
9949 "href": "chrome-search://x:0",
9950 "origin": "null",
9951 "protocol": "chrome-search:",
9952 "username": "",
9953 "password": "",
9954 "host": "x:0",
9955 "hostname": "x",
9956 "port": "0",
9957 "pathname": "",
9958 "search": "",
9959 "hash": ""
9960 },
9961 {
9962 "input": "fuchsia-dir://x:0",
9963 "base": null,
9964 "href": "fuchsia-dir://x:0",
9965 "origin": "null",
9966 "protocol": "fuchsia-dir:",
9967 "username": "",
9968 "password": "",
9969 "host": "x:0",
9970 "hostname": "x",
9971 "port": "0",
9972 "pathname": "",
9973 "search": "",
9974 "hash": ""
9975 },
9976 {
9977 "input": "isolated-app://x:0",
9978 "base": null,
9979 "href": "isolated-app://x:0",
9980 "origin": "null",
9981 "protocol": "isolated-app:",
9982 "username": "",
9983 "password": "",
9984 "host": "x:0",
9985 "hostname": "x",
9986 "port": "0",
9987 "pathname": "",
9988 "search": "",
9989 "hash": ""
9990 },
9991 "Scheme relative path starting with multiple slashes",
9992 {
9993 "input": "///test",
9994 "base": "http://example.org/",
9995 "href": "http://test/",
9996 "protocol": "http:",
9997 "username": "",
9998 "password": "",
9999 "host": "test",
10000 "hostname": "test",
10001 "port": "",
10002 "pathname": "/",
10003 "search": "",
10004 "hash": ""
10005 },
10006 {
10007 "input": "///\\//\\//test",
10008 "base": "http://example.org/",
10009 "href": "http://test/",
10010 "protocol": "http:",
10011 "username": "",
10012 "password": "",
10013 "host": "test",
10014 "hostname": "test",
10015 "port": "",
10016 "pathname": "/",
10017 "search": "",
10018 "hash": ""
10019 },
10020 {
10021 "input": "///example.org/path",
10022 "base": "http://example.org/",
10023 "href": "http://example.org/path",
10024 "protocol": "http:",
10025 "username": "",
10026 "password": "",
10027 "host": "example.org",
10028 "hostname": "example.org",
10029 "port": "",
10030 "pathname": "/path",
10031 "search": "",
10032 "hash": ""
10033 },
10034 {
10035 "input": "///example.org/../path",
10036 "base": "http://example.org/",
10037 "href": "http://example.org/path",
10038 "protocol": "http:",
10039 "username": "",
10040 "password": "",
10041 "host": "example.org",
10042 "hostname": "example.org",
10043 "port": "",
10044 "pathname": "/path",
10045 "search": "",
10046 "hash": ""
10047 },
10048 {
10049 "input": "///example.org/../../",
10050 "base": "http://example.org/",
10051 "href": "http://example.org/",
10052 "protocol": "http:",
10053 "username": "",
10054 "password": "",
10055 "host": "example.org",
10056 "hostname": "example.org",
10057 "port": "",
10058 "pathname": "/",
10059 "search": "",
10060 "hash": ""
10061 },
10062 {
10063 "input": "///example.org/../path/../../",
10064 "base": "http://example.org/",
10065 "href": "http://example.org/",
10066 "protocol": "http:",
10067 "username": "",
10068 "password": "",
10069 "host": "example.org",
10070 "hostname": "example.org",
10071 "port": "",
10072 "pathname": "/",
10073 "search": "",
10074 "hash": ""
10075 },
10076 {
10077 "input": "///example.org/../path/../../path",
10078 "base": "http://example.org/",
10079 "href": "http://example.org/path",
10080 "protocol": "http:",
10081 "username": "",
10082 "password": "",
10083 "host": "example.org",
10084 "hostname": "example.org",
10085 "port": "",
10086 "pathname": "/path",
10087 "search": "",
10088 "hash": ""
10089 },
10090 {
10091 "input": "/\\/\\//example.org/../path",
10092 "base": "http://example.org/",
10093 "href": "http://example.org/path",
10094 "protocol": "http:",
10095 "username": "",
10096 "password": "",
10097 "host": "example.org",
10098 "hostname": "example.org",
10099 "port": "",
10100 "pathname": "/path",
10101 "search": "",
10102 "hash": ""
10103 },
10104 {
10105 "input": "///abcdef/../",
10106 "base": "file:///",
10107 "href": "file:///",
10108 "protocol": "file:",
10109 "username": "",
10110 "password": "",
10111 "host": "",
10112 "hostname": "",
10113 "port": "",
10114 "pathname": "/",
10115 "search": "",
10116 "hash": ""
10117 },
10118 {
10119 "input": "/\\//\\/a/../",
10120 "base": "file:///",
10121 "href": "file://////",
10122 "protocol": "file:",
10123 "username": "",
10124 "password": "",
10125 "host": "",
10126 "hostname": "",
10127 "port": "",
10128 "pathname": "////",
10129 "search": "",
10130 "hash": ""
10131 },
10132 {
10133 "input": "//a/../",
10134 "base": "file:///",
10135 "href": "file://a/",
10136 "protocol": "file:",
10137 "username": "",
10138 "password": "",
10139 "host": "a",
10140 "hostname": "a",
10141 "port": "",
10142 "pathname": "/",
10143 "search": "",
10144 "hash": ""
10145 },
10146 "# Non-special URL and backslashes",
10147 {
10148 "input": "non-special:\\\\opaque",
10149 "base": null,
10150 "href": "non-special:\\\\opaque",
10151 "origin": "null",
10152 "protocol": "non-special:",
10153 "username": "",
10154 "password": "",
10155 "host": "",
10156 "hostname": "",
10157 "port": "",
10158 "pathname": "\\\\opaque",
10159 "search": "",
10160 "hash": ""
10161 },
10162 {
10163 "input": "non-special:\\\\opaque/path",
10164 "base": null,
10165 "href": "non-special:\\\\opaque/path",
10166 "origin": "null",
10167 "protocol": "non-special:",
10168 "username": "",
10169 "password": "",
10170 "host": "",
10171 "hostname": "",
10172 "port": "",
10173 "pathname": "\\\\opaque/path",
10174 "search": "",
10175 "hash": ""
10176 },
10177 {
10178 "input": "non-special:\\\\opaque\\path",
10179 "base": null,
10180 "href": "non-special:\\\\opaque\\path",
10181 "origin": "null",
10182 "protocol": "non-special:",
10183 "username": "",
10184 "password": "",
10185 "host": "",
10186 "hostname": "",
10187 "port": "",
10188 "pathname": "\\\\opaque\\path",
10189 "search": "",
10190 "hash": ""
10191 },
10192 {
10193 "input": "non-special:\\/opaque",
10194 "base": null,
10195 "href": "non-special:\\/opaque",
10196 "origin": "null",
10197 "protocol": "non-special:",
10198 "username": "",
10199 "password": "",
10200 "host": "",
10201 "hostname": "",
10202 "port": "",
10203 "pathname": "\\/opaque",
10204 "search": "",
10205 "hash": ""
10206 },
10207 {
10208 "input": "non-special:/\\path",
10209 "base": null,
10210 "href": "non-special:/\\path",
10211 "origin": "null",
10212 "protocol": "non-special:",
10213 "username": "",
10214 "password": "",
10215 "host": "",
10216 "hostname": "",
10217 "port": "",
10218 "pathname": "/\\path",
10219 "search": "",
10220 "hash": ""
10221 },
10222 {
10223 "input": "non-special://host\\a",
10224 "base": null,
10225 "failure": true
10226 },
10227 {
10228 "input": "non-special://host/a\\b",
10229 "base": null,
10230 "href": "non-special://host/a\\b",
10231 "origin": "null",
10232 "protocol": "non-special:",
10233 "username": "",
10234 "password": "",
10235 "host": "host",
10236 "hostname": "host",
10237 "port": "",
10238 "pathname": "/a\\b",
10239 "search": "",
10240 "hash": ""
10241 }
10242]