Files
ha.mr/compress.js
T

539 lines
123 KiB
JavaScript

/**
* @file Implements link compression/decompression.
*/
const VERSION = 0;
// Growing subcategories of the full URL alphabet
// Each also includes the hyphen and underscore as common separators
const subalphabets = [
// Numbers only
"0123456789-_",
// Uppercase only
"ABCDEFGHIJKLMNOPQRSTUVWXYZ-_",
// Lowercase only
"abcdefghijklmnopqrstuvwxyz-_",
// Uppercase and numbers
"ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_",
// Lowercase and numbers
"abcdefghijklmnopqrstuvwxyz0123456789-_",
// Uppercase and lowercase
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_",
// Upercase, lowercase and numbers (base64)
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",
// Full alphabet without slash character
"!#$&'()*+,-.0123456789:;=?~@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]_abcdefghijklmnopqrstuvwxyz%"
];
/**
* Huffman-coded dictionaries of URL characters/parts.
* Built using data from:
* - https://github.com/smythp/reddit_links_dataset
* - https://github.com/ada-url/url-dataset
*/
const tldEncode = {"us":"0000000","market":"0000001000","xyz":"0000001001","lt":"0000001010000","ae":"0000001010001","tt":"0000001010010","top":"0000001010011","hr":"000000101010","biz":"000000101011","es":"0000001011","wtf":"00000011","ceo":"000001000000000000","cbre":"000001000000000001","cfa":"000001000000000010","cern":"000001000000000011","catholic":"000001000000000100","catering":"000001000000000101","cbn":"000001000000000110","cba":"000001000000000111","chase":"000001000000001000","charity":"000001000000001001","chintai":"000001000000001010","cheap":"000001000000001011","cg":"000001000000001100","cfd":"000001000000001101","channel":"000001000000001110","chanel":"000001000000001111","canon":"000001000000010000","cam":"000001000000010001","capitalone":"000001000000010010","capetown":"000001000000010011","cal":"000001000000010100","cab":"000001000000010101","calvinklein":"000001000000010110","call":"000001000000010111","cars":"000001000000011000","careers":"000001000000011001","casino":"000001000000011010","case":"000001000000011011","caravan":"000001000000011100","car":"000001000000011101","career":"000001000000011110","care":"000001000000011111","comsec":"000001000000100000","compare":"000001000000100001","construction":"000001000000100010","condos":"000001000000100011","college":"000001000000100100","coffee":"000001000000100101","commbank":"000001000000100110","cologne":"000001000000100111","country":"000001000000101000","corsica":"000001000000101001","coupons":"000001000000101010","coupon":"000001000000101011","contact":"000001000000101100","consulting":"000001000000101101","cooking":"000001000000101110","contractors":"000001000000101111","citadel":"000001000000110000","cisco":"000001000000110001","citic":"000001000000110010","citi":"000001000000110011","chrome":"000001000000110100","christmas":"000001000000110101","circle":"000001000000110110","cipriani":"000001000000110111","clothing":"000001000000111000","clinique":"000001000000111001","coach":"000001000000111010","clubmed":"000001000000111011","claims":"000001000000111100","ck":"000001000000111101","clinic":"000001000000111110","cleaning":"000001000000111111","bcn":"000001000001000000","bcg":"000001000001000001","beauty":"000001000001000010","beats":"000001000001000011","bbc":"000001000001000100","bb":"000001000001000101","bbva":"000001000001000110","bbt":"000001000001000111","bible":"000001000001001000","bharti":"000001000001001001","bio":"000001000001001010","bing":"000001000001001011","bestbuy":"000001000001001100","best":"000001000001001101","bf":"000001000001001110","bet":"000001000001001111","azure":"000001000001010000","axa":"000001000001010001","banamex":"000001000001010010","baidu":"000001000001010011","aw":"000001000001010100","autos":"000001000001010101","ax":"000001000001010110","aws":"000001000001010111","baseball":"000001000001011000","bargains":"000001000001011001","bayern":"000001000001011010","bauhaus":"000001000001011011","barclaycard":"000001000001011100","barcelona":"000001000001011101","barefoot":"000001000001011110","barclays":"000001000001011111","box":"000001000001100000","boutique":"000001000001100001","bridgestone":"000001000001100010","bradesco":"000001000001100011","bosch":"000001000001100100","booking":"000001000001100101","boston":"000001000001100110","bostik":"000001000001100111","buy":"000001000001101000","bt":"000001000001101001","bzh":"000001000001101010","bv":"000001000001101011","broker":"000001000001101100","broadway":"000001000001101101","brussels":"000001000001101110","brother":"000001000001101111","bm":"000001000001110000","bloomberg":"000001000001110001","bmw":"000001000001110010","bms":"000001000001110011","black":"000001000001110100","bj":"000001000001110101","blockbuster":"000001000001110110","blackfriday":"000001000001110111","bond":"000001000001111000","bom":"000001000001111001","book":"000001000001111010","boo":"000001000001111011","boats":"000001000001111100","bnpparibas":"000001000001111101","bofa":"000001000001111110","boehringer":"000001000001111111","financial":"000001000010000000","final":"000001000010000001","firestone":"000001000010000010","fire":"000001000010000011","fidelity":"000001000010000100","ferrero":"000001000010000101","film":"000001000010000110","fido":"000001000010000111","flickr":"000001000010001000","fj":"000001000010001001","flir":"000001000010001010","flights":"000001000010001011","fish":"000001000010001100","firmdale":"000001000010001101","fit":"000001000010001110","fishing":"000001000010001111","fairwinds":"000001000010010000","fage":"000001000010010001","family":"000001000010010010","faith":"000001000010010011","eurovision":"000001000010010100","et":"000001000010010101","extraspace":"000001000010010110","express":"000001000010010111","fedex":"000001000010011000","fast":"000001000010011001","ferrari":"000001000010011010","feedback":"000001000010011011","fans":"000001000010011100","fan":"000001000010011101","fashion":"000001000010011110","farmers":"000001000010011111","gap":"000001000010100000","gallup":"000001000010100001","gb":"000001000010100010","gay":"000001000010100011","furniture":"000001000010100100","fujitsu":"000001000010100101","gallo":"000001000010100110","gal":"000001000010100111","gf":"000001000010101000","george":"000001000010101001","gift":"000001000010101010","ggee":"000001000010101011","gdn":"000001000010101100","gbiz":"000001000010101101","genting":"000001000010101110","gea":"000001000010101111","football":"000001000010110000","food":"000001000010110001","forex":"000001000010110010","ford":"000001000010110011","flowers":"000001000010110100","florist":"000001000010110101","foo":"000001000010110110","fly":"000001000010110111","frogans":"000001000010111000","fresenius":"000001000010111001","ftr":"000001000010111010","frontier":"000001000010111011","forum":"000001000010111100","forsale":"000001000010111101","free":"000001000010111110","fox":"000001000010111111","dealer":"000001000011000000","deal":"000001000011000001","delivery":"000001000011000010","degree":"000001000011000011","day":"000001000011000100","datsun":"000001000011000101","dds":"000001000011000110","dclk":"000001000011000111","dentist":"000001000011001000","dental":"000001000011001001","dhl":"000001000011001010","desi":"000001000011001011","deloitte":"000001000011001100","dell":"000001000011001101","democrat":"000001000011001110","delta":"000001000011001111","crown":"000001000011010000","creditunion":"000001000011010001","cruise":"000001000011010010","crs":"000001000011010011","cpa":"000001000011010100","courses":"000001000011010101","creditcard":"000001000011010110","credit":"000001000011010111","dad":"000001000011011000","cyou":"000001000011011001","date":"000001000011011010","data":"000001000011011011","cuisinella":"000001000011011100","cruises":"000001000011011101","cw":"000001000011011110","cv":"000001000011011111","edeka":"000001000011100000","eat":"000001000011100001","emerck":"000001000011100010","education":"000001000011100011","durban":"000001000011100100","dupont":"000001000011100101","dvr":"000001000011100110","dvag":"000001000011100111","ericsson":"000001000011101000","er":"000001000011101001","esq":"000001000011101010","erni":"000001000011101011","engineer":"000001000011101100","energy":"000001000011101101","epson":"000001000011101110","enterprises":"000001000011101111","discount":"000001000011110000","directory":"000001000011110001","dish":"000001000011110010","discover":"000001000011110011","diet":"000001000011110100","diamonds":"000001000011110101","direct":"000001000011110110","digital":"000001000011110111","dot":"000001000011111000","doctor":"000001000011111001","dubai":"000001000011111010","dtv":"000001000011111011","dm":"000001000011111100","diy":"000001000011111101","docs":"000001000011111110","dnp":"000001000011111111","fail":"0000010001000000","exposed":"0000010001000001","ge":"0000010001000010","finance":"0000010001000011","city":"0000010001000100","bo":"0000010001000101","domains":"0000010001000110","company":"0000010001000111","jo":"0000010001001000","ist":"0000010001001001","mo":"0000010001001010","kp":"0000010001001011","graphics":"0000010001001100","global":"0000010001001101","institute":"0000010001001110","ht":"0000010001001111","life":"00000100010100","by":"00000100010101","th":"00000100010110","news":"00000100010111","airbus":"000001000110000000","aig":"000001000110000001","airtel":"000001000110000010","airforce":"000001000110000011","aetna":"000001000110000100","aeg":"000001000110000101","agakhan":"000001000110000110","afl":"000001000110000111","ally":"000001000110001000","allstate":"000001000110001001","alstom":"000001000110001010","alsace":"000001000110001011","alibaba":"000001000110001100","akdn":"000001000110001101","allfinanz":"000001000110001110","alipay":"000001000110001111","abc":"000001000110010000","abbvie":"000001000110010001","abogado":"000001000110010010","able":"000001000110010011","aarp":"000001000110010100","aaa":"000001000110010101","abbott":"000001000110010110","abb":"000001000110010111","actor":"000001000110011000","aco":"000001000110011001","adult":"000001000110011010","ads":"000001000110011011","accenture":"000001000110011100","abudhabi":"000001000110011101","accountants":"000001000110011110","accountant":"000001000110011111","arte":"000001000110100000","arpa":"000001000110100001","associates":"000001000110100010","asda":"000001000110100011","aramco":"000001000110100100","arab":"000001000110100101","army":"000001000110100110","archi":"000001000110100111","auspost":"000001000110101000","audible":"000001000110101001","auto":"000001000110101010","author":"000001000110101011","attorney":"000001000110101100","athleta":"000001000110101101","audi":"000001000110101110","auction":"000001000110101111","amica":"000001000110110000","amfam":"000001000110110001","analytics":"000001000110110010","amsterdam":"000001000110110011","americanexpress":"000001000110110100","amazon":"000001000110110101","amex":"000001000110110110","americanfamily":"000001000110110111","apartments":"000001000110111000","aol":"000001000110111001","aquarelle":"000001000110111010","aq":"000001000110111011","anquan":"000001000110111100","android":"000001000110111101","ao":"000001000110111110","anz":"000001000110111111","pink":"0000010001110000","pictures":"0000010001110001","scot":"0000010001110010","science":"0000010001110011","museum":"0000010001110100","money":"0000010001110101","photos":"0000010001110110","np":"0000010001110111","travel":"0000010001111000","training":"0000010001111001","vu":"0000010001111010","tube":"0000010001111011","sm":"0000010001111100","show":"0000010001111101","theater":"0000010001111110","supply":"0000010001111111","sandvik":"000001001000000000","samsung":"000001001000000001","sanofi":"000001001000000010","sandvikcoromant":"000001001000000011","sale":"000001001000000100","sakura":"000001001000000101","samsclub":"000001001000000110","salon":"000001001000000111","sbi":"000001001000001000","saxo":"000001001000001001","scb":"000001001000001010","sbs":"000001001000001011","sarl":"000001001000001100","sap":"000001001000001101","save":"000001001000001110","sas":"000001001000001111","rodeo":"000001001000010000","rio":"000001001000010001","room":"000001001000010010","rogers":"000001001000010011","richardli":"000001001000010100","rich":"000001001000010101","ril":"000001001000010110","ricoh":"000001001000010111","saarland":"000001001000011000","ryukyu":"000001001000011001","safety":"000001001000011010","safe":"000001001000011011","ruhr":"000001001000011100","rsvp":"000001001000011101","rwe":"000001001000011110","rw":"000001001000011111","shiksha":"000001001000100000","shia":"000001001000100001","shopping":"000001001000100010","shoes":"000001001000100011","shangrila":"000001001000100100","sfr":"000001001000100101","shell":"000001001000100110","sharp":"000001001000100111","skin":"000001001000101000","ski":"000001001000101001","skype":"000001001000101010","sky":"000001001000101011","sina":"000001001000101100","shouji":"000001001000101101","sj":"000001001000101110","singles":"000001001000101111","sd":"000001001000110000","schwarz":"000001001000110001","seat":"000001001000110010","search":"000001001000110011","schmidt":"000001001000110100","schaeffler":"000001001000110101","schule":"000001001000110110","scholarships":"000001001000110111","seven":"000001001000111000","sener":"000001001000111001","sex":"000001001000111010","sew":"000001001000111011","security":"000001001000111100","secure":"000001001000111101","select":"000001001000111110","seek":"000001001000111111","play":"000001001001000000","pioneer":"000001001001000001","plumbing":"000001001001000010","playstation":"000001001001000011","pid":"000001001001000100","pictet":"000001001001000101","ping":"000001001001000110","pin":"000001001001000111","praxi":"000001001001001000","post":"000001001001001001","prod":"000001001001001010","prime":"000001001001001011","pohl":"000001001001001100","pnc":"000001001001001101","porn":"000001001001001110","politie":"000001001001001111","pars":"000001001001010000","paris":"000001001001010001","parts":"000001001001010010","partners":"000001001001010011","ott":"000001001001010100","otsuka":"000001001001010101","panasonic":"000001001001010110","page":"000001001001010111","philips":"000001001001011000","phd":"000001001001011001","physio":"000001001001011010","phone":"000001001001011011","pccw":"000001001001011100","pay":"000001001001011101","pg":"000001001001011110","pfizer":"000001001001011111","reisen":"000001001001100000","reise":"000001001001100001","reliance":"000001001001100010","reit":"000001001001100011","recipes":"000001001001100100","realty":"000001001001100101","rehab":"000001001001100110","redumbrella":"000001001001100111","rest":"000001001001101000","republican":"000001001001101001","rexroth":"000001001001101010","restaurant":"000001001001101011","rent":"000001001001101100","ren":"000001001001101101","repair":"000001001001101110","rentals":"000001001001101111","pru":"000001001001110000","protection":"000001001001110001","pwc":"000001001001110010","prudential":"000001001001110011","progressive":"000001001001110100","prof":"000001001001110101","property":"000001001001110110","promo":"000001001001110111","read":"000001001001111000","radio":"000001001001111001","realtor":"000001001001111010","realestate":"000001001001111011","quebec":"000001001001111100","qpon":"000001001001111101","racing":"000001001001111110","quest":"000001001001111111","verisign":"000001001010000000","ventures":"000001001010000001","vet":"000001001010000010","versicherung":"000001001010000011","ups":"000001001010000100","uol":"000001001010000101","vana":"000001001010000110","vacations":"000001001010000111","vin":"000001001010001000","villas":"000001001010001001","visa":"000001001010001010","virgin":"000001001010001011","viajes":"000001001010001100","vi":"000001001010001101","viking":"000001001010001110","vig":"000001001010001111","travelers":"000001001010010000","trading":"000001001010010001","trv":"000001001010010010","travelersinsurance":"000001001010010011","town":"000001001010010100","tours":"000001001010010101","toys":"000001001010010110","toyota":"000001001010010111","ubs":"000001001010011000","ubank":"000001001010011001","university":"000001001010011010","unicom":"000001001010011011","tunes":"000001001010011100","tui":"000001001010011101","tvs":"000001001010011110","tushu":"000001001010011111","whoswho":"000001001010100000","wf":"000001001010100001","windows":"000001001010100010","williamhill":"000001001010100011","wedding":"000001001010100100","wed":"000001001010100101","weir":"000001001010100110","weibo":"000001001010100111","wtc":"000001001010101000","wow":"000001001010101001","xerox":"000001001010101010","xbox":"000001001010101011","winners":"000001001010101100","wine":"000001001010101101","woodside":"000001001010101110","wme":"000001001010101111","voting":"000001001010110000","volvo":"000001001010110001","voyage":"000001001010110010","voto":"000001001010110011","vivo":"000001001010110100","viva":"000001001010110101","vodka":"000001001010110110","vlaanderen":"000001001010110111","weather":"000001001010111000","watches":"000001001010111001","weber":"000001001010111010","weatherchannel":"000001001010111011","walter":"000001001010111100","walmart":"000001001010111101","wanggou":"000001001010111110","wang":"000001001010111111","stockholm":"000001001011000000","stcgroup":"000001001011000001","study":"000001001011000010","storage":"000001001011000011","statebank":"000001001011000100","star":"000001001011000101","stc":"000001001011000110","statefarm":"000001001011000111","swatch":"000001001011001000","sv":"000001001011001001","sydney":"000001001011001010","swiss":"000001001011001011","surf":"000001001011001100","sucks":"000001001011001101","suzuki":"000001001011001110","surgery":"000001001011001111","softbank":"000001001011010000","soccer":"000001001011010001","song":"000001001011010010","sohu":"000001001011010011","sling":"000001001011010100","sl":"000001001011010101","smile":"000001001011010110","smart":"000001001011010111","ss":"000001001011011000","srl":"000001001011011001","staples":"000001001011011010","stada":"000001001011011011","spa":"000001001011011100","soy":"000001001011011101","spot":"000001001011011110","sport":"000001001011011111","tienda":"000001001011100000","tiaa":"000001001011100001","tirol":"000001001011100010","tires":"000001001011100011","tg":"000001001011100100","teva":"000001001011100101","theatre":"000001001011100110","thd":"000001001011100111","toray":"000001001011101000","tmall":"000001001011101001","total":"000001001011101010","toshiba":"000001001011101011","tjmaxx":"000001001011101100","tj":"000001001011101101","tkmaxx":"000001001011101110","tjx":"000001001011101111","target":"000001001011110000","taobao":"000001001011110001","tatar":"000001001011110010","tatamotors":"000001001011110011","tab":"000001001011110100","sz":"000001001011110101","talk":"000001001011110110","taipei":"000001001011110111","tel":"000001001011111000","tdk":"000001001011111001","tennis":"000001001011111010","temasek":"000001001011111011","taxi":"000001001011111100","tattoo":"000001001011111101","td":"000001001011111110","tci":"000001001011111111","jll":"000001001100000000","jio":"000001001100000001","jmp":"000001001100000010","jm":"000001001100000011","jeep":"000001001100000100","jcb":"000001001100000101","jewelry":"000001001100000110","jetzt":"000001001100000111","jprs":"000001001100001000","jpmorgan":"000001001100001001","juniper":"000001001100001010","juegos":"000001001100001011","joburg":"000001001100001100","jnj":"000001001100001101","joy":"000001001100001110","jot":"000001001100001111","insure":"000001001100010000","insurance":"000001001100010001","investments":"000001001100010010","intuit":"000001001100010011","inc":"000001001100010100","immobilien":"000001001100010101","infiniti":"000001001100010110","industries":"000001001100010111","itv":"000001001100011000","itau":"000001001100011001","java":"000001001100011010","jaguar":"000001001100011011","irish":"000001001100011100","ipiranga":"000001001100011101","istanbul":"000001001100011110","ismaili":"000001001100011111","kuokgroup":"000001001100100000","kred":"000001001100100001","kyoto":"000001001100100010","ky":"000001001100100011","kpmg":"000001001100100100","kosher":"000001001100100101","krd":"000001001100100110","kpn":"000001001100100111","lasalle":"000001001100101000","lanxess":"000001001100101001","latino":"000001001100101010","lat":"000001001100101011","lamborghini":"000001001100101100","lacaixa":"000001001100101101","landrover":"000001001100101110","lamer":"000001001100101111","kg":"000001001100110000","kfh":"000001001100110001","kids":"000001001100110010","kia":"000001001100110011","kddi":"000001001100110100","kaufen":"000001001100110101","kerryproperties":"000001001100110110","kerryhotels":"000001001100110111","kn":"000001001100111000","km":"000001001100111001","komatsu":"000001001100111010","koeln":"000001001100111011","kindle":"000001001100111100","kim":"000001001100111101","kiwi":"000001001100111110","kitchen":"000001001100111111","gu":"000001001101000000","grocery":"000001001101000001","guge":"000001001101000010","gucci":"000001001101000011","gratis":"000001001101000100","grainger":"000001001101000101","gripe":"000001001101000110","green":"000001001101000111","hdfc":"000001001101001000","hbo":"000001001101001001","healthcare":"000001001101001010","hdfcbank":"000001001101001011","gw":"000001001101001100","guitars":"000001001101001101","hangout":"000001001101001110","hair":"000001001101001111","gmbh":"000001001101010000","gmail":"000001001101010001","gmx":"000001001101010010","gmo":"000001001101010011","giving":"000001001101010100","gifts":"000001001101010101","globo":"000001001101010110","glass":"000001001101010111","goog":"000001001101011000","goodyear":"000001001101011001","got":"000001001101011010","gop":"000001001101011011","godaddy":"000001001101011100","gn":"000001001101011101","golf":"000001001101011110","goldpoint":"000001001101011111","hyatt":"000001001101100000","hughes":"000001001101100001","ibm":"000001001101100010","hyundai":"000001001101100011","hotmail":"000001001101100100","hotels":"000001001101100101","hsbc":"000001001101100110","house":"000001001101100111","imamat":"000001001101101000","ikano":"000001001101101001","immo":"000001001101101010","imdb":"000001001101101011","ice":"000001001101101100","icbc":"000001001101101101","ifm":"000001001101101110","ieee":"000001001101101111","hiv":"000001001101110000","hitachi":"000001001101110001","holiday":"000001001101110010","hkt":"000001001101110011","here":"000001001101110100","helsinki":"000001001101110101","hisamitsu":"000001001101110110","hermes":"000001001101110111","hospital":"000001001101111000","honda":"000001001101111001","hot":"000001001101111010","hosting":"000001001101111011","homegoods":"000001001101111100","homedepot":"000001001101111101","homesense":"000001001101111110","homes":"000001001101111111","nab":"000001001110000000","mz":"000001001110000001","navy":"000001001110000010","nagoya":"000001001110000011","mtn":"000001001110000100","msd":"000001001110000101","music":"000001001110000110","mtr":"000001001110000111","next":"000001001110001000","neustar":"000001001110001001","nexus":"000001001110001010","nextdirect":"000001001110001011","nec":"000001001110001100","nba":"000001001110001101","netflix":"000001001110001110","netbank":"000001001110001111","moi":"000001001110010000","moda":"000001001110010001","monster":"000001001110010010","mom":"000001001110010011","mm":"000001001110010100","mls":"000001001110010101","mobile":"000001001110010110","mma":"000001001110010111","mov":"000001001110011000","motorcycles":"000001001110011001","mr":"000001001110011010","mq":"000001001110011011","mortgage":"000001001110011100","mormon":"000001001110011101","moto":"000001001110011110","moscow":"000001001110011111","ollo":"000001001110100000","olayangroup":"000001001110100001","omega":"000001001110100010","om":"000001001110100011","office":"000001001110100100","observer":"000001001110100101","olayan":"000001001110100110","okinawa":"000001001110100111","organic":"000001001110101000","orange":"000001001110101001","osaka":"000001001110101010","origins":"000001001110101011","ooo":"000001001110101100","ong":"000001001110101101","oracle":"000001001110101110","open":"000001001110101111","nikon":"000001001110110000","nike":"000001001110110001","nissay":"000001001110110010","nissan":"000001001110110011","ngo":"000001001110110100","nfl":"000001001110110101","nico":"000001001110110110","nhk":"000001001110110111","nra":"000001001110111000","nowtv":"000001001110111001","obi":"000001001110111010","ntt":"000001001110111011","norton":"000001001110111100","nokia":"000001001110111101","nowruz":"000001001110111110","now":"000001001110111111","loans":"000001001111000000","loan":"000001001111000001","locus":"000001001111000010","locker":"000001001111000011","living":"000001001111000100","lincoln":"000001001111000101","llp":"000001001111000110","llc":"000001001111000111","ltd":"000001001111001000","ls":"000001001111001001","lundbeck":"000001001111001010","ltda":"000001001111001011","lotto":"000001001111001100","lotte":"000001001111001101","lplfinancial":"000001001111001110","lpl":"000001001111001111","lefrak":"000001001111010000","leclerc":"000001001111010001","lexus":"000001001111010010","lego":"000001001111010011","lawyer":"000001001111010100","latrobe":"000001001111010101","lease":"000001001111010110","lds":"000001001111010111","lilly":"000001001111011000","lighting":"000001001111011001","limo":"000001001111011010","limited":"000001001111011011","lidl":"000001001111011100","lgbt":"000001001111011101","lifestyle":"000001001111011110","lifeinsurance":"000001001111011111","menu":"000001001111100000","memorial":"000001001111100001","merckmsd":"000001001111100010","merck":"000001001111100011","med":"000001001111100100","mckinsey":"000001001111100101","meme":"000001001111100110","meet":"000001001111100111","mit":"000001001111101000","mint":"000001001111101001","mlb":"000001001111101010","mitsubishi":"000001001111101011","miami":"000001001111101100","mh":"000001001111101101","mini":"000001001111101110","microsoft":"000001001111101111","makeup":"000001001111110000","maison":"000001001111110001","management":"000001001111110010","man":"000001001111110011","luxury":"000001001111110100","luxe":"000001001111110101","maif":"000001001111110110","madrid":"000001001111110111","mattel":"000001001111111000","marshalls":"000001001111111001","mc":"000001001111111010","mba":"000001001111111011","map":"000001001111111100","mango":"000001001111111101","marriott":"000001001111111110","markets":"000001001111111111","bw":"00000101000000000","buzz":"00000101000000001","casa":"00000101000000010","camera":"00000101000000011","bot":"00000101000000100","bh":"00000101000000101","builders":"00000101000000110","bs":"00000101000000111","cool":"00000101000001000","computer":"00000101000001001","dog":"00000101000001010","dating":"00000101000001011","church":"00000101000001100","cd":"00000101000001101","click":"00000101000001110","ci":"00000101000001111","win":"000001010000100","sa":"000001010000101","bank":"00000101000011000","baby":"00000101000011001","berlin":"00000101000011010","basketball":"00000101000011011","works":"000001010000111","iq":"00000101000100000","ing":"00000101000100001","kh":"00000101000100010","je":"00000101000100011","hm":"00000101000100100","hiphop":"00000101000100101","horse":"00000101000100110","holdings":"00000101000100111","melbourne":"00000101000101000","marketing":"00000101000101001","monash":"00000101000101010","men":"00000101000101011","kz":"00000101000101100","kw":"00000101000101101","lr":"00000101000101110","like":"00000101000101111","eus":"00000101000110000","estate":"00000101000110001","gallery":"00000101000110010","fk":"00000101000110011","dz":"00000101000110100","drive":"00000101000110101","equipment":"00000101000110110","eco":"00000101000110111","group":"00000101000111000","gp":"00000101000111001","health":"00000101000111010","hamburg":"00000101000111011","gh":"00000101000111100","garden":"00000101000111101","gold":"00000101000111110","gi":"00000101000111111","trade":"0000010100100","cloud":"0000010100101","lk":"000001010011000","host":"000001010011001","press":"000001010011010","pr":"000001010011011","cafe":"000001010011100","ba":"000001010011101","eg":"000001010011110","earth":"000001010011111","xn--lgbbat1ad8j":"000001010100000000","xn--l1acc":"000001010100000001","xn--mgba3a3ejt":"000001010100000010","xn--mgb9awbf":"000001010100000011","xn--kprw13d":"000001010100000100","xn--kcrx77d1x4a":"000001010100000101","xn--kput3i":"000001010100000110","xn--kpry57d":"000001010100000111","xn--mgbai9azgqp6j":"000001010100001000","xn--mgbah1a3hjkrd":"000001010100001001","xn--mgbbh1a":"000001010100001010","xn--mgbayh7gpa":"000001010100001011","xn--mgba7c0bbn0a":"000001010100001100","xn--mgba3a4f16a":"000001010100001101","xn--mgbab2bd":"000001010100001110","xn--mgbaam7a8h":"000001010100001111","xn--h2brj9c":"000001010100010000","xn--h2breg3eve":"000001010100010001","xn--hxt814e":"000001010100010010","xn--h2brj9c8c":"000001010100010011","xn--gckr3f0f":"000001010100010100","xn--g2xx48c":"000001010100010101","xn--gk3at1e":"000001010100010110","xn--gecrj9c":"000001010100010111","xn--j6w193g":"000001010100011000","xn--j1amh":"000001010100011001","xn--jvr189m":"000001010100011010","xn--jlq480n2rg":"000001010100011011","xn--imr513n":"000001010100011100","xn--i1b6b1a6a2e":"000001010100011101","xn--j1aef":"000001010100011110","xn--io0a7i":"000001010100011111","xn--o3cw4h":"000001010100100000","xn--nyqy26a":"000001010100100001","xn--otu796d":"000001010100100010","xn--ogbpf8fl":"000001010100100011","xn--node":"000001010100100100","xn--ngbrx":"000001010100100101","xn--nqv7fs00ema":"000001010100100110","xn--nqv7f":"000001010100100111","xn--qcka1pmc":"000001010100101000","xn--q9jyb4c":"000001010100101001","xn--qxam":"000001010100101010","xn--qxa6a":"000001010100101011","xn--pgbs0dh":"000001010100101100","xn--p1acf":"000001010100101101","xn--q7ce6a":"000001010100101110","xn--pssy2u":"000001010100101111","xn--mgbgu82a":"000001010100110000","xn--mgberp4a5d4ar":"000001010100110001","xn--mgbpl2fh":"000001010100110010","xn--mgbi4ecexp":"000001010100110011","xn--mgbc0a9azcg":"000001010100110100","xn--mgbbh1a71e":"000001010100110101","xn--mgbcpq6gpa1a":"000001010100110110","xn--mgbca7dzdo":"000001010100110111","xn--mxtq1m":"000001010100111000","xn--mk1bu44c":"000001010100111001","xn--ngbe9e0a":"000001010100111010","xn--ngbc5azd":"000001010100111011","xn--mgbtx2b":"000001010100111100","xn--mgbt3dhd":"000001010100111101","xn--mix891f":"000001010100111110","xn--mgbx4cd0ab":"000001010100111111","xn--5su34j936bgsg":"000001010101000000","xn--55qx5d":"000001010101000001","xn--6frz82g":"000001010101000010","xn--5tzm5g":"000001010101000011","xn--4gbrim":"000001010101000100","xn--4dbrk0ce":"000001010101000101","xn--55qw42g":"000001010101000110","xn--54b7fta0cc":"000001010101000111","xn--80aswg":"000001010101001000","xn--80asehdb":"000001010101001001","xn--90a3ac":"000001010101001010","xn--8y0a063a":"000001010101001011","xn--80adxhks":"000001010101001100","xn--6qq986b3xl":"000001010101001101","xn--80aqecdr1a":"000001010101001110","xn--80ao21a":"000001010101001111","xn--2scrj9c":"000001010101010000","xn--1qqw23a":"000001010101010001","xn--3bst00m":"000001010101010010","xn--30rr7y":"000001010101010011","xin":"000001010101010100","xihuan":"000001010101010101","xn--1ck2e1b":"000001010101010110","xn--11b4c3d":"000001010101010111","xn--45br5cyl":"000001010101011000","xn--42c2d9a":"000001010101011001","xn--45q11c":"000001010101011010","xn--45brj9c":"000001010101011011","xn--3e0b707e":"000001010101011100","xn--3ds443g":"000001010101011101","xn--3pxu8k":"000001010101011110","xn--3hcrj9c":"000001010101011111","xn--fct429k":"000001010101100000","xn--efvy88h":"000001010101100001","xn--fiq228c5hs":"000001010101100010","xn--fhbei":"000001010101100011","xn--d1alf":"000001010101100100","xn--d1acj3b":"000001010101100101","xn--eckvdtc9d":"000001010101100110","xn--e1a4c":"000001010101100111","xn--fpcrj9c3d":"000001010101101000","xn--flw351e":"000001010101101001","xn--fzys8d69uvgm":"000001010101101010","xn--fzc2c9e2c":"000001010101101011","xn--fiqs8s":"000001010101101100","xn--fiq64b":"000001010101101101","xn--fjq720a":"000001010101101110","xn--fiqz9s":"000001010101101111","xn--b4w605ferd":"000001010101110000","xn--9krt00a":"000001010101110001","xn--c1avg":"000001010101110010","xn--bck1b9a5dre4c":"000001010101110011","xn--90ais":"000001010101110100","xn--90ae":"000001010101110101","xn--9et52u":"000001010101110110","xn--9dbq2a":"000001010101110111","xn--czr694b":"000001010101111000","xn--clchc0ea0b2g2a9gcd":"000001010101111001","xn--czru2d":"000001010101111010","xn--czrs0t":"000001010101111011","xn--cck2b3b":"000001010101111100","xn--c2br7g":"000001010101111101","xn--cg4bki":"000001010101111110","xn--cckwcxetd":"000001010101111111","silk":"00000101011000000","school":"00000101011000001","software":"00000101011000010","sncf":"00000101011000011","qa":"00000101011000100","productions":"00000101011000101","sb":"00000101011000110","reviews":"00000101011000111","tickets":"00000101011001000","supplies":"00000101011001001","tn":"00000101011001010","tm":"00000101011001011","sony":"00000101011001100","solar":"00000101011001101","style":"00000101011001110","sr":"00000101011001111","new":"00000101011010000","nc":"00000101011010001","ni":"00000101011010010","nf":"00000101011010011","mv":"00000101011010100","movie":"00000101011010101","na":"00000101011010110","mw":"00000101011010111","photo":"00000101011011000","pharmacy":"00000101011011001","poker":"00000101011011010","photography":"00000101011011011","pa":"00000101011011100","nrw":"00000101011011101","pf":"00000101011011110","pet":"00000101011011111","xn--yfro4i67o":"000001010111000000","xn--y9a3aq":"000001010111000001","xn--zfr164b":"000001010111000010","xn--ygbi2ammx":"000001010111000011","xn--xhq521b":"000001010111000100","xn--wgbl6a":"000001010111000101","xn--xkc2dl3a5ee0h":"000001010111000110","xn--xkc2al3hye2a":"000001010111000111","yodobashi":"000001010111001000","ye":"000001010111001001","yokohama":"000001010111001010","yoga":"000001010111001011","yahoo":"000001010111001100","yachts":"000001010111001101","yandex":"000001010111001110","yamaxun":"000001010111001111","xn--t60b56a":"000001010111010000","xn--ses554g":"000001010111010001","xn--tiq49xqyj":"000001010111010010","xn--tckwe":"000001010111010011","xn--rovu88b":"000001010111010100","xn--rhqv96g":"000001010111010101","xn--s9brj9c":"000001010111010110","xn--rvc1e0am3e":"000001010111010111","xn--w4r85el8fhu5dnra":"000001010111011000","xn--vuq861b":"000001010111011001","xn--wgbh1c":"000001010111011010","xn--w4rs40l":"000001010111011011","xn--vermgensberater-ctb":"000001010111011100","xn--unup4y":"000001010111011101","xn--vhquv":"000001010111011110","xn--vermgensberatung-pwb":"000001010111011111","uz":"00000101011110000","uno":"00000101011110001","vision":"00000101011110010","vanguard":"00000101011110011","trust":"00000101011110100","tokyo":"00000101011110101","ug":"00000101011110110","tz":"00000101011110111","zero":"000001010111110000","zara":"000001010111110001","zuerich":"000001010111110010","zm":"000001010111110011","youtube":"000001010111110100","you":"000001010111110101","zappos":"000001010111110110","yun":"000001010111110111","wien":"00000101011111100","webcam":"00000101011111101","":"000001010111111100","zw":"000001010111111101","yt":"00000101011111111","dk":"000001011","gl":"00000110","cc":"0000011100","la":"000001110100","space":"000001110101","ag":"00000111011000","uy":"00000111011001","stream":"0000011101101","im":"000001110111","ie":"0000011110","sk":"0000011111000","dance":"00000111110010","cr":"00000111110011","ee":"000001111101","pub":"00000111111000","pe":"00000111111001","work":"0000011111101","ninja":"0000011111110","id":"0000011111111","au":"0000100","to":"0000101000","ua":"0000101001","fr":"000010101","nl":"000010110","mg":"0000101110","int":"00001011110","app":"0000101111100","cx":"00001011111010","bid":"00001011111011","af":"0000101111110000","ad":"00001011111100010","zip":"00001011111100011","ve":"000010111111001","xxx":"00001011111101","jobs":"000010111111100","asia":"000010111111101","run":"000010111111110","nyc":"000010111111111","tv":"0000110","sh":"00001110","media":"00001111000000","ec":"00001111000001","vg":"00001111000010","tk":"00001111000011","ai":"0000111100010","tr":"0000111100011","at":"00001111001","club":"00001111010","ph":"000011110110","al":"000011110111000","cy":"0000111101110010","cm":"0000111101110011","icu":"00001111011101","ac":"00001111011110","mk":"000011110111110","exchange":"000011110111111","nz":"000011111","it":"00010","me":"0001100","ch":"0001101000","ws":"000110100100","rocks":"000110100101","va":"0001101001100","lu":"0001101001101","pn":"000110100111000","pm":"000110100111001","store":"000110100111010","red":"000110100111011","gd":"0001101001111","se":"000110101","moe":"0001101100","wiki":"0001101101","lc":"0001101110000000","ke":"0001101110000001","md":"0001101110000010","ma":"0001101110000011","fitness":"0001101110000100","email":"0001101110000101","how":"0001101110000110","games":"0001101110000111","social":"0001101110001000","rip":"0001101110001001","vc":"0001101110001010","solutions":"0001101110001011","ne":"0001101110001100","mt":"0001101110001101","py":"0001101110001110","ovh":"0001101110001111","review":"00011011100100","gy":"00011011100101","ir":"0001101110011","mil":"00011011101","fun":"0001101111000","rs":"0001101111001","sc":"000110111101","cf":"000110111110","sg":"000110111111","is":"0001110","ru":"0001111","be":"0010","net":"0011","info":"010000","jp":"0100010","hu":"010001100000","fyi":"01000110000100","gq":"010001100001010","download":"010001100001011","audio":"0100011000011000","band":"01000110000110010","as":"01000110000110011","watch":"010001100001101","pizza":"01000110000111","place":"010001100010000","land":"010001100010001","sn":"010001100010010","shop":"010001100010011","nu":"0100011000101","gr":"010001100011","kr":"01000110010","ro":"01000110011","xn--p1ai":"010001101","party":"01000111000000","gle":"01000111000001","online":"0100011100001","li":"0100011100010","si":"0100011100011","pt":"01000111001","cn":"01000111010","my":"0100011101100","tech":"01000111011010","name":"01000111011011","tw":"010001110111","su":"010001111","co":"0100100","ms":"010010100","fo":"01001010100","law":"01001010101000000","ki":"01001010101000001","love":"01001010101000010","legal":"01001010101000011","hn":"01001010101000100","gt":"01001010101000101","international":"01001010101000110","hockey":"01001010101000111","support":"01001010101001000","services":"01001010101001001","systems":"01001010101001010","sy":"01001010101001011","onl":"01001010101001100","nr":"01001010101001101","rugby":"01001010101001110","properties":"01001010101001111","engineering":"01001010101010000","dev":"01001010101010001","foundation":"01001010101010010","expert":"01001010101010011","center":"01001010101010100","capital":"01001010101010101","cymru":"01001010101010110","cu":"01001010101010111","gives":"01001010101011000","gent":"01001010101011001","google":"01001010101011010","gm":"01001010101011011","fund":"01001010101011100","frl":"01001010101011101","game":"01001010101011110","futbol":"01001010101011111","bn":"0100101010110000","az":"0100101010110001","deals":"0100101010110010","community":"0100101010110011","zone":"01001010101101","vip":"0100101010111000","team":"0100101010111001","vegas":"01001010101110100","tax":"01001010101110101","wales":"01001010101110110","vote":"01001010101110111","london":"0100101010111100","events":"0100101010111101","ps":"0100101010111110","mu":"0100101010111111","pk":"0100101011000","ga":"0100101011001","world":"010010101101000","ng":"010010101101001","build":"01001010110101000","blue":"01001010110101001","camp":"01001010110101010","business":"01001010110101011","bd":"01001010110101100","bar":"01001010110101101","bingo":"01001010110101110","bi":"01001010110101111","tf":"0100101011011","pl":"01001010111","za":"010010110000","so":"010010110001","pw":"010010110010","pro":"010010110011","ar":"01001011010","ml":"010010110110","am":"010010110111","today":"0100101110","lv":"01001011110000","coop":"010010111100010","video":"010010111100011","tl":"01001011110010","mp":"010010111100110","mobi":"010010111100111","haus":"010010111101","network":"0100101111100","tc":"010010111110100","plus":"010010111110101","website":"01001011111011","mx":"010010111111","gov":"010011","uk":"010100","edu":"0101010","gg":"0101011","in":"0101100000","br":"0101100001","fm":"010110001","de":"01011001","eu":"010110100","re":"010110101000","sx":"01011010100100","lol":"010110101001010","bike":"0101101010010110","aero":"0101101010010111","hk":"0101101010011","vn":"0101101010100","sexy":"01011010101010","agency":"01011010101011000","apple":"010110101010110010","africa":"010110101010110011","tips":"0101101010101101","tools":"010110101010111","cat":"0101101010110","chat":"0101101010111000","cards":"0101101010111001","cricket":"0101101010111010","codes":"0101101010111011","blog":"01011010101111","fi":"01011010110","pics":"0101101011100000","ink":"0101101011100001","studio":"0101101011100010","report":"0101101011100011","dj":"0101101011100100","design":"0101101011100101","help":"0101101011100110","farm":"0101101011100111","bg":"01011010111010","do":"010110101110110","academy":"0101101011101110","beer":"01011010111011110","art":"01011010111011111","guide":"0101101011110","site":"01011010111110","one":"01011010111111","ly":"010110110","cz":"010110111000","st":"0101101110010","cl":"01011011100110","gs":"010110111001110","bz":"010110111001111","no":"01011011101","live":"010110111100","link":"010110111101","cash":"010110111110","lb":"010110111111000","guru":"010110111111001","technology":"010110111111010","mn":"010110111111011","il":"0101101111111","ca":"0101110","io":"0101111","org":"011","com":"1"};
const sldEncode = {"cydia.saurik":"000000000000","images.wikia":"000000000001","juicedb":"000000000010","imgflip":"000000000011","globalresearch":"0000000001000","csmonitor":"00000000010010","bmw.com":"00000000010011","images.app.goo":"000000000101","docs.microsoft":"000000000110","500px":"000000000111","radd":"0000000010","boardgamegeek":"0000000011","autosedlo":"0000000100","redditinvestigator":"00000001010","sciencedirect":"00000001011","downtown":"00000001100","yugioh.wikia":"00000001101","express.co":"0000000111000","shop.nordstrom":"0000000111001","battlelog.battlefield":"0000000111010","asus":"0000000111011","foodnetwork":"0000000111100","sfgate":"0000000111101","developer.mozilla":"0000000111110","9gag":"0000000111111","weeklysift":"0000001000000","rbeertrade":"0000001000001","podcasts.apple":"000000100001","bitcoin":"0000001000100","247sports":"0000001000101","zkillboard":"0000001000110","i2.wp":"0000001000111","amazon.co":"0000001001","latimes":"00000010100","botrank.pastimes":"000000101010","a.video.nfl":"000000101011","craigslist":"000000101100","ontheissues":"0000001011010","fimfiction":"0000001011011","reddit.zendesk":"00000010111","edhrec":"00000011","slate":"00000100000","salon":"000001000010","seriouseats":"000001000011","goodreads":"0000010001","artstation":"0000010010","bbc.co":"0000010011","adl":"00000101000000","atf":"00000101000001","play.esea":"00000101000010","mugenmonkey":"00000101000011","w3schools":"00000101000100","radiolab":"00000101000101","harborfreight":"00000101000110","pitchfork":"00000101000111","media-cache-ak0.pinimg":"00000101001000","terraria.gamepedia":"00000101001001","ftw.usatoday":"00000101001010","forums.robertsspaceindustries":"00000101001011","statcan.gc":"00000101001100","wabbitwiki":"00000101001101","encrypted-tbn2.gstatic":"00000101001110","indianexpress":"00000101001111","examiner":"00000101010000","vatican":"00000101010001","techdirt":"00000101010010","wnd":"00000101010011","investigationbooks":"000001010101","marvel":"00000101011000","baltimoresun":"00000101011001","huffingtonpost.co":"00000101011010","torontosun":"00000101011011","ea":"00000101011100","theaustralian.com":"00000101011101","raspberrypi":"00000101011110","travel.state":"00000101011111","lcfgeorgia":"00000101100000","kauffman":"00000101100001","usff.navy":"00000101100010","newsroom.latam.paypal-corp":"00000101100011","yearup":"00000101100100","cvent":"00000101100101","accenture":"00000101100110","switchboardta":"00000101100111","doyok.kinja":"0000010110100","renews24":"0000010110101","yugipedia":"0000010110110","r.go1dfish":"0000010110111","americanexpress":"00000101110000","m.newegg":"00000101110001","feelthebern":"00000101110010","alg.cubing":"00000101110011","corsair":"00000101110100","content.time":"00000101110101","winlivestream":"00000101110110","m.fanfiction":"00000101110111","p2016":"00000101111000","masterypoints":"00000101111001","liquipedia":"00000101111010","help.steampowered":"00000101111011","m.spankbang":"00000101111100","p0ody-files":"00000101111101","pm1.narvii":"00000101111110","watchnfllivetv":"00000101111111","37.media.tumblr":"0000011000000","services.runescape":"0000011000001","voat":"0000011000010","shopify":"0000011000011","i.minus":"00000110001","mangaupdates":"0000011001","drive.google":"000001101","businessinsider":"0000011100","freebase":"000001110100","images-na.ssl-images-amazon":"000001110101","docs.python":"0000011101100","worldofwarcraft":"00000111011010","disposerx":"00000111011011","cdn.sesamestreetincommunities":"000001110111","edition.cnn":"000001111000","wiki.teamfortress":"000001111001","swappa":"000001111010","basketball-reference":"000001111011","dailymotion":"00000111110","researchgate":"000001111110","washingtontimes":"000001111111","twitter":"00001","reddit":"00010","doi":"0001100000","commons.wikimedia":"0001100001","sbnation":"0001100010000","nba":"0001100010001","ec.europa":"0001100010010","yourlogicalfallacyis":"0001100010011","explosm":"0001100010100","dailykos":"0001100010101","theoatmeal":"0001100010110","epa":"0001100010111","disasterphilanthropy":"0001100011000","deltasigmatheta":"0001100011001","goto.walmart":"000110001101","corgiorgy":"0001100011100","mythicspoiler":"0001100011101","connect.ala":"0001100011110","dynamics.microsoft":"0001100011111","docs.google":"00011001","pixiv":"00011010","subtletv":"0001101100","m.reddit":"000110110100","img.pandawhale":"000110110101","mozilla":"000110110110","pewforum":"0001101101110","quran":"0001101101111","combodeck":"000110111","un":"000111000","ca.pcpartpicker":"000111001","addtoany":"00011101","nerdwallet":"00011110000000","myfonts":"00011110000001","crutchfield":"00011110000010","cisco":"00011110000011","state":"00011110000100","windowsphone":"00011110000101","psnprofiles":"00011110000110","dwarffortresswiki":"00011110000111","femradebates":"00011110001000","shevibe":"00011110001001","foxsports":"00011110001010","hqhdtv":"00011110001011","talkingpointsmemo":"00011110001100","technologyreview":"00011110001101","kansascity":"00011110001110","g1.globo":"00011110001111","pediatrics.aappublications":"00011110010000","twitlonger":"00011110010001","pcworld":"00011110010010","ru.wikipedia":"00011110010011","help.ubuntu":"00011110010100","southparkstudios":"00011110010101","military":"00011110010110","taxfoundation":"00011110010111","ustream":"00011110011000","chron":"00011110011001","midwayusa":"00011110011010","android":"00011110011011","costco":"00011110011100","slashfilm":"00011110011101","hindustantimes":"00011110011110","mixcloud":"00011110011111","yahoo":"0001111010000","challonge":"0001111010001","pics.me":"0001111010010","checkrepost":"0001111010011","leagueoflegends.wikia":"0001111010100","crunchyroll":"0001111010101","minecraft.gamepedia":"0001111010110","m.soundcloud":"0001111010111","stevenaverycase":"00011110110000","getyarn":"00011110110001","ruadick":"00011110110010","db.fowtcg":"00011110110011","fullhdtvstream":"00011110110100","news.vice":"00011110110101","loadfst":"00011110110110","chewy":"00011110110111","plos":"0001111011100","cse.google":"0001111011101","4k-livefifa":"00011110111100","axios":"00011110111101","sell.amazon":"00011110111110","grow":"00011110111111","muzemerch":"000111110","neopets":"000111111000","webmd":"000111111001","outline":"000111111010","atomiks.github":"000111111011","newsroom.paypal-corp":"00011111110","bulbapedia.bulbagarden":"000111111110","scribd":"000111111111","youtube":"001","hearthstone.gamepedia":"0100000000","i.giphy":"010000000100","robertsspaceindustries":"010000000101","online.wsj":"0100000001100","ssa":"01000000011010","childrenandfamiliesfirstnc":"01000000011011","lichess":"010000000111","perscholas":"010000001","archiveofourown":"01000001000","music.apple":"01000001001","thefitness":"01000001010","68.media.tumblr":"010000010110","space.hatena.ne":"010000010111","forums.spacebattles":"0100000110000","esrb":"0100000110001","c1.staticflickr":"0100000110010","static1.e621":"0100000110011","jstor":"0100000110100","spiegel":"0100000110101","marketwatch":"0100000110110","serebii":"0100000110111","news.mongabay":"010000011100","78.media.tumblr":"010000011101","b5bznmg.tula":"0100000111100","my.mixtape":"0100000111101","oceandecade":"0100000111110","morejpeg":"0100000111111","npr":"0100001000","i.ytimg":"0100001001","ebay":"010000101","tomshardware":"010000110000","goodwillfinds":"010000110001","redditsearch":"01000011001","reverb":"010000110100","gov":"010000110101","pathofexile":"01000011011","gist.github":"01000011100","newyorker":"010000111010","census":"0100001110110","alternet":"0100001110111","ibb":"01000011110","gelbooru":"01000011111","magiccards":"0100010","walmart":"0100011000","dell":"0100011001000","lolking":"0100011001001","suicidepreventionlifeline":"0100011001010","charitywatch":"0100011001011","support.steampowered":"0100011001100","guru3d":"0100011001101","skyrim.nexusmods":"0100011001110","vndb":"0100011001111","avclub":"01000110100000","ocw.mit":"01000110100001","mlb":"01000110100010","windows.microsoft":"01000110100011","fcc":"01000110100100","minecraftwiki":"01000110100101","finalfantasy.wikia":"01000110100110","mtv":"01000110100111","forums.na.leagueoflegends":"01000110101000","crowdrise":"01000110101001","forums.xbox":"01000110101010","cloud-4.steampowered":"01000110101011","wiki.guildwars":"01000110101100","dafont":"01000110101101","mechanicalkeyboards":"01000110101110","fullfact":"01000110101111","static.comicvine":"010001101100","rationalwiki":"010001101101","marketplace.xbox":"01000110111000","listen.grooveshark":"01000110111001","assets.nydailynews":"01000110111010","nooooooooooooooo":"01000110111011","stuff.co":"01000110111100","businessweek":"01000110111101","teamfortress":"01000110111110","skepticsannotatedbible":"01000110111111","therabody":"0100011100000","magaimg":"0100011100001","medseaalliance":"01000111000100","packard":"01000111000101","lnkd":"01000111000110","banquemondiale":"01000111000111","magic.wizards":"0100011100100","memedad":"0100011100101","botsbyliam":"0100011100110","chan.sankakucomplex":"0100011100111","m.popkey":"01000111010000","novelupdates":"01000111010001","oculus":"01000111010010","sos.ca":"01000111010011","fragrantica":"01000111010100","health.harvard":"01000111010101","movie24k":"01000111010110","wanna":"01000111010111","loderunner.github":"01000111011000","amp.reddit":"01000111011001","kaporcenter":"01000111011010","calicocat":"01000111011011","pcmrbot.eegras":"01000111011100","i.makeagif":"01000111011101","science.sciencemag":"01000111011110","thebalance":"01000111011111","guardian.co":"010001111000","bitcointalk":"010001111001","furaffinity":"01000111101","livescience":"010001111100","ft":"0100011111010","myspace":"0100011111011","new.reddit":"01000111111","dailymail.co":"0100100000","modojo":"0100100001000","washington":"0100100001001","prnt":"0100100001010","projects.fivethirtyeight":"0100100001011","spreadingsantorum":"0100100001100","allrecipes":"0100100001101","tehurn":"0100100001110","myfitnesspal":"0100100001111","uptogether":"010010001000","spankbang":"010010001001","community.looker":"0100100010100","acceptbitcoin":"0100100010101","torrentfreak":"01001000101100","impactchallenge.withgoogle":"01001000101101","inspiredleaders.downtown":"0100100010111","investopedia":"010010001100","i.imgflip":"010010001101","futhead":"01001000111","m.youtube":"01001001","nationalgeographic":"010010100000","gifsound":"010010100001","prntscr":"01001010001","corporate.walmart":"0100101001","nature":"01001010100","cato":"01001010101000","ajc":"01001010101001","food":"01001010101010","billboard":"01001010101011","snoopsnoo":"010010101011","reason":"0100101011000","en.wikiquote":"0100101011001","lifehacker":"0100101011010","rawstory":"0100101011011","d20pfsrd":"01001010111","pohudeniya-bistro":"0100101100000","awoiaf.westeros":"0100101100001","thumbs.gfycat":"0100101100010","shtrs":"0100101100011","dol":"0100101100100","jcrew":"0100101100101","nhl":"0100101100110","bricklink":"0100101100111","oqmweghb.sochi":"01001011010000","dbz":"01001011010001","fred.stlouisfed":"01001011010010","theothersreport":"01001011010011","citylab":"01001011010100","fat.gfycat":"01001011010101","georgiymore":"01001011010110","nurl.cafe24":"01001011010111","r6fix.ubi":"0100101101100","en.oxforddictionaries":"0100101101101","mirrorbot":"01001011011100","timee":"01001011011101","workspace.google":"0100101101111","starcitygames":"01001011100000","memecrunch":"01001011100001","news.nationalpost":"01001011100010","archives":"01001011100011","news.google":"01001011100100","head-fi":"01001011100101","nejm":"01001011100110","cpsc":"01001011100111","padherder":"01001011101000","academia":"01001011101001","sensualhumiliation.tumblr":"01001011101010","letterboxd":"01001011101011","roblox":"01001011101100","grantland":"01001011101101","standard.co":"01001011101110","japantimes.co":"01001011101111","theanarchistlibrary":"010010111100","secure.actblue":"010010111101","yutubi.kinja":"010010111110","vocaroo":"010010111111","fivethirtyeight":"010011000000","tmz":"0100110000010","whitehouse":"0100110000011","eventbrite":"010011000010","chicagotribune":"010011000011","yourbrainonporn":"0100110001000","gifrific":"0100110001001","hearthstonetopdecks":"0100110001010","mega.co":"0100110001011","haaretz":"0100110001100","foreignpolicy":"0100110001101","paizo":"0100110001110","lh3.googleusercontent":"0100110001111","mtg":"010011001","goo":"010011010","xkcdref":"010011011000","hydra-media.cursecdn":"010011011001","xn--80aaqbi4ajie6m":"0100110110100","kak-pohudet-za":"0100110110101","farm4.static.flickr":"01001101101100","shop-links":"01001101101101","search.app.goo":"0100110110111","media.tumblr":"01001101110","snew.github":"01001101111","metacritic":"01001110000","gallup":"010011100010","breitbart":"010011100011","fanfiction":"0100111001","security.googleblog":"0100111010","scholar.google":"0100111011","dota2.gamepedia":"01001111000","mangapanda":"01001111001000","tumblr":"01001111001001","newrepublic":"01001111001010","what-if.xkcd":"01001111001011","gifsoup":"01001111001100","cdn.bulbagarden":"01001111001101","independent":"01001111001110","voanews":"01001111001111","fao":"0100111101","img1.wikia.nocookie":"0100111110000","m.huffpost":"0100111110001","undercurrentnews":"0100111110010","dlinkes":"0100111110011","sports.yahoo":"0100111110100","vanityfair":"0100111110101","warframe.wikia":"0100111110110","bbb":"0100111110111","vgy":"01001111110000","fitbit":"01001111110001","smitegame":"01001111110010","syriancivilwararchive":"01001111110011","xnxx":"01001111110100","budgetbytes":"01001111110101","gbatemp":"01001111110110","taggedtanakh":"01001111110111","onlyfans":"01001111111000","ceoworks":"01001111111001","weddit":"01001111111010","milkbet":"01001111111011","mcmcse":"01001111111100","45.media.tumblr":"01001111111101","m.intl.taobao":"01001111111110","gpu.userbenchmark":"01001111111111","en.wikipedia":"0101","de.pcpartpicker":"01100000000","t-nation":"01100000001000","denverpost":"01100000001001","ebay.com":"01100000001010","khanacademy":"01100000001011","img.animebracket":"011000000011","louroe":"01100000010","economist":"011000000110","arxiv":"011000000111","changetip":"011000001000","stripe":"011000001001","item.taobao":"01100000101","dictionary.reference":"011000001100","behance":"0110000011010","microcenter":"0110000011011","blackrock":"0110000011100","livehdtv":"0110000011101","sesamestreet":"01100000111100","mailback-msft.tes-amm":"01100000111101","earthday":"0110000011111","web.archive":"01100001","link.springer":"0110001000000","smithsonianmag":"0110001000001","i0.wp":"0110001000010","fasttech":"0110001000011","upwardlyglobal":"01100010001","redditblog":"0110001001","resi.ze-robot":"01100010100","politifact":"01100010101","pcgamer":"0110001011000","plannedparenthood":"01100010110010","esquire":"01100010110011","nationalreview":"0110001011010","eurogamer":"0110001011011","spire":"01100010111","worldbank":"01100011000","fastcompany":"01100011001000","i.telegraph.co":"01100011001001","abload":"01100011001010","science.howstuffworks":"01100011001011","ehow":"01100011001100","thinkgeek":"01100011001101","escapistmagazine":"01100011001110","images2.wikia.nocookie":"01100011001111","lists.linuxfoundation":"0110001101000","sprint":"0110001101001","togiliatiliati.togliatti":"0110001101010","eroshare":"0110001101011","tripadvisor":"0110001101100","cdn.memegenerator":"0110001101101","applynow.chase":"0110001101110","indianapolis500live":"0110001101111","taobaotools.github":"01100011100000","reddit.app":"01100011100001","blog.kaporcenter":"01100011100010","developers.googleblog":"01100011100011","etonline":"01100011100100","img2-ak.lst":"01100011100101","lifeline.org":"01100011100110","steamcdn-a.akamaihd":"01100011100111","mangadex":"0110001110100","reddittext":"0110001110101","overdeck":"01100011101100","about.flipboard":"01100011101101","news.microsoft":"0110001110111","people-press":"01100011110000","fool":"01100011110001","mlive":"01100011110010","nl.wikipedia":"01100011110011","pt.wikipedia":"01100011110100","nutritiondata.self":"01100011110101","farm8.staticflickr":"01100011110110","curse":"01100011110111","officialtvstream.com":"01100011111000","motherboard.vice":"01100011111001","zippy.gfycat":"01100011111010","1drv":"01100011111011","dallasnews":"01100011111100","hsph.harvard":"01100011111101","cell":"01100011111110","answers.microsoft":"01100011111111","s-media-cache-ak0.pinimg":"0110010000","aliexpress":"011001000100","gamespot":"0110010001010","msnbc.msn":"01100100010110","ja-jp.facebook":"01100100010111","developers.google":"01100100011","tappedout":"01100100100","3.bp.blogspot":"01100100101","tinyurl":"011001001100","news.com":"0110010011010","ecx.images-amazon":"0110010011011","25.media.tumblr":"01100100111","bmw":"0110010100000","aqnugtr.nov":"0110010100001","coursera":"011001010001","powerlisting.wikia":"0110010100100","mlb.mlb":"0110010100101","bato":"0110010100110","brookings":"0110010100111","us.battle":"0110010101","opensecrets":"0110010110000","gizmodo":"0110010110001","instapaper":"0110010110010","metro.co":"0110010110011","liveleak":"011001011010","dictionary":"011001011011","smile.amazon":"01100101110","foxnews":"01100101111","addons.mozilla":"0110011000","merriam-webster":"01100110010","scientificamerican":"011001100110","wh40k.lexicanum":"0110011001110","kotaku":"0110011001111","anilist":"011001101","media.giphy":"011001110","scholar.google.co":"01100111100","espncricinfo":"01100111101000","en.reddit":"01100111101001","planetminecraft":"01100111101010","theblaze":"01100111101011","boston":"01100111101100","aws.amazon":"01100111101101","climate.nasa":"01100111101110","ipcc":"01100111101111","hi-in.facebook":"01100111110000","de-de.facebook":"01100111110001","c4ads":"0110011111001","ar-ar.facebook":"01100111110100","zh-cn.facebook":"01100111110101","ko-kr.facebook":"01100111110110","pt-br.facebook":"01100111110111","pay.reddit":"0110011111100","uesp":"0110011111101","boostwit":"0110011111110","mapbox":"0110011111111","vklvl":"01101000000000","memory-alpha.wikia":"01101000000001","hutdb":"01101000000010","ucr.fbi":"01101000000011","archivesofnethys":"01101000000100","pandacoinpnd":"01101000000101","bethesda":"01101000000110","api.imgur":"01101000000111","huridocs":"01101000001000","greenbiz":"01101000001001","coastguardnews":"01101000001010","walmartsustainabilityhub":"01101000001011","nicsgalleries":"01101000001100","exvius.gamepedia":"01101000001101","bootyr4r":"01101000001110","democracy":"01101000001111","metal-archives":"01101000010000","marvel.wikia":"01101000010001","theweek":"01101000010010","walgreens":"01101000010011","blogs.scientificamerican":"01101000010100","makeagif":"01101000010101","samsung":"01101000010110","setlist":"01101000010111","a.pomf":"01101000011000","us.reddit":"01101000011001","forums.smitegame":"01101000011010","minecraft.curseforge":"01101000011011","miamiherald":"01101000011100","ssbwiki":"01101000011101","socialclub.rockstargames":"01101000011110","es.pcpartpicker":"01101000011111","66.media.tumblr":"011010001000","art.hearthstonejson":"011010001001","pathofexile.gamepedia":"011010001010","i1.kym-cdn":"011010001011","support.apple":"0110100011","forbes":"0110100100","news.bbc.co":"011010010100","xboxdvr":"0110100101010","cbssports":"0110100101011","whatimade":"0110100101100","nicodb":"0110100101101","seattlefoundation":"0110100101110","bcg":"0110100101111","microsoft":"011010011","steamcommunity":"0110101","uk.pcpartpicker":"011011000","onlinelibrary.wiley":"011011001000","rei":"0110110010010","blogcdn":"01101100100110","blogs.wsj":"01101100100111","wowhead":"01101100101","books.google":"01101100110","kiwiirc":"011011001110","wikileaks":"011011001111","24.media.tumblr":"01101101000","xn--e1agvr0b.xn--j1aef":"01101101001","last":"0110110101","cc":"01101101100000","csgolounge":"01101101100001","forums.ubi":"01101101100010","g2a":"01101101100011","encrypted-tbn3.gstatic":"01101101100100","games-workshop":"01101101100101","legislation.gov":"01101101100110","digitaltrends":"01101101100111","doctorofcredit":"01101101101000","es-la.facebook":"01101101101001","rocketr":"01101101101010","mediabiasfactcheck":"01101101101011","en-americas-support.nintendo":"01101101101100","wow.gamepedia":"01101101101101","oddshot":"01101101101110","drivethrurpg":"01101101101111","trello":"0110110111","statista":"0110111000000","na.leagueoflegends":"0110111000001","congress":"0110111000010","petitions.whitehouse":"0110111000011","fbi":"0110111000100","hulu":"0110111000101","i.ebayimg":"0110111000110","techcrunch":"0110111000111","kroger-stage.preprodhawkcommerce":"0110111001000","greenislandmj":"0110111001001","rawg":"01101110010100","teamrv-mvp.sos.texas":"01101110010101","tent":"01101110010110","lew":"01101110010111","fuwa":"0110111001100","genius":"0110111001101","aka":"0110111001110","sukipuki.msk":"0110111001111","cbsnews":"01101110100","it-it.facebook":"01101110101000","thisamericanlife":"01101110101001","inquisitr":"01101110101010","jsfiddle":"01101110101011","erowid":"0110111010110","gutenberg":"01101110101110","fr-fr.facebook":"01101110101111","etsy":"0110111011","heatware":"01101111000","vignette3.wikia.nocookie":"011011110010","33.media.tumblr":"011011110011","reactiongifs":"01101111010","google.co":"01101111011","twitch":"011011111","gatherer.wizards":"011100","hummingbird":"011101000000","isthereanydeal":"0111010000010","img2.wikia.nocookie":"0111010000011","accounts.google":"01110100001","abimon":"01110100010","thehill":"01110100011","penzaza.penza":"0111010010000","watchonlinelivetv":"0111010010001","npafc":"0111010010010","static-3.studiobebop":"0111010010011","corporate.target":"01110100101","supermariomakerbookmark.nintendo":"011101001100","vignette1.wikia.nocookie":"011101001101","universalscammerlist":"011101001110","www1.folha.uol.com":"011101001111","open.spotify":"01110101","linkedin":"0111011","store.steampowered":"011110000","wiki.archlinux":"0111100010000","uscg":"01111000100010","jpost":"01111000100011","anandtech":"011110001001","bestbuy":"011110001010","engadget":"0111100010110","mises":"0111100010111","knowyourmeme":"01111000110","time":"01111000111","washingtonpost":"011110010","ml.reddit":"01111001100000","globalb2bcontacts":"01111001100001","chromeenterprise":"01111001100010","suicideprevention":"01111001100011","firebase.google":"01111001100100","awin1":"01111001100101","data.tumblr":"01111001100110","epicgames":"01111001100111","harmonybuet":"0111100110100","songrium":"0111100110101","fitness.apple":"01111001101100","tm-tracking":"01111001101101","docs.github":"0111100110111","nolo":"01111001110000","media.wizards":"01111001110001","fertilityfriend":"01111001110010","nz.pcpartpicker":"01111001110011","geekhack":"01111001110100","images3.wikia.nocookie":"01111001110101","eonline":"01111001110110","jordanthebrobot":"01111001110111","winsipedia":"01111001111000","appsto":"01111001111001","karelialia.karelia":"01111001111010","berniesanders":"01111001111011","muthead":"01111001111100","libgen":"01111001111101","chain":"01111001111110","stats.nba":"01111001111111","na.op":"011110100000","buzzfeed":"011110100001","market.android":"01111010001000","airbnb":"01111010001001","fav":"01111010001010","oxforddictionaries":"01111010001011","gamasutra":"01111010001100","popularmechanics":"01111010001101","livestrong":"01111010001110","cnsnews":"01111010001111","stitcher":"0111101001000","aljazeera":"0111101001001","4kmoviehub":"0111101001010","36.media.tumblr":"0111101001011","starwars.wikia":"011110100110","goto.target":"011110100111","blog":"011110101000","bungie":"011110101001","eu.battle":"011110101010","msdn.microsoft":"0111101010110","justice":"0111101010111","gyazo":"0111101011","huffingtonpost":"0111101100","itcosmetics":"011110110100","i3.kym-cdn":"011110110101","mirror.co":"0111101101100","techpowerup":"0111101101101","activity.mobilelegends":"0111101101110","b.1339":"0111101101111","amzn":"011110111000","marine-conservation":"011110111001","vignette.wikia.nocookie":"01111011101","s.metjm":"011110111100","support.microsoft":"011110111101","nicovideo":"01111011111","instagram":"0111110","i0.kym-cdn":"01111110000","g.redditmedia":"011111100010","hq.porygon":"011111100011","cloud.google":"0111111001","ujyaaloonline":"01111110100000","href":"01111110100001","ulta.ztk5":"01111110100010","waltonfamilyfoundation":"01111110100011","journals.sagepub":"01111110100100","dailywire":"01111110100101","otranscribe":"01111110100110","macys":"01111110100111","images4-b.ravelrycache":"0111111010100","timesofindia.indiatimes":"0111111010101","optc-db.github":"0111111010110","tradingview":"0111111010111","heritage":"01111110110000","profootballtalk.nbcsports":"01111110110001","techspot":"01111110110010","kohls":"01111110110011","bash":"01111110110100","wikipedia":"01111110110101","hyperboleandahalf.blogspot":"01111110110110","surveymonkey":"01111110110111","bjs":"01111110111000","static.giantbomb":"01111110111001","cpu.userbenchmark":"01111110111010","northantrim":"01111110111011","i.huffpost":"01111110111100","zeit":"01111110111101","massdrop":"01111110111110","society6":"01111110111111","soundcloud":"01111111","plus.google":"10000000000","rottentomatoes":"10000000001","ew":"100000000100","theonion":"100000000101","lds":"1000000001100","groups.google":"10000000011010","oemdtc":"10000000011011","howl":"100000000111","steamrep":"1000000010000","sec":"1000000010001","unesco":"1000000010010","sanger":"1000000010011","shouters":"10000000101","fiddle.jshell":"100000001100","nydailynews":"100000001101","donaldjtrump":"1000000011100","nicozon":"1000000011101","nordstrom":"1000000011110","tidal":"1000000011111","xvideos":"10000001000","ala":"100000010010","nypost":"100000010011","dl.dropbox":"1000000101000","politicalcompass":"10000001010010","boingboing":"10000001010011","narffl":"100000010101","azure.microsoft":"10000001011","timeanddate":"1000000110","nationalpost":"10000001110000","cancer":"10000001110001","att":"10000001110010","indiegala":"10000001110011","secure.wikimedia":"10000001110100","gnu":"10000001110101","house":"10000001110110","mediamatters":"10000001110111","reddit.applebyte":"10000001111000","cards.eternalwarcry":"10000001111001","l.facebook":"10000001111010","mailmygov":"10000001111011","huffpost":"10000001111100","onlinemarketplace24":"10000001111101","livepc2tv":"10000001111110","documentcloud":"10000001111111","theguardian":"100000100","explainxkcd":"100000101000","nfl":"100000101001","scrolller":"100000101010","vignette2.wikia.nocookie":"100000101011","qkme":"1000001011000","bhphotovideo":"1000001011001","kaporcapital":"10000010110100","my.hupu":"10000010110101","overclock":"1000001011011","saucenao":"10000010111","vimeo":"1000001100","nbcnews":"10000011010","washingtonexaminer":"1000001101100","murmurmansk.murmansk":"1000001101101","i.dailymail.co":"100000110111","pastebin":"100000111","amazon":"100001","redd":"1000100","cnn":"1000101000","movies.netflix":"100010100100","duckduckgo":"1000101001010","minus":"1000101001011","images.brickset":"10001010011","4.bp.blogspot":"10001010100","pohudet-na-kg":"100010101010","money.cnn":"100010101011","watch24":"1000101011000","forum.kerbalspaceprogram":"1000101011001","swarfarm":"1000101011010","gph":"1000101011011","clips.twitch":"10001010111","giphy":"10001011000","pnas":"1000101100100","cia":"10001011001010","okcupid":"10001011001011","ceddit":"100010110011","sslim.kinja":"10001011010000","docs.unity3d":"10001011010001","ps.w":"10001011010010","livslinien":"10001011010011","dictionary.cambridge":"10001011010100","vocadb":"10001011010101","livestreamhdtv":"10001011010110","slatestarcodex":"10001011010111","erome":"1000101101100","adsabs.harvard":"1000101101101","uk.linkedin":"1000101101110","airtable":"1000101101111","newgrounds":"10001011100000","i1.ytimg":"10001011100001","mercurynews":"10001011100010","bible":"10001011100011","redditloans":"100010111001","xbox":"10001011101000","pokecheck":"10001011101001","scmp":"10001011101010","sweetwater":"10001011101011","popsci":"10001011101100","bodybuilding":"10001011101101","forum.paradoxplaza":"10001011101110","slickdeals":"10001011101111","kitsu":"1000101111","apps.apple":"100011","imgur":"1001","github":"10100","notebookcheck":"1010100000000","katespade":"1010100000001","xn--80adiba3abddchue7e4b":"101010000001","go.microsoft":"101010000010","discogs":"101010000011","webcache.googleusercontent":"1010100001000","articles.latimes":"1010100001001","ipsnews":"1010100001010","ikea":"1010100001011","adf":"10101000011","nicofinder":"1010100010000","media2.giphy":"1010100010001","decronym":"1010100010010","i.redditmedia":"1010100010011","cdn.shopify":"1010100010100","postimg":"1010100010101","omfgdogs":"1010100010110","polygon":"1010100010111","law.cornell":"101010001100","ted":"101010001101","usatoday":"10101000111","cbc":"10101001000","abcnews.go":"10101001001","redbubble":"1010100101000","baseball-reference":"1010100101001","nhentai":"1010100101010","globalnews":"1010100101011","goodbot-badbot.herokuapp":"10101001011","tesla":"101010011000000","pics.onsizzle":"101010011000001","gwentdb":"101010011000010","developer.microsoft":"101010011000011","wtop":"101010011000100","dreadnoughtforums":"101010011000101","media.gettyimages":"101010011000110","qwakamakaflo.in":"101010011000111","richardphotolab":"101010011001000","dyn.keepa":"101010011001001","nereusprogram":"101010011001010","dotdashmeredith":"101010011001011","cdn.vox-cdn":"101010011001100","fi.google":"101010011001101","i.postimg":"101010011001110","unitedstreams4all":"101010011001111","newsmax":"101010011010000","watchnflgame":"101010011010001","en.m.wiktionary":"101010011010010","support.plex":"101010011010011","feedingamerica":"101010011010100","fitbamob":"101010011010101","trends-and-virals":"101010011010110","business.financialpost":"101010011010111","msi":"101010011011000","sageadvice":"101010011011001","geoguessr":"101010011011010","e-liquid-recipes":"101010011011011","cloud-4.steamusercontent":"101010011011100","uproxx.files.wordpress":"101010011011101","waitbutwhy":"101010011011110","arcgames":"101010011011111","eternalwarcry":"10101001110000","forums.playbattlegrounds":"10101001110001","b1.hoopchina.com":"10101001110010","music.youtube":"10101001110011","49.media.tumblr":"10101001110100","lanacion.com":"10101001110101","files.catbox":"10101001110110","ehjmilredditop.in":"10101001110111","events.withgoogle":"101010011110000","oceanographicmagazine":"101010011110001","adcouncil":"10101001111001","fortunesociety":"101010011110100","jbl":"101010011110101","latinospro":"101010011110110","thelastmile":"101010011110111","resourcewatch":"10101001111100","therosienetwork":"10101001111101","cs.mak.ac":"10101001111110","blog.code":"10101001111111","ftc":"101010100000000","picasaweb.google":"101010100000001","makeuseof":"101010100000010","techradar":"101010100000011","indeed":"101010100000100","epicurious":"101010100000101","malwarebytes":"101010100000110","philpapers":"101010100000111","sanders.senate":"101010100001000","businesswire":"101010100001001","mariowiki":"101010100001010","simple.wikipedia":"101010100001011","camelcamelcamel":"101010100001100","nlm.nih":"101010100001101","gigabyte":"101010100001110","articles.chicagotribune":"101010100001111","pislinkuredditza.in":"1010101000100","sli":"1010101000101","collegehumor":"101010100011000","scienceblogs":"101010100011001","dx.doi":"101010100011010","damninteresting":"101010100011011","presstv":"101010100011100","lewrockwell":"101010100011101","slideshare":"101010100011110","cirp":"101010100011111","sketchtoy":"101010100100000","backcountry":"101010100100001","99percentinvisible":"101010100100010","health":"101010100100011","giantitp":"101010100100100","chess":"101010100100101","hhs":"101010100100110","endclothing":"101010100100111","kijiji":"101010100101000","profootballfocus":"101010100101001","images6.fanpop":"101010100101010","theroot":"101010100101011","lemonde":"101010100101100","moridb":"101010100101101","canadiancouchpotato":"101010100101110","androidauthority":"101010100101111","privateinternetaccess":"101010100110000","gao":"101010100110001","easports":"101010100110010","codecademy":"101010100110011","static.tumblr":"101010100110100","onepiece.wikia":"101010100110101","fc03.deviantart":"101010100110110","dnaindia":"101010100110111","votetexas":"101010100111000","freakonomics":"101010100111001","asos":"101010100111010","jacobinmag":"101010100111011","pjmedia":"101010100111100","loc":"101010100111101","iopscience.iop":"101010100111110","borderlands.wikia":"101010100111111","thefreedictionary":"10101010100000","img.photobucket":"10101010100001","redtube":"10101010100010","grooveshark":"10101010100011","thingiverse":"101010101001","familysearch":"10101010101000","media-cache-ec0.pinimg":"10101010101001","samaritans":"10101010101010","matthieugrieger":"10101010101011","docs.oracle":"10101010101100","beeradvocate":"10101010101101","eia":"10101010101110","neogaf":"10101010101111","puu":"1010101011","minderoo":"101010110000","xn--b1actsqfc5b.xn--j1aef":"101010110001","i.gyazo":"10101011001","store.playstation":"101010110100","fantasypros":"1010101101010","nymag":"1010101101011","video.google":"10101011011000","stimson":"10101011011001","images4-e.ravelrycache":"1010101101101","google.com":"101010110111","scp-wiki":"1010101110","redditenhancementsuite":"1010101111","tvvidzon.blogspot":"1010110000000","netrunnerdb":"1010110000001","bigkosmos":"1010110000010","video.nfl":"1010110000011","seedsindia":"10101100001","greasyfork":"10101100010","speedtest":"1010110001100","redditgifts":"10101100011010","rateyourmusic":"10101100011011","homedepot":"101011000111","newegg":"1010110010","theatlantic":"10101100110","wiki.guildwars2":"101011001110","creativecommons":"1010110011110","bing":"1010110011111","howtogeek":"1010110100000","ebay.co":"1010110100001","moviehunterz":"1010110100010","giant.gfycat":"1010110100011","click.linksynergy":"10101101001","gameinformer":"10101101010000","elderscrolls.wikia":"10101101010001","motorola":"10101101010010","random":"10101101010011","usa":"10101101010100","oregonlive":"10101101010101","readability":"10101101010110","irishtimes":"10101101010111","jobs.target":"10101101011000","capitalone":"10101101011001","learnbitcoin":"10101101011010","veryfetch":"10101101011011","porygon":"10101101011100","ctvnews":"10101101011101","shters":"10101101011110","scriptogr":"10101101011111","support.google":"1010110110","thedailybeast":"101011011100","netflix":"1010110111010","livestreamfails":"1010110111011","countle":"10101101111","gfycat":"10101110","medium":"101011110","megalodon":"101011111","usblackchambers":"101100000000","zerohedge":"1011000000010","motherjones":"1011000000011","tiktok":"10110000001","apple":"10110000010","opendota":"101100000110","theverge":"101100000111","upload.wikimedia":"101100001","notehub":"1011000100000","media0.giphy":"1011000100001","i.magaimg":"1011000100010","r34.tsumino":"1011000100011","imgs.xkcd":"101100010010","e621":"101100010011","nexusmods":"1011000101","dotabuff":"1011000110","psychologytoday":"101100011100","espn.go":"101100011101","t":"10110001111","m.imgur":"101100100","snopes":"10110010100","ff2ebook":"10110010101","hearthpwn":"10110010110","brickset":"10110010111","2.bp.blogspot":"10110011000","patheos":"10110011001000","venturebeat":"10110011001001","data.whicdn":"10110011001010","tinypic":"10110011001011","zdnet":"10110011001100","penny-arcade":"10110011001101","thenation":"10110011001110","tampabay":"10110011001111","bugguide":"10110011010","ravelry":"10110011011","thediplomat":"101100111000000","maggardrazors":"101100111000001","keto-calculator.ankerl":"101100111000010","vg247":"101100111000011","datpiff":"101100111000100","farm9.staticflickr":"101100111000101","thenextweb":"101100111000110","logicalincrements":"101100111000111","support.rockstargames":"101100111001000","thetimes.co":"101100111001001","doc.rust-lang":"101100111001010","t-mobile":"101100111001011","youllot.nation2":"101100111001100","teespring":"101100111001101","i.4cdn":"101100111001110","support.activision":"101100111001111","musiciansfriend":"101100111010000","gta.wikia":"101100111010001","eeoc":"101100111010010","euw.leagueoflegends":"101100111010011","lh5.googleusercontent":"101100111010100","artofmanliness":"101100111010101","washingtonsblog":"101100111010110","portforward":"101100111010111","digikey":"101100111011000","scarleteen":"101100111011001","productforums.google":"101100111011010","cbs":"101100111011011","allenedmonds":"101100111011100","pewglobal":"101100111011101","charitynavigator":"101100111011110","themarysue":"101100111011111","vertigobutik":"101100111100000","cubers":"101100111100001","event.mobilelegends":"101100111100010","i.ibb":"101100111100011","e-hentai":"101100111100100","gttp.votinginfoproject":"101100111100101","buzzfeednews":"101100111100110","imgtc":"101100111100111","community.c2cglobal":"101100111101000","allaboutcookies":"101100111101001","getsupport.apple":"101100111101010","naacpimageawards":"101100111101011","pahilopost":"101100111101100","gamepedia.cursecdn":"101100111101101","applieddigitalskills.withgoogle":"101100111101110","jerkofftocelebs":"101100111101111","vslive":"101100111110000","accessories4less":"101100111110001","wowwiki.wikia":"101100111110010","apkmirror":"101100111110011","account.oneplus":"101100111110100","abc7news":"101100111110101","webtoons":"101100111110110","ohchr":"101100111110111","patch":"101100111111000","priberam":"101100111111001","sandiegouniontribune":"101100111111010","heqreditmonis.in":"101100111111011","nowwatchtvlive":"101100111111100","modlog.github":"101100111111101","sciencealert":"101100111111110","go.berniesanders":"101100111111111","phish":"1011010000000","m.xkcd":"1011010000001","bzgnnbab.bzgnnbab":"1011010000010","euw.op":"1011010000011","pro-football-reference":"1011010000100","xhamster":"1011010000101","glassdoor":"1011010000110","dailycaller":"1011010000111","sciencebasedmedicine":"101101000100000","bankrate":"101101000100001","browse.deviantart":"101101000100010","launchpad":"101101000100011","dmv.ca":"101101000100100","norml":"101101000100101","gothamist":"101101000100110","sales.starcitygames":"101101000100111","cbpp":"101101000101000","autoblog":"101101000101001","fc08.deviantart":"101101000101010","oglaf":"101101000101011","tardis.wikia":"101101000101100","payscale":"101101000101101","inception.davepedu":"101101000101110","27.media.tumblr":"101101000101111","thinkwithgoogle":"1011010001100","photos.app.goo":"1011010001101","26.media.tumblr":"101101000111000","tools.ietf":"101101000111001","thestranger":"101101000111010","store.apple":"101101000111011","sourcewatch":"101101000111100","farm3.static.flickr":"101101000111101","stltoday":"101101000111110","forum.bodybuilding":"101101000111111","camwhores":"10110100100000","matchstats":"10110100100001","jv":"10110100100010","swgoh":"10110100100011","ifixit":"10110100100100","c-span":"10110100100101","hdmoviejunction":"10110100100110","steamdb":"10110100100111","register.uso":"101101001010000","developers.home.google":"101101001010001","customers.microsoft":"10110100101001","storytoys":"101101001010100","fastdemocracy":"101101001010101","documentation.spire":"101101001010110","iotc":"101101001010111","mba.ac":"10110100101100","services.google":"10110100101101","earthshotprize":"10110100101110","bavc":"10110100101111","1.bp.blogspot":"10110100110","kickstarter":"101101001110","newsweek":"101101001111","globalfishingwatch":"1011010100","uso.zoom":"101101010100","shop.aclu":"101101010101","code.google":"101101010110","media.tenor":"1011010101110","deckbox":"1011010101111","cdc":"10110101100","ywca":"10110101101","translate.google":"1011010111","bls":"1011011000000","uniqlo":"10110110000010","gamefaqs":"10110110000011","vera":"101101100001","politico":"10110110001","pbs":"101101100100","maps.google":"101101100101","justinpaulin":"101101100110","gitlab":"101101100111","removeddit":"10110110100","zappos":"10110110101000","accesstoinsight":"10110110101001","skepticalscience":"10110110101010","donorschoose":"10110110101011","ssshorts":"101101101011","strava":"10110110110000","cdn.meme":"10110110110001","wikiwand":"10110110110010","c2.staticflickr":"10110110110011","assets.sbnation":"10110110110100","papers.ssrn":"10110110110101","indiegogo":"10110110110110","extremetech":"10110110110111","prf":"10110110111000","news.gallup":"10110110111001","channel4":"101101101110100","cdn.donorschoose":"101101101110101","refugees":"10110110111011","smash":"10110110111100","getpocket":"10110110111101","img.buzzfeed":"10110110111110","xn--e1akfklne0d.xn--j1aef":"10110110111111","imdb":"10110111","youtu":"10111","blog.mozilla":"1100000000000","smbc-comics":"1100000000001","vulpix":"1100000000010","dl.dropboxusercontent":"1100000000011","sephora":"110000000010","31.media.tumblr":"110000000011","itunes.apple":"1100000001","para":"1100000010","hsreplay":"11000000110","wikihow":"110000001110","wiki.teamliquid":"1100000011110","teamliquid":"1100000011111","forum.xda-developers":"11000001000","services.parliament":"1100000100100","weknowmemes":"1100000100101","getindiebill":"1100000100110","hentai-foundry":"1100000100111","steamkiwi":"11000001010","lastfm-img2.akamaized":"11000001011","en.wiktionary":"110000011000","fangraphs":"1100000110010","flic":"1100000110011","41.media.tumblr":"110000011010","38.media.tumblr":"110000011011","bit":"1100000111","discord":"11000010","nytimes":"110000110","dndbeyond":"110000111000000","3ds":"110000111000001","support.discordapp":"110000111000010","yourporn":"110000111000011","storage.googleapis":"110000111000100","gxb.carolgames":"110000111000101","electrek":"110000111000110","dbr":"110000111000111","frameiteasy":"110000111001000","format":"110000111001001","visualstudio.microsoft":"110000111001010","mobilize":"110000111001011","limraexim":"110000111001100","primealpha":"110000111001101","qph.fs.quoracdn":"110000111001110","registertovoteflorida":"110000111001111","dnd.wizards":"110000111010000","media4.giphy":"110000111010001","indiewire":"110000111010010","minyoung":"110000111010011","bendhur.tumblr":"110000111010100","dermstore":"110000111010101","gg":"110000111010110","southpark.cc":"110000111010111","vrsws.sos.ky":"110000111011000","tdeecalculator":"110000111011001","pdfs.semanticscholar":"110000111011010","emojipedia":"110000111011011","m.dhgate":"110000111011100","rtings":"110000111011101","bugreport.apple":"110000111011110","oneplus":"110000111011111","pc-kombo":"11000011110000","amazon.com":"11000011110001","shortland":"11000011110010","snapchat":"11000011110011","codepen":"11000011110100","hobbyking":"11000011110101","dogechain":"11000011110110","worldwidetvshowsnow.blogspot":"11000011110111","oceanpanel":"11000011111000","loanmanager":"11000011111001","wadhwaniai":"110000111110100","iibuffalo":"110000111110101","gub":"11000011111011","herbibot":"11000011111100","a":"11000011111101","external-preview.redd":"11000011111110","support.coinbase":"11000011111111","propublica":"110001000000000","drupal":"110001000000001","jsonline":"110001000000010","youporn":"110001000000011","sports.espn.go":"110001000000100","eurekalert":"110001000000101","infoplease":"110001000000110","nybooks":"110001000000111","exrx":"110001000001000","io9":"110001000001001","urbanoutfitters":"110001000001010","oecd":"110001000001011","tf2b":"110001000001100","sparkfun":"110001000001101","freep":"110001000001110","blogs.discovermagazine":"110001000001111","cdn.discordapp":"11000100001","help.ea":"110001000100000","mwo.smurfy-net":"110001000100001","kff":"110001000100010","llbean":"110001000100011","dulfy":"110001000100100","welt":"110001000100101","forums.warframe":"110001000100110","hbr":"110001000100111","mtgsalvation":"110001000101000","f-droid":"110001000101001","npmjs":"110001000101010","cdn.mediacru":"110001000101011","atlasobscura":"110001000101100","bigstory.ap":"110001000101101","halopedia":"110001000101110","ideone":"110001000101111","pcgamingwiki":"110001000110000","psycnet.apa":"110001000110001","phoronix":"110001000110010","images5.fanpop":"110001000110011","polyvore":"110001000110100","observer":"110001000110101","fc09.deviantart":"110001000110110","cabelas":"110001000110111","fiber.google":"110001000111000","greenmangaming":"110001000111001","ndtv":"110001000111010","androidpolice":"110001000111011","d20srd":"110001000111100","bmj":"110001000111101","newstatesman":"110001000111110","about":"110001000111111","animenewsnetwork":"11000100100000","jalopnik":"11000100100001","chamorrobible":"11000100100010","tradingeconomics":"11000100100011","redditinc":"110001001001","i.chzbgr":"11000100101000","mediaite":"11000100101001","theconversation":"11000100101010","gamestop":"11000100101011","nbc":"11000100101100","sciencemag":"11000100101101","rcfp":"11000100101110","deadspin":"11000100101111","canada":"1100010011000","space":"11000100110010","mines":"11000100110011","mega":"1100010011010","static.api3.studiobebop":"1100010011011","wsj":"110001001110","abc.net":"110001001111","i.redd":"11000101","aclu":"11000110","myanimelist":"11000111","thehimalayantimes":"1100100000000","theintercept":"1100100000001","ripsave":"1100100000010","xx1":"1100100000011","de.wikipedia":"110010000010","puzzledragonx":"1100100000110","thelocal":"11001000001110","sourceforge":"11001000001111","i.pinimg":"11001000010","deviantart":"11001000011","yelp":"110010001000","nasa":"1100100010010","images.google":"1100100010011","battle":"11001000101000","ibtimes":"11001000101001","items.jellyneo":"11001000101010","tandfonline":"11001000101011","sv.wikipedia":"11001000101100","answers.yahoo":"11001000101101","thumbs.dreamstime":"11001000101110","mentalfloss":"11001000101111","pornhub":"1100100011","discordapp":"11001001","video.twimg":"11001010000000","ltstyt":"11001010000001","photo.walgreens":"11001010000010","meme":"11001010000011","audible":"11001010000100","bostonglobe":"11001010000101","media.discordapp":"11001010000110","etherscan":"11001010000111","rollingstone":"1100101000100","fallout.wikia":"1100101000101","uso":"1100101000110","today":"1100101000111","mtgprice":"1100101001","govtrack":"1100101010000","youtubedoubler":"11001010100010","weather":"110010101000110","forum.notebookreview":"110010101000111","contact.dankmemesreddit":"110010101001","credo360":"11001010101","s3.amazonaws":"110010101100","gog":"1100101011010","es.wikipedia":"1100101011011","espn":"110010101110","grailed":"110010101111","en.m.wikipedia":"11001011","google":"1100110","i.reddituploads":"1100111000000","journals.plos":"1100111000001","imo":"1100111000010","myaccount.google":"1100111000011","swtor":"1100111000100","reddit.honestbleeps":"1100111000101","userserve-ak.last":"1100111000110","runescape.wikia":"1100111000111","flickr":"1100111001","chrome.google":"1100111010","futbin":"110011101100","botmetric.pythonanywhere":"1100111011010","instructables":"1100111011011","strawpoll":"110011101110","irs":"110011101111","copymethat":"11001111000000","healthline":"11001111000001","preview.redd":"11001111000010","stratz":"11001111000011","meshcenter":"11001111000100","boards.na.leagueoflegends":"11001111000101","crisistextline":"11001111000110","store.google":"11001111000111","diamondcarepetfood":"110011110010000","images-wixmp-ed30a86b8c4ca887773594c2.wixmp":"110011110010001","policies.google":"110011110010010","ratopati":"110011110010011","classicdb":"110011110010100","whoaremyrepresentatives":"110011110010101","voterlookup.elections.state.ny":"110011110010110","setopati":"110011110010111","skillsoft":"11001111001100","payneinstitute.mines":"11001111001101","newsroom.ca.paypal-corp":"110011110011100","mpatlas":"110011110011101","newsroom.uk.paypal-corp":"110011110011110","newsroom.it.paypal-corp":"110011110011111","tv.youtube":"110011110100","m.facebook":"110011110101","dw":"11001111011000","1d4chan":"11001111011001","steamcharts":"11001111011010","imagecomics":"11001111011011","nj":"11001111011100","mobygames":"11001111011101","myfigurecollection":"11001111011110","seattletimes":"11001111011111","mtgtop8":"110011111000000","smogon":"110011111000001","en.numista":"110011111000010","data.bls":"110011111000011","s3-ec.buzzfed":"110011111000100","iep.utm":"110011111000101","nap":"110011111000110","songkick":"110011111000111","texastribune":"110011111001000","sphotos-a.xx.fbcdn":"110011111001001","imperial-library":"110011111001010","usatoday30.usatoday":"110011111001011","no.wikipedia":"110011111001100","diablofans":"110011111001101","g.e-hentai":"110011111001110","forums.civfanatics":"110011111001111","jewishvirtuallibrary":"110011111010000","pbfcomics":"110011111010001","newadvent":"110011111010010","zazzle":"110011111010011","vredd":"1100111110101","listverse":"110011111011000","images4.wikia.nocookie":"110011111011001","deathpenaltyinfo":"110011111011010","nola":"110011111011011","homebrewtalk":"110011111011100","en.wikisource":"110011111011101","gq":"110011111011110","ontario":"110011111011111","cfb.diydunce":"110011111100000","pajhwok":"110011111100001","mnvotes.sos.state.mn":"110011111100010","dmsguild":"110011111100011","cdn-images-1.medium":"110011111100100","periscope":"110011111100101","oodaloop":"110011111100110","vfdvdfvdvf.deviantart":"110011111100111","mtg.gamepedia":"110011111101000","resistbot":"110011111101001","image.ibb":"110011111101010","secure-dawn-77807.herokuapp":"110011111101011","jamanetwork":"110011111101100","nakilon":"110011111101101","unblockvideos":"110011111101110","img.bricklink":"110011111101111","mrwgifs":"110011111110000","ark.intel":"110011111110001","usmagazine":"110011111110010","gamersnexus":"110011111110011","bizjournals":"110011111110100","pokemon":"110011111110101","footballoutsiders":"110011111110110","probuilds":"110011111110111","windowscentral":"110011111111000","thefederalist":"110011111111001","imgrush":"110011111111010","vipleague":"110011111111011","virustotal":"110011111111100","warhammer40k.wikia":"110011111111101","channelfireball":"110011111111110","docs.aws.amazon":"110011111111111","i.imgur":"1101","facebook":"11100000","rover.ebay":"1110000100000","thinkprogress":"1110000100001","orcz":"1110000100010","variety":"1110000100011","tvtropes":"11100001001","media1.tenor":"1110000101000","autistichoya":"1110000101001","support.xbox":"111000010101","anidb":"111000010110","i.kinja-img":"1110000101110","derpibooru":"1110000101111","msnbc":"11100001100000","vodlockershow":"11100001100001","ncaaf.live-tvstreaming":"11100001100010","impress.openneo":"11100001100011","mspaintadventures":"11100001100100","hrw":"11100001100101","screenshot.freshphase":"11100001100110","en.bitcoin":"11100001100111","empleadoestatalbot.ddns":"11100001101000","academic.oup":"11100001101001","talkorigins":"111000011010100","credobeauty":"111000011010101","pmc":"11100001101011","pokegiveawaybot.tumblr":"11100001101100","poe":"11100001101101","vote":"11100001101110","livechart":"11100001101111","meritamerica":"111000011100","smh.com":"1110000111010","policy.medium":"1110000111011","target":"11100001111","sesamestreetincommunities":"11100010","wordpress":"1110001100000","cracked":"1110001100001","g":"1110001100010","minecraftforum":"1110001100011","independent.co":"11100011001","locationbot":"111000110100","plato.stanford":"1110001101010","votesmart":"1110001101011","turkopticon.differenceengines":"11100011011000","zillow":"11100011011001","replygif":"11100011011010","i.stack.imgur":"11100011011011","britannica":"11100011011100","memegenerator":"11100011011101","apa":"11100011011110","boards.4chan":"11100011011111","developer.valvesoftware":"111000111000000","townhall":"111000111000001","alibaba":"111000111000010","bgr":"111000111000011","images1.wikia.nocookie":"111000111000100","gifbin":"111000111000101","dota2wiki":"111000111000110","earthquake.usgs":"111000111000111","pugetsystems":"111000111001000","stathat":"111000111001001","livememe":"111000111001010","m.wikihow":"111000111001011","forum-en.guildwars2":"111000111001100","evga":"111000111001101","france24":"111000111001110","startribune":"111000111001111","m.imdb":"1110001110100","fr.wikipedia":"1110001110101","youjizz":"111000111011000","worldcat":"111000111011001","e-cigarette-forum":"111000111011010","fc04.deviantart":"111000111011011","islamqa":"111000111011100","encyclopediadramatica":"111000111011101","cbo":"111000111011110","ubuntu":"111000111011111","adessium":"111000111100000","thahakhabar":"111000111100001","learn.microsoft":"111000111100010","waittfoundation":"111000111100011","milkcasino":"111000111100100","richzhang.github":"111000111100101","warframe.fandom":"111000111100110","brasil.elpais":"111000111100111","orcid":"111000111101000","mragasiapacific.com":"111000111101001","pntra":"111000111101010","citation-needed.springer":"111000111101011","newsroom.br.paypal-corp":"111000111101100","tv.apple":"111000111101101","mccormickfoundation":"111000111101110","newsroom.au.paypal-corp":"111000111101111","cubetutor":"111000111110000","auto.leprosorium":"111000111110001","sportsnet":"111000111110010","yt3.ggpht":"111000111110011","localbitcoins":"111000111110100","icy-veins":"111000111110101","images4-d.ravelrycache":"111000111110110","iflscience":"111000111110111","frinkiac":"111000111111000","bustle":"111000111111001","ae01.alicdn":"111000111111010","1piwup.spb":"111000111111011","tagpro":"111000111111100","unfortunate-maps.jukejuice":"111000111111101","firstpost":"111000111111110","openload":"111000111111111","pcpartpicker":"111001","people":"11101","sportstainment":"11110000000000","m.ebay":"11110000000001","detigenii":"11110000000010","because":"11110000000011","na.finalfantasyxiv":"11110000000100","udemy":"11110000000101","img3.wikia.nocookie":"11110000000110","edigitalplace":"11110000000111","action.aclu":"11110000001000","yanginsondurmeistanbul":"11110000001001","cebc.cnrs":"11110000001010","sentinel.esa":"11110000001011","oload":"11110000001100","shortsss":"11110000001101","onmyojiarena":"11110000001110","r-drrp.appspot":"11110000001111","w.atch":"111100000100","i.kym-cdn":"111100000101","paypal":"11110000011","anime-planet":"1111000010","biblegateway":"11110000110","telegraph.co":"11110000111","archive":"11110001","img.scryfall":"11110010","scryfall":"11110011","memes":"111101000000","meetup":"1111010000010","thestar":"1111010000011","reuters":"11110100001","commondreams":"11110100010000","yanglinks":"11110100010001","fortune":"1111010001001","mayoclinic":"1111010001010","thepiratebay":"11110100010110","moddb":"11110100010111","livebuzztv":"111101000110","danbooru.donmai":"111101000111","vshare":"11110100100000","shortwww":"11110100100001","cdn11.bigcommerce":"11110100100010","steamuserimages-a.akamaihd":"11110100100011","commonsensemedia":"11110100100100","pets.webmd":"11110100100101","res.cloudinary":"11110100100110","m.mlb":"11110100100111","qz":"1111010010100","ulta":"1111010010101","goodwill":"1111010010110","images.akamai.steamusercontent":"1111010010111","vox":"111101001100","vice":"1111010011010","wearegreenbay":"1111010011011","wikidata":"111101001110","sites.google":"111101001111","wolframalpha":"1111010100","xkcd":"1111010101","yugiohprices":"111101011000","arstechnica":"111101011001","mtggoldfish":"1111010110100","blockchain":"1111010110101","movies":"1111010110110","vid":"1111010110111","lmgtfy":"11110101110","au.pcpartpicker":"11110101111","i.qkme":"11110110000","news.nationalgeographic":"11110110001000","developer.apple":"11110110001001","splcenter":"11110110001010","wizards":"11110110001011","i.sli":"111101100011","philly":"111101100100000","nvidia":"111101100100001","en.memory-alpha":"111101100100010","pcmag":"111101100100011","hackaday":"111101100100100","dc.wikia":"111101100100101","lh4.googleusercontent":"111101100100110","xda-developers":"111101100100111","bandcamp":"111101100101000","tube8":"111101100101001","complex":"111101100101010","shroomery":"111101100101011","fc02.deviantart":"111101100101100","directv":"111101100101101","farm4.staticflickr":"111101100101110","fc00.deviantart":"111101100101111","shopineer":"1111011001100","cnet":"1111011001101","nationmaster":"111101100111000","jezebel":"111101100111001","drugs":"111101100111010","superuser":"111101100111011","hillaryclinton":"111101100111100","city-data":"111101100111101","sheldonbrown":"111101100111110","en.wikibooks":"111101100111111","help.twitch":"111101101000000","milb":"111101101000001","niceme":"111101101000010","metabattle":"111101101000011","nutritionfacts":"111101101000100","chat.tripsit":"111101101000101","thegatewaypundit":"111101101000110","play.spotify":"111101101000111","paste4btc":"111101101001000","plays":"111101101001001","streamendous":"111101101001010","9gug":"111101101001011","playstation":"111101101001100","uk.reuters":"111101101001101","coriolis":"111101101001110","offsided":"111101101001111","barnesandnoble":"111101101010000","rotoworld":"111101101010001","dev.dota2":"111101101010010","studentaid.ed":"111101101010011","torproject":"111101101010100","in.reuters":"111101101010101","rainn":"111101101010110","support.mozilla":"111101101010111","sunnah":"111101101011000","forum.supercell":"111101101011001","it.pcpartpicker":"111101101011010","it.wikipedia":"111101101011011","al":"111101101011100","en.cppreference":"111101101011101","op":"111101101011110","indiedb":"111101101011111","gaugepowered":"11110110110000","media3.giphy":"11110110110001","sbtl":"11110110110010","clyp":"11110110110011","humblebundle":"11110110110100","factcheck":"11110110110101","lowes":"11110110110110","w3":"11110110110111","s.reddit":"111101101110000","dis":"111101101110001","lokaantar":"111101101110010","vrddit":"111101101110011","heavy":"111101101110100","support.oculus":"111101101110101","steemit":"111101101110110","thesilphroad":"111101101110111","postkodstiftelsen":"11110110111100","piskihuiski.ivanovo":"11110110111101","newsroom.fr.paypal-corp":"111101101111100","oakfnd":"111101101111101","bloomingdales":"111101101111110","newsroom.apac.paypal-corp":"111101101111111","theglobeandmail":"1111011100000","finance.yahoo":"1111011100001","lg":"1111011100010","change":"1111011100011","friendsafaribot.tumblr":"11110111001","marxists":"11110111010","tineye":"11110111011","streamable":"111101111","wired":"111110000000","ign":"1111100000010","realclearpolitics":"1111100000011","pagesix":"1111100000100","geekwire":"1111100000101","shareasale":"1111100000110","vignette4.wikia.nocookie":"1111100000111","vine":"1111100001000","stream1.gifsoup":"1111100001001","anrdoezrs":"1111100001010","biblehub":"1111100001011","manyvids":"1111100001100","events.jacksonville":"1111100001101","who":"1111100001110","theregister.co":"11111000011110","newscientist":"11111000011111","old.reddit":"111110001","cnbc":"111110010000","qsniyg.github":"1111100100010","legaliq":"1111100100011","pinterest":"111110010010","mediafire":"111110010011","ow":"11111001010000","gawker":"11111001010001","timesofisrael":"11111001010010","img4.wikia.nocookie":"11111001010011","nhs":"11111001010100","nps":"11111001010101","history":"11111001010110","bitbucket":"11111001010111","news.un":"11111001011000","yangintupufirmasi":"11111001011001","presidencia.go":"11111001011010","googlecloudcommunity":"11111001011011","beedogs":"11111001011100","cakedogg":"11111001011101","noteb":"11111001011110","grammarerrors":"11111001011111","watttime":"1111100110000","mercons":"1111100110001","hollywoodreporter":"1111100110010","thehindu":"11111001100110","eff":"11111001100111","dota2":"111110011010","quickmeme":"111110011011","40.media.tumblr":"111110011100","redditlog":"111110011101","patreon":"11111001111","imageshack":"111110100000000","pages.ebay":"111110100000001","naruto.wikia":"111110100000010","nintendo.co":"111110100000011","libcom":"111110100000100","lesswrong":"111110100000101","nzherald.co":"111110100000110","giantbomb":"111110100000111","spotrac":"111110100001000","shapeways":"111110100001001","michigan":"111110100001010","iafd":"111110100001011","boxofficemojo":"111110100001100","numbeo":"111110100001101","cinemablend":"111110100001110","usccb":"111110100001111","apnews":"1111101000100","encrypted-tbn0.gstatic":"1111101000101","gsmarena":"111110100011000","ynetnews":"111110100011001","hackage.haskell":"111110100011010","fsis.usda":"111110100011011","medicalnewstoday":"111110100011100","democracynow":"111110100011101","example":"111110100011110","counterpunch":"111110100011111","bigflixmovies":"111110100100000","2kmtcentral":"111110100100001","support.sprint":"111110100100010","support.office":"111110100100011","eporner":"111110100100100","coinbase":"111110100100101","livestreamhdtv365":"111110100100110","raw.githubusercontent":"111110100100111","trythatsoap":"111110100101000","mods.factorio":"111110100101001","bitchute":"111110100101010","7-eleven":"111110100101011","pin":"111110100101100","gilishe":"111110100101101","sci-hub":"111110100101110","shadowverse-portal":"111110100101111","vk":"111110100110000","banggood":"111110100110001","yl":"111110100110010","revzilla":"111110100110011","leafly":"111110100110100","screenrant":"111110100110101","code":"111110100110110","mlssoccer":"111110100110111","forum.warthunder":"111110100111000","color":"111110100111001","img.4plebs":"111110100111010","smashboards":"111110100111011","sto.gamepedia":"111110100111100","obsproject":"111110100111101","sbs.com":"111110100111110","cleantechnica":"111110100111111","opensource":"11111010100000","infobae":"11111010100001","image.prntscr":"11111010100010","67.media.tumblr":"11111010100011","cdn.awwni":"11111010100100","ballotpedia":"11111010100101","msn":"11111010100110","source.android":"11111010100111","ffa":"111110101010000","donabertarelli":"111110101010001","faq.spire":"111110101010010","newsroom.deatch.paypal-corp":"111110101010011","forms":"111110101010100","repo.packix":"111110101010101","en.unesco":"111110101010110","assistant.google":"111110101010111","rnintendoswitch":"11111010101100","md-akc.med.nhl":"11111010101101","help.medium":"11111010101110","dupebot":"11111010101111","dailydot":"11111010110000","phys":"11111010110001","i1.wp":"11111010110010","hiyo":"11111010110011","i2.kym-cdn":"1111101011010","monoprice":"11111010110110","hiringourheroes":"11111010110111","giftcards.kroger":"11111010111","mobile.twitter":"11111011000","bloomberg":"11111011001","hearthhead":"111110110100","mobile.nytimes":"1111101101010","usnews":"1111101101011","media-hearth.cursecdn":"11111011011","karmadecay":"1111101110","quora":"111110111100","rt":"1111101111010","developer.android":"1111101111011","bbc":"11111011111","v.redd":"11111100000","technet.microsoft":"11111100001000","senate":"11111100001001","etymonline":"11111100001010","thesun.co":"11111100001011","stackoverflow":"111111000011","bogleheads":"11111100010000","si":"11111100010001","data.worldbank":"11111100010010","nintendo":"11111100010011","bleacherreport":"11111100010100","mashable":"11111100010101","wayfair":"11111100010110","static.fjcdn":"11111100010111","steamtrades":"11111100011000","battleforthenet":"11111100011001","mediadownloads.mlb":"1111110001101","forums.frontier.co":"11111100011100","coinmarketcap":"11111100011101","tenor":"11111100011110","en.uesp":"11111100011111","osu.ppy":"11111100100","monthlyreview":"1111110010100","pewresearch":"1111110010101","news.yahoo":"11111100101100","news.cnet":"111111001011010","kongregate":"111111001011011","yang2020":"1111110010111","hltv":"11111100110","news.ycombinator":"111111001110","sciencedaily":"1111110011110","nber":"11111100111110","discussions.apple":"11111100111111","play.google":"111111010","dropbox":"11111101100","consumer.ftc":"11111101101000","evike":"11111101101001","gofundme":"11111101101010","media1.giphy":"11111101101011","deadline":"11111101101100","fda":"11111101101101","examine":"11111101101110","askubuntu":"11111101101111","mediacru":"111111011100000","hockey-reference":"111111011100001","geforce":"111111011100010","prnewswire":"111111011100011","ask":"111111011100100","vulture":"111111011100101","us.asos":"111111011100110","dhgate":"111111011100111","orig00.deviantart":"111111011101000","i.guim.co":"111111011101001","userbenchmark":"111111011101010","linkesloder":"111111011101011","tvwire":"111111011101100","coindesk":"111111011101101","icloud":"111111011101110","bitinfocharts":"111111011101111","fc06.deviantart":"111111011110000","adafruit":"111111011110001","parts-express":"111111011110010","funnyjunk":"111111011110011","sendspace":"111111011110100","forums.steampowered":"111111011110101","uscis":"111111011110110","bugzilla.mozilla":"111111011110111","theage.com":"111111011111000","faa":"111111011111001","supremecourt":"111111011111010","3dmark":"111111011111011","cleveland":"111111011111100","cic.gc":"111111011111101","mrmoneymustache":"111111011111110","rockpapershotgun":"111111011111111","ncbi.nlm.nih":"111111100","pbs.twimg":"111111101","api.scryfall":"111111110","owo.bitz":"11111111100000","dl.opensubtitles":"11111111100001","alkami":"11111111100010","fyens":"11111111100011","static1.squarespace":"11111111100100","warcraftlogs":"11111111100101","kalugaluga.kaluga":"11111111100110","videopriem":"11111111100111","api.random":"111111111010000","trends.google":"111111111010001","phanes.feralhosting":"111111111010010","d1u5p3l4wpay3k.cloudfront":"111111111010011","aws.wariomissed":"111111111010100","charts.camelcamelcamel":"111111111010101","ishtar-collective":"111111111010110","ourworldindata":"111111111010111","blackentrepreneursday":"111111111011000","glotalent":"111111111011001","libguides.ala":"111111111011010","kidsbeetv":"111111111011011","blog.nationalgeographic":"111111111011100","lettercount":"111111111011101","foundation.mozilla":"111111111011110","ushcc":"111111111011111","reddithelp":"11111111110","urbandictionary":"11111111111"};
const domainEncode = {"0":"1100111000","1":"1100111100","2":"1100111101","3":"0010011100","4":"00100111101","5":"11001110010","6":"00100111011","7":"11001110011","8":"00100111010","9":"00100111100","l":"0000","c":"0001","v":"001000","-":"0010010","x":"00100110","q":"0010011111","g":"00101","n":"0011","p":"01000","y":"010010","w":"010011","i":"0101","t":"0110","r":"0111","s":"1000","d":"10010","m":"10011","END":"1010","o":"1011","u":"11000","f":"110010","k":"1100110","z":"110011101","j":"110011111","a":"1101","e":"1110",".":"11110","h":"111110","b":"111111"};
const pathEncode = {"0":"011011","1":"011001","2":"1111000","3":"1010011","4":"1010010","5":"1001011","6":"1001010","7":"1000101","8":"1000110","9":"0110001","o":"0000","/":"0001","s":"0010","&":"00110000","R":"00110001","?":"0011001","k":"001101","d":"00111","t":"0100","i":"0101",",":"01100000000","'":"0110000000100","]":"0110000000101","!":"011000000011",":":"0110000001","W":"011000001","q":"01100001","b":"011010","a":"0111","l":"10000","U":"100010000","L":"100010001","A":"10001001",".":"1000111","f":"100100","c":"10011","=":"1010000","G":"101000100","E":"101000101","I":"101000110","F":"101000111","m":"10101","-":"10110","w":"101110","X":"1011110000","+":"1011110001","D":"101111001","Z":"1011110100","*":"10111101010000","$":"1011110101000100",";":"1011110101000101","@":"101111010100011","[":"1011110101001","(":"101111010101",")":"10111101011","P":"101111011","v":"1011111","e":"1100","j":"11010000","O":"110100010","Q":"1101000110","K":"1101000111","y":"1101001","g":"110101","h":"110110","u":"110111","n":"11100","V":"1110100000","Y":"1110100001","B":"111010001","M":"111010010","C":"111010011","x":"11101010","J":"1110101100","#":"1110101101","S":"111010111","_":"111011","z":"111100100","%":"111100101","T":"111100110","H":"1111001110","N":"1111001111","p":"111101","r":"11111"};
// Create inverted copies of dictionaries for easier decoding
const tldDecode = {};
for (const key in tldEncode) {
tldDecode[tldEncode[key]] = key;
}
const sldDecode = {};
for (const key in sldEncode) {
sldDecode[sldEncode[key]] = key;
}
const sldList = Object.keys(sldEncode).sort((a, b) => b.length - a.length);
const domainDecode = {};
for (const key in domainEncode) {
domainDecode[domainEncode[key]] = key;
}
const pathDecode = {};
for (const key in pathEncode) {
pathDecode[pathEncode[key]] = key;
}
/**
* The following two functions convert between large numbers and strings.
* The idea is that, instead of working in a fixed base such as binary or
* whatever base the string is in, we can instead manipulate some number
* as an arbitrary-precision data stream.
*
* For example, a value with 3 possible options requires about 1.6 bits.
* In binary, that would round up to 2 bits, and in base-85 (for example),
* it would round up to a whole character. If we instead use one shared
* integer for the whole data stream, we can encode that value by:
* 1. multiplying the number by 3; (number *= 3n)
* 2. adding the encoded value (0, 1, or 2), (number += value)
* and decode it by:
* 1. reading the remainder when dividing by 3; (number % 3n)
* 2. dividing the number by 3. (number /= 3n)
*/
/**
* Encodes a number into a string of the given alphabet.
* @param {BigInt} number Number to encode
* @param {string[]} alphabet Ordered list of possible character sequences in output
* @returns {string} String representing the input number
*/
function numberToString (number, alphabet) {
const alphabetSize = BigInt(alphabet.length);
let string = "";
while (number > 0) {
number --;
string += alphabet[number % alphabetSize];
number /= alphabetSize;
}
return string;
}
/**
* Decodes a string of the given alphabet into a number.
* @param {string} string Input string containing sequences from `alphabet`
* @param {string[]} alphabet Ordered list of possible character sequences in `string`
* @returns {BigInt} Decoded number
*/
function stringToNumber (string, alphabet) {
const alphabetSize = BigInt(alphabet.length);
let number = 0n;
// Not all alphabets are 1 byte per character. For example, the emoji
// alphabet includes some sequences that only make sense in specific
// combinations. To account for this, we assume the alphabets are
// ordered with the longest sequences first (they are), and find the
// first entry that matches the current position in the string.
while (string) {
const digit = BigInt(alphabet.findIndex(c => string.endsWith(c)));
if (digit < 0n) throw `Invalid character: "${string.at(-1)}"`;
number *= alphabetSize;
number += digit;
number ++;
const sequence = alphabet[digit];
string = string.slice(0, -sequence.length);
}
return number;
}
/**
* Encodes a binary sequence from a string into the number/data stream.
* @param {BigInt} number Data stream to encode to
* @param {string} sequence Binary sequence of "0"/"1" string characters
* @returns {BigInt} Modified input number with binary sequence encoded
*/
function huffmanEncode (number, sequence) {
for (let i = sequence.length - 1; i >= 0; i --) {
number <<= 1n;
if (sequence[i] === "1") number ++;
}
return number;
}
/**
* Decodes a string from the data stream using the given dictionary.
* @param {BigInt} number Data stream to decode from
* @param {object} lookup Dictionary of binary sequence -> output pairs
* @returns {{newNumber: BigInt, digit: string}}
* Modified input number after decoding, output string
*/
function huffmanDecode (number, lookup) {
let sequence = "";
do {
sequence += number & 1n;
number >>= 1n;
if (sequence.length > 20) {
throw `Huffman sequence too long: "${sequence}".`;
}
} while (!(sequence in lookup));
return { newNumber: number, digit: lookup[sequence] };
}
/**
* Compresses the input link and encodes it to the given alphabet.
* @param {string} input Link to compress
* @param {string[]} alphabet Output alphabet as array of characters/strings
* @returns {string} Output payload (not a full link!)
*/
export function compress (input, alphabet) {
let number = 1n;
// Validate URL, add protocol if needed
let url;
if (URL.canParse(input)) {
url = new URL(input);
} else {
url = new URL("http://" + input);
}
let hostname = url.hostname.toLowerCase();
const port = BigInt(url.port);
const tld = hostname.includes(".") && hostname.split(".").at(-1).toLowerCase();
if (tld in tldEncode) {
hostname = hostname.split(".").slice(0, -1).join(".");
}
const isHTTPS = url.protocol === "https:";
const hasWWW = url.hostname.toLowerCase().startsWith("www.");
if (hasWWW) hostname = hostname.slice(4);
const knownSLD = sldList.find(c => hostname.endsWith(c)) || "";
const subdomain = hostname.slice(0, -knownSLD.length);
// Read URL path, split it into segments
let path = url.pathname;
// Remove "index" suffixes, encoded separately later
const hasIndexHTML = path.endsWith("/index.html");
const hasIndexPHP = path.endsWith("/index.php");
if (hasIndexHTML) path = path.slice(0, -11);
else if (hasIndexPHP) path = path.slice(0, -10);
// The seperable parts of a path/query are split into segments with
// their position/role in the link noted. This lets us pick optimal
// character sets for individual segments and enables us to encode
// only the transitions between segments. As-is, the system's a bit
// clumsy, but it works.
const pathSegments = path.split("/")
.filter(c => c.length)
.map(c => ({ type: "path", value: c }));
// Add search/query parameters to path segments
let queryParams = Array.from(url.searchParams)
.flat()
.map(c => ({ type: "query", value: c }));
pathSegments.push(...queryParams);
// Add hash value to path segments
if (url.hash && url.hash.length > 1) {
pathSegments.push({ type: "hash", value: url.hash.slice(1) });
}
// Normalize path segment encoding
for (const segment of pathSegments) {
segment.value = encodeURI(decodeURI(segment.value));
}
// Encode path following domain segment-by-segment, using best algorithm for each
let lastSegmentType = pathSegments.at(-1)?.type;
let queryParamIndex = 0;
for (let j = pathSegments.length - 1; j >= 0; j --) {
const segment = pathSegments[j];
const firstIteration = j === pathSegments.length - 1;
if (!firstIteration && queryParamIndex % 2 !== 1) {
// Indicate change of segment type (path -> param -> hash)
// First bit indicates that a change is happening,
// second bit indicates whether we're skipping straight to the hash.
number <<= 1n;
if (lastSegmentType === "hash" && segment.type === "query") {
number ++;
} else if (lastSegmentType === "hash" && segment.type === "path") {
number ++; // Second bit is 1
number <<= 1n;
number ++;
} else if (lastSegmentType !== segment.type) {
// Second bit is 0
number <<= 1n;
number ++;
}
lastSegmentType = segment.type;
}
if (segment.type === "query") {
queryParamIndex ++;
}
// Look for smallest subalphabet that fits this path segment
let subalphabetIndex = subalphabets.length - 1;
let subalphabet = subalphabets[subalphabetIndex];
for (let i = 0; i < subalphabets.length - 1; i ++) {
if (!Array.from(segment.value).some(c => !subalphabets[i].includes(c))) {
subalphabet = subalphabets[i];
subalphabetIndex = i;
break;
}
}
// Compute number after Huffman coding
let huffmanNumber = firstIteration ? number : huffmanEncode(number, pathEncode["#"]);
for (let i = segment.value.length - 1; i >= 0; i --) {
if (segment.value[i - 2] === "%") {
const byte = parseInt(segment.value.slice(i - 1, i + 1), 16);
huffmanNumber *= 256n;
huffmanNumber += BigInt(byte);
huffmanNumber = huffmanEncode(huffmanNumber, pathEncode["%"]);
i -= 2;
} else {
if (segment.value[i] === "~") {
/**
* HACK HACK HACK!!!
* Our Huffman tree is missing the tilde character (whoops!)
* It's too late to change it now without bumping the version
* number, and that currently costs 1 bit. Tildes are so rare
* that it makes more sense to %-encode them instead.
*/
huffmanNumber *= 256n;
huffmanNumber += BigInt(126);
huffmanNumber = huffmanEncode(huffmanNumber, pathEncode["%"]);
} else {
huffmanNumber = huffmanEncode(huffmanNumber, pathEncode[segment.value[i]]);
}
}
}
// Encode segment variant as 0
// (We're adding +1 here to introduce 0 as a special value indicating Huffman)
huffmanNumber *= BigInt(subalphabets.length + 1);
// Compute number after encoding with chosen subalphabet
const subalphabetLength = BigInt(subalphabet.length + 1);
let subalphabetNumber = firstIteration ? number : number * subalphabetLength;
for (let i = segment.value.length - 1; i >= 0; i--) {
subalphabetNumber *= subalphabetLength;
subalphabetNumber += BigInt(subalphabet.indexOf(segment.value[i]) + 1);
}
// Encode segment variant as subalphabet index + 1
subalphabetNumber *= BigInt(subalphabets.length + 1);
subalphabetNumber += BigInt(subalphabetIndex + 1);
// Compare candidate numbers, pick smallest one
if (huffmanNumber < subalphabetNumber) {
number = huffmanNumber;
} else {
number = subalphabetNumber;
}
}
// Encode type of first path segment
if (pathSegments.length > 0) {
number *= 3n;
if (pathSegments[0].type === "query") {
number += 1n;
} else if (pathSegments[0].type === "hash") {
number += 2n;
}
}
// Encode either SLD + subdomain or full hostname
if (!knownSLD) {
// Write stopping token only if path follows
if (pathSegments.length > 0) number = huffmanEncode(number, domainEncode["END"]);
for (let i = hostname.length - 1; i >= 0; i --) {
number = huffmanEncode(number, domainEncode[hostname[i]]);
}
} else {
// Encode subdomain
if (subdomain) {
// Write stopping token only if path follows
if (pathSegments.length > 0) number = huffmanEncode(number, domainEncode["END"]);
for (let i = subdomain.length - 1; i >= 0; i--) {
number = huffmanEncode(number, domainEncode[subdomain[i]]);
}
}
// Encode Huffman code of known SLD
number = huffmanEncode(number, sldEncode[knownSLD]);
}
// Indicate presence of known SLD and optional subdomain
if (knownSLD) {
number <<= 1n;
if (subdomain) number += 1n;
}
number <<= 1n;
if (knownSLD) number += 1n;
// Encode "index.html"/"index.php" suffix
number <<= 1n;
if (hasIndexPHP) number += 1n;
if (hasIndexHTML || hasIndexPHP) {
number <<= 1n;
number += 1n;
}
// Encode protocol
number <<= 1n;
if (isHTTPS) number += 1n;
// Encode "www." prefix
number <<= 1n;
if (hasWWW) number += 1n;
// Encode TLD
number = huffmanEncode(number, tldEncode[tld] || tldEncode[""]);
// Encode port number
if (port) {
number *= 65536n;
number += port;
}
number <<= 1n;
if (port) number += 1n;
// Encode version number
for (let i = 0; i < VERSION; i ++) {
number <<= 1n;
number += 1n;
}
number <<= 1n;
return numberToString(number, alphabet);
}
/**
* Decodes and decompresses the payload assuming the given alphabet and
* produces a full link.
* @param {string} input Compressed payload
* @param {string[]} alphabet Ordered alphabet used by payload
* @returns {string} Full link containing payload contents.
*/
export function decompress (input, alphabet) {
let number = stringToNumber(input, alphabet);
// Version number - currently unused
let version = 0;
while (number & 1n) {
version ++;
number >>= 1n;
}
number >>= 1n;
// Decode port number
const hasPort = number & 1n;
number >>= 1n;
let port;
if (hasPort) {
port = number % 65536n;
number /= 65536n;
}
// Decode TLD
const tldDecodeResult = huffmanDecode(number, tldDecode);
number = tldDecodeResult.newNumber;
const tld = tldDecodeResult.digit;
// Decode "www." prefix
const hasWWW = number & 1n;
number >>= 1n;
// Decode protocol
const isHTTPS = number & 1n;
number >>= 1n;
// Decode "index.html"/"index.php" suffix
let indexSuffix = "";
if (number & 1n) {
number >>= 1n;
if (number & 1n) {
indexSuffix = "/index.php";
} else {
indexSuffix = "/index.html";
}
}
number >>= 1n;
// Determine domain format
const hasKnownSLD = number & 1n;
number >>= 1n;
let hasSubdomain = false;
if (hasKnownSLD) {
hasSubdomain = number & 1n;
number >>= 1n;
}
let domain = "";
let subdomain = "";
let path = "";
if (hasKnownSLD) {
const sldDecodeResult = huffmanDecode(number, sldDecode);
number = sldDecodeResult.newNumber;
domain = sldDecodeResult.digit;
if (hasSubdomain) {
while (number > 1n) {
const { newNumber, digit } = huffmanDecode(number, domainDecode);
number = newNumber;
if (digit === "END") break;
subdomain += digit;
}
}
} else {
while (number > 1n) {
const { newNumber, digit } = huffmanDecode(number, domainDecode);
number = newNumber;
if (digit === "END") break;
domain += digit;
}
}
const segmentTypeIndex = number % 3n;
number /= 3n;
let currentSegmentType = ["path", "query", "hash"][segmentTypeIndex];
let queryParamIndex = 0;
while (number > 1n) {
if (currentSegmentType === "path") {
path += "/";
} else if (currentSegmentType === "hash") {
path += "#";
} else {
if (queryParamIndex % 2) {
path += "=";
} else if (queryParamIndex === 0) {
path += "?";
} else {
path += "&";
}
queryParamIndex ++;
}
// Get path segment variant
const variant = Number(number % BigInt(subalphabets.length + 1));
number /= BigInt(subalphabets.length + 1);
// Variant 0 is Huffman code, rest are subalphabets
if (variant === 0) {
while (number > 1n) {
const { newNumber, digit } = huffmanDecode(number, pathDecode);
number = newNumber;
if (digit === "#" && currentSegmentType !== "hash") break;
path += digit;
if (digit === "%") {
const byte = number % 256n;
path += byte.toString(16);
number /= 256n;
}
}
} else {
const subalphabet = subalphabets[variant - 1];
const subalphabetLength = BigInt(subalphabet.length + 1);
while (number > 1n) {
const index = Number(number % subalphabetLength);
number /= subalphabetLength;
if (index === 0) break;
path += subalphabet[index - 1];
}
}
// Handle changing between path segment types, unless we're in the
// middle of decoding a query parameter key/value pair, in which
// case switching to the hash value doesn't make sense.
if (queryParamIndex % 2) continue;
if (number & 1n) { // Changing segment type?
if (currentSegmentType === "path") {
number >>= 1n;
if (number & 1n) { // Skipping to hash?
currentSegmentType = "hash";
} else {
currentSegmentType = "query";
}
} else {
currentSegmentType = "hash";
}
}
number >>= 1n;
}
const pathSplitIndex = path.search(/[?#]/);
const pathBeforeQuery = pathSplitIndex === -1 ? path : path.slice(0, pathSplitIndex);
const pathFromQuery = pathSplitIndex === -1 ? "" : path.slice(pathSplitIndex);
let output = ""
+ (isHTTPS ? "https://" : "http://")
+ (hasWWW ? "www." : "")
+ subdomain
+ domain
+ (tld ? "." + tld : "")
+ (hasPort ? ":" + port : "")
+ pathBeforeQuery
+ indexSuffix
+ pathFromQuery;
return output;
}