尊缘阁专用,全网VIP视频免费破解去广告、全网音乐直接下载、知乎增强、短视频无水印下载、百度网盘直链下载助手载等多功能工具箱,功能可独立开关。长期更新,放心使用。v6

自用多功能脚本工具箱,完全免费、无广告、无需关注公众号,集合了优酷、爱奇艺、腾讯、B站(bilibili)、芒果等全网VIP视频(PC+移动端)免费破解去广告,网易云音乐、QQ音乐、酷狗、酷我、虾米、喜马拉雅等网站音乐和有声书音频免客户端下载,知乎增强(知乎视频下载、去广告、关键词屏蔽、去除侧边栏等),视频无水印下载(bilibili、抖音、快手、西瓜、youtube),百度网盘直链下载助手,优惠券自动查询等几个自己常用的功能,且功能可独立开关。

// ==UserScript==
// @name         尊缘阁专用,全网VIP视频免费破解去广告、全网音乐直接下载、知乎增强、短视频无水印下载、百度网盘直链下载助手载等多功能工具箱,功能可独立开关。长期更新,放心使用。v6
// @namespace 	 尊缘阁
// @version      0.0.2
// @description  自用多功能脚本工具箱,完全免费、无广告、无需关注公众号,集合了优酷、爱奇艺、腾讯、B站(bilibili)、芒果等全网VIP视频(PC+移动端)免费破解去广告,网易云音乐、QQ音乐、酷狗、酷我、虾米、喜马拉雅等网站音乐和有声书音频免客户端下载,知乎增强(知乎视频下载、去广告、关键词屏蔽、去除侧边栏等),视频无水印下载(bilibili、抖音、快手、西瓜、youtube),百度网盘直链下载助手,优惠券自动查询等几个自己常用的功能,且功能可独立开关。
// @author       尊缘阁
// @icon         data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCAH0AfQDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD6pooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiig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MaGP/wAfAwxG7A7ehr598cXupv8AFXU7e3V/s1vbPKJJIS4DiE7dvHJBI4+tfQL/APH0h7ZH54arGM1zV8OsRDlbOrD4h4efNa+hxHweilj+HGjgq0bYlyrpgj9856V1l0ZAjZKHAHQc8mrearXB5kX1AP5GtHDlgo/1sYufNNyECbXC+VGcgnrjpj296eI+OIkH+fpTlP7xD7EfrUtOMUQ5WIPJOfuxj/gP/wBesSKwa38T6lqMgG1rWNQwGASN2R19hXRUCpqUVNLy1KjVcb+Z8jaWl/Jrd1drZ3nnM0jnZAxJJYleMetd94C8F67qXiaLXNehkt7NLhLzEy7XlfA2gLnIwwzkgfjnj3h/vJ9f6VH/AMsQreuM/Q1yUcvjSm53uz0MRmU8RBQtZD3woQD1A+lS1H97lWHH4ihD15zz1/CvQTR5hJRRRVCCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAAjIpm0/32/Sn0UrXAq+XsbCcemeRnnP8AOpkcN0IP9KkqvhkdfYYGT9761FuTbYq9yV22r78fzqJ1w+9u/wAuOvFIFAZtq5k9eODjjP4U94d2Msdw6H0od2th6Iah+QED7rHI6nv/APWqcHPr/KoPJYBj5jbj6UyJvMSNvmDHjeMYNCdtGK1y3RmotxXqrN7jHNNbdsLMx56JkD8M1VxWAurbW6L1yeKbv2o3mA45YcZ4zmpUHOSAOMACkkQtjB9j9KTix3GJCuOUGckn8Tmp6BxS01Gwm7hRRRVCCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAoIBoooAQAAcUUtVryYwqm3GXbAJ7VLairjSu7IsVXtP+PcDHHQDFVLueaLaDKpycELwfzxxUHnspEJkKpk7vUc/wAutc0sRHmvbY2jSfKa3l7fuYXPbHFKqAcn73rVS1I+0gQuzR7fmzk8/jV6t4NSVzKScXYWiiitCQooooAKKKKACiiigAooooAKKKKACiuM8UfEjwz4ZuGttRvx9qX70MSl2X646Vg/8Ly8G/8APxd/+A7VDqRWjZ0wwdea5owbXoeo5ozXl3/C8fBv/Pxd/wDgO1H/AAvLwb/z8Xf/AIDtS9rDuV9RxP8Az7f3M9RzRmvLv+F5eDf+fi7/APAdqP8AhePg3/n4u/8AwHaj2sO4fUcT/wA+39zPUcijIry//hePg3/n4u//AAHaj/hePg3/AJ+Lv/wHaj2sO4fUcT/z7f3M9QyKK8vHxx8G/wDPxd/+A7Vo6H8WvCGr3gtYdR8mVjhftEZjDfQmj2sO4ngsQld039zO/opAwIBByD0Ipa0OUKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigApksayIVcZBp9FAFSS1iEEgweVIz3FN06MLb8j5mOX4xkmrUg3Iw9jUNi3mQbuOSRx7HH9Kx5IqasXzPlZOiBPlVQB7DFLRS1qlYi9wooopgFFFFABRRRQAUUUUAFFFFABXBfGfxRL4W8FXE9m5S8uD5ELjqhPVh9BXeGvHP2nbSSbwfYToCUhufn/FcD9azrNqDaOvAQjUxMIz2ufMdxNLNI0szM7uckk5JPrTYo2klCJ1PqcUlJXkH6Ftsd14S0SwFo9xfypNMZAYTEN4QqeQeQD1HA9KqeOdO0TTzAdNe7a8ugLhlkwqIjdtu0Y9ua2fDy3OleGF/tGO3tJbZmliMmd+1iCSyjLdcdMcelZXxDFlNqRuppLg3s8EUsYSMCLbt7kncDweMVzpvntc8unKcsQ3d28jIs9Dll8P3Wqzq6QArHAegkcsAfwAzz61ra54Xi0zRYZJ90d+FAYmRRGec59ScHAA9M1oPqvn+EdJD3km5JFQKqqgRh1wP4sDueOfWtHU9Kstfso1S+DagEkSDzWODgAsp9cZGPc/k3KVy5YmamnJ2V2ecaZHby6hCl67R2pOZXQ8qvcjg1cls7Oxui93Fdz2jfNbkAReavqSckdulXNN0p4IdXW8WKOaIxQ4dxhcuCSSOgwOvvXU+Kbi2g0CbzYreR5Aq2xV1dmzjMmDyo49c9Kpy1sa1MQ+ZKOz0/r7zivE9nZafq8kGnPK0OxXxJjKkjOM98Vk5xz0rW8VReTrdwp5OxD+aisjtWi2R0078ivqfT/wCzj4tuNZ0O40e+kMk2n7TG55JjbOAT7HNeyV83fsuWUra3qt5txCkCx7vUk5x+Qr6Rr1cPJypps+HzanGGLmoBRRRW55oUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAEc0ixRvI5wqjJNUtFnSeyG0bWVjuU9Rkk/yNN1d9wSDs3L/AE//AF/yqrav9mukl/glQB+wBzx+hrhnWcay7LR/P+l+J0Rp3pvuzdoooruOcKKKKACiiigAooooAKKKKACiiigBDWfr+kWmvaPdabqCb7a4Qow7j3HuK0DRQ1dWYKTi7rc+R/F/we8S6LfyLp9m+p2JY+VNBy2M9GXqD+nvXPf8K98Wf9C/qP8A35NfbNFcrwkb3ue7DiDERilKKZ8Y2ng3xrbTtKND1KQuNsgkhZhIuehz24q74p8LeLdc1FLoeGNQt1SFYhGIy3TPOcD1r7BoqfqUL3F/b1W6lyK69f8AM+Jv+FfeLsY/sDUsf9cTWnceGvHc0FlENC1GP7GS8bJbkMWOOSc89K+xqKbwcXuxvP6st4L8f8z4mk8AeMJHdn0HVS0hy58g/Mfermk+D/G2m30VzDoGosycbZICVK+hHpX2bmjNL6lAHn9Zq3Ivx/zPjDVfBnjPUtQmu7jw/qG+U5O2A8e1T6L8KfF2q3qwf2TPaKfvS3Q2Io9ff6CvsjNGapYOCB5/X5eVRS+//M5rwB4Ss/Bvh6HTrQ+ZJ96aYjBkfucdh6CumpKK6YpRVkeJOcqknOTu2LRRRTJCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAoNFBoAyZBv1CRyeBwv4KeP1NNvF4Rccjt6YC0Rgm4Uqf9bI+CPXZ/8AW/SrFwuZy2MjLHP/AAACvP5eaMn5nUnyyXoWbNy8C7iC68HFTiqdkpBY4IDIjfjgg/yFXBXZSbcVc552voFFFFaEhRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUYoooAMUYoooAMUYoooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAI2jViMjp+BFNNvCwAZd2MEbiTjFTUVPKuw7sAOOKKKKoQUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQB/9m4Svc/AAAAAB9YTwe+twU6xV3YOaIi61k=
// @match        *://pan.baidu.com/disk/home*
// @match        *://yun.baidu.com/disk/home*
// @match        *://pan.baidu.com/disk/main*
// @match        *://yun.baidu.com/disk/main*
// @match        *://pan.baidu.com/s*
// @match        *://yun.baidu.com/s*
// @match        *://*.youku.com/*
// @match        *://*.iqiyi.com/*
// @match        *://*.iq.com/*
// @match        *://*.le.com/*
// @match        *://v.qq.com/*
// @match        *://m.v.qq.com/*
// @match        *://*.tudou.com/*
// @match        *://*.mgtv.com/*
// @match        *://tv.sohu.com/*
// @match        *://film.sohu.com/*
// @match        *://*.1905.com/*
// @match        *://*.bilibili.com/*
// @match        *://*.pptv.com/*
// @match        *://item.taobao.com/*
// @match        *://s.taobao.com/*
// @match        *://chaoshi.detail.tmall.com/*
// @match        *://detail.tmall.com/*
// @match        *://detail.tmall.hk/*
// @match        *://item.jd.com/*
// @match        *://*.yiyaojd.com/*
// @match        *://npcitem.jd.hk/*
// @match        *://*.liangxinyao.com/*
// @match        *://music.163.com/*
// @match        *://y.qq.com/*
// @match        *://*.kugou.com/*
// @match        *://*.kuwo.cn/*
// @match        *://*.ximalaya.com/*
// @match        *://*.zhihu.com/*
// @match        *://*.douyin.com/*
// @match        *://*.kuaishou.com/*
// @match        *://*.ixigua.com/*
// @match        *://*.youtube.com/*
// @match        *://47.99.158.118/*
// @connect      d.pcs.baidu.com
// @connect      baidu.com
// @connect      baidupcs.com
// @connect      youxiaohou.com
// @connect      localhost
// @require      https://lf26-cdn-tos.bytecdntp.com/cdn/expire-1-M/crypto-js/4.1.1/crypto-js.min.js
// @require      https://lf3-cdn-tos.bytecdntp.com/cdn/expire-1-M/limonte-sweetalert2/11.4.4/sweetalert2.all.min.js
// @require      https://lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/qrcodejs/1.0.0/qrcode.js
// @original-script https://greasyfork.org/scripts/376078
// @original-author zhmai
// @original-license GPL License
// @original-script https://github.com/syhyz1990/baiduyun/blob/master/baiduyun.user.js
// @original-author youxiaohou
// @original-license AGPL License
// @original-changes 将强制关注公众号改为非强制。
// @antifeature  referral-link 此提示为GreasyFork代码规范要求含有查券功能的脚本必须添加,实际使用无任何强制跳转,代码可查,请知悉。
// @license      AGPL License
// @grant        GM_download
// @grant        GM_openInTab
// @grant        GM_setValue
// @grant        GM_getValue
// @grant        GM_deleteValue
// @grant        GM_xmlhttpRequest
// @grant        GM_addStyle
// @grant        unsafeWindow
// @grant        GM_setClipboard
// @grant        GM_getResourceURL
// @grant        GM_getResourceText
// @grant        GM_info
// @grant        GM_registerMenuCommand
// @grant        GM_cookie
// @connect      iesdouyin.com
// @connect      47.99.158.118
// ==/UserScript==

(function() {
    'use strict';

    var domHead = document.getElementsByTagName('head')[0];

    var domStyle = document.createElement('style');

    domStyle.type = 'text/css';

    domStyle.rel = 'stylesheet';
    //平台判断
    var isMobile = /Android|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent);

    if(isMobile){

        // let playLine = [
        //     {"name":"纯净1","url":"https://im1907.top/?jx="},
        //     {"name":"4K","url":"https://jx.4kdv.com/?url="},
        //     {"name":"B站1","url":"https://jx.jsonplayer.com/player/?url="},
        //     {"name":"爱豆","url":"https://jx.aidouer.net/?url="},
        //     {"name":"8090","url":"https://www.8090g.cn/?url="},
        //     {"name":"OK","url":"https://okjx.cc/?url="},
        //     {"name":"RDHK","url":"https://jx.rdhk.net/?v="},
        //     {"name":"人人迷","url":"https://jx.blbo.cc:4433/?url="},
        //     {"name":"思古3","url":"https://jsap.attakids.com/?url="},
        //     {"name":"听乐","url":"https://jx.dj6u.com/?url="},
        //     {"name":"YT","url":"https://jx.yangtu.top/?url="}
        // ];
        let playLine = [
                {"name":"纯净1","url":"https://im1907.top/?jx=","mobile":1},
                {"name":"4K","url":"https://jx.4kdv.com/?url=","mobile":1},
                {"name":"8090","url":"https://www.8090g.cn/?url=","mobile":0},
                {"name":"B站1","url":"https://jx.jsonplayer.com/player/?url=","mobile":1},
                {"name":"爱豆","url":"https://jx.aidouer.net/?url=","mobile":1},
                {"name":"BL","url":"https://vip.bljiex.com/?v=","mobile":0},
                {"name":"冰豆","url":"https://api.qianqi.net/vip/?url=","mobile":0},
                {"name":"百域","url":"https://jx.618g.com/?url=","mobile":0},
                {"name":"CK","url":"https://www.ckplayer.vip/jiexi/?url=","mobile":0},
                {"name":"ckmov","url":"https://www.ckmov.vip/api.php?url=","mobile":0},
                {"name":"H8","url":"https://www.h8jx.com/jiexi.php?url=","mobile":0},
                {"name":"JY","url":"https://jx.playerjy.com/?url=","mobile":0},
                {"name":"解析","url":"https://ckmov.ccyjjd.com/ckmov/?url=","mobile":0},
                {"name":"解析la","url":"https://api.jiexi.la/?url=","mobile":0},
                {"name":"老板","url":"https://vip.laobandq.com/jiexi.php?url=","mobile":0},
                {"name":"MAO","url":"https://www.mtosz.com/m3u8.php?url=","mobile":0},
                {"name":"M3U8","url":"https://jx.m3u8.tv/jiexi/?url=","mobile":0},
                {"name":"诺讯","url":"https://www.nxflv.com/?url=","mobile":0},
                {"name":"OK","url":"https://okjx.cc/?url=","mobile":1},
                {"name":"PM","url":"https://www.playm3u8.cn/jiexi.php?url=","mobile":0},
                {"name":"盘古","url":"https://www.pangujiexi.cc/jiexi.php?url=","mobile":0},
                {"name":"七哥","url":"https://jx.nnxv.cn/tv.php?url=","mobile":0},
                {"name":"RDHK","url":"https://jx.rdhk.net/?v=","mobile":1},
                {"name":"人人迷","url":"https://jx.blbo.cc:4433/?url=","mobile":1},
                {"name":"思云","url":"https://jx.ap2p.cn/?url=","mobile":0},
                {"name":"思古3","url":"https://jsap.attakids.com/?url=","mobile":1},
                {"name":"听乐","url":"https://jx.dj6u.com/?url=","mobile":1},
                {"name":"维多","url":"https://jx.ivito.cn/?url=","mobile":0},
                {"name":"虾米","url":"https://jx.xmflv.com/?url=","mobile":0},
                {"name":"YT","url":"https://jx.yangtu.top/?url=","mobile":0},
                {"name":"云端","url":"https://sb.5gseo.net/?url=","mobile":0},
                {"name":"云析","url":"https://jx.yparse.com/index.php?url=","mobile":0},
                {"name":"0523","url":"https://go.yh0523.cn/y.cy?url=","mobile":0},
                {"name":"17云","url":"https://www.1717yun.com/jx/ty.php?url=","mobile":0},
                {"name":"180","url":"https://jx.000180.top/jx/?url=","mobile":0}
            ];

        let useWeb = ['m.bilibili.com','youku.com','www.youku.com','m.youku.com','m.v.qq.com','m.iqiyi.com','m.mgtv.com','m.tv.sohu.com','m.1905.com','m.pptv.com','m.le.com'];

        if(useWeb.indexOf(location.host) == -1){
            console.log('不是应用网站');return;
        }

        function setCookie(cname,cvalue,exdays){

            var d = new Date();

            d.setTime(d.getTime()+(exdays*24*60*60*1000));

            var expires = "expires="+d.toGMTString();

            document.cookie = cname+"="+cvalue+"; "+expires;
        }

        function getCookie(cname){
            var name = cname + "=";
            var ca = document.cookie.split(';');
            for(var i=0; i<ca.length; i++) {
                var c = ca[i].trim();
                if (c.indexOf(name)==0) { return c.substring(name.length,c.length); }
            }
            return "";
        }

        function createElement(dom,domId){

            var rootElement = document.body;

            var newElement = document.createElement(dom);

            newElement.id = domId;

            var newElementHtmlContent = document.createTextNode('');

            rootElement.appendChild(newElement);

            newElement.appendChild(newElementHtmlContent);

        }

        function toast(msg,duration){

            duration=isNaN(duration)?3000:duration;

            let toastDom = document.createElement('div');

            toastDom.innerHTML = msg;

            toastDom.style.cssText='padding:2px 15px;min-height: 36px;line-height: 36px;text-align: center;transform: translate(-50%);border-radius: 4px;color: rgb(255, 255, 255);position: fixed;top: 50%;left: 50%;z-index: 9999999;background: rgb(0, 0, 0);font-size: 16px;'

            document.body.appendChild(toastDom);

            setTimeout(function() {

                var d = 0.5;

                toastDom.style.webkitTransition = '-webkit-transform ' + d + 's ease-in, opacity ' + d + 's ease-in';

                toastDom.style.opacity = '0';

                setTimeout(function() { document.body.removeChild(toastDom) }, d * 1000);

            }, duration);

        }

        function playVideoFunc(){
            //css
            let playVideoStyle = `
            .zhm_play_vidoe_icon{
                padding-top:2px;cursor:pointer;
                z-index:9999999;
                display:block;
                position:fixed;let:0px;top:360px;text-align:center;overflow:visible;
            }
            .zhm_play_video_wrap{
                position:fixed;left:40px;top:360px;
                z-index:9999999;
                overflow: hidden;
                width:300px;
            }
            .zhm_play_video_line{
                width:320px;
                height:316px;
                overflow-y:scroll;
                overflow-x:hidden;
            }
            .zhm_play_vide_line_ul{
                width:300px;
                display: flex;
                justify-content: flex-start;
                flex-flow: row wrap;
                list-style: none;
                padding:0px;
                margin:0px;

            }
            .zhm_play_video_line_ul_li{
                padding:4px 0px;
                margin:2px;
                width:30%;
                color:#FFF;
                text-align:center;
                background-color:#f24443;
                box-shadow:0px 0px 10px #fff;
                font-size:14px;
            }
            .zhm_play_video_line_ul_li:hover{
                color:#260033;
                background-color:#fcc0c0
            }
            .zhm_line_selected{
                color:#260033;
                background-color:#fcc0c0
            }

            .zhm_play_video_jx{
                width:100%;
                height:100%;
                z-index:999999;
                position: absolute;top:0px;padding:0px;
            }
            `;

            domStyle.appendChild(document.createTextNode(playVideoStyle));

            domHead.appendChild(domStyle);

            //template:icon,playLine;
            let playWrapHtml = "<div href='javascript:void(0)' target='_blank' style='' class='playButton zhm_play_vidoe_icon' id='zhmlogo'><img class='iconLogo' src='data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCAH0AfQDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD6pooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiig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MaGP/wAfAwxG7A7ehr598cXupv8AFXU7e3V/s1vbPKJJIS4DiE7dvHJBI4+tfQL/APH0h7ZH54arGM1zV8OsRDlbOrD4h4efNa+hxHweilj+HGjgq0bYlyrpgj9856V1l0ZAjZKHAHQc8mrearXB5kX1AP5GtHDlgo/1sYufNNyECbXC+VGcgnrjpj296eI+OIkH+fpTlP7xD7EfrUtOMUQ5WIPJOfuxj/gP/wBesSKwa38T6lqMgG1rWNQwGASN2R19hXRUCpqUVNLy1KjVcb+Z8jaWl/Jrd1drZ3nnM0jnZAxJJYleMetd94C8F67qXiaLXNehkt7NLhLzEy7XlfA2gLnIwwzkgfjnj3h/vJ9f6VH/AMsQreuM/Q1yUcvjSm53uz0MRmU8RBQtZD3woQD1A+lS1H97lWHH4ihD15zz1/CvQTR5hJRRRVCCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAAjIpm0/32/Sn0UrXAq+XsbCcemeRnnP8AOpkcN0IP9KkqvhkdfYYGT9761FuTbYq9yV22r78fzqJ1w+9u/wAuOvFIFAZtq5k9eODjjP4U94d2Msdw6H0od2th6Iah+QED7rHI6nv/APWqcHPr/KoPJYBj5jbj6UyJvMSNvmDHjeMYNCdtGK1y3RmotxXqrN7jHNNbdsLMx56JkD8M1VxWAurbW6L1yeKbv2o3mA45YcZ4zmpUHOSAOMACkkQtjB9j9KTix3GJCuOUGckn8Tmp6BxS01Gwm7hRRRVCCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAoIBoooAQAAcUUtVryYwqm3GXbAJ7VLairjSu7IsVXtP+PcDHHQDFVLueaLaDKpycELwfzxxUHnspEJkKpk7vUc/wAutc0sRHmvbY2jSfKa3l7fuYXPbHFKqAcn73rVS1I+0gQuzR7fmzk8/jV6t4NSVzKScXYWiiitCQooooAKKKKACiiigAooooAKKKKACiuM8UfEjwz4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KKAI2jViMjp+BFNNvCwAZd2MEbiTjFTUVPKuw7sAOOKKKKoQUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQB/9m4Svc/AAAAAB9YTwe+twU6xV3YOaIi61k=' title='点击右侧列表进行解析' style='width:40px'>";

            playWrapHtml += "<div class='playLineDiv zhm_play_video_wrap' style='display:none;'>"

            playWrapHtml += "<div class='zhm_play_video_line'>";

            playWrapHtml +="<div><ul class='zhm_play_vide_line_ul'>";

            playLine.forEach(function(item){

                let selected = '';

                if(getCookie('playLineAction') == item.url){

                    selected='zhm_line_selected';

                }

                playWrapHtml +=`<li class='playLineTd zhm_play_video_line_ul_li ${selected}' url='${item.url}' >${item.name}</li>`;

            })

            playWrapHtml +="</div></div></div>";

            //template:node;播放区域

            let playJxHtml = "<div class='zhm_play_video_jx'>";

            playJxHtml += "<iframe allowtransparency=true frameborder='0' scrolling='no' allowfullscreen=true allowtransparency=true name='jx_play' style='height:100%;width:100%' id='playIframe'></iframe></div>";

            //循环判断是否在播放页,是则执行下面
            let jxVideoData = [
                {funcName:"playVideo", node:"#player",match:/m\.v\.qq\.com\/x\/play\.html\?cid=/,areaClassName:'slider_box'},
                {funcName:"playVideo", node:"#player",match:/m\.v\.qq\.com\/play\.html\?cid\=/,areaClassName:'slider_box'},
                {funcName:"playVideo", node:"#player",match:/m\.v\.qq\.com\/cover\/.*html/,areaClassName:'slider_box'},
                {funcName:"playVideo", node:"#player",match:/https?:\/\/m\.v\.qq\.com\/x\/m\/play\?.*cid.*/,areaClassName:'slider_box'},

                {funcName:"playVideo", node:".m-video-player-wrap",match:/^https:\/\/m.iqiyi\.com\/[vwa]\_/,areaClassName:'m-sliding-list'},
                {funcName:"playVideo", node:".intl-video-wrap",match:/^https:\/\/www\.iq\.com\/play\//,areaClassName:'m-sliding-list'},

                {funcName:"playVideo", node:"#player",match:/m\.youku\.com\/alipay_video\/id_/,areaClassName:''},
                {funcName:"playVideo", node:"#player",match:/m\.youku\.com\/video\/id_/,areaClassName:''},

                {funcName:"playVideo", node:".player-container",nodeType:'class',match:/m\.bilibili\.com\/bangumi/,areaClassName:'ep-list-pre-body'},
                {funcName:"playVideo", node:".mplayer",nodeType:'class',match:/m\.bilibili\.com\/video\//,areaClassName:'ep-list-pre-body'},

                {funcName:"playVideo", node:".video-area",nodeType:'class',match:/m\.mgtv\.com\/b/,areaClassName:'clearfix'},

                {funcName:"playVideo", node:"#le_playbox",nodeType:'id',match:/m\.le\.com\/ptv\/vplay\//,areaClassName:'sideslip_slide'},

                {funcName:"playVideo", node:"#j-player",nodeType:'id',match:/m\.le\.com\/vplay/,areaClassName:'juji'},

                {funcName:"playVideo", node:"#player",nodeType:'id',match:/play\.tudou\.com\/v_show\/id_/},

                {funcName:"playVideo", node:"#pptv_playpage_box",nodeType:'id',match:/v\.pptv\.com\/show\//},

                {funcName:"playVideo", node:"#player",nodeType:'id',match:/vip\.1905.com\/play\//},

                {funcName:"playVideo", node:"#vodPlayer",nodeType:'id',match:/www\.1905.com\/vod\/play\//},
            ];

            //创建logo_icon
            createElement('div','zhmIcon');

            let zhmPlay = document.getElementById('zhmIcon');

            zhmPlay.innerHTML = playWrapHtml;

            let jxVideoWeb = jxVideoData.filter(function(item){

                return location.href.match(item.match);

            })

            document.querySelector('#zhmlogo').addEventListener('click',function(){

                let jxVideoWeb = jxVideoData.filter(function(item){

                    return location.href.match(item.match);

                })

                if(jxVideoWeb.length == 0){

                    toast('请在视频播放页点击图标');

                }else{

                    var {funcName,match:nowMatch,node:nowNode,name:nowName} = jxVideoWeb[0];

                    let playLineDiv = document.querySelector('.zhm_play_video_wrap');

                    let playShow = playLineDiv.style.display;

                    playShow == 'none'? playLineDiv.style.display = 'block':playLineDiv.style.display = 'none';

                    var playLineTd = document.querySelectorAll('.playLineTd');

                    playLineTd.forEach(function(item){

                        item.addEventListener('click',function(){

                            playLineTd.forEach(function(e){

                                e.setAttribute('class','playLineTd zhm_play_video_line_ul_li');
                            })

                            this.setAttribute('class','playLineTd zhm_play_video_line_ul_li zhm_line_selected');

                            setCookie('playLineAction',this.getAttribute('url'),30);

                            let nowWebNode = document.querySelector(nowNode);

                            if(nowWebNode){

                                nowWebNode.innerHTML = playJxHtml;

                                let playIframe = document.querySelector('#playIframe');

                                playIframe.src= item.getAttribute('url')+location.href;

                            }else{

                                console.log('视频网站结点不存在');
                            }

                        })

                    })

                    let videoSelect = document.querySelector('.'+jxVideoWeb[0].areaClassName);

                    videoSelect.addEventListener('click',function(e){

                        setTimeout(function(){

                            location.href=location.href;

                        },1000)

                    });

                    return false;
                }

            })

            let timer = setInterval(function(){

                let jxVideoWeb = jxVideoData.filter(function(item){

                    return location.href.match(item.match);

                })

                if(jxVideoWeb.length>0){

                    let videoSelect = document.querySelector('.'+jxVideoWeb[0].areaClassName);

                    if(videoSelect){

                        videoSelect.addEventListener('click',function(e){

                            //console.log(e.target.parentNode.href);

                            setTimeout(function(){

                                location.href=location.href;

                            },1000)

                        });

                    }

                }

            },1000)

        }

        playVideoFunc();

    }else{
        /*--config--*/
        var Config ={

        couponUrl:window.location.href,

        couponHost:window.location.host,

        webUrl:'http://music.liuzhijin.cn/',

        iconVipTop:360,

        iconVipPosition : 'left',

        iconVipWidth : 40,

        couponTimerNum : 100,//100次等于10秒

        couponWaitTime : 100,

        iconWaitTime : 100,

        iconVipOpacity:100,

        selectedLeft:'selected',

        selectedRight:'',

        videoPlayLineAdd:GM_getValue('videoPlayLineAdd',0),

        dyVideoDownload:GM_getValue('dyVideoDownload',22),

        ksVideoDownload:GM_getValue('ksVideoDownload',22),

        xiguaVideoDownload:GM_getValue('xiguaVideoDownload',22),

        biliVideoDownload:GM_getValue('biliVideoDownload',22),

        youtubeVideoDownload:GM_getValue('youtubeVideoDownload',22),
        }

        var {couponUrl,
            couponHost,
            webUrl,
            iconVipTop,
            iconVipPosition,
            iconVipWidth,
            iconVipOpacity,
            couponTimerNum,
            couponWaitTime,
            iconWaitTime,
            selectedLeft,
            selectedRight,
            videoPlayLineAdd,
            dyVideoDownload,
            ksVideoDownload,
            xiguaVideoDownload,
            biliVideoDownload,
            youtubeVideoDownload
        } = Config;
        /*--lang--*/
        var lang = {
            set:'设置',
            iconPosition:'图标位置',
            playVideo:'视频解析',
            playMusic:'音乐下载',
            zhNice:'知乎增强',
            videoDownload:'视频下载',
            baiduDownload:'百度下载',
            iconHeight:'图标高度',
            iconWidth:'图标大小',
            iconLine:'水平位置',
            iconWaitTime:'等待时间',
            iconLeft:'靠左',
            iconRight:'靠右',
            tipIconHeight:'默认360,建议1~500',
            tipIconWidth:'默认40,建议20~50',
            tipIconOpacity:'请填写0-100的整数',
            tipErrorIconHeight:'<图标位置>中的<图标高度>应为1000以内正整数,建议1~500',
            tipErrorIconWidth:'<图标位置>中的<图标大小>应为100以内正整数,建议20~50',
            tipErrorIconOpacity:'填写数字不正确',
            setPlayVideo:'解析设置',
            playVideoLineAdd:'站外解析',
            tipPlayVideoLineAdd:'请填入线路名称和地址,中间用半角逗号隔开,每线路一行。',
            zhSet:'知乎设置',
            zhVideoClose:'屏蔽视频',
            zhVideoDownload:'视频下载',
            zhADClose:'屏蔽广告',
            zhCloseLeft:'关闭侧边栏',
            zhChangeLink:'链接直接跳转',
            specialColumn:'标记文章',
            videoTitle:'标记视频',
            zhKeywordClose:'屏蔽关键词',
            tipKeyword:'请输入关键词,用","号隔开',
            authorNameClose:'屏蔽用户',
            tipAuthorName:'请输入用户名,用","号隔开',
            yanxuanClose:'屏蔽盐选',
            dyVideoDownload:'抖音下载',
            ksVideoDownload:'快手下载',
            xiguaVideoDownload:'西瓜下载',
            biliVideoDownload:'B站 (bilibili) 下载',
            youtubeVideoDownload:'youtube下载',
        };

        /*--datas--*/
        var datas = {

            getCoupon:[{isOpen:22,web:[
                {funcName:"coupon",name:"taobao",node:".J_LinkAdd",match:/item\.taobao\.com/},
                {funcName:"coupon",name:"tmallCaoshi",node:"#J_LinkBuy",match:/^https?:\/\/chaoshi.detail.tmall.com\//},
                {funcName:"coupon",name:"tmallCaoshi",node:".Actions--leftButtons--1M3KkF7",match:/^https?:\/\/chaoshi.detail.tmall.com\//},
                {funcName:"coupon",name:"tmall",node:".BasicContent--actions--1co8sx8",match:/^https?:\/\/detail\.tmall\.com/},
                {funcName:"coupon",name:"tmall",node:"#J_LinkBuy",match:/^https?:\/\/detail\.tmall\.com/},
                {funcName:"coupon",name:"tmallOther",node:".tm-msg-box",match:/^https?:\/\/detail\.tmall\.com/},
                {funcName:"coupon",name:"tmall",node:".BasicContent--actions--1co8sx8",match:/^https?:\/\/detail\.tmall\.hk/},
                {funcName:"coupon",name:"jd",node:"#choose-btns",match:/item\.jd\.com/},
                {funcName:"coupon",name:"jd",node:"#choose-btns",match:/\.yiyaojd\.com/},
                {funcName:"coupon",name:"jd",node:"#choose-btns",match:/npcitem\.jd\.hk/},
            ]}],
            jxVideo:[{isOpen:GM_getValue('movieList','22'),web:[
                {funcName:"playVideo",match:/https?:\/\/v\.qq\.com/,name:'qqPC'},
                {funcName:"playVideo", match:/https?:\/\/m\.v\.qq\.com/,name:'qqMobile'},

                {funcName:"playVideo", match:/^https?:\/\/www\.iqiyi\.com/,name:'iqiyiPc'},
                {funcName:"playVideo", match:/^https?:\/\/www\.iq\.com/},
                {funcName:"playVideo", node:".m-video-player-wrap",match:/^https?:\/\/m.iqiyi\.com/,areaClassName:'m-sliding-list'},

                {funcName:"playVideo", node:"#player",nodeType:'id',match:/m\.youku\.com\/alipay_video\/id_/},
                {funcName:"playVideo", node:"#player",nodeType:'id',match:/m\.youku\.com\/video\/id_/},
                {funcName:"playVideo", match:/^https?:\/\/.*youku\.com/},

                {funcName:"playVideo", match:/^https?:\/\/www\.bilibili\.com/},
                {funcName:"playVideo", match:/^https?:\/\/m\.bilibili\.com/},

                {funcName:"playVideo", node:".video-area",nodeType:'class',match:/m\.mgtv\.com\/b/},
                {funcName:"playVideo", match:/mgtv\.com/,areaClassName:'episode-items clearfix'},
                {funcName:"playVideo", node:".x-cover-playbtn-wrap",nodeType:'class',match:/.tv\.sohu\.com/},
                {funcName:"playVideo", node:".x-cover-playbtn-wrap",nodeType:'class',match:/m\.tv\.sohu\.com/},
                {funcName:"playVideo", node:"#playerWrap",nodeType:'id',match:/film\.sohu\.com/},

                {funcName:"playVideo", match:/tudou\.com/},

                {funcName:"playVideo",match:/le\.com/},

                {funcName:"playVideo",match:/pptv\.com/},

                {funcName:"playVideo",match:/1905\.com/},

            ]}],

            jxMusic:[{isOpen:GM_getValue('musicList','22'),web:[
                {funcName:"playMusic",name:'netease',match:/^https?:\/\/music\.163\.com/,tip:'请在音乐单曲页点击图标下载'},

                {funcName:"playMusic",name:'qq',match:/^https?:\/\/y\.qq\.com/,tip:'请点击播放需要下载的歌曲,在播放页点击图标下载'},

                {funcName:"playMusic",name:'kugou',match:/kugou\.com/,tip:'请点击播放需要下载的歌曲,然后在网页下方播放器内点击"下载"'},

                {funcName:"playMusic",name:'kuwo',match:/kuwo\.cn/,tip:'请点击播放需要下载的歌曲,然后在网页下方播放器内点击"下载"'},

                {funcName:"playMusic",name:'ximalaya',match:/^https?:\/\/www\.ximalaya\.com/,tip:'请点击播放需要下载的歌曲,然后在网页下方播放器内点击"下载"'}
            ]}],

            playLine:[
                {"name":"纯净1","url":"https://im1907.top/?jx=","mobile":1},
                {"name":"4K","url":"https://jx.4kdv.com/?url=","mobile":1},
                {"name":"8090","url":"https://www.8090g.cn/?url=","mobile":0},
                {"name":"B站1","url":"https://jx.jsonplayer.com/player/?url=","mobile":1},
                {"name":"爱豆","url":"https://jx.aidouer.net/?url=","mobile":1},
                {"name":"BL","url":"https://vip.bljiex.com/?v=","mobile":0},
                {"name":"冰豆","url":"https://api.qianqi.net/vip/?url=","mobile":0},
                {"name":"百域","url":"https://jx.618g.com/?url=","mobile":0},
                {"name":"CK","url":"https://www.ckplayer.vip/jiexi/?url=","mobile":0},
                {"name":"ckmov","url":"https://www.ckmov.vip/api.php?url=","mobile":0},
                {"name":"H8","url":"https://www.h8jx.com/jiexi.php?url=","mobile":0},
                {"name":"JY","url":"https://jx.playerjy.com/?url=","mobile":0},
                {"name":"解析","url":"https://ckmov.ccyjjd.com/ckmov/?url=","mobile":0},
                {"name":"解析la","url":"https://api.jiexi.la/?url=","mobile":0},
                {"name":"老板","url":"https://vip.laobandq.com/jiexi.php?url=","mobile":0},
                {"name":"MAO","url":"https://www.mtosz.com/m3u8.php?url=","mobile":0},
                {"name":"M3U8","url":"https://jx.m3u8.tv/jiexi/?url=","mobile":0},
                {"name":"诺讯","url":"https://www.nxflv.com/?url=","mobile":0},
                {"name":"OK","url":"https://okjx.cc/?url=","mobile":1},
                {"name":"PM","url":"https://www.playm3u8.cn/jiexi.php?url=","mobile":0},
                {"name":"盘古","url":"https://www.pangujiexi.cc/jiexi.php?url=","mobile":0},
                {"name":"七哥","url":"https://jx.nnxv.cn/tv.php?url=","mobile":0},
                {"name":"RDHK","url":"https://jx.rdhk.net/?v=","mobile":1},
                {"name":"人人迷","url":"https://jx.blbo.cc:4433/?url=","mobile":1},
                {"name":"思云","url":"https://jx.ap2p.cn/?url=","mobile":0},
                {"name":"思古3","url":"https://jsap.attakids.com/?url=","mobile":1},
                {"name":"听乐","url":"https://jx.dj6u.com/?url=","mobile":1},
                {"name":"维多","url":"https://jx.ivito.cn/?url=","mobile":0},
                {"name":"虾米","url":"https://jx.xmflv.com/?url=","mobile":0},
                {"name":"YT","url":"https://jx.yangtu.top/?url=","mobile":0},
                {"name":"云端","url":"https://sb.5gseo.net/?url=","mobile":0},
                {"name":"云析","url":"https://jx.yparse.com/index.php?url=","mobile":0},
                {"name":"0523","url":"https://go.yh0523.cn/y.cy?url=","mobile":0},
                {"name":"17云","url":"https://www.1717yun.com/jx/ty.php?url=","mobile":0},
                {"name":"180","url":"https://jx.000180.top/jx/?url=","mobile":0}
            ],

            zhNice:[{isOpen:GM_getValue('zhihuList','22'),web:[
                {funcName:'zhNice',match:/^https?:\/\/[a-z]+\.zhihu\.com/}
            ]}],
            taobao:[{isOpen:GM_getValue('taobao','22'),web:[
                {funcName:'taobaoSearch',match:/^https?:\/\/s\.taobao\.com\/search\?.+/}
            ]}],

            videoDownload:[{isOpen:GM_getValue('videoDownloadList','22'),web:[
                {funcName:'videoDownload',name:'dyVideoDownload',match:/^https?:\/\/www\.douyin\.com\/?.+$/,isWebOpen:dyVideoDownload},
                {funcName:'videoDownload',name:'ksVideoDownload',match:/^https?:\/\/www\.kuaishou\.com\/?.+$/,isWebOpen:ksVideoDownload},
                //{funcName:'videoDownload',name:'xiguaVideoDownload',match:/^https?:\/\/www\.ixigua\.com\/[0-9]+\?.+$/,isWebOpen:xiguaVideoDownload},
                {funcName:'videoDownload',name:'xiguaVideoDownload',match:/^https?:\/\/www\.ixigua\.com\//,isWebOpen:xiguaVideoDownload},
                {funcName:'videoDownload',name:'biliVideoDownload',match:/^https?:\/\/www\.bilibili\.com\//,isWebOpen:biliVideoDownload},
                {funcName:'videoDownload',name:'youtubeVideoDownload',match:/^https?:\/\/www\.youtube\.com/,isWebOpen:youtubeVideoDownload},
            ]}],

            baidu:[{isOpen:GM_getValue('baiduList','22'),web:[
                {funcName:'baidu',match:/https?:\/\/pan\.baidu\.com/}
            ]}],

            keyCode:[
                {code:48,isShift:false,value:'0'},
                {code:48,isShift:true,value:')'},
                {code:49,isShift:false,value:'1'},
                {code:49,isShift:true,value:'!'},
                {code:50,isShift:false,value:'2'},
                {code:50,isShift:true,value:'@'},
                {code:51,isShift:false,value:'3'},
                {code:51,isShift:true,value:'#'},
                {code:52,isShift:false,value:'4'},
                {code:52,isShift:true,value:'$'},
                {code:53,isShift:false,value:'5'},
                {code:53,isShift:true,value:'%'},
                {code:54,isShift:false,value:'6'},
                {code:54,isShift:true,value:'^'},
                {code:55,isShift:false,value:'7'},
                {code:55,isShift:true,value:'&'},
                {code:56,isShift:false,value:'8'},
                {code:56,isShift:true,value:'*'},
                {code:57,isShift:false,value:'9'},
                {code:57,isShift:true,value:'('},
                {code:70,isShift:false,value:'f'},
                {code:70,isShift:true,value:'F'},
                {code:74,isShift:false,value:'j'},
                {code:74,isShift:true,value:'J'},
                {code:75,isShift:false,value:'k'},
                {code:75,isShift:true,value:'K'},
                {code:76,isShift:false,value:'l'},
                {code:76,isShift:true,value:'L'},
            ],

            downloadOption:[{name:'直接下载',id:'toDownload'},{name:'复制链接',id:'toCopy'},{name:'打开文件',id:'toLink'}]

        }

        var {getCoupon,jxVideo,jxMusic,playLine,zhNice,taobao,videoDownload,keyCode,downloadOption,baidu} = datas;

        /*--Class--*/
        class BaseClass{

            constructor(){

                if(GM_getValue('iconPositionSetPage') != 0){

                    iconVipTop = GM_getValue('iconTop') || GM_getValue('iconTop') == 0?GM_getValue('iconTop'):iconVipTop;

                    iconVipPosition = GM_getValue('iconPosition')?GM_getValue('iconPosition'):iconVipPosition;

                    selectedLeft = iconVipPosition=='left'?'selected':'';

                    selectedRight = iconVipPosition=='right'?'selected':'';

                    iconVipWidth = GM_getValue('iconWidth')?GM_getValue('iconWidth'):iconVipWidth;

                    iconWaitTime = GM_getValue('iconWaitTime')?GM_getValue('iconWaitTime')*1000:iconWaitTime;

                    iconVipOpacity = GM_getValue('iconOpacity') || GM_getValue('iconOpacity') == 0?GM_getValue('iconOpacity'):iconVipOpacity;

                }

                GM_registerMenuCommand("设置", () => this.menuSet());

            }

            menuSet(){

                var _this = this;

                let menuSetStyle = `
                        .zhmMask{
                            z-index:999999999;
                            background-color:#000;
                            position: fixed;top: 0;right: 0;bottom: 0;left: 0;
                            opacity:0.8;
                        }
                        .wrap-box{
                            z-index:1000000000;
                            position:fixed;;top: 50%;left: 50%;transform: translate(-50%, -200px);
                            width: 300px;
                            color: #555;
                            background-color: #fff;
                            border-radius: 5px;
                            overflow:hidden;
                            font:16px numFont,PingFangSC-Regular,Tahoma,Microsoft Yahei,sans-serif !important;
                            font-weight:400 !important;
                        }
                        .setWrapHead{
                            background-color:#f24443;height:40px;color:#fff;text-align:center;line-height:40px;
                        }
                        .setWrapLi{
                            margin:0px;padding:0px;
                        }
                        .setWrapLi li{
                            background-color: #fff;
                            border-bottom:1px solid #eee;
                            margin:0px !important;
                            padding:12px 20px;
                            display: flex;
                            justify-content: space-between;align-items: center;
                            list-style: none;
                        }

                        .setWrapLiContent{
                            display: flex;justify-content: space-between;align-items: center;
                        }
                        .setWrapSave{
                            position:absolute;top:-2px;right:10px;font-size:24px;cursor:pointer
                        }
                        .iconSetFoot{
                            position:absolute;bottom:0px;padding:10px 20px;width:100%;
                        z-index:1000000009;background:#fef9ef;
                        }
                        .iconSetFootLi{
                            margin:0px;padding:0px;
                        }

                        .iconSetFootLi li{
                            display: inline-flex;
                            padding:0px 2px;
                            justify-content: space-between;align-items: center;
                            font-size: 12px;
                        }
                        .iconSetFootLi li a{
                            color:#555;
                        }
                        .iconSetFootLi a:hover {
                            color:#fe6d73;
                        }
                        .iconSetPage{
                            z-index:1000000001;
                            position:absolute;top:0px;left:300px;
                            background:#fff;
                            width:300px;
                            height:100%;
                        }
                        .iconSetUlHead{
                        padding:0px;
                        margin:0px;
                        }
                        .iconSetPageHead{
                            border-bottom:1px solid #ccc;
                            height:40px;
                            line-height:40px;
                            display: flex;
                            justify-content: space-between;
                            align-items: center;
                            background-color:#fe6d73;
                            color:#fff;
                            font-size: 15px;
                        }
                        .iconSetPageLi{
                            margin:0px;padding:0px;
                        }
                        .iconSetPageLi li{
                            list-style: none;
                            padding:8px 20px;
                            border-bottom:1px solid #eee;
                        }
                        .zhihuSetPage{
                            z-index:1000000002;position:absolute;top:0px;left:300px;background:#fff;width:300px;height:100%;
                        }
                        .iconSetPageInput{
                            display: flex !important;justify-content: space-between;align-items: center;
                        }
                        .zhihuSetPageLi{
                            margin:0px;padding:0px;
                            height:300px;
                            overflow-y: scroll;
                        }
                        
                        .zhihuSetPageContent{
                            display: flex !important;justify-content: space-between;align-items: center;
                        }

                        .circular{
                            width: 40px;height: 20px;border-radius: 16px;transition: .3s;cursor: pointer;box-shadow: 0 0 3px #999 inset;
                        }
                        .round-button{
                            width: 20px;height: 20px;;border-radius: 50%;box-shadow: 0 1px 5px rgba(0,0,0,.5);transition: .3s;position: relative;
                        }
                        .back{
                            border: solid #FFF; border-width: 0 3px 3px 0; display: inline-block; padding: 3px;transform: rotate(135deg);  -webkit-transform: rotate(135deg);margin-left:10px;cursor:pointer;
                        }
                        .to-right{
                            margin-left:20px; display: inline-block; padding: 3px;transform: rotate(-45deg); -webkit-transform: rotate(-45deg);cursor:pointer;

                        }
                        .iconSetSave{
                            font-size:24px;cursor:pointer;margin-right:5px;margin-bottom:4px;color:#FFF;
                        }
                        .zhm_set_page{
                            z-index:1000000003;
                            position:absolute;
                            top:0px;left:300px;
                            background:#fff;
                            width:300px;
                            height:100%;
                        }
                        .zhm_set_page_header{
                            border-bottom:1px solid #ccc;
                            height:40px;
                            line-height:40px;
                            display: flex;
                            justify-content: space-between;
                            align-items: center;
                            background-color:#fe6d73;
                            color:#fff;
                            font-size: 15px;
                        }
                        .zhm_set_page_content{
                            display: flex !important;justify-content: space-between;align-items: center;
                        }
                        .zhm_set_page_list{
                            margin:0px;padding:0px;
                            height: 280px;
                            overflow-y: scroll;
                        }

                        .zhm_set_page_list::-webkit-scrollbar {
                            /*滚动条整体样式*/
                            width : 0px;  /*高宽分别对应横竖滚动条的尺寸*/
                            height: 1px;
                        }
                        .zhm_set_page_list::-webkit-scrollbar-thumb {
                            /*滚动条里面小方块*/
                            border-radius   : 2px;
                            background-color: #fe6d73;
                        }
                        .zhm_set_page_list::-webkit-scrollbar-track {
                            /*滚动条里面轨道*/
                            box-shadow   : inset 0 0 5px rgba(0, 0, 0, 0.2);
                            background   : #ededed;
                            border-radius: 10px;
                        }
                        .zhm_set_page_list li{
                            /*border-bottom:1px solid #ccc;*/
                            padding:12px 20px;
                            display:block;
                            border-bottom:1px solid #eee;
                        }
                        li:last-child{
                            border-bottom:none;
                        }
                        .zhm_scroll{
                            overflow-y: scroll !important;
                        }
                        .zhm_scroll::-webkit-scrollbar {
                            /*滚动条整体样式*/
                            width : 0px;  /*高宽分别对应横竖滚动条的尺寸*/
                            height: 1px;
                        }
                        .zhm_scroll::-webkit-scrollbar-thumb {
                            /*滚动条里面小方块*/
                            border-radius   : 2px;
                            background-color: #fe6d73;
                        }
                        .zhm_scroll::-webkit-scrollbar-track {
                            /*滚动条里面轨道*/
                            box-shadow   : inset 0 0 5px rgba(0, 0, 0, 0.2);
                            background   : #ededed;
                            border-radius: 10px;
                        }
                        /*-form-*/
                        :root {
                            --base-color: #434a56;
                            --white-color-primary: #f7f8f8;
                            --white-color-secondary: #fefefe;
                            --gray-color-primary: #c2c2c2;
                            --gray-color-secondary: #c2c2c2;
                            --gray-color-tertiary: #676f79;
                            --active-color: #227c9d;
                            --valid-color: #c2c2c2;
                            --invalid-color: #f72f47;
                            --invalid-icon: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E%20%3Cpath%20d%3D%22M13.41%2012l4.3-4.29a1%201%200%201%200-1.42-1.42L12%2010.59l-4.29-4.3a1%201%200%200%200-1.42%201.42l4.3%204.29-4.3%204.29a1%201%200%200%200%200%201.42%201%201%200%200%200%201.42%200l4.29-4.3%204.29%204.3a1%201%200%200%200%201.42%200%201%201%200%200%200%200-1.42z%22%20fill%3D%22%23f72f47%22%20%2F%3E%3C%2Fsvg%3E");
                        }
                        .text-input {
                            font-size: 16px;
                            position: relative;
                            right:0px;
                            z-index: 0;
                        }
                        .text-input__body {
                            -webkit-appearance: none;
                            -moz-appearance: none;
                            appearance: none;
                            background-color: transparent;
                            border: 1px solid var(--gray-color-primary);
                            border-radius: 3px;
                            height: 1.7em;
                            line-height: 1.7;
                            overflow: hidden;
                            padding: 2px 1em;
                            text-overflow: ellipsis;
                            transition: background-color 0.3s;
                            width:55%;
                            font-size:14px;
                        }
                        .text-input__body:-ms-input-placeholder {
                            color: var(--gray-color-secondary);
                        }
                        .text-input__body::-moz-placeholder {
                            color: var(--gray-color-secondary);
                        }
                        .text-input__body::placeholder {
                            color: var(--gray-color-secondary);
                        }
                        *, ::after, ::before {
                        box-sizing: initial !important;
                        }
                        .text-input__body[data-is-valid] {
                            padding-right: 1em;
                        }
                        .text-input__body[data-is-valid=true] {
                            border-color: var(--valid-color);
                        }
                        .text-input__body[data-is-valid=false] {
                            border-color: var(--invalid-color);
                            box-shadow: inset 0 0 0 1px var(--invalid-color);
                        }
                        .text-input__body:focus {
                            border-color: var(--active-color);
                            box-shadow: inset 0 0 0 1px var(--active-color);
                            outline: none;
                        }
                        .text-input__body:-webkit-autofill {
                            transition-delay: 9999s;
                            -webkit-transition-property: background-color;
                            transition-property: background-color;
                        }
                        .text-input__validator {
                            background-position: right 0.5em center;
                            background-repeat: no-repeat;
                            background-size: 1.5em;
                            display: inline-block;
                            height: 100%;
                            left: 0;
                            position: absolute;
                            top: 0;
                            width: 100%;
                            z-index: -1;
                        }
                        .text-input__body[data-is-valid=false] + .text-input__validator {
                            background-image: var(--invalid-icon);
                        }
                        .select-box {
                            box-sizing: inherit;
                            font-size: 16px;
                            position: relative;
                            transition: background-color 0.5s ease-out;
                            width:90px;
                        }
                        .select-box::after {
                            border-color: var(--gray-color-secondary) transparent transparent transparent;
                            border-style: solid;
                            border-width: 6px 4px 0;
                            bottom: 0;
                            content: "";
                            display: inline-block;
                            height: 0;
                            margin: auto 0;
                            pointer-events: none;
                            position: absolute;
                            right: -72px;
                            top: 0;
                            width: 0;
                            z-index: 1;
                        }
                        .select-box__body {
                            box-sizing: inherit;
                            -webkit-appearance: none;
                            -moz-appearance: none;
                            appearance: none;
                            background-color: transparent;
                            border: 1px solid var(--gray-color-primary);
                            border-radius: 3px;
                            cursor: pointer;
                            height: 1.7em;
                            line-height: 1.7;
                            padding-left: 1em;
                            padding-right: calc(1em + 16px);
                            width: 140%;
                            font-size:14px;
                            padding-top:2px;
                            padding-bottom:2px;
                        }
                        .select-box__body[data-is-valid=true] {
                            border-color: var(--valid-color);
                            box-shadow: inset 0 0 0 1px var(--valid-color);
                        }
                        .select-box__body[data-is-valid=false] {
                            border-color: var(--invalid-color);
                            box-shadow: inset 0 0 0 1px var(--invalid-color);
                        }
                        .select-box__body.focus-visible {
                            border-color: var(--active-color);
                            box-shadow: inset 0 0 0 1px var(--active-color);
                            outline: none;
                        }
                        .select-box__body:-webkit-autofill {
                            transition-delay: 9999s;
                            -webkit-transition-property: background-color;
                            transition-property: background-color;
                        }
                        .textarea__body {
                            -webkit-appearance: none;
                            -moz-appearance: none;
                            appearance: none;
                            background-color: transparent;
                            border: 1px solid var(--gray-color-primary);
                            border-radius: 0;
                            box-sizing: border-box;
                            font: inherit;
                            left: 0;
                            letter-spacing: inherit;
                            overflow: hidden;
                            padding: 1em;
                            position: absolute;
                            resize: none;
                            top: 0;
                            transition: background-color 0.5s ease-out;
                            width: 100%;
                            }
                        .textarea__body:only-child {
                            position: relative;
                            resize: vertical;
                        }
                        .textarea__body:focus {
                            border-color: var(--active-color);
                            box-shadow: inset 0 0 0 1px var(--active-color);
                            outline: none;
                        }
                        .textarea__body[data-is-valid=true] {
                            border-color: var(--valid-color);
                            box-shadow: inset 0 0 0 1px var(--valid-color);
                        }
                        .textarea__body[data-is-valid=false] {
                            border-color: var(--invalid-color);
                            box-shadow: inset 0 0 0 1px var(--invalid-color);
                        }

                        .textarea ._dummy-box {
                            border: 1px solid;
                            box-sizing: border-box;
                            min-height: 240px;
                            overflow: hidden;
                            overflow-wrap: break-word;
                            padding: 1em;
                            visibility: hidden;
                            white-space: pre-wrap;
                            word-wrap: break-word;
                        }
                        .toLeftMove{
                            nimation:moveToLeft 0.5s infinite;
                            -webkit-animation:moveToLeft 0.5s infinite; /*Safari and Chrome*/
                            animation-iteration-count:1;
                            animation-fill-mode: forwards;
                        }

                        @keyframes moveToLeft{
                            from {left:200px;}
                            to {left:0px;}
                        }

                        @-webkit-keyframes moveToLeft /*Safari and Chrome*/{
                            from {left:200px;}
                            to {left:0px;}
                        }

                        .toRightMove{
                            nimation:moveToRight 2s infinite;
                            -webkit-animation:moveToRight 2s infinite; /*Safari and Chrome*/
                            animation-iteration-count:1;
                            animation-fill-mode: forwards;
                        }
                        @keyframes moveToRight{
                            from {left:0px;}
                            to {left:2000px;}
                        }

                        @-webkit-keyframes moveToRight /*Safari and Chrome*/{
                            from {left:0px;}
                            to {left:200px;}
                        }
                    `;

                domStyle .appendChild(document.createTextNode(menuSetStyle));

                domHead.appendChild(domStyle);

                var setListJson= [
                    {'listName':lang.iconPosition,'setListID':'iconPositionSetPage','setPageID':'movieIconSetPage','takePlace':'0px'},
                    {'listName':lang.playVideo,'setListID':'movieList','setPageID':'movieVideoSetPage','takePlace':'0px'},
                    {'listName':lang.playMusic,'setListID':'musicList','setPageID':'','takePlace':'0px'},
                    {'listName':lang.zhNice,'setListID':'zhihuList','setPageID':'zhihuIconSetPage','takePlace':'0px'},
                    {'listName':lang.videoDownload,'setListID':'videoDownloadList','setPageID':'videoDownloadSetPage','takePlace':'0px'},
                    {'listName':lang.baiduDownload,'setListID':'baiduList','setPageID':'','takePlace':'0px'},
                ];

                var zhihuOptionJson = [
                    {'optionName':lang.zhVideoClose,'optionID':'removeVideo','default':'0'},
                    {'optionName':lang.zhVideoDownload,'optionID':'downloadVideo','default':'22'},
                    {'optionName':lang.zhADClose,'optionID':'removeAD','default':'22'},
                    {'optionName':lang.zhCloseLeft,'optionID':'removeRight','default':'0'},
                    {'optionName':lang.zhChangeLink,'optionID':'changeLink','default':'22'},
                    {'optionName':lang.specialColumn,'optionID':'specialColumn','default':22},
                    {'optionName':lang.videoTitle,'optionID':'videoTitle','default':22},
                    {'optionName':lang.zhKeywordClose,'optionID':'removeKeyword','default':'0'},
                    {'optionName':lang.authorNameClose,'optionID':'removeAuthorName','default':'22'},
                    {'optionName':lang.yanxuanClose,'optionID':'removeYanxuan','default':'0'}
                ];

                var playVideoOptionJson ={
                    'optionName':lang.playVideoLineAdd,
                    'optionID':'videoPlayLineAdd',
                    'default':videoPlayLineAdd,
                    'textarea':'videoPlayLineAddTextarea',
                    'textareaId':'playVideoLineTextarea',
                    'tip':
`纯净1,https://im1907.top/?jx=
B站1,https://jx.jsonplayer.com/player/?url=
爱豆,https://jx.aidouer.net/?url=
BL,https://vip.bljiex.com/?v=
冰豆,https://api.qianqi.net/vip/?url=
百域,https://jx.618g.com/?url=
CK,https://www.ckplayer.vip/jiexi/?url=
CHok,https://www.gai4.com/?url=
ckmov,https://www.ckmov.vip/api.php?url=
H8,https://www.h8jx.com/jiexi.php?url=
JY,https://jx.playerjy.com/?url=
解析,https://ckmov.ccyjjd.com/ckmov/?url=
解析la,https://api.jiexi.la/?url=
老板,https://vip.laobandq.com/jiexi.php?url=
MAO,https://www.mtosz.com/m3u8.php?url=
M3U8,https://jx.m3u8.tv/jiexi/?url=
诺讯,https://www.nxflv.com/?url=
OK,https://okjx.cc/?url=
PM,https://www.playm3u8.cn/jiexi.php?url=
盘古,https://www.pangujiexi.cc/jiexi.php?url=
七哥,https://jx.nnxv.cn/tv.php?url=
RDHK,https://jx.rdhk.net/?v=
人人迷,https://jx.blbo.cc:4433/?url=
思云,https://jx.ap2p.cn/?url=
思古3,https://jsap.attakids.com/?url=
听乐,https://jx.dj6u.com/?url=
维多,https://jx.ivito.cn/?url=
虾米,https://jx.xmflv.com/?url=
YT,https://jx.yangtu.top/?url=
云端,https://sb.5gseo.net/?url=
云析,https://jx.yparse.com/index.php?url=
0523,https://go.yh0523.cn/y.cy?url=
17云,https://www.1717yun.com/jx/ty.php?url=
180,https://jx.000180.top/jx/?url=
4K,https://jx.4kdv.com/?url=
8090,https://www.8090g.cn/?url=`,
                     'valueName':'playVideoLineText'}

                var videoDownloadOptionJson = [
                    {'optionName':lang.dyVideoDownload,'optionID':'dyVideoDownload','default':dyVideoDownload},
                    {'optionName':lang.ksVideoDownload,'optionID':'ksVideoDownload','default':ksVideoDownload},
                    {'optionName':lang.xiguaVideoDownload,'optionID':'xiguaVideoDownload','default':xiguaVideoDownload},
                    {'optionName':lang.biliVideoDownload,'optionID':'biliVideoDownload','default':biliVideoDownload},
                    {'optionName':lang.youtubeVideoDownload,'optionID':'youtubeVideoDownload','default':youtubeVideoDownload},
                ];

                var setHtml = "<div id='setMask' class='zhmMask'></div>";

                setHtml +="<div class='wrap-box' id='setWrap'>";

                setHtml +="<div class='iconSetPage' id='movieIconSetPage'>";

                setHtml +="<ul class='iconSetUlHead'><li class='iconSetPageHead'><span class='back'></span><span>"+lang.iconPosition+"</span><span class='iconSetSave'>×</span></li></ul>";

                setHtml +="<ul class='iconSetPageLi'>";

                setHtml +="<li>"+lang.iconHeight+":<span class='text-input'><input class='text-input__body' id='iconTop' value='"+iconVipTop+"' placeholder='"+lang.tipIconHeight+"'><span class='text-input__validator'></span></span></li>";

                setHtml += "<li  style='display: inline-flex;'><span style='padding-top:4px;'>"+lang.iconLine+":</span><div class='select-box'><select class='select-box__body' id='iconPosition'>";

                setHtml +="<option value='left' "+selectedLeft+">"+lang.iconLeft+"</option><option value='right' "+selectedRight+">"+lang.iconRight+"</option>";

                setHtml +="</select></div></li>"

                setHtml +="<li>"+lang.iconWidth+":<span class='text-input'><input class='text-input__body' id='iconWidth' value='"+iconVipWidth+"' placeholder='"+lang.tipIconWidth+"'><span class='text-input__validator'></span></span></li>";

                setHtml += "<li  style='display: inline-flex;'><span style='padding-top:4px;'>"+lang.iconWaitTime+":</span><div class='select-box'><select class='select-box__body' id='iconWaitTime'>";

                for(let i =1;i<=8;i++){

                    let iconSelected = GM_getValue('iconWaitTime')==i/2?'selected':'';

                    setHtml +="<option value="+i/2+" "+iconSelected+">"+i/2+"秒</option>";

                }

                setHtml +="</select></div></li>";

                setHtml +="<li>透 明 度 :<span class='text-input'><input class='text-input__body' id='iconOpacity' value='"+iconVipOpacity+"' placeholder='"+lang.tipIconOpacity+"'></span></li>";

                setHtml +="</ul></div>";

                setHtml +="<div class='zhm_set_page' id='videoDownloadSetPage'>";

                setHtml +="<ul class='iconSetUlHead'><li class='zhm_set_page_header'><span class='back'></span><span>"+lang.videoDownload+"</span><span  class='iconSetSave'>×</li></ul>";

                setHtml +="<ul class='zhm_set_page_list'>";

                for(let i=0;i<videoDownloadOptionJson.length;i++){

                    let backColor,switchBackCorlor,display;

                    let optionValue = GM_getValue(videoDownloadOptionJson[i].optionID,videoDownloadOptionJson[i].default);

                    if(optionValue != '22'){

                        backColor = '#fff';

                        switchBackCorlor = '#FFF';

                        display = 'none';

                    }else{

                        backColor = '#fe6d73';

                        switchBackCorlor = '#FFE5E5';

                        display = 'block';

                    }

                    setHtml +="<li>";

                    setHtml +="<div class='zhm_set_page_content'>";

                    setHtml += "<span>"+videoDownloadOptionJson[i].optionName+"</span>";

                    setHtml +="<div class='circular' style='background-color:"+switchBackCorlor+"' id='"+videoDownloadOptionJson[i].optionID+"'>";

                    setHtml +="<div class='round-button' style='background: "+backColor+"; left: "+optionValue+"px;'></div>";

                    setHtml += "</div></div>";

                    setHtml += "</li>";
                }

                setHtml +="</ul>"

                setHtml +="</div>"

                setHtml +="<div class='zhm_set_page' id='movieVideoSetPage'>";

                setHtml +="<ul class='iconSetUlHead'><li class='zhm_set_page_header'><span class='back'></span><span>"+lang.setPlayVideo+"</span><span  class='iconSetSave'>×</li></ul>";

                setHtml +="<ul class='zhm_set_page_list' style='overflow-y:unset'>";

                    let backColor,switchBackCorlor,display;

                    let optionValue = GM_getValue(playVideoOptionJson.optionID,playVideoOptionJson.default);

                    if(optionValue != '22'){

                        backColor = '#fff';

                        switchBackCorlor = '#FFF';

                    }else{

                        backColor = '#fe6d73';

                        switchBackCorlor = '#FFE5E5';

                    }

                    setHtml +="<li>";

                    setHtml +="<div class='zhm_set_page_content'>";

                    setHtml += "<span class='playVideoOptionName'>"+playVideoOptionJson.optionName+"</span>";

                    setHtml +="<div class='circular' style='background-color:"+switchBackCorlor+"' id='"+playVideoOptionJson.optionID+"'>";

                    setHtml +="<div class='round-button' style='background: "+backColor+"; left: "+optionValue+"px;'></div>";

                    setHtml += "</div></div>";

                    setHtml+="</li><li>";

                    setHtml +="<div>解析线路</div>";

                    setHtml +="<div class='form__textarea'>";

                    setHtml +="<div class='textarea js-flexible-textarea' style='padding: 5px 0px;' id='"+playVideoOptionJson.textarea+"'>";

                    setHtml +="<textarea rows='9' class='textarea__body zhm_scroll' placeholder='"+lang.tipPlayVideoLineAdd+"' style='width:250px;font-size:12px;padding:4px;resize:none;' id='"+playVideoOptionJson.textareaId+"'>"+GM_getValue(playVideoOptionJson.valueName,playVideoOptionJson.tip)+"</textarea>";

                    setHtml +="</div></div></li>";

                    setHtml +="</ul>"

                    setHtml +="</div>"

                    setHtml +="<div class='zhihuSetPage' id='zhihuIconSetPage'>";

                    setHtml +="<ul class='iconSetUlHead'><li class='iconSetPageHead'><span class='back'></span><span>"+lang.zhSet+"</span><span  class='iconSetSave'>×</li></ul>";

                    setHtml +="<ul class='zhm_set_page_list' style='height:300px'>";

                for(var optionN=0;optionN<zhihuOptionJson.length;optionN++){

                    let backColor,switchBackCorlor;

                    let optionValue = GM_getValue(zhihuOptionJson[optionN].optionID,zhihuOptionJson[optionN].default);

                    if(optionValue != '22'){

                        backColor = '#fff';

                        switchBackCorlor = '#FFF';

                    }else{

                        backColor = '#fe6d73';

                        switchBackCorlor = '#FFE5E5';

                    }

                    setHtml +="<li ><div class='zhihuSetPageContent'><span>"+zhihuOptionJson[optionN].optionName+"</span>";

                    setHtml +="<div class='circular' style='background-color: "+switchBackCorlor+";' id="+zhihuOptionJson[optionN].optionID+"><div class='round-button' style='background: "+backColor+";left: "+optionValue+"px;'></div></div></div>";

                    if(zhihuOptionJson[optionN].optionID == 'removeKeyword'){

                        var keywordShow;

                        if(GM_getValue('removeKeyword','0') == '22'){

                            keywordShow = 'block';

                        }else{
                            keywordShow = 'none';
                        }

                        setHtml +="<div style='margin-top:10px;display:"+keywordShow+";padding:5px 0px;' id='zhihuKeyword'><span class='text-input'><input value='"+GM_getValue('inputZhKeyword','')+"' id='inputZhKeyword' class='text-input__body' placeholder='"+lang.tipKeyword+"' style='width:88%'><span></div>";
                    }

                    if(zhihuOptionJson[optionN].optionID == 'removeAuthorName'){

                        var authorNameShow;

                        if(GM_getValue('removeAuthorName','22') == '22'){

                            authorNameShow = 'block';

                        }else{
                            authorNameShow = 'none';
                        }

                        setHtml +="<div style='margin-top:10px;display:"+authorNameShow+";padding:5px 0px;' id='zhihuAuthorName'><span class='text-input'><input value='"+GM_getValue('inputZhAuthorName','')+"' id='inputZhAuthorName' class='text-input__body' placeholder='"+lang.tipAuthorName+"' style='width:88%'><span></div>";
                    }
                    setHtml +="</li>";
                }

                setHtml +="</ul>"

                setHtml +="</div>";

                setHtml +="<ul class='iconSetUlHead'><li class='iconSetPageHead'><span></span><span>"+lang.set+"</span><span class='iconSetSave'>×</span></li></ul>";

                setHtml +="<ul class='setWrapLi'>";

                for(var setN=0;setN<setListJson.length;setN++){

                    var listValue = GM_getValue(setListJson[setN].setListID,'22');

                    let backColor,arrowColor,switchBackCorlor;

                    if(listValue != 22){
                        backColor = '#fff';
                        arrowColor= '#EEE';
                        switchBackCorlor = '#FFF';

                    }else{
                        backColor = '#fe6d73';
                        arrowColor = '#CCC';
                        switchBackCorlor = '#FFE5E5';
                    }

                    if(setListJson[setN].setPageID == ''){
                        arrowColor = '#EEE';
                    };
                    setHtml +="<li><span>"+setListJson[setN].listName+"</span>";

                    setHtml +="<div class='setWrapLiContent'>";

                    setHtml +="<div class='circular' id='"+setListJson[setN].setListID+"' style='background-color: "+switchBackCorlor+";'><div class='round-button' style='background: "+backColor+";left: "+listValue+"px'></div></div>";

                    setHtml +="<span class='to-right' data='"+setListJson[setN].setPageID+"' takePlace='"+setListJson[setN].takePlace+"' style='border: solid "+arrowColor+"; border-width: 0 3px 3px 0;'></span></div></li>";
                }

                setHtml +="</ul>";

                setHtml +="<div style='height:40px;' id='zhmTakePlace'></div>";

                setHtml +="<div class='iconSetFoot' style=''>";

                setHtml +="<ul class='iconSetFootLi'>";

                setHtml +="<li></li>";

                setHtml +='</ul>';

                setHtml +='</div>';

                setHtml += "</div>";

                if(document.querySelector('#setMask')) return;

                this.createElement('div','zhmMenu');

                let zhmMenu = document.getElementById('zhmMenu');

                zhmMenu.innerHTML = setHtml;

                let timerZhmIcon = setInterval(function(){

                    if (document.querySelector('#zhmMenu')){

                        clearInterval(timerZhmIcon); // 取消定时器

                        let circular = document.querySelectorAll('.circular');

                        circular.forEach(function(item){

                            item.addEventListener('click', function(_e){

                                let buttonStyle = item.children[0].style;

                                let left = buttonStyle.left;

                                left = parseInt(left);

                                let listLeftValue;

                                if(left==0){

                                    buttonStyle.left = '22px';

                                    buttonStyle.background = '#fe6d73';

                                    item.style.background='#ffE5E5';

                                    if(item.nextSibling && item.nextSibling.getAttribute('data')){

                                        item.nextSibling.setAttribute('style','border: solid #ccc;border-width: 0 3px 3px 0;')
                                    }

                                    listLeftValue = 22;

                                }else{

                                    buttonStyle.left = '0px';

                                    buttonStyle.background = '#fff';

                                    item.style.background='#fff';

                                    if(item.nextSibling){

                                        item.nextSibling.setAttribute('style','border: solid #EEE;border-width: 0 3px 3px 0;')

                                    }

                                    listLeftValue = 0;
                                }

                                let setListID = item.id;

                                if(setListID == 'removeKeyword' && listLeftValue==22){

                                    document.querySelector('#zhihuKeyword').style.display='block';

                                    //document.querySelector('#zhmTakePlace').style= 'height:220px';
                                }

                                if(setListID == 'removeKeyword' && listLeftValue==0){

                                    document.querySelector('#zhihuKeyword').style.display='none';

                                    //document.querySelector('#zhmTakePlace').style= 'height:180px';
                                }

                                if(setListID == 'removeAuthorName' && listLeftValue==22){

                                    document.querySelector('#zhihuAuthorName').style.display='block';

                                }

                                if(setListID == 'removeAuthorName' && listLeftValue==0){

                                    document.querySelector('#zhihuAuthorName').style.display='none';

                                }
                                
                                GM_setValue(setListID,listLeftValue);

                            })

                        });

                        let toRight = document.querySelectorAll('.to-right');

                        toRight.forEach(function(item){

                            item.addEventListener('click', function(e){

                                let left = item.previousSibling.children[0].style.left;

                                left = parseInt(left);

                                if(left != 22) return;

                                let setPageID = item.getAttribute('data');

                                let pageId = document.getElementById(setPageID);

                                pageId.className='iconSetPage toLeftMove';

                                //知乎设置暂位高度

                                if(setPageID=='zhihuIconSetPage'){

                                    document.querySelector('#zhmTakePlace').style= `height:68px`;

                                }
                                //实时图标高度
                                if(setPageID == 'movieIconSetPage'){

                                    document.querySelector('#iconTop').value=document.querySelector("#zhmlogo").offsetTop;

                                }

                            })

                        })

                        let toBack = document.querySelectorAll('.back');

                        toBack.forEach(function(item){

                            item.addEventListener('click', function(e){

                                let parentDom = item.parentNode.parentNode.parentNode;

                                parentDom.className='iconSetPage toRightMove';

                                document.querySelector('#zhmTakePlace').style='height:40px;'

                            })

                        })

                        let setSave = document.querySelectorAll('.iconSetSave');

                        setSave.forEach(function(item){

                            item.addEventListener('click',()=>{

                                let iconTop = document.getElementById('iconTop').value;

                                let iconOpacity=document.getElementById('iconOpacity').value;

                                let iconPosition = document.getElementById('iconPosition').value;

                                let iconWidth = document.getElementById('iconWidth').value;

                                let iconWaitTime = document.getElementById('iconWaitTime').value;

                                let playVideoLineText = document.querySelector('#playVideoLineTextarea').value;
                                
                                let playVideoLineLeft = document.querySelector('#videoPlayLineAdd').children[0].style.left;

                                let inputZhKeyword = document.getElementById('inputZhKeyword').value;

                                let inputAuthorName = document.getElementById('inputZhAuthorName').value;

                                if(iconTop != ''){

                                    if(!(/(^[0-9][0-9]{0,2}$)/.test(iconTop))){

                                        alert(lang.tipErrorIconHeight);

                                        return false;
                                    }

                                    GM_setValue('iconTop',iconTop);
                                }

                                if(iconOpacity != ''){

                                    if(!(/^(?:0|[1-9][0-9]?|100)$/.test(iconOpacity))){

                                        alert(lang.tipErrorIconOpacity);

                                        return false;
                                    }

                                    GM_setValue('iconOpacity',iconOpacity);
                                }

                                if(iconPosition != ''){

                                    GM_setValue('iconPosition',iconPosition);
                                }

                                if(iconWaitTime != ''){

                                    GM_setValue('iconWaitTime',iconWaitTime);
                                }

                                if(iconWidth !=''){

                                    if(!(/(^([1-9][0-9]?)$)/.test(iconWidth))){

                                        alert(lang.tipErrorIconWidth);

                                        return false;
                                    }

                                    GM_setValue('iconWidth',iconWidth);
                                }

                                if(GM_getValue('videoPlayLineAdd') == 22){

                                    if(playVideoLineText){

                                        let lineObj = _this.getLine(playVideoLineText);

                                        if(lineObj.length>0){

                                            GM_setValue('playVideoLineText',playVideoLineText);

                                        }else{
                                            alert('线路输入不正确');
                                            return;
                                        }

                                    }else{

                                        GM_setValue('playVideoLineText','');
                                    }

                                }else{

                                    GM_setValue('playVideoLineText',playVideoLineText);
                                }

                                if(inputZhKeyword != ''){

                                    GM_setValue('inputZhKeyword',inputZhKeyword);

                                }else{

                                    if(GM_getValue('inputZhKeyword')){

                                        GM_deleteValue('inputZhKeyword');
                                    }

                                }

                                if(inputAuthorName != ''){

                                    GM_setValue('inputZhAuthorName',inputAuthorName);

                                }else{

                                    if(GM_getValue('inputZhAuthorName')){

                                        GM_deleteValue('inputZhAuthorName');
                                    }

                                }

                                history.go(0);
                            })
                        })

                        document.getElementById('iconTop').addEventListener('change',function(){

                            let iconTop = this.value;

                            if(!(/(^[1-9]\d*$)/.test(iconTop))){

                                this.setAttribute('data-is-valid','false')


                            }else{

                                this.setAttribute('data-is-valid','true')
                            }

                            return false;

                        })

                        document.getElementById('iconWidth').addEventListener('change',function(){

                            let iconWidth = this.value;

                            if(!(/(^[1-9]\d*$)/.test(iconWidth))){

                                this.setAttribute('data-is-valid','false')


                            }else{

                                this.setAttribute('data-is-valid','true')
                            }

                            return false;

                        })
                        //腾讯视频快捷键冲突
                        if(couponUrl.match(/v\.qq\.com\/x\/cover/)){

                            let addLineText =document.querySelector('#playVideoLineTextarea');

                            addLineText.addEventListener('keydown',function(e){

                                let startPos = addLineText.selectionStart;

                                let endPos = addLineText.selectionEnd;

                                if (startPos === undefined || endPos === undefined) return;

                                keyCode.forEach(function(item){

                                    if(e.keyCode == item.code && e.shiftKey==item.isShift){

                                        let textValue = addLineText.value;

                                        let startValue = textValue.substring(0,startPos);

                                        let endValue = textValue.substring(startPos);

                                        let allValue = startValue+item.value+endValue;

                                        addLineText.value=allValue;

                                        addLineText.selectionStart = startPos+1;

                                        addLineText.selectionEnd = endPos+1;

                                    }
                                })

                            })
                        }
                    }

                })

                }

            createElement(dom,domId){

                var rootElement = document.body;

                var newElement = document.createElement(dom);

                newElement.id = domId;

                var newElementHtmlContent = document.createTextNode('');

                rootElement.appendChild(newElement);

                newElement.appendChild(newElementHtmlContent);

            }

            request(method,url,data,isCookie=''){

                let request = new XMLHttpRequest();

                return new Promise((resolve,reject)=>{

                    request.onreadystatechange=function(){

                        if(request.readyState==4){

                            if(request.status==200){

                                resolve(request.responseText);

                            }else{

                                reject(request.status);
                            }

                        }
                    }

                    request.open(method,url);
                    if(isCookie){
                        request.withCredentials = true;
                    }
                    request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
                    request.send(data);

                })

            }

            setCookie(cname,cvalue,exdays){

                var d = new Date();

                d.setTime(d.getTime()+(exdays*24*60*60*1000));

                var expires = "expires="+d.toGMTString();

                document.cookie = cname+"="+cvalue+"; "+expires;
            }

            getCookie(cname){
                var name = cname + "=";
                var ca = document.cookie.split(';');
                for(var i=0; i<ca.length; i++) {
                    var c = ca[i].trim();
                    if (c.indexOf(name)==0) { return c.substring(name.length,c.length); }
                }
                return "";
            }

            getQueryString(e) {
                var t = new RegExp("(^|&)" + e + "=([^&]*)(&|$)");
                var a = window.location.search.substr(1).match(t);
                if (a != null) return a[2];
                return "";
            }

            getUrlParams(url){
                let reg = /([^?&+#]+)=([^?&+#]+)/g;
                let obj={};
                url.replace(reg,(res,$1,$2)=>{obj[$1]=$2});
                return obj;
            }

            getLine(text){

                let textArr = text.split('\n');

                if(textArr.length > 0){

                    let lineObj = [];

                    let match = /^(.+)(https?:\/\/.+)$/;

                    textArr.forEach(function(item){

                        item = item.replace(/\s*,*/g,'');

                        if(!item) return true;

                        let lineMatch = item.match(match);

                        if(lineMatch){

                            lineObj.push({'name':lineMatch[1].substring(0,4),'url':lineMatch[2]});

                        }else{

                            lineObj=[];

                            return false;
                        }

                    })

                    return lineObj;

                }
            }

            static getElement(css,all=''){

                return new Promise((resolve,reject)=>{

                    let num = 0;

                    let timer = setInterval(function(){

                        num++

                        let dom;

                        if(all == false){

                            dom = document.querySelector(css);

                            if(dom){

                                clearInterval(timer);

                                resolve(dom);

                            }

                        }else{

                            dom = document.querySelectorAll(css);

                            if(dom.length>0){

                                clearInterval(timer);

                                resolve(dom);

                            }
                        }

                        if(num==20){
                            clearInterval(timer);
                            resolve(false);
                        }
                        
                    },300)

                    })

            }

            static toast(msg,duration){

                duration=isNaN(duration)?3000:duration;

                let toastDom = document.createElement('div');

                toastDom.innerHTML = msg;

                //toastDom.style.cssText="width: 60%;min-width: 150px;opacity: 0.7;height: 30px;color: rgb(255, 255, 255);line-height: 30px;text-align: center;border-radius: 5px;position: fixed;top: 40%;left: 20%;z-index: 999999;background: rgb(0, 0, 0);font-size: 12px;";
                toastDom.style.cssText='padding:2px 15px;min-height: 36px;line-height: 36px;text-align: center;transform: translate(-50%);border-radius: 4px;color: rgb(255, 255, 255);position: fixed;top: 50%;left: 50%;z-index: 9999999;background: rgb(0, 0, 0);font-size: 16px;'

                document.body.appendChild(toastDom);

                setTimeout(function() {

                    var d = 0.5;

                    toastDom.style.webkitTransition = '-webkit-transform ' + d + 's ease-in, opacity ' + d + 's ease-in';

                    toastDom.style.opacity = '0';

                    setTimeout(function() { document.body.removeChild(toastDom) }, d * 1000);

                }, duration);

            }
            //create zhmLogoIcon
            zhmLogo(){

                var _this = this;

                let sortDiv = iconVipPosition=='left'?'row':'row-reverse';

                let playVideoStyle = `
                .zhm_play_vidoe_icon{
                   padding-top:2px;
                   cursor:pointer;
                   z-index:999999;
                   position:fixed;${iconVipPosition}:5px;top:${iconVipTop}px;
                   text-align:center;
                   overflow:visible;
                   display:flex;
                   flex-direction:${sortDiv};
                   width:auto;
                }
                .zhm_play_video_wrap{
                   z-index:9999999;
                   overflow: hidden;
                   width:300px;
                }
                .iconLogo{
                    opacity:${iconVipOpacity/100};
                }
                .zhm_play_video_line{
                   width:320px;
                   height:316px;
                   overflow-y:scroll;
                   overflow-x:hidden;
                }
                .zhm_play_vide_line_ul{
                   width:300px;
                   display: flex;
                   justify-content: flex-start;
                   flex-flow: row wrap;
                   list-style: none;
                   padding:0px;
                   margin:0px;

                }
                .zhm_play_video_line_ul_li{
                   padding:4px 0px;
                   margin:2px;
                   width:30%;
                   color:#FFF;
                   text-align:center;
                   background-color:#f24443;
                   box-shadow:0px 0px 10px #fff;
                   font-size:14px;
                }
                .zhm_play_video_line_ul_li:hover{
                   color:#260033;
                   background-color:#fcc0c0
                }
                .zhm_line_selected{
                   color:#260033;
                   background-color:#fcc0c0
                }

                .zhm_play_video_jx{
                   width:100%;
                   height:100%;
                   z-index:999999;
                   position: absolute;top:0px;padding:0px;
                }
                `;

                 domStyle .appendChild(document.createTextNode(playVideoStyle));

                 domHead.appendChild(domStyle);

                 let playWrapHtml = "<div href='javascript:void(0)' target='_blank' style='' class='playButton zhm_play_vidoe_icon' id='zhmlogo'>";

                //  playWrapHtml += "<span class='textLogo' style='font-size:16px;color:red;'>尊缘阁VIP</span>";//尊缘阁文字播放按键
                // playWrapHtml += "<img class='iconLogo' style='width:"+iconVipWidth+"px;height:"+iconVipWidth*1.5+"px' src='图片链接'>"//图片播放按键
                 playWrapHtml += "<img class='iconLogo' style='width:40px;height:40px' src='data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCAH0AfQDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD6pooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiig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MaGP/wAfAwxG7A7ehr598cXupv8AFXU7e3V/s1vbPKJJIS4DiE7dvHJBI4+tfQL/APH0h7ZH54arGM1zV8OsRDlbOrD4h4efNa+hxHweilj+HGjgq0bYlyrpgj9856V1l0ZAjZKHAHQc8mrearXB5kX1AP5GtHDlgo/1sYufNNyECbXC+VGcgnrjpj296eI+OIkH+fpTlP7xD7EfrUtOMUQ5WIPJOfuxj/gP/wBesSKwa38T6lqMgG1rWNQwGASN2R19hXRUCpqUVNLy1KjVcb+Z8jaWl/Jrd1drZ3nnM0jnZAxJJYleMetd94C8F67qXiaLXNehkt7NLhLzEy7XlfA2gLnIwwzkgfjnj3h/vJ9f6VH/AMsQreuM/Q1yUcvjSm53uz0MRmU8RBQtZD3woQD1A+lS1H97lWHH4ihD15zz1/CvQTR5hJRRRVCCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAAjIpm0/32/Sn0UrXAq+XsbCcemeRnnP8AOpkcN0IP9KkqvhkdfYYGT9761FuTbYq9yV22r78fzqJ1w+9u/wAuOvFIFAZtq5k9eODjjP4U94d2Msdw6H0od2th6Iah+QED7rHI6nv/APWqcHPr/KoPJYBj5jbj6UyJvMSNvmDHjeMYNCdtGK1y3RmotxXqrN7jHNNbdsLMx56JkD8M1VxWAurbW6L1yeKbv2o3mA45YcZ4zmpUHOSAOMACkkQtjB9j9KTix3GJCuOUGckn8Tmp6BxS01Gwm7hRRRVCCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAoIBoooAQAAcUUtVryYwqm3GXbAJ7VLairjSu7IsVXtP+PcDHHQDFVLueaLaDKpycELwfzxxUHnspEJkKpk7vUc/wAutc0sRHmvbY2jSfKa3l7fuYXPbHFKqAcn73rVS1I+0gQuzR7fmzk8/jV6t4NSVzKScXYWiiitCQooooAKKKKACiiigAooooAKKKKACiuM8UfEjwz4ZuGttRvx9qX70MSl2X646Vg/8Ly8G/8APxd/+A7VDqRWjZ0wwdea5owbXoeo5ozXl3/C8fBv/Pxd/wDgO1H/AAvLwb/z8Xf/AIDtS9rDuV9RxP8Az7f3M9RzRmvLv+F5eDf+fi7/APAdqP8AhePg3/n4u/8AwHaj2sO4fUcT/wA+39zPUcijIry//hePg3/n4u//AAHaj/hePg3/AJ+Lv/wHaj2sO4fUcT/z7f3M9QyKK8vHxx8G/wDPxd/+A7Vo6H8WvCGr3gtYdR8mVjhftEZjDfQmj2sO4ngsQld039zO/opAwIBByD0Ipa0OUKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigApksayIVcZBp9FAFSS1iEEgweVIz3FN06MLb8j5mOX4xkmrUg3Iw9jUNi3mQbuOSRx7HH9Kx5IqasXzPlZOiBPlVQB7DFLRS1qlYi9wooopgFFFFABRRRQAUUUUAFFFFABXBfGfxRL4W8FXE9m5S8uD5ELjqhPVh9BXeGvHP2nbSSbwfYToCUhufn/FcD9azrNqDaOvAQjUxMIz2ufMdxNLNI0szM7uckk5JPrTYo2klCJ1PqcUlJXkH6Ftsd14S0SwFo9xfypNMZAYTEN4QqeQeQD1HA9KqeOdO0TTzAdNe7a8ugLhlkwqIjdtu0Y9ua2fDy3OleGF/tGO3tJbZmliMmd+1iCSyjLdcdMcelZXxDFlNqRuppLg3s8EUsYSMCLbt7kncDweMVzpvntc8unKcsQ3d28jIs9Dll8P3Wqzq6QArHAegkcsAfwAzz61ra54Xi0zRYZJ90d+FAYmRRGec59ScHAA9M1oPqvn+EdJD3km5JFQKqqgRh1wP4sDueOfWtHU9Kstfso1S+DagEkSDzWODgAsp9cZGPc/k3KVy5YmamnJ2V2ecaZHby6hCl67R2pOZXQ8qvcjg1cls7Oxui93Fdz2jfNbkAReavqSckdulXNN0p4IdXW8WKOaIxQ4dxhcuCSSOgwOvvXU+Kbi2g0CbzYreR5Aq2xV1dmzjMmDyo49c9Kpy1sa1MQ+ZKOz0/r7zivE9nZafq8kGnPK0OxXxJjKkjOM98Vk5xz0rW8VReTrdwp5OxD+aisjtWi2R0078ivqfT/wCzj4tuNZ0O40e+kMk2n7TG55JjbOAT7HNeyV83fsuWUra3qt5txCkCx7vUk5x+Qr6Rr1cPJypps+HzanGGLmoBRRRW55oUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAEc0ixRvI5wqjJNUtFnSeyG0bWVjuU9Rkk/yNN1d9wSDs3L/AE//AF/yqrav9mukl/glQB+wBzx+hrhnWcay7LR/P+l+J0Rp3pvuzdoooruOcKKKKACiiigAooooAKKKKACiiigBDWfr+kWmvaPdabqCb7a4Qow7j3HuK0DRQ1dWYKTi7rc+R/F/we8S6LfyLp9m+p2JY+VNBy2M9GXqD+nvXPf8K98Wf9C/qP8A35NfbNFcrwkb3ue7DiDERilKKZ8Y2ng3xrbTtKND1KQuNsgkhZhIuehz24q74p8LeLdc1FLoeGNQt1SFYhGIy3TPOcD1r7BoqfqUL3F/b1W6lyK69f8AM+Jv+FfeLsY/sDUsf9cTWnceGvHc0FlENC1GP7GS8bJbkMWOOSc89K+xqKbwcXuxvP6st4L8f8z4mk8AeMJHdn0HVS0hy58g/Mfermk+D/G2m30VzDoGosycbZICVK+hHpX2bmjNL6lAHn9Zq3Ivx/zPjDVfBnjPUtQmu7jw/qG+U5O2A8e1T6L8KfF2q3qwf2TPaKfvS3Q2Io9ff6CvsjNGapYOCB5/X5eVRS+//M5rwB4Ss/Bvh6HTrQ+ZJ96aYjBkfucdh6CumpKK6YpRVkeJOcqknOTu2LRRRTJCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAoNFBoAyZBv1CRyeBwv4KeP1NNvF4Rccjt6YC0Rgm4Uqf9bI+CPXZ/8AW/SrFwuZy2MjLHP/AAACvP5eaMn5nUnyyXoWbNy8C7iC68HFTiqdkpBY4IDIjfjgg/yFXBXZSbcVc552voFFFFaEhRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUYoooAMUYoooAMUYoooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAI2jViMjp+BFNNvCwAZd2MEbiTjFTUVPKuw7sAOOKKKKoQUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQB/9m4Svc/AAAAAB9YTwe+twU6xV3YOaIi61k='>"

                 playWrapHtml += "<div>";

                 _this.createElement('div','zhmIcon');

                 let zhmPlay = document.getElementById('zhmIcon');

                 zhmPlay.innerHTML = playWrapHtml;

             }
             //左键按下拖动
             //type:根据不同类型,处理图标单击事务
             zhmLogoDrag(type,web){

                 var _this = this;

                 var zhmLogoDrag=document.querySelector("#zhmlogo");

                 var zhmLogoIcon = document.querySelector(".iconLogo");

                 if(!zhmLogoDrag || !zhmLogoIcon)return;

                 zhmLogoDrag.onmousedown = function(event){

                     if(event.which==3)return false;//屏蔽右键

                     let sedownTop = zhmLogoDrag.offsetTop;

                     let zhmLogoIconHeight = zhmLogoIcon.offsetHeight;

                     let bottomSpace = 10;

                     if(event.target.className != 'iconLogo')return;

                     //let shiftX = event.clientX - zhmLogoDrag.getBoundingClientRect().left;
                     let shiftx = 5;

                     let shiftY = event.clientY-zhmLogoDrag.getBoundingClientRect().top;

                     zhmLogoDrag.style.position = 'fixed';

                     zhmLogoDrag.style.zIndex = 9999999;

                     document.body.append(zhmLogoDrag);

                     function onMouseMove(event){

                         //zhmLogoDrag.style.left = pageX - shiftX + 'px';
                         zhmLogoDrag.style.left = '5px';

                         let height = window.innerHeight - zhmLogoIconHeight-bottomSpace;

                         let y = event.pageY-shiftY;

                         y = Math.min(Math.max(0, y), height);

                         zhmLogoDrag.style.top = y+'px';
                     }
                     //在mousemove事件上移动图标
                     document.addEventListener('mousemove',onMouseMove);
                     //松开事件
                     document.onmouseup = function(e){

                         GM_setValue('iconTop',zhmLogoDrag.offsetTop);

                         document.removeEventListener('mousemove', onMouseMove);

                         zhmLogoDrag.onmouseup = null;

                         let height = zhmLogoDrag.offsetTop+zhmLogoIconHeight+bottomSpace;

                         if(zhmLogoDrag.offsetTop < 0){

                             zhmLogoDrag.style.top ='0px';
                         }

                         if(window.innerHeight < height){

                             zhmLogoDrag.style.top =window.innerHeight-zhmLogoIconHeight-bottomSpace+'px';

                         }
                         //click事件处理
                         switch(type){

                             case 'video':
                                 
                                 if(zhmLogoDrag.offsetTop==sedownTop && web.length == 0 && zhmLogoDrag.offsetTop>0 && window.innerHeight > height){

                                     BaseClass.toast('请在视频播放页点击图标');
                                 }

                                 break;
                             case 'music':

                                    if(zhmLogoDrag.offsetTop==sedownTop && e.target.className == 'iconLogo'){

                                     //document.removeEventListener('mousemove', onMouseMove);

                                     //zhmLogoDrag.onmouseup = null;

                                     let musicUrlData = [
                                         {match:/^https?:\/\/music\.163\.com\/#\/(?:song|dj)\?id/},
                                         {match:/^https?:\/\/y\.music\.163\.com\/m\/(?:song|dj)\?id/},
                                         {match:/^https?:\/\/music\.163\.com\/(?:song|dj)\?id/},
                                         {match:/^https?:\/\/y\.qq\.com\/n\/ryqq\/player/},
                                         {match:/kugou\.com/},
                                         {match:/kuwo\.cn/},
                                         {match:/^https?:\/\/www\.ximalaya\.com/},
                                     ]

                                     let musicUrl = musicUrlData.filter(function(item){

                                         return location.href.match(item.match);

                                     })

                                     if(musicUrl.length==0){

                                         BaseClass.toast(web[0].tip);

                                         return;
                                     }

                                     switch(web[0].name){
                                         case 'netease':
                                             neteaseFun();
                                             break;
                                         case 'qq':
                                             qqFun();
                                             break;
                                         case 'kugou':
                                             kugouFun();
                                             break;
                                         case 'kuwo':
                                             kuwoFun();
                                             break;
                                         case 'ximalaya':
                                             ximalayaFun();
                                             break;
                                     }

                                     function neteaseFun(){

                                         let urlParams = _this.getUrlParams(location.href);

                                         if(urlParams.id == undefined) return;

                                         let neteaseUrlEncode = encodeURIComponent('https://music.163.com/song?id='+urlParams.id);

                                         let openUrl = webUrl+"?id="+urlParams.id+"&type=netease"

                                         window.open(openUrl);

                                     }

                                     function qqFun(){

                                         let qqSongMatch;

                                         if(document.querySelector(".player_music__info")){

                                             qqSongMatch = document.querySelector(".player_music__info").childNodes[0].href.match(/songDetail\/(\S*)\?/);

                                         }else if(document.querySelector("#sim_song_info")){

                                             qqSongMatch = document.querySelector("#sim_song_info").childNodes[0].href.match(/song\/(\S*).html/);

                                         }else{

                                             qqSongMatch = '';
                                         }

                                         if(!qqSongMatch[1]){console.log('没有获取到歌曲ID'); return};

                                         let audioLink = encodeURIComponent(document.querySelector("audio").src);

                                         let openUrl = webUrl+'?id='+qqSongMatch[1]+'&type=qq&playUrl='+audioLink;

                                         window.open(openUrl);

                                     }

                                     function kugouFun(){

                                         let audioModule = document.querySelector('#audioModule');

                                         if(audioModule){

                                             document.querySelector('#audioModule').style='bottom:0px;';

                                             document.querySelector('#showHide_playbar').className = 'icon show-playbar-btn';

                                         }
                                         BaseClass.toast('请点击播放需要下载的歌曲,然后在网页下方播放器内点击"下载"',2000)

                                     }

                                     function kuwoFun(){

                                         document.querySelector('.playControl').style='bottom:0px';

                                         BaseClass.toast('请点击播放需要下载的歌曲,然后在网页下方播放器内点击"下载"',2000)

                                     }

                                     function ximalayaFun(){

                                         document.querySelector('.xm-player').style='bottom:0px';

                                         BaseClass.toast('请点击播放需要下载的歌曲,然后在网页下方播放器内点击"下载"',2000)

                                     }
                                 }
                                 break;
                             case 'youtube':

                                 break;

                         }

                     };

                 };

                 zhmLogoDrag.ondragstart = function(){
                     return false;
                 };
             }

             //下载
            static LR_download(url,filename){

                let ua = navigator.userAgent.toLowerCase();
                console.log(ua.match(/version\/([\d.]+).*safari/));

                if(ua.match(/version\/([\d.]+).*safari/)){

                    window.open(url);

                }else{

                    GM_download(url,filename);
                }


            }

        }

        class CouponClass extends BaseClass{

            constructor(){

                super();

                this.divElement = document.createElement("div");

                this.divElement.id='zhm_div_s';

            }
            taobao(){

                var _this = this;

                let node = document.querySelector('#J_juValid');

                node.style='overflow:inherit;'

                let className = 'zhm_tab_taobao';

                _this.getTitleShop('.tb-main-title','.tb-shop-name > dl > dd > strong > a').then(function(resp){

                    _this.getCouponInfo(node,className,resp.goodsTitle,resp.shopName);

                });

            }
            tmall(){

                var _this = this;

                let node = document.querySelector('.Actions--leftButtons--1M3KkF7')?document.querySelector('.Actions--leftButtons--1M3KkF7'):document.querySelector('#J_LinkBuy').parentNode;

                let className = 'zhm_tab_tmall';

                _this.getTitleShop('.ItemHeader--mainTitle--3CIjqW5','.ShopHeader--title--2qsBE1A').then(function(resp){

                    _this.getCouponInfo(node,className,resp.goodsTitle,resp.shopName);

                });

            }

            tmallCaoshi(){

                var _this = this;

                let node = document.querySelector('.Actions--leftButtons--1M3KkF7')?document.querySelector('.Actions--leftButtons--1M3KkF7'):document.querySelector('#J_LinkBuy').parentNode;

                let className = 'zhm_tab_tmall';

                _this.getTitleShop('.ItemHeader--mainTitle--3CIjqW5','.ShopHeader--title--2qsBE1A').then(function(resp){

                   _this.getCouponInfo(node,className,resp.goodsTitle,resp.shopName);

                });
                
            }
            tmallOther(){

                var _this = this;

                let node = document.querySelector('.tm-msg-box');

                let className = 'zhm_tab_tmall';

                _this.getTitleShop('.ItemHeader--mainTitle--3CIjqW5','.ShopHeader--title--2qsBE1A').then(function(resp){

                   _this.getCouponInfo(node,className,resp.goodsTitle,resp.shopName);

                });

            }
            jd(){
                setTimeout(()=>{

                    let jdGoodsId = couponUrl.match(/jd\.(hk|com)\/(\S*).html/);

                    let node= document.querySelector('#choose-btns');

                    node.before(this.divElement);

                    this.request('get',`https://api.typechrome.com/index_jd_new.php?goods_id=${jdGoodsId[2]}`).then((result)=>{

                        let resp= JSON.parse(result);

                        let html='';

                        resp.forEach(function(item){

                            html +=
                                `
        <div class="zhm_coupon" style="margin-left:10px;">
            <div class="zhm_left">
                <div class="zhm_img_icon">
        <img src="data:image/gif;base64,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" >        </div>
                <div class="zhm_content">
                    <div class="zhm_money" style='margin-top:7px;'>
                        <div class="zhm_amount_money">
                            <div class="zhm_money_sign" style='margin-top:-10px;'>¥</div>
                            <div class="zhm_money_num">${item.discount}</div>
                        </div>
                        <div class="zhm_condition">满${item.quota}元可用</div>
                    </div>
                    <div class="zhm_time" style='margin-top:10px;'>
                        <div class="zhm_term">有效期</div>
                        <div class="zhm_date">${item.endTime}</div>
                    </div>
                </div>
            </div>
            <div class="zhm_circle" style="right:44px;"></div>
            <div class="zhm_link_coupon" style="padding:0px 16px 0px 16px;">
                <a class="zhm_get_link_text" style="letter-spacing: 10px;font-size:16px;margin-top:10px;" href="${item.coupon_link}" target='_blank' rel='noopener noreferrer nofollow' style="margin-left:16px;width:34px;">领取</a>
            </div>
        </div>
        `
                        });

                        document.getElementById('zhm_div_s').innerHTML = html;

                    })



                },couponWaitTime)
            }

            getCouponInfo(node,className,goodsTitle,shopName){

                setTimeout(()=>{

                    let goods_id = this.getQueryString('id');

                    if(!goods_id){console.log('goods_id');return};

                    if(className == 'zhm_tab_taobao'){

                        node.querySelector('div:nth-of-type(1)').before(this.divElement);

                    }else{
                        node.before(this.divElement);
                    }

                    let url = `https://api.typechrome.com/getcoupon.php?goods_id=${goods_id}&goods_title=${encodeURIComponent(goodsTitle)}&shop_name=${encodeURIComponent(shopName)}`;

                    this.request('get',url).then((result)=>{

                        let resp= JSON.parse(result);

                        if(resp.code==200){

                            let html =
                                `
        <div class="zhm_coupon">
            <div class="zhm_left">
                <div class="zhm_img_icon">
        <img src="data:image/gif;base64,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" >        </div>
                <div class="zhm_content">
                    <div class="zhm_money">
                        <div class="zhm_amount_money">
                            <div class="zhm_money_sign">¥</div>
                            <div class="zhm_money_num">${resp.data.youhuiquan}</div>
                        </div>
                        <div class="zhm_condition">${resp.data.coupon_info}</div>
                    </div>
                    <div class="zhm_time">
                        <div class="zhm_term">有效期</div>
                        <div class="zhm_date">${resp.data.coupon_end_time}</div>
                    </div>
                </div>
            </div>
            <div class="zhm_circle"></div>
            <div class="zhm_link_coupon" style="margin-right:">
            <a class="zhm_get_link_text" onclick="window.open('https://api.typechrome.com/code.php?link=${resp.data.code_url}')">点击领取</a>
            <div id="tbqrcode" class="zhm_qrcode"></div>
            </div>
        </div>
        `;
                            document.getElementById('zhm_div_s').innerHTML=html;

                            var qrcode = new QRCode("tbqrcode", {
                                width: 67,
                                height: 67,
                                colorDark : "#121212",
                                colorLight : "#ffffff",
                                correctLevel : QRCode.CorrectLevel.M
                            });

                            qrcode.makeCode(resp.data.code_url);

                            if(document.querySelector('.Actions--root--hwEujgc')){

                                document.querySelector('.Actions--root--hwEujgc').style="position:unset";

                            }

                        }else{

                        }

                    })

                },couponWaitTime);
            }

            getTitleShop(title,shop){

                async function resp(){

                    let goodsTitleDom = await BaseClass.getElement(title);

                    let shopNameDom = await BaseClass.getElement(shop);

                    let goodsTitle=goodsTitleDom?goodsTitleDom.innerText:'';

                    let shopName = shopNameDom?shopNameDom.innerText:'';

                    var data = {};

                    data.goodsTitle = goodsTitle;

                    data.shopName = shopName;

                    return data;

                }

                return resp();

            }

        }

        class PlayVideoClass extends BaseClass{
            constructor(){
                super();
            }

        }

        class PlayMusicClass extends BaseClass{
            constructor(){
                super();
            }

            xmlyCreateCheckbox(){

                let soundListli = document.querySelectorAll('.sound-list ul li');

                soundListli.forEach(function(item){

                    let checkboxed = item.querySelector('input');

                    if(checkboxed){
                        return;
                    }

                    let title = item.querySelector('.text');

                    if(!title){
                        return;
                    };

                    title.style = "width:360px";

                    let src = title.querySelector('a').getAttribute('href');

                    let firstDom = item.querySelector('.icon-wrapper');

                    let inputDom = firstDom.cloneNode(true);

                    inputDom.style= 'min-width: 0px;';

                    inputDom.innerHTML = "<input type='checkbox' name='zhmCheckbox' value="+src+"  class='zhmCheckbox'>";

                    firstDom.before(inputDom);

                })

            }
        }

        class ZhClass extends BaseClass{

            constructor(){
                super();
            }
            showSpecialColumn(){

                if(location.href == 'https://www.zhihu.com/'){

                    let cardRecommend = document.querySelectorAll('.Feed');

                    if(cardRecommend.length >0){

                        cardRecommend.forEach(function(item){

                            if(item.querySelector('.specialColumn')){
                                return;
                            }

                            let dataZop = JSON.parse(item.getAttribute('data-za-extra-module'));

                            if(!dataZop)return;

                            let type = dataZop.card.content.type;

                            if(type == 'Post'){

                                let title = item.querySelector('div>div>h2>span>a');

                                if(!title)return;

                                let newElement = document.createElement('button');

                                newElement.className = 'specialColumn Button VoteButton VoteButton--up';

                                newElement.style = 'line-height:20px;padding:0px 5px;margin-right:5px;border-radius:2px;';

                                newElement.innerText = '文章';

                                title.before(newElement);

                            }
                        })
                    }

                }

                if(location.href.match(/https?:\/\/www.zhihu.com\/search/)){
                    let n=0;

                    let timer= setInterval(function(){

                        let cardSearch = document.querySelectorAll('.SearchResult-Card');

                        if(n++>600){
                            clearInterval(timer);
                        }

                        if(cardSearch.length >0){

                            clearInterval(timer);

                            cardSearch.forEach(function(item){

                                if(item.querySelector('.specialColumn')){
                                    return;
                                }

                                let dataZop = JSON.parse(item.getAttribute('data-za-extra-module'));

                                if(!dataZop)return;

                                let type = dataZop.card.content.type;

                                if(type == 'Post'){

                                    let title = item.querySelector('div>div>h2>span>div>a');

                                    if(!title)return;

                                    let newElement = document.createElement('button');

                                    newElement.className = 'specialColumn Button VoteButton VoteButton--up';

                                    newElement.style = 'line-height:20px;padding:0px 5px;margin-right:5px;';

                                    newElement.innerText = '文章';

                                    title.before(newElement);

                                }
                            })
                        }


                    })
                    }
            }
            showVideoTitle(){

                if(location.href == 'https://www.zhihu.com/'){

                    let cardRecommend = document.querySelectorAll('.Feed');

                    if(cardRecommend.length >0){

                        cardRecommend.forEach(function(item){

                            if(item.querySelector('.videoTitle')){
                                return;
                            }

                            let dataZop = JSON.parse(item.getAttribute('data-za-extra-module'));

                            if(!dataZop)return;

                            let hasVideo = dataZop.card.has_video;

                            if(hasVideo == true){

                                let title;

                                if(item.querySelector('div>div>h2>div>a')){

                                    title = item.querySelector('div>div>h2>div>a');

                                }else if(item.querySelector('div>div>h2>span>a')){

                                    title = item.querySelector('div>div>h2>span>a');

                                }else{

                                    return;
                                }

                                let newElement = document.createElement('button');

                                newElement.className = 'videoTitle';

                                newElement.style = 'background: rgba(255, 131, 86, 0.12);color: rgb(255, 73, 12);line-height:20px;padding:1px 6px;margin-right:5px;border-radius:2px;font-size:14px;';

                                newElement.innerText = '视频';

                                title.before(newElement);

                            }
                        })
                    }

                }

                if(location.href.match(/https?:\/\/www.zhihu.com\/search/)){

                    let n=0;

                    let timer= setInterval(function(){

                        let cardSearch = document.querySelectorAll('.SearchResult-Card');

                        if(n++>600){
                            clearInterval(timer);
                        }

                        if(cardSearch.length >0){

                            clearInterval(timer);

                            cardSearch.forEach(function(item){

                                if(item.querySelector('.videoTitle')){
                                    return;
                                }

                                let dataZop = JSON.parse(item.getAttribute('data-za-extra-module'));

                                if(!dataZop)return;

                                let type = dataZop.card.content.type;

                                if(type == 'Zvideo' ){

                                    let title = item.querySelector('div>div>h2>span>div>a');

                                    if(!title)return;

                                    let newElement = document.createElement('button');

                                    newElement.className = 'videoTitle';

                                    newElement.style = 'background: rgba(255, 131, 86, 0.12);color: rgb(255, 73, 12);line-height:20px;padding:1px 6px;margin-right:5px;border-radius:2px;font-size:14px;';

                                    newElement.innerText = '视频';

                                    title.before(newElement);

                                }
                            })
                        }


                    })
                    }

            }
            removeVideo(){

                let card = document.querySelectorAll('.Feed');

                card.forEach(function(item){

                    let dataZop = JSON.parse(item.getAttribute('data-za-extra-module'));

                    let video = dataZop.card.content.video_id;

                    if(video){

                        item.parentNode.style='display:none;';

                    }
                })

            }
            removeAD(){

                let zhHideAD = `.Pc-card,.Pc-word{display:none !important;}.TopstoryItem--advertCard{display:none !important}`;

                domStyle .appendChild(document.createTextNode(zhHideAD));

                domHead.appendChild(domStyle);

            }
            downloadVideo(){

                var _this = this;
               
                if(location.href.match(/https:\/\/www\.zhihu\.com\/zvideo\/.+/)){

                    setTimeout(function(){

                        if(document.querySelector('.zhmDownload'))return;

                        let videoDom = document.querySelector('video');

                        if(!document.querySelector('video'));

                        let button = document.querySelectorAll('._e296pg');

                        if(button.length<2)return;

                        let downloadBut = button[1].cloneNode(true);

                        if(!downloadBut.querySelector('._1tg8oir'))return;

                        downloadBut.querySelector('._1tg8oir').innerText='下载';

                        downloadBut.setAttribute('id','downloadVideo');

                        button[1].before(downloadBut);

                        document.querySelector('#downloadVideo').addEventListener('click',function(){

                            var videoId;

                            if(document.querySelector('.ZVideo-player')){

                                let zVideo = document.querySelector('.ZVideo');

                                let videoData = JSON.parse(zVideo.getAttribute('data-za-extra-module'));

                                videoId = videoData.card.content.video_id;

                            }else{

                                let videoUrl = window.location.href;

                                let videoObj = videoUrl.split('?');

                                videoId = videoObj[0].split('/').pop();
                            }

                            if(!videoId){
                                console.log('未获取视频id');return;
                            }

                            zhDownload(videoId);
                        })

                    },2000);

                }else{

                    document.addEventListener('DOMNodeInserted',(e) => {

                    if(!e.relatedNode.querySelector) return;

                    var playBar = e.relatedNode.querySelector(':scope > div:last-child > div:first-child > div:nth-of-type(2)');

                    if(!playBar || playBar.querySelector('.zhmDownload')) return;

                    if(playBar.className != 'css-199qx7m')return;

                    setTimeout(function(){

                        let playBut= playBar.parentNode.querySelector('._1c1cvug');

                        let playButLi = playBut.querySelector(':scope > div:last-child > div:first-child');

                        if(!playButLi) return;

                        var downloadBut = playButLi.cloneNode(true);

                        downloadBut.className = playButLi.className + ' zhmDownload';

                        if(!downloadBut.querySelector('._1tg8oir')) return;

                        downloadBut.querySelector('._1tg8oir').innerText='下载';

                        playButLi.before(downloadBut);

                        downloadBut.addEventListener('click',function(){

                            var videoId;

                            function getVideoData(dom){

                                let parentDom = dom.parentNode

                                if(parentDom.className && parentDom.className=='Feed'){

                                    console.log(parentDom.className);

                                    let videoData = JSON.parse(parentDom.getAttribute('data-za-extra-module'));

                                    videoId = videoData.card.content.video_id;

                                    return;

                                }else{

                                    getVideoData(parentDom);

                                }

                            }
                            getVideoData(playBut);

                            if(!videoId){

                                console.log('未获取视频id');return;
                            }

                            zhDownload(videoId);

                        })

                    },1000);

                })

                }

                function zhDownload(videoId){

                    let url = 'https://lens.zhihu.com/api/v4/videos/'+videoId;

                    _this.request('get',url).then((result)=>{

                        let data = JSON.parse(result);

                        if(data.playlist != undefined){

                            let play_url = data.playlist.LD.play_url;

                            let videoName = videoId+".mp4";

                            console.log(play_url);

                            BaseClass.LR_download(play_url,videoName);

                        }else{

                            BaseClass.toast('下载失败!');

                        }
                    });
                }

            }
            removeRight(){
                if(location.href.match(/^https?:\/\/www\.zhihu\.com\/people\/.*/)){
                    return false;
                }

                let zhFullScreen = `.GlobalSideBar {display: none !important;}
                    .css-1qyytj7{display: none !important;}
                    .Question-sideColumn{display:none !important}
                    .Topstory-mainColumn{width:100% !important}
                    .Question-mainColumn{width:1000px !important}
                    .css-cazg48{margin: 0px 16px 0px 0px !important;}
                    .QuestionWaiting-mainColumn{width:100% !important;}
                    .css-1j5d3ll{padding-left:10px;}
                    .css-yhjwoe{justify-content: space-between !important;}
                    .AuthorInfo{max-width:1000px !important;};
                    `;
                domStyle .appendChild(document.createTextNode(zhFullScreen));

                domHead.appendChild(domStyle);
            }
            changeLink(){

                if(couponUrl.indexOf('target') != -1){

                    let obj = this.getUrlParams(couponUrl);

                    if(obj.target == undefined) return;

                    let link = decodeURIComponent(obj.target);

                    location.href=link;
                }
            }
            removeKeyword(){

                var GMKeyword = GM_getValue('inputZhKeyword','0');

                if(GMKeyword == '0' || GMKeyword == '') return;

                let keyword = GMKeyword.split(',');

                let content = document.querySelectorAll('.ContentItem');

                keyword.forEach(function(item){

                    content.forEach(function(value){

                        let dataZop = JSON.parse(value.getAttribute('data-zop'));

                        if(dataZop && dataZop.title.indexOf(item) != -1){

                            let itemCard = value.parentNode.parentNode.parentNode;

                            let itemCardClass= itemCard.className;

                            if(itemCardClass.indexOf('TopstoryItem-isRecommend') != -1){

                                itemCard.style='display:none';
                            }
                        }

                    })
                })
            }
            removeAuthorName(){

                var GMAuthorName = GM_getValue('inputZhAuthorName','0');

                if(GMAuthorName == '0' || GMAuthorName == '') return;

                let authorName = GMAuthorName.split(',');

                //搜索页
                if(location.href.match(/^https?:\/\/www.zhihu.com\/search/)){

                    let n=0;

                    let timer = setInterval(function(){

                    let userLink = document.querySelectorAll('.Card');

                    if(userLink.length > 5){

                        clearInterval(timer);

                        userLink.forEach(function(item){

                        let author = item.querySelector('b');

                        if(author){

                            if(authorName.indexOf(author.innerText) != -1){

                                item.style = 'display:none';
                            }

                        }

                    })

                    }else if(n>30){

                            clearInterval(timer);

                        }else{

                            n++;
                        }

                    },100)

                }
                //回答页
                if(location.href.match(/^https?:\/\/www.zhihu.com\/question\/.*/)){

                    let itemDom = document.querySelectorAll('.List-item');

                    if(itemDom.length>0){

                        itemDom.forEach(function(item){

                            let content = item.querySelector('.ContentItem');

                            if(content){

                                let dataZop = JSON.parse(content.getAttribute('data-zop'));

                                if(authorName.indexOf(dataZop.authorName) != -1){

                                    item.style = 'display:none';

                                }

                            }

                        })

                    }

                }
                //等你回答页
                if(location.href == 'https://www.zhihu.com/question/waiting'){

                    setTimeout(function(){

                        let questionList = document.querySelectorAll('.jsNavigable');

                        if(questionList.length>0){

                            questionList.forEach(function(item){

                                let authorDomText = item.querySelector('.css-tnsaxh').innerText;

                                if(authorDomText){

                                    let author = authorDomText.replace('"','').replace('的提问','').replace(/(^\s+)|(\s+$)/g,'');

                                    if(author){

                                        if(authorName.indexOf(author) != -1){

                                            item.style='display:none;';

                                        }

                                    }

                                }

                            })

                        }

                    },300)
                }
                //推荐页
                if(location.href == 'https://www.zhihu.com/'){

                    let content = document.querySelectorAll('.ContentItem');

                    content.forEach(function(value){

                        let dataZop = JSON.parse(value.getAttribute('data-zop'));

                        if(authorName.indexOf(dataZop.authorName) != -1){

                            let itemCard = value.parentNode.parentNode.parentNode;

                            if(itemCard){

                                itemCard.style='display:none';
                            }
                        }

                    })

                }

                let n=0;

                let timerCloseAuthor = setInterval(function(){

                    let commentDom = document.querySelector('.Comments-container')?document.querySelector('.Comments-container'):document.querySelector('.css-34podr');

                    if(commentDom){

                        let commentLi = commentDom.querySelectorAll('.css-1frn93x>div>div');

                        if(commentLi[0].className=='css-194v73m'){

                            commentLi.forEach(function(item){

                                let commentAuthorNameDom = item.querySelector('.css-1rd0h6f');

                                let commentAuthorName = commentAuthorNameDom.innerText;

                                if(authorName.indexOf(commentAuthorName) != -1){

                                    item.style = 'display:none';
                                }

                            })

                        }

                    }
                })

            }

            removeYanxuan(){

                //回答页
                if(location.href.match(/^https?:\/\/www.zhihu.com\/question\/.*/)){

                    let itemDom = document.querySelectorAll('.List-item');

                    if(itemDom.length>0){

                        itemDom.forEach(function(item){

                            let content = item.querySelector('.KfeCollection-OrdinaryLabel-content');

                            if(content && content.innerText.indexOf('盐选') != -1){

                                item.style = 'display:none';

                            }
                        })

                    }

                    let answerCard = document.querySelector('.AnswerCard');

                    if(answerCard){

                        let content = answerCard.querySelector('.KfeCollection-OrdinaryLabel-content');

                        if(content && content.innerText.indexOf('盐选') != -1){

                            answerCard.style = 'display:none';
                        }
                    }

                }

                //搜索页
                if(location.href.match(/^https?:\/\/www.zhihu.com\/search/)){

                   let num = 0;

                   let timer = setInterval(function(){

                        let cardList = document.querySelectorAll('.Card');

                        if(cardList.length > 5){

                            clearInterval(timer);

                            cardList.forEach(function(item){

                                let type = item.querySelector('.KfeCollection-PcCollegeCard-type');

                                if(type && type.innerText.indexOf('盐选专栏') != -1){

                                    item.style = 'display:none';
                                }

                                let author = item.querySelector('b');

                                let authorYanxuan = ['故事档案局', '盐选推荐', '盐选科普', '盐选成长计划', '知乎盐选会员', '知乎盐选创作者', '盐选心理', '盐选健康必修课', '盐选奇妙物语', '盐选生活馆', '盐选职场', '盐选文学甄选', '盐选作者小管家', '盐选博物馆', '盐选点金', '盐选测评室', '盐选科技前沿', '盐选会员精品', '历史环游记'];

                                if(author && authorYanxuan.indexOf(author.innerText) != -1){

                                    item.style = 'display:none';

                                }

                            })

                        }else if(num>30){

                            clearInterval(timer);

                        }else{

                            num++;
                        }

                    },100)

                }

                //推荐页
                if(location.href == 'https://www.zhihu.com/'){

                    let content = document.querySelectorAll('.ContentItem');

                    content.forEach(function(item){

                        let content = item.querySelector('.KfeCollection-OrdinaryLabel-content');

                        if(content && content.innerText.indexOf('盐选') != -1){

                            item.style = 'display:none';

                        }

                    })
                }
            }

            closeAuthor(){
                //通过定时器获取

                let timerCloseAuthor = setInterval(function(){

                    let zhmCloseAuthorButton = document.querySelector('#zhmCloseAuthorButton');

                    if(zhmCloseAuthorButton)return;

                    let authorInfo = document.querySelector('.css-1rasamr');

                    if(authorInfo){

                        let userNameInfo = authorInfo.querySelector('.UserLink');

                        if(userNameInfo){

                            let userLinkInfo = userNameInfo.querySelector('.UserLink-link');

                            let authorNameLink = userLinkInfo.innerText;

                            let GMAuthorName = GM_getValue('inputZhAuthorName');

                            let authorArray = GMAuthorName?GMAuthorName.split(','):'';

                            let buttonClose = document.createElement('button');

                            buttonClose.innerHTML = authorArray.indexOf(authorNameLink) != -1?'已屏蔽':'屏蔽用户';

                            buttonClose.style = buttonClose.innerHTML == '已屏蔽'?'position:absolute;right:10px;background-color:#ff2e4d;border-color:#ff2e4d':'position:absolute;right:10px';

                            buttonClose.className='Button FollowButton FEfUrdfMIKpQDJDqkjte Button--primary Button--blue epMJl0lFQuYbC7jrwr_o JmYzaky7MEPMFcJDLNMG';

                            buttonClose.setAttribute('id','zhmCloseAuthorButton');

                            userNameInfo.appendChild(buttonClose);

                            userNameInfo.parentNode.style='line-height:35px';

                            buttonClose.addEventListener('click',function(){

                                let zhmAuthorName;

                                if(buttonClose.innerHTML=='已屏蔽'){

                                    for(let i=0;i<authorArray.length;i++){

                                        if(authorArray[i] == authorNameLink){

                                            authorArray.splice(i,1);

                                            break;
                                        }

                                    }

                                    zhmAuthorName = authorArray.toString();

                                }else{

                                    zhmAuthorName= GM_getValue('inputZhAuthorName')?GM_getValue('inputZhAuthorName')+','+authorNameLink:authorNameLink;
                                }

                                GM_setValue('inputZhAuthorName',zhmAuthorName);

                                GM_setValue('removeAuthorName','22');

                                buttonClose.innerHTML = buttonClose.innerHTML == '已屏蔽'?'屏蔽用户':'已屏蔽';

                                buttonClose.style = buttonClose.innerHTML == '已屏蔽'?'position:absolute;right:10px;background-color:#ff2e4d;border-color:#ff2e4d':'position:absolute;right:10px';

                            })
                        }

                    }
                })

            }

        }

        class VideoDownloadClass extends BaseClass{

            constructor(){

                super();
            }

            dyVideoDownload(){

                var _this = this;

                window.addEventListener('load',function(){

                    async function getControls(){

                        let videoDom = await BaseClass.getElement('.xg-video-container');

                        if(!videoDom){

                            console.log('没有找到DOM');return;
                        }

                        let vsNav = document.querySelector('.fuy_wmct:nth-of-type(5)');

                         if(couponUrl.indexOf('vsdetail') != -1){
                            console.log('综艺栏目关闭下载');return;
                        }

                        _this.createDyVideoDownload();

                        let videoPlayDomAll = document.querySelectorAll('video');

                        let videoIndex = videoPlayDomAll.length>1?videoPlayDomAll.length-2:videoPlayDomAll.length-1;

                        let videoPlayDom = videoPlayDomAll[videoIndex];

                        videoPlayDom.addEventListener('ended',function(){ //结束

                            console.log("播放结束");

                            let autoPlay = document.querySelector('.xg-switch-checked');

                            if(autoPlay){

                                getControls();
                                return;
                            }

                        }, false);

                        document.querySelector('#toDownload').addEventListener('click',function(){

                            BaseClass.toast('正在下载请稍侯');

                            let info = document.querySelectorAll('.Pz8t2meP');

                            let filename;

                            if(info.length>0){

                                let account;

                                if(info[videoIndex].innerText){

                                    account = info[videoIndex].innerText.replaceAll('.','');

                                }

                                let vt = document.querySelectorAll('.xhDopcQ_');

                                let title = vt[videoIndex].innerText.split('#');

                                if(title[0] || title[1]){

                                    filename = title[0]?title[0].replaceAll('.','')+account+'.mp4':title[1].replaceAll('.','')+account+'.mp4';

                                }else if(account){

                                    filename = account+'.mp4';

                                }else{

                                    filename = new Date().getTime()+'.mp4';
                                }

                            }else{

                                filename = new Date().getTime()+'.mp4';

                            }

                            BaseClass.LR_download(videoPlayDom.children[0].src,filename);

                        })

                        document.querySelector('#toCopy').addEventListener('click',function(){

                            BaseClass.toast('已复制到剪贴板');

                            GM_setClipboard(videoPlayDom.children[0].src);
                        })

                        document.querySelector('.toLink').addEventListener('click',function(){

                            window.open(videoPlayDom.children[0].src);

                        })

                        return;
                    }

                    getControls();

                    window.addEventListener("wheel",getControls);

                    window.addEventListener('keydown',function(e){

                        if(e.code=='ArrowDown' || e.code=='ArrowUp'){

                            getControls();
                        }

                    })

                    async function insertedDom(){

                        let videoDom = await BaseClass.getElement('video');

                        if(!videoDom){

                            console.log('没有找到DOM');return;
                        }

                        videoDom.addEventListener('DOMNodeInserted',(e) => {

                            getControls();

                        })

                    }

                    insertedDom();

                    window.addEventListener('click',getControls);

                })

            }

            createDyVideoDownload(){

                let controlAll = document.querySelectorAll('.xg-right-grid');

                let controls = controlAll.length>1?controlAll[controlAll.length-2]:controlAll[controlAll.length-1];

                let videoDownloadDom = document.querySelector('#zhmDouyinDownload');

                if(videoDownloadDom){

                    videoDownloadDom.parentNode.parentNode.removeChild(videoDownloadDom.parentNode);

                }

                let playSeting = controls.querySelector('.xgplayer-playback-setting');

                let downloadDom = playSeting.cloneNode(true);

                downloadDom.style='margin-right:20px;';

                let downloadText = downloadDom.querySelector('div:first-child');

                downloadText.innerText='下载';

                downloadText.style = 'font-size:12px;font-weight:400;';

                downloadText.setAttribute('id','zhmDouyinDownload');

                let detail = controls.querySelector('xg-icon:nth-of-type(1)').children[0];

                let linkUrl = detail.getAttribute('href')?detail.getAttribute('href'):location.href;

                if(linkUrl.indexOf('www.douyin.com')==-1){

                    linkUrl='//www.douyin.com'+linkUrl;
                }

                downloadText.setAttribute('data-url',linkUrl);

                downloadText.removeAttribute('target');

                downloadText.setAttribute('href','javascript:void(0);');

                downloadDom.onmouseover=function(){

                    downloadDom.className='xgplayer-playback-setting slide-show';

                }

                downloadDom.onmouseout=function(){

                    downloadDom.className='xgplayer-playback-setting';
                }

                let downloadHtml = '';

                downloadOption.forEach(function(item){

                    downloadHtml += `<div class="xgplayer-playratio-item ${item.id}" id="${item.id}">${item.name}</div>`;

                })

                downloadDom.querySelector('.xgplayer-playratio-wrap').innerHTML = downloadHtml;

                downloadDom.querySelector('.xgplayer-slider').style='width:60px important;';

                let autoPlay = document.querySelector('.xgplayer-autoplay-setting');

                autoPlay.after(downloadDom);

                let divDom = document.createElement('div');

                divDom.style="position: absolute;z-index:-999;height:80px;width:40px;margin-top:-80px;"

                downloadDom.appendChild(divDom);

            }

            ksVideoDownload(){

                var _this = this;

                window.addEventListener('load',function(){

                    async function getControls(){

                        let videoDomArr = await BaseClass.getElement('.player-video',1);

                        if(!videoDomArr){

                            console.log('没有找到DOM');return;

                        }

                        let videoDom = videoDomArr.length>2?videoDomArr[1]:videoDomArr[0];

                        if(videoDom.getAttribute('src').match(/^blob/)){
                            console.log('blob视频无法下载');return;
                        }

                        _this.createKsVideoDownload(videoDom);

                        videoDom.addEventListener('playing',function(){ //播放中
                            console.log("播放中");
                        });

                        videoDom.addEventListener('ended',function(){ //结束

                            console.log("播放结束");

                            let autoPlay = document.querySelector('.auto-warpper').getAttribute('autoplay');

                            if(autoPlay){
                                getControls();
                                return;

                            }

                        }, false);

                        document.querySelector('#toDownload').addEventListener('click',function(){

                            BaseClass.toast('正在下载请稍侯');

                            let playTimeTotal = document.querySelector('.total').innerText;

                            let second = playTimeTotal.match(/(.+):(.+)/);

                            let secondTotal = second[1]*60+parseInt(second[2]);

                            let dataUrl = document.querySelector('#zhmKsDownload').getAttribute('data-url');

                            let account = document.querySelector('.profile-user-name-title')?document.querySelector('.profile-user-name-title').innerText:document.querySelector('.feed-author').innerText;

                            let title = document.querySelector('.video-info-title')?document.querySelector('.video-info-title').innerText:new Date().getTime();

                            let videoFileName = (account && title)?account+'-'+title+'.mp4':new Date().getTime()+'.mp4';

                            BaseClass.LR_download(dataUrl,videoFileName);

                        })

                        document.querySelector('#toCopy').addEventListener('click',function(){

                            BaseClass.toast('已复制到剪贴板');

                            GM_setClipboard(videoDom.getAttribute('src'));
                        })

                        document.querySelector('#toLink').addEventListener('click',function(){

                            window.open(videoDom.getAttribute('src'));

                        })

                    }

                    getControls();

                    document.addEventListener('click',function(e){

                        getControls();

                    })

                    window.addEventListener("wheel",getControls);

                    window.addEventListener('keydown',function(e){

                        if(e.code=='ArrowDown' || e.code=='ArrowUp'){

                            getControls();
                        }


                    })

                })


            }

            createKsVideoDownload(videoDom){

                let match = /^https?:\/\/www\.kuaishou\.com\/(.+)/;

                let resp = location.href.match(match);

                if(!resp || (resp[1].indexOf('short-video') == -1 && resp[1].indexOf('video') ==-1 && resp[1].indexOf('new-reco') == -1)){

                    console.log('当前不是视频播放页');return;
                }

                if(resp[1].indexOf('short-video') != -1){

                    let playerArea = document.querySelector('.video-container-player');

                    let playerAreaWidth = playerArea.style.width.match(/(.+)px/);

                    let playerBarProgress = document.querySelector('.player-bar-progress');

                    playerBarProgress.style.width = playerAreaWidth[1]-320+'px';

                    let timeTotal = document.querySelector('.total');

                    timeTotal.style.right='180px';
                }

                let controls = document.querySelector('.right');

                let videoDownloadDom = document.querySelector('#zhmKsDownload');

                if(videoDownloadDom){

                    videoDownloadDom.parentNode.removeChild(videoDownloadDom);
                }

                let detailDom = controls.querySelector('div:nth-of-type(1)');

                let xgIcon = detailDom.cloneNode(true);

                let linkUrl = videoDom.getAttribute('src');

                xgIcon.querySelector('.kwai-player-volume-sound').innerHTML="<div style='cursor:pointer;'>下载</div>";

                let slider = xgIcon.querySelector('.pl-slider');

                slider.style = 'width:49px;padding:10px 5px 20px;';

                let downloadList = '';

                downloadOption.forEach(function(item){

                    downloadList += `<div style="margin-top:10px;color:#FFF;cursor:pointer;" id="${item.id}">${item.name}</div>`;

                })

                slider.innerHTML = downloadList;

                xgIcon.setAttribute('data-url',linkUrl);

                xgIcon.setAttribute('id','zhmKsDownload');

                detailDom.before(xgIcon);

                return;

                //重构播放操作按钮

                let zhmKsButton = document.querySelector('#zhmKsButton');

                //console.log(zhmKsButton);

                if(zhmKsButton){

                    return false;
                }

                let buttonIcon = detailDom.cloneNode(true);

                buttonIcon.setAttribute('id','zhmKsButton');

                let buttonIconImg = buttonIcon.querySelector('.unmuted-icon');

                if(buttonIconImg){
                    buttonIconImg.style = 'background: url(https://gitee.com/linzihai/zunyuan-ge-tv/raw/master/icon/%E5%B0%8A%E7%BC%98%E9%98%81%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7.jpg) no-repeat';
                }

                detailDom.after(buttonIcon);

                let plSlider = buttonIcon.querySelector('.pl-slider');

                plSlider.style='width:auto;padding:10px 10px 25px 10px;';

                plSlider.innerHTML = "";

                let buttonFour = controls.querySelector('div:nth-of-type(4)');

                buttonFour.style.margin='0px';

                let autoPlay = document.querySelector('.play-setting-container');

                if(autoPlay){
                    autoPlay.style.margin='0px 40px 0px 0px';
                }

                let buttonFive = controls.querySelector('div:nth-of-type(5)');

                if(buttonFive){

                    buttonFive.style.margin='15px 0px';

                    buttonFive.onmouseover=function(){

                        setTimeout(function(){

                            let toolTip = document.querySelector('.kwai-player-rotate-tooltip');

                            if(toolTip){

                                toolTip.parentNode.removeChild(toolTip);
                            }


                        },30)

                    }

                    plSlider.appendChild(buttonFive);
                }
                let buttonSix = controls.querySelector('div:nth-of-type(6)');

                if(buttonSix){

                    buttonSix.style.margin='15px 0px';

                    let toolTip = document.querySelector('.kwai-player-fullscreen-tooltip');

                    buttonSix.onmouseover=function(){

                        setTimeout(function(){

                            let toolTip = document.querySelector('.kwai-player-fullscreen-tooltip');

                            if(toolTip){

                                toolTip.parentNode.removeChild(toolTip);

                            }

                        },30)

                    }

                    plSlider.appendChild(buttonSix);
                }
                plSlider.appendChild(buttonFour);

            }

            xiguaVideoDownload(){

                var _this = this;

                window.addEventListener('load',function(){

                    async function getControls(){

                        let videoDom = await BaseClass.getElement('video');

                        if(!videoDom){

                            console.log('没有找到DOM');return;

                        }

                        _this.createXiguaVideoDownload();

                        GM_xmlhttpRequest({

                            method: "get",

                            url: 'http://47.99.158.118/video-crack/v2/parse?content='+encodeURIComponent(location.href),

                            data: '',

                            headers: {'Accept': 'text/plain, text/html,application/json'},

                            onload: function(res){

                                if(res.status==200){

                                    let resp = JSON.parse(res.responseText)

                                    let videoSrc = '';

                                    if(resp.code == 0){

                                    videoSrc = resp.data.url;

                                    }

                            document.querySelector('#toDownload').addEventListener('click',function(){

                                if(!videoSrc){

                                    BaseClass.toast('该视频无法下载');

                                    return;
                                }

                                let videoTitle = document.querySelector('.videoTitle h1').innerText;

                                let videoAuthor = document.querySelector('.author__userName').title;

                                BaseClass.toast('正在下载请稍侯');

                                BaseClass.LR_download(videoSrc,videoTitle+'@'+videoAuthor+'.mp4');
                            })
                            document.querySelector('#toCopy').addEventListener('click',function(){

                                if(!videoSrc){

                                    BaseClass.toast('该视频不能复制地址');

                                    return;
                                }

                                BaseClass.toast('已复制到剪贴板');

                                GM_setClipboard(videoSrc);
                            })

                            document.querySelector('#toLink').addEventListener('click',function(){

                                if(!videoSrc){

                                    BaseClass.toast('该视频不能直接打开');

                                    return;
                                }

                                window.open(videoSrc);

                            })

                            document.addEventListener('click',function(e){

                                e.path.forEach(function(item){

                                    if(item.className == 'xgplayer-control-item control_playnext common-control-item'){

                                        setTimeout(function(){

                                            location.reload();

                                            return;

                                        },1000)

                                    };

                                })

                                var objLink = {};

                                e.path.forEach(function(item){

                                    if(item.href){

                                        objLink.href = item.href?item.href:'';

                                        objLink.target = item.target?item.target:'';

                                        return;
                                    }

                                })

                                if(objLink.href && objLink.target != '_blank'){

                                    location.href = objLink.href;

                                    return;
                                    }
                                })

                                }

                            },
                            onerror : function(err){
                                console.log('error')
                                console.log(err)
                            }
                        });

                        document.querySelector('video').addEventListener('ended',function(){ //结束

                            console.log("播放结束");

                            setTimeout(function(){

                                location.reload();

                            },5500);

                        }, false);

                    }

                    getControls();
                })
            }

            createXiguaVideoDownload(){

                let rightGrid = document.querySelector('.xg-right-grid');

                let playControl = rightGrid.querySelector('div:nth-of-type(2)');

                let control = playControl.cloneNode(true);

                let entry= control.querySelector('.xgplayer-control-item__entry');

                entry.innerHTML = '<div class="xgpcPlayer_textEntry"><span>下载</span></div>';

                let popover = control.querySelector('.xgplayer-control-item__popover');

                let downloadList = '<ul>';

                downloadOption.forEach(function(item){

                    downloadList += `<li tabindex="0" role="menuitemradio" aria-checked="false" id="${item.id}">${item.name}</li>`;

                })

                downloadList += '</ul>';

                popover.innerHTML = downloadList;

                playControl.before(control);

                let divDom = document.createElement('div');

                divDom.style="width: 80px; height: 140px;position:absolute;bottom:40px;left:20px;z-index:-1";

                control.appendChild(divDom);

                control.onmouseover=function(){

                    popover.style.display='block';

                }

                control.onmouseout=function(){

                    popover.style.display='none';

                }


            }

            biliVideoDownload(){

                var _this = this;

                window.addEventListener('load',function(){

                    async function getControls(){

                        if(location.href.indexOf('bangumi') != -1){

                            let rightControl = await BaseClass.getElement('.squirtle-controller-wrap-right');

                            if(!rightControl){

                                console.log('没有找到DOM');return;
                            }

                            _this.createBiliVideoDownload();

                        }else{

                            let n=0;

                            let timer = setInterval(function(){

                                let dom = document.querySelector('.bilibili-player-video-btn-quality');

                                let domOther = document.querySelector('.bpx-player-ctrl-quality');

                                if(dom){

                                    clearInterval(timer);

                                    _this.createBiliVideoDownload();

                                    return;

                                }else if(domOther){

                                    clearInterval(timer);

                                    _this.createBiliVideoDownloadOther();

                                    return;

                                }else{
                                    if(n++>30)clearInterval(timer);
                                }

                            },100)

                            return;

                        }

                        //_this.createBiliVideoDownload();

                        let timerZhmIcon = setInterval(function(){

                            let videoDom = [{name:'video',type:'dom'},{name:'bwp_video',type:'dom'},{name:'.bilibili-player-video',type:'class'}];

                            for(let i = 0;i<videoDom.length;i++){

                                let video = videoDom[i].type == 'dom'?document.querySelector(videoDom[i].name):document.querySelector(videoDom[i].name).firstChild;

                                if(video){

                                    clearInterval(timerZhmIcon); //取消定时器

                                    video.addEventListener('play',function(){

                                        console.log("播放开始");

                                        _this.createBiliVideoDownload();
                                    });

                                    video.addEventListener('ended',function(){ //结束

                                        if(location.href.indexOf('bangumi') != -1){

                                            let biliDownload = document.querySelector('#biliDownload');

                                            console.log(biliDownload);

                                            biliDownload.parentNode.removeChild(biliDownload);

                                        }
                                    })

                                    break;

                                }

                            };

                        })

                        }

                    getControls();

                    let video = document.querySelector('video');

                    if(video){

                        video.addEventListener('pause', function () {
                            console.log("暂停");
                            setTimeout(function(){

                                let closeIcon = document.querySelector('.bili-mini-close-icon');

                                console.log(closeIcon);

                                if(closeIcon){

                                    closeIcon.click();

                                    video.play();

                                };

                            },50);

                        });

                    };

                })

            }

            createBiliVideoDownload(){

                var _this = this;

                async function getControls(){

                    let downloadIcon = document.querySelector('#biliDownload');

                    if(downloadIcon){
                        console.log('下载按钮已存在');return;
                    }

                    if(location.href.indexOf('bangumi') != -1){

                        let quality = await BaseClass.getElement('.squirtle-quality-wrap');

                        if(!quality){

                            console.log('没有找到DOM');return;
                        }

                        let control = quality.cloneNode(true);

                        control.querySelector('.squirtle-video-quality-text').innerText='下载';

                        control.setAttribute('id','biliDownload');

                        quality.before(control);

                    }else if(location.href.indexOf('video') != -1){

                        let autoIconDom = await BaseClass.getElement('.bilibili-player-video-btn-quality');

                        if(!autoIconDom){

                            console.log('没有找到DOM');return;

                        }

                        let control = autoIconDom.cloneNode(true);

                        control.style='margin-right:20px;';

                        control.querySelector('.bui-select-result').innerText='下载';

                        control.querySelector('.bui-select-result').setAttribute('id','biliDownload');

                        autoIconDom.before(control);

                    }else{

                        console.log('当前页面不是视频或番剧');return;

                    }

                    document.querySelector('#biliDownload').addEventListener('click',function(){

                        let bvid = '',avid='';

                        if(location.href.indexOf('bangumi') != -1){

                            bvid = document.querySelector('.av-link').innerText;

                        }else if(location.href.indexOf('video') != -1){

                            let params = location.href.match(/https:\/\/www.bilibili.com\/video\/(.+)\?/);

                            if(params[1].indexOf('av') !=-1){

                                avid = params[1].replace('av','');

                            }else{

                                bvid = params[1].substring(params[1].length-1)=='/'?params[1].substring(0,params[1].length-1):params[1];
                            }

                        }else{

                            BaseClass.toast('当前页面无法下载');return;
                        }

                        if(!bvid && !avid){

                            console.log('未获取bvid或avid');return;
                        }

                        let url = "https://api.bilibili.com/x/web-interface/view?bvid="+bvid+"&aid="+avid;

                        let uri = _this.request('get',url).then((result)=>{

                            let resp = JSON.parse(result);

                            if(resp.code < 0){

                                BaseClass.toast('该视频无法下载');

                                console.log('视频信息接口返回数据错误');return;
                            }

                            //选集cid

                            let pageId = _this.getQueryString('p');

                            let cid = '';

                            if(pageId){

                                cid = resp.data.pages[pageId-1].cid;

                            }else{

                                cid = resp.data.cid;
                            }

                            console.log(cid);

                            let link = 'https://api.bilibili.com/x/player/playurl?avid='+resp.data.aid+'&cid='+cid+'&qn=112';

                            let res = _this.request('get',link).then((result)=>{

                                let data = JSON.parse(result);

                                if(data.code < 0){
                                    BaseClass.toast('该视频无法下载');
                                    console.log('视频地址接口返回数据错误');return;
                                }

                                let downloadUrl = data.data.durl[0].url;

                                //GM_download(downloadUrl);

                                window.open(downloadUrl);

                            })

                            })
                        })

                }

                getControls();

            }

            createBiliVideoDownloadOther(){

                var _this = this;

                async function getControls(){

                    let downloadIcon = document.querySelector('#biliDownload');

                    if(downloadIcon){
                        console.log('下载按钮已存在');return;
                    }

                    if(location.href.indexOf('bangumi') != -1){

                        let quality = await BaseClass.getElement('.squirtle-quality-wrap');

                        if(!quality){

                            console.log('没有找到DOM');return;
                        }

                        let control = quality.cloneNode(true);

                        console.log(control.querySelector('.squirtle-video-quality-text'));

                        control.querySelector('.squirtle-video-quality-text').innerText='下载';

                        control.setAttribute('id','biliDownload');

                        quality.before(control);

                    }else if(location.href.indexOf('video') != -1){

                        let autoIconDom = await BaseClass.getElement('.bpx-player-ctrl-quality');

                        if(!autoIconDom){

                            console.log('没有找到DOM');return;

                        }

                        let control = autoIconDom.cloneNode(true);

                        control.style='margin-right:20px;';

                        control.querySelector('.bpx-player-ctrl-quality-result').innerText='下载';

                        control.querySelector('.bpx-player-ctrl-quality-menu').setAttribute('id','biliDownload');

                        let menuItems = control.querySelectorAll('.bpx-player-ctrl-quality-menu-item');

                        menuItems.forEach(function(item){

                            let dataValue = item.getAttribute('data-Value');

                            if(dataValue != 16 && dataValue != 80){

                                item.parentNode.removeChild(item);
                            }

                        });

                        autoIconDom.before(control);

                        control.onmouseover=()=>{

                            control.querySelector('.bpx-player-ctrl-quality-menu').style.display='block';

                        }

                        control.onmouseout=()=>{

                           control.querySelector('.bpx-player-ctrl-quality-menu').style.display='none';

                        }

                    }else{

                        console.log('当前页面不是视频或番剧');return;

                    }

                    document.querySelector('#biliDownload').addEventListener('click',function(e){

                        let biliDataValue = e.target.getAttribute('data-Value')?e.target.getAttribute('data-Value'):'';

                        if(!biliDataValue)return;

                        let bvid = '',avid='';

                        if(location.href.indexOf('bangumi') != -1){

                            bvid = document.querySelector('.av-link').innerText;

                        }else if(location.href.indexOf('video') != -1){

                            let nowUrl = location.href.split('?');

                            let params = nowUrl[0].match(/https:\/\/www.bilibili.com\/video\/(.+)/);

                            if(params[1].indexOf('av') !=-1){

                                avid = params[1].replace('av','');

                            }else{

                                bvid = params[1].substring(params[1].length-1)=='/'?params[1].substring(0,params[1].length-1):params[1];
                            }

                        }else{

                            BaseClass.toast('当前页面无法下载');return;
                        }

                        if(!bvid && !avid){

                            console.log('未获取bvid或avid');return;
                        }

                        let url = "https://api.bilibili.com/x/web-interface/view?bvid="+bvid+"&aid="+avid;

                        let uri = _this.request('get',url).then((result)=>{

                            let resp = JSON.parse(result);

                            if(resp.code < 0){

                                BaseClass.toast('该视频无法下载');

                                console.log('视频信息接口返回数据错误');return;
                            }

                            //选集cid

                            let pageId = _this.getQueryString('p');

                            let cid = '';

                            if(pageId){

                                cid = resp.data.pages[pageId-1].cid;

                            }else{

                                cid = resp.data.cid;
                            }

                            let link = 'https://api.bilibili.com/x/player/playurl?avid='+resp.data.aid+'&cid='+cid+'&qn='+biliDataValue;

                            let res = _this.request('get',link,'',true).then((result)=>{

                                let data = JSON.parse(result);

                                if(data.code < 0){
                                    BaseClass.toast('该视频无法下载');
                                    console.log('视频地址接口返回数据错误');return;
                                }

                                let downloadUrl = data.data.durl[0].url;

                                //GM_download(downloadUrl);

                                window.open(downloadUrl);

                            })

                            })
                        })

                }

                getControls();

            }

            youtubeVideoDownload(){

                var _this = this;

                let timer = setInterval(function(){

                    let url = location.href.match(/^https?:\/\/www\.youtube\.com\/(watch\?v=.+|shorts\/.+)/);

                    if(url){

                        let youtubeIcon = document.querySelector('#zhmlogo');

                        if(youtubeIcon){
                            youtubeIcon.style.opacity=1;
                            return;

                        }

                        _this.zhmLogo();

                        let playWrapHtml = "<div class='zhm_play_video_line'>";

                        playWrapHtml +="<ul class='zhm_play_vide_line_ul'>";

                        let playLine = [
                            {name:'下载线路1',url:'https://zh.savefrom.net/176/#url='},
                            {name:'下载线路2',url:'https://mydowndown.com/y2#'},
                            {name:'下载线路3',url:'https://www.ytdownfk.com/search?url='},
                            {name:'下载线路4',url:'https://yout.com/video/?url='}
                        ];

                        playLine.forEach(function(item){

                            playWrapHtml +=`<li class='playLineTd zhm_play_video_line_ul_li' url='${item.url}' >${item.name}</li>`;

                        })

                        playWrapHtml +="</ul></div>";

                        let zhmPlay = document.getElementById('zhmlogo');

                        let playLineDom = document.createElement('div');

                        playLineDom.className = 'playLineDiv zhm_play_video_wrap';

                        playLineDom.style.display = 'none';

                        playLineDom.innerHTML = playWrapHtml;

                        zhmPlay.appendChild(playLineDom);

                        let playLineTd = document.querySelectorAll('.playLineTd');

                        playLineTd.forEach(function(item){

                            item.addEventListener('click',function(){

                                window.open(item.getAttribute('url')+location.href);

                            })

                        })

                        document.querySelector('.playButton').onmouseover=()=>{

                            document.querySelector(".playLineDiv").style.display='block';

                        }

                        document.querySelector('.playButton').onmouseout=()=>{

                            document.querySelector(".playLineDiv").style.display='none';

                        }

                        _this.zhmLogoDrag('youtube','');

                    }else{

                        let zhmIcon = document.querySelector('#zhmIcon');

                        if(zhmIcon){

                            zhmIcon.parentNode.removeChild(zhmIcon);
                        }


                        let zhmlogo = document.querySelector('#zhmlogo');

                        if(zhmlogo){

                            zhmlogo.style.opacity=0;
                        }

                    }

                },500)

            }
        }

        var allWeb = [...getCoupon,...jxVideo,...jxMusic,...zhNice,...taobao,...videoDownload,...baidu];

        var nowWeb=[];

        allWeb.forEach(function(item){

            if(item.isOpen == 0) return true;

            item.web.forEach(function(val){

                let result = location.href.match(val.match);

                if(result){

                    nowWeb.push(val);

                }
            })

        })

        if(nowWeb.length==0){

            let baseClass = new BaseClass();

            console.log('没有匹配该网站或该模块已关闭');return;
        }

        nowWeb.forEach(function(item){

            switch(item.funcName){
                case 'coupon':

                    couponFunc(item);
                    break;
                case 'playVideo':
                    playVideoFunc();
                    break;
                case 'playMusic':
                    playMusicFunc(item);
                    break;
                case 'zhNice':
                    zhNiceFunc();
                    break;
                case 'baidu':
                    var baseClass = new BaseClass;
                    baiduFunc();
                    break;
                case 'videoDownload':

                    var videoDownloadClass = new VideoDownloadClass();

                    var {funcName,match:nowMatch,node:nowNode,name:nowName} = item;

                    if(item.isWebOpen == 0){

                        console.log(item.name+'已关闭');return;

                    }else{

                        videoDownloadClass[nowName]();
                    }

                    break;

                case 'taobaoSearch':
                    taobaoSearchFunc(item)
                     break;

            }

        })

        function couponFunc(item){

            var couponClass = new CouponClass();

            var {funcName,match:nowMatch,node:nowNode,name:nowName} = item;

            var couponStyle =`
                    html{
                    --right:100%;
                    --left:100%;
                }
                .zhm_coupon{
                    width:fit-content;
                    display: flex;
                    flex-direction:row;
                    justify-content: space-between;
                    align-items:flex-start;
                    font-size:14px;
                    position: relative;
                    margin-bottom:15px;
                }
                .zhm_left{
                    display: flex;
                    flex-direction:row;
                    justify-content:flex-start;
                    align-items: center;
                    font-size:14px;
                    background: radial-gradient(circle at right top, transparent 8px,#fff 0) top left /var(--right) 51% no-repeat,
                                radial-gradient(circle at right bottom, transparent 8px, #fff 0) bottom left /var(--right) 51% no-repeat;
                    filter: drop-shadow(2px 2px 3px #888);
                    height:84px;
                    width:100%;
                }
                .zhm_img_icon{
                    padding:4px 0px 0px 5px;
                    margin-right:5px;
                }
                .zhm_img_icon img{
                    width:47px;
                }
                .zhm_content{
                    display: flex;
                    flex-direction:column;
                    margin-right: 18px;
                }
                .zhm_money{
                    display: flex;
                    flex-direction:row;
                    justify-content: flex-start;
                    align-items: center;
                }
                .zhm_amount_money{
                    display: flex;
                    align-items: flex-start;
                }
                .zhm_money_sign{
                    color:#f23030;
                    font-size: 20px;
                    font-family: Arial;
                }
                .zhm_money_num{
                    color:#f23030;
                    font-size:36px;
                    margin-left: 2px;
                }
                .zhm_condition{
                    color:#fb0f3a;
                    background-color: #fff4ec;
                    margin-top:5px;
                    margin-left: 5px;
                    padding:2px 5px;
                    font-size:12px;
                }
                .zhm_time{
                    display: flex;
                    flex-direction:row;
                    margin-top: -5px;
                    padding:2px 4px;
                }
                .zhm_term{
                    color:#fb0f3a;
                    border: 1px solid #fb0f3a;
                    border-radius:2px;
                    align-items: center;
                    padding:0px 4px;
                    font-size:12px;
                    height: 18px;
                }
                .zhm_date{
                    font-size: 14px;
                    font-weight: 500;
                    padding-left:8px;

                }
                .zhm_circle{
                    background: #fb0f3a url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAACXBIWXMAAAsSAAALEgHS3X78AAAAzUlEQVQYlS3NMUoDQRiG4Xcmu9lAXBQbq+1CCqucwsbOO3gAS29h4Qm8gRdIMKVglQVBFiSFjYKBqWZ2d/7PIvYPPE6SMCHvcD8HuLzBUsIKDyY8AN4RU+J9/8nH8oLYJ3wWchxBjJHtZkN1fsbp9omvhzv6ccDjQJLatlXXdZIk5awkKVzdKk9W8gBFUVDXNQA2jJTA7GSOmR2LpmkIIWA546spvO5wL29Qz3GSBBCHnnwIzO4f0fMaYoKy/Acm8A6+fxkX15ANqimY8QemCm920r1aUAAAAABJRU5ErkJggg==) repeat-y;
                    margin-top:10px;
                    width: 10px;
                    height:66px;
                    position: absolute;
                    right:97px;
                    z-index:2;
                    filter:none;
                }
                .zhm_link_coupon{
                    display: flex;
                    flex-direction:row;
                    align-items:center;
                    filter: drop-shadow(2px 2px 3px #888);
                    background: radial-gradient(circle at left top, transparent 8px, #fb053a 0) top right /var(--left) 50% no-repeat,
                                radial-gradient(circle at left bottom, transparent 8px, #fb053a 0) bottom right /var(--left) 50% no-repeat;
                    height: 84px;
                    padding:0px 6px 0px 4px;
                }
                .zhm_get_link_text{
                    cursor:pointer;
                    margin-top: 0px;
                    writing-mode:vertical-lr;
                    letter-spacing:0px;
                    color: #fff !important;
                    font-size:14px;
                    font-family:"Microsoft YaHei";
                    text-decoration:none;
                    background: radial-gradient(circle at left top, transparent 8px, #fb053a 0) top right /var(--left) 50% no-repeat,
                                radial-gradient(circle at left bottom, transparent 8px, #fb053a 0) bottom right /var(--left) 50% no-repeat;

                }
                .zhm_get_link_text:hover{
                text-decoration:none;
                font-weight:800;
                font-family:"Microsoft YaHei";
                }
                .zhm_qrcode{
                    border:3px solid #fff;
                    }
                `;

            domStyle .appendChild(document.createTextNode(couponStyle));

            domHead.appendChild(domStyle);

            let n=0;

            let couponTimer = setInterval(function(){

                n++;

                let pageNode = document.querySelector(nowNode)

                if(pageNode){

                    clearInterval(couponTimer);

                    couponClass[nowName]();

                }else{

                    if(n==couponTimerNum) clearInterval(couponTimer);
                }

            },100)
            }

        function playVideoFunc(){

            var playVideoClass = new PlayVideoClass();

            playVideoClass.zhmLogo();

            if(GM_getValue('playVideoLineText')){

                let lineObj = playVideoClass.getLine(GM_getValue('playVideoLineText'));

                if(lineObj){

                    playLine = lineObj
                }

            }

            //template:icon,playLine;
            let playWrapHtml = "<div class='zhm_play_video_line'>";

            playWrapHtml +="<div><ul class='zhm_play_vide_line_ul'>";

            playLine.forEach(function(item){

                let selected = '';

                if(playVideoClass.getCookie('playLineAction') == item.url){

                    selected = 'zhm_line_selected';

                }

                playWrapHtml +=`<li class='playLineTd zhm_play_video_line_ul_li ${selected}' url='${item.url}' >${item.name}</li>`;

            })

            playWrapHtml += "</div>";

            let zhmPlay = document.getElementById('zhmlogo');

            let playLineDom = document.createElement('div');

            playLineDom.className = 'playLineDiv zhm_play_video_wrap';

            playLineDom.style.display = 'none';

            playLineDom.innerHTML = playWrapHtml;

            zhmPlay.appendChild(playLineDom);

            //template:node;播放区域

            let playJxHtml = "<div class='zhm_play_video_jx'>";

            playJxHtml += "<iframe allowtransparency=true frameborder='0' scrolling='no' allowfullscreen=true allowtransparency=true name='jx_play' style='height:100%;width:100%' id='playIframe'></iframe></div>";

            //循环判断是否在播放页,是则执行下面
            let jxVideoData = [
                {funcName:"playVideo", node:".player__container" ,match:/https:\/\/v.qq.com\/x\/cover\/[a-zA-Z0-9]+.html/,areaClassName:'playlist-list',name:'qqPC'},
                {funcName:"playVideo", node:"#player-container" ,match:/https:\/\/v.qq.com\/x\/cover\/[a-zA-Z0-9]+\/[a-zA-Z0-9]+.html/,areaClassName:'playlist-list',name:'qqPC'},
                {funcName:"playVideo", node:".container-player" ,match:/v\.qq\.com\/x\/page/,areaClassName:'mod_episode'},

                {funcName:"playVideo", node:"#flashbox",match:/^https:\/\/www\.iqiyi\.com\/[vwa]\_/,areaClassName:'qy-episode-num',name:'iqiyiPc'},
                {funcName:"playVideo", node:".m-video-player-wrap",match:/^https:\/\/m.iqiyi\.com\/[vwa]\_/,areaClassName:'m-sliding-list'},
                {funcName:"playVideo", node:".intl-video-wrap",match:/^https:\/\/www\.iq\.com\/play\//,areaClassName:'m-sliding-list'},

                {funcName:"playVideo", node:"#player",match:/v\.youku\.com\/v_show\/id_/,areaClassName:'new-box-anthology-items'},
                {funcName:"playVideo", node:"#player",match:/v\.youku\.com\/v_play\/id_/},

                {funcName:"playVideo", node:"#bilibili-player",nodeType:'id',match:/www\.bilibili\.com\/video/,name:'biliPc',areaClassName:'video-episode-card'},
                {funcName:"playVideo", node:".bpx-player-primary-area",nodeType:'id',match:/www\.bilibili\.com\/bangumi/,areaClassName:'eplist_ep_list_wrapper__PzLHa'},
          
                {funcName:"playVideo", node:"#mgtv-player-wrap",nodeType:'id',match:/^https?:\/\/www.mgtv\.com\/b|l\/[0-9]/,areaClassName:'episode-items'},

                {funcName:"playVideo", node:".x-player",nodeType:'class',match:/tv\.sohu\.com\/v/,areaClassName:'series-tab_pane'},
                {funcName:"playVideo", node:"#playerWrap",nodeType:'id',match:/film\.sohu\.com\/album\//},

                {funcName:"playVideo", node:"#le_playbox",nodeType:'id',match:/le\.com\/ptv\/vplay\//,areaClassName:'juji_grid'},

                {funcName:"playVideo", node:"#player",nodeType:'id',match:/play\.tudou\.com\/v_show\/id_/},

                {funcName:"playVideo", node:"#pptv_playpage_box",nodeType:'id',match:/v\.pptv\.com\/show\//},

                {funcName:"playVideo", node:"#player",nodeType:'id',match:/vip\.1905.com\/play\//},

                {funcName:"playVideo", node:"#vodPlayer",nodeType:'id',match:/www\.1905.com\/vod\/play\//},
            ];

            let jxVideoWeb = jxVideoData.filter(function(item){

                return location.href.match(item.match);

            })

            playVideoClass.zhmLogoDrag('video',jxVideoWeb);

            //是否在播放页
            if(jxVideoWeb.length > 0){

                var {funcName,match:nowMatch,node:nowNode,name:nowName} = jxVideoWeb[0];

                //鼠标经过显示线路
                document.querySelector('.playButton').onmouseover=()=>{

                    document.querySelector(".playLineDiv").style.display='block';

                }

                document.querySelector('.playButton').onmouseout=()=>{

                    document.querySelector(".playLineDiv").style.display='none';

                }

                //选择线路解析播放

                var playLineTd = document.querySelectorAll('.playLineTd');

                playLineTd.forEach(function(item){

                    item.addEventListener('click',function(){

                        playLineTd.forEach(function(e){

                            e.setAttribute('class','playLineTd zhm_play_video_line_ul_li');
                        })

                        this.setAttribute('class','playLineTd zhm_play_video_line_ul_li zhm_line_selected');

                        playVideoClass.setCookie('playLineAction',this.getAttribute('url'),30);

                        if(GM_getValue('videoPlayLineAdd') != 22){

                            let nowWebNode = document.querySelector(nowNode);

                            if(nowWebNode){

                                nowWebNode.innerHTML = playJxHtml;

                                let playIframe = document.querySelector('#playIframe');

                                playIframe.src= item.getAttribute('url')+location.href;

                            }else{

                                console.log('视频网站结点不存在');
                            }

                        }else{

                            window.open(item.getAttribute('url')+location.href);

                            }

                        })

                })

                /*--特殊处理--*/
                //优酷去广告
                if(nowNode=="#player"){

                    setTimeout(function(){

                        let youkuAd = document.querySelector('.advertise-layer');

                        let ykAd = youkuAd.lastChild;

                        ykAd.parentNode.removeChild(ykAd);

                        document.querySelector('.kui-dashboard-0').style='display:flex';

                        let playVideo = document.querySelector('.video-layer video');

                        playVideo.play();

                        let n=0;

                        //暂停
                        document.querySelector('.kui-play-icon-0').addEventListener('click',function(){

                            let video = document.querySelector('.video-layer video');

                            if(n++%2 == 0){

                                video.pause();

                            }else{

                                video.play();
                            }

                        });

                        playVideo.addEventListener('timeupdate',function(){ //播放时间改变

                            let youkuAd = document.querySelector('.advertise-layer');

                            let ykAd = youkuAd.lastChild;


                            if(ykAd){

                                ykAd.parentNode.removeChild(ykAd);
                            }

                            document.querySelector('.kui-dashboard-0').style='display:flex';
                        });

                        document.onkeydown = function(event){

                            let video = document.querySelector('.video-layer video');

                            if(event.keyCode==39){

                                video.currentTime = video.currentTime + 5;

                            }
                            if(event.keyCode==37){

                                video.currentTime = video.currentTime - 5;

                            }
                        }

                    },3000)
                }
                //爱奇艺去广告
                if(nowNode=="#flashbox"){

                    setTimeout(function(){

                        let dom = document.querySelector('.skippable-after');

                        if(dom){

                            dom.click();

                        }

                    },3000)

                }

                //腾讯去vip弹窗
                if(nowNode=="#player-container"){

                    let n = 0;

                    let timer = setInterval(function(){

                        if(n++ < 100){

                            let panelTipVip = document.querySelector('.panel-overlay');

                            if(panelTipVip){

                                panelTipVip.style.display='none';

                                clearInterval(timer);
                            }

                        }else{

                            clearInterval(timer);

                        }

                    },100)



                    }
                //乐视选集处理
                if(nowNode == "#le_playbox"){

                    setTimeout(function(){

                        let jBlock = document.querySelectorAll('.j_block');

                        if(!jBlock) return;

                        for(let i=0;i<jBlock.length;i++){

                            let videoId = jBlock[i].getAttribute('data-vid');

                            let link = `https://www.le.com/ptv/vplay/${videoId}.html`;

                            jBlock[i].firstChild.setAttribute('href',link);
                        }
                    },3000)
                }

                //B站大会员url处理,页面class不一致
                if(nowNode == ".player-container"){

                    setTimeout(function(){

                        if(!document.querySelector('.player-container') && !document.querySelector('.bpx-player-container')){

                            nowNode = '.player-mask';

                        }else{

                            nowNode = '.bpx-player-container';
                        }

                    },3000)
                }

                /*腾讯视频点击其它视频跳转*/
                if(nowName=='qqPC'){

                    let figure = document.querySelectorAll('.figure');

                    let figureDetail = document.querySelectorAll('.figure_detail');

                    let listItem = [...figure,...figureDetail];

                    if(listItem.length > 0){

                        listItem.forEach(function(item){

                            item.addEventListener('click',function(){

                                let link = this.getAttribute('href');

                                if(link){

                                    location.href = link;

                                    return;
                                }

                            })

                        });

                    }
                }

                setTimeout(function(){

                    let videoSelect = document.querySelectorAll('.'+jxVideoWeb[0].areaClassName);

                    if(videoSelect.length==0){console.log('该网站播放区类名改变');return;}

                    videoSelect.forEach(function(item){

                        item.addEventListener('click',function(e){

                            setTimeout(function(){

                                location.href=location.href;

                            },1000)

                        });

                    });
                },2000);
            }

        }

        function playMusicFunc(){

            if(self.frameElement && self.frameElement.tagName == "IFRAME"){

                return;
            }

            var playMusicClass = new PlayMusicClass();

            var musicId = Math.ceil(Math.random()*100000000);

            //netease 路由两次,需重定义
            var newUrl = location.href;

            let jxMusicWeb = jxMusic[0].web.filter(function(item){

                return newUrl.match(item.match);

            })

            if(jxMusicWeb.length){

                let timerZhmIcon = setInterval(function(){

                    if (document.querySelector('#zhmIcon')){

                        clearInterval(timerZhmIcon); // 取消定时器

                        if(jxMusicWeb[0].name=='kuwo'){

                            setTimeout(function(){

                                let control = document.querySelector('.icon-bar_icon_download_');

                                let icon = control.cloneNode(true);

                                icon.className = '';

                                icon.style='margin-left:10px;';

                                icon.innerHTML = "<a style='font-size:10px;white-space: nowrap;cursor:pointer;color:#555;' id='kuwoDownload'>下载</a>";

                                let controls = document.querySelector('.col_r');

                                controls.before(icon);

                                document.querySelector('#kuwoDownload').addEventListener('click',function(){

                                    let audioSrc = document.querySelector("audio").src;

                                    let songName = document.querySelector('.control .song_name').title;

                                    let artist = document.querySelector('.control .artist').title;

                                    BaseClass.LR_download(audioSrc,songName+'-'+artist+'.mp3');

                                })

                            },2000)
                        }

                        if(jxMusicWeb[0].name=='ximalaya'){

                            setTimeout(function(){
                                //播放器创建下载icon
                                let xmControls = document.querySelector('.xm-player-oprations');

                                let control = xmControls.querySelector('a:nth-of-type(2)');

                                let icon = control.cloneNode(true);

                                icon.innerHTML = "<span style='font-size:10px;white-space: nowrap;cursor:pointer;color:#FFF;' id='ximaDownload'>下载</span>";

                                xmControls.style='position: relative;margin-left:-20px;';

                                document.querySelector('.xm-player-progress').style.width='450px';

                                document.querySelector('.xm-player-playtime').style='position: absolute;right:40px;';

                                xmControls.prepend(icon);
                                //播放器下载事件
                                document.querySelector('#ximaDownload').addEventListener('click',function(){

                                    let fmTitle = document.querySelector('.fm-title');

                                    let fmTitleMatch = fmTitle.href.match(/^https?:\/\/www\.ximalaya\.com\/sound\/(\S*)$/);

                                    let url = 'https://mobile.ximalaya.com/mobile-playpage/track/v3/baseInfo/'+new Date().getTime()+'?device=web&trackId='+fmTitleMatch[1];

                                    playMusicClass.request('get',url).then((result)=>{

                                        let data = JSON.parse(result);

                                        let playUrl = data.trackInfo.playUrlList[1].url;

                                        let str1 = playUrl.replaceAll('-','+');

                                        let str2 = str1.replaceAll('_','/');

                                        let num = str2.length%4;

                                        if(num){

                                            str2 += '===='.substr(num);
                                        }

                                        let decrypted = CryptoJS.AES.decrypt({

                                            ciphertext: CryptoJS.enc.Base64.parse(str2)

                                        }, CryptoJS.enc.Hex.parse("aaad3e4fd540b0f79dca95606e72bf93"), {

                                            mode: CryptoJS.mode.ECB,

                                            padding: CryptoJS.pad.Pkcs7

                                        }).toString(CryptoJS.enc.Utf8);

                                        console.log(decrypted);

                                        if(decrypted){

                                            BaseClass.LR_download(decrypted,data.trackInfo.title+'.mp3');

                                        }else{
                                            console.log('解密地址失败');
                                        }

                                    })

                                })

                                //页面列表创建批量下载
                                let timer = setInterval(function(){

                                    let urlMatch = location.href.match(/^https:\/\/www.ximalaya.com\/album\/[0-9]+/);

                                    if(urlMatch){

                                        let soundList = document.querySelector('#anchor_sound_list');

                                        if(soundList){

                                            let soundListHead = soundList.querySelector('.head');

                                            let soundListHeadTitle = soundListHead.querySelector('.sort').lastChild;

                                            let batchDownloadDom = document.querySelector('#batchDownload');

                                            if(!batchDownloadDom){

                                                let data = [{name:'批量下载',id:'batchDownload'},{name:'重置',id:'reset'},{name:'全选',id:'selectAll'}];

                                                data.forEach(function(item){

                                                    let control = soundListHeadTitle.cloneNode(true);

                                                    control.setAttribute('id',item.id);

                                                    control.innerText = item.name;

                                                    soundListHeadTitle.after(control);

                                                    control.before(" | ");

                                                });

                                                document.querySelector('#selectAll').addEventListener('click',function(){

                                                    let zhmCheckbox = soundList.querySelectorAll("input[name='zhmCheckbox']");

                                                    zhmCheckbox.forEach(function(item){

                                                        if(!item.checked){

                                                            item.checked=true;
                                                        }

                                                    })

                                                });

                                                document.querySelector('#reset').addEventListener('click',function(){

                                                    let zhmCheckbox = soundList.querySelectorAll("input[name='zhmCheckbox']");

                                                    zhmCheckbox.forEach(function(item){

                                                        item.checked = false;

                                                    })

                                                })
                                                //正序倒序事件
                                                soundListHead.querySelector('.sort').firstChild.addEventListener('click',function(){

                                                    setTimeout(function(){

                                                        playMusicClass.xmlyCreateCheckbox();

                                                    },2000)

                                                });

                                                soundListHeadTitle.addEventListener('click',function(){

                                                    setTimeout(function(){

                                                        playMusicClass.xmlyCreateCheckbox();

                                                    },2000)

                                                });

                                                document.querySelector('#batchDownload').addEventListener('click',function(){

                                                    let zhmCheckbox = soundList.querySelectorAll("input[name='zhmCheckbox']");

                                                    zhmCheckbox.forEach(function(item){

                                                        if(item.checked){

                                                            let scrMatch = item.value.match(/\/sound\/([0-9]+)/);

                                                            let url = 'https://mobile.ximalaya.com/mobile-playpage/track/v3/baseInfo/'+new Date().getTime()+'?device=web&trackId='+scrMatch[1];

                                                            playMusicClass.request('get',url).then((result)=>{

                                                                let data = JSON.parse(result);

                                                                let playUrl = data.trackInfo.playUrlList[1].url;

                                                                let str1 = playUrl.replaceAll('-','+');

                                                                let str2 = str1.replaceAll('_','/');

                                                                let num = str2.length%4;

                                                                if(num){

                                                                    str2 += '===='.substr(num);
                                                                }

                                                                let decrypted = CryptoJS.AES.decrypt({

                                                                    ciphertext: CryptoJS.enc.Base64.parse(str2)

                                                                }, CryptoJS.enc.Hex.parse("aaad3e4fd540b0f79dca95606e72bf93"), {

                                                                    mode: CryptoJS.mode.ECB,

                                                                    padding: CryptoJS.pad.Pkcs7

                                                                }).toString(CryptoJS.enc.Utf8);

                                                                if(decrypted){

                                                                    BaseClass.LR_download(decrypted,data.trackInfo.title+'.mp3');

                                                                }else{
                                                                    console.log('解密地址失败');
                                                                }

                                                            })

                                                        }

                                                    })

                                                })
                                            }

                                            let zhmCheckbox= document.querySelectorAll('.zhmCheckbox');

                                            if(zhmCheckbox.length == 0){

                                                playMusicClass.xmlyCreateCheckbox();
                                            }
                                           
                                            //翻页事件

                                            let pageBar = document.querySelector('.pagination-page');

                                            if(pageBar){

                                                pageBar.addEventListener('click',function(){

                                                    setTimeout(function(){

                                                        playMusicClass.xmlyCreateCheckbox();

                                                    },2000)

                                                })

                                            }

                                            //跳页事件
                                            let pageLink = document.querySelector('button[type=submit]');

                                            if(pageLink){

                                                pageLink.addEventListener('click',function(){

                                                    setTimeout(function(){

                                                        playMusicClass.xmlyCreateCheckbox();

                                                    },1000)

                                                })
                                            }
                                        }
                                    }else{
                                        console.log('未匹配到列表地址');
                                    }

                                },500)

                            },1000);

                            //全局点击事件
                            document.addEventListener('click',function(e){

                                var objLink = {};

                                e.path.forEach(function(item){

                                    if(item.href){

                                        objLink.href = item.href?item.href:'';

                                        objLink.target = item.target?item.target:'';

                                        return;
                                    }

                                })

                                if(objLink.href && objLink.target != '_blank'){

                                    location.href = objLink.href;

                                    return;
                                }
                            })

                        }

                        if(jxMusicWeb[0].name=='kugou'){

                            let aDom = document.querySelectorAll('a');

                            aDom.forEach(function(item){

                                let dataObj = item.getAttribute('dataobj');

                                if(dataObj){

                                    item.removeAttribute('dataobj');

                                    item.setAttribute('target','_blank');

                                }

                            })

                            if(couponUrl.indexOf('mixsong')!=-1 || couponUrl.indexOf('song') != -1 || couponUrl.indexOf('share') != -1){

                                setTimeout(function(){

                                    let volumeDom = document.querySelector('#volume');

                                    let downloadDom = volumeDom.cloneNode(true);

                                    downloadDom.removeAttribute('id');

                                    downloadDom.style='margin-top:30px';

                                    downloadDom.innerHTML = "<a style='color:#fff;font-size:10px;white-space:nowrap;cursor:pointer;' id='kugouDownload' javascript:void(0);>下载</a>";

                                    volumeDom.before(downloadDom);

                                    volumeDom.style='left:50px;';

                                    document.querySelector('#mode').style='margin-left:90px;';

                                    document.querySelector('#pb_download').style='margin-left:130px;';

                                    document.querySelector('#pb_share').style='margin-left:170px;';

                                    document.querySelector('#list').style='right:-20px;';

                                    document.querySelector('#kugouDownload').addEventListener('click',function(){

                                        let audio = document.querySelector('#myAudio');

                                        let audioSrc = audio.getAttribute('src');

                                        let singerName = document.querySelector('.singerName').title;

                                        let songName = document.querySelector('#songNameTemp').title;

                                        BaseClass.LR_download(audioSrc,songName+'-'+singerName.substr(0,singerName.length-1)+'.mp3');

                                    })

                                },1000)
                            }
                            console.log(couponUrl);
                        }

                        if(jxMusicWeb[0].name=='netease' && location.href == 'https://music.163.com/st/download'){

                            return false;
                        }

                        let zhmPlay = document.getElementById('zhmIcon');

                        setTimeout(function(){

                            playMusicClass.zhmLogo();

                            playMusicClass.zhmLogoDrag('music',jxMusicWeb);

                        },iconWaitTime);

                    }else{

                        playMusicClass.createElement('div','zhmIcon');
                    }

                })

                }else{

                    let zhmPlayDom = document.querySelector('#zhmIcon');

                    if(zhmPlayDom){

                        zhmPlayDom.parentNode.removeChild(zhmPlayDom);

                    }

                    console.log('当前音频网址没有添加匹配或匹配错误');

                }

        }

        function zhNiceFunc(){

            var zhClass = new ZhClass();

            //关闭登录弹框
            (async function(){

                let loginModalWrapper = await BaseClass.getElement(".Modal-wrapper");

                if(loginModalWrapper){

                    let closeButton = loginModalWrapper.querySelector('.Modal-closeButton');

                    if(closeButton){

                        closeButton.click();

                    }

                }

            })()

            var zhData = [
                {func:'removeVideo',isOpen:GM_getValue('removeVideo','0'),isOnscroll:1,onload:1},
                {func:'removeAD',isOpen:GM_getValue('removeAD','22'),isOnscroll:0,onload:0},
                {func:'downloadVideo',isOpen:GM_getValue('downloadVideo','22'),isOnscroll:0,onload:0},
                {func:'removeRight',isOpen:GM_getValue('removeRight','0'),isOnscroll:0,onload:0},
                {func:'changeLink',isOpen:GM_getValue('changeLink','22'),isOnscroll:0,onload:0},
                {func:'removeKeyword',isOpen:GM_getValue('removeKeyword','0'),isOnscroll:1,onload:1},
                {func:'showSpecialColumn',isOpen:GM_getValue('specialColumn','22'),isOnscroll:1,onload:1},
                {func:'showVideoTitle',isOpen:GM_getValue('videoTitle','22'),isOnscroll:1,onload:1},
                {func:'removeAuthorName',isOpen:GM_getValue('removeAuthorName','22'),isOnscroll:1,onload:1},
                {func:'removeYanxuan',isOpen:GM_getValue('removeYanxuan','0'),isOnscroll:1,onload:1},
                {func:'closeAuthor',isOpen:GM_getValue('removeAuthorName',22),isOnscroll:0,onload:1},
            ]

            zhData.forEach(function(item){
                if(item.isOpen==22 && item.onload==0){
                    zhClass[item.func]();
                }
            })

            window.onload=function(){
                zhData.forEach(function(item){
                    if(item.isOpen==22 && item.onload==1){
                        zhClass[item.func]();
                    }
                })
            }
            window.onscroll = function(){

                var scrollTop = document.documentElement.scrollTop;

                if(scrollTop > 200){

                    zhData.forEach(function(item){
                        if(item.isOpen==22 && item.isOnscroll==1){

                            zhClass[item.func]();
                        }
                    })

                }

            }

        }

        function taobaoSearchFunc(item){

            var _this = this;

            window.addEventListener('load',function(){

                (async function getControls(){

                    let selectsDom = await BaseClass.getElement('.next-checkbox-group');

                    if(selectsDom){

                        let labels = selectsDom.querySelectorAll('label');

                        if(labels.length>0){

                            labels.forEach(function(item){

                                let itemText = item.querySelector('.next-checkbox-label').innerText;

                                if(itemText=='天猫'){

                                    let tbLabels = item.cloneNode(true);

                                    let inputDom = tbLabels.querySelector('input');

                                    inputDom.value='service:taobao';

                                    tbLabels.querySelector('.next-checkbox-label').innerText='淘宝';

                                    item.before(tbLabels);

                                    tbLabels.addEventListener('click',selectTaobao);

                                    function selectTaobao(e){

                                        let goodsList = document.querySelectorAll('.Content--contentInner--QVTcU0M > div > a');

                                        if(e.target.className=='next-checkbox-label')return;

                                        if(tbLabels.className=='next-checkbox-wrapper '){

                                            tbLabels.className='next-checkbox-wrapper checked';

                                            goodsList.forEach(function(item){

                                                if(!item.href.match(/\/\/item\.taobao\.com\/item\.htm/)){

                                                    item.style='display:none';

                                                }

                                            })

                                        }else{

                                            tbLabels.className='next-checkbox-wrapper ';

                                            goodsList.forEach(function(item){

                                                item.style='display:block';

                                            })
                                        }

                                    }

                                    //分页
                                    let pageBar = document.querySelectorAll('.next-pagination-pages');

                                    pageBar.forEach(function(item){

                                        item.addEventListener('click',function(){
                                            //获取插入商品元素方法
                                            document.querySelector('.Content--contentInner--QVTcU0M').addEventListener('DOMNodeInserted',(e) => {

                                                let aDom = e.target.querySelector('div > a');

                                                if(aDom){

                                                    if(tbLabels.className=='next-checkbox-wrapper checked'){

                                                        if(!aDom.href.match(/\/\/item\.taobao\.com\/item\.htm/)){

                                                            aDom.style='display:none';

                                                        }

                                                    }else{

                                                        aDom.style='display:block';
                                                    }

                                                };

                                            })
                                            return;
                                            //延迟等待方法
                                            setTimeout(function(){

                                                let goodsList = document.querySelectorAll('.Content--contentInner--QVTcU0M > div > a');

                                                if(tbLabels.className=='next-checkbox-wrapper checked'){

                                                    goodsList.forEach(function(e){

                                                        if(!e.href.match(/\/\/item\.taobao\.com\/item\.htm/)){

                                                            e.style='display:none';

                                                        }

                                                    })

                                                }else{

                                                    goodsList.forEach(function(e){

                                                        e.style='display:block';

                                                    })
                                                }

                                            },3000)

                                        });

                                    })

                                }

                            })


                        }

                    }

                })();

            })
        }

        function baiduFunc(){
        let pt = '', selectList = [], params = {}, mode = '', width = 800, pan = {}, color = '',
        doc = $(document), progress = {}, request = {}, ins = {}, idm = {};
        const version = '6.1.1';
        const author = 'GreasyFork';
        const name = '网盘直链下载助手';
        const customClass = {
        popup: 'pl-popup',
        header: 'pl-header',
        title: 'pl-title',
        closeButton: 'pl-close',
        content: 'pl-content',
        input: 'pl-input',
        footer: 'pl-footer'
    };

    const terminalType = {
        wc: "Windows CMD",
        wp: "Windows PowerShell",
        lt: "Linux 终端",
        ls: "Linux Shell",
        mt: "MacOS 终端",
    };

    let toast = Swal.mixin({
        toast: true,
        position: 'top',
        showConfirmButton: false,
        timer: 3500,
        timerProgressBar: false,
        didOpen: (toast) => {
            toast.addEventListener('mouseenter', Swal.stopTimer);
            toast.addEventListener('mouseleave', Swal.resumeTimer);
        }
    });

    const message = {
        success: (text) => {
            toast.fire({title: text, icon: 'success'});
        },
        error: (text) => {
            toast.fire({title: text, icon: 'error'});
        },
        warning: (text) => {
            toast.fire({title: text, icon: 'warning'});
        },
        info: (text) => {
            toast.fire({title: text, icon: 'info'});
        },
        question: (text) => {
            toast.fire({title: text, icon: 'question'});
        }
    };

    let base = {

        getCookie(name) {
            let arr = document.cookie.replace(/\s/g, "").split(';');
            for (let i = 0, l = arr.length; i < l; i++) {
                let tempArr = arr[i].split('=');
                if (tempArr[0] === name) {
                    return decodeURIComponent(tempArr[1]);
                }
            }
            return '';
        },

        isType(obj) {
            return Object.prototype.toString.call(obj).replace(/^\[object (.+)\]$/, '$1').toLowerCase();
        },

        getValue(name) {
            return GM_getValue(name);
        },

        setValue(name, value) {
            GM_setValue(name, value);
        },

        getStorage(key) {
            try {
                return JSON.parse(localStorage.getItem(key));
            } catch (e) {
                return localStorage.getItem(key);
            }
        },

        setStorage(key, value) {
            if (this.isType(value) === 'object' || this.isType(value) === 'array') {
                return localStorage.setItem(key, JSON.stringify(value));
            }
            return localStorage.setItem(key, value);
        },

        setClipboard(text) {
            GM_setClipboard(text, 'text');
        },

        e(str) {
            return btoa(unescape(encodeURIComponent(str)));
        },

        d(str) {
            return decodeURIComponent(escape(atob(str)));
        },

        getExtension(name) {
            const reg = /(?!\.)\w+$/;
            if (reg.test(name)) {
                let match = name.match(reg);
                return match[0].toUpperCase();
            }
            return '';
        },

        sizeFormat(value) {
            if (value === +value) {
                let unit = ["B", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"];
                let index = Math.floor(Math.log(value) / Math.log(1024));
                let size = value / Math.pow(1024, index);
                size = size.toFixed(1);
                return size + unit[index];
            }
            return '';
        },

        sortByName(arr) {
            const handle = () => {
                return (a, b) => {
                    const p1 = a.filename ? a.filename : a.server_filename;
                    const p2 = b.filename ? b.filename : b.server_filename;
                    return p1.localeCompare(p2, "zh-CN");
                };
            };
            arr.sort(handle());
        },

        fixFilename(name) {
            return name.replace(/[!?&|`"'*\/:<>\\]/g, '_');
        },

        blobDownload(blob, filename) {
            if (blob instanceof Blob) {
                const url = URL.createObjectURL(blob);
                const a = document.createElement('a');
                a.href = url;
                a.download = filename;
                a.click();
                URL.revokeObjectURL(url);
            }
        },

        post(url, data, headers, type) {
            if (this.isType(data) === 'object') {
                data = JSON.stringify(data);
            }
            return new Promise((resolve, reject) => {
                GM_xmlhttpRequest({
                    method: "POST", url, headers, data,
                    responseType: type || 'json',
                    onload: (res) => {
                        type === 'blob' ? resolve(res) : resolve(res.response || res.responseText);
                    },
                    onerror: (err) => {
                        reject(err);
                    },
                });
            });
        },

        get(url, headers, type, extra) {
            return new Promise((resolve, reject) => {
                let requestObj = GM_xmlhttpRequest({
                    method: "GET", url, headers,
                    responseType: type || 'json',
                    onload: (res) => {
                        if (res.status === 204) {
                            requestObj.abort();
                            idm[extra.index] = true;
                        }
                        if (type === 'blob') {
                            res.status === 200 && base.blobDownload(res.response, extra.filename);
                            resolve(res);
                        } else {
                            resolve(res.response || res.responseText);
                        }
                    },
                    onprogress: (res) => {
                        if (extra && extra.filename && extra.index) {
                            res.total > 0 ? progress[extra.index] = (res.loaded * 100 / res.total).toFixed(2) : progress[extra.index] = 0.00;
                        }
                    },
                    onloadstart() {
                        extra && extra.filename && extra.index && (request[extra.index] = requestObj);
                    },
                    onerror: (err) => {
                        reject(err);
                    },
                });
            });
        },

        getFinalUrl(url, headers) {
            return new Promise((resolve, reject) => {
                let requestObj = GM_xmlhttpRequest({
                    method: "GET", url, headers,
                    onload: (res) => {
                        resolve(res.finalUrl);
                    },
                    onerror: (err) => {
                        reject(err);
                    },
                });
            });
        },

        stringify(obj) {
            let str = '';
            for (var key in obj) {
                if (obj.hasOwnProperty(key)) {
                    var value = obj[key];
                    if (Array.isArray(value)) {
                        for (var i = 0; i < value.length; i++) {
                            str += encodeURIComponent(key) + '=' + encodeURIComponent(value[i]) + '&';
                        }
                    } else {
                        str += encodeURIComponent(key) + '=' + encodeURIComponent(value) + '&';
                    }
                }
            }
            return str.slice(0, -1); // 去掉末尾的 "&"
        },

        sleep(time) {
            return new Promise(resolve => setTimeout(resolve, time));
        },

        addStyle(id, tag, css) {
            tag = tag || 'style';
            let doc = document, styleDom = doc.getElementById(id);
            if (styleDom) return;
            let style = doc.createElement(tag);
            style.rel = 'stylesheet';
            style.id = id;
            tag === 'style' ? style.innerHTML = css : style.href = css;
            doc.getElementsByTagName('head')[0].appendChild(style);
        },

        findReact(dom, traverseUp = 0) {
            const key = Object.keys(dom).find(key => {
                return key.startsWith("__reactFiber$")
                    || key.startsWith("__reactInternalInstance$");
            });
            const domFiber = dom[key];
            if (domFiber == null) return null;

            if (domFiber._currentElement) {
                let compFiber = domFiber._currentElement._owner;
                for (let i = 0; i < traverseUp; i++) {
                    compFiber = compFiber._currentElement._owner;
                }
                return compFiber._instance;
            }

            const GetCompFiber = fiber => {
                let parentFiber = fiber.return;
                while (typeof parentFiber.type == "string") {
                    parentFiber = parentFiber.return;
                }
                return parentFiber;
            };
            let compFiber = GetCompFiber(domFiber);
            for (let i = 0; i < traverseUp; i++) {
                compFiber = GetCompFiber(compFiber);
            }
            return compFiber.stateNode || compFiber;
        },

        initDefaultConfig() {
            let value = [{
                name: 'setting_rpc_domain',
                value: 'http://localhost'
            }, {
                name: 'setting_rpc_port',
                value: '16800'
            }, {
                name: 'setting_rpc_path',
                value: '/jsonrpc'
            }, {
                name: 'setting_rpc_token',
                value: ''
            }, {
                name: 'setting_rpc_dir',
                value: 'D:'
            }, {
                name: 'setting_terminal_type',
                value: 'wc'
            }, {
                name: 'setting_theme_color',
                value: '#09AAFF'
            }, {
                name: 'setting_init_code',
                value: ''
            }];

            value.forEach((v) => {
                base.getValue(v.name) === undefined && base.setValue(v.name, v.value);
            });
        },

        showSetting() {
            let dom = '', btn = '',
                colorList = ['#09AAFF', '#cc3235', '#526efa', '#518c17', '#ed944b', '#f969a5', '#bca280'];
            dom += `<label class="pl-setting-label"><div class="pl-label">RPC主机</div><input type="text"  placeholder="主机地址,需带上http(s)://" class="pl-input listener-domain" value="${base.getValue('setting_rpc_domain')}"></label>`;
            dom += `<label class="pl-setting-label"><div class="pl-label">RPC端口</div><input type="text" placeholder="端口号,例如:Motrix为16800" class="pl-input listener-port" value="${base.getValue('setting_rpc_port')}"></label>`;
            dom += `<label class="pl-setting-label"><div class="pl-label">RPC路径</div><input type="text" placeholder="路径,默认为/jsonrpc" class="pl-input listener-path" value="${base.getValue('setting_rpc_path')}"></label>`;
            dom += `<label class="pl-setting-label"><div class="pl-label">RPC密钥</div><input type="text" placeholder="无密钥无需填写" class="pl-input listener-token" value="${base.getValue('setting_rpc_token')}"></label>`;
            dom += `<label class="pl-setting-label"><div class="pl-label">保存路径</div><input type="text" placeholder="文件下载后保存路径,例如:D:" class="pl-input listener-dir" value="${base.getValue('setting_rpc_dir')}"></label>`;

            colorList.forEach((v) => {
                btn += `<div data-color="${v}" style="background: ${v};border: 1px solid ${v}" class="pl-color-box listener-color ${v === base.getValue('setting_theme_color') ? 'checked' : ''}"></div>`;
            });
            dom += `<label class="pl-setting-label"><div class="pl-label">终端类型</div><select class="pl-input listener-terminal">`;
            Object.keys(terminalType).forEach(k => {
                dom += `<option value="${k}" ${base.getValue('setting_terminal_type') === k ? 'selected' : ''}>${terminalType[k]}</option>`;
            });
            dom += `</select></label>`;
            dom += `<label class="pl-setting-label"><div class="pl-label">主题颜色</div> <div class="pl-color">${btn}<div></label>`;
            dom = '<div>' + dom + '</div>';

            Swal.fire({
                title: '助手配置',
                html: dom,
                icon: 'info',
                showCloseButton: true,
                showConfirmButton: false,
                footer: pan.footer,
            }).then(() => {
                message.success('设置成功!');
                history.go(0);
            });

            doc.on('click', '.listener-color', async (e) => {
                base.setValue('setting_theme_color', e.target.dataset.color);
                message.success('设置成功!');
                history.go(0);
            });
            doc.on('input', '.listener-domain', async (e) => {
                base.setValue('setting_rpc_domain', e.target.value);
            });
            doc.on('input', '.listener-port', async (e) => {
                base.setValue('setting_rpc_port', e.target.value);
            });
            doc.on('input', '.listener-path', async (e) => {
                base.setValue('setting_rpc_path', e.target.value);
            });
            doc.on('input', '.listener-token', async (e) => {
                base.setValue('setting_rpc_token', e.target.value);
            });
            doc.on('input', '.listener-dir', async (e) => {
                base.setValue('setting_rpc_dir', e.target.value);
            });
            doc.on('change', '.listener-terminal', async (e) => {
                base.setValue('setting_terminal_type', e.target.value);
            });
        },

        registerMenuCommand() {
            GM_registerMenuCommand('⚙️ 设置', () => {
                this.showSetting();
            });
        },

        createTip() {
            $('body').append('<div class="pl-tooltip"></div>');

            doc.on('mouseenter mouseleave', '.listener-tip', (e) => {
                if (e.type === 'mouseenter') {
                    let filename = e.currentTarget.innerText;
                    let size = e.currentTarget.dataset.size;
                    let tip = `${filename}<span style="margin-left: 10px;color: #f56c6c;">${size}</span>`;
                    $(e.currentTarget).css({opacity: '0.5'});
                    $('.pl-tooltip').html(tip).css({
                        'left': e.pageX + 10 + 'px',
                        'top': e.pageY - e.currentTarget.offsetTop > 14 ? e.pageY + 'px' : e.pageY + 20 + 'px'
                    }).show();
                } else {
                    $(e.currentTarget).css({opacity: '1'});
                    $('.pl-tooltip').hide(0);
                }
            });
        },

        createLoading() {
            return $('<div class="pl-loading"><div class="pl-loading-box"><div><div></div><div></div></div></div></div>');
        },

        createDownloadIframe() {
            let $div = $('<div style="padding:0;margin:0;display:block"></div>');
            let $iframe = $('<iframe src="javascript:;" id="downloadIframe" style="display:none"></iframe>');
            $div.append($iframe);
            $('body').append($div);
        },

        getMirrorList(link, mirror, thread = 2) {
            let host = new URL(link).host;
            let mirrors = [];
            for (let i = 0; i < mirror.length; i++) {
                for (let j = 0; j < thread; j++) {
                    let item = link.replace(host, mirror[i]) + '&'.repeat(j);
                    mirrors.push(item);
                }
            }
            return mirrors.join('\n');
        },

        addPanLinkerStyle() {
            color = base.getValue('setting_theme_color');
            let css = `
            body::-webkit-scrollbar { display: none }
            ::-webkit-scrollbar { width: 6px; height: 10px }
            ::-webkit-scrollbar-track { border-radius: 0; background: none }
            ::-webkit-scrollbar-thumb { background-color: rgba(85,85,85,.4) }
            ::-webkit-scrollbar-thumb,::-webkit-scrollbar-thumb:hover { border-radius: 5px; -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.2) }
            ::-webkit-scrollbar-thumb:hover { background-color: rgba(85,85,85,.3) }
            .swal2-popup { font-size: 16px !important; }
            .pl-popup { font-size: 12px !important; }
            .pl-popup a { color: ${color} !important; }
            .pl-header { padding: 0!important;align-items: flex-start!important; border-bottom: 1px solid #eee!important; margin: 0 0 10px!important; padding: 0 0 5px!important; }
            .pl-title { font-size: 16px!important; line-height: 1!important;white-space: nowrap!important; text-overflow: ellipsis!important;}
            .pl-content { padding: 0 !important; font-size: 12px!important; }
            .pl-main { max-height: 400px;overflow-y:scroll; }
            .pl-footer {font-size: 12px!important;justify-content: flex-start!important; margin: 10px 0 0!important; padding: 5px 0 0!important; color: #f56c6c!important; }
            .pl-item { display: flex; align-items: center; line-height: 22px; }
            .pl-item-name { flex: 0 0 150px; text-align: left;margin-right: 10px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; cursor:default; }
            .pl-item-link { flex: 1; overflow: hidden; text-align: left; white-space: nowrap; text-overflow: ellipsis;cursor:pointer }
            .pl-item-btn { background: ${color}; padding: 4px 5px; border-radius: 3px; line-height: 1; cursor: pointer; color: #fff; }
            .pl-item-tip { display: flex; justify-content: space-between;flex: 1; }
            .pl-back { width: 70px; background: #ddd; border-radius: 3px; cursor:pointer; margin:1px 0; }
            .pl-ext { display: inline-block; width: 44px; background: #999; color: #fff; height: 16px; line-height: 16px; font-size: 12px; border-radius: 3px;}
            .pl-retry {padding: 3px 10px; background: #cc3235; color: #fff; border-radius: 3px; cursor: pointer;}
            .pl-browserdownload { padding: 3px 10px; background: ${color}; color: #fff; border-radius: 3px; cursor: pointer;}
            .pl-item-progress { display:flex;flex: 1;align-items:center}
            .pl-progress { display: inline-block;vertical-align: middle;width: 100%; box-sizing: border-box;line-height: 1;position: relative;height:15px; flex: 1}
            .pl-progress-outer { height: 15px;border-radius: 100px;background-color: #ebeef5;overflow: hidden;position: relative;vertical-align: middle;}
            .pl-progress-inner{ position: absolute;left: 0;top: 0;background-color: #409eff;text-align: right;border-radius: 100px;line-height: 1;white-space: nowrap;transition: width .6s ease;}
            .pl-progress-inner-text { display: inline-block;vertical-align: middle;color: #d1d1d1;font-size: 12px;margin: 0 5px;height: 15px}
            .pl-progress-tip{ flex:1;text-align:right}
            .pl-progress-how{ flex: 0 0 90px; background: #ddd; border-radius: 3px; margin-left: 10px; cursor: pointer; text-align: center;}
            .pl-progress-stop{ flex: 0 0 50px; padding: 0 10px; background: #cc3235; color: #fff; border-radius: 3px; cursor: pointer;margin-left:10px;height:20px}
            .pl-progress-inner-text:after { display: inline-block;content: "";height: 100%;vertical-align: middle;}
            .pl-btn-primary { background: ${color}; border: 0; border-radius: 4px; color: #ffffff; cursor: pointer; font-size: 12px; outline: none; display:flex; align-items: center; justify-content: center; margin: 2px 0; padding: 6px 0;transition: 0.3s opacity; }
            .pl-btn-primary:hover { opacity: 0.9;transition: 0.3s opacity; }
            .pl-btn-success { background: #55af28; animation: easeOpacity 1.2s 2; animation-fill-mode:forwards }
            .pl-btn-info { background: #606266; }
            .pl-btn-warning { background: #da9328; }
            .pl-btn-warning { background: #da9328; }
            .pl-btn-danger { background: #cc3235; }
            .pl-dropdown-menu {position: absolute;right: 0;top: 30px;padding: 5px 0;color: rgb(37, 38, 43);background: #fff;z-index: 999;width: 102px;border: 1px solid #ddd;border-radius: 10px; box-shadow: 0 0 1px 1px rgb(28 28 32 / 5%), 0 8px 24px rgb(28 28 32 / 12%);}
            .pl-dropdown-menu-item { height: 30px;display: flex;align-items: center;justify-content: center; }
            .pl-dropdown-menu-item:hover { background-color: rgba(132,133,141,0.08);}
            .pl-button .pl-dropdown-menu { display: none; }
            .pl-button:hover .pl-dropdown-menu { display: block!important; }
            .pl-button-init { opacity: 0.5; animation: easeInitOpacity 1.2s 3; animation-fill-mode:forwards }
             @keyframes easeInitOpacity { from { opacity: 0.5; } 50% { opacity: 1 } to { opacity: 0.5; } }
             @keyframes easeOpacity { from { opacity: 1; } 50% { opacity: 0.35 } to { opacity: 1; } }
            .element-clicked { opacity: 0.5; }
            .pl-extra { margin-top: 10px;display:flex}
            .pl-extra button { flex: 1}
            .pointer { cursor:pointer }
            .pl-setting-label { display: flex;align-items: center;justify-content: space-between;padding-top: 10px; }
            .pl-label { flex: 0 0 100px;text-align:left; }
            .pl-input { flex: 1; padding: 8px 10px; border: 1px solid #c2c2c2; border-radius: 5px; font-size: 14px }
            .pl-color { flex: 1;display: flex;flex-wrap: wrap; margin-right: -10px;}
            .pl-color-box { width: 35px;height: 35px;margin:10px 10px 0 0;; box-sizing: border-box;border:1px solid #fff;cursor:pointer }
            .pl-color-box.checked { border:3px dashed #111!important }
            .pl-close:focus { outline: 0; box-shadow: none; }
            .tag-danger {color:#cc3235;margin: 0 5px;}
            .pl-tooltip { position: absolute; color: #ffffff; max-width: 600px; font-size: 12px; padding: 5px 10px; background: #333; border-radius: 5px; z-index: 110000; line-height: 1.3; display:none; word-break: break-all;}
             @keyframes load { 0% { transform: rotate(0deg) } 100% { transform: rotate(360deg) } }
            .pl-loading-box > div > div { position: absolute;border-radius: 50%;}
            .pl-loading-box > div > div:nth-child(1) { top: 9px;left: 9px;width: 82px;height: 82px;background: #ffffff;}
            .pl-loading-box > div > div:nth-child(2) { top: 14px;left: 38px;width: 25px;height: 25px;background: #666666;animation: load 1s linear infinite;transform-origin: 12px 36px;}
            .pl-loading { width: 16px;height: 16px;display: inline-block;overflow: hidden;background: none;}
            .pl-loading-box { width: 100%;height: 100%;position: relative;transform: translateZ(0) scale(0.16);backface-visibility: hidden;transform-origin: 0 0;}
            .pl-loading-box div { box-sizing: content-box; }
            .swal2-container { z-index:100000!important; }
            body.swal2-height-auto { height: inherit!important; }
            .btn-operate .btn-main { display:flex; align-items:center; }
            `;
            this.addStyle('panlinker-style', 'style', css);
        },

        async initDialog() {
                let result = await Swal.fire({
                    title: "敬请关注微信公众号",
                    html: `<div><img style="width: 250px;margin-bottom: 10px;" src="data:image/jpeg;base64,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" alt="data:image/jpeg;base64,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"><input class="swal2-input" id="init" type="text" placeholder="请随便输入暗号"></div>`,
                    allowOutsideClick: false,
                    showCloseButton: true,
                    confirmButtonText: '破解'
                });
                if (result.isDismissed && result.dismiss === 'close') return;
                if (pan.num == pan.num) {
                    base.setValue('setting_init_code', pan.num);
                    message.success("暗号正确");
                    setTimeout(() => {
                        history.go(0);
                    }, 1500);
                } else {
                    await Swal.fire({
                        title:"暗号不正确",
                        text: "暗号不正确",
                        confirmButtonText: '重新输入',
                        imageUrl: pan.img,
                    });
                    await this.initDialog();
                }
            },
        };

    let baidu = {

        _getExtra() {
            let seKey = decodeURIComponent(base.getCookie('BDCLND'));
            return '{' + '"sekey":"' + seKey + '"' + "}";
        },

        _getSurl() {

            let reg = /(?<=s\/|surl=)([a-zA-Z0-9_-]+)/g;
            if (reg.test(location.href)) {
                return location.href.match(reg)[0];
            }
            return '';

        },

        _getFidList() {
            let fidlist = [];
            selectList.forEach(v => {
                if (+v.isdir === 1) return;
                fidlist.push(v.fs_id);
            });
            return '[' + fidlist + ']';
        },

        _resetData() {
            progress = {};
            $.each(request, (key) => {
                (request[key]).abort();
            });
            $.each(ins, (key) => {
                clearInterval(ins[key]);
            });
            idm = {};
            ins = {};
            request = {};
        },

        setBDUSS() {
            try {
                GM_cookie && GM_cookie('list', {name: 'BDUSS'}, (cookies, error) => {
                    if (!error) {
                        base.setStorage("baiduyunPlugin_BDUSS", {BDUSS: cookies[0].value});
                    }
                });
            } catch (e) {
            }
        },

        getBDUSS() {
            let baiduyunPlugin_BDUSS = base.getStorage('baiduyunPlugin_BDUSS') ? base.getStorage('baiduyunPlugin_BDUSS') : '{"baiduyunPlugin_BDUSS":""}';
            return baiduyunPlugin_BDUSS.BDUSS || '';
        },

        convertLinkToAria(link, filename, ua) {
            let BDUSS = this.getBDUSS();
            if (!!BDUSS) {
                filename = base.fixFilename(filename);
                return encodeURIComponent(`aria2c "${link}" --out "${filename}" --header "User-Agent: ${ua}" --header "Cookie: BDUSS=${BDUSS}"`);
            }
            return {
                link: pan.assistant,
                text: pan.init[5]
            };
        },

        convertLinkToBC(link, filename, ua) {
            let BDUSS = this.getBDUSS();
            if (!!BDUSS) {
                let cookie = `BDUSS=${BDUSS}`;
                let bc = `AA/${encodeURIComponent(filename)}/?url=${encodeURIComponent(link)}&cookie=${encodeURIComponent(cookie)}&user_agent=${encodeURIComponent(ua)}ZZ`;
                return encodeURIComponent(`bc://http/${base.e(bc)}`);
            }
            return {
                link: pan.assistant,
                text: pan.init[5]
            };
        },

        convertLinkToCurl(link, filename, ua) {
            let BDUSS = this.getBDUSS();
            if (!!BDUSS) {
                let terminal = base.getValue('setting_terminal_type');
                filename = base.fixFilename(filename);
                return encodeURIComponent(`${terminal !== 'wp' ? 'curl' : 'curl.exe'} -L -C - "${link}" -o "${filename}" -A "${ua}" -b "BDUSS=${BDUSS}"`);
            }
            return {
                link: pan.assistant,
                text: pan.init[5]
            };
        },

        addPageListener() {
            function _factory(e) {
                let target = $(e.target);
                let item = target.parents('.pl-item');
                let link = item.find('.pl-item-link');
                let progress = item.find('.pl-item-progress');
                let tip = item.find('.pl-item-tip');
                return {
                    item, link, progress, tip, target,
                };
            }

            function _reset(i) {
                ins[i] && clearInterval(ins[i]);
                request[i] && request[i].abort();
                progress[i] = 0;
                idm[i] = false;
            }

            doc.on('mouseenter mouseleave click', '.pl-button.g-dropdown-button', (e) => {
                if (e.type === 'mouseleave') {
                    $(e.currentTarget).removeClass('button-open');
                } else {
                    $(e.currentTarget).addClass('button-open');
                    $(e.currentTarget).find('.pl-dropdown-menu').show();
                }
            });
            doc.on('mouseleave', '.pl-button.g-dropdown-button .pl-dropdown-menu', (e) => {
                $(e.currentTarget).hide();
            });

            doc.on('click', '.pl-button-mode', (e) => {
                mode = e.target.dataset.mode;
                Swal.showLoading();
                this.getPCSLink();
            });
            doc.on('click', '.listener-link-api', async (e) => {
                e.preventDefault();
                let o = _factory(e);
                let $width = o.item.find('.pl-progress-inner');
                let $text = o.item.find('.pl-progress-inner-text');
                let filename = o.link[0].dataset.filename;
                let index = o.link[0].dataset.index;
                _reset(index);
                base.get(o.link[0].dataset.link, {"User-Agent": pan.ua}, 'blob', {filename, index});
                ins[index] = setInterval(() => {
                    let prog = +progress[index] || 0;
                    let isIDM = idm[index] || false;
                    if (isIDM) {
                        o.tip.hide();
                        o.progress.hide();
                        o.link.text('已成功唤起IDM,请查看IDM下载框!').animate({opacity: '0.5'}, "slow").show();
                        clearInterval(ins[index]);
                        idm[index] = false;
                    } else {
                        o.link.hide();
                        o.tip.hide();
                        o.progress.show();
                        $width.css('width', prog + '%');
                        $text.text(prog + '%');
                        if (prog === 100) {
                            clearInterval(ins[index]);
                            progress[index] = 0;
                            o.item.find('.pl-progress-stop').hide();
                            o.item.find('.pl-progress-tip').html('下载完成,正在弹出浏览器下载框!');
                        }
                    }
                }, 500);
            });
            doc.on('click', '.listener-retry', async (e) => {
                let o = _factory(e);
                o.tip.hide();
                o.link.show();
            });
            doc.on('click', '.listener-how', async (e) => {
                let o = _factory(e);
                let index = o.link[0].dataset.index;
                if (request[index]) {
                    request[index].abort();
                    clearInterval(ins[index]);
                    o.progress.hide();
                    o.tip.show();
                }

            });
            doc.on('click', '.listener-stop', async (e) => {
                let o = _factory(e);
                let index = o.link[0].dataset.index;
                if (request[index]) {
                    request[index].abort();
                    clearInterval(ins[index]);
                    o.tip.hide();
                    o.progress.hide();
                    o.link.show(0);
                }
            });
            doc.on('click', '.listener-back', async (e) => {
                let o = _factory(e);
                o.tip.hide();
                o.link.show();
            });
            doc.on('click', '.listener-link-aria, .listener-copy-all', (e) => {
                e.preventDefault();
                if (!e.target.dataset.link) {
                    $(e.target).removeClass('listener-copy-all').addClass('pl-btn-danger').html(`${pan.init[5]}👉<a href="${pan.assistant}" target="_blank" class="pl-a">点击此处安装</a>👈`);
                } else {
                    base.setClipboard(decodeURIComponent(e.target.dataset.link));
                    $(e.target).text('复制成功,快去粘贴吧!').animate({opacity: '0.5'}, "slow");
                }
            });
            doc.on('click', '.listener-link-rpc', async (e) => {
                let target = $(e.currentTarget);
                target.find('.icon').remove();
                target.find('.pl-loading').remove();
                target.prepend(base.createLoading());
                let res = await this.sendLinkToRPC(e.currentTarget.dataset.filename, e.currentTarget.dataset.link);
                if (res === 'success') {
                    $('.listener-rpc-task').show();
                    target.removeClass('pl-btn-danger').html('发送成功,快去看看吧!').animate({opacity: '0.5'}, "slow");
                } else if (res === 'assistant') {
                    target.addClass('pl-btn-danger').html(`${pan.init[5]}👉<a href="${pan.assistant}" target="_blank" class="pl-a">点击此处安装</a>👈`);
                } else {
                    target.addClass('pl-btn-danger').text('发送失败,请检查您的RPC配置信息!').animate({opacity: '0.5'}, "slow");
                }
            });
            doc.on('click', '.listener-send-rpc', (e) => {
                $('.listener-link-rpc').click();
                $(e.target).text('发送完成,发送结果见上方按钮!').animate({opacity: '0.5'}, "slow");
            });
            doc.on('click', '.listener-open-setting', () => {
                base.showSetting();
            });
            doc.on('click', '.listener-rpc-task', () => {
                let rpc = JSON.stringify({
                    domain: base.getValue('setting_rpc_domain'),
                    port: base.getValue('setting_rpc_port'),
                }), url = `${pan.d}/?rpc=${base.e(rpc)}#${base.getValue('setting_rpc_token')}`;
                GM_openInTab(url, {active: true});
            });
            document.documentElement.addEventListener('mouseup', (e) => {
                if (e.target.nodeName === 'A' && ~e.target.className.indexOf('pl-a')) {
                    e.stopPropagation();
                }
            }, true);
        },

        addButton() {
            if (!pt) return;
            let $toolWrap;
            let $button = $(`<div class="g-dropdown-button pointer pl-button"><div style="color:#fff;background: ${color};border-color:${color}" class="g-button g-button-blue"><span class="g-button-right"><em class="icon icon-download"></em><span class="text" style="width: 60px;">网盘直链下载助手</span></span></div><div class="menu" style="width:auto;z-index:41;border-color:${color}"><div style="color:${color}" class="g-button-menu pl-button-mode" data-mode="api">API下载</div><div style="color:${color}" class="g-button-menu pl-button-mode" data-mode="aria">Aria下载</div><div style="color:${color}" class="g-button-menu pl-button-mode" data-mode="rpc">RPC下载</div><div style="color:${color}" class="g-button-menu pl-button-mode" data-mode="curl">cURL下载</div><div style="color:${color}" class="g-button-menu pl-button-mode" data-mode="bc">BC下载</div></div></div>`);
            if (pt === 'home') $toolWrap = $(pan.btn.home);
            if (pt === 'main') {
                $toolWrap = $(pan.btn.main);
                $button = $(`<div class="pl-button" style="position: relative; display: inline-block; margin-right: 8px;"><button class="u-button u-button--primary u-button--small is-round is-has-icon" style="background: ${color};border-color: ${color};font-size: 14px; padding: 8px 16px; border: none;"><i class="u-icon u-icon-download"></i><span>网盘直链下载助手</span></button><ul class="dropdown-list nd-common-float-menu pl-dropdown-menu"><li class="sub cursor-p pl-button-mode" data-mode="api">API下载</li><li class="sub cursor-p pl-button-mode" data-mode="aria">Aria下载</li><li class="sub cursor-p pl-button-mode" data-mode="rpc">RPC下载</li><li class="sub cursor-p pl-button-mode" data-mode="curl">cURL下载</li><li class="sub cursor-p pl-button-mode" data-mode="bc" >BC下载</li></ul></div>`);
            }
            if (pt === 'share') $toolWrap = $(pan.btn.share);
            $toolWrap.prepend($button);
            this.setBDUSS();
            this.addPageListener();
        },

        addInitButton() {
            if (!pt) return;
            let $toolWrap;
            let $button = $(`<div class="g-dropdown-button pointer pl-button-init" style="opacity:.5"><div style="color:#fff;background: ${color};border-color:${color}" class="g-button g-button-blue"><span class="g-button-right"><em class="icon icon-download"></em><span class="text" style="width: 60px;">网盘直链下载助手</span></span></div></div>`);
            if (pt === 'home') $toolWrap = $(pan.btn.home);
            if (pt === 'main') {
                $toolWrap = $(pan.btn.main);
                $button = $(`<div class="pl-button-init" style="opacity:.5; display: inline-block; margin-right: 8px;"><button class="u-button u-button--primary u-button--small is-round is-has-icon" style="background: ${color};border-color: ${color};font-size: 14px; padding: 8px 16px; border: none;"><i class="u-icon u-icon-download"></i><span>网盘直链下载助手</span></button></div>`);
            }
            if (pt === 'share') $toolWrap = $(pan.btn.share);
            $toolWrap.prepend($button);
            $button.click(() => base.initDialog());
        },

        async getToken() {
            let res = await base.getFinalUrl(pan.pcs[3]);
            if (res.indexOf('access_token') === -1) {
                let html = await base.get(pan.pcs[3], {}, 'text');
                let bdstoken = html.match(/name="bdstoken"\s+value="([^"]+)"/)?.[1];
                let client_id = html.match(/name="client_id"\s+value="([^"]+)"/)?.[1];
                let data = {
                    grant_permissions_arr: 'netdisk',
                    bdstoken: bdstoken,
                    client_id: client_id,
                    response_type: "token",
                    display: "page",
                    grant_permissions: "basic,netdisk"
                }
                await base.post(pan.pcs[3], base.stringify(data), {
                    'Content-Type': 'application/x-www-form-urlencoded',
                })
                let res2 = await base.getFinalUrl(pan.pcs[3]);
                let accessToken = res2.match(/access_token=([^&]+)/)?.[1];
                accessToken && base.setStorage('accessToken', accessToken);
                return accessToken;
            }
            let accessToken = res.match(/access_token=([^&]+)/)?.[1];
            accessToken && base.setStorage('accessToken', accessToken);
            return accessToken;
        },

        async getPCSLink(maxRequestTime = 2) {
            selectList = this.getSelectedList();
            let fidList = this._getFidList(), url, res;

            if (pt === 'home' || pt === 'main') {
                if (selectList.length === 0) {
                    return message.error('提示:请先勾选要下载的文件!');
                }
                if (fidList.length === 2) {
                    return message.error('提示:请打开文件夹后勾选文件!');
                }
                fidList = encodeURIComponent(fidList);
                let accessToken = base.getStorage('accessToken') || await this.getToken();
                url = `${pan.pcs[0]}&fsids=${fidList}&access_token=${accessToken}`;
                res = await base.get(url, {"User-Agent": pan.ua});
            }
            if (pt === 'share') {
                this.getShareData();
                if (selectList.length === 0) {
                    return message.error('提示:请先勾选要下载的文件!');
                }
                if (fidList.length === 2) {
                    return message.error('提示:请打开文件夹后勾选文件!');
                }
                if (!params.sign) {
                    let url = `${pan.pcs[2]}&surl=${params.surl}&logid=${params.logid}`;
                    let r = await base.get(url);
                    if (r.errno === 0) {
                        params.sign = r.data.sign;
                        params.timestamp = r.data.timestamp;
                    } else {
                        let dialog = await Swal.fire({
                            toast: true,
                            icon: 'info',
                            title: `提示:请将文件<span class="tag-danger">[保存到网盘]</span>👉前往<span class="tag-danger">[我的网盘]</span>中下载!`,
                            showConfirmButton: true,
                            confirmButtonText: '点击保存',
                            position: 'top',
                        });
                        if (dialog.isConfirmed) {
                            $('.tools-share-save-hb')[0].click();
                        }
                        return;
                    }
                }
                if (!params.bdstoken) {
                    return message.error('提示:请先登录网盘!');
                }
                let formData = new FormData();
                formData.append('encrypt', params.encrypt);
                formData.append('product', params.product);
                formData.append('uk', params.uk);
                formData.append('primaryid', params.primaryid);
                formData.append('fid_list', fidList);
                formData.append('logid', params.logid);
                params.shareType === 'secret' ? formData.append('extra', params.extra) : '';
                url = `${pan.pcs[1]}&sign=${params.sign}&timestamp=${params.timestamp}`;
                res = await base.post(url, formData, {"User-Agent": pan.ua});
            }
            if (res.errno === 0) {
                let html = this.generateDom(res.list);
                this.showMainDialog(pan[mode][0], html, pan[mode][1]);
            } else if (res.errno === 112) {
                return message.error('提示:页面过期,请刷新重试!');
            } else if (res.errno === 9019) {
                maxRequestTime--;
                await this.getToken();
                if (maxRequestTime > 0) {
                    await this.getPCSLink(maxRequestTime);
                } else {
                    message.error('提示:获取下载链接失败!请刷新网页后重试!');
                }
            } else {
                message.error('提示:获取下载链接失败!请刷新网页后重试!');
            }
        },

        generateDom(list) {
            let content = '<div class="pl-main">';
            let alinkAllText = '';
            base.sortByName(list);
            list.forEach((v, i) => {
                if (v.isdir === 1) return;
                let filename = v.server_filename || v.filename;
                let ext = base.getExtension(filename);
                let size = base.sizeFormat(v.size);
                let dlink = v.dlink;
                if (mode === 'api') {
                    content += `<div class="pl-item">
                                <div class="pl-item-name listener-tip" data-size="${size}">${filename}</div>
                                <a class="pl-item-link pl-a listener-link-api" href="${dlink}" data-filename="${filename}" data-link="${dlink}" data-index="${i}">${dlink}</a>
                                <div class="pl-item-tip" style="display: none"><span>若没有弹出IDM下载框,找到IDM <b>选项</b> -> <b>文件类型</b> -> <b>第一个框</b> 中添加后缀 <span class="pl-ext">${ext}</span>,<a href="${pan.idm}" target="_blank" class="pl-a">详见此处</a></span> <span class="pl-back listener-back">返回</span></div>
                                <div class="pl-item-progress" style="display: none">
                                    <div class="pl-progress">
                                        <div class="pl-progress-outer"></div>
                                        <div class="pl-progress-inner" style="width:5%">
                                          <div class="pl-progress-inner-text">0%</div>
                                        </div>
                                    </div>
                                    <span class="pl-progress-stop listener-stop">取消下载</span>
                                    <span class="pl-progress-tip">未发现IDM,使用自带浏览器下载</span>
                                    <span class="pl-progress-how listener-how">如何唤起IDM?</span>
                                </div></div>`;
                }
                if (mode === 'aria') {
                    let alink = this.convertLinkToAria(dlink, filename, pan.ua);
                    if (typeof (alink) === 'object') {
                        content += `<div class="pl-item">
                                <div class="pl-item-name listener-tip" data-size="${size}">${filename}</div>
                                <a class="pl-item-link pl-a" target="_blank" href="${alink.link}" title="点击复制aria2c链接" data-filename="${filename}" data-link="${alink.link}">${decodeURIComponent(alink.text)}</a> </div>`;
                    } else {
                        alinkAllText += alink + '\r\n';
                        content += `<div class="pl-item">
                                <div class="pl-item-name listener-tip" data-size="${size}">${filename}</div>
                                <a class="pl-item-link pl-a listener-link-aria" href="${alink}" title="点击复制aria2c链接" data-filename="${filename}" data-link="${alink}">${decodeURIComponent(alink)}</a> </div>`;
                    }
                }
                if (mode === 'rpc') {
                    content += `<div class="pl-item">
                                <div class="pl-item-name listener-tip" data-size="${size}">${filename}</div>
                                <button class="pl-item-link listener-link-rpc pl-btn-primary pl-btn-info" data-filename="${filename}" data-link="${dlink}"><em class="icon icon-device"></em><span style="margin-left: 5px;">推送到 RPC 下载器</span></button></div>`;
                }
                if (mode === 'curl') {
                    let alink = this.convertLinkToCurl(dlink, filename, pan.ua);
                    if (typeof (alink) === 'object') {
                        content += `<div class="pl-item">
                                <div class="pl-item-name listener-tip" data-size="${size}">${filename}</div>
                                <a class="pl-item-link pl-a" target="_blank" href="${alink.link}" title="点击复制curl链接" data-filename="${filename}" data-link="${alink.link}">${decodeURIComponent(alink.text)}</a> </div>`;
                    } else {
                        alinkAllText += alink + '\r\n';
                        content += `<div class="pl-item">
                                <div class="pl-item-name listener-tip" data-size="${size}">${filename}</div>
                                <a class="pl-item-link pl-a listener-link-aria" href="${alink}" title="点击复制curl链接" data-filename="${filename}" data-link="${alink}">${decodeURIComponent(alink)}</a> </div>`;
                    }
                }
                if (mode === 'bc') {
                    let alink = this.convertLinkToBC(dlink, filename, pan.ua);
                    if (typeof (alink) === 'object') {
                        content += `<div class="pl-item">
                                <div class="pl-item-name listener-tip" data-size="${size}">${filename}</div>
                                <a class="pl-item-link pl-a" href="${decodeURIComponent(alink.link)}" title="点击用比特彗星下载" data-filename="${filename}" data-link="${alink}">${decodeURIComponent(alink.text)}</a> </div>`;
                    } else {
                        alinkAllText += alink + '\r\n';
                        content += `<div class="pl-item">
                                <div class="pl-item-name listener-tip" data-size="${size}">${filename}</div>
                                <a class="pl-item-link pl-a" href="${decodeURIComponent(alink)}" title="点击用比特彗星下载" data-filename="${filename}" data-link="${alink}">${decodeURIComponent(alink)}</a> </div>`;
                    }
                }
            });
            content += '</div>';
            if (mode === 'aria')
                content += `<div class="pl-extra"><button class="pl-btn-primary listener-copy-all" data-link="${alinkAllText}">复制全部链接</button></div>`;
            if (mode === 'rpc') {
                let rpc = base.getValue('setting_rpc_domain') + ':' + base.getValue('setting_rpc_port') + base.getValue('setting_rpc_path');
                content += `<div class="pl-extra"><button class="pl-btn-primary listener-send-rpc">发送全部链接</button><button title="${rpc}" class="pl-btn-primary pl-btn-warning listener-open-setting" style="margin-left: 10px">设置 RPC 参数(当前为:${rpc})</button><button class="pl-btn-primary pl-btn-success listener-rpc-task" style="margin-left: 10px;display: none">查看下载任务</button></div>`;
            }
            if (mode === 'curl')
                content += `<div class="pl-extra"><button class="pl-btn-primary listener-copy-all" data-link="${alinkAllText}">复制全部链接</button><button class="pl-btn-primary pl-btn-warning listener-open-setting" style="margin-left: 10px;">设置终端类型(当前为:${terminalType[base.getValue('setting_terminal_type')]})</button></div>`;
            return content;
        },

        async sendLinkToRPC(filename, link) {
            let rpc = {
                domain: base.getValue('setting_rpc_domain'),
                port: base.getValue('setting_rpc_port'),
                path: base.getValue('setting_rpc_path'),
                token: base.getValue('setting_rpc_token'),
                dir: base.getValue('setting_rpc_dir'),
            };
            let BDUSS = this.getBDUSS();
            if (!BDUSS) return 'assistant';

            let url = `${rpc.domain}:${rpc.port}${rpc.path}`;
            let rpcData = {
                id: new Date().getTime(),
                jsonrpc: '2.0',
                method: 'aria2.addUri',
                params: [`token:${rpc.token}`, [link], {
                    dir: rpc.dir,
                    out: filename,
                    header: [`User-Agent: ${pan.ua}`, `Cookie: BDUSS=${BDUSS}`]
                }]
            };
            try {
                let res = await base.post(url, rpcData, {"User-Agent": pan.ua}, '');
                if (res.result) return 'success';
                return 'fail';
            } catch (e) {
                return 'fail';
            }
        },

        getSelectedList() {
            try {
                return require('system-core:context/context.js').instanceForSystem.list.getSelected();
            } catch (e) {
                return document.querySelector('.wp-s-core-pan').__vue__.selectedList;
            }
        },

        getLogid() {
            let ut = require("system-core:context/context.js").instanceForSystem.tools.baseService;
            return ut.base64Encode(base.getCookie("BAIDUID"));
        },

        getShareData() {
            let res = locals.dump();
            params.shareType = 'secret';
            params.sign = '';
            params.timestamp = '';
            params.bdstoken = res.bdstoken.value;
            params.channel = 'chunlei';
            params.clienttype = 0;
            params.web = 1;
            params.app_id = 250528;
            params.encrypt = 0;
            params.product = 'share';
            params.logid = this.getLogid();
            params.primaryid = res.shareid.value;
            params.uk = res.share_uk.value;
            params.shareType === 'secret' && (params.extra = this._getExtra());
            params.surl = this._getSurl();
        },

        detectPage() {
            let path = location.pathname;
            if (/^\/disk\/home/.test(path)) return 'home';
            if (/^\/disk\/main/.test(path)) return 'main';
            if (/^\/(s|share)\//.test(path)) return 'share';
            return '';
            return '';
        },

        showMainDialog(title, html, footer) {
            Swal.fire({
                title,
                html,
                footer,
                allowOutsideClick: false,
                showCloseButton: true,
                showConfirmButton: false,
                position: 'top',
                width,
                padding: '15px 20px 5px',
                customClass,
            }).then(() => {
                this._resetData();
            });
        },

        async initPanLinker() {
            base.initDefaultConfig();
            base.addPanLinkerStyle();
            pt = this.detectPage();
            let res = await base.post
            (`https://api.youxiaohou.com/config?ver=${version}&a=${author}`, {}, {}, 'text');
            pan = JSON.parse(base.d(res));
            Object.freeze && Object.freeze(pan);
            console.log(pan);
            pan.num === base.getValue('setting_init_code') ? this.addButton() : this.addInitButton();
            base.createTip();
            base.registerMenuCommand();
        }
    };

    let main = {
        init() {
            if (/(pan|yun).baidu.com/.test(location.host)) {
                baidu.initPanLinker();
            }
        }
    };

    main.init();
    }
    }
})();