1# allows valid handles
2A.ISI.EDU
3XX.LCS.MIT.EDU
4SRI-NIC.ARPA
5john.test
6jan.test
7a234567890123456789.test
8john2.test
9john-john.test
10john.bsky.app
11jo.hn
12a.co
13a.org
14joh.n
15j0.h0
16jaymome-johnber123456.test
17jay.mome-johnber123456.test
18john.test.bsky.app
19
20# max over all handle: 'shoooort' + '.loooooooooooooooooooooooooong'.repeat(8) + '.test'
21shoooort.loooooooooooooooooooooooooong.loooooooooooooooooooooooooong.loooooooooooooooooooooooooong.loooooooooooooooooooooooooong.loooooooooooooooooooooooooong.loooooooooooooooooooooooooong.loooooooooooooooooooooooooong.loooooooooooooooooooooooooong.test
22
23# max segment: 'short.' + 'o'.repeat(63) + '.test'
24short.ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo.test
25
26# NOTE: this probably isn't ever going to be a real domain, but my read of the RFC is that it would be possible
27john.t
28
29# allows .local and .arpa handles (proto-level)
30laptop.local
31laptop.arpa
32
33# allows punycode handles
34# 💩.test
35xn--ls8h.test
36# bücher.tld
37xn--bcher-kva.tld
38xn--3jk.com
39xn--w3d.com
40xn--vqb.com
41xn--ppd.com
42xn--cs9a.com
43xn--8r9a.com
44xn--cfd.com
45xn--5jk.com
46xn--2lb.com
47
48# allows onion (Tor) handles
49expyuzz4wqqyqhjn.onion
50friend.expyuzz4wqqyqhjn.onion
51g2zyxa5ihm7nsggfxnu52rck2vv4rvmdlkiu3zzui5du4xyclen53wid.onion
52friend.g2zyxa5ihm7nsggfxnu52rck2vv4rvmdlkiu3zzui5du4xyclen53wid.onion
53friend.g2zyxa5ihm7nsggfxnu52rck2vv4rvmdlkiu3zzui5du4xyclen53wid.onion
542gzyxa5ihm7nsggfxnu52rck2vv4rvmdlkiu3zzui5du4xyclen53wid.onion
55friend.2gzyxa5ihm7nsggfxnu52rck2vv4rvmdlkiu3zzui5du4xyclen53wid.onion
56
57# correctly validates corner cases (modern vs. old RFCs)
5812345.test
598.cn
604chan.org
614chan.o-g
62blah.4chan.org
63thing.a01
64120.0.0.1.com
650john.test
669sta--ck.com
6799stack.com
680ohn.test
69john.t--t
70thing.0aa.thing
71
72# examples from stackoverflow
73stack.com
74sta-ck.com
75sta---ck.com
76sta--ck9.com
77stack99.com
78sta99ck.com
79google.com.uk
80google.co.in
81google.com
82maselkowski.pl
83m.maselkowski.pl
84xn--masekowski-d0b.pl
85xn--fiqa61au8b7zsevnm8ak20mc4a87e.xn--fiqs8s
86xn--stackoverflow.com
87stackoverflow.xn--com
88stackoverflow.co.uk
89xn--masekowski-d0b.pl
90xn--fiqa61au8b7zsevnm8ak20mc4a87e.xn--fiqs8s