{"[GOOGLE_Images]":{"link":"^google\\.\\S+/imgres\\?imgurl=.+","url":":''","res":":\nthis.node.IMGS_fallback_zoom = null\nreturn new URL($[0]).searchParams.get('imgurl')","img":"^(data:image|encrypted-tbn\\d\\.gstatic\\.com/images).+","loop":2,"to":":\nif (/^(?:www\\.)?google\\./.test(new URL(document.URL).hostname)) {\n if (\n /\\/search\\?\\S*tbm=isch/.test(document.URL) || // Google Images\n /\\/imgres\\?imgurl=/.test(document.URL) || // Google Images > Image page (Related images)\n /\\/search\\?\\S*imgrc=/.test(document.URL) // Google > Image Pack > Side frame (Related images)\n ) {\n const element = document.querySelector('a:hover[role=\"button\"]')\n if (element) {\n element.dispatchEvent(new MouseEvent('mousedown', { bubbles: true }))\n return element.href\n }\n }\n\n // SERP Features: Image Pack | moz.com/learn/seo/serp-features#image-pack / dataforseo.com/serp-features#images\n if (/\\/search\\?/.test(document.URL)) {\n function findByDocid(obj, str) {\n if (typeof obj?.[1] === 'string' && obj[1] === str) {\n return obj\n }\n for (let val of Object.values(obj)) {\n if (val && typeof val === 'object' && (val = findByDocid(val, str), val)) {\n return val\n }\n }\n }\n\n function W_jd() {\n const s = document.createElement('script')\n s.textContent = 'sessionStorage.setItem(\"W_jd\", JSON.stringify(window.W_jd)); document.currentScript.remove();'\n document.head.appendChild(s)\n const result = sessionStorage.getItem('W_jd')\n sessionStorage.removeItem('W_jd')\n return JSON.parse(result)\n }\n\n const element = document.querySelector('div:hover[data-docid]')\n if (element) {\n return findByDocid(W_jd(), element.dataset.docid)[3][0]\n }\n }\n}\n\nreturn $[0]","note":"64h\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1480#16\nOLD:\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1020#19\nhttps://www.reddit.com/r/imagus/comments/qi8smy/sieve_for_google_pictures/\n\n!!!\nФильтр должен всегда располагаться перед [data:image]. Для увеличения видео в результатах поиска - курсор наводить на название ролика.\n==\nThe sieve must be placed always before [data:image]. To show video in the search results - hover over the title of the video.\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.google.com/search?q=Wes+Anderson\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1480#14"},"[data:image]":{"link":"(^data:image.+)","img":"(^data:image.+)","to":"$1","note":"Rodny + hababr (fix) + Baton34V (fix)\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=4000#16\n\nПРИМЕРЫ / EXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=1980#20"},"[Extension]":{"link":"^imagus:\\/\\/extension","loop":1,"url":":'data:,' + this.TRG.IMGS_c_resolved.URL","res":":\nfunction inject(tag, id, content, parent) {\n const elem = document.createElement(tag)\n elem.setAttribute('id', id)\n elem.textContent = content\n return parent ? parent.appendChild(elem) : document.head.appendChild(elem)\n}\n\nfunction override(that) {\n function reset() {\n if (that.EXTENSION.VIME) {\n that.EXTENSION.VIME.remove()\n delete that.EXTENSION.VIME\n }\n\n if (that.EXTENSION.VIDEOJS) {\n that.EXTENSION.VIDEOJS.player?.dispose()\n that.EXTENSION.VIDEOJS.remove()\n delete that.EXTENSION.VIDEOJS\n }\n\n if (that.EXTENSION.IFRAME) {\n that.EXTENSION.IFRAME.remove()\n delete that.EXTENSION.IFRAME\n }\n\n that.EXTENSION.innerHTML = '';\n }\n\n function setSVG(width, height) {\n console.log('IMAGUS EXTENSION: setSVG ' + arguments);\n clearInterval(that.timers.onReady);\n that.set(`data:image/svg+xml,`)\n if (cfg.hz.capWH) {\n that.CAP.children[1].textContent = `${width}\\u00d7${height}`\n }\n }\n\n that.resetNode_original = that.resetNode\n that.resetNode = (node, keepAlbum) => {\n if (node === that.TRG) reset()\n return that.resetNode_original(node, keepAlbum)\n }\n\n that.reset_original = that.reset\n that.reset = preventImmediateHover => {\n reset()\n return that.reset_original(preventImmediateHover)\n }\n\n /*let lastScrollTop = 0\n document.addEventListener('scroll', function (ev) {\n var st = document.documentElement.scrollTop\n if (st > lastScrollTop) {\n // downscroll code\n console.log('scroll down :>> ');\n } else if (st < lastScrollTop) {\n console.log('scroll up :>> ');\n // upscroll code\n }\n lastScrollTop = st <= 0 ? 0 : st\n }, false)*/\n\n platform.onkeydown_original = platform.onkeydown\n platform.onkeydown = e => {\n const url = that.TRG?.IMGS_ext?.attributes?.['url']?.textContent\n if (url && [e.code.replace(/^Key/, ''), e.key].includes(cfg.keys.hz_open)) {\n Port.send({ cmd: 'open', url: url, nf: e.shiftKey })\n } else {\n return platform.onkeydown_original(e)\n }\n }\n\n window.removeEventListener(platform[\"wheel\"], that.wheeler, true)\n that.wheeler_original = that.wheeler\n that.wheeler = function (ev) {\n if (that.EXTENSION.contains(ev.target) && that.EXTENSION.scrollHeight > that.EXTENSION.clientHeight) {\n return\n }\n /* if (!ev.ctrlKey) {\n var fullZmBackup = that.fullZm\n that.fullZm = 0\n } */\n return that.wheeler_original(ev)\n // that.fullZm = fullZmBackup ?? that.fullZm\n }\n window.addEventListener(platform[\"wheel\"], that.wheeler, { capture: true, passive: false })\n\n that.fzClickAct_original = that.fzClickAct\n that.fzClickAct = e => !that.EXTENSION.contains(e.target) ? that.fzClickAct_original(e) : undefined\n\n that.prepareCaption_original = that.prepareCaption\n that.prepareCaption = (trg, caption = '') => {\n const m = caption.match(/()?(.*)/s)\n const e = () => { const t = document.createElement('template'); t.innerHTML = m[1]; return t.content.firstChild; }\n trg.IMGS_ext = trg.IMGS_ext_from_url || m[1] ? e() : undefined\n return that.prepareCaption_original(trg, m[2])\n }\n\n that.show_original = that.show\n that.show = (msg, delayed) => {\n if (msg === 'load') {\n if (that.EXTENSION.VIDEOJS || that.EXTENSION.IFRAME) {\n return\n } else {\n return that.show_original(msg, delayed)\n }\n } else if (msg === undefined) {\n return that.show_original(msg, delayed)\n }\n\n const ext = that.TRG.IMGS_ext\n that.EXTENSION.style.display = ext ? 'block' : 'none'\n that.DIV.style.transform = ''\n\n const res = that.show_original(msg, delayed)\n\n if (ext) {\n const type = ext.getAttribute('type').split('-')\n const url = ext.getAttribute('url')\n that.EXTENSION.className = 'imagus-' + type[0]\n that.EXTENSION_custom_style.textContent = ext.getAttribute('custom-style')\n\n const isYoutube = /^https?:\\/\\/(www\\.)?(youtube\\.com|youtu\\.be)\\//i.test(url);\n if (isYoutube && type[0] === 'videojs') {\n type[0] = 'iframe'\n }\n\n switch (type[0]) {\n case 'iframe':\n if (!url || that.EXTENSION.IFRAME) {\n break\n }\n\n let html;\n if (isYoutube) {\n const ytId = url.match(/(?:v=|embed\\/|shorts\\/)([a-zA-Z0-9_-]{11})/)[1]\n html = ``\n\n } else {\n html = ``\n }\n that.EXTENSION.innerHTML = `
Click to enable/disable iframe control
${html}`\n that.EXTENSION.IFRAME = that.EXTENSION.querySelector(':scope > iframe')\n const h = [1440, 1080, 720, 360].find(i => i <= window.innerHeight) || 360;\n setSVG(h / 9 * 16, h)\n // setSVG(3840, 2160)\n\n that.EXTENSION.querySelector('.imagus-iframe-control').addEventListener('click', function (ev) {\n // that.EXTENSION.style.pointerEvents = that.EXTENSION.style.pointerEvents == 'none' ? 'auto' : 'none';\n that.EXTENSION.style.zIndex = that.EXTENSION.style.zIndex != 'auto' ? 'auto' : '-1';\n })\n break\n\n case 'sidebar':\n that.EXTENSION.innerHTML = ext.innerHTML\n that.EXTENSION.scrollTop = 0\n const rect = that.EXTENSION.getBoundingClientRect()\n const tfX = rect.left < 0 ? -rect.left : rect.right > window.innerWidth ? window.innerWidth - rect.right : 0\n const tfY = rect.top < 0 ? -rect.top : rect.bottom > window.innerHeight ? window.innerHeight - rect.bottom : 0\n if (tfX || tfY)\n that.DIV.style.transform = `translate(${tfX}px, ${tfY}px)`\n break\n\n case 'banner':\n that.EXTENSION.innerHTML = `\n \n \n \n
\n ${ext.getAttribute('text')}\n
\n
\n
\n
\n `.replace(/\\n\\s*/g, '')\n break\n\n case 'videojs':\n if (!url || that.EXTENSION.VIDEOJS) {\n break\n }\n\n if (!that.EXTENSION.VIDEOJS_status) {\n that.EXTENSION.VIDEOJS_status = 'loading'\n console.time('Load Video.js')\n\n if (typeof loadVideoJS === 'function') {\n loadVideoJS()\n that.EXTENSION.VIDEOJS_status = 'loaded'\n console.timeEnd('Load Video.js')\n createPlayer()\n break\n }\n\n const urlsCSS = [\n 'https://cdn.jsdelivr.net/npm/video.js@7.20.3/dist/video-js.min.css',\n 'https://cdn.jsdelivr.net/npm/videojs-max-quality-selector@0.9.1/dist/videojs-max-quality-selector.css'\n // 'https://unpkg.com/video.js@7.20.3/dist/video-js.min.css',\n // 'https://unpkg.com/videojs-max-quality-selector@0.9.1/dist/videojs-max-quality-selector.css'\n ]\n\n const urlsJS = [\n 'https://cdn.jsdelivr.net/npm/video.js@7.20.3/dist/video.min.js',\n 'https://cdn.jsdelivr.net/npm/videojs-contrib-quality-levels@2.2.0/dist/videojs-contrib-quality-levels.min.js',\n 'https://cdn.jsdelivr.net/npm/videojs-max-quality-selector@0.9.1/dist/videojs-max-quality-selector.min.js'\n // 'https://unpkg.com/video.js@7.20.3/dist/video.min.js',\n // 'https://unpkg.com/videojs-contrib-quality-levels@2.2.0/dist/videojs-contrib-quality-levels.min.js',\n // 'https://unpkg.com/videojs-max-quality-selector@0.9.1/dist/videojs-max-quality-selector.min.js'\n ]\n\n const urlGet = (url) => new Promise((resolve, reject) => {\n const xhr = new XMLHttpRequest()\n\n xhr.onload = () => {\n if (xhr.status === 200) {\n console.log(xhr.statusText, '|', url)\n resolve(xhr.responseText.replace(/\\n?\\/\\*.+?\\*\\/\\n?/gs, '').trim())\n } else {\n console.error(xhr.statusText, '|', url)\n reject(xhr.statusText)\n }\n }\n\n xhr.onerror = () => {\n console.error(xhr.statusText, '|', url)\n reject(xhr.statusText)\n }\n\n xhr.open('GET', url)\n xhr.send()\n })\n\n const pCSS = Promise.all(urlsCSS.map(urlGet)).then((result) => {\n document.head.insertAdjacentHTML('beforeend', ``)\n })\n\n const pJS = Promise.all(urlsJS.map(urlGet)).then((result) => {\n Function(result[0]\n .replace(\n 'new Uint8Array(t.data.data,i.byteOffset||0,i.byteLength||t.data.data.byteLength)',\n '/firefox/i.test(window.navigator.userAgent)?cloneInto(new Uint8Array(t.data.data,i.byteOffset||0,i.byteLength||t.data.data.byteLength),window):new Uint8Array(t.data.data,i.byteOffset||0,i.byteLength||t.data.data.byteLength)'\n )\n .replace(\n 'n[t].forEach', // _this6[idName].forEach\n 'structuredClone(n[t]).forEach' // https://caniuse.com/mdn-api_structuredclone\n ) + result.slice(1).join(''))()\n })\n\n Promise.all([ pCSS, pJS ]).then(() => {\n that.EXTENSION.VIDEOJS_status = 'loaded'\n console.timeEnd('Load Video.js')\n createPlayer()\n })\n }\n\n if (that.EXTENSION.VIDEOJS_status === 'loaded') {\n createPlayer()\n }\n\n function createPlayer() {\n that.EXTENSION.VIDEOJS = document.createElement('video')\n that.EXTENSION.VIDEOJS.setAttribute('class', 'video-js')\n that.EXTENSION.VIDEOJS.setAttribute('id', 'imagus-player')\n that.EXTENSION.appendChild(that.EXTENSION.VIDEOJS)\n\n const playerOptions = {\n autoplay: 'any',\n controls: true,\n loop: true,\n preload: 'auto'\n }\n\n videojs(that.EXTENSION.VIDEOJS, playerOptions, () => {\n const player = that.EXTENSION.VIDEOJS.player = videojs.players['imagus-player']\n const qLevels = player.qualityLevels()\n const mqSelectorOptions = {\n autoLabel: 'Auto ',\n disableAuto: true,\n displayMode: 1,\n defaultQuality: 2,\n // maxHeight: window.screen.height,\n // maxWidth: window.screen.width,\n filterDuplicateHeights: false,\n filterDuplicates: false,\n showBitrates: true\n }\n const mqSelector = player.maxQualitySelector(mqSelectorOptions)\n\n const setPlayerSize = (width, height) => {\n if (!player.isFullscreen()) {\n setSVG(width, height)\n }\n }\n\n qLevels.on('change', (e) => {\n setPlayerSize(qLevels[qLevels.selectedIndex].width, qLevels[qLevels.selectedIndex].height)\n })\n\n player.on('resize', () => {\n const vWidth = player.videoWidth()\n const vHeight = player.videoHeight()\n player.width(vWidth)\n player.height(vHeight)\n setPlayerSize(vWidth, vHeight)\n })\n\n player.on('fullscreenchange', () => {\n if (!mqSelector.selectedIndexPrevious) {\n mqSelector.selectedIndexPrevious = mqSelector.selectedIndex\n mqSelector.options.disableAuto = false\n mqSelector.changeLevel(-1) // auto\n } else {\n mqSelector.changeLevel(mqSelector.selectedIndexPrevious)\n delete mqSelector.selectedIndexPrevious\n }\n })\n\n player.volume(cfg.hz.mediaVolume / 100)\n player.src(url)\n })\n }\n\n break\n\n }\n }\n\n return res\n }\n\n that.switchToHiResInFZ_original = that.switchToHiResInFZ\n that.switchToHiResInFZ = () => {\n if (that.fullZm === 1) {\n that.EXTENSION.style.pointerEvents = 'auto'\n if (that.EXTENSION.VIME || that.EXTENSION.VIDEOJS || that.EXTENSION.IFRAME) {\n that.EXTENSION.style.zIndex = 'auto'\n }\n\n const iControl = that.EXTENSION.querySelector('.imagus-iframe-control')\n if (iControl) iControl.style.display = 'block'\n }\n if (that.fullZm === false) {\n that.EXTENSION.style.pointerEvents = ''\n that.EXTENSION.style.zIndex = ''\n }\n return that.switchToHiResInFZ_original()\n }\n}\n\nif (!this.EXTENSION) {\n const style = `\n #imagus-extension {\n pointer-events: none;\n }\n\n #imagus-extension.imagus-sidebar {\n background: padding-box rgb(31, 31, 31);\n border: ${this.DIV.style.border};\n border-radius: ${this.DIV.style.borderRadius};\n box-shadow: ${this.DIV.style.boxShadow};\n box-sizing: border-box;\n color: white;\n font: 13px / 1.3 sans-serif;\n left: calc(-360px + ${this.DIV.style.borderWidth} - 1px);\n padding: 5px 8px 6px;\n position: absolute;\n top: -${this.DIV.style.borderWidth};\n white-space: pre-wrap;\n width: 360px;\n z-index: -1;\n max-height: calc(100% + ${this.DIV.style.borderWidth} * 2);\n overflow-y: auto;\n overflow-wrap: break-word;\n overscroll-behavior: contain;\n }\n #imagus-extension.imagus-sidebar > b {\n font-weight: bold;\n }\n\n #imagus-extension.imagus-sidebar a {\n color: #bbccff\n }\n\n #imagus-extension.imagus-banner {\n position: relative;\n top: -20%;\n }\n #imagus-extension.imagus-banner div {\n display: table;\n height: 100%;\n width: 100%;\n }\n #imagus-extension.imagus-banner span {\n color: white;\n display: table-cell;\n font: 18px sans-serif;\n vertical-align: middle;\n text-align: center;\n white-space: pre-wrap;\n }\n #imagus-extension.imagus-banner:hover span {\n color: #cceeff;\n text-decoration: underline;\n }\n\n #imagus-extension.imagus-videojs {\n height: 100%;\n position: relative;\n top: -100%;\n z-index: -1;\n }\n #imagus-extension.imagus-videojs > #imagus-player {\n --bottom: 0;\n --left: 0;\n --margin: auto;\n --position: absolute;\n --right: 0;\n --top: 0;\n height: 100%;\n width: 100%;\n }\n #imagus-extension .vjs-max-quality-selector-button .vjs-menu {\n width: 12em;\n }\n #imagus-extension .vjs-max-quality-selector-button .vjs-menu .vjs-menu-content {\n padding: 5px;\n }\n\n .imagus-iframe-control {\n pointer-events: auto;\n cursor: pointer;\n position: fixed;\n inset: 0 auto auto 0;\n width: 100%;\n height: 5vh;\n border-left-top-radius: 1vh;\n background: yellow;\n opacity: .1;\n line-height: 5vh;\n text-align: center;\n z-index: 2;\n font-family: sans-serif;\n display: none;\n }\n .imagus-iframe-control:hover {\n opacity: .7;\n }\n #imagus-extension.imagus-iframe {\n /* pointer-events: none; */\n height: 100%;\n position: relative;\n top: -100%;\n /* z-index: -1; */\n }\n #imagus-extension > iframe {\n width: 100%;\n height: 100%;\n border: none;\n }\n `.replace(/\\n\\s*/g, '')\n this.EXTENSION = inject('div', 'imagus-extension', null, this.DIV)\n inject('style', 'imagus-extension-style', style)\n this.EXTENSION_custom_style = inject('style', 'imagus-extension-custom-style')\n override(this)\n}\n\nconst url = new URL($[0])\nif (url.search) {\n const elem = document.createElement('imagus-extension')\n url.searchParams.forEach((val, key) => elem.setAttribute(key, val))\n this.TRG.IMGS_ext_from_url = elem\n}\n\nthis.TRG.IMGS_ext_data?.forEach?.(i => {\n if (i[0] === '') i[0] = 'data:image/svg+xml,'\n})\n\nreturn this.TRG.IMGS_ext_data","note":"64h + Hababr (fix)\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=2419&limit=1&m=1#1\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=2212&limit=1&m=1#1\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1484&limit=1&m=1#1\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1379&limit=1&m=1#1\n\n\n!!!\nДинамически загружаемый Video.js (https://github.com/videojs/video.js), поддерживающий HLS, DASH и выбор разрешения.\n+\nДля остановки зацикливания видео - установить в параметре loop значение \"false\":\nhttps://i.imgur.com/iMVa3OF.png\n==\nDynamically loaded Video.js (https://github.com/videojs/video.js), supporting HLS, DASH and resolution selection.\nTo stop video looping, set the loop parameter to \"false\":\nhttps://i.imgur.com/iMVa3OF.png\n+\nБоковая панель с доп.инфо для некоторых сайтов (IMDB, YouTube)./ Side panel with add.info for some sites (IMDB, YouTube):\nhttps://i.imgur.com/se6MwJ6.png\n+\nПоддержка видео Ютуба во фреймах.\n==\nYoutube video support in frames.\n\n\nПРИМЕРЫ / EXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1480#6\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1240#9"},"[HLS_Player-Test]":{"link":".+\\.(m3u8|mpd)","loop":1,"url":"data:,$0","res":":\nthis.TRG.IMGS_ext_data = [\n '//' + 'data:image/svg+xml,',\n `test!`\n]\nreturn 'imagus://extension'","to":"64h\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1484&limit=1&m=3#1","note":"64h\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1484&limit=1&m=3#1\n\n!!!\nДинамически загружаемый Video.js (https://github.com/videojs/video.js), поддерживающий HLS, DASH и выбор разрешения.\n+\nNB! - Может вызвать проблемы с видео на Реддит (перехватывает интерфейс плеера), поэтому должен находиться ниже фильтра Reddit_video|v.redd.it\n==\nDynamically loaded Video.js (https://github.com/videojs/video.js), supporting HLS, DASH and resolution selection.\n+\nNB! - May cause problems with the video on Reddit (intercepts the player interface), so it should be below the Reddit_video|v.redd.it sieve.\n\nПРИМЕРЫ / EXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1480#6"},"[Audio Formats]":{"link":"\\.(?:aac|ac3|amr|ape|flac|m4a|opus|ra|wav|wma)(?:[?&]|$)","to":"$&#mp3","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jrdn2ly"},"1x":{"useimg":1,"link":"^1x\\.com/photo/(\\d+)","res":"photos-feed-image-[^\"]+\" src=\"([^\"]+)\n([^<]+)\n","img":"^(?:([^.]+\\.1x\\.com/images/user/[\\da-f]{32}-)(?:s[dq]|ld)(?=\\.)|1x\\.com/[A-Za-z0-9]+$)","to":":\nreturn $[1] ? `#${$[1]}#hd2 hd4 sd2 sd4#\\n${$[1]}` : this.node.closest('tr')?.querySelector('img')?.src","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jr9iz3u\nOLD\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jns5il6\n\n!!!\nДля \"Thumbs mode\" работает как обычно. Для \"Flow mode\" - навести курсор на имя автора. \n==\nFor \"Thumbs mode\" works as usual. For \"Flow mode\" - hover the cursor over the author's name. \n\nEXAMPLES\nhttps://1x.com/gallery\nhttps://1x.com/gallery/latest/published\nhttps://1x.com/photo/51960/category/humour/latest-additions/wheels-and-heels"},"123rf":{"useimg":1,"link":"^123rf\\.com/photo_\\d+","res":"\"fileFormat\":\"image/[^\"]+\",\"url\":\"([^\"]+)\"\n<title>([^<]+)","img":"^us(\\.123rf\\.com/)450wm(/.*)","to":"previews$1images$2","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jns5il6\nOLD\nhttps://www.reddit.com/r/imagus/comments/co5d0k/comment/ewj7k9s\n\nEXAMPLES\nhttps://www.123rf.com/clipart-vector/music.html?imgtype=1&oriSearch=music\nhttps://www.123rf.com/clipart-vector/green_apple.html?imgtype=1"},"1688-b":{"link":"^((?:i\\d\\d|img)\\.(?:c|china)\\.(?:aliimg|alibaba)\\.com/img/ibank/\\d{4}/\\d{3}/\\d{3}/[0-9_]+)\\.[0-9a-z]+(\\.(?:jpe?g|png|gif|bmp))(?:_\\.webp)?$","to":"$1$2","note":"khox\nhttps://www.reddit.com/r/imagus/comments/2xcn05/sieve_fo1688com\n\n\nEXAMPLE\nhttps://s.1688.com/selloffer/offer_search.htm?keywords=raspberry\nhttps://fuzhuang.1688.com/nanzhuang?spm=a262eq.12572798.jsczf959.1.4ad92fb14W4uGR\nhttps://show.1688.com/pinlei/industry/pllist.html?spm=a260j.12536027.jr60bfo3.25.2cd71ade0Hz9Og&&sceneSetId=856&sceneId=33706&bizId=217526&adsSearchWord=%E7%88%B8%E7%88%B8%E7%9F%AD%E8%A3%A4"},"2GIS":{"img":"^(i\\d+\\.photo\\.2gis\\.\\w+/images/\\S+)(?:_\\d+x\\d+\\.)(jpe?g|gif|png)","to":"$1.$2","note":"64h\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1100#5\n\nПРИМЕРЫ\nhttps://2gis.ru/moscow/gallery/firm/4504127908875338/photoId/30258560077653165?m=37.615442%2C55.760211%2F16.95\nhttps://2gis.ru/sochi/gallery/route/4222730366606936/photoId/30258560047830220?m=39.724498%2C43.58493%2F18.73"},"22pixx-x":{"link":"^(22pixx\\.xyz/)[^-]+-(\\w/[^?]+)\\.html.*","img":"^(22pixx\\.xyz/[or])s(/[^?]+).*","to":"$1$2","note":"imqswt\nhttps://www.reddit.com/r/imagus/comments/17ixrr3/comment/k6xuphr\nOLD\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/k0jqmfs\nhttps://www.reddit.com/r/imagus/comments/ipuury/22pixxxyz_sieve/\n\n\nEXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1369&limit=1&m=1#1\nhttps://www.reddit.com/r/imagus/comments/17ixrr3/22pixxxyz_sieve_needs_updating"},"23hq":{"link":"^(23hq\\.com/(?:[^/]+/)?[^/]+/photo/\\d+)(\\?.*)?$","res":":\nlet o=($._.match(/var originalURL\\s*=\\s*\"([^\"]+)/)||[,''])[1]\nlet l=($._.match(/id=\"fn_img\" src=\"([^\"]+)/)||[,''])[1]\nreturn [[[o&&o.length?'#'+o:'',l]]]","img":"^(23hq\\.com/\\d+/\\d+_[\\da-f]{32}_)(?!large)[^\\.]+","to":"$1large","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jxydqur\n\nEXAMPLES\nhttps://www.reddit.com/domain/23hq.com/new/\nhttps://www.23hq.com/tag/church?page=3\nhttps://www.23hq.com/photogroup/wgt/photos?orderby=posting_date&page=5\nhttps://www.23hq.com/photogroup/Iceland/user/MickPt?orderby=posting_date&page=8"},"220-volt.ru":{"link":"220-volt\\.ru/catalog-\\d+/","res":":\nvar i = $._.indexOf('<div style=\"display:none;\">');\nif(i<0) {return null; }\nvar t = $._.indexOf('</div>', i);\nif(t<0) {return null; }\nvar res = [];\nvar re = /href=\"([^\"]+)\"/gi\nvar data=$._.substring(i,t);\nvar a = re.exec(data);\nwhile(a)   {\n   res.push([a[1]]);\n   a = re.exec(data);\n}\nreturn res;\n","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3920#11\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3660#7\n\n\nПРИМЕРЫ\nhttps://www.220-volt.ru/catalog/benzopily/\nhttps://www.220-volt.ru/catalog/frezernye-stanki/\nhttps://www.220-volt.ru/catalog/gazonokosilki/"},"3DHentaiX-x":{"link":"^3dhentaix\\.com/.+/$","res":":\nvar id = $._.match(/id: \\'([^'])+/gm)[0].substring(5);\nvar nonce = $._.match(/nonce: \\'([^'])+/gm)[0].substring(8);\nvar p = this, x = new XMLHttpRequest;\nx.open('POST', 'https://3dhentaix.com/wp-admin/admin-ajax.php');\nx.setRequestHeader(\"Content-Type\", \"application/x-www-form-urlencoded\");\nx.timeout = 3000;\nx.send(\"action=msv-get-sources&id=\"+id+\"&nonce=\"+nonce);\nx.onloadend = function() {\n const resolutions = JSON.parse(this.responseText).sources[\"video-source-0\"];\n p.prepareCaption(p.node, 'Test');\n p.set(resolutions + \"#mp4\");\n}\nreturn null","note":"Randlai + Baton34V (fix)\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=560#15\nOLD\nhttps://www.reddit.com/r/imagus/comments/uobpsx/comment/i8hr3fc\n\nПРИМЕРЫ / EXAMPLES\nhttps://3dhentaix.com/school-girls/\nhttps://3dhentaix.com/uncensored/"},"3dtotal":{"link":"3dtotal\\.com\\/galleries\\/\\w+\\/\\S+","res":":\nvar i = $._.indexOf('data-project-on-big-screen');\nif(i<0) { return null; }\nvar t = $._.indexOf('\"}\\'', i);\nif(t<0) { return null; }\nvar res = [];\nvar re = /\"full\": [\\s\\S]+?\"url\": \"(https?:\\/\\/assets\\.3dtotal\\.com\\/[^\"]+)\"/gi\nvar a = re.exec( $._.substring(i,t) );\nwhile(a) {\n res.push([a[1]]);\n a = re.exec( $._.substring(i,t) );\n}\nreturn res;","note":"Baton34V\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=1680#8\n\nПРИМЕРЫ / EXAMPLES\nhttps://3dtotal.com/galleries/staff-picks"},"35photo.pro":{"link":"^(.+\\.)?35photo\\.pro\\/photo_\\d+\\/(\\?nude=ok)?$","res":"id=\"mainPhoto\" src=\"([^\"]+)\"","note":"Baton34V\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=1560#2\n\nПРИМЕРЫ / EXAMPLES\nhttps://35photo.pro/photo_1334844/#author/1334844\nhttps://35photo.pro/naskens/albums/6699/\nhttps://35photo.pro/nevmerzhitskaya/albums/5981/"},"4chan":{"img":"^(i\\.4cdn\\.org/[\\da-z]+/\\d+)s\\..*","to":"$1.#jpg png webm gif#","note":"!!!\nДля работы фильтра на внешних ссылках необходимо правило для SMH (см.ЧаВо, п.12).\n==\nFor the sieve to work on external links, you need a rule for SMH (see FAQ, p.12).\n\nEXAMPLES\nhttps://boards.4channel.org/vr/catalog\nhttps://boards.4channel.org/an/\nhttps://boards.4channel.org/g/\nhttps://boards.4chan.org/pol/"},"4PDA_video-p":{"link":"^4pda\\.to/forum/dl/post/(\\d+)/.+\\.mp4","url":"https://4pda.to/forum/index.php?act=attach&id=$1","res":":\nreturn $._.match(/<a id=\"\\w+\" href=\"([^\"]+)\" target=\"_blank\">/)[1]+'#mp4';\n","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1580#9\n\nПРИМЕРЫ\nhttps://4pda.to/forum/index.php?showtopic=1033108&view=findpost&p=119337312\nhttps://4pda.to/forum/index.php?showtopic=1033108&view=findpost&p=119314713"},"4shared":{"link":"4shared\\.com/(?:s|all-images|photo|video)/.*","res":":\nif(/4shared\\.com\\/all-images\\//.test($.base)){\nif(!this.array){this.array = []}\nthis.array.push(...[...$._.matchAll(/<img class=\"jsImageThumbnailLink\" src=\"([^\"]+)/g)].map(i=>[i[1]]));\nreturn /<a class=\"jsAllImagesNext submit-gray no-line\" href=\"/.test($._) ? {loop:'https://www.4shared.com'+$._.match(/<a class=\"jsAllImagesNext submit-gray no-line\" href=\"([^\"]+)/)[1]} : (()=>{const res = this.array; delete this.array; return res})();\n} else {\nreturn $._.match(/(?:<img id=\"zoom_image\" src=\"|[^{]file: ')(https:\\/\\/[^.]+\\.4shared\\.com\\/img\\/[^'\"]+)/)[1]\n}","img":"((?:[^.]+\\.)?4shared\\.com/img/[^?]+/)s20(/.*)","to":"$1s23$2","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jn8v5j7\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.4shared.com/s/fc-dAX9fsea\nhttps://www.4shared.com/s/fweqrZWJcea\nhttps://www.4shared.com/all-images/2fZt0j6U/Свечи.html"},"500px":{"link":"^(?:photos\\.)?(500px\\.)com/(?:photo/)?(\\d+).*","url":"https://api.$1com/v1/photos?ids=$2&image_size[]=34&image_size[]=2048","res":":\nvar i=JSON.parse($._).photos[$[2]],u=i.image_url\nreturn [[['#'+u[1], u[0]], [i.name, i.description, i.location, i.camera, i.lens, 'by ' + i.user.username + ' (' + i.user.fullname + ')'].filter(Boolean).join(' | ')]]","img":"^(?:pp?|drs)cdn\\.(500px\\.)org/+(?:photo/)?(\\d+)/+[^/]+/.+","note":"Baton34V + Gros-Poulet (SMH rule)\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=940#16\n\n!!!\nФильтр не работает для авторизованных пользователей в Хромиум-браузерах. Для того, чтобы фильтр работал для авторизованных пользователей в браузере FireFox, необходима подмена реферера. См. ЧаВо, п.12.\n==\nThe rule does not work for authorized users in Chromium browsers. In order for the rule to work for authorized users in Firefox, it is necessary to replace the referrer. See FAQ, p.12.\n\nПРИМЕРЫ / EXAMPLES\nhttps://500px.com/editors"},"8muses-x-p":{"link":"^(?:comics\\.)?8muses\\.(com/comics|io)/album/.+","res":":\nvar i = $._.indexOf('div class=\"gallery\"');\nif(i<0) { return null; }\nvar t = $._.indexOf('</div></a> </div></div>', i);\nif(t<0) t = $._.indexOf('<script src=\"', i);\nif(t<0) { return null; }\nvar res = [];\nvar re = /<img class=\"\\s?lazyload(?:ed)?\" data-src=\"([^\"]+)\"/gi\nvar a = re.exec( $._.substring(i,t) );\nwhile(a) {\n res.push(['https://'+($[1][0]==='i'?'8muses.io'+a[1].replace('/th_','/full_'):'comics.8muses.com'+a[1].replace('/th/','/fl/'))]);\n a = re.exec( $._.substring(i,t) );\n}\nreturn res;","img":"^((?:comics\\.)?8muses\\.(com|io)/(?:img/data|image)/)th","to":":\nreturn $[1]+($[2][0]==='i'?'full':'fl')","note":"imqswt\nhttps://www.reddit.com/r/imagus/comments/18bz31i/comment/kccr1w0\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2700#4\n\n!!!\nВ данное время фильтр поддерживает режим альбома при просмотре, но не поддерживает увеличение отдельных картинок на странице комикса.\n==\nCurrently, the sieve supports album mode when viewing, but does not support enlarging individual images on a comic book page.\n\nПРИМЕРЫ / EXAMPLES\nhttps://8muses.io/album/Zuleyka-3D-Comics\nhttps://8muses.io/album/Zuleyka-3D-Comics/Fail-Of-Lara\nhttps://comics.8muses.com/comics/album/Bad-Girls-Art-Comics\nhttps://comics.8muses.com/comics/album/MCC-Comics/Trigger-Warning/Issue-9\nhttps://comics.8muses.com/comics/album/Theme-Collections/The-Powerpuff-Girls"},"9GAG":{"link":"9gag\\.com/gag/\\w+","res":":\nvar i = $._.indexOf('JSON.parse');\nif(i<0) { return null; }\nvar t = $._.indexOf('\");</script>', i);\nif(t<0) { return null; }\nvar jsr=$._.substring(i+12,t).replace(/\\\\\"/g,'\"').replace(/\\\\\\\\/g,'');\nvar json=JSON.parse(jsr);\nif (json.data.post.type=='Animated')\n {return json.data.post.images.image460sv.vp9Url;}\nreturn json.data.post.images.image700.webpUrl;","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3340#18\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/domain/9gag.com/new/\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3340#13\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3340#17"},"Abload.de":{"img":"^(.*abload.de/im)age.php\\?img=(.+\\.(?:jpe?g|a?png|gif|svgz?|webp|w?bmp|xbm|pict|j(?:if|fif?)))","to":"$1g/$2","note":"destiny child\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1360#17\n\nEXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1360#11"},"ADmagazine.ru-p":{"img":"^(media\\.admagazine\\.ru/photos/\\w+/master/w_)\\d+(,c_limit/\\S+\\.\\w{3,4})","to":"$110000$2","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3700#15\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2840#16\n\nПРИМЕРЫ\nhttps://www.admagazine.ru/interior/interer-s-oblozhki-v-gostyah-u-dekoratora-yulii-akimovoj\nhttps://www.admagazine.ru/article/novaya-domashnyaya-kollekciya-ot-la-doublej?utm_social-type=owned&utm_brand=ad-ru"},"Adultempire-x-p-b":{"img":"^(.*adultempire\\.com/products/\\d+/\\d+)m.*","to":"$1h.#jpg jpeg#","note":"gpl2731\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3616#1\n\n\nEXAMPLES\nhttps://www.adultempire.com/sex-toys.html\nhttps://www.adultempire.com/385/category/milf-porn-videos.html\nhttps://www.adultempire.com/clips?scene_attribute=390"},"Aftershock.news":{"useimg":1,"img":"\\/files(\\/styles\\/(icon|teaser(large)?|avatar-mini)\\/public)","dc":2,"to":"/files","note":"atorn\nhttps://aftershock.news/?q=node/1031526&full\n\nПРИМЕРЫ\nава­та­ры, ти­зе­ры (из спис­ков, а не из ста­тьи), икон­ки раз­де­лов"},"AG.ru":{"link":"ag\\.ru/screenshots/(\\w+/\\d+)","url":"http://www.ag.ru/screenshots/$1","res":"<td[^<]*?\\sstyle=\"background:url\\(([^\\)]+)\\)","img":"(cdn\\.ag\\.ru\\/media\\/resize)\\/\\d+\\/(-\\/screenshots\\/\\w+\\/\\w+\\.\\w+)","to":"$1/1920/$2","note":"gpl2731\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1140#3\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=1560#18\n\nПРИМЕРЫ\nhttps://ag.ru/games/devastationzone-troopers/screenshots\nhttp://www.ag.ru/games/warlock-2-the-exiled/screenshots"},"AIBooru.online-x":{"useimg":1,"link":"^aibooru\\.online\\/posts\\/\\d+","res":":\nlet url;\n//if set to false, the largest possible media will be selected rather as opposed to web optimized media\nlet prefer_lowres=true;\nif(prefer_lowres){\n url = ($._.match(/(?:src|large-link\" href)=\"((?=https:\\/\\/cdn)[^\"]+)/) || [])[1];\n}else{\n url = ($._.match(/(?:secure_url\" content|original-link\" href)=\"([^\"]+)/) || [])[1];\n}\nconsole.log(url);\nreturn [url];","img":"^(?:s?(?:img|thumb|cdn)\\d?\\.|assets\\.)?(aibooru\\.online/+)(?:sample|thumb(?:nail)?|\\d+x\\d+)?/(\\w\\w/\\w\\w)/(?:thumbnail|sample-)?([\\da-f]+).*","to":"#cdn.$1/original/$2/$3.#png mp4 webm webp jpg gif jpeg#\ncdn.$1sample/$2/sample-$3.#png webp jpg gif jpeg#","note":"throwawayS251 + imqswt (edit)\nhttps://www.reddit.com/r/imagus/comments/1725bvc/comment/k3y81rr\nOLD\nhttps://www.reddit.com/r/imagus/comments/13fm75l/comment/jjzlfo6\nhttps://www.reddit.com/r/imagus/comments/11s43t5/aibooruonline_sieve_update\n\nEXAMPLES\nhttps://aibooru.online/artists/903\nhttps://aibooru.online/posts?tags=bangs&z=2\nhttps://aibooru.online/posts?tags=animated&z=5\nhttps://aibooru.online/posts/45827?q=parent%3A45827"},"Airbnb":{"link":"^airbnb\\.(com|de|it|es|fr|com.br|dk|co.uk|ru|pl|co.kr|cz|hu|at|pt|gr|com.tr|nl|se|com.tw|com.hk|com.sg|co.id|com.my|com.au|jp|is|no|ch|co.nz|ca|be|fi|ie|cat|co.in|cn|mx|cl|co.cr|co.ve|com.ar|com.bo|com.bz|com.co|com.ec|com.gt|com.hn|com.ni|com.pa|com.pe|com.py|com.sv|com.mt|gy|ae|co.il|co.th|com.ph|com.vn|co.za|lu|com.hr|com.kh|com.ua|la|kg|al|am|az|ba|com.ee|com.ro|lt|lv|me|rs|si|org)/(rooms|luxury).*/\\d+(\\?|$)","res":":\nvar pics = /\"mediaItems\":(\\[.+?\\])/.exec($._);\npics = JSON.parse(pics[1]);\nreturn pics.map(p => [p.baseUrl.replace('/pictures/','/im/pictures/') + '?im_w=1920', p.accessibilityLabel]);\n","img":"^(..\\.muscache\\.com/im/pictures/.+\\.jpe?g\\?im_w)=\\d+","to":"$1=1920","note":"hababr\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=660#4\n\nПРИМЕРЫ / EXAMPLES\n(ссылка в виде кода)\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=660#3"},"Airplane-Pictures":{"img":"^(cdn\\.airplane-pictures\\.net\\/images\\/uploaded-images\\/\\d{4}\\/\\d+\\/\\d+\\/\\d+)\\w+(\\.jpg)$","to":"$1$2","note":"Baton34V\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=1680#8"},"Alamy-p":{"link":"^alamy.com/[^.]+-(?:image)?\\d+\\.html","res":"=\"og:image\" content=\"([^\"]+)\n<title>([^<]+)","note":"https://www.reddit.com/r/imagus/comments/14ntai8/comment/jqbx2xe\n\nEXAMPLES\nhttps://www.alamy.com/stock-photo/red.html?sortBy=relevant\nhttps://www.alamy.com/stock-photo/green-energy.html?sortBy=relevant\nhttps://www.alamy.com/stock-photo/green-energy.html?imgt=2&sortBy=relevant"},"Allanal|Analonly|Nympho|Swallowed_trailers-p-x":{"link":"(?:tour.)?(?:allanal|analonly|nympho|swallowed|trueanal).com/(?:view|scenes)/.*","res":"(?:src|href)=\"([^\"]+)\" (?:type|class)=(?:'video/mp4'|\"download-trailer\")","note":"gpl2731\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1163&limit=1&m=1#1\n\nEXAMPLES\nhttps://tour.allanal.com/scenes\nhttps://tour.analonly.com/scenes\nhttps://tour.nympho.com/scenes\nhttps://tour.nympho.com/models/emma-starletto\nhttps://tour.swallowed.com/scenes"},"ALIEXPRESS":{"link":"(?:\\w\\w|www)?\\.?aliexpress\\.(com|ru)/item/(?:[\\w-]*?/)?(\\d+)\\.html.*","url":"aliexpress.$1/item/$2.html","res":":\nconst r = [];\nconst oldStyle=$._.match('data: ({.+})\\s*};');\nif (oldStyle) {\n const jsn=JSON.parse(oldStyle[1]);\n for (const url of jsn.imageModule.imagePathList) {\n r.push([url, '']);\n }\n}\ntry {\n const page = (new window.DOMParser()).parseFromString($._,'text/html');\n let imgs = Array.from(page.querySelectorAll('div[class^=\"gallery_Gallery__picture\"] > picture > img, div[class^=\"gallery_Gallery__video\"] > video'));\n if (imgs.length<1) {\n imgs = Array.from(page.querySelectorAll('div[class^=\"Product_GalleryBarItem\"] > img, div[class^=\"ProductDescription-module_wrapper\"] img'));\n }\n for (const i of imgs) {\n // filter out images inside links\n if (i.parentElement.nodeName === 'A') continue;\n let url = i.attributes.src.value.replace(/_\\d+x\\d+\\.(jpe?g|png)$/, '');\n url = url.replace('`','');\n r.push([url, '']);\n }\n const id = $[2];\n const x = new XMLHttpRequest;\n x.open('POST', 'https://aliexpress.ru/aer-jsonapi/review/v1/desktop/product/reviews?product_id=' + id +'&_bx-v=2.2.3', false);\n x.send('{\"productId\":\"' + id + '\",\"pageSize\":20,\"pageNum\":1,\"reviewFilters\":[\"ReviewFilter_WITH_PHOTO\"],\"starFilter\":\"StarFilter_ALL_STARS\",\"sort\":\"ReviewSort_USEFUL\"}');\n JSON.parse(x.responseText).data.reviews.forEach(f=>{\n if (f.additionalReview && f.additionalReview.images && f.additionalReview.images.length) {\n f.text += ' | 💬 ' + f.additionalReview.text;\n f.images = f.images.concat(f.additionalReview.images);\n }\n f.images.forEach(p => r.push([p.url, f.grade + '⭐ | ' + f.text]))\n });\n\n} catch (e) {}\n\nreturn r;","img":"(.*\\.alicdn\\.com/.+)_\\d+x\\d+\\.(jpe?g|png)","to":"$1","note":"hababr + Baton34V (fix)\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1700#4\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1460#5\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1220#21\n\n\n!!!\nКурсор желательно наводить на название товара. Данный фильтр показывает не только фото товара, но и фотографии в отзывах покупателей с текстами их отзывов - но только если пользователь авторизован и прошел проверку (слайдер) + в домене COM может не работать.\n==\nIt is desirable to hover the cursor over the name of the product. This sieve shows not only photos of the product, but also photos in customer reviews with the texts of their reviews - but only if the user is authorized and has passed the check (slider) + it may not work in the COM domain.\n\nПРИМЕРЫ / EXAMPLES\nhttps://aliexpress.ru/popular/shockproof-armor-case.html\nhttps://aliexpress.ru/category/202000005/home-appliances.html?spm=a2g2w.home.category.3.75df5931pbFi9W\nhttps://aliexpress.com/w/wholesale-Shockproof-Armor-Case.html\nhttps://www.aliexpress.com/w/wholesale-TV.html?SearchText=TV&catId=200002397"},"ALIEXPRESS+Taobao":{"img":"^((?:img[^.]*|g(?:[^.]*\\.?){1,2}?|asearch|\\w\\w\\d\\d)\\.(?:taobao|tb|ali)cdn\\.c(?:om|n)/)(.+)_\\d+x\\d+.+","to":"$1$2"},"Allegroimg":{"link":"(\\w\\.allegroimg\\.com/)(?:original|s\\d+)(/.*)","img":"(\\w\\.allegroimg\\.com/)(?:original|s\\d+)(/.*)","to":"$1original$2","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jn8v5j7\n\nEXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1360#11"},"AlphaCoders-p":{"img":"^(\\w*\\.alphacoders\\.com/.+)thumb(?:big)?-(.+\\.)\\w{3,4}$","to":"$1$2#png jpg#","note":"Rodny + Baton34V (fix)\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3720#11\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://wall.alphacoders.com/by_category.php?id=3&name=Anime+Wallpapers\nhttps://art.alphacoders.com/search?t=DRAGON\nhttps://alphacoders.com/users/profile/239750\nhttps://wall.alphacoders.com/profile.php?id=239750"},"AlternativeTo.net":{"link":"^alternativeto\\.net/software/[^/]+/about/","res":":\nconst result = JSON.parse($._.match(/__NEXT_DATA__[^{]+([^<]+)/)[1]).props.pageProps.mainItem.images.filter((i) => i.type === 'Screenshot').map((i) => [i.signedImages[0].signedURL])\nreturn result.length > 0 ? result : false","img":"^d4\\.alternativeto\\.net.+\\/(\\w+)\\.\\w+$","to":":\nconst elem = document.createElement('script')\nelem.textContent = `{\n const s = JSON.stringify([\n window.__NEXT_DATA__.props.pageProps.mainItem?.images,\n window.__NEXT_DATA__.props.pageProps.items?.map((i) => i.images),\n window.next.router.components['/software/[urlName]']?.props.pageProps.mainItem?.images,\n window.next.router.components['/software/[urlName]']?.props.pageProps.items?.map((i) => i.images),\n window.next.router.components['/software/[urlName]/about']?.props.pageProps.mainItem?.images,\n window.next.router.components['/software/[urlName]/about']?.props.pageProps.items?.map((i) => i.images)\n ].filter(Boolean))\n const m = s.match(new RegExp('fileName\":\"([^\"]+)\",\"type\":\"(Screenshot|Icon)\"[^}]+${$[1]}'))\n sessionStorage.setItem('imagus-file', m[1] + ';;' + m[2])\n document.currentScript.remove()\n}`\ndocument.head.appendChild(elem)\nconst [ file_name, file_type ] = sessionStorage.getItem('imagus-file').split(';;')\nsessionStorage.removeItem('imagus-file')\nreturn `https://d2.alternativeto.net/dist/${file_type === 'Icon' ? 'icons' : 's'}/${file_name}?format=${/\\.gif$/.test(file_name) ? 'gif' : 'png'}`","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jyduj9s\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1500#15\n\n\n!!!\nКурсор наводить на название программы (в результатах поиска).\n==\nHover the cursor over the name of the program (in the search results).\n\n\nПРИМЕРЫ\nhttps://alternativeto.net/software/pdf-expert/\nhttps://alternativeto.net/software/lucidchart/about/\nhttps://alternativeto.net/software/wiztree/?platform=windows&sort=addeddate"},"AmateurAlbum-x":{"link":"amateuralbum\\.net\\/showphoto\\.php\\?cat=\\d{1,5}&photo=\\d{1,10}.*","res":":\nlet imgurl=$._.match(/img id=\"resizable\".*?src=\"(.*?)\"/)[1];\n\nlet titlematches = $._.match(/class=\"boldfont\">([^<]*)<\\/div>/);\n\nlet title;\nif(titlematches != null) {\n title = titlematches[1];\n}\nelse {\n let titlematchesstyle2 = $._.match(/<title>([^<]*)<\\/title>/);\n title = titlematchesstyle2[1];\n}\n\nreturn [imgurl, title]; ","note":"iceiller9999\nhttps://www.reddit.com/r/imagus/comments/102rqm3/comment/j32iepd\nOLD\nhttps://www.reddit.com/r/imagus/comments/uw97ft/comment/iarowuj\n\nEXAMPLES\nhttps://www.amateuralbum.net/showgallery.php?cat=524\nhttps://www.amateuralbum.net/showgallery.php?cat=535"},"Aminus3":{"img":"^((?:aminus3(?:\\.s3\\.amazonaws)?|img\\.aminus2)\\.com/image/g\\d+/u\\d+/i\\d+/[\\da-f]{32}_)(?!large)[^\\.]+(.+)","to":"$1giant$2","note":"EXAMPLES\nhttps://www.aminus3.com/featured-photography/?page=3\nhttps://www.aminus3.com/remix/?sort=recent"},"AMAZON":{"link":"amazon\\.(?:com|de|fr|it|ca|co\\.uk|com\\.mx|co\\.jp|sg|ae|br|com\\.au|nl|in|sa|tr|se|pl)/(\\S+/dp|gp/slredirect)/\\S+","res":":\nvar i= $._.indexOf(\"{ 'initial':\");\nif (i<0) {return null;}\nvar t= $._.indexOf('}]},',i)\nif (t<0) {return null;}\nvar js= $._.substring(i,t+3).replaceAll(\"'\",'\"');\nvar imgArray=JSON.parse(js).initial;\nvar res=[];\nimgArray.forEach((item)=> {\n res.push([item.hiRes]);\n});\nreturn res;\n","img":"^((?:(?:images\\.|(?:images-[a-z]{2}\\.ssl-|(?![gz]-)[^.?]+\\.)images-)amazon|ia\\.media-imdb|m\\.media-amazon)\\.com/images/[^/]/[^.]+(?:(?!\\.[A-Za-z]{3,4}$)\\.[^A-Z_.]+)*)(?:$|(?!_(?:CB|V)\\d{4,}_\\.)[^?]*\\.([^?]*).*)","to":":\nvar x=$[2]||'#jpg png#'\nreturn '#' + $[1] + '.' + x +'\\n'+$[1] + '._SY1024_SX1024_.'+x","note":"gpl2731\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3780#11\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3360#2\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.amazon.com/b?node=6669703011&ref=MARS_NAV_desktop_plswitcher\nhttps://www.amazon.com/gp/new-releases/home-garden/3737201/ref=zg_bsnr_nav_home-garden_3_289814"},"AnalVids-x":{"link":"analvids.com/watch/\\d+/.+","res":":\nmax_resolution = 1080;\n\nconst textObj = $._.match(/\"qualities\":(?<clips>\\[.+?\\])/i)?.groups?.clips;\nif (!textObj) return;\n\nconst res_map = {'1080p': 1080, hd: 720, vga: 480, web: 240};\nconst trailers = JSON.parse(textObj)\n .map(a => ({ res: res_map[a.quality], url: a.src }))\n .filter(a => a.res <= max_resolution)\n .sort((a, b) => a.res - b.res);\n\nreturn trailers.pop()?.url || null;\n","note":"gpl2731\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3780#21\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3600#16\n\n\nChange max_resolution to your max preferred resolution.\ne.g.\n1080 will result in 1080p video\n900 will result in 720p video"},"AnandTech":{"img":"^(images\\.anandtech\\.com/[^/]+/\\d+/[^?]+)_(?:thumb|\\d+px|\\d+x\\d+|carousel)","to":"$1"},"Ancensored-x":{"link":"^(ancensored\\.com/)clip/[^/]+/[^/]+/([\\da-f]+).*","url":"//$1clip/-/-/$2","res":"<source type=\"video/mp4\"\\s+src=\"([^\"]+)\n=\"description\" content=([^\"]+)","img":"^(ancensored\\.com/)files/new_video/preview_sprite/\\d+/sprite-([^.]+).*","note":"https://www.reddit.com/r/imagus/comments/ecqqkd/comment/feyd0cn/\n\nEXAMPLES\nhttp://ancensored.com/video\nhttp://ancensored.com/updates/content\nhttp://ancensored.com/movies/pics/2014-iCloud-Leak-Scandal\nhttp://ancensored.com/nude-appearance/voice-from-the-stone/Emilia-Clarke/"},"Anime-Pictures.net":{"link":"^anime-pictures\\.net/pictures/view_post/\\d+\\?lang=","res":"href=\"(/pictures/download_image/[^\"]+)\"\nhref=\"(/pictures/get_image/[^\"]+)\"","note":"Rodny\n\nПРИМЕРЫ\nhttps://anime-pictures.net/pictures/view_posts/0?lang=ru\nhttps://anime-pictures.net/posts?page=4&order_by=date&ldate=0&lang=ru"},"AOL-p":{"img":"^([os]\\d?\\.aolcdn\\.com/(?:(?:images/)?dims|hss|photo)(?:[^/]*/|\\?(?:[^&]*&)*?image_uri=([^&]+)).*|r\\.search\\.aol\\.com/(?:[^/]+/)*?RU=(http[^/]+).*)","dc":2,"loop":2,"to":":\nif($[2]||$[3])return $[2]||$[3]\nvar m=$[1].match(/(https?)(?::\\/\\/?|%3A(?:%2F){1,2})(?!.+https?:\\/)(.+)/)\nreturn m ? m[1]+'://'+m[2] : $[1]","note":"EXAMPLES\nhttps://www.aol.com/news/?icid=aol.com-nav\nhttps://www.aol.com/entertainment/?icid=aol.com-nav\nhttps://www.aol.com/sports/?icid=aol.com-nav"},"APKPure":{"link":"^apkpure\\.com/[\\w-%]+/[\\w.]+","res":":\nlet i = $._.indexOf('<div class=\"screenbox\">');\nif(i<0) { return null; }\nlet t = $._.indexOf('</div>', i);\nif(t<0) { return null; }\nlet res = [];\nlet re = /a href=\"([^\"]+)\"/gi\nlet data=$._.substring(i,t);\nlet a = re.exec(data);\nwhile(a) {\n if (a[1].startsWith('http')) {\n res.push([a[1]]);\n }\n a = re.exec(data);\n}\nreturn res;","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1880#17\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=640#12\n\nПРИМЕРЫ / EXAMPLES\nhttps://apkpure.com/search?q=Metro&t=app\nhttps://apkpure.com/search?q=player&t=app"},"APNews":{"link":"^apnews\\.com/(article|video)/[\\w-]+","res":":\nif($[1]==='video'){\nconst max_resolution = 1080 // <- Set maximum video resolution\nlet x = new XMLHttpRequest()\nx.open('Get','https://cdn.jwplayer.com/v2/media/'+$._.match(/data-media-id=\"([^\"]+)/)[1],false)\nx.send()\nx = JSON.parse(x.responseText).playlist[0]\nconst t = [x.title,x.description].filter(Boolean).join(\" | \")\nx = x.sources\nx = x.filter(i=>i.type==='video/mp4'&&i.height<=max_resolution).sort((a,b) => b.height-a.height)\nreturn [[['#'+x.shift().file,x.filter(i=>i.height<=540)[0]?.file],t]]\n} else {\nlet m = [...new Map([...$._.matchAll(/<img class=\"Image\" alt=\"([^\"]+)\"\\s*data-flickity-lazyload-srcset=\"[^?]+\\?url=([^\\s\"]+)/g)].map(i=>[i[2].replace(\"https%3A%2F%2F\",\"https://\").replaceAll(\"%2F\",\"/\"),i[1]]))]\nif(m&&m.length)m.unshift(m.splice(m.findIndex(i=>i[0]===($._.match(/\"ImageObject\",\"height\":\\d+,\"url\":\"[^?]+\\?url=([^\"]+)/)||[,''])[1].replace(\"https%3A%2F%2F\",\"https://\").replaceAll(\"%2F\",\"/\")),1)[0])\nif(!(m&&m.length)){\nm = /\"og:image\" content=\"[^?]+\\?url=([^\"]+).+?\"og:image:alt\" content=\"([^\"]+)/gs.exec($._)\nm = m ? [m[1].replace(\"https%3A%2F%2F\",\"https://\").replaceAll(\"%2F\",\"/\"),m[2]] : ''\n}\nreturn m\n}","img":"^dims\\.apnews\\.com/dims[^?]+\\?url=https%3A%2F%2F([^%]+%[a-f0-9/%]+)","dc":2,"loop":2,"to":":\nconst n = this.node.offsetParent.parentNode.attributes.url?.textContent\nreturn n&&/\\/video\\//.test(n) ? n : '//'+$[1]","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/z7c5sl/comment/jqtwyhf\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1500#15\n\n!!!\nВ фильтре можно определить качество видео - установите нужное значение в этой строке:\nconst max_resolution = 1080 // <- Set maximum video resolution\nМожно переключать качество видео клавишей TAB.\n==\nIn the sieve, you can determine the quality of the videos - set the desired value in this line:\nconst max_resolution = 1080 // <- Set maximum video resolution\nYou can switch the video quality by pressing TAB.\n\n\nEXAMPLES\nhttps://apnews.com/hub/travel\nhttps://apnews.com/hub/sports\nhttps://apnews.com/video"},"Apple_music":{"link":"music\\.apple\\.com/\\w\\w/album/[^/]+/\\d+","res":"<meta property=\"og:image:secure_url\" content=\"([^\"]+)\">","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3560#9\n\n!!!\nНаводить курсор на название альбома. Поддержки видео пока нет.\n==\nHover over album name. There is no video support yet.\n\nEXAMPLES\nhttps://music.apple.com/ru/search?term=Beautiful\nhttps://music.apple.com/ru/search?term=green"},"Apteka.ru":{"link":"^apteka\\.ru/product/.*/","res":":\nvar i = $._.indexOf('<div class=\"ViewProductPage__photo\">');\nif(i<0) { return null; }\nvar t = $._.indexOf('</ul>', i);\nif(t<0) { return null; }\nvar res = [];\nvar re = /src=\"([^\"]+)\"/gi\nvar a = re.exec( $._.substring(i,t) );\nwhile(a) {\n res.push([a[1].replace('preview','original')]);\n a = re.exec( $._.substring(i,t) );\n}\nreturn res;\n","img":"(images\\.apteka\\.ru\\/)medium(_.+\\.jpeg)","to":"$1original$2","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1660#20\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2860#3\n\n\nПРИМЕРЫ\nhttps://apteka.ru/search/?q=витамины"},"Apteka.Magnit.ru":{"link":"^apteka\\.magnit\\.ru/product/[\\w-]+","res":":\nlet i = $._.indexOf('<div class=\"product-slider__box\" ');\nif(i<0) { return null; }\nlet t = $._.indexOf('</div></div></div>', i);\nif(t<0) { return null; }\nlet res = [];\nlet re = /<img data-url=\"([^\"]+)\"/gi\nlet data=$._.substring(i,t);\nlet a = re.exec(data);\nwhile(a) {\n res.push([a[1].replace(/resize\\/\\d+x\\d+\\//,'resize/1000x1000/')]);\n a = re.exec(data);\n}\nreturn res;","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=640#7\n\n!!!\nДля сайта http://apteka.magnit.ru (\"незащищенное соединение\") в браузере Хром рекомендуетя добавить следующее правило:\nchrome://settings/content/insecureContent\n[*.]apteka.magnit.ru\n\nПРИМЕРЫ\nhttps://apteka.magnit.ru/search?q=биодобавки\nhttps://apteka.magnit.ru/search?q=антибиотики\nhttps://apteka.magnit.ru/catalog/vitaminy_i_bad/vitaminy_i_mineraly/"},"Arazu.io":{"link":"^arazu\\.io/\\w+/","res":"<source src=\"([^\"]+)\" id=\"clip-source\"","img":"(r2\\.cdn\\.arazu\\.io\\/[^.]+)\\.webp","to":":\nreturn $[1] + \".mp4\"","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jv5cpmr\nOLD\nhttps://www.reddit.com/r/imagus/comments/zj5yo3/comment/izvkc7g\n\n\nEXAMPLES\nhttps://www.reddit.com/domain/arazu.io/new/"},"Arca.live-p":{"link":"^(arca\\.live/b/\\w+/\\d+).*","url":"$1","res":":\nif(/<iframe src=\"\\w/.test($._))return {loop:$._.match(/<iframe src=\"([^\"]+)/)[1]}\nlet h=[...new DOMParser().parseFromString($._, \"text/html\").querySelector('div[class=\"article-body\"]')?.querySelectorAll('img:not([class=\"twemoji\"]),video')]||[]\nreturn h.map(i=>[i.src])","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/172yg3u/comment/k43f7ro\nOLD\nhttps://www.reddit.com/r/imagus/comments/16qjg5w/comment/k1yn6rt\n\nEXAMPLES\nhttps://www.reddit.com/r/imagus/comments/15qpek4/comment/jw4wvh1"},"ARCHIVE.org-p":{"link":"^archive\\.org/details/.+","res":":\nvar video=$._.match(/<meta property=\"og:video\" content=\"([^\"]+)\">/);\nif (video) return video[1];\nvar i = $._.indexOf('aria-label=\"Item image slideshow\">');\nif(i<0) { return null; }\nvar t = $._.slice(t).search(/<\\/div>\\s+<\\/section>\\s+<\\/div>/gi);\nif(t<0) { return null; }\nt=t+i;\nvar res = [];\nvar re = /<a class=\"carousel-image-wrapper\" href=\"([^\"]+)\"[\\s\\S]+?<div class=\"carousel-caption\">(?:\\s+)?(.+)<\\/div>/gi\nvar data=$._.substring(i,t);\nvar a = re.exec(data);\nwhile(a) {\n res.push(['https://archive.org'+a[1],a[2].trim()]);\n a = re.exec(data);\n}\nreturn res;","img":"^archive\\.org/start/(\\d+/)end/(\\d+)","to":":\nreturn JSON.parse(document.querySelector('input[class=\"js-tv3-init\"]').value)['TV3.clipstream_clips'].find(i=>i.match(/t=\\d+\\/\\d+/)[0]==='t='+$[1]+$[2]).replace(/(t=\\d+\\/)(\\d+)/,function(a,b,c){return b+((parseInt(c)+300).toString())})","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/15sfn4j/comment/jydt067\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=60#3\n\n!!!\nИзображения в настоящее время не поддерживаются, только видео.\n==\nImages are not currently supported, only videos.\n\nПРИМЕРЫ / EXAMPLES\nhttps://archive.org/details/vintage_cartoons?and%5B%5D=year%3A%5B1920+TO+1939%5D\nhttps://archive.org/details/CNNW_20230218_090000_CNN_Newsroom_Live/"},"Archived.moe":{"link":"^archived\\.moe/\\w{1,5}/redirect/","res":"; url=([^\"]+)","note":"!!!\nДля корректной работы необходимо правило для SMH (см.ЧаВо, п.12).\n==\nTo work correctly, you need a rule for SMH (see FAQ, p.12).\n\n\nEXAMPLES\nhttps://archived.moe/h/thread/6528287/"},"ArtLimited":{"img":"^(artlimited\\.net/+user/(?:\\d/){7}\\d+/.*-)medium(-open\\.webp)","to":"$1large$2","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jnit0kk\n\n\nEXAMPLES\nhttps://www.artlimited.net/23835\nhttps://www.artlimited.net/painting\nhttps://www.artlimited.net/selections/favourites/"},"ArtStation":{"link":"^(artstation\\.com/)artwork(/[^/]+).*","url":"$1projects$2.json","res":":\n$=JSON.parse($._)\nif (!$.user) return null;\n$.s = $.software_items.map(function(i) {return i.name}).join(', ')\n$.c = [$.title, $.description.replace(/^<p>(.*)<\\/p>$/, '$1')].filter(function(x) {return !!x.trim()}).join(' - ') + ' by ' + $.user.username;\nreturn $.assets.map(function(x, i){\n var u=[x.image_url], k=u[0].replace('/large/', '/4k/')\n if(k!=u[0])u.unshift(k)\n return [u, [(i ? '' : '[' + $.c + ($.s ? ' in ' + $.s : '') + ']'), (x.title||x.title_formatted||'')].join(' ')]\n})","note":"https://www.reddit.com/r/imagus/comments/gsaurz/comment/fsfm8un\n\nEXAMPLES\nhttps://www.artstation.com/timgrayson\nhttps://www.artstation.com/?sort_by=latest\nhttps://www.artstation.com/search?sort_by=relevance&query=YELLOW"},"R_ArtUntamed-x":{"link":"^artuntamed\\.com/index\\.php\\?media/[\\w-.]+/","res":":\nlet i = $._.indexOf('<div class=\"p-body-content\">');\nif(i<0) { return null; }\nlet t = $._.indexOf('<div class=\"block-outer block-outer--after\">', i);\nif(t<0) { return null; }\nlet res = [];\nlet re = /data-src=\"([^\"]+)\"/gi\nlet data = $._.substring(i,t);\nlet a = re.exec(data);\nwhile(a) {\n res.push([a[1]]);\n a = re.exec(data);\n}\nreturn res;","note":"Baton34V\nПМ (09-03-22)\n\n!!!\nДля корректной работы фильтра нужно войти в аккаунт.\nВ результатах поиска курсор нужно наводить на название изображения. \n==\nFor the sieve to work correctly, you need to log in to your account.\nIn the search results, the cursor should be hovered over the name of the image.\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://artuntamed.com/index.php?media/featured\nhttps://artuntamed.com/index.php?members/odastein.34/#xfmgAlbums\nhttps://artuntamed.com/index.php?search/75126/&q=blondes&t=xfmg_media&o=date\nhttps://artuntamed.com/index.php?search/75130/&q=black&t=xfmg_album&o=date"},"ArtUntamed_attach-x":{"link":"^artuntamed\\.com/index\\.php\\?attachments/[\\w-.]+/","note":"by Baton34V\nПМ (09-03-22)\n\nПРИМЕРЫ / EXAMPLES\nhttps://artuntamed.com/index.php?ams/blender-3-0-and-a-new-era-has-started.59"},"Aryion-x-p-b":{"url":"$1view$2","res":"=\"og:image:secure_url\" content=\"([^\"]+)\n=\"og:title\" content=\"([^\"]+)","img":"^(?:static\\.)?(aryion\\.com/g4/)(?:data|derivative|thumb)(/\\d+).*","note":"https://www.reddit.com/r/imagus/comments/he202z/comment/fvqxxyx\n\n\nEXAMPLES\nhttps://aryion.com/g4/view/205050\nhttps://aryion.com/g4/favorites/HungrySuccubus\nhttps://aryion.com/g4/latest.php?type_search=Images"},"aShemale-x":{"link":"^ashemale\\.one\\/vids\\/\\d+\\/","res":"<video src=\"([^\"]+)","note":"DracoSerge\nhttps://www.reddit.com/r/imagus/comments/150zrnk/nsfw_i_want_to_share_sieves_some_i_made_and_some/\n\n!!!\nNo HD support:\nhttps://ashemale.one/best/hd/\n\n\nEXAMPLES\nhttps://ashemale.one/find/solo/"},"aShemaleTube-x":{"link":"^(?:[a-z]*\\.)*ashemaletube\\.com\\/videos\\/\\d+\\/[\\w\\-\\/?=&]+","res":"<source src=\"([^\"]+)","note":"DracoSerge\nhttps://www.reddit.com/r/imagus/comments/150zrnk/nsfw_i_want_to_share_sieves_some_i_made_and_some/\n\n\nno album support:\nhttps://www.ashemaletube.com/pics/cartoon/best-recent/\n\n\nEXAMPLES\nhttps://www.ashemaletube.com/videos/big-cock/best-recent/\nhttps://www.ashemaletube.com/model/domino-presley-796/"},"ASK.fm":{"useimg":1,"link":"^ask\\.fm/[^/]+/answers?/\\d+/photo","res":"\" src=\"([^\"]+)\"","img":"^((?:(?:d2hhj3gz5jljkm|dok7xy59qfw9h)\\.cloudfront\\.net|(?:ak)?(?:photo|img)\\d\\.ask\\.fm)/[^.]+/)[^/]+(/\\w+\\.)","to":"$1#large original normal#$2","note":"!!!\nНужен аккаунт\n==\nAn account needed."},"Astronomy.ru_forum":{"link":"astronomy\\.ru/forum/index\\.php.+action=media;sa=media;in=\\d+","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2600#13\n\nПРИМЕРЫ\nhttps://astronomy.ru/forum/index.php?action=media;sa=album;in=32\nhttps://astronomy.ru/forum/index.php?action=media;sa=album;in=34"},"Auchan.ru":{"link":"(www\\.)?auchan\\.ru/product/[\\w-]+/","res":":\nvar i = $._.indexOf('<div class=\"swiper-container\">');\nif(i<0) { return null; }\nvar t = $._.indexOf('</picture></div></div>', i);\nif(t<0) { return null; }\nvar res = [];\nvar re = /img src=\"([^\"]+)\" alt/gi\nvar a = re.exec( $._.substring(i,t) );\nwhile(a) {\n res.push([a[1]]);\n a = re.exec( $._.substring(i,t) );\n}\nreturn res;\n","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3040#9\n\nПРИМЕРЫ\nhttps://www.auchan.ru/catalog/hlebnaya-vypechka/\nhttps://www.auchan.ru/catalog/zootovary/"},"Auction.ru":{"link":"auction\\.ru\\/offer\\/.+\\.html","res":":\nvar i = $._.indexOf('<div class=\"fotorama\"');\nif(i<0) { return null; }\nvar t = $._.indexOf('<div class=\"offer__block\">', i);\nif(t<0) { return null; }\nvar res = [];\nvar re = /href=\"(https:\\/\\/static\\.auction\\.ru\\/offer_images\\/(?:\\w+\\/)?\\d{4}(?:\\/\\d\\d){3}\\/big\\/\\w\\/\\w+\\/\\w+\\.\\w+)\"/gi\nvar a = re.exec( $._.substring(i,t) );\nwhile(a) {\n res.push([a[1]]);\n a = re.exec( $._.substring(i,t) );\n}\nreturn res;\n","img":"(static\\.auction\\.ru\\/offer_images\\/(?:\\w+\\/)?\\d{4}(?:\\/\\d\\d){3}\\/)small(\\/\\w\\/\\w+\\/\\w+\\.\\w+)","to":"$1big$2","note":"Baton34V\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2000#5\n\nПРИМЕРЫ\nhttps://auction.ru/listing/offer/tovary_dlja_doma_i_sporta-17\nhttps://auction.ru/listing/offer/plastinki-101689"},"AusCelebs":{"useimg":1,"link":"^(forums\\.auscelebs\\.net/acnet-)files/(image)\\.php\\?id=(\\d+).*","res":"(//$1$2s/[^\"]+$3[^\"]+)","img":"^(forums\\.auscelebs\\.net/acnet-images/\\d+/)thumbs/","to":"$1","note":"https://www.reddit.com/r/imagus/comments/evfzau/comment/fggbg3p\n\nEXAMPLES\nhttps://forums.auscelebs.net/viewtopic.php?f=75&t=20772"},"Auto.ru":{"link":"^auto\\.ru/(?:\\w+/)+[\\da-f-]+/","res":":\nlet i = $._.indexOf('<div class=\"ImageGalleryDesktop__image-container\">');\nif(i<0) { return null; }\nlet t = $._.indexOf('</div></div></div><div class=\"ImageGalleryDesktop__thumbs-container\"', i);\nif(t<0) { return null; }\nlet res = [];\nlet re = /src=\"([^\"]+)\"/gi\nlet data=$._.substring(i,t);\nlet a = re.exec(data);\nwhile(a) {\n res.push([a[1]]);\n a = re.exec(data);\n}\nreturn res;\n","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=180#5\n\nПРИМЕРЫ\nhttps://auto.ru/scooters/all/\nhttps://auto.ru/cars/all/body-allroad/"},"Auto.RIA.com-p":{"link":"auto\\.ria\\.com\\/.+\\.html","res":":\nvar i = $._.indexOf('div class=\"carousel-inner\"');\nconsole.log(i);\nif(i<0) { return null; }\nvar t = $._.indexOf('<div class=\"preview-gallery mhide\">', i);\nconsole.log(t);\nif(t<0) { return null; }\nvar res = [];\n\nvar re = /<img class=\"outline m-auto\" src=\"([^\"]+)\"/gi\nvar a = re.exec( $._.substring(i,t) );\nwhile(a) {\n res.push([a[1].replace('s.jpg','f.jpg')]);\n a = re.exec( $._.substring(i,t) );\n}\nreturn res;\n","note":"Baton34V\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2160#6\n\nEXAMPLES\nhttps://auto.ria.com/car/opel/astra/"},"Auto.RIA.com_2-p":{"link":"auto\\.ria\\.com\\/newauto\\/.+\\.html","res":":\nvar i = $._.indexOf('window.initialState=');\nif(i<0) { return null; }\nvar t = $._.indexOf('};</script>', i);\nif(t<0) { return null; }\nvar sources=JSON.parse($._.substring(i+20,t+1));\nvar res = [];\nfor (var k in sources.photos) {\n var url='https://auto.ria.com/photos/'+ sources.photos[k].src;\n res.push([url]);\n}\nreturn res;\n","note":"Baton34V\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2160#6\n\n!!!\nВ РФ нужен прокси.\n\nEXAMPLES\nhttps://auto.ria.com/car/opel/astra/"},"AutoTrader.co.uk-p-b":{"img":"^((?:m|ec)\\.atcdn\\.co\\.uk/(?:a/)?media/)(?:[^/]+/)?([^?]+).*","to":"$1$2","note":"https://www.reddit.com/r/imagus/comments/gph1ts/comment/frmipmi\n\nEXAMPLES\nhttps://www.autotrader.co.uk/car-search?sort=price-desc&postcode=nr32ha&radius=1500&make=Mercedes-Benz&include-delivery-option=on&transmission=Manual&page=2\nhttps://www.autotrader.co.uk/car-search?postcode=NR32HA&radius=50&year-from=new&include-delivery-option=on&advertising-location=at_cars&page=1\nhttps://www.autotrader.co.uk/car-search?postcode=NR32HA&radius=100&year-from=new&make=BMW&model=1%20Series&include-delivery-option=on&advertising-location=at_cars&page=1"},"AVITO.ru":{"link":"^avito\\.ru/[^/]+/[^/]+/.+_\\d{10,}","res":":\nlet res = [];\nlet media = [];\n\nconst data = $._.match(/__initialData__[^\"]+\"([^\"]+)\"/)[1];\nconst data_json = JSON.parse(decodeURIComponent(data));\n\nfor (const key in data_json) {\n\tif (key.includes('@avito/bx-item-view')) {\n\t\tmedia = data_json[key].buyerItem.galleryInfo.media;\n\t}\n}\n\nlet hasVideo = false;\nfor (imgs of media) {\n\tif (imgs.isVideo) {\n\t\thasVideo = true;\n\t\tif (imgs.embededUrl.startsWith('//')) imgs.embededUrl = 'https:' + imgs.embededUrl\n\t\tres.push(['', `<imagus-extension type=\"videojs\" url=\"${imgs.embededUrl}\"></imagus-extension>`]);\n\t\tcontinue;\n\t}\n\n\tlet best_quality = 0;\n\tlet best_videoUrl = '';\n\tfor (imgSize in imgs.urls) {\n\t\tlet isa = imgSize.split('x');\n\t\tlet quality = parseInt(isa[0]) * parseInt(isa[1]);\n\t\tif (quality > best_quality) {\n\t\t\tbest_quality = quality;\n\t\t\tbest_videoUrl = imgs.urls[imgSize];\n\t\t}\n\t}\n\tif (best_quality != 0) {\n\t\tres.push([best_videoUrl, '']);\n\t}\n}\n\nif (hasVideo) {\n this.TRG.IMGS_ext_data = res;\n return { loop: 'imagus://extension' };\n}\n\nreturn res;","note":"hababr\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=2340#16\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1120#2\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=960#4\n\n\n!!!\nКурсор рекомендуется наводить на название товара.\n\n\nПРИМЕРЫ\nhttps://www.avito.ru/moskva/telefony/mobile-ASgBAgICAUSwwQ2I_Dc?cd=1\nhttps://www.avito.ru/orel?bt=1&q=samsung\nhttps://www.avito.ru/orel/krasota_i_zdorove/epilyator_philips_8000_2304447951\nhttps://www.avito.ru/samara/avtomobili/bmw_x3_2.0_at_2019_125000km_3634614814\nhttps://www.avito.ru/moskva/telefony/asus_zenfone_10_16512_black_3433685393"},"AwesomeScreenshot":{"link":"^awesomescreenshot\\.com/image/\\d+/","res":"<meta property=\"og\\:image\" content=\"([^\"]+)\"\n<meta name=\"twitter\\:image\" content=\"([^\"]+)\"","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=300#5\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/domain/awesomescreenshot.com\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=280#20"},"AwesomeScreenshot_sharekey":{"useimg":1,"link":"^awesomescreenshot\\.com/(image|video)/(\\d+)\\?(key=\\w+)","url":": 'awesomescreenshot.com/api/v1/'+$[1]+'/load'+($[1]=='video' ? '_video' : '')+'?id='+$[2]+'&'+$[3];","res":":\nlet jsn=JSON.parse($._);\nlet fUrl=($[1]=='video' ? 'fileMP4URI':'imageFileURI');\nlet res = jsn.data[$[1]][fUrl] || jsn.data[$[1]].fileWebMURI;\nreturn res;","note":"hababr\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=2000#9\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=300#5\n\n\nПРИМЕРЫ / EXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=280#20"},"Badfon.ru|Goodfon.ru":{"link":"(?:avto\\.)?(?:bad|good)fon\\.ru/(?:[^/]+/)?(?:wallpaper/?.+\\.html|download\\.php\\?id=\\d+&rash=\\d+x\\d+|download/[^/]+/\\d+x\\d+/?)$","res":":\nlet res;\nlet mtch=$._.match(/<meta property=\"og:image\" content=\"(https?:\\/\\/img\\d\\.(?:good|bad)fon\\.ru\\/)wallpaper\\/big(\\/\\w\\/\\w+\\/.+\\.jpe?g)\"[\\s\\S]+<meta property=\"og:description\" content=\"автор:[^:]+: (\\d+x\\d+)/);\nif (mtch!=null) {\n res=mtch[1]+'original/'+mtch[3]+mtch[2];\n}\nelse {\n mtch=$._.match(/<a href=\"([^\"]+)\" id=\"/);\n res=mtch[1];\n}\nreturn res;","note":"Rodny + Baton34V(fix)\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=580#13\n\nПРИМЕРЫ\nhttps://www.badfon.ru/catalog/cars/\nhttps://www.goodfon.ru/catalog/landscapes/"},"BAIDU":{"img":"^((?:imgs\\w+|[a-z].hiphotos)\\.baidu\\.com/(?:forum|image)/)[^=]+=[^/]+/([\\da-f]{40}.+)","to":"$1pic/item/$2"},"BAIDU_image":{"link":"^image\\.baidu\\.com/(?:i|search/detail)/?\\?(?:[^&]*&)*objurl=([^&]+).*","dc":1,"loop":1,"to":"$1"},"BakaSHOTS.me":{"img":"^(bakashots\\.me/[\\w-]{10,}=?=?)[./].+","to":"$1"},"Bayimg":{"link":"^(.*)bayimg\\.com/\\w{9}","res":"img src=\\\"/(.+(?:jpe?g|a?png|gif|svgz?|webp|w?bmp|xbm|pict|j(?:if|fif?)))\\\" id","to":"https://bayimg.com/$1","note":"destiny child\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1380#12\n\nПРИМЕРЫ / EXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1380#11"},"BBC-p":{"link":"^(?:open\\.live\\.)?bbc\\.[a-z.]{3,5}/(?:news/av|mediaselector/6/select/version/2.0/mediaset/pc/vpid)/.+","res":":\nif($._[0]!=='{'){\nthis.desc=($._.match(/name=\"description\" content=\"[^\"]+/)||[,''])[1]\nreturn /\"items\\\\\":\\[\\{\\\\\"id\\\\\":\\\\\"/.test($._)?{loop:'https://open.live.bbc.co.uk/mediaselector/6/select/version/2.0/mediaset/pc/vpid/'+$._.match(/\"items\\\\\":\\[\\{\\\\\"id\\\\\":\\\\\"(\\w+)/)[1]}:''\n}\nthis.TRG.IMGS_ext_data = [\n '//' + 'data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"960\" height=\"540\"></svg>',\n `<imagus-extension type=\"videojs\" url=\"${JSON.parse($._).media[1].connection[0].href}\"></imagus-extension>${this.desc}`\n]\nreturn {loop:'imagus://extension'}","img":"^(ichef(?:-\\d+)?\\.bbci\\.co\\.uk/news/)\\d+","to":"$12048","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jyil8u7\n\nДля работы фильтра нужно разрешить \"небезопасный контент\" в настройках браузера (см. ЧаВо, п.24):\n[*.]akamaized.net\n[*.]bbc.com\n==\nFor the sieve to work, you need to allow \"unsafe content\" in the browser settings (см. ЧаВо, п.24):\n[*.]akamaized.net\n[*.]bbc.com\n\n\nAs a workaround you can add a filter to your blocker: \nwww.bbc.com##a::after\nhttps://www.reddit.com/r/imagus/comments/j9gn22/comment/ga14d6b\n\n\nEXAMPLES\nhttps://www.bbc.com/news/world-us-canada-64461305"},"Bdsmlr-x":{"link":"\\w+\\.bdsmlr\\.com/post/\\d+$","res":":\nvar i = $._.indexOf('<div class=\"postholder\">');\nif(i<0) { return null; }\nvar t = $._.indexOf('<div class=\"tags\">', i);\nif(t<0) { return null; }\nvar res = [];\nvar re = /class=\"sidepostimage\"\\s+src=\"([^\"]+)\">/gi\nvar a = re.exec($._.substring(i,t));\nwhile(a) {\n res.push([a[1]]);\n a = re.exec( $._.substring(i,t) );\n}\nreturn res;\n","note":"Baton34V\n(в ПМ)"},"Behance-p":{"link":"^behance\\.net/gallery/\\d+/.*","res":":\nvar res = [];\nconst page = (new window.DOMParser()).parseFromString($._,'text/html');\nconst imgs = Array.from(page.querySelectorAll('#project-modules img'));\nfor(const img of imgs) {\n res.push([img.dataset.src || img.src]);\n}\n\nreturn res;","img":"^(behance\\.vo\\.llnwd\\.net)(/profiles\\d+/\\d+/projects/\\d+/)([^/]+)(\\.(?:jpe?g|png|gif))$","to":"$1$2hd_$3$4","note":"hababr\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=2000#9\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3760#8\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3140#17\n\nПРИМЕРЫ\nhttps://www.behance.net/vdpinto"},"Besplatka.ua-p":{"link":"^besplatka\\.ua\\/\\w\\w/obyavlenie\\/.+","res":":\nvar i = $._.indexOf('<div class=\"message-image swiper-container\">');\nif(i<0) { return null; }\nvar t = $._.indexOf('<div class=\"swiper-pagination\"></div>', i);\nif(t<0) { return null; }\nlet data=$._.substring(i,t);\nvar res = [];\nvar re = /src=\"([^\"]+)\"/gi\nvar a = re.exec(data);\nwhile(a) {\n res.push([a[1]]);\n a = re.exec(data);\n}\nreturn res;\n","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=500#2\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2060#14\n\nПРИМЕР\nhttps://besplatka.ua/ru/avtozapchasti/audio-i-videotehnika"},"BestBlades.ru":{"link":"^bestblades\\.ru/[\\w-]+/[\\w-]+/[\\w-]+/([\\w-]+)?","res":":\nvar i = $._.indexOf('<div class=\"product-gallery__previews');\nif(i<0) { return null; }\nvar t = $._.indexOf('<div class=\"product-main__summary-cart', i);\nif(t<0) { return null; }\nvar res = [];\nvar re = /href=\"([^\"]+)\"/gi\nvar data=$._.substring(i,t);\nvar a = re.exec(data);\nwhile(a) {\n res.push([a[1]]);\n a = re.exec(data);\n}\nreturn res;\n","note":"destiny child\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1600#15\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3660#3\n\nПРИМЕРЫ\nhttps://bestblades.ru/brendi/adimanti/\nhttps://bestblades.ru/designers/eric-ochs/\nhttps://bestblades.ru/kuhonnye-nozhi/universalnye-kukhonnye-ru/"},"BidBaits.ru":{"link":"^bidbaits\\.ru/bids/\\d+/?","res":":\nvar i = $._.indexOf('<div class=\"item-gallery__preview\">');\nif(i<0) { return null; }\nvar t = $._.indexOf('<i class=\"item-gallery__zoom-in jsGalleryZoomInBtn\">',i);\nif(t<0) { return null; }\nvar res = [];\nvar re = /src=\"([^\"]+)\"/gi\nvar data=$._.substring(i,t);\nvar a = re.exec(data);\nwhile(a) {\n res.push([a[1]]);\n a = re.exec(data);\n}\nreturn res;\n","note":"Baton34V\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1060#9\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3780#9\n\n\nПРИМЕРЫ\nhttps://bidbaits.ru/catalog/casting/\nhttps://bidbaits.ru/search?q=oneten%20110&c=&v=&min=&max=&filter=new|original&page=3"},"Bigl.ua-p":{"link":"^bigl\\.ua/p\\d+-.+$","res":":\nreturn JSON.parse(($._.match(/\"image\":(\\[[^\\]]+\\])/)||[,'[]'])[1]).map(i=>[i])","img":"^(images\\.prom\\.ua/\\d+)_w[12]00_h[12]00_(.+\\.jpg)$","to":"$1_w640_h640_$2","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jyil8u7\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=500#2\n\n\nПРИМЕРЫ\nhttp://bigl.ua/Mobilnye-telefony\nhttp://bigl.ua/t-Akkumulyatornye-batarei-k-noutbukam"},"Bild.de-p":{"img":"^(bilder\\.bild\\.de/fotos)-skaliert(/[^/]+/)(\\d+),(?!h=2000)[^.]+","to":"$1$2Bild/$3","note":"EXAMPLES\nhttps://www.bild.de/politik/ausland/politik-ausland/home-15683414.bild.html\nhttps://www.bild.de/lifestyle/startseite/lifestyle/lifestyle-15478526.bild.html"},"Bing":{"useimg":1,"link":"^(bing\\.com/images/search\\?)(?:q|view)=(?:[^&]*&)+id=([\\dA-F]{40}).*","loop":3,"url":": $[0].indexOf('mediaurl=h')>0 ? '' : $[1] + 'view=detailV2&id=' + $[2]","res":":\nvar m = $[0].match(/mediaurl=(http[^&]+)/);\nif(m)return decodeURIComponent(m[1])\nm = $._.match(/class=\"mainImage\"[^>]+?src2=\"([^\"]+)/)\nif(m)return m[1]\nm = document.evaluate('./ancestor-or-self::a[contains(@m, \"imgurl\") or contains(@m, \"murl\")]/@m',this.node,null,2,null).stringValue\nreturn m && JSON.parse(m).imgurl || null","img":"^(tse[\\d-]+\\.mm\\.bing\\.net/th\\?id=[^&]+).*","to":":\nvar m = document.evaluate('./ancestor-or-self::a[contains(@m, \"imgurl\") or contains(@m, \"murl\")]/@m', this.node ,null,2,null).stringValue\nm = m && JSON.parse(m);\nm = m && (m.imgurl||m.murl)\nreturn (m ? m + '\\n' : '') + $[1]","note":"EXAMPLES\nhttps://www.bing.com/images/search?q=ghislaine+pierie&form=HDRSC2&first=1\nhttps://www.bing.com/images/search?q=French+People&form=RESTAB&first=1"},"BitСhute-p":{"link":"(?:www\\.)?bitchute\\.com/video/\\w+/","res":"<source src=\"([^\"]+)\" type=\"video/mp4\"","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2520#9\n\nEXAMPLES\nhttps://www.bitchute.com/search/?query=alas&kind=video\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2520#8"},"BoardGameGeek":{"link":"^boardgamegeek\\.com/image/(\\d+).*","url":"//api.geekdo.com/api/images/$1","res":":\n$._=JSON.parse($._)\nreturn [[['#'+$._.images.original.url, $._.images.large.url], '['+ $._.href.substr($._.href.lastIndexOf(\"/\")+1).replace(/-/g,\" \").toUpperCase() +'] ' + $._.caption]]","img":"^cf\\.geekdo-images\\.com/(?:[^/?]+/)+?pic(\\d+).*","note":"GreyEternal\nhttps://www.reddit.com/r/imagus/comments/qj7cqo/improved_boardgamegeek_bggsieve/\n\n\nEXAMPLES\nhttps://boardgamegeek.com/crowdfunding\nhttps://boardgamegeek.com/videos/boardgame/all\nhttps://boardgamegeek.com/geeklist/318487/mikkos-top-100-2023-edition"},"Booking.com":{"link":"^(booking.com/hotel/.*\\.html)\\?.+$","url":"$1","res":":\nreturn [...$._.matchAll(/highres_url:\\s*'(.+?)'/g)].map(i => [i[1], '']);","img":"(bstatic\\.com/.*images/hotel)/(?:square60|max\\d+(?:x\\d+)?)/(.*\\.jpg.*)","to":"$1/max2048x2048/$2","note":"hababr\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=660#2\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.booking.com/searchresults.ru.html?city=-1456928\nhttps://www.booking.com/searchresults.ru.html?city=-126693"},"Booru.io-x-p":{"link":"^(booru\\.io/)p/([\\w-]+)","url":"$1api/legacy/entity/$2","res":":\nvar x=JSON.parse($._);\nvar bq=0;\nvar u='';\nObject.entries(x.transforms).forEach(([key, value]) => {\n var q=parseInt(key.match(/width=(\\d+):image\\/jpeg/)[1]);\n if (q>bq) {\n bq=q;\n u='https://booru.io/api/legacy/data/' + value;}\n});\nreturn u;","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=300#5\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3360\n\nПРИМЕРЫ / EXAMPLES\nhttps://booru.io/q/ribbon\nhttps://booru.io/q/animated%23meta"},"Booru.plus-x-p":{"link":"^booru\\.plus/\\+.+","res":":\nif(/source\\s+src=/.test($._))return $._.match(/source\\s+src=(\\S+)/)[1]+'#mp4'\nreturn $._.match(/<meta\\s+content=(\\S+)\\s+property=og:image>/)[1]","note":"imqswt\nhttps://www.reddit.com/r/imagus/comments/17ekh1h/comment/k6j0ulb\n\n!!!\nИногда требуется повторное наведение курсора.\n==\nSometimes you need to hover the cursor again.\n\nEXAMPLES\nhttps://booru.plus/+elderscrolls\nhttps://booru.plus/+madokamagica\nhttps://booru.plus/+nsfwanimegifs"},"Brazzers|Digitalplayground|Mofos|Realitykings-x-p":{"link":"(?:brazzers|rk|realitykings|mofos|digitalplayground|twistys)\\.com\\/(?:video|scene|series)\\/(\\d+)\\/.+","res":":\nconst max_resolution = 1080;\n\nconst m = /jwt\":\"([^\"]+)/g.exec($._);\nconst token = m ? m[1] : null;\nif (!token) return;\n\nconst req = new XMLHttpRequest();\nreq.open(\n 'GET',\n `https://site-api.project1service.com/v2/releases/${$[1]}`,\n false\n);\nreq.setRequestHeader('instance', token);\nreq.send();\nif (req.status !== 200) return;\n\nlet data = {};\ntry {\n data = JSON.parse(req.responseText);\n} catch (e) {\n return;\n}\n\nlet streams = data.result.children.find(c => c.type.toLowerCase() === 'trailer')\n ?.videos?.full?.files;\n\nif (!streams) {\n streams = data?.result?.videos?.mediabook?.files;\n}\nif (!streams) return;\n\nconst trailers = Object.keys(streams)\n .map(s => ({\n res: Number(s.replace(/\\D/g, '')),\n url: streams[s].urls.download,\n }))\n .filter(a => a.res <= max_resolution)\n .sort((a, b) => b.res - a.res);\n\nif (!trailers.length) return;\nreturn trailers[0].url;\n","note":"gpl2731\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3780#4\nOLD:\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3660#19\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3600#18\n\n\nbrazzers.com\ndigitalplayground.com\nmofos.com\nrealitykings.com\nrk.com\ntwistys.com\n\nChange max_resolution to your max preferred resolution.\ne.g.\n1080 will result in 1080p video\n900 will result in 720p video\n\nEXAMPLES\nhttps://www.brazzers.com/videos\nhttps://www.digitalplayground.com/scenes?groups=9031"},"Brutalica.ru":{"link":"^brutalica\\.ru/[\\w-]+/[\\w-]+(/[\\w-]+)?","res":":\nvar i = $._.indexOf('<ul class=\"more-image\">');\nif(i<0) { return null; }\nvar t = $._.indexOf('</ul>', i);\nif(t<0) { return null; }\nvar res = [];\nvar re = /href=\"([^\"]+)\"/gi\nvar data=$._.substring(i,t);\nvar a = re.exec(data);\nwhile(a) {\n res.push([a[1]]);\n a = re.exec(data);\n}\nreturn res;\n","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3660#3\n\nПРИМЕРЫ\nhttps://brutalica.ru/bestech/\nhttps://brutalica.ru/skladnie-nozhi/"},"Bugzilla":{"link":"^bug(?:s|zilla)\\.[^/]{5,20}/attachment\\.cgi\\?id=\\d+$","to":":\nvar n=this.node, p = n.parentNode, q = p&&p.parentNode; q = q && q.querySelector('.bz_attach_extra_info,.attach-info');\nlet ext = /\\.(jpe?g|png|gif|bmp|web[mp]|svg|mp4|ogv)$/i.exec(n.title || n.textContent)?.[1];\nreturn q && ~q.textContent.indexOf('image/') || ext || n.classList.contains('lightbox') ? $[0] + (ext ? '#' + ext : '') : ''","note":"hababr\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=2080#15\n\n\nEXAMPLES\nhttps://bugzilla.mozilla.org/show_bug.cgi?id=1833842\nhttps://bugzilla.mozilla.org/show_bug.cgi?id=1048286\nhttps://bugzilla.mozilla.org/show_bug.cgi?id=1605229"},"Bunkr":{"link":"^(?:[^.]+\\.)?bunkrr?\\.(?:la|[rs]u)/[vi]/.+","res":":\n$=$._.match(/(?:source|img)\\s+src=\"([^\"]+)/)?.[1]||''\nreturn $+(/\\.mov$/i.test($)?'#mp4':'')","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/17cnl32/bunkr_not_working/k5tgzdh\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1160#4\n\n\nПРИМЕРЫ / EXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1140#9"},"Casimages":{"link":"^casimages\\.com/(?:i/[^.]+\\.jpg\\.html|f/([A-Za-z0-9]+))","res":":\nreturn $[1] ? \"https://www.casimages.com/f_get.php?f=\"+$[1]+\"#mp4\" : ($._.match(/<a href=\"([^\"]+)\"><img border/)||[])[1]??''","img":"(nsm(?:\\d+)\\.casimages\\.com/img/\\d{4}/\\d{2}/\\d{2}//)mini_(\\d+\\.(?:jpe?g|a?png|gif))","to":"$1$2","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jnit0kk\n\nEXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=40#15"},"Catalog.Onliner.by":{"link":"^catalog\\.onliner\\.by/\\w+/\\w+/\\w+","res":":\nvar i = $._.indexOf('<div id=\"product-gallery\"');\nif(i<0) {console.log('123');return null; }\nvar t = $._.indexOf('<div id=\"product-gallery-fotorama\"', i);\nif(t<0) {console.log('456');return null; }\nvar res = [];\nvar re = /data-original=\"([^\"]+)\"/gi\ndata=$._.substring(i,t);\nvar a = re.exec(data);\nwhile(a){\nconsole.log(a[1]);\n res.push([a[1]]);\n a = re.exec(data);\n}\nreturn res;\n","img":"^(content2\\.onliner\\.by/catalog/device/)\\w+(/[0-9a-f]+\\.jpe?g)$","to":"$1main$2","note":"Rodny+Baton34V (fix)\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3720#11\n\nПРИМЕРЫ\nhttps://catalog.onliner.by/notebook\nhttps://catalog.onliner.by/smartwatch/huawei/gt3protit46avsp/prices"},"Celeb.gate.cc-x-b":{"img":"^(celeb\\.gate\\.cc/media/cache/)[^/]+","to":"$1original","note":"https://www.reddit.com/r/imagus/comments/8zq1dq/comment/e2l91z7\n\n\nEXAMPLES\nhttps://celeb.gate.cc/melissa-rauch/gallery.html\nhttps://celeb.gate.cc/oona-chaplin/gallery.html\nhttps://celeb.gate.cc/melissa-rauch/gallery.html#videos\nhttps://celeb.gate.cc/oona-chaplin/gallery.html#videos"},"Ceneo.pl":{"useimg":1,"link":"^(?:redirect\\.)?ceneo\\.pl/(?:products/)?\\d+","res":":\nlet o = JSON.parse(($._.match(/<script type=\"application\\/ld\\+json\">\\n(\\{.+?})\\n<\\//s)||[,'{}'])[1]);\nif (!o.image)return null;\nreturn o.image.map((i,n)=>!n?[i,o.description]:[i])","img":"^(image\\.ceneostatic\\.pl/data/products/\\d+/)[^i]","to":"$1i","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/joowxsu\n\n!!!\nTo see all the product photos, you need to hover the cursor over the product name.\nSome products (rarely) may have a \"yellow indicator\".\n\n\nEXAMPLES\nhttps://www.ceneo.pl/Komputery\nhttps://www.ceneo.pl/Pokrycia_dachowe/Lokalizacja:Warszawa.htm\nhttps://www.ceneo.pl/Konsole_do_gier;szukaj-konsole+do+gier"},"CGSociety":{"link":"^(.+)\\.cgsociety\\.org/art/.+","res":"data-image-largest=\"([^\"]+)\"","img":"^(cgimg\\.s\\d+\\.amazonaws\\.com/t/g\\d+.+)_\\d+(\\.jpe?g)$","to":"#$1_orig$2\n$1_large$2\n","note":"Rodny\n\nПРИМЕРЫ / EXAMPLES\nhttps://cgsociety.org/galleries/featured"},"CGSociety_2":{"link":"((?:\\w+\\.)?cgsociety\\.org)(?:/c)?(?:/.+)?(/\\w{4,})/[^/]+$","url":"$1/api/images$2","res":":\nlet jsn=JSON.parse($._);\nlet res=[];\nfor (image of jsn.included)\n{\n if (image.type=='works') {\n if (image.attributes.work_type=='image') {\n res.push([image.attributes.original_url]);\n }\n else if (image.attributes.work_type=='embed') {\n res.push([image.attributes.medium_url]);\n }\n }\n}\nreturn res;","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=500#19\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2580#17\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://cgsociety.org/galleries/recent\nhttps://cgsociety.org/search/works?query=GREEN\nhttps://cgsociety.org/?channel_genre=Character%20Art&homepage_section=workshops"},"ChipDip.ru":{"link":"(?:www\\.)?chipdip\\.ru\\/product\\d?\\/.+","res":":\nvar i = $._.indexOf('<div class=\"product__image-previews\" id=\"productphotobox\">');\nif(i<0) { return null; }\nvar t = $._.indexOf('<div class=\"product_main-controls\">', i);\nif(t<0) { return null; }\nvar res=[];\nvar re = /span data-fancybox-href=\"([^\"]+)\" title=\"([^\"]+)\"/gi\nvar a = re.exec( $._.substring(i,t) );\nwhile(a) {\n res.push([a[1],a[2]]);\n a = re.exec( $._.substring(i,t) );\n}\nreturn res;","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2380#3\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2320#12\n\n!!!\nКурсор наводить на название товара.\n\nПРИМЕРЫ\nhttps://www.chipdip.ru/catalog-show/hand-tools-sets\nhttps://www.chipdip.ru/catalog-show/screwdrivers-with-attachments"},"Chromium.org_bugs":{"img":"^(bugs\\.chromium\\.org/p/chromium/issues/attachment\\?aid=\\d+(?:&[^&]+)*?&inline=[^&]+).*","to":"$1"},"CIAN.ru":{"link":"(\\w+\\.)?cian\\.ru/.*\\d+/","res":":\nvar i = $._.indexOf('\"photos\":');\nif(i<0) { \n i = $._.indexOf('\"gallery\":{\"imageList\":');}\nif(i<0) { return null; }\nvar t = $._.indexOf('}]', i);\nif(t<0) { return null; }\nvar res = [] \nvar re = /\"fullUrl\":\"([^\"]+)\"/gi\nvar a = re.exec( $._.substring(i,t) );\nwhile(a){\n res.push([a[1].replace(/\\\\u002F/g,'/')]);\n a = re.exec( $._.substring(i,t) );\n}\nreturn res;","img":"(cdn-p\\.cian\\.site/images/.+-)\\d(\\.jpe?g?)","to":"$11$2","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2920#9\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2920#6\n\n\n!!!\nКурсор наводить на название объекта.\n\n\nПРИМЕРЫ\nhttps://www.cian.ru/snyat-kvartiru/\nhttps://www.cian.ru/kupit-dom-moskovskaya-oblast/"},"CITILINK.ru":{"link":"(?:www\\.)?citilink\\.ru\\/product\\/[\\w-]+\\/","res":":\nvar i = $._.indexOf('window.__env__.endpoints')\nif(!i) { return null; }\nvar t = $._.indexOf(':[]}</script>', i);\nif(!t) { return null; }\nvar res = [] \nvar re = /\"url\":\"(https:\\/\\/[\\w-\\.]+citilink\\.ru\\/[^\"]+?b\\.jpg)\",\"size\":\"XL\"/gi\nvar data=$._.substring(i,t);\nconsole.log(data);\nvar a = re.exec(data);\nwhile(a){\n res.push([a[1]]);\n a = re.exec(data);\n}\nreturn res;","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=2100#8\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3380#20\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2860#7\n\n\nПРИМЕРЫ\nhttps://www.citilink.ru/catalog/noutbuki/?sorting=rating_desc\nhttps://www.citilink.ru/catalog/stiralnye-mashiny/?sorting=price_asc\nhttps://www.citilink.ru/catalog/feny-i-termopistolety/?text=%D1%84%D0%B5%D0%BD%D1%8B"},"Civitai":{"useimg":1,"link":"^civitai\\.com/(?:\\w+/\\d+/.+|(?:models|images)/\\d+)","res":":\nlet u = $._.match(/https:\\/\\/image\\.civitai\\.com\\/[^\\/]+\\//);\nif(!u)u = 'https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/'\nlet o = JSON.parse($._.match(/\"application\\/json\">({.*?})</)[1]).props.pageProps.trpcState.json.queries[0].state.data;\nreturn o.pages ? o.pages[0].items.map(i=>[u+i.url+'/'+i.name]) : u+o.url+'/'+o.name","img":"^(image\\.civitai\\.com/[^/]+/[^/]+)/width=\\d+","to":"$1","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/14a8zx7/comment/joek6i1\n\nEXAMPLES\nhttps://civitai.com/articles\nhttps://civitai.com/tag/green\nhttps://civitai.com/user/no_data/models\nhttps://www.reddit.com/domain/civitai.com/new/"},"clip2net|c2n.me":{"link":"(?:^clip2net\\.com/s/|^c2n\\.me/)\\w+$","res":"<meta property=\"og:image\" content=\"([^\"]+)\">","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2580#13\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2320#18\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://clip2net.com/gallery_view.html\nhttps://www.reddit.com/domain/c2n.me/"},"ClippitUser.tv":{"link":"^(clippit)user\\.tv/c(/\\w{6}).*","img":"^clips.(clippit).tv(/\\w{6})/thumbnail.*","to":"#//clips.$1.tv$2/720.mp4\n//clips.$1.tv$2/360.mp4","note":"EXAMPLES\nhttps://www.reddit.com/domain/clippituser.tv/new/"},"clips4sale-x-p-b":{"link":"clips4sale.com/studio/\\d+/\\d+(/.*)?","res":":\nlet m = /source src=\"(.*)\" type='video\\/mp4/g.exec($._)\nif (m) return m[1];\n \nm = /property=\"og:image\" content=\"([^\"]+)/g.exec($._)\nif (m) return m[1];\n\nreturn;","img":"^imagecdn\\.clips4sale\\.com/.*(?:jpe?g|png|gif)","to":":\nconst img_elem = document.querySelector(`img[src*=\"${$[0]}\"]`);\nconst gif = img_elem.getAttribute(\"data-src\")\nreturn gif || img.elem.src;","note":"gpl2731\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3620#12\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3616#1\n\n!!!\nКурсор наводить на название клипа.\n==\nMouse over the title to get the mp4 preview.\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/domain/clips4sale.com/\nhttps://www.clips4sale.com/studio/122965/eva-de-vil\nhttps://www.clips4sale.com/studio/76569/goddess-lindsey"},"ComixZilla-x-p":{"link":"^comixzilla\\.com/en/comic-g/.*/$","res":":\nlet parser = new DOMParser();\nlet doc = parser.parseFromString($._, \"text/html\");\nlet images = doc.querySelectorAll('.dgwt-jg-item a');\nlet final = [];\nfor(image of images){\n final.push([image.href]);\n}\nreturn final;","note":"Randlai\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=620#12\n\nEXAMPLES\nhttps://comixzilla.com/en/art-a/fantasy/\nhttps://comixzilla.com/en/c-publisher/cartoon/"},"Communities.win":{"img":"^media\\.communities\\.win/preview/\\w+\\.\\w+","to":":\nlet urlNode=this.node.parentNode.parentNode.nextElementSibling.children[1].firstChild;\nconsole.log(urlNode.getAttribute('href'));\nreturn urlNode.getAttribute('href');","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1160#20\n\nПРИМЕРЫ / EXAMPLES\nhttps://communities.win/c/all\nhttps://communities.win/c/Animals/"},"ComputerUniverse":{"link":"^computeruniverse\\.net/\\w\\w/p/\\d+","res":":\nlet res=[];\nlet jsn=JSON.parse($._.match(/<script id=\"__NEXT_DATA__\" type=\"application\\/json\">(.+?)<\\/script>/)[1]);\nif (jsn.props.pageProps.legacyFormat==false) {\nconsole.log((jsn.props.pageProps.edgeContextEncoded));\n jsn=JSON.parse(decodeURIComponent(jsn.props.pageProps.edgeContextEncoded));\n}\nelse {\n jsn=jsn.props.pageProps.edgeContext;\n}\nfor (let imgUrl of jsn.pageData.staticData.product.ProductPictures) {\n res.push(['https://img.computerunivers.net'+imgUrl.ImageUrlBig]);\n}\nreturn res;\n","img":"(img\\.computerunivers\\.net/images/)\\d\\dx\\d\\d(/[A-F0-9]+\\.\\w{3,4})$","to":"$11000x1000$2","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1600#4\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1200#13\n\n\n!!!\nТребуется повторное наведение курсора.\n==\nRe-hovering of the cursor is required.\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.computeruniverse.net/ru/c/noutbuki-planshety-i-pk/bloknoty-i-aksessuary"},"Coomer|Kemono-x-p":{"link":"^(beta\\.)?(?:kemono|coomer)\\.(?:party|su)/[^/]+/user/[^/]+/post/\\d+","res":":\nreturn [...$._.matchAll(/(?:class=\"fileThumb\"[^\\w]+href|src(?==\"[^>]+type=\"video\\/[^\"]{3,4}\"))=\"([^\"]+)\"(?:[^>]+>[^>]+src=\"([^\"]+))?/g)].map(i=>[['#'+i[1],i[2]]])","img":"^img(\\.(?:coomer|kemono)\\.(?:party|su)/)thumbnail","to":"c2$1","note":"imqswt\nhttps://www.reddit.com/r/imagus/comments/14b0e93/comment/jt3vi50\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1740#6\nhttps://www.reddit.com/r/imagus/comments/xv9tah/betakemonoparty_rule\n\n!!!\nВ фильтре есть возможность переключать высокое/среднее разрешение - клавишей TAB.\n==\nThe rule has the ability to switch high/medium resolution - with the TAB key.\n\n\nEXAMPLES\nhttps://kemono.su/fanbox/user/16051830?o=100\nhttps://kemono.party/patreon/user/49965584\nhttps://coomer.party/onlyfans/user/onlyhentai69\nhttps://coomer.su/onlyfans/user/twinhentai\nhttps://www.reddit.com/domain/kemono.party/new\nhttps://www.reddit.com/domain/coomer.party/new"},"Coub":{"link":"^coub\\.com\\/view\\/\\w{4,6}","res":":\nvar i = $._.indexOf(\"<script id='coubPageCoubJson' type='text/json'>\");\nif(i<0) { return null; }\nvar t = $._.indexOf(\"script>\",i);\nif(t<0) { return null; }\nvar re=/{.*}/gi\nvar sourcesSTR = re.exec($._.substring(i,t));\nvar ulr;\nvar js1=JSON.parse(sourcesSTR)\nvar url = js1.file_versions.share?.default;\nif (url==null) {\n url=js1.file_versions.html5?.video?.higher?.url;\n}\nif (url==null) {\n url=js1.file_versions.html5?.video?.high?.url;\n}\nreturn url||''","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/z0zyox/comment/kgkh2pt\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2600#3\n\n!!!\nКурсор следует наводить на название ролика.\n==\nThe cursor should be pointed at the title of the video.\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://coub.com/hot\nhttps://coub.com/tags/crocodiles\nhttps://www.reddit.com/domain/coub.com/new"},"Couchsurfing":{"img":"(blog\\.couchsurfing\\.com/wp-content/uploads/[^.]+\\.(?:jpe?g|png))","to":"$1","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jnit0kk\n\nEXAMPLES\nhttps://blog.couchsurfing.com/page/2/\nhttps://blog.couchsurfing.com/category/all/community/meet-a-host/\nhttps://blog.couchsurfing.com/category/all/couchsurfing-travel/travel-guides/"},"Craigslist":{"link":"^[^.]+\\.(craigslist\\.[a-z]{2,3}/[^.]+/\\d+)\\.html","res":":\n$ = $._&&$._.match(/data-imgid=\"[^\"]+\" href=\"([^\"]+)/g)\nvar f=this.find, s = this.node.matches('img[src*=\"images.craigslist.org\"]') && this.node.src\nreturn $ && $.map(function(x){\n x=x.slice(x.lastIndexOf('\"') + 1)\n return [f({src: x})]\n}) || s && this.find({src: s}) || !1","img":"^(images\\.craigslist\\.org/\\w+_\\w+_)(?!1200x900)[^.]+","to":"$1#1200x900 600x450#","note":"EXAMPLES\nhttps://moscow.craigslist.org/search/hhh?areaAbb=moscow\nhttps://london.craigslist.org/search/off?lang=en&cc=us\nhttps://london.craigslist.org/search/sss?lang=en&cc=us"},"CSFD.cz|CSFD.sk":{"img":"^(image\\.pmgstatic\\.com/).+?(files/images.+)","to":"$1$2","note":"64h\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1100#3\n\n!!!\nIn some cases, the cursor needs to be hover again.\n+\nThe rule for Ublock Origin extension (it is necessary for the sieve to work in Galleries):\ncsfd.cz,csfd.sk##.media-img > picture > img:style(pointer-events: auto !important)\n\nEXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1080#13"},"CyberFile.me":{"link":"^cyberfile\\.me/\\w+","res":":\nlet x=new XMLHttpRequest()\nx.open('POST','https://cyberfile.me/account/ajax/file_details',false)\nx.setRequestHeader(\"Content-Type\",\"application/x-www-form-urlencoded; charset=UTF-8\")\nx.send('u='+$._.match(/showFileInformation\\((\\d+)/)[1])\nreturn (x.responseText.match(/source src=\\\\\"([^\"]+)/)||[,''])[1].replaceAll('\\\\','')\n","note":"imqswt\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/k0jqmfs\n\n!!!\nДля работы с внешними ссылками в FireFox необходимо правило для SMH (см. ЧаВо, п.12).\nНа данный момент фильтр не работает на внешних ссылках в Хромиум-браузерах. \n==\nTo work with external links in Firefox, you need a rule for SMH (see FAQ, p. 12). At the moment, the rule does not work on external links in Chromium browsers.\n\n\nEXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1360#11"},"DailyMail":{"link":"(dailymail\\.co\\.uk/.*)","url":": $[1]","res":":\n//console.log(\"imagus: reading \" + $[1]);\nvar doc = new DOMParser().parseFromString($._, \"text/html\");\n// dailymail has duplicates - correct one has data-src\nvar images = doc.querySelectorAll('img.img-share[data-src]');\nvar imgurls=Array.from(images).map(img => img.getAttribute(\"data-src\"));\nvar baseurl=$.base.replace(new RegExp('((https?://)?[/]).','gi'), '$1');\nvar dirurl=$.base.split(\"/\");\ndirurl.pop();\ndirurl=dirurl.join(\"/\");\nvar i=imgurls.map(function (item) {\n item = item.replace(/data-src=\"/gi, \"\");\n if ( item.search(/https?:\\/\\//) == -1) {\n if (item[0] == \"/\") item = baseurl + item; else item = dirurl + \"/\" + item;\n }\n return [item, item]; \n});\nreturn i;","note":"regexfan1245\nhttps://www.reddit.com/r/imagus/comments/tutndw/sieve_for_dailymailcouk_images/"},"DailyMotion-p":{"link":"dailymotion\\.com/(?:embed/)?video/(\\w+)","url":"https://www.dailymotion.com/player/metadata/video/$1","res":":\nconst json = JSON.parse($._);\nconst res = json.qualities?.auto.length?[json.qualities.auto[0].url,json.title]:''\nthis.TRG.IMGS_ext_data = [\n '//' + 'data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"1280\" height=\"720\"></svg>',\n `<imagus-extension type=\"videojs\" url=\"${res}\"></imagus-extension>${json.title} | ${json.owner.screenname}`\n]\nreturn res.length ? {loop:'imagus://extension'} : ''","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jns5il6\n\n!!!\nНа некоторых браузерах может не работать.\n==\nIt may not work on some browsers.\n\n\nEXAMPLES\nhttps://www.reddit.com/domain/dailymotion.com/new\nhttps://www.dailymotion.com/video/x86advk\nhttps://www.dailymotion.com/search/SPORT/videos"},"Danbooru.Donmai.us-x-p":{"link":"^(?:(?:safe|dan)booru\\.|hijiribe\\.|sonohara\\.)?(donmai\\.us)/post(?:s|/show)/(\\d+).*","url":"//danbooru.$1/posts/$2.json","res":":\nvar x = JSON.parse($._);\nreturn x&&x.file_url ? [x.file_url, (x.tag_string_general + (x.tag_string_artist ? ' by ' + x.tag_string_artist : '')).replace(/_/g, \" \")] : null","img":"^((?:(?:safe|dan)booru\\.|hijiribe\\.|sonohara\\.)?donmai\\.us/data/)[^/]+/(?:sample-)?([\\da-f]{32}\\.).+","to":"#$1$2#jpg png gif webm#\n$1sample/sample-$2#jpg png gif#","note":"ПРИМЕРЫ / EXAMPLES\nhttps://danbooru.donmai.us/artists/337081\nhttps://danbooru.donmai.us/posts?tags=yoshikirino\nhttps://danbooru.donmai.us/posts?page=3&tags=genshin_impact"},"Darudar":{"link":"^darudar\\.org/\\w+/\\d+","res":":\nreturn [...$._.matchAll(/href=\"([^\"]+)\"\\s+data-fancybox-group/g)].map(i=>[i[1]])","img":"^(static\\.daru-dar\\.org/s)\\d+(/[0-9a-f]{2}\\.[0-9a-f]{2}/[0-9a-f]{2}/[0-9a-f]{2}/[0-9a-f]{2}/[0-9a-f]+\\.jpe?g)$","ci":2,"to":"$11024$2","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jyil8u7\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=580#11\n\nПРИМЕРЫ\nhttps://darudar.org/"},"Daz3D-p":{"link":"^daz3d\\.com/[\\da-z-]+$","res":":\nvar r = $._.match(/data-fancybox-href=\"([^\"]+)/g) || !1, t = $._.match(/<h1>([^<]+)</)\nreturn r && r.map(function(x, i){\n return [x.slice(20).replace(/-thumb(-daz3d)/, '-main$1'), !i && t && t[1]]}\n)","img":"^daz3d\\.com/cdn-cgi/image/[^/]+/(https:.+)","to":":\nreturn $[1].replace(/-thumb(-daz3d)/, '-main$1')","note":"https://www.reddit.com/r/imagus/comments/jssrfx/daz3dcom_has_stopped_working/\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.daz3d.com/animals-and-creatures\nhttps://www.daz3d.com/people-and-wearables"},"dcinside":{"link":"^gall\\.dcinside\\.com/(?:(?:(?:[^/]+/)?board/view/|list\\.php)\\?id=[^&]+&no=|\\w+/)\\d+","res":":\nreturn [...new DOMParser().parseFromString($._,\"text/html\").querySelectorAll('img[src*=\"viewimage.php?\"][style][alt],img[src*=\"viewimage.php?\"][onError][alt]')].filter(i=>i.alt?.length).map(i=>[i.src]);","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/15qpek4/comment/jw9n6dy\n\n!!!\nВидео не поддерживается / Video not supported.\n\nEXAMPLES\nhttps://gall.dcinside.com/board/lists/?id=food\nhttps://www.reddit.com/domain/dcinside.com/new/\nhttps://search.dcinside.com/movie/p/4/q/.EC.8B.9D.EC.82.AC\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1360#11"},"DeepSkyHosting":{"img":"(deepskyhosting\\.com/img/\\w/)\\d+(/\\d+\\.\\w+)","to":"$1full$2","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=700#11\n\nПРИМЕРЫ / EXAMPLES\nhttps://deepskyhosting.com/id621"},"Deezer":{"img":"((?:e-)?cdns?-images\\.dzcdn\\.net\\/images\\/(?:cover|playlist|artist|talk)\\/\\w+\\/)[^\\.]+\\.jpg","to":"$11200x1200-000000-95-0-0.jpg","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3520#5\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2460#12\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.deezer.com/ru/channels/module/3d720c8b-6256-4731-8f2f-28fafc60d0e1\nhttps://www.deezer.com/ru/playlist/1419215845"},"Defense.gov_photo":{"link":"defense\\.gov\\/Multimedia\\/Photos\\/igphoto\\/\\d{10}\\/","res":"<a class=\"details-url\" href=\"(https?:\\/\\/media\\.defense\\.gov\\/\\d{4}\\/\\w+\\/\\d{2}\\/\\d{10}\\/-1\\/-1\\/0\\/.+\\.\\w+)\">","img":"^(media\\.defense\\.gov/\\d+/\\w+/\\d+/\\d+)/\\d+/\\d+(/\\d+/[\\w-]+\\.(?:jpe?g|png|gif))$","ci":2,"to":"$1/2000/2000$2","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3720#11\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=1540#12\n\n\nEXAMPLES\nhttps://www.defense.gov/Multimedia/Photos/"},"dePIC.me":{"link":"^depic\\.me/\\w+/.+","res":"<img src=\"([^\"]+)\"[^>]+id=\"pic\"","note":"Rodny+Baton34V (fix)\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=180#3\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/domain/depic.me/new/"},"Derpibooru|Furbooru|Trixiebooru-x":{"link":"^(derpiboo(?:ru\\.org|\\.ru)|(?:trixiebooru|furbooru)\\.org)/(?:images/)?(\\d+)[^.]*","url":"https://$1/api/v1/json/images/$2","res":":\n$ = JSON.parse($._).image\nvar r = $.representations\nreturn [[\n $.format=='gif' ? ['#'+r.webm, '#'+r.mp4, r.full] : $.width<1200 && $.height<1200 ? [r.full] : ['#' + r.full, r.large],\n ['['+$.created_at+']', $.name, $.description, $.tags, $.source_url].filter(Boolean).join(' | ')\n]]","img":"^((?:derpicdn\\.net|furrycdn\\.org)/img/)(?:view/)?(20\\d\\d/1?\\d/[123]?\\d/\\d+)[^?]*\\.([^?]+)","to":":\nreturn $[1]+'view/'+$[2]+'.'+($[3]=='gif'?'#webm mp4 gif#':$[3])","note":"https://www.reddit.com/r/imagus/comments/huqzdn/comment/fzavtn4\n\nEXAMPLES\nhttps://furbooru.org/tags/female\nhttps://derpibooru.org/images?page=5\nhttps://trixiebooru.org/galleries?page=10&gallery="},"DeviantArt-x":{"link":"^(?:(?:[^.]+\\.)?deviantart\\.com/(?:(?:[^/]+/)?art/[^#]+$|#/\\w+)|fav\\.me/(\\w+))","url":": $[1] ? 'http://fav.me/' + $[1] : $[0]","res":":\n//If set to true, the imagus style of media description will be used.\n//Example: {Dimensions} {Publish Date} | {Title} | {Author} | {Category} \n//Set to false to use the sieve author's preference. The description length is a useful indicator to tell if the post is worth clicking to read the description.\n//Example: {Title} | {Author} | {Description Length} \nconst imagus_description_style = true;\n\n//if set to true, the largest possible media will be displayed. Useful for downloading highest quality content.\n//if set to false, web-optimized media will be displayed. Best choice for fast browsing and low internet speeds.\nconst prefer_largest_media = true;\n\n//Set true to view debugging console messages\nconst debug = false;\n\n\nif(debug) console.log(\"DeviantArt Verbose Sieve V2.4\");\n\nlet pagedefinitionsJSON=$._.match(/\\.__INITIAL_STATE__\\s*=\\s*JSON\\.parse\\((\"[^\\n]+\")/)\nif(!pagedefinitionsJSON) //If page definitions could not be parsed, fallback to regex attempt\n{\n pagedefinitionsJSON=$._.match(/collect_rid=\"[^\"]+\" src=\"([^\"]+)\"[^>]+alt=\"([^\"]+)\"[^>]+=\"dev-content-full/)\n return pagedefinitionsJSON&&[pagedefinitionsJSON[1], pagedefinitionsJSON[2]]\n}\n\n//This deviationdefinition_all let is thorough information about the deviation, including the user and related deviations\nlet deviationdefinition_all=JSON.parse(eval(pagedefinitionsJSON[1]))['@@entities'];\n//if(debug) console.log(\"Deviation Definition (All)\", deviationdefinition_all);\n\n\n//Grab JSON extended deviation info\nlet deviationkey=Object.keys(deviationdefinition_all.deviationExtended)[0];\nlet deviationdefinition_extended=deviationdefinition_all.deviationExtended[deviationkey];\n//Grab JSON specific deviation info\nlet deviationdefinition_specific=deviationdefinition_all.deviation[deviationkey];\n\n\n//Set the media description text\nlet toptext;\n\nif(imagus_description_style) {//Imagus standard media description desired. Grab relevant info and create the top text.\n\n //Create media resolution string\n let resolutionstring = deviationdefinition_extended.originalFile.width + \"x\" + deviationdefinition_extended.originalFile.height;\n\n //Create friendly date string\n const parseddatetime = new Date();\n parseddatetime.setTime(Date.parse(deviationdefinition_specific.publishedTime));\n const months =[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec \"];\n let month = months[parseddatetime.getMonth()];\n let day = parseddatetime.getDate();\n let year = parseddatetime.getFullYear();\n let datestring = month + \" \" + day + \" \" + year\n\n //Create top 5 tags string\n let tagsstring = \"\";\n if(deviationdefinition_extended.tags) {\n for(let i=0; i<deviationdefinition_extended.tags.length; i++) {\n if(i > 0) tagsstring += \", \";//commas after the first tag\n tagsstring += deviationdefinition_extended.tags[i].name;\n\n if(i > 4) {//cut short if more than 5 tags assigned\n tagsstring += \" ...\";\n break;\n }\n }\n }\n else {\n //Assign friendly text if no tags assigned\n tagsstring = tagsstring == \"\" ? \"No Tags\" : tagsstring;\n }\n \n\n\n //Define the top text\n toptext = datestring + ' | ' + deviationdefinition_specific.title + ' | ' + \n deviationdefinition_all.user[deviationdefinition_specific.author].username;\n}\nelse{\n //get length of plain text description by letting the DOM parse it for us\n let description = deviationdefinition_all.deviationExtended[deviationkey].descriptionText.html.markup;\n\n if(debug) console.log(\"Description: \", description)\n\n let descriptionlength = 0;\n if(description != null) {//description is defined, use DOM trickery to get text length\n let tempDivElement = document.createElement(\"div\");\n tempDivElement.innerHTML = description; \n if(tempDivElement.textContent != null) {\n descriptionlength = tempDivElement.textContent.length; \n }\n else if(tempDivElement.innerText != null) {\n descriptionlength = tempDivElement.innerText.length;\n }\n }\n\n \n\n //Define the top text\n toptext = deviationdefinition_specific.title + \n ' | ' + deviationdefinition_all.user[deviationdefinition_specific.author].username + \n (descriptionlength == 0 ? \"\" : ' | ' + descriptionlength);\n \n} \n\n//The rest is parsing the correct media URLs\nlet mediadefinition=deviationdefinition_specific.media;\nlet baseuri=mediadefinition.baseUri;\nlet sizedpreviewdefinition=mediadefinition.types.filter(function(t){return !!t.c||!!t.b}).pop();\nlet mediatokens=mediadefinition.token;\nif(!baseuri)return;\n\nif(debug) console.log(\"deviationdefinition_all\", deviationdefinition_all);\nif(debug) console.log(\"deviationdefinition_specific\", deviationdefinition_specific);\nif(debug) console.log(\"deviationdefinition_extended\", deviationdefinition_extended);\nif(debug) console.log(\"mediadefinition\", mediadefinition);\nif(debug) console.log(\"baseuri\", baseuri);\nif(debug) console.log(\"sizedpreviewdefinition\", sizedpreviewdefinition);\nif(debug) console.log(\"mediatokens\", mediatokens);\n\n\n//There are 0 or 1 or 2 tokens in the mediatoken definition for some reason. Which one works is guesswork.\nlet mediatokenstring0=mediatokens?'?token='+mediatokens[0]:'';\nlet mediatokenstring1=mediatokens&&mediatokens[1]?'?token='+mediatokens[1]:mediatokenstring0;//define the second token if it exists, otherwise default to first token\n\nlet medialinkobject;//final goal is to fill in this object\n\nif(prefer_largest_media) {\n //If download info exists, use link directly. Handles most GIFs and images.\n if(deviationdefinition_all.deviationExtended[deviationkey].download) {\n if(debug) console.log(\"Direct download link found.\")\n let downloadlink = deviationdefinition_all.deviationExtended[deviationkey].download.url;\n\n if(downloadlink.match(/\\.(?:7z|rar|zip|pdf)\\?/) == null) {//Exclude filetypes not displayed with imagus\n medialinkobject = [downloadlink];\n\n //Construct the final return object\n let returnval = [\n [medialinkobject, toptext]\n ];\n if(debug) console.log(\"Final Return Value\", returnval)\n return returnval;\n }\n if(debug) console.log(\"Undisplayable filetype detected, skipping download link.\");\n }\n\n if(debug) console.log(\"Direct download link not found or not an Imagus media type.\")\n\n // Extract meaningful objects that contain identifiers\n let fullview;\n let preview;\n let largestvideo;\n let gif;\n let has_valid_definition = !!(mediadefinition.types);\n for(let i=0; i<mediadefinition.types.length; i++) {\n let currentdefinition = mediadefinition.types[i];\n if(currentdefinition.t == 'preview') {\n preview = currentdefinition;\n continue;\n }\n if(currentdefinition.t == 'fullview') {\n fullview = currentdefinition;\n continue;\n }\n if(currentdefinition.t == 'video') {\n //There may be multiple video definitions, keep the largest one\n if(largestvideo) {\n //compare widths to determine larger video, keep larger definition\n largestvideo = (largestvideo.w < currentdefinition.w) ? currentdefinition : largestvideo;\n }\n else { //assign first video definition as largest\n largestvideo = currentdefinition;\n }\n continue;\n }\n if(currentdefinition.t == 'gif') {\n gif = currentdefinition;\n continue;\n }\n }\n\n\n if(largestvideo) {// Video definition exists. Use this.\n if(debug) console.log(\"Video detected.\");\n medialinkobject = [largestvideo.b];\n }\n else if(gif) {// GIF definition exists\n if(debug) console.log(\"GIF detected.\");\n medialinkobject = [gif.b+mediatokenstring0];;\n }\n else if(fullview) {// Fullview exists\n if(debug) console.log(\"Fullview definition of image detected.\");\n if(debug) console.log(\"fullview\", fullview);\n if(fullview.b||fullview.c) { //url parts are in this definition\n medialinkobject = [baseuri+(fullview.b||fullview.c).replace('<prettyName>', deviationdefinition_specific.media['prettyName']) + mediatokenstring0];\n }\n else {\n if(debug) console.log(\"Fullview definition incomplete. Attempting basic url construction...\");\n medialinkobject = [baseuri+mediatokenstring0];\n }\n }\n else {//no valid definitions\n if(debug) console.log(\"No sized preview definition found. Attempting basic url construction...\");\n medialinkobject = [baseuri+mediatokenstring0];\n }\n}\nelse {//Attempt to get web optimized media instead\n\n //Get viewport to optimize against\n const viewportwidth = Math.max(document.documentElement.clientWidth || 0, window.innerWidth || 0);\n const viewportheight = Math.max(document.documentElement.clientHeight || 0, window.innerHeight || 0);\n if(debug) console.log(\"Viewport: \" + viewportwidth + \" by \" + viewportheight);\n\n if(mediadefinition.baseUri.includes(\".gif\")) {//handle GIFs special as they don't have a definition in the mediadefinition types\n if(debug) console.log(\"GIF detected.\");\n\n //Construct the final return object\n medialinkobject = [mediadefinition.baseUri+mediatokenstring0];\n let returnval = [\n [medialinkobject, toptext]\n ];\n \n if(debug) console.log(\"Final Return Value\", returnval)\n return returnval;\n }\n\n // Extract meaningful objects that contain identifiers\n let fullview;\n let preview;\n let bestvideosizematch;\n let bestvideosizecloseness = 10000.0;//large number is a bad fit, start this number with arbitrarily bad ratio\n let gif;\n let bestimagesizematch;\n let bestimagesizecloseness = 10000.0;//large number is a bad fit, start this number with arbitrarily bad ratio\n let has_valid_definition = !!(mediadefinition.types); \n for(let i=0; i<mediadefinition.types.length; i++) {\n let currentdefinition = mediadefinition.types[i];\n if(currentdefinition.t == 'preview') {//save preview definition as a default case\n preview = currentdefinition;\n }\n if(currentdefinition.t == 'video') {\n //There may be multiple video definitions, keep the best size fit\n if(bestvideosizematch == undefined) {\n bestvideosizematch = currentdefinition\n }\n else {\n let currentsizecloseness = Math.abs(1- (currentdefinition.h/viewportheight));\n if(debug) console.log(\"currentsizecloseness\", currentsizecloseness);\n if(currentsizecloseness < bestvideosizecloseness) {\n bestvideosizecloseness = currentsizecloseness;\n bestvideosizematch = currentdefinition;\n if(debug) console.log(\"New best match at closeness \", bestvideosizecloseness, \" type \", bestvideosizematch.t);\n }\n }\n continue;\n }\n if(currentdefinition.t == 'gif') {//GIFs only have one definition if they exist\n gif = currentdefinition;\n continue;\n }\n\n //If none of the special cases are matched, select the largest best size fit definition\n //Imagus evaluates height first so this section does as well\n if(bestimagesizematch == undefined) {\n bestimagesizematch = currentdefinition\n }\n else {\n let currentsizecloseness = Math.abs(1- (currentdefinition.h/viewportheight));\n if(debug) console.log(\"currentsizecloseness\", currentsizecloseness);\n if(currentsizecloseness < bestimagesizecloseness) {\n bestimagesizecloseness = currentsizecloseness;\n bestimagesizematch = currentdefinition;\n if(debug) console.log(\"New best match at closeness \", bestimagesizecloseness, \" type \", bestimagesizematch.t);\n }\n }\n\n }\n\n\n if(bestvideosizematch) {// Video definition exists. Takes precedence over other media types.\n if(debug) console.log(\"Video detected.\");\n medialinkobject = [bestvideosizematch.b];\n }\n else if(gif) {// GIF definition exists. Takes precedence over everything but video.\n if(debug) console.log(\"GIF detected.\");\n medialinkobject = [gif.b+mediatokenstring0];;\n }\n else{// Attempt image media definition\n \n if(bestimagesizematch.b||bestimagesizematch.c) { //Use bset size match if it has a complete definition\n medialinkobject = [baseuri+(bestimagesizematch.b||bestimagesizematch.c).replace('<prettyName>', deviationdefinition_specific.media['prettyName']) + mediatokenstring0];\n }\n else if(preview.b||preview.c) {//Best size match was not a complete definition, use preview definition as it seems reliably available.\n if(debug) console.log(\"Best sized definition incomplete. Using preview version...\");\n medialinkobject = [baseuri+(preview.b||preview.c).replace('<prettyName>', deviationdefinition_specific.media['prettyName']) + mediatokenstring0];\n \n }\n else {//Preview version also failed, attempt basic URL construction\n if(debug) console.log(\"No sized preview definition found. Attempting basic url construction...\");\n medialinkobject = [baseuri+mediatokenstring0];\n }\n }\n}\n\n\n\n//Construct the final return object\nlet returnval = [\n [medialinkobject, toptext]\n ];\nif(debug) console.log(\"Final Return Value\", returnval)\nreturn returnval;","img":"^images-wixmp-ed30a86b8c4ca887773594c2\\.wixmp\\.com/[a-z]/[\\da-f-]{36}/([\\da-z]+)-.*","note":"iceiller9999\nv2.4\nhttps://www.reddit.com/r/imagus/comments/15iej6p/deviantart_sieve_bug_fix/\nOLD\nhttps://www.reddit.com/r/imagus/comments/sjeohm/deviantart_comprehensive_sieve\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=240#4\n\n\n!!!\nУмеет открывать картинки в более высоком или низком разрешении (опционально) - см расшифровку \"флагов\" ниже (англ).\n==\nOpens pictures in a higher resolution (optional). See the explanation of the \"flags\" below:\n\n1. imagus_description_style. Set flag \"true\" to use Imagus description style. Set to \"false\" to use a more concise version. More details in the code comments.\n\n2. prefer_largest_media. Set flag \"false\" to load web optimized media, good for speed/bandwidth. Set flag \"true\" to load the largest media size possible, excellent for downloading."},"DeviantArt_sta.sh-x":{"link":"sta\\.sh/\\w+","res":":\nlet z=$._.match(/src=\"([^\"]+)\"[^>]+class=\"dev-content-full\">/);\nif (z!=null) {\n return z[1];\n}\nlet i = $._.indexOf('script><div class=\"stash-thumb-container');\nif(i<0) { return null; }\nlet t = $._.indexOf('<div id=\"empty-item\" class=\"invisible\">', i);\nif(t<0) { return null; }\nlet res = [];\nlet re = /data-super-full-img=\"([^\"]+)\"/gi\nlet data=$._.substring(i,t);\nlet a = re.exec(data);\nwhile(a) {\n res.push([a[1]]);\n a = re.exec(data);\n}\nreturn res;","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1440#7\n\n!!!\nВ РФ может понадобиться прокси.\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/domain/sta.sh/new/\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1369#1"},"Diberie_Rehost":{"img":"^(rehost.diberie.com/Picture/Get)/\\w/(\\d+)","to":"$1/f/$2","note":"mooms01\nhttps://www.reddit.com/r/imagus/comments/vlyl5u/sieve_for_imgsuperhfr_and_rehostdiberiecom\n\nEXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1360#11"},"DimonVideo.ru":{"link":"^dimonvideo\\.ru/go\\?.+(png|bmp|jpe?g)$","note":"destiny child\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1600#12\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=1000#8\n\nПРИМЕРЫ\n(\"дополнительный скрин\")\nhttps://dimonvideo.ru/uploader/484417\nhttps://dimonvideo.ru/uploader/485143\nhttps://dimonvideo.ru/uploader/486070"},"DirectUpload.net":{"useimg":1,"link":"^(?:s\\d+\\.)?directupload\\.net/file/[a-z]/\\d+/","res":"\"og:image\" content=\"([^\"]+)\n\"og:description\" content=\"([^\"]+)","img":"^((?:f?s\\d+b?\\.)?directupload\\.net/images/(?:user/)?\\d+/)temp/","to":"$1","note":"EXAMPLES\nhttps://www.reddit.com/domain/directupload.net/new/\nhttps://forum.mozilla-russia.org/viewtopic.php?pid=781530#p781530"},"Discogs":{"link":"^discogs\\.com/(?:\\w\\w/)?artist/[^\\/]+","res":":\nvar r = [];\n($._.match(/\"full\": \"[^\"]+/g) || r).forEach(function(i) {r.push([i.replace('\"full\": \"','')]);});\nif (r.length==0) {\n ($._.match(/<\\/span><img src=\"[^\"]+/g) || r).forEach(function(i) {r.push([i.replace('<\\/span><img src=\"','')]);});\n}\nreturn r;","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1160#16\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3080#17\n\n\n!!!\nСрабатывает на именах в блоке \"Над релизом работали\", на названиях групп в других местах и на \"все изображения\".\n==\nIt works on the names in the \"Worked on the release\" block or on the names of groups in other places and on \"all images\".\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.discogs.com/ko/Various-Exotic-Rendezvous/release/14402447\nhttps://www.discogs.com/Story-Of-The-Year-Page-Avenue/master/382764\nhttps://www.discogs.com/Scooter-And-The-Beat-Goes-On/master/3018"},"Discogs_2":{"link":"^discogs\\.com/(?:\\w\\w/)?(release|master)/(\\d+)[^\\/?]+(?:(?:/|\\?)image(?:=(\\d+))?(?:.+))?","url":": 'https://www.discogs.com/internal/release-page/api/graphql?operationName='+ ($[3] || $[1]=='release' ? 'ReleaseAllImages' : 'MasterReleaseAllImages') +'&variables={\"discogsId\":' + ($[3] ? $[3] : $[2]) + ',\"count\":500}&extensions={\"persistedQuery\":{\"version\":1,\"sha256Hash\":\"'+ ($[3] || $[1]=='release' ? '13e41f41a02b02d0a7e855a71e1a02478fd2fb0a2d104b54931d649e1d7c6ecd' : '4faa70a6b17ca38aa060fd37ecb4ba5646706154d970c3b2ea9198c18be79a73') +'\"}}';","res":":\nlet res=[];\nconst json=JSON.parse($._);\nif (json.data.masterRelease) {\n json.data.masterRelease.keyRelease.images.edges.forEach(function(i) {\n res.push([i.node.fullsize.sourceUrl]);\n });\n return res;\n}\nelse if (json.data.release) {\n json.data.release.images.edges.forEach(function(i) {\n res.push([i.node.fullsize.sourceUrl]);\n });\n return res;\n}\nreturn res;","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1160#18\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3080#17\n\n\n!!!\n^discogs\\.com/(?:\\w\\w/)?(release|master)/(\\d+)[^\\/]+(?:/|\\?)image(?:=(\\d+))?(?:.+)\nСрабатывает на обложках и в блоке \"Релизы\".\n==\nIt works on the covers and in the \"Releases\" block.\n\nПРИМЕРЫ / EXAMPLES:\nhttps://www.discogs.com/artist/356282-Story-Of-The-Year"},"Discogs_3":{"link":"^discogs\\.com/.+/release/[\\d-\\w]+(?:#([\\da-zA-z=]+))*$","url":": $[1] ? atob($[1]): $[0];","res":":\nif ($[1]) {\n var c = $._;\n var i = c.indexOf('<ul class=\"thumbnails_');\n if(i<0) { return null; }\n var t = c.indexOf('</ul>', i);\n if(t<0) { return null; }\n var res = [];\n var re = /<img src=\"([^\"]+)\"/gi\n var a = re.exec( c.substring(i,t) );\n while(a) {\n res.push([a[1]]);\n a = re.exec( c.substring(i,t) );\n }\n return res;\n}\nelse {\n var re = /class=\".+\" href=\"([^\"]+)\"><div class=\".+\"><picture>/gi;\n var a = re.exec( $._);\n if (a==null) return null;\n const url_selector = $[0].split(\"/\").slice(3).join(\"/\");\n const a_elem = document.querySelector(`a[href*=\"${url_selector}\"]`);\n a_elem.href += `#${btoa(\"https://www.discogs.com\"+a[1])}`\n a_elem.style.cssText = \"border-bottom: 3px solid #ebff00; !important\";\n return;\n}","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1160#16\nBaton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2420#16\n\n\n!!!\nСрабатывает в блоке \"Рекомендации\".\n==\nIt works in the \"Recommendations\" block.\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.discogs.com/ru/master/625256-Story-Of-The-Year-The-Black-Swan\nhttps://www.discogs.com/ru/master/382764-Story-Of-The-Year-Page-Avenue"},"Discord_profile":{"img":"^(cdn\\.discordapp\\.com/(?:icons|avatars)/\\d+/[^?]+).*","to":"$1?size=4096"},"DMM.co.jp-x-p":{"link":"dmm.co.jp/digital/videoa/-/detail/=/cid=.+","res":":\nvar str = $._\nconsole.log(str);\nvar str1 = /href=\"(.+?pl\\.jpg)\"/i;\nconsole.log(str1);\nvar found = str.match(str1);\nconsole.log(found[1]);\nvar i = $._.indexOf('id=\"sample-image-block\"');\nif(i<0) {return null; }\nvar t = $._.indexOf('画像はイメージです', i);\nif(t<0) {return null; }\nvar res = [];\nvar re = /href=\"([^\"]+)\"/gi\nvar data=$._.substring(i,t);\nvar a = re.exec(data);\nconsole.log(a);\nres.push([found[1]]);\nwhile(a) {\n res.push([a[1]]);\n a = re.exec(data);\n}\nconsole.log(res);\nreturn res;","img":"(dmm\\.(co\\.jp|com)\\/.+)(ps|pt|-\\d+)\\.jpg","ci":2,"to":":\nif ($[3] == \"pt\" || $[3] == \"ps\") {\nconsole.log($[1] + \"pl.jpg\");\nreturn $[1] + \"pl.jpg\"\n} else {\nconsole.log($[1] + $[3] + \".jpg\");\nreturn $[1] + $[3] + \".jpg\"\n}\n","note":"loveqianool\nhttps://www.reddit.com/r/imagus/comments/116g0uo/comment/jcxris0\nOLD\nhttps://www.reddit.com/r/imagus/comments/xv9tah/comment/irl73ee\n\n!!!\nДля проверки нужен аккаунт.\n\n\nEXAMPLES\nhttps://www.dmm.co.jp/top/\nhttps://www.dmm.co.jp/digital/videoa/-/detail/=/cid=prvr00995\nhttps://www.dmm.co.jp/digital/videoa/-/detail/=/cid=waaa00224"},"DNS-shop.ru":{"link":"^(?:www\\.)?dns-shop\\.ru\\/product\\/[a-f0-9]{16}\\/.+\\/$","res":":\nvar re=/data-product-card=\"([^\"]+)\"/gi\nvar az=$._\nvar url=re.exec(az)[1];\nif (url==null) { return null; }\nx = new XMLHttpRequest();\nx.open('GET', 'https://www.dns-shop.ru/catalog/product/get-media-content/?id=' + url,false)\nx.send();\nif (x.readyState != 4) return;\nif (x.status != 200) return;\nvar rawJson=x.responseText;\nvar res=[];\nvar re1=/\"origSrc\":{\"orig\":\"([^\"]+)\"/gi\nvar a = re1.exec(rawJson);\nwhile(a) {\n res.push([a[1]]);\n a = re1.exec(rawJson);\n}\nreturn res;\n","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=100#2\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2900#4\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2520#12\n\nEXAMPLES\nhttps://www.dns-shop.ru/catalog/17a8cf4816404e77/massazhery/\nhttps://www.dns-shop.ru/catalog/recipe/ecb3d99d171a79ba/58---65/"},"DNS-shop.ru_club":{"url":": !this.dns_shop_json?'https://www.dns-shop.ru/catalog/product/get-media-content/?id='+document.body.innerHTML.match(/data-product-card=\"([^\"]+)/)[1]:'data:,'+$[1]","res":":\nif(!this.dns_shop_json)this.dns_shop_json=$._\nreturn JSON.parse(this.dns_shop_json).data.tabs[0].objects.find(i=>RegExp(`${$[1]}`).test(i.thumbSrc.orig))?.origSrc?.orig||''","img":"^c\\.dns-shop\\.ru/thumb/st\\d/(?:fit|crop)/\\d+/\\d+/\\w+/(\\w+)\\.\\w+(?:\\.\\w+)?$","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/z0zyox/comment/khngdf6\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=220#4\n\nПРИМЕРЫ\nhttps://club.dns-shop.ru/digest/64394-v-windows-11-obnarujili-novyii-dizain-dispetchera-zadach-naiti/"},"DPreview":{"link":"^dpreview\\.com/sample-galleries/(\\d+)/(\\d+)?.*","url":": !this.json||$[1]!==this.pageId?'https://www.dpreview.com/sample-galleries/data/get-gallery?galleryId='+$[1]:'data:'+$[0]","res":":\nconst high_res_first = true\n\nthis.pageId=$[1]\nif($._[0]==='{')this.json=JSON.parse($._).images\nif(!this.json)return ''\nif(/one!$/.test($[0])){let m = this.json.find(i=>RegExp(`${$[2]}`).test(i.directUrl))\nreturn [[[(high_res_first?'#':'')+m.thumbnails[m.thumbnails.length-1].url,(high_res_first?'':'#')+m.thumbnails.toReversed().filter(i=>i.height<=1000)[0]?.url]]]\n}\nreturn this.json?.map(i=>[[(high_res_first?'#':'')+i.thumbnails[i.thumbnails.length-1].url,(high_res_first?'':'#')+i.thumbnails.toReversed().filter(i=>i.height<=1000)[0]?.url]])??''","img":"^\\d\\.img-dpreview\\.com/files/p/(?!TS\\d{4,})[^/]+~sample_galleries/(\\d+/\\d+).*","loop":2,"to":":\nreturn '//www.dpreview.com/sample-galleries/'+$[1]+'/one!'","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/gcji4p/comment/jz2wxwy\nOLD\nhttps://www.reddit.com/r/imagus/comments/gcji4p/support_dpreview/\n\nEXAMPLES\nhttps://www.dpreview.com/features#video\nhttps://www.dpreview.com/reviews/1107allinoneprinters"},"DogDrip":{"link":"^dogdrip\\.net.*/\\d+","res":":\nreturn [...$._.matchAll(/<(?:video|img)[^>]+src=\"(\\/dvs\\/[^\"]+)/g)].map(i=>[i[1]])","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/15sx7lx/comment/jwp1lwo\n\nEXAMPLES\nhttps://www.dogdrip.net/dogdrip\nhttps://www.dogdrip.net/dogdrip?sort_index=popular\nhttps://www.dogdrip.net/dogdrip/503225703?sort_index=popular&page=2\nhttps://www.dogdrip.net/?_filter=search&act=&vid=&mid=dogdrip&category=&search_target=title&search_keyword=@@"},"DogfartNetwork_gallery-x-p":{"link":".*dogfartnetwork\\.com/tour/scenes/.+/.+/pics/\\d+\\.jpg\\?p=\\d+","res":"img src=\"(.*)\" alt=\"\"","note":"gpl2731\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3616#1\n\nEXAMPLES\nhttps://www.dogfartnetwork.com/en/photos\nhttps://www.dogfartnetwork.com/en/videos/categories/amateur\nhttps://www.dogfartnetwork.com/en/videos/categories/femdom"},"DogfartNetwork_trailer-x-p":{"link":"dogfartnetwork\\.com/tour/sites/.+?/.+?/\\?nats=.*","res":"data-trailer=\"yes\">\\r\\n.*<a href=\"([^\"]+)","note":"gpl2731\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3616#1\n\nEXAMPLES\nhttps://www.dogfartnetwork.com/tour/sites/\nhttps://www.dogfartnetwork.com/tour/scenes/\nhttps://www.dogfartnetwork.com/tour/categories/big_tits/"},"Domclick.ru":{"link":"^domclick\\.ru/card/\\w+__\\w+__\\d+","url":": (()=>{if (!this.node.closest('[data-test=\"product-snippet-property-offer\"]')) throw ''; return $[0]})()","res":":\nvar res = [];\n\nconst data = JSON.parse($._.match(/window\\.(?:__SSR_STATE__|__PRELOADED_STATE__)\\s*=\\s*({.+})/)?.[1]?.replace(/:undefined/g, ':\"\"') || '\"\"');\n\nlet descr = data.productCard?.originalProduct?.object_info?.description || data.shell?.data?.newFlat?.objectInfoList?.description;\n\n[\n ...data.productCard?.originalProduct?.photos || [],\n ...data.shell?.data?.newFlat?.photo || [],\n ...data.shell?.data?.newFlat?.complexPhotos || []\n]\n.forEach(function (item, i) {\n res.push([\n 'https://img.dmclk.ru/s2000x2000q100' + (typeof item == 'string' ? item : item.url),\n i === 0 ? descr : ''\n ]);\n});\n\nreturn res;","img":"^img\\.dmclk\\.ru/s\\d+x\\d+q\\d+/(vitrina/.+.webp)","to":"img.dmclk.ru/$1","note":"hababr\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=2480#18\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=2060#7\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3760#8\n\n!!!\nКурсор наводить на название объекта. На странице самого объекта работает только для \"Похожие объявления рядом\".\n\nПРИМЕР\nhttps://domclick.ru/arenda/kvartiry/odnokomnatnaja\nhttps://spb.domclick.ru/search?deal_type=sale&category=living&offer_type=flat"},"Douban":{"img":"^(img\\d+\\.douban(?:io)?\\.com/)(?:(view/|img/)(?:photo|movie_poster_cover|(thing_review|commodity_story|celebrity))/(?!large)[^/]+|(icon/u(?=\\d))|[sm](?=pic/))","to":":\nreturn $[1] + ($[2] ? $[2] + ($[3]||'photo') + '/#large photo#' : (($[4]||'') + 'l'));","note":"EXAMPLES\nhttps://movie.douban.com\nhttps://www.douban.com/photos/album/82722476/\nhttps://www.douban.com/gallery/topic/3345004/?_dtcc=1"},"Doujins-x":{"link":"doujins\\.com\\/.+\\/.+-\\d+.*","res":":\nvar i = $._.indexOf('class=\"swiper-zoom-container\"');\nif(t<0) { return null; }\nvar t = $._.indexOf('class=\"swiper-button-next\"', i);\nif(t<0) { return null; }\nvar res = [];\nvar re = /data-src=\"([^\"]+)\"/gi\nvar data=$._.substring(i,t);\nvar a = re.exec(data);\nwhile(a) {\n res.push([a[1].replace('amp;', '')]);\n a = re.exec( data );\n}\nreturn res;","img":"static.doujins\\.com\\/t2?-(\\w+)\\..+","to":":\nlet url=document.querySelector('.swiper-slide[data-hash=\"'+$[1]+'\"] img').getAttribute('data-src');\nreturn url;\n","note":"Baton34V\n(PM - 09/10/22)\nOLD\nhttps://www.reddit.com/r/imagus/comments/xv9tah/comment/ir1ohog\n\n!!!\nНеобходима установка расширения uBlock Origin (uBO) и правила для него / You need to install the uBlock Origin (uBO) extension and the rule for it:\ndoujins.com##.thumbnail-cover\n\nПРИМЕРЫ / EXAMPLES\nhttps://doujins.com/artists/Katou+Jun\nhttps://doujins.com/tags/Cheating?page=5\nhttps://doujins.com/searches?words=naruto&page=3\nhttps://doujins.com/doujins-original-series/sinistra-a-narrow-eyed-gentle-big-breasted-mama-54410"},"DPChallenge":{"img":"^(images\\.dpchallenge\\.com/images_[^/]+/\\d+-\\d+/\\d+/)120/","to":"$1800/","note":"EXAMPLES\nhttps://www.dpchallenge.com/photo_gallery.php?GALLERY_ID=24\nhttps://www.dpchallenge.com/photo_gallery.php?GALLERY_ID=17"},"Dribbble":{"link":"dribbble\\.com/shots/[\\w-]+","res":":\nvar i = $._.indexOf('<ol class=\"');\nvar res = [];\nif(i<0) {\n i = $._.indexOf('<video');\n if(i<0) {\n var re = /data-photoswipe-image.+?href=\\\"(http[^?]+)\\?/gi\n var a = re.exec($._);\n if (a) {\n res.push([a[1]]);\n } else {\n var ree = /div class=\\\"media-content\\\".+data-animated-url=\\\"(http[^\\\"]+)/gis\n var b = ree.exec($._);\n if (b) {\n res.push([b[1]]);\n } else {\n return null;\n }\n }\n } else {\n var t = $._.indexOf('</video', i);\n if(t<0) {return null;}\n var part=$._.substring(i,t);\n var re = /data-video-large=\\\"(http[^\\\"]+)/gi\n var a = re.exec(part);\n if (a) {\n res.push([a[1]]);\n } else {\n var ree = / src=\\\"(http[^\\\"]+)/gi\n var b = ree.exec(part);\n res.push([b[1]]);\n }\n }\n} else {\n var t = $._.indexOf('</ol>', i);\n if(t<0) {return null;}\n var part=$._.substring(i,t);\n var re = /data-srcset=\\\"(http[^\\?]+)/gi\n var a = re.exec(part);\n if (a) {\n var doc = new DOMParser().parseFromString(part+\"</ol>\", \"text/html\");\n var imgs = Array.from(doc.querySelectorAll(\"img\"));\n for (const i of imgs) {\n var url = i.attributes[\"data-animated-url\"];\n if (url) {\n res.push([url.value]);\n } else {\n url = i.attributes[\"data-src\"];\n if (url == null) {\n url = i.attributes.src;\n }\n var ree = /(http(?=.*cdn\\.)[^\\?]+)/gi\n var b = ree.exec(url.value);\n if (b && (i.classList.length && \n i.classList[0].toLowerCase()===\"lazyload\")) {\n res.push([b[1]]);\n }\n }\n }\n } else {\n re = /div class=\\\"video-wrap\\\"/gi\n if (re.exec(part)) {\n var ree = /data-video-large=\\\"(http[^\\\"]+)/gi\n var b = ree.exec(part);\n res.push([b[1]]);\n }\n }\n}\n\nreturn res;","note":"destiny child\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1600#9\nOLD\nhttps://www.reddit.com/r/imagus/comments/c1vjns/comment/ers70h4\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3200#13\n\n!!!\nДля просмотра в некоторых режимах (например Поиск) необходимо зайти в аккаунт.\n==\nTo view in some modes (for example, Search), you need to log in to your account.\n\nEXAMPLES\nhttps://dribbble.com/riskified\nhttps://dribbble.com/shots/popular/animation\nнужен аккаунт / account needed:\nhttps://dribbble.com/search/green"},"Drive2.ru":{"link":"drive2\\.ru\\/\\w/\\d+/","res":":\nvar i = $._.indexOf('<div class=\"c-post__pic\"');\nif(i<0) { return null; }\nvar t = $._.indexOf('<div class=\"c-post-meta o-group o-group--justify\">', i);\nif(t<0) { return null; }\nvar res = [];\nvar re = /<a href=\"([^\"]+)\" class=\"c-lightbox-anchor c-pic-zoom\"/gi\nvar data=$._.substring(i,t);\nvar a = re.exec(data);\nwhile(a) {\n res.push([a[1]]);\n a = re.exec(data);\n}\nreturn res;\n\n","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3320#8\n\nПРИМЕРЫ\nhttps://www.drive2.ru/experience/renault/g3151/"},"Drom.ru":{"link":"\\w+\\.drom\\.ru/.+/.+/\\d+\\.html","res":":\nreturn [...new DOMParser().parseFromString($._,\"text/html\").querySelectorAll('[data-ftid=\"bull-page_bull-gallery_thumbnails\"] a')].map(i=>[i.href]);","note":"hababr\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=2120#8\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=160#17\n\nПРИМЕРЫ\nhttps://auto.drom.ru/mercedes-benz/\nhttps://baza.drom.ru/sankt-peterburg/wheel/\nhttps://moto.drom.ru/sankt-peterburg/atv/"},"Drom.ru_review":{"link":"drom\\.ru/reviews/.+/.+/\\d+/","res":":\nlet i = $._.indexOf('data-thumb-images');\nif(i<0) { return null; }\nlet t = $._.indexOf('<div data-preview-images', i);\nif(t<0) { return null; }\nlet res = [];\nlet re = /href=\"([^\"]+)\"/gi\nlet data=$._.substring(i,t);\nlet a = re.exec(data);\nwhile(a) {\n res.push([a[1]]);\n a = re.exec(data);\n}\nreturn res;","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=160#17\n\nПРИМЕРЫ\nhttps://www.drom.ru/reviews/"},"Dropbox":{"link":"^(dropbox\\.com/[su]h?/[^?]+\\.(?:jp(?:g|eg?)|a?png|gif|svgz?|bmp|web[pm]|og[gv]|j(?:if|fif?))).*","ci":1,"to":"https://dl.$1","note":"EXAMPLES\nhttps://www.reddit.com/domain/dropbox.com/new"},"DTF.ru":{"img":"^(leonardo\\.osnova\\.io/[\\da-f-]+/)-/.+","to":"$1","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1600#19\n\nПРИМЕРЫ\nhttps://dtf.ru/cinema/1569252-zriteli-unichtozhili-reyting-novogo-multseriala-pro-velmu-iz-skubi-du"},"Dubz":{"link":"^(?:clip\\.)?dubz\\.[a-z]{2,4}/[a-z]{1,}/([a-z0-9]{6,})$","to":"https://dubzalt.com/storage/videos/$1.mp4","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/16s6g6c/comment/k283ned\nOLD\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jv5cpmr\n\nEXAMPLES\nhttps://www.reddit.com/domain/dubz.co/new/\nhttps://www.reddit.com/domain/dubz.link/new/"},"DuckDuckGo":{"img":"^(external-content\\.duckduckgo\\.com/iu/\\?u=.+)","loop":2,"to":":\nfunction inject(code) {\n const s = document.createElement('script');\n s.textContent = code;\n s.onload = function() { this.remove(); };\n (document.head || document.documentElement).appendChild(s);\n}\n\nconst thumb_url = (new URL('https://' + $[0])).searchParams.get('u');\nconst thumb_id = (new URL(thumb_url)).searchParams.get('id');\nconst tc = this.TRG.className;\n\nif (!(tc.includes('tile--img__img') || tc.includes('module--images__thumbnails__image'))) return thumb_url;\n\ninject('sessionStorage.setItem(\"DDGData\", JSON.stringify(window.DDG.Data.answers._definitions[1].model.items));');\n\nconst ddg_images = JSON.parse(sessionStorage.getItem('DDGData'));\n\nfor (const item of ddg_images) {\n if (item.thumbnail.includes(thumb_id)) return item.image;\n}","note":"64h\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1060#11\n\nEXAMPLES\nhttps://duckduckgo.com/?q=cat+pics\nhttps://duckduckgo.com/?q=cat+pics&ia=images&iax=images"},"Dumpert.nl":{"link":"^(dumpert\\.nl/)(?:mediabase|item)(/\\d+)[/_]([\\da-f]+)/?","url":"https://api-live.$1mobile_api/json/info$2_$3","res":":\nvar r=JSON.parse($._), x = r&&r.items&&r.items[0]\nreturn x.media.map(function(m,i){\n var v = {};\n m.variants.forEach(function(m){return v[m.version]=m.uri})\n return [v['720p'] || v.tablet || v.mobile || v.photo, !i && [x.date, x.title, x.description].filter(Boolean).join(' | ')]\n})","img":"^media\\.(dumpert\\.nl/)(?:sq_thumb|still)s/medium(/\\d+)_([\\da-f]+).+","note":"https://www.reddit.com/r/imagus/comments/dntaa7/comment/fexkxw6\n\nEXAMPLES\nhttps://www.dumpert.nl/zoek/ANIMALS\nhttps://www.dumpert.nl/zoek/CHILD\nhttps://www.dumpert.nl/toppers\nhttps://www.dumpert.nl/latest"},"e621|e926|e6ai-x-p":{"link":"^e(621|926)\\.net/pools/\\d+","res":":\nlet i = $._.indexOf('<div id=\"posts-container\">');\nif(i<0) { return null; }\nlet t = $._.indexOf('<div class=\"paginator\">', i);\nif(t<0) { return null; }\nlet res = [];\nlet re = /data-file-url=\"([^\"]+)\"/gi\nlet data=$._.substring(i,t);\nlet a = re.exec(data);\nwhile(a) {\n res.push([a[1]]);\n a = re.exec(data);\n}\nreturn res;","img":"(static\\d\\.e(?:621|926|6ai)\\.net/data/)preview/(\\w+/\\w+/\\w+\\.)\\w+","to":"$1$2#png jpg webm gif#","note":"Baton34V + imqswt (edit)\nhttps://www.reddit.com/r/imagus/comments/17chaqm/comment/k5t8bhf\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=680#13\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=640#5\n\n\nEXAMPLES\nhttps://e6ai.net/posts\nhttps://e621.net/pools/gallery\nhttps://e621.net/pools/14205\nhttps://e621.net/posts?tags=keke_%28artist%29\nhttps://e621.net/posts?tags=kyrakupetsky"},"eApteka.ru":{"link":"eapteka\\.ru/([^/]+/)?goods/id\\d+/","res":":\nvar i = $._.indexOf('<div class=\"gallery__main-slick s-carousel\"');\nif(i<0) { return null; }\nvar t = $._.indexOf('<div class=\"', i+20);\nif(t<0) { return null; }\nvar res = [];\nvar re = /<a href=\"([^\"]+)\"/gi\nlet data=$._.substring(i,t);\nvar a = re.exec(data);\nwhile(a) {\n res.push([a[1]]);\n a = re.exec(data);\n}\nreturn res;","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1340#20\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=100#15\n\n\nПРИМЕРЫ\nhttps://www.eapteka.ru/goods/vitaminy_i_bad/\nhttps://www.eapteka.ru/sochi/search/?q=эхинацея"},"EBAY":{"link":"^(?:(?:(?:be\\w\\w|viewitem\\.eim|cgi)\\.)?ebay\\.(?:a[pt]|[bd]e|c[ahnz]|co(?:m(?:\\.(?:au|hk|my|sg|tw))?|\\.(?:th|uk))|es|f[ir]|gr|[hr]u|i[ent]|n[lo]|p[hl]|vn)/(?:itm/)?[^/?]*[?/](?:item=)?|chodientu\\.vn/ebay-item-)(\\d{8,19}).*","res":":\nconst rx =\n /img src=\"([^\"]+)\" style=\"max\\-width:64px;max\\-height:64px\"\\s+index=\"\\d+\"/g;\nconst matches = [...$._.matchAll(rx)];\nif (matches.length)\n return matches.map(item => [item[1].replace(/s\\-l\\d+\\./, 's-l9999.'), '']);\n\nconst scriptSrc = $._.match(/mediaList\":(\\[.*?)<\\/script>/)?.[1];\nif (!scriptSrc) return;\n\n// Find where the mediaList array ends.\nlet counter = 0,\n end;\nfor (let i = 0; i < scriptSrc.length; i++) {\n if (scriptSrc[i] === '[') counter++;\n if (scriptSrc[i] === ']') counter--;\n if (counter === 0) {\n end = i + 1;\n break;\n }\n}\n\ntry {\n return JSON.parse(scriptSrc.slice(0, end)).map(m => [\n m?.image?.originalImg?.URL.replace(/s\\-l\\d+\\./, 's-l9999.'),\n m?.image?.originalImg?.title.trim(),\n ]);\n} catch (e) {\n console.log(`eBay Sieve didn't work. Error: ${e}`);\n return;\n}\n","img":"^((?:ssl)?i\\d*\\.ebayimg\\.com/)(?:(?:thumbs/)?(images/[a-z]/[^/]+/s-l)[^.]+|((?:t/[^/]+/)?\\d+/[^_]+(?:~~\\d*)?)_(?!32)\\d+\\.)","to":":\nreturn $[1]+($[2] ? $[2]+'1600' : $[3]+'_32.')","note":"gpl2731\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1200#11\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1160#12\nhttps://www.reddit.com/r/imagus/comments/fjtjio/where_can_i_get_the_default_url_string_for_the/\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.ebay.co.uk/b/Fishfinders-GPS/29723/bn_10198555?LH_Auction=1&rt=nc\nhttps://www.ebay.co.uk/b/Samsung-Laptops-Netbooks/175672/bn_6385453\nhttps://www.ebay.co.uk/p/28044271993?iid=165595634146\nhttps://www.ebay.com/sch/i.html?_from=R40&_trksid=p2499334.m570.l1313&_nkw=sports+cars&_sacat=6001\nhttps://www.ebay.com/itm/AMD-Ryzen-Threadripper-3990X-Processor-4-3-GHz-64-Core-Socket-sTRX4/223937363515?epid=4036368896&hash=item3423b4fe3b:g:4qkAAOSwzCFeYRaa"},"E-Hentai|Exhentai-x-p":{"link":"^((?:g\\.e-|e[x-])hentai\\.org\\/(lofi\\/)?(g|s)\\/\\w+\\/(\\w+(-\\d+)?))(\\/\\?p=(\\d+))?","res":":\nvar loadpage = 50;\nvar maxpages = $._.match(/Showing (\\d+) - (\\d+) of (\\d+) images/);\nvar res = [];\n\nfunction processLink(link) {\n const xhr = new XMLHttpRequest();\n xhr.open('GET', link, false);\n xhr.send();\n const matches = xhr.responseText.match(/src=\"(https:\\/\\/[\\w.]+\\.hath\\.network.+?)\"/);\n if (matches) {\n res.push([matches[1]]);\n }\n}\n\nif ($[3] === 's') {\nvar pages = [$[0], ...(document.documentElement.outerHTML.match(new RegExp(`(?<=${$[0]})[\\\\s\\\\S]*?(?=class=\"c\")`)) || [])\n .join('')\n .match(/https:\\/\\/(?:g\\.e-|e[x-])hentai\\.org\\/(?:lofi\\/)?s\\/\\w+\\/\\d+-\\d+/g)\n ?.slice(0, loadpage - 1)];\n pages?.forEach(processLink);\n} else {\n var pages = $._.match(/https:\\/\\/(?:g\\.e-|e[x-])hentai\\.org\\/(?:lofi\\/)?s\\/\\w+\\/\\d+-\\d+/g)?.slice(0, loadpage);\n pages?.forEach(processLink);\n}\n\nconsole.log(pages);\nreturn res;","note":"loveqianool\nhttps://www.reddit.com/r/imagus/comments/16fg1ks/comment/k3h5v9z\nOLD\nhttps://www.reddit.com/r/imagus/comments/16fg1ks/ehentai_sieves/\n\n\n!!!\nВ РФ нужен качественный прокси, на плохом периодически \"красный спиннер\".\n+\nВ результатах поиска фильтр показывает только первые 8 страниц галереи (ограничение защиты сайта).\n==\nIn the search results, the sieve shows only the first 8 pages of the gallery (site protection restriction).\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://e-hentai.org/tag/parody:blue+archive\nhttps://e-hentai.org/tag/character:silver+wolf\nhttps://e-hentai.org/g/2424971/440a74554f/\nhttps://e-hentai.org/g/2424915/97d240eb12/?p=2"},"ehentai.to|nhentai.to-x-p-b":{"link":"ehentai\\.to|nhentai\\.to/g/\\d+/$","res":":\nvar i = $._.indexOf('id=\"thumbnail-container\"');\nif(i<0) { return null; }\nvar t = $._.indexOf('<script src=\"', i);\nif(t<0) { return null; }\nvar res = [];\nvar re = /data-src=\"([^\"]+)\"/gi\nvar a = re.exec( $._.substring(i,t) );\nvar data=$._.substring(i,t);\nwhile(a) {\n res.push([a[1].replace('t.','.')]);\n a = re.exec(data);\n}\nlet meta = document.querySelector('head > meta[name=\"referrer\"]');\nif (!meta) {\n meta = document.createElement('meta');\n meta.name = 'referrer';\n meta.content = 'same-origin';\n document.getElementsByTagName('head')[0].appendChild(meta);\n} else if (meta.attributes.content.value !== 'same-origin') {\n meta.attributes.content.value = 'same-origin';\n}\nreturn res;","img":"(cdn\\.nload.xyz/galleries/\\d+/\\d+)t(\\.\\w+)","to":"$1#.png .jpg .gif#","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=740#5\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://nhentai.to/g/403031"},"eKnives.ru":{"link":"^eknives\\.ru/[\\w-]+/\\d+\\.html","res":":\nvar i = $._.indexOf('<div class=\"pps_hide\"');\nif(i<0) {return null; }\nvar t = $._.indexOf('</div>', i);\nif(t<0) {return null; }\nvar res = [];\nvar re = /<a href=\"([^\"]+)\"/gi\nvar data=$._.substring(i,t);\nvar a = re.exec(data);\nwhile(a) {\n res.push([a[1]]);\n a = re.exec(data);\n}\nreturn res;\n","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3660#18\n\nПРИМЕРЫ\nhttps://www.eknives.ru/brandMrblade/"},"Eksisozluk":{"link":"^(eksisozluk(.+)?\\.com/img|soz\\.lk/i)/[\\da-z]+","res":"property=\"og:image\" content=\"([^\"]+)","note":"mortyobnoxious\nhttps://www.reddit.com/r/imagus/comments/167b83i/comment/kergxj3\nOLD\nhttps://www.reddit.com/r/imagus/comments/167b83i/comment/k1jt9r8\nhttps://www.reddit.com/r/imagus/comments/167b83i/updated_rule_for_eksisozlukcom_that_will_work\n\n\nEXAMPLES\nhttps://www.reddit.com/r/imagus/comments/167b83i/comment/keqhmxf"},"EksiUp":{"link":"^(eksiup\\.com/)(?:p/)?([\\da-z]{9,12}).*","url":"$1p/$2","res":"=\"og:image\" content=\"([^\"]+)\n=\"og:title\" content=\"([^\"]+) - ","note":"https://www.reddit.com/r/imagus/comments/bjtmgz/comment/eme4v8k\n\n!!!\nNeed an account"},"Eldorado.ru":{"link":"^eldorado\\.ru\\/cat\\/detail\\/.+","res":":\nvar i = $._.indexOf('<div class=\"slider-native slider-preview js-slider-with-preview\">');\nif(i<0) { return null; }\nvar t = $._.indexOf('<div class=\"slider-item-image-check-age\">', i);\nif(t<0) { return null; }\nvar res = [];\nvar re = /src=\"(https?:\\/\\/static\\.eldorado\\.ru\\/.+?)\\/resize\\/.*\\/\"/gi\nvar data=$._.substring(i,t);\nvar a = re.exec(data);\nwhile(a){\n res.push([a[1]]);\n a = re.exec(data);\n}\nreturn res;","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/18n32dx/comment/kegj1ka\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3840#3\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2380#5\n\n!!!\nКурсор рекомендуется наводить на название товара.\n+\nНа данном сайте агрессивная защита, которая иногда приводит к блокированию работы фильтра (желтый спиннер), но возможно она срабатывает не всегда и не для всех.\n\n\nПРИМЕРЫ\nhttps://www.eldorado.ru/c/televizory/f/qled-technologiya/\nhttps://www.eldorado.ru/c/operativnaya-pamyat/?view=tile\nhttps://www.eldorado.ru/search/catalog.php?q=оперативная%20память\nhttps://www.eldorado.ru/c/gazovye-plity/b/GEFEST/f/s_grilem"},"eMoviePoster":{"img":"^(emovieposter\\.com/images/[^/]+/(?:AA\\d{6}/)?)\\d+","to":"#$1\n$1550/","note":"https://www.reddit.com/r/imagus/comments/e6l53p/comment/feypzhw\n\nEXAMPLES\nhttps://www.emovieposter.com/agallery/14.html\nhttp://www.emovieposter.com/agallery/archiveitem/12885732.html"},"EnterDesk":{"img":"^(up\\.enterdesk\\.com\\/edpic).+((?:\\/\\w\\w){3}\\/\\w{32}\\.jpg)$","to":"$1$2","note":"Rodny + Baton34V (fix)\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=1560#5\n\nEXAMPLES\nhttps://www.enterdesk.com/tag-%E9%9D%99%E8%B0%A7/\nhttps://www.enterdesk.com/tag-%E7%BE%8E%E8%85%BF/\nhttps://www.enterdesk.com/tag-%E7%99%BE%E5%AE%B6%E5%A7%93/"},"Epicentrk.ua-p":{"link":"epicentrk\\.ua/(?:ua/)?shop/.+\\.html","res":":\nconst rx = /\"SRC\":\\{\"\\d+\":\"(https?.+?jpe?g)/g;\nconst m = [...$._.matchAll(rx)].map(e => [e[1], \"\"]);\nif (!m.length) return;\nreturn m;","note":"gpl2731\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1120#10\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2600#10\n\n!!!\nВ РФ нужен прокси.\n\nПРИМЕРЫ\nhttps://epicentrk.ua/ua/shop/velosipedy/\nhttps://epicentrk.ua/ua/shop/krossovki-i-kedy-muzhskie/"},"Epicgames":{"link":"^store\\.epicgames\\.com/[^/]+/(?:p|blog)/.+","res":":\nreturn [...new Map([...$._.matchAll(/img[^>]+(?:content|data-image|src)=\"(https:\\/\\/[^/]+\\/[^.\"]+\\.[^?\"]+)/g)].map(i=>[i[1]]))]","img":"^(cdn\\d\\.unrealengine\\.com/[^.]+\\.[^?]+).*","to":"$1","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/15qpek4/comment/jwjhnge\n\nEXAMPLES\nhttps://store.epicgames.com/ru/news?page=3\nhttps://store.epicgames.com/ru/collection/top-sellers\nhttps://store.epicgames.com/ru/browse?q=green&sortBy=relevancy&sortDir=DESC&count=40"},"Eporner-x-p":{"link":"^eporner\\.com/(?:hd-porn|video).*","res":":\nconst max_resolution = 1080;\n\nconst re = new RegExp(\n '<a href=\"(?<url>/dload.*?)\" >Download.*?\\\\((?<res>\\\\d+)',\n 'g'\n);\nconst streams = [...$._.matchAll(re)]\n .map(a => ({\n res: a.groups.res,\n url: `https://www.eporner.com${a.groups.url}`,\n }))\n .sort((a, b) => b.res - a.res)\n .filter(a => a.res <= max_resolution);\n\nif (streams.length) return streams[0].url;\nreturn;\n","note":"gpl2731\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3720#8\nOLD\nhttps://www.reddit.com/r/imagus/comments/iv556b/nsfw_bunch_of_sieves_for_popular_adult_site_videos/\n\n!!!\nВ РФ нужен прокси. Показ галерей не работает.\n==\nThe gallery display does not work.\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/domain/eporner.com/new\nhttps://www.eporner.com/search-photos/milf-mom/\nhttps://www.eporner.com/pornstar/brandi-love/photos/#toptopbel"},"EroMe-x-p":{"link":"^erome\\.com/[ai]/\\w+","res":":\nconst title = $._.match(/<h1>(.+)<\\/h1>/)?.[1] || '';\nconst vidRe = `(?:<source src=\"([^\"]+)\" type='video\\/mp4)`;\nconst imgRe = `(?:lasyload\" data-src=\"([^\"]+))\" src=\"data:image`;\nconst re = new RegExp(`${vidRe}|${imgRe}`, 'g');\n\nconst matches = [...$._.matchAll(re)].map(m => m?.[1] || m?.[2]);\nif (!matches.length) return;\n\nlet result = Array.from(new Set(matches));\nresult = result.map((item, idx) => [\n item,\n `${title} - ${idx + 1} of ${result.length}`,\n]);\nreturn result;\n","note":"gpl2731\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1140#5\n\n!!!\nДля показа видео необходимо правило для SMH (см.ЧаВо, п.12).\n==\nTo show the video, you need a rule for SMH (see FAQ, p.12).\n\nEXAMPLES\nhttps://www.erome.com/Bootyallday3\nhttps://www.erome.com/search?q=michelle\nhttps://www.erome.com/explore/new?page=5"},"EroProfile-x-p":{"link":"eroprofile\\.com\\/[mp]\\/(videos|photos)\\/view\\/.*","res":":\nlet toptext = $._.match(/<h1 class=\"capMultiLine\">([^<]*)<\\/h1>/)[1];\n\nlet mediaurl = \"\";\n\nif($[1] == \"photos\") {\n mediaurl = $._.match(/<img class=\"photoPlayer\" src=\"([^\"]*)\" alt/)[1];\n}\nelse { //($[1] == \"videos\")\n mediaurl = $._.match(/<source src=\"([^\"]*)\" type/)[1];\n}\n\nreturn [mediaurl, toptext];","note":"iceiller9999\nhttps://www.reddit.com/r/imagus/comments/102rqm3/comment/j35bvzz\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3360\n\nEXAMPLES\nhttps://www.eroprofile.com/m/videos/home?pnum=4\nhttps://www.eroprofile.com/m/photos/popular\nhttps://www.eroprofile.com/m/photos/search?niche=12\nhttps://www.reddit.com/domain/eroprofile.com/"},"EtoRetro.ru":{"useimg":1,"link":"((www\\.)?etoretro\\.ru\\/pic\\d+\\.htm\\?sort_field=\\w+&sort=(DESC|ASC)(&time_range=\\w+)?&position=\\d+)","ci":1,"res":":\nconst rx = /src=\"(data\\/media\\/.*?\\.jpe?g)\"/g;\nconst m = [...$._.matchAll(rx)].map(e => [e[1], \"\"]);\nif (!m.length) return;\nreturn m;","img":"^(etoretro.ru/data/)thumbnails","to":"$1media","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/kd6jo2n\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1120#10\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=1020#21\n\n\nПРИМЕРЫ\nhttps://www.etoretro.ru/id5421.htm\nhttps://etoretro.ru/id298.htm?page=4\nhttps://etoretro.ru/city5306.htm\nhttps://etoretro.ru/city5313.htm#z-z%7CDESC%7C6%7Cimage_date%7Call"},"Etsy-p":{"img":"^(i(?:mg\\d*)?\\.etsystatic\\.com/[^_]*/i[^_]+_)\\d+x[\\dN]+","to":"$1fullxfull","note":"EXAMPLES\nhttps://www.etsy.com/c/home-and-living/furniture/bedroom-furniture?ref=catnav-891\nhttps://www.etsy.com/search?q=handmade+clothing&mosv=sese&moci=1069619756788"},"Explosm":{"link":"^explosm\\.net/comics/(?:.+)","res":":\nlet comic;\n\ncomic = $._.match(/<img src=\"(https:\\/\\/(?:files|static)\\.explosm\\.net\\/(?:\\d{4}\\/\\d{2}\\/\\d+|comics\\/[^\\/]+)\\/[^\\.]+\\.(?:png|gif|jpg))/);\nif (comic)\n comic = comic[1];\n\n// This is a fallback in case the page dynamically loads the comic. It seems only a few pages do that (see notes for an example)\nelse\n comic = $._.match(/\\\\\"mediaItemUrl\\\\\":\\\\\"(https:\\/\\/(?:files|static)\\.explosm\\.net\\/(?:\\d{4}\\/\\d{2}\\/\\d+|comics\\/[^\\/]+)\\/[^\\.]+\\.(?:png|gif|jpg))\\\\\",/)[1];\n\nreturn comic;","note":"borderpeeved\nhttps://www.reddit.com/r/imagus/comments/xdzxo9/comment/iojot9a\n\nEXAMPLES\nhttps://explosm.net/\nhttps://www.reddit.com/r/CyanideandHappiness/search/?q=url%3Aexplosm.net&include_over_18=on&restrict_sr=on&t=all&sort=top"},"F1CD.ru":{"img":"^(f1cd\\.ru/d/\\d+/\\d+/\\d+/\\d+/)(?:m|logo)_(\\d+\\.(?:jpe?g|png|gif|bmp))$","to":"$1$2\n$1m2_$2","note":"Rodny\n\nПРИМЕРЫ\nhttp://www.f1cd.ru/show/79979/\nhttp://www.f1cd.ru/input/reviews/a4tech_kd-600l/"},"FACEBOOK-p":{"link":"^(?:(?:m(?:basic)?\\.)?facebook\\.com/(?:photo(?:/download/|\\.php|s/\\w+/|\\/)\\?(?:fb|photo_)id=|([^/]+/photos/)(?:[a-z]+\\.[^/]+/)?)|lookaside\\.fbsbx\\.com/lookaside/crawler/media/\\?media_id=)(\\d+).*","url":": (this.node.dataset||{}).ploi || (((this.node.parentNode || {}).dataset) || {}).ploi ? '' : 'https://www.facebook.com/' + ($[1] ? $[1] + $[2] : 'photo.php?fbid=' + $[2])","res":":\nif($._===void 0)return this.node.dataset.ploi||this.node.parentNode.dataset.ploi\nvar u=$._.match(RegExp('='+($[2]||$[1])+'(?:[^\">]+\"\\\\s+)+?data-ploi=\"([^\"]+)')) || $._.match(RegExp(',\"image\":{\"uri\":\"(https:[^\"]+)')) || $._.match(/=\"og:image\" content=\"([^\"]+)/)\nreturn u && u[1].replace(/\\\\/g, '') || !1","img":"^(?:fbcdn-s?photos[\\da-z-]+\\.akamaihd|s?(?:content|photos|origincache)[^/]+\\.fbcdn)\\.net/(?!h?vthumb-)[^_?]+/\\d+_(\\d+).*","loop":2,"to":":\nif($[0].indexOf('.mp4?')>0)return''\nvar p=this.node\nif(window.location.hostname.slice(-13)=='.facebook.com' && (document.evaluate('./ancestor::div[contains(@class, \"stageWrapper\")]', p, null, 9, null).singleNodeValue || p.matches('.UFICommentContent>div[data-testid], a>abbr>span.timestampContent, #fbProfileCover>a:first-child')))return''\np=p.pathname||(p=p.parentNode)&&p.pathname||(p=p.parentNode)&&p.pathname\np=p&&p.match(/^\\/([\\w.-]+)\\/?$/)\nreturn 'https://facebook.com/' + (p?p[1].replace(/^\\w+-(\\d{8,})$/, '$1')+'/photos/' : 'photo.php?fbid=') + $[1]"},"FACEBOOK_fb-g+-ddg-proxy-p":{"img":"^(?:(?:(?:fbexternal-[a-z]\\.akamaihd|(?:s-|fb)?external[^.]*(?:\\.[-\\da-z]+)+?\\.fbcdn|platform\\.ak\\.fbcdn)\\.net|(?:l\\.)?facebook\\.com)/(?:safe_image|www/app_full_proxy|(l))\\.php|images\\d-focus-opensocial\\.googleusercontent\\.com/gadgets/proxy|^(?:images|external-content|proxy)\\.duckduckgo\\.com/iu/)\\?(?:[^&]+&)*?(?:u(?:rl)?|src)=(http[^&]+).*","to":":\nvar u=decodeURIComponent($[2].replace(/\\+/g,' ')),n\nthis.node.IMGS_fallback_zoom=u\nn=this.find({href: u, IMGS_TRG: this.node})\nreturn n&&typeof n!='number'||n===null? (Array.isArray(n) ? n.join('\\n') : n) : ($[1]?'':u)"},"FACEBOOK_vid|fb.watch-p-b":{"link":"(facebook\\.com\\/.*\\/(?:videos\\/|\\?v=).*|fb\\.watch\\/[\\w-]+)","res":"meta property=\"og:video\" content=\"([^\"]*)\"","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=400#10\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2300#18\n\n!!!\nКурсор наводить на название\n==\nHover over title\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/domain/fb.watch/new\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=400#7"},"Fandom-p":{"link":"^fandom\\.com/video/\\w+/[\\w-]+","res":":\n$=JSON.parse($._.match(/\"__NEXT_DATA__\"\\s+type=\"application\\/json\">({.*?})<\\//)?.[1]||'{}').props?.pageProps.ssrCurrentVideo||null\nif(!$)return ''\nconst t=[$.title,$.description].filter(Boolean).join(\" | \")\n$=$.sources.filter(i=>i.type===\"video/mp4\"&&i.height).sort((a,b)=>a.height-b.height)\nreturn [[['#'+$.pop().file,$?.[Math.floor($.length/2)]?.file||''],t]]","img":"^(static\\.wikia\\.nocookie\\.net/.+latest)(?:/scale-to-width-down/\\d{1,4})?(\\?cb=\\d{14})","to":"$1$2","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/k2v12dv\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1360#4\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.fandom.com/video\nhttps://swtor.fandom.com/wiki/Smuggler\nhttps://fallout.fandom.com/ru/wiki/Убежище_118#Галерея"},"FantLab.ru":{"img":"^(fantlab\\.ru\\/images\\/editions\\/)(?:\\w+)(\\/.*)","to":"$1orig$2\n$1big$2","note":"gpl2731\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1140#3\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=1680#8\n\nПРИМЕРЫ\nhttps://fantlab.ru/work1274\nhttps://fantlab.ru/edition117699"},"Fapello-x-p":{"useimg":1,"link":"^fapello\\.(?:com|su)/[\\w-]+/\\d+","res":"class=\"flex justify-between items-center\">[^\\\\]+?<(?:source[^>]+|img\\s+)src=\"([^\"]+)\n","img":"^(fapello\\.(?:com|su)/content/.+)_\\d+px\\..+","to":":\nconst n=this.node\nreturn $[1]+'.'+(n.firstElementChild?.src||n.height<150?'#mp4 jpg#':'jpg')","note":"imqswt\nhttps://www.reddit.com/r/imagus/comments/17jnh58/comment/k8rlphl\nOLD\nhttps://www.reddit.com/r/imagus/comments/17jnh58/comment/k72xm47\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://fapello.com/taylor-swift/\nhttps://fapello.com/videos/\nhttps://fapello.com/popular_videos/twelve_hours/\nhttps://fapello.com/trending/"},"Farpost.ru":{"link":"^farpost\\.ru/\\w+/\\w+/.+-\\d+\\.html","res":":\nlet i = $._.indexOf('<div class=\"image-gallery__big');\nif(i<0) { return null; }\nlet t = $._.indexOf('<div class=\"image-gallery__small', i);\nif(t<0) { return null; }\nlet res = [];\nlet re = /src=\"([^\"]+)_bulletin\"/gi\nlet data=$._.substring(i,t);\nlet a = re.exec(data);\nwhile(a) {\n res.push([a[1]+'_default']);\n a = re.exec(data);\n}\nreturn res;","img":"^(static\\.baza\\.farpost\\.ru/v/\\d+)_(block|hugeBlock|bulletin|thumbnail\\d+)$","to":"$1_default","note":"destiny child\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1600#9\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=160#17\n\nПРИМЕРЫ\nhttps://www.farpost.ru/vladivostok/tech/appliances/washers/\nhttps://www.farpost.ru/vladivostok/tech/audio_video/tv/+/Philips/\nhttps://www.farpost.ru/vladivostok/realty/sell_business_realty"},"fashionsnap":{"img":"(fashionsnap-assets\\.com/asset/format=auto),[^/]+(/article/images/[^.]+\\.jpg)","to":"$1$2","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/12q0d7y/comment/jniv20a\n\nEXAMPLES\nhttps://www.fashionsnap.com/article/2023-04-17/gap-popup/"},"Fastly":{"img":"^([^.]{2,20}\\.global\\.ssl\\.fastly\\.com|fastly\\.net/[^?]+\\.(jpe?g|gif|a?png))\\?.+","to":"$1","note":"!!!\nНевозможно проверить работу данного фильтра - нет примеров."},"FastPic":{"link":"^fastpic\\.(ru|org)/(?:full)?view/(\\d+)/(\\d{4}/\\d+)(/.?[\\da-f]{30}([\\da-f]{2})[^?#]+).*","url":"fastpic.$1/fullview/$2/$3$4","res":"loading_img = '([^']+)'","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3280#15\n\nПРИМЕРЫ\nhttps://rutracker.org/forum/viewtopic.php?t=6087782\nhttps://rutracker.org/forum/viewtopic.php?t=6087790\nhttps://rutracker.org/forum/viewtopic.php?t=6087791"},"FastPic_2":{"url":"fastpic.$2/fullview/$1/$3$4","res":"loading_img = '([^']+)'","img":"^i(\\d+)\\.fastpic\\.(ru|org)/(?:thumb|big)/(\\d{4}/\\d+)/[\\da-f]{2}(/.?[\\da-f]{30}([\\da-f]{2})[^?]+).*","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3280#15"},"FastPic_fpic.in":{"link":"^fpic\\.in/\\w+","res":"<img src=\"([^\"]+)\" class=\"image img-fluid\"","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3240#9\n\n\nПРИМЕРЫ\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3240#5"},"FastPic_go.php2":{"link":"fastpic\\.(ru|org)%2F(?:full)?view%2F(\\d+)%2F(\\d{4}%2F\\d+)(%2F.?[\\da-f]{30}([\\da-f]{2})\\.\\w+\\.html)","url":"fastpic.$1/fullview/$2/$3$4","res":"loading_img = '([^']+)","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=260#13\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3280#15\n\n\nПРИМЕРЫ\nhttps://v38.underver.se/viewtopic.php?t=171462\nhttps://rutracker.org/forum/viewtopic.php?t=6087782"},"Favim":{"link":"^favim2?\\.com/image/\\d+/$","res":"<link rel=\"preload\" href=\"([^\"]+)\"","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jv5cpmr\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3760#8\n\nПРИМЕРЫ\nhttps://favim.com/blanket/"},"Ferra.ru-b":{"img":"^(ferra\\.ru/)869x3000/(images/\\d+/\\d+\\.(?:jpe?g|gif|png))$","to":"$1$2","note":"Rodny\n\nПРИМЕРЫ\nhttps://www.ferra.ru/news\nhttps://www.ferra.ru/review/tv"},"FetLife-x":{"link":"^fetlife\\.com/users/\\d+/pictures/\\d+","res":":\n$=JSON.parse($._.match(/\"story-data\" type=\"application\\/json\">({.+?})<\\//)[1]).attributes.pictures[0]\nreturn [[[$.src2x?.replace(/.+/,'#$&')||'',$.src1x]]]","note":"imqswt\nhttps://www.reddit.com/r/imagus/comments/18sefly/comment/kfjrb8d\nOLD\nhttps://www.reddit.com/r/imagus/comments/16kag6g/comment/k0yf12u\n\n\n!!!\nПлатное видео не поддерживается.\n==\nPaid video is not supported.\n\n\nEXAMPLES\nhttps://fetlife.com/search/pictures?page=3&q=BLOND\nhttps://fetlife.com/users/261021/pictures\nhttps://fetlife.com/users/10170568/pictures"},"FEX.net-p":{"link":"^(.*fs\\d{2}\\.fex\\.net/preview/\\d{10}/(?:.+))","note":"destiny child\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1360#17\n\n\nПРИМЕРЫ\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1369"},"FilePicker.io":{"link":"^((?:cdn\\.|www\\.)?filepicker\\.io/api/file/[^/]+).*","img":"^((?:cdn\\.|www\\.)?filepicker\\.io/api/file/[^/]+).*","to":"$1","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jn8v5j7\n\nEXAMPLES\nhttps://www.reddit.com/domain/filepicker.io/new/\nhttps://cdn.filepicker.io/api/file/YV95RZINRKF3y0EufywX/convert?fit=max&h=874&w=1312&compress=true\nhttps://cdn.filepicker.io/api/file/JLLAQcr7TCmTDbtrhY24?\nhttps://www.filepicker.io/api/file/SWqegzqTn6SwVodEEGC2"},"Files.fm-b":{"link":"^(\\w{2}\\.)?files\\.fm/\\w/\\w+","res":":\nvar res = [];\nvar json=JSON.parse($._.match(/objMainShareParams = (\\{\\\"[^;]+)/)[1]);\nvar pathToFile = json.all_files.facebook;\nif (pathToFile) {\n if (pathToFile.link == pathToFile.name) {\n res.push([pathToFile.picture_url]);\n }else{\n var path = pathToFile.picture_url;\n path = path.replace(\"/thumb_show.php?i=\", \"/thumb_video/\");\n path = path.replace(\"&view\", \"&n=\"+pathToFile.name);\n res.push([path]);\n }\n} else {return null;}\nreturn res;","note":"destiny child\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1620#4\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=80#15\n\n\n!!!\nДля корректной работы внешних ссылок с видео необходимо правило для SMH. См. ЧаВо п.12.\n==\nFor external links to work correctly with videos, you need a rule for SMH. See FAQ, p.12.\n\n\nПРИМЕРЫ / EXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=80#14"},"Filestack|Filestackcontent":{"link":"(cdn\\.filestackcontent\\.com/)(?:resize[^/]+/)?(.*)","img":"(cdn\\.filestackcontent\\.com/)(?:resize[^/]+/)?(.*)","to":"$1$2","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jn8v5j7\n\nEXAMPLES\nhttps://cdn.filestackcontent.com/9uzTBRcZR5KcZagOJRqg\nhttps://cdn.filestackcontent.com/resize=w:1300,f:max/ZGpFtp5uSGzbmw1yAPjw"},"Finn.no":{"link":"^(?:finn\\.no/(?:[^.]+\\.html\\?finnkode=)?\\d+|(finn/album\\?gallery(.*))$)","url":": $[1]||/gallery/.test($[0])?'data:,'+Date.now():$[0]","res":":\nconst visible_gallery_image_first = true // <- Set to true for the visible image in the gallery to be the first image in the album, false to keep the first gallery image as the first album image.\n\nlet m, t, a = visible_gallery_image_first\nif($[1]||/gallery/.test($[0]))$._=document.body.outerHTML\nm=JSON.parse($._.match(/(?:__remixContext = |\"__NEXT_DATA__\"[^{]+?)({.+?});?</)?.[1]||'{}')\nm=(m.state?.loaderData?.root?.objectData||m.props?.pageProps?.swrFallback?.objectDataKey)?.images?.map(i=>[(i.uri||i.src).replace(/\\d{3,4}w|default/,'1600w'),i.description])||[...new Map([...$._.matchAll(/(?:background-image:url\\(|data-srcset=\")([^\\s\")]+)/g)])].map(i=>[i[1].replace(/\\d{3,4}w|default/,'1600w')])\nt=this.node.currentSrc?.match(/[^/]+$/)||$[2]\nreturn a&&t&&m?m.concat(m.splice(0,m.findIndex(i=>RegExp(`${t}`).test(i[0])))):m\n","img":"^([^.]*images\\.finncdn\\.no/dynamic/)[^/]+(/[^.]+\\.(?:jpe?g|png))(?!#)","loop":2,"to":":\nreturn /(?=.*object-contain)(?=.*object-center)/.test(this.node.attributes.class.value)?'finn/album?gallery'+$[2]:$[1]+'1600w'+$[2]+'#'","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/e2i020/comment/kd63kgm\nOLD\nhttps://www.reddit.com/r/imagus/comments/e2i020/comment/jymco9f\n\n\nEXAMPLES\nhttps://www.finn.no/bap/forsale/search.html?product_category=2.93.3215.45&sort=RELEVANCE\nhttps://www.finn.no/realestate/businessplots/search.html?sort=PUBLISHED_DESC\nhttps://www.finn.no/reise/feriehus-hytteutleie/norge/hvaler/\nhttps://www.finn.no/bap/forsale/ad.html?finnkode=309541670"},"FireFox_screenshot":{"link":"^screenshots\\.firefox\\.com/.+","res":":\n$=JSON.parse($._.match(/\">({\"[^\\n]+)</)[1])\nreturn [$.downloadUrl.replace(/\\?.*/, ''), [$.buildTime, $.title, $.urlIfDeleted].join(' | ')]","note":"EXAMPLES\nhttps://addons.mozilla.org/ru/firefox/addon/fast-youtube-load\nhttps://addons.mozilla.org/ru/firefox/addon/free-vpn-proxy-planetvpn"},"FishingSib.ru":{"link":"(?:www\\.)?fishingsib\\.ru/forum/attachments/\\d+/","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2160#17\n\nПРИМЕРЫ\nhttps://www.fishingsib.ru/tidings/view/148346/\nhttps://www.fishingsib.ru/forum/threads/40914/"},"Fix-Price":{"link":"fix-price\\.com/catalog/[\\w-]+/[\\w-]+","res":":\nvar i = $._.indexOf('<div class=\"slider gallery\"');\nif(i<0) { return null; }\nvar t = $._.indexOf('<div itemscope=\"itemscope\"', i);\nif(t<0) { return null; }\nvar res = [];\nvar re = /<link href=\"([^\"]+)\"/gi\nvar data =$._.substring(i,t);\nvar a = re.exec(data);\nwhile(a) {\n res.push([a[1]]);\n a = re.exec(data);\n}\nreturn res;","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1800#7\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3660#7\n\n\nПРИМЕРЫ\nhttps://fix-price.com/catalog/igrushki?sort=abc&page=2\nhttps://fix-price.com/catalog/produkty-i-napitki/konservatsiya-myasnaya\nhttps://fix-price.com/search?q=мыло&sort=sold&page=3"},"F-List":{"img":"^(static\\.f-list\\.net/images/char)thumb/","to":"$1image/","note":"!!!\nНужен аккаунт."},"FlashTranny-x":{"link":"^flashtranny.com/(view|gallery)/(\\w|-)+","res":"<source src=\"([^\"]+)","note":"DracoSerge\nhttps://www.reddit.com/r/imagus/comments/150zrnk/nsfw_i_want_to_share_sieves_some_i_made_and_some/\n\nEXAMPLES\nhttps://www.flashtranny.com/search/isabella\nhttps://www.flashtranny.com/category/amateur\nhttps://www.flashtranny.com/pornstar/isabella-muniz"},"Flic.kr":{"link":"^flic\\.kr/p/\\w","res":"(?:=\"og:image\" content|id=\"target\" src)=\"([^\"]+)\n<title>([^|]+)","note":"EXAMPLES\nhttps://www.reddit.com/domain/flic.kr/new/"},"Flickr":{"link":"^(?:secure\\.)?flickr\\.com/photos/[^/]+/(\\d+)/?(?:in/.+|lightbox/?|sizes.+|\\?.+|#/photos/.+)?$","url":"https://api.flickr.com/services/rest/?photo_id=$1&method=flickr.photos.getSizes&format=json&nojsoncallback=1&api_key=9bb671af308f509d0c82146cbc936b3c","res":":\nlet res=[];\nlet sizeAr=JSON.parse($._).sizes.size;\nlet last=sizeAr.pop();\nif (last.media=='video') {\n\tlet best_quality=0;\n\tlet best_videoUrl='';\n\tdo {\n\t\tif (parseInt(last.height) > best_quality) {\n\t\t\tbest_quality=parseInt(last.height);\n\t\t\tbest_videoUrl=last.source;\n\t\t}\n\t\tlast=sizeAr.pop();\n\t} while (last.media=='video');\n\tres.push([best_videoUrl+'#mp4']);\n}\nelse {\n\tres.push([last.source]);\n}\nreturn res;\n","img":"^(?:(?:farm|c)\\d+\\.|live\\.)?static\\.?flickr\\.com/(?:\\d+/){1,2}(\\d+)_[\\da-f]+(?:_[sqtmn])?\\.jpg$","note":"Baton34V (fix)\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=140#9\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/domain/flickr.com/new\nhttps://www.flickr.com/photos/chris_rankin/\nhttps://www.flickr.com/search/?text=GREEN%20RIBBON\nhttps://www.flickr.com/photos/tags/sun"},"Flickr_albums":{"link":"^flickr\\.com/photos/(?:[^/]+/albums/(\\d+)$|(\\d+)/([a-f0-9]+)/(\\d+)(?:/([\\w@]+)/([\\w:]+))?/$)","url":": $[2] ? 'https://api.flickr.com/services/rest?extras=url_h%2Curl_k%2Curl_o%2Curl_3k%2Curl_4k%2Curl_5k%2Curl_6k%2Cpage=0&photoset_id='+$[2]+'&format=json&method=flickr.photosets.getPhotos&api_key='+$[3]+'&per_page='+$[4]+($[5] ? '&viewerNSID='+$[5]+'&csrf='+$[6] : '')+'&nojsoncallback=1' : $[0]","res":":\nif($[2]) {\n let res=[];\n let jsn=JSON.parse($._);\n for (img of jsn.photoset.photo) {\n res.push([img.url_6k || img.url_5k || img.url_4k || img.url_3k || img.url_o || img.url_k || img.url_h, img.title]);\n }\n return res;\n}\nlet api=$._.match(/root.YUI_config.flickr.api.site_key = \"([^\"]+)\";/)[1];\nconsole.log(api);\nlet length=$._.match(/<span class=\\\"photo-counts\\\">(\\d+) photos?<\\/span>/)[1];\nconsole.log(length);\nlet vnsid2=$._.match(/class=\"gn-title you\"\\s+href=\"\\/photos\\/([^\\/]+)\\/\"\\s/);\nlet vnsid=vnsid2 ? vnsid2[1] : null;\nlet csrf2=$._.match(/root.auth = {\"signedIn\":true,\"csrf\":\"([^\"]+)/);\nlet csrf=csrf2? csrf2[1] : null;\nreturn api&&{loop:'https://www.flickr.com/photos/' + $[1] + '/' + api + '/' + length +'/'+(csrf ? vnsid+'/'+csrf+'/' : \"\")};\n","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=340#17\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=340#11\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=340#3\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.flickr.com/photos/carolsgardenofphotos/albums\nhttps://www.flickr.com/photos/donthomaso84/albums"},"Flipkart-p":{"link":"^flipkart\\.com/.+?pid.+","res":":\nlet i = $._.search('<ul class=\"[^\"]+\" style=\"-webkit-transform');\nif(i<0) {return null; }\nlet t = $._.indexOf('</ul>', i);\nif(t<0) {return null; }\nlet res = [];\nlet re = /src=\"([^?]+)\\?q=\\d+\"/gi\nlet data=$._.substring(i,t);\nlet a = re.exec(data);\nwhile(a) {\n res.push([a[1].replace('128/128','2000/2000')]);\n a = re.exec(data);\n}\nreturn res;\n","img":"^(rukminim\\d\\.flixcart\\.com/[^/]+/)\\d+/\\d+([^?]+).*","to":"#$12000/2000$2\n$11024/1024$2","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1480#4\n\n!!!\nКурсор наводить на наименование товара.\n==\nHover the cursor over the product name.\n\nEXAMPLES\nhttps://www.flipkart.com/search?q=mobiles&as=on&as-show=on"},"FMkorea":{"link":"^fmkorea\\.com/(?:index.php\\?.+|(?:[^/]+/)?\\d+)","res":":\nreturn [...$._.matchAll(/<(?:source|img)[^>]+=\"([^\"]+fmkorea\\.com\\/(?:files\\/|getfile\\.php\\?code=)[^\"]+)/g)].map(i=>[i[1]])","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/15sx7lx/comment/jwp1lwo\n\nEXAMPLES\nhttps://www.fmkorea.com/starcraft\nhttps://www.fmkorea.com/index.php?mid=best&page=4\nhttps://www.fmkorea.com/index.php?mid=best&sort_index=pop&order_type=desc&document_srl=6081556548"},"FocalPrice":{"link":"focalprice\\.com/\\S+\\.html","res":":\nvar i = $._.indexOf('<ul id=\"thumbs_list_frame\">');\nif(i<0) { return null; }\nvar t = $._.indexOf('</ul>', i);\nif(t<0) { return null; }\nvar res = [];\nvar re = /a href=\"([^\"]+)\"/gi\nvar data=$._.substring(i,t);\nvar a = re.exec(data);\nwhile(a) {\n res.push([a[1]]);\n a = re.exec( data );\n}\nreturn res;","img":"^(img\\.focalprice\\.com/+)(?!860x666)\\d+x\\d+/","to":"$1860x666/","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3360\n\nПРИМЕРЫ\nhttps://www.focalprice.com/toys-hobbies-43\nhttps://www.focalprice.com/xiaomi-120"},"Foobar2000.ru":{"link":"^foobar2000\\.ru/forum/download/file\\.php\\?id=\\d+&filename=([^?]+\\.(?:jpe?g|a?png|gif|svgz?|webp|w?bmp|ico|xbm|pict|j(?:if|fif?)))&mode=view","ci":1,"note":"Baton34V\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=720#12\n\nПРИМЕРЫ\nhttp://foobar2000.ru/forum/viewtopic.php?p=24980#p24980"},"Forest-Home.ru":{"link":"^forest-home\\.ru/product/[\\w-]+/","res":":\nvar i = $._.indexOf('<figure class=\"product');\nif(i<0) {return null; }\nvar t = $._.indexOf('</figure>', i);\nif(t<0) {return null; }\nvar res = [];\nvar re = /<a class=\"product-image-\\d+\" href=\"([^\"]+)\"/gi\nvar data=$._.substring(i,t);\nvar a = re.exec(data);\nwhile(a) {\n res.push([a[1]]);\n a = re.exec(data);\n}\ni = $._.indexOf('<ul class=\"comments-branch reviews-branch\">');\nif(i<0) {return res; }\nt = $._.indexOf('</ul>', i);\nif(t<0) {return res; }\ndata=$._.substring(i,t);\nre = /src=\"([^\"]+)\"/gi\na = re.exec(data);\nwhile(a) {\n res.push([a[1]]);\n a = re.exec(data);\n}\nreturn res;\n","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3660#18\n\nПРИМЕР\nhttps://forest-home.ru/category/nozhi/\nhttps://forest-home.ru/category/monocylyari/"},"Forfun|Gifer-p":{"img":"(im-\\d\\d\\.forfun\\.com/|i\\.gifer\\.com/)(?:fetch/w\\d+-ch\\d+-preview|origin)(/\\w+/[^_]+?)(_w\\d+)?(\\.\\w+)","to":"$1origin$2$4","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=680#10\n\nПРИМЕРЫ / EXAMPLES\nhttps://forfun.com/ru/t/креативно\nhttps://forfun.com/ru/t/животные\nhttps://www.reddit.com/domain/gifer.com\nhttps://gifer.com/en/gifs/forest"},"FotoKto.ru":{"img":"^(s\\d+\\.fotokto\\.ru/(?:concurs/)?photo/)(?:large|preview)(/\\d+/\\d+\\.(?:jpe?g|png|gif))$","to":"$1full$2","note":"Rodny\n\nПРИМЕРЫ\nhttp://fotokto.ru/photo/new\nhttp://fotokto.ru/photo/concurs?id=107"},"Fotosklad.ru":{"link":"^fotosklad\\.ru/catalog/[\\w-]+\\.html","res":":\nlet i = $._.indexOf('<ul class=\"product-card__big\">');\nif(i<0) {return null; }\nlet t = $._.indexOf('</ul>', i);\nif(t<0) {return null; }\nlet res = [];\nlet re = /data-src=\"([^\"]+)\"/gi\nlet data=$._.substring(i,t);\nlet a = re.exec(data);\nwhile(a) {\n res.push([a[1]]);\n a = re.exec(data);\n}\nreturn res;\n","img":"^((?:cdn\\.)?fotosklad\\.ru\\/upload\\/iblock\\/\\w+\\/\\w+)_thumb_\\w+(\\.(?:jpe?g|png))$","ci":2,"to":"$1$2","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1460#17\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=1680#8\n\n\nПРИМЕРЫ\nhttps://www.fotosklad.ru/catalog/noutbuki/\nhttps://www.fotosklad.ru/search/?q=фотоаппараты"},"Fotozavr.ru":{"link":"fotozavr\\.ru/image/\\d+.html","res":"<li class=\"zoom\"><a href=\"([^\"]+)","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jnrcrmb\n\nПРИМЕРЫ\nhttp://fotozavr.ru/image/25302.html\nhttp://fotozavr.ru/image/25303.html"},"forum.IXBT":{"link":"^(forum\\.ixbt\\.com/post\\.cgi\\?id=attach[0-9:]+\\.(?:jpe?g|gif|png))$","note":"Rodny\n\nПРИМЕРЫ\nhttp://forum.ixbt.com/topic.cgi?id=47:11704:3819#3819"},"forumimage.ru":{"link":"^(forumimage\\.ru/show/)\\d+$","res":"<img src=\"(http://forumimage\\.ru/uploads/\\d+/\\d+.jpg)\"","img":"^(forumimage\\.ru/)thumbs(/\\d+/\\d+\\.jpg)$","to":"$1uploads$2","note":"Rodny\n\nПРИМЕРЫ\nhttps://www.reddit.com/domain/forumimage.ru/"},"Fotoload.ru":{"link":"^(fotoload.ru/foto(set)?/(\\d+)/)(\\?fotosets)?","url":": $[2]&&!$[4]?'https://fotoload.ru/?action=ajaxfunc&sa=get_fotoset_fotos&fotoset_id='+$[3]+'&offset=0&fid=0':$[1]","res":":\nif($[4])return [...$._.matchAll(/src=\"([^\"]+)\" class=\"img-responsive center-block\"/g)].map(i=>[['#'+i[1].replace(/\\d+x\\d+/,'1920x1080'),i[1].replace(/\\d+x\\d+/,'1024x768')],'Gallery Cover Image'])\nif($[2]){\nlet lo=$._.match(/\"bb_link_\\d+x\\d{3}\">[^<]+/)?.[0]||[]\nif(!lo.length)return {loop:'https://'+$[1]+'?fotosets'}\n$=$._.match(/bb_link_\">[^<]+/g)?.reverse()[0]||[]\n$=[...$.matchAll(/\\[img\\]([^\\[]+)/g)].reverse()\nlo=lo.length?[...lo.matchAll(/\\[img\\]([^\\[]+)/g)].reverse():[]\nreturn $.map((i,n)=>[['#'+i[1],lo[n]?.[1]||'']])\n}\n$=[...$._.matchAll(/<a\\s+download\\s+href=\"([^\"]+)\">\\d+x(\\d+)/g)]\nreturn [[['#'+$.pop()[1],$.filter(i=>i[2]<1080).reverse()[0]]]]","img":"^(fs3\\.fotoload\\.ru/f/\\d+/\\d+/)\\d+x\\d+/(\\w+\\.jpg)","to":"#$1# 1920x1080/#$2\n$11024x768/$2","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/18157fp/comment/kaaxr1y\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=2460#4\n\nПРИМЕРЫ\nhttps://fotoload.ru/user/4566/\nhttps://fotoload.ru/tags/51994/\nhttps://fotoload.ru/allfotos/?offset=60\nhttps://fotoload.ru/fotosets/695/\nhttps://fotoload.ru/fotoset/66758/"},"Foursquare":{"img":"^(i(?:gx|r?s\\d)\\.4sqi\\.net|playfoursquare\\.s3\\.amazonaws\\.com)(?:(/img/(?:general|user)/)(?!original/)[^/]+|(/userpix)_thumbs?/)","to":":\nreturn $[1] + ($[2] ? $[2] + 'original' : $[3] + '/');"},"frgimages-CDN":{"link":"((?=.*\\.jpg)frgimages\\.com/.*)","img":"((?=.*\\.jpg)frgimages\\.com/.*)","to":"$1","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jn8v5j7\n\nEXAMPLES\nhttps://ansel.frgimages.com/new-york-knicks/stephon-marbury-isiah-thomas-signed-espn-the-magazine-new-york-knicks-autograph_ss2_p-10908711+u-udpmxpek4t3ad0au6xx+v-fcdce519ec974cedab0e57bd3e1c6498.jpg?_hv=1&w=900\nhttps://fanatics.frgimages.com/productimages/_3661000/altimages/ff_3661809-e477075f96b81ee74a30alt1_full.jpg\nhttps://fanatics.frgimages.com/FFImage/thumb.aspx?i=/productimages/_3066000/altimages/ff_3066350alt1_full.jpg&w=325"},"fs|brb|cxz":{"img":"^((?:s\\d+|img)\\.dotua\\.org/fsua_items/[^/]+/(?:\\d\\d/){3})(?!1/)\\d(/\\d+)","to":"$11$2"},"FunnyJunk-p":{"link":"^funnyjunk\\.com/(?:(?:channel/[^/]+/)?[A-za-z0-9+]+/[A-Za-z-]+/(?:\\d+/?)?|\\w+/\\d+/[\\w+]+)","res":":\nreturn [...$._.matchAll(/(?:img style=\"width: 100%;[^=]+src|\"video\\/mp4\" data-original|data-cachedvideosrc)=\"([^\"]+)/g)].map(i=>[i[1],($._.match(/\"innerContentDescription\"><h2>([^<]+)/)||[,''])[1]])\n","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jv5cpmr\n\nEXAMPLES\nhttps://funnyjunk.com/channel/wholesome\nhttps://funnyjunk.com/Aight+you+aint+so+bad/fvnbRsi/\nhttps://www.reddit.com/domain/funnyjunk.com/new"},"Furaffinity-p":{"link":"^furaffinity\\.net/view/(\\d+)/$","url":"//www.furaffinity.net/full/$1/","res":"data-fullview-src=\"([^\"]+)\n<title>([^<]+?) --","img":"^t\\.facdn\\.net/(\\d+)@.+","note":"EXAMPLES\nhttps://www.furaffinity.net/search/?q=green\nhttps://www.furaffinity.net/search/?q=NIN\nhttps://www.furaffinity.net/favorites/wittnv/"},"FurryNetwork":{"link":"^((?:beta\\.)?furrynetwork\\.com/)((?:artwork|photo|multimedia)/\\d+).*","url":"$1api/$2","res":":\n$._=JSON.parse($._)\nreturn [[$._.record_type[0]=='m' ? $._.url : ['#'+$._.images.original, $._.images.large], $._.title + ' by ' + $._.character.display_name]]","img":"^((?:d3gz42uwgl1r1y\\.cloudfront\\.net|furrynetwork(?:-beta)?\\.s3\\.amazonaws\\.com)/(\\w\\w)/\\2\\w+/submission/20\\d\\d/[01]\\d/[\\da-f]{32})/\\d+x\\d+.*","to":"$1#/2500x1500.jpg .gif .webm .mp4 .mp3#","note":"EXAMPLES\nhttps://furrynetwork.com/artwork/popular/?time=lastWeek\nhttps://furrynetwork.com/photos/popular/?time=lastWeek\nhttps://furrynetwork.com/multimedia/popular/?time=lastWeek"},"Gab-b":{"img":"^(ipr\\.gab.ai/[\\da-f]{40}/[\\da-f]+|gab\\.com/media/image/bz-[\\da-f]{13})","to":"$&","note":"https://www.reddit.com/r/imagus/comments/byakji/comment/ers4f6f\n\nВидео пока не поддерживается / Video currently is not supported:\nhttps://gab.com/timeline/videos\n\nПРИМЕРЫ / EXAMPLES\nhttps://gab.com/groups/976"},"Gamma_Entertainment-x-p":{"link":"^([^/]+)/en/video/[^/]+/(?:[^/]+/)?(\\d+)","res":":\nconst max_resolution = 2160;\n\nconst m = /applicationID\":\"([^\"]+)\",\"apiKey\":\"([^\"]+)/g.exec($._);\nif (!m) return;\nconst [appId, apiKey] = [m[1], m[2]];\nconst sceneId = $[2];\n\nconst xml = new XMLHttpRequest();\nconst url = `https://tsmkfa364q-dsn.algolia.net/1/indexes/*/queries?x-algolia-agent=Algolia%20for%20vanilla%20JavaScript%203.27.1%3BJS%20Helper%202.26.0&x-algolia-application-id=${appId}&x-algolia-api-key=${apiKey}`\nxml.open('POST', url, false);\nxml.send(\n `{\"requests\": [{\"indexName\": \"all_scenes\", \"params\": \"facetFilters=[[\\\\\"clip_id:${sceneId}\\\\\"]]\"}]}`\n);\nif (xml.status !== 200) return;\n\nlet streams = {};\ntry { streams = JSON.parse(xml.responseText)?.results?.[0]?.hits?.[0]?.trailers;} catch (e) { return; }\n\nconst trailers = Object.keys(streams)\n .map(s => ({ res: parseInt(s.replace(\"4k\", '2160'), 10), url: streams[s] }))\n .filter(a => a.res <= max_resolution)\n .sort((a, b) => a.res - b.res);\n\nif (!trailers.length) return;\nreturn trailers[trailers.length-1].url;","img":".*gammacdn\\.com.+","note":"gpl2731\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1120#19\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3620#12\n\n!!!\nДля работы фильтра требуется правило для SMH (см.ЧаВО, п.12).\n==\nFor the sieve to work, a rule for SMH is required (see FAQ, p.12).\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.darkx.com/en/videos\nhttps://www.evilangel.com/en/videos\nhttps://www.girlsway.com/en/videos\nhttps://www.hardx.com/en/videos\nhttps://www.puretaboo.com/en/videos\nhttps://www.roccosiffredi.com/en/videos"},"Gallery.ru":{"link":"^(gallery\\.ru/watch\\?a=\\S+)$","res":":\nvar i = $._.indexOf('<div id=\"mygallery\"');\nif(i<0) { return null; }\nvar t = $._.indexOf('</div>', i);\nif(t<0) { return null; }\nvar res = [];\nvar re = /<img src=\"(https?:\\/\\/data\\d+\\.gallery\\.ru\\/albums\\/gallery\\/\\w+-\\w+-\\w+-)\\d+(?:-\\w+)?\\.jpg\"/gi\nvar dat=$._.substring(i,t);\nvar a = re.exec(dat);\nwhile(a) {\n res.push([a[1] + '.jpg']);\n a = re.exec(dat);\n}\nreturn res;\n","img":"^(data\\d+\\.(?:i\\.)?gallery\\.ru/albums/gallery/\\d+-[\\da-f]+-\\d+-)[^.-]+","to":"#$1\n$11024","note":"Baton34V\n\nПРИМЕРЫ\nhttp://gallery.ru/?panel=list&user_type=3\nhttp://gallery.ru/watch?a=tvS-bkiV"},"GameFAQs":{"img":"^gamefaqs\\.gamespot\\.com/a/(?:screen/thumb/\\d/\\d/\\d/\\d+|box/\\d/\\d/\\d/\\d+_thumb)","to":":\nif ($[0].match(/\\/box\\//))\n return $[0].replace(\"thumb\", \"front\");\nelse if ($[0].match(/\\/screen\\/thumb\\//))\n return $[0].replace(\"thumb\", \"full\");","note":"borderpeeved\nhttps://www.reddit.com/r/imagus/comments/xdzxo9/comment/ioko84w\n\nПоддержки видео нет / There is no video support:\nhttps://gamefaqs.gamespot.com/ps5/292803-stray/videos\n\nEXAMPLES\nhttps://gamefaqs.gamespot.com/ps4/366186-mothmen-1966/images\nhttps://gamefaqs.gamespot.com/ps5/292803-stray/images"},"Gamekult":{"img":"^(cdn\\.gamekult\\.com/optim/images/.+?)__[^.]+","to":"$1","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jtd4cv9\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3720#11\n\nПРИМЕРЫ / EXAMPLES\nhttp://www.gamekult.com/actu/zoom-portal-2-A0000089965.html\nhttp://www.gamekult.com/actu/neverdead-en-douze-images-A0000098884.html"},"Gameru":{"link":"^gameru.net/post/\\d+","res":":\nreturn [...$._.matchAll(/<img src=\"([^\"]+)\" class=\"linked-image\"/g)].map(i=>[i[1].replace('thumb','image/direct')])","img":"^images\\.gameru\\.net/(?:image|thumb)/(\\w+\\.\\w+).*","to":"images.gameru.net/image/direct/$1","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jxydqur\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3200#13\n\nПРИМЕРЫ\n(постер проги)\nhttps://www.gameru.net/post/55915\nhttps://www.gameru.net/feed/type=news&tag=screenshot\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=49250&start=20#1\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1360#11"},"GameSpot_video":{"link":"^gamespot\\.com/videos/","res":"\"contentUrl\": \"([^\"]+?)\"","note":"borderpeeved\nhttps://www.reddit.com/r/imagus/comments/xdzxo9/comment/ioko84w\n\nEXAMPLES\nhttps://www.gamespot.com/videos/"},"Gazeta.pl":{"img":"^(bis?\\.(?:gazeta|im-g)\\.pl/im/(\\w{1,5}/){2,}?z\\d{4,})[^.]*(?=\\.)","to":"#$1O\n$1IH","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jr9iz3u\n\nEXAMPLES\nhttps://wiadomosci.gazeta.pl/wiadomosci/0,168571.html\nhttps://wiadomosci.gazeta.pl/prawo-i-sprawiedliwosc\nhttps://next.gazeta.pl/next/0,0.html"},"Gelbooru|Hypnohub-x-p":{"link":"^(?:gelbooru\\.com|hypnohub\\.net)/index\\.php\\?page=post&s=view&id=\\d+","res":"(?:=\"og:|itemprop=\")image\" content=\"([^\"]+)\n=\"keywords\" content=\"([^\"]+)","img":"^(?:s?(?:img|thumb)\\d?\\.|assets\\.)?(gelbooru\\.com/+)(?:sample|thumb(?:nail)?)s/(\\w\\w/\\w\\w)/(?:thumbnail|sample)_([\\da-f]+).*","to":"#img2.$1/images/$2/$3.#webm jpg png gif jpeg#\nimg2.$1/samples/$2/sample_$3.#jpg png gif jpeg#","note":"imqswt\nhttps://www.reddit.com/r/imagus/comments/18d5xog/comment/kchcmvi\n\nПРИМЕРЫ / EXAMPLES\nhttps://hypnohub.net/index.php?page=post&s=list&tags=all\nhttps://hypnohub.net/index.php?page=post&s=list&tags=video+&pid=210\nhttps://gelbooru.com/index.php?page=post&s=list&tags=sky+\nhttps://gelbooru.com/index.php?page=post&s=list&tags=fruit"},"Geograph.org.uk":{"img":"^(?:(s\\d\\.geograph\\.org\\.uk/[/\\w]+)_\\d{2,4}x\\d{2,4}|s\\d\\.geograph\\.org\\.uk/.+)","to":":\nreturn $[1]?$[1]+'#_original #':$[0].replace(/(\\.[a-z]+)$/,'#_original #$1')","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/k23sosn\nOLD\nhttps://www.reddit.com/r/imagus/comments/2xcrlg/sieve_for_geographorguk\n\nEXAMPLE\nhttps://www.geograph.org.uk/finder/recent.php\nhttps://www.geograph.org.uk/browser/#!/taken=,1999-12-31/decade+%22190tt%22/sort=submitted_down\nhttps://www.geograph.org.uk/browser/#!/taken=,1999-12-31/decade+%22195tt%22/country+%22Scotland%22/sort=submitted_down/sample=takenmonth/page=2"},"GetaPic.me":{"link":"getapic\\.me/\\w+/\\w+","res":"<li><span>Ссылка на картику:</span><br>\\s+<input onclick=\"select_field\\(this\\);\" value=\"([^\"]+)\"","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2980#21\n\nПРИМЕРЫ / EXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=40#15\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3100#9"},"GetCloudApp|cl.ly-b":{"link":"^cl\\.ly/image/([^/]+).*","res":"=\"og:image\" content=\"([^\"]+)\n<title>([^<]+)","img":"^thumbs\\.(?:cl\\.ly|getcloudapp\\.com)/(?:image/)?(\\w+)","to":"http://cl.ly/image/$1/$1.jpg","note":"EXAMPLES\nhttps://www.reddit.com/domain/cl.ly/new\nhttps://www.reddit.com/domain/getcloudapp.com/new"},"GettyImages":{"link":"^(gettyimages\\.com)(?:\\.au)?/detail/[^/]+/[^/]+/(\\d+).*","res":":\n$=JSON.parse($._.match(/data-component='AssetDetail'>[^{]+([^\\n]+)/)[1]).asset\nreturn $.filmCompUrl||[[['#'+$.highResCompUrl,$.defaultMainImageURL]]]","img":"^(?:media\\.(gettyimages\\.com)/[^/]+|cache\\d+\\.asset-cache\\.net/xr)/(?:[^?]+?-id)?([\\d+-]+).*","to":"//media.$1/photos/-id$2#?s=2048x2048&w=5 #","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/196ypny/comment/khyg817\nOLD\nhttps://www.reddit.com/r/imagus/comments/12ghqmg/to_whoever_updates_the_sieves_please_add_this_to/\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.gettyimages.com/search/2/image?family=creative&phrase=ORANGE\nhttps://www.gettyimages.com/photos/family?assettype=image&license=rf&alloweduse=availableforalluses&family=creative&phrase=family&sort=best\nhttps://www.gettyimages.com/videos/adventure?assettype=film&family=creative&phrase=adventure&sort=best&license=rf,rr"},"gif-animated.ru|gif-pictures.ru":{"link":"(gif-(?:pictures|animated)\\.ru/)\\?v=(.*)","img":"(gif-(?:pictures|animated)\\.ru/)\\?v=(.*)","to":"$1images/$2","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jnrcrmb\n\nПРИМЕРЫ\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1360#11"},"Gifbin":{"link":"^(gifbin\\.com/)(?:[ft]/|(reverse/))?(\\d+)$","url":"$1$2$3","res":":\nvar t,u=$._.match(/src=\"https?:\\/\\/(www\\.)?gifbin\\.com\\/bin\\/[^\"]+/g)\nif(!u)return 0\nt=$._.match(/=\"og:title\"\\s+content=\"([^\"]+)/);\nreturn [[u.slice(0,3).map(function(u){ return u.slice(5) }), t&&t[1]]]","img":"^(gifbin\\.com/bin/(?:\\d+/)?)tn_([^?]+\\.).*","to":"http://www.$1$2#webm mp4 gif#","note":"Randlai\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1433#1\n\nEXAMPLES\nhttps://gifbin.com/tag/cartoons/\nhttps://www.reddit.com/domain/gifbin.com/new/"},"Gifly-b":{"link":"^(gifly\\.com/)(\\w)(\\w)(\\w)(\\w)/*[^/]*$","img":"^(?:i\\.)?(gifly\\.com/+)media_gifly/(\\w)/(\\w)/(\\w)/(\\w)/b/.*","to":"$1media_gifly/$2/$3/$4/$5/b/$2$3$4$5.#mp4 gif#","note":"!!!\nПроблема с проверкой безопасности (из-за нее - красный индикатор).\n==\nThere is a problem with the security check (because of it - the red spinner).\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/domain/gifly.com/new/\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1360#10"},"Gifs-p":{"link":"^(gif(?:s|y(?:t|outube))\\.com/)(?:gif|embed|player)/(?:[^-]*-)*(\\w+)","img":"^(?:share|j)\\.(gif(?:s|y(?:t|outube))\\.com/)(\\w+).*","to":"//j.gifs.com/$2.#webm mp4 gif#","note":"ПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/domain/gifs.com/new"},"Gifyu":{"link":"gifyu\\.com/image/\\w{4}","res":"<meta property=\"og:image\" content=\"([^\"]+)\"","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2600#6\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/domain/gifyu.com/new/\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50519&start=900#21"},"Giphy":{"useimg":1,"link":"^(g(?:iphy\\.com/(?:gifs|embed)|ph\\.is(?:/g)?)/)([\\w-]+).*","url":"$1$2","res":":\n$=/gif:\\s*(\\{[^\\n]+\\})/.exec($._)\n$=$&&JSON.parse($[1])\nreturn $ && [[[$.images.original.mp4, $.images.original.url], $.alt_tag]]","img":"^media\\d?\\.((giphy)\\.com/)media/(\\w+)/.*","to":"media.$1media/$3/$2.#mp4 gif#","note":"ПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/domain/giphy.com/new"},"GITHUB":{"link":"^(git(?:hu|la)b\\.com/[^/]+/[^/]+/)blob(/.+\\.(?:jpe?g|a?png|gif|svgz?|web[pm]|bmp|og[gv]))$","ci":1,"img":"^(avatars\\d?\\.githubusercontent\\.com/u/\\d+).*","to":":\nvar v=$[2]?'':$[0].slice($[1].length); v=v&&v.match(/[?&](v=\\d+)/)||'';\nreturn $[1] + ($[2]?'raw'+$[2]:v&&('?'+v[1]))"},"GloryholeSwallow-x":{"link":"gloryholeswallow\\.com/tour/trailers/.*","res":":\nconst m = /video playsinline src=\"([^\"]+)/.exec($._)\nif (m) return m[1];\nreturn \"//i.imgur.com/ejZcAGv.png\";","note":"gpl2731\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1163&limit=1&m=1#1\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3616#1\n\nEXAMPLES\nhttps://gloryholeswallow.com/tour/\nhttps://gloryholeswallow.com/tour/updates/page_4.html"},"Gmail":{"link":"^(mail\\.google\\.com/.*\\?)ui=2&ik=(.*)&view=att&th=(.*)&attid=0\\.1&disp=inline&zw","to":"$1attid=0.1&disp=emb&view=att&th=$3","note":"Rodny\n\n!!!\nGmail attached images. Different mail servers on Google Apps platform are also supported."},"Gofile.io-p":{"img":"^javascript:void\\(0\\)$","to":":\nif(location.hostname!=='gofile.io')return ''\n$=this.node.parentNode?.parentNode?.nextSibling?.nextSibling?.nextSibling\n$=$?.children[1].textContent==='Play'?$?.lastChild?.querySelector('a[href]')?.href:''\nreturn $+(/m[ok]v$/.test($)?'#mp4':'')","note":"imqswt\nhttps://www.reddit.com/r/imagus/comments/19ahx46/comment/kiqda5c\n\nEXAMPLES\nhttps://gofile.io/d/mRUxMG\nhttps://www.reddit.com/domain/gofile.io/new/\nhttps://www.reddit.com/r/imagus/comments/19ahx46/comment/kikzcz0"},"GOG":{"link":"^gog\\.com/\\w\\w/game/\\w+$","res":":\nlet i = $._.indexOf('<div class=\"js-items-wrapper mobile-slider__items-wrapper\">');\nif(i<0) { return null; }\nlet t = $._.indexOf('</picture></div></div></div>', i);\nif(t<0) { return null; }\nlet res = [];\nlet re = /src=\"([^_]+)_[^.]+(\\.\\w+)\"/gi\nlet data=$._.substring(i,t);\nlet a = re.exec(data);\nwhile(a) {\n res.push([a[1]+a[2]]);\n a = re.exec(data);\n}\nreturn res;","img":"(images\\.gog-statics\\.com\\/\\w+)_product_card_v\\d_thumbnail_\\d+(\\.jpg)","to":"$1$2","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=580#21\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2040#5\n\n!!!\nКурсор наводить на белое поле ниже названия игры. Иногда требуется повторное наведение курсора.\n\nПРИМЕРЫ\nhttps://www.gog.com/games?page=1&sort=popularity&category=action\nhttps://www.gog.com/ru/games/strategy"},"goo.gl":{"link":"^(image|photo)s\\.app\\.goo\\.gl/\\w+","res":":\nconst caption = $._.match(/<img.+?alt=\"(.*?)\"/)?.[1] || $._.match(/<title>(.+?)<\\/title>/)?.[1] || '';\nconst urls = [...$._.matchAll(/<img class=.+?(http?[^=]+)[^<]+?<div/g)];\n\nif (urls.length > 0) return urls.map(x => [x[1] + '=s0', caption]);\n\nreturn [$._.match(/AF_dataServiceRequests.=.+?http.+?,\"(http.+?)\"/)[1], caption];","note":"64h\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1040#14\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3900#10\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/r/imagus/comments/14fyk2l/comment/jpahc0i\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3900#7\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1000#21"},"Goodreads":{"img":"^(i(?:mages)?\\.gr-assets\\.com/(?:images/(?:[^/]+/){1,3})?(?:author|book|user)s/\\d+)[^/]+(/\\d+)[^?]*\\.","to":"$1i$2.","note":"EXAMPLES\nhttps://www.goodreads.com/genres/thriller\nhttps://www.goodreads.com/genres/history"},"GOOGLE_Drive":{"link":"^(?:docs|drive)\\.google\\.com/(?:(?:file|presentation|document|spreadsheets|drawings)/(?:u/\\d/)?d/|uc\\?.*id=)([\\w-]{33}|[\\w-]{44})(/|&|$).*","ci":1,"url":"https://drive.google.com/file/d/$1/view","res":":\nlet [type, ext] = JSON.parse($._.match(/_docs_flag_initialData=({.+?});/)[1])['docs-dm'].split('/');\n\nif (type === 'video') {\n return { loop: `https://drive.google.com/get_video_info?docid=${$[1]}` };\n}\n\nif (type === 'image' || type === 'audio') {\n return `https://drive.google.com/uc?id=${$[1]}&export=download#` + (type == 'audio' ? 'mp3' : ext);\n} else {\n const title = $._.match(/<title>(.+)<\\/title>/)?.[1] || '';\n let eUrl = $._.match(/<meta itemprop=\"embedURL\" content=\"(.+?)\"/)?.[1];\n if (!eUrl) {\n if (ext == 'x-zip-compressed' || ext == 'octet-stream' || ext?.startsWith('vnd.google-apps.')) {\n eUrl = `https://drive.google.com/file/d/${$[1]}/preview`;\n } else {\n eUrl = `https://drive.google.com/uc?id=${$[1]}`;\n }\n }\n\n this.TRG.IMGS_ext_data = [['', `<imagus-extension type=\"iframe\" url=\"${eUrl}\"></imagus-extension>${title}`]];\n return { loop: 'imagus://extension' };\n}","note":"hababr\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=2421&limit=1&m=1#1\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3240#14\n\n\n!!!\nДанный фильтр способен отобрыжать все медиаформаты (изображения, видео, аудио) + ZIP, DOCX, PDF.\n==\nThis sieve is capable of displaying all media formats (images, video, audio) + ZIP, DOCX, PDF.\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/domain/drive.google.com/new/\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=2400#21\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3240#16"},"GOOGLE_Drive_video":{"link":"^drive\\.google\\.com/get_video_info\\?docid=[\\w-]+","res":":\nconst data = $._.split('&').map(p => p.split('='));\nlet title = decodeURIComponent(data.find(p => p[0] === 'title')[1]);\nlet url = decodeURIComponent(data.find(p => p[0] === 'fmt_stream_map')[1]);\nurl = url.split(',').pop().split('|')[1];\n\nreturn url + '#mp4';\n\nthis.TRG.IMGS_ext_data = [['', `<imagus-extension type=\"videojs\" url=\"${url}\"></imagus-extension>${title}`]];\nreturn { loop: 'imagus://extension' };\n","note":"hababr\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=2400#21\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3240#14\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/domain/drive.google.com/new/\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=2400#21"},"GOOGLE_Images_legacy":{"img":"^images-partners-tbn\\.google\\.com/images\\?q=tbn:[^:]+:+(.+)","dc":2,"to":"$1","note":"64h\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1020#2\n\nПРИМЕРЫ / EXAMPLES\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1020#2\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1000#19"},"GOOGLE_noglogo":{"img":"^google\\.[\\.a-z]+/images/nav_logo\\d+(_hr)?\\.png$","to":":\nreturn window.location.host.indexOf('.google.')>0?'':$[0]","note":"Deathamns + Rodny (fix)\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/r/imagus/comments/3v57ez/disable_imagus_for_a_specific_image/"},"GOOGLE_URL":{"link":"^google\\.(?:com|(?:com?\\.)?[a-z]{2})/url\\?(?:[^&]+&)*?q=(http[^&]+\\.(?:jpe?g|gifv?|a?png|bmp|web[pm]|mp[34]]))(?:$|&).*","dc":1,"to":"$1"},"GoogleContent|YouTube_Gallery":{"link":"^(?:(youtube\\.com/(?:post/[\\w-]+|channel/UC[\\w-]{22}/community\\?lb=.+))|ytgallery/album.*)$","url":": $[1]?$[1]:'data:'+$[0]","res":":\nif(!$._.length)$._=document.body.outerHTML\ntry{\n$=JSON.parse($._.match(/\":({\"images?\":.+?})},\"/)[1])\nreturn $.images?$.images.map(i=>[i.backstageImageRenderer.image.thumbnails[0].url.match(/^[^=]+=/)+'s0']):$.image.thumbnails[0].url.match(/^[^=]+=/)+'s0'\n}catch(e){\nconsole.log('YouTube Gallery Error: '+e)\nreturn this.node.src?this.node.src.match(/^[^=]+/)+'=s0':''\n}","img":"^((?:(?:(?:lh|gp|yt)\\d+|blogger)\\.g(?:oogleuserconten|gph)|\\d\\.bp\\.blogspo)t\\.com/)(?:([_-](?:[\\w\\-]{11}/){3}[\\w\\-]{11,}/)([^/]+)(/[^?#=]+)?|([^=]+)).*","loop":2,"to":":\nvar c=$[3]&&$[3].match(/-?(?:Ic\\d\\d|mo)/); c=c&&('-'+c[0])||'';\nreturn /youtube\\.com$/.test(location.hostname)&&this.node.closest('ytd-post-multi-image-renderer')?(this.node.closest('ytd-post-multi-image-renderer')?.querySelector('a[href^=\"/post/\"]')?.href??'ytgallery/album'+$[1]):'#' + $[1] + ($[5] ? $[5] + '=' : $[2]) + (c?'s1600'+c:'s0') + ($[4]||($[5]?'':'/')) + '\\n' + $[1] + ($[5] ? $[5] + '=' : $[2]) + 's1024' + c + ($[4]||($[5]?'':'/'))","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/17jpyda/comment/k72q2iu\nOLD\nhttps://www.reddit.com/r/imagus/comments/14fyk2l/comment/k18id5d\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3360#19\n\n\nEXAMPLES\n(albums)\nhttps://www.youtube.com/post/UgkxwyUqrYgCJmFtsnZc-bua9w6Fgl1bikP-\nhttps://www.youtube.com/channel/UChqUTb7kYRX8-EiaN3XFrSQ/community?lb=Ugkx6t8bAsb2HO2a6XBhnjkYrj4DY4ajUfnw\n(GIF)\nhttps://www.reddit.com/r/imagus/comments/14fyk2l/comment/k0yktt9\n+\n(blogspot.com)\nhttps://vickiboucher.blogspot.com/2023/10/colour-inkspiration-challenge-c154.html"},"Grailed":{"link":"^grailed\\.com/listings/","res":":\nlet m = JSON.parse(($._.match(/application\\/json\">({.+?})<\\//)||[,'{}'])[1]).props?.pageProps.listing.photos.map(i => [i.url])\nif(!m)m = [...$._.matchAll(/PhotoGallery_thumbnails__[^\"]+\" src=\"([^\"]+)/g)].map(i=>[i[1].replace(/(process\\.fs\\.grailed\\.com\\/).+?\\/compress/,'$1')])\nreturn m\n","img":"^(process\\.fs\\.grailed\\.com/).+?/compress/","to":"$1","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/14siym7/comment/jr2n21s\nOLD\nhttps://www.reddit.com/r/imagus/comments/kukuay/does_anybody_have_a_sieve_for_grailedcom/\n\nEXAMPLES\nhttps://www.grailed.com/designers/streetwear\nhttps://www.grailed.com/designers/enfin-leve\nhttps://www.grailed.com/categories/shorts\nhttps://www.grailed.com/shop/PcQyi3iYyA"},"Gravatar":{"img":"^(?:(?:\\d|s(?:ecure)?)\\.)?(gravatar\\.com/)(?:(avatar)(?:\\.php\\?gravatar_id=|/?)|(userimage/\\d+)/)([^?&]*(?:\\.jpg)?)(?:[?&]?(?:[^&]+&)*?s(?:ize)?=(\\d+).*)?.*","to":":\nvar x = /[&?](d(?:efault)?=[^&]+)/.exec($[0]), y = /[&?](r(?:ating)?=[^&]+)/.exec($[0]);\nreturn $[1]+($[2]||$[3])+'/'+$[4]+'?s='+($[3]?1e3:512)+(x?'&'+x[1]:'')+(y?'&'+y[1]:'')"},"GSMarena":{"link":"^(gsmarena.com/)(newsdetail|([\\w+)(]+)(-review|-pictures|-news)?(-\\d+(?:p\\d+)?))(\\.php3?.*)","ci":1,"url":": $[4] || !$[5] ? $[0] : $[1] + $[3] + '-pictures' + $[5] + $[6]","res":":\nvar res = [];\nconst page = (new window.DOMParser()).parseFromString($._,'text/html');\nconst imgs = Array.from(page.querySelectorAll('#pictures-list img, #review-body img'));\nfor (const img of imgs) {\n const src = (img.dataset.src || img.src)?.replace(/\\/-\\w+\\//, '/');\n if (/jpe?g$/.test(src)) res.push([src]);\n}\n\nreturn res;","img":"^((?:[cf]dn|st\\d*)(\\.gsmarena\\.com/))(?:(?:pics?|(?:pics?/)?vv)/blogpics/[^/]+/i?cs-(\\d\\d)-(\\d\\d)-([^_]+)-|((?:vv|pics?)/+(?:[^/]+/)+?)thumb/|(imgroot/(?:[^/]+/+)+)-\\d*x?\\d+\\w*/(?=[^/]+))","to":":\nreturn $[3]?'st'+$[2]+'pics/'+$[3]+'/'+$[4]+'/'+$[5]+'/': $[1] + ($[6] || $[7]) + '# -1024x768m/#'","note":"hababr\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=2000#9\n\nEXAMPLES\nhttps://www.gsmarena.com/xiaomi-phones-80.php\nhttps://www.gsmarena.com/oneplus_nord_2t-pictures-11517.php"},"Gyazo":{"link":"^(gyazo\\.com/)([\\da-f]{32}).*","img":"^(i\\.)?(gyazo\\.com/)thumb/([\\da-f]{32}).*","to":"i.$1$2.#png jpg gif#","note":"EXAMPLES\nhttps://www.reddit.com/domain/gyazo.com/"},"Happy-Team_himagem":{"link":"happy-team\\.org/himagem/\\?pm=(\\w+)","img":"happy-team\\.org/himagem/\\?pm=(\\w+)","to":"happy-team.org/himagem/image.php?di=$1","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jn8v5j7\n\n!!!\nНеобходимо правило для SMH (см.ЧаВо, п.12).\n==\nNeed a rule for SMH (see FAQ, p.12).\n\n\nEXAMPLES\nhttps://happy-team.org/himagem/?pm=9TK3\nhttps://happy-team.org/himagem/?pm=EA47\nhttps://happy-team.org/himagem/?pm=A0RZ"},"Hardwareluxx.ru":{"link":"^hardwareluxx\\.[a-z]+/index\\.php/artikel/.+","res":":\nlet o=JSON.parse($._.match(/console.log\\((.+?)\\)</)?.[1]||'{}')\nreturn o?.length?o.map(i=>[i.local_url_org]):[...$._.matchAll(/<a href=\"([^\"]+)\" data-caption=/g)].map(i=>[i[1]])","img":"^(hardwareluxx\\.[a-z]{2}/images/.+_)100px","to":"$11920px","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/kd6jo2n\n\n\nПРИМЕРЫ\nhttps://www.hardwareluxx.ru/index.php/artikel.html\nhttps://www.hardwareluxx.ru/index.php/artikel/hardware/mainboards/44996-asus-rog-strix-x470-f-gaming-test.html\nhttps://www.hardwareluxx.ru/index.php/artikel/hardware/notebooks/53375-test-i-obzor-asus-zenbook-s-13-oled-um5302t-ultrabuk-ryzen-po-privlekatelnoj-tsene.html\nhttps://www.hardwareluxx.ru/index.php/artikel/hardware/eingabegeraete/47365-test-i-obzor-mysh-sharkoon-skiller-sgm2-i-kovrik-1337-rgb-igrovoj-komplekt-po-vygodnoj-tsene.html"},"Head-Fi":{"link":"^head-fi\\.org/media/albums/[^.]+\\.\\d+","res":":\nreturn [...$._.matchAll(/-image' src='([^']+)/g)].map(i=>[i[1].replace(\"_thumb\",\"\")])","img":"^head-fi\\.org/media/[^.]+\\.\\d+","to":":\nconsole.log($,this.node)\nreturn this.node.src.replace(\"_thumb\",\"\")","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/joowxsu\nOLD\nhttps://www.reddit.com/r/imagus/comments/44oxs0/sieve_for_headfiorg\n\nEXAMPLES\nhttps://www.head-fi.org/media/\nhttps://www.head-fi.org/media/albums/page-4"},"Hearst(Cosmo|Delish|DigitalSpy|Elle|Esquire|Harper":{"img":"^hips\\.hearstapps\\.com/([^\\.]+\\.h-cdn\\.co|hmg-prod|digitalspyuk|vader-prod|vidthumb)[^/]*(/[^\\?]+).*","to":":\nif ($[1].includes('h-cdn.co')) $[1] = '//' + $[1];\nif ($[1] == 'hmg-prod') $[1] = '//hmg-prod.s3.amazonaws.com';\nif ($[1] == 'digitalspyuk') $[1] = '//digitalspyuk.cdnds.net';\nif ($[1] == 'vader-prod') $[1] = '//vader-prod.s3.amazonaws.com';\nif ($[1] == 'vidthumb') $[1] = 'http://hearst-gopher.thumbs.s3.amazonaws.com'; // hearst-gopher has a bad https certificate as of 2022-09-21\n\nreturn $[1] + $[2].replace(/\\/\\d+x\\d+\\//, '/');","note":"64h\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1160#3\n\n!!!\ncosmopolitan.com\ncountryliving.com\ndelish.com\ndigitalspy.com\nelle.com\nesquire.com\nharpersbazaar.com\nmenshealth.com\n\nEXAMPLES\nhttps://www.delish.com/restaurants/a58436/who-is-guy-fieri/\nhttps://www.countryliving.com/home-design/house-tours/g3456/small-oklahoma-house/\nhttps://www.harpersbazaar.com/fashion/trends/a41247745/spring-2023-fashion-trends/\nhttps://www.elle.com/culture/celebrities/a41296977/shakira-elle-digital-cover-october-2022/\nhttps://www.cosmopolitan.com/style-beauty/fashion/news/g5852/early-2000s-celeb-trends/\nhttps://www.digitalspy.com/tv/ustv/a41261585/upload-season-3-jeanine-mason/\nhttps://www.esquire.com/style/grooming/g34964318/best-mens-skincare-gift-sets/\nhttps://www.menshealth.com/entertainment/a37755218/the-sandman-netflix-trailer-cast-release-date-news/"},"Hentai0-x":{"link":"^hentai0\\.com/movie/.+-\\d+$","res":":\nlet videoSource = /:video_source=\"([^\"]+)/gm.exec($._)[1];\nfunction htmlDecode(input) {\n var doc = new DOMParser().parseFromString(input, \"text/html\");\n return doc.documentElement.textContent;\n}\nlet finalUrls = [];\nlet urls = JSON.parse(htmlDecode(videoSource));\nfor(let el of urls){\n finalUrls.push([el, /(\\d+p\\.mp4)/gm.exec(el)[1]]);\n}\nreturn finalUrls.reverse();","note":"Randlai\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1431#1\n\n!!!\nНекоторые видео не грузятся, т.к. нужен премиум аккаунт.\n==\nSome videos are not loaded, because you need a premium account.\n\nПРИМЕРЫ / EXAMPLES\nhttps://hentai0.com/popular\nhttps://hentai0.com/tag/elf-16\nhttps://hentai0.com/search?keyword=MAID"},"Hentai-Foundry-x-p":{"link":"^(hentai-foundry\\.com/)pic(?:tures/user/[^/]+/|-)(\\d+)[./](?:html|[^#/]+.*)","url":"$1pic-$2.html?enterAgree=1","res":"(//pictures\\.$1(?:[^/]+/)+?$2[^\"]+)\\S+(?: (?:\\S+ ){0,3}?alt=\"([^\"]+))?","img":"^thumbs\\.(hentai-foundry\\.com/)thumb\\.php\\?pid=(\\d+).*","note":"ПРИМЕРЫ / EXAMPLES\nhttps://www.hentai-foundry.com/pictures/recent/2023-01-24\nhttps://www.hentai-foundry.com/user/Aphrodos/profile\nhttps://www.hentai-foundry.com/pictures/user/PurpleMantis\nhttps://www.hentai-foundry.com/search/index?query=MIMI&page=2"},"Hentai-Moon-x-p":{"link":"^hentai-moon\\.com/videos/[0-9]+/.*?/","res":":\nlet title = /<title>([^<]+)/gm.exec($._)[1];\nfunction deobfuscate(r,t){let e=(r=r.split(\"/\").splice(2))[5],n=\"\",l=\"\";l=n=e.substring(0,32);let o=\"\";for(f=\"\",g=1;g<t.length;g++)f+=parseInt(t[g])?parseInt(t[g]):1;for(s=parseInt(f.length/2),$=parseInt(f.substring(0,s+1)),(g=(_=parseInt(f.substring(s)))-$)<0&&(g=-g),f=g,(g=$-_)<0&&(g=-g),f+=g,f*=2,f=\"\"+f,i=10,u=\"\",g=0;g<s+1;g++)for(h=1;h<=4;h++)(a=parseInt(t[g+h])+parseInt(f[g]))>=i&&(a-=i),u+=a;o=u;for(var s=l,$=l.length-1;$>=0;$--){for(var _=$,u=$;u<o.length;u++)_+=parseInt(o[u]);for(;_>=l.length;)_-=l.length;for(var a=\"\",b=0;b<l.length;b++)a+=b==$?l[_]:b==_?l[$]:l[b];l=a}return r[5]=e.replace(n,l),r.join(\"/\")}\nlet videovars = /var flashvars = ({[\\n].+});/gm.exec($._);\neval(\"videovars = \"+videovars[1]);\nlet urls = [];\nfor(el in videovars){\n if(el.match(/^video.*?url\\d?$/)){\n urls.push([deobfuscate(videovars[el], videovars.license_code)+'#mp4', videovars[el+'_text'] ? videovars[el+'_text'] : title]);\n }\n}\nreturn urls;","note":"Randlai\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1429#1\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=620#8\n\nEXAMPLES\nhttps://hentai-moon.com/most-popular/\nhttps://hentai-moon.com/categories/romance/"},"Hentai-Moon_scr-x-p":{"link":"^hentai-moon\\.com/get_file/0/[a-f\\d]+/\\d+/\\d+/screenshots/\\d+\\.jpg/","note":"Randlai\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=620#10\n\nПРИМЕРЫ / EXAMPLES\nhttps://hentai-moon.com/videos/3602/debt-sisters-ep-1/\nhttps://hentai-moon.com/videos/2095/kuroinu-kedakaki-seijo-wa-hakudaku-ni-somaru-ep-1/"},"HentaiFox-x-p":{"link":"^(?:hentaifox\\.(?:(com/gallery/\\d+/)|tv/video/([\\w-]+).*)|nhplayer.com/(?:(v/\\w+)|player.php\\?.+))","url":": $[2]?'https://hentaifox.tv/embed_new.php?name='+$[2]:$[0]","res":":\nif($[1]){\nlet res=[], u=$._.match(/data-src=\"(https:\\/\\/[^\\/]+\\/(?:\\d+\\/){2})\\d+t(\\.[^\"]+)/), n=$._.match(/id=\"load_pages\" value=\"([^\"]+)/)[1]\nfor(let i=1;i<=n;i++){\nres.push([u[1]+i+u[2]])\n}\nreturn res\n}\nif($[2])return {loop:$._.match(/src=\"([^\"]+)/)[1]}\nif($[3])return {loop:'https://nhplayer.com'+$._.match(/<li data-id=\"([^\"]+)/)[1]}\nreturn $._.match(/file:\\s+\"([^\"]+)/)[1]","img":"^(i\\d*\\.hentaifox\\.com\\/\\d+\\/\\d+\\/)(?:(\\d+)t|(thumb))\\.(...)","to":":\nreturn $[1] + ($[3] ? \"1\" : $[2]) + \".#\" + $[4] + \" png#\"","note":"imqswt\nhttps://www.reddit.com/r/imagus/comments/17j6lqh/comment/k72qvqo\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/r/imagus/comments/17j6lqh/comment/k6z1arg"},"HentaiSea_video-x-p":{"url":"https://hentaisea.com/jwplayer/?source=https%3A%2F%2Fhentaisea.com%2Fmp4%2Ftube%2F$1.mp4&type=mp4","res":"file\":\"([^\"]+)","img":"^hentaisea\\.com/wp-content/uploads/tube-thumbs/(.*?)\\.jpg","note":"Randlai\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1470&limit=1&m=1#1\n\nПРИМЕРЫ / EXAMPLES\nhttps://hentaisea.com/videos-genres/hentai/"},"HentaiSea_watch-x-p":{"link":"^hentaisea\\.com/watch/.*?/$","res":":\nlet parser = new DOMParser().parseFromString($._, \"text/html\");\nlet episodes = parser.querySelectorAll('.imagen a');\nif(!episodes) return null;\nlet title = parser.querySelector('.data h1').textContent;\nfunction xmlhttp(type, url, data){\n\tlet x = new XMLHttpRequest;\n\t//x.timeout = 3000;\n\tif(type == \"get\"){\n\t\tx.open('GET', url, false);\n\t\tx.send();\n\t}\n\telse if(type == \"post\"){\n\t\tx.open('POST', url, false);\n\t\tx.setRequestHeader(\"Content-Type\", \"application/x-www-form-urlencoded\");\n\t\tx.send(data);\n\t}\n\treturn x.responseText;\n}\n\nfunction getVideoUrl(episodeUrl){\n\tlet url = \"https://hentaisea.com/wp-admin/admin-ajax.php\";\n\tlet html = xmlhttp('get', episodeUrl);\n\tlet videoParser = new DOMParser().parseFromString(html, \"text/html\");\n\tlet id = /(\\d+)/.exec(videoParser.querySelector('link[rel=shortlink]').href)[1];\n\tlet data = `action=doo_player_ajax&post=${id}&nume=1&type=tv`;\n\thtml = xmlhttp('post', url, data);\n\turl = /src='([^']+)/.exec(html)[1];\n\thtml = xmlhttp('get', url);\n\tlet videoUrl = /file\":\"([^\"]+)/.exec(html)[1];\n\treturn videoUrl\n}\n\nfunction getAllEpiseodes(){\n\tlet urls = [];\n\tlet i = 1;\n\tlet videoName = \"\";\n\tfor(episode of episodes){\n\t\tlet url = episode.href;\n\t\tlet result = getVideoUrl(url);\n\t\tvideoName = episodes.length > 1 ? `${title} - episode ${i}` : title;\n\t\turls.push([result+'#mp4', videoName]);\n\t\ti++;\n\t}\n\treturn urls;\n}\nlet urls = getAllEpiseodes();\nreturn urls;","note":"Randlai\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1470&limit=1&m=1#1\n\n!!!\nВ РФ нужен прокси.\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://hentaisea.com/trending/?get=tube\nhttps://hentaisea.com/genre/uncensored/"},"Hitomi.la-x-p":{"link":"^hitomi\\.la\\/.+?(\\d+)\\.html#?(\\d*)","res":":\nfunction getSc(url) {\n const x = new XMLHttpRequest();\n x.open('GET', url, false);\n x.send();\n return x.responseText;\n}\n\nfunction unobfusc_0(hash) {\n var retval = 'b';\n\n var b = 16;\n \n var r = /[0-9a-f]{61}([0-9a-f]{2})([0-9a-f])/;\n var m = r.exec(hash);\n if (!m) {\n return 'a';\n }\n \n var g = parseInt(m[2]+m[1], b);\n if (!isNaN(g)) {\n retval = String.fromCharCode(97 + gg.m(g)) + retval;\n }\n\n if(retval == \"bb\")\n return \"ba\";\n if(retval == \"ab\")\n return \"aa\";\n \n return retval;\n}\n\nfunction unobfusc_2(h) { \n var m = /(..)(.)$/.exec(h); \n return parseInt(m[2]+m[1], 16).toString(10); \n}\n\n//Get deobfuscation object called 'gg'\nlet ggjs = getSc('https://ltn.hitomi.la/gg.js');\neval(ggjs.match(/(gg = .*)/s)[1]);\n\nvar galleryId=$[1];\n\neval(getSc('https://ltn.hitomi.la/galleries/'+galleryId+'.js'));\n\n//Differentiate between gallery links and image links\nlet pageint = $[2] == \"\" ? -1 : parseInt($[2]);\n\nlet res=[];\nfor (let i=0; i<galleryinfo.files.length; i++) {\n \n if(pageint != -1 && pageint != i+1)\n continue;\n\n let file = galleryinfo.files[i];\n\n //Two URL styles, AVIF and WEBP\n let filetype;\n\n if(file.hasavif == 1) {\n filetype = \"avif\";\n }\n else { //(file.haswebp == 1)\n filetype = \"webp\";\n }\n\n //Multiple obfuscations in the url itself, have to decode them.\n let unobfusc0 = unobfusc_0(file.hash);\n let unobfusc1 = gg.b;\n let unobfusc2 = unobfusc_2(file.hash);\n\n let link = \"https://\" + unobfusc0 + \".hitomi.la/\" + filetype + \"/\" + unobfusc1 + unobfusc2 + \"/\" + file.hash + \".\" + filetype;\n\n res.push([link]);\n}\nreturn res;","note":"iceiller9999\nhttps://www.reddit.com/r/imagus/comments/102rqm3/comment/j3koy3a\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3840#20\n\n\nEXAMPLES\nhttps://hitomi.la/artist/akutabin-all.html\nhttps://hitomi.la/series/arcana%20heart-all.html\nhttps://hitomi.la/tag/male%3Aexposed%20clothing-all.html"},"HizliResim":{"link":"^hizliresim\\.com/(a/)?\\w{6,}\\W*$","res":":\nreturn [...$._.matchAll(/data-fancybox=\"gallery\" href=\"([^\"]+)/g)].map(i=>[i[1]])","img":"^([gt])(\\.hizliresim\\.com/[^.]+)-(?:\\d+x\\d+|s)","to":":\nreturn ($[1]=='t'?'i':'g') + $[2]","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jye4kqo\n\nEXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1360#11"},"HLSPlayer.net_mp4":{"link":".*hlsplayer.net/mp4-player.*","res":":\nconst url = new URL($[0]);\nlet hash = url.hash;\nif (!hash) { return; }\nhash = hash.substring(1);\nlet src = new URLSearchParams(hash).get('src');\nsrc = decodeURI(src);\nreturn src;","note":"ammar786\nhttps://www.reddit.com/r/imagus/comments/zjqhud/comment/izx73rt\n\nEXAMPLES\n??"},"Hoff.ru":{"link":"^hoff\\.ru/catalog/[\\w-/]+_id(\\d+)/(?:\\?articul=(\\d+))?","url":": 'https://hoff.ru/vue/catalog/product/?id='+ $[1] + ($[2] ? '&articul=' + $[2] : '');","res":":\nlet json=JSON.parse($._);\nlet res=[];\nfor (picture of json.data.slider.pictures) {\n res.push([picture.src]);\n}\nreturn res;","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1820#2\n\nПРИМЕРЫ\nhttps://hoff.ru/catalog/shkafy/shkafy_kupe/?stil=skandinavskiy\nhttps://hoff.ru/catalog/promo/dvuspalnye_krovati/?podemnyy_mekhanizm=bez_mehanizma&tsvet=dub_tyomnyy\nhttps://hoff.ru/catalog/tovary_dlya_doma/osveschenie/lustry_i_potolochnye_svetilniki/nastenno_potolochnye_svetilniki/\nhttps://hoff.ru/catalog/kresla/?page=all&direct=redirect_from_search&query=Кресла"},"Holodilnik.ru":{"link":"^holodilnik\\.ru/(.+/){4}$","res":":\nvar i = $._.indexOf('<div class=\"card-product-img__labels\">');\nif(i<0) { return null; }\nvar t = $._.indexOf('<div class=\"swiper-initialized card-product-img__preview\"', i);\nif(t<0) { return null; }\nvar res = [];\nvar re = /data-src=\"([^\"]+)\"/gi\nlet data=$._.substring(i,t);\nvar a = re.exec(data);\nwhile(a) {\n res.push([a[1]]);\n a = re.exec(data);\n}\nreturn res;","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/18n32dx/comment/kebeozx\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1660#20\n\n\nПРИМЕРЫ\nhttps://www.holodilnik.ru/tv_all/tv/\nhttps://www.holodilnik.ru/built-in/built-in_refrigerators_and_freezing_chambers"},"HomeMoviesTube-x-p":{"link":"(.*\\.)?homemoviestube\\.com\\/videos\\/(.*?)(\\/|$|\\?).*","url":"https://www.homemoviestube.com/embed/$2","res":":\nconst url = $._.match(/src=\\\".*?videos\\.cdn\\.homemoviestube\\.com.*?\\\"/)[0].replace(/src=\\\"(.*?videos\\.cdn\\.homemoviestube\\.com.*?)\\\"/, '$1');\n\nreturn url;","note":"papadocTOMP\nhttps://www.reddit.com/r/imagus/comments/iv556b/nsfw_bunch_of_sieves_for_popular_adult_site_videos/\n\n\nEXAMPLES\nhttps://www.reddit.com/domain/homemoviestube.com/new"},"HostingKartinok|hkar.ru":{"useimg":1,"link":"^(?:hostingkartinok\\.com/show-image\\.php\\?id=[\\da-f]{32}|(?:hkar\\.ru|smotr\\.im)/\\w+)","res":"<div class=\"image\">\\s*<a href=\"([^\"]+)\"","img":"^(s\\d+\\.hostingkartinok\\.com/uploads)/thumbs/([^.]+\\.)png","to":"$1/images/$2#jpg jpeg png gif bmp#","note":"ПРИМЕРЫ\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1360#11"},"HostPic":{"link":"(hostpic.org/)view\\.php\\?filename=([^.]+\\.jpg)","img":"(hostpic.org/)view\\.php\\?filename=([^.]+\\.jpg)","to":"$1images/$2","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jn8v5j7\n\nEXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1360#11"},"Hotline.ua-p":{"link":"^hotline\\.ua/[\\w-]+/","res":":\nlet data=$._.match(/type=\"application\\/ld\\+json\">({\"@context\":\"https:\\/\\/schema\\.org\\/\",\"@type\":\"Product\"[^<]+)<\\/script>/i);\nlet res=[];\nfor (image of JSON.parse(data[1]).image) {\n res.push([image]);\n}\nreturn res;\n","img":"^(hotline\\.ua/{1,2}img/tx/\\d+/\\d+)_s\\d+(\\.jpg)$","to":"$15$2","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=500#7\n\n\nПРИМЕРЫ\nhttps://hotline.ua/dom/ofisnye-kresla/\nhttps://hotline.ua/ua/sr/?q=диваны"},"Huaban":{"link":"^huaban\\.com/boards/(\\d+)","url":"https://api.huaban.com/boards/$1/pins?limit=100","res":":\nlet jsn=JSON.parse($._);\nlet res=[];\nfor (pin of jsn.pins) {\n let url='https://'+pin.file.bucket+'.huaban.com\\/'+pin.file.key;\n let title=pin.raw_text;\n res.push([url,title]);\n}\nreturn res;","img":"^(gd-hbimg\\.huaban\\.com/[^_]+)_.*","to":"$1","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jye4kqo\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=640#5\n\n!!!\nНеобходимо правило для SMH (см.ЧаВо, п.12).\n==\nNeed a rule for SMH (see FAQ, p.12).\n\nEXAMPLES\nhttps://huaban.com/boards/38251372\nhttps://huaban.com/user/e0ved985mlo\nhttps://huaban.com/explore/chanpinbeijing"},"Hubblesite-b":{"link":"hubblesite\\.org/contents/media/images/\\d{4}/\\d+/\\S+","res":"<a href=\"([^\"]+\\.(?:png|jpe?g))\">(?:[\\w ]+Res)?","img":"^(imgsrc\\.hubblesite\\.org/hu/db/images/hs-\\d{4}-\\d{2}-[a-z]-)(?:(?:mini_|wallpaper_)?thumb|web(?:_print)?|(?:small|x?large)_web)","to":"#$1full_jpg\n#$1print\n$1large_web_jpg","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3360\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://hubblesite.org/images"},"HuffingtonPost":{"img":"^(img\\.huffingtonpost\\.com/+asset/)(?:[^/]+/)?([^?]+).*","to":"$1$2","note":"EXAMPLES\nhttps://www.huffpost.com/impact/business\nhttps://www.huffpost.com/news/politics"},"hurimg-CDN":{"link":"^(i\\.hurimg\\.com/i/hurriyet/)\\d{2}/\\d+x\\d+/(.*)","img":"^(i\\.hurimg\\.com/i/hurriyet/)\\d{2}/\\d+x\\d+/(.*)","to":"$1$2","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jn8v5j7\n\nEXAMPLES\nhttp://i.hurimg.com/i/hurriyet/75/770x0/5652ecce67b0a9453cd934db\nhttp://i.hurimg.com/i/hurriyet/90/770x0/581f8cc4c03c0e2648bb9c4d\nhttp://i.hurimg.com/i/hurriyet/75/770x0/5a8ecb0dc03c0e1154900c0e"},"Icedrive.net|Icedrive.io":{"link":"icedrive\\.net/(?:s/\\w+|API/Internal/V1/\\?.*)","res":":\nif(!/^\\{/.test($._)){\nreturn {loop:(/data-id=\"/.test($._)?'https://icedrive.net/API/Internal/V1/?request=collection&type=public&folderId='+$._.match(/data-id=\"([^\"]+)/)[1]+'&sess=1':'https://icedrive.net/API/Internal/V1/?request=file-preview&id='+$._.match(/previewItem\\('([^']+)/)[1]+'&sess=1')}\n} else {\nconst o = JSON.parse($._)\nreturn o.download_url?o.download_url+\"#\"+o.extension:o.data?[...o.data.map(i=>[i.thumbnail.replace(/&w=[^&]+&h=[^&]+&m=.*/,'&w=1024&h=1024')])]:''\n}","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jn8v5j7\n\nEXAMPLES\nhttps://icedrive.net/s/abKRG5sS2w\nhttps://icedrive.net/s/k13fVNwiWPuyaa2hNDx9Z8NyPgWj\nhttps://icedrive.net/s/PCY53zB4X3DkQZxYT4QCByt1ByFY"},"Idlebrain":{"img":"^(idlebrain\\.com/movie/photogallery/[^/]+/images/)th_","to":"$1","note":"https://www.reddit.com/r/imagus/comments/8hk5zg/comment/dyky5ab\n\nEXAMPLES\nhttps://idlebrain.com/movietape/index.html\nhttps://idlebrain.com/movie/photogallery/zarinekhan1/index.html\nhttps://idlebrain.com/movie/photogallery/bheeshma/index.html"},"iFixit":{"img":"(guide-images\\.cdn\\.ifixit\\.com\\/igi/[^/]+)\\.(medium|thumbnail|standard)","to":"#$1\n$1.huge","note":"gpl2731\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1120#17\n\nПРИМЕРЫ / EXAMPLES\nhttps://ru.ifixit.com/Teardown/iPhone+4+Teardown/3130\nhttps://www.ifixit.com/Teardown/Samsung+Galaxy+S7+Teardown/56686"},"Igromania.ru":{"link":"javascript:view\\(\\d+,\\d+,'(\\/\\/cdn\\.igromania\\.ru\\/mnt\\/articles(?:\\/\\w){6}\\/\\w+\\/html\\/img\\/\\w+_zoom\\.\\w+)'\\)","to":"$1","note":"Rodny\n\nПРИМЕРЫ\nhttps://www.igromania.ru/igrovyie-novosti/?page=2"},"Igromania.ru_2":{"img":"(cdn\\.igromania\\.ru\\/mnt\\/articles(?:\\/\\w){6}\\/\\w+\\/html\\/more\\/\\w+_)\\d+\\w+(\\.\\w+)","to":"$11920xH$2\n$11200xH$2","note":"Baton34V\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=1680#8\n\nПРИМЕРЫ\nhttps://www.igromania.ru/review/32348/obzor-dordogne-poedu-k-babushke-v-derevnyu/"},"ImageBam-b":{"link":"^(imagebam\\.com/)(image|view)/(\\w+).*","url":": $[3] ? 'https://www.'+$[1]+$[2]+'/'+$[3] : 'https://www.'+$[1]+'image/'+$[2]","res":"img src=\"([^\"]+)\" alt=\"[^\"]+\" class=\"main-image","img":"^thumbnails\\d*\\.(imagebam\\.com/)\\d+/([\\da-f]+).*","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3120#17\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3020#13\n\n!!!\nДля NSFW-контента хостинг Imagebam.com использует защиту. Чтобы временно обойти нужно один раз открыть фото (одно) на самом сайте, после этого Имагус начинает работать.\n==\nFor NSFW content Imagebam.com uses protection. To temporarily bypass it, you need to open a photo (one) on the site itself once, after that the Imagus starts working.\n\nEXAMPLES\nhttps://www.reddit.com/domain/imagebam.com/new/\nhttps://pornolab.net/forum/viewtopic.php?t=1858230\nhttps://pornolab.net/forum/viewtopic.php?t=1157459\nhttps://vipergirls.to/threads/5101059-Sabrina-Bloom-Magical-x50-5760px-(3-Mar-2020)\nhttp://forum.ru-board.com/topic.cgi?forum=1&topic=8691&start=200#6\nhttp://forum.ru-board.com/topic.cgi?forum=1&topic=8691&start=200#11"},"ImageBan.ru|ibn.im":{"link":"(^imageban\\.ru/show/\\d{4}/|ibn\\.im\\/\\w{7})","res":"src=\"(https?://i\\d+\\.imageban\\.ru/out/[^\"]+)","img":"^(i\\d+\\.imageban\\.ru)/thumbs/(\\d{4})\\.(\\d\\d)\\.(\\d\\d)/","to":"$1/out/$2/$3/$4/","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1640#17\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=1720#21\n\n!!!\nДля ibn.im рекомендуется разрешить просмотр через HTTP в браузере (Настройки безопасности).\n\n\nПРИМЕРЫ\nhttps://rutracker.org/forum/viewtopic.php?t=3762986\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1640#13"},"ImageEvent":{"img":"^(photos\\.imageevent\\.com/(?:[^/]+/)+?)(?:icons|small|websize)/(.+)","to":"$1/$2","note":"EXAMPLES\nhttps://imageevent.com/powerwagon/doorart\nhttps://www.reddit.com/domain/imageevent.com/new"},"ImageFap-x-p":{"link":"^imagefap\\.com/(?:photo/|/image\\.php\\?id=)(\\d+).*","url":"https://www.imagefap.com/photo/$1/","res":"original=\"([^?]+$1[^\"]+)","img":"^(?:cdn|cdnh\\d*\\.imagefap\\.com|(?:x\\d*\\.)?fap\\.to)/images/[^?]+/(\\d+).*","note":"!!!\nДля показа видео необходимо правило для SMH (см.ЧаВо, п.12).\n==\nTo show the video, you need a rule for SMH (see FAQ, p.12).\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/domain/imagefap.com/new\nhttps://www.imagefap.com/pictures/11026026/captions"},"ImageFap_video-x-p":{"link":"^imagefap\\.com/video\\.php\\?vid=\\d+","res":":\nlet link=$._.match(/var VideoPlayer = \\{[\\s\\S]+?url: ?'([^']+)'/)[1];\nconst x = new XMLHttpRequest();\nx.open('GET',link,false);\nx.send();\nlet xml=x.responseXML;\nlet res = [];\nlet videoFileSources = xml.getElementsByTagName('quality')[0];\nif (videoFileSources) {\n videoFileSources = videoFileSources.getElementsByTagName('item');\n console.log(videoFileSources[videoFileSources.length-1]);\n res.push(videoFileSources[videoFileSources.length-1].getElementsByTagName('videoLink')[0].childNodes[0].nodeValue);\n}\nreturn res;","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3920#13\n\n!!!\nДля работы фильтра требуется правило для SMH (см.ЧаВО, п.12).\nКурсор наводить на название ролика.\n+\nFor the sieve to work, a rule for SMH is required (see FAQ, p.12).\nThe cursor should be pointed at the title of the video.\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.imagefap.com/browse-video.php?page=6"},"ImageNetz.de":{"link":"imagenetz\\.de/\\w+","res":":\nconst res = $._.match(/<div class=[\"']thumbnail thumbnail-downloadimage[\"']>[^<]+<img src=[\"']([^\"']+)/)\nreturn res&&res.length?res[1]:''","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jn8v5j7\n\nEXAMPLES\nhttps://www.imagenetz.de/v43un"},"ImageShack_1":{"link":"^(imageshack\\.com/\\w/\\w+)","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3740#8\n\n!!!\nДля показа галерей необходимо правило для SMH (см.ЧаВо, п.12).\n==\nTo show the galleries, you need a rule for SMH (see FAQ, p.12).\n\nEXAMPLES\nhttps://imageshack.com/featured\nhttps://www.reddit.com/domain/imageshack.com/new\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3720#21"},"ImageShack_2":{"img":"^imagizer\\.imageshack\\.com/(?:img(\\d+)/\\d+|v2/\\w+/(?:\\w/)?(\\d+))(/\\w+\\.jpg)","to":"imagizer.imageshack.us/v2/download/$1$2$3","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3740#8\n\n\nEXAMPLES\nhttps://imageshack.com/featured\nhttps://www.reddit.com/domain/imageshack.com/\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3720#21"},"ImageSharing":{"link":"imagesharing\\.com//?photo\\.php\\?s=.*","res":":\nconst res = $._.match(/\"p_photo_container\">[^<]+<img src=\"([^\"]+)/)\nreturn res&&res[1].length?res[1]:''","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jn8v5j7\n\nEXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1360#11"},"ImageTitan":{"link":"^(.*\\.imagetitan\\.com/)img\\.php\\?image=.+\\.(?:jpe?g|a?png|gif|svgz?|webp|w?bmp|xbm|pict|j(?:if|fif?))","res":"img id=\\\"image\\\".+src=\\\"(.+\\.(?:jpe?g|a?png|gif|svgz?|webp|w?bmp|xbm|pict|j(?:if|fif?)))\\\"","note":"destiny child\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1360#17\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/domain/imagetitan.com/new\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1369#2"},"ImageTwist|ImageNpic|ImageShimage|ImgTraffic|Pixroute-x":{"link":"^((?:imagetwist|imageshimage|imagenpic|pixroute|imgtraffic)\\.com/)([\\da-z]{12}|n-1(?:/\\d+){3})(/[\\w.-]+\\.(?:[Jj][Pp][Ee]?[Gg]|png|PNG|gif|GIF|bmp|BMP)(?:\\.html)?)$","url":"$1$2$3","res":"src=[\"'](https?://[^\"']+)[\"'] (?:(?:\\w+=\"[^\"]+\"\\s+)*?(?:class=\"pic|id=\"[^\"]+\"\\s*>)|alt='[^']+'\\s+title='Click to view full size')","img":"^(?:i\\D{0,3}\\d*\\.)?((?:imagetwist|imageshimage|pixroute)\\.com)/(?:i/\\d{5}/([\\da-z]{12})_[^.]+|th/\\d{5}/([\\da-z]{12}))\\.jpg$","note":"imqswt\nhttps://www.reddit.com/r/imagus/comments/18r54gk/comment/kf4283r\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=300#12\n\n!!!\nДля работы фильтра требуется SMH (см.ЧаВО, п.12)\n==\nFor the sieve to work, the SMH is required (see FAQ, p.12).\n\nEXAMPLES\nhttps://shentai.org/mortal-kombat-artwork-mega-pack/\nhttps://www.reddit.com/domain/pixroute.com/new\nhttps://xxxclub.to/torrents/details/159895\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=311#1"},"imageup.ru":{"link":"^(imageup\\.ru/img(?:.+))\\.html$","to":"$1","note":"Rodny\n\nПРИМЕРЫ\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1360#11"},"imageup.ru_2":{"link":"^imageup\\.ru/\\d+","res":"<tr><td align=center><img src=\"([^\"]+)\"","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3720#20\n\nПРИМЕРЫ\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1360#11"},"ImageUpper":{"link":"^imageupper\\.com/[gi]+/\\?(galID=)?\\w+","res":":\nlet i = $._.indexOf('<TD CLASS=\"base\">');\nif(i<0) { return null; }\nlet t = $._.indexOf('</TABLE>', i);\nif(t<0) { return null; }\nlet res = [];\nlet re = /<IMG[^/]+SRC=\"([^\"]+)\"/gi\nlet data=$._.substring(i,t);\nlet a = re.exec(data);\nwhile(a) {\n res.push([a[1].replace('_t','')]);\n a = re.exec(data);\n}\nreturn res;\n","img":"^(s\\d\\d\\.imageupper\\.com/\\d)_t(/\\d/\\w+\\.jpg)","to":"$1$2","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1380#14\n\nEXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1360#11"},"ImageVenue-p-b":{"link":"imagevenue\\.com\\/\\w{8}","res":"<img src=\"(https?:\\/\\/cdn-images\\.imagevenue\\.com\\/\\w{2}\\/\\w{2}\\/\\w{2}\\/\\w+_o\\.\\w+)\" alt=","note":"Baton34V\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=1900#16\n\nEXAMPLES\nhttp://pornolab.net/forum/viewtopic.php?t=129738\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=1900#13"},"ImageVenue_2-p-b":{"link":"^(img\\d+\\.imagevenue\\.com/)img\\.php\\?(?:[^&]+&)*?image=([^&]+).*","url":"$1img.php?image=$2","res":"img src=[\"']([^\"']+)[\"'] alt=","img":"^(img\\d+\\.imagevenue\\.com/)[^/]+/th_(.+)","note":"Baton34V\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2100#20"},"IMDb":{"link":"^(?:m\\.)?imdb\\.com/title/tt\\d+(?:/\\?\\S*|/)?$","loop":1,"res":":\nfunction blank_poster() {\n const tt = s => aboveTheFoldData.titleType.text.startsWith(s)\n const type = tt('TV') ? 'tv' : tt('Video Game') ? 'game' : tt('Podcast') ? 'podcast' : tt('Music Video') ? 'music' : 'movie'\n return svg.make('-3 0 30 24', type)\n}\n\nfunction gallery_poster(num) {\n const url = `https://www.imdb.com/title/${mainColumnData.id}/mediaindex/`\n const text = `The other ${num > 1 ? `${num} images are` : `${num} image is`} available<br>in the IMDb gallery`\n return [ svg.make('-3 2 30 24', 'gallery'), `<imagus-extension type=\"banner\" text=\"${text}\" url=\"${url}\"></imagus-extension>` ]\n}\n\nfunction get_images() {\n const poster = n => n ? [ n.url, n.caption.plainText ] : [ blank_poster(), '' ]\n const images = n => n.edges.map(i => i.node.id !== aboveTheFoldData.primaryImage?.id ? [ i.node.url, i.node.caption.plainText ] : undefined).filter(Boolean)\n const result = [ poster(aboveTheFoldData.primaryImage), ...images(mainColumnData.titleMainImages) ]\n if (mainColumnData.titleMainImages.total > result.length)\n result.push(gallery_poster(mainColumnData.titleMainImages.total - result.length + result[0][0].startsWith('data:')))\n if (result.length === 1 && result[0][0].startsWith('data:'))\n result[0][0] = '//' + result[0][0]\n return result\n}\n\nfunction get_header() {\n const ry = aboveTheFoldData.releaseYear\n const tt = aboveTheFoldData.titleType\n let ty = tt.isSeries && ry?.year && ry?.year !== ry?.endYear ? `${ry.year}–${ry.endYear || ' '}` : ry?.year\n if (tt.id !== 'movie') ty = [ tt.text, ty ].filter(Boolean).join(' ')\n return ty ? `${title} (${ty})` : title\n}\n\nfunction get_runtime() {\n const rt_min = aboveTheFoldData.runtime?.seconds / 60\n return rt_min ? rt_min > 60 ? `${Math.floor(rt_min / 60)} hr ${rt_min % 60} min (${rt_min} min)` : `${rt_min} min` : ''\n}\n\nfunction get_release_date() {\n const rd = mainColumnData.releaseDate\n if (rd && rd.year && rd.month && rd.day)\n return new Date(rd.year, rd.month - 1, rd.day).toLocaleDateString(navigator.language, { year: 'numeric', month: 'short', day: '2-digit' }) + (rd.country ? ` (${rd.country.id})` : '')\n}\n\nfunction get_rating(limit) {\n const rs = aboveTheFoldData.ratingsSummary\n const tr = mainColumnData.ratingsSummary.topRanking\n const top = tr?.rank <= limit ? `Top Rated ${aboveTheFoldData.titleType.text.replace(/^Movie$/, 'Movies')}: #${tr.rank.toLocaleString()}` : ''\n return rs.aggregateRating ? [ `<b>⭐</b> ${Number(rs.aggregateRating).toFixed(1)} (${rs.voteCount?.toLocaleString()})`, top ].filter(Boolean).join(' · ') : ''\n}\n\nfunction get_principal_credits() {\n const attributes = n => n ? ` <span style=\"color: silver;\">(${n.map(a => a.text).join(', ')})</span>` : ''\n const name = n => n.name.nameText.text + attributes(n.attributes)\n const category = n => `<b>${n.category.text}:</b> ${n.credits.map(name).join(', ')}`\n return aboveTheFoldData.principalCredits?.filter(cr => cr.credits.length).map(category).filter(line => !line.startsWith('<b>Star')).join('\\n')\n}\n\nfunction get_top_cast(limit) {\n const attributes = n => n ? ` <span style=\"color: silver;\">(${n.map(a => a.text).join(', ')})</span>` : ''\n const characters = n => n ? ` (${n.map(c => c.name).join(', ')})` : ''\n const cast_line = n => n.node.name.nameText.text + characters(n.node.characters) + attributes(n.node.attributes)\n return mainColumnData.cast?.edges.slice(0, limit).map(cast_line).join('\\n')\n}\n\nfunction get_awards() {\n const wins = mainColumnData.wins\n const noms = mainColumnData.nominations\n const sum = mainColumnData.prestigiousAwardSummary\n let all = ''\n let prestigious = ''\n if (sum?.wins > 0) prestigious += `Won ${sum.wins} ${sum.award.text}${sum.wins > 1 ? 's' : ''}`\n if (sum?.nominations > 0 && !sum?.wins) prestigious += `Nominated for ${sum.nominations} ${sum.award.text}${sum.nominations > 1 ? 's' : ''}`\n if (wins.total > 0) all += `${wins.total} win${wins.total > 1 ? 's' : ''}${noms.total ? ' & ' : ''}`\n if (noms.total > 0) all += `${noms.total} nomination${noms.total > 1 ? 's' : ''}`\n return prestigious ? `${prestigious} (${all} total)` : all\n}\n\nfunction get_money() {\n const pb = mainColumnData.productionBudget?.budget\n const us = mainColumnData.lifetimeGross?.total\n const ww = mainColumnData.worldwideGross?.total\n const to_string = n => n?.amount ? n.amount.toLocaleString('en-US', { style: 'currency', currency: n.currency, minimumFractionDigits: 0 }) : ''\n return [\n [ 'Budget', pb ? to_string(pb) + ' (estimated)' : '' ],\n [ 'US & Canada Box Office', to_string(us) ],\n [ 'International Box Office', to_string({ amount: ww?.amount - us?.amount, currency: 'USD' }) ],\n [ 'Worldwide Box Office', us?.amount !== ww?.amount ? to_string(ww) : '' ]\n ].flatMap(item => item[1] ? item.join(': ') : []).join('\\n')\n}\n\n// this.TRG is null when the mouse pointer moved away from the TRG element before loading has been completed\nif (this.TRG === null) return\n\nconst svg = {\n make: (v, d) => 'data:image/svg+xml,' + encodeURIComponent(`<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"360\" height=\"480\" viewBox=\"${v}\" style=\"background-color: #2a2a2a;\" fill=\"#404040\">${svg[d]}</svg>`),\n gallery: '<path d=\"M22 16V4c0-1.1-.9-2-2-2H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2zm-10.6-3.47l1.63 2.18 2.58-3.22a.5.5 0 0 1 .78 0l2.96 3.7c.26.33.03.81-.39.81H9a.5.5 0 0 1-.4-.8l2-2.67c.2-.26.6-.26.8 0zM2 7v13c0 1.1.9 2 2 2h13c.55 0 1-.45 1-1s-.45-1-1-1H5c-.55 0-1-.45-1-1V7c0-.55-.45-1-1-1s-1 .45-1 1z\"/>',\n game: '<path d=\"M21 6H3c-1.1 0-2 .9-2 2v8c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm-11 7H8v2c0 .55-.45 1-1 1s-1-.45-1-1v-2H4c-.55 0-1-.45-1-1s.45-1 1-1h2V9c0-.55.45-1 1-1s1 .45 1 1v2h2c.55 0 1 .45 1 1s-.45 1-1 1zm5.5 2c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5zm4-3c-.83 0-1.5-.67-1.5-1.5S18.67 9 19.5 9s1.5.67 1.5 1.5-.67 1.5-1.5 1.5z\"/>',\n movie: '<path d=\"M18 4v1h-2V4c0-.55-.45-1-1-1H9c-.55 0-1 .45-1 1v1H6V4c0-.55-.45-1-1-1s-1 .45-1 1v16c0 .55.45 1 1 1s1-.45 1-1v-1h2v1c0 .55.45 1 1 1h6c.55 0 1-.45 1-1v-1h2v1c0 .55.45 1 1 1s1-.45 1-1V4c0-.55-.45-1-1-1s-1 .45-1 1zM8 17H6v-2h2v2zm0-4H6v-2h2v2zm0-4H6V7h2v2zm10 8h-2v-2h2v2zm0-4h-2v-2h2v2zm0-4h-2V7h2v2z\"/>',\n music: '<path d=\"M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-1 16H4c-.55 0-1-.45-1-1V6c0-.55.45-1 1-1h16c.55 0 1 .45 1 1v12c0 .55-.45 1-1 1zM8.05 15.54A2.995 2.995 0 0 1 11 12c.35 0 .69.07 1 .18V8c0-1.1.9-2 2-2h2c.55 0 1 .45 1 1s-.45 1-1 1h-2v7.03a3.001 3.001 0 0 1-3.55 2.92c-1.21-.21-2.2-1.2-2.4-2.41z\"/>',\n podcast: '<path d=\"M12 14c1.66 0 3-1.34 3-3V5c0-1.66-1.34-3-3-3S9 3.34 9 5v6c0 1.66 1.34 3 3 3zm5.91-3c-.49 0-.9.36-.98.85C16.52 14.2 14.47 16 12 16s-4.52-1.8-4.93-4.15a.998.998 0 0 0-.98-.85c-.61 0-1.09.54-1 1.14.49 3 2.89 5.35 5.91 5.78V20c0 .55.45 1 1 1s1-.45 1-1v-2.08a6.993 6.993 0 0 0 5.91-5.78c.1-.6-.39-1.14-1-1.14z\"/>',\n tv: '<path d=\"M21 3H3c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h5v1c0 .55.45 1 1 1h6c.55 0 1-.45 1-1v-1h5c1.1 0 1.99-.9 1.99-2L23 5a2 2 0 0 0-2-2zm-1 14H4c-.55 0-1-.45-1-1V6c0-.55.45-1 1-1h16c.55 0 1 .45 1 1v10c0 .55-.45 1-1 1z\"/>'\n}\n\nconst pageProps = JSON.parse($._.match(/NEXT_DATA[^{]+([^<]+)/)[1]).props.pageProps\nconst aboveTheFoldData = pageProps.aboveTheFoldData\nconst mainColumnData = pageProps.mainColumnData\nconst title = aboveTheFoldData.titleText.text\nconst original_title = aboveTheFoldData.originalTitleText.text\nconst countries = mainColumnData.countriesOfOrigin?.countries.map(country => country.text).join(', ')\nconst certificate = aboveTheFoldData.certificate?.rating\nconst episodes = mainColumnData.episodes?.totalEpisodes.total\nconst genres = aboveTheFoldData.genres?.genres.map(genre => genre.text).join(', ')\nconst plot = aboveTheFoldData.plot?.plotText?.plainText\nconst companies = mainColumnData.production.edges.map(edge => edge.node.company.companyText.text).join(', ')\n\nconst sidebar_html = [\n `<span style=\"font-size: 120%; font-weight: bold;\">${get_header()}</span>`,\n title !== original_title ? 'Original title: ' + original_title : '',\n countries,\n [ get_runtime(), episodes ? `${episodes} eps` : '', get_release_date() ].filter(Boolean).join(' · '),\n [ genres, certificate ].filter(Boolean).join(' · '),\n get_rating(1000),\n [ '\\n<b>Plot</b>', plot ],\n [ '', get_principal_credits() ],\n [ '\\n<b>Top cast</b>', get_top_cast(12) ],\n [ '\\n<b>Awards</b>', get_awards() ],\n [ '\\n<b>Production companies</b>', companies ],\n [ '\\n<b>Financials</b>', get_money() ]\n].filter(i => i?.[1]).flat().join('\\n')\n\nconst res = get_images()\nres[0][1] = `<imagus-extension type=\"sidebar\">${sidebar_html}</imagus-extension>${res[0][1]}`\nthis.TRG.IMGS_ext_data = res\n\nreturn 'imagus://extension'","img":"^((?:(?:images\\.|(?:images-[a-z]{2}\\.ssl-|(?![gz]-)[^.?]+\\.)images-)amazon|ia\\.media-imdb|m\\.media-amazon)\\.com/images/[^/]/[^.]+(?:(?!\\.[A-Za-z]{3,4}$)\\.[^A-Z_.]+)*)(?:$|(?!_(?:CB|V)\\d{4,}_\\.)[^?]*\\.([^?]*).*)","to":":\nvar x=$[2]||'#jpg png#'\nreturn '#' + $[1] + '.' + x +'\\n'+$[1] + '._SY1024_SX1024_.'+x","note":"64h\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=2220#11\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=2126#1\n\n\n!!!\nВ т.ч. поддержка внешних ссылок с информационной панелью (сайдбар).\n==\nIncl. support for external links with information panel (sidebar).\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.imdb.com/name/nm0027572/\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3880#16"},"IMDb_mediaindex":{"link":"^(?:m\\.)?imdb\\.com/(name|title)/(\\w+)/mediaindex.*?(page=\\d+|refine=\\w+|$).*","url":"https://m.imdb.com/_ajax/$1/$2/mediaindex?$3","res":":\nreturn JSON.parse($._).data.map(i => [i.src.replace(/\\._.*/, ''), i.alt])","note":"64h\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1480#16\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=80#10\n\nПРИМЕРЫ / EXAMPLES\n\"99+ photos\" + \"Photos 119\"\nhttps://www.imdb.com/name/nm0027572/"},"img.onl|istreetview":{"link":"img\\.onl/\\w+","res":"<img id=\"img\" src=\"([^\"]+)","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jn8v5j7\n\nEXAMPLES\nhttps://img.onl/NK6mbh\nhttps://img.onl/Q3MAFZ\nhttps://img.onl/uY1dKb"},"Imgaa":{"link":"^imgaa\\.com/image/\\w{22}","res":"<img class=\"image\" src=\"([^\"]+)\"","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1440#20\n\n!!!\nФильтр может не срабоать из-за защиты сайта по IP(?)\n==\nThe rule may not work due to the protection of the site by IP(?)\n\nEXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1440#16"},"imgBB|ibb.co-p":{"link":"^(i(?:bb\\.co|mgbb\\.com)/\\w{6,7}).*","url":"$1","res":"=\"og:image\" content=\"([^\"]+)\n=\"og:title\" content=\"([^\"]+)","img":"^i(?:mage)?\\.(i(?:bb\\.co|mgbb\\.com)/\\w+).*","note":"ПРИМЕРЫ / EXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50152&start=2660#14\nhttp://www.centbrowser.net/en/showthread.php?tid=4927&pid=21932#pid21932\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50839&start=2420#2\nhttps://github.com/DeaDBeeF-Player/deadbeef/issues/2932"},"imgbox":{"link":"^(imgbox\\.com/(?!privacy|register)(g/)?[^/.]{6,10})$","res":":\nif(!$[2])return $._.match(/href=\"([^\"?]+)\\?download/)[1]\nvar t = $._.match(/<h1>([^<]+)/), r = $._.match(/ b\" src=\"https:\\/\\/thumbs[^\"]+/g).map(function(i) {\n return [i.slice(9).replace(/thumb(s\\d\\.)/, 'image$1').replace(/_\\w\\./, '_o.')]\n})\nr[0][1] = t&&t[1]\nreturn r","img":"^(?:(?:hcd-\\d|t\\d*|(?:\\d[.-])?[ist]|thumb(s\\d*))\\.)(imgbox\\.com/[^._]+)[^.]*","to":":\nreturn $[1]?'image'+$[1]+'.'+$[2]+'_o':'i.'+$[2]","note":"EXAMPLES\nhttps://www.reddit.com/domain/imgbox.com/new\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1360#11"},"ImgChest.com":{"link":"^imgchest\\.com/p/[a-z0-9]+","res":":\nreturn [...$._.matchAll(/<meta property=\"og:image\" content=\"([^\"]+)/g)].map(i=>[i[1]])","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/ju44i2m\n\nEXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1360#11"},"Imgflip":{"link":"^(imgflip\\.com/)(?:i|gif)/([^?#]+)","img":"^i\\.(imgflip\\.com/)2/([^.]+).+","to":"//i.$1$2.#jpg gif#","note":"EXAMPLES\nhttps://www.reddit.com/domain/imgflip.com/new"},"ImgHost.pl":{"useimg":1,"link":"imghost\\.pl/(?:index.php)?\\?id=([a-z0-9]+)","img":"imghost\\.pl/thumbs/([^.]+)\\.([a-z]+)","to":":\nreturn 'https://www.imghost.pl/images/'+$[1]+'.#'+($[2]?$[2]:'jpg gif png jpeg')+'#'","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jn8v5j7\n\n!!!\nНеобходимо правило для SMH (см.ЧаВо, п.12).\n==\nNeed a rule for SMH (see FAQ, p.12).\n\nEXAMPLES\nhttp://www.imghost.pl/?id=e3f603ee58\nhttp://imghost.pl/index.php?id=fd81809566\nhttp://imghost.pl/index.php?id=0e8124552b"},"Imginn|Imgsed":{"link":"^imginn\\.com|imgsed\\.com/p/[\\w-]+/","res":":\nlet parser = new DOMParser();\nlet doc = parser.parseFromString($._, \"text/html\");\n\nlet res = [];\nif (doc.getElementsByClassName('swiper-slide').length > 0) {\n[...doc.getElementsByClassName('swiper-slide')].forEach(elem => {\nres.push([elem.getAttribute('data-src')])\n})\n} else {\nres.push([doc.querySelector('.downloads a').href])\n}\nreturn res;","note":"Wallery\nhttps://www.reddit.com/r/imagus/comments/1abomvc/new_imginn_sieve_old_one_doesnt_work/\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=140#11\n\n\n!!!\nДля работы фильтра на внешних ссылках необходимо правило для SMH (см.ЧаВо, п.12).\n+\nДля получения фото в разрешении 1440x - нужно навести курсор на \"Download\".\n==\nFor the sieve to work on external links, you need a rule for SMH (see FAQ, p.12).\n+\nTo get a photo in 1440x resolution, you need to hover over “Download”.\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://imginn.com/aleranaofficial\nhttps://imgsed.com/therealap01\nhttps://imginn.com/dianapenty"},"Imgisto.site":{"link":"imgisto\\.site/[a-z0-9]{4,5}$","res":"\"og:image\" content=\"([^\"]+)","img":"(imgisto\\.site/_i/[^?]+)\\?dl","to":"$1","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jn8v5j7\n\nEXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1360#11"},"Imglink.ru":{"link":"^imglink\\.ru/show-image.php\\?id=(\\w+)$","res":"<img src='(https?://imglink\\.ru/pictures/[^']+)' alt='","img":"^imglink\\.ru/thumbnails/(.+)$","to":"imglink.ru/pictures/$1","note":"Rodny + by Baton34V (fix)\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2720#15\n\n! RES parameter is using by default, rule works on links without thumbnails. \"img\" and \"to\" are not required.\nCheck \"use img\" to work with thumbnail only.\n\nПРИМЕРЫ\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50689&start=40#1\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50689&start=40#2"},"imgsh":{"img":"(imgsh\\.net/)\\w+(/\\w+\\.\\w+)","to":"$1i$2","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=580#21\n\nПРИМЕРЫ / EXAMPLES\nhttps://forum.mozilla-russia.org/viewtopic.php?pid=799710#p799710"},"ImgSpice-x":{"link":"^imgspice\\.com/[a-z0-9]+/[\\w-]+\\.[a-z]{3,4}\\.html$","res":":\nlet meta = document.querySelector('head > meta[name=\"referrer\"]');\nif (!meta) {\n meta = document.createElement('meta');\n meta.name = 'referrer';\n meta.content = 'same-origin';\n document.getElementsByTagName('head')[0].appendChild(meta);\n} else if (meta.attributes.content.value !== 'same-origin') {\n meta.attributes.content.value = 'same-origin';\n}\nlet url = ($._.match(/<img id=\"imgpreview\" src=\"([^\"]+)\"/) || [])[1];\nreturn [url];\n","note":"imqswt\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/k0jqmfs\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3740#4\n\n\nEXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1369&limit=1&m=1#1"},"iMGSRC.ru":{"link":"^imgsrc\\.ru/([^/]+)/(\\d+)\\.html.*","url":"//imgsrc.ru/$1$3/$2$4.html","res":":\nconst rx = /source srcset='([^']+)' type='image\\/jpeg/g;\nconst m = [...$._.matchAll(rx)].map(el => el[1]);\nif (!m) return;\nreturn m[m.length - 1];","img":"^\\w+\\.\\w+\\.icdn\\.ru/\\w/(\\w+)/\\w+/(\\d+).*","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/kd6jo2n\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1120#13\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=120#3\n\nПРИМЕРЫ\nhttps://imgsrc.ru/9174337478/69365420.html\nhttps://imgsrc.ru/akhodov/69280263.html?pwd=&per_page=36\nhttps://imgsrc.ru/alex_1910/61880321.html#bp"},"IMGUR":{"link":"^(?:[im]\\.())?(imgur\\.com|filmot\\.(?:com|org))/+(?!gallery|s(?:tats|ignin|earch)|tools|topic|random|logout|account|inbox|about|contact|privacy|memegen|collab)(?:g/[^/]+/)?([^\\W_]{5}(?:[^\\W_]{2})?)[sbtmlh]?(?![,&])(?:[?/#].*)?$","img":"^(?:[im]\\.([^.]+\\.)?)?(imgur\\.com|filmot\\.(?:com|org))/+([^\\W_]{5}(?:[^\\W_]{2})?)(?:[sbtmlh]|_[^.]+)?\\.(jpe?g|png|gifv?|mp4|webm).*","to":":\nvar l = ($[2][0]=='i' ? '//' : '')+'i.'+($[1]||'')+$[2]+'/'+$[3];\nvar res='';\nif ($[4]) {\n res= l+'.'+$[4].replace('gifv','mp4');\n}\nelse {\n res= l + '.mp4\\n'+ l + '.gif\\n' + l + 'h.jpg';\n}\nlet meta = document.querySelector('head > meta[name=\"referrer\"]');\nif (!meta) {\n meta = document.createElement('meta');\n meta.name = 'referrer';\n meta.content = 'same-origin';\n document.getElementsByTagName('head')[0].appendChild(meta);\n} else if (meta.attributes.content.value !== 'same-origin') {\n meta.attributes.content.value = 'same-origin';\n}\nreturn res;","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3720#10\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3200#6\n\n!!!\nКурсор нужно наводить на название (особенно это касается альбомов с несколькими изображениями/видео).\n==\nYou need to hover the cursor over the title (especially for albums with multiple images/videos).\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://imgur.com/t/video\nhttps://www.reddit.com/domain/imgur.com/new\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3720#3"},"IMGUR-set":{"link":"^(?:(?:[im]\\.)?(?:imgur\\.com|filmot\\.(?:com|org))/+(?:(?:(a|gallery(?!/random|/custom)|t(?:opic)?/[^/]+)|r/[^/]+)/([^\\W_]{5}(?:[^_\\W]{2})?)|(?:[^\\W_]{5}(?:[^\\W_]{2})?[,&])+[^_\\W]{5}(?:[^\\W_]{2})?)).*","url":": $[1] ? 'https://imgur.com/' + ($[1] == 'a' ? 'a/' + $[2] + '/embed' : $[1] + '/' + $[2] + '/hit.json') : $[0]","res":":\nvar ret = [], im, g, c, x, i, t, u, l = '//i.imgur.com/', p404='404 page';\n\ntry {\n if (typeof $._ == 'string' && $._[0]!='{') {\n if($._.lastIndexOf(p404, 300) > -1) throw true;\n x = $._.match(/(?:album|image)\\s*[:=] +([^\\n\\r]+),/);\n x = JSON.parse(x[1])\n t = this.t; delete this.t;\n if (!t&&'title' in x)t = x;\n x.album_images&&(x=x.album_images);\n x.images&&(x=x.images)||x.items&&(x=x.items);\n } else {\n $._=JSON.parse($._);\n if($._.album){\n x=$._.album\n t={title:x.title, description: x.description}\n x=x.images\n } else {\n x=$._.data.image\n if (x.is_album) {\n t={title:x.title, description: x.description}\n if (x.album_images.count != x.album_images.images.length) {\n this.t=t\n return {loop: l+'a/'+$[2]}\n }\n x=x.album_images.images\n }\n }\n delete this.t;\n }\n\n if (!x)throw $._.lastIndexOf(p404, 300) > -1;\n\n t = t && [t.title, t.description].filter(Boolean).join(' - ') || !1\n x = Array.isArray(x)?x:[x]\n for (i = 0; i < x.length; ++i) {\n im = x[i].image||x[i];\n c = [im.title, im.caption, im.description].filter(Boolean).join(' - ');\n if (!i && t && t!=c) c='['+t+'] ' + c;\n im.ext = im.ext || x[i].links.original.match(/\\.[^.]+$/)[0];\n g = (''+im.animated)=='true'\n u = l + im.hash;\n ret.push([!g && im.width <= 1200 && im.height <= 1200 ? u + im.ext : (g ? [u + '.mp4', u + '.gif'] : ['#' + u + im.ext, u + 'h' + im.ext]), c]);\n }\n} catch (ex) {}\nreturn ret.length ? ret : null","note":"!!!\nКурсор нужно наводить на название (особенно это касается альбомов с несколькими изображениями/видео).\n==\nYou need to hover the cursor over the title (especially for albums with multiple images/videos).\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://imgur.com/t/video\nhttps://www.reddit.com/domain/imgur.com/new\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3720#3"},"IMGUR.io_redirect":{"link":"^imgur\\.io/(\\w+(?:(?:\\?\\w+)|(?:/\\w+(?:\\.\\w+)?))?)","loop":1,"to":"https://imgur.com/$1","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1720#19\n\nПРИМЕРЫ / EXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1700#10"},"imgway.cz":{"link":"^(?:.*)(imgway\\.cz/s/\\w{0,5})","url":"https://$1","res":"img src=\\\"(.+/v/.+\\.(?:jpe?g|a?png|gif|svgz?|webp|w?bmp|xbm|pict|j(?:if|fif?)))\\\" style","note":"destiny child\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1380#10\n\nEXAMPLES\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1369#2"},"IMHentai.xxx-x-p":{"link":"^imhentai\\.xxx/gallery/\\d+/$","res":":\nconst f=this.find, u=$._.match(/data-src=\"(https:\\/\\/(?:[^\\/]+\\/)+)1(t\\.[^\"]+)/), n=parseInt($._.match(/
  • Pages:\\s*(\\d+)/)?.[1]||0)\nif(!u||!n)return this.node.src?{loop:this.node.src.replace('thumb','1t')}:''\n$=[]\nfor(i=1;i<=n;i++)$.push([f({src: u[1]+i+u[2]})])\nreturn $","img":"^(m\\d?\\.imhentai\\.xxx/\\d+/\\w+/\\d+)t(?:\\.\\w+)","to":"$1#.jpg .png .gif#","note":"imqswt\nhttps://www.reddit.com/r/imagus/comments/z0zyox/comment/kjxz6dc\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=400#13\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/r/imagus/comments/z0zyox/comment/kjt39la"},"IMX.to-x":{"link":"^(imx\\.to/)i(/\\w+)","url":"$1i$2 :imgContinue=","res":"=\"centred\" src=\"([^\"]+)\"(?:\\salt=\"([^\"]+))?","img":"^(?:t\\.)?(imx\\.to/)(?:u/)?t/\\d+/\\d\\d/\\d\\d(/\\w+).*","note":"EXAMPLES\nhttps://www.reddit.com/domain/imx.to/new"},"Inkbunny-x-p":{"link":"inkbunny\\.net\\/s\\/\\d+","res":":\n\nlet highdefinition = true;\n\nlet debug = false;\n\nlet singleitemmatch=$._.match(/submission-standarddefURL.*?(https:\\/\\/\\w\\w\\.ib\\.metapix\\.net\\/files\\/screen\\/\\d+\\/\\d+[^'\\\"]*?)['\\\"]/);\nlet galleryitemsiterator=$._.matchAll(//);\n if(generalthumbmatch != null) {\n if(debug) console.log(\"General Thumbnail Media Context.\");\n let generalthumblink = generalthumbmatch[1];\n\n returnval = [\n [generalthumblink, toptext]\n ];\n return returnval;\n }\n \n console.error(\"No known media context found.\")\n return;\n}\n\n\nlet singleimagelink = singleitemmatch[1];\n\n//Split cases where gallery thumbnails are found or default to a single item\nif(galleryitemsmatch.length == 0) {\n //No gallery found, transform URL and display based on high def preference and return\n if(debug) console.log(\"Standard Image Media Context.\");\n\n if(highdefinition) {\n singleimagelink = singleimagelink.replace(\"/screen/\", \"/full/\");\n }\n\n returnval = [\n [singleimagelink, toptext]\n ];\n}\nelse {\n if(debug) console.log(\"Gallery Media Context.\");\n\n returnval = [];\n\n //Probe for filetypes in main image to guess gallery image filetypes\n let filetype = singleimagelink.match(/(.(jpg|jpeg|png|webp|gif))/)[1];\n\n let replaceurltext = highdefinition ? \"/files/full/\" : \"/files/screen/\";\n for(let i=0; i [ use_60fps_video&&i.video_dash_manifest.match(/(?:frameRate=[^\"]*\"60[^\"]*\"\\s+ sar=|-hfr_).+?([^<]+)/)?.[1] || i.video_versions?.[0].url || i.image_versions2.candidates[0].url, capt ]\n\nreturn item.carousel_media?.map((e) => res(e)) || res(item)","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/18j8q59/comment/ki416os\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=2140#8\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1520#20\n\n\n!!!\nДля показа внешних ссылок и фреймов необходимо правило для SMH (см.ЧаВо, п.12).\n+\nconst use_60fps_video = true // Если установлено значение true, то будет показано видео 60fps, если оно доступно. Но оно будет без звука:\nhttps://www.reddit.com/r/imagus/comments/18j8q59/instagram_video_popout_for_download_is_30fps_even\n+\nНа домашней странице в \"ленте\" фильтр также работает - для этого следует навести курсор на количество лайков, либо на дату.\n+\nВ случае ошибки - фильтр выдает сообщение с кодом ошибки.\n+\nАльтернативный просмотр Инстаграм: IMGINN.COM/IMGSED.COM.\n==\nTo display external links and frames, you need a rule for SMH (see FAQ, p.12).\n+\nconst use_60fps_video = true // If set to true, a 60 fps video will be shown if it is available. But it will be silent:\nhttps://www.reddit.com/r/imagus/comments/18j8q59/instagram_video_popout_for_download_is_30fps_even\n+\nOn the home page in the \"feed\" the rule works if you hover over the number of likes or the date.\n+\nIn case of an error, the rule issues a message with an error code.\n+\nAlternative Instagram viewer: IMGINN.COM/IMGSED.COM.\n\n\nПРИМЕРЫ / EXAMPLES\n(внешние ссылки / external links):\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=200#19"},"INSTAGRAM_html-p":{"off":1,"link":"^instagram\\.com/(?:p|reel)/([\\w-]+).*","url":"data:,$1","res":":\nif (location.hostname !== 'www.instagram.com') return\n\nconst xhr = new XMLHttpRequest()\nxhr.open('GET', `https://www.instagram.com/p/${$[1]}/`, false)\nxhr.setRequestHeader('Accept', 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8')\nxhr.send()\n\nconst item = JSON.parse(xhr.responseText.match(/xdt_api__v1__media__shortcode__web_info\":(.+)},\"extensions/)[1]).items[0]\nconst capt = [\n `@${item.user.username}${item.user.full_name ? ` (${item.user.full_name})` : ''}`,\n new Date(item.taken_at * 1000).toLocaleString(navigator.language, { dateStyle: 'medium', timeStyle: 'medium' }),\n item.caption?.text\n].filter(Boolean).join(' | ')\nconst res = (i) => [ i.video_versions?.[0].url || i.image_versions2.candidates[0].url, capt ]\n\nreturn item.carousel_media?.map((e) => res(e)) || res(item)","note":"64h\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=2140#8\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1520#20\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=960#10\n\n\n!!!\nДля показа внешних ссылок и фреймов необходимо правило для SMH (см.ЧаВо, п.12).\n+\nНа домашней странице в \"ленте\" фильтр также работает - для этого следует навести курсор на количество лайков, либо на дату. \n+\nВ случае ошибки - фильтр выдает сообщение с кодом ошибки.\n+\nАльтернативный просмотр Инстаграм: IMGINN.COM/IMGSED.COM.\n+\nЕсли с данным фильтром возникнут проблемы, можно его отключить и включить один из альтернативных фильтров (R_Instagram_pub_api_a1 / O_Instagram_pub_api_gql).\n==\nTo display external links and frames, you need a rule for SMH (see FAQ, p.12).\n+\nOn the home page in the \"feed\" the rule works if you hover over the number of likes or the date.\n+\nIn case of an error, the rule issues a message with an error code.\n+\nAlternative Instagram viewer: IMGINN.COM/IMGSED.COM.\n\n\nПРИМЕРЫ / EXAMPLES\n(внешние ссылки / external links):\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=200#19"},"INSTAGRAM_priv_api-p":{"off":1,"link":"^instagr(?:am\\.com|\\.am)/(?:p|reel)/([\\w-]+)(?:\\W|$)(?!\\?e=|liked_by|comments).*","url":": (()=>{var disable_on_timestamps = false ; if(disable_on_timestamps&&(this.node.className===\"x1i10hfl xjbqb8w x6umtig x1b1mbwd xaqea5y xav7gou x9f619 x1ypdohk xt0psk2 xe8uvvx xdj266r x11i5rnm xat24cr x1mh8g0r xexx8yu x4uap5 x18d9i69 xkhd6sd x16tdsg8 x1hl2dhg xggy1nq x1a2a7pz _a9zg _a6hd\"||this.node.nodeName==='TIME'||this.node.nodeName==='SPAN'))throw new Error('Not used on this link');return 'data:,'+$[1]})()","res":":\nconst alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_'\nconst media_pk = [...$[1]].reduce((a, v, i) => a + BigInt(alphabet.length ** ($[1].length - i - 1) * alphabet.indexOf(v)), 0n)\nconst x = new XMLHttpRequest()\nx.open('GET', `https://i.instagram.com/api/v1/media/${media_pk}/info/`, false)\nx.setRequestHeader('X-IG-App-ID', '936619743392459')\nif (!/firefox/i.test(navigator.userAgent)) {\n x.withCredentials = true\n}\nx.send()\nif (x.status !== 200) {\n return [ 'data:image/svg+xml,' + encodeURIComponent(`\n \n \n
    \n \n Something went wrong\\nHTTP status ${x.status}: ${x.statusText}\n \n
    \n
    \n
    `.replace(/\\n\\s+/g, '')), ' ' ]\n}\nconst item = JSON.parse(x.responseText).items[0]\nconst capt = [\n `@${item.user.username}${item.user.full_name ? ` (${item.user.full_name})` : ''}`,\n new Date(item.taken_at * 1000).toLocaleString(navigator.language, { dateStyle: 'medium', timeStyle: 'medium' }),\n item.caption?.text\n].filter(Boolean).join(' | ')\nconst res = (i) => [ i.video_versions?.[0].url || i.image_versions2.candidates[0].url, capt ]\nreturn item.carousel_media?.map((e) => res(e)) || res(item)","note":"64h + Imagus_fan (edit)\nhttps://www.reddit.com/r/imagus/comments/170lv0t/comment/k3nf9mi\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1520#20\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=960#10\n\n!!!\nДля показа внешних ссылок и фреймов необходимо правило для SMH (см.ЧаВо, п.12).\n+\nВ случае ошибки - фильтр выдает сообщение с кодом ошибки.\n+\nНа домашней странице в \"ленте\" фильтр также работает - для этого следует навести курсор на количество лайков, либо на дату. \n+\nvar disable_on_timestamps = true (во втором текстовом поле) - запрещает срабатывание фильтра на дате комментария.\n+\nАльтернативный просмотр Инстаграм: IMGINN.COM/IMGSED.COM.\n+\nЕсли с данным фильтром возникнут проблемы, можно его отключить и включить один из альтернативных фильтров.\n==\nTo display external links and frames, you need a rule for SMH (see FAQ, p.12).\n+\nOn the home page in the \"feed\" the rule works if you hover over the number of likes or the date.\n+\nvar disable_on_timestamps = true (in the second text field) - prohibits the operation of the sieve on comment dates.\n+\nIn case of an error, the rule issues a message with an error code.\n+\nAlternative Instagram viewer: IMGINN.COM/IMGSED.COM.\n\n\nПРИМЕРЫ / EXAMPLES\n(внешние ссылки / external links):\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=200#19"},"INSTAGRAM_pub_api_a1-p":{"link":"^(?:(?:i\\.)?instagr(?:\\.am|am\\.com))\\/(?:\\w+\\/)?(tv\\/|p\\/|reel\\/){1,2}([^\\/?#]+).*","ci":1,"url":": (()=>{var disable_on_timestamps = false ; if(disable_on_timestamps&&(this.node.className===\"x1i10hfl xjbqb8w x6umtig x1b1mbwd xaqea5y xav7gou x9f619 x1ypdohk xt0psk2 xe8uvvx xdj266r x11i5rnm xat24cr x1mh8g0r xexx8yu x4uap5 x18d9i69 xkhd6sd x16tdsg8 x1hl2dhg xggy1nq x1a2a7pz _a9zg _a6hd\"|this.node.nodeName==='TIME'||this.node.nodeName==='SPAN'))throw new Error('Not used on this link');return `https://www.instagram.com/${$[1]}${$[2]}/?__a=1&__d=dis`})()","res":":\nvar i=JSON.parse($._);\ni=i.items?i.items[0]:i.graphql?.shortcode_media\nvar f=i.user?.full_name??i.owner?.full_name;\nvar u=i.user?.username??i.owner?.username;\nvar t=new Date((i.taken_at||i.taken_at_timestamp)*1e3).toLocaleString('en-GB');\nvar c=i.caption ? i.caption.text : '';\nc = `@${u} (${f}) | ${t} | ${c}`;\nlet m;\nif (i.carousel_media)\nm = i.carousel_media.map(x => x.video_versions ? [x.video_versions[0].url, c] : \n [x.image_versions2.candidates[0].url, c])\nelse if (i.video_versions) m = [i.video_versions[0].url, c];\nelse if (i.edge_sidecar_to_children) m = i.edge_sidecar_to_children.edges.map(i=>[i.node.display_url, c])\nelse if (i.video_url||i.display_url) m = [i.video_url??i.display_url, c]\nelse m = [i.image_versions2.candidates[0].url, c]\nthis.CNT.filename = u + '_' + (Array.isArray(m[0])?m[0][0]:m[0]).match(/\\/([^\\/.]+\\.\\w{3,4})(?:$|\\?)/)?.[1].replace(/[^\\w-.]/g,'_')??''\nreturn m","note":"illogikally + Imagus_fan (edit)\nhttps://www.reddit.com/r/imagus/comments/17mr4t7/comment/k8cm03n\nOLD:\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=960#10\nhttps://www.reddit.com/r/imagus/comments/v1xqr3/comment/iaxfu6w\nhttps://www.reddit.com/r/imagus/comments/sc9kr0/comment/hu583vk\nhttps://www.reddit.com/r/imagus/comments/q2xxqj/comment/hg44cqe\n\n!!!\nДля показа внешних ссылок и фреймов необходимо правило для SMH (см.ЧаВо, п.12).\n+\nНа домашней странице в \"ленте\" фильтр также работает - для этого следует навести курсор на количество лайков, либо на дату.\n+\nВ случае если данный фильтр у вас не будет работать, можно его отключить и включить один из расположенных рядом альтернативных фильтров.\n+\nАльтернативный просмотр Инстаграм: IMGINN.COM/IMGSED.COM.\n==\nTo display external links and frames, you need a rule for SMH (see FAQ, p.12).\n+\nOn the home page in the \"feed\" the rule works if you hover over the number of likes or the date.\n+\nIf this sieve does not work for you, you can disable it and enable one of the alternative sieves located nearby.\n+\nAlternative Instagram viewer: IMGINN.COM/IMGSED.COM.\n\n\nПРИМЕРЫ / EXAMPLES (внешние ссылки / external links):\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=200#19"},"iPic.su":{"link":".*(ipic\\.su/(?:img/)?(?:.+)(?:\\.jpe?g|png|gif)?)","to":"$1","note":"Rodny + by Baton 34V (fix)\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2460#4\n\nПРИМЕРЫ\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=820#19\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2460#3\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1420#10"},"IRecommend.ru":{"link":"^irecommend\\.ru/content/.+","res":":\nconst product_image = $._.match(/\\/sites\\/default\\/files\\/product-images\\/[^?\"]+/)[0]\nconst user_images = $._.match(/(?<=href=\")\\/sites\\/default\\/files\\/imagecache\\/copyright1[^?\"]+/g)\nreturn user_images?.map((e) => [ 'https://irecommend.ru' + e.replace('/imagecache/copyright1', ''), '']) || 'https://irecommend.ru' + product_image","note":"64h\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1560#20\nOLD\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2020#21\n\nПРИМЕРЫ\nhttps://irecommend.ru/content/maska-dlya-litsa-algomask-omolazhivayushchaya-maska-frantsuzskii-paradoks\nhttps://irecommend.ru/content/pylesos-karcher-vc-3"},"Itaku.ee":{"useimg":1,"link":"^(http(|s):\\/\\/|)itaku.ee\\/images\\/(\\d+)$","url":"https://itaku.ee/api/galleries/images/$3/?format=json","res":":\n$data = JSON.parse($._);\nif($data['video'] != null){\n $url = $data['video']['video'];\n}else {$url = $data['image'];}\n$caption = `${$data['title']} - by ${$data['owner_displayname']}`;\n$res = [$url, $caption];\nreturn $res;","img":"itaku\\.ee\\/api\\/media\\/gallery_imgs\\/(.*)\\/.*(\\..*)$","to":"https://itaku.ee/api/media/gallery_imgs/$1/xl$2","note":"waitwotNO\nhttps://www.reddit.com/r/imagus/comments/15iu234/itakuee/\n\nEXAMPLES\nhttps://itaku.ee/profile/vee4eva/gallery\nhttps://itaku.ee/profile/vee4eva/posts\nhttps://itaku.ee/home/commissions\nhttps://itaku.ee/home/images?text=red"},"iTunes":{"img":"^(is\\d(?:-ssl)?\\.mzstatic.com/image/thumb/[^?]+/)\\d+x\\w+","to":"$19999x9999","note":"EXAMPLES\n??"},"iWantClips-x":{"link":"iwantclips.com/store/item/\\d+","res":"source src=\"([^\"]+)\" type=\"video/mp4\"","img":".*?\\.iwantclips.com/uploads/contents/videos/.*?","note":"gpl2731\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3616#1\n\nEXAMPLES\nhttps://iwantclips.com/fetish/amateur_fetish\nhttps://www.reddit.com/domain/iwantclips.com/new/"},"IXBT_photo":{"img":"^(ixbt\\.photo\\/photo\\/[0-9]+\\/[0-9a-zA-Z]+\\/[0-9]+)(\\.(?:jpe?g|gif|png))$","to":"$1w$2","note":"Baton34V\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=580#16\n\nПРИМЕРЫ\nhttp://ixbt.photo/?id=user:309928\nhttp://ixbt.photo/?id=album:48286"},"j-p-g.net-p":{"link":"^(j-p-g\\.net/)if(/\\d{4}/\\d{2}/\\d{2}/\\d+\\.(?:jpe?g|png|gif|bmp))\\.html$","img":"^(j-p-g\\.net/)it(/\\d{4}/\\d{2}/\\d{2}/\\d+\\.(?:jpe?g|png|gif|bmp))$","to":"$1if$2","note":"Rodny\n\n!!!\nХостинг периодически \"лежит\".\n==\nHosting periodically \"down\".\n\n\nПРИМЕРЫ\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=2580#20"},"JD.com":{"link":"^item\\.jd\\.com/\\d+\\.html$","res":":\nreturn [...$._.matchAll(/src='([^']+)'\\s+data-url=/g)].map(i=>[i[1].replace('/n5/','/shaidan/')])","img":"^(img\\d+\\.360buyimg\\.com/+)[^/]+/(?:[^_/]+_)?(jfs/)","to":"$1shaidan/$2","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/130svfu/comment/jyil8u7\n\nEXAMPLES\nhttps://coll.jd.com/list.html?sub=42275\nhttps://list.jd.com/list.html?cat=737,752,760"},"jimcdn-CDN":{"img":"(image\\.jimcdn\\.com/app/cms/image/transf/dimension=)\\d+x\\d+(:format=\\w+/path/\\w+/image/\\w+/version/\\w+/\\w+\\.\\w+)","to":"$12048x2048$2","note":"Baton34V\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=340#7\n\nEXAMPLES\nhttps://www.janismeyer.de/referenzen/"},"JoeMonster":{"useimg":1,"link":"^joemonster\\.org/mg/show/\\d+/.+","res":":\nlet res=/\\?next/.test($.url[0])?$._.match(/ {\n let height = parseInt(el[2]);\n if (height > highest) {\n highest = height;\n output = el[1];\n }\n});\nreturn output;\n","note":"gpl2731\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3616#1\n\nEXAMPLES\nhttps://www.julesjordan.com/trial/categories/movies_3_d.html\nhttps://www.julesjordan.com/trial/dvds/dvds.html?sw=c&s=d"},"JumpShare|jmp.sh":{"link":"^(jmp\\.sh|jumpshare.com)\\/\\w\\/\\w+$","res":"data-original-image-src=\"([^\"]+)\"","note":"Rodny + Baton34V (fix)\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3720#13\n\n!!!\nПоддержки видео в фильтре на данный момент нет.\n==\nThere is no video support in the rule.\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/domain/jmp.sh/new"},"JustJared":{"img":"^(cdn\\.justjared(?:jr)?\\.com/wp-content/uploads/(?:\\d+/\\d+/)?[^/]+/)(?:headlines|thumbs/)(.+)","to":"$1$2","note":"gpl2731\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1140#16\n\nEXAMPLES\nhttps://www.justjaredjr.com/tags/movies/page/3/\nhttps://www.justjaredjr.com/photos/exclusive/\nhttps://www.justjaredjr.com/tags/television/page/2/\nhttps://www.justjaredjr.com/tags/selena-gomez/page/4/"},"kbin.social":{"link":"^[^/]+/m/[^/]+/[pt]/\\d+(?!.*#comments).*","loop":1,"img":"^([^/]+)/media/cache/(?:resolve/)?[^/]+(/.*)(?:\\.webp)?","to":":\nif($[1])return `//#${$[1]}/media media.${$[1]}#${$[2]}`\nconst t = this.node.closest('article,div');\nlet l = t&&t.querySelector('button[class=\"show-preview\"]')?.dataset.previewUrlParam;\nreturn l??t.querySelector('img')?.src??''","note":"imqswt\nhttps://www.reddit.com/r/imagus/comments/14cetar/comment/ju6b0lg\n\nEXAMPLES\nhttps://kbin.social/d/imgur.com\nhttps://kbin.social/microblog?p=1\nhttps://kbin.social/m/playingcards\nhttps://kbin.social/u/Teali0/threads\nhttps://kbin.social/m/starwarsmemes@lemmy.world/t/67916/it-s-treason-then\nhttps://kbin.social/search?q=redgifs"},"KG-Portal.ru-b":{"img":"^(media\\.kg-portal\\.ru/(?:images|movies|production|tv).+_\\d+)(s|t)\\.jpg$","to":"$1.jpg","note":"Rodny\n\nПРИМЕРЫ\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1140#15"},"Kick":{"link":"^(?:kick\\.com/(.*)\\?clip=)(.*)","loop":1,"url":"https://kick.com/api/v2/clips/$2","res":":\nkick_json=JSON.parse($._)\nkick_clip_playlist=kick_json.clip.video_url\nthis.TRG.IMGS_ext_data = [\n '//' + 'data:image/svg+xml,',\n ``\n]\nreturn 'imagus://extension'\n","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/15gc9ia/comment/jva48dp\nOLD\nhttps://www.reddit.com/r/imagus/comments/15gc9ia/updated_kickcom_clip_sieve\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/domain/kick.com/new/\nhttps://www.reddit.com/r/imagus/comments/15gc9ia/comment/juj1jjy\nhttps://www.reddit.com/r/imagus/comments/15gc9ia/comment/juizawf\nhttps://www.reddit.com/r/imagus/comments/15gc9ia/comment/jva1hd8"},"Kick_VoD":{"link":"^(?:kick\\.com/video/)([a-zA-Z0-9-]+).*","loop":1,"url":"https://kick.com/api/v1/video/$1","res":":\n// Valid options are:\n// 1080p60, 720p60, 480p30, 360p30, 160p30. It could vary by streamer.\nquality=\"1080p60\"\nkick_json=JSON.parse($._)\nsource_playlist = kick_json.source\nquality_playlist = quality + \"/playlist.m3u8\"\nvod_playlist = source_playlist.replace(\"master.m3u8\", quality_playlist)\nthis.TRG.IMGS_ext_data = [\n '//' + 'data:image/svg+xml,',\n ``\n]\nreturn 'imagus://extension'","note":"th3virus\nhttps://www.reddit.com/r/imagus/comments/11ldeys/sieve_for_kickcom_clips\n\n!!!\nНеобходимо правило для SMH (см.ЧаВо, п.12).\n==\nNeed a rule for SMH (see FAQ, p.12).\n\n\nПРИМЕРЫ / EXAMPLES\nhttps://www.reddit.com/domain/kick.com/new/\nhttps://www.reddit.com/r/imagus/comments/15gc9ia/comment/juj1jjy\nhttps://www.reddit.com/r/imagus/comments/15gc9ia/comment/juizawf"},"Kindgirls-x":{"link":"^kindgirls\\.com/(?:gallery|video)\\.php\\?id=\\d+","res":":\nif(/[i[1].replace('/m6','')])","img":"^(gals\\.kindgirls\\.com/[\\w\\d\\/]+/)m6/","to":"$1","note":"imqswt\nhttps://www.reddit.com/r/imagus/comments/160sikp/comment/jxszoj4\n\nEXAMPLES\nhttps://www.kindgirls.com/girls.php?id=1307\nhttps://www.kindgirls.com/gallery.php?id=9179\nhttps://www.kindgirls.com/photo-archive.php?s=05-2023\nhttps://www.kindgirls.com/video-archive.php?p=6"},"Kink-x-p":{"link":"^kink.com/shoot/\\d+","res":"\"trailer-src\" data-url=\"([^\"]+)","note":"gpl2731\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3616#1\n\nEXAMPLES\nhttps://www.kink.com/search?type=shoots&performerIds=33659&sort=published\nhttps://www.kink.com/search?type=shoots&tagIds=18-year-old&sort=published"},"Kino-Teatr.ru":{"useimg":1,"link":"^(kino-teatr\\.ru)/(?:(video/.+)|\\w+/(?:acter/[a-z]/(?:\\w+/)*\\d+/(?:foto|poster|(\\w+/))|movie/(?:\\w+/)*\\d+/(?:foto|poster|(\\w+/)))(?!/i?\\d+/$))","url":": (()=>{if(($[3]||$[4])&&!this.node.src)throw '';return $[3]?$[0].replace($[3],'foto/'):$[4]?$[0].replace($[4],'poster/'):$[0]})()","res":":\nif($[2])return $._.match(/data-video-src\\s*=\\s*\"([^\"]+)/)?.[1].replace(/^\\/.+/,'//'+$[1]+'$&')||''\nif(!this.ls)this.ls=0\nif(!this.kino_teatr_album)this.kino_teatr_album=[]\nconst h=[...new DOMParser().parseFromString($._,\"text/html\").querySelector('div[class=\"grid_content photo_album wrap_cols_4 width_100\"],div[class=\"big_content_block\"]').children]\nthis.kino_teatr_album.push(...h.filter(i=>i.className===\"block_wrap\").map(i=>{i=i.firstChild.firstChild;return [i.src.replace('pv_',''),i.title]}))\nthis.ls++\nif(h.some(i=>i.firstChild?.lastChild?.textContent==='>')&&this.ls<40)return {loop:h.find(i=>i.firstChild.lastChild.textContent==='>').firstChild.lastChild.href.replace(/\\/$/,'')}\n$=this.kino_teatr_album\ndelete this.kino_teatr_album, delete this.ls\nif(!$.length)$=h[0]?.querySelector('img[src]')?.src||''\nreturn $","img":"^(kino-teatr\\.ru/(?:movie|acter)/.+/)(?:pv|sm)_","to":"$1","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/z0zyox/comment/khyvx57\n\n\n!!!\nФильтр показывает альбомы Фото/Фотографии, Кадры и Постеры при наведении на соответстующие пункты меню на странице фильма или актера. Также в фильтре есть поддержка видео (трейлеры, тизеры, фрагменты).\n+\nНе у всех миниатюр на страницах поиска / списков фильмов есть более крупные изображения (постеры). В этом случае фильтр показывает желтый спиннер (ошибка). На странице фильма при наведении на постер фильтр показывает альбом кадров из этого фильма.\n\n\nПРИМЕРЫ\nhttps://www.kino-teatr.ru/video/trailer/\nhttps://www.kino-teatr.ru/kino/db/ros/movie/hud/\nhttps://www.kino-teatr.ru/mult/db/movie/\nhttps://www.kino-teatr.ru/kino/movie/ros/83776/annot/\nhttps://www.kino-teatr.ru/kino/movie/euro/7887/foto/\nhttps://www.kino-teatr.ru/kino/movie/hollywood/26843/poster/"},"Kinomania.ru":{"link":"^kinomania\\.ru/film/\\d+/(?:poster|frame)s(?!/\\d)","res":":\nreturn [...$._.matchAll(/data-type-over-img=\"((?!')[^\"]+)/g)].map(i=>[i[1]])","img":"^(?:(fs\\.kinomania\\.ru)/image(/file/(?:film|person)(?:_(?:poster|photo|frame))?/\\w+/\\w{2}/\\w{32}\\.)\\d+\\.\\d+\\.(jpe?g|png|gif)|(fs\\.kinomania\\.ru/image/file/(?:person|film)_wallpaper/\\w+/\\w{2}/\\w{32}\\.)\\d+\\.\\d+(\\.jpe?g|png|gif))","to":"$1$2$3\n$41920.1200$5\n$41920.1080$5\n$41680.1050$5\n$41600.1200$5\n$41440.900$5\n$41366.768$5\n$41280.1024$5\n$41280.960$5\n$41280.800$5\n$41024.768$5\n$4960.600$5\n$4800.600$5","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/z0zyox/comment/khy5fpl\nOLD\nhttps://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=1540#12\n\n!!!\nФильтр показывает в т.ч. альбомы кадров и постеров при наведении на соответстующие пункты меню.\n\nПРИМЕРЫ\nhttps://www.kinomania.ru/posters/\nhttps://www.kinomania.ru/people/357479\nhttps://www.kinomania.ru/film/742061/frames/\nhttps://www.kinomania.ru/people/194/frames/\nhttps://www.kinomania.ru/film/827133/people#filmMenu"},"Kinorium":{"link":"^\\w\\w\\.kinorium\\.com/(?:name/)?\\d+/gallery/","res":":\nreturn [...$._.matchAll(/data-photo='([^']+)/g)].flatMap((i,n)=>n?[[i[1]]]:[])","img":"^((?:\\w\\w-)?images(?:-s)?\\.kinorium.com/(?:movie|persona|user)/)\\d+(/\\d+\\.\\w+)","to":"$11080$2\n$1600$2\n$1480$2\n$1300$2\n$1180$2","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/z0zyox/comment/khnsi3h\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=50874&start=1600#7\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=3400#13\n\n\n!!!\nЕсть поддержка альбомов при наведении на все пункты меню \"Кадры\" (включая сам пункт \"Кадры\" на основной странице фильма/сериала).\n==\nThere is support for albums when hovering over all the \"Stills\" menu items (including the \"Stills\" item itself on the main movie/TV series page).\n\nПРИМЕРЫ / EXAMPLES\nhttps://ru.kinorium.com/116780/\nhttps://ru.kinorium.com/movies/home/\nhttps://ru.kinorium.com/search/?q=война\nhttps://en.kinorium.com/name/3581155/"},"Kinorium_poster":{"img":"^(images(?:-s)?\\.kinorium\\.com\\/movie\\/(?:shot|poster|backstage|promo|cover|fanart)\\/\\d+\\/)h\\d+(_\\d+\\.\\w+)","to":"$1w1500$2","note":"Imagus_fan\nhttps://www.reddit.com/r/imagus/comments/z0zyox/comment/khnsi3h\nOLD\nhttp://forum.ru-board.com/topic.cgi?forum=5&topic=48222&start=1640#13\n\nПРИМЕРЫ / EXAMPLES\nhttps://en.kinorium.com/2353464/gallery/\nhttps://ru.kinorium.com/1670490/gallery/poster/"},"Kinopoisk_block":{"url":"http://www.kinopoisk.ru/picture/$1/","res":"id=\"image\" src=\"([^\"]+)\"","img":"^(?:st|www)\\.kinopoisk\\.ru/images/(?:kadr|poster|wallpaper)/sm_(\\d+)(\\.(?:jpe?g|png|gif|bmp))$","note":"Rodny\n\nПРИМЕРЫ\nПравый блок с фотографиями, плакатами и обоями"},"Kinopoisk_gallery":{"link":"^kinopoisk\\.ru/film/(\\d+)/(?:shooting|stills|posters|wall|covers|fanart|promo|screenshots|concept)/$","res":":\nlet res=[];\nlet jsn1=JSON.parse($._.match(/