# length checks
com.ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo.foo
com.example.ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
com.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.middle.foo

# valid examples
com.example.fooBar
com.example.fooBarV2
net.users.bob.ping
a.b.c
m.xn--masekowski-d0b.pl
one.two.three
one.two.three.four-and.FiVe
one.2.three
a-0.b-1.c
a0.b1.cc
cn.8.lex.stuff
test.12345.record
a01.thing.record
a.0.c
xn--fiqs8s.xn--fiqa61au8b7zsevnm8ak20mc4a87e.record.two
a0.b1.c3
com.example.f00

# allows onion (Tor) NSIDs
onion.expyuzz4wqqyqhjn.spec.getThing
onion.g2zyxa5ihm7nsggfxnu52rck2vv4rvmdlkiu3zzui5du4xyclen53wid.lex.deleteThing

# allows starting-with-numeric segments (same as domains)
org.4chan.lex.getThing
cn.8.lex.stuff
onion.2gzyxa5ihm7nsggfxnu52rck2vv4rvmdlkiu3zzui5du4xyclen53wid.lex.deleteThing
