# SpamAssassin - Auxiliary TLD Definitions
#
# Please don't modify this file as your changes will be overwritten with
# the next update. Use @@LOCAL_RULES_DIR@@/local.cf instead.
# See 'perldoc Mail::SpamAssassin::Conf' for details.
#
# <@LICENSE>
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to you under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License.  You may obtain a copy of the License at:
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# </@LICENSE>
#
###########################################################################

# This file replaces the SARE http://www.rulesemporium.com/rules/90_2tld.cf
# which will be deprecated as from 2010-05-01

# File updated 2014-09-17 to contain complete TLD lists, they are no longer
# hardcoded into SA codebase and Util/RegistrarBoundaries.pm is deprecated
# in favor of Mail::SpamAssassin::RegistryBoundaries.


# Let's clear the internal TLD list, we only want to read from this config
# file and ignore possible old hardcoded lists.
if (can(Mail::SpamAssassin::Conf::feature_registryboundaries))
clear_util_rb
endif


#
# 1st level TLD list
#

# Basic list can be obtained with the following command:
#  wget http://data.iana.org/TLD/tlds-alpha-by-domain.txt -q -O - | tail -n+2 | perl -ne 'print lc'
# Current list may include more or less.. TODO easier maintenance?

# util_rb_tld only accepts alpha (a-z) input before RegistryBoundaries was
# implemented in 3.4.1(?), put IDN TLDs with numeric, hyphen (0-9-) etc in
# this block
#
# For an up to date list of IDN TLDs that can be pasted into this block, run this command:
#  wget http://data.iana.org/TLD/tlds-alpha-by-domain.txt -q -O - | grep -i '^xn--' | tr '\n' ' ' | fold -w 80 -s | perl -pe 'chomp; s/.*/util_rb_tld \L$_\n/'
# Since version 4.0 the util_rb_tld also accepts Unicode IDN labels (encoded as UTF-8), e.g.:
#  wget http://data.iana.org/TLD/tlds-alpha-by-domain.txt -q -O - | grep -i '^xn--' | idn -u | tr '\n' ' ' | fold -w 80 -s | perl -pe 'chomp; s/.*/util_rb_tld \L$_\n/'

if (can(Mail::SpamAssassin::Conf::feature_registryboundaries))
util_rb_tld xn--11b4c3d xn--1qqw23a xn--30rr7y xn--3bst00m xn--3ds443g xn--3e0b707e
util_rb_tld xn--3pxu8k xn--42c2d9a xn--45brj9c xn--45q11c xn--4gbrim xn--55qw42g xn--55qx5d
util_rb_tld xn--6frz82g xn--6qq986b3xl xn--80adxhks xn--80ao21a xn--80asehdb xn--80aswg
util_rb_tld xn--90a3ac xn--90ais xn--9dbq2a xn--9et52u xn--b4w605ferd xn--c1avg xn--c2br7g
util_rb_tld xn--cg4bki xn--clchc0ea0b2g2a9gcd xn--czr694b xn--czrs0t xn--czru2d xn--d1acj3b
util_rb_tld xn--d1alf xn--eckvdtc9d xn--efvy88h xn--estv75g xn--fhbei xn--fiq228c5hs
util_rb_tld xn--fiq64b xn--fiqs8s xn--fiqz9s xn--fjq720a xn--flw351e xn--fpcrj9c3d
util_rb_tld xn--fzc2c9e2c xn--gecrj9c xn--h2brj9c xn--hxt814e xn--i1b6b1a6a2e xn--imr513n
util_rb_tld xn--io0a7i xn--j1aef xn--j1amh xn--j6w193g xn--jlq61u9w7b xn--kcrx77d1x4a
util_rb_tld xn--kprw13d xn--kpry57d xn--kpu716f xn--kput3i xn--l1acc xn--lgbbat1ad8j
util_rb_tld xn--mgb9awbf xn--mgba3a3ejt xn--mgba3a4f16a xn--mgbaam7a8h xn--mgbab2bd
util_rb_tld xn--mgbayh7gpa xn--mgbb9fbpob xn--mgbbh1a71e xn--mgbc0a9azcg xn--mgberp4a5d4ar
util_rb_tld xn--mgbpl2fh xn--mgbt3dhd xn--mgbtx2b xn--mgbx4cd0ab xn--mk1bu44c xn--mxtq1m
util_rb_tld xn--ngbc5azd xn--ngbe9e0a xn--node xn--nqv7f xn--nqv7fs00ema xn--nyqy26a
util_rb_tld xn--o3cw4h xn--ogbpf8fl xn--p1acf xn--p1ai xn--pbt977c xn--pgbs0dh xn--pssy2u
util_rb_tld xn--q9jyb4c xn--qcka1pmc xn--qxam xn--rhqv96g xn--s9brj9c xn--ses554g
util_rb_tld xn--t60b56a xn--tckwe xn--unup4y xn--vermgensberater-ctb
util_rb_tld xn--vermgensberatung-pwb xn--vhquv xn--vuq861b xn--wgbh1c xn--wgbl6a
util_rb_tld xn--xhq521b xn--xkc2al3hye2a xn--xkc2dl3a5ee0h xn--y9a3aq xn--yfro4i67o
util_rb_tld xn--ygbi2ammx xn--zfr164b
endif

# Standard List
# For an up to date list of TLDs that can be pasted into this block, run this command:
#  wget http://data.iana.org/TLD/tlds-alpha-by-domain.txt -q -O - | tail -n+2 | grep -vi '^xn--' | tr '\n' ' ' | fold -w 80 -s | perl -pe 'chomp; s/.*/util_rb_tld \L$_\n/'

util_rb_tld aaa aarp abb abbott abogado ac academy accenture accountant accountants aco
util_rb_tld active actor ad adac ads adult ae aeg aero af afl ag agency ai aig airforce
util_rb_tld airtel al alibaba alipay allfinanz ally alsace am amica amsterdam analytics
util_rb_tld android ao apartments app apple aq aquarelle ar aramco archi army arpa arte as
util_rb_tld asia associates at attorney au auction audi audio author auto autos avianca aw
util_rb_tld aws ax axa az azure ba baidu band bank bar barcelona barclaycard barclays
util_rb_tld barefoot bargains bauhaus bayern bb bbc bbva bcg bcn bd be beats beer bentley
util_rb_tld berlin best bet bf bg bh bharti bi bible bid bike bing bingo bio biz bj black
util_rb_tld blackfriday bloomberg blue bm bms bmw bn bnl bnpparibas bo boats boehringer bom
util_rb_tld bond boo book boots bosch bostik bot boutique br bradesco bridgestone broadway
util_rb_tld broker brother brussels bs bt budapest bugatti build builders business buy buzz
util_rb_tld bv bw by bz bzh ca cab cafe cal call camera camp cancerresearch canon capetown
util_rb_tld capital car caravan cards care career careers cars cartier casa cash casino cat
util_rb_tld catering cba cbn cc cd ceb center ceo cern cf cfa cfd cg ch chanel channel
util_rb_tld chase chat cheap chloe christmas chrome church ci cipriani circle cisco citic
util_rb_tld city cityeats ck cl claims cleaning click clinic clinique clothing cloud club
util_rb_tld clubmed cm cn co coach codes coffee college cologne com commbank community
util_rb_tld company compare computer comsec condos construction consulting contact
util_rb_tld contractors cooking cool coop corsica country coupon coupons courses cr credit
util_rb_tld creditcard creditunion cricket crown crs cruises csc cu cuisinella cv cw cx cy
util_rb_tld cymru cyou cz dabur dad dance date dating datsun day dclk de dealer deals
util_rb_tld degree delivery dell deloitte delta democrat dental dentist desi design dev
util_rb_tld diamonds diet digital direct directory discount dj dk dm dnp do docs dog doha
util_rb_tld domains download drive dubai durban dvag dz earth eat ec edeka edu education ee
util_rb_tld eg email emerck energy engineer engineering enterprises epson equipment er erni
util_rb_tld es esq estate et eu eurovision eus events everbank exchange expert exposed
util_rb_tld express extraspace fage fail fairwinds faith family fan fans farm fashion fast
util_rb_tld feedback ferrero fi film final finance financial firestone firmdale fish
util_rb_tld fishing fit fitness fj fk flickr flights florist flowers flsmidth fly fm fo foo
util_rb_tld football ford forex forsale forum foundation fox fr fresenius frl frogans
util_rb_tld frontier fund furniture futbol fyi ga gal gallery gallo gallup game garden gb
util_rb_tld gbiz gd gdn ge gea gent genting gf gg ggee gh gi gift gifts gives giving gl
util_rb_tld glass gle global globo gm gmail gmbh gmo gmx gn gold goldpoint golf goo goog
util_rb_tld google gop got gov gp gq gr grainger graphics gratis green gripe group gs gt gu
util_rb_tld gucci guge guide guitars guru gw gy hamburg hangout haus hdfcbank health
util_rb_tld healthcare help helsinki here hermes hiphop hitachi hiv hk hm hn hockey
util_rb_tld holdings holiday homedepot homes honda horse host hosting hoteles hotmail house
util_rb_tld how hr hsbc ht hu hyundai ibm icbc ice icu id ie ifm iinet il im immo
util_rb_tld immobilien in industries infiniti info ing ink institute insurance insure int
util_rb_tld international investments io ipiranga iq ir irish is iselect ist istanbul it
util_rb_tld itau iwc jaguar java jcb je jetzt jewelry jlc jll jm jmp jo jobs joburg jot joy
util_rb_tld jp jpmorgan jprs juegos kaufen kddi ke kerryhotels kerrylogistics
util_rb_tld kerryproperties kfh kg kh ki kia kim kinder kitchen kiwi km kn koeln komatsu kp
util_rb_tld kpn kr krd kred kuokgroup kw ky kyoto kz la lacaixa lamborghini lamer lancaster
util_rb_tld land landrover lanxess lasalle lat latrobe law lawyer lb lc lds lease leclerc
util_rb_tld legal lexus lgbt li liaison lidl life lifeinsurance lifestyle lighting like
util_rb_tld limited limo lincoln linde link live living lixil lk loan loans locus lol
util_rb_tld london lotte lotto love lr ls lt ltd ltda lu lupin luxe luxury lv ly ma madrid
util_rb_tld maif maison makeup man management mango market marketing markets marriott mba
util_rb_tld mc md me med media meet melbourne meme memorial men menu meo mg mh miami
util_rb_tld microsoft mil mini mk ml mm mma mn mo mobi mobily moda moe moi mom monash money
util_rb_tld montblanc mormon mortgage moscow motorcycles mov movie movistar mp mq mr ms mt
util_rb_tld mtn mtpc mtr mu museum mutuelle mv mw mx my mz na nadex nagoya name natura navy
util_rb_tld nc ne nec net netbank network neustar new news nexus nf ng ngo nhk ni nico
util_rb_tld nikon ninja nissan nl no nokia norton nowruz np nr nra nrw ntt nu nyc nz obi
util_rb_tld office okinawa om omega one ong onl online ooo oracle orange org organic
util_rb_tld origins osaka otsuka ovh pa page pamperedchef panerai paris pars partners parts
util_rb_tld party passagens pe pet pf pg ph pharmacy philips photo photography photos
util_rb_tld physio piaget pics pictet pictures pid pin ping pink pizza pk pl place play
util_rb_tld playstation plumbing plus pm pn pohl poker porn post pr praxi press pro prod
util_rb_tld productions prof promo properties property protection ps pt pub pw pwc py qa
util_rb_tld qpon quebec quest racing re read realtor realty recipes red redstone
util_rb_tld redumbrella rehab reise reisen reit ren rent rentals repair report republican
util_rb_tld rest restaurant review reviews rexroth rich ricoh rio rip ro rocher rocks rodeo
util_rb_tld room rs rsvp ru ruhr run rw rwe ryukyu sa saarland safe safety sakura sale
util_rb_tld salon samsung sandvik sandvikcoromant sanofi sap sapo sarl sas saxo sb sbs sc
util_rb_tld sca scb schaeffler schmidt scholarships school schule schwarz science scor scot
util_rb_tld sd se seat security seek select sener services seven sew sex sexy sfr sg sh
util_rb_tld sharp shaw shell shia shiksha shoes show shriram si singles site sj sk ski skin
util_rb_tld sky skype sl sm smile sn sncf so soccer social softbank software sohu solar
util_rb_tld solutions song sony soy space spiegel spot spreadbetting sr srl st stada star
util_rb_tld starhub statefarm statoil stc stcgroup stockholm storage store stream studio
util_rb_tld study style su sucks supplies supply support surf surgery suzuki sv swatch
util_rb_tld swiss sx sy sydney symantec systems sz tab taipei talk taobao tatamotors tatar
util_rb_tld tattoo tax taxi tc tci td team tech technology tel telecity telefonica temasek
util_rb_tld tennis tf tg th thd theater theatre tickets tienda tiffany tips tires tirol tj
util_rb_tld tk tl tm tmall tn to today tokyo tools top toray toshiba total tours town
util_rb_tld toyota toys tr trade trading training travel travelers travelersinsurance trust
util_rb_tld trv tt tube tui tunes tushu tv tvs tw tz ua ubs ug uk unicom university uno uol
util_rb_tld us uy uz va vacations vana vc ve vegas ventures verisign versicherung vet vg vi
util_rb_tld viajes video viking villas vin vip virgin vision vista vistaprint viva
util_rb_tld vlaanderen vn vodka volkswagen vote voting voto voyage vu vuelos wales walter
util_rb_tld wang wanggou watch watches weather weatherchannel webcam weber website wed
util_rb_tld wedding weir wf whoswho wien wiki williamhill win windows wine wme
util_rb_tld wolterskluwer work works world ws wtc wtf xbox xerox xin xperia xxx xyz yachts
util_rb_tld yahoo yamaxun yandex ye yodobashi yoga yokohama you youtube yt za zara zero zip
util_rb_tld zm zone zuerich zw

#
# 2nd level TLD list
#

# http://www.neustar.us/policies/docs/rfc_1480.txt
# data originally from http://spamcheck.freeapp.net/two-level-tlds
# The freeapp.net site now says that information on the site is obsolete
# See discussion and sources in comments of bug 5677
# updated as per bug 5815
# cleanup in progress per bug 6795 (axb)
# Unsorted sources:
# .ua : http://hostmaster.ua
# .hu : http://www.domain.hu/domain/English/szabalyzat/sld.html

util_rb_2tld com.ac edu.ac gov.ac mil.ac net.ac org.ac
util_rb_2tld nom.ad
util_rb_2tld ac.ae co.ae com.ae gov.ae mil.ae name.ae net.ae org.ae pro.ae sch.ae
util_rb_2tld com.af edu.af gov.af net.af
util_rb_2tld co.ag com.ag net.ag nom.ag org.ag
util_rb_2tld com.ai edu.ai gov.ai net.ai off.ai org.ai
util_rb_2tld com.al edu.al gov.al net.al org.al
util_rb_2tld com.an edu.an net.an org.an
util_rb_2tld co.ao ed.ao gv.ao it.ao og.ao pb.ao
util_rb_2tld com.ar edu.ar gov.ar int.ar mil.ar net.ar org.ar
util_rb_2tld e164.arpa in-addr.arpa ip6.arpa iris.arpa uri.arpa urn.arpa
util_rb_2tld ac.at co.at gv.at or.at priv.at
util_rb_2tld act.au asn.au com.au conf.au csiro.au edu.au gov.au id.au info.au net.au nsw.au nt.au org.au otc.au oz.au qld.au sa.au tas.au telememo.au vic.au wa.au
util_rb_2tld com.aw
util_rb_2tld biz.az com.az edu.az gov.az info.az int.az mil.az name.az net.az org.az pp.az
util_rb_2tld co.ba com.ba edu.ba gov.ba mil.ba net.ba org.ba rs.ba unbi.ba unsa.ba
util_rb_2tld com.bb edu.bb gov.bb net.bb org.bb
util_rb_2tld ac.bd com.bd edu.bd gov.bd mil.bd net.bd org.bd
util_rb_2tld ac.be belgie.be dns.be fgov.be
util_rb_2tld gov.bf
util_rb_2tld biz.bh cc.bh com.bh edu.bh gov.bh info.bh net.bh org.bh
util_rb_2tld com.bm edu.bm gov.bm net.bm org.bm
util_rb_2tld com.bn edu.bn net.bn org.bn
util_rb_2tld com.bo edu.bo gob.bo gov.bo int.bo mil.bo net.bo org.bo tv.bo
util_rb_2tld adm.br adv.br agr.br am.br arq.br art.br ato.br bio.br bmd.br cim.br cng.br cnt.br com.br coop.br dpn.br eco.br ecn.br edu.br eng.br esp.br etc.br eti.br far.br fm.br fnd.br fot.br fst.br g12.br ggf.br gov.br imb.br ind.br inf.br jor.br lel.br mat.br med.br mil.br mus.br net.br nom.br not.br ntr.br odo.br org.br ppg.br pro.br psc.br psi.br qsl.br rec.br slg.br srv.br tmp.br trd.br tur.br tv.br vet.br zlg.br
util_rb_2tld com.bs net.bs org.bs
util_rb_2tld com.bt edu.bt gov.bt net.bt org.bt
util_rb_2tld co.bw org.bw
util_rb_2tld gov.by mil.by
util_rb_2tld com.bz net.bz org.bz
util_rb_2tld ab.ca bc.ca gc.ca mb.ca nb.ca nf.ca nl.ca ns.ca nt.ca nu.ca on.ca pe.ca qc.ca sk.ca yk.ca
util_rb_2tld co.ck edu.ck gov.ck net.ck org.ck
util_rb_2tld ac.cn ah.cn bj.cn com.cn cq.cn edu.cn fj.cn gd.cn gov.cn gs.cn gx.cn gz.cn ha.cn hb.cn he.cn hi.cn hk.cn hl.cn hn.cn jl.cn js.cn jx.cn ln.cn mo.cn net.cn nm.cn nx.cn org.cn qh.cn sc.cn sd.cn sh.cn sn.cn sx.cn tj.cn tw.cn xj.cn xz.cn yn.cn zj.cn
util_rb_2tld arts.co com.co edu.co firm.co gov.co info.co int.co mil.co net.co nom.co org.co rec.co web.co
util_rb_2tld co.cm com.cm net.cm
util_rb_2tld au.com br.com cn.com de.com eu.com gb.com hu.com no.com qc.com ru.com sa.com se.com uk.com us.com uy.com za.com
util_rb_2tld ac.cr co.cr ed.cr fi.cr go.cr or.cr sa.cr
util_rb_2tld com.cu edu.cu gov.cu inf.cu net.cu org.cu
util_rb_2tld gov.cx
util_rb_2tld ac.cy biz.cy com.cy ekloges.cy gov.cy ltd.cy name.cy net.cy org.cy parliament.cy press.cy pro.cy tm.cy
util_rb_2tld co.dk
util_rb_2tld com.dm edu.dm gov.dm net.dm org.dm
util_rb_2tld art.do com.do edu.do gob.do gov.do mil.do net.do org.do sld.do web.do
util_rb_2tld art.dz asso.dz com.dz edu.dz gov.dz net.dz org.dz pol.dz
util_rb_2tld com.ec edu.ec fin.ec gov.ec info.ec k12.ec med.ec mil.ec net.ec org.ec pro.ec gob.ec
util_rb_2tld co.ee com.ee edu.ee fie.ee med.ee org.ee pri.ee
util_rb_2tld com.eg edu.eg eun.eg gov.eg mil.eg net.eg org.eg sci.eg
util_rb_2tld com.er edu.er gov.er ind.er mil.er net.er org.er
util_rb_2tld com.es edu.es gob.es nom.es org.es
util_rb_2tld biz.et com.et edu.et gov.et info.et name.et net.et org.et
util_rb_2tld aland.fi
util_rb_2tld ac.fj biz.fj com.fj gov.fj id.fj info.fj mil.fj name.fj net.fj org.fj pro.fj school.fj
util_rb_2tld ac.fk co.fk com.fk gov.fk net.fk nom.fk org.fk
util_rb_2tld tm.fr asso.fr nom.fr prd.fr presse.fr com.fr gouv.fr
util_rb_2tld com.ge edu.ge gov.ge mil.ge net.ge org.ge pvt.ge
util_rb_2tld ac.gg alderney.gg co.gg gov.gg guernsey.gg ind.gg ltd.gg net.gg org.gg sark.gg sch.gg
util_rb_2tld com.gh edu.gh gov.gh mil.gh org.gh
util_rb_2tld com.gi edu.gi gov.gi ltd.gi mod.gi org.gi
util_rb_2tld ac.gn com.gn gov.gn net.gn org.gn
util_rb_2tld asso.gp com.gp edu.gp net.gp org.gp
util_rb_2tld com.gr edu.gr gov.gr net.gr org.gr
util_rb_2tld com.gt edu.gt gob.gt ind.gt mil.gt net.gt org.gt
util_rb_2tld com.gu edu.gu gov.gu mil.gu net.gu org.gu
util_rb_2tld com.hk edu.hk gov.hk idv.hk net.hk org.hk
util_rb_2tld com.hn edu.hn gob.hn mil.hn net.hn org.hn
util_rb_2tld com.hr from.hr iz.hr name.hr
util_rb_2tld adult.ht art.ht asso.ht com.ht coop.ht edu.ht firm.ht gouv.ht info.ht med.ht net.ht org.ht perso.ht pol.ht pro.ht rel.ht shop.ht
util_rb_2tld 2000.hu agrar.hu bolt.hu casino.hu city.hu co.hu erotica.hu erotika.hu film.hu forum.hu games.hu hotel.hu info.hu ingatlan.hu jogasz.hu konyvelo.hu lakas.hu media.hu news.hu org.hu priv.hu reklam.hu sex.hu shop.hu sport.hu suli.hu szex.hu tm.hu tozsde.hu utazas.hu video.hu
util_rb_2tld ac.id co.id go.id mil.id net.id or.id sch.id web.id
util_rb_2tld gov.ie
util_rb_2tld ac.il co.il gov.il idf.il k12.il muni.il net.il org.il
util_rb_2tld ac.im co.im com.im gov.im net.im nic.im org.im
util_rb_2tld ac.in co.in edu.in ernet.in firm.in gen.in gov.in ind.in mil.in net.in nic.in org.in res.in
util_rb_2tld com.io gov.io mil.io net.io org.io
util_rb_2tld gov.iq
util_rb_2tld ac.ir co.ir gov.ir id.ir net.ir org.ir sch.ir
util_rb_2tld edu.it gov.it
util_rb_2tld ac.je co.je gov.je ind.je jersey.je ltd.je net.je org.je sch.je
util_rb_2tld com.jm edu.jm gov.jm net.jm org.jm
util_rb_2tld com.jo edu.jo gov.jo mil.jo net.jo org.jo
util_rb_2tld ac.jp ad.jp aichi.jp akita.jp aomori.jp chiba.jp co.jp ed.jp ehime.jp fukui.jp fukuoka.jp fukushima.jp gifu.jp go.jp gov.jp gr.jp gunma.jp hiroshima.jp hokkaido.jp hyogo.jp ibaraki.jp ishikawa.jp iwate.jp kagawa.jp kagoshima.jp kanagawa.jp kanazawa.jp kawasaki.jp kitakyushu.jp kobe.jp kochi.jp kumamoto.jp kyoto.jp lg.jp matsuyama.jp mie.jp miyagi.jp miyazaki.jp nagano.jp nagasaki.jp nagoya.jp nara.jp ne.jp net.jp niigata.jp oita.jp okayama.jp okinawa.jp or.jp org.jp osaka.jp saga.jp saitama.jp sapporo.jp sendai.jp shiga.jp shimane.jp shizuoka.jp takamatsu.jp tochigi.jp tokushima.jp tokyo.jp tottori.jp toyama.jp utsunomiya.jp wakayama.jp yamagata.jp yamaguchi.jp yamanashi.jp yokohama.jp
util_rb_2tld ac.ke co.ke go.ke ne.ke new.ke or.ke sc.ke
util_rb_2tld com.kg edu.kg gov.kg mil.kg net.kg org.kg
util_rb_2tld com.kh edu.kh gov.kh mil.kh net.kh org.kh per.kh
util_rb_2tld ac.kr busan.kr chungbuk.kr chungnam.kr co.kr daegu.kr daejeon.kr es.kr gangwon.kr go.kr gwangju.kr gyeongbuk.kr gyeonggi.kr gyeongnam.kr hs.kr incheon.kr jeju.kr jeonbuk.kr jeonnam.kr kg.kr kyonggi.kr mil.kr ms.kr ne.kr or.kr pe.kr re.kr sc.kr seoul.kr ulsan.kr
util_rb_2tld com.kw edu.kw gov.kw mil.kw net.kw org.kw
util_rb_2tld com.ky edu.ky gov.ky net.ky org.ky
util_rb_2tld com.kz edu.kz gov.kz mil.kz net.kz org.kz
util_rb_2tld com.la net.la org.la
util_rb_2tld com.lb edu.lb gov.lb mil.lb net.lb org.lb
util_rb_2tld com.lc edu.lc gov.lc net.lc org.lc
util_rb_2tld assn.lk com.lk edu.lk gov.lk grp.lk hotel.lk int.lk ltd.lk net.lk ngo.lk org.lk sch.lk soc.lk web.lk
util_rb_2tld com.lr edu.lr gov.lr net.lr org.lr
util_rb_2tld co.ls org.ls
util_rb_2tld gov.lt mil.lt
util_rb_2tld asn.lv com.lv conf.lv edu.lv gov.lv id.lv mil.lv net.lv org.lv
util_rb_2tld biz.ly com.ly edu.ly gov.ly id.ly med.ly net.ly org.ly plc.ly sch.ly
util_rb_2tld ac.ma co.ma gov.ma net.ma org.ma press.ma
util_rb_2tld asso.mc tm.mc
util_rb_2tld ac.me co.me edu.me gov.me its.me net.me org.me priv.me
util_rb_2tld com.mg edu.mg gov.mg mil.mg nom.mg org.mg prd.mg tm.mg
util_rb_2tld army.mil navy.mil
util_rb_2tld com.mk org.mk
util_rb_2tld com.mm edu.mm gov.mm net.mm org.mm
util_rb_2tld edu.mn gov.mn org.mn
util_rb_2tld com.mo edu.mo gov.mo net.mo org.mo
util_rb_2tld music.mobi weather.mobi
util_rb_2tld co.mp edu.mp gov.mp net.mp org.mp
util_rb_2tld com.mt edu.mt gov.mt net.mt org.mt tm.mt uu.mt
util_rb_2tld co.mu com.mu
util_rb_2tld aero.mv biz.mv com.mv coop.mv edu.mv gov.mv info.mv int.mv mil.mv museum.mv name.mv net.mv org.mv pro.mv
util_rb_2tld ac.mw co.mw com.mw coop.mw edu.mw gov.mw int.mw museum.mw net.mw org.mw
util_rb_2tld com.mx edu.mx gob.mx net.mx org.mx
util_rb_2tld com.my edu.my gov.my mil.my name.my net.my org.my
util_rb_2tld alt.na com.na cul.na edu.na net.na org.na telecom.na unam.na
util_rb_2tld com.nc net.nc org.nc
util_rb_2tld de.net gb.net uk.net
util_rb_2tld ac.ng com.ng edu.ng gov.ng net.ng org.ng sch.ng
util_rb_2tld ac.ni biz.ni com.ni edu.ni gob.ni in.ni info.ni int.ni mil.ni net.ni nom.ni org.ni web.ni
util_rb_2tld fhs.no folkebibl.no fylkesbibl.no herad.no idrett.no kommune.no mil.no museum.no priv.no stat.no tel.no vgs.no
util_rb_2tld com.np edu.np gov.np mil.np net.np org.np
util_rb_2tld biz.nr co.nr com.nr edu.nr fax.nr gov.nr info.nr mob.nr mobil.nr mobile.nr net.nr org.nr tel.nr tlf.nr
util_rb_2tld ac.nz co.nz cri.nz geek.nz gen.nz govt.nz iwi.nz kiwi.nz maori.nz mil.nz net.nz org.nz parliament.nz school.nz
util_rb_2tld ac.om biz.om co.om com.om edu.om gov.om med.om mil.om mod.om museum.om net.om org.om pro.om sch.om
util_rb_2tld dk.org eu.org
util_rb_2tld abo.pa ac.pa com.pa edu.pa gob.pa ing.pa med.pa net.pa nom.pa org.pa sld.pa
util_rb_2tld com.pe edu.pe gob.pe mil.pe net.pe nom.pe org.pe
util_rb_2tld com.pf edu.pf org.pf
util_rb_2tld ac.pg com.pg net.pg
util_rb_2tld com.ph edu.ph gov.ph mil.ph net.ph ngo.ph org.ph
util_rb_2tld biz.pk com.pk edu.pk fam.pk gob.pk gok.pk gon.pk gop.pk gos.pk gov.pk net.pk org.pk web.pk
util_rb_2tld art.pl biz.pl com.pl edu.pl gov.pl info.pl mil.pl net.pl ngo.pl org.pl
util_rb_2tld biz.pr com.pr edu.pr gov.pr info.pr isla.pr name.pr net.pr org.pr pro.pr
util_rb_2tld cpa.pro law.pro med.pro
util_rb_2tld com.ps edu.ps gov.ps net.ps org.ps plo.ps sec.ps
util_rb_2tld com.pt edu.pt gov.pt int.pt net.pt nome.pt org.pt publ.pt
util_rb_2tld com.py edu.py gov.py net.py org.py
util_rb_2tld com.qa edu.qa gov.qa net.qa org.qa
util_rb_2tld asso.re com.re nom.re
util_rb_2tld arts.ro com.ro firm.ro info.ro nom.ro nt.ro org.ro rec.ro store.ro tm.ro www.ro
util_rb_2tld ac.rs co.rs edu.rs gov.rs in.rs org.rs
util_rb_2tld ac.ru com.ru edu.ru gov.ru int.ru mil.ru net.ru org.ru pp.ru
util_rb_2tld ac.rw co.rw com.rw edu.rw gouv.rw gov.rw int.rw mil.rw net.rw
util_rb_2tld com.sa edu.sa gov.sa med.sa net.sa org.sa pub.sa sch.sa
util_rb_2tld com.sb edu.sb gov.sb net.sb org.sb
util_rb_2tld com.sc edu.sc gov.sc net.sc org.sc
util_rb_2tld com.sd edu.sd gov.sd info.sd med.sd net.sd org.sd sch.sd tv.sd
util_rb_2tld ab.se ac.se bd.se brand.se c.se d.se e.se f.se fh.se fhsk.se fhv.se g.se h.se i.se k.se komforb.se kommunalforbund.se komvux.se lanarb.se lanbib.se m.se mil.se n.se naturbruksgymn.se o.se org.se parti.se pp.se press.se s.se sshn.se t.se tm.se u.se w.se x.se y.se z.se
util_rb_2tld com.sg edu.sg gov.sg idn.sg net.sg org.sg per.sg
util_rb_2tld com.sh edu.sh gov.sh mil.sh net.sh org.sh
util_rb_2tld edu.sk gov.sk mil.sk
util_rb_2tld co.st com.st consulado.st edu.st embaixada.st gov.st mil.st net.st org.st principe.st saotome.st store.st
util_rb_2tld com.sv edu.sv gob.sv org.sv red.sv
util_rb_2tld com.sy gov.sy net.sy org.sy
util_rb_2tld at.tf bg.tf ca.tf ch.tf cz.tf de.tf edu.tf eu.tf int.tf net.tf pl.tf ru.tf sg.tf us.tf
util_rb_2tld ac.th co.th go.th in.th mi.th net.th or.th
util_rb_2tld ac.tj biz.tj co.tj com.tj edu.tj go.tj gov.tj int.tj mil.tj name.tj net.tj org.tj web.tj
util_rb_2tld com.tn edunet.tn ens.tn fin.tn gov.tn ind.tn info.tn intl.tn nat.tn net.tn org.tn rnrt.tn rns.tn rnu.tn tourism.tn
util_rb_2tld gov.to
util_rb_2tld gov.tp
util_rb_2tld av.tr bbs.tr bel.tr biz.tr com.tr dr.tr edu.tr gen.tr gov.tr info.tr k12.tr mil.tr name.tr net.tr org.tr pol.tr tel.tr web.tr
util_rb_2tld aero.tt at.tt au.tt be.tt biz.tt ca.tt co.tt com.tt coop.tt de.tt dk.tt edu.tt es.tt eu.tt fr.tt gov.tt info.tt int.tt it.tt jobs.tt mobi.tt museum.tt name.tt net.tt nic.tt org.tt pro.tt se.tt travel.tt uk.tt us.tt
util_rb_2tld co.tv gov.tv
util_rb_2tld club.tw com.tw ebiz.tw edu.tw game.tw gov.tw idv.tw mil.tw net.tw org.tw
util_rb_2tld ac.tz co.tz go.tz ne.tz or.tz
util_rb_2tld cherkassy.ua chernigov.ua chernovtsy.ua ck.ua cn.ua co.ua com.ua crimea.ua cv.ua dn.ua dnepropetrovsk.ua donetsk.ua dp.ua edu.ua gov.ua if.ua in.ua ivano-frankivsk.ua kh.ua kharkov.ua kherson.ua khmelnitskiy.ua kiev.ua kirovograd.ua km.ua kr.ua ks.ua kv.ua lg.ua lugansk.ua lutsk.ua lviv.ua mk.ua net.ua nikolaev.ua od.ua odessa.ua org.ua pl.ua poltava.ua rovno.ua rv.ua sebastopol.ua sumy.ua te.ua ternopil.ua uzhgorod.ua vinnica.ua vn.ua zaporizhzhe.ua zhitomir.ua zp.ua zt.ua
util_rb_2tld ac.ug co.ug go.ug ne.ug or.ug sc.ug
util_rb_2tld ac.uk bl.uk british-library.uk co.uk edu.uk gov.uk icnet.uk jet.uk ltd.uk me.uk mod.uk national-library-scotland.uk net.uk nhs.uk nic.uk nls.uk org.uk parliament.uk plc.uk police.uk sch.uk
util_rb_2tld ak.us al.us ar.us az.us ca.us co.us ct.us dc.us de.us dni.us fed.us fl.us ga.us hi.us ia.us id.us il.us in.us isa.us kids.us ks.us ky.us la.us ma.us md.us me.us mi.us mn.us mo.us ms.us mt.us nc.us nd.us ne.us nh.us nj.us nm.us nsn.us nv.us ny.us oh.us ok.us or.us pa.us ri.us sc.us sd.us tn.us tx.us ut.us va.us vt.us wa.us wi.us wv.us wy.us
util_rb_2tld com.uy edu.uy gub.uy mil.uy net.uy org.uy
util_rb_2tld vatican.va
util_rb_2tld arts.ve bib.ve co.ve com.ve edu.ve firm.ve gov.ve info.ve int.ve mil.ve net.ve nom.ve org.ve rec.ve store.ve tec.ve web.ve
util_rb_2tld co.vi com.vi edu.vi gov.vi net.vi org.vi
util_rb_2tld ac.vn biz.vn com.vn edu.vn gov.vn health.vn info.vn int.vn name.vn net.vn org.vn pro.vn
util_rb_2tld ch.vu com.vu de.vu edu.vu fr.vu net.vu org.vu
util_rb_2tld com.ws edu.ws gov.ws net.ws org.ws
util_rb_2tld com.ye edu.ye gov.ye mil.ye net.ye org.ye
util_rb_2tld ac.za alt.za bourse.za city.za co.za edu.za gov.za law.za mil.za net.za ngo.za nom.za org.za school.za tm.za web.za
util_rb_2tld ac.zm co.zm  com.zm edu.zm gov.zm org.zm sch.zm
util_rb_2tld ac.zw co.zw gov.zw org.zw
#
util_rb_2tld 110mb.com
util_rb_2tld 9k.com
util_rb_2tld addr.com
util_rb_2tld altervista.org
util_rb_2tld biz.tm
util_rb_2tld blogger.ca
util_rb_2tld blogger.cf
util_rb_2tld blogger.ch
util_rb_2tld blogspot.com
util_rb_2tld blogger.cv
util_rb_2tld blogger.jp
util_rb_2tld blogger.pl
util_rb_2tld blogger.re
util_rb_2tld blogger.se
util_rb_2tld blogspot.ca
util_rb_2tld blogspot.cv
util_rb_2tld blogspot.de
util_rb_2tld blogspot.fr
util_rb_2tld blogspot.in
util_rb_2tld blogspot.it
util_rb_2tld blogspot.jp
util_rb_2tld blogspot.mx
util_rb_2tld blogspot.pt
util_rb_2tld blogspot.re
util_rb_2tld blogspot.se
util_rb_2tld bravehost.com
util_rb_2tld bravejournal.com
util_rb_2tld by.ru
util_rb_2tld chat.ru
util_rb_2tld cjb.net
util_rb_2tld es.tl
util_rb_2tld extra.hu
util_rb_2tld freehostia.com
util_rb_2tld front.ru
util_rb_2tld geocities.com
util_rb_2tld getmyip.com
util_rb_2tld googlepages.com
util_rb_2tld helloweb.eu
util_rb_2tld host.sk
util_rb_2tld hotbox.ru
util_rb_2tld hotmail.ru
util_rb_2tld hu2.ru
util_rb_2tld hut2.ru
util_rb_2tld iblogger.org
util_rb_2tld ic.cz
util_rb_2tld id.ru
util_rb_2tld kwik.to
util_rb_2tld land.ru
util_rb_2tld mine.nu
util_rb_2tld mooo.com
util_rb_2tld narod.ru
util_rb_2tld netsolhost.com
util_rb_2tld na.by
util_rb_2tld newmail.ru
util_rb_2tld nextmail.ru
util_rb_2tld nightmail.ru
util_rb_2tld nm.ru
util_rb_2tld notlong.com
util_rb_2tld page.tl
util_rb_2tld pochta.ru
util_rb_2tld pochtamt.ru
util_rb_2tld pop3.ru
util_rb_2tld proboards.com
util_rb_2tld rbcmail.ru
util_rb_2tld rm.ru
util_rb_2tld smtp.ru
util_rb_2tld sol.ru
util_rb_2tld t35.com
util_rb_2tld tripod.com
util_rb_2tld uk.to
util_rb_2tld unblog.fr
util_rb_2tld us.to
util_rb_2tld web-soft.ru
util_rb_2tld wz.cz
util_rb_2tld zmail.ru
util_rb_2tld t35.net
util_rb_2tld t35.com
util_rb_2tld wordpress.com
util_rb_2tld jino-net.ru
util_rb_2tld 6a.org
util_rb_2tld xf.cz
util_rb_2tld fr.tc
util_rb_2tld googlegroups.com
util_rb_2tld 150m.com
util_rb_2tld bravepages.com
util_rb_2tld ucoz.ru
util_rb_2tld ucoz.com
util_rb_2tld ucoz.net
util_rb_2tld szm.com
util_rb_2tld geocities.jp
util_rb_2tld gmxhome.de
util_rb_2tld freeservercity.com
util_rb_2tld iquebec.com
util_rb_2tld mail2k.ru
util_rb_2tld mail.ru
util_rb_2tld ath.cx
util_rb_2tld go.ro
util_rb_2tld z8.ru
util_rb_2tld appspot.com
util_rb_2tld gigazu.net
util_rb_2tld weebly.com
util_rb_2tld ifrance.com
util_rb_2tld jimdo.com
util_rb_2tld kimsufi.com
util_rb_2tld mail333.su
util_rb_2tld pisem.su
util_rb_2tld mail15.su
util_rb_2tld prserv.net
util_rb_2tld angelfire.com
util_rb_2tld 163.to
util_rb_2tld home.pl
util_rb_2tld redirectme.net
util_rb_2tld interia.pl
util_rb_2tld co.kg
util_rb_2tld ning.com
util_rb_2tld xorg.pl
util_rb_2tld free.fr
util_rb_2tld we.bs
util_rb_2tld net.tc
util_rb_2tld isuisse.com
util_rb_2tld de.ki
util_rb_2tld funpic.de
util_rb_2tld interii.pl
util_rb_2tld selfip.com
#util_rb_2tld livejournal.com - Removed per bug 6662 4/7/15 - KAM
util_rb_2tld t3.to
util_rb_2tld fx.to
util_rb_2tld iespana.es
util_rb_2tld go.com
util_rb_2tld hostevo.com
util_rb_2tld iwebsource.com
util_rb_2tld one.pl
util_rb_2tld gratishost.com
util_rb_2tld netfirms.com
util_rb_2tld ibelgique.com
util_rb_2tld to.it
util_rb_2tld whsites.net
util_rb_2tld home.ro
util_rb_2tld 1blu.de
util_rb_2tld co.cc
util_rb_2tld cc.cc
util_rb_2tld webs.com
util_rb_2tld webcindario.com
util_rb_2tld idoo.com
util_rb_2tld selfip.net
util_rb_2tld ovh.net
util_rb_2tld sapo.pt
util_rb_2tld homeip.net
util_rb_2tld unlugar.com
util_rb_2tld nov.ru
util_rb_2tld republika.pl
util_rb_2tld blog.com
util_rb_2tld sosblog.com
util_rb_2tld servebbs.com
util_rb_2tld serveftp.com
util_rb_2tld gob.ve
util_rb_2tld xanga.com
util_rb_2tld com.vc
util_rb_2tld net.vc
util_rb_2tld org.vc
util_rb_2tld kickme.to
util_rb_2tld asso.ws
util_rb_2tld url.st
util_rb_2tld at.pn
util_rb_2tld au.pn
util_rb_2tld ca.pn
util_rb_2tld ch.pn
util_rb_2tld cn.pn
util_rb_2tld co.pn
util_rb_2tld corp.st
util_rb_2tld societe.st
util_rb_2tld de.pn
util_rb_2tld es.pn
util_rb_2tld eu.pn
util_rb_2tld euro.tm
util_rb_2tld fr.pn
util_rb_2tld gov.pn
util_rb_2tld government.pn
util_rb_2tld it.pn
util_rb_2tld jp.pn
util_rb_2tld perso.tc
util_rb_2tld site.tc
util_rb_2tld societe.st
util_rb_2tld url.st
util_rb_2tld blog.ru
util_rb_2tld eu.tc
util_rb_2tld us.tc
util_rb_2tld pro.tc
util_rb_2tld de.tc
util_rb_2tld at.tc
util_rb_2tld it.tc
util_rb_2tld es.tc
util_rb_2tld ru.tc
util_rb_2tld se.tc
util_rb_2tld dk.tc
util_rb_2tld be.tc
util_rb_2tld no.tc
util_rb_2tld int.tc
util_rb_2tld pl.tc
util_rb_2tld bg.tc
util_rb_2tld cz.tc
util_rb_2tld mx.tc
util_rb_2tld br.tc
util_rb_2tld hk.tc
util_rb_2tld kr.tc
util_rb_2tld th.tc
util_rb_2tld ph.tc
util_rb_2tld at.lv
util_rb_2tld de.lv
util_rb_2tld ch.lv
util_rb_2tld org.rw
util_rb_2tld myvnc.com
util_rb_2tld blog4ever.com
util_rb_2tld sytes.net
util_rb_2tld multiply.com
util_rb_2tld 80.hk
util_rb_2tld shutterfly.com
util_rb_2tld chez.com
util_rb_2tld ce.ms
util_rb_2tld zapto.org
util_rb_2tld cz.cc
util_rb_2tld fromru.su
util_rb_2tld krovatka.su
util_rb_2tld pochta.com
util_rb_2tld 5ballov.ru
util_rb_2tld usa.cc
util_rb_2tld jpn.com
util_rb_2tld yolasite.com
util_rb_2tld in.net
util_rb_2tld com.de
util_rb_2tld biz.ua
util_rb_2tld azurewebsites.net
util_rb_2tld azureedge.net
util_rb_2tld zohosites.com
#
util_rb_2tld neostrada.pl
util_rb_2tld vv.cc
util_rb_2tld co.be
util_rb_2tld uni.cc
util_rb_2tld shop.co
util_rb_2tld tumblr.com
util_rb_2tld fileave.com
util_rb_2tld de.tl
util_rb_2tld co.com
# Dyndns.com
util_rb_2tld dyndns-at-home.com
util_rb_2tld dyndns-at-work.com
util_rb_2tld dyndns-blog.com
util_rb_2tld dyndns-free.com
util_rb_2tld dyndns-home.com
util_rb_2tld dyndns-ip.com
util_rb_2tld dyndns-mail.com
util_rb_2tld dyndns-office.com
util_rb_2tld dyndns-pics.com
util_rb_2tld dyndns-remote.com
util_rb_2tld dyndns-server.com
util_rb_2tld dyndns-web.com
util_rb_2tld dyndns-wiki.com
util_rb_2tld dyndns-work.com
util_rb_2tld dyndns.biz
util_rb_2tld dyndns.info
util_rb_2tld dyndns.org
util_rb_2tld dyndns.tv
util_rb_2tld dyndns.dk
util_rb_2tld dyndns.ws
util_rb_2tld mydyndns.org
util_rb_2tld qip.ru
#
util_rb_2tld no-ip.biz
util_rb_2tld no-ip.ca
util_rb_2tld no-ip.com
util_rb_2tld no-ip.info
util_rb_2tld no-ip.net
util_rb_2tld no-ip.org
#
util_rb_2tld gotdns.ch
util_rb_2tld ddnsking.com
util_rb_2tld ddns.net
util_rb_2tld bounceme.net
util_rb_2tld hopto.org
util_rb_2tld serveblog.net
util_rb_2tld myftp.org
util_rb_2tld myftp.biz


#
# 3rd level TLD list (SA 3.3+)
#
# There was a bug before 3.4.1(?), only one 3TLD per line works!
#

if (version >= 3.003000)

util_rb_3tld demon.co.uk
util_rb_3tld esc.edu.ar
util_rb_3tld lkd.co.im
util_rb_3tld plc.co.im
util_rb_3tld ltd.co.im
#
util_rb_3tld bay.livefilestore.com
util_rb_3tld blu.livefilestore.com
util_rb_3tld groups.live.com
util_rb_3tld spaces.live.com
util_rb_3tld profile.live.com
util_rb_3tld web.aplus.net
util_rb_3tld cloud.prohosting.com
util_rb_3tld skydrive.live.com
util_rb_3tld docs.google.com
util_rb_3tld spaces.msn.com
util_rb_3tld blog.friendster.com
util_rb_3tld plc.co.im
util_rb_3tld ltd.co.im
util_rb_3tld sakura.ne.jp
util_rb_3tld web.officelive.com
util_rb_3tld com.sapo.pt
util_rb_3tld paginas.sapo.pt
util_rb_3tld no.sapo.pt
util_rb_3tld home.sapo.pt
util_rb_3tld do.sapo.pt
util_rb_3tld homepage.t-online.de
util_rb_3tld privat.t-online.de
util_rb_3tld web.fc2.com
util_rb_3tld co.uk.pn
util_rb_3tld com.au.pn
util_rb_3tld co.at.pn
util_rb_3tld co.at.lv
util_rb_3tld or.at.lv
util_rb_3tld co.at.tc
util_rb_3tld qld.edu.au
util_rb_3tld perso.neuf.fr
util_rb_3tld perso.sfr.fr
util_rb_3tld hop.clickbank.net
util_rb_3tld user.icpnet.pl
util_rb_3tld en.alibaba.com
#
util_rb_3tld blogspot.co.nz
util_rb_3tld blogspot.co.uk
util_rb_3tld blogspot.com.ar
util_rb_3tld blogspot.com.au
util_rb_3tld blogspot.com.br
util_rb_3tld blogspot.com.es
#
util_rb_3tld no-ip.co.uk
#
util_rb_3tld mobile.web.tr

endif


