Ads Skipper

No More waiting to skip their ads

// ==UserScript==
// @name           Ads Skipper
// @author         .
// @namespace      http://userscripts.org/scripts/show/118033
// @description    No More waiting to skip their ads
// @version        3.2.6
// @grant          unsafeWindow
// @grant          GM_xmlhttpRequest
// @run-at         document-start
/*adfly*/
// @include       *adf.ly/*
// @include       *j.gs/*
// @include       *q.gs/*
// @include       *9.bb/*
// @include       *u.bb/*
// @include       *adfly.itsrinaldo.net/*
// @include       *chathu.apkmania.co/*
// @include       *go.phpnulledscripts.com/*
/*mediafire*/
// @include       *mediafire.com/*
/*other*/
// @include        *yooclick.com/*
// @include        *reffbux.com/*
// @include        *4shared.com/*
// @include        *cc-url-shortner.net/*
// @include        *binbox.io/*
// @include        *clictune.com/id*
// @include        *advertisingg.com/*
// @include        *adlock.in/*
// @include        *url.fm/*
// @include        *cur.lv/*
// @include        *ref.so/*
// @include        *seomafia.net/*
// @include        *stash-coins.com/*
// @include        *adfa.st/*
// @include        *adv.li/*
// @include        *lienscash.com/l/*
// @include        *adref.co/*
// @include        *zpag.es/*
// @include        *xa.ly/*
// @include        *robo.us/* 
// @include        *lnk.co/*
// @include        *linkbee.com/*
// @include        *awsclic.com/l/*
// @include        *ity.im/*
// @include        *seomafia.net/?*
// @include        *quidlinks.com/*
// @include        *2dload.com/*
// @include        *lnx.lu/*
// @include        *z.gs/*
// @include        *link2you.ru/*
// @include        *xxlink.net/*
// @include        *ulmt.in/*
// @include        *6s.to/*
// @include        *adfoc.us/*
// @include        *da.feedsportal.com/*
// @include        *coinurl.com/*
// @include        *zo.mu/*
// @include        *.creeperhost.net/*
// @include        *.loadbr.info/link/*
// @include        *zyan.me/*
// @include        *p.pw/*
// @include        *3ra.be/*
// @include        *riurl.com/*
// @include        *rdlnk.co/*
/*urlcash.net*/
// @include        *.bat5.com/*
// @include        *.celebclk.com/*
// @include        *.eightteen.com/*
// @include        *.looble.net/*
// @include        *.peekatmygirlfriend.com/*
// @include        *.pornyhost.com/*
// @include        *.smilinglinks.com/*
// @include        *.urlcash.net/*
// @include        *.urlcash.org/*
// @include        *.xxxs.org/*
/*linkbucks*/
// @include        *.linkbucks.com/
// @include        *.allanalpass.com/*
// @include        *.amy.gs/*
// @include        *.any.gs/*
// @include        *.baberepublic.com/*
// @include        *.deb.gs/*
// @include        *.drstickyfingers.com/*
// @include        *.dyo.gs/*
// @include        *.fapoff.com/*
// @include        *.filesonthe.net/*
// @include        *.galleries.bz/*
// @include        *.hornywood.tv/*
// @include        *.linkbabes.com/*
// @include        *.linkbucks.com/*
// @include        *.linkgalleries.net/*
// @include        *.linkseer.net/*
// @include        *.miniurls.co/*
// @include        *.picbucks.com/*
// @include        *.picturesetc.net/*
// @include        *.placepictures.com/*
// @include        *.poontown.net/*
// @include        *.qqc.co/*
// @include        *.qvvo.com/*
// @include        *.realfiles.net/*
// @include        *.rqq.co/*
// @include        *.seriousdeals.net/*
// @include        *.seriousfiles.com/*
// @include        *.seriousurls.com/*
// @include        *.sexpalace.gs/*
// @include        *.seriousfiles.com/*
// @include        *.theseblogs.com/*
// @include        *.thesefiles.com/*
// @include        *.theseforums.com/*
// @include        *.thosegalleries.com/*
// @include        *.tinybucks.net/*
// @include        *.tinylinks.co/*
// @include        *.tnabucks.com/*
// @include        *.tubeviral.com/*
// @include        *.uberpicz.com/*
// @include        *.ubervidz.com/*
// @include        *.ubucks.net/*
// @include        *.ugalleries.net/*
// @include        *.ultrafiles.net/*
// @include        *.urlbeat.net/*
// @include        *.urlpulse.net/*
// @include        *.whackyvidz.com/*
// @include        *.youfap.me/*
// @include        *.yyv.co/*
// @include        *.zxxo.net/*
// @include        *.zff.co/*
// @include        *.freean.us/*
// @include        *.cash4files.com/*
// @include        *.megaline.co/*
// @include        *.goneviral.com/*
/*ilixin*/
// @include        *ilix.in/*
// @include        *priva.us/*
// @include        *urlink.at/*
// @include        *lix.in/-*
/*ajaxian*/
// @include        *ssl.gs/*
// @include        *adtwixt.com/*
// @include        *link.tl/*
// @include        *adblue.us/*
// @include        *://tr5.in/*
// @include        *link.tl/fly/go.php?to=*
// @include        *1ly.us/*
// @include        *bc.vc/*
// @include        *adjoin.me/*
// @include        *1ly.us/*
// @include        *mo.vc/*
// @include        *adsbrite.net/*
// @include        *4ks.net/*
// @include        *youlinking.com/*
// @include        *qurlt.com/*
// @include        *take-a.com/*
// @include        *filesko.com/*
// @include        *zpoz.net/*
// @include        *pp.nu/*
// @include        *mhz.me/*
// @include        *fly2url.com/*
// @include        *pea.bz/*
// @include        *imi.us.tc/*
// @include        *shortit.in/*
// @include        *www.adsbrite.net/*
// @include        *gr8s.us/*
// @include        *adcou.ch/*
// @include        *adref.co/*
// @include        *bih.cc/*
// @include        *ity.im/*
// @include        *iiiii.in/*
// @include        *sk.gy/*
// @include        *.weeurl.co.uk/*
// @include        *tey.me/*
// @include        *short.pk/*
// @include        *wwy.me/*
// @include        *ushorten.me/*
// @include        *adcrun.ch/*
// @include        *sh.st/*
/*image host*/
// @include        *cyberpics.net/*
// @include        *imgdino.com/viewer.php*
// @include        *imagedunk.com/*
// @include        *picleet.com/*
// @include        *piclambo.net/*
// @include        *picturedip.com/*
// @include        *imageporter.com/*
// @include        *imageswitch.com/*
// @include        *imgchili.com/*
// @include        *imgchili.net/*
// @include        *imagekitty.com/*
// @include        *imagetwist.com/*
// @include        *imagebam.com/*
// @include        *imagevenue.com/*
// @include        *mirrorcreator.com/*
// @include        *adult-images.net/show.php/*
// @include        *bayimg.com/*
// @include        *bild.me/bild.php?file=*
// @include        *bilder-hochladen.net/files/*
// @include        *bilder-upload.eu/show.php?file=*
// @include        *bildr.no/view/*
// @include        *imagearn.com/*
// @include        *tinypic.com/view.php?*
// @include        *castawayimage.com/viewer.php?file=*
// @include        *crazypix.ru/images/*
// @include        *ifotka.ru/*
// @include        *fotoupload.ru/*
// @include        *freeuploadimages.org/*
// @include        *fuckimagehost.com/*
// @include        *hdimage.org/*
// @include        *imagepremium.com/*
// @include        *imgfuck.com/*
// @include        *imgpulse.com/*
// @include        *iv.pl/*
// @include        *myadultimage.com/*
// @include        *photo-chicken.com/*
// @include        *pics-hosting.com/*
// @include        *pixmaster.net/*
// @include        *pornpicuploader.com/*
// @include        *quickpicshare.com/*
// @include        *realadultimages.com/*
// @include        *shareimage.ro/*
// @include        *uploadz.eu/*
// @include        *viralweed.com/*
// @include        *forscreen.com/image.php?id=*
// @include        *fotosik.pl/pokaz_obrazek/*
// @include        *fotoupload.ru/*
// @include        *fastpic.ru/*
// @include        *funkyimg.com/*
// @include        *pixroute.com/*
// @include        *imagecherry.com/*
// @include        *pixhost.org/*
// @include        *pixsor.com/*
// @include        *tinypix.me/*
// @include        *iyuterscreens.com/*
// @include        *uploadimage.in/*
// @include        *pimpandhost.com/*
/*paste tools*/
// @include       *pastebin.com/*
// @include       *tny.cz/*
// @include       *tinypaste.*/*
// ==/UserScript==

(function () {

    var uri = /((((ftp|https?):\/\/)|www\.)((([-_\w])+\.)+[a-z]{2,5}|((\d{1,3}\.){3}\d{1,3}))(\:\d+)?(\/([-a-z\d%_.~+=;\(\)])*)*(\?([;&a-z\d%_.~+=-])*)?(\#([-a-z\d_])*)?|\b([a-z0-9_\\.\\-]+)@([\\da-z\\.-]+)\\.([a-z\\.]{2,6})\b)/i,
        filter = /^(textarea|input|button|select|option|meta|link|noscript|a|html|head|object|embed|script|style|frameset|frame|iframe)$/i,
        scaled = 1,
        key, fn, img, drag, zoomX, zoomY, dragFlag, win, scale, percentage, L, R, Q, v, x;

    win = (function () {
        if (window.opera || window == unsafeWindow) {
            return (function () {
                var a = document.createElement('a');
                a.setAttribute('onclick', 'return window');
                return a.onclick();
            })()
        }
        return unsafeWindow;
    })();

    function walker(root) {
        var tW = document.createTreeWalker(
            root || document.body,
            NodeFilter.SHOW_TEXT, {
                acceptNode: function (a) {
                    if (!filter.test(a.parentNode.localName) && uri.test(a.data)) {
                        return NodeFilter.FILTER_ACCEPT;
                    } else {
                        return NodeFilter.FILTER_SKIP;
                    }
                }
            },
            false);
        var list = [];
        while (tW.nextNode()) list.push(tW.currentNode);
        return list;
    }

    function linky(a) {
        var node = [a];
        while (node.length) {
            var cur = node.pop();
            var m = uri.exec(cur.nodeValue);
            if (!m) {
                continue;
            } else if (m.index == 0) {
                var link = m[0].replace(/[\/|\.]*$/, "");
                if (cur.nodeValue.length > link.length) {
                    cur.splitText(link.length);
                    node.push(cur.nextSibling);
                }
                a = document.createElement('a');
                a.href = (link.indexOf('://') == -1 ? ((link.indexOf('@') > -1) ? "mailto:" : "http://") : "") + link;
                a.target = '_blank';
                cur.parentNode.insertBefore(a, cur);
                a.appendChild(cur);
            } else {
                cur.splitText(m.index);
                node.push(cur.nextSibling);
            }
        }
    }

    function show(a) {
        if (!a) return;
        removeEvent(window, 'DOMContentLoaded', fn);
        if (window.opera && !/imagebam/i.test(document.domain)) return go(a.src || a.href);
        win.open = function () {};
        v = document.documentElement;
        if (v.hasAttribute("style")) v.removeAttribute("style");
        var style = ['',
            'html {',
            '    overflow: auto !important;',
            '}',
            'body {',
            '    background: url("data:image/png;base64,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") repeat scroll 0 0 #222222 !important;',
            '    text-align: center !important;',
            '    color: #EEEEEE !important;',
            '}',
            'img {',
            '    border: medium solid #272727 !important;',
            '    margin: 8px !important;',
            '}',
            'img.zoom-in {',
            '    cursor: -moz-zoom-in;',
            '    cursor: -webkit-zoom-in !important;',
            '    cursor: zoom-in',
            '}',
            'img.zoom-out {',
            '    cursor: -moz-zoom-out;',
            '    cursor: -webkit-zoom-out !important;',
            '    cursor: zoom-out;',
            '}',
            'img.drag {',
            '    cursor: move !important',
            '}'
        ].join("\n");
        img = new Image();
        img.src = a.src || a.href;
        addEvent(img, 'load', function (e) {
            resize(e)
        });
        document.head.innerHTML = "";
        document.body.innerHTML = "";
        document.title = /([^\/]+)\/*$/i.exec(img.src)[1];
        addEvent(img, 'click', function (e) {
            resize(e)
        });
        var i = setInterval(function () {
            if (img.naturalWidth && img.naturalHeight) {
                clearInterval(i);
                i = null;
                document.title += " (" + img.naturalWidth + ' \u00d7 ' + img.naturalHeight + ")";
            }
        }, 100);
        append('style', {
            type: 'text/css',
            textContent: style
        });
        append('link', {
            type: /(jpg|jpeg|png|gif|bmp)$/i.exec(img.src) ? 'image/' + RegExp.$1 : 'image/x-icon',
            rel: 'shortcut icon',
            href: img.src
        });
        document.body.appendChild(img);
        addEvent(img, 'mousedown', function (e) {
            if (e.button == 0 && img.className == 'zoom-out') {
                e.preventDefault();
                drag = {
                    X: e.screenX,
                    Y: e.screenY
                };
            }
        });
        addEvent(img, 'mousemove', function (e) {
            if (!drag) return;
            e.preventDefault();
            img.className = 'drag';
            dragFlag = 1;
            window.scrollBy(drag.X - e.screenX, drag.Y - e.screenY);
            drag.X = e.screenX;
            drag.Y = e.screenY;
        });
        addEvent(img, 'dragstart', function (e) {
            if (/drag|out/i.test(img.className)) e.preventDefault();
        });
        addEvent(img, 'mouseup', function (e) {
            if (typeof drag == 'object') {
                e.preventDefault();
                img.className = "zoom-out";
                drag = null;
            }
        });
    }

    function resize(e) {
        if (dragFlag) return dragFlag = 0;
        var windowWidth = window.innerWidth - 16,
            windowHeight = window.innerHeight - 16;
        switch (scaled) {
        case 0:
            zoomX = Math.max(0, Math.round((e.pageX - img.offsetLeft) * (img.naturalWidth / img.width) - window.innerWidth / 2 + 8));
            zoomY = Math.max(0, Math.round((e.pageY - img.offsetTop) * (img.naturalHeight / img.height) - window.innerHeight / 2 + 8));
            img.width = img.naturalWidth;
            img.height = img.naturalHeight;
            if (img.naturalWidth > windowWidth || img.naturalHeight > windowHeight) {
                img.className = "zoom-out";
                window.scrollTo(zoomX, zoomY);
            }
            scaled = 1;
            break;
        case 1:
            if (img.naturalWidth > windowWidth || img.naturalHeight > windowHeight) {
                percentage = parseFloat((windowHeight * img.naturalWidth * 0.95) / (img.naturalHeight * windowWidth));
                img.width = windowWidth * percentage;
                img.height = parseInt(img.naturalHeight * windowWidth * percentage / img.naturalWidth);
                img.className = "zoom-in";
            }
            scaled = 0;
            break;
        }
    }

    function go(url) {
        document.title = 'Redirect...';
        removeEvent(window, 'DOMContentLoaded', fn);
        return top.location.assign(url);
    }

    function parse(a, b) {
        var o = a.exec(($("script[contains(text(),'" + b + "')]") || document.head).innerHTML) || a.exec(document.body.innerHTML);
        if (o) {
            if (/adf.ly|q.gs|j.gs|9.bb|u.bb/i.test(document.domain)) {
                L = o[1];
                if (/^\d/.test(L)) {
                    key = "zzz=" + L;
                    return adf(key);
                }
                if (location.hash) L = L + location.hash;
                return go(L);
            }
            return go(o[1]);
        }
    }

    function $(ar) {
        var sS = ar.substr(0, 1);
        switch (sS) {
        case '#':
            return document.getElementById(ar.substring(1));
            break;
        case '.':
            var clas = document.getElementsByClassName(ar.substring(1));
            if (!clas.length) return 0;
            if (clas.length == 1) return clas[0];
            return clas;
            break;
        case '>':
            var name = document.getElementsByName(ar.substring(1));
            if (!name.length) return 0;
            if (name.length == 1) return name[0];
            return name;
            break;
        default:
            var temp = [],
                tag = document.getElementsByTagName(ar);
            if (tag.length) {
                tag.length == 1 ? tag = tag[0] : 0;
                return tag;
            } else {
                var xpath = document.evaluate(".//" + ar, document, null, 5, null);
                var node = xpath.iterateNext();
                while (node) {
                    temp.push(node);
                    node = xpath.iterateNext();
                }
                temp.length == 1 ? temp = temp[0] : temp.length == 0 ? temp = 0 : null;
                return temp;
            }
        }
    }

    function remove(ar) {
        if (ar && typeof ar === 'string') {
            return remove($(ar));
        }
        if (ar && ar.length) {
            for (var i = 0; i < ar.length; ++i) {
                remove(ar[i]);
            }
            return;
        }
        if (ar && ar.nodeType) {
            ar.parentNode.removeChild(ar);
        }
    }

    function append(node, val) {
        var el = document.createElement(node);
        switch (typeof val) {
        case "object":
            for (var i in val) el[i] = val[i];
            break;
        case "function":
            el.textContent = "(" + val.toString() + ")()";
            break;
        case "string":
            el.textContent = val;
            break;
        }
        document.head.appendChild(el);
        return el;
    }

    function addEvent(a, b, c) {
        if (a.addEventListener) {
            return a.addEventListener(b, c, false);
        }
        return;
    }

    function removeEvent(a, b, c) {
        if (a.removeEventListener) {
            return a.removeEventListener(b, c, false);
        }
        return;
    }

    function noop() {}

    function cook() {
        var b = new Date(),
            a, b, c, d, e, i;
        b.setTime(b.getTime() - (864 * 1e5));
        c = document.cookie.split(';');
        if (!c) return;
        for (i in c) {
            a = c[i].split('=')[0];
            d = ["",
                a + "=; " + "expires=" + b.toGMTString() + "; " + "path=/; " + "domain=." + document.domain + "; ",
                a + "=; " + "expires=" + b.toGMTString() + "; " + "path=/; " + "domain=" + document.domain + "; ",
                a + "=; " + "expires=" + b.toGMTString() + "; " + "domain=." + document.domain + "; ",
                a + "=; " + "expires=" + b.toGMTString() + "; " + "domain=" + document.domain + "; ",
                a + "=; " + "expires=" + b.toGMTString() + "; " + "path=/; ",
                a + "=; " + "expires=" + b.toGMTString() + "; "
            ];
            for (e in d) {
                document.cookie = d[e];
            }
        };
    }

    var list = {
        adf: {
            host: ["adf.ly", "q.gs", "j.gs", "9.bb", "u.bb", "adfly.itsrinaldo.net", "chathu.apkmania.co", "go.phpnulledscripts.com"],
            fn: function () {
                cook();
                try {
                    win.onbeforeunload = null
                } catch (e) {
                    noop()
                };
                remove(['iframe', '#_bd', '#fade', "#_sm"]);
                if (L = win.eu) {
                    v = x = "",
                    Q = L.indexOf("!HiTommy"),
                    R = L.indexOf("?");
                    if (Q > -1) L = L.substring(0, Q);
                    if (R > -1) L = L.substring(0, R);
                    for (var i = 0; i < L.length; i++) {
                        if (i % 2 == 0) {
                            v += L[("charAt")](i);
                        } else {
                            x = L[("charAt")](i) + x;
                        }
                    }
                    L = v + x;
                    L = atob(L);
                    L = L.substring(2);
                    if (location.hash) L = L + location.hash;
                    return go(L);
                } else if ($('#continue')) {
                    return go($('div/a'));
                } else if ($("#adfly_bar")) {
                    document.title = "Redirect...";
                    return win.close_bar();
                }
            }
        },
        adfoc: {
            host: 'adfoc.us',
            fn: function () {
                if (L = win.click_url) {
                    return go(L);
                }
                v = /[^\/]var click_url\s*=\s*["']([^'"]+)["']/g;
                x = 'var click_url';
                return parse(v, x);
            }
        },
        urlc: {
            host: ["bat5.com", "celebclk.com", "eightteen.com", "peekatmygirlfriend.com", "pornyhost.com", "smilinglinks.com", "urlcash.net", "looble.net", "urlcash.org", "xxxs.org"],
            fn: function () {
                remove('iframe');
                if (L = win.linkDestUrl) {
                    return go(L);
                }
                v = /linkDestUrl\s*=\s*["']([^'"]+)["']/g;
                x = "linkDestUrl";
                return parse(v, x);
            }
        },
        advl: {
            host: "adv.li",
            fn: function () {
                remove('iframe');
                if (L = win._url) {
                    return go(L);
                }
                v = /_url\s?=\s?["']([^'"]+)["']/g;
                x = '_d=1000*3';
                return parse(v, x);
            }
        },
        lien: {
            host: "lienscash.com",
            fn: function () {
                remove('iframe');
                if (L = win.$time.data('lc')) {
                    R = document.createElement('p');
                    R.innerHTML = L;
                    Q = R.children[0].id;
                    return go(Q);
                }
            }
        },
        adref: {
            host: "adref.co",
            fn: function () {
                v = location.pathname;
                if (v.indexOf(".php") === -1 && v.length > 1) {
                    return go('/redirect.php?code=' + v.replace(/[^\w+]/, ""));
                }
            }
        },
        zpag: {
            host: "zpag.es",
            fn: function () {
                v = /window.location\s*=\s*["']([^'"]+)["'];/g;
                x = 'function timeout';
                if (/[\d\w]{3,6}/i.test(location.pathname)) {
                    return parse(v, x);
                }
            }
        },
        xaly: {
            host: ["xa.ly", "robo.us"],
            fn: function () {
                remove('iframe');
                if (L = win.fl) {
                    go(win.Base64.decode(L));
                }
            }
        },
        lnkco: {
            host: ["lnk.co", "linkbee.com"],
            fn: function () {
                if (L = $('#dest')) return go(L.src);
                if (v = $("#urlholder")) return go(v.value);
            }
        },
        awsc: {
            host: "awsclic.com",
            fn: function () {
                remove(["iframe", "#block_pub", "#blockblockA"]);
                if (L = $("img[contains(@src,'acceder.png')]").alt) {
                    go(L);
                };
            }
        },
        media: {
            host: "mediafire.com",
            fn: function () {
                if (/kNO\s*=\s*["']([^"']+)["']/g.exec($("script[contains(text(),'kNO')]").innerHTML)) {
                    go(RegExp.$1);
                    remove([".top", ".right", ".left", ".footer", "iframe", ".superAdWrap"]);
                }
            }
        },
        bucks: {
            host: ["linkbucks.com", "allanalpass.com", "amy.gs", "any.gs", "baberepublic.com", "deb.gs", "drstickyfingers.com", "dyo.gs", "fapoff.com", "filesonthe.net", "galleries.bz", "hornywood.tv", "linkbabes.com", "linkbucks.com", "linkgalleries.net", "linkseer.net", "miniurls.co", "picbucks.com", "picturesetc.net", "placepictures.com", "poontown.net", "qqc.co", "qvvo.com", "realfiles.net", "rqq.co", "seriousdeals.net", "seriousfiles.com", "seriousurls.com", "sexpalace.gs", "seriousfiles.com", "theseblogs.com", "thesefiles.com", "theseforums.com", "thosegalleries.com", "tinybucks.net", "tinylinks.co", "tnabucks.com", "tubeviral.com", "uberpicz.com", "ubervidz.com", "ubucks.net", "ugalleries.net", "ultrafiles.net", "urlbeat.net", "urlpulse.net", "whackyvidz.com", "youfap.me", "yyv.co", "zxxo.net", "zff.co", "freean.us", "cash4files.com", "megaline.co", "goneviral.com"],
            fn: function () {
                if (location.pathname.indexOf('verify') > -1) {
                    return location.reload();
                }
                remove('#content');
                var Lbjs = win.Lbjs;
                if (Lbjs.TargetUrl) {
                    Lbjs.OnTimerComplete();
                    if (/mediafire|bit.ly/i.test(Lbjs.TargetUrl)) {
                        return go("http://redirectme.to/" + Lbjs.TargetUrl);
                    }
                    return go(Lbjs.TargetUrl);
                }
            }
        },
        lixin: {
            host: "\\blix.in\\b",
            fn: function () {
                if ($('#ibdc')) {
                    return remove("form[@action='ads.php']");
                }
                if (L = $("form/input[contains(@onclick,'clickit()')]")) {
                    L.click();
                    return document.title = "Redirect...";
                }
                if (L = $(">ifram")) {
                    if (L.nodeType) {
                        return go(L.src);
                    }
                    if (L.length) {
                        return go(L[0].src);
                    }
                }
            }
        },
        ilix: {
            host: ["ilix.in", "priva.us", "urlink.at"],
            fn: function () {
                var loc = location;
                var path = loc.pathname;
                if (path.indexOf(".php") === -1 && path.length > 1) {
                    remove(["table[@align='center']", "td[@align='center']/div"]);
                    win.seconds = 0;
                    if ($("#captcha")) {
                        return $("#captcha-form").focus();
                    }
                    if (L = $(">frm")) {
                        if (L.nodeType) {
                            return L.submit();
                        }
                        if (L.length) {
                            return L[0].submit();
                        }
                    }
                    if (L = $(">ifram")) {
                        if (L.nodeType) {
                            return go(L.src);
                        }
                        if (L.length) {
                            return go(L[0].src);
                        }
                    }
                }
            }
        },
        bcvc: {
            host: "bc.vc",
            fn: function () {
                remove(['iframe', 'fly_head_bottom']);
                x = /\$.post([^{]+)\{opt:'make_log'([^}]+)\}\},/g;
                v = x.exec($("script[contains(text(),'var rr = function')]").innerHTML);
                if (v) {
                    var i = "function check(){" + v[0] + " function(rr){var jj = eval('(' + rr + ')');if(jj.message) {clearInterval(ii);top.location.href=jj.message.url;}})}var ii = setInterval('check();', 1000)";
                    append('script', i);
                    document.title = "Ads Skipper...";
                }
            }
        },
        jack: {
            host: ["tr5.in", "adjoin.me", "adblue.us", "1ly.us", "wwy.me", "iiiii.in", "ushorten.me", "short.pk", "tey.me", "fly2url.com", "pea.bz", "bih.cc", "imi.us.tc", "weeurl.co.uk", "shortit.in", "adcrun.ch", "sk.gy", "adjoin.me", "1ly.us", "mo.vc", "4ks.net", "youlinking.com", "qurlt.com", "take-a.com", "filesko.com", "zpoz.net", "pp.nu", "mhz.me", "adsbrite.net", "gr8s.us", "link.tl", "link.tl/fly/go.php?to", "adtwixt.com", "ssl.gs"],
            fn: function () {
                remove('iframe');
                x = /eval.*/;
                Q = eval(x.exec($("script[contains(text(), 'make_log')]").innerHTML)[0].replace("eval", ""));
                v = /\$.post([^{]+)\{opt:'make_log'([^}]+)\}\},/igm.exec(Q);
                if (v) {
                    var i = "function check(){" + v[0] + " function(rr){var jj = eval('(' + rr + ')');if(jj.message){clearInterval(ii);top.location.href=jj.message.url;}})}var ii = setInterval('check();', 1000)";
                    append('script', i);
                    document.title = "Zaharyas Skip Bot...";
                } else {
                    r = /;top.location.href\s*=\s*['"]([^"']+)["']/igm.exec(Q);
                    go(r[1]);
                }
            }
        },
        seomaf: {
            host: "seomafia.net",
            fn: function () {
                if (L = $("a[contains(@title, 'Click to proceed')]")) {
                    go(L);
                }
            }
        },
        quidlinks: {
            host: "quidlinks.com",
            fn: function () {
                v = /['"]<form.*form>["']/g;
                Q = v.exec($("script[contains(text(), 'function countdown()')]").innerHTML)[0];
                if ($('#area') && Q) {
                    $('#area').innerHTML = Q;
                    $("div[@id='area']/form/input[@class='skip']").click();
                } else if ($('#dialog-overlay') && Q) {
                    $('#dialog-overlay').innerHTML = Q;
                    $("div[@id='dialog-overlay']/form/input[@class='skip']").click();
                } else {
                    go($("td[@width='30%']/a"));
                }
            }
        },
        dload: {
            host: "2dload.com",
            fn: function () {
                win.open = function () {};
                if (L = $("a[contains(@onclick, 'window.open')]")) {
                    var L = !L.nodeType ? L[0] : L;
                    return go(L);
                }
            }
        },
        lnxlu: {
            host: ["lnx.lu", "z.gs", "url.fm"],
            fn: function () {
                if (L = $("#clickbtn")) {
                    go(L.children[0]);
                }
            }
        },
        xxlinx: {
            host: "xxlink.net",
            run: function () {
                remove("iframe");
                v = /href\s*=\s*['"]([^"']+)["']/g;
                x = 'loadCounter';
                parse(v, x);
            }
        },
        ulmtin: {
            host: "ulmt.in",
            fn: function () {
                if (Q = /href\s*=\s*["']([^"']+)[""]/.exec($("script[contains(text(), 'CountdownTimer')]").innerHTML)) {
                    remove('div');
                    return go(Q[1]);
                } else if ($('#iframe_win')) {
                    remove('div');
                    return go($('#iframe_win').src);
                }
            }
        },
        sst: {
            host: "6s.to",
            fn: function () {
                remove('iframe');
                x = /\{id.*[^\n]\}/g;
                Q = x.exec($("script[contains(text(), 'var seconds')]").innerHTML);
                v = 188893200;
                if (Q) {
                    Q = Q[0];
                    Q = Q.replace(/t:["']\d+["']/, 't:"' + v + '"');
                    R = 'function check(){var a=Math.floor(Math.random()*11);var b=Math.floor(Math.random()*11);var remhsh= $("#remhsh").html();$.post("/getlink.php",' + Q + ',function(data){var x = /href=[\"\']([^\"\']+)[\"\']/igm;var y = x.exec(data);if(y){clearInterval(ii);location.assign(y[1]);}});};var ii=setInterval("check();", 1000);';
                    append('script', R);
                } else if (document.body.innerHTML.match(/too\s*soon/i)) {
                    location.reload();
                }
            }
        },
        zmo: {
            host: "zo.mu",
            fn: function () {
                if (location.search.length > 0 && document.cookie.length > 0) {
                    return top.location.reload();
                }
            }
        },
        ityim: {
            host: "ity.im",
            fn: function () {
                if (window.opera) {
                    if (typeof win.go == 'function') {
                        return win.go(new Date().getTime());
                    }
                    return win.redirect();
                }
                if (L = $('frame[contains(@src,"interheader")]')) {
                    return go(L.src);
                }
                if ($('frame[contains(@src,"landingheader")]')) {
                    return go($('#main').src);
                }
                if (/krypted=([^&]+)/g.exec($('script[contains(text(),"getMouseXY")]').innerHTML)) {
                    R = win.des('ksnslmtmk0v4Pdviusajqu', win.hexToString(RegExp.$1), 0, 0);
                    if (R) {
                        return go('http://ity.im/1104_21_50846_' + R);
                    }
                }
            }
        },
        mcreat: {
            host: "mirrorcreator.com",
            fn: function () {
                win.open = function () {};
                if (/file/i.test(location.pathname)) {
                    v = $("script[contains(text(),'ajaxRequest')]").innerHTML;
                    x = /\/mstats?.php([^"']+)/i;
                    if (L = x.exec(v)) return go(L[0]);
                }
                if (/hlink|host|rlink/i.test(location.pathname)) {
                    if (L = $('#redirectlink')) return go(L.children[0]);
                }
            }
        },
        imagebam: {
            host: "imagebam.com",
            fn: function () {
                show($("img[contains(@onclick,'scale')]"));
            }
        },
        imageporter: {
            host: ["imageporter.com", "picturedip.com", "piclambo.net", "pictureturn.com", "imagedunk.com", "picleet.com", "imageswitch.com"],
            fn: function () {
                if (win.splashpage) try {
                    win.splashpage.closeit();
                } catch (e) {};
                show($("img[contains(@src,'imageporter.com/i/')]"));
            }
        },
        imagechili: {
            host: ["imgchili.com", "imgchili.net"],
            fn: function () {
                show($("img[contains(@onclick,'scale')]"));
            }
        },
        imagekitty: {
            host: "imagekitty.com",
            fn: function () {
                show($("img[contains(@src,'imagekitty.com/i/')]"));
            }
        },
        imagetwist: {
            host: ["imagetwist.com", "imagevenue.com"],
            fn: function () {
                show($("img[contains(@onload,'scaleImg')]"));
            }
        },
        adlimage: {
            host: "adult-images.net",
            fn: function () {
                show($("img[contains(@onclick,'adjustImage')]"));
            }
        },
        bayimage: {
            host: "bayimg.com",
            fn: function () {
                show($("img[@id='mainImage']"));
            }
        },
        imagearn: {
            host: "imagearn.com",
            fn: function () {
                show($("img[@id='img']"));
            }
        },
        bildme: {
            host: "bild.me",
            fn: function () {
                show($("img[@id='Bild']"));
            }
        },
        bildr: {
            host: "bildr.no",
            fn: function () {
                show($("img[@class='bilde']"));
            }
        },
        hochl: {
            host: "bilder-hochladen.net",
            fn: function () {
                show($("img[contains(@src,'/files/')]"));
            }
        },
        tinypic: {
            host: "tinypic.com",
            fn: function () {
                show($("#imgElement"));
            }
        },
        ultimage: {
            host: ["castawayimage.com", "crazypix.ru", "ifotka.ru", "foto-boom.org", "fotoupload.ru", "freeuploadimages.org", "fuckimagehost.com", "hdimage.org", "imagepremium.com", "imgfuck.com", "imgpulse.com", "iv.pl", "myadultimage.com", "photo-chicken.com", "pics-hosting.com", "pixmaster.net", "pornpicuploader.com", "quickpicshare.com", "realadultimages.com", "shareimage.ro", "uploadz.eu", "viralweed.com"],
            fn: function () {
                show($("div[@id='page_body']/div/a/img"));
            }
        },
        bilduld: {
            host: "bilder-upload.eu",
            fn: function () {
                show($("input[@type='image']"));
            }
        },
        forscreen: {
            host: "forscreen.com",
            fn: function () {
                show($("img[contains(@onclick, 'this.src=')]"));
            }
        },
        fotosik: {
            host: "fotosik.pl",
            fn: function () {
                show($("img[@id='photoDivImage']"));
            }
        },
        fotoupload: {
            host: "fotoupload.ru",
            fn: function () {
                show($("img[contain(@style, 'dashed')]"));
            }
        },
        funkyimg: {
            host: "funkyimg.com",
            fn: function () {
                show($("img[contains(@onclick, 'scaleImage')]"));
            }
        },
        fastpic: {
            host: "fastpic.ru",
            fn: function () {
                show($("img[@id='image']"));
            }
        },
        pixroute: {
            host: "pixroute.com",
            fn: function () {
                show($("img[contains(@src, 'pixroute.com/i/')]"));
            }
        },
        imgcherry: {
            host: "imagecherry.com",
            fn: function () {
                var $$ = win.jQuery;
                $$(document).ready(function () {
                    $$(document).unbind('mousemove');
                });
                show($("img[contains(@onload, 'scaleImg')]"));
            }
        },
        fportal: {
            host: "feedsportal.com",
            fn: function () {
                if (v = $("#skip")) return go(v);
                go($("div[@align='right']/p/a[1]"));
            }
        },
        imgdino: {
            host: "imgdino.com",
            fn: function () {
                show($("#cursor_lupa"));
            }
        },
        coin: {
            host: ["coinurl.com", "cur.lv"],
            fn: function () {
                if (v = $('#skip-ad')) {
                    go(v);
                }
            }
        },
        pixhost: {
            host: "pixhost.org",
            fn: function () {
                if (v = $('#show_image')) {
                    show(v)
                }
            }
        },
        creeperhost: {
            host: "creeperhost.net",
            fn: function () {
                if (/download/i.test(location.pathname)) {
                    var $$ = win.jQuery;
                    var L = function (data) {
                        go($$("browser", $$(data)).html())
                    };
                    $$.get(location.href + "&wget", null, L, null);
                }
            }
        },
        loadbr: {
            host: "loadbr.info",
            fn: function () {
                if (/\/link\//i.test(location.pathname)) {
                    var link = location.search.replace("?url=", "");
                    go(link);
                }
            }
        },
        cyberpics: {
            host: "cyberpics.net",
            fn: function () {
                if ($("#thumb")) {
                    show($(".lightbox"));
                }
            }
        },
        adfst: {
            host: "adfa.st",
            fn: function () {
                if (v = $(".skip_ad").parentNode) {
                    go(v);
                };
            }
        },
        stash: {
            host: "stash-coins.com",
            fn: function () {
                R = $("#topBarButton");
                if (R) {
                    v = /var\s*TarUrl\s*=\s*['"]([^"']+)['"]/g;
                    x = "TarUrl";
                    return parse(v, x);
                }
            }
        },
        pixsor: {
            host: "pixsor.com",
            fn: function () {
                show($('#iimg'));
            }
        },
        tinypix: {
            host: "tinypix.me",
            fn: function () {
                var imgs = document.images,
                    img;
                for (var i in imgs) {
                    if (imgs[i].nextElementSibling.localName == 'br') {
                        img = imgs[i];
                    }
                    return show(img);
                }
            }
        },
        iyuterscreens: {
            host: "iyuterscreens.com",
            fn: function () {
                show($('#full_image'));
            }
        },
        refso: {
            host: "ref.so",
            fn: function () {
                win.open = null;
                if (L = $('#btn_open')) {
                    go(L.children[0]);
                }
            }
        },
        paste: {
            host: ["pastebin.com", "tny.cz", "tinypaste.net", "tinypaste.in", "tinypaste.org", "tinypaste.com"],
            fn: function () {
                var res = walker(document.body);
                for (var i in res)(function (a) {
                    linky(a);
                })(res[i])
            }
        },
        uploadimage: {
            host: "uploadimage.in",
            fn: function () {
                show($('#fancybox'));
            }
        },
        pimpandhost: {
            host: "pimpandhost.com",
            fn: function () {
                show($('#image'));
            }
        },
        advert: {
            host: ["advertisingg.com", "riurl.com"],
            fn: function () {
                var frm = ["",
                    "<form method='POST'>",
                    "<input type='hidden' name='hidden' value='1'>",
                    "<input type='submit' id='skipMe' value=' ' name='image'>",
                    "</form>"
                ].join('\n');

                if ($('#area')) {
                    document.head.insertAdjacentHTML('beforeend', frm);
                    $('#skipMe').click();
                }
            }
        },
        clictune: {
            host: "clictune.com",
            fn: function () {
                var v = /url=([^"']+)/gi,
                    x = /https?:\/\/([^&]+)/gi;
                if (R = v.exec($('head').textContent)) {
                    L = x.exec(decodeURIComponent(R[1]));
                    if (L) go(L[0]);
                }
            }
        },
        binbox: {
            host: "binbox.io",
            fn: function () {
                var $$ = win.jQuery;
                remove('iframe');
                if (v = $("script[contains(text(),'start_clock')]")) {
                    L = /token:\s+["']([^"']+)/gi.exec(v.textContent)[1];
                    R = /validate:\s+["']([^"']+)/gi.exec(v.textContent)[1];
                    $$.post(win.base_url + "ad/hit?paste=" + location.pathname.replace(/\//g, ''), {
                        token: L,
                        validate: R
                    }, function (result) {
                        if (result.ok == true) {
                            $$('#page-ready').find('button[name="token"]').val(result.token).click();
                        }
                    }, 'json')
                }
            }
        },
        cccc: {
            host: "cc-url-shortner.net",
            fn: function () {
                return go(location.href.replace("http://cc-url-shortner.net/", ""))
            }
        },
        zyan: {
            host: "zyan.me",
            fn: function () {
                if (!$('#ad_1')) return;
                R = ['<form action="" method="post">',
                    '<button value="1" name="click" type="submit" id="duh"></button>',
                    '</form>'
                ].join('\n');
                document.body.insertAdjacentHTML('beforeend', R);
                $('#duh').click();
            }
        },
        ppw: {
            host: "p.pw",
            fn: function () {
                if (v = $("script[contains(text(),'Skip Ad')]")) {
                    if (/location\s*=\s*["']([^"']+)/gi.exec(v.textContent)) return go(RegExp.$1);
                }
            }
        },
        rabe: {
            host: "3ra.be",
            fn: function () {
                v = win.fc.toString();
                if (v && /href=\s*["']([^"']+)/i.exec(v)) return go(RegExp.$1);
            }
        },
        fshared: {
            host: "4shared.com",
            fn: function () {
                if (/\/(get|rar|zip|file|android|software|program)\//i.test(location.href)) {
                    GM_xmlhttpRequest({
                        method: "GET",
                        url: "http://www.4server.info/find.php?data=" + location.href,
                        onload: function (data) {
                            if (/<meta.*URL=([^"']+)/i.exec(data.responseText)) {
                                if (uri.test(RegExp.$1)) return go(RegExp.$1);
                            }
                        }
                    })
                }
            }
        },
        shst: {
            host: "sh.st",
            fn: function () {
                x = $('#skip_button');
                if (x) go(x);
            }
        },
        reff: {
            host: "reffbux.com",
            fn: function () {
                var $$ = win.jQuery,
                    scrpt = $('script[contains(text(),"$reffbux_fp")]').textContent,
                    $loc = window.location,
                    $ref = document.referrer,
                    id = /id:([^,]+)/.exec(scrpt)[1],
                    share = /share:([^,]+)/.exec(scrpt)[1];

                if ($loc.hostname.replace(/^www\./i, '') == $ref.replace(/^https?:\/\/(?:www\.)?([^\/]+).*$/i, '$1')) {
                    $loc = parent.window.location;
                    $ref = parent.document.referrer;
                }
                var $reffbux = new win.Fingerprint();
                var $reffbux_fp = $reffbux.get();
                $$.ajax({
                    url: 'http://reffbux.com/refflinx/register',
                    type: 'post',
                    data: {
                        id: id,
                        share: share,
                        fp: $reffbux_fp,
                        location: encodeURIComponent($loc),
                        referrer: encodeURIComponent($ref)
                    },
                    success: function (res, stat) {
                        go(uri.exec(res)[0]);
                    }
                });
            }
        },
        yooclick: {
            host: "yooclick.com",
            fn: function () {
                var $$ = win.jQuery;
                $$.ajax({
                    url: location.href,
                    type: 'get',
                    data: {
                        ajax: "true",
                        adblock: "false",
                        old: "false",
                        framed: "true",
                        uniq: win.uniq
                    },
                    success: function (res, stat) {
                        go(res);
                    }
                });
            }
        }

    };

    (function () {
        var H;
        for (var i in list) {
            H = list[i].host;
            switch (typeof H) {
            case 'string':
                H = new RegExp(H, 'i');
                break;
            case 'object':
                H = new RegExp(H.join('|'), 'i');
                break;
            }
            if (H.test(document.domain)) {
                fn = list[i].fn;
                addEvent(window, "DOMContentLoaded", fn);
                return;
            }
        }
    })();


})();