# 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 actor ad adac ads adult ae aeg aero aetna 
util_rb_tld af afamilycompany afl africa ag agakhan agency ai aig airbus airforce airtel 
util_rb_tld akdn al alfaromeo alibaba alipay allfinanz allstate ally alsace alstom am 
util_rb_tld amazon 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 blockbuster blog bloomberg 
util_rb_tld blue bm bms bmw bn bnpparibas bo boats boehringer bofa bom bond boo book 
util_rb_tld booking bosch bostik boston bot boutique box 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 calvinklein cam camera camp cancerresearch 
util_rb_tld canon capetown capital capitalone car caravan cards care career careers cars 
util_rb_tld casa case caseih cash casino cat catering catholic cba cbn cbre cbs cc cd ceb 
util_rb_tld center ceo cern cf cfa cfd cg ch chanel channel charity chase chat cheap 
util_rb_tld chintai christmas chrome church ci cipriani circle cisco citadel citi 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 comcast commbank 
util_rb_tld community company compare computer comsec condos construction consulting 
util_rb_tld contact contractors cooking cookingchannel cool coop corsica country coupon 
util_rb_tld coupons courses cpa cr credit creditcard creditunion cricket crown crs cruise 
util_rb_tld cruises csc cu cuisinella cv cw cx cy cymru cyou cz dabur dad dance data date 
util_rb_tld dating datsun day dclk dds de deal dealer deals degree delivery dell deloitte 
util_rb_tld delta democrat dental dentist desi design dev dhl diamonds diet digital direct 
util_rb_tld directory discount discover dish diy dj dk dm dnp do docs doctor dog domains 
util_rb_tld dot download drive dtv dubai duck dunlop dupont durban dvag dvr dz earth eat ec 
util_rb_tld eco edeka edu education ee eg email emerck energy engineer engineering 
util_rb_tld enterprises epson equipment er ericsson erni es esq estate et etisalat eu 
util_rb_tld eurovision eus events exchange expert exposed express extraspace fage fail 
util_rb_tld fairwinds faith family fan fans farm farmers fashion fast fedex feedback 
util_rb_tld ferrari ferrero fi fiat fidelity fido film final finance financial fire 
util_rb_tld firestone firmdale fish fishing fit fitness fj fk flickr flights flir florist 
util_rb_tld flowers fly fm fo foo food foodnetwork football ford forex forsale forum 
util_rb_tld foundation fox fr free fresenius frl frogans frontdoor frontier ftr fujitsu 
util_rb_tld fujixerox fun fund furniture futbol fyi ga gal gallery gallo gallup game games 
util_rb_tld gap garden gay gb gbiz gd gdn ge gea gent genting george gf gg ggee gh gi gift 
util_rb_tld gifts gives giving gl glade glass gle global globo gm gmail gmbh gmo gmx gn 
util_rb_tld godaddy gold goldpoint golf goo goodyear goog google gop got gov gp gq gr 
util_rb_tld grainger graphics gratis green gripe grocery group gs gt gu guardian gucci guge 
util_rb_tld guide guitars guru gw gy hair hamburg hangout haus hbo hdfc hdfcbank health 
util_rb_tld healthcare help helsinki here hermes hgtv hiphop hisamitsu hitachi hiv hk hkt 
util_rb_tld hm hn hockey holdings holiday homedepot homegoods homes homesense honda horse 
util_rb_tld hospital host hosting hot hoteles hotels hotmail house how hr hsbc ht hu hughes 
util_rb_tld hyatt hyundai ibm icbc ice icu id ie ieee ifm ikano il im imamat imdb immo 
util_rb_tld immobilien in inc industries infiniti info ing ink institute insurance insure 
util_rb_tld int intel international intuit investments io ipiranga iq ir irish is ismaili 
util_rb_tld ist istanbul it itau itv iveco jaguar java jcb jcp je jeep jetzt jewelry jio 
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 lamborghini lamer lancaster lancia land 
util_rb_tld landrover lanxess lasalle lat latino latrobe law lawyer lb lc lds lease leclerc 
util_rb_tld lefrak legal lego lexus lgbt li lidl life lifeinsurance lifestyle lighting like 
util_rb_tld lilly limited limo lincoln linde link lipsy live living lixil lk llc llp loan 
util_rb_tld loans locker locus loft lol london lotte lotto love lpl lplfinancial lr ls lt 
util_rb_tld ltd ltda lu lundbeck lupin luxe luxury lv ly ma macys madrid maif maison makeup 
util_rb_tld man management mango map market marketing markets marriott marshalls maserati 
util_rb_tld mattel mba mc mckinsey md me med media meet melbourne meme memorial men menu 
util_rb_tld merckmsd metlife mg mh miami microsoft mil mini mint mit mitsubishi mk ml mlb 
util_rb_tld mls mm mma mn mo mobi mobile moda moe moi mom monash money monster mormon 
util_rb_tld mortgage moscow moto motorcycles mov movie mp mq mr ms msd mt mtn mtr mu museum 
util_rb_tld mutual mv mw mx my mz na nab nagoya name nationwide natura navy nba nc ne nec 
util_rb_tld net netbank netflix network neustar new newholland news next nextdirect nexus 
util_rb_tld nf nfl ng ngo nhk ni nico nike nikon ninja nissan nissay nl no nokia 
util_rb_tld northwesternmutual norton now nowruz nowtv np nr nra nrw ntt nu nyc nz obi 
util_rb_tld observer off office okinawa olayan olayangroup oldnavy ollo om omega one ong 
util_rb_tld onl online onyourside ooo open oracle orange org organic origins osaka otsuka 
util_rb_tld ott ovh pa page panasonic paris pars partners parts party passagens pay pccw pe 
util_rb_tld pet pf pfizer pg ph pharmacy phd philips phone photo photography photos physio 
util_rb_tld pics pictet pictures pid pin ping pink pioneer pizza pk pl place play 
util_rb_tld playstation plumbing plus pm pn pnc pohl poker politie porn post pr pramerica 
util_rb_tld praxi press prime pro prod productions prof progressive promo properties 
util_rb_tld property protection pru prudential ps pt pub pw pwc py qa qpon quebec quest qvc 
util_rb_tld racing radio raid re read realestate realtor realty recipes red redstone 
util_rb_tld redumbrella rehab reise reisen reit reliance ren rent rentals repair report 
util_rb_tld republican rest restaurant review reviews rexroth rich richardli ricoh 
util_rb_tld rightathome ril rio rip rmit ro rocher rocks rodeo rogers room rs rsvp ru rugby 
util_rb_tld ruhr run rw rwe ryukyu sa saarland safe safety sakura sale salon samsclub 
util_rb_tld samsung sandvik sandvikcoromant sanofi sap sarl sas save saxo sb sbi sbs sc sca 
util_rb_tld scb schaeffler schmidt scholarships school schule schwarz science scjohnson 
util_rb_tld scot sd se search seat secure security seek select sener services ses seven sew 
util_rb_tld sex sexy sfr sg sh shangrila sharp shaw shell shia shiksha shoes shop shopping 
util_rb_tld shouji show showtime shriram si silk sina singles site sj sk ski skin sky skype 
util_rb_tld sl sling sm smart smile sn sncf so soccer social softbank software sohu solar 
util_rb_tld solutions song sony soy space sport spot spreadbetting sr srl ss st stada 
util_rb_tld staples star statebank statefarm stc stcgroup stockholm storage store stream 
util_rb_tld studio study style su sucks supplies supply support surf surgery suzuki sv 
util_rb_tld swatch swiftcover swiss sx sy sydney symantec systems sz tab taipei talk taobao 
util_rb_tld target tatamotors tatar tattoo tax taxi tc tci td tdk team tech technology tel 
util_rb_tld temasek tennis teva tf tg th thd theater theatre tiaa tickets tienda tiffany 
util_rb_tld tips tires tirol tj tjmaxx tjx tk tkmaxx tl tm tmall tn to today tokyo tools 
util_rb_tld top toray toshiba total tours town toyota toys tr trade trading training travel 
util_rb_tld travelchannel travelers travelersinsurance trust trv tt tube tui tunes tushu tv 
util_rb_tld tvs tw tz ua ubank ubs ug uk unicom university uno uol ups us uy uz va 
util_rb_tld vacations vana vanguard vc ve vegas ventures verisign versicherung vet vg vi 
util_rb_tld viajes video vig viking villas vin vip virgin visa vision viva vivo vlaanderen 
util_rb_tld vn vodka volkswagen volvo vote voting voto voyage vu vuelos wales walmart 
util_rb_tld walter wang wanggou watch watches weather weatherchannel webcam weber website 
util_rb_tld wed wedding weibo weir wf whoswho wien wiki williamhill win windows wine 
util_rb_tld winners wme wolterskluwer woodside work works world wow ws wtc wtf xbox xerox 
util_rb_tld xfinity xihuan xin xxx xyz yachts yahoo yamaxun yandex ye yodobashi yoga 
util_rb_tld yokohama you youtube yt yun za zappos zara zero zip 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 firebaseapp.com
util_rb_2tld web.app
#
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
util_rb_3tld ct.sendgrid.net

endif


