'use strict'; let assert = require('assert'); let Crypto = require('crypto'); let Error = require('http-errors'); let minimatch = require('minimatch'); let Path = require('path'); let LocalData = require('./local-data'); var Utils = require('./utils'); var Utils = require('./utils'); let pkginfo = require('pkginfo')(module); // eslint-disable-line no-unused-vars let pkgVersion = module.exports.version; let pkgName = module.exports.name; // [[a, [b, c]], d] -> [a, b, c, d] function flatten(array) { let result = []; for (let i=0; i= last_suffix || (m[4] === '' && last_suffix !== Infinity)) { throw Error('invalid interval: ' + interval); } last_suffix = parse_interval_table[m[4]]; result += Number(m[1]) * parse_interval_table[m[4]]; }); return result; };