table.go 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167
  1. // generated by go run gen.go; DO NOT EDIT
  2. package publicsuffix
  3. const version = "subset of publicsuffix.org's effective_tld_names.dat, hg revision 05b11a8d1ace (2012-11-09)"
  4. const (
  5. nodesBitsChildren = 9
  6. nodesBitsNodeType = 2
  7. nodesBitsTextOffset = 15
  8. nodesBitsTextLength = 6
  9. childrenBitsWildcard = 1
  10. childrenBitsHi = 14
  11. childrenBitsLo = 14
  12. )
  13. const (
  14. nodeTypeNormal = 0
  15. nodeTypeException = 1
  16. nodeTypeParentOnly = 2
  17. )
  18. // numTLD is the number of top level domains.
  19. const numTLD = 8
  20. // Text is the combined text of all labels.
  21. const text = "clubafukuchiyamashinacionakagyorgamecongresodelalengua3govgvin-a" +
  22. "ddretinagaokakyotambainelip6irisakyotanabeducityjetjoyoyamazakit" +
  23. "ajpblogspotkizuridebizwkumiyamakyotangobiernoelectronicomilkyoto" +
  24. "minamiyamashiromiyazurnantanational-library-scotlandmukobenlschi" +
  25. "gashiyamaizurujitawarapromocionetseikameokamodxn--czrw28british-" +
  26. "libraryawatarparliamentwazukayabe164xn--p1aidvxn--uc0atvxn--zf0a" +
  27. "o64a"
  28. // nodes is the list of nodes. Each node is represented as a uint32, which
  29. // encodes the node's children (as an index into the children array), wildcard
  30. // bit, node type and text.
  31. //
  32. // In the //-comment after each node's data, the nodes indexes of the children
  33. // are formatted as (n0x1234-n0x1256), with * denoting the wildcard bit. The
  34. // nodeType is printed as + for normal, ! for exception, and o for parent-only
  35. // nodes that have children but don't match a domain label in their own right.
  36. //
  37. // The layout within the uint32, from MSB to LSB, is:
  38. // [ 0 bits] unused
  39. // [ 9 bits] children index
  40. // [ 2 bits] nodeType
  41. // [15 bits] text index
  42. // [ 6 bits] text length
  43. var nodes = [...]uint32{
  44. 0x01001242, // n0x0000 c0x0002 (n0x0008-n0x000e) + ao
  45. 0x01c03a02, // n0x0001 c0x0003 (n0x000e-n0x0018)* o ar
  46. 0x02c052c4, // n0x0002 c0x0005 (n0x0019-n0x001f) o arpa
  47. 0x03002042, // n0x0003 c0x0006 (n0x001f-n0x0021) + jp
  48. 0x04805582, // n0x0004 c0x0009 (n0x0041-n0x004f) + tw
  49. 0x05400182, // n0x0005 c0x000a (n0x004f-n0x005a)* o uk
  50. 0x00005908, // n0x0006 c0x0000 (---------------) + xn--p1ai
  51. 0x00c02542, // n0x0007 c0x0001 (---------------)* o zw
  52. 0x00000902, // n0x0008 c0x0000 (---------------) + co
  53. 0x00001a42, // n0x0009 c0x0000 (---------------) + ed
  54. 0x00000e82, // n0x000a c0x0000 (---------------) + gv
  55. 0x00001b42, // n0x000b c0x0000 (---------------) + it
  56. 0x00002142, // n0x000c c0x0000 (---------------) + og
  57. 0x00002082, // n0x000d c0x0000 (---------------) + pb
  58. 0x02402d83, // n0x000e c0x0004 (n0x0018-n0x0019) o com
  59. 0x00200913, // n0x000f c0x0000 (---------------) ! congresodelalengua3
  60. 0x00201a44, // n0x0010 c0x0000 (---------------) ! educ
  61. 0x00202953, // n0x0011 c0x0000 (---------------) ! gobiernoelectronico
  62. 0x00200885, // n0x0012 c0x0000 (---------------) ! mecon
  63. 0x002004c6, // n0x0013 c0x0000 (---------------) ! nacion
  64. 0x00202d03, // n0x0014 c0x0000 (---------------) ! nic
  65. 0x00204589, // n0x0015 c0x0000 (---------------) ! promocion
  66. 0x00201086, // n0x0016 c0x0000 (---------------) ! retina
  67. 0x00200083, // n0x0017 c0x0000 (---------------) ! uba
  68. 0x000020c8, // n0x0018 c0x0000 (---------------) + blogspot
  69. 0x00005804, // n0x0019 c0x0000 (---------------) + e164
  70. 0x00000f07, // n0x001a c0x0000 (---------------) + in-addr
  71. 0x00001643, // n0x001b c0x0000 (---------------) + ip6
  72. 0x00001704, // n0x001c c0x0000 (---------------) + iris
  73. 0x00002383, // n0x001d c0x0000 (---------------) + uri
  74. 0x00003503, // n0x001e c0x0000 (---------------) + urn
  75. 0x03c03d84, // n0x001f c0x0007 (n0x0021-n0x0022)* o kobe
  76. 0x04002ec5, // n0x0020 c0x0008 (n0x0022-n0x0041) + kyoto
  77. 0x00201b04, // n0x0021 c0x0000 (---------------) ! city
  78. 0x00005705, // n0x0022 c0x0000 (---------------) + ayabe
  79. 0x0000014b, // n0x0023 c0x0000 (---------------) + fukuchiyama
  80. 0x00003f8b, // n0x0024 c0x0000 (---------------) + higashiyama
  81. 0x00002403, // n0x0025 c0x0000 (---------------) + ide
  82. 0x00001543, // n0x0026 c0x0000 (---------------) + ine
  83. 0x00001cc4, // n0x0027 c0x0000 (---------------) + joyo
  84. 0x00004907, // n0x0028 c0x0000 (---------------) + kameoka
  85. 0x00004a44, // n0x0029 c0x0000 (---------------) + kamo
  86. 0x00001f44, // n0x002a c0x0000 (---------------) + kita
  87. 0x000022c4, // n0x002b c0x0000 (---------------) + kizu
  88. 0x000025c8, // n0x002c c0x0000 (---------------) + kumiyama
  89. 0x00001348, // n0x002d c0x0000 (---------------) + kyotamba
  90. 0x00001849, // n0x002e c0x0000 (---------------) + kyotanabe
  91. 0x000027c8, // n0x002f c0x0000 (---------------) + kyotango
  92. 0x000041c7, // n0x0030 c0x0000 (---------------) + maizuru
  93. 0x00003006, // n0x0031 c0x0000 (---------------) + minami
  94. 0x0000300f, // n0x0032 c0x0000 (---------------) + minamiyamashiro
  95. 0x000033c6, // n0x0033 c0x0000 (---------------) + miyazu
  96. 0x00003d04, // n0x0034 c0x0000 (---------------) + muko
  97. 0x0000118a, // n0x0035 c0x0000 (---------------) + nagaokakyo
  98. 0x00000607, // n0x0036 c0x0000 (---------------) + nakagyo
  99. 0x00003586, // n0x0037 c0x0000 (---------------) + nantan
  100. 0x00001d89, // n0x0038 c0x0000 (---------------) + oyamazaki
  101. 0x000017c5, // n0x0039 c0x0000 (---------------) + sakyo
  102. 0x00004845, // n0x003a c0x0000 (---------------) + seika
  103. 0x00001906, // n0x003b c0x0000 (---------------) + tanabe
  104. 0x00004343, // n0x003c c0x0000 (---------------) + uji
  105. 0x00004349, // n0x003d c0x0000 (---------------) + ujitawara
  106. 0x000055c6, // n0x003e c0x0000 (---------------) + wazuka
  107. 0x00000309, // n0x003f c0x0000 (---------------) + yamashina
  108. 0x00005186, // n0x0040 c0x0000 (---------------) + yawata
  109. 0x000020c8, // n0x0041 c0x0000 (---------------) + blogspot
  110. 0x00000004, // n0x0042 c0x0000 (---------------) + club
  111. 0x00002d83, // n0x0043 c0x0000 (---------------) + com
  112. 0x00002484, // n0x0044 c0x0000 (---------------) + ebiz
  113. 0x00001a43, // n0x0045 c0x0000 (---------------) + edu
  114. 0x00000804, // n0x0046 c0x0000 (---------------) + game
  115. 0x00000dc3, // n0x0047 c0x0000 (---------------) + gov
  116. 0x00005ac3, // n0x0048 c0x0000 (---------------) + idv
  117. 0x00002e03, // n0x0049 c0x0000 (---------------) + mil
  118. 0x00004783, // n0x004a c0x0000 (---------------) + net
  119. 0x00000783, // n0x004b c0x0000 (---------------) + org
  120. 0x00004b8b, // n0x004c c0x0000 (---------------) + xn--czrw28b
  121. 0x00005b8a, // n0x004d c0x0000 (---------------) + xn--uc0atv
  122. 0x00005e0c, // n0x004e c0x0000 (---------------) + xn--zf0ao64a
  123. 0x002020c2, // n0x004f c0x0000 (---------------) ! bl
  124. 0x00204e0f, // n0x0050 c0x0000 (---------------) ! british-library
  125. 0x05c00902, // n0x0051 c0x000b (n0x005a-n0x005b) o co
  126. 0x00201c03, // n0x0052 c0x0000 (---------------) ! jet
  127. 0x00204ac3, // n0x0053 c0x0000 (---------------) ! mod
  128. 0x002036d9, // n0x0054 c0x0000 (---------------) ! national-library-scotland
  129. 0x00201583, // n0x0055 c0x0000 (---------------) ! nel
  130. 0x00202d03, // n0x0056 c0x0000 (---------------) ! nic
  131. 0x00203e83, // n0x0057 c0x0000 (---------------) ! nls
  132. 0x0020534a, // n0x0058 c0x0000 (---------------) ! parliament
  133. 0x00c03f03, // n0x0059 c0x0001 (---------------)* o sch
  134. 0x000020c8, // n0x005a c0x0000 (---------------) + blogspot
  135. }
  136. // children is the list of nodes' children, and the wildcard bit. If a node
  137. // has no children then their children index will be 0 or 1, depending on the
  138. // wildcard bit.
  139. //
  140. // The layout within the uint32, from MSB to LSB, is:
  141. // [ 3 bits] unused
  142. // [ 1 bits] wildcard bit
  143. // [14 bits] high nodes index (exclusive) of children
  144. // [14 bits] low nodes index (inclusive) of children
  145. var children = [...]uint32{
  146. 0x00000000, // c0x0000 (---------------)
  147. 0x10000000, // c0x0001 (---------------)*
  148. 0x00038008, // c0x0002 (n0x0008-n0x000e)
  149. 0x1006000e, // c0x0003 (n0x000e-n0x0018)*
  150. 0x00064018, // c0x0004 (n0x0018-n0x0019)
  151. 0x0007c019, // c0x0005 (n0x0019-n0x001f)
  152. 0x0008401f, // c0x0006 (n0x001f-n0x0021)
  153. 0x10088021, // c0x0007 (n0x0021-n0x0022)*
  154. 0x00104022, // c0x0008 (n0x0022-n0x0041)
  155. 0x0013c041, // c0x0009 (n0x0041-n0x004f)
  156. 0x1016804f, // c0x000a (n0x004f-n0x005a)*
  157. 0x0016c05a, // c0x000b (n0x005a-n0x005b)
  158. }