# 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 https://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 https://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 https://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--1ck2e1b xn--1qqw23a xn--2scrj9c xn--30rr7y xn--3bst00m 
util_rb_tld xn--3ds443g xn--3e0b707e xn--3hcrj9c xn--3oq18vl8pn36a xn--3pxu8k xn--42c2d9a 
util_rb_tld xn--45br5cyl xn--45brj9c xn--45q11c xn--4gbrim xn--54b7fta0cc xn--55qw42g 
util_rb_tld xn--55qx5d xn--5su34j936bgsg xn--5tzm5g xn--6frz82g xn--6qq986b3xl xn--80adxhks 
util_rb_tld xn--80ao21a xn--80aqecdr1a xn--80asehdb xn--80aswg xn--8y0a063a xn--90a3ac 
util_rb_tld xn--90ae xn--90ais xn--9dbq2a xn--9et52u xn--9krt00a xn--b4w605ferd 
util_rb_tld xn--bck1b9a5dre4c xn--c1avg xn--c2br7g xn--cck2b3b xn--cg4bki 
util_rb_tld xn--clchc0ea0b2g2a9gcd xn--czr694b xn--czrs0t xn--czru2d xn--d1acj3b xn--d1alf 
util_rb_tld xn--e1a4c xn--eckvdtc9d xn--efvy88h xn--estv75g xn--fct429k xn--fhbei 
util_rb_tld xn--fiq228c5hs xn--fiq64b xn--fiqs8s xn--fiqz9s xn--fjq720a xn--flw351e 
util_rb_tld xn--fpcrj9c3d xn--fzc2c9e2c xn--fzys8d69uvgm xn--g2xx48c xn--gckr3f0f 
util_rb_tld xn--gecrj9c xn--gk3at1e xn--h2breg3eve xn--h2brj9c xn--h2brj9c8c xn--hxt814e 
util_rb_tld xn--i1b6b1a6a2e xn--imr513n xn--io0a7i xn--j1aef xn--j1amh xn--j6w193g 
util_rb_tld xn--jlq61u9w7b xn--jvr189m xn--kcrx77d1x4a xn--kprw13d xn--kpry57d xn--kpu716f 
util_rb_tld xn--kput3i xn--l1acc xn--lgbbat1ad8j xn--mgb9awbf xn--mgba3a3ejt 
util_rb_tld xn--mgba3a4f16a xn--mgba7c0bbn0a xn--mgbaakc7dvf xn--mgbaam7a8h xn--mgbab2bd 
util_rb_tld xn--mgbai9azgqp6j xn--mgbayh7gpa xn--mgbb9fbpob xn--mgbbh1a xn--mgbbh1a71e 
util_rb_tld xn--mgbc0a9azcg xn--mgbca7dzdo xn--mgberp4a5d4ar xn--mgbgu82a xn--mgbi4ecexp 
util_rb_tld xn--mgbpl2fh xn--mgbt3dhd xn--mgbtx2b xn--mgbx4cd0ab xn--mix891f xn--mk1bu44c 
util_rb_tld xn--mxtq1m xn--ngbc5azd xn--ngbe9e0a xn--ngbrx xn--node xn--nqv7f 
util_rb_tld xn--nqv7fs00ema xn--nyqy26a xn--o3cw4h xn--ogbpf8fl xn--otu796d xn--p1acf 
util_rb_tld xn--p1ai xn--pbt977c xn--pgbs0dh xn--pssy2u xn--q9jyb4c xn--qcka1pmc xn--qxam 
util_rb_tld xn--rhqv96g xn--rovu88b xn--rvc1e0am3e xn--s9brj9c xn--ses554g xn--t60b56a 
util_rb_tld xn--tckwe xn--tiq49xqyj xn--unup4y xn--vermgensberater-ctb 
util_rb_tld xn--vermgensberatung-pwb xn--vhquv xn--vuq861b xn--w4r85el8fhu5dnra xn--w4rs40l 
util_rb_tld xn--wgbh1c xn--wgbl6a xn--xhq521b xn--xkc2al3hye2a xn--xkc2dl3a5ee0h xn--y9a3aq 
util_rb_tld xn--yfro4i67o 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 https://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 abarth abb abbott abbvie abc able abogado abudhabi ac academy 
util_rb_tld accenture accountant accountants aco active actor ad adac ads adult ae aeg aero 
util_rb_tld aetna af afamilycompany afl africa ag agakhan agency ai aig aigo airbus 
util_rb_tld airforce airtel akdn al alfaromeo alibaba alipay allfinanz allstate ally alsace 
util_rb_tld alstom am americanexpress americanfamily amex amfam amica amsterdam analytics 
util_rb_tld android anquan anz ao aol apartments app apple aq aquarelle ar arab aramco 
util_rb_tld archi army arpa art arte as asda asia associates at athleta attorney au auction 
util_rb_tld audi audible audio auspost author auto autos avianca aw aws ax axa az azure ba 
util_rb_tld baby baidu banamex bananarepublic band bank bar barcelona barclaycard barclays 
util_rb_tld barefoot bargains baseball basketball bauhaus bayern bb bbc bbt bbva bcg bcn bd 
util_rb_tld be beats beauty beer bentley berlin best bestbuy bet bf bg bh bharti bi bible 
util_rb_tld bid bike bing bingo bio biz bj black blackfriday blanco blockbuster blog 
util_rb_tld bloomberg blue bm bms bmw bn bnl bnpparibas bo boats boehringer bofa bom bond 
util_rb_tld boo book booking bosch bostik boston bot boutique box br bradesco bridgestone 
util_rb_tld broadway broker brother brussels bs bt budapest bugatti build builders business 
util_rb_tld buy buzz bv bw by bz bzh ca cab cafe cal call calvinklein cam camera camp 
util_rb_tld cancerresearch canon capetown capital capitalone car caravan cards care career 
util_rb_tld careers cars cartier casa case caseih cash casino cat catering catholic cba cbn 
util_rb_tld cbre cbs cc cd ceb center ceo cern cf cfa cfd cg ch chanel channel charity 
util_rb_tld chase chat cheap chintai christmas chrome chrysler church ci cipriani circle 
util_rb_tld cisco citadel citi citic city cityeats ck cl claims cleaning click clinic 
util_rb_tld clinique clothing cloud club clubmed cm cn co coach codes coffee college 
util_rb_tld cologne com comcast commbank community company compare computer comsec condos 
util_rb_tld construction consulting contact contractors cooking cookingchannel cool coop 
util_rb_tld corsica country coupon coupons courses cr credit creditcard creditunion cricket 
util_rb_tld crown crs cruise cruises csc cu cuisinella cv cw cx cy cymru cyou cz dabur dad 
util_rb_tld dance data date dating datsun day dclk dds de deal dealer deals degree delivery 
util_rb_tld dell deloitte delta democrat dental dentist desi design dev dhl diamonds diet 
util_rb_tld digital direct directory discount discover dish diy dj dk dm dnp do docs doctor 
util_rb_tld dodge dog doha domains dot download drive dtv dubai duck dunlop duns dupont 
util_rb_tld durban dvag dvr dz earth eat ec eco edeka edu education ee eg email emerck 
util_rb_tld energy engineer engineering enterprises epost epson equipment er ericsson erni 
util_rb_tld es esq estate esurance et etisalat eu eurovision eus events everbank exchange 
util_rb_tld expert exposed express extraspace fage fail fairwinds faith family fan fans 
util_rb_tld farm farmers fashion fast fedex feedback ferrari ferrero fi fiat fidelity fido 
util_rb_tld film final finance financial fire firestone firmdale fish fishing fit fitness 
util_rb_tld fj fk flickr flights flir florist flowers fly fm fo foo food foodnetwork 
util_rb_tld football ford forex forsale forum foundation fox fr free fresenius frl frogans 
util_rb_tld frontdoor frontier ftr fujitsu fujixerox fun fund furniture futbol fyi ga gal 
util_rb_tld gallery gallo gallup game games gap garden gb gbiz gd gdn ge gea gent genting 
util_rb_tld george gf gg ggee gh gi gift gifts gives giving gl glade glass gle global globo 
util_rb_tld gm gmail gmbh gmo gmx gn godaddy gold goldpoint golf goo goodhands goodyear 
util_rb_tld goog google gop got gov gp gq gr grainger graphics gratis green gripe grocery 
util_rb_tld group gs gt gu guardian gucci guge guide guitars guru gw gy hair hamburg 
util_rb_tld hangout haus hbo hdfc hdfcbank health healthcare help helsinki here hermes hgtv 
util_rb_tld hiphop hisamitsu hitachi hiv hk hkt hm hn hockey holdings holiday homedepot 
util_rb_tld homegoods homes homesense honda honeywell horse hospital host hosting hot 
util_rb_tld hoteles hotels hotmail house how hr hsbc ht hu hughes hyatt hyundai ibm icbc 
util_rb_tld ice icu id ie ieee ifm ikano il im imamat imdb immo immobilien in inc 
util_rb_tld industries infiniti info ing ink institute insurance insure int intel 
util_rb_tld international intuit investments io ipiranga iq ir irish is iselect ismaili ist 
util_rb_tld istanbul it itau itv iveco jaguar java jcb jcp je jeep jetzt jewelry jio jlc 
util_rb_tld jll jm jmp jnj jo jobs joburg jot joy jp jpmorgan jprs juegos juniper kaufen 
util_rb_tld kddi ke kerryhotels kerrylogistics kerryproperties kfh kg kh ki kia kim kinder 
util_rb_tld kindle kitchen kiwi km kn koeln komatsu kosher kp kpmg kpn kr krd kred 
util_rb_tld kuokgroup kw ky kyoto kz la lacaixa ladbrokes lamborghini lamer lancaster 
util_rb_tld lancia lancome land landrover lanxess lasalle lat latino latrobe law lawyer lb 
util_rb_tld lc lds lease leclerc lefrak legal lego lexus lgbt li liaison lidl life 
util_rb_tld lifeinsurance lifestyle lighting like lilly limited limo lincoln linde link 
util_rb_tld lipsy live living lixil lk llc loan loans locker locus loft lol london lotte 
util_rb_tld lotto love lpl lplfinancial lr ls lt ltd ltda lu lundbeck lupin luxe luxury lv 
util_rb_tld ly ma macys madrid maif maison makeup man management mango map market marketing 
util_rb_tld markets marriott marshalls maserati mattel mba mc mckinsey md me med media meet 
util_rb_tld melbourne meme memorial men menu merckmsd metlife mg mh miami microsoft mil 
util_rb_tld mini mint mit mitsubishi mk ml mlb mls mm mma mn mo mobi mobile mobily moda moe 
util_rb_tld moi mom monash money monster mopar mormon mortgage moscow moto motorcycles mov 
util_rb_tld movie movistar mp mq mr ms msd mt mtn mtr mu museum mutual mv mw mx my mz na 
util_rb_tld nab nadex nagoya name nationwide natura navy nba nc ne nec net netbank netflix 
util_rb_tld network neustar new newholland news next nextdirect nexus nf nfl ng ngo nhk ni 
util_rb_tld nico nike nikon ninja nissan nissay nl no nokia northwesternmutual norton now 
util_rb_tld nowruz nowtv np nr nra nrw ntt nu nyc nz obi observer off office okinawa olayan 
util_rb_tld olayangroup oldnavy ollo om omega one ong onl online onyourside ooo open oracle 
util_rb_tld orange org organic origins osaka otsuka ott ovh pa page panasonic panerai paris 
util_rb_tld pars partners parts party passagens pay pccw pe pet pf pfizer pg ph pharmacy 
util_rb_tld phd philips phone photo photography photos physio piaget pics pictet pictures 
util_rb_tld pid pin ping pink pioneer pizza pk pl place play playstation plumbing plus pm 
util_rb_tld pn pnc pohl poker politie porn post pr pramerica praxi press prime pro prod 
util_rb_tld productions prof progressive promo properties property protection pru 
util_rb_tld prudential ps pt pub pw pwc py qa qpon quebec quest qvc racing radio raid re 
util_rb_tld read realestate realtor realty recipes red redstone redumbrella rehab reise 
util_rb_tld reisen reit reliance ren rent rentals repair report republican rest restaurant 
util_rb_tld review reviews rexroth rich richardli ricoh rightathome ril rio rip rmit ro 
util_rb_tld rocher rocks rodeo rogers room rs rsvp ru rugby ruhr run rw rwe ryukyu sa 
util_rb_tld saarland safe safety sakura sale salon samsclub samsung sandvik sandvikcoromant 
util_rb_tld sanofi sap sarl sas save saxo sb sbi sbs sc sca scb schaeffler schmidt 
util_rb_tld scholarships school schule schwarz science scjohnson scor scot sd se search 
util_rb_tld seat secure security seek select sener services ses seven sew sex sexy sfr sg 
util_rb_tld sh shangrila sharp shaw shell shia shiksha shoes shop shopping shouji show 
util_rb_tld showtime shriram si silk sina singles site sj sk ski skin sky skype sl sling sm 
util_rb_tld smart smile sn sncf so soccer social softbank software sohu solar solutions 
util_rb_tld song sony soy space spiegel sport spot spreadbetting sr srl srt st stada 
util_rb_tld staples star starhub statebank statefarm statoil stc stcgroup stockholm storage 
util_rb_tld store stream studio study style su sucks supplies supply support surf surgery 
util_rb_tld suzuki sv swatch swiftcover swiss sx sy sydney symantec systems sz tab taipei 
util_rb_tld talk taobao target tatamotors tatar tattoo tax taxi tc tci td tdk team tech 
util_rb_tld technology tel telefonica temasek tennis teva tf tg th thd theater theatre tiaa 
util_rb_tld tickets tienda tiffany tips tires tirol tj tjmaxx tjx tk tkmaxx tl tm tmall tn 
util_rb_tld to today tokyo tools top toray toshiba total tours town toyota toys tr trade 
util_rb_tld trading training travel travelchannel travelers travelersinsurance trust trv tt 
util_rb_tld tube tui tunes tushu tv tvs tw tz ua ubank ubs uconnect ug uk unicom university 
util_rb_tld uno uol ups us uy uz va vacations vana vanguard vc ve vegas ventures verisign 
util_rb_tld versicherung vet vg vi viajes video vig viking villas vin vip virgin visa 
util_rb_tld vision vista vistaprint viva vivo vlaanderen vn vodka volkswagen volvo vote 
util_rb_tld voting voto voyage vu vuelos wales walmart walter wang wanggou warman watch 
util_rb_tld watches weather weatherchannel webcam weber website wed wedding weibo weir wf 
util_rb_tld whoswho wien wiki williamhill win windows wine winners wme wolterskluwer 
util_rb_tld woodside work works world wow ws wtc wtf xbox xerox xfinity xihuan xin xxx xyz 
util_rb_tld yachts yahoo yamaxun yandex ye yodobashi yoga yokohama you youtube yt yun za 
util_rb_tld zappos zara zero zip zippo 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 : https://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 co.mz net.mz org.mz ac.mz gov.mz edu.mz
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 wixsite.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


