there's already a `wrap` module on npm