diff --git a/.gitignore b/.gitignore index 326de85..2cfd128 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,6 @@ statistics.py report.md dist/* elisa_dnt.egg-info/* +/elisa.train_1.swa +/visual.html +/elisa.train_1.swa.del.ini diff --git a/elisa_dnt/__main__.py b/elisa_dnt/__main__.py index 02cbccd..0d644ee 100644 --- a/elisa_dnt/__main__.py +++ b/elisa_dnt/__main__.py @@ -8,74 +8,79 @@ parser = argparse.ArgumentParser(description='DNT process script') - parser.add_argument('p_step', type=str, choices=['pre', 'post'], + parser.add_argument('step', type=str, choices=['pre', 'post'], help="Parameter for choosing between preprocess or postprocess") - parser.add_argument('p_scheme', type=str, choices=['del', 'sub'], + parser.add_argument('scheme', type=str, choices=['del', 'sub'], help="Parameter for scheme") - parser.add_argument('--fa_dnt_src', type=str, + parser.add_argument('--dnt_src', type=str, help='[Post]File path to the dnt source file') - parser.add_argument('--fa_dnt_ini', type=str, + parser.add_argument('--dnt_ini', type=str, help="[Post]File path to the dnt conf file") - parser.add_argument('--fa_output', type=str, + parser.add_argument('--output', type=str, help="[Post]File path to the output file") - parser.add_argument('--fb_src', type=str, + parser.add_argument('--src', type=str, help='[Pre]File path to the source file') - parser.add_argument('--fb_src_output', type=str, + parser.add_argument('--src_output', type=str, help='[Pre]File path to the source output file') - parser.add_argument('--fb_ini_output', type=str, + parser.add_argument('--ini_output', type=str, help='[Pre]File path to the source ini file') - parser.add_argument('--fb_tgt', type=str, required=False, + parser.add_argument('--tgt', type=str, required=False, help='[Pre]File path to the target file') - parser.add_argument('--pb_cross', dest='pb_cross', default=False, action='store_true', + parser.add_argument('--cross', dest='pb_cross', default=False, action='store_true', help='[Pre]Parameter for whether use reference target file for regex extraction') - parser.add_argument('--fb_visual', type=str, + parser.add_argument('--visual', type=str, help="[Pre]File path to visualization html file") args = parser.parse_args() print(args) - scheme = args.p_scheme + scheme = args.scheme + + rules = load_rules(scheme=scheme) + options = generate_options() - if args.p_step == "post": - restore(args.fa_dnt_src, args.fa_dnt_ini, args.fa_output, args.p_scheme) + if args.step == "post": + restore(args.dnt_src, args.dnt_ini, args.output, args.scheme) exit(0) - RULES = {key: re.compile(value) for key, value in rules[args.p_scheme].items()} - RULES["comb"] = re.compile("(" + "|".join(rules[args.p_scheme].values()) + ")+") - - if args.fb_visual: - with open(args.fb_visual, "w") as o: + if args.visual: + with open(args.visual, "w") as o: o.write(""" - + +
+ + + + """) - path = args.fb_src + path = args.src - split(args.fb_src, args.fb_src_output, args.fb_ini_output, scheme=args.p_scheme, - ref=args.fb_tgt if args.p_scheme == "sub" and args.pb_cross else "", RULES=RULES) + split(args.src, args.src_output, args.ini_output, scheme=args.scheme, + ref=args.tgt if args.scheme == "sub" and args.pb_cross else "", rules=rules) - if args.fb_visual: - if args.fb_tgt == "": + if args.visual: + if args.tgt == "": for line in open(path): - matches = find(line, RULES) + matches = find(line, rules) if matches: - res = visual(line, matches, options, RULES) - with open(args.fb_visual, "a+") as o: + res = visual(line, matches, options, rules) + with open(args.visual, "a+") as o: o.write(f"{res}
" + "\n") else: - src_lines, tgt_lines = open(path).readlines(), open(args.fb_tgt).readlines() + src_lines, tgt_lines = open(path).readlines(), open(args.tgt).readlines() assert len(src_lines) == len(tgt_lines) for src_line, tgt_line in zip(src_lines, tgt_lines): - src_matches = find(src_line, RULES) - tgt_matches = find(tgt_line, RULES) + src_matches = find(src_line, rules) + tgt_matches = find(tgt_line, rules) src_matches_text = [src_line[m.start:m.end] for m in src_matches] tgt_matches_text = [tgt_line[m.start:m.end] for m in tgt_matches] @@ -88,10 +93,13 @@ tgt_line[m.start:m.end] in x_matches] if args.pb_cross else tgt_matches if x_matches: - res = visual(src_line, x_src_matches, options, RULES) - with open(args.fb_visual, "a+") as o: + res = visual(src_line, x_src_matches, options, rules) + with open(args.visual, "a+") as o: o.write(f"{res}
" + "\n") - res = visual(tgt_line, x_tgt_matches, options, RULES) - with open(args.fb_visual, "a+") as o: + res = visual(tgt_line, x_tgt_matches, options, rules) + with open(args.visual, "a+") as o: o.write(f"{res}
" + "\n") + + with open(args.visual, "a+") as o: + o.write('') \ No newline at end of file diff --git a/elisa_dnt/emoji.py b/elisa_dnt/emoji.py new file mode 100644 index 0000000..49b25a0 --- /dev/null +++ b/elisa_dnt/emoji.py @@ -0,0 +1,44 @@ +# encoding: utf-8 +# Created by chenghaomou at 2019-06-27 + +from bs4 import BeautifulSoup +import urllib3 +import argparse + + +def get_emojis(url: str = "http://unicode.org/emoji/charts-12.0/full-emoji-list.html", + output: str = "emojis.ini") -> None: + """ + Parse the official website for all emojis and write them to a file. + + :param url: Official unicode website for emoji list. + + :param output: Output file for the list of emojis. + + :return: None. + + """ + req = urllib3.PoolManager() + res = req.request('GET', url) + soup = BeautifulSoup(res.data, "html.parser") + emojis = set('๐ฆฐ๐ฆฑ๐ฆณ๐ฆฒ๐ป๐ผ๐ฝ๐พ๐ฟ') + for img in soup.findAll('img', alt=True): + if len(img['alt']) == 1: + emojis.add('{}'.format(img['alt'])) + + with open(output, "w") as output: + output.write('\n'.join(emojis)) + + +if __name__ == "__main__": + + parser = argparse.ArgumentParser(description='Emoji list retriever from unicode website') + + parser.add_argument('--url', type=str, default="http://unicode.org/emoji/charts-12.0/full-emoji-list.html", + help='Unicode website for emoji') + parser.add_argument('--output', type=str, default='emojis.ini', + help='Output file') + + args = parser.parse_args() + + get_emojis(args.url, args.output) \ No newline at end of file diff --git a/elisa_dnt/emojis.ini b/elisa_dnt/emojis.ini new file mode 100644 index 0000000..e9d8f79 --- /dev/null +++ b/elisa_dnt/emojis.ini @@ -0,0 +1,1273 @@ +๐ฒ +๐ฅ +๐ +๐จ +๐ +๐ +๐ค +๐ +๐ฅก +๐ด +๐ +๐พ +๐ค +โ +ใ +๐ +โ +๐ +๐ +๐ +๐ฒ +โพ +๐ฉ +โ +๐ +๐ฅณ +๐ +๐ฉ +๐ฆข +๐ +โธ +๐ +โ +๐ฎ +๐ +๐ +๐ฝ +๐ฐ +๐ +๐ฑ +๐คธ +๐ง +โผ +๐ข +๐คฟ +๐ฒ +๐ +๐ +๐ง +๐ +๐ +๐ฆ +๐ฅ +๐ +๐ +๐ +๐ +๐ฅบ +๐ค +โ +๐งก +๐ +๐ฆ +๐ +๐ +๐ป +๐ธ +โ +๐ +๐ถ +โซ +๐ +๐งฐ +๐ฅ +๐ +๐ +โ +๐ต +๐ +๐ +๐ฆ +๐ง +๐ง +๐ +๐ฏ +๐ฆต +๐ด +๐ +๐ +๐ฆ +ยฎ +๐ฆ +๐ง +๐คฅ +๐ฆ +๐ +๐ +๐ +๐ฆฎ +๐ +๐ +๐ต +๐ +๐ผ +๐ฅ +๐ช +๐ +๐ +๐ฝ +๐ +๐ฃ +๐ต +๐ +๐ +๐งฟ +โฎ +๐ +๐คน +๐ +๐ค +๐ +๐ฅ +๐งด +๐ +๐ +๐ +๐ +โณ +๐ง +โฃ +๐ง +๐ +๐ธ +๐งผ +๐ซ +๐ถ +๐น +๐ +๐ +๐ฆ +๐ป +๐ +๐ +๐ +โ +๐ฆ +๐ +๐ฏ +โฏ +โ +๐ +๐งฌ +๐ +๐ฉ +โ +๐ค +โณ +๐ +๐ +๐ฑ +๐ฟ +๐ +๐ฆ +๐ +๐ +๐ +๐ท +๐ +๐ +๐ฉฒ +๐ฎ +๐ง +๐ +๐ +๐ +๐ +๐ +๐ +โฌ +๐ +๐ +๐ฎ +๐ +โฅ +โฌ +๐ +ใ +โฃ +๐ +๐ฅ +๐คผ +๐ +๐ญ +๐ค +๐ +๐ +โฌ +๐ซ +๐ต +๐ +๐ +๐ค +โ +๐ +๐ณ +๐ +๐ +โ +๐ +๐จ +๐ฅป +๐ฏ +๐ก +๐ +๐ +๐ฅ +๐บ +๐ +๐งจ +๐ +โ +๐ +๐งฏ +๐ +๐ฅ +๐บ +๐ +๐ +๐ +๐ +๐ +โฐ +๐ค +๐น +โฏ +๐ +๐จ +๐ฅฏ +๐ฑ +๐ฅ +๐ฆผ +๐ด +๐ฆ +๐ง +โฒ +๐ฅ +๐ณ +๐งฆ +๐ธ +๐ +๐ +๐ต +๐คท +๐ฐ +๐ +๐ฒ +๐ +๐ +โซ +๐ง +โ +๐ +๐ +๐ +๐ก +๐ +๐ +๐ +๐ +๐ง +๐ช +๐ก +๐ต +๐ +๐ฑ +โค +๐ +โ +๐ฐ +๐ฟ +๐ก +โฆ +๐ +โ +๐ฅด +๐ +๐ +๐ฅ +๐ฐ +โช +๐ฅฐ +๐จ +๐น +๐ +๐ +โต +โ +๐ฝ +๐ +๐ต +๐ง +๐ฃ +โฑ +๐ +๐ง +๐ +๐คซ +๐ +๐บ +๐น +๐ฝ +โ +๐ก +๐งญ +๐ +๐ +๐ +๐ +๐ฝ +๐ฅ +๐ญ +๐ +๐ +๐ +๐ +๐ฏ +๐ฅถ +๐ +โ +๐ +๐ฃ +๐ซ +๐ +๐ +๐ +๐ค +๐งฅ +๐ฒ +๐ฒ +๐ด +๐ +โช +๐ +๐พ +๐ด +๐ +๐ฅ +๐ค +๐ +๐ผ +๐ฝ +๐ +โจ +๐ผ +๐ +๐ง +๐ท +๐ด +๐ฆ +โซ +๐ +๐ผ +๐ป +โ +๐ +โจ +โป +๐ด +๐ +๐ผ +๐ +๐ +๐ฅฑ +โ +๐ +๐ +๐ +๐ +๐ +๐ +๐ฉธ +๐ +๐ช +๐ +๐ +โพ +๐ +๐ท +๐ +๐ง +๐งข +๐ณ +๐บ +โ +๐ป +๐ฉฑ +๐ฅ +๐ฉ +๐ง +๐ฐ +๐จ +๐จ +๐ถ +๐ +๐น +๐ผ +๐ฉ +๐ง +๐ +๐ฑ +๐น +๐บ +โ +๐ค +๐งท +๐ข +๐ฌ +๐ช +๐ +๐ +๐ฌ +๐ฆ +๐ฟ +๐งต +๐ +โฑ +๐ +๐ +๐ +๐ +โ +๐จ +๐ +๐ค +โพ +๐ +๐ ฟ +๐ผ +๐ณ +๐ฏ +๐ +๐ค +๐ฒ +๐ +โด +๐ข +๐ +๐ป +๐งช +๐ +๐ +๐ง +๐ +๐ +๐ +๐คฌ +๐ฆ +๐ +๐ +๐ +๐งฉ +๐ +๐ฆ +๐ +๐ญ +๐ต +๐คถ +โก +๐ +๐ +๐ฅค +๐ฆช +๐พ +๐ +๐ฐ +๐ฎ +๐น +โ +โ +๐ฅฌ +๐ผ +๐ +๐ +ใฐ +๐ฆ +๐ +๐ฎ +๐ค +๐ +๐ฉ +โฟ +๐งน +โฐ +โ +๐ +๐ข +๐คญ +๐ข +๐ง +๐ +๐ฅฟ +๐ถ +๐พ +๐จ +โ +๐คฎ +๐ฅ +๐ +๐ธ +๐ฌ +๐จ +๐คจ +๐ +๐ฐ +๐ง +๐ช +๐ +๐ฅฎ +๐ง +๐ +๐ง +๐ต +๐ค +๐ +๐ +๐ +๐งค +โป +๐ +๐ +๐ฅฝ +๐ +๐ท +๐ +๐ช +๐ +๐คข +๐ง +โ +๐ฉ +๐ณ +๐ฅจ +๐ค +โฌ +๐ป +๐ฏ +๐พ +โ +๐ฒ +๐ +๐ฅ +๐ +๐ฎ +๐ +๐ +๐ฐ +๐ +๐ +๐ +๐ +๐ฅ +๐ก +๐ +๐ฅ +๐น +๐ฌ +๐บ +๐ง +๐ ฐ +๐ง +๐ง +๐ +๐ +๐ณ +โฝ +๐น +๐ถ +โ +๐ฆณ +๐ก +๐คช +๐ +๐พ +๐ +๐งฒ +๐ +๐ซ +๐ +โ +๐ +๐งณ +๐ซ +๐ +๐ฅ +๐ฉ +๐บ +โ +๐ฅ +๐ +โ +โฐ +๐ฆ +๐ณ +๐ +๐ฆน +๐ค +๐ฑ +๐ +๐ +๐ +๐ +๐ค +๐ +๐ค +๐ +๐ +๐ฅ +๐ฆ +๐ +โฝ +๐ฏ +๐ +๐ฆ +๐ท +๐ฌ +๐ +โก +๐ธ +๐ +๐ +๐ซ +๐ +๐ +๐ฅ +๐ฐ +โผ +๐ +๐ณ +๐งง +โข +๐ +๐ง +๐ +๐ฆฐ +๐ +๐ +๐ฆ +๐ธ +๐ณ +๐ +๐ +๐ +๐ฅ +๐ฌ +๐คฒ +โ +๐ธ +ยฉ +โ +๐ฆ +๐ฉ +๐บ +๐ +๐จ +๐ +๐ +๐ฅ +โ +๐ค +๐ง +๐ฎ +๐ฌ +๐ฟ +๐ช +๐ซ +๐ +๐ +๐ +๐ฅ +๐ฅ +๐ฅญ +โ +๐ง +โ +๐ +๐ +๐ +๐ซ +๐ +๐ฆ +๐ฆ +๐ +๐ +๐ +๐ฝ +๐ พ +โบ +๐ฏ +๐ฎ +๐ฟ +๐ค +๐ฏ +๐บ +โ +โ +๐ +๐ฐ +๐ฟ +๐ถ +โน +๐ค +๐ฆ +๐ +๐ก +โท +โฌ +๐ฉน +๐ฅ +๐คบ +๐พ +๐ +๐ +๐ก +๐ +๐ +๐ญ +๐ฑ +๐ฅพ +๐ง +๐ฒ +๐ถ +๐ +โ +๐ฉ +๐คณ +๐ +โ +๐บ +๐ฆ +๐พ +๐ฉณ +๐ฆ +๐ฏ +๐ +๐ฃ +๐ซ +๐ฃ +๐ +โ +๐ +โฉ +๐ฆ +๐ฆฑ +๐ฃ +๐ง +๐ง +๐ค +๐ฆ +โช +๐ +โ +๐ +๐ฎ +๐ญ +๐ +๐ฉ +๐ฆ +๐ผ +๐ +๐บ +๐ +โ +๐ +๐คด +๐ช +๐ +๐ฆ +๐ฆ +๐ซ +๐ฆ +๐ +๐ +๐ฆพ +๐ +๐ฆ +๐ฅฅ +๐ฅ +๐ป +๐จ +๐ +โ +๐งบ +๐ +๐ฆ +๐ช +๐ +๐ฏ +๐ฐ +๐ด +๐ +๐ +โ +๐ +๐ฆ +๐ +๐ง +๐ข +๐จ +๐ +๐ค +๐ +๐ฝ +โ +๐ก +๐ฑ +๐บ +๐ถ +๐ +๐ +๐ฉฐ +๐งฝ +๐ค +๐ฅ +โ +๐ +๐ง +๐ +๐ +๐ฃ +๐ช +๐ฃ +๐ธ +๐ +๐ +๐ +๐ข +๐ฟ +๐ช +๐ +๐ธ +๐ป +๐ง +๐ +๐ +๐ฃ +๐ +โ +๐พ +๐ +โ +๐ +๐ฆจ +๐ด +๐ถ +โ +๐ฝ +๐ช +๐ฅ +๐ฅ +๐ฆก +๐ +๐ง +๐คพ +๐ +๐ท +๐ +๐ก +๐ +๐ +ใฝ +๐ฆป +๐ท +๐ช +โ +โคด +๐ +๐ฆง +๐ +๐ฃ +๐ +๐ +๐จ +โคต +๐ฆ +โด +โ +๐ฑ +๐ผ +โช +๐ญ +๐ง +๐ +๐ถ +๐ซ +๐ค +๐ +๐ +๐ +๐ +๐ฅ +๐ +โธ +๐ผ +๐ฉบ +๐ +๐ฝ +๐ณ +๐ป +๐ +๐ง +๐น +๐ +๐ +๐ป +โ +๐ด +๐ +๐พ +๐ +๐ +๐ฅ +๐คก +๐ฅ +โฐ +๐ธ +โฃ +๐ฅซ +๐งธ +โญ +๐ฐ +๐ค +๐ต +๐ท +๐ข +๐ +๐ +๐ +๐ +๐ฆ +๐คค +๐ +๐ฅต +๐ +๐ +๐ณ +๐ +๐ฅ +๐ฎ +๐ +๐ค +โ +๐ฒ +๐ฅ +๐ +๐ธ +โ +๐ถ +๐ +๐ท +๐ฅ +๐ +๐ +๐ +๐ +๐ฝ +๐ +๐ฆฟ +โก +๐ญ +๐ +๐ +๐ +๐ฃ +๐ช +๐ค +๐ +๐ +๐ก +๐ฉ +๐ +๐ธ +๐ +๐ก +๐ +โ +๐ +๐ฆฏ +๐ +โ +๐ฆ +โ +๐ +๐ +๐ +๐ฏ +๐ฒ +โ +๐ +โ +๐ง +โ +๐ท +๐ฅ +๐งฎ +๐ +๐ +๐ +๐ +๐งพ +๐ +โ +๐ณ +๐ฅฆ +๐ง +๐ช +๐ +๐งป +โ +๐ +๐น +โญ +๐คฉ +๐ฌ +๐ +๐ช +๐ +๐ฆ +โฒ +๐ฒ +โ +๐จ +๐ฅผ +โ +๐ผ +๐บ +๐ฑ +๐ +๐ฃ +๐ +๐ค +๐ฅ +๐ +๐ +๐ช +๐ +๐ +๐บ +๐ +๐น +๐ค +โ +๐ +๐ +๐ฅข +โฑ +๐ฃ +๐ธ +๐ญ +๐ +๐ +๐ถ +๐คฏ +๐ข +โ +๐ท +๐ณ +๐ +๐ +๐ท +๐ฌ +๐ญ +๐ฉ +โ +๐ +๐ด +๐ +๐งถ +๐ฆ +๐ณ +๐ค +๐ +๐ +๐ฆฅ +๐ฌ +๐ +๐ท +๐ +๐ฅ +โฝ +๐ +๐ข +๐ฎ +๐งซ +๐ฆฉ +๐ฆ +๐ +๐ฅ +๐ +๐ +๐ช +๐ +๐ง +๐ต +โบ +โ +๐ +๐ป +๐ +๐ธ +๐ง +๐ต +๐ +๐ง +๐ข +๐บ +๐ +๐ก +โ +๐ +โถ +๐คต +โฎ +๐ +๐ฆฆ +๐ฆท +๐ด +๐ +โ +๐ +๐ +๐ด +๐ +๐ฆ +๐ +๐ฐ +๐ +๐คฑ +๐ฅ +๐ณ +๐ต +๐ +๐ +โ +๐ +๐ป +๐งฃ +๐ค +๐ +๐ +๐ +๐ญ +โฆ +๐ฆ +๐ฅ +โช +๐ฏ +๐ +โ +๐ +๐ +๐ +๐ฅฃ +๐ฟ +๐ฃ +๐ +๐ฆ +๐ +๐ช +๐ช +๐ฑ +๐ก +โช +๐ฆบ +๐ +๐ฌ +๐คง +๐ฅ +โ +๐ฆ +โ +โฟ +๐คฆ +โฌ +๐ฌ +๐ +๐คฝ +โบ +โ +๐ +๐ญ +๐ +๐ซ +โน +โฉ +๐น +๐ +๐ฅ +๐ฆ +๐ +๐ฟ +๐ +๐คฃ +๐ต +๐ +๐ +๐ ฑ +๐ช +๐ฆด +๐ +๐ฟ +๐ +๐ฆธ +๐ +๐ฅฉ +๐ +๐ผ +๐ +๐ +โข +๐ +๐ฏ +๐ข +๐ +โธ +๐ +โน +๐ +๐ฅง +๐คฐ +๐ +๐ +๐ +โญ +๐ฅช +๐ฆฒ +๐น +๐ +๐ด +โจ +๐ท +๐ฆ +๐ +๐ +๐ข +๐ฆฝ +๐ +๐ +๐ง +โน +โฉ +๐ถ +๐ +๐ซ +๐ +โ +๐ +๐ +๐ฅ +๐ฝ +๐ค +๐ฅ +โณ +๐ค +โ +๐ +๐ฆถ +๐ +๐ +๐ +๐ฟ +๐งฑ +โ +๐ \ No newline at end of file diff --git a/elisa_dnt/rules.ini b/elisa_dnt/rules.ini new file mode 100644 index 0000000..b8cca94 --- /dev/null +++ b/elisa_dnt/rules.ini @@ -0,0 +1,10 @@ +email=(?:(?:[a-zA-Z0-9_\-\.]+)@(?:(?:\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(?:(?:[a-zA-Z0-9\-]+\.)+))(?:[a-zA-Z]{2,4}|[0-9]{1,3})(?:\]?)) +url=(?:(?:(?i:(?:ht|f)tps?)\://)?(?:(?i:www|[a-zA-Z0-9-])\.)?[a-zA-Z0-9-.]+\.(?:TRAVELERSINSURANCE|NORTHWESTERNMUTUAL|SANDVIKCOROMANT|KERRYPROPERTIES|AMERICANEXPRESS|WEATHERCHANNEL|KERRYLOGISTICS|COOKINGCHANNEL|CANCERRESEARCH|BANANAREPUBLIC|AMERICANFAMILY|AFAMILYCOMPANY|WOLTERSKLUWER|TRAVELCHANNEL|SPREADBETTING|LIFEINSURANCE|INTERNATIONAL|VERSICHERUNG|SCHOLARSHIPS|LPLFINANCIAL|CONSTRUCTION|WILLIAMHILL|RIGHTATHOME|REDUMBRELLA|PROGRESSIVE|PRODUCTIONS|PLAYSTATION|PHOTOGRAPHY|OLAYANGROUP|MOTORCYCLES|LAMBORGHINI|KERRYHOTELS|INVESTMENTS|FOODNETWORK|ENTERPRISES|ENGINEERING|CREDITUNION|CONTRACTORS|CALVINKLEIN|BRIDGESTONE|BLOCKBUSTER|BLACKFRIDAY|BARCLAYCARD|ACCOUNTANTS|VOLKSWAGEN|VLAANDEREN|VISTAPRINT|UNIVERSITY|TELEFONICA|TECHNOLOGY|TATAMOTORS|SWIFTCOVER|SCHAEFFLER|RESTAURANT|REPUBLICAN|REALESTATE|PRUDENTIAL|PROTECTION|PROPERTIES|ONYOURSIDE|NEXTDIRECT|NEWHOLLAND|NATIONWIDE|MITSUBISHI|MANAGEMENT|INDUSTRIES|IMMOBILIEN|HEALTHCARE|FOUNDATION|EXTRASPACE|EUROVISION|CUISINELLA|CREDITCARD|CONSULTING|CAPITALONE|BOEHRINGER|BNPPARIBAS|BASKETBALL|ASSOCIATES|APARTMENTS|ACCOUNTANT|YODOBASHI|VACATIONS|TRAVELERS|STOCKHOLM|STATEFARM|STATEBANK|SOLUTIONS|SHANGRILA|SCJOHNSON|RICHARDLI|PRAMERICA|PASSAGENS|PANASONIC|MICROSOFT|MELBOURNE|MARSHALLS|MARKETING|LIFESTYLE|LANDROVER|LANCASTER|LADBROKES|KUOKGROUP|INSURANCE|INSTITUTE|HONEYWELL|HOMESENSE|HOMEGOODS|HOMEDEPOT|HISAMITSU|GOODHANDS|GOLDPOINT|FURNITURE|FUJIXEROX|FRONTDOOR|FRESENIUS|FIRESTONE|FINANCIAL|FAIRWINDS|EQUIPMENT|EDUCATION|DIRECTORY|COMMUNITY|CHRISTMAS|BLOOMBERG|BARCELONA|AQUARELLE|ANALYTICS|AMSTERDAM|ALLFINANZ|ALFAROMEO|ACCENTURE|YOKOHAMA|WOODSIDE|VERISIGN|VENTURES|VANGUARD|UCONNECT|TRAINING|TELECITY|SYMANTEC|SUPPLIES|STCGROUP|SOFTWARE|SOFTBANK|SHOWTIME|SHOPPING|SERVICES|SECURITY|SAMSCLUB|SAARLAND|RELIANCE|REDSTONE|PROPERTY|PLUMBING|PICTURES|PHARMACY|PARTNERS|OBSERVER|MOVISTAR|MORTGAGE|MERCKMSD|MEMORIAL|MCKINSEY|MASERATI|MARRIOTT|LUNDBECK|LIGHTING|JPMORGAN|ISTANBUL|IPIRANGA|INFINITI|HOSPITAL|HOLDINGS|HELSINKI|HDFCBANK|GUARDIAN|GRAPHICS|GRAINGER|GOODYEAR|FRONTIER|FOOTBALL|FIRMDALE|FIDELITY|FEEDBACK|EXCHANGE|EVERBANK|ETISALAT|ESURANCE|ERICSSON|ENGINEER|DOWNLOAD|DISCOVER|DISCOUNT|DIAMONDS|DEMOCRAT|DELOITTE|DELIVERY|COMPUTER|COMMBANK|CLOTHING|CLINIQUE|CLEANING|CITYEATS|CIPRIANI|CHRYSLER|CATHOLIC|CATERING|CAPETOWN|BUSINESS|BUILDERS|BUDAPEST|BRUSSELS|BROADWAY|BRADESCO|BOUTIQUE|BASEBALL|BARGAINS|BAREFOOT|BARCLAYS|ATTORNEY|ALLSTATE|AIRFORCE|ABUDHABI|ZUERICH|YOUTUBE|YAMAXUN|XFINITY|WINNERS|WINDOWS|WHOSWHO|WEDDING|WEBSITE|WEATHER|WATCHES|WANGGOU|WALMART|TRADING|TOSHIBA|TIFFANY|TICKETS|THEATRE|THEATER|TEMASEK|SYSTEMS|SURGERY|SUPPORT|STORAGE|STATOIL|STARHUB|STAPLES|SPIEGEL|SINGLES|SHRIRAM|SHIKSHA|SCIENCE|SCHWARZ|SCHMIDT|SANDVIK|SAMSUNG|REXROTH|REVIEWS|RENTALS|RECIPES|REALTOR|POLITIE|PIONEER|PHILIPS|PANERAI|ORIGINS|ORGANIC|OLDNAVY|OKINAWA|NEUSTAR|NETWORK|NETFLIX|NETBANK|MONSTER|METLIFE|MARKETS|LINCOLN|LIMITED|LIAISON|LECLERC|LATROBE|LASALLE|LANXESS|LANCOME|LACAIXA|KOMATSU|KITCHEN|JUNIPER|JEWELRY|ISMAILI|ISELECT|HYUNDAI|HOTMAIL|HOTELES|HOSTING|HOLIDAY|HITACHI|HANGOUT|HAMBURG|GUITARS|GROCERY|GODADDY|GENTING|GALLERY|FUJITSU|FROGANS|FORSALE|FLOWERS|FLORIST|FLIGHTS|FITNESS|FISHING|FINANCE|FERRERO|FERRARI|FASHION|FARMERS|EXPRESS|EXPOSED|DOMAINS|DIGITAL|DENTIST|CRUISES|CRICKET|COURSES|COUPONS|COUNTRY|CORSICA|COOKING|CONTACT|COMPARE|COMPANY|COMCAST|COLOGNE|COLLEGE|CLUBMED|CITADEL|CHINTAI|CHANNEL|CARTIER|CAREERS|CARAVAN|CAPITAL|BUGATTI|BROTHER|BOOKING|BESTBUY|BENTLEY|BAUHAUS|BANAMEX|AVIANCA|AUSPOST|AUDIBLE|AUCTION|ATHLETA|ANDROID|ALIBABA|AGAKHAN|ACADEMY|ABOGADO|ZAPPOS|YANDEX|YACHTS|XPERIA|XIHUAN|WEBCAM|WARMAN|WALTER|VUELOS|VOYAGE|VOTING|VISION|VIRGIN|VILLAS|VIKING|VIAJES|UNICOM|TRAVEL|TOYOTA|TKMAXX|TJMAXX|TIENDA|TENNIS|TATTOO|TARGET|TAOBAO|TAIPEI|SYDNEY|SWATCH|SUZUKI|SUPPLY|STUDIO|STREAM|SOCIAL|SOCCER|SHOUJI|SELECT|SECURE|SEARCH|SCHULE|SCHOOL|SANOFI|SAKURA|SAFETY|RYUKYU|ROGERS|ROCHER|REVIEW|REPORT|REPAIR|REISEN|REALTY|RACING|QUEBEC|PICTET|PIAGET|PHYSIO|PHOTOS|PFIZER|OTSUKA|ORANGE|ORACLE|ONLINE|OLAYAN|OFFICE|NOWRUZ|NORTON|NISSAY|NISSAN|NATURA|NAGOYA|MUTUAL|MUSEUM|MOSCOW|MORMON|MONASH|MOBILY|MOBILE|MATTEL|MARKET|MAKEUP|MAISON|MADRID|LUXURY|LONDON|LOCKER|LIVING|LEFRAK|LAWYER|LATINO|LANCIA|KOSHER|KINDLE|KINDER|KAUFEN|JUEGOS|JOBURG|JAGUAR|INTUIT|INSURE|IMAMAT|HUGHES|HOTELS|HOCKEY|HIPHOP|HERMES|HEALTH|GRATIS|GOOGLE|GLOBAL|GIVING|GEORGE|GARDEN|GALLUP|FUTBOL|FLICKR|FAMILY|EXPERT|EVENTS|ESTATE|ENERGY|EMERCK|DURBAN|DUPONT|DUNLOP|DOCTOR|DIRECT|DESIGN|DENTAL|DEGREE|DEALER|DATSUN|DATING|CRUISE|CREDIT|COUPON|CONDOS|COMSEC|COFFEE|CLINIC|CLAIMS|CIRCLE|CHURCH|CHROME|CHANEL|CENTER|CASINO|CASEIH|CAREER|CAMERA|BROKER|BOSTON|BOSTIK|BLANCO|BHARTI|BERLIN|BEAUTY|BAYERN|AUTHOR|ARAMCO|ANQUAN|ALSTOM|ALSACE|ALIPAY|AIRTEL|AIRBUS|AGENCY|AFRICA|ACTIVE|ABBVIE|ABBOTT|ABARTH|ZIPPO|YAHOO|XEROX|WORLD|WORKS|WEIBO|WEBER|WATCH|WALES|VOLVO|VODKA|VISTA|VIDEO|VEGAS|UBANK|TUSHU|TUNES|TRUST|TRADE|TOURS|TOTAL|TORAY|TOOLS|TOKYO|TODAY|TMALL|TIROL|TIRES|TATAR|SWISS|SUCKS|STYLE|STUDY|STORE|STADA|SPORT|SPACE|SOLAR|SMILE|SMART|SLING|SKYPE|SHOES|SHELL|SHARP|SEVEN|SENER|SALON|RUGBY|RODEO|ROCKS|RICOH|REISE|REHAB|RADIO|QUEST|PROMO|PRIME|PRESS|PRAXI|POKER|PLACE|PIZZA|PHOTO|PHONE|PARTY|PARTS|PARIS|OSAKA|OMEGA|NOWTV|NOKIA|NINJA|NIKON|NEXUS|NADEX|MOVIE|MOPAR|MONEY|MIAMI|MEDIA|MANGO|MACYS|LUPIN|LOTTO|LOTTE|LOCUS|LOANS|LIXIL|LIPSY|LINDE|LILLY|LEXUS|LEGAL|LEASE|LAMER|KYOTO|KOELN|JETZT|IVECO|IRISH|INTEL|IKANO|HYATT|HOUSE|HORSE|HONDA|HOMES|GUIDE|GUCCI|GROUP|GRIPE|GREEN|GMAIL|GLOBO|GLASS|GLADE|GIVES|GIFTS|GAMES|GALLO|FORUM|FOREX|FINAL|FEDEX|FAITH|EPSON|EPOST|EMAIL|EDEKA|EARTH|DUBAI|DRIVE|DODGE|DELTA|DEALS|DANCE|DABUR|CYMRU|CROWN|CODES|COACH|CLOUD|CLICK|CITIC|CISCO|CHEAP|CHASE|CARDS|CANON|BUILD|BOSCH|BOATS|BLACK|BINGO|BIBLE|BEATS|BAIDU|AZURE|AUTOS|AUDIO|ARCHI|APPLE|AMICA|AMFAM|AETNA|ADULT|ACTOR|ZONE|ZERO|ZARA|YOGA|XBOX|WORK|WINE|WIKI|WIEN|WEIR|WANG|VOTO|VOTE|VIVO|VIVA|VISA|VANA|TUBE|TOYS|TOWN|TIPS|TIAA|TEVA|TECH|TEAM|TAXI|TALK|SURF|STAR|SPOT|SONY|SONG|SOHU|SNCF|SKIN|SITE|SINA|SILK|SHOW|SHOP|SHIA|SHAW|SEXY|SEEK|SEAT|SCOT|SCOR|SAXO|SAVE|SARL|SAPO|SALE|SAFE|RUHR|RSVP|ROOM|RMIT|RICH|REST|RENT|REIT|READ|RAID|QPON|PROF|PROD|POST|PORN|POHL|PLUS|PLAY|PINK|PING|PICS|PCCW|PARS|PAGE|OPEN|OLLO|NIKE|NICO|NEXT|NEWS|NAVY|NAME|MOTO|MODA|MOBI|MINT|MINI|MENU|MEME|MEET|MAIF|LUXE|LTDA|LOVE|LOFT|LOAN|LIVE|LINK|LIMO|LIKE|LIFE|LIDL|LGBT|LEGO|LAND|KRED|KPMG|KIWI|KDDI|JPRS|JOBS|JEEP|JAVA|ITAU|INFO|IMMO|IMDB|IEEE|ICBC|HSBC|HOST|HGTV|HERE|HELP|HDFC|HAUS|HAIR|GURU|GUGE|GOOG|GOLF|GOLD|GMBH|GIFT|GGEE|GENT|GBIZ|GAME|FUND|FREE|FORD|FOOD|FLIR|FISH|FIRE|FILM|FIDO|FIAT|FAST|FARM|FANS|FAIL|FAGE|ERNI|DVAG|DUNS|DUCK|DOHA|DOCS|DISH|DIET|DESI|DELL|DEAL|DCLK|DATE|DATA|CYOU|COOP|COOL|CLUB|CITY|CITI|CHAT|CERN|CBRE|CASH|CASE|CASA|CARS|CARE|CAMP|CALL|CAFE|BUZZ|BOOK|BOND|BOFA|BLUE|BLOG|BING|BIKE|BEST|BEER|BBVA|BANK|BAND|BABY|AUTO|AUDI|ASIA|ASDA|ARTE|ARPA|ARMY|ARAB|AMEX|ALLY|AKDN|AIGO|AERO|ADAC|ABLE|AARP|ZIP|YUN|YOU|XYZ|XXX|XIN|WTF|WTC|WOW|WME|WIN|WED|VIP|VIN|VIG|VET|UPS|UOL|UNO|UBS|TVS|TUI|TRV|TOP|TJX|THD|TEL|TDK|TCI|TAX|TAB|STC|SRT|SRL|SOY|SKY|SKI|SFR|SEX|SEW|SES|SCB|SCA|SBS|SBI|SAS|SAP|RWE|RUN|RIP|RIO|RIL|REN|RED|QVC|PWC|PUB|PRU|PRO|PNC|PIN|PID|PHD|PET|PAY|OVH|OTT|ORG|OOO|ONL|ONG|ONE|OFF|OBI|NYC|NTT|NRW|NRA|NOW|NHK|NGO|NFL|NEW|NET|NEC|NBA|NAB|MTR|MTN|MSD|MOV|MOM|MOI|MOE|MMA|MLS|MLB|MIT|MIL|MEO|MEN|MED|MBA|MAP|MAN|LTD|LPL|LOL|LLC|LDS|LAW|LAT|KRD|KPN|KIM|KIA|KFH|JOY|JOT|JNJ|JMP|JLL|JLC|JIO|JCP|JCB|IWC|ITV|IST|INT|INK|ING|IFM|ICU|ICE|IBM|HOW|HOT|HKT|HIV|HBO|GOV|GOT|GOP|GOO|GMX|GMO|GLE|GEA|GDN|GAP|GAL|FYI|FUN|FTR|FRL|FOX|FOO|FLY|FIT|FAN|EUS|ESQ|EDU|ECO|EAT|DVR|DTV|DOT|DOG|DNP|DIY|DHL|DEV|DDS|DAY|DAD|CSC|CRS|COM|CFD|CFA|CEO|CEB|CBS|CBN|CBA|CAT|CAR|CAM|CAL|CAB|BZH|BUY|BOX|BOT|BOO|BOM|BNL|BMW|BMS|BIZ|BIO|BID|BET|BCN|BCG|BBT|BBC|BAR|AXA|AWS|ART|APP|AOL|ANZ|AIG|AFL|AEG|ADS|ACO|ABC|ABB|AAA|ZW|ZM|ZA|YT|YE|WS|WF|VU|VN|VI|VG|VE|VC|VA|UZ|UY|US|UK|UG|UA|TZ|TW|TV|TT|TR|TO|TN|TM|TL|TK|TJ|TH|TG|TF|TD|TC|SZ|SY|SX|SV|SU|ST|SR|SO|SN|SM|SL|SK|SJ|SI|SH|SG|SE|SD|SC|SB|SA|RW|RU|RS|RO|RE|QA|PY|PW|PT|PS|PR|PN|PM|PL|PK|PH|PG|PF|PE|PA|OM|NZ|NU|NR|NP|NO|NL|NI|NG|NF|NE|NC|NA|MZ|MY|MX|MW|MV|MU|MT|MS|MR|MQ|MP|MO|MN|MM|ML|MK|MH|MG|ME|MD|MC|MA|LY|LV|LU|LT|LS|LR|LK|LI|LC|LB|LA|KZ|KY|KW|KR|KP|KN|KM|KI|KH|KG|KE|JP|JO|JM|JE|IT|IS|IR|IQ|IO|IN|IM|IL|IE|ID|HU|HT|HR|HN|HM|HK|GY|GW|GU|GT|GS|GR|GQ|GP|GN|GM|GL|GI|GH|GG|GF|GE|GD|GB|GA|FR|FO|FM|FK|FJ|FI|EU|ET|ES|ER|EG|EE|EC|DZ|DO|DM|DK|DJ|DE|CZ|CY|CX|CW|CV|CU|CR|CO|CN|CM|CL|CK|CI|CH|CG|CF|CD|CC|CA|BZ|BY|BW|BV|BT|BS|BR|BO|BN|BM|BJ|BI|BH|BG|BF|BE|BD|BB|BA|AZ|AX|AW|AU|AT|AS|AR|AQ|AO|AM|AL|AI|AG|AF|AE|AD|AC|travelersinsurance|northwesternmutual|sandvikcoromant|kerryproperties|americanexpress|weatherchannel|kerrylogistics|cookingchannel|cancerresearch|bananarepublic|americanfamily|afamilycompany|wolterskluwer|travelchannel|spreadbetting|lifeinsurance|international|versicherung|scholarships|lplfinancial|construction|williamhill|rightathome|redumbrella|progressive|productions|playstation|photography|olayangroup|motorcycles|lamborghini|kerryhotels|investments|foodnetwork|enterprises|engineering|creditunion|contractors|calvinklein|bridgestone|blockbuster|blackfriday|barclaycard|accountants|volkswagen|vlaanderen|vistaprint|university|telefonica|technology|tatamotors|swiftcover|schaeffler|restaurant|republican|realestate|prudential|protection|properties|onyourside|nextdirect|newholland|nationwide|mitsubishi|management|industries|immobilien|healthcare|foundation|extraspace|eurovision|cuisinella|creditcard|consulting|capitalone|boehringer|bnpparibas|basketball|associates|apartments|accountant|yodobashi|vacations|travelers|stockholm|statefarm|statebank|solutions|shangrila|scjohnson|richardli|pramerica|passagens|panasonic|microsoft|melbourne|marshalls|marketing|lifestyle|landrover|lancaster|ladbrokes|kuokgroup|insurance|institute|honeywell|homesense|homegoods|homedepot|hisamitsu|goodhands|goldpoint|furniture|fujixerox|frontdoor|fresenius|firestone|financial|fairwinds|equipment|education|directory|community|christmas|bloomberg|barcelona|aquarelle|analytics|amsterdam|allfinanz|alfaromeo|accenture|yokohama|woodside|verisign|ventures|vanguard|uconnect|training|telecity|symantec|supplies|stcgroup|software|softbank|showtime|shopping|services|security|samsclub|saarland|reliance|redstone|property|plumbing|pictures|pharmacy|partners|observer|movistar|mortgage|merckmsd|memorial|mckinsey|maserati|marriott|lundbeck|lighting|jpmorgan|istanbul|ipiranga|infiniti|hospital|holdings|helsinki|hdfcbank|guardian|graphics|grainger|goodyear|frontier|football|firmdale|fidelity|feedback|exchange|everbank|etisalat|esurance|ericsson|engineer|download|discover|discount|diamonds|democrat|deloitte|delivery|computer|commbank|clothing|clinique|cleaning|cityeats|cipriani|chrysler|catholic|catering|capetown|business|builders|budapest|brussels|broadway|bradesco|boutique|baseball|bargains|barefoot|barclays|attorney|allstate|airforce|abudhabi|zuerich|youtube|yamaxun|xfinity|winners|windows|whoswho|wedding|website|weather|watches|wanggou|walmart|trading|toshiba|tiffany|tickets|theatre|theater|temasek|systems|surgery|support|storage|statoil|starhub|staples|spiegel|singles|shriram|shiksha|science|schwarz|schmidt|sandvik|samsung|rexroth|reviews|rentals|recipes|realtor|politie|pioneer|philips|panerai|origins|organic|oldnavy|okinawa|neustar|network|netflix|netbank|monster|metlife|markets|lincoln|limited|liaison|leclerc|latrobe|lasalle|lanxess|lancome|lacaixa|komatsu|kitchen|juniper|jewelry|ismaili|iselect|hyundai|hotmail|hoteles|hosting|holiday|hitachi|hangout|hamburg|guitars|grocery|godaddy|genting|gallery|fujitsu|frogans|forsale|flowers|florist|flights|fitness|fishing|finance|ferrero|ferrari|fashion|farmers|express|exposed|domains|digital|dentist|cruises|cricket|courses|coupons|country|corsica|cooking|contact|compare|company|comcast|cologne|college|clubmed|citadel|chintai|channel|cartier|careers|caravan|capital|bugatti|brother|booking|bestbuy|bentley|bauhaus|banamex|avianca|auspost|audible|auction|athleta|android|alibaba|agakhan|academy|abogado|zappos|yandex|yachts|xperia|xihuan|webcam|warman|walter|vuelos|voyage|voting|vision|virgin|villas|viking|viajes|unicom|travel|toyota|tkmaxx|tjmaxx|tienda|tennis|tattoo|target|taobao|taipei|sydney|swatch|suzuki|supply|studio|stream|social|soccer|shouji|select|secure|search|schule|school|sanofi|sakura|safety|ryukyu|rogers|rocher|review|report|repair|reisen|realty|racing|quebec|pictet|piaget|physio|photos|pfizer|otsuka|orange|oracle|online|olayan|office|nowruz|norton|nissay|nissan|natura|nagoya|mutual|museum|moscow|mormon|monash|mobily|mobile|mattel|market|makeup|maison|madrid|luxury|london|locker|living|lefrak|lawyer|latino|lancia|kosher|kindle|kinder|kaufen|juegos|joburg|jaguar|intuit|insure|imamat|hughes|hotels|hockey|hiphop|hermes|health|gratis|google|global|giving|george|garden|gallup|futbol|flickr|family|expert|events|estate|energy|emerck|durban|dupont|dunlop|doctor|direct|design|dental|degree|dealer|datsun|dating|cruise|credit|coupon|condos|comsec|coffee|clinic|claims|circle|church|chrome|chanel|center|casino|caseih|career|camera|broker|boston|bostik|blanco|bharti|berlin|beauty|bayern|author|aramco|anquan|alstom|alsace|alipay|airtel|airbus|agency|africa|active|abbvie|abbott|abarth|zippo|yahoo|xerox|world|works|weibo|weber|watch|wales|volvo|vodka|vista|video|vegas|ubank|tushu|tunes|trust|trade|tours|total|toray|tools|tokyo|today|tmall|tirol|tires|tatar|swiss|sucks|style|study|store|stada|sport|space|solar|smile|smart|sling|skype|shoes|shell|sharp|seven|sener|salon|rugby|rodeo|rocks|ricoh|reise|rehab|radio|quest|promo|prime|press|praxi|poker|place|pizza|photo|phone|party|parts|paris|osaka|omega|nowtv|nokia|ninja|nikon|nexus|nadex|movie|mopar|money|miami|media|mango|macys|lupin|lotto|lotte|locus|loans|lixil|lipsy|linde|lilly|lexus|legal|lease|lamer|kyoto|koeln|jetzt|iveco|irish|intel|ikano|hyatt|house|horse|honda|homes|guide|gucci|group|gripe|green|gmail|globo|glass|glade|gives|gifts|games|gallo|forum|forex|final|fedex|faith|epson|epost|email|edeka|earth|dubai|drive|dodge|delta|deals|dance|dabur|cymru|crown|codes|coach|cloud|click|citic|cisco|cheap|chase|cards|canon|build|bosch|boats|black|bingo|bible|beats|baidu|azure|autos|audio|archi|apple|amica|amfam|aetna|adult|actor|zone|zero|zara|yoga|xbox|work|wine|wiki|wien|weir|wang|voto|vote|vivo|viva|visa|vana|tube|toys|town|tips|tiaa|teva|tech|team|taxi|talk|surf|star|spot|sony|song|sohu|sncf|skin|site|sina|silk|show|shop|shia|shaw|sexy|seek|seat|scot|scor|saxo|save|sarl|sapo|sale|safe|ruhr|rsvp|room|rmit|rich|rest|rent|reit|read|raid|qpon|prof|prod|post|porn|pohl|plus|play|pink|ping|pics|pccw|pars|page|open|ollo|nike|nico|next|news|navy|name|moto|moda|mobi|mint|mini|menu|meme|meet|maif|luxe|ltda|love|loft|loan|live|link|limo|like|life|lidl|lgbt|lego|land|kred|kpmg|kiwi|kddi|jprs|jobs|jeep|java|itau|info|immo|imdb|ieee|icbc|hsbc|host|hgtv|here|help|hdfc|haus|hair|guru|guge|goog|golf|gold|gmbh|gift|ggee|gent|gbiz|game|fund|free|ford|food|flir|fish|fire|film|fido|fiat|fast|farm|fans|fail|fage|erni|dvag|duns|duck|doha|docs|dish|diet|desi|dell|deal|dclk|date|data|cyou|coop|cool|club|city|citi|chat|cern|cbre|cash|case|casa|cars|care|camp|call|cafe|buzz|book|bond|bofa|blue|blog|bing|bike|best|beer|bbva|bank|band|baby|auto|audi|asia|asda|arte|arpa|army|arab|amex|ally|akdn|aigo|aero|adac|able|aarp|zip|yun|you|xyz|xxx|xin|wtf|wtc|wow|wme|win|wed|vip|vin|vig|vet|ups|uol|uno|ubs|tvs|tui|trv|top|tjx|thd|tel|tdk|tci|tax|tab|stc|srt|srl|soy|sky|ski|sfr|sex|sew|ses|scb|sca|sbs|sbi|sas|sap|rwe|run|rip|rio|ril|ren|red|qvc|pwc|pub|pru|pro|pnc|pin|pid|phd|pet|pay|ovh|ott|org|ooo|onl|ong|one|off|obi|nyc|ntt|nrw|nra|now|nhk|ngo|nfl|new|net|nec|nba|nab|mtr|mtn|msd|mov|mom|moi|moe|mma|mls|mlb|mit|mil|meo|men|med|mba|map|man|ltd|lpl|lol|llc|lds|law|lat|krd|kpn|kim|kia|kfh|joy|jot|jnj|jmp|jll|jlc|jio|jcp|jcb|iwc|itv|ist|int|ink|ing|ifm|icu|ice|ibm|how|hot|hkt|hiv|hbo|gov|got|gop|goo|gmx|gmo|gle|gea|gdn|gap|gal|fyi|fun|ftr|frl|fox|foo|fly|fit|fan|eus|esq|edu|eco|eat|dvr|dtv|dot|dog|dnp|diy|dhl|dev|dds|day|dad|csc|crs|com|cfd|cfa|ceo|ceb|cbs|cbn|cba|cat|car|cam|cal|cab|bzh|buy|box|bot|boo|bom|bnl|bmw|bms|biz|bio|bid|bet|bcn|bcg|bbt|bbc|bar|axa|aws|art|app|aol|anz|aig|afl|aeg|ads|aco|abc|abb|aaa|zw|zm|za|yt|ye|ws|wf|vu|vn|vi|vg|ve|vc|va|uz|uy|us|uk|ug|ua|tz|tw|tv|tt|tr|to|tn|tm|tl|tk|tj|th|tg|tf|td|tc|sz|sy|sx|sv|su|st|sr|so|sn|sm|sl|sk|sj|si|sh|sg|se|sd|sc|sb|sa|rw|ru|rs|ro|re|qa|py|pw|pt|ps|pr|pn|pm|pl|pk|ph|pg|pf|pe|pa|om|nz|nu|nr|np|no|nl|ni|ng|nf|ne|nc|na|mz|my|mx|mw|mv|mu|mt|ms|mr|mq|mp|mo|mn|mm|ml|mk|mh|mg|me|md|mc|ma|ly|lv|lu|lt|ls|lr|lk|li|lc|lb|la|kz|ky|kw|kr|kp|kn|km|ki|kh|kg|ke|jp|jo|jm|je|it|is|ir|iq|io|in|im|il|ie|id|hu|ht|hr|hn|hm|hk|gy|gw|gu|gt|gs|gr|gq|gp|gn|gm|gl|gi|gh|gg|gf|ge|gd|gb|ga|fr|fo|fm|fk|fj|fi|eu|et|es|er|eg|ee|ec|dz|do|dm|dk|dj|de|cz|cy|cx|cw|cv|cu|cr|co|cn|cm|cl|ck|ci|ch|cg|cf|cd|cc|ca|bz|by|bw|bv|bt|bs|br|bo|bn|bm|bj|bi|bh|bg|bf|be|bd|bb|ba|az|ax|aw|au|at|as|ar|aq|ao|am|al|ai|ag|af|ae|ad|ac)(?:\:[0-9]{1,5})*(?:/(?:$|[a-zA-Z0-9\.\,\;\?\'\\\+&%\$#\=~_\-]+))*(?=\b|\s|$)) +phone=(?:(?:\(?\+\d{1,2}\)? *|#)*(?:[0-9](?: |-)?)?(?:\(?[0-9]{3}\)?|[0-9]{3})(?: |-)?(?:[0-9]{3}(?: |-)?[0-9]{4,7})) +time=(?:(?:19[0-9]{2}|[2-9][0-9]{3})-(?:(?:0(?:1|3|5|7|8)|10|12)-(?:0[1-9]|1[0-9]|2[0-9]|3[0-1])|(?:0(?:4|6|9)|11)-(?:0[1-9]|1[0-9]|2[0-9]|30)|(?:02)-(?:0[1-9]|1[0-9]|2[0-9]))\x20(?:0[0-9]|1[0-9]|2[0-3])(?::[0-5][0-9]){0,2}) +hash_tag=(?:(?<=\s|^|\b|[^\w])#\p{N}*[\p{L}_]+[\p{L}\p{N}_]*) +mention=(?:(?<=\s|^|\b|[^\w])@[\w]+(?=\s|$|\b|[^\w])) +emoticon=(?:(?<=\s|^|\b|[^\w])[:;=]-*(?:[