UNPKG

animepaste

Version:

Paste your favourite anime online

1,290 lines (1,284 loc) 53.6 kB
import * as path from 'node:path'; import path__default from 'node:path'; import OSS from 'ali-oss'; import onDeath from 'death'; import RPCClient from '@alicloud/pop-core'; import createDebug from 'debug'; import { c as context, l as logger, D as DOT } from './animepaste.0aae14a3.mjs'; import { M as MAX_RETRY } from './animepaste.50123400.mjs'; import fs from 'fs-extra'; import Webtorrent from 'webtorrent'; import { bold, lightBlue, green } from '@breadc/color'; import * as crypto from 'node:crypto'; import Progress from 'cli-progress'; const { Format, MultiBar, Presets, SingleBar } = Progress; function b64encode(text) { return Buffer.from(text, "utf-8").toString("base64"); } function b64decode(text) { return Buffer.from(text, "base64").toString(); } async function hashFile(filepath) { const fileBuffer = await fs.readFile(filepath); const hashSum = crypto.createHash("sha256"); hashSum.update(fileBuffer); return hashSum.digest("hex"); } function createSingleProgress() { return new SingleBar( { format: " {bar} {percentage}% | ETA: {eta}s", clearOnComplete: true }, Presets.shades_grey ); } function createProgressBar(option = {}) { const multibar = new MultiBar( { format(_options, params, payload) { const formatValue = Format.ValueFormat; const formatBar = Format.BarFormat; const percentage = Math.floor(params.progress * 100); const context = { bar: formatBar(params.progress, _options), percentage: formatValue(percentage, _options, "percentage"), total: params.total, value: params.value // eta: formatValue(params.eta, _options, 'eta'), // duration: formatValue(elapsedTime, _options, 'duration'), }; const suffix = option.suffix ? " | " + option.suffix(params.value, params.total, payload) : ""; return payload.title !== void 0 && typeof payload.title === "string" ? ` ${payload.title}` : ` ${context.bar} ${context.percentage}%` + suffix; }, stopOnComplete: false, clearOnComplete: true, hideCursor: true, forceRedraw: true }, Presets.shades_grey ); multibar.on("stop", () => { for (const line of multibar.loggingBuffer) { console.log(line.substring(0, line.length - 1)); } }); return { finish() { multibar.stop(); }, println(text) { multibar.log(text + "\n"); }, create(name, length) { const empty = multibar.create(length, 0, {}, { title: name }); const title = multibar.create(length, 0, {}, { title: name }); const progress = multibar.create(length, 0); title.update(0, { title: bold(name) }); empty.update(0, { title: "" }); return { update(value, payload) { empty.update(value, { title: "" }); title.update(value, { title: bold(name) }); progress.update(value, payload); }, increment(value, payload) { empty.increment(value, { title: "" }); title.increment(value, { title: bold(name) }); progress.increment(value, payload); } }; } }; } class Store { constructor(platform) { this.platform = platform; } async init() { } async fetchVideoInfo(videoId) { const localVideo = await context.videoStore.findVideo( this.platform, videoId ); if (localVideo) { return localVideo; } else { return this.doFetchVideoInfo(videoId); } } async searchLocalVideo(filename) { const title = path__default.basename(filename); return (await context.videoStore.list()).filter( (l) => l.title === title && l.platform === this.platform ); } async listLocalVideos() { return (await context.videoStore.list()).filter( (l) => l.platform === this.platform ); } async deleteVideo(videoId) { const localVideo = await context.videoStore.findVideo( this.platform, videoId ); if (localVideo) { await this.doDelete(videoId); await context.videoStore.deleteVideo(this.platform, videoId); } } async upload(filepath, option = {}) { filepath = await context.copyToCache(filepath); const title = path__default.basename(filepath); const hash = await hashFile(filepath); for (const log of await context.videoStore.list()) { if (log.platform === this.platform && log.title === title && (!log.source.hash || log.source.hash === hash)) { return log; } } const videoId = await this.doUpload(filepath, option); if (videoId) { const info = await this.doFetchVideoInfo(videoId, option); if (!info) throw new Error("Fail to upload"); info.source.magnetId = option.magnetId; info.source.directory = context.encodePath(path__default.dirname(filepath)); info.source.hash = hash; await context.videoStore.createVideo(info); return info; } else { throw new Error("Fail to upload"); } } } const debug$1 = createDebug("anime:ali"); const TIMEOUT = 10 * 1e3; class AliStore extends Store { constructor(config) { super("ali"); this.accessKeyId = config.accessKeyId; this.accessKeySecret = config.accessKeySecret; this.regionId = config.regionId; this.vodClient = new RPCClient({ accessKeyId: this.accessKeyId, accessKeySecret: this.accessKeySecret, endpoint: "http://vod." + this.regionId + ".aliyuncs.com", apiVersion: "2017-03-21" }); } async createUplodaVideo(title, file) { for (let i = 0; i < MAX_RETRY; i++) { try { const res = await Promise.race([ this.vodClient.request( "CreateUploadVideo", { Title: title, FileName: file }, { timeout: TIMEOUT } ), new Promise((res2) => setTimeout(() => res2(void 0), TIMEOUT * 6)) ]); if (res) { res.UploadAuth = JSON.parse(b64decode(res.UploadAuth)); res.UploadAddress = JSON.parse(b64decode(res.UploadAddress)); return res; } } catch (error) { debug$1(error); return void 0; } } logger.error(`Create Upload ${title} timeout`); return void 0; } async doUpload(filepath, option = {}) { debug$1(`Upload: ${filepath}`); const resp = await this.createUplodaVideo( path__default.basename(filepath), filepath ); if (!resp) { throw new Error("Fail creating upload video"); } else { debug$1(resp); } const store = new OSS({ endpoint: resp.UploadAddress.Endpoint, bucket: resp.UploadAddress.Bucket, accessKeyId: resp.UploadAuth.AccessKeyId, accessKeySecret: resp.UploadAuth.AccessKeySecret, stsToken: resp.UploadAuth.SecurityToken, async refreshSTSToken() { return { accessKeyId: resp.UploadAuth.AccessKeyId, accessKeySecret: resp.UploadAuth.AccessKeySecret, stsToken: resp.UploadAuth.SecurityToken }; }, refreshSTSTokenInterval: 60 * 60 * 1e3 }); const formatSize = (size) => (size / 1024 / 1024).toFixed(1) + " MB"; const multibar = createProgressBar({ suffix(_value, _total, payload) { const progress = `${formatSize(payload.value)} / ${formatSize( payload.total )}`; const speed = payload.speed ? " | Speed: " + formatSize(payload.speed) + "/s" : ""; return progress + speed; } }); const cancel = onDeath(async () => { option.retry = void 0; logger.error("Process is terminated"); await this.doDelete(resp.VideoId); logger.info("Clear OK"); }); try { const bar = multibar.create(path__default.basename(filepath), 1); const ossRes = await store.multipartUpload( resp.UploadAddress.FileName, filepath, { progress(p, c) { bar.update(p, { value: Number((c.fileSize * p).toFixed(0)), total: c.fileSize }); } } ); debug$1(ossRes); return resp.VideoId; } catch (err) { debug$1(err); logger.error("Upload error, please DO NOT exit!"); await this.doDelete(resp.VideoId); logger.info("Clear OK"); if (option.retry === void 0 || option.retry === 0) { return void 0; } else { option.retry -= 1; return this.doUpload(filepath, option); } } finally { cancel(); multibar.finish(); } } async doDelete(videoId) { try { await this.vodClient.request("DeleteVideo", { VideoIds: videoId }, {}); return true; } catch { return false; } } async doFetchVideoInfo(videoId) { try { const [resp, play] = await Promise.all([ this.vodClient.request( "GetVideoInfo", { VideoId: videoId }, { timeout: TIMEOUT } ), this.vodClient.request( "GetPlayInfo", { VideoId: videoId }, { timeout: TIMEOUT } ) ]); debug$1(resp, play); return { platform: "ali", videoId, title: resp.Video.Title, cover: resp.Video.CoverURL, createdAt: resp.Video.CreationTime, playUrl: (play?.PlayInfoList?.PlayInfo ?? []).map((p) => p?.PlayURL).filter(Boolean), source: {} }; } catch (error) { debug$1(error); return void 0; } } } const createAliStore = async () => { const config = await context.getStoreConfig("ali"); if (!Boolean(config.accessKeyId) || !Boolean(config.accessKeySecret) || !Boolean(config.regionId)) { throw new Error("Fail to load Ali OSS config"); } const ali = new AliStore(config); await ali.init(); return ali; }; function useStore(type) { if (type === "ali") { return createAliStore; } else { throw new Error(`Can not find store "${type}"`); } } const Trackers = [ "udp://retracker01-msk-virt.corbina.net/announce", "udp://open.stealth.si/announce", "udp://tracker.openbittorrent.com/announce", "udp://tracker1.bt.moack.co.kr/announce", "udp://pow7.com/announce", "udp://tracker2.dler.com/announce", "http://torrentzilla.org/announce", "http://tracker.tfile.me:80/announce", "http://tk.greedland.net/announce", "http://torrent-team.net:80/announce.php", "http://torrentzilla.org:80/announce.php", "http://tracker.torrentyorg.pl/announce", "http://milanesitracker.tekcities.com/announce", "https://trackme.theom.nz/announce", "http://tracker.anirena.com:80/announce", "http://opentracker.xyz:80/announce", "wss://tracker.openwebtorrent.com:443/announce", "http://tracker.gbitt.info/announce", "http://1337.abcvg.info:80/announce", "http://mediaclub.tv:80/announce.php", "https://tracker.nanoha.org/announce", "https://carbon-bonsai-621.appspot.com:443/announce", "https://tracker.imgoingto.icu:443/announce", "https://tp.m-team.cc:443/announce.php", "https://tr.ready4.icu/announce", "http://1337.abcvg.info/announce", "https://tr.ready4.icu:443/announce", "https://tracker.gbitt.info/announce", "http://tracker.anirena.com/announce", "https://tracker.lilithraws.cf:443/announce", "http://tracker.bt4g.com:2095/announce", "https://tracker.foreverpirates.co/announce", "https://tracker.nanoha.org:443/announce", "https://tp.m-team.cc/announce.php", "https://tracker.parrotlinux.org/announce", "https://tracker.gbitt.info:443/announce", "http://trackme.theom.nz:80/announce", "https://tracker.nitrix.me:443/announce", "http://60-fps.org/bt:80/announce.php", "https://t1.tokhmi.xyz:443/announce", "http://tracker.gbitt.info:80/announce", "https://tracker.foreverpirates.co:443/announce", "https://1337.abcvg.info/announce", "https://trackme.theom.nz:443/announce", "https://tracker.lilithraws.cf/announce", "https://1337.abcvg.info:443/announce", "https://carbon-bonsai-621.appspot.com/announce", "https://tracker.kuroy.me:443/announce", "http://tracker.anonwebz.xyz:8080/announce", "https://tracker.nitrix.me/announce", "http://mediaclub.tv/announce", "http://tracker.torrentyorg.pl:80/announce", "http://www.xwt-classics.net/announce.php", "http://t.nyaatracker.com/announce", "http://data-bg.net/announce.php", "http://www.all4nothin.net/announce.php", "http://t.nyaatracker.com:80/announce", "http://mediaclub.tv/announce.php", "https://tr.torland.ga/announce", "https://tr.torland.ga:443/announce", "https://tracker.parrotsec.org:443/announce", "http://60-fps.org/bt/announce.php", "https://tracker.tamersunion.org/announce", "http://www.all4nothin.net:80/announce.php", "http://torrentsmd.com:8080/announce", "http://bt.rghost.net/announce", "http://btx.anifilm.tv/announce.php", "https://tracker.kuroy.me/announce", "https://tracker.parrotsec.org/announce", "udp://104.143.10.186:8000/announce", "http://all4nothin.net/announce.php", "http://104.143.10.186:8000/announce", "http://torrent.mp3quran.net/announce.php", "udp://t.nyaatracker.com:80/announce", "http://masters-tb.com/announce.php", "http://tracker.ali213.net:8080/announce", "http://pow7.com:443/announce", "https://tracker.tamersunion.org:443/announce", "http://atrack.pow7.com/announce", "http://nyaa.tracker.wf:7777/announce", "http://t.acg.rip:6699/announce", "https://bittorrent.gongt.net:443/announce", "http://masters-tb.com:80/announce.php", "http://tracker.pow7.com/announce", "http://datascene.net/announce.php", "udp://51.68.199.47:6969/announce", "http://t2.pow7.com/announce", "http://secure.pow7.com:80/announce", "http://tracker.trackerfix.com/announce", "http://atrack.pow7.com:80/announce", "http://51.79.71.167/announce", "https://tracker.sloppyta.co/announce", "udp://tracker.trackerfix.com:81/announce", "http://nyaa.tracker.wf:7777/announce ", "http://t1.pow7.com/announce", "http://tracker.publictorrent.net/announce", "http://54.39.98.124/announce", "http://104.28.16.69/announce", "http://tr.cili001.com:8070/announce", "http://t2.pow7.com:80/announce", "http://pow7.com/announce", "http://secure.pow7.com/announce", "http://51.38.230.101/announce", "udp://149.28.47.87:1738/announce", "udp://45.33.83.49:6969/announce", "http://bt.ali213.net:8080/announce", "udp://vibe.sleepyinternetfun.xyz:1738/announce", "udp://199.217.118.72:6969/announce", "http://grifon.info/announce", "http://opentracker.xyz/announce", "https://tk.mabo.ltd:443/announce", "http://tracker.tfile.me/announce", "http://grifon.info:80/announce", "https://trakx.herokuapp.com:443/announce", "wss://tracker.sloppyta.co:443/announce", "http://tracker.sloppyta.co/announce", "http://t1.pow7.com:80/announce", "http://googer.cc:1337/announce", "http://fxtt.ru/announce", "https://tracker.sloppyta.co:443/announce", "udp://public.publictracker.xyz:6969/announce", "http://tracker.zerobytes.xyz:1337/announce", "udp://tracker-udp.gbitt.info:80/announce", "http://sukebei.tracker.wf:8888/announce", "udp://tracker.moeking.me:6969/announce", "udp://tracker.zerobytes.xyz:1337/announce", "http://tr.bangumi.moe/announce", "http://www.zone-torrent.net/announce.php", "udp://185.21.216.185:6969/announce", "udp://bt1.archive.org:6969/announce", "https://open.acgnxtracker.com/announce", "http://tracker.dler.org:6969/announce", "udp://185.92.223.36:6969/announce", "http://share.camoe.cn:8080/announce", "http://tracker.minglong.org:8080/announce", "udp://tracker-udp.anirena.com:80/announce", "http://openbittorrent.com/announce", "http://93.158.213.92:1337/announce", "http://torrent-team.net/announce.php", "udp://37.59.48.81:6969/announce", "http://anidex.moe:6969/announce", "udp://163.172.170.127:6969/announce", "udp://tracker.dler.org:6969/announce", "http://198.251.84.144/announce", "http://torrents.linuxmint.com/announce.php", "http://buny.uk:6969/announce", "http://open.acgnxtracker.com/announce", "udp://discord.heihachi.pw:6969/announce", "http://open.acgnxtracker.com:80/announce", "udp://148.251.53.72:6969/announce", "http://milanesitracker.tekcities.com:80/announce", "http://trk.publictracker.xyz:6969/announce", "udp://91.121.145.207:6969/announce", "http://ipv4announce.sktorrent.eu:6969/announce", "http://193.37.214.12:6969/announce", "udp://tracker.opentrackr.org:1337/announce", "http://tracker2.dler.org:80/announce", "udp://anidex.moe:6969/announce", "udp://tracker2.dler.org:80/announce", "udp://195.201.94.195:6969/announce", "udp://open.stealth.si:80/announce", "udp://tracker.opentrackr.org:1337/announce ", "udp://217.12.218.177:2710/announce", "http://tracker.noobsubs.net:80/announce", "udp://144.76.35.202:6969/announce", "http://tracker.pussytorrents.org:3000/announce", "udp://157.90.169.123:80/announce", "udp://sugoi.pomf.se:80/announce", "http://kinorun.com/announce.php", "http://tracker2.dler.org/announce", "http://185.148.3.231/announce", "udp://212.83.181.109:6969/announce", "http://tracker3.dler.org:2710/announce", "http://open.touki.ru/announce", "http://tracker.sloppyta.co:80/announce", "http://tracker.lelux.fi/announce", "udp://144.76.82.110:6969/announce", "udp://tracker.lelux.fi:6969/announce", "udp://tracker-de.ololosh.space:6969/announce", "udp://tracker.ololosh.space:6969/announce", "http://vps02.net.orel.ru:80/announce", "http://tracker.lelux.fi:80/announce", "udp://camera.lei001.com:6969/announce", "udp://109.248.43.36:6969/announce", "udp://185.8.156.2:6969/announce", "https://tracker.lelux.fi/announce", "http://bt.1000.pet:2712/announce", "http://kinorun.com:80/announce.php", "http://private.minimafia.nl:443/announce", "udp://bt.okmp3.ru:2710/announce", "http://185.230.4.150:1337/announce", "udp://193.34.92.5:80/announce", "http://prestige.minimafia.nl:443/announce", "http://tracker.acgnx.se/announce", "http://opentracker.acgnx.se:80/announce", "http://opentracker.acgnx.se/announce", "udp://tracker.tiny-vps.com:6969/announce", "http://tracker.tiny-vps.com:6969/announce", "udp://retracker.sevstar.net:2710/announce", "http://bt.zlofenix.org:81/announce", "http://95.107.48.115/announce", "http://www.worldboxingvideoarchive.com/announce.php", "udp://tracker.bitsearch.to:1337/announce", "udp://tracker.monitorit4.me:6969/announce", "udp://tracker.dler.com:6969/announce", "udp://tracker.0x.tf:6969/announce", "http://tracker.acgnx.se:80/announce", "udp://fe.dealclub.de:6969/announce", "http://tracker3.torrentino.com/announce", "http://www.thetradersden.org/forums/tracker:80/announce.php", "http://h4.trakx.nibba.trade:80/announce", "udp://tracker.srv00.com:6969/announce", "http://tracker.noobsubs.net/announce", "udp://movies.zsw.ca:6969/announce", "udp://tracker2.dler.com:80/announce", "http://tracker.tambovnet.org/announce.php", "https://trakx.herokuapp.com/announce", "udp://tracker.auctor.tv:6969/announce", 'http://opentracker.acgnx.com:6869/announce"', "http://tracker.publictorrent.net:80/announce", "http://bt.unionpeer.org:777/announce", "udp://tracker0.ufibox.com:6969/announce", "http://h4.trakx.nibba.trade/announce", "https://open.kickasstracker.com:443/announce", "https://tracker.publictorrent.net/announce", "http://tracker.loadbt.com:6969/announce", "http://tracker.bittor.pw:1337/announce", "https://torrent.ubuntu.com/announce", "http://bt.okmp3.ru:2710/announce", "udp://tracker.altrosky.nl:6969/announce", "https://tracker.publictorrent.net:443/announce", "http://torrentzilla.org:80/announce", "http://tracker.moeking.me:6969/announce", "http://www.thetradersden.org/forums/tracker/announce.php", "https://open.kickasstracker.com/announce", "http://torrentzilla.org/announce.php", "http://tracker.shittyurl.org/announce", "http://opentracker.acgnx.com:6869/announce", "http://bt-tracker.gamexp.ru:2710/announce", "http://finbytes.org/announce.php", "http://concen.org:6969/announce", "http://torrent.ubuntu.com:6969/announce", "udp://tracker.kali.org:6969/announce", "https://torrents.linuxmint.com/announce.php", "http://tracker2.torrentino.com/announce", "http://open.miotracker.com/announce", "http://share.hkg-fansub.info/announce.php", "http://tracker.opentrackr.org:1337/announce", "http://opentrackr.org:1337/announce", "http://t.overflow.biz:6969/announce", "http://siambit.org/announce.php", "http://tracker9.bol.bg/announce.php", "udp://bubu.mapfactor.com:6969/announce", "http://fxtt.ru:80/announce", "udp://concen.org:6969/announce", "udp://opentrackr.org:1337/announce", "https://tracker.iriseden.fr:443/announce", "udp://openbittorrent.com:80/announce", "udp://mts.tvbit.co:6969/announce", "https://seeders-paradise.org/announce", "http://openbittorrent.com:80/announce", "udp://admin.videoenpoche.info:6969/announce", "http://tracker.gigatorrents.ws:2710/announce", "udp://6ahddutb1ucc3cp.ru:6969/announce", "udp://tracker.haynet.io:6969/announce", "https://tracker.lelux.fi:443/announce", "http://alltorrents.net/bt/announce.php", "http://irrenhaus.dyndns.dk/announce.php", "http://bttracker.debian.org:6969/announce", "http://trun.tom.ru/announce", "udp://rutorrent.frontline-mod.com:6969/announce", "http://siambit.com/announce.php", "udp://engplus.ru:6969/announce", "https://tracker.bt-hash.com/announce", "http://vps02.net.orel.ru/announce", "http://baibako.tv/announce", "udp://tracker.pomf.se:80/announce", "udp://bt2.archive.org:6969/announce", "https://tracker.imgoingto.icu/announce", "http://mvgroup.org:2710/announce", "http://home.yxgz.club:6969/announce", "udp://nagios.tks.sumy.ua:80/announce", "udp://tracker.bittor.pw:1337/announce", "http://www.tribalmixes.com/announce.php", "https://tracker.iriseden.fr/announce", "http://www.mvgroup.org:2710/announce", "udp://www.mvgroup.org:2710/announce", "http://mixfiend.com:6969/announce", "http://t.jaekr.sh:6969/announce", "https://tracker.bt-hash.com:443/announce", "http://bt.nnm-club.info:2710/announce", "http://tracker.xdvdz.com:2710/announce", "http://www.tvnihon.com:6969/announce", "udp://tracker.sylphix.com:6969/announce", "http://bt.rghost.net:80/announce", "http://data-bg.net:80/announce.php", "http://carbon-bonsai-621.appspot.com:80/announce", "http://60-fps.org:80/bt:80/announce.php", "http://btx.anifilm.tv:80/announce.php", "http://www.xwt-classics.net:80/announce.php", "http://all4nothin.net:80/announce.php", "http://torrent.mp3quran.net:80/announce.php", "http://51.79.71.167:80/announce", "http://tracker.trackerfix.com:80/announce", "http://pow7.com:80/announce", "http://tracker.pow7.com:80/announce", "http://proaudiotorrents.org/announce.php", "http://open.trackerlist.xyz/announce", "http://107.152.127.9:6969/announce", "http://tracker.kali.org:6969/announce", "https://tracker.shittyurl.org:443/announce", "http://bt.ali213.net:8000/announce", "http://185.185.40.129:6969/announce", "udp://173.212.223.237:6969/announce", "udp://mail.realliferpg.de:6969/announce", "http://www.zone-torrent.net:80/announce.php", "http://open.acgtracker.com:1096/announce", "udp://open.publictracker.xyz:6969/announce", "http://tracker.frozen-layer.net:6969/announce.php", "http://tracker.tambovnet.org:80/announce.php", "http://tracker.ali213.net:8000/announce", "http://torrent.rus.ec:2710/announce", "http://95.107.48.115:80/announce", "udp://78.30.254.12:2710/announce", "https://torrents.linuxmint.com:443/announce.php", "http://www.shnflac.net:80/announce.php", "http://open.trackerlist.xyz:80/announce", "http://www.worldboxingvideoarchive.com:80/announce.php", "http://torrenttracker.nwc.acsalaska.net:6969/announce", "https://tracker.shittyurl.org/announce", "udp://cyteam.ru:6969/announce", "http://tr.kxmp.cf:80/announce", "https://torrent.ubuntu.com:443/announce", "http://trun.tom.ru:80/announce", "http://irrenhaus.dyndns.dk:80/announce.php", "udp://tracker.leechersparadise.org:6969/announce", "http://siambit.com:80/announce.php", "http://torrent.fedoraproject.org:6969/announce", "udp://code2chicken.nl:6969/announce", "http://retracker.telecom.by:80/announce", "http://open.touki.ru:80/announce.php", "udp://cutiegirl.ru:6969/announce", "udp://tracker.blacksparrowmedia.net:6969/announce", "http://baibako.tv:80/announce", "http://retracker.sevstar.net:2710/announce", "http://bluebird-hd.org:80/announce.php", "udp://tracker.breizh.pm:6969/announce", "http://www.tribalmixes.com:80/announce.php", "http://tracker.breizh.pm:6969/announce", "http://retracker.spark-rostov.ru:80/announce", "http://tracker1.bt.moack.co.kr/announce", "http://www.legittorrents.info/announce.php", "https://104.28.17.69/announce", "udp://tsundere.pw:6969/announce", "udp://198.100.149.66:6969/announce", "udp://51.15.41.46:6969/announce", "udp://52.58.128.163:6969/announce", "udp://p4p.arenabg.com:1337/announce", "udp://tr2.ysagin.top:2710/announce", "http://tracker810.xyz:11450/announce", "udp://47.ip-51-68-199.eu:6969/announce", "http://retracker.spark-rostov.ru/announce", "udp://public.tracker.vraphim.com:6969/announce", "http://tracker.vraphim.com:6969/announce", "http://tr.kxmp.cf/announce", "http://tracker1.bt.moack.co.kr:80/announce", "http://tracker.gcvchp.com:2710/announce", "udp://tracker.zemoj.com:6969/announce", "udp://tr.bangumi.moe:6969/announce", "https://tr.bangumi.moe:6969/announce", "udp://45.76.92.209:6969/announce", "http://tracker.internetwarriors.net:1337/announce", "http://retracker.ohys.net/announce", "http://tracker.etree.org:6969/announce", "http://open.touki.ru/announce.php", "http://p4p.arenabg.com:1337/announce", "http://tracker.anirena.com:80/b16a15d9a238d1f59178d3614b857290/announce", "udp://51.15.2.221:6969/announce", "udp://tracker.internetwarriors.net:1337/announce ", "udp://156.234.201.18:80/announce", "http://www.legittorrents.info:80/announce.php", "udp://tracker.internetwarriors.net:1337/announce", "udp://tracker.filemail.com:6969/announce", "udp://open.tracker.cl:1337/announce", "https://tr.fuckbitcoin.xyz/announce", "https://tr.doogh.club/announce", "https://tr.highstar.shop/announce", "https://t.btcland.xyz/announce", "https://t1.tokhmi.xyz/announce", "http://61.216.166.123:6969/announce", "http://180.97.219.76:8070/announce", "https://bittorrent.gongt.net/announce", "https://tr.burnabyhighstar.com/announce", "http://207.241.231.226:6969/announce", "http://trackme.theom.nz/announce", "http://51.81.200.170:6699/announce", "https://tracker.loligirl.cn/announce", "http://47.55.181.68:6969/announce", "http://163.172.170.127:6969/announce", "http://62.210.217.207:1337/announce", "http://157.90.169.123/announce", "http://95.217.161.135/announce", "http://retracker.joxnet.ru/announce", "http://217.25.93.205:2710/announce", "https://tracker.madassnews.net/announce", "http://tracker.ipv6tracker.org:80/announce", "http://torrent.arjlover.net:2710/announce", "http://retracker.joxnet.ru:80/announce", "http://rt.optizone.ru/announce", "http://207.241.226.111:6969/announce", "udp://tracker.internetwarriors.net:1337/announce -", "http://tracker.ipv6tracker.org/announce", "http://home.yxgz.vip:6969/announce", "http://tracker.torrentbytes.net:80/announce.php", "udp://tracker1.bt.moack.co.kr:80/announce", "http://fosstorrents.com:6969/announce", "http://5.182.206.171:1096/announce", "http://65.21.48.148:6969/announce", "udp://37.235.174.46:2710/announce", "http://78.30.254.12:2710/announce", "udp://tracker4.itzmx.com:2710/announce", "udp://retracker.lanta-net.ru:2710/announce", "http://bithq.org:80/announce.php", "http://bithq.org/announce.php", "http://bt.3kb.xyz/announce", "http://filetracker.xyz:11451/announce", "http://big-boss-tracker.net/announce.php", "http://bt.3kb.xyz:80/announce", "http://156.234.201.18/announce", "http://tracker.frozen-layer.net:6969/announce", "http://tracker.openbittorrent.com/announce", "udp://9.rarbg.me:2890/announce", "udp://9.rarbg.com:2760/announce", "udp://9.rarbg.me:2900/announce", "udp://9.rarbg.com:2890/announce", "udp://9.rarbg.me:2750/announce", "udp://9.rarbg.me:2800/announce", "udp://9.rarbg.me:2820/announce", "udp://9.rarbg.me:2870/announce", "udp://9.rarbg.to:2860/announce", "http://tracker.openbittorrent.com:80/announce", "http://bt.edwardk.info:6969/announce", "http://217.30.10.54:6969/announce", "http://177.62.89.89:6969/announce", "http://91.230.210.146/announce", "udp://tracker.yoshi210.com:6969/announce", "udp://tracker3.itzmx.com:6961/announce", "http://tracker3.itzmx.com:6961/announce", "http://tracker2.itzmx.com:6961/announce", "udp://tracker2.itzmx.com:6961/announce", "http://tracker1.itzmx.com:8080/announce", "udp://tracker1.itzmx.com:8080/announce", "udp://134.209.1.127:6969/announce", "http://tracker4.itzmx.com:2710/announce", "http://bt.100.pet:2710/announce", "http://datascene.net:80/announce.php", "http://bt2.edwardk.info:6969/announce", "http://tr.bangumi.moe:6969/announce", "http://tracker.bz:80/announce", "http://tracker.bz/announce", "http://bt02.nnm-club.info:2710/announce", "http://tracker.yoshi210.com:6969/announce", "http://bt02.nnm-club.cc:2710/announce", "http://ns3107607.ip-54-36-126.eu:6969/announce", "http://bt.beatrice-raws.org/announce", "https://tr.highstar.shop:443/announce", "https://t.btcland.xyz:443/announce", "https://tr.fuckbitcoin.xyz:443/announce", "https://tr.doogh.club:443/announce", "https://tr.burnabyhighstar.com:443/announce", "http://54.36.126.137:6969/announce", "https://tracker.loligirl.cn:443/announce", "http://tracker1.torrentino.com/announce", "http://rt.optizone.ru:80/announce", "http://retracker.telecom.by/announce", "udp://tracker.openbittorrent.com:80/announce", "http://tracker.skyts.net:6969/announce", "http://tracker.skyts.cn:6969/announce", "http://tracker.skyts.cc:6969/announce", "udp://tracker.skyts.net:6969/announce", "https://tracker.vectahosting.eu:2053/announce", "https://tracker.vectahosting.eu:8443/announce", "https://tr.bangumi.moe:9696/announce", "https://www.wareztorrent.com:443/announce", "https://tracker.lilithraws.org/announce", "https://www.wareztorrent.com/announce", "http://www.wareztorrent.com/announce", "udp://qg.lorzl.gq:2710/announce", "http://www.wareztorrent.com:80/announce", "udp://mail.moneysfast.com:6969/announce", "http://tracker.lintk.me:2710/announce", "udp://qg.lorzl.gq:6969/announce", "https://tracker.nyaa.tk/announce", "http://nyaa.tracker.wf:7777/announce", "udp://tracker.trackerfix.com:82/announce", "udp://9.rarbg.me:2780/announce", "udp://9.rarbg.me:2930/announce", "udp://151.80.120.114:2710/announce", "udp://9.rarbg.com:2740/announce", "udp://9.rarbg.me:2960/announce", "udp://9.rarbg.com:2900/announce", "udp://9.rarbg.me:2840/announce", "udp://9.rarbg.com:2830/announce", "udp://9.rarbg.me:2710/announce", "udp://9.rarbg.to:2710/announce", "http://52.70.94.249:2710/announce", "http://tracker.mywaifu.best:6969/announce", "http://177.68.27.127:6969/announce", "http://tracker.nucozer-tracker.ml:2710/announce", "http://93.88.129.16/announce", "https://grifon.info:80/announce", "http://bt.edwardk.info:4040/announce", "http://45.154.253.7/announce", "https://tr.kxmp.cf:80/announce", "https://tracker.moxing.party:6969/announce", "http://anidex.moe:6969/announce+ ", "udp://tracker.edkj.club:6969/announce", "udp://tracker.ilibr.org:80/announce", "http://222.217.124.37:6969/announce", "http://163.172.209.40/announce", "http://185.185.40.51:6969/announce", "http://open.tracker.ink:6969/announce", "http://torrent.resonatingmedia.com:6969/announce", "https://tracker.lilithraws.org:443/announce", "http://carbon-bonsai-621.appspot.com/announce", "http://51.222.84.64:1337/announce", "http://tracker.shuntv.net/announce.php", "http://tracker.pimp4003.net/announce", "http://bluebird-hd.org/announce.php", "http://www.shnflac.net/announce.php", "http://trackers.ibzu.me/announce.php", "http://tracker.edkj.club:6969/announce", "http://tracker.istole.it/announce", "http://torrent-tracker.ru/announce.php", "http://13.234.33.230:2710/announce", "http://tracker.kamigami.org:2710/announce", "udp://tracker.kamigami.org:2710/announce", "http://179.225.220.141:6969/announce", "http://tracker.ygsub.com:6969/announce", "http://ehtracker.org/1104308/announce", "https://tracker.coalition.space:443/announce", "https://tracker.coalition.space/announce", "http://bt1.xxxxbt.cc:6969/announce", "http://t1.leech.ie/announce", "http://t3.leech.ie/announce", "http://222.217.127.185:6969/announce", "http://222.217.127.231:6969/announce", "http://ftp.pet:7777/announce", "https://tracker.babico.name.tr/announce", "http://185.185.40.42:6969/announce", "http://t2.leech.ie/announce", "http://54.93.194.194:2710/announce", "https://tracker.yarr.pt/announce", "http://61.216.109.95:6969/announce", "http://212.6.3.67/announce", "udp://185.181.60.67:80/announce", "http://peersteers.org/announce", "http://45.154.253.4/announce", "udp://tracker.swateam.org.uk:2710/announce", "http://open.acgtracker.com:1096/announce", "http://177.198.120.30:6969/announce", "http://45.154.253.5/announce", "http://45.154.253.10/announce", "http://51.81.46.170:6969/announce", "udp://51.81.46.170:6969/announce", "http://opentracker.i2p.rocks:6969/announce", "udp://opentracker.i2p.rocks:6969/announce", "udp://ipv4.tracker.harry.lu:80/announce", "http://tk.nvacg.org:3333/announce", "https://o-unkusrx.cloud.okteto.net/announce", "http://tracker.srv00.com:6969/announce", "http://btracker.top:11451/announce", "https://opentracker.i2p.rocks/announce", "https://tracker.moeblog.cn/announce", "http://tracker.hiyj.cn/announce", "http://tracker.tyker.xyz:8080/announce", "udp://jeremylee.sh:6969/announce", "http://bt.endpot.com/announce", "http://tracker.dmcomic.org:2710/announce", "http://bt.edwardk.info:676/announce", "http://bt.edwardk.info:12891/announce", "http://bt.edwardk.info:6767/announce", "http://bt.edwardk.info:63124/announce", "http://13.234.33.230:11451/announce", "http://52.70.94.249:11451/announce", "http://159.69.59.237:6969/announce", "http://95.217.167.10:6969/announce", "http://tracker.corpscorp.online/announce", "http://222.217.125.254:6969/announce", "http://222.217.124.10:6969/announce", "http://37.235.174.46:2710/announce", "https://docker-tracker-production.up.railway.app/announce", "http://tracker.corpscorp.online:80/announce", "http://0d.kebhana.mx:443/announce", "http://tracker.swarm3.network:6969/announce", "https://opentracker.xyz/announce", "https://opentracker.xyz:443/announce", "https://opentracker.cc/announce", "http://tracker.3304399.com:6969/announce", "http://tracker.openzim.org:80/announce", "http://222.86.118.180:6969/announce", "http://13.234.33.230/announce", "http://159.65.28.12:6969/announce", "http://187.74.10.252:6969/announce", "http://159.69.59.228:6969/announce", "https://tr.abir.ga/announce", "http://bt.edwardk.info:2710/announce", "http://155.248.200.105/announce", "http://45.154.253.8/announce", "http://222.217.124.84:6969/announce", "http://52.70.94.249/announce", "http://187.74.10.162:6969/announce", "udp://tracker.btsync.gq:2710/announce", "http://tracker.btsync.gq:233/announce", "https://tr.steins-gate.moe:2096/announce", "http://54.93.194.194:11451/announce", "udp://tr.cili001.com:8070/announce", "https://chihaya-heroku.120181311.xyz/announce", "http://106.32.0.202:6969/announce", "http://201.93.125.37:6969/announce", "http://171.105.76.170:6969/announce", "http://171.105.76.171:6969/announce", "https://xtremex.herokuapp.com/announce", "udp://tracker-udp.gbitt.info/announce", "udp://tracker-udp.anirena.com/announce", "https://tracker.skynetcloud.site:8443/announce", "http://bt-club.ws/announce", "http://thetracker.org/announce", "http://tracker.electro-torrent.pl/announce", "https://tr.abirxo.cf/announce", "http://222.217.127.22:6969/announce", "http://177.198.122.153:6969/announce", "http://222.217.127.23:6969/announce", "https://abir0dev.github.io/announce", "https://tr.abiir.top/announce", "http://t.publictracker.xyz:6969/announce", "http://ankeschwarz.net:6969/announce", "http://34.94.213.23:2710/announce", "http://34.89.30.59/announce", "http://34.89.30.59:11451/announce", "http://222.217.125.250:6969/announce", "http://222.217.125.249:6969/announce", "udp://atrack.pow7.com:80/announce", "http://secure.pow7.com:443/announce", "http://atrack.pow7.com:443/announce", "udp://secure.pow7.com:80/announce", "http://tracker.electro-torrent.pl:80/announce", "udp://pow7.com:80/announce", "http://t1.pow7.com:443/announce", "http://t2.pow7.com:443/announce", "udp://t1.pow7.com:80/announce", "udp://t2.pow7.com:80/announce", "http://tracker.bt-hash.com:80/announce", "http://tracker.sushirave.net/announce", "http://tracker3.itzmx.com:8080/announce", "https://open.acgnxtracker.com:443/announce", "http://106.14.254.164:6969/announce", "http://111.124.84.181:6969/announce", "http://34.94.213.23/announce", "http://58.246.231.191:3333/announce", "http://217.30.10.52:6969/announce", "http://171.105.77.130:6969/announce", "https://tracker.feb217.tk:8443/announce", "http://54.39.98.124:80/announce", "http://tracker.merded.xyz:8000/announce", "http://bt2.edwardk.info:4040/announce", "http://34.94.213.23:11451/announce", "http://149.28.227.243:8000/announce", "http://222.217.127.193:6969/announce", "http://106.32.3.159:6969/announce", "http://34.89.30.59:2710/announce", "http://187.74.5.186:6969/announce", "udp://opentor.org:2710/announce", "https://opentracker.i2p.rocks:443/announce", "http://tracker.anirena.com/b16a15d9a238d1f59178d3614b857290/announce", "https://carapax.net/announce", "https://tk.mabo.ltd/announce", "http://tracker.moxing.party:6969/announce", "http://45.154.253.5:80/announce", "http://mkfs.ru/announce", "http://tracker.fdn.fr:6969/announce", "https://tracker.yarr.pt:443/announce", "https://abir0dev.github.io:443/announce", "https://chihaya-heroku.120181311.xyz:443/announce", "https://tr.abiir.top:443/announce", "https://opentracker.cc:443/announce", "https://tr.abir.ga:443/announce", "https://tr.abirxo.cf:443/announce", "udp://207.241.226.111:6969/announce", "udp://u4.trakx.crim.ist:1337/announce", "udp://207.241.231.226:6969/announce", "udp://tracker.babico.name.tr:8000/announce", "udp://tracker.publictracker.xyz:6969/announce", "udp://run.publictracker.xyz:6969/announce", "udp://tracker.ddunlimited.net:6969/announce", "http://tracker.hiyj.cn:80/announce", "udp://bclearning.top:6969/announce", "https://tracker.babico.name.tr:443/announce", "udp://tracker.farted.net:6969/announce", "udp://open.free-tracker.ga:6969/announce", "udp://open.4ever.tk:6969/announce", "udp://open.tracker.ink:6969/announce", "udp://tracker.loadbt.com:6969/announce", "https://tracker.quix.cf:443/announce", "udp://tracker.merded.xyz:8000/announce", "udp://tracker.loligirl.cn:1337/announce", "udp://thetracker.org:80/announce", "udp://bt.oiyo.tk:6969/announce", "http://tracker.dm258.cn:7070/announce", "http://tracker.filemail.com:6969/announce", "wss://qot.abiir.top:443/announce", "http://xtremewrestlingtorrents.net/announce.php", "http://tracker.xfapi.top:6868/announce", "http://tracker.xfapi.top:9999/announce", "http://tracker.trancetraffic.com/announce.php", "http://tracker.xfapi.top:7070/announce", "http://torrents.hikarinokiseki.com:6969/announce", "http://78.47.229.102:6969/announce", "http://announce.partis.si/announce", "http://tracker.ddunlimited.net:6969/announce", "https://tracker.torrentsnows.com/announce", "http://tracker.torrentbytes.net/announce.php", "http://www.megatorrents.kg/announce.php", "http://blackz.ro/announce.php", "http://tracker.linkomanija.org:2710/announce", "http://www.mvgroup.org/tracker.php/announce", "http://mixfiend.com/announce.php", "http://mvgforumtracker.mvgroup.org/tracker.php/announce", "http://5.180.31.155:2710/announce", "udp://tracker.dump.cl:6969/announce", "http://tracker.frozen-layer.com:6969/announce", "https://tracker1.ctix.cn/announce", "wss://spacetradersapi-chatbox.herokuapp.com:443/announce", "http://171.105.77.142:6969/announce", "http://217.30.10.18:6969/announce", "http://bt.10000.pet:2714/announce", "http://45.154.253.6/announce", "http://tracker3.ctix.cn:2095/announce", "http://tracker2.ctix.cn:6969/announce", "http://222.217.127.157:6969/announce", "https://track.plop.pm:8989/announce", "https://tracker.baka.ink/announce", "http://uatracker.net/announce.php", "udp://inferno.demonoid.is:3391/announce", "http://uraniumhexafluori.de:1919/announce", "https://337hhh.xyz/announce", "http://222.217.127.97:6969/announce", "http://bt2.edwardk.info:2710/announce", "http://tracker.coppersurfer.site:2710/announce", "http://anidex.moe:6969/announce+", "https://337hhh.xyz:443/announce", "https://tracker.moeblog.cn:443/announce", "udp://zecircle.xyz:6969/announce", "udp://tracker.yangxiaoguozi.cn:6969/announce", "http://bt.iro.moe:6969/announce", "http://torrent.unix-ag.uni-kl.de/announce", "wss://tracker.dnlab.net:443/announce", "https://hcbt.pp.ua/announce", "http://milliontorrent.pl/announce.php", "http://38.145.197.80:2710/announce", "http://cutiegirl.ru:6969/announce", "https://tracker.srv00.com/announce", "https://ttk.pp.ua/announce", "http://tracker.dler.com:6969/announce", "udp://thetribunes.xyz:6969/announce", "http://tracker.xiaoduola.xyz:6969/announce", "http://fe.dealclub.de:6969/announce", "udp://ns-1.x-fins.com:6969/announce", "http://movies.zsw.ca:6969/announce", "http://tracker.iro.moe/announce", "https://hcbt.pp.ua:443/announce", "https://tracker.baka.ink:443/announce", "http://209.209.112.121:2710/announce", "https://tracker.hama3.net:443/announce", "https://tracker.hama3.net/announce", "http://171.105.76.226:6969/announce", "https://tracker1.520.jp/announce", "http://tracker2.520.jp:2095/announce", "http://tracker3.520.jp:2095/announce", "http://337hhh.tpddns.cn:6969/announce", "https://tracker.logirl.moe/announce", "https://w.wwwww.wtf/announce", "https://tracker.dmhy.pw/announce", "https://w.wwwww.wtf:443/announce", "https://tracker1.loli.co.nz/announce", "http://tracker.logirl.moe:17052/announce", "http://tracker.srv00.com/announce", "udp://tracker.ccc.de:80/announce", "http://tracker.kyokusai.com/announce", "http://tracker.aeerso.space:6969/announce", "http://retracker.ohys.net:80/announce", "https://tracker.kyokusai.com/announce", "http://35.227.12.84:2710/announce", "http://167.235.245.209/announce", "http://tracker2.ctix.cn:2095/announce", "http://222.217.125.99:6969/announce", "http://tracker4.itzmx.com:6961/announce", "https://tracker.dmhy.pw:443/announce", "https://tracker1.loli.co.nz:443/announce", "http://open.nyap2p.com:8080/announce", "http://i.bandito.org/announce", "http://tracker.bittorrent-webt3.com/announce.php", "http://tracker.srv00.com:80/announce", "https://tracker.srv00.com:443/announce", "https://tracker1.520.jp:443/announce", "http://222.217.125.240:6969/announce", "https://x7x.up.railway.app/announce", "http://89.58.36.53:6969/announce", "http://201.42.213.75:6969/announce", "http://5.188.6.45:6969/announce", "http://ns349743.ip-91-121-106.eu:80/announce", "http://ns349743.ip-91-121-106.eu/announce", "http://185.185.40.95:6969/announce", "http://35.227.12.84/announce", "http://222.217.126.11:6969/announce", "http://189.110.233.223:6969/announce", "udp://960303.xyz:6969/announce", "https://x7x.up.railway.app:443/announce", "udp://v2.iperson.xyz:6969/announce", "http://unit193.net:6969/announce", "http://debuz.com:6969/announce", "http://mail.lakameraobscura.com:6969/announce", "http://widemus.de:6969/announce", "http://incine.ru:6969/announce", "http://drteam.rocks:6969/announce", "udp://open.demonii.com:1337/announce", "http://t1.chfs.ch:6969/announce", "http://222.217.125.244:6969/announce", "http://tracker.bittorrent.am/announce", "http://alltorrents.net/bt:80/announce.php", "https://bigfoot1942.sektori.org/announce", "http://tr.cili001.com:6666/announce", "https://xtremex.herokuapp.com:443/announce", "http://ns331480.ip-37-187-121.eu:6969/announce", "http://tr.anix.moe/announce", "https://tracker.parrotlinux.org:443/announce", "https://cernet-tracker.appspot.com:443/announce", "http://www.yqzuji.com:80/announce", "http://rstracker.ohys.net:80/announce", "https://tracker.opentracker.se:443/announce", "http://highteahop.top:6960/announce", "https://tracker.quix.cf/announce", "https://tracker.expli.top/announce", "https://tracker.4.babico.name.tr/announce", "http://dfireworks.eu.org:6969/announce", "https://tracker.expli.top:443/announce", "https://tracker.4.babico.name.tr:443/announce", "http://fireworks.eu.org:6969/announce", "http://222.217.124.244:6969/announce", "http://65.108.2.176:2710/announce", "http://chouchou.top:8080/announce", "https://tracker.sakurato.art:23334/announce", "http://tracker.sakurato.art:23333/announce", "https://jptv.club/announce/146fad23798fab44419ebc78d45f7b10", "http://38.145.197.80:6961/announce", "http://38.145.197.79:6961/announce", "http://141.144.224.250:6969/announce", "http://185.216.178.49:6969/announce", "http://144.76.118.107:6969/announce", "http://189.110.236.106:6969/announce", "http://tracker3.ctix.cn:8080/announce", "http://222.217.127.21:6969/announce", "http://tracker.iro.moe:80/announce", "http://163.172.209.40:80/announce", "https://inferno.demonoid.is/announce", "http://thebytestore.co.uk:6969/announce", "http://51.68.122.172:80/announce", "udp://chennuo.xyz:6969/announce", "udp://laze.cc:6969/announce", "udp://run-2.publictracker.xyz:6969/announce", "udp://h3o2.me:1337/announce", "udp://theodoric.fr:6969/announce", "udp://smtp.flawcra.cc:6969/announce", "udp://uploads.gamecoast.net:6969/announce", "udp://www.2600.com:6969/announce", "udp://smtp-relay.odysseylabel.com.au:6969/announce", "udp://davidkirkevans.com:6969/announce", "udp://qtstm32fan.ru:6969/announce", "udp://astrr.ru:6969/announce", "udp://bt.ktrackers.com:6666/announce", "udp://itera.bz:6969/announce", "udp://epider.me:6969/announce", "udp://themaninashed.com:6969/announce", "udp://thouvenin.cloud:6969/announce", "udp://yann5.hexanyn.fr:6969/announce", "udp://keke.re:6969/announce", "udp://lloria.fr:6969/announce", "udp://psyco.fr:6969/announce", "udp://tracker.exorditech.com.tr:8000/announce", "udp://mail.zasaonsk.ga:6969/announce", "udp://cutscloud.duckdns.org:6969/announce", "udp://shizzle.hammetjus.nl:6969/announce", "udp://chouchou.top:8080/announce", "udp://new-line.net:6969/announce", "udp://rep-art.ynh.fr:6969/announce", "udp://k1.com.br:6969/announce", "udp://ben.kerbertools.xyz:6969/announce", "udp://black-bird.ynh.fr:6969/announce", "udp://transkaroo.joustasie.net:6969/announce", "udp://tamas3.ynh.fr:6969/announce", "udp://fh2.cmp-gaming.com:6969/announce", "udp://sanincode.com:6969/announce", "udp://htz3.noho.st:6969/announce", "udp://yahor.ftp.sh:6969/announce", "udp://isk.richardsw.club:6969/announce", "https://tracker.dnlab.net/announce", "http://171.107.11.161:6969/announce", "http://191.254.37.5:6969/announce", "http://171.104.110.21:6969/announce", "http://tracker.nyacat.pw:7000/announce.php", "http://119.28.71.45:8080/announce", "http://201.95.48.16:6969/announce", "http://185.232.169.109/announce", "http://116.9.207.160:6969/announce", "https://t.quic.ws:443/announce", "https://evening-badlands-6215.herokuapp.com/announce", "http://alpha.torrenttracker.nl:443/announce", "http://peersteers.org:80/announce", "http://servandroidkino.ru/announce", "udp://torrents.artixlinux.org:6969/announce", "udp://tracker.tcp.exchange:6969/announce", "udp://moonburrow.club:6969/announce", "udp://tracker.4.babico.name.tr:3131/announce", "https://zer0day.000webhostapp.com/announce", "https://tracker1.ctix.cn:443/announce", "udp://tracker.army:6969/announce", "https://t.quic.ws/announce", "http://179.100.89.65:6969/announce", "https://tracker.m-team.cc/announce.php" ]; const debug = createDebug("anime:torrent"); class TorrentClient { constructor(folder) { this.client = new Webtorrent({}); this.folder = folder; this.client.setMaxListeners(25); } async download(downloadTasks) { debug(downloadTasks); const formatSize = (size) => (size / 1024 / 1024).toFixed(1) + " MB"; const multibar = createProgressBar({ suffix(value, total, payload) { const progress = `${formatSize(value)} / ${formatSize(total)}`; const speed = payload.speed ? " | Speed: " + formatSize(payload.speed) + "/s" : ""; return progress + speed; } }); const tasks = downloadTasks.map((downloadTask) => { if (downloadTask.filename) { co