'use strict' module.exports.promisify = promisify function promisify (f) { const util = require('util') if (util.promisify) { return util.promisify(f) } else { return function () { return new Promise((resolve, reject) => { f.apply(this, [].slice.call(arguments).concat((err, val) => { err ? reject(err) : resolve(val) })) }) } } }