Download games indirectly is prohibited by the platform.
							parent
							
								
									90b42cceb4
								
							
						
					
					
						commit
						262e922f5b
					
				| 
						 | 
					@ -1,5 +1,15 @@
 | 
				
			||||||
"use strict";
 | 
					"use strict";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Core modules
 | 
				
			||||||
 | 
					const fs = require("fs");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Public modules from npm
 | 
				
			||||||
 | 
					const { File } = require('megajs');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Modules from file
 | 
				
			||||||
 | 
					const { prepareBrowser, preparePage } = require("../puppeteer-helper.js");
 | 
				
			||||||
 | 
					const shared = require("../shared.js");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class GameDownload {
 | 
					class GameDownload {
 | 
				
			||||||
  constructor() {
 | 
					  constructor() {
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
| 
						 | 
					@ -25,13 +35,72 @@ class GameDownload {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /**
 | 
					  /**
 | 
				
			||||||
   * @public
 | 
					   * @public
 | 
				
			||||||
   * Download the game data in the indicated path
 | 
					   * Download the game data in the indicated path.
 | 
				
			||||||
   * @param {string} path Save path
 | 
					   * Supported hosting platforms: MEGA, NOPY
 | 
				
			||||||
 | 
					   * @param {String} path Save path
 | 
				
			||||||
 | 
					   * @return {Promise<Boolean>} Result of the operation
 | 
				
			||||||
   */
 | 
					   */
 | 
				
			||||||
  download(path) {}
 | 
					  async download(path) {
 | 
				
			||||||
 | 
					    if (this.link.includes("mega.nz")) return await downloadMEGA(this.link, path);
 | 
				
			||||||
 | 
					    else if (this.link.includes("nopy.to")) return await downloadNOPY(this.link, path);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
module.exports = GameDownload;
 | 
					module.exports = GameDownload;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
function downloadMEGA(url) {}
 | 
					async function downloadMEGA(url, savepath) {
 | 
				
			||||||
 | 
					  // The URL is masked
 | 
				
			||||||
 | 
					  let browser = await prepareBrowser();
 | 
				
			||||||
 | 
					  let page = await preparePage(browser);
 | 
				
			||||||
 | 
					  await page.setCookie(...shared.cookies); // Set cookies to avoid login
 | 
				
			||||||
 | 
					  await page.goto(url);
 | 
				
			||||||
 | 
					  await page.waitForSelector("a.host_link");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
function downloadNOPY(url) {}
 | 
					  // Obtain the link for the unmasked page and click it
 | 
				
			||||||
 | 
					  let link = await page.$("a.host_link");
 | 
				
			||||||
 | 
					  await link.click();
 | 
				
			||||||
 | 
					  await page.goto(url, {
 | 
				
			||||||
 | 
					    waitUntil: shared.WAIT_STATEMENT,
 | 
				
			||||||
 | 
					  }); // Go to the game page and wait until it loads
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // Obtain the URL after the redirect
 | 
				
			||||||
 | 
					  let downloadURL = page.url();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // Close browser and page
 | 
				
			||||||
 | 
					  await page.close();
 | 
				
			||||||
 | 
					  await browser.close();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  let stream = fs.createWriteStream(savepath);
 | 
				
			||||||
 | 
					  let file = File.fromURL(downloadURL);
 | 
				
			||||||
 | 
					  file.download().pipe(stream);
 | 
				
			||||||
 | 
					  return fs.existsSync(savepath);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					async function downloadNOPY(url, savepath) {
 | 
				
			||||||
 | 
					  // Prepare browser
 | 
				
			||||||
 | 
					  let browser = await prepareBrowser();
 | 
				
			||||||
 | 
					  let page = await preparePage(browser);
 | 
				
			||||||
 | 
					  await page.goto(url);
 | 
				
			||||||
 | 
					  await page.waitForSelector("#download");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // Set the save path
 | 
				
			||||||
 | 
					  await page._client.send('Page.setDownloadBehavior', {
 | 
				
			||||||
 | 
					    behavior: 'allow',
 | 
				
			||||||
 | 
					    downloadPath: path.basename(path.dirname(savepath)) // Is a directory
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // Obtain the download button and click it
 | 
				
			||||||
 | 
					  let downloadButton = await page.$("#download");
 | 
				
			||||||
 | 
					  await downloadButton.click();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // Await for all the connections to close
 | 
				
			||||||
 | 
					  await page.waitForNavigation({
 | 
				
			||||||
 | 
					    waitUntil: 'networkidle0',
 | 
				
			||||||
 | 
					    timeout: 0 // Disable timeout
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // Close browser and page
 | 
				
			||||||
 | 
					  await page.close();
 | 
				
			||||||
 | 
					  await browser.close();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  return fs.existsSync(savepath);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -41,7 +41,7 @@ module.exports.getGameInfo = async function (browser, url) {
 | 
				
			||||||
  let author = getGameAuthor(page);
 | 
					  let author = getGameAuthor(page);
 | 
				
			||||||
  let tags = getGameTags(page);
 | 
					  let tags = getGameTags(page);
 | 
				
			||||||
  let previewSource = getGamePreviewSource(page);
 | 
					  let previewSource = getGamePreviewSource(page);
 | 
				
			||||||
  let downloadData = getGameDownloadLink(page);
 | 
					  //let downloadData = getGameDownloadLink(page);
 | 
				
			||||||
  info = await parsePrefixes(page, info); // Fill status/engines/isMod
 | 
					  info = await parsePrefixes(page, info); // Fill status/engines/isMod
 | 
				
			||||||
  let structuredText = await getMainPostStructuredText(page);
 | 
					  let structuredText = await getMainPostStructuredText(page);
 | 
				
			||||||
  let overview = getOverview(structuredText, info.isMod);
 | 
					  let overview = getOverview(structuredText, info.isMod);
 | 
				
			||||||
| 
						 | 
					@ -60,7 +60,11 @@ module.exports.getGameInfo = async function (browser, url) {
 | 
				
			||||||
    ? parsedInfos["UPDATED"]
 | 
					    ? parsedInfos["UPDATED"]
 | 
				
			||||||
    : parsedInfos["THREAD UPDATED"];
 | 
					    : parsedInfos["THREAD UPDATED"];
 | 
				
			||||||
  info.previewSource = await previewSource;
 | 
					  info.previewSource = await previewSource;
 | 
				
			||||||
  info.downloadInfo = await downloadData;
 | 
					  //info.downloadInfo = await downloadData;
 | 
				
			||||||
 | 
					  /* Downloading games without going directly to 
 | 
				
			||||||
 | 
					  * the platform appears to be prohibited by 
 | 
				
			||||||
 | 
					  * the guidelines. It is therefore useless to 
 | 
				
			||||||
 | 
					  * keep the links for downloading the games. */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  await page.close(); // Close the page
 | 
					  await page.close(); // Close the page
 | 
				
			||||||
  if (shared.debug) console.log("Founded data for " + info.name);
 | 
					  if (shared.debug) console.log("Founded data for " + info.name);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -285,6 +285,17 @@
 | 
				
			||||||
        "indent-string": "^4.0.0"
 | 
					        "indent-string": "^4.0.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "ajv": {
 | 
				
			||||||
 | 
					      "version": "6.12.5",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.5.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-lRF8RORchjpKG50/WFf8xmg7sgCLFiYNNnqdKflk63whMQcWR5ngGjiSXkL9bjxy6B2npOK2HSMN49jEBMSkag==",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "fast-deep-equal": "^3.1.1",
 | 
				
			||||||
 | 
					        "fast-json-stable-stringify": "^2.0.0",
 | 
				
			||||||
 | 
					        "json-schema-traverse": "^0.4.1",
 | 
				
			||||||
 | 
					        "uri-js": "^4.2.2"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "ansi-colors": {
 | 
					    "ansi-colors": {
 | 
				
			||||||
      "version": "4.1.1",
 | 
					      "version": "4.1.1",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
 | 
				
			||||||
| 
						 | 
					@ -352,12 +363,40 @@
 | 
				
			||||||
        "is-string": "^1.0.4"
 | 
					        "is-string": "^1.0.4"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "asn1": {
 | 
				
			||||||
 | 
					      "version": "0.2.4",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "safer-buffer": "~2.1.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "assert-plus": {
 | 
				
			||||||
 | 
					      "version": "1.0.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "assertion-error": {
 | 
					    "assertion-error": {
 | 
				
			||||||
      "version": "1.1.0",
 | 
					      "version": "1.1.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz",
 | 
				
			||||||
      "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==",
 | 
					      "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==",
 | 
				
			||||||
      "dev": true
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "asynckit": {
 | 
				
			||||||
 | 
					      "version": "0.4.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "aws-sign2": {
 | 
				
			||||||
 | 
					      "version": "0.7.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "aws4": {
 | 
				
			||||||
 | 
					      "version": "1.10.1",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.10.1.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-zg7Hz2k5lI8kb7U32998pRRFin7zJlkfezGJjUc2heaD4Pw2wObakCDVzkKztTm/Ln7eiVvYsjqak0Ed4LkMDA=="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "balanced-match": {
 | 
					    "balanced-match": {
 | 
				
			||||||
      "version": "1.0.0",
 | 
					      "version": "1.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -368,6 +407,14 @@
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz",
 | 
				
			||||||
      "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g=="
 | 
					      "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g=="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "bcrypt-pbkdf": {
 | 
				
			||||||
 | 
					      "version": "1.0.2",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "tweetnacl": "^0.14.3"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "binary-extensions": {
 | 
					    "binary-extensions": {
 | 
				
			||||||
      "version": "2.1.0",
 | 
					      "version": "2.1.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -440,6 +487,11 @@
 | 
				
			||||||
      "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
 | 
					      "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
 | 
				
			||||||
      "dev": true
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "caseless": {
 | 
				
			||||||
 | 
					      "version": "0.12.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "chai": {
 | 
					    "chai": {
 | 
				
			||||||
      "version": "4.2.0",
 | 
					      "version": "4.2.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/chai/-/chai-4.2.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/chai/-/chai-4.2.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -524,6 +576,14 @@
 | 
				
			||||||
      "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
 | 
					      "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
 | 
				
			||||||
      "dev": true
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "combined-stream": {
 | 
				
			||||||
 | 
					      "version": "1.0.8",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "delayed-stream": "~1.0.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "commondir": {
 | 
					    "commondir": {
 | 
				
			||||||
      "version": "1.0.1",
 | 
					      "version": "1.0.1",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
 | 
				
			||||||
| 
						 | 
					@ -544,6 +604,11 @@
 | 
				
			||||||
        "safe-buffer": "~5.1.1"
 | 
					        "safe-buffer": "~5.1.1"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "core-util-is": {
 | 
				
			||||||
 | 
					      "version": "1.0.2",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "cross-spawn": {
 | 
					    "cross-spawn": {
 | 
				
			||||||
      "version": "7.0.3",
 | 
					      "version": "7.0.3",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
 | 
				
			||||||
| 
						 | 
					@ -555,6 +620,14 @@
 | 
				
			||||||
        "which": "^2.0.1"
 | 
					        "which": "^2.0.1"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "dashdash": {
 | 
				
			||||||
 | 
					      "version": "1.14.1",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "assert-plus": "^1.0.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "data-uri-to-buffer": {
 | 
					    "data-uri-to-buffer": {
 | 
				
			||||||
      "version": "3.0.1",
 | 
					      "version": "3.0.1",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz",
 | 
				
			||||||
| 
						 | 
					@ -601,6 +674,11 @@
 | 
				
			||||||
        "object-keys": "^1.0.12"
 | 
					        "object-keys": "^1.0.12"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "delayed-stream": {
 | 
				
			||||||
 | 
					      "version": "1.0.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "devtools-protocol": {
 | 
					    "devtools-protocol": {
 | 
				
			||||||
      "version": "0.0.799653",
 | 
					      "version": "0.0.799653",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.799653.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.799653.tgz",
 | 
				
			||||||
| 
						 | 
					@ -612,6 +690,20 @@
 | 
				
			||||||
      "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==",
 | 
					      "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==",
 | 
				
			||||||
      "dev": true
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "duplexer": {
 | 
				
			||||||
 | 
					      "version": "0.1.2",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg=="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "ecc-jsbn": {
 | 
				
			||||||
 | 
					      "version": "0.1.2",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "jsbn": "~0.1.0",
 | 
				
			||||||
 | 
					        "safer-buffer": "^2.1.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "emoji-regex": {
 | 
					    "emoji-regex": {
 | 
				
			||||||
      "version": "8.0.0",
 | 
					      "version": "8.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -700,6 +792,11 @@
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz",
 | 
				
			||||||
      "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ=="
 | 
					      "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ=="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "extend": {
 | 
				
			||||||
 | 
					      "version": "3.0.2",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "extract-zip": {
 | 
					    "extract-zip": {
 | 
				
			||||||
      "version": "2.0.1",
 | 
					      "version": "2.0.1",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz",
 | 
				
			||||||
| 
						 | 
					@ -711,6 +808,21 @@
 | 
				
			||||||
        "yauzl": "^2.10.0"
 | 
					        "yauzl": "^2.10.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "extsprintf": {
 | 
				
			||||||
 | 
					      "version": "1.3.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "fast-deep-equal": {
 | 
				
			||||||
 | 
					      "version": "3.1.3",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "fast-json-stable-stringify": {
 | 
				
			||||||
 | 
					      "version": "2.1.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "fd-slicer": {
 | 
					    "fd-slicer": {
 | 
				
			||||||
      "version": "1.1.0",
 | 
					      "version": "1.1.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -772,6 +884,21 @@
 | 
				
			||||||
        "signal-exit": "^3.0.2"
 | 
					        "signal-exit": "^3.0.2"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "forever-agent": {
 | 
				
			||||||
 | 
					      "version": "0.6.1",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "form-data": {
 | 
				
			||||||
 | 
					      "version": "2.3.3",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "asynckit": "^0.4.0",
 | 
				
			||||||
 | 
					        "combined-stream": "^1.0.6",
 | 
				
			||||||
 | 
					        "mime-types": "^2.1.12"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "fromentries": {
 | 
					    "fromentries": {
 | 
				
			||||||
      "version": "1.2.1",
 | 
					      "version": "1.2.1",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.2.1.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.2.1.tgz",
 | 
				
			||||||
| 
						 | 
					@ -833,6 +960,14 @@
 | 
				
			||||||
        "pump": "^3.0.0"
 | 
					        "pump": "^3.0.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "getpass": {
 | 
				
			||||||
 | 
					      "version": "0.1.7",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "assert-plus": "^1.0.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "glob": {
 | 
					    "glob": {
 | 
				
			||||||
      "version": "7.1.6",
 | 
					      "version": "7.1.6",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
 | 
				
			||||||
| 
						 | 
					@ -873,6 +1008,20 @@
 | 
				
			||||||
      "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==",
 | 
					      "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==",
 | 
				
			||||||
      "dev": true
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "har-schema": {
 | 
				
			||||||
 | 
					      "version": "2.0.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "har-validator": {
 | 
				
			||||||
 | 
					      "version": "5.1.5",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "ajv": "^6.12.3",
 | 
				
			||||||
 | 
					        "har-schema": "^2.0.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "has": {
 | 
					    "has": {
 | 
				
			||||||
      "version": "1.0.3",
 | 
					      "version": "1.0.3",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
 | 
				
			||||||
| 
						 | 
					@ -915,6 +1064,16 @@
 | 
				
			||||||
      "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==",
 | 
					      "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==",
 | 
				
			||||||
      "dev": true
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "http-signature": {
 | 
				
			||||||
 | 
					      "version": "1.2.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "assert-plus": "^1.0.0",
 | 
				
			||||||
 | 
					        "jsprim": "^1.2.2",
 | 
				
			||||||
 | 
					        "sshpk": "^1.7.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "https-proxy-agent": {
 | 
					    "https-proxy-agent": {
 | 
				
			||||||
      "version": "4.0.0",
 | 
					      "version": "4.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-4.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-4.0.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1066,8 +1225,7 @@
 | 
				
			||||||
    "is-typedarray": {
 | 
					    "is-typedarray": {
 | 
				
			||||||
      "version": "1.0.0",
 | 
					      "version": "1.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
 | 
				
			||||||
      "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=",
 | 
					      "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo="
 | 
				
			||||||
      "dev": true
 | 
					 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "is-windows": {
 | 
					    "is-windows": {
 | 
				
			||||||
      "version": "1.0.2",
 | 
					      "version": "1.0.2",
 | 
				
			||||||
| 
						 | 
					@ -1087,6 +1245,11 @@
 | 
				
			||||||
      "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
 | 
					      "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
 | 
				
			||||||
      "dev": true
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "isstream": {
 | 
				
			||||||
 | 
					      "version": "0.1.2",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "istanbul-lib-coverage": {
 | 
					    "istanbul-lib-coverage": {
 | 
				
			||||||
      "version": "3.0.0",
 | 
					      "version": "3.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1218,12 +1381,32 @@
 | 
				
			||||||
        "esprima": "^4.0.0"
 | 
					        "esprima": "^4.0.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "jsbn": {
 | 
				
			||||||
 | 
					      "version": "0.1.1",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "jsesc": {
 | 
					    "jsesc": {
 | 
				
			||||||
      "version": "2.5.2",
 | 
					      "version": "2.5.2",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
 | 
				
			||||||
      "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
 | 
					      "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
 | 
				
			||||||
      "dev": true
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "json-schema": {
 | 
				
			||||||
 | 
					      "version": "0.2.3",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "json-schema-traverse": {
 | 
				
			||||||
 | 
					      "version": "0.4.1",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "json-stringify-safe": {
 | 
				
			||||||
 | 
					      "version": "5.0.1",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "json5": {
 | 
					    "json5": {
 | 
				
			||||||
      "version": "2.1.3",
 | 
					      "version": "2.1.3",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1233,6 +1416,17 @@
 | 
				
			||||||
        "minimist": "^1.2.5"
 | 
					        "minimist": "^1.2.5"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "jsprim": {
 | 
				
			||||||
 | 
					      "version": "1.4.1",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "assert-plus": "1.0.0",
 | 
				
			||||||
 | 
					        "extsprintf": "1.3.0",
 | 
				
			||||||
 | 
					        "json-schema": "0.2.3",
 | 
				
			||||||
 | 
					        "verror": "1.10.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "ky": {
 | 
					    "ky": {
 | 
				
			||||||
      "version": "0.24.0",
 | 
					      "version": "0.24.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/ky/-/ky-0.24.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/ky/-/ky-0.24.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1337,6 +1531,32 @@
 | 
				
			||||||
        "semver": "^6.0.0"
 | 
					        "semver": "^6.0.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "megajs": {
 | 
				
			||||||
 | 
					      "version": "0.17.2",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/megajs/-/megajs-0.17.2.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-zq7Fows6N5HP1UYFkhZ+GfhIAyIzFhCfQ4tEgd90rwhRFLwj9vD7SpYaJ9jvz98ZmqeQSHjKEK2HlWhdBNJm/A==",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "combined-stream": "^1.0.8",
 | 
				
			||||||
 | 
					        "request": "^2.88.2",
 | 
				
			||||||
 | 
					        "secure-random": "^1.1.2",
 | 
				
			||||||
 | 
					        "stream-combiner": "^0.2.2",
 | 
				
			||||||
 | 
					        "stream-skip": "^1.0.3",
 | 
				
			||||||
 | 
					        "through": "^2.1.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "mime-db": {
 | 
				
			||||||
 | 
					      "version": "1.44.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg=="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "mime-types": {
 | 
				
			||||||
 | 
					      "version": "2.1.27",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "mime-db": "1.44.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "minimatch": {
 | 
					    "minimatch": {
 | 
				
			||||||
      "version": "3.0.4",
 | 
					      "version": "3.0.4",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1663,6 +1883,11 @@
 | 
				
			||||||
        "yargs": "^15.0.2"
 | 
					        "yargs": "^15.0.2"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "oauth-sign": {
 | 
				
			||||||
 | 
					      "version": "0.9.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ=="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "object-inspect": {
 | 
					    "object-inspect": {
 | 
				
			||||||
      "version": "1.8.0",
 | 
					      "version": "1.8.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.8.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.8.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1770,6 +1995,11 @@
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
 | 
				
			||||||
      "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA="
 | 
					      "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "performance-now": {
 | 
				
			||||||
 | 
					      "version": "2.1.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "picomatch": {
 | 
					    "picomatch": {
 | 
				
			||||||
      "version": "2.2.2",
 | 
					      "version": "2.2.2",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1816,6 +2046,11 @@
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
 | 
				
			||||||
      "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg=="
 | 
					      "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg=="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "psl": {
 | 
				
			||||||
 | 
					      "version": "1.8.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ=="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "pump": {
 | 
					    "pump": {
 | 
				
			||||||
      "version": "3.0.0",
 | 
					      "version": "3.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1825,6 +2060,11 @@
 | 
				
			||||||
        "once": "^1.3.1"
 | 
					        "once": "^1.3.1"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "punycode": {
 | 
				
			||||||
 | 
					      "version": "2.1.1",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A=="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "puppeteer": {
 | 
					    "puppeteer": {
 | 
				
			||||||
      "version": "5.3.1",
 | 
					      "version": "5.3.1",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-5.3.1.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-5.3.1.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1843,6 +2083,11 @@
 | 
				
			||||||
        "ws": "^7.2.3"
 | 
					        "ws": "^7.2.3"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "qs": {
 | 
				
			||||||
 | 
					      "version": "6.5.2",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA=="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "randombytes": {
 | 
					    "randombytes": {
 | 
				
			||||||
      "version": "2.1.0",
 | 
					      "version": "2.1.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1880,6 +2125,33 @@
 | 
				
			||||||
        "es6-error": "^4.0.1"
 | 
					        "es6-error": "^4.0.1"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "request": {
 | 
				
			||||||
 | 
					      "version": "2.88.2",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "aws-sign2": "~0.7.0",
 | 
				
			||||||
 | 
					        "aws4": "^1.8.0",
 | 
				
			||||||
 | 
					        "caseless": "~0.12.0",
 | 
				
			||||||
 | 
					        "combined-stream": "~1.0.6",
 | 
				
			||||||
 | 
					        "extend": "~3.0.2",
 | 
				
			||||||
 | 
					        "forever-agent": "~0.6.1",
 | 
				
			||||||
 | 
					        "form-data": "~2.3.2",
 | 
				
			||||||
 | 
					        "har-validator": "~5.1.3",
 | 
				
			||||||
 | 
					        "http-signature": "~1.2.0",
 | 
				
			||||||
 | 
					        "is-typedarray": "~1.0.0",
 | 
				
			||||||
 | 
					        "isstream": "~0.1.2",
 | 
				
			||||||
 | 
					        "json-stringify-safe": "~5.0.1",
 | 
				
			||||||
 | 
					        "mime-types": "~2.1.19",
 | 
				
			||||||
 | 
					        "oauth-sign": "~0.9.0",
 | 
				
			||||||
 | 
					        "performance-now": "^2.1.0",
 | 
				
			||||||
 | 
					        "qs": "~6.5.2",
 | 
				
			||||||
 | 
					        "safe-buffer": "^5.1.2",
 | 
				
			||||||
 | 
					        "tough-cookie": "~2.5.0",
 | 
				
			||||||
 | 
					        "tunnel-agent": "^0.6.0",
 | 
				
			||||||
 | 
					        "uuid": "^3.3.2"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "require-directory": {
 | 
					    "require-directory": {
 | 
				
			||||||
      "version": "2.1.1",
 | 
					      "version": "2.1.1",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1918,8 +2190,17 @@
 | 
				
			||||||
    "safe-buffer": {
 | 
					    "safe-buffer": {
 | 
				
			||||||
      "version": "5.1.2",
 | 
					      "version": "5.1.2",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
 | 
				
			||||||
      "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
 | 
					      "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
 | 
				
			||||||
      "dev": true
 | 
					    },
 | 
				
			||||||
 | 
					    "safer-buffer": {
 | 
				
			||||||
 | 
					      "version": "2.1.2",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "secure-random": {
 | 
				
			||||||
 | 
					      "version": "1.1.2",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/secure-random/-/secure-random-1.1.2.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-H2bdSKERKdBV1SwoqYm6C0y+9EA94v6SUBOWO8kDndc4NoUih7Dv6Tsgma7zO1lv27wIvjlD0ZpMQk7um5dheQ=="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "semver": {
 | 
					    "semver": {
 | 
				
			||||||
      "version": "6.3.0",
 | 
					      "version": "6.3.0",
 | 
				
			||||||
| 
						 | 
					@ -1989,6 +2270,36 @@
 | 
				
			||||||
      "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
 | 
					      "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
 | 
				
			||||||
      "dev": true
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "sshpk": {
 | 
				
			||||||
 | 
					      "version": "1.16.1",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "asn1": "~0.2.3",
 | 
				
			||||||
 | 
					        "assert-plus": "^1.0.0",
 | 
				
			||||||
 | 
					        "bcrypt-pbkdf": "^1.0.0",
 | 
				
			||||||
 | 
					        "dashdash": "^1.12.0",
 | 
				
			||||||
 | 
					        "ecc-jsbn": "~0.1.1",
 | 
				
			||||||
 | 
					        "getpass": "^0.1.1",
 | 
				
			||||||
 | 
					        "jsbn": "~0.1.0",
 | 
				
			||||||
 | 
					        "safer-buffer": "^2.0.2",
 | 
				
			||||||
 | 
					        "tweetnacl": "~0.14.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "stream-combiner": {
 | 
				
			||||||
 | 
					      "version": "0.2.2",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.2.2.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-rsjLrBd7Vrb0+kec7YwZEs7lKFg=",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "duplexer": "~0.1.1",
 | 
				
			||||||
 | 
					        "through": "~2.3.4"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "stream-skip": {
 | 
				
			||||||
 | 
					      "version": "1.0.3",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/stream-skip/-/stream-skip-1.0.3.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-2rB0uBiOnYSQwJxJ3wZLher+fz0yyXQxKuKnVTsidHmkqvC8rWZ2AbX50ZVdz7fsL6zkYkqaN/pPD0RldKIbpQ=="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "string-width": {
 | 
					    "string-width": {
 | 
				
			||||||
      "version": "4.2.0",
 | 
					      "version": "4.2.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -2119,6 +2430,28 @@
 | 
				
			||||||
        "is-number": "^7.0.0"
 | 
					        "is-number": "^7.0.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "tough-cookie": {
 | 
				
			||||||
 | 
					      "version": "2.5.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "psl": "^1.1.28",
 | 
				
			||||||
 | 
					        "punycode": "^2.1.1"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "tunnel-agent": {
 | 
				
			||||||
 | 
					      "version": "0.6.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "safe-buffer": "^5.0.1"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "tweetnacl": {
 | 
				
			||||||
 | 
					      "version": "0.14.5",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "type-detect": {
 | 
					    "type-detect": {
 | 
				
			||||||
      "version": "4.0.8",
 | 
					      "version": "4.0.8",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz",
 | 
				
			||||||
| 
						 | 
					@ -2149,6 +2482,14 @@
 | 
				
			||||||
        "through": "^2.3.8"
 | 
					        "through": "^2.3.8"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "uri-js": {
 | 
				
			||||||
 | 
					      "version": "4.4.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-B0yRTzYdUCCn9n+F4+Gh4yIDtMQcaJsmYBDsTSG8g/OejKBodLQ2IHfN3bM7jUsRXndopT7OIXWdYqc1fjmV6g==",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "punycode": "^2.1.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "util-deprecate": {
 | 
					    "util-deprecate": {
 | 
				
			||||||
      "version": "1.0.2",
 | 
					      "version": "1.0.2",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
 | 
				
			||||||
| 
						 | 
					@ -2157,8 +2498,17 @@
 | 
				
			||||||
    "uuid": {
 | 
					    "uuid": {
 | 
				
			||||||
      "version": "3.4.0",
 | 
					      "version": "3.4.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz",
 | 
				
			||||||
      "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==",
 | 
					      "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A=="
 | 
				
			||||||
      "dev": true
 | 
					    },
 | 
				
			||||||
 | 
					    "verror": {
 | 
				
			||||||
 | 
					      "version": "1.10.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "assert-plus": "^1.0.0",
 | 
				
			||||||
 | 
					        "core-util-is": "1.0.2",
 | 
				
			||||||
 | 
					        "extsprintf": "^1.2.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "which": {
 | 
					    "which": {
 | 
				
			||||||
      "version": "2.0.2",
 | 
					      "version": "2.0.2",
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										28
									
								
								test/test.js
								
								
								
								
							
							
						
						
									
										28
									
								
								test/test.js
								
								
								
								
							| 
						 | 
					@ -1,3 +1,4 @@
 | 
				
			||||||
 | 
					const {join} = require("path");
 | 
				
			||||||
const {
 | 
					const {
 | 
				
			||||||
  debug,
 | 
					  debug,
 | 
				
			||||||
  login,
 | 
					  login,
 | 
				
			||||||
| 
						 | 
					@ -5,10 +6,13 @@ const {
 | 
				
			||||||
  loadF95BaseData,
 | 
					  loadF95BaseData,
 | 
				
			||||||
  getUserData,
 | 
					  getUserData,
 | 
				
			||||||
  logout,
 | 
					  logout,
 | 
				
			||||||
} = require("../app/index");
 | 
					} = require("../app/index.js");
 | 
				
			||||||
 | 
					const GameDownload = require("../app/scripts/classes/game-download.js");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
//debug(true);
 | 
					debug(true);
 | 
				
			||||||
main();
 | 
					//main();
 | 
				
			||||||
 | 
					//downloadGameNOPY();
 | 
				
			||||||
 | 
					downloadGameMEGA();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
async function main() {
 | 
					async function main() {
 | 
				
			||||||
  let loginResult = await login("MillenniumEarl", "f9vTcRNuvxj4YpK");
 | 
					  let loginResult = await login("MillenniumEarl", "f9vTcRNuvxj4YpK");
 | 
				
			||||||
| 
						 | 
					@ -23,3 +27,21 @@ async function main() {
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  logout();
 | 
					  logout();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					async function downloadGameNOPY() {
 | 
				
			||||||
 | 
					  let gd = new GameDownload();
 | 
				
			||||||
 | 
					  gd.hosting = "NOPY";
 | 
				
			||||||
 | 
					  gd.link = "https://nopy.to/50jmNQbo/Kingdom_of_Deception-pc0.10.8.zip";
 | 
				
			||||||
 | 
					  let savepath = join(__dirname, "Kingdom_of_Deception-pc0.10.8.zip");
 | 
				
			||||||
 | 
					  let result = await gd.download(savepath);
 | 
				
			||||||
 | 
					  console.log(result);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					async function downloadGameMEGA() {
 | 
				
			||||||
 | 
					  let gd = new GameDownload();
 | 
				
			||||||
 | 
					  gd.hosting = "NOPY";
 | 
				
			||||||
 | 
					  gd.link = "https://f95zone.to/masked/mega.nz/2733/1470797/4O5LKwMx4ZSlw0QYTVMP0uDK660/hoobTb44f0IKx7Yio2SE2w/loX_px2vLRyNRQCnkNn5U7nnQe7jGmpEVERvH1tk7RjAFkQbs2kH_vCK6zVmRDuqiypPoIx358MNHHCd3QCdVvEsClSiAq4rwjK0r_ruXIs";
 | 
				
			||||||
 | 
					  let savepath = join(__dirname, "Kingdom_of_Deception-pc0.10.8.zip");
 | 
				
			||||||
 | 
					  let result = await gd.download(savepath);
 | 
				
			||||||
 | 
					  console.log(result);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
		Loading…
	
		Reference in New Issue