Greasy Fork is available in English.

oo.movie( VIP视频解析 + 豆瓣影视页净化 )

VIP视频解析 + 豆瓣影视页净化 + 净化内置VIP解析源广告。精选解析,少广告,享受VIP的原画观影体验。手机端与电脑端通用。

目前为 2020-01-23 提交的版本。查看 最新版本

// ==UserScript==
// @name         oo.movie( VIP视频解析 + 豆瓣影视页净化 )
// @version      20.1.27
// @description  VIP视频解析 + 豆瓣影视页净化 + 净化内置VIP解析源广告。精选解析,少广告,享受VIP的原画观影体验。手机端与电脑端通用。
// @author       (o˘◡˘o)
// @namespace    https://gitee.com/ecruos/oo
// @icon         https://gw.alicdn.com/tfs/TB1ZvwSycbpK1RjSZFyXXX_qFXa-48-48.ico
// @license      GPL License
// @include      *
// ==/UserScript==

// 用户自定义 VIP视频解析接口 → 后面自动补全要解析的网址
var CUSTOM_VIP_URLS = ``;

// 搜索源 → ** 表示搜索时的关键词
var SEARCH_SOURCES = `

  爱奇艺  https://m.iqiyi.com/search.html?source=default&key=**  https://so.iqiyi.com/so/q_**

  腾讯  https://m.v.qq.com/search.html?act=0&keyWord=**   https://v.qq.com/x/search/?q=**

  哔哩哔哩  https://m.bilibili.com/search.html?keyword=**  https://search.bilibili.com/all?keyword=**

  优酷  https://www.soku.com/m/y/video?q=**  https://so.youku.com/search_video/q_**

  搜狐  https://m.tv.sohu.com/upload/h5/m/mso.html?key=**  https://so.tv.sohu.com/mts?wd=**

  芒果  https://m.mgtv.com/so/?k=**  https://so.mgtv.com/so/k-**

  咪咕  http://www.miguvideo.com/mgs/website/prd/search.html?keywords=**  http://m.miguvideo.com/mgs/msite/prd/search.html?#**

  乐视  http://m.le.com/search?wd=**  http://so.le.com/s?wd=**

  奈菲  https://www.nfmovies.com/search.php?page=1&searchword=**

  残月  http://ys.23yue.cn/seacher-**.html

  云播  https://m.yunbtv.com/vodsearch/-------------.html?wd=**  https://www.yunbtv.com/vodsearch/-------------.html?wd=**

  飞极速  http://m.feijisu8.com/search/**  http://feijisu8.com/search/**

  独播  https://www.duboku.net/vodsearch/-------------.html?wd=**

  拾伍  https://www.shiwutv.com/vodsearch/-------------.html?wd=**

  大全  http://01th.net/search/?wd=**

  樱花  http://m.yhdm.tv/search/**/  http://www.yhdm.tv/search/**/

  1090  https://1090ys.com/?c=search&sort=addtime&order=desc&page=1&wd=**

  APP  https://app.movie/index.php/vod/search.html?wd=**

  八兔  http://www.8tutv.com/search/?category=0&q=**

  Vipku  http://www.2n65.cn/index.php/vod/search.html?wd=**

  影迷  https://www.yingmiwo.com/vodsearch.html?wd=**

`;

/**
 * VIP解析 + 换站搜索 + 网站净化
 *
 * name: 用作说明
 * match: 匹配网址,可以是正则,也可以是字符串
 * hide: 要净化隐藏掉的css选择器
 * css: 注入css
 * jump: 在搜索页要添加 换站搜索 的css选择器
 * keyword: 在搜索页获取标题,用于 换站搜索 的搜索词
 * vip: 在播放页要添加 Vip解析列表 的css选择器
 * title: 在播放页获取标题,用于 换站搜索 的搜索词
 * fixUrl: 解析时对播放网址进行变换,比如将手机端播放网址变成电脑端播放网址
 */
var BETTER_ADDONS = [
  // 正版源
  {
    name: '哔哩哔哩·搜索',
    match: /bilibili.com\/search|search.bilibili.com/,
    jump: '#all-list | append, .index__board__src-search-board-'
  },
  {
    name: '哔哩哔哩 - m',
    match: /m\.bilibili\.com/,
    sign: '.mg-footer-copyright',
    hide:
      '.index__openAppBtn__src-commonComponent-topArea-, .index__container__src-commonComponent-bottomOpenApp-, .bili-app, .recom-wrapper, .b-footer, .open-app-bar, .open-app-float, .more-review-wrapper'
  },
  {
    name: '腾讯·搜索',
    match: /v.qq.com\/(\w+\/)?search/,
    jump: '#result, .wrapper_main > .mod_pages',
    sign: '.copyright',
    hide: '.tvp_app_bar'
  },
  {
    name: '腾讯·播放页',
    match: /v\.qq\.com\/(cover|play|x\/cover|x\/page|x\/play|x\/m\/cover|x\/m\/page|x\/m\/play)/,
    vip: '#vip_title, .U_box_bg_a, .player_headline, .mod_video_info',
    title: '.mod_video_info .video_title, ._main_title, .player_title',
    fixUrl(url) {
      if (url.includes('cid=')) {
        var cid = url.match(/cid=(\w+)/)[1];
        var vid = url.match(/vid=(\w+)/);
        vid = vid ? '/' + vid[1] : '';
        return `https://v.qq.com/x/cover/${cid}${vid}.html`;
      }
      return url;
    },
    hide:
      '.mod_source, .video_function, .mod_promotion, #vip_privilege, #vip_activity, .U_bg_b, .btn_open_v, .btn_openapp, #vip_header, .btn_user_hd, .mod_sideslip_privileges, .mod_game_rec, .mod_source, .mod_promotion, .mod_sideslip_h, .btn_open, .btn_pay, .mod_box_lastview, .mod_vip_popup, .mod_vip_popup + .mask_layer',
    css: `
body, #vip_title {
  padding-bottom: 0 !important;
}

.mod_episodes_numbers.is-vip .item {
  width: auto;
  padding: 0 1em;
}

.U_html_bg .container {
  padding-bottom: 30px;
}

.mod_play .mod_player_viptips .btn_try {
  left: 30%;
}`
  },
  {
    name: '爱奇艺·搜索',
    match: /m.iqiyi.com\/search|so.iqiyi.com/,
    jump: '-.m-box, .search-con-page',
    sign: '.m-footer',
    hide: '.btn-ticket, .btn-yuyue, .btn-download, .m-iqyDown'
  },
  {
    name: '爱奇艺·播放页',
    match: /\.iqiyi\.com\/(a_|v_|w_|adv)/,
    vip: 'div[name="m-videoInfo"], #block-C',
    title: '#widget-videotitle, .c-title-link, .player-title a',
    sign: '.m-footer',
    hide:
      '.m-iqyDown, .header-login + div, .m-video-action, div[name="m-vipRights"], div[name="m-extendBar"], .m-iqylink-diversion, .m-iqylink-guide, .c-openVip, .c-score-btn, .m-videoUser-spacing, .m-pp-entrance, .m-hotWords-bottom, div[template-type="ALBUM"] .m-player-tip',
    css: `
.page_play {
  padding-bottom: 0;
}

div[name="m-videoInfo"] {
  padding-top: 1em;
}

.m-box-items .oo-album-item {
  border-radius: 0.05rem;
  background-color: #e9ecef;
  color: #495057;
  padding: 0.5em 1em;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  margin: 0.25em;
  font-weight: bold;
}

.m-video-player #oo-player {
  padding-top: 56.25%;
  top: 50%;
  transform: translateY(-50%);
}
`
  },
  {
    name: '优酷·搜索',
    match: /soku.com\/m.+q=|so.youku.com\/search_video/,
    jump: '#bpmodule-main, .yk_result'
  },
  {
    name: '优酷·播放页',
    match: /m\.youku\.com\/a|m\.youku\.com\/v|v\.youku\.com\/v_/,
    vip: '.h5-detail-info, .player-title',
    title:
      '.player-title .subtitle a, .module-name, .anthology-title-wrap .title, .title-link',
    sign: '.copyright',
    hide:
      '.h5-detail-guide, .h5-detail-ad, .brief-btm, .smartBannerBtn, .cmt-user-action, #right-title-ad-banner',
    css: `
#bpmodule-playpage-lefttitle {
  height: auto !important;
}`
  },
  {
    name: '芒果·搜索',
    match: /m.mgtv.com\/so\/|so.mgtv.com\/so/,
    jump: '#paginator, .result-box .media',
    keyword: /k[-=]([^&\?\/\.]+)/
  },
  {
    name: '芒果·播放页',
    match: /\.mgtv\.com\/(b|l)\//,
    vip: ['.xuanji | before', '.v-panel-box'],
    title: '.v-panel-title, .vt-txt',
    sign: '.mg-footer-copyright',
    hide:
      '.ad-banner, .video-area-bar, .video-error .btn, .m-vip-list, .m-vip-list + div:not([class]), .toapp, .video-comment .ft, .mg-app-swip'
  },
  {
    name: '搜狐·搜索',
    match: /m.tv.sohu.com.+key=|so.tv.sohu.com.+wd=/,
    jump: '.ssMore | before, .select-container | before'
  },
  {
    name: '搜狐·播放页',
    match: /film\.sohu\.com\/album\/|tv\.sohu\.com\/v/,
    vip: '.title-wrap, .videoInfo',
    title: '#vinfobox h2, .t-info',
    sign: '.links',
    hide:
      '.actv-banner, .btn-xz-app, .twinfo_iconwrap, .btn-comment-app, #ad_banner, .advertise, .main-ad-view-box, .foot.sohu-swiper, .app-star-vbox, .app-guess-vbox, .main-rec-view-box, .app-qianfan-box, .comment-empty-bg, .copyinfo, .ph-vbox',
    css: `
.comment-empty-txt {
  margin-bottom: 0;
}

.app-view-box + footer {
  padding: 0;
  opacity: 0.5;
}`
  },
  {
    name: '乐视·搜索',
    match: /m.le.com\/search|so.le.com\/s/,
    jump: '.column_tit | before, .Relate | before'
  },
  {
    name: '乐视·播放页',
    match: /\.le\.com\/(ptv\/vplay\/|vplay_)/,
    vip: '.introduction_box, .briefIntro_left .info_list',
    title: '.#j-introduction h2, .tj_tit, .briefIntro_tit',
    hide: '.gamePromotion'
  },
  {
    name: '咪咕.cn·搜索',
    match: /\.migu\.cn\/search\.html/,
    jump: '.pagination, .copyright | before',
    keyword: /content=([^&\?\/\.]+)/,
    hide: '.down-btn'
  },
  {
    name: '咪咕·搜索',
    match: /\.miguvideo\.com\/.*search.html/,
    jump: '.search-pagination, .search-main',
    keyword: /keywords=([^&\?\/\.]+)|\?.*#([^&\?\/\.]+)/
  },
  {
    name: '咪咕·播放页',
    match: /miguvideo\.com\/.+\/detail\.html/,
    vip: '.playerFooter, .programgroup',
    title: '.left-box .title, .episodeTitle, .video_title',
    hide: '.group-item[name*="广告"], .openClient'
  },
  {
    name: 'PPTV·搜索',
    match: /sou.pptv.com\/s_video.+kw=|msou.pptv.com\/s_video\/.+keyword=/,
    jump: '.pagination, .zhengpian-box | append'
  },
  {
    name: 'PPTV·播放页',
    match: /(v|m)\.pptv\.com\/show\//,
    vip: ['.m .cf', '.vod-tit'],
    hide:
      '.w-video-vastad, #video-download-game, div[class*="openapp"], div[class*="side-adv"], div[id*="afp_"], div[id*="-afp"], iframe[src*="/game/"], .afpPosition, .download-iconbar'
  },
  {
    name: '华数·搜索',
    match: /wasu\.cn\/.+Search\/.+k=/,
    jump: '#topVod'
  },
  {
    name: '华数·播放页',
    match: /wasu\.cn\/.*play\/show\//,
    vip: '.movie_title',
    hide: 'div[id*="BAIDU"], .player_menu_con, body > div[style*="fixed"]'
  },
  {
    name: '1905·搜索',
    match: /\.1905\.com\/(Search|search)/,
    jump: '.pagination, #new_page'
  },
  {
    name: '1905·播放页',
    match: /1905.com\/play/,
    vip: '#movie_info, .player-nav',
    hide:
      '#app_store, .openMembershipBtn, div[id] > iframe, .pv2-advertisement, .open-app',
    css: `
#movie_info {
  margin-top: 1em;
}`
  },

  // 优质源
  {
    name: '奈菲·搜索',
    match: 'nfmovies.com/search',
    jump: '.hy-page',
    keyword($) {
      return $('.hy-video-head .text-color')
        .eq(1)
        .text()
        .replace(/^“|”$/g, '');
    }
  },
  {
    name: '奈菲',
    match: /nfmovies\.com/,
    hide: 'img[src*="tu/ad"], .clearfix a[onclick] img',
    css: `
#adleft, #adright {
  visibility: hidden !important;
  position: absolute !important;
  left: -9999px !important;
}`
  },
  {
    name: '飞极速·搜索',
    match: 'feijisu8.com/search',
    jump: '#result'
  },
  {
    name: '飞极速',
    match: /feijisu8\.com/,
    hide: '.index-top ~ div, .v-top ~ div[id], .footer ~ div, .footer ~ brde'
  },
  {
    name: '樱花动漫·搜索',
    match: 'yhdm.tv/search',
    jump: '.footer | before, .foot | before'
  },
  {
    name: '樱花动漫',
    match: /yhdm\.tv/,
    hide:
      '.footer ~ div, a[href*="elfdoll.cn"], .head + .area ~ div:not([class])'
  },
  {
    name: '1090影视·搜索',
    match: /1090ys.com\/.+c=search/,
    jump: '.stui-page, .stui-pannel'
  },
  {
    name: '1090影视',
    match: /1090ys\.com/,
    hide: '.container ~ *[id]'
  },
  {
    name: '云播·搜索',
    match: 'yunbtv.com/vodsearch',
    jump: '.pager',
    keyword: '.breadcrumb font'
  },
  {
    name: '残月·搜索',
    match: 'ys.23yue.cn/seacher',
    jump: '.stui-pannel_bd > .stui-vodlist__media'
  },
  {
    name: '独播库·搜索',
    match: 'duboku.net/vodsearch',
    jump: '.myui-panel_bd > .myui-vodlist__media'
  },
  {
    name: '拾伍·搜索',
    match: 'shiwutv.com/vodsearch',
    jump: '.stui-page, .stui-pannel'
  },
  {
    name: '零一·搜索',
    match: '01th.net/search',
    jump: '.stui-page, .stui-pannel'
  },
  {
    name: 'APP·搜索',
    match: 'app.movie/index.php/vod/search.html',
    jump: '.stui-page, .stui-pannel'
  },
  {
    name: '八兔·搜索',
    match: '8tutv.com/search',
    jump: '.ys'
  },
  {
    name: 'Vipku·搜索',
    match: /2n65.cn\/.+\/search/,
    jump: '.left_row | append'
  },
  {
    name: '影迷窝·搜索',
    match: 'yingmiwo.com/vodsearch',
    jump: '.left_row | append'
  },
  {
    name: '影迷窝',
    match: /yingmiwo\.com/,
    hide: '#bottom_ads, .ads_box'
  }
];

// 搜索时标题净化,比如去掉 第N季 第N集
var PurifyKeywordRegex = /\s*第.{1,3}[季集]\s*$/;

// 从搜索网址匹配搜索词
var CommonSearchKeywordRegex = /(wd|key|keyword|keyWord|kw|q)=([^&\?\/\.-]+)|(search\/|seacher-|q_)([^&\?\/\.-]+)/;

// 通用净化样式
var PurifyStyle = `
display: none !important;
visibility: hidden !important;
position: absolute !important;
left: -9999px !important;
opacity: 0 !important;
pointer-events: none !important;
z-index: -9999 !important;`;

// 支持原网页解析的正版网站
var InnerUrlRegex = /v\.qq\.com|\.(iqiyi|youku|mgtv|miguvideo)\.com/;

// 正版网站原网页解析时替换的播放器选择器
var PlayerSelector =
  '#iframaWrapper, #mgtv-player-wrap, #wPlayer, #video-box, .g-play .video-area, #mod_player, #player, .m-video-player, .site_player';

!function(){var n="20.1.27",t=!!window.GM;if(!(window.top!==window.self||t&&location.href.includes("doubleclick.net"))){var e="(o˘◡˘o) oo.movie",i="oo-movie",o=document.getElementsByTagName("html")[0];if(o.getAttribute(i)!==e){var r=/[\/\.](okjx|071811|aism|canzhisong|bm6ig|380k|du2|78sy|dybhn|yingxiangbao|7cyd|1717yun|playm3u8|ckmov|jiexi|heimijx|sigujx)\.(\w{2,3})\//,a=/[\/\.](aism)\.(\w{2,3})\//,s=!1,c=decodeURIComponent,l=window.VIP_URLS||CUSTOM_VIP_URLS||"";SEARCH_SOURCES=window.SEARCH_SOURCES||SEARCH_SOURCES;var u=function(){var n,t,e,i,o,r,a=[],s=a.concat,c=a.filter,l=a.slice,u=window.document,p={},f={},h={"column-count":1,columns:1,"font-weight":1,"line-height":1,opacity:1,"z-index":1,zoom:1},d=/^\s*<(\w+|!)[^>]*>/,m=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,v=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,g=/^(?:body|html)$/i,y=/([A-Z])/g,b=["val","css","html","text","data","width","height","offset"],x=u.createElement("table"),w=u.createElement("tr"),E={tr:u.createElement("tbody"),tbody:x,thead:x,tfoot:x,td:w,th:w,"*":u.createElement("div")},A=/complete|loaded|interactive/,F=/^[\w-]*$/,j={},k=j.toString,C={},_=u.createElement("div"),S={tabindex:"tabIndex",readonly:"readOnly",for:"htmlFor",class:"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},T=Array.isArray||function(n){return n instanceof Array};function N(n){return null==n?String(n):j[k.call(n)]||"object"}function $(n){return"function"==N(n)}function q(n){return null!=n&&n==n.window}function D(n){return null!=n&&n.nodeType==n.DOCUMENT_NODE}function O(n){return"object"==N(n)}function P(n){return O(n)&&!q(n)&&Object.getPrototypeOf(n)==Object.prototype}function R(n){var t=!!n&&"length"in n&&n.length,i=e.type(n);return"function"!=i&&!q(n)&&("array"==i||0===t||"number"==typeof t&&t>0&&t-1 in n)}function z(n){return n.replace(/::/g,"/").replace(/([A-Z]+)([A-Z][a-z])/g,"$1_$2").replace(/([a-z\d])([A-Z])/g,"$1_$2").replace(/_/g,"-").toLowerCase()}function B(n){return n in f?f[n]:f[n]=new RegExp("(^|\\s)"+n+"(\\s|$)")}function I(n,t){return"number"!=typeof t||h[z(n)]?t:t+"px"}function L(n){return"children"in n?l.call(n.children):e.map(n.childNodes,function(n){if(1==n.nodeType)return n})}function M(n,t){var e,i=n?n.length:0;for(e=0;e<i;e++)this[e]=n[e];this.length=i,this.selector=t||""}function U(n,t){return null==t?e(n):e(n).filter(t)}function V(n,t,e,i){return $(t)?t.call(n,e,i):t}function H(n,t,e){null==e?n.removeAttribute(t):n.setAttribute(t,e)}function Z(t,e){var i=t.className||"",o=i&&i.baseVal!==n;if(e===n)return o?i.baseVal:i;o?i.baseVal=e:t.className=e}function J(n){try{return n?"true"==n||"false"!=n&&("null"==n?null:+n+""==n?+n:/^[\[\{]/.test(n)?e.parseJSON(n):n):n}catch(t){return n}}return C.matches=function(n,t){if(!t||!n||1!==n.nodeType)return!1;var e=n.matches||n.webkitMatchesSelector||n.mozMatchesSelector||n.oMatchesSelector||n.matchesSelector;if(e)return e.call(n,t);var i,o=n.parentNode,r=!o;return r&&(o=_).appendChild(n),i=~C.qsa(o,t).indexOf(n),r&&_.removeChild(n),i},o=function(n){return n.replace(/-+(.)?/g,function(n,t){return t?t.toUpperCase():""})},r=function(n){return c.call(n,function(t,e){return n.indexOf(t)==e})},C.fragment=function(t,i,o){var r,a,s;return m.test(t)&&(r=e(u.createElement(RegExp.$1))),r||(t.replace&&(t=t.replace(v,"<$1></$2>")),i===n&&(i=d.test(t)&&RegExp.$1),i in E||(i="*"),(s=E[i]).innerHTML=""+t,r=e.each(l.call(s.childNodes),function(){s.removeChild(this)})),P(o)&&(a=e(r),e.each(o,function(n,t){b.indexOf(n)>-1?a[n](t):a.attr(n,t)})),r},C.Z=function(n,t){return new M(n,t)},C.isZ=function(n){return n instanceof C.Z},C.init=function(t,i){var o,r;if(!t)return C.Z();if("string"==typeof t)if("<"==(t=t.trim())[0]&&d.test(t))o=C.fragment(t,RegExp.$1,i),t=null;else{if(i!==n)return e(i).find(t);o=C.qsa(u,t)}else{if($(t))return e(u).ready(t);if(C.isZ(t))return t;if(T(t))r=t,o=c.call(r,function(n){return null!=n});else if(O(t))o=[t],t=null;else if(d.test(t))o=C.fragment(t.trim(),RegExp.$1,i),t=null;else{if(i!==n)return e(i).find(t);o=C.qsa(u,t)}}return C.Z(o,t)},(e=function(n,t){return C.init(n,t)}).extend=function(e){var i,o=l.call(arguments,1);return"boolean"==typeof e&&(i=e,e=o.shift()),o.forEach(function(o){!function e(i,o,r){for(t in o)r&&(P(o[t])||T(o[t]))?(P(o[t])&&!P(i[t])&&(i[t]={}),T(o[t])&&!T(i[t])&&(i[t]=[]),e(i[t],o[t],r)):o[t]!==n&&(i[t]=o[t])}(e,o,i)}),e},C.qsa=function(n,t){var e,i="#"==t[0],o=!i&&"."==t[0],r=i||o?t.slice(1):t,a=F.test(r);return n.getElementById&&a&&i?(e=n.getElementById(r))?[e]:[]:1!==n.nodeType&&9!==n.nodeType&&11!==n.nodeType?[]:l.call(a&&!i&&n.getElementsByClassName?o?n.getElementsByClassName(r):n.getElementsByTagName(t):n.querySelectorAll(t))},e.contains=u.documentElement.contains?function(n,t){return n!==t&&n.contains(t)}:function(n,t){for(;t&&(t=t.parentNode);)if(t===n)return!0;return!1},e.type=N,e.isFunction=$,e.isWindow=q,e.isArray=T,e.isPlainObject=P,e.isEmptyObject=function(n){var t;for(t in n)return!1;return!0},e.isNumeric=function(n){var t=Number(n),e=typeof n;return null!=n&&"boolean"!=e&&("string"!=e||n.length)&&!isNaN(t)&&isFinite(t)||!1},e.inArray=function(n,t,e){return a.indexOf.call(t,n,e)},e.camelCase=o,e.trim=function(n){return null==n?"":String.prototype.trim.call(n)},e.uuid=0,e.support={},e.expr={},e.noop=function(){},e.map=function(n,t){var i,o,r,a,s=[];if(R(n))for(o=0;o<n.length;o++)null!=(i=t(n[o],o))&&s.push(i);else for(r in n)null!=(i=t(n[r],r))&&s.push(i);return(a=s).length>0?e.fn.concat.apply([],a):a},e.each=function(n,t){var e,i;if(R(n)){for(e=0;e<n.length;e++)if(!1===t.call(n[e],e,n[e]))return n}else for(i in n)if(!1===t.call(n[i],i,n[i]))return n;return n},e.grep=function(n,t){return c.call(n,t)},window.JSON&&(e.parseJSON=JSON.parse),e.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(n,t){j["[object "+t+"]"]=t.toLowerCase()}),e.fn={constructor:C.Z,length:0,forEach:a.forEach,reduce:a.reduce,push:a.push,sort:a.sort,splice:a.splice,indexOf:a.indexOf,concat:function(){var n,t,e=[];for(n=0;n<arguments.length;n++)t=arguments[n],e[n]=C.isZ(t)?t.toArray():t;return s.apply(C.isZ(this)?this.toArray():this,e)},map:function(n){return e(e.map(this,function(t,e){return n.call(t,e,t)}))},slice:function(){return e(l.apply(this,arguments))},ready:function(n){return A.test(u.readyState)&&u.body?n(e):u.addEventListener("DOMContentLoaded",function(){n(e)},!1),this},get:function(t){return t===n?l.call(this):this[t>=0?t:t+this.length]},toArray:function(){return this.get()},size:function(){return this.length},remove:function(){return this.each(function(){null!=this.parentNode&&this.parentNode.removeChild(this)})},each:function(n){return a.every.call(this,function(t,e){return!1!==n.call(t,e,t)}),this},filter:function(n){return $(n)?this.not(this.not(n)):e(c.call(this,function(t){return C.matches(t,n)}))},add:function(n,t){return e(r(this.concat(e(n,t))))},is:function(n){return this.length>0&&C.matches(this[0],n)},not:function(t){var i=[];if($(t)&&t.call!==n)this.each(function(n){t.call(this,n)||i.push(this)});else{var o="string"==typeof t?this.filter(t):R(t)&&$(t.item)?l.call(t):e(t);this.forEach(function(n){o.indexOf(n)<0&&i.push(n)})}return e(i)},has:function(n){return this.filter(function(){return O(n)?e.contains(this,n):e(this).find(n).size()})},eq:function(n){return-1===n?this.slice(n):this.slice(n,+n+1)},first:function(){var n=this[0];return n&&!O(n)?n:e(n)},last:function(){var n=this[this.length-1];return n&&!O(n)?n:e(n)},find:function(n){var t=this;return n?"object"==typeof n?e(n).filter(function(){var n=this;return a.some.call(t,function(t){return e.contains(t,n)})}):1==this.length?e(C.qsa(this[0],n)):this.map(function(){return C.qsa(this,n)}):e()},closest:function(n,t){var i=[],o="object"==typeof n&&e(n);return this.each(function(e,r){for(;r&&!(o?o.indexOf(r)>=0:C.matches(r,n));)r=r!==t&&!D(r)&&r.parentNode;r&&i.indexOf(r)<0&&i.push(r)}),e(i)},parents:function(n){for(var t=[],i=this;i.length>0;)i=e.map(i,function(n){if((n=n.parentNode)&&!D(n)&&t.indexOf(n)<0)return t.push(n),n});return U(t,n)},parent:function(n){return U(r(this.pluck("parentNode")),n)},children:function(n){return U(this.map(function(){return L(this)}),n)},contents:function(){return this.map(function(){return this.contentDocument||l.call(this.childNodes)})},siblings:function(n){return U(this.map(function(n,t){return c.call(L(t.parentNode),function(n){return n!==t})}),n)},empty:function(){return this.each(function(){this.innerHTML=""})},pluck:function(n){return e.map(this,function(t){return t[n]})},show:function(){return this.each(function(){var n,t,e;"none"==this.style.display&&(this.style.display=""),"none"==getComputedStyle(this,"").getPropertyValue("display")&&(this.style.display=(n=this.nodeName,p[n]||(t=u.createElement(n),u.body.appendChild(t),e=getComputedStyle(t,"").getPropertyValue("display"),t.parentNode.removeChild(t),"none"==e&&(e="block"),p[n]=e),p[n]))})},replaceWith:function(n){return this.before(n).remove()},wrap:function(n){var t=$(n);if(this[0]&&!t)var i=e(n).get(0),o=i.parentNode||this.length>1;return this.each(function(r){e(this).wrapAll(t?n.call(this,r):o?i.cloneNode(!0):i)})},wrapAll:function(n){if(this[0]){var t;for(e(this[0]).before(n=e(n));(t=n.children()).length;)n=t.first();e(n).append(this)}return this},wrapInner:function(n){var t=$(n);return this.each(function(i){var o=e(this),r=o.contents(),a=t?n.call(this,i):n;r.length?r.wrapAll(a):o.append(a)})},unwrap:function(){return this.parent().each(function(){e(this).replaceWith(e(this).children())}),this},clone:function(){return this.map(function(){return this.cloneNode(!0)})},hide:function(){return this.css("display","none")},toggle:function(t){return this.each(function(){var i=e(this);(t===n?"none"==i.css("display"):t)?i.show():i.hide()})},prev:function(n){return e(this.pluck("previousElementSibling")).filter(n||"*")},next:function(n){return e(this.pluck("nextElementSibling")).filter(n||"*")},html:function(n){return 0 in arguments?this.each(function(t){var i=this.innerHTML;e(this).empty().append(V(this,n,t,i))}):0 in this?this[0].innerHTML:null},text:function(n){return 0 in arguments?this.each(function(t){var e=V(this,n,t,this.textContent);this.textContent=null==e?"":""+e}):0 in this?this.pluck("textContent").join(""):null},attr:function(e,i){var o;return"string"!=typeof e||1 in arguments?this.each(function(n){if(1===this.nodeType)if(O(e))for(t in e)H(this,t,e[t]);else H(this,e,V(this,i,n,this.getAttribute(e)))}):0 in this&&1==this[0].nodeType&&null!=(o=this[0].getAttribute(e))?o:n},removeAttr:function(n){return this.each(function(){1===this.nodeType&&n.split(" ").forEach(function(n){H(this,n)},this)})},prop:function(n,t){return n=S[n]||n,1 in arguments?this.each(function(e){this[n]=V(this,t,e,this[n])}):this[0]&&this[0][n]},removeProp:function(n){return n=S[n]||n,this.each(function(){delete this[n]})},data:function(t,e){var i="data-"+t.replace(y,"-$1").toLowerCase(),o=1 in arguments?this.attr(i,e):this.attr(i);return null!==o?J(o):n},val:function(n){return 0 in arguments?(null==n&&(n=""),this.each(function(t){this.value=V(this,n,t,this.value)})):this[0]&&(this[0].multiple?e(this[0]).find("option").filter(function(){return this.selected}).pluck("value"):this[0].value)},offset:function(n){if(n)return this.each(function(t){var i=e(this),o=V(this,n,t,i.offset()),r=i.offsetParent().offset(),a={top:o.top-r.top,left:o.left-r.left};"static"==i.css("position")&&(a.position="relative"),i.css(a)});if(!this.length)return null;if(u.documentElement!==this[0]&&!e.contains(u.documentElement,this[0]))return{top:0,left:0};var t=this[0].getBoundingClientRect();return{left:t.left+window.pageXOffset,top:t.top+window.pageYOffset,width:Math.round(t.width),height:Math.round(t.height)}},css:function(n,i){if(arguments.length<2){var r=this[0];if("string"==typeof n){if(!r)return;return r.style[o(n)]||getComputedStyle(r,"").getPropertyValue(n)}if(T(n)){if(!r)return;var a={},s=getComputedStyle(r,"");return e.each(n,function(n,t){a[t]=r.style[o(t)]||s.getPropertyValue(t)}),a}}var c="";if("string"==N(n))i||0===i?c=z(n)+":"+I(n,i):this.each(function(){this.style.removeProperty(z(n))});else for(t in n)n[t]||0===n[t]?c+=z(t)+":"+I(t,n[t])+";":this.each(function(){this.style.removeProperty(z(t))});return this.each(function(){this.style.cssText+=";"+c})},index:function(n){return n?this.indexOf(e(n)[0]):this.parent().children().indexOf(this[0])},hasClass:function(n){return!!n&&a.some.call(this,function(n){return this.test(Z(n))},B(n))},addClass:function(n){return n?this.each(function(t){if("className"in this){i=[];var o=Z(this);V(this,n,t,o).split(/\s+/g).forEach(function(n){e(this).hasClass(n)||i.push(n)},this),i.length&&Z(this,o+(o?" ":"")+i.join(" "))}}):this},removeClass:function(t){return this.each(function(e){if("className"in this){if(t===n)return Z(this,"");i=Z(this),V(this,t,e,i).split(/\s+/g).forEach(function(n){i=i.replace(B(n)," ")}),Z(this,i.trim())}})},toggleClass:function(t,i){return t?this.each(function(o){var r=e(this);V(this,t,o,Z(this)).split(/\s+/g).forEach(function(t){(i===n?!r.hasClass(t):i)?r.addClass(t):r.removeClass(t)})}):this},scrollTop:function(t){if(this.length){var e="scrollTop"in this[0];return t===n?e?this[0].scrollTop:this[0].pageYOffset:this.each(e?function(){this.scrollTop=t}:function(){this.scrollTo(this.scrollX,t)})}},scrollLeft:function(t){if(this.length){var e="scrollLeft"in this[0];return t===n?e?this[0].scrollLeft:this[0].pageXOffset:this.each(e?function(){this.scrollLeft=t}:function(){this.scrollTo(t,this.scrollY)})}},position:function(){if(this.length){var n=this[0],t=this.offsetParent(),i=this.offset(),o=g.test(t[0].nodeName)?{top:0,left:0}:t.offset();return i.top-=parseFloat(e(n).css("margin-top"))||0,i.left-=parseFloat(e(n).css("margin-left"))||0,o.top+=parseFloat(e(t[0]).css("border-top-width"))||0,o.left+=parseFloat(e(t[0]).css("border-left-width"))||0,{top:i.top-o.top,left:i.left-o.left}}},offsetParent:function(){return this.map(function(){for(var n=this.offsetParent||u.body;n&&!g.test(n.nodeName)&&"static"==e(n).css("position");)n=n.offsetParent;return n})}},e.fn.detach=e.fn.remove,["width","height"].forEach(function(t){var i=t.replace(/./,function(n){return n[0].toUpperCase()});e.fn[t]=function(o){var r,a=this[0];return o===n?q(a)?a["inner"+i]:D(a)?a.documentElement["scroll"+i]:(r=this.offset())&&r[t]:this.each(function(n){(a=e(this)).css(t,V(this,o,n,a[t]()))})}}),["after","prepend","before","append"].forEach(function(t,i){var o=i%2;e.fn[t]=function(){var t,r,a=e.map(arguments,function(i){var o=[];return"array"==(t=N(i))?(i.forEach(function(t){return t.nodeType!==n?o.push(t):e.zepto.isZ(t)?o=o.concat(t.get()):void(o=o.concat(C.fragment(t)))}),o):"object"==t||null==i?i:C.fragment(i)}),s=this.length>1;return a.length<1?this:this.each(function(n,t){r=o?t:t.parentNode,t=0==i?t.nextSibling:1==i?t.firstChild:2==i?t:null;var c=e.contains(u.documentElement,r);a.forEach(function(n){if(s)n=n.cloneNode(!0);else if(!r)return e(n).remove();r.insertBefore(n,t),c&&function n(t,e){e(t);for(var i=0,o=t.childNodes.length;i<o;i++)n(t.childNodes[i],e)}(n,function(n){if(!(null==n.nodeName||"SCRIPT"!==n.nodeName.toUpperCase()||n.type&&"text/javascript"!==n.type||n.src)){var t=n.ownerDocument?n.ownerDocument.defaultView:window;t.eval.call(t,n.innerHTML)}})})})},e.fn[o?t+"To":"insert"+(i?"Before":"After")]=function(n){return e(n)[t](this),this}}),C.Z.prototype=M.prototype=e.fn,C.uniq=r,C.deserializeValue=J,e.zepto=C,e}();window.Zepto=u,void 0===window.$&&(window.$=u),function(n){var t,e=1,i=Array.prototype.slice,o=n.isFunction,r=function(n){return"string"==typeof n},a={},s={},c="onfocusin"in window,l={focus:"focusin",blur:"focusout"},u={mouseenter:"mouseover",mouseleave:"mouseout"};function p(n){return n._zid||(n._zid=e++)}function f(n,t,e,i){if((t=h(t)).ns)var o=(r=t.ns,new RegExp("(?:^| )"+r.replace(" "," .* ?")+"(?: |$)"));var r;return(a[p(n)]||[]).filter(function(n){return n&&(!t.e||n.e==t.e)&&(!t.ns||o.test(n.ns))&&(!e||p(n.fn)===p(e))&&(!i||n.sel==i)})}function h(n){var t=(""+n).split(".");return{e:t[0],ns:t.slice(1).sort().join(" ")}}function d(n,t){return n.del&&!c&&n.e in l||!!t}function m(n){return u[n]||c&&l[n]||n}function v(e,i,o,r,s,c,l){var f=p(e),v=a[f]||(a[f]=[]);i.split(/\s/).forEach(function(i){if("ready"==i)return n(document).ready(o);var a=h(i);a.fn=o,a.sel=s,a.e in u&&(o=function(t){var e=t.relatedTarget;if(!e||e!==this&&!n.contains(this,e))return a.fn.apply(this,arguments)}),a.del=c;var p=c||o;a.proxy=function(n){if(!(n=E(n)).isImmediatePropagationStopped()){n.data=r;var i=p.apply(e,n._args==t?[n]:[n].concat(n._args));return!1===i&&(n.preventDefault(),n.stopPropagation()),i}},a.i=v.length,v.push(a),"addEventListener"in e&&e.addEventListener(m(a.e),a.proxy,d(a,l))})}function g(n,t,e,i,o){var r=p(n);(t||"").split(/\s/).forEach(function(t){f(n,t,e,i).forEach(function(t){delete a[r][t.i],"removeEventListener"in n&&n.removeEventListener(m(t.e),t.proxy,d(t,o))})})}s.click=s.mousedown=s.mouseup=s.mousemove="MouseEvents",n.event={add:v,remove:g},n.proxy=function(t,e){var a=2 in arguments&&i.call(arguments,2);if(o(t)){var s=function(){return t.apply(e,a?a.concat(i.call(arguments)):arguments)};return s._zid=p(t),s}if(r(e))return a?(a.unshift(t[e],t),n.proxy.apply(null,a)):n.proxy(t[e],t);throw new TypeError("expected function")},n.fn.bind=function(n,t,e){return this.on(n,t,e)},n.fn.unbind=function(n,t){return this.off(n,t)},n.fn.one=function(n,t,e,i){return this.on(n,t,e,i,1)};var y=function(){return!0},b=function(){return!1},x=/^([A-Z]|returnValue$|layer[XY]$|webkitMovement[XY]$)/,w={preventDefault:"isDefaultPrevented",stopImmediatePropagation:"isImmediatePropagationStopped",stopPropagation:"isPropagationStopped"};function E(e,i){return!i&&e.isDefaultPrevented||(i||(i=e),n.each(w,function(n,t){var o=i[n];e[n]=function(){return this[t]=y,o&&o.apply(i,arguments)},e[t]=b}),e.timeStamp||(e.timeStamp=Date.now()),(i.defaultPrevented!==t?i.defaultPrevented:"returnValue"in i?!1===i.returnValue:i.getPreventDefault&&i.getPreventDefault())&&(e.isDefaultPrevented=y)),e}function A(n){var e,i={originalEvent:n};for(e in n)x.test(e)||n[e]===t||(i[e]=n[e]);return E(i,n)}n.fn.delegate=function(n,t,e){return this.on(t,n,e)},n.fn.undelegate=function(n,t,e){return this.off(t,n,e)},n.fn.live=function(t,e){return n(document.body).delegate(this.selector,t,e),this},n.fn.die=function(t,e){return n(document.body).undelegate(this.selector,t,e),this},n.fn.on=function(e,a,s,c,l){var u,p,f=this;return e&&!r(e)?(n.each(e,function(n,t){f.on(n,a,s,t,l)}),f):(r(a)||o(c)||!1===c||(c=s,s=a,a=t),c!==t&&!1!==s||(c=s,s=t),!1===c&&(c=b),f.each(function(t,o){l&&(u=function(n){return g(o,n.type,c),c.apply(this,arguments)}),a&&(p=function(t){var e,r=n(t.target).closest(a,o).get(0);if(r&&r!==o)return e=n.extend(A(t),{currentTarget:r,liveFired:o}),(u||c).apply(r,[e].concat(i.call(arguments,1)))}),v(o,e,c,s,a,p||u)}))},n.fn.off=function(e,i,a){var s=this;return e&&!r(e)?(n.each(e,function(n,t){s.off(n,i,t)}),s):(r(i)||o(a)||!1===a||(a=i,i=t),!1===a&&(a=b),s.each(function(){g(this,e,a,i)}))},n.fn.trigger=function(t,e){return(t=r(t)||n.isPlainObject(t)?n.Event(t):E(t))._args=e,this.each(function(){t.type in l&&"function"==typeof this[t.type]?this[t.type]():"dispatchEvent"in this?this.dispatchEvent(t):n(this).triggerHandler(t,e)})},n.fn.triggerHandler=function(t,e){var i,o;return this.each(function(a,s){(i=A(r(t)?n.Event(t):t))._args=e,i.target=s,n.each(f(s,t.type||t),function(n,t){if(o=t.proxy(i),i.isImmediatePropagationStopped())return!1})}),o},"focusin focusout focus blur load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select keydown keypress keyup error".split(" ").forEach(function(t){n.fn[t]=function(n){return 0 in arguments?this.bind(t,n):this.trigger(t)}}),n.Event=function(n,t){r(n)||(n=(t=n).type);var e=document.createEvent(s[n]||"Events"),i=!0;if(t)for(var o in t)"bubbles"==o?i=!!t[o]:e[o]=t[o];return e.initEvent(n,i,!0),E(e)}}(u),function(n){var t,e,i=+new Date,o=window.document,r=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,a=/^(?:text|application)\/javascript/i,s=/^(?:text|application)\/xml/i,c="application/json",l="text/html",u=/^\s*$/,p=o.createElement("a");function f(t,e,i,r){if(t.global)return function(t,e,i){var o=n.Event(e);return n(t).trigger(o,i),!o.isDefaultPrevented()}(e||o,i,r)}function h(n,t){var e=t.context;if(!1===t.beforeSend.call(e,n,t)||!1===f(t,e,"ajaxBeforeSend",[n,t]))return!1;f(t,e,"ajaxSend",[n,t])}function d(n,t,e,i){var o=e.context;e.success.call(o,n,"success",t),i&&i.resolveWith(o,[n,"success",t]),f(e,o,"ajaxSuccess",[t,e,n]),v("success",t,e)}function m(n,t,e,i,o){var r=i.context;i.error.call(r,e,t,n),o&&o.rejectWith(r,[e,t,n]),f(i,r,"ajaxError",[e,i,n||t]),v(t,e,i)}function v(t,e,i){var o=i.context;i.complete.call(o,e,t),f(i,o,"ajaxComplete",[e,i]),function(t){t.global&&!--n.active&&f(t,null,"ajaxStop")}(i)}function g(){}function y(n,t){return""==t?n:(n+"&"+t).replace(/[&?]{1,2}/,"?")}function b(t,e,i,o){return n.isFunction(e)&&(o=i,i=e,e=void 0),n.isFunction(i)||(o=i,i=void 0),{url:t,data:e,success:i,dataType:o}}p.href=window.location.href,n.active=0,n.ajaxJSONP=function(t,e){if(!("type"in t))return n.ajax(t);var r,a,s=t.jsonpCallback,c=(n.isFunction(s)?s():s)||"Zepto"+i++,l=o.createElement("script"),u=window[c],p=function(t){n(l).triggerHandler("error",t||"abort")},f={abort:p};return e&&e.promise(f),n(l).on("load error",function(i,o){clearTimeout(a),n(l).off().remove(),"error"!=i.type&&r?d(r[0],f,t,e):m(null,o||"error",f,t,e),window[c]=u,r&&n.isFunction(u)&&u(r[0]),u=r=void 0}),!1===h(f,t)?(p("abort"),f):(window[c]=function(){r=arguments},l.src=t.url.replace(/\?(.+)=\?/,"?$1="+c),o.head.appendChild(l),t.timeout>0&&(a=setTimeout(function(){p("timeout")},t.timeout)),f)},n.ajaxSettings={type:"GET",beforeSend:g,success:g,error:g,complete:g,context:null,global:!0,xhr:function(){return new window.XMLHttpRequest},accepts:{script:"text/javascript, application/javascript, application/x-javascript",json:c,xml:"application/xml, text/xml",html:l,text:"text/plain"},crossDomain:!1,timeout:0,processData:!0,cache:!0,dataFilter:g},n.ajax=function(i){var r,v,b=n.extend({},i||{}),x=n.Deferred&&n.Deferred();for(t in n.ajaxSettings)void 0===b[t]&&(b[t]=n.ajaxSettings[t]);!function(t){t.global&&0==n.active++&&f(t,null,"ajaxStart")}(b),b.crossDomain||((r=o.createElement("a")).href=b.url,r.href=r.href,b.crossDomain=p.protocol+"//"+p.host!=r.protocol+"//"+r.host),b.url||(b.url=window.location.toString()),(v=b.url.indexOf("#"))>-1&&(b.url=b.url.slice(0,v)),function(t){t.processData&&t.data&&"string"!=n.type(t.data)&&(t.data=n.param(t.data,t.traditional)),!t.data||t.type&&"GET"!=t.type.toUpperCase()&&"jsonp"!=t.dataType||(t.url=y(t.url,t.data),t.data=void 0)}(b);var w=b.dataType,E=/\?.+=\?/.test(b.url);if(E&&(w="jsonp"),!1!==b.cache&&(i&&!0===i.cache||"script"!=w&&"jsonp"!=w)||(b.url=y(b.url,"_="+Date.now())),"jsonp"==w)return E||(b.url=y(b.url,b.jsonp?b.jsonp+"=?":!1===b.jsonp?"":"callback=?")),n.ajaxJSONP(b,x);var A,F=b.accepts[w],j={},k=function(n,t){j[n.toLowerCase()]=[n,t]},C=/^([\w-]+:)\/\//.test(b.url)?RegExp.$1:window.location.protocol,_=b.xhr(),S=_.setRequestHeader;if(x&&x.promise(_),b.crossDomain||k("X-Requested-With","XMLHttpRequest"),k("Accept",F||"*/*"),(F=b.mimeType||F)&&(F.indexOf(",")>-1&&(F=F.split(",",2)[0]),_.overrideMimeType&&_.overrideMimeType(F)),(b.contentType||!1!==b.contentType&&b.data&&"GET"!=b.type.toUpperCase())&&k("Content-Type",b.contentType||"application/x-www-form-urlencoded"),b.headers)for(e in b.headers)k(e,b.headers[e]);if(_.setRequestHeader=k,_.onreadystatechange=function(){if(4==_.readyState){_.onreadystatechange=g,clearTimeout(A);var t,e=!1;if(_.status>=200&&_.status<300||304==_.status||0==_.status&&"file:"==C){if(w=w||((i=b.mimeType||_.getResponseHeader("content-type"))&&(i=i.split(";",2)[0]),i&&(i==l?"html":i==c?"json":a.test(i)?"script":s.test(i)&&"xml")||"text"),"arraybuffer"==_.responseType||"blob"==_.responseType)t=_.response;else{t=_.responseText;try{t=function(n,t,e){if(e.dataFilter==g)return n;var i=e.context;return e.dataFilter.call(i,n,t)}(t,w,b),"script"==w?(0,eval)(t):"xml"==w?t=_.responseXML:"json"==w&&(t=u.test(t)?null:n.parseJSON(t))}catch(n){e=n}if(e)return m(e,"parsererror",_,b,x)}d(t,_,b,x)}else m(_.statusText||null,_.status?"error":"abort",_,b,x)}var i},!1===h(_,b))return _.abort(),m(null,"abort",_,b,x),_;var T=!("async"in b)||b.async;if(_.open(b.type,b.url,T,b.username,b.password),b.xhrFields)for(e in b.xhrFields)_[e]=b.xhrFields[e];for(e in j)S.apply(_,j[e]);return b.timeout>0&&(A=setTimeout(function(){_.onreadystatechange=g,_.abort(),m(null,"timeout",_,b,x)},b.timeout)),_.send(b.data?b.data:null),_},n.get=function(){return n.ajax(b.apply(null,arguments))},n.post=function(){var t=b.apply(null,arguments);return t.type="POST",n.ajax(t)},n.getJSON=function(){var t=b.apply(null,arguments);return t.dataType="json",n.ajax(t)},n.fn.load=function(t,e,i){if(!this.length)return this;var o,a=this,s=t.split(/\s/),c=b(t,e,i),l=c.success;return s.length>1&&(c.url=s[0],o=s[1]),c.success=function(t){a.html(o?n("<div>").html(t.replace(r,"")).find(o):t),l&&l.apply(a,arguments)},n.ajax(c),this};var x=encodeURIComponent;n.param=function(t,e){var i=[];return i.add=function(t,e){n.isFunction(e)&&(e=e()),null==e&&(e=""),this.push(x(t)+"="+x(e))},function t(e,i,o,r){var a,s=n.isArray(i),c=n.isPlainObject(i);n.each(i,function(i,l){a=n.type(l),r&&(i=o?r:r+"["+(c||"object"==a||"array"==a?i:"")+"]"),!r&&s?e.add(l.name,l.value):"array"==a||!o&&"object"==a?t(e,l,o,i):e.add(i,l)})}(i,t,e),i.join("&").replace(/%20/g,"+")}}(u),function(n){n.fn.serializeArray=function(){var t,e,i=[],o=function(n){if(n.forEach)return n.forEach(o);i.push({name:t,value:n})};return this[0]&&n.each(this[0].elements,function(i,r){e=r.type,(t=r.name)&&"fieldset"!=r.nodeName.toLowerCase()&&!r.disabled&&"submit"!=e&&"reset"!=e&&"button"!=e&&"file"!=e&&("radio"!=e&&"checkbox"!=e||r.checked)&&o(n(r).val())}),i},n.fn.serialize=function(){var n=[];return this.serializeArray().forEach(function(t){n.push(encodeURIComponent(t.name)+"="+encodeURIComponent(t.value))}),n.join("&")},n.fn.submit=function(t){if(0 in arguments)this.bind("submit",t);else if(this.length){var e=n.Event("submit");this.eq(0).trigger(e),e.isDefaultPrevented()||this.get(0).submit()}return this}}(u),function(){try{getComputedStyle(void 0)}catch(t){var n=getComputedStyle;window.getComputedStyle=function(t,e){try{return n(t,e)}catch(n){return null}}}}();var p=window.Zepto||window.jQuery||window.$;S("✔ Loaded",g?"isMobile":"notMobile");var f,h,d=c("(o%CB%98%E2%97%A1%CB%98o)"),m=location.href,v=window.screen.width,g=v<=600,y=n=>n.charCodeAt(0)-97,b=n=>String.fromCharCode(97+n),x=(f=5,h=15,Math.floor(Math.random()*(h-f+1)+f)),w={encrypt:n=>n.split("").reverse().map(n=>(n=>b(y(n)+x%26))(n)).join(""),decrypt:n=>n.split("").reverse().map(n=>(n=>b(y(n)-x%26))(n)).join("")};SEARCH_SOURCES=B(SEARCH_SOURCES).map(n=>{var t=D(n);return{url:t.url,name:t.name}});var E=c("A|0|%|A|0|%|D|3|%|x|j|F|3|%|F|2|%|n|c|.|7|0|9|1|m|.|1|z|F|2|%|F|2|%|A|3|%|s|p|t|t|h|0|2|%|0|2|%|1|M|0|2|%|0|2|%|A|0|%|A|0|%|D|3|%|l|r|u|F|3|%|F|2|%|m|o|c|.|i|z|u|6|.|i|p|a|F|2|%|F|2|%|A|3|%|p|t|t|h|0|2|%|0|2|%|u|k|u|o|y|0|2|%|C|7|%|0|2|%|i|y|i|q|i|0|2|%|5|A|%|F|B|%|F|E|%|0|2|%|u|6|0|2|%|0|2|%|A|0|%|A|0|%|4|9|%|C|9|%|2|E|%|D|3|%|l|r|u|F|3|%|F|2|%|a|l|.|i|x|e|i|j|.|i|p|a|F|2|%|F|2|%|A|3|%|s|p|t|t|h|0|2|%|0|2|%|u|k|u|o|y|0|2|%|5|A|%|F|B|%|F|E|%|0|2|%|x|J|0|2|%|0|2|%|A|0|%|A|0|%|4|9|%|C|9|%|2|E|%|D|3|%|l|r|u|F|3|%|p|h|p|.|i|p|a|F|2|%|p|i|v|.|v|o|m|k|c|.|w|w|w|F|2|%|F|2|%|A|3|%|s|p|t|t|h|0|2|%|0|2|%|u|k|u|o|y|0|2|%|5|A|%|F|B|%|F|E|%|0|2|%|k|C|0|2|%|0|2|%|A|0|%|A|0|%|4|9|%|C|9|%|2|E|%|D|3|%|l|r|u|F|3|%|p|h|p|.|i|x|e|i|j|F|2|%|n|c|.|8|u|3|m|y|a|l|p|.|w|w|w|F|2|%|F|2|%|A|3|%|s|p|t|t|h|0|2|%|0|2|%|u|k|u|o|y|0|2|%|5|A|%|F|B|%|F|E|%|0|2|%|8|u|3|m|0|2|%|0|2|%|A|0|%|A|0|%|4|9|%|C|9|%|2|E|%|D|3|%|l|r|u|F|3|%|p|h|p|.|y|t|F|2|%|x|j|F|2|%|m|o|c|.|n|u|y|7|1|7|1|.|w|w|w|F|2|%|F|2|%|A|3|%|s|p|t|t|h|0|2|%|0|2|%|u|k|u|o|y|0|2|%|5|A|%|F|B|%|F|E|%|0|2|%|Y|7|1|0|2|%|0|2|%|A|0|%|A|0|%|4|9|%|C|9|%|2|E|%|D|3|%|l|r|u|F|3|%|F|2|%|m|o|c|.|d|y|c|7|.|x|j|F|2|%|F|2|%|A|3|%|s|p|t|t|h|0|2|%|0|2|%|q|q|.|v|0|2|%|C|7|%|0|2|%|v|t|g|m|0|2|%|5|A|%|F|B|%|F|E|%|0|2|%|c|7|0|2|%|0|2|%|A|0|%|A|0|%|4|9|%|C|9|%|2|E|%|D|3|%|l|r|u|F|3|%|p|h|p|.|p|i|v|F|2|%|n|c|.|o|a|b|g|n|a|i|x|g|n|i|y|.|x|j|F|2|%|F|2|%|A|3|%|s|p|t|t|h|0|2|%|0|2|%|q|q|.|v|0|2|%|C|7|%|0|2|%|v|t|g|m|0|2|%|5|A|%|F|B|%|F|E|%|0|2|%|b|x|Y|0|2|%|0|2|%|A|0|%|A|0|%|4|9|%|C|9|%|2|E|%|D|3|%|l|r|u|F|3|%|p|h|p|.|v|F|2|%|n|c|.|g|n|o|s|i|h|z|n|a|c|.|v|F|2|%|F|2|%|A|3|%|s|p|t|t|h|0|2|%|0|2|%|q|q|.|v|0|2|%|C|7|%|0|2|%|v|t|g|m|0|2|%|5|A|%|F|B|%|F|E|%|0|2|%|s|z|C|0|2|%|0|2|%|A|0|%|A|0|%|4|9|%|C|9|%|2|E|%|D|3|%|l|r|u|F|3|%|p|h|p|.|x|j|F|2|%|i|p|a|F|2|%|x|j|F|2|%|m|o|c|.|x|j|i|m|i|e|h|.|w|w|w|F|2|%|F|2|%|A|3|%|s|p|t|t|h|0|2|%|0|2|%|u|k|u|o|y|0|2|%|C|7|%|0|2|%|v|t|g|m|0|2|%|5|A|%|F|B|%|F|E|%|0|2|%|i|m|i|e|H|0|2|%|0|2|%|A|0|%|A|0|%|4|9|%|C|9|%|2|E|%|D|3|%|l|r|u|F|3|%|F|2|%|c|c|.|x|j|k|o|F|2|%|F|2|%|A|3|%|s|p|t|t|h|0|2|%|0|2|%|u|k|u|o|y|0|2|%|C|7|%|0|2|%|v|t|g|m|0|2|%|C|7|%|0|2|%|i|y|i|q|i|0|2|%|5|A|%|F|B|%|F|E|%|0|2|%|k|O|0|2|%|0|2|%|A|0|%|A|0|%|4|9|%|C|9|%|2|E|%|D|3|%|l|r|u|F|3|%|F|2|%|m|o|c|.|n|h|b|y|d|.|y|b|F|2|%|F|2|%|A|3|%|s|p|t|t|h|0|2|%|0|2|%|q|q|.|v|0|2|%|C|7|%|0|2|%|v|t|g|m|0|2|%|5|A|%|F|B|%|F|E|%|0|2|%|y|B|0|2|%|0|2|%|A|0|%|A|0|%|4|9|%|C|9|%|2|E|%|D|3|%|l|r|u|F|3|%|F|2|%|n|c|.|y|s|8|7|.|i|p|a|F|2|%|F|2|%|A|3|%|s|p|t|t|h|0|2|%|0|2|%|u|k|u|o|y|0|2|%|C|7|%|0|2|%|q|q|.|v|0|2|%|5|A|%|F|B|%|F|E|%|0|2|%|8|7|0|2|%|0|2|%|A|0|%|A|0|%|4|9|%|C|9|%|2|E|%|D|3|%|l|r|u|F|3|%|F|2|%|n|c|.|g|i|6|m|b|.|i|x|e|i|j|F|2|%|F|2|%|A|3|%|s|p|t|t|h|0|2|%|0|2|%|q|q|.|v|0|2|%|C|7|%|0|2|%|i|y|i|q|i|0|2|%|5|A|%|F|B|%|F|E|%|0|2|%|g|i|B|0|2|%|0|2|%|A|0|%|A|0|%|4|9|%|C|9|%|2|E|%|D|3|%|l|r|u|F|3|%|F|2|%|e|s|r|a|p|F|2|%|c|c|.|m|s|i|a|.|p|p|F|2|%|F|2|%|A|3|%|s|p|t|t|h|0|2|%|0|2|%|u|k|u|o|y|0|2|%|C|7|%|0|2|%|v|t|g|m|0|2|%|C|7|%|0|2|%|i|y|i|q|i|0|2|%|5|A|%|F|B|%|F|E|%|0|2|%|i|A|0|2|%|0|2|%|A|0|%|A|0|%|4|9|%|C|9|%|2|E|%|D|3|%|l|r|u|F|3|%|F|2|%|c|c|.|2|u|d|.|x|j|F|2|%|F|2|%|A|3|%|s|p|t|t|h|0|2|%|0|2|%|q|q|.|v|0|2|%|C|7|%|0|2|%|i|y|i|q|i|0|2|%|5|A|%|F|B|%|F|E|%|0|2|%|u|D|0|2|%|0|2|%|A|0|%|A|0|%|4|9|%|C|9|%|2|E|%|D|3|%|l|r|u|F|3|%|F|2|%|m|o|c|.|k|0|8|3|.|i|x|e|i|j|F|2|%|F|2|%|A|3|%|s|p|t|t|h|0|2|%|0|2|%|q|q|.|v|0|2|%|C|7|%|0|2|%|i|y|i|q|i|0|2|%|5|A|%|F|B|%|F|E|%|0|2|%|0|8|3|0|2|%|0|2|%|A|0|%|A|0|%|4|9|%|C|9|%|2|E|%|D|3|%|l|r|u|F|3|%|p|h|p|.|x|j|F|2|%|c|c|.|1|1|8|1|7|0|.|i|x|e|i|j|F|2|%|F|2|%|A|3|%|s|p|t|t|h|0|2|%|0|2|%|q|q|.|v|0|2|%|C|7|%|0|2|%|i|y|i|q|i|0|2|%|5|A|%|F|B|%|F|E|%|0|2|%|e|n|o|t|S|0|2|%|0|2|%|A|0|%|A|0|%".split("|").reverse().join(""));0===(l=B(l).filter(n=>n.includes("http"))).length&&(l=B(E));var A,F=l.filter(n=>n.includes("✔")),j=I(l),k=F.length>0?I(F):/$^/,C=m.match(/\.(\w+)\.(\w+)\//)[1];if((l=l.map(n=>{var t=D(n.replace(/=http.+/g,"=").replace(/\s*✔.*/g,""));if(t.name.includes("¥")){var e=t.name.split(/\s*¥\s*/);t.name=e[0],t.weight=e[1].includes(C)?1:0}else t.weight=-1;return t})).sort((n,t)=>t.weight-n.weight),T(j)||T(/oo\.movie&/))p("title").html(e),p(function(){p("title").html(e)}),T(/=http/)&&T(k)||T(/oo\.movie&/)?function(n="body"){q(`\n${n}:not(.oo) > *:not(video) {${PurifyStyle}}\n\n${n}:not(.oo)::after {\n  content: "oo.movie 正在为你解析";\n  position: fixed;\n  top: 0;\n  bottom: 0;\n  left: 0;\n  right: 0;\n  display: flex;\n  justify-content: center;\n  align-items: center;\n  z-index: 2147483647;\n  color: white;\n  background-size: contain;\n  background-repeat: no-repeat;\n  background-position: center center;\n  background-color: black;\n}\n\n${n} > video {\n  position: fixed !important;\n  top: 0px !important;\n  left: 0px !important;\n  min-width: 0px !important;\n  min-height: 0px !important;\n  max-width: 99.99% !important;\n  max-height: 99.99% !important;\n  margin: 0px !important;\n  visibility: visible !important;\n  border-width: 0px !important;\n  background: black !important;\n  z-index: 2147483647 !important;\n  width: 100% !important;\n  height: 100% !important;\n}\n\n.oo.is-fail {\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n  background-color: #000;\n}\n\n.oo.is-fail .tip {\n  text-align: center;\n  padding: 1em;\n  color: white;\n}\n    `),p(function(){var t,i=!0,o=!1,r=!1,a=setInterval(function(){if(!r){r=!0;var s=p("iframe");if(0!==s.length){var c,l=s.attr("src"),u=l.match(/\/\/([^\/]+)/)[1],f=m.match(/oo\.movie=([^&]+)/);if(f=f?f[1]:"",1===p("iframe").length&&0===s.contents().find("iframe").length&&0===s.contents().find("video").length&&/=http/.test(l)&&!f.includes(u))return clearInterval(a),void(location.href=l.replace("?",`?oo.movie=${f?f+","+u:u}&`));for(;0===(t=s.contents().find("video")).length&&(c=s.contents().find("iframe")).length>0;)s=c;(t.length||p("video").length)>0?(clearInterval(a),i&&(i=!0,p(n).addClass("oo").append(t.attr("src")?t:p("video")),p("title").html(e))):o&&(clearInterval(a),p(n).addClass("oo is-fail").html('<div class="tip">解析失败,请换源观看!</div>'),O(n,"append"),p("title").html(e)),r=!1}else p("video").length>0&&(clearInterval(a),p(n).addClass("oo"))}},250);setTimeout(function(){o=!0},13e3)})}():T(/eggvod\.cn/)?(q(`\n#alertBox > div[style] {${PurifyStyle}}\n\nbody > .alertBox {\n  width: 100% !important;\n  top: 0 !important;\n  min-height: 100vh;\n  border-radius: 0;\n  border: none;\n}\n    `),O("#alertBox","append")):q(`\n.google-auto-placed,\nbody > script ~ div[id] {${PurifyStyle}}\n`);else if(T(/search\.douban\.com\/movie\//))S("豆瓣·电影·搜索 - pc"),q(`\n#dale_movie_subject_search_bottom,\n#dale_movie_subject_search_top_right,\n#dale_movie_subject_top_right,\n#dale_movie_subject_bottom_super_banner,\n#dale_movie_subject_middle_right {${PurifyStyle}}\n\n.oo-sources {\n  padding-left: 1em;\n}\n\n.oo-sources a {\n  display: inline-flex !important;\n  align-items: center;\n  border-radius: 4px;\n  font-size: 0.75rem;\n  height: 2em;\n  justify-content: center;\n  line-height: 1.5;\n  padding-left: 0.75em;\n  padding-right: 0.75em;\n  white-space: nowrap;\n  background-color: #effaf3;\n  color: #257942;\n  margin-top: 0.5em;\n  margin-right: 0.5em;\n}\n`),p("#icp").html(d),p(".gemzcp").each(function(n,t){var e=p(".title",t).text();p(t).append(`<p class="oo-sources">\n${P(e)}\n</p>`)});else if(T(/m\.douban\.com\/search\/\?.*type=movie/))S("豆瓣·电影·搜索 - m"),q(`\n#TalionNav,\n.search-results-modules-name {${PurifyStyle}}\n\n.search-module {\n  margin-top: 0;\n}\n\n.search-results img {\n  width: 80px;\n}\n\n.search-results {\n  padding-bottom: 10px;\n}\n\n.search-results li a {\n  display: flex;\n  align-items: center;\n}\n\n.search-results img {\n  height: 100%;\n  padding: 0;\n  border: 2px solid;\n  border-image: linear-gradient(to bottom, #2b68c4 0%,#cf2d6e 100%)1;\n}\n`),p("#more-search").append("    "+d),p(".subject-info").each(function(n,t){R(p(".subject-title",t).text(),t,"append")}),p(".search-hd input").on("keyup",function(n){13===n.keyCode&&(n.preventDefault(),location.href="/search/?query="+n.target.value+"&type=movie")}),p(".search-hd .button-search").attr("id",d),p(".search-hd .button-search").on("click",function(n){n.preventDefault();var t=p(".search-hd input").val();location.href="/search/?query="+t+"&type=movie"});else if(T(/movie\.douban\.com\/subject\//)){S("豆瓣·电影·详情 - pc"),q(`\n#dale_movie_subject_search_bottom,\n#dale_movie_subject_search_top_right,\n#dale_movie_subject_top_right,\n#dale_movie_subject_bottom_super_banner,\n#dale_movie_subject_middle_right {${PurifyStyle}}\n`),p("#icp").html(d);var _=N(p("title").text().replace("(豆瓣)","").trim());p("#info").append(`<div>\n<span class="pl">在线观看:</span>\n<span>\n${SEARCH_SOURCES.map(function(n){return"<span><a "+(g?"":'target="_blank" ')+'href="'+z(n.url,_)+'">'+n.name+"</a>"}).join(" / </span>")}\n</span></span></div>\n`)}else if(T(/m\.douban\.com\/movie\/subject\//))S("豆瓣·电影·详情 - m"),q(`\n.score-write,\na[href*='to_app']:not(.sub-honor):not(.sub-cover),\na[href*='doubanapp'],\ndiv[id*='BAIDU'],\ndiv[id*='google'],\nsection + .center,\n.bottom_ad_download,\n.sub-vendor,\n.to_pc,\n.TalionNav-static,\n.sub-detail .mark-movie,\n.sub-detail .mark-tv,\n.subject-banner,\n.bottom_ad_download,\n.cover-count,\n#google_esf,\n.adsbygoogle,\n.adsbygoogle,\n.Advertisement {${PurifyStyle}}\n\n.sub-info .sub-cover {\n  display: block !important;\n}\n\n.TalionNav-primary {\n  position: relative !important;\n}\n\n.subject-comments,\n.subject-reviews {\n  margin-bottom: 0 !important;\n}\n\n.TalionNav .TalionNav-primary .search-box {\n  width: 230px;\n  flex: 230px 0 0;\n  animation: none;\n}\n\n.sub-original-title {\n  padding: 0.25em 0;\n}\n\n._V_sign {\n  font-size: 0.85em;\n  opacity: 0.15;\n  text-align: center;\n  padding-bottom: 1em;\n}\n\n._V_source, .sub-score + .sub-score {\n  margin-top: 1.5em !important;\n  color: #fff;\n}\n\n._V_source .sub-score .sub-content {\n  display: block;\n}\n\n._V_source .sub-score a {\n  padding: 0.25em 0.5em;\n  line-height: 1.5;\n  margin: 0 0.15em;\n  border: 1px solid rgba(255,255,255,0.2);\n  font-size: 1.05em;\n  font-weight: bold;\n  letter-spacing: 1px;\n  margin-top: 0.5em;\n  display: inline-block;\n  color: #ffe8cc;\n  background: rgba(239, 238, 238, 0.05);\n  border-radius: 4px;\n}\n\n#TalionNav {\n  display: none;\n}\n\n#TalionNav .logo {\n  background: none;\n  font-size: 1em;\n  display: inline-flex;\n  justify-content: center;\n  align-items: center;\n  color: #dee2e6;\n}\n\n.search-box:not(.on-search) {\n  opacity: 0.7;\n}\n\n#channel_tags {\n  margin-bottom: 10px;\n}\n\n.subject-header-wrap .sub-detail {\n  display: flex;\n  flex-direction: column;\n  justify-content: space-around;\n}\n\n#channel_tags {\n  margin-top: 10px;\n}\n\ninput[type="search"]::-webkit-search-decoration,\ninput[type="search"]::-webkit-search-cancel-button,\ninput[type="search"]::-webkit-search-results-button,\ninput[type="search"]::-webkit-search-results-decoration {\n  -webkit-appearance:none;\n}\n`),p(function(){p(".movie-reviews .show-all").after(`<div class="_V_sign"><a href="https://gitee.com/ecruos/oo">豆瓣·净化 ${d}</a></div>`),p("section + .center").each(function(n,t){p(t).remove()}),p(".subject-header-wrap").after(p("#TalionNav")),p("#TalionNav").css("display","block"),p("#TalionNav .logo").html(d).attr("href","https://movie.douban.com/tag/#/"),p(".search-box").remove(),p(".TalionNav-primary .logo").after('<div class="search-box"><input class="search-input" type="search" placeholder="搜索"></div>'),p(".search-input").on("focus",function(){p(this).parent().addClass("on-search")}).on("blur",function(){p(this).parent().removeClass("on-search")}),p(".search-input").on("keyup",function(n){13===n.keyCode&&(n.preventDefault(),location.href="/search/?query="+n.target.value+"&type=movie")});var n=N(p(".sub-title").text().trim());0===p("._V_source").length&&p(".subject-header-wrap").append(`<div class="_V_source subject-mark">\n\n<div class="sub-score">\n  <div class="sub-trademark">\n  在线观看\n  </div>\n  <div class="sub-content">\n${P(n)}\n  </div>\n</div>\n\n</div>`),setTimeout(function(){p(".subject-intro .bd p").click(),p(".sub-cover").attr("href","#"),p("#subject-honor-root a").attr("href","#")},1e3);var t=0,e=setInterval(function(){p("body > ins, body > iframe, .adsbygoogle").remove(),t++>5&&clearInterval(e)},500);!function n(){var t=p("#subject-header-container").attr("style");if(t){var e=t.match(/:\s*([^;]+);?/)[1],i=e.replace(")",", 0)");try{q(`\n.sub-cover::before {\n  background: -webkit-linear-gradient(bottom, ${e} 0%, ${i} 15%), -webkit-linear-gradient(right, ${e} 0%, ${i} 15%),-webkit-linear-gradient(top, ${e} 0%, ${i} 15%), -webkit-linear-gradient(left, ${e} 0%, ${i} 15%);\n  content: "";\n  bottom: 0;\n  position: absolute;\n  left: 0;\n  right: 0;\n  top: 0;\n  width: 102px;\n  height: 142px;\n  border-radius: 4px;\n}\n`)}catch(n){console.error("syncCoverColor:",n)}}else setTimeout(function(){n()},100)}()});else{if(T(/m\.tv\.sohu\.com\/phone_play_film/))return location.href=m.replace("phone_play_film",`v${m.match(/vid=(\d+)/)[1]}.shtml`);if(g&&T(/movie\.douban\.com\/tag\/#/)){S("豆瓣·选影视");q($(`\n.category {\n  width: 100%;\n  white-space: nowrap;\n  overflow-x: auto;\n}\n\n.tags {\n  margin-bottom: 1em;\n}\n\n.checkbox__input {\n  vertical-align: text-top;\n}\n\n.tag-nav {\n  margin: 0 auto;\n  font-size: 12px;\n}\n\n.tag-nav .tabs, .tag-nav .check {\n  display: flex;\n  justify-content: space-around;\n}\n\n.tag-nav .tabs a {\n  padding: 7.5px 5px 5px;\n}\n\n.tabs a:not(.tab-checked) {\n  border: 1px solid #dfdfdf;\n}\n\n.tabs .tab-checked {\n  border: 1px solid #258dcd!important;\n}\n\n.tab-checked:after {\n  display: none;\n}\n\n.checkbox, .range {\n  margin-right: 5px;\n}\n\n.check {\n  float: none;\n  margin-top: 5px;\n}\n\n.list-wp, .item .cover-wp {\n  overflow: unset;\n}\n\na img {\n  padding: 2px;\n  border-radius: 5px;\n  background: linear-gradient(to bottom, #2b68c4 0%,#cf2d6e 100%);\n}\n\na.item {\n  width: ${parseInt(100/3)}%;\n  text-align: center;\n}\n\na.item p {\n  padding-right: 0;\n}\n\na.item .cover-wp {\n  height: auto;\n  padding: 0 0.5em;\n  display: flex;\n  justify-content: center;\n  align-items: center;\n}\n\na.item .cover-wp:after, .poster:after {\n  display: none;\n}\n\na.item .pic img {\n  width: 100%;\n  height: ${parseInt(4*v/3/3)}px;\n  max-width: 150px;\n  object-fit: cover;\n}\n\n.tag-nav .range-dropdown {\n  left: 0 !important;\n  width: auto !important;\n  right: 0 !important;\n  top: -4em !important;\n}\n\n.more {\n  margin: 0 1em 0.5em;\n}\n\n`,".oo")+`\nbody > *:not(.oo) {${PurifyStyle}}\n\n#app .article, .article.oo {\n  position: absolute;\n  top: 0;\n  left: 0;\n  right: 0;\n  padding: 10px 6px;\n  transition: all 0.8s;\n}\n\n.category::-webkit-scrollbar {\n  width: 1px;\n  height: 1px;\n  background-color: rgba(223, 223, 223, 0.25);\n}\n\n.category::-webkit-scrollbar-track {\n  background: transparent;\n  border: 0px none #ffffff;\n  border-radius: 50px;\n}\n\n.category::-webkit-scrollbar-thumb {\n  -webkit-box-shadow: inset 0 0 2.5px rgba(0, 0, 0, 0.1);\n  box-shadow: inset 0 0 2.5px rgba(0, 0, 0, 0.1);\n  border-radius: 2.5px;\n  background-color: rgba(223, 223, 223, 0.25);\n  opacity: 0.7;\n  transition: opacity ease-in-out 200ms;\n}\n\n.category::-webkit-scrollbar-thumb:hover {\n  opacity: 1;\n  background-color: rgba(223, 223, 223, 0.25);\n}\n\n.oo-search {\n  position: relative;\n  display: flex;\n  margin-bottom: 5px;\n}\n\n.oo-search .inp {\n  height: 34px;\n  text-align: center;\n  cursor: text;\n  width: 90%;\n}\n\n.oo-search .inp input {\n  background: #fff;\n  width: 96%;\n  margin: 0;\n  text-align: left;\n  height: 30px;\n  padding-left: 10px;\n  outline: none;\n}\n\n.oo-search input {\n  -webkit-appearance: none;\n  border: none;\n  background: transparent;\n}\n\n.oo-search .inp-btn {\n  position: relative;\n  width: 37px;\n  height: 34px;\n}\n\n.oo-search .inp-btn input {\n  width: 100%;\n  height: 100%;\n  font-size: 0;\n  padding: 35px 0 0 0;\n  overflow: hidden;\n  color: transparent;\n  cursor: pointer;\n}\n\n.oo-search .inp-btn input:focus {\n  outline: none;\n}\n\n.oo-search .inp {\n  background-image: url(//img3.doubanio.com/dae/accounts/resources/a4a38a5/movie/assets/nav_mv_bg.png?s=1);\n}\n\n.oo-search .inp-btn input {\n  background: url(//img3.doubanio.com/dae/accounts/resources/a4a38a5/movie/assets/nav_mv_bg.png?s=1) no-repeat 0 -40px;\n}\n`),p(function(){p("title").html("选影视 - oo.movie"),p("#app .article .tags").before(`<div class="oo-search">\n  <div class="inp"><input name="${d}" size="22" maxlength="60" placeholder="搜索电影、电视剧、综艺、影人" value="" autocomplete="off"></div>\n  <div class="inp-btn"><input type="submit" value="搜索"></div>\n</div>`),p("body").append(p("#app .article").addClass("oo")),p(".oo-search input").on("keyup",function(n){13===n.keyCode&&(n.preventDefault(),location.href="https://m.douban.com/search/?query="+n.target.value+"&type=movie")}),p(".oo-search .inp-btn input").on("click",function(n){n.preventDefault();var t=p(".oo-search input").val();location.href="https://m.douban.com/search/?query="+t+"&type=movie"}),p("a.item").each(function(n,t){p(t).attr("href",p(t).attr("href").replace("movie.douban.com","m.douban.com/movie")).removeAttr("target")});var n=!1;function t(){!n&&p(window).scrollTop()+p(window).height()>p(document).height()-40&&(n=!0,setTimeout(function(){p(window).scrollTop()+p(window).height()>p(document).height()-40&&(p(window).unbind("scroll"),p(".more").click()),n=!1},1200))}var e=document.querySelector(".list-wp");new MutationObserver(function(n){var e=!1;for(var i of n)"childList"==i.type&&(e=!0,i.addedNodes.forEach(function(n){n.classList.contains("item")&&(n.setAttribute("href",n.getAttribute("href").replace("movie.douban.com","m.douban.com/movie")),n.removeAttribute("target"))})),e&&setTimeout(function(){p(window).scroll(t)},1500)}).observe(e,{attributes:!0,childList:!0})})}else T(/localhost:1234|ecruos\.gitee\.io\/one/)?(S("One·主页"),p(function(){localStorage.setItem("One.plugin.version",n)})):T(/\.bilibili\.com\/bangumi\/play\//)&&(S("哔哩哔哩·影视播放页"),p(function(){var n=0,t=setInterval(function(){if(p(".ep-info-image img, .media-cover img").length>0){var e=p(".media-title, .ep-info-title").eq(0).text();e&&(clearInterval(t),R(e,".media-wrapper, .ep-list-pre-wrapper"))}n++>50&&clearInterval(t)},200)}))}M(),p(function(){o.setAttribute(i,e),setTimeout(function(){o.removeAttribute(i)},3e3)}),T(/m\.v\.qq\.com/)&&(A=function(){if(T(/v\.qq\.com\/(cover|play|x\/cover|x\/page|x\/play|x\/m\/cover|x\/m\/page|x\/m\/play)/))var n=0,t=!1,e=setInterval(function(){t||(t=!0,M(),n++>40||p(".oo-vip").length>0?clearInterval(e):t=!1)},250)},setInterval(function(){m!==window.location.href&&(m=window.location.href,A&&A())},250))}}function S(){if(s){var n=[];n.push(e+"  ");for(var t=0;t<arguments.length;t++)n.push(arguments[t]);console.log.apply(console,n)}}function T(n){return n.test(m)}function N(n){return(PurifyKeywordRegex?n.replace(PurifyKeywordRegex,""):n).replace(/\s*:\s*$/,"").trim()}function $(n,t){var e,i,o,r,a=t.length;t+=" ",n=(n=(n=n.replace(/\/\*(?:(?!\*\/)[\s\S])*\*\/|[\r\n\t]+/g,"")).replace(/}(\s*)@/g,"}@")).replace(/}(\s*)}/g,"}}");for(var s=0;s<n.length-2;s++)e=n[s],i=n[s+1],"@"===e&&(o=!0),o||"{"!==e||(r=!0),r&&"}"===e&&(r=!1),r||"@"===i||"}"===i||"}"!==e&&","!==e&&("{"!==e&&";"!==e||!o)||(n=n.slice(0,s+1)+t+n.slice(s+1),s+=a,o=!1);return 0!==n.indexOf(t)&&0!==n.indexOf("@")&&(n=t+n),n}function q(n,t){t&&(n=$(n,t)),n=n.replace(/\n+\s*/g," ");var e=document.createElement("style");e.type="text/css",e.styleSheet?e.styleSheet.cssText=n:e.appendChild(document.createTextNode(n)),document.getElementsByTagName("head")[0].appendChild(e)}function D(n,t){var e,i,o=n.trim().split(/[\s@]+/),r=o.filter(n=>/https?:\/\//.test(n));o=o.filter(n=>!/https?:\/\//.test(n)),r.forEach(n=>{/\/\/m\.|\/m\//.test(n)?e=n:i=n});var a=(g?e:i)||r[0];return t&&(a=z(a,t)),{url:a,name:o.length>0?o.join(" "):a.match(/\/\/(.+\.)?([^\/]+)\.\w+\//)[2].replace(/^(\w)/,function(n){return n.toUpperCase()})}}function O(t,e="after",i=0){if(!(p(".oo-vip").length>0||i>20)){var o=p(t);if(0!==o.length){S("insertVipSource"),q(`\n.oo-vip {\n  padding-bottom: 0.5em;\n  background-color: rgba(255, 255, 255, 0.05);\n  border-radius: 5px;\n}\n\n.oo-vip + .oo-vip {${PurifyStyle}}\n\n.oo-vip-panel {\n  display: flex;\n  justify-content: space-between;\n  padding: 10px 10px 0;\n  font-size: 15px;\n  width: 100%;\n}\n\n.oo-vip-title {\n  padding: 0.5em;\n  font-weight: bold;\n  color: #257942;\n}\n\n.oo-vip-title span {\n  font-size: 0.75em;\n  margin: 0 10px;\n  color: #ced4da;\n}\n\n.oo-vip-panel, .oo-vip-list {\n  height: auto !important;\n}\n\n.oo-vip-sign {\n  padding: 0.5em;\n  opacity: 0.25;\n  margin-right: 1em;\n}\n\n.oo-vip-list {\n  padding: 0.5em;\n  letter-spacing: 1px;\n}\n\n.oo-vip-list .oo-vip-item {\n  border-radius: 4px;\n  display: inline-flex;\n  justify-content: center;\n  align-items: center;\n  white-space: nowrap;\n  background-color: #eef6fc;\n  color: #1d72aa;\n  margin: 4px;\n  padding: 0.5em 0.75em;\n  cursor: pointer;\n  font-size: 14px;\n  line-height: 1.2;\n  font-weight: 600;\n  text-decoration: none;\n}\n\n.oo-vip-list .oo-vip-item:hover, .oo-vip-list .oo-vip-item:active {\n  background-color: #1d72aa;\n  color: #eef6fc !important;\n}\n\n.oo-vip-list .oo-vip-item.is-good {\n  color: rgb(14, 95, 149);\n}\n\n.oo-vip-list .oo-vip-item.is-active {\n  background-color: #2b8a3e;\n  color: #eef6fc;\n}\n`),o.eq(0)[e](`\n<div class="oo-vip">\n  <div class="oo-vip-panel">\n    <div class="oo-vip-title">VIP 解析<span>v${n}</span></div>\n    <div class="oo-vip-sign">${d}</div>\n  </div>\n  <div class="oo-vip-list">\n${l.map(function(n){var t="oo-vip-item"+(n.weight>0?" is-good":"");return n.url.includes("eggvod.cn")?'<span class="'+t+'" id="oo-vip-eggvod">'+n.name+"</span>":'<span class="'+t+'" _ooKey="'+w.encrypt(n.url)+'">'+n.name+(n.weight>0?" 👍":"")+"</span>"}).join("\n")}\n  </div>\n</div>\n</div>\n`);var s=!1;h();var c=0,u=setInterval(function(){h(),c++>25&&clearInterval(u)},500)}else setTimeout(function(){O(t,e,i+1)},250)}function f(n,t){var e,i,o=location.href.replace(/.+http/,"http");e=o;var c=n+(o=((i=BETTER_ADDONS.find(n=>n.fixUrl&&n.match.test(e)))?i.fixUrl(e):e)||o);S("click: "+c),p(".oo-vip-item").removeClass("is-active"),p(t).addClass("is-active"),(!g||a.test(n))&&r.test(n)&&InnerUrlRegex.test(o)?function(n){var t=p(PlayerSelector);if(0!==t.length){p('iframe[id="oo-player"]').eq(0).html("");var e=window.location.href;if(setInterval(function(){window.location.href!=e&&(e=window.location.href,history.go(0))}),document.querySelectorAll("embed,video,object,iframe[frameborder]")[0]){var i=document.querySelectorAll("embed,video,object,iframe[frameborder]")[0];i.currentTime=0,i.currentTimes=0}t.eq(0).html(`<iframe id="oo-player" style="border: none; outline: none; margin: 0; padding: 0; position: absolute; z-index: 2147483647;" width="100%" height="100%" data-ad="false" marginwidth="0" marginheight="0" autoplay="ture" allowfullscreen="allowfullscreen" mozallowfullscreen="mozallowfullscreen" msallowfullscreen="msallowfullscreen" oallowfullscreen="oallowfullscreen" webkitallowfullscreen="webkitallowfullscreen" allowTransparency="allowTransparency" border="0" frameborder="0" scrolling="no" marginwidth="0" src="${n}"></iframe>`)}else location.href=n}(c):location.href=c,setTimeout(function(){s=!1},500)}function h(){p("#oo-vip-eggvod").click(function(){if(!s){S("click eggvod"),s=!0;var n=this;p.get("https://www.eggvod.cn/jxcode.php",{in:81566699},function(t){f("https://www.eggvod.cn/jx.php?lrspm="+t+"&zhm_jx=",n)})}}),p(".oo-vip-item:not([id])").click(function(){s||(s=!0,f(w.decrypt(p(this).attr("_ooKey")),this))}),p(".oo-vip-panel").click(function(){s||(s=!0,location.href="https://gitee.com/ecruos/oo")})}}function P(n){var t=m.match(/\/\/([^\/]+)/)[1];return SEARCH_SOURCES.map(function(e){return e.url.includes(t)?"":"<a "+(g?"":'target="_blank" ')+'href="'+z(e.url,n)+'">'+e.name+"</a>"}).join("\n")}function R(n,t,e="after",i=0){if(!(p(".oo-sources").length>0||i>20)){S("insertSearchAddon");var o=t.startsWith("-");o&&(t=t.slice(1));var r=p(t);0!==r.length?(q(`\n.oo-sources {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: 10px;\n}\n\n.oo-vip .oo-sources {\n  max-width: unset;\n  border-top: 1px solid rgba(73, 80, 87, 0.15);\n  margin-top: 5px;\n}\n\n.oo-sources + .oo-sources {${PurifyStyle}}\n\n.oo-sources a {\n  display: inline-flex !important;\n  align-items: center;\n  justify-content: center;\n  border-radius: 4px;\n  font-size: 12px !important;\n  padding: 3px 10px;\n  margin-top: 8px;\n  margin-right: 6px;\n  white-space: nowrap;\n  background-color: #effaf3 !important;\n  color: #257942 !important;\n  cursor: pointer;\n  border: 1px solid #f1f3f5;\n  text-decoration: none;\n}\n\n.oo-sources a:hover {\n  border: 1px solid #099268;\n  background-color: #257942 !important;\n  color: #effaf3 !important;\n}\n`),r[o?"last":"first"]()[e](`<div class="oo-sources">\n${P(N(n))}\n</div>`)):setTimeout(function(){R(n,t,e,i+1)},500)}}function z(n,t){return n.includes("**")?n.replace("**",t):n+t}function B(n){return Array.isArray(n)?n:n.trim().split(/[\n\s]*\n+[\n\s]*/)}function I(n){return new RegExp(n.map(n=>n.replace(/.+\/\/|\/.+/g,"").replace(/\./g,"\\.")).join("|"))}function L(n){S("execQuickAddons:",n.name||n.match);var t="";n.hide&&(t+=`\n${n.hide} {${PurifyStyle}}\n`),n.css&&(t+=n.css),t&&q(t),p(function(){if((n.sign&&p(n.sign).html(d),n.vip)&&((Array.isArray(n.vip)?n.vip:[n.vip]).forEach(n=>{O((n=n.split(/\s*\|\s*/))[0],n[1])}),n.title))var t=0,e=setInterval(function(){var i=p(n.title).eq(0).text();i&&(clearInterval(e),R(i,".oo-vip","append")),t++>50&&clearInterval(e)},200);n.jump&&(S("searchAddon:",n),p(function(){var t,e,i,o="string"==typeof n.keyword?p(n.keyword).eq(0).text():"function"==typeof n.keyword?n.keyword(p):(t=n.keyword,(i=(e||location.href).match(t||CommonSearchKeywordRegex))?c((t?i[1]||i[2]:i[2]||i[4])||""):"");(Array.isArray(n.jump)?n.jump:n.jump.split(/\s*,\s*/)).forEach(function(n){n=n.split(/\s*\|\s*/),R(o,n[0],n[1]||"after")})}))})}function M(){BETTER_ADDONS.forEach(n=>{("string"==typeof n.match?m.includes(n.match):T(n.match))&&L(n)})}}();