aboutsummaryrefslogtreecommitdiffstats
path: root/oldrep/tool
diff options
context:
space:
mode:
authortor <tor@project>2020-11-24 06:04:51 +0000
committertor <tor@project>2020-11-24 06:04:51 +0000
commit3adf4f1d541413a16d6aa831e4c8b54ca3fe272d (patch)
tree2bd616c7ae3d62665c38b987a8c04536055e1e71 /oldrep/tool
parente7045092466a31d4b57f01a4e9889de044963688 (diff)
downloadcloudflare-tor-3adf4f1d541413a16d6aa831e4c8b54ca3fe272d.tar.lz
cloudflare-tor-3adf4f1d541413a16d6aa831e4c8b54ca3fe272d.tar.xz
cloudflare-tor-3adf4f1d541413a16d6aa831e4c8b54ca3fe272d.zip
1
Diffstat (limited to 'oldrep/tool')
-rw-r--r--oldrep/tool/README.md2
-rw-r--r--oldrep/tool/ansero_example.html91
-rw-r--r--oldrep/tool/cloudflare.onemorestep.template.html62
-rw-r--r--oldrep/tool/cloudflare_one_more_step.php6
-rw-r--r--oldrep/tool/example.mdn_basedom_list.txt3060
-rw-r--r--oldrep/tool/getCFDomainFromList.php37
-rw-r--r--oldrep/tool/get_fqdn_tmg1.php24
-rw-r--r--oldrep/tool/irssi_cf_alturl.pl333
8 files changed, 0 insertions, 3615 deletions
diff --git a/oldrep/tool/README.md b/oldrep/tool/README.md
deleted file mode 100644
index a8038be9..00000000
--- a/oldrep/tool/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Tool / Script
-
diff --git a/oldrep/tool/ansero_example.html b/oldrep/tool/ansero_example.html
deleted file mode 100644
index 6cdc2fbb..00000000
--- a/oldrep/tool/ansero_example.html
+++ /dev/null
@@ -1,91 +0,0 @@
-<html>
- <head>
- <title>Search</title>
- <style>
-body {
- background: #f0f0f0
-}
-input#what {
- width: 80%
-}
-span.srch_sect {
- color: #2f4f4f
-}
-a.srch_link {
- color: #4b0082
-}
-span.srch_url {
- color: #20b2aa
-}
-a[onclick] {
- cursor: pointer
-}
- </style>
- <script>
-let apiurl = 'https://ansero.eu.org/api/ansero.php';
-let favurl = 'https://ansero.eu.org/api/favicon.php?f=';
-let mylang = 'en-US';
-let hide_domain = []; // e.g. 'google.com'
-let hide_fqdn = []; // e.g. 'en.wikipedia.org'
-let removeMITMsites = false;
-function searchfor(key) {
- document.getElementById('what').value = key;
- search();
-}
-function search() {
- let answer = '',
- keyword = document.getElementById('what').value;
- if (keyword.length < 2) {
- return false;
- }
- fetch(apiurl, {
- method: 'POST',
- mode: 'cors',
- headers: {
- 'Content-Type': 'application/x-www-form-urlencoded'
- },
- body: 't=json' + (removeMITMsites ? '&m' : '') + '&l=' + mylang + '&q=' + encodeURI(keyword)
- }).then(r => r.json()).then(r => {
- if (r.info.desc != undefined) {
- answer += '<span class="srch_sect">';
- answer += '' + r.info.desc + '<br>';
- answer += '<a href="' + r.info.url + '" class="srch_link">' + r.info.title + '</a>';
- answer += '</span><br><br>';
- }
- if (r.sgst.length > 0) {
- answer += '<span class="srch_sect">Search other: <br>';
- r.sgst.forEach(x => {
- answer += '[<a class="srch_link" onclick="searchfor(\'' + x + '\');return false;">' + x + '</a>]<br>';
- });
- answer += '</span><br><br>';
- }
- r.res.forEach(x => {
- if (!hide_fqdn.includes(x.fqdn) && !hide_domain.includes(x.dom)) {
- if (/^https:\/\/www\.youtube\.com\/watch\?v=(.*)$/.test(x.url)) {
- x.url = 'https://invidio.us/watch?' + x.url.split('/watch?')[1];
- x.fqdn = x.dom = 'invidio.us';
- }
- answer += '<span class="srch_sect">';
- answer += '<img src="' + favurl + (x.url.startsWith('https:') ? '1-' : '0-') + x.fqdn + '"> ';
- answer += '<a href="' + x.url + '" class="srch_link">' + (x.mitm == 1 ? '[MITM!!] ' : '') + x.title + '</a><br>';
- answer += '' + x.desc + '<br>';
- answer += '<span class="srch_url">' + x.url + '</span></span>';
- answer += '<br><br>';
- }
- });
- document.getElementById('resultarea').innerHTML = answer;
- }).catch(e => console.log(e));
- return false;
-}
- </script>
- </head>
- <body>
- <form action="#" onsubmit="return search()">
- <input type="text" id="what" placeholder="Search for..." minlength="2" required>
- <input type="submit" value="Search">
- </form>
- <br>
- <br>
- <span id="resultarea"></span>
- </body>
-</html> \ No newline at end of file
diff --git a/oldrep/tool/cloudflare.onemorestep.template.html b/oldrep/tool/cloudflare.onemorestep.template.html
deleted file mode 100644
index d926a0b9..00000000
--- a/oldrep/tool/cloudflare.onemorestep.template.html
+++ /dev/null
@@ -1,62 +0,0 @@
-<!DOCTYPE html>
-<html class="no-js">
- <head>
- <title>Attention Required! | Cloudflare</title>
- <meta charset="UTF-8" />
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
- <meta name="robots" content="noindex, nofollow" />
- <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1" />
- <style type="text/css">body{margin:0;padding:0}@font-face{font-family:'Open Sans';font-style:normal;font-weight:300;src:local("Open Sans Light"),local("OpenSans-Light"),}@font-face{font-family:'Open Sans';font-style:normal;font-weight:400;src:local("Open Sans"),local("OpenSans"),}@font-face{font-family:'Open Sans';font-style:normal;font-weight:600;src:local("Open Sans Semibold"),local("OpenSans-Semibold"),}@font-face{font-family:'Open Sans';font-style:normal;font-weight:700;src:local("Open Sans Bold"),local("OpenSans-Bold"),}@font-face{font-family:'Open Sans';font-style:italic;font-weight:300;src:local("Open Sans Light Italic"),local("OpenSansLight-Italic"),}@font-face{font-family:'Open Sans';font-style:italic;font-weight:400;src:local("Open Sans Italic"),local("OpenSans-Italic"),}#cf-wrapper a,#cf-wrapper abbr,#cf-wrapper article,#cf-wrapper aside,#cf-wrapper b,#cf-wrapper big,#cf-wrapper blockquote,#cf-wrapper body,#cf-wrapper canvas,#cf-wrapper caption,#cf-wrapper center,#cf-wrapper cite,#cf-wrapper code,#cf-wrapper dd,#cf-wrapper del,#cf-wrapper details,#cf-wrapper dfn,#cf-wrapper div,#cf-wrapper dl,#cf-wrapper dt,#cf-wrapper em,#cf-wrapper embed,#cf-wrapper fieldset,#cf-wrapper figcaption,#cf-wrapper figure,#cf-wrapper footer,#cf-wrapper form,#cf-wrapper h1,#cf-wrapper h2,#cf-wrapper h3,#cf-wrapper h4,#cf-wrapper h5,#cf-wrapper h6,#cf-wrapper header,#cf-wrapper hgroup,#cf-wrapper html,#cf-wrapper i,#cf-wrapper iframe,#cf-wrapper img,#cf-wrapper label,#cf-wrapper legend,#cf-wrapper li,#cf-wrapper mark,#cf-wrapper menu,#cf-wrapper nav,#cf-wrapper object,#cf-wrapper ol,#cf-wrapper output,#cf-wrapper p,#cf-wrapper pre,#cf-wrapper s,#cf-wrapper samp,#cf-wrapper section,#cf-wrapper small,#cf-wrapper span,#cf-wrapper strike,#cf-wrapper strong,#cf-wrapper sub,#cf-wrapper summary,#cf-wrapper sup,#cf-wrapper table,#cf-wrapper tbody,#cf-wrapper td,#cf-wrapper tfoot,#cf-wrapper th,#cf-wrapper thead,#cf-wrapper tr,#cf-wrapper tt,#cf-wrapper u,#cf-wrapper ul{margin:0;padding:0;border:0;font:inherit;font-size:100%;text-decoration:none;vertical-align:baseline}#cf-wrapper a img{border:0}#cf-wrapper article,#cf-wrapper aside,#cf-wrapper details,#cf-wrapper figcaption,#cf-wrapper figure,#cf-wrapper footer,#cf-wrapper header,#cf-wrapper hgroup,#cf-wrapper menu,#cf-wrapper nav,#cf-wrapper section,#cf-wrapper summary{display:block}#cf-wrapper .cf-columns:after,#cf-wrapper .cf-columns:before,#cf-wrapper .cf-section:after,#cf-wrapper .cf-section:before,#cf-wrapper .cf-wrapper:after,#cf-wrapper .cf-wrapper:before,#cf-wrapper .clearfix:after,#cf-wrapper .clearfix:before,#cf-wrapper section:after,#cf-wrapper section:before{content:" ";display:table}#cf-wrapper .cf-columns:after,#cf-wrapper .cf-section:after,#cf-wrapper .cf-wrapper:after,#cf-wrapper .clearfix:after,#cf-wrapper section:after{clear:both}#cf-wrapper{display:block;margin:0;padding:0;position:relative;text-align:left;width:100%;z-index:999999999;color:#404040!important;font-family:"Open Sans",Helvetica,Arial,sans-serif!important;font-size:15px!important;line-height:1.5!important;text-decoration:none!important;letter-spacing:normal;-webkit-tap-highlight-color:rgba(246,139,31,.3);-webkit-font-smoothing:antialiased}#cf-wrapper .cf-section,#cf-wrapper section{background:0;display:block;margin-bottom:2em;margin-top:2em}#cf-wrapper .cf-wrapper{margin-left:auto;margin-right:auto;width:90%}#cf-wrapper .cf-columns{display:block;list-style:none;padding:0;width:100%}#cf-wrapper .cf-columns img,#cf-wrapper .cf-columns input,#cf-wrapper .cf-columns object,#cf-wrapper .cf-columns select,#cf-wrapper .cf-columns textarea{max-width:100%}#cf-wrapper .cf-columns>.cf-column{float:left;padding-bottom:45px;width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}@media screen and (min-width:49.2em){#cf-wrapper .cf-columns.cols-2>.cf-column:nth-child(n+3),#cf-wrapper .cf-columns.cols-3>.cf-column:nth-child(n+4),#cf-wrapper .cf-columns.cols-4>.cf-column:nth-child(n+3),#cf-wrapper .cf-columns.four>.cf-column:nth-child(n+3),#cf-wrapper .cf-columns.three>.cf-column:nth-child(n+4),#cf-wrapper .cf-columns.two>.cf-column:nth-child(n+3){padding-top:67.5px}#cf-wrapper .cf-columns>.cf-column{padding-bottom:0}#cf-wrapper .cf-columns.cols-2>.cf-column,#cf-wrapper .cf-columns.cols-4>.cf-column,#cf-wrapper .cf-columns.four>.cf-column,#cf-wrapper .cf-columns.two>.cf-column{padding-left:0;padding-right:22.5px;width:50%}#cf-wrapper .cf-columns.cols-2>.cf-column:nth-child(even),#cf-wrapper .cf-columns.cols-4>.cf-column:nth-child(even),#cf-wrapper .cf-columns.four>.cf-column:nth-child(even),#cf-wrapper .cf-columns.two>.cf-column:nth-child(even){padding-left:22.5px;padding-right:0}#cf-wrapper .cf-columns.cols-2>.cf-column:nth-child(odd),#cf-wrapper .cf-columns.cols-4>.cf-column:nth-child(odd),#cf-wrapper .cf-columns.four>.cf-column:nth-child(odd),#cf-wrapper .cf-columns.two>.cf-column:nth-child(odd){clear:left}#cf-wrapper .cf-columns.cols-3>.cf-column,#cf-wrapper .cf-columns.three>.cf-column{padding-left:30px;width:33.3333333333333%}#cf-wrapper .cf-columns.cols-3>.cf-column:first-child,#cf-wrapper .cf-columns.cols-3>.cf-column:nth-child(3n+1),#cf-wrapper .cf-columns.three>.cf-column:first-child,#cf-wrapper .cf-columns.three>.cf-column:nth-child(3n+1){clear:left;padding-left:0;padding-right:30px}#cf-wrapper .cf-columns.cols-3>.cf-column:nth-child(3n+2),#cf-wrapper .cf-columns.three>.cf-column:nth-child(3n+2){padding-left:15px;padding-right:15px}#cf-wrapper .cf-columns.cols-3>.cf-column:nth-child(-n+3),#cf-wrapper .cf-columns.three>.cf-column:nth-child(-n+3){padding-top:0}}@media screen and (min-width:66em){#cf-wrapper .cf-columns>.cf-column{padding-bottom:0}#cf-wrapper .cf-columns.cols-4>.cf-column,#cf-wrapper .cf-columns.four>.cf-column{padding-left:33.75px;width:25%}#cf-wrapper .cf-columns.cols-4>.cf-column:nth-child(odd),#cf-wrapper .cf-columns.four>.cf-column:nth-child(odd){clear:none}#cf-wrapper .cf-columns.cols-4>.cf-column:first-child,#cf-wrapper .cf-columns.cols-4>.cf-column:nth-child(4n+1),#cf-wrapper .cf-columns.four>.cf-column:first-child,#cf-wrapper .cf-columns.four>.cf-column:nth-child(4n+1){clear:left;padding-left:0;padding-right:33.75px}#cf-wrapper .cf-columns.cols-4>.cf-column:nth-child(4n+2),#cf-wrapper .cf-columns.four>.cf-column:nth-child(4n+2){padding-left:11.25px;padding-right:22.5px}#cf-wrapper .cf-columns.cols-4>.cf-column:nth-child(4n+3),#cf-wrapper .cf-columns.four>.cf-column:nth-child(4n+3){padding-left:22.5px;padding-right:11.25px}#cf-wrapper .cf-columns.cols-4>.cf-column:nth-child(n+5),#cf-wrapper .cf-columns.four>.cf-column:nth-child(n+5){padding-top:67.5px}#cf-wrapper .cf-columns.cols-4>.cf-column:nth-child(-n+4),#cf-wrapper .cf-columns.four>.cf-column:nth-child(-n+4){padding-top:0}}#cf-wrapper a{background:0;border:0;color:#2f7bbf;outline:0;text-decoration:none;-webkit-transition:all .15s ease;-moz-transition:all .15s ease;-o-transition:all .15s ease;transition:all .15s ease}#cf-wrapper a:hover{background:0;border:0;color:#f68b1f}#cf-wrapper a:focus{background:0;border:0;color:#62a1d8;outline:0}#cf-wrapper a:active{background:0;border:0;color:#c16508;outline:0}#cf-wrapper h1,#cf-wrapper h2,#cf-wrapper h3,#cf-wrapper h4,#cf-wrapper h5,#cf-wrapper h6,#cf-wrapper p{color:#404040;margin:0;padding:0}#cf-wrapper h1,#cf-wrapper h2,#cf-wrapper h3{font-weight:400}#cf-wrapper h4,#cf-wrapper h5,#cf-wrapper h6,#cf-wrapper strong{font-weight:600}#cf-wrapper h1{font-size:36px;line-height:1.2}#cf-wrapper h2{font-size:30px;line-height:1.3}#cf-wrapper h3{font-size:25px;line-height:1.3}#cf-wrapper h4{font-size:20px;line-height:1.3}#cf-wrapper h5{font-size:15px}#cf-wrapper h6{font-size:13px}#cf-wrapper ol,#cf-wrapper ul{list-style:none;margin-left:3em}#cf-wrapper ul{list-style-type:disc}#cf-wrapper ol{list-style-type:decimal}#cf-wrapper em{font-style:italic}#cf-wrapper .cf-subheadline{color:#999;font-weight:300}#cf-wrapper .cf-text-error{color:#bd2426}#cf-wrapper .cf-text-success{color:#9bca3e}#cf-wrapper ol+h2,#cf-wrapper ol+h3,#cf-wrapper ol+h4,#cf-wrapper ol+h5,#cf-wrapper ol+h6,#cf-wrapper ol+p,#cf-wrapper p+dl,#cf-wrapper p+ol,#cf-wrapper p+p,#cf-wrapper p+table,#cf-wrapper p+ul,#cf-wrapper ul+h2,#cf-wrapper ul+h3,#cf-wrapper ul+h4,#cf-wrapper ul+h5,#cf-wrapper ul+h6,#cf-wrapper ul+p{margin-top:1.5em}#cf-wrapper h1+p,#cf-wrapper p+h1,#cf-wrapper p+h2,#cf-wrapper p+h3,#cf-wrapper p+h4,#cf-wrapper p+h5,#cf-wrapper p+h6{margin-top:1.25em}#cf-wrapper h1+h2,#cf-wrapper h1+h3,#cf-wrapper h2+h3,#cf-wrapper h3+h4,#cf-wrapper h4+h5{margin-top:.25em}#cf-wrapper h2+p{margin-top:1em}#cf-wrapper h1+h4,#cf-wrapper h1+h5,#cf-wrapper h1+h6,#cf-wrapper h2+h4,#cf-wrapper h2+h5,#cf-wrapper h2+h6,#cf-wrapper h3+h5,#cf-wrapper h3+h6,#cf-wrapper h3+p,#cf-wrapper h4+p,#cf-wrapper h5+ol,#cf-wrapper h5+p,#cf-wrapper h5+ul{margin-top:.5em}#cf-wrapper .cf-btn{background-color:transparent;border:1px solid #999;color:#404040;font-size:14px;font-weight:400;line-height:1.2;margin:0;padding:.6em 1.33333em .53333em;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:-moz-inline-stack;display:inline-block;vertical-align:middle;zoom:1;-webkit-border-radius:2px;-moz-border-radius:2px;-ms-border-radius:2px;-o-border-radius:2px;border-radius:2px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:all .2s ease;-moz-transition:all .2s ease;-o-transition:all .2s ease;transition:all .2s ease}#cf-wrapper .cf-btn:hover{background-color:#bfbfbf;border:1px solid #737373;color:#fff}#cf-wrapper .cf-btn:focus{color:inherit;outline:0;-webkit-box-shadow:inset 0 0 4px rgba(0,0,0,.3);-moz-box-shadow:inset 0 0 4px rgba(0,0,0,.3);box-shadow:inset 0 0 4px rgba(0,0,0,.3)}#cf-wrapper .cf-btn.active,#cf-wrapper .cf-btn:active{background-color:#bfbfbf;border:1px solid #404040;color:#272727}#cf-wrapper .cf-btn::-moz-focus-inner{padding:0;border:0}#cf-wrapper .cf-btn .cf-caret{border-top-color:currentColor;margin-left:.25em;margin-top:.18333em}#cf-wrapper .cf-btn-primary{background-color:#2f7bbf;border:1px solid transparent;color:#fff}#cf-wrapper .cf-btn-primary:hover{background-color:#62a1d8;border:1px solid #2f7bbf;color:#fff}#cf-wrapper .cf-btn-primary.active,#cf-wrapper .cf-btn-primary:active,#cf-wrapper .cf-btn-primary:focus{background-color:#62a1d8;border:1px solid #163959;color:#fff}#cf-wrapper .cf-btn-danger,#cf-wrapper .cf-btn-error,#cf-wrapper .cf-btn-important{background-color:#bd2426;border-color:transparent;color:#fff}#cf-wrapper .cf-btn-danger:hover,#cf-wrapper .cf-btn-error:hover,#cf-wrapper .cf-btn-important:hover{background-color:#de5052;border-color:#bd2426;color:#fff}#cf-wrapper .cf-btn-danger.active,#cf-wrapper .cf-btn-danger:active,#cf-wrapper .cf-btn-danger:focus,#cf-wrapper .cf-btn-error.active,#cf-wrapper .cf-btn-error:active,#cf-wrapper .cf-btn-error:focus,#cf-wrapper .cf-btn-important.active,#cf-wrapper .cf-btn-important:active,#cf-wrapper .cf-btn-important:focus{background-color:#de5052;border-color:#521010;color:#fff}#cf-wrapper .cf-btn-accept,#cf-wrapper .cf-btn-success{background-color:#9bca3e;border:1px solid transparent;color:#fff}#cf-wrapper .cf-btn-accept:hover,#cf-wrapper .cf-btn-success:hover{background-color:#bada7a;border:1px solid #9bca3e;color:#fff}#cf-wrapper .active.cf-btn-accept,#cf-wrapper .cf-btn-accept:active,#cf-wrapper .cf-btn-accept:focus,#cf-wrapper .cf-btn-success.active,#cf-wrapper .cf-btn-success:active,#cf-wrapper .cf-btn-success:focus{background-color:#bada7a;border:1px solid #516b1d;color:#fff}#cf-wrapper .cf-btn-accept{color:transparent;font-size:0;height:36.38px;overflow:hidden;position:relative;text-indent:0;width:36.38px;white-space:nowrap}#cf-wrapper .cf-btn-accept span{background:0 -807px;display:block;font-size:1.75em;height:20px;left:50%;line-height:0;margin-left:-10px;margin-top:-10px;position:absolute;speak:none;top:50%;width:20px}#cf-wrapper input,#cf-wrapper select,#cf-wrapper textarea{background:#fff!important;border:1px solid #999!important;color:#404040!important;font-size:.86667em!important;line-height:1.24!important;margin:0 0 1em!important;max-width:100%!important;outline:0!important;padding:.45em .75em!important;vertical-align:middle!important;display:-moz-inline-stack;display:inline-block;zoom:1;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:all .2s ease;-moz-transition:all .2s ease;-o-transition:all .2s ease;transition:all .2s ease;-webkit-border-radius:2px;-moz-border-radius:2px;-ms-border-radius:2px;-o-border-radius:2px;border-radius:2px}#cf-wrapper input:hover,#cf-wrapper select:hover,#cf-wrapper textarea:hover{border-color:gray}#cf-wrapper input:focus,#cf-wrapper select:focus,#cf-wrapper textarea:focus{border-color:#2f7bbf;outline:0;-webkit-box-shadow:0 0 8px rgba(47,123,191,.5);-moz-box-shadow:0 0 8px rgba(47,123,191,.5);box-shadow:0 0 8px rgba(47,123,191,.5)}#cf-wrapper fieldset{width:100%}#cf-wrapper label{display:block;font-size:13px;margin-bottom:.38333em}#cf-wrapper .cf-form-stacked .select2-container,#cf-wrapper .cf-form-stacked input,#cf-wrapper .cf-form-stacked select,#cf-wrapper .cf-form-stacked textarea{display:block;width:100%}#cf-wrapper .cf-form-stacked input[type=checkbox],#cf-wrapper .cf-form-stacked input[type=button],#cf-wrapper .cf-form-stacked input[type=submit]{display:-moz-inline-stack;display:inline-block;vertical-align:middle;zoom:1;width:auto}#cf-wrapper .cf-form-actions{text-align:right}#cf-wrapper .cf-alert{background-color:#f9b169;border:1px solid #904b06;color:#404040;font-size:13px;padding:7.5px 15px;position:relative;vertical-align:middle;-webkit-border-radius:2px;-moz-border-radius:2px;-ms-border-radius:2px;-o-border-radius:2px;border-radius:2px}#cf-wrapper .cf-alert:empty{display:none}#cf-wrapper .cf-alert .cf-close{border:1px solid transparent;color:inherit;font-size:18.75px;line-height:1;padding:0;position:relative;right:-18.75px;top:0}#cf-wrapper .cf-alert .cf-close:hover{background-color:transparent;border-color:currentColor;color:inherit}#cf-wrapper .cf-alert-danger,#cf-wrapper .cf-alert-error{background-color:#de5052;border-color:#521010;color:#fff}#cf-wrapper .cf-alert-success{background-color:#bada7a;border-color:#516b1d;color:#516b1d}#cf-wrapper .cf-alert-warning{background-color:#f9b169;border-color:#904b06;color:#404040}#cf-wrapper .cf-alert-info{background-color:#62a1d8;border-color:#163959;color:#163959}#cf-wrapper .cf-alert-nonessential{background-color:#ebebeb;border-color:#999;color:#404040}#cf-wrapper .cf-icon-exclamation-sign{background:center no-repeat;height:54px;width:54px;display:-moz-inline-stack;display:inline-block;vertical-align:middle;zoom:1}#cf-wrapper h1 .cf-icon-exclamation-sign{margin-top:-10px}#cf-wrapper #cf-error-banner{background-color:#fff;border-bottom:3px solid #f68b1f;padding:15px 15px 20px;position:relative;z-index:999999999;-webkit-box-shadow:0 2px 8px rgba(0,0,0,.2);-moz-box-shadow:0 2px 8px rgba(0,0,0,.2);box-shadow:0 2px 8px rgba(0,0,0,.2)}#cf-wrapper #cf-error-banner h4,#cf-wrapper #cf-error-banner p{display:-moz-inline-stack;display:inline-block;vertical-align:bottom;zoom:1}#cf-wrapper #cf-error-banner h4{color:#2f7bbf;font-weight:400;font-size:20px;line-height:1;vertical-align:baseline}#cf-wrapper #cf-error-banner .cf-error-actions{margin-bottom:10px;text-align:center;width:100%}#cf-wrapper #cf-error-banner .cf-error-actions a{display:-moz-inline-stack;display:inline-block;vertical-align:middle;zoom:1}#cf-wrapper #cf-error-banner .cf-error-actions a+a{margin-left:10px}#cf-wrapper #cf-error-banner .cf-error-actions .cf-btn-accept,#cf-wrapper #cf-error-banner .cf-error-actions .cf-btn-success{color:#fff}#cf-wrapper #cf-error-banner .error-header-desc{text-align:left}#cf-wrapper #cf-error-banner .cf-close{color:#999;cursor:pointer;display:inline-block;font-size:34.5px;float:none;font-weight:700;height:22.5px;line-height:.6;overflow:hidden;position:absolute;right:20px;top:25px;text-indent:200%;width:22.5px}#cf-wrapper #cf-error-banner .cf-close:hover{color:gray}#cf-wrapper #cf-error-banner .cf-close:before{content:'\00D7';left:0;height:100%;position:absolute;text-align:center;text-indent:0;top:0;width:100%}#cf-inline-error-wrapper{-webkit-box-shadow:0 2px 10px rgba(0,0,0,.5);-moz-box-shadow:0 2px 10px rgba(0,0,0,.5);box-shadow:0 2px 10px rgba(0,0,0,.5)}#cf-wrapper #cf-error-details{background:#fff}#cf-wrapper #cf-error-details .cf-error-overview{padding:25px 0 0}#cf-wrapper #cf-error-details .cf-error-overview h1,#cf-wrapper #cf-error-details .cf-error-overview h2{font-weight:300}#cf-wrapper #cf-error-details .cf-error-overview h2{margin-top:0}#cf-wrapper #cf-error-details .cf-highlight{background:#ebebeb;overflow-x:hidden;padding:30px 0;background-image:-webkit-gradient(linear,50% 0,50% 100%,color-stop(0,#dedede),color-stop(3%,#ebebeb),color-stop(97%,#ebebeb),color-stop(100%,#dedede));background-image:-webkit-linear-gradient(top,#dedede 0,#ebebeb 3%,#ebebeb 97%,#dedede 100%);background-image:-moz-linear-gradient(top,#dedede 0,#ebebeb 3%,#ebebeb 97%,#dedede 100%);background-image:-o-linear-gradient(top,#dedede 0,#ebebeb 3%,#ebebeb 97%,#dedede 100%);background-image:linear-gradient(top,#dedede 0,#ebebeb 3%,#ebebeb 97%,#dedede 100%)}#cf-wrapper #cf-error-details .cf-highlight h3{color:#999;font-weight:300}#cf-wrapper #cf-error-details .cf-highlight .cf-column:last-child{padding-bottom:0}#cf-wrapper #cf-error-details .cf-highlight .cf-highlight-inverse{background-color:#fff;padding:15px;-webkit-border-radius:2px;-moz-border-radius:2px;-ms-border-radius:2px;-o-border-radius:2px;border-radius:2px}#cf-wrapper #cf-error-details .cf-status-display h3{margin-top:.5em}#cf-wrapper #cf-error-details .cf-status-label{color:#9bca3e;font-size:1.46667em}#cf-wrapper #cf-error-details .cf-status-label,#cf-wrapper #cf-error-details .cf-status-name{display:inline}#cf-wrapper #cf-error-details .cf-status-item{display:block;position:relative;text-align:left}#cf-wrapper #cf-error-details .cf-status-item,#cf-wrapper #cf-error-details .cf-status-item.cf-column{padding-bottom:1.5em}#cf-wrapper #cf-error-details .cf-status-item.cf-error-source{display:block;text-align:center}#cf-wrapper #cf-error-details .cf-status-item.cf-error-source:after{bottom:-60px;content:'';display:none;border-bottom:18px solid #fff;border-left:20px solid transparent;border-right:20px solid transparent;height:0;left:50%;margin-left:-9px;position:absolute;right:50%;width:0}#cf-wrapper #cf-error-details .cf-status-item+.cf-status-item{border-top:1px solid #dedede;padding-top:1.5em}#cf-wrapper #cf-error-details .cf-status-item+.cf-status-item:before{background:0 -734px no-repeat;content:'';display:block;left:0;position:absolute;top:25.67px}#cf-wrapper #cf-error-details .cf-error-source .cf-icon-error-container{height:85px;margin-bottom:2.5em}#cf-wrapper #cf-error-details .cf-error-source .cf-status-label{color:#bd2426}#cf-wrapper #cf-error-details .cf-error-source .cf-icon{display:block}#cf-wrapper #cf-error-details .cf-error-source .cf-icon-status{bottom:-10px;left:50%;top:auto;right:auto}#cf-wrapper #cf-error-details .cf-error-source .cf-status-label,#cf-wrapper #cf-error-details .cf-error-source .cf-status-name{display:block}#cf-wrapper #cf-error-details .cf-icon-error-container{height:auto;position:relative}#cf-wrapper #cf-error-details .cf-icon-status{display:block;margin-left:-24px;position:absolute;top:0;right:0}#cf-wrapper #cf-error-details .cf-icon{display:none;margin:0 auto}#cf-wrapper #cf-error-details .cf-status-desc{display:block;height:22.5px;overflow:hidden;text-overflow:ellipsis;width:100%;white-space:nowrap}#cf-wrapper #cf-error-details .cf-status-desc:empty{display:none}#cf-wrapper #cf-error-details .cf-error-footer{padding:1.33333em 0;border-top:1px #ebebeb solid;text-align:center}#cf-wrapper #cf-error-details .cf-error-footer p{font-size:13px}#cf-wrapper #cf-error-details .cf-error-footer select{margin:0!important}#cf-wrapper #cf-error-details .cf-footer-item{display:block;margin-bottom:5px;text-align:left}#cf-wrapper #cf-error-details .cf-footer-separator{display:none}#cf-wrapper #cf-error-details .cf-captcha-info{margin-bottom:10px;position:relative;text-align:center}#cf-wrapper #cf-error-details .cf-captcha-image{height:57px;width:300px}#cf-wrapper #cf-error-details .cf-captcha-actions{margin-top:15px}#cf-wrapper #cf-error-details .cf-captcha-actions a{font-size:0;height:36.38px;overflow:hidden;padding-left:1.2em;padding-right:1.2em;position:relative;text-indent:-9999px;width:36.38px;white-space:nowrap}#cf-wrapper #cf-error-details .cf-captcha-actions a span{background:no-repeat;display:block;height:20px;left:50%;line-height:0;margin-left:-10px;margin-top:-10px;position:absolute;speak:none;top:50%;width:20px}#cf-wrapper #cf-error-details .cf-captcha-actions a.cf-icon-refresh span{background-position:0 -787px}#cf-wrapper #cf-error-details .cf-captcha-actions a.cf-icon-announce span{background-position:0 -767px}#cf-wrapper #cf-error-details .cf-captcha-actions a.cf-icon-question span{background-position:0 -827px}#cf-wrapper #cf-error-details .cf-screenshot-container{background:no-repeat #fff;max-height:400px;max-width:100%;overflow:hidden;padding-top:53px;width:960px;-webkit-border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;-ms-border-radius:5px 5px 0 0;-o-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0}#cf-wrapper #cf-error-details .cf-screenshot-container .cf-no-screenshot{background:0 -175px;display:block;height:158px;left:25%;margin-top:-79px;overflow:hidden;position:relative;top:50%;width:178px}#cf-wrapper #cf-error-details .cf-captcha-container .cf-screenshot-container,#cf-wrapper #cf-error-details .cf-captcha-container .cf-screenshot-container img,#recaptcha-widget .cf-alert,#recaptcha-widget .recaptcha_only_if_audio,.cf-cookie-error{display:none}#cf-wrapper #cf-error-details .cf-screenshot-container .cf-no-screenshot.error{background:no-repeat;height:175px}#cf-wrapper #cf-error-details .cf-screenshot-container.cf-screenshot-full .cf-no-screenshot{left:50%;margin-left:-89px}.cf-captcha-info iframe{max-width:100%}#cf-wrapper .cf-icon,#cf-wrapper .cf-icon-status{background:no-repeat}#cf-wrapper .cf-icon-ok{background-position:0 -485px;height:48px;width:48px}#cf-wrapper .cf-icon-error{background-position:0 -533px;height:48px;width:48px}#cf-wrapper .cf-icon-browser{background-position:0 -581px;height:80px;width:100px}#cf-wrapper .cf-icon-cloud{background-position:0 -333px;height:77px;width:151px}#cf-wrapper .cf-icon-server{background-position:0 -410px;height:75px;width:95px}#cf-wrapper .cf-icon-railgun{background-position:0 -848px;height:81px;width:95px}#cf-wrapper .cf-caret{border:.33333em solid transparent;border-top-color:inherit;content:"";height:0;width:0;display:-moz-inline-stack;display:inline-block;vertical-align:middle;zoom:1}@media screen and (min-width:49.2em){#cf-wrapper #cf-error-details .cf-status-desc:empty,#cf-wrapper #cf-error-details .cf-status-item .cf-icon,#cf-wrapper #cf-error-details .cf-status-item.cf-error-source:after,#cf-wrapper #cf-error-details .cf-status-label,#cf-wrapper #cf-error-details .cf-status-name{display:block}#cf-wrapper .cf-wrapper{width:708px}#cf-wrapper #cf-error-banner{padding:20px 20px 25px}#cf-wrapper #cf-error-banner .cf-error-actions{margin-bottom:15px}#cf-wrapper #cf-error-banner .cf-error-header-desc h4{margin-right:.5em}#cf-wrapper #cf-error-details h1{font-size:4em}#cf-wrapper #cf-error-details .cf-error-overview{padding-top:2.33333em}#cf-wrapper #cf-error-details .cf-highlight{padding:4em 0}#cf-wrapper #cf-error-details .cf-status-item{text-align:center}#cf-wrapper #cf-error-details .cf-status-item,#cf-wrapper #cf-error-details .cf-status-item.cf-column{padding-bottom:0}#cf-wrapper #cf-error-details .cf-status-item+.cf-status-item{border:0;padding-top:0}#cf-wrapper #cf-error-details .cf-status-item+.cf-status-item:before{background-position:0 -544px;height:24.75px;margin-left:-37.5px;width:75px;-webkit-background-size:131.25px auto;-moz-background-size:131.25px auto;-o-background-size:131.25px auto;background-size:131.25px auto}#cf-wrapper #cf-error-details .cf-icon-error-container{height:85px;margin-bottom:2.5em}#cf-wrapper #cf-error-details .cf-icon-status{bottom:-10px;left:50%;top:auto;right:auto}#cf-wrapper #cf-error-details .cf-error-footer{padding:2.66667em 0}#cf-wrapper #cf-error-details .cf-footer-item,#cf-wrapper #cf-error-details .cf-footer-separator{display:-moz-inline-stack;display:inline-block;vertical-align:baseline;zoom:1}#cf-wrapper #cf-error-details .cf-footer-separator{padding:0 .25em}#cf-wrapper #cf-error-details .cf-status-item.cloudflare-status:before{margin-left:-50px}#cf-wrapper #cf-error-details .cf-status-item.cloudflare-status+.status-item:before{margin-left:-25px}#cf-wrapper #cf-error-details .cf-screenshot-container{height:400px;margin-bottom:-4em;max-width:none}#cf-wrapper #cf-error-details .cf-captcha-container .cf-screenshot-container,#cf-wrapper #cf-error-details .cf-captcha-container .cf-screenshot-container img{display:block}}@media screen and (min-width:66em){#cf-wrapper .cf-wrapper{width:960px}#cf-wrapper #cf-error-banner .cf-close{position:relative;right:auto;top:auto}#cf-wrapper #cf-error-banner .cf-details{white-space:nowrap}#cf-wrapper #cf-error-banner .cf-details-link{padding-right:.5em}#cf-wrapper #cf-error-banner .cf-error-actions{float:right;margin-bottom:0;text-align:left;width:auto}#cf-wrapper #cf-error-details .cf-status-item+.cf-status-item:before{background-position:0 -734px;height:33px;margin-left:-50px;width:100px;-webkit-background-size:auto;-moz-background-size:auto;-o-background-size:auto;background-size:auto}#cf-wrapper #cf-error-details .cf-status-item.cf-cloudflare-status:before{margin-left:-66.67px}#cf-wrapper #cf-error-details .cf-status-item.cf-cloudflare-status+.cf-status-item:before{margin-left:-37.5px}#cf-wrapper #cf-error-details .cf-captcha-image{float:left}#cf-wrapper #cf-error-details .cf-captcha-actions{position:absolute;top:0;right:0}}.no-js #cf-wrapper .js-only{display:none}#cf-wrapper #cf-error-details .heading-ray-id{font-family:monaco,courier,monospace;font-size:15px;white-space:nowrap}</style>
- </head>
- <body>
- <div id="cf-wrapper">
- <div id="cf-error-details" class="cf-error-details-wrapper">
- <div class="cf-wrapper cf-header cf-error-overview">
- <h1>One more step</h1>
- <h2 class="cf-subheadline"><span>Please complete the security check to access</span> YOUR.CAMPAIGN.WEBSITE</h2>
- </div>
- <!-- /.header -->
- <div class="cf-section cf-highlight cf-captcha-container">
- <div class="cf-wrapper">
- <div class="cf-columns two">
- <div class="cf-column">
- <div class="cf-highlight-inverse cf-form-stacked" onclick="alert('Cannot contact reCAPTCHA. Check your connection and try again');location.reload()">
- <img src="data:image/jpeg;base64,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">
- </div>
- </div>
- </div>
- <!-- /.columns -->
- </div>
- </div>
- <!-- /.captcha-container -->
- <div class="cf-section cf-wrapper">
- <div class="cf-columns two">
- <div class="cf-column">
- <h2>Why do I have to complete a CAPTCHA?</h2>
- <p>WRITE SOMETHING HERE NOW!</p>
- </div>
- <div class="cf-column">
- <h2>What can I do to prevent this in the future?</h2>
- <p>WRITE SOMETHING HERE NOW!</p>
- <p>WRITE SOMETHING HERE NOW!</p>
- <p> WRITE SOMETHING HERE NOW!</p>
- </div>
- </div>
- </div>
- <!-- /.section -->
- <div class="cf-error-footer cf-wrapper">
- <p>
- <span class="cf-footer-item">Cloudflare Ray ID: <strong>RANDIDAREA</strong></span>
- <span class="cf-footer-separator">&bull;</span>
- <span class="cf-footer-item"><span>Your IP</span>: 999.999.999.999</span>
- <span class="cf-footer-separator">&bull;</span>
- <span class="cf-footer-item"><span>Performance &amp; security by</span> <a href="https://www.cloudflare.com/?fuckCloudflare=true" id="brand_link" target="_blank">Cloudflare</a></span>
- </p>
- </div>
- <!-- /.error-footer -->
- </div>
- <!-- /#cf-error-details -->
- </div>
- <!-- /#cf-wrapper -->
- </body>
-</html> \ No newline at end of file
diff --git a/oldrep/tool/cloudflare_one_more_step.php b/oldrep/tool/cloudflare_one_more_step.php
deleted file mode 100644
index ad8cd801..00000000
--- a/oldrep/tool/cloudflare_one_more_step.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-if (I_Love_Cloudflare() || I_Come_From_Cloudflare()) {
- echo(file_get_contents('cloudflare.onemorestep.template.html'));
- die;
-}
diff --git a/oldrep/tool/example.mdn_basedom_list.txt b/oldrep/tool/example.mdn_basedom_list.txt
deleted file mode 100644
index f36500d6..00000000
--- a/oldrep/tool/example.mdn_basedom_list.txt
+++ /dev/null
@@ -1,3060 +0,0 @@
-# Mastodon Preloma Domain
-# !! This is just a domain list.
-# !! This is NOT Cloudflare-only NOR Cloudflare-free server list!
-# !! You should read "getCFDomainFromList.php".
-# !!
-076.ne.jp
-0j0.jp
-0ko.me
-101010.pl
-1312.media
-18kink.com
-1929.com
-1d4.us
-1w6.org
-2mb.social
-2ndamendment.social
-2soc.net
-3615yunohost.fr
-39sounds.net
-3bk.jp
-3dots.lv
-3ends.info
-3x1t.eu
-440hz.social
-48645.tk
-4estate.media
-4eva.online
-551.social
-57n.org
-64.re
-6q0.net
-7144.party
-71m.us
-73k.us
-758.fm
-7thmagic.net
-850mb.net
-8mitsu.net
-9177xe.tokyo
-9mmtylenol.me
-9net.org
-9uelle.jp
-a-tak.com
-a.nom.pl
-a11y.info
-a2mi.social
-a3.pm
-aana.site
-aardlark.co
-aaronbsmith.com
-aaronpk.com
-abcang.net
-abdl.link
-abdl.social
-abeardedqueer.com
-abhlach.ie
-abigo.de
-abld.info
-abortu.com
-about-bitcoin.com
-absturztau.be
-abunchtell.com
-abyss.fun
-accela.online
-acg.mn
-acg.social
-adaizen.com
-adhoc.systems
-adlerweb.info
-adminit.cz
-adney.land
-adorable.space
-adthr.ee
-adwb.io
-adyxax.org
-aekrylov.me
-aetheri.ca
-afn.social
-afromunkee.xyz
-afu.social
-aidannyquist.com
-aire.ml
-airen-no-jikken.icu
-ajin.la
-akabe.co
-akanechan.love
-aki-null.net
-akionux.net
-akitadon.com
-albertj.nl
-albin.social
-aleph.land
-alexanderweb.de
-alexkeating.me
-alfter.us
-alglab.net
-algonoise.social
-alicia.ne.jp
-alid.pw
-alienlebarge.ch
-alixrossi.corsica
-all.de
-allnutt.net
-alnair.blue
-alohaloa.com
-altelectron.org.uk
-alterna-cloud.com
-alternanet.fr
-alternativebit.fr
-ama.ne.jp
-amanzi.nz
-amemiya.work
-americassweethe.art
-amicale.net
-amicidelbaretto.org
-amity.zone
-amnz.jp
-amplifie.red
-an6.us
-anarchism.online
-anarchism.space
-ancel.io
-ancientoch.info
-andersen.social
-anfora.xyz
-angraecumnote.net
-angristan.xyz
-angry.im
-angrybeanie.com
-anikore.xin
-anima-mystica.org
-animal.business
-animal.church
-animalliberation.social
-anime.website
-animeisgay.com
-anjara.eu
-anniqa.com
-another-guild.com
-anoxinon.de
-anqou.net
-anti-globalism.org
-anticapitalist.party
-antifa.gmbh
-antopie.org
-apdu.fr
-apertron.com
-apkfission.net
-appdot.net
-apreslanu.it
-april.org
-aqeeliz.com
-aqn.jp
-aqr.af
-aqraf.tokyo
-aquilenet.fr
-ar.al
-archie.party
-archous.net
-aria.company
-aria.dog
-arith.jp
-arjoranta.fi
-arkaic.com
-arkham.cafe
-arktos.social
-arkwoodpond.info
-arnip.org
-arqadium.com
-artalley.porn
-artchair.net
-artoot.xyz
-arukascloud.io
-ascraeus.org
-ashleystone.me.uk
-asmodeus.tokyo
-asonix.dog
-asrun.eu
-assortedflotsam.com
-asterism.xyz
-astrolovy.com
-at7s.me
-atcurio.com
-ateliershiori.moe
-atikoro.net
-atilla.im
-atroxen.com
-atx.social
-atypique.net
-au2pb.net
-aufdeine.art
-august-don.site
-auntiefasupply.co
-auri.ga
-aus.social
-ausglam.space
-auspol.cafe
-auttaja.io
-avareborn.de
-aventer.biz
-avidol.jp
-avoh.club
-awful.club
-awoo.pub
-awoo.space
-awoonet.org
-awooo.club
-awswan.com
-ax9.eu
-aximov.net
-az-men.com
-azarakko.net
-azuki-zenzai.net
-azurity.onl
-b-shock.org
-b101.me
-b3ta.social
-b612.icu
-b612.me
-babelut.be
-babuu.club
-babycastles.com
-babymetal.party
-backyard.cloud
-baconpotato.net
-bahnhof.cz
-bakusocial.com
-balafon.social
-ballpointcarrot.net
-banana.dog
-bananachips.club
-bangdream.space
-baraag.net
-barcamp.social
-barippi.com
-bark.house
-barkshark.tk
-bashell.com
-basstdn.jp
-baty.net
-bau-ha.us
-baucum.me
-baud.jp
-bbbdn.jp
-beach.city
-beamy-lake.social
-bear.community
-beep.computer
-beepboop.one
-beeping.town
-beerfactory.org
-beeslink.com
-begbie.party
-benborges.xyz
-benhutchings.com
-bennyp.org
-benpro.fr
-benward.social
-berezowski.de
-berkeley.edu
-berries.space
-bert.org
-bertel-numerique.re
-beudot07.net
-bghost.xyz
-bgme.me
-bibeogaem.zone
-bichomen.com
-bicyclemstdn.jp
-bida.im
-bigbox.red
-bigdickisbackintown.futbol
-bigshoulders.city
-bikeshed.party
-bilboed.tech
-bildung.social
-billyb.org
-binatang.nl
-binchan.xyz
-binfalse.de
-binfish.jp
-bionicbeer.com
-birb.haus
-birb.site
-bird.band
-birdriver.org
-birdsite.link
-bisby.xyz
-biscuit.town
-bitbank.cc
-bitcast.info
-bitcoinhackers.org
-bitpage.de
-bittoco.pw
-biwakodon.com
-blackice.online
-blacksketch.com
-blaise.ca
-blessedgeeks.org
-blimps.xyz
-blob.coffee
-blockriot.com
-blueadair.net
-bluecore.net
-bluex.im
-blurts.net
-boardgames.social
-bobcall.me
-bobek.cz
-boberts.me
-bof.space
-bofa.lol
-boitam.eu
-bona.space
-bonifacelabs.ca
-bonn.social
-bonzoesc.net
-bookbeezhive.com
-booktoot.club
-bookwor.ms
-boony.space
-boop.link
-boop.town
-boosterfive.com
-bortzmeyer.fr
-boss.taxi
-botdon.net
-botsin.space
-bovid.space
-boxp.tk
-boyslove.jp
-bradsease.com
-braintube.com
-brainvom.it
-brap.party
-brawner.social
-brcal.cz
-brechanegra.net
-breizh.me
-brennanbenkert.com
-bricin.net
-brick.camp
-brignell.co
-brined.fish
-brocks.social
-brokenbydesign.org
-brrrt.eu
-bruder.space
-bruniau.net
-bsd.moe
-bsd.network
-bubbleguts.social
-buckket.org
-buffalomesh.net
-bugs.social
-bullgit.party
-bulubulu.club
-bunny.blue
-bunt.social
-butash.net
-butterknifeestates.com
-butts.team
-bytemark.social
-c-cha.cc
-c2bdon.net
-c4103.com
-calc.news
-camixo.com
-canecreekstudio.org
-canine.cloud
-canislupus.im
-canned-death.us
-canor.kr
-cantos.social
-cap.moe
-capitalism.party
-captainark.net
-carbontwelve.jp
-cardina1.red
-care-tags.org
-carfulhony.com
-cartapus.eu
-cartodon.com
-caspar.social
-cat-from-outer.space
-cat.social
-cat6.network
-catboy.cafe
-catdon.life
-catgirl.science
-catgirl.space
-catgirl.zone
-catgirls.science
-catgirlsin.space
-catgram.jp
-cattesandbuttes.com
-cawfee.club
-cdstm.ch
-ced117.net
-ceilidh.space
-cemea.org
-centiworks.com
-cercle.jp
-cetialphafive.com
-cga.graphics
-cgx.me
-chabant.social
-chablis.social
-chaos.social
-chaosfield.at
-chapril.org
-charleshaws.com
-charmed.social
-chatstodon.com
-chatstorm.io
-cheerful.social
-chelsealaurel.com
-chemtrail.airforce
-chickenfan.club
-chicoca.net
-chimerae.org
-chinapedia.org
-chinwag.org
-chirno.tech
-chirpi.de
-chitter.xyz
-chocot.art
-chomp.life
-chorus.space
-chotto.moe
-chown.me
-chrisbeckstrom.com
-chrisbol.nl
-chromabits.com
-chromic.org
-cigarcabin.com
-cipherbliss.com
-cironnup.com
-cisti.org
-cityfellas.com
-clacks.link
-claris.cf
-claristdon.net
-click.ba.it
-clonewars.vet
-cloudfrancois.fr
-cloudns.cc
-cloutfla.re
-cmdr.social
-cmpwn.com
-cmx.im
-cncs.io
-cnet.site
-co-mastdn.ga
-coales.co
-cocoa.moe
-cocoronavi.com
-cocoronavi.net
-code4lib.social
-codingfield.com
-cofe.moe
-cofe.space
-coletivos.org
-colorid.es
-comfy.moe
-comics.town
-comicscamp.club
-comm.cx
-comm.network
-communia.org
-communist.accountant
-computerfairi.es
-computerfox.xyz
-confederac.io
-conquerworld.fr
-conradkramer.com
-consumium.org
-content.town
-cookdon.com
-cooleysekula.net
-corebreach.com
-cornichon.me
-corrigan.moe
-cosine.online
-cosmicanimal.jp
-cosplayer.com
-couchet.org
-counter.social
-coyote.social
-cpper.xyz
-craigstewart.de
-crakac.com
-crazynewworld.net
-crazynoisybizarre.town
-crazypanda.fr
-cre8thoughts.com
-creativecommons.org
-crime.group
-crinklefur.club
-crow.haus
-crows.tokyo
-crunchywatch.uk
-cryptids.online
-crypto-don.net
-crypto.church
-cryptodon.tokyo
-cryptodont.io
-crystal-lang.social
-csswg.org
-cthonic.club
-ctrlsocial.org
-ctseuro.com
-cucked.me
-cuezakuisgodofthe.world
-culturewar.us
-curmudgeon.cafe
-cursed.technology
-cute2d.xyz
-cutie-pies.club
-cyano.at
-cyber-tribal.com
-cybercoin.network
-cybergay.space
-cyberia.social
-cyberiacafe.club
-cybernetic.family
-cybr.es
-cybre.club
-cybre.ninja
-cybre.space
-cygnan.com
-cypherpunk.observer
-cypv4.com
-d.foundation
-d20hero.club
-dachary.org
-daemons.it
-daffodil-11.org
-daikoku-ya.org
-daizhige.org
-dancingbanana.party
-darkest-timeline.com
-darkpeak.org
-dasoran.net
-dat.cloud
-datamol.org
-davidpeach.co.uk
-dbatley.com
-dcu.ie
-ddns.net
-ddnss.org
-deadinsi.de
-deadsuperhero.com
-decepticons.eu.org
-decisiveliberty.news
-deeloves.me
-delbertbeta.cc
-delepine.info
-deleteyourfacebook.today
-delire.party
-deluxeplush.com
-demouliere.eu
-denkbrettl.org
-depertat.net
-dereferenced.org
-derguhl.de
-des-blogueurs.org
-design.systems
-desord.re
-desvox.es
-deutrino.net
-dev-wiki.de
-dev.host
-devanooga.com
-devfs.xyz
-device5.co.uk
-devosi.org
-dewp.space
-dgm.pw
-diaspodon.fr
-dice.camp
-dickgirlon.top
-dickshow.social
-didit.site
-die-partei-reutlingen.de
-die-partei.social
-diego.codes
-digforfire.org
-digineko.jp
-digipres.club
-digitalog.it
-diglateam3.com
-dip.jp
-directdon.jp
-dirtyoldmensclub.com
-diskseven.com
-dispersio.us
-displaced.social
-dissem.ch
-distsn.org
-divad.xyz
-dizl.de
-djanzu.tokyo
-djs.social
-dlun.ch
-dmrty.fr
-dnlsd.nom.es
-dns-cloud.net
-dobbs.town
-dogbottom.com
-dokasen.com
-doll.social
-donabeneko.jp
-donken.org
-donokoanoko.jp
-donphan.social
-donte.com.br
-donteatanimals.org
-doomicile.de
-dotdon.jp
-dotgr.id
-dotopia.dk
-downey.net
-dpost.jp
-draboros.net
-dracos.co.uk
-dragon.garden
-dragon.style
-dragonscave.space
-dre.casa
-dregin.com
-dresden.network
-drg.nz
-drif.moe
-drillion.net
-droogers.eu
-dropbear.xyz
-drumbum42.com
-drycat.fr
-dsci4.xyz
-dsmouse.net
-dtp-mstdn.jp
-duck.haus
-duckchat.me
-duckdns.org
-duk.space
-durel.org
-dustinwilson.com
-dyke.space
-dynlinux.io
-dynu.net
-dystopian.fun
-earfolds.com
-eastback.co.jp
-easydns.ca
-eay.social
-ebildungslabor.social
-ecodigital.social
-ecosteader.com
-ecurie.social
-eddyssofa.com
-edge4cube.work
-edgecats.network
-edolas.world
-edvgarbe.de
-efdn.club
-eggp.me
-ehe.ovh
-ehret.me
-eigadon.net
-eigenellies.space
-eigenmagic.net
-eizodon.jp
-ekesete.net
-ekimemo.info
-elao.com
-elb.cloud
-elbmatsch.de
-eldritch.cafe
-electriceye.info
-elefant.social
-elekk.xyz
-elephant.bike
-eletusk.club
-elict.net
-eliotberriot.com
-elizafox.space
-elle.systems
-elomatreb.eu
-elouworld.org
-elsacodelcoco.net
-elsdon.me
-elvish.cafe
-emacsen.net
-emastodon.com
-embassy.social
-embracing.space
-emo.world
-emory.coffee
-emptyair.space
-engineered.space
-epenguin.com
-ephemeral-arcadia.jp
-epic.haus
-epic.net
-epiktistes.com
-equestria.social
-ericbeckers.nl
-eris.social
-ernix.jp
-ertona.net
-esadhar.net
-esprit-fablab.org
-espuppet.com
-esquinafeliz.com
-etalab.gouv.fr
-etbus.ch
-eternawings.com
-eupublic.social
-euzilla.de
-ev-db.de
-evolix.org
-ewcmi.org
-exan.tech
-exclaimindustries.net
-exdc.net
-exited.eu
-exohunt.space
-expectnomore.net
-explosion.party
-expshift.com
-extremelyonline.website
-f-si.org
-f72u.net
-fab-l3.org
-fab.industries
-facil.services
-fairground.moe
-fairilu.net
-faisal.ec
-faisal.social
-faithcollapsing.com
-fami.ga
-familie-tux.de
-famille-link.fr
-fancy.org.uk
-fandom-mastodon.com
-fandom.ink
-fanfare.horse
-farend.co.jp
-fdlibre.eu
-feather.city
-federado.es
-federati.net
-fedi.be
-fedi.io
-fedi.me
-fedive.rs
-fediverse.network
-fedpi.de
-feed.casa
-feedbackloo.pw
-feedseer.com
-feeld.community
-felesitas.cloud
-fellies.social
-femme.energy
-ferrovipath.es
-ferrus.net
-fetishdon.tk
-ff14-mstdn.xyz
-ffm.social
-ffue.eu
-ffxiv-mastodon.com
-fgochiho.vip
-fikaverse.club
-fimidi.com
-finalesocial.com
-finotto.social
-firebrand.ml
-firedragonstudios.com
-fissionator.com
-fitopen.org
-fiveop.de
-fkpk.org
-fla.red
-flabs.org
-flagada.org
-floss.social
-flownative.social
-flr.social
-fluffel.io
-flussence.eu
-flyingcube.tech
-fnordon.de
-foederati.dk
-fono.jp
-foo.sx
-ford.id.au
-foresdon.jp
-fortressofdoom.me
-fossforward.com
-fossgang.org
-fosstodon.org
-foucry.net
-fourthestate.social
-foxesare.sexy
-foxfam.club
-foxiepa.ws
-framapiaf.org
-frankmeeuwsen.xyz
-free-friends.org
-freebeer.com
-freeculture.org
-freedom.horse
-freedombone.net
-freedomtothink.social
-freehold.earth
-freemyip.com
-freeradical.zone
-freespeech.host
-freespeechextremist.com
-freezepeach.xyz
-frei.social
-friend.camp
-friendzone.social
-friskypaws.social
-frogeye.fr
-froghat.ca
-frogmob.life
-frootmig.net
-frosch03.de
-frozen.social
-fsck.club
-fsck.jp
-fsf.org
-fshm.in
-fsi.rocks
-fu-jp.net
-fucking.soy
-fuckonthefirst.date
-fujii-yuji.net
-fullyautomatedluxurygayspacecommunism.party
-functional.cafe
-fundamentalbaptistchurch.tk
-funigtor.fr
-funkymonkey.org
-furden.co
-furries.world
-furry.nz
-fursona.net
-futa.moe
-futaba-works.com
-futuregadgetlab.cc
-futvretown.com
-fuwafuwa.moe
-fuyumori.net
-fybuk.com
-g-fukurowl.club
-g0v.social
-g3l.org
-galaxy.cat
-galenabell.com
-gamedev.place
-gameliberty.club
-gamelinks007.net
-gamemaking.social
-gammon.club
-gaos.org
-garakuta.online
-gargantia.fr
-gattai.net
-gauchiste.club
-gaybaby.club
-gaydog.mom
-gayhorse.club
-gbnet.net
-gchq.online
-gdgd.jp.net
-geeknews.chat
-geekyboo.com
-genco.me
-generally.online
-genesismachina.ca
-geno.social
-gensokyo.social
-gensokyo.town
-gentler.earth
-geofox.org
-geraffel.net
-gerotintin.com
-ggrel.net
-ggtea.org
-giammi.org
-giant.horse
-gibiris.org
-gidikroon.eu
-giggleplex.red
-gimme-sympathy.org
-gingadon.com
-gion.me
-giorgiocomai.eu
-girlcock.club
-girldick.icu
-gla.fit
-glaceon.social
-glammr.us
-glaoigh.space
-glaros.xyz
-glipglops.club
-glitch.pizza
-glitch.social
-glitterkitten.co.uk
-globalrevolution.tv
-globulous.com
-gloon.jp
-glorificatio.org
-glyphicality.tk
-gnatter.org
-gnlk.ovh
-gnosia.info
-gnous.eu
-gnusocial.cc
-gnusocial.club
-gnusocial.in
-gnusocial.li
-gnusocial.ml
-gnusocial.net
-gnusocial.no
-goblin.camp
-gochisou.photo
-godforsaken.website
-goldandblack.xyz
-gomasy.jp
-goodass.dog
-goodchristian.website
-goodvibes.fun
-goofs.space
-googoldon.net
-gorone.xyz
-gots9713.xyz
-gouge.re
-gougere.fr
-gould.cx
-goziline.com
-grand-duchy.net
-gravitas.cafe
-greatjustice.net
-greenish.red
-greenlifeplus.net
-greenpeace.ch
-greenpencil.social
-grenat.art
-grenland.social
-grimm.link
-grnetcloud.net
-grngl.link
-grobox.de
-groover.jp
-groovestomp.com
-grotz.me
-grurple.org
-gtn-works.com
-guany.in
-guddl.de
-guineapig.party
-guizzyordi.info
-guldner.eu
-gulp.cafe
-gunzfox.tk
-gurubert.de
-guse.fr
-gwomp.com
-gza.jp
-h-sozial.de
-h4x.group
-hachune.net
-hack13.me
-hackdezorg.nl
-hacked.im
-hackerlab.fr
-hackerposse.com
-hackers.town
-hackingand.coffee
-hackoon.com
-hacktivis.me
-haikudon.jp
-hairydiode.xyz
-hakai-macaron.com
-hakoai.com
-hakorena.net
-hal9.ooo
-hamtter.net
-handon.club
-hankchizljaw.io
-happens.horse
-hardwarepunk.de
-harpy.life
-hash.social
-hashtagueule.fr
-haskell.social
-hates.technology
-haun.jp
-hax0rbana.social
-hax0rz.lol
-haxx.us
-hazbo.co.uk
-hazel.cafe
-hcxp.co
-hearthtodon.com
-heathanderson.net
-heck.ooo
-hedgehoghunter.club
-heislandmine.work
-heldscal.la
-hellsite.site
-helpmedog.com
-hemmer.land
-henchmonkey.org
-hengsha.host
-hentai.social
-herds.eu
-herokuapp.com
-hewwo.net
-hexadon.net
-hexe.net
-heyquark.com
-hiauntie.com
-hidamari.blue
-hidden.blue
-hiddenpalace.zone
-hideo54.com
-high.cat
-hikaruaikawa.tk
-hiker.camp
-himastdon.club
-hinaloe.net
-hiruandon.life
-hispagatos.space
-hisso.li
-historyhorde.com
-hitchhiker.social
-hitorino.moe
-hlad.org
-hncj.me
-hodakov.me
-hodapp.club
-hodl.city
-hofud.com
-hoga.fr
-hokutodon.co
-holdmybeer.solutions
-holeliquors.com
-holenet.services
-hom.ph
-homecomputing.fr
-homeplex.tk
-homoo.social
-homunyan.com
-honey.church
-hongeipii.com
-horsecr.app
-horsemans.online
-hostdon.jp
-hostsharing.coop
-hostux.coffee
-hostux.news
-hostux.social
-hotwife.social
-houbahouba.de
-housecat.dog
-houston.chat
-hrsm.jp
-ht164.jp
-huber-67.fr
-hugopoi.net
-huideyeren.info
-huloop.com
-hulvr.com
-humanities.one
-humblr.social
-hunterjozwiak.com
-hurgen.com
-hxbus.net
-hydratrash.party
-hyenas.space
-hypno.church
-i-red.info
-i2p.rocks
-iaia.moe
-ialis.me
-iamastodon.gifu.jp
-iamveryti.red
-ibex.social
-iboys.tokyo
-ican.codes
-icante.ventures
-ice-lolly.social
-icewind.nl
-ichigo-hoshimiya.com
-ichiji.social
-ichinyo.site
-icioulaba.tk
-icmstdn.com
-icosahedron.website
-id.cc
-ideali.sh
-idf.social
-idlethumbs.social
-idolheaven.org
-idsdt.com
-iedred7584.com
-ieji.de
-iflab.org
-ignorelist.com
-iguanodon.net
-ihatebeinga.live
-ijs01140.com
-ikata.co
-ikebuku.ro
-ikeji.ma
-ilikefreedom.ro
-iliketoast.net
-ilja.space
-illegalpornography.com
-im-in.space
-imaginair.es
-imastags.com
-imastodon.blue
-imastodon.net
-imastodon.org
-imirhil.fr
-immae.eu
-imoimo.xyz
-in-visible.eu
-inanna.xyz
-inboxshare.com
-inchasgram.com
-incmplt.net
-incorrect.space
-inct-densan.club
-ind.ie
-indie.host
-indieweb.me
-indigedon.com
-inditoot.com
-indoorsman.ee
-indy.im
-indyjp.club
-info.tm
-infosec.exchange
-infra.de
-inframed.net
-ingobernable.net
-initialization.tech
-inkson.org
-inkstained.space
-inkweb.network
-inkwell.studio
-innerwebs.social
-inpocket.net
-inscope.social
-insolente.im
-insoumis.social
-intahnet.co.uk
-integritymo.de
-intensifi.es
-interconnected.systems
-interlinked.me
-internaut.club
-internot.no
-intriguing.website
-inux39.me
-ion.ovh
-ipfire.org
-irenala.edu.mg
-irishstew.org
-irkos.uk
-irrsinn.life
-irrwitz.com
-isaacsu.com
-ischool.social
-iscute.moe
-isharacomix.org
-isidai.com
-isleo.space
-isleoblivion.space
-isnotvery.social
-iszy.cc
-iteasy.club
-itp.io
-itras.by
-itsmy.app
-itsnero.com
-iut-larochelle.fr
-iwade.net
-iwatedon.net
-izayoiwind.net
-izzz.fr
-jablon.fr
-jackdaw.today
-jalgi.eus
-jamesgallagher.social
-jamieasefa.social
-jank.town
-janogdon.net
-japanties.org
-jasonscheirer.com
-javi.pro
-jawns.club
-jaws-ug.okinawa
-jcx.se
-jeena.net
-jemp.co
-jenkins.cc
-jerem.yt
-jergefelt.se
-jestemgraczem.pl
-jesuislibre.net
-jesusinthe.club
-jeuxthemes.ch
-jezra.net
-jibby.org
-jlelse.me
-jonathanselea.se
-jonkman.ca
-jonleibowitz.com
-jonleibowitz.social
-jonproulx.com
-jonspark.com
-jonwatson.ca
-jorts.horse
-josephburnett.social
-joyrex.net
-jpages.eu
-jpi.io
-jrm.cc
-jsonly.club
-jubi.life
-juggler.jp
-julianjulian.moe
-jun-ji.me
-junkhub.org
-justodon.net
-jxmsocial.xyz
-jynxd.it
-k-easti.tk
-k-moegle.de
-kabi.tk
-kadokawadon.jp
-kagolug.org
-kahl-com.de
-kaiba.ga
-kaiserslautern.chat
-kakijin.com
-kakudon.com
-kalasarn.se
-kalik.in
-kamiyacho.net
-kamp.site
-kampftoast.de
-kanagu.info
-kancolle.social
-kandar.in
-kanina.be
-kanoa.de
-kaonet-fr.net
-kavehmoravej.com
-kawaiyume.net
-kawamr.com
-kawauso.ml
-kawen.space
-kawi.fr
-kazvam.com
-kcmo.social
-kebree.fr
-keio.ac.jp
-kellum.me
-kemo.no
-kemoner-don.tokyo
-kemono-friends.info
-kemonodon.club
-kemoshi.co
-kenhou.info
-kensimon.io
-kerenon.com
-kermodebear.org
-kessai-otaku.club
-ketchupma.io
-kgtkr.net
-kher.nl
-kibousoft.co.jp
-kicou.info
-kif.rocks
-killmi.st
-kimamass.com
-kind.social
-kink.social
-kink.town
-kinky.business
-kinkyelephant.com
-kios.cc
-kirakiratter.com
-kirby-fans.com
-kirche.social
-kirishima.cloud
-kiritan.work
-kitahina.co
-kitamurakz.com
-kitetu.com
-kith.kitchen
-kithop.ca
-kitsuna.net
-kitsune.cafe
-kitsunet.net
-kitty.social
-kitty.town
-kitunetya-ya-mastdom.com
-klamath.jp
-klg-tree.jp
-klinikowski.pl
-knots.today
-knusper-land.de
-knusperfisch.de
-knzk.me
-kobold.space
-kokolor.es
-kokomo.space
-kokuda.org
-kollenberger.me
-komic.eu
-komittee.net
-kompost.cz
-konkon.click
-konosuke.jp
-kopiti.am
-koreadon.com
-kosebamse.com
-kosmos.social
-kotatsu.jp
-kotobank.ch
-kottman.xyz
-kou.hu
-koyu.space
-kpop.social
-krefeld.life
-kretschmann.social
-krinetzki.de
-ksite.de
-kuester7.com
-kujiu.org
-kuko.hamburg
-kurage.cc
-kuriuzu.tk
-kurosuke.org
-kuude.re
-kwat.chat
-kwlug.org
-kwmr.me
-kxn4t.tech
-kys.moe
-kyureki.jp
-l4.pm
-la-web-radio.eu
-la1.jp
-lab-kadokawa.com
-lab61.org
-lacolaco.net
-ladisquette.fr
-laevateinn.tk
-laiguana.org
-lain.moe
-lainon.life
-laitues.net
-lalafell.org
-lambertz.xyz
-lamowski.net
-lamp.institute
-lancaster.ac.uk
-langfamilie.de
-lanners.uk
-lardbucket.org
-lasanha.org
-laserdisc.party
-lasersword.club
-latransition.org
-laurakalbag.com
-lavafeld.org
-laverdu.re
-lavergne.online
-layer8.space
-lazer.pizza
-lazy8.social
-lazyatom.social
-lcy.moe
-le-palantir.com
-leafygalaxy.space
-lecker.coffee
-leftic.club
-leftlibertarian.club
-legal.social
-legfr.social
-lemarchand.io
-lemonade.moe
-leo.re.kr
-leobrown.net
-lertsenem.com
-lesbiab.space
-lesbianschool.com
-lescorpsdereve.space
-lespasquier.fr
-lethar.gy
-letsalllovela.in
-lewd.today
-lewd.town
-lexpierce.social
-lfsr.net
-lgbt.io
-lgbtq.cool
-lgy.fr
-liamcottam.co.uk
-libera.blue
-liberdon.com
-libertalia.world
-libertarianism.club
-libre-association.party
-libre-entreprise.com
-libre.audio
-libre.fi
-librelabucm.org
-librenet.co.za
-libretooth.gr
-libretux.com
-liebefeld.social
-liepajnieks.lv
-lieter.nl
-ligma.pro
-likeable.space
-liliso.com
-lily.network
-linc.systems
-linernotes.club
-linfiel.com
-linkov.net
-linss.com
-lintmx.com
-linux.pizza
-linuxgamecast.com
-linuxine.net
-linuxinthenight.com
-linuxjobs.social
-linuxlab.sh
-linuxquimper.org
-linuxrocks.online
-linuxserver.pro
-lio.one
-lithium03.info
-litodon.de
-livelaughlove.social
-livers.jp
-liveunix.org
-livewing.net
-lkw.tf
-llama.su
-llkdn.com
-loadaverage.org
-lobi.to
-localtalk.chat
-loci.onl
-logi.fun
-logilab.org
-logjam.city
-logorrhea.online
-loli.estate
-lolisandstuff.moe
-lollipopcloud.solutions
-lollygaggers.uk
-loma.ml
-lond.com.br
-loner.jp
-lono.space
-loonarmys.com
-loovto.net
-lor.sh
-lord.re
-loser.space
-lou.lt
-louderthanten.net
-loutre.info
-lovelive-mstdn.com
-lovers.town
-loves.pizza
-lovetux.net
-lowsamplingrate.eu
-lppfusion.com
-lsngl.us
-ltch.fr
-lubar.me
-lucci.xyz
-lumpen.work
-lunarpunk.space
-lurk.org
-luther.social
-lux.blue
-lw1.at
-lyker.jp
-lyng.space
-lynnesbian.space
-lynxpebbles.me
-lyoko.social
-m.atm.pl
-m0t0k1ch1.com
-m2.nz
-m2hq.net
-m544.net
-ma3ali.net
-mabe.space
-mabidn.net
-macbeth.cc
-machida.yokohama
-machteburch.social
-macmynatt.social
-macsnet.cz
-mad-scientist.club
-madcam.co.uk
-madogre.tk
-maelstrom.space
-maescool.be
-magicalgirl.party
-magitek-telescope.im
-magnificentbeardsfan.club
-maho-do.jp
-maho.app
-mailpile.is
-makerdon.org
-makestuff.club
-makimaki.jp
-mal.systems
-malfunctioning.technology
-malu.today
-maly.io
-mamemo.online
-mamot.fr
-mandodon.com
-mandps.net
-mangadon.info
-manhole.club
-manimani.cc
-manowar.social
-manulanglois.fr
-manwho.re
-maoh.company
-map-le.net
-maravitti.fr
-marchgenso.me
-mares.cafe
-mario.chat
-markegli.com
-maron.blue
-martijn.at
-mas.to
-masatodon.jp
-masdis.com
-mast.eu.org
-mast.moe
-mast.one
-mastalab.app
-mastd.me
-mastd.racing
-masthead.social
-masto-sport.us
-masto.host
-masto.media
-masto.ninja
-masto.pt
-masto.space
-masto.tech
-mastoc.net
-mastod.in
-mastoden.com
-mastodogs.social
-mastodol.jp
-mastodon-train.info
-mastodon.academy
-mastodon.art
-mastodon.at
-mastodon.bayern
-mastodon.by
-mastodon.cc
-mastodon.cloud
-mastodon.club
-mastodon.computer
-mastodon.design
-mastodon.earth
-mastodon.eus
-mastodon.hamburg
-mastodon.haus
-mastodon.hk
-mastodon.host
-mastodon.ie
-mastodon.in.th
-mastodon.is
-mastodon.kitchen
-mastodon.lt
-mastodon.lu
-mastodon.me.uk
-mastodon.mg
-mastodon.nara.jp
-mastodon.nl
-mastodon.oita.jp
-mastodon.org.es
-mastodon.org.uk
-mastodon.radio
-mastodon.rocks
-mastodon.scot
-mastodon.se
-mastodon.sk
-mastodon.social
-mastodon.studio
-mastodon.technology
-mastodon.to
-mastodon.top
-mastodon.uno
-mastodon.uy
-mastodon.vip
-mastodon.wakayama.jp
-mastodon.xyz
-mastodonhk.social
-mastodonsocial.ru
-mastodont.cat
-mastodontech.de
-mastodonten.de
-mastodontti.fi
-mastodooooooon.xyz
-mastodos.com
-mastofant.de
-mastoot.com
-mastportal.info
-matarillo.com
-matcha-soft.com
-matchdon.com
-matej-lach.me
-matereal.eu
-mathematicon.com
-mathstodon.xyz
-mathtod.online
-matitodon.com
-matrix.org
-matt-social.co.uk
-matthieuharle.com
-maud.io
-maw.network
-mayel.space
-mayfirst.org
-mcewan.io
-mckellar.org
-mckellar.social
-mcnamarii.town
-mctek.tk
-mctetsudou.net
-mcwhirter.io
-mdon.ee
-mecanis.me
-mechanicalmischief.com
-medicaldon.info
-medieval.jp
-meemu.org
-meganekeesu.tokyo
-mel.social
-melalandia.tk
-melb.social
-mellified.men
-melonpan.run
-meme.garden
-menf.in
-mental.af
-mental.social
-mentalhealth.social
-menzel-it.social
-meow.academy
-meow.social
-meows.life
-merkel.social
-merveilles.town
-meshspace.de
-mess.casa
-metaccount.de
-metadata.moe
-metalhead.club
-metastudio.org
-meww.xyz
-mfashby.net
-mftrhu.net
-mfz.jp
-mgub.yt
-mhc.social
-mhz.social
-michaonline.net
-michikora.com
-micromookie.com
-midnight-cms.com
-midyuki.net
-mieth.net
-migennes.net
-mikado-city.jp
-mikegerwitz.com
-mikorizal.org
-mikumikudance.cloud
-milky.coffee
-millennial.space
-millers.social
-mimikun.jp
-mimmoth.club
-mimumedon.com
-minet.net
-mingxingsex.com
-mini4wd-engineer.com
-ministryofinternet.eu
-miniwa.moe
-minohdon.jp
-minuit.xyz
-miri.my
-mirrored.social
-misell.cymru
-misosi.ru
-misskey.xyz
-mist.so
-mit.edu
-mitsurugi.org
-mitzelten.de
-miyacorata.net
-mjb.im
-mjd.id.au
-mk39.xyz
-mlmie.net
-mlpol.net
-mmodon.online
-mmorpg.social
-mnetwork.co.kr
-moar.wine
-mobile.co
-mochi.academy
-mochiwasadon.com
-mocknen.net
-mod-12.com
-modestymaise.com
-moe-max.jp
-moe.cat
-moeller.email
-moeplebs.online
-mofgao.space
-mofu2charger-listenradio.net
-monarch-pass.net
-monastery.social
-mond-basis.eu
-monkeydiesel.net
-mono.cafe
-monsiteinternet.org
-monsterpit.net
-monsterprom.space
-monstrous.church
-moonbutt.science
-mootech.eu
-morebeautifully.com
-moritzmahringer.de
-moriya.faith
-morphtown.de
-moshbox.jp
-moso.io
-mostodon.cloud
-mosw.work
-motcha.tech
-motogp.space
-moul.re
-mountain.exchange
-mouse.rocks
-moytura.org
-mr.am
-mrh.io
-mrow.space
-mrpetovan.com
-ms-olive.club
-mspsocial.net
-mstd.tokyo
-mstddntfdn.online
-mstdn-amadeus.tech
-mstdn-bike.net
-mstdn-jp.site
-mstdn-kanazawa.jp
-mstdn-newprofession.jp
-mstdn-sabage.fun
-mstdn-workers.com
-mstdn.at
-mstdn.beer
-mstdn.biz
-mstdn.blue
-mstdn.camera
-mstdn.cc
-mstdn.cloud
-mstdn.club
-mstdn.fm
-mstdn.fr
-mstdn.fukuoka.jp
-mstdn.guru
-mstdn.hokkaido.jp
-mstdn.hu
-mstdn.hyogo.jp
-mstdn.io
-mstdn.jp
-mstdn.love
-mstdn.miyazaki.jp
-mstdn.mx
-mstdn.ninja
-mstdn.onl
-mstdn.osaka
-mstdn.pw
-mstdn.si
-mstdn.su
-mstdn.tokyo
-mstdn.tw
-mstdn.vodka
-mstdnrs.club
-mstdon.app
-mtjm.eu
-muage.org
-mud.social
-mudl.us
-muenchen.social
-muenster.im
-muensterland.social
-muknown.jp
-mulot.org
-multicast.social
-multimob.be
-murder.town
-muses.gallery
-musicdn.jp
-mustardon.tokyo
-mutolo.social
-muy.moe
-mxchange.org
-mxin.org
-mxmaxime.ovh
-my-status.tk
-myconan.net
-myflog.net
-myfreecams.com
-myhome.cx
-myles.life
-mylinux.cz
-mynameisivan.ru
-mynetgear.com
-mynoghra.jp
-mytoot.de
-mytoot.net
-mywebprojects.co.uk
-mzn-potatochips.me
-n-sr.org
-n0.is
-n7mn.xyz
-nacika.com
-nadesiko-users.info
-nagoyadon.jp
-nah.re
-naii.io
-nakanod.net
-nakasange.net
-nakayoshi.tk
-nako.ne.jp
-nametaketakewo.net
-nanaaki.com
-nanamachi.net
-nanumvettithan.group
-naomi.moe
-naoy.fr
-nasqueron.org
-natalie.ee
-natter.wtf
-natudon-fishing.net
-nayukana.info
-ne.codes
-nebula.moe
-neckbeard.xyz
-neguse.net
-neigepluie.net
-neigh.horse
-nejiamasi.com
-nekomimi.jp
-nekonote.cc
-nekotodon.com
-nemsia.org
-neon.moe
-neonmidori.net
-neotag.net
-nerdculture.de
-nerdgobragh.org
-nere9.help
-neso.tech
-nestegg.net
-nesven.eu
-net-p.org
-net.scot
-nethole.us
-netstat.app
-networked.space
-netzkombin.at
-netzsphaere.xyz
-newsbots.eu
-nexus8.cf
-nghieng.net
-nhcrossing.com
-nhg.moe
-nico-bayati.de
-nielk1.com
-nightmare.zone
-nihilist.space
-nikhiljha.com
-nil.nu
-nildon.com
-nineties.cafe
-ninjawedding.org
-nintendojo.fr
-nipponalba.scot
-nitech.online
-nitiasa.com
-nitro.horse
-niu.moe
-niu.ne.jp
-nixeneko.info
-nixnet.xyz
-niyawe.de
-njp.asia
-no-monogatari.com
-no-trace.de
-noagendasocial.com
-nobert.zone
-nobody.social
-node.pk
-noela.moe
-noeldemartin.social
-noellabo.jp
-nof.st
-nofftopia.com
-nohost.me
-noip.me
-noise.social
-noisome.space
-noizycat.com
-nojober.work
-nologo.social
-nomadicista.org
-nomoresha.me
-nonexiste.net
-nonlinear.zone
-noob.party
-noon.social
-noraworld.jp
-norden.social
-nordgedanken.de
-norze.co
-nota.live
-notbird.site
-notjoshua.fr
-notreal.pw
-novadon.social
-novium.pw
-nrd.li
-nrkn.fr
-nshl.xyz
-nsnw.ca
-nth.io
-nudie.social
-nukaya.net
-nuked-the.uk
-nuklear.family
-nulled.red
-nutt.church
-nx-pod.de
-nyan.cafe
-nyan.lol
-nyerm.com
-nyoki.club
-nzoss.nz
-o-man.co
-o3o.ca
-oalm.gub.uy
-objektiv2.net
-occitanie.social
-occult.camp
-oceansocial.us
-ocr.social
-octodon.social
-odakyu.app
-oeru.org
-oftrolls.com
-ofuton.io
-ogspy.fr
-oh-kei.info
-ohgro.net
-ohnomy.rocks
-oi7.de
-ojitabi.club
-okaris.de
-okoyono.de
-oldbytes.space
-olds.town
-oldschool.community
-oltoko.de
-omaera.org
-omanko.porn
-ombreport.info
-omeganote.fr
-omochi.xyz
-onepointzero.com
-onerescue.org
-ongstar.jp
-onore.org
-onsen.tech
-onster.farm
-oook.fr
-openalgeria.org
-openbiblio.social
-opencloud.lu
-opencocon.org
-openweb.social
-openworlds.info
-opportunis.me
-opsecwin.com
-orange-order.co.uk
-oransns.com
-orcaverse.club
-ordinarius-fectum.net
-orenoshiro.site
-organicdesign.pub
-organizing.social
-oriongate.jp
-os.vu
-osm.social
-osm.town
-osyakasyama.me
-otadon.com
-otherkin.club
-otherreality.net
-otogamer.me
-otonomedia.org
-otoya.space
-otter.sh
-otter.tube
-otyakai.xyz
-ouda.space
-ouin.land
-oulipo.social
-oulu.im
-oupsman.fr
-ourempty.pub
-ovalerio.net
-owls.io
-oyler.social
-p-epsilon.com
-p4g.club
-pachyder.me
-pachyderme.net
-paddys.pub
-pafnooty.ru
-palaven.space
-panglossoft.fr
-panoptikum.io
-pantdon.site
-pantherx.social
-pao.moe
-paoon.social
-papey.fr
-paratxt.org
-parcel5.social
-parleur.net
-parrygod.club
-partecipa.digital
-partipirate.org
-party.at
-pasero.net
-patafisica.cc
-patch.cx
-paw.cafe
-pawbs.club
-pawoo.net
-pcgame.jp
-pcgamer.social
-pcsfield.com
-pdx.social
-pea.sh
-pede.rs
-peertube.fr
-pekepeke.work
-pendorwright.com
-pepsi.zone
-persadon.com
-peshane.net
-petras.space
-pfefferle.org
-pgh.social
-pgw.jp
-ph3j.com
-photodn.net
-photog.social
-photographer.pro
-phoxden.net
-phpc.social
-phreedom.tk
-pickle.zone
-pierrick.io
-pifke.social
-piggo.space
-piira.org
-pikachu.rocks
-pingupod.de
-pinkieduck.net
-piperrak.cc
-pipou.academy
-pirateparty.be
-pirati.ca
-pirati.cc
-pirati.cz
-pitman.social
-pizzadog.moe
-pla.social
-pla1.net
-place-of-refuge.com
-planet.moe
-planetaludico.com
-plankton.cz
-plasticmodels.tokyo
-playground.ws
-playvicious.social
-pleasehug.me
-plero.ma
-pleroma.aasg.name
-pleroma.cat
-pleroma.fr
-pleroma.io
-pleroma.lol
-pleroma.site
-plock.social
-ploud.fr
-plural.cafe
-plus.yt
-plush.army
-plush.city
-plusminus.io
-plustodon.net
-plx.chat
-pmpm.pw
-pointless.net
-pointless.one
-polarisfm.net
-politicaconciencia.org
-polonkai.eu
-polyamory.social
-polyglot.city
-polyohm.net
-ponseta.ga
-pony.social
-pony.style
-popindustry.org
-popula.social
-porntoot.com
-port0.xyz
-posadis.me
-postdon.com
-postmoderns.info
-potager.org
-potato.dog
-potproject.net
-pouet.ca
-pouet.it
-pouet.me
-pounced-on.me
-pounced.me
-powerlot.net
-poyo.me
-ppl.town
-pptdn.jp
-preciouslittle.life
-precure.fun
-precure.ml
-pretend.fun
-prettyqueer.online
-prfm.jp
-princess.industries
-pritter.work
-privacytools.io
-project-imas.cn
-project.social
-projectx.fun
-prolatio.xyz
-propulse.club
-prose.zone
-prostreamers.net
-pso2.club
-psychedelic.cat
-psychoactive.space
-psyopshop.com
-psyver.space
-pube.tk
-publicmedia.space
-puddle.town
-punktrash.club
-puppo.space
-puri.sm
-puyo.jp
-puz.fun
-pwarren.id.au
-pzn.lgbt
-qaf.men
-qcx.io
-qdon.space
-qiitadon.com
-qnmd.info
-qore.no
-qoto.org
-qowala.org
-qth.fr
-quarteredcircle.net
-quasi.social
-queer.af
-queer.garden
-queer.party
-queerenough.com
-queloud.net
-quentel.social
-quey.org
-quic.fr
-quine.codes
-quitter.cl
-quitter.es
-quitter.im
-quitter.pl
-quitter.pw
-quixotic.info
-qunagi.net
-quodverum.com
-qute.dog
-qwaser.fr
-r13w.social
-r3bl.social
-r3pek.org
-ra-phi.ch
-raa0121.info
-rabbit-house.me
-raccoon.network
-raconteur.ink
-radical.town
-radicalityincident.com
-radicle.space
-radiofree.cloud
-rafting.io
-raggedfeathers.com
-raildecake.fr
-rainyman.jp
-rane.sh
-ranranhome.info
-rapefeminists.network
-raptol.net
-raptorengineering.io
-rastapuls.com
-rbq.social
-rbs.io
-rcj-quantity.info
-rcsocial.net
-real-escape.jp
-realitytoots.com
-realmofespionage.xyz
-reclaim.technology
-recurrent.network
-redfish.ca
-redflag.social
-redgla.re
-redliberal.com
-redmine.jp
-redonion.social
-redroo.ml
-redwombat.social
-refactorcamp.org
-regastream.com
-remotenode.host
-reptilehouse.info
-res.ac
-reseau.education
-reseaujaune.com
-resize.club
-retro.social
-retrodon.jp
-rettiwtkcuf.social
-reve.land
-rhinoworks.info
-ries-web.de
-rights.ninja
-rinsuki.net
-rivals.space
-rjp.is
-rl5.nl
-rly.wtf
-rmxr.net
-road42.social
-robot-house.us
-robw.me
-rocketboom.io
-roconize.com
-rodent.io
-rodina-sucha.cz
-roeckoe.be
-roflcopter.fr
-ropo.jp
-rosariotech.com.br
-rosaryfaith.com
-rousset.nom.fr
-rout0r.org
-route66.social
-roxxers.xyz
-rstdn-p.com
-rt-trend.jp
-rta.run
-rthome.me
-rubber.social
-rubencito.net
-ruby.social
-ruhr.social
-rukin.me
-russnelson.com
-rustedneuron.com
-rutan.info
-rva.party
-ryanak.xyz
-ryecroft21.net
-s-up.net
-s10y.eu
-s7t.de
-sackheads.social
-safebook.space
-sahagyo.com
-sakaba.space
-sakamoto.gq
-sakura-rage.net
-sakuragawa.moe
-samnoble.org
-samsunginter.net
-sanam.xyz
-sander.social
-sandwich.net
-sanin.club
-sanin.link
-santoyo.io
-santsenques.cat
-sapphos.be
-sardo.work
-sasachi.tokyo
-sasakimasato.net
-sasbaen.be
-sastudio.jp
-satania.site
-satania.space
-savikin.me
-savvy.ch
-sawakai.space
-sbw.org
-scalie.business
-scalie.club
-sccn.club
-schieder.me
-schildt.social
-schlenz.ruhr
-schleuss.online
-schnatter.eu
-schoentoon.com
-scholar.social
-schoolidol.club
-schoolidol.pro
-schoollibraries.net
-schuppentier.org
-scicomm.xyz
-scifi.fyi
-scinan.science
-scintilla.social
-scramble.city
-scream.cloud
-scream.supply
-scream.zone
-screech.social
-scubadon.jp
-scuttle.org
-scuttlebug.space
-sdeu.fr
-sdf.org
-seacow.social
-sealion.club
-seattle.wa.us
-sebbo.net
-secline.de
-securemy.pw
-sedryk.info
-sehol.se
-seiyu.fun
-seizemeans.com
-sekiken.xyz
-sektori.org
-selfhosting.rocks
-selfy.army
-sencic.com
-senooken.jp
-sergal.org
-seriousposter.club
-serv-ops.com
-serval.club
-servus.at
-setho.org
-setl.ist
-sfbubble.net
-sfgreens.org
-sftblw.moe
-sgr.cc
-shade3d.jp
-shadowfacts.net
-shadowkat.net
-shadowverdon.info
-shareworx.net
-shelter.moe
-shestak.me
-shiftyeyed.net
-shigusegubu.club
-shillest.net
-shimaidon.net
-shinonomemilk.com
-shiro.dog
-shiroganedon.net
-shitasstits.life
-shitpost.institute
-shitposter.club
-shivering-isles.com
-shnoulle.net
-shpposter.club
-shr.today
-shrux.net
-shunderdo.me
-sideno.eu
-sigmaris.info
-signs.codes
-silba.me
-simcu.com
-simstodon.com
-sinblr.com
-sins.center
-sirousa.me
-sisters.pink
-sitedethib.com
-sizedon.com
-skaia.space
-skeleton.cool
-skiant.net
-skoji.jp
-skoops.social
-skrivel.se
-skynet.social
-sl-network.fr
-slat.org
-sldon.jp
-sleeping.town
-slice.zone
-slime.global
-slimed.org
-sludge.town
-smeap.com
-smilodon.news
-smuglo.li
-smurpspaek.de
-snabelen.no
-snaggletooth.life
-snakenode.eu
-snel.social
-sngsk.info
-snoot.com
-snoot.tube
-snopyta.org
-snouts.online
-snow-crash.org
-snowandtweet.jp
-socel.net
-social-copwell.fr
-social.bankmann.name
-social.coop
-social.im
-social.net.ua
-social.photo
-social.saarland
-sociala.me
-socialcoding.xyz
-socialjusticeoclock.org
-socialmast.xyz
-sockspls.social
-socnet.eu
-softi.city
-somsants.net
-sora.pub
-sornieth.xyz
-sosh.network
-soupwhale.com
-southflorida.social
-soykaf.com
-soysoftware.net
-sozen.network
-spacecowboy.cc
-spacekittens.ru
-spanner.works
-spaz.org
-speedfox.co.uk
-spliffito.com
-spod.ca
-spooky.camp
-sprinklerz.xyz
-spruchfest.de
-spun-industries.de
-spunkiedesign.com
-spydar007.com
-square-rooty.org
-squeak.live
-squeet.me
-squid.cafe
-squiggly.club
-squug.net
-ssc-web.net
-ssweeny.net
-stalin.rocks
-starapps-network.com
-stardew.city
-starlit.city
-starrevolution.org
-status.online
-stcpt.com
-steam-don.fun
-stellaria.network
-stenodon.jp
-stenoweb.net
-stephane-klein.info
-stephenson.cc
-stevestreza.com
-sthorp.com
-stinkt.online
-stnard.jp
-stoablick.de
-stoneartprod.xyz
-stopwatchingani.me
-stopwatchingus-heidelberg.de
-stormdragon.tk
-strangestack.com
-strangled.net
-strog.org
-stuartbutterworth.co.uk
-stuntkidz.org
-stupid.industries
-subak.club
-subvert.pw
-such.social
-suinot.org
-sukadon.cf
-sukebeneko.com
-sully.site
-summerlin.social
-summoners-riftodon.jp
-sunbeam.city
-sunet.se
-sungo.wtf
-sunshinegardens.org
-super-niche.club
-superspeed-fall.com
-supes.com
-supremesyntax.com
-surfnet.space
-surtdelcercle.cat
-sutera.fi
-suzume.life
-svallee.fr
-sven-joerns.de
-svnet.fr
-swearing.org
-sweetree.ga
-swingset.social
-switter.at
-swordlogic.com
-swungda.sh
-sxpert.org
-syasai.club
-syosetu.social
-syscaller.jp
-systemreboot.net
-systerserver.town
-syui.cf
-szy.io
-t-rg.ws
-t327.net
-tabletop.social
-taboulisme.com
-tackman.info
-tacocat.cc
-taiha.net
-tailburst.me
-taiyaki.online
-takeoverthe.world
-taker.fr
-taketodon.com
-takriz.org
-takyoji.xyz
-talajen.com
-tamag.org
-tamx.tk
-tanavega.xyz
-tank.im
-tantor.online
-tapi.cafe
-targaryen.house
-taroedon.com
-taruntarun.net
-tassaron.com
-tastefuldinosaurerotica.com
-tatooine.space
-taur.zone
-tavern.cafe
-tchncs.de
-tcit.fr
-tds.xyz
-teacoffee.life
-teamblackberry.jp
-teamtk.eu
-tebukuro.pw
-tech.lgbt
-techandbeer.social
-techdrive.top
-technomancy.space
-technopagans.de
-technosorcery.net
-techopolis.io
-tedomum.net
-tegedon.net
-tekton.network
-telmina.com
-telteltel.com
-tempr.net
-temsa.me
-tenforward.social
-tenka.love
-tenta.fun
-tentacle.social
-terrafirma.space
-terrible.graphics
-terusid.com
-teslam.in
-tessellated.space
-tetaneutral.net
-tetsumaki.net
-th23.org
-that.world
-the-orbit.net
-the-penguin.de
-the-pit.uk
-the-thirstiest-mawile.com
-the-www.eu
-theapex.social
-thechurchofmemes.com
-thecrimsontint.com
-thedisco.social
-thefourthdev.work
-thegreenclan.ca
-theha.us
-thehansfords.co.uk
-theicon.stream
-thejoyo.com
-thekurokuma.net
-theliturgists.com
-thelovebug.org
-themimitoof.fr
-themsp.org
-thequantumblockchainproject.com
-therealblue.de
-theres.life
-therope.space
-theru.org
-theshrub.org
-thespinning.top
-theubergroup.org
-thevillage.chat
-thevillastraylight.com
-theydonts.top
-thezone.zone
-thicc.horse
-thiesen.berlin
-thinaticsystem.com
-thoughtworks.com
-thraeryn.net
-thumped.com
-tiflolinux.org
-tilde.website
-tilde.zone
-timecube.club
-tinkeringwithalien.tech
-tinyfed.com
-tinysubversions.com
-tkmb.tokyo
-tkschland.de
-tkte.ch
-tmp-mstdn.cloud
-tmp1024.com
-tno.social
-toad-in-the-hole.net
-toaruhetare.net
-toco2.fun
-todon.nl
-toepi.moe
-tofu.city
-togart.de
-tokamstdn.jp
-tokyocameraclub.com
-tomica.me
-tomokiwakimoto.com
-toni.im
-toon.in
-tooot.im
-toot.berlin
-toot.blue
-toot.cafe
-toot.cat
-toot.center
-toot.chat
-toot.host
-toot.house
-toot.institute
-toot.io
-toot.koeln
-toot.love
-toot.lu
-toot.rodeo
-toot.shoes
-toot.si
-toot.site
-toot.style
-toot.wales
-toot.ws
-tooting.ai
-tooting.ch
-tootplanet.space
-toots.cloud
-toots.social
-tootux.tk
-topbug.net
-touha.me
-touhey.org
-training-fitness.fun
-transfurrmation.town
-transneptune.net
-travel-friends.chat
-travelling-lurtles.world
-travelpandas.fr
-tretkowski.de
-triathlon.one
-trickle.ink
-triggerphra.se
-triplebit.net
-troet.cafe
-troetco.de
-troll.academy
-troll.university
-trollian.space
-tron.buzz
-trshnet.de
-trunk.zone
-truongan.name.vn
-ts-novels.jp
-tsia.de
-tsr.cloud
-tsubamedon.com
-tsuki.network
-ttree.ch
-tuning.social
-turbo.chat
-turingtest.uk
-tusk.wtf
-tux.tf
-twingyeo.kr
-twinja.club
-twinkaga.in
-txsocial.club
-tyaku.com
-tycho.space
-tyil.nl
-tymoon.eu
-typica.us
-typodon.com
-typrout.ml
-tyronesama.moe
-tzi.fr
-tzyl.nl
-u-v.de
-u4u.org
-ubos.net
-ubuntu.social
-udn.jp
-uelfte.club
-uevemiage.ovh
-ufeff.club
-ugroza.ru
-ulman.social
-umastodon.jp
-umbriel.fr
-umeahackerspace.se
-umu.se
-umycode.com
-unasuke.com
-under-bank.blue
-undernet.uy
-underscore.world
-unextro.net
-unigiri.net
-unityjp-mastodon.tokyo
-unixporn.pro
-unixwolf.com
-unkworks.net
-unnerv.jp
-unreality.pink
-unsafe.space
-unshaped.space
-unsocial.pztrn.name
-untan.xyz
-unturf.com
-uoga.net
-up.edu.ph
-upsilo.net
-ur.gs
-ura-mstdn.com
-urakodon.com
-urawareds.org
-urbangender.net
-uri.life
-uribe.cafe
-ursinum.net
-urvogel.club
-usagicore.moe
-utgw.net
-utodon.jp
-utwente.nl
-uwah.moe
-uwu.social
-uzla.net
-v01d.app
-v1x3n.net
-va-11-hall-a.cafe
-vacuous.one
-valvin.fr
-vapedon.club
-vapers.jp
-vcity.network
-veg.ms
-vegible.club
-vernunftzentrum.de
-verwirrung.institute
-veryamt.com
-veryfabulo.us
-vgai.de
-vichar.me
-videogamesmen.com
-vidja.social
-vikings.net
-villanos.net
-vincanote.net
-vincentux.fr
-vinzv.space
-vipgirlfriend.xxx
-vis.social
-vivid-rabbit.com
-vixe.net
-vllm.net
-vlntn.pw
-vmrpc.net
-vocalodon.net
-void.garden
-voidfox.com
-voidptr.org
-voppe.it
-vorlon.space
-vulpine.club
-vvitches.live
-vy-let.software
-w3c.social
-w3rkhof.zone
-waferbaby.com
-waffle.tech
-wafflec.one
-waifu.social
-wakakyu.tk
-wakamesoba98.net
-wake.st
-walkers.social
-walkingmountains.fr
-wandering.shop
-wangdahoo.space
-waraiotoko.net
-waseda.ac.jp
-waterfowl.social
-waytoo.online
-waytt.cf
-weaponvsac.space
-webos.direct
-weeaboo.space
-weep.me
-weho.st
-weirdart.space
-weirder.earth
-weirdfishes.today
-weirdgone.pro
-welldn.net
-welovela.in
-welsea.xyz
-werefoxsoftware.com
-werewolf.biz
-westen.xyz
-weststar.name
-wetfish.space
-wetofu.top
-whatever.cz
-whatwaslostisfound.co.uk
-wherethedogsare.com
-whisper.tf
-whitespashe.uk
-whomst.dog
-wickenberg.nu
-widegamut.club
-wiegandtech.net
-wildeboer.net
-wildtree.jp
-willow.cafe
-windish.jp
-wirebug.ch
-witch.energy
-witchcraft.cafe
-witches.live
-witches.pub
-witches.social
-witches.town
-wiuwiu.de
-wjbolles.com
-wlw.pw
-wmer.icu
-wobscale.social
-wokka.be
-wokyleeks.com
-wolfgirl.engineering
-wolfpa.ws
-wonderdome.net
-wood-built21.net
-word.builders
-worlddominationplan.com
-worlddrive.club
-worldfactorydon.com
-worldtravel.photos
-wp-social.net
-writing.exchange
-wrk.ru
-wt21.de
-wubrg.social
-wug.fun
-wxcafe.net
-wxw.moe
-wytchmourne.com
-x0f.org
-x0r.be
-xa0.uk
-xaneaid.com
-xayah.net
-xindejiayuan.com
-xiph.org
-xkcd.network
-xmu.social
-xorkle.com
-xoxo.zone
-xpcoin.jp
-xps2.net
-xqz.ca
-xtenz.xyz
-xthemage.net
-xtremely.online
-xxoo.cat
-xxxtumblr.org
-xyzyx.org
-xz0.org
-y-y.li
-y-zu.org
-yahe.sh
-yajamon.xyz
-yakiniku.cloud
-yakitamago.info
-yakumo.foundation
-yakyudon.net
-yamachan.org
-yamagadon.com
-yamaken.jp
-yamanote.tokyo.jp
-yantene.net
-yatil.net
-ybk28.net
-yeehaw.town
-yellowmustard.club
-yeti-factory.org
-yiff.life
-yjsnpi.nu
-ykzts.technology
-yoavmoshe.com
-yocto.xyz
-yoghurthair.club
-yoitsu.moe
-yotie.blue
-yourrhythm.jp
-yousack.net
-yovm.com
-yrr0r.net
-yso.pet
-ytgrsua4.net
-ytringsrett.net
-yukari.cafe
-yukimochi.io
-yukimochi.jp
-yutacar.info
-yuwinet.win
-yvt.jp
-yysk.icu
-yyy.scot
-z-flag.work
-z0ne.moe
-z27.ch
-z80.moe
-zachcampau.com
-zaclys.com
-zaitcev.nu
-zakuac.com
-zapashcanon.fr
-zeitreisender.org
-zenbuempty.net
-zeppelin.flights
-zerojay.com
-zeteo.me
-zlg.space
-zmach1n3.com
-zmb.cm
-znark.us
-znw.social
-zoc.me
-zoddo.fr
-zom.bi
-zombienet.org
-zombocloud.com
-zoonior.app
-zrythm.org
-zuiho.moe
-zunda.ninja
-zuzax.com
-zzzoo.org \ No newline at end of file
diff --git a/oldrep/tool/getCFDomainFromList.php b/oldrep/tool/getCFDomainFromList.php
deleted file mode 100644
index 3b185522..00000000
--- a/oldrep/tool/getCFDomainFromList.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-/*
-WTFPL License
-
- Run `php -f getCFDomainFromList.php` and wait for result.
-
- This script will read INPUT_DOMAINS and add domain to OUTPUT_RESULT
- if the target is in Cloudflare domain lists.
-
- INPUT_DOMAINS is a list of domains. Do not list FQDN.
-
-*/
-
-ignore_user_abort(true);
-set_time_limit(0);
-
-// INPUT_DOMAINS EOF = must LF
-define('INPUT_DOMAINS', 'example.mdn_basedom_list.txt');// _base_ domain list to scan
-define('DIR_CFDOMAINS', 'split/');// path to /split/ directory (Cloudflare Domains)
-define('OUTPUT_RESULT', 'example.mastodon_cf.txt');// result
-
-if (!file_exists(DIR_CFDOMAINS.'cloudflare_0.txt')){print 'Edit DIR_CFDOMAINS';exit;}
-if (!file_exists(INPUT_DOMAINS)){print 'INPUT_DOMAINS not found';exit;}
-
-$result=array();
-
-foreach(explode("\n",file_get_contents(INPUT_DOMAINS)) as $line){
- if (strlen($line)<4){continue;}
- $letter=substr($line,0,1);
- if (!preg_match("/^([a-z0-9]{1})$/",$letter)){continue;}
- print $letter.'='.$line."\n";
- if (in_array($line,explode("\n",file_get_contents(DIR_CFDOMAINS.'cloudflare_'.$letter.'.txt')))){$result[]=$line;}
-}
-
-print count($result)." found\n";
-file_put_contents(OUTPUT_RESULT,implode("\n",$result));
-print 'done';
diff --git a/oldrep/tool/get_fqdn_tmg1.php b/oldrep/tool/get_fqdn_tmg1.php
deleted file mode 100644
index ad897ff5..00000000
--- a/oldrep/tool/get_fqdn_tmg1.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-//License: WTFPL
-
-define('F_INPUT','noncloudflarelist.txt');
-define('F_OUTPUT','fqdnlist.txt');
-
-if (!file_exists(F_INPUT)){
- print 'File not found';
- exit;
-}
-
-$result = array();
-
-foreach(explode("\n",file_get_contents(F_INPUT)) as $t){
- $t = explode(' ',$t)[0];
- if (preg_match("/^([a-z0-9\.-]{1,255})\.([a-z]{2,40})$/",$t)){
- $result[] = $t;
- }
-}
-
-$result = array_unique($result);
-file_put_contents(F_OUTPUT,implode("\n",$result));
-
-print 'Done';
diff --git a/oldrep/tool/irssi_cf_alturl.pl b/oldrep/tool/irssi_cf_alturl.pl
deleted file mode 100644
index 07dd8449..00000000
--- a/oldrep/tool/irssi_cf_alturl.pl
+++ /dev/null
@@ -1,333 +0,0 @@
-#!/usr/bin/perl -w
-# This Irssi script automatically check incoming http/https links
-# and replace it to archive one if it is MITMed.
-#
-# Irssi /set Options
-# you can view your current settigns by running "/set cflarealt" in Irssi
-#
-# /set cflarealt_debug <on|off> -- (off) if you have a problem try turning this on to debug
-# /set cflarealt_send2channel <on|off> -- (off) send the converted URL publicly to everyone in your channels
-# /set cflarealt_channels <"#channel1, #channel2, etc"> -- Channels to automatically convert. Empty Defaults to all
-#
-# /set cflarealt_shorturl_activate <on|off> -- (off) set it 'on' to use shortner
-# /set cflarealt_shorturl_min <40> -- (40) How long a url has to be to trigger automatic url shortening
-# /set cflarealt_shorturl_useonion <on|off> -- (off) set it 'on' to use .onion
-#
-# /set cflarealt_localdbpath <"string to path"> -- () '/path/database/split/'
-# /set cflarealt_uselocaldb <on|off> -- (off) if 'on', please set path to local database (or the script will die)
-#
-# /set cflarealt_printurl <on|off> -- (off) if 'on' print converted URL
-# /set cflarealt_donotsend <on|off> -- (off) if 'on' do not send converted URL
-#---------------------------------------------------------------------
-
-##use strict;
-
-use vars qw($VERSION %IRSSI);
-
-$VERSION = "20190706";
-%IRSSI = (
-
- # Special thanks to: "eo, tsaavik"
- authors => "Anonymous",
- contact => 'anonymous@cloudflare-tor.nab',
- name => "irssi_cf_alturl.pl",
- description => "Cloudflare URL replacer",
- license => "WTFPL",
- changed => "$VERSION"
-);
-
-use Irssi;
-use Irssi::Irc;
-use LWP::Simple;
-use LWP::UserAgent;
-
-my (
- $cfg_minurllen, $cfg_send2chan, $cfg_useshort, $cfg_shortonion,
- $cfg_isdebug, $cfg_uselocaldb, $cfg_localdbpath, $cfg_chanlist
-);
-my ( $cfg_printurl, $cfg_donotsendurl );
-my @cached = ();
-
-sub setuphandler {
- Irssi::settings_add_bool( "cflarealt", "cflarealt_send2channel", 0 );
- if ( Irssi::settings_get_bool("cflarealt_send2channel") ) {
- print "cflarealt: sending of shorturl's to public channels enabled";
- $cfg_send2chan = 1;
- }
-
- Irssi::settings_add_bool( "cflarealt", "cflarealt_shorturl_activate", 0 );
- if ( Irssi::settings_get_bool("cflarealt_shorturl_activate") ) {
- print "cflarealt: URL shortner enabled";
- $cfg_useshort = 1;
- }
-
- Irssi::settings_add_bool( "cflarealt", "cflarealt_shorturl_useonion", 0 );
- if ( Irssi::settings_get_bool("cflarealt_shorturl_useonion") ) {
- print "cflarealt: URL onion enabled";
- $cfg_shortonion = 1;
- }
-
- Irssi::settings_add_str( "cflarealt", "cflarealt_channels", "" );
- $cfg_chanlist = Irssi::settings_get_str("cflarealt_channels");
- if ($cfg_chanlist) {
- print "cflarealt: Following channels are now parsed $cfg_chanlist";
- }
-
- Irssi::settings_add_int( "cflarealt", "cflarealt_shorturl_min", 40 );
- my $old_min_url_length = $cfg_minurllen;
- $cfg_minurllen = Irssi::settings_get_int("cflarealt_shorturl_min");
- if ( $cfg_minurllen != $old_min_url_length ) {
- print "cflarealt: min_url_length sucessfully set to $cfg_minurllen";
- }
-
- Irssi::settings_add_bool( "cflarealt", "cflarealt_debug", 0 );
- my $old_debug = $cfg_isdebug;
- $cfg_isdebug = Irssi::settings_get_bool("cflarealt_debug");
- if ( $cfg_isdebug != $old_debug ) {
- if ($cfg_isdebug) {
- print "cflarealt: Debug Mode Enabled";
- $cfg_isdebug = 1;
- }
- else {
- print "cflarealt: Debug Mode Disabled";
- $cfg_isdebug = 0;
- }
- }
-
- Irssi::settings_add_bool( "cflarealt", "cflarealt_uselocaldb", 0 );
- if ( Irssi::settings_get_bool("cflarealt_uselocaldb") ) {
- print "cflarealt: Lookup Local DB enabled";
- $cfg_uselocaldb = 1;
- }
-
- Irssi::settings_add_str( "cflarealt", "cflarealt_localdbpath", "" );
- $cfg_localdbpath = Irssi::settings_get_str("cflarealt_localdbpath");
- if ($cfg_localdbpath) {
- print "cflarealt: DB path set to $cfg_localdbpath";
- }
-
- Irssi::settings_add_bool( "cflarealt", "cflarealt_printurl", 0 );
- if ( Irssi::settings_get_bool("cflarealt_printurl") ) {
- print "cflarealt: print URL enabled";
- $cfg_printurl = 1;
- }
-
- Irssi::settings_add_bool( "cflarealt", "cflarealt_donotsend", 0 );
- if ( Irssi::settings_get_bool("cflarealt_donotsend") ) {
- print "cflarealt: dont-send enabled";
- $cfg_donotsendurl = 1;
- }
-
-}
-
-sub GotUrl {
- my ( $server, $data, $nick, $addr, $target ) = @_;
- if ( !$server || !$server->{connected} ) {
- Irssi::print("Not connected to server");
- return;
- }
- return unless ( goodchan($target) );
- $data =~ s/^\s+//;
- $data =~ s/\s+$//;
- my @urls = ();
- my @knownShortFQDN = ( 'tinyurl.com', 'bit.ly' );
- my ( $url, $a, $return, $char, $ch ) = "";
- my $same = 0;
-
- return unless ( ( $data =~ /\bhttp\:/ ) || ( $data =~ /\bhttps\:/ ) );
- deb("$target triggered GotUrl() with url: $data");
-
- # split on whitespace and get the url(s) out
- # done this way in case there are more than
- # one url per line.
- foreach ( split( /\s/, $data ) ) {
- if ( ( $_ =~ /^http\:/ ) || ( $_ =~ /^https\:/ ) ) {
- foreach $a (@urls) {
- if ( $_ eq $a ) {
-
- # incase they use the same url on the line.
- $same = 1;
- next;
- }
- }
- if ( $same == 0 ) {
- $same = 0;
- push( @urls, $_ );
- }
- }
- }
-
- my ( $myurl, $fqdn, $junk, $mytype );
- my ( $url, $browser, $response, $answer );
- my ( $line, $ifoundit );
-
- foreach (@urls) {
- $myurl = $_;
- ( $junk, $fqdn ) = split( /\/\//, $myurl, 2 );
- ( $fqdn, $junk ) = split( /\//, $fqdn, 2 );
- $mytype = '';
-
- if ( length($fqdn) >= 4 ) {
-## Start of Act
-
-## ACT0. If ShortURL, expand it. (knownShortFQDN)
- if ( grep( /^$fqdn$/, @knownShortFQDN ) ) {
- deb("$target Expand $fqdn");
- $browser = LWP::UserAgent->new;
- $answer = HTTP::Request->new( GET => $myurl );
- $response = $browser->request($answer);
-
- if ( $response->is_success and $response->previous ) {
- if ( $myurl ne $response->request->uri ) {
- $junk = $response->request->uri;
- if ( index( $junk, 'http' ) == 0 ) {
- deb("$target Expanded $fqdn");
- $myurl = $junk;
- ( $junk, $fqdn ) = split( /\/\//, $myurl, 2 );
- ( $fqdn, $junk ) = split( /\//, $fqdn, 2 );
- }
- }
- }
-
- }
-
-## ACT1: Update URL if Cloudflared
- if ( grep( /^$fqdn$/, @cached ) ) {
- deb("$target Found in Cache $fqdn");
- $mytype = '^B^C3[Archive]^O ';
- $myurl = 'https://web.archive.org/web/' . $myurl;
- }
- else {
- if ( $cfg_uselocaldb == 1 ) {
- deb("$target Lookup local DB about $fqdn");
- open( CFSFILE,
- $cfg_localdbpath
- . "cloudflare_"
- . substr( $fqdn, 0, 1 )
- . ".txt" )
- or die "file not found for $fqdn";
- $ifoundit = 0;
- while (<CFSFILE>) {
- $line = $_;
- $line =~ s/\R//g;
- if ( $line eq $fqdn ) {
- $ifoundit = 1;
- last;
- }
- }
- close CFSFILE;
-
- if ( $ifoundit == 1 ) {
- push( @cached, $fqdn );
- $mytype = '^B^C3[Archive]^O ';
- $myurl = 'https://web.archive.org/web/' . $myurl;
- }
- }
- else {
- deb("$target Asking API about $fqdn");
- $answer = '';
- $url =
- 'https://api.searxes.eu.org/_/ismitm.php?f='
- . $fqdn;
- $browser = LWP::UserAgent->new;
- $browser->agent("Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/60.0");
- $response = $browser->get($url);
- $answer = $response->content;
- if ( $answer eq '[true,true]' ) {
- push( @cached, $fqdn );
- $mytype = '^B^C3[Archive]^O ';
- $myurl = 'https://web.archive.org/web/' . $myurl;
- }
- }
- }
-
-## ACT2: Short URL __if__ enabled and long
- if ( $cfg_useshort == 1 ) {
- if ( length($myurl) > $cfg_minurllen ) {
- if ( $cfg_shortonion == 1 ) {
- deb("$target Creating Short Onion for $myurl");
- $url = 'https://url.danwin1210.me/?i=new&url=' . $myurl;
- $browser = LWP::UserAgent->new;
- $browser->agent("Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/60.0");
- $response = $browser->get($url);
- $answer = $response->content;
- if (
- index( $answer,
- 'http://dt2tq5y2ccowebjo.onion/?' ) == 0
- )
- {
- if ( $mytype eq '' ) {
- $mytype = '^B^C7[Onion]^O ';
- }
- else {
- $mytype = '^B^C2[Onion,Archive]^O ';
- }
- $myurl = $answer;
- }
- }
- else {
- deb("$target Creating Short URL for $myurl");
- $url =
- 'https://ux.nu/api/short?format=plain&url=' . $myurl;
- $browser = LWP::UserAgent->new;
- $browser->agent("Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/60.0");
- $response = $browser->get($url);
- $answer = $response->content;
- if ( index( $answer, 'https://ux.nu/' ) == 0 ) {
- if ( $mytype eq '' ) {
- $mytype = '^B^C7[Short]^O ';
- }
- else {
- $mytype = '^B^C2[Short,Archive]^O ';
- }
- $myurl = $answer;
- }
- }
- }
- }
-
-##ACT3: Result
- if ( $cfg_printurl == 1 ) {
- Irssi::print("URL: $mytype$myurl");
- }
-
- if ( $cfg_donotsendurl != 1 ) {
- if ( $cfg_send2chan == 1 ) {
- $server->command("msg $target $myurl");
- }
- else {
- $server->print( "$target", "$mytype$myurl",
- MSGLEVEL_CLIENTCRAP );
- }
- }
-
-## End of Act
- }
- deb("$target process done for input $myurl");
- }
-
-## Cleanup cache
- if ( $#cached > 500 ) {
- @cached = ();
- }
-
- return;
-}
-
-sub deb($) {
- Irssi::print(shift) if ( $cfg_isdebug == 1 );
-}
-
-sub goodchan {
- my $chan = shift;
- return ("OK") if ( !$cfg_chanlist );
- foreach ( split( /\,/, $cfg_chanlist ) ) {
- return ("$_") if ( $_ =~ /$chan/i );
- }
- return undef;
-}
-
-setuphandler();
-Irssi::signal_add( "setup changed", "setuphandler" );
-Irssi::signal_add_last( "message public", "GotUrl" );
-Irssi::signal_add_last( "ctcp action", "GotUrl" );