{"_id":"kareem","_rev":"80-aa156b98ba126dc4b305cedd0fa5f989","name":"kareem","dist-tags":{"latest":"3.4.0"},"versions":{"0.0.1":{"name":"kareem","version":"0.0.1","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@0.0.1","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"dist":{"shasum":"9991dadd22c0c7350b74b44c5bbda3cf56e593a3","tarball":"https://registry.npmjs.org/kareem/-/kareem-0.0.1.tgz","integrity":"sha512-JdsAmw7Ho9YU+oMPJyTwLkSgrnBn+42PCHcJ3UtEVQ1NzEDKi2u3Ek2rtwIxsHyREdndjDdLbk35QpWODSijGg==","signatures":[{"sig":"MEUCIQCl8f4J1NYy2bDY0Fug0BefDSARGOr5mow1e113Je2CnQIgNAE0per+c5ARMn83NOgnVYQPshwcAg9e+UzjP2qxar0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"vkarpov15","email":"valkar207@gmail.com"},"_npmVersion":"1.4.6","description":"Next-generation take on pre/post function hooks","directories":{},"devDependencies":{"mocha":"2.0.0","acquit":"0.0.3"}},"0.0.2":{"name":"kareem","version":"0.0.2","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@0.0.2","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"aad21a4ed01a2a86bfd8c892a27707778d661439","tarball":"https://registry.npmjs.org/kareem/-/kareem-0.0.2.tgz","integrity":"sha512-lT9Mcv6cDz0TqNwDI6MSYTTbN3IIGFNXBsDNyGO/Z+EPcuLrpCZVNcfjEOkDmongvG4S+4k0MZo92Tr1+1w+vw==","signatures":[{"sig":"MEQCIGaRW5utN5jfjzwigQcGZZ3UFhZBJVfiJo8HS9Pcb67uAiAnollSeUA+7a+q8LgoZDC6xM8F3izI4Q0U2CyTraDpLg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"vkarpov15","email":"valkar207@gmail.com"},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"1.4.6","description":"Next-generation take on pre/post function hooks","directories":{},"devDependencies":{"mocha":"2.0.0","acquit":"0.0.3"}},"0.0.3":{"name":"kareem","version":"0.0.3","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@0.0.3","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"017a5e0b421828701eed2c9ae94b107e845538bc","tarball":"https://registry.npmjs.org/kareem/-/kareem-0.0.3.tgz","integrity":"sha512-fthJXalU5z8DJ+f1y6x0iAboyms7ySvX4PkwaF+NBgFr66ETJZP3sXA1XJOdjZPzcsKEk8vnkpaGhTFuEWIAvA==","signatures":[{"sig":"MEUCIF7xP7LzCYnQIdY+SCUsbIc983Eu9zE7YtnoLWb/stgHAiEAy7inqOz7wXH+FDtnbhaIwApQttKCCj0pdxRWw9Xurqg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*"},"_npmUser":{"name":"vkarpov15","email":"valkar207@gmail.com"},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"1.4.6","description":"Next-generation take on pre/post function hooks","directories":{},"devDependencies":{"mocha":"2.0.0","acquit":"0.0.3"}},"0.0.4":{"name":"kareem","version":"0.0.4","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@0.0.4","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"a8475defd74cf829b0071d20e6971bf15d911d2b","tarball":"https://registry.npmjs.org/kareem/-/kareem-0.0.4.tgz","integrity":"sha512-biWthuL9dy1wKKoAfOTs012aXauaZkQ/yxTiNkm/sM+kHWN+XOyXaeF6ukPlzQhPnmjcwMAdYuDXxOaYmYmNtA==","signatures":[{"sig":"MEUCIGqFKQsCKNHTgGZvEhsBm8uPymZX5mpj6dGkQ9CtSkKmAiEAnNavEmz9pFNPhUXkV/e09F2kjBCLtKbSdnDR4G67kHE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*"},"_npmUser":{"name":"vkarpov15","email":"valkar207@gmail.com"},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"1.4.6","description":"Next-generation take on pre/post function hooks","directories":{},"devDependencies":{"mocha":"2.0.0","acquit":"0.0.3"}},"0.0.5":{"name":"kareem","version":"0.0.5","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@0.0.5","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"d900360c4857fb29729cb9191d8c44e99eefdc52","tarball":"https://registry.npmjs.org/kareem/-/kareem-0.0.5.tgz","integrity":"sha512-GKXtUsMkvSFxMHYQo3JqgzgLdi5mQM9MwbLctjwNokmgA8eN5vrLFkREh+O8bn4QrhMES/zuhg3ryt502WnUeg==","signatures":[{"sig":"MEUCIQC0sWKBICiNI76K6F3MR0jpkNuJrZSAvHo81XvVbxuB+AIgJXPEs9gQ0Saun/WiB4lUbjQGw5RKdUpmJcza7Pcg6TA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"valkar207@gmail.com"},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"1.3.24","description":"Next-generation take on pre/post function hooks","directories":{},"devDependencies":{"mocha":"2.0.0","acquit":"0.0.3","istanbul":"0.3.5"}},"0.0.6":{"name":"kareem","version":"0.0.6","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@0.0.6","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"702e898970c2de9dcf2a34ec22f458eccb7bab91","tarball":"https://registry.npmjs.org/kareem/-/kareem-0.0.6.tgz","integrity":"sha512-aOnwrIKEYKYmkSuaRYm7VQuPJ7F4EQ2YhpEMd63+rAOvlsbYMeDYlbXuoCoIk4lb6JbD3sSAv6HIYKyP5GLaBw==","signatures":[{"sig":"MEYCIQCr2tXPqs2yOZB5qdDZKneTrbWKy1DhFH0FrBmAAmj9aQIhAMTusPrxAvHcspgLuRT55pxADTTaOEaVelhzYa8FFpny","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"valkar207@gmail.com"},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"1.3.24","description":"Next-generation take on pre/post function hooks","directories":{},"devDependencies":{"mocha":"2.0.0","acquit":"0.0.3","istanbul":"0.3.5"}},"0.0.7":{"name":"kareem","version":"0.0.7","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@0.0.7","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"731ca52caaafa852086b9b3db7f5d16989295502","tarball":"https://registry.npmjs.org/kareem/-/kareem-0.0.7.tgz","integrity":"sha512-pF0jMp+5t+s4ny9qn9LIYAY/21OllA47bBOdXOSzznTnoZqRP2ogzBNg89IkoNwsbnSxNHWMT4ESjkkmy++G4w==","signatures":[{"sig":"MEUCIFHC+fcyOs6UQRtsFbfjhFQ7SVR9IPpLhYNbr0Sjj1a4AiEA7PDxTrr04auu8q2qGhLN/yK4Ycsd9CtHT7VE47OJJ4Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"731ca52caaafa852086b9b3db7f5d16989295502","gitHead":"98ef1734cac55f155303905537f953435f5099ff","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"valkar207@gmail.com"},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"1.4.21","description":"Next-generation take on pre/post function hooks","directories":{},"devDependencies":{"mocha":"2.0.0","acquit":"0.0.3","istanbul":"0.3.5"}},"0.0.8":{"name":"kareem","version":"0.0.8","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@0.0.8","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"0857e573d09e40e6dd39a5d6437ea1c4a9d351a1","tarball":"https://registry.npmjs.org/kareem/-/kareem-0.0.8.tgz","integrity":"sha512-cI8vRgBl6u8PQ/X74CQnH8eRUBPZNyoH26gQRScpXGBM0Z8qDHdeqyZtJNeugiTYnY9hhU0HtjsN8gill/HiNg==","signatures":[{"sig":"MEYCIQCi34XwQq8x82et9g9CWXgUFoZUtjP0JjAGVfKxeOW4JwIhAPH41H4J1LOiC9UDPpb1+nZ2sIYSj6kHNff/StiWGjCY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"0857e573d09e40e6dd39a5d6437ea1c4a9d351a1","gitHead":"03c0d2f3de089fd4fdd2d7c2191e45ee2b0cca00","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"valkar207@gmail.com"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"1.4.21","description":"Next-generation take on pre/post function hooks","directories":{},"devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"2.0.0","acquit":"0.0.3","istanbul":"0.3.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"}},"1.0.0":{"name":"kareem","version":"1.0.0","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@1.0.0","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"18b854380b83b10608c710fc951e7910184f67a6","tarball":"https://registry.npmjs.org/kareem/-/kareem-1.0.0.tgz","integrity":"sha512-5mjQWRkDEMlWuIj5s+6Vz8zWvAsWI8ZMj9R+0bfnISxtjYPAFA0hn0eVTh4+n/RVHDgSaVW8JREIEWaFROAkNQ==","signatures":[{"sig":"MEYCIQDAcyGovSQ8QBqeTgFRZ1dXBFz7omY8AybI5VJNefMX3gIhALTeOQM0zkw+dna3q38ehRv8YyUZGMhn6ACZzDvLWi0p","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"18b854380b83b10608c710fc951e7910184f67a6","gitHead":"4c5a35ac2a34b3d9c90db9fd1007b58ba5b4eec0","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"valkar207@gmail.com"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"1.4.21","description":"Next-generation take on pre/post function hooks","directories":{},"devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"2.0.0","acquit":"0.0.3","istanbul":"0.3.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"}},"1.0.1":{"name":"kareem","version":"1.0.1","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@1.0.1","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"7805d215bb53214ec3af969a1d0b1f17e3e7b95c","tarball":"https://registry.npmjs.org/kareem/-/kareem-1.0.1.tgz","integrity":"sha512-FWVjp1u+YDXpxfEZAyGAwulQsjwgqnNkbvju4PivaRHAeR1sOXe4Di4p9NkJlBVL+U1Xd8xBsX4lvtSVo690TA==","signatures":[{"sig":"MEYCIQCX2jVLOIbvB6W6GJp5C6d/LWS4883uob9EP/zJzCPObgIhALrTGTUHoZoq30STAzqF1yr8qJUeZWv1A8uX+YcrtxWo","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"7805d215bb53214ec3af969a1d0b1f17e3e7b95c","gitHead":"69710887f85dee09afac690df770dd2febde7268","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"valkar207@gmail.com"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"2.7.4","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"0.12.2","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"2.0.0","acquit":"0.0.3","istanbul":"0.3.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"}},"1.1.0":{"name":"kareem","version":"1.1.0","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@1.1.0","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"dcd322078c8a6e0e9c7c4e2002c7fa233ce00fa2","tarball":"https://registry.npmjs.org/kareem/-/kareem-1.1.0.tgz","integrity":"sha512-wqP34UpyjlzVNv2dl2bK4ln8M5ypGwaEZtcNng9FvST9S/MytgL7E8mU1B9ubd/pJBxLpMrUuZcAue1taOzXag==","signatures":[{"sig":"MEUCIEcb4+/bkNVmYQn0+4A6WUIQR1h3GUzwx0qI9YthWQ9LAiEArm3hjhPWmHw0DK+z/LV9JNa+Q+csHx0MiUK4aB3ezqs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"dcd322078c8a6e0e9c7c4e2002c7fa233ce00fa2","gitHead":"85332d9a4fb25161a8d6bbb8d3f9c6449d4ea64a","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"3.8.6","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"6.0.0","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"2.0.0","acquit":"0.0.3","istanbul":"0.3.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem-1.1.0.tgz_1462936734145_0.35382826277054846","host":"packages-16-east.internal.npmjs.com"}},"1.1.1":{"name":"kareem","version":"1.1.1","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@1.1.1","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"b1e4379830cce207dd72909c97c947b96e383ac9","tarball":"https://registry.npmjs.org/kareem/-/kareem-1.1.1.tgz","integrity":"sha512-LTgwZYXleUWdSob5yXnRSHhM8xncQ11grJsD5E3BanMrKXxtXl3VgI2EpZtYwJbWw7CJc16iFEfN8J9bi8tXiQ==","signatures":[{"sig":"MEUCIQCOHJ8M0EK416SS0i2JFDt2LaDBdC5Nc+9KGbou8Ir80AIgAWGNiHferzt02fDtWWnvY5Ab3h/kHyaUSSKVpwSCpPs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"b1e4379830cce207dd72909c97c947b96e383ac9","gitHead":"8bb305050704d8bf07f875d2cfdb733cd4067167","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"3.8.6","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"6.0.0","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"2.0.0","acquit":"0.0.3","istanbul":"0.3.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem-1.1.1.tgz_1467036276516_0.370025304146111","host":"packages-16-east.internal.npmjs.com"}},"1.1.2":{"name":"kareem","version":"1.1.2","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@1.1.2","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"0b203bb9a3200bb6f27e930e3ee720a235394ee0","tarball":"https://registry.npmjs.org/kareem/-/kareem-1.1.2.tgz","integrity":"sha512-Ne2z9eniolm3hNfTjIucYUmoLmw2Bawv6WCAfAzQmescQrsNTFU8bgTYcdXuv/Ml8ylH3LqlH9DvfPy+IJednA==","signatures":[{"sig":"MEYCIQDEyAdoiBJpUJ10riaskxdR/SEnPJ8T1l6azREdjRkERQIhAI8CjJoHQdvCHlJsBbNzPAQKVuSjNv3nVgeKSH36XXQb","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"0b203bb9a3200bb6f27e930e3ee720a235394ee0","gitHead":"8e102b630f01857a3bf9f100e6d43e42b8087bdd","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"3.8.6","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"6.0.0","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"2.0.0","acquit":"0.0.3","istanbul":"0.3.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem-1.1.2.tgz_1467038241432_0.3813423451501876","host":"packages-12-west.internal.npmjs.com"}},"1.1.3":{"name":"kareem","version":"1.1.3","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@1.1.3","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"0877610d8879c38da62d1dbafde4e17f2692f041","tarball":"https://registry.npmjs.org/kareem/-/kareem-1.1.3.tgz","integrity":"sha512-0xbjkEk59BqWzDP0P5NKbJ2SCvWe2Urzara7a1SLHvsI5lGJugoRP1yVfJY3SJSKs7i0tvNI7jjIY+WZzzIgeg==","signatures":[{"sig":"MEUCIQCX1gYF9Xvc6VNDqviWMAk6R90nw8odzGARkwaqUJ05AgIgTjQHKMsHB4+7sG4N+Cz8ctJdtfNmWg1QlVNDl341wh8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"0877610d8879c38da62d1dbafde4e17f2692f041","gitHead":"87171c8d0d3743d7f3a5dce2e540314b32980920","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"3.8.6","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"6.0.0","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"2.0.0","acquit":"0.0.3","istanbul":"0.3.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem-1.1.3.tgz_1467040511533_0.5054662451148033","host":"packages-16-east.internal.npmjs.com"}},"1.1.4":{"name":"kareem","version":"1.1.4","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@1.1.4","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"292007c64ad5725c7d2045501f3fd424189dbe5f","tarball":"https://registry.npmjs.org/kareem/-/kareem-1.1.4.tgz","integrity":"sha512-8qYUuup6uySgUPb3LbIyyK9K5UOA2ukiJ2tgc16R08wLXv+7rGWRLe4B5aMPhdJKJvd2a0GHz5anPhhCcrGlMA==","signatures":[{"sig":"MEQCIGpjotiUQSa8FFRZ6UOn38S+NGcWYCtsFuOK3KmxLIrTAiA9f77n2rtEyaAX0TwzKQIbDk7M2QR2oOYKcgRYNxHyHw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"292007c64ad5725c7d2045501f3fd424189dbe5f","gitHead":"ece401cb31befce60ff2919edbdb635e30c8d9cb","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"3.10.8","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"6.9.0","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"2.0.0","acquit":"0.0.3","istanbul":"0.3.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem-1.1.4.tgz_1481310014455_0.9005114063620567","host":"packages-18-east.internal.npmjs.com"}},"1.1.5":{"name":"kareem","version":"1.1.5","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@1.1.5","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"fd5657d5731cc5901c870f3a448105b40ca7de8a","tarball":"https://registry.npmjs.org/kareem/-/kareem-1.1.5.tgz","integrity":"sha512-DadmVg6EOIYlqHeet3TYfCB8Rvm8gsGNMaoUU8ugc0sZKYfKPm6Camly7lcziGnl2U2HlHxZn9DwEMGQQ/ahZg==","signatures":[{"sig":"MEUCIFCEyDS96g0L7nk6VxoE718OUgEKjie2okBQ3dOhMHA9AiEAmkggmehjWk8LuPHhVyWL+r93Nyhy+UJGWg1XHxxkWbY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"fd5657d5731cc5901c870f3a448105b40ca7de8a","gitHead":"1a9f684fe3d555c90846226857bfefa621147356","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"3.10.8","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"6.9.0","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"2.0.0","acquit":"0.0.3","istanbul":"0.3.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem-1.1.5.tgz_1481592637764_0.8255026561673731","host":"packages-12-west.internal.npmjs.com"}},"1.2.0":{"name":"kareem","version":"1.2.0","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@1.2.0","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"59851e833feb1ce6cf60000e0c23acf75c8a3547","tarball":"https://registry.npmjs.org/kareem/-/kareem-1.2.0.tgz","integrity":"sha512-/IvvAArhOx5wL54GpnTUzKXGsLhV6rOs+nCd1JlWxtoMM84kazwfeDKxm7htKzxG0aRUkevJedJDD3yinNDkZw==","signatures":[{"sig":"MEUCIAFiJPpuMb1BjexRqS9i7+zYNBZHK0XpqUHzglKUo6XnAiEAr34WpD3wcsvd0B4DE6ZVWqXq9JvJSOW3ChPr/OdVJ0Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"59851e833feb1ce6cf60000e0c23acf75c8a3547","gitHead":"033225c0111d0ddba3134c7719e7591dbea3c582","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"3.10.8","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"6.9.0","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.4.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem-1.2.0.tgz_1483333035944_0.11472294060513377","host":"packages-12-west.internal.npmjs.com"}},"1.2.1":{"name":"kareem","version":"1.2.1","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@1.2.1","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"acdb8c8119845834abbfa58ade1cf9dea63dc752","tarball":"https://registry.npmjs.org/kareem/-/kareem-1.2.1.tgz","integrity":"sha512-31pUT9o7LL7WgOw6o0yNxocV0avSOt/i2g4bgTAgeM4cWir4kzwQi2m9cERAViWFkgugypSMKEYnBypsLwZM1w==","signatures":[{"sig":"MEQCIDk0NqC99GM4GqGfgc/Y9T6YNMtHtH2FmfrZze95FRa+AiAtXvle30tCWm8kBoKN/sgWbZRWxBczr+e2DctPeRejwg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"acdb8c8119845834abbfa58ade1cf9dea63dc752","gitHead":"d97081ff19fb1f474a8edacb6efe906929c158d7","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"3.10.8","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"6.9.0","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.4.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem-1.2.1.tgz_1486146319311_0.5150460600852966","host":"packages-18-east.internal.npmjs.com"}},"1.3.0":{"name":"kareem","version":"1.3.0","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@1.3.0","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"a042b6fb7ca5119b6f9e71806feb6af574f23dcd","tarball":"https://registry.npmjs.org/kareem/-/kareem-1.3.0.tgz","integrity":"sha512-GBgJ6kr9tSI7Dm9s/CDh8ZUBwYergsJKl4+knkIbUYwgILvPUW6ot3MKuTZ7IH9GOJT/5Iy5YzvpAJufvV+Ayg==","signatures":[{"sig":"MEYCIQCt8g/fMvofnAuBg9Hv/zbpEDTgCTRlYaGBKoEy2gMhmQIhALqo2NF+7rnf3f8xBA8cjaa3dA7tjj4yYjh9zpJOV+cZ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"a042b6fb7ca5119b6f9e71806feb6af574f23dcd","gitHead":"f3a9e5016fa1dc2475d6524e8247612136f84a11","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"4.1.2","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"7.6.0","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.4.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem-1.3.0.tgz_1490569620713_0.2177602348383516","host":"packages-18-east.internal.npmjs.com"}},"1.4.0":{"name":"kareem","version":"1.4.0","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@1.4.0","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"640285bc0174f10d4bf2127bb30e861bc0372c1c","tarball":"https://registry.npmjs.org/kareem/-/kareem-1.4.0.tgz","integrity":"sha512-KHMz1ImJCsca++j3/Nwq5Krh08Y0KduJ3vFwV9VZEYVV6bHV47cGs0Ufcsm3lfhGVwuzZjudz903+zR+mbiDEA==","signatures":[{"sig":"MEUCIBSzk0EHiG8WbeU2dXa93+mC7/0pISPRx/sIM/oKk3PqAiEAwoDG0CwwzM9z7EeMm5tpeu5lpyAk3NYADWwV/VOxCiE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"640285bc0174f10d4bf2127bb30e861bc0372c1c","gitHead":"101c5f58597c6799289b943114179d1a12288215","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"3.10.8","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"6.9.0","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.4.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem-1.4.0.tgz_1492578564366_0.6139681548811495","host":"packages-12-west.internal.npmjs.com"}},"1.4.1":{"name":"kareem","version":"1.4.1","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@1.4.1","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"ed76200044fa041ef32b4da8261e2553f1173531","tarball":"https://registry.npmjs.org/kareem/-/kareem-1.4.1.tgz","integrity":"sha512-nuhlZ0XCFmgK6rLPh3DMS7j0fuZjUHd2wDf+DCqSQMh5/8CMV+ZVZY3AMkkdCskZ878l4S2Hd9Z4yKJAcSpQ1Q==","signatures":[{"sig":"MEYCIQC9vSyMc4Qg5kuRI0z5rbwf+RKW78ioLSdu+7kxeq/DRgIhAJUPdi0LnV82SQPBXY6sO/SOiw+DmIZs2LbPamwz60io","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"ed76200044fa041ef32b4da8261e2553f1173531","gitHead":"5ecf0c29012c9cd880f47ed50fff6d04d703fe2f","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"4.1.2","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"7.6.0","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.4.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem-1.4.1.tgz_1493088673845_0.8512433124706149","host":"packages-18-east.internal.npmjs.com"}},"1.4.2":{"name":"kareem","version":"1.4.2","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@1.4.2","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"3b4af5dbfaf3ac1c08b8e5518fdd81ba90c2ab72","tarball":"https://registry.npmjs.org/kareem/-/kareem-1.4.2.tgz","integrity":"sha512-SxuC6D9ZKV2+sQf/4YQ9sS8A9f/kK5E5N630PAhTHLTmfE5FoGi0m6yuMj+k0TONSAcU6F+XoKOGHEITzwmKrg==","signatures":[{"sig":"MEYCIQC/DuitbBFDrmYUgb3utSpXiHM/99kYG24WTscEfGJbWQIhAPJGVq6yCYhzG6BY/+/BThdI1eGZ5knqZoL9QV7JomZL","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"3b4af5dbfaf3ac1c08b8e5518fdd81ba90c2ab72","gitHead":"8d14ac565e27f5e5c1725549d404b33e193707e0","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"4.1.2","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"7.6.0","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.4.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem-1.4.2.tgz_1499302018094_0.9448814014904201","host":"s3://npm-registry-packages"}},"1.5.0":{"name":"kareem","version":"1.5.0","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@1.5.0","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"e3e4101d9dcfde299769daf4b4db64d895d17448","tarball":"https://registry.npmjs.org/kareem/-/kareem-1.5.0.tgz","integrity":"sha512-DFYc05y1WSs6Ar++MHYRYu7/5r5356WDaKk8tQ8m6rlXD3VLpyG6Np81U78/wWJ4b5hjFXS7HkJNYrs85VypQA==","signatures":[{"sig":"MEQCIDZf5B7ZkDOyfRwL+qLR0F7s6PkI3ngtm4kaKKv5CzswAiBOeAW3JuNV99x4tH9UYl9cnO0dg8P/ip9wcacXjWCZeA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"e3e4101d9dcfde299769daf4b4db64d895d17448","gitHead":"9c491a058fd54832702716522c28fde02ec67661","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"4.1.2","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"7.6.0","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.4.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem-1.5.0.tgz_1500589912217_0.3416421019937843","host":"s3://npm-registry-packages"}},"2.0.0-rc0":{"name":"kareem","version":"2.0.0-rc0","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@2.0.0-rc0","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"5eb4fb7e8809e58a8ff55618fca151f725fe29cf","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.0.0-rc0.tgz","integrity":"sha512-0namrIZyJ+MFO9WVoHOweA0W6o5HjoHXicGES3nBXK24HM/Q8+ZVjJ3p5rubwH0B6rRO9oy5Ud3xlCBPloSHow==","signatures":[{"sig":"MEQCIFqBxAzvA/dibCKYF1RQBz5sXLhPOwX6tmxuF2hXqxk/AiBHSxHmcIvAL9D2Cmx5zsaSvgyL1fWXbv3v7coV6xmeZw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","gitHead":"16b44b56cf3f118b0fcaa74bd43d014640d72921","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"5.3.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"8.6.0","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.4.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem-2.0.0-rc0.tgz_1513562915921_0.599687461508438","host":"s3://npm-registry-packages"}},"2.0.0-rc1":{"name":"kareem","version":"2.0.0-rc1","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@2.0.0-rc1","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"d1b687f48ac8bf87976f5d894d791f3b5dac2abd","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.0.0-rc1.tgz","integrity":"sha512-twB/kdenUyud7haKLXeNCidqCtLL4PLqk5jcsFosZjH6xAxs5TT/fAzY082Twmmj39WrNj3QsM7c8+7FofiRvw==","signatures":[{"sig":"MEQCIFu6EyPolhClmHCD4E2SS2cwOAuSWvD2V/lip2ejBwgGAiBRZjqZeis4gm7AvrZ1tpUi095ktSp0GT05u85xohymug==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","gitHead":"9b83f5267cf60b2f928c7b05b142c251e1a20022","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"5.3.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"8.6.0","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.4.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem-2.0.0-rc1.tgz_1513873752537_0.44321278925053775","host":"s3://npm-registry-packages"}},"2.0.0-rc2":{"name":"kareem","version":"2.0.0-rc2","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@2.0.0-rc2","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"2eb5e450f365474065fe72d06aa81533a123f4f1","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.0.0-rc2.tgz","integrity":"sha512-QbQUbpAgitqDdgrzEMp5KJpvtCC6bN/pDvn4PzSVrEumJd46IYkNWKFnY8bdQIGSV53hErpuQ9qSOpHeIamuqQ==","signatures":[{"sig":"MEUCIGsQhOUmiWE4H126GxHsTkrt3OAxh3JC5ZG9s7xfdbV9AiEA80iuGbn6ij+thmr8botGFR8YneV+N9p9fqqhoTlzu2k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","gitHead":"76325fad0a6213acdb064eb723da7f2ead20b4d8","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"5.3.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"8.6.0","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.4.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem-2.0.0-rc2.tgz_1513898355110_0.1897158450447023","host":"s3://npm-registry-packages"}},"2.0.0-rc4":{"name":"kareem","version":"2.0.0-rc4","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@2.0.0-rc4","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"caab657cea91b205bccb7f9e66883905f6ea1b73","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.0.0-rc4.tgz","integrity":"sha512-XubPYP/sQj+8xzNRbt4hfQRBeybao1h0/sKXaJ5KRT3Hlow2DEdj8f1VHxPhUTtGNHxC1Jja3qxhEtVTSqQFKA==","signatures":[{"sig":"MEUCIQC8oSrjX5iCMtMgrcpUyJCXk4TSHaew+v4+rLW33DdwbwIgS419HXthnm+tpwrN70BrnYZ2GbLbMle9NGW0p7uxARU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","gitHead":"49fc08392f688bc307e9fbbdc8ed0fac19929f4a","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"5.3.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"8.6.0","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.4.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem-2.0.0-rc4.tgz_1513999872593_0.7897973891813308","host":"s3://npm-registry-packages"}},"2.0.0-rc5":{"name":"kareem","version":"2.0.0-rc5","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@2.0.0-rc5","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"9899c745f65f97559c26288cf269a9f30823af86","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.0.0-rc5.tgz","integrity":"sha512-r1k8pO2ebXZvEMI0blJWLT5hvxReDdSKTUoxdaDj4ntSCFuTj9tNs9yQlmFXQeb5vbm0bJgn/AZ0yUHaQ9EywA==","signatures":[{"sig":"MEUCIFS3fZ5jDzDYYrODpWW5q2Vddp4uXjbmOWC8xVizr6chAiEA37d/rgnMBNAbaEPlmJ+zIlyBWBgBC2TCY/qryZ118T8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","gitHead":"25a32ee6a973a966aa6dfc6befe98055b40d9e91","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"5.3.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"8.6.0","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.4.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem-2.0.0-rc5.tgz_1514042563766_0.8245733217336237","host":"s3://npm-registry-packages"}},"2.0.0":{"name":"kareem","version":"2.0.0","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@2.0.0","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"111b0c84db99a6d959794544b757734c978c77bf","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.0.0.tgz","integrity":"sha512-+oQfU2LaUa61wDVRlnyeWfVdlnjiibSoCwfVpvmnv4vtPpySEtTkY6y1zJ8q9LXH506TXCWWkDw0go1TRn+LKA==","signatures":[{"sig":"MEQCIEIxErQM3h2pJZlSZ5LyujB/5QJu+3h3Jrwt1IXUNO4OAiAnC9Vtw8+hJ0clUbUjjRYjrheFTFYVLUynRAtECyN4eQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","gitHead":"f511d1cbdaae4b3b407307d1f7ef2e8b0016e490","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"5.6.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"8.9.4","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.5.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem-2.0.0.tgz_1515528365118_0.2759398629423231","host":"s3://npm-registry-packages"}},"2.0.1":{"name":"kareem","version":"2.0.1","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache 2.0","_id":"kareem@2.0.1","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"f17f77e9032f64aa402b334f91fb4407fe4c042c","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.0.1.tgz","integrity":"sha512-SsR+TZe595qXYzbWS5KWHBt4mM5h1MA7HFXp3oZnPkunxjaymx0fKhB8cxl6/R7Qm8aFXnI6J7DnyxV/QUSKLA==","signatures":[{"sig":"MEQCIDW2C3Ss3InR0DxA2mJ3ONTiOl984ZIBvEw/DNfgHPljAiA98GWgMv2S8L4inrMOBBjA20gOmq6sOe43SsnXTCUd8w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","gitHead":"09c44fbe1f1b4df955e1866e2973430fd301e951","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"5.6.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"8.9.4","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.5.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem-2.0.1.tgz_1515528415072_0.1404436870943755","host":"s3://npm-registry-packages"}},"2.0.2":{"name":"kareem","version":"2.0.2","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.0.2","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"fefa6228859beb67f75ab4962869a8d1b0b2dda2","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.0.2.tgz","integrity":"sha512-rWKAGwHPFujnw+eOqmMZWTDgbuUrUXRWH9H1zfY49UmNRACgT6czqQujZHvn1g9NS9LozkYwlob6IpgoKsJcCA==","signatures":[{"sig":"MEUCIQCNYboUbdYIrRzfcGYHXEYNI8vw+9yMNMkwcXodtlbSiwIgL/e7Knc35BImPkJ7OYXYUFhJdX8S5+5EM4/CN008+gk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","gitHead":"fe87ab6fc538e0e3f61bdd4de601bd635d850b2d","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"5.6.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"8.9.4","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.5.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem-2.0.2.tgz_1516754539167_0.18886751728132367","host":"s3://npm-registry-packages"}},"2.0.3":{"name":"kareem","version":"2.0.3","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.0.3","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"d05c7ad76b045bc50c197b2cd13d2d1ef5671070","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.0.3.tgz","integrity":"sha512-WloXk3nyByx9FEB5WY7WFEXIZB/QA+zy7c2kJMjnZCebjepEyQcJzazgLiKcTS/ltZeEoeEQ1A1pau1fEDlnIA==","signatures":[{"sig":"MEUCIQD8wSL80Wk9rKOt+FOGVcrBhJWb4cs9F5TKnSn+30Y66QIgPtwAP5a9rPvQlZa+byN/YEIKA6lTMZEZFRP4xlSgKok=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","gitHead":"3c1abe5c9edba71d140d662724980e76214daa2e","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"5.6.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"8.9.4","devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.5.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem-2.0.3.tgz_1517457302688_0.06510809995234013","host":"s3://npm-registry-packages"}},"2.0.4":{"name":"kareem","version":"2.0.4","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.0.4","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"8e648733c1e45b7d5ca1cf36c364e2787f895ced","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.0.4.tgz","fileCount":12,"integrity":"sha512-emosNz0ruOjDkyH2QvnL8m65Mzl8D0IBP3PukQmGl2cjhqMrQajq3OcLdLeBV5GzPfqmsuDQB0WkZOHVhyK6jg==","signatures":[{"sig":"MEUCIQD9iyq/0Oy1GFjeT7QzcMS1xnN32M6pbIOrxjzlN0NG7AIgCywaQ1TfhOAYMXnIrW4UQy09OWvshoDZ5njRv6cLUVI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":60396},"main":"index.js","gitHead":"2ab02939287f8fe96d2fa1894fb79c20ceff66dc","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"5.6.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"8.9.4","_hasShrinkwrap":false,"devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.5.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.0.4_1518114058557_0.5677702472839816","host":"s3://npm-registry-packages"}},"2.0.5":{"name":"kareem","version":"2.0.5","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.0.5","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"437e1e40f1be304ee21b3e4790eb3a05418b35ca","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.0.5.tgz","fileCount":12,"integrity":"sha512-dfvpj3mCGJLZuADInhYrKaXkGarJxDqnTEiF91wK6fqwdCRmN+O4aEp8575UjZlQzDkzLI1WDL1uU7vyupURqw==","signatures":[{"sig":"MEYCIQDz+bt93T9qWIMpVH+tTR7xDhZSvr+5+RkdTv4TyYtbjgIhAJ74h1XaohJPBTYej1PuHPD8ZcXubLjV3+Y0muD3gk1U","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":60560},"main":"index.js","gitHead":"3286612dd64cf0102683a676b2cf729522b2b8b7","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"5.6.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"8.9.4","_hasShrinkwrap":false,"devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.5.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.0.5_1519342006574_0.09182150746860507","host":"s3://npm-registry-packages"}},"2.0.6":{"name":"kareem","version":"2.0.6","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.0.6","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"011ed59fd718bb147c63141a799fc888cd5a211b","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.0.6.tgz","fileCount":12,"integrity":"sha512-/C+l8gABdHsAIfNpykJNWmYodpTnDRyn+JhORkP2VgEf1GgdAc+oTHjVADwISwCJKta031EOIwY6+Hki5z8SpQ==","signatures":[{"sig":"MEUCIBXrNvYKNI6+SoVbml7hQcF2mG4cSk6ERqEJ9YGj0s57AiEAvrYc616InsLSMZDooKCTKe255w1DM8TeP33L6jEt1DQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":60664},"main":"index.js","gitHead":"f3d406b8b0c81ab0dd7052973d21ab59f5c42059","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"5.6.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"8.9.4","_hasShrinkwrap":false,"devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.5.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.0.6_1521738355197_0.45288650143164677","host":"s3://npm-registry-packages"}},"2.0.7":{"name":"kareem","version":"2.0.7","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.0.7","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"8d260366a4df4236ceccec318fcf10c17c5beb22","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.0.7.tgz","fileCount":12,"integrity":"sha512-p8+lEpsNs4N0fvNOC1/zzDO0wDrD3Pb1G+OwfIG+gKVK3MyY5jeaGYh+9Qx6jb4fEG2b3E6U98vaE9MH7Gilsw==","signatures":[{"sig":"MEYCIQCkG/Tw/fn7CBwduXBGU3bAHQt0qI+5iWvdmfGzbk3RjwIhAM60/iYFexWl5cuhpRekwfpmqUV6R7Ao+b7jarQuVNW9","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":60744,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa5K6pCRA9TVsSAnZWagAA5+YP/0E1bzjjrG8qKvePcX5i\noZeUJn7rkqrLIKgYjIek8/FG34Q8LCVxqVGOHBReYsrvz7KRM3bz01gpPNjH\ntEgc1hgnMvkcLqvRIXxJug094vC1B+FXj+KN38PuekhTyCnVvMMBfqrEP4Dk\neomcZvth3BBBq5aoSao2Ybyi9Ve7hcRzHQluxi+p/mHob4rHvFE0UgIOPJUD\n365zLJV/1nFMZWBkHP3P4srG4Ssi2P28i16Z5dE5bjZborjlQmv363NcPRUF\n4E0knkQgAC9YQIf6WrOt/WNxiJhXgZ6kaf2mGYe0vdjTZM6c43NrPL7Q40pG\nZTUJhOFflJ1RgW5rqunHZfq0npRxqsrRPznNQbV50e02veXLEaNmFwqrDFtL\nGtoJ6w0SpRZN8nmSonD6U2HImlRZQhseUldHD0sHDRTvepfK2hCBH3+BRGx+\n7LD70RFX+p7MwCL7BA6zaLCqYfyQkOgliKskCbnpnkRgNZtPJS8L99dkbGFO\nSxCQpVnQ7yBeyxAtV9kYPRvb2SJDcRq7jeUg2ddnemAyMKzipnfO98iUjj4E\nNni6tw9k/J7sSVdaV4ZcWaj1L5mzIXBySPCLfap952HkPtl8o0FMZm8+o9sd\nwJih2nWWVHCSB/v6DBVZUsQvhl5/a7XDIxIdzhBHMn6I3mZXriBhax+8HTTL\nZy5j\r\n=A9mu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"0bf91e67ece2d244015257b721a50aeaee85e0ef","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"5.6.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"8.9.4","_hasShrinkwrap":false,"devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.5.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.0.7_1524936360080_0.8895631180596701","host":"s3://npm-registry-packages"}},"2.1.0":{"name":"kareem","version":"2.1.0","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.1.0","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"d63197b57311830e4ceb3f34431f22f2de826a03","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.1.0.tgz","fileCount":12,"integrity":"sha512-ycoMY1tVkcH1/NaxGn2erZaUC3CodmX7Fl6DUVXjN73+uecWYTaaldRkxNY3HeSKQnQTWnoxRKnZfVHcB8tIWg==","signatures":[{"sig":"MEYCIQCXbg/LcWfQZAMgHnxGV2ODfFjCpXMulG67VQhQREvk1AIhAL3wIQxg0b9bpu/RBBvUcvkI16rTAmULTsHcRgRaDvPJ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":61270,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa/E9ACRA9TVsSAnZWagAAu50P/2P1UJ8tvqIK5DCThOMk\nlMyoROnMlNO7+6rK8H2s/tDEFD9GoIbvqDk8spcmS4G1jgec3KW8kU+6lbRe\ngwC+Gf432mUl7KjIK+bdBDimgbgBoRVgRPjzn4Hj70cXWICB5BYIA89hXoCL\nJAhmZhAaj/BGgAgTf8ln+6yH5iuDHR3vPC2e7y7V5I0qOoK4GB2Rrs0dnnD8\nDrNtUZf8K6UV+wmG3e2SQuZg81vuvCh7kH5hahyf/wcCr3jVJJRL0JegyIOA\nNGDlsZUQqkZQdp4BTTFgPWuARUo7ttqQeKoiOxvXkfChDL5VrGxfGlgGeoMG\nk7gn6g+wxFv+97kB8jXeuPH7hVKeVuJNwd9b4IeB2Bnh700ksjFvFb3r58Tz\nkQBpUZL/FwYzB8MHZxlx5KyE8fB6piP5jvXGSxqheJswCLZmKbJ0qdynIyfI\nVbaHEVzOQrpEZmJ7aHlpl2X6LNBfS0h3bFcv1jMNPC8CVtsBDn5S3SE5jm0X\n/Vg0bPbilK1BYpMg9auRiIm1luw04o4j9+jQb4jNLJjEvpI4EgQAplX2wmhs\n1VlBwPzf0JseDmS5v+EUyZP7QQghcf3Xyz2WKj1nGM54hD3OSO++EUHD2Nv3\nNJLBRJ8uYR/7OsA6R3+3Ge0F9fWWVr9vEeZW/rzPHTpNLQS+IufljeQqOcc0\nUKXs\r\n=Ia2W\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"ba5f1bc7ab85a0743fd5d7d358564f9a9cced50b","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"5.6.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"8.9.4","_hasShrinkwrap":false,"devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.5.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.1.0_1526484798435_0.4570851554332196","host":"s3://npm-registry-packages"}},"2.2.0":{"name":"kareem","version":"2.2.0","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.2.0","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"395e9f978f3f3badccbb0808d6941449baef6b24","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.2.0.tgz","fileCount":13,"integrity":"sha512-5fOOfByYQ2hfl+5ji7WUh9UE3T1L2z1Btp8Or8u9F4HXpp7b4oUVRM/7bKDRFO/GmmlIPBEV7tIBGlw9ziRURQ==","signatures":[{"sig":"MEUCIBOoXsBj7k8c9pwDY81ZEoWC8hAGPLWBExGgo/riWET0AiEA53dTJms8s3lDOJ8DQgewgMHV/vBq7TisOa6AUnDJPvE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":61666,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbFpooCRA9TVsSAnZWagAAiJcP/3t9VfmLcQ7Aq08rycEL\nddMC4ko1uNbzJ0A2/lr0DS7ftnKaq7q3ydoNY/jIJG62ddzXZ/1275mjd1Pc\n4xEEWMEJ7oA8WTj9zHkfOTVOA9QMj9dR0i04+NB0l3/LVXqoJTmsc04g5uWU\nDhwgAeEd39xG/2895tnG+94sQFlKLP7wINqL5UCZUnEUNdTEaAIbODjF2sbC\nmVolqozlmR2lfyIzUNa0WJgZ2NwAy+HPWyfju9Um+neqITYMY8+16Fr8egHM\nvra23Qangxl8bnkY8Y52hN/qsd48l7xUFUcsemKSNVZYhQGgO+zEwytt8olC\nZM3gsAVI3E/FjxAgaWIrkrYe3gKN9tCzNOCbR3+OEzMYWuYpkJCNS2avuI4N\n8BEue1Yedx4ZznKFmXW95S501ikY/V9aAy5rJ6E4mQDJ3DtMp0aZfYKs2SQk\n8aIu20CdLe2Q+wZa88KWT9sGA9eQsvsaC2E+E/iqSgTLNR4glwqVPn1kHXgb\ntm0W2VM0SgJVMmeuMsQmfb00VsahuBFCeaH8cikGKII8/I/P6ir5yVwoZEug\nKOSTf6kiCRItTz6juvT64XbIYV+UOHcnilCzTiF3pWCkFcAXGiSpjpSuXI07\n3+wJoU1rRE71U4auHVZyJVqFDVA64B32t/BmMZyhdPSrLJGGQqQgzpRC7kmf\nd7dv\r\n=aVmM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"ff9ad039ac7c5aea1d8e8750cb4a0b3dbe50675b","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"5.6.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"8.9.4","_hasShrinkwrap":false,"devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.5.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.2.0_1528207911450_0.7257699893853564","host":"s3://npm-registry-packages"}},"2.2.1":{"name":"kareem","version":"2.2.1","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.2.1","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"9950809415aa3cde62ab43b4f7b919d99816e015","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.2.1.tgz","fileCount":13,"integrity":"sha512-xpDFy8OxkFM+vK6pXy6JmH92ibeEFUuDWzas5M9L7MzVmHW3jzwAHxodCPV/BYkf4A31bVDLyonrMfp9RXb/oA==","signatures":[{"sig":"MEUCIBwCxtHXh85tfoR4Wpa8m2n4+2mu/OhOz1vAge1VpehYAiEAqvkVN9BAQ3zkafbt6tSgVCh0E4HrjMxEuf7bqx7meCg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":62146,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbFp8YCRA9TVsSAnZWagAA3JMP/RKT+axYx8goW/FC7vGT\n6j7iyz67Qj/ZxXhFwFjibhkK90YRauQmRY34VUu0U6xyMn+0goH+2nDDnEL0\nC/rHLDKeUQIfrzSEkbukLuYzibu0j2ET7oyTa+yNvjFHjRIFsNWWEzgvYrTy\nBOdCv+XUefoj85PwUKNaFRRCmkVF9dCb/t11Ze6GXzoCBSP4S8MO9zPMf+z7\na82YTcUREEbMXexrM8nSAl0uyoEJKRO95xuBRYE4Se1gm0uW/qzEf61FZgzY\nRgj0rj5+4jbYLX44kbQlqH4d4Opunj3Eu+5sfr1CwfWB4jIwlUmHx/gDFNjo\nTdjWfMhC9OybLeVdCB25bOBCFBv4b2IRDaDuOYm6oTGCU/fCyRo/IST8Iy76\neMHP1LVZDCWdzcn/Aj9QL8znHFjqF5B/71nAgSuJIOuRS9MgjA1i4ZhgUWF0\nCe26jTbYoqfr9T5oaog86TRW84obqwrYVwfglQpd8S+GIpfYrYjcFW5SWc+o\n1FzFGSBlWiB81QAtV//GSDlezkLIZFRRZ1avfzwVoi5cg3bkzIkS/OSPLLhk\nSLnsgBA6Z82kJg50FCO3KxC94FcM59XcLX2z2QMmqJZUMDUYi4FPrCjPC6Sh\nIlSiEWWDV1iy01ALJjK3lNMQzmML6J+rD2BmQGJJjiGQNw1F7syi2PBDj+Xi\ndRdq\r\n=Gen1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"4625a64c63476ae4736cc7eda58144291e04c6e1","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"5.6.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"8.9.4","_hasShrinkwrap":false,"devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.5.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.2.1_1528209175587_0.9179273159628647","host":"s3://npm-registry-packages"}},"2.2.2":{"name":"kareem","version":"2.2.2","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.2.2","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"407219b1f6bf68b0bc4e2a8dd9fc320c31d388f6","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.2.2.tgz","fileCount":13,"integrity":"sha512-HEjdgbnCZof37KfLGH8MM5TvQ6x3sAS0e8U7MEFEZXY9w2LrB5zeNzmsMCY88kQanY1qhxuOJc3FV5n5DggJFA==","signatures":[{"sig":"MEUCIESGKJvPmQL+Cs0tECN4/rtuGGnGHWvei+e6lcGk851BAiEAiL3Fz7LP5PUlJqLncFjVy1lLB3596eq/ERxXa7+dmEU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":62216,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJblcW4CRA9TVsSAnZWagAACgYQAJI8nu5RyQnceIAWO7HG\nlmAuiLhfLmmSOOiL/oskh/qHUTXYeUwIzxu9euKYejYB2hWkVfd5Ye4SHATh\nYyFL1LAjYvHLMHN7N1xxV6XQf9KRv4mcF29pI8CD3Jn0qPwIPFHSp7qpJuuU\nezgfQpn0MCuRyrtpougniFd3cTFLHIVjt6HIKRFyS/d/UqeWnxFMEkbUaIVY\nanSTdui89fvITMkLqiGAcd+xX3iaKj5FGIvTr/wvqyeC3c2RNfFrgDFHUJkt\neKQB9MdTj7SJdKc5XfvFV2R+ByomANjcj6dmrO0DbMQz/JYmeyKmWKuoKm3N\nQQCur/sHs1v24NNjPgXvmTOhEk3WukH9GuI/HLDbR22+kTyuwJILJ6XnZXHt\n0dycJOiS9vyyP1uFpHNgd4SxmZ8zymzWvv/0l/LUbd6ZO8VVINqd9NnL52xP\nmcFkIN/rp4JYkkJtqto+7cRdyzphCIQRZ5Dw0bIQUU4M7VRgRWPnV6DOOsBG\nX/ZhpMzJHKJSg5tpT+THcD5mbQi/b4L0tUdtJy8FIoySQ748loTgnt6H2x35\nrRj8H8n+aJhNdYQPCaSAp61DUM9zckrh1U6hN30PiTySZfz5IkNreBPLXRQA\na098HMRAkpJAPpc2B7tZ9XHR39Uw1tr06f86C/UPtpbb0PJc5IF5cI2FhnWw\nAgfc\r\n=DBDF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"3f0144d9aa8dd81f46c58c96ae9e3deb372c18a1","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"5.6.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"8.9.4","_hasShrinkwrap":false,"devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.5.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.2.2_1536542136087_0.8527113434836049","host":"s3://npm-registry-packages"}},"2.2.3":{"name":"kareem","version":"2.2.3","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.2.3","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"c70cb558bcf5682d812dfcdd7414f37dcc31fa1c","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.2.3.tgz","fileCount":13,"integrity":"sha512-H9hfXZjoNjC2u89h9f8RRUSaBE88MRFhU00aOI1mJk/GiG7Jk00pMYrJe683R/KjlnRTYWajNfPCXITgOMo8Bg==","signatures":[{"sig":"MEUCIAnRsj/P/ggRer3+L2ub8J9AmvCjJ0eSPfuNpf/z9tjrAiEAmD/Cgi1/DG5GKRqjafG1KJMA2abBZAni8vFMZFw5xqg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":62217,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJblcZ1CRA9TVsSAnZWagAAesMP/R0AOiYR/DexV2/5fE5t\nTG/q00ZFWy1RGHvpISFgsALFpHw/lzZV5yoQgorBTLst7NU6lPoEaSQB67HE\npuu5JOgtFnTXE8uGTKpjps7hU87oW7XC7Ro5jc/uq5T5FclYn38jLv2Ay0cw\nR7NrtdeTWOGZvGSNwRDb9Ge5zFssJkqkk9FhNjsT95DQ+hVHz38G9nXpixX3\nbAgM1hDnnU4QdEXJfR3QaphjR+sg2S8IxcGlxxNWAbB+tMdDxOt8jmT7cSbl\nIfLF1MqPzyk5q8psc7PKvIGUqfdjG5tF77CvUKBQmmYZXmkQlK7ucVmafzAS\nU7dgr2FIwjfxG4vZoVV2zgrKa6pjm2WKkZmN157qHymQoLy4qutYKoOPEHmR\npb5SIhCr0WyxyHnR5c538z0lclLcjEgVp6zmT55jzHYNPkyswgq8IRLE9Wmn\niU5+4pHaxcoymvtjEyaw+f3G+YDQpMY6zVDZjoohZwyX1aCl9vnZCPFmzo6k\nQZrhwmDQZg7p+mKOmrJ9RZJZEUZaS6sApofsazg6map2503rBAZARbOgQ9NL\nMUYL1uuIKnh5HRpA7sVOvbAl58HU4hVh0A878IWohJbclS7o8e/7b4vHoXlp\nOHwGZF0pP5Q+rM2amIvAVBmBkCn5PVIKm2ceYBz4Jl5iMvoLt/oFPuvdc3su\nbzTi\r\n=0iKF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"af653a3021faa796b5cbcb98332588721e683ed4","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"5.6.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"8.9.4","_hasShrinkwrap":false,"devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.5.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.2.3_1536542324482_0.512030496187547","host":"s3://npm-registry-packages"}},"2.3.0":{"name":"kareem","version":"2.3.0","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.3.0","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"ef33c42e9024dce511eeaf440cd684f3af1fc769","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.3.0.tgz","fileCount":14,"integrity":"sha512-6hHxsp9e6zQU8nXsP+02HGWXwTkOEw6IROhF2ZA28cYbUk4eJ6QbtZvdqZOdD9YPKghG3apk5eOCvs+tLl3lRg==","signatures":[{"sig":"MEUCIQCg7zrjG05YmerX8TS4OpTSKcpQFAKTzU5qLxez42BNhAIgDqmLPIFGPfViN1Jh+3VcYYTG9zMjpi57ZUg6TiToRwE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99703,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbqP4/CRA9TVsSAnZWagAAbmoP/AudUh2lo5TxCM+VgdN7\nYl7UBtpvKS7ZRNM4Jji9vjAW32ZP5DRcsfmQlz5PBI/AHcL7vMRazXqLHUmW\nJ6w7/vB5t20uvuFH9xmlJALOr3gl35ddkXneOo700WAHICcoruRqgk6giCB0\n6jlYFJbTqhXGrQIxU7f+Iv2eKh5+y35VYVQSX/5EfmnqfWV3IYRtQ30OSvcB\ndXSobawN6XR8l3U/A2R8cYanSgyRl9KrtesLK9F9VUgOukIVeSjNocn6M+yB\nL+RO8XGOiRISJVQ71jCVcAfh4+VwkjqCI4ZOopIrufAz5BXB9d8Q5TBwT6i6\nSujDyFboyNm130Bh+CurzneIvKJ2HNNiExVNi9lRW42xCUrF4ZpVWEgy71ZU\nqtwq/Ugm0V85gPdumkN8hGgqiyBCvNtcJnJTDStsPg/qVA1PoZu0vZYJUCsp\nrr9Ygqr5T6cBGPI2L94kxSiR0mWhWbRguPvo9HvvCJj3wxpBltz64iYVw1s/\nyDUcWyaobhCLyFu7kdb3y3lyZGBYMCAl0nmeLkuinGsHlmLpZGH4dY2Q3AIL\nFmM9VXpDwqM+27BSW/zsJrGugIN/cgPEJ+iGG7HZxL1d+k847VYVvqbscbx+\nsZIBf0zBz4vUB6hXXhzsIpCsGUNtV+DanGuLbuSLDZJJnkGHsZ2Mt5xsXOwZ\n2AYL\r\n=WD+d\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"1beb350e429b650154ced5f604de8a1cdf153e3c","scripts":{"test":"./node_modules/mocha/bin/mocha ./test/*","test-travis":"./node_modules/istanbul/lib/cli.js cover ./node_modules/mocha/bin/_mocha -- -R spec ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"jscsConfig":{"preset":"airbnb","requireMultipleVarDecl":null,"disallowMultipleVarDecl":true},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"6.2.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"8.9.4","_hasShrinkwrap":false,"devDependencies":{"gulp":"3.8.10","jscs":"1.9.0","mocha":"3.2.0","acquit":"0.5.1","istanbul":"0.4.5","gulp-jscs":"1.4.0","gulp-mocha":"2.0.0","standard-version":"4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.3.0_1537801791037_0.8873303612707288","host":"s3://npm-registry-packages"}},"2.3.1":{"name":"kareem","version":"2.3.1","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.3.1","maintainers":[{"name":"vkarpov15","email":"valkar207@gmail.com"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"def12d9c941017fabfb00f873af95e9c99e1be87","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.3.1.tgz","fileCount":14,"integrity":"sha512-l3hLhffs9zqoDe8zjmb/mAN4B8VT3L56EUvKNqLFVs9YlFA+zx7ke1DO8STAdDyYNkeSo1nKmjuvQeI12So8Xw==","signatures":[{"sig":"MEQCIFhL1tRQWc6jPBVZfuKbfB8Yr8UPyBLwnmQ6BXT8mEnBAiBnNhxb6YWhEfxX5d4mQvgbBMVTK1FDCYGD9eTLCejxbw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99845,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdX2EkCRA9TVsSAnZWagAAuzQP/iA6xm/PNboD6pR3wg2n\nHWF/ZFAYZ8kYArfjYXoLkyivy85Tw4I42llHt8aKhlUeX6DdH81diTC2v6ct\nXwxBpqSSEw/JLj1LRhvilT+/OGl6EU7UndlnFnJVmbZQiw8i8xlcNkfSYT7Z\ng7qX68pxO/cy0Fj7eCqr8HaSQ4NNI2i0uhvIqkS3wrS/+58uU48ylU3GNj6M\n8kRpnMmS/GXX4UJY8E4Ut+jkqTAQesi4Cf8Q4F0sm+OqPmOLeCwEqhSPI+SN\nQaAVE7jBXJBKUKkHF5UYuaIz5qYYfphPbJ4JxYHDpOvK3Pud/hRS2p5xIl3A\nMSbxaeGXaRVzMQlFvd/5VveZOiAGxlsi66MRH4mioHMlQqibWcXDECNkvEs4\nASJT210IpIdiinebHXjfiqeoUKthlChLANoFnehjGCeqowgLu76/JLg54VRZ\n2BcN8Xk6oTX+VwbZ1vxOh0FxUcrrIO34y0dnqFjl8a8mL+y3RDzoS2eZyOyo\nyDbBWv4oXizhFX07c9uF+0ugGcMsWNj2b4w++8WOgKy576Th2firlLMYUFaa\nBobAtDl221vU8Opk+dAMuqEL4vhqibbpWM2/2Hj973E1soAcCAzkLfDMXayJ\njzvE4IFpt5c4Ut1uXCCRT2KsDzmKZy5Y7wcE/WNVF+H4VcS/sO+lkCPercxC\nkMac\r\n=vNC7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"4f3524b9e9ac15c2bb74f30d47d1294ce7d58ba7","scripts":{"test":"mocha ./test/*","test-travis":"nyc mocha ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"5.6.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"8.9.4","_hasShrinkwrap":false,"devDependencies":{"nyc":"11.x","mocha":"5.x","standard-version":"4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.3.1_1566531875983_0.7788997997884188","host":"s3://npm-registry-packages"}},"2.3.2":{"name":"kareem","version":"2.3.2","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.3.2","maintainers":[{"name":"vkarpov15","email":"val@karpov.io"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"78c4508894985b8d38a0dc15e1a8e11078f2ca93","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.3.2.tgz","fileCount":14,"integrity":"sha512-STHz9P7X2L4Kwn72fA4rGyqyXdmrMSdxqHx9IXon/FXluXieaFA6KJ2upcHAHxQPQ0LeM/OjLrhFxifHewOALQ==","signatures":[{"sig":"MEQCIGbpeN2dTcqqQc2buzA47E+JEck81ZCXi3EUdsv6k93rAiBNRo4yyZXolqUCvAeV6CBfoy3oQSrfZPk+F9F7ZQLBmg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":100929,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfz58mCRA9TVsSAnZWagAA2wcP/3WZLaQHVDsnRYvVqFEb\nKh3BRR43nnxwE8NjiF7eBJWgaHtHqZ9Ph4fMSzgZyRgD9SltYFXQYV7vwkdY\ndERC48IKdPC43vCF/vlmkzcft0fzBjdrrttGGsMBXjy9/+fn81VYwWF88r4E\nY9/neu4rzdU/5ZFP38Wy0vHghCONQr+l73IkA+eH6LksSp8OSdBsMMoYDUM1\nKi5RJmA1FJ4tNO27FjQZH8017s5auwHwtZgKiwZIu7X0hF+lJPnqICctnkw1\nS4+MbAonl05Jb5j8lO6ALR069A+3efYH7RLgZSPKbetB/wNVKscyuf03MPsg\nlE/q4ExJEk9mlalbXW0qeAD01PIMcmJLqXwexDqUNlNpvErIfYgz3cgXcRyx\nwglwtjSaBQ8cCMUlLQd7jK2SbIm4zvBgFywkGtk3zia/TqAN7DuraWh32+h0\nKc83cq1mvx4w5srL2NyQILrwCFuT+p+iabBvcB5B7t1K2TicKHtEvCJqTeSZ\nEXLtTS0E+uywXO6bjX38sKUVQ4YmS2NMrTPcGBSWeu6eKlFv1LvM4pJWaO6L\nC9ARUQRm30Sm1ZEqJNDV/A4LXLSKVT4PVMBCOlaSPqkWO3KUrrCV5b4xOKuS\nO1hs/0ztvC21qGYLMLSRH/aFUCdyl1aVfZ2s9hldKzX3Ekps7SRvRkAngYxD\ngSpV\r\n=3eBn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"bb76ae1050de78f6aca8547174f0c7bddf8b379e","scripts":{"test":"mocha ./test/*","test-travis":"nyc mocha ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"6.12.1","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"devDependencies":{"nyc":"11.x","mocha":"5.x","acquit":"1.x","acquit-ignore":"0.1.x"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.3.2_1607442213504_0.5515351138768962","host":"s3://npm-registry-packages"}},"2.3.3":{"name":"kareem","version":"2.3.3","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.3.3","maintainers":[{"name":"vkarpov15","email":"val@karpov.io"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"a4432d7965a5bb06fc2b4eeae71317344c9a756a","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.3.3.tgz","fileCount":14,"integrity":"sha512-uESCXM2KdtOQ8LOvKyTUXEeg0MkYp4wGglTIpGcYHvjJcS5sn2Wkfrfit8m4xSbaNDAw2KdI9elgkOxZbrFYbg==","signatures":[{"sig":"MEUCIGPmnQWeKC732TSWXe1tTmmjZ217adPUOTONzCN4UhFFAiEAw1jDVpEMVeZB1xZ0nx5HtamHf+AGLmUTeyd9H1/BESM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101500,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhyJ6kCRA9TVsSAnZWagAASy0QAItQKTxZ6p/BHrp84QkE\n1ZVhuc7Hj3eQoLk4aq0Y1tUoLV0UWXv/J01OFzfnHS/M/+Csw2cQwAKXAcVK\ngYqY+p9id/t8u6lnAB1W6w297dKegMxeWNerCeGhqPvz6AOWLmDjcly8TYVo\nXMN5jrKvP5kM4OkR41r0VLlzRfDbHSnED39kfVXuEJHODuWqmgVw3GoWFQ7S\nKlucBcISNNjGV1jnH9MCCGjWUCm/v0WNXxnJFwIJLNcPA3mccXp6nnWn4iSN\nrKRw4iKdNs7JErrInBTXcwx6v2A3pu0Jo2agWWVpwUPEzMRKT3u9JgIO9Jo3\n1ycMGxt5lun3hMwMzN8JWVvMker91OSSFOlXYblAGOQ48JJWKf0DtVR6nGnT\nYHSTx6+Rm0NtV2SQS+vH4AtftpdwSwTfsoJDJc+GIBfskfBUETUrHuLoEvgp\nCeUB4Vz3Q1YrfB9dAvI6ujvss6BmvbU70vB/9wrDQ0LMzKs0GmWslvOFf8Ln\nREsvNDbL7inlK1dnxyIO9j4YLzt6E3lz0XeH1Fs/nQqoZ4vFbF2VWbD8J0He\ns4gIikiIRcSlhbETpBVc02CHlWZCJmZ6/66aRwD0vYug2TKgjqmg+4v3nSoX\n7m3iSZfiehqkKBcBu9XLtyj073PG9Xon38lzH6gwhcedfGiCSFRgbWkP0o3z\n/Bux\r\n=9m2O\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"67bb3512893e830e4beba3fcd7757a5a39fc2eeb","scripts":{"test":"mocha ./test/*","test-travis":"nyc mocha ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"7.18.1","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"14.4.0","_hasShrinkwrap":false,"devDependencies":{"nyc":"11.x","mocha":"5.x","acquit":"1.x","acquit-ignore":"0.1.x"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.3.3_1640537763967_0.32988942680441435","host":"s3://npm-registry-packages"}},"2.3.4":{"name":"kareem","version":"2.3.4","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.3.4","maintainers":[{"name":"vkarpov15","email":"val@karpov.io"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"b38c436fb4758775d919b2828b4009db59b52694","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.3.4.tgz","fileCount":14,"integrity":"sha512-Vcrt8lcpVl0s8ePx634BxwRqmFo+5DcOhlmNadehxreMTIQi/9hOL/B3hZQQbK5DgMS7Lem3xABXV7/S3jy+7g==","signatures":[{"sig":"MEQCIEcRpgoDtwlP4UuBEsXggDG5Ck+nJ6jxoJTh19hzaatuAiA4sKxlsrcuhEOpo4YBFmm1Ri3Dn2uIYLfWY1igJ/gRhg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101400,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiBcAfCRA9TVsSAnZWagAAPloP/RyOwKDxEECic/BdAv+n\nmYB5b9NhjM3oIIaj/P+gNe2zwuWqDc7nX80GNPfJcer6y1yK1f6eTcD7oZhe\nMZU9W2s20AH28RdS+azPCv279QiXuVHx0U9f8ftluEZG3HimRLNWhIevaYHI\n+vRErRAj40KVMPYIXH9tlp1vmGSHZmWGbPUfFBjaX0tcox9LFRZgjt1QfQrj\nWuIBdmP7DcIIsqF30Puue9j9sC57HpL+IPeVKRg+ngMCXa8y4l4zecSighjZ\nqZ+eLP65mF0LPKyQXN/+TKORqq/eEfAscU5wKxE/7S2mOA4y4rlCOO/4bnsP\nYXnO1w5U96MiDU7yifsv4AdH+ZrmgEmwB3RynzkF/lgQuaFvMmF219tBA6hQ\nVCvrPhvMXRHBLAHx59ijtgcZ+D4gQlH4GAkBSXSBqut5g+hx1GbUcxtZBgmY\n3HJGsmQB1SxBYGrZTd0xizQq5gwqPU4KYP3jyR2SEYGGVletfPVbZVezpB6J\nAbzKv58OGH+pShLuH9OEmYxnNOSSA7+8ncvaOId0p8nyzEZfTDvQCmmGLN4v\nqM7X3njFVYixk09hXnup7Ea1oyxSGLd8uOz6xI+RF2ccrEK4ezRbT7yqnVu9\ngVmkmirdJXE8lRYkwGpBwQqZzzeCdu68ivjZ/AbhqGmwgYB0ozxAWK+kKvVh\nwQPf\r\n=YriP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"558a6e6e73c0430628da8e45c5eb408ae9ce14cb","scripts":{"test":"mocha ./test/*","test-travis":"nyc mocha ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"6.14.15","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"14.18.2","_hasShrinkwrap":false,"devDependencies":{"nyc":"15.1.0","mocha":"9.2.0","acquit":"1.x","acquit-ignore":"0.1.x"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.3.4_1644544031748_0.018947982350439485","host":"s3://npm-registry-packages"}},"2.3.5":{"name":"kareem","version":"2.3.5","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.3.5","maintainers":[{"name":"vkarpov15","email":"val@karpov.io"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"111fe9dbab754c8ed88b7a2360e2680cec1420ca","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.3.5.tgz","fileCount":14,"integrity":"sha512-qxCyQtp3ioawkiRNQr/v8xw9KIviMSSNmy+63Wubj7KmMn3g7noRXIZB4vPCAP+ETi2SR8eH6CvmlKZuGpoHOg==","signatures":[{"sig":"MEUCICS5HRSLVqLP3ZyoxFsxN6hq9TryqjxEIXbNxq/Mq7mFAiEAoK+yRlXSNZK9HOgAR4WwZF8Lucsa6JYWWulb6QTDgaI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101385,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiOyFmACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmoryw//RLK3yqaEMslz4igoHT4My7xwQSYqFgHe4Lh8vyRZfnRsIFno\r\nwsGa/+yv9sReoON75zIy6aOFW9Pva7WfAnMEsCMBZLS3L36c5rIqn5OPIfOI\r\nkQi+O4iCgpLHn+wesSbEGWcL0/d1TbF9JHIGmvTszNrf6/7oBbJV8VouBUEc\r\n5jNAvPiSZejy2sQrU0UXXhXesmNGiK9lz4fncYhImj0iZwvYpOjhNxyC7kXe\r\nqBBXqyVZTRgTdi30YfPYTSF/4kLHfTsLSxQ4DWhDHV1Ujn22VnmDWu24NCPA\r\nZ16lmANkfb8fW8SEpiwk3ZSbcGTHXTep1fVFjAnezWTZAnlDrxc58FYnvM/H\r\nuhqTOQxnlNWXBuctCoV7fYYf+TRseJAIiucKrfOZfaAO8ndtdFjvYxz2Xlye\r\nfxmHSgXOyLR7iiUsDAzNGqQ9r1hytpxkuMPBWWXjO9sfij7+I/Uv6GH6/RUW\r\nXrlScK84QbJaOJ8N/B1mjRpGOwVmNcmsEjAGBKsRdRqkQn51xFDRtSlEfL2g\r\n9bBO0FzMm5qCGMSp5gK9aMrUGxgpqU+N7Vyd9ZWYo3Gy5aJ3g0lWVOLvC0Ck\r\n2s38Tk7S91eC3Jy06M/BdYx5O5obUPH2RuKETGKFD3Whofl+1F/HI/GhzyYm\r\nZcYZ+jImNPBJBidF1ittGFmN4+9d4fMJ084=\r\n=Kk1B\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"62df3f75835ad28ecc9c87cab0cb3295115a4f1d","scripts":{"test":"mocha ./test/*","test-travis":"nyc mocha ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"6.14.15","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"14.18.2","_hasShrinkwrap":false,"devDependencies":{"nyc":"15.1.0","mocha":"9.2.0","acquit":"1.x","acquit-ignore":"0.1.x"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.3.5_1648042342316_0.8195984264302225","host":"s3://npm-registry-packages"}},"2.4.0":{"name":"kareem","version":"2.4.0","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.4.0","maintainers":[{"name":"vkarpov15","email":"val@karpov.io"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"e912f779c85f565620ca0a7dfbbbeda894f43061","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.4.0.tgz","fileCount":15,"integrity":"sha512-+hN6qE6VQZtU2mx2eX18XUc7w7St0u3NPZPzLFVgptKiiojIpgZKpmN/nHPEdtmozdQoPlq+xV2ttEMujeH1ww==","signatures":[{"sig":"MEYCIQC75Eqz5t0Z7XMQjrsmtdzmr6HbJzVo/akK5mA7y9VM9gIhAJWiI88pBnMjKpu/So1hRcHgAvZiZ3QCAoTP4r1ro4Jj","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108058,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJip4UOACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmroVhAAlU1cMuB//XB9eSHPFnNE9gwywVifmZc7Bz7kBInVYbcZShD7\r\nklgz4QJC2U3rL4LkCrCmQIgRj0zWpEJDGov59GZ0BKhCzG4l5UaidiX4soDo\r\ng6sew18GRELTiVPAAtMchiiuzjTO4gvJC++kdY99W8Z4EdD15yBcXDhFt1rB\r\ncfzGpbZw2LZLCiFQQmZhzcMGwnBTJAF3HdW1G/4w4BaPtDuvfckSuLp2f3Rb\r\nCzUkKKWQ17mq7GLYhhd/CZM2k2XZpcMNf5NyXnW+6mvVYPmClREHINW1XHfA\r\nh5tFm6c/LO9s9P24oBMfFDVFCm9eGoK2bmVFLh1YfUW/VhkVLm86GVPtAs8L\r\nrk0yyjhZMDNYF/d1W/EufJq0785xL4QAZzatppiUp4tVa5Gt9fF19yGb5NMg\r\n7sabBlNpsZmP13hmiTHNhhfgNg3WHbirneHiqrkI1m08aViycAKanF5hD4Qi\r\nL7pJUTRzO3tNcnWLz+dlU7mon4mXW7b/f8JFfnIjZCZg637ZWQpfbkOSokKz\r\nxncKMQxivyL7gLF9FhGc7rSee/SiRyftA1zXdgERtDlLXx3RIxdKBz4LaKrx\r\ns3F+6X9pYgDUnrL9rLWcvjO2tjMjp/3SpedcXDAZNPzOSgqm8Qf8H6ihZJS3\r\ntL2iUdfbEZIzFEKD3Atr0ECNClHM1+HbQYQ=\r\n=2SR6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"b7c4fc6437d84a9722592dd6250d9026828515f5","scripts":{"test":"mocha ./test/*","test-travis":"nyc mocha ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"8.5.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"16.14.2","_hasShrinkwrap":false,"devDependencies":{"nyc":"15.1.0","mocha":"9.2.0","acquit":"1.x","acquit-ignore":"0.1.x"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.4.0_1655145742705_0.19774669999232453","host":"s3://npm-registry-packages"}},"2.4.1":{"name":"kareem","version":"2.4.1","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.4.1","maintainers":[{"name":"vkarpov15","email":"val@karpov.io"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"7d81ec518204a48c1cb16554af126806c3cd82b0","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.4.1.tgz","fileCount":15,"integrity":"sha512-aJ9opVoXroQUPfovYP5kaj2lM7Jn02Gw13bL0lg9v0V7SaUc0qavPs0Eue7d2DcC3NjqI6QAUElXNsuZSeM+EA==","signatures":[{"sig":"MEQCIB8wuAABfKiVroKvklaz2ZZofSyp/0WkkH2Xi7bEJ1xMAiBdwGT9lq7YySWl2jI39KDvov80AKaF9WINa4E5n/K+xA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108702,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiq5L5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoSJA/9G9ZX9FPT0BfYGyZip4kBvFR0AgOCq/RNA9dJEbgHTcKPayjM\r\n9ft1MHEHzgobduLn+4AMnyLjbK60fFMBsm1tJo/LoM/tIO0tbEUZDuduFhL9\r\nyBEVTecYPPawH7cBJi9wYNLcK3ncKCoEn5DdLJcqs6Js3P3TtbWcvt6sztYh\r\nXXuVKhrS1M9y8w4fm8oav7ekkySWSYb8K08hOOD+8KDtEIu7iUabOGccAVlq\r\npBjNMWu30zyB/+vJUK19Qd0qVaLFKh5ffyasfeIoECAXwYOKL00Vw11axa5k\r\nUvhqjcPa02qwSkUfR1Cdq3LrBlJ2e3yuGfjVXySYTwOIJ42fsCKm6ng10DqH\r\nIaab0QKFY7lX4v8WkgnkGALzJ4dVs4K9Px3KI1olYF0noYaNLjo1yxGUWTZH\r\nU5nSfiuVRyLPCIhxqNBpR1Oufnsomd0jbcPTfUC70FnBBspKSXN7yYsfETtD\r\nfnrAr/dj1LjzgDM7rxFU7Y9TaEquh5++zGKxPVH0M5PMPhU0Pzx8lduODgMu\r\nHqQfkIFhHurHV5Tq7jEIQMbawoH3+KOBLM+MPSjSprTg/ShuguLbh5J2uuS+\r\nfQJVQ478K0HRihUn++yfjM711xD/mJ6VPlYU4vVV4+h7D+D/Hp8JfM11zAUO\r\n0TcpNFvCd/Pg8IiLxnlnahyrAAja0xgVG+w=\r\n=eZpJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"db2dcc714f8158e50a81c2b53f47e87a06dd6772","scripts":{"lint":"eslint .","test":"mocha ./test/*","test-travis":"nyc mocha ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"8.5.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"16.14.2","_hasShrinkwrap":false,"devDependencies":{"nyc":"15.1.0","mocha":"9.2.0","acquit":"1.x","eslint":"8.15.0","acquit-ignore":"0.1.x","@masteringjs/eslint-config":"0.0.1"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.4.1_1655411449241_0.010922365988482063","host":"s3://npm-registry-packages"}},"2.5.0":{"name":"kareem","version":"2.5.0","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.5.0","maintainers":[{"name":"vkarpov15","email":"val@karpov.io"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"9d2b2272609b0d5b981757fa5794d7ad0ac041b2","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.5.0.tgz","fileCount":4,"integrity":"sha512-rVBUGGwvqg130iwYu8k7lutHuDBFj1yGRdnlE44wEhxAmFBad1zcL66PdWC1raw3tIObY6XWhtv3VL04xQb/cg==","signatures":[{"sig":"MEUCIFQLB9h/k7USWcmUnL2umBDflwkE5VsKhWhh5i057DfsAiEAwtXuqslSRlBXxWv3k6OyV/jraPdB5xtf3R3goUzS9pw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":38927,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjiWYGACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq7ZA/9F5zyYul0OlQ2GBM7qynP4tnlCF2UvUySOsQT9dhDNqF83b9w\r\nhcOJsxnKmuAiL2maRr4ph23/HKXtoSM2jXJqgVZn6ekCAsGwC8p8p5klM+GY\r\nb8oM8G/6djSpxfBE6/mHQ8cDqubqSlKu4cxnynY72nIrQTIS4EcqhU5g/W0E\r\nDrdjZvIHN+RYvHztyTt2Z08E6PwSuoFoBLlsGxevs4zV4JimXYfb725gmCIu\r\nlDnYhBto9AdH+ZRh6iUusmKmgun6oEhOMuGWMhvgnUCr769xrcG1coaMlfSN\r\nzZoYQYZoowXasfYId7VRPuRdPBJspnDL8sigHgyDZ1FpjdgjVSsgZqXxYR/g\r\nP8SCBj56WcRhAeTf1/JnLHJPx/rJbOgyx7RxGEKPbO99iaT6uYzjDPS2FvBT\r\nMoY3//eM8W12bETxNFs+hP96eHRfuQxQNgGJ3lMHeHHnD2alzAtpCHGAwavG\r\n6yOnKLlCK1AbAm58S4XgzxKlFcgBIR5eWPf9GgmMy495i/JxBVopLShXxTBD\r\ni9YzjaWFhh4Oo2H7up7NaIjmgfJE0kEhgtm+0ogv2E5OG/RF2H+rdjto7S4r\r\neKOyYGAmynQW27ASyvd3Tq4e52Gq4l0DDIMqWj8APkcJiVDB7swrlUatJz6c\r\ntde1SgBjurfqHhk7IJsRolIv9+BUa8uXhNE=\r\n=+Uzf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","engines":{"node":">=12.0.0"},"gitHead":"fd535fbc6cda115e259b7d35b86c22e8bbfb5338","scripts":{"docs":"node ./docs.js","lint":"eslint .","test":"mocha ./test/*","test-coverage":"nyc --reporter lcov mocha ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"8.15.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"16.17.0","_hasShrinkwrap":false,"devDependencies":{"nyc":"15.1.0","mocha":"9.2.0","acquit":"1.x","eslint":"8.20.0","acquit-ignore":"0.2.x"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.5.0_1669948934261_0.8729275600927116","host":"s3://npm-registry-packages"}},"2.5.1":{"name":"kareem","version":"2.5.1","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.5.1","maintainers":[{"name":"vkarpov15","email":"val@karpov.io"}],"homepage":"https://github.com/vkarpov15/kareem#readme","bugs":{"url":"https://github.com/vkarpov15/kareem/issues"},"dist":{"shasum":"7b8203e11819a8e77a34b3517d3ead206764d15d","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.5.1.tgz","fileCount":4,"integrity":"sha512-7jFxRVm+jD+rkq3kY0iZDJfsO2/t4BBPeEb2qKn2lR/9KhuksYk5hxzfRYWMPV8P/x2d0kHD306YyWLzjjH+uA==","signatures":[{"sig":"MEYCIQDKhBq7rYroYgTIJ0PZ8+xg8LxPLWXCAaDXwjjuNUs9EQIhAMSHt3z9Z1Wd2RfQdwE1FOAfUcbbEewEz1qMlnrVaEHk","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39102,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjuFRnACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrh5hAAoixVNfEJVZpO6jNzG6svEB8CgUwTOe860wzjKuhMFjab7uwl\r\np50c7qfqTPYeWr8ofOMfujpeDSMFYr5NF9puQOg2pmduf6rtDOOmXPaTtChL\r\nNn3fqGp4spzNvvn60Fb/Lt3qdfgt7c4f4GaSmtLuxfd0kQ9SHdB+4ShUfbSw\r\ny/0iVUFQW7a1YgcHlMqqYojU7Rkt5VcE0Hj5/+NUNEiiNVlRL7qaHGsAliOO\r\nedZxh5hamd5aFECxfAtSzj4XbpffMmjXuRYpSUaqUefJX18GvDJPo7o/zVAF\r\nodoMnfG/cE4q0qS3JotwuVYf87wy8de5L4iZpg2UcO9TKKSAlecB5TdiQhze\r\nzqwVlA4KWHQS/8q/A+aV7qp48gDlqoRgbeVmXR7KNfFtmM29S/WgeOtuLlSy\r\nT/8IZZVE5AszQvHKac2jFmv3qIlvx8rac26Xx82PaSS+bxScpNW6MBZM8BZQ\r\nHBQa1Jen02WHgjD9rlfWXOEPBwZLwdBNbrb3lf2FNle94IPFogYTyJQI3Zj5\r\n6iBPjxN+FsBKhiUsnH9MsUIHTGXft4TVWsXQOzwWOp/PEO0ORL7fx87fd+YH\r\nXOSqIcMvDLe3cTFE7Bc668VMfqXh527UhN0RSe6E7F8nb+s6rYbcCSi6mBF8\r\nReVqHvf+QMYSjkPW411KwiPYKaIB1yBsEFs=\r\n=dF8O\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","engines":{"node":">=12.0.0"},"gitHead":"a5326367ddfa0a4480b843283a4fb74bfe56cc5d","scripts":{"docs":"node ./docs.js","lint":"eslint .","test":"mocha ./test/*","test-coverage":"nyc --reporter lcov mocha ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"repository":{"url":"git://github.com/vkarpov15/kareem.git","type":"git"},"_npmVersion":"8.15.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"16.17.0","_hasShrinkwrap":false,"devDependencies":{"nyc":"15.1.0","mocha":"9.2.0","acquit":"1.x","eslint":"8.20.0","acquit-ignore":"0.2.x"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.5.1_1673024615216_0.9544361140804851","host":"s3://npm-registry-packages"}},"2.6.0":{"name":"kareem","version":"2.6.0","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.6.0","maintainers":[{"name":"vkarpov15","email":"val@karpov.io"}],"homepage":"https://github.com/mongoosejs/kareem#readme","bugs":{"url":"https://github.com/mongoosejs/kareem/issues"},"dist":{"shasum":"b68740c730aa4448a3414d961e6c27c36a7c7a95","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.6.0.tgz","fileCount":4,"integrity":"sha512-B9wwgyKKKZkxYZXQzefvb/Ykh9eHixxR+ttTP2c/Pq8NvHi1iYIAImf3nj/DXkPcnenjGEffhPWXnCFRIbNAhw==","signatures":[{"sig":"MEYCIQC9sFvY/Uuss/k+04lQDA72OBThR5GB331q8LEDoO65LwIhALKNhrbb7ZptyWglC6YQ05IfxZ8/uDU74c47WjB9XGKY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39165},"main":"index.js","types":"./index.d.ts","engines":{"node":">=12.0.0"},"gitHead":"628f0c4f8b13990b47890e8fd1913ff35ac5e9e4","scripts":{"docs":"node ./docs.js","lint":"eslint .","test":"mocha ./test/*","test-coverage":"nyc --reporter lcov mocha ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"repository":{"url":"git://github.com/mongoosejs/kareem.git","type":"git"},"_npmVersion":"9.6.7","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"18.17.1","_hasShrinkwrap":false,"devDependencies":{"nyc":"15.1.0","mocha":"9.2.0","acquit":"1.x","eslint":"8.20.0","acquit-ignore":"0.2.x"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.6.0_1709584284854_0.16910749333634145","host":"s3://npm-registry-packages"}},"2.6.1":{"name":"kareem","version":"2.6.1","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.6.1","maintainers":[{"name":"vkarpov15","email":"val@karpov.io"}],"homepage":"https://github.com/mongoosejs/kareem#readme","bugs":{"url":"https://github.com/mongoosejs/kareem/issues"},"dist":{"shasum":"511da8a61beb97ab33224a4fdb68d3b1e180e592","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.6.1.tgz","fileCount":4,"integrity":"sha512-WSRDp/5C5TWqLqYwAfLYUIZBn9Lb/1+h7m7/JLcX6sgin1v1mBeTPadIFIr0PDYghTFelQ8RH4tonZMvrrq3hg==","signatures":[{"sig":"MEUCIHXFmPy/zPV0bVdWoYokcnSFsRvFa1t5nQT0luS67k03AiEAu4Sffgrf2dgA80pwkWJKSMMA95wD2PHGxYrS9ZWcbCc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39165},"main":"index.js","types":"./index.d.ts","engines":{"node":">=12.0.0"},"gitHead":"da6e4264fa9be4adc46435c8f71c90611a415587","scripts":{"docs":"node ./docs.js","lint":"eslint .","test":"mocha ./test/*","test-coverage":"nyc --reporter lcov mocha ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"repository":{"url":"git://github.com/mongoosejs/kareem.git","type":"git"},"_npmVersion":"9.6.7","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"18.17.1","_hasShrinkwrap":false,"devDependencies":{"nyc":"15.1.0","mocha":"9.2.0","acquit":"1.x","eslint":"8.20.0","acquit-ignore":"0.2.x"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.6.1_1712349478791_0.43726024144601916","host":"s3://npm-registry-packages"}},"2.6.2":{"name":"kareem","version":"2.6.2","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.6.2","maintainers":[{"name":"vkarpov15","email":"val@karpov.io"}],"homepage":"https://github.com/mongoosejs/kareem#readme","bugs":{"url":"https://github.com/mongoosejs/kareem/issues"},"dist":{"shasum":"4416c4298a47dc2b5bed858d0e22f32e531b6fce","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.6.2.tgz","fileCount":9,"integrity":"sha512-MNljUGg31xKFxeEv72eFaYneSA5DNw466Kspf2N6XLbfcXw+TtGxdgbq8bNyv1iKj31PVfKyyoc/qAF8MKNDdg==","signatures":[{"sig":"MEUCIQDZtpDjoXuSOPQT1jS1RsG2M8Rxeer3napxlZyUvvKx7AIgW534yQBl4Db3V7cpk7uruBpJD9Q9skonlYw3puXDWj4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":79194},"main":"index.js","types":"./index.d.ts","engines":{"node":">=12.0.0"},"gitHead":"bfea7fc497fb157853ef3784305519ec511af20f","scripts":{"docs":"node ./docs.js","lint":"eslint .","test":"mocha ./test/*","test-coverage":"nyc --reporter lcov mocha ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"repository":{"url":"git://github.com/mongoosejs/kareem.git","type":"git"},"_npmVersion":"9.6.7","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"18.17.1","_hasShrinkwrap":false,"devDependencies":{"nyc":"15.1.0","mocha":"9.2.0","acquit":"1.x","eslint":"8.20.0","acquit-ignore":"0.2.x"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.6.2_1712350087700_0.9308944293406187","host":"s3://npm-registry-packages"}},"2.6.3":{"name":"kareem","version":"2.6.3","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@2.6.3","maintainers":[{"name":"vkarpov15","email":"val@karpov.io"}],"homepage":"https://github.com/mongoosejs/kareem#readme","bugs":{"url":"https://github.com/mongoosejs/kareem/issues"},"dist":{"shasum":"23168ec8ffb6c1abfd31b7169a6fb1dd285992ac","tarball":"https://registry.npmjs.org/kareem/-/kareem-2.6.3.tgz","fileCount":7,"integrity":"sha512-C3iHfuGUXK2u8/ipq9LfjFfXFxAZMQJJq7vLS45r3D9Y2xQ/m4S8zaR4zMLFWh9AsNPXmcFfUDhTEO8UIC/V6Q==","signatures":[{"sig":"MEYCIQCBCym3qtoJ106r5GT6vMcJwh9CmDF4vQ7J/Zp3GkOu9AIhANgKr33BFRdggRPgN/Rp0f1e4yvMo/u2mn7NYl6mUaTE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":75609},"main":"index.js","types":"./index.d.ts","engines":{"node":">=12.0.0"},"gitHead":"8c272fad28ac4a618862dc47ed2bab7fbedb319e","scripts":{"docs":"node ./docs.js","lint":"eslint .","test":"mocha ./test/*","test-coverage":"nyc --reporter lcov mocha ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"repository":{"url":"git://github.com/mongoosejs/kareem.git","type":"git"},"_npmVersion":"9.6.7","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"18.17.1","_hasShrinkwrap":false,"devDependencies":{"nyc":"15.1.0","mocha":"9.2.0","acquit":"1.x","eslint":"8.20.0","acquit-ignore":"0.2.x"},"_npmOperationalInternal":{"tmp":"tmp/kareem_2.6.3_1712350641516_0.3778938747605478","host":"s3://npm-registry-packages"}},"3.0.0":{"name":"kareem","version":"3.0.0","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@3.0.0","maintainers":[{"name":"vkarpov15","email":"val@karpov.io"}],"homepage":"https://github.com/mongoosejs/kareem#readme","bugs":{"url":"https://github.com/mongoosejs/kareem/issues"},"dist":{"shasum":"b1abcd504a01d45d712d311bf2178ce2bc0081bb","tarball":"https://registry.npmjs.org/kareem/-/kareem-3.0.0.tgz","fileCount":20,"integrity":"sha512-RKhaOBSPN8L7y4yAgNhDT2602G5FD6QbOIISbjN9D6mjHPeqeg7K+EB5IGSU5o81/X2Gzm3ICnAvQW3x3OP8HA==","signatures":[{"sig":"MEUCIQDZPuwZVNlPq5ReAH509EJ7mfZI4S7HPwHFgzIYX74VZgIgR6UWOVkHUU8R0IZySL1LnucpBtFT8Sy4xwvls2cbetY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":219807},"main":"index.js","types":"./index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"6c9363f5355f17707e0379de1356770bd9479c6c","scripts":{"docs":"node ./docs.js","lint":"eslint .","test":"mocha ./test/*","test-coverage":"nyc --reporter lcov mocha ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"repository":{"url":"git://github.com/mongoosejs/kareem.git","type":"git"},"_npmVersion":"10.8.2","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"20.18.1","_hasShrinkwrap":false,"devDependencies":{"nyc":"15.1.0","mocha":"9.2.0","acquit":"1.x","eslint":"8.20.0","acquit-ignore":"0.2.x"},"_npmOperationalInternal":{"tmp":"tmp/kareem_3.0.0_1763496392907_0.4678562768644914","host":"s3://npm-registry-packages-npm-production"}},"3.1.0":{"name":"kareem","version":"3.1.0","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@3.1.0","maintainers":[{"name":"vkarpov15","email":"val@karpov.io"}],"homepage":"https://github.com/mongoosejs/kareem#readme","bugs":{"url":"https://github.com/mongoosejs/kareem/issues"},"dist":{"shasum":"080756809b18298c31ddfb8fa4e8c16b88ee7c01","tarball":"https://registry.npmjs.org/kareem/-/kareem-3.1.0.tgz","fileCount":20,"integrity":"sha512-ObjckAcfzxoA6h+ejOmB+/ZxLbiguOF1vX9y5Jt0F6+k5vbuhMG8WxTMDiWSW7E0qSCwiifKMqZvB+gaEfUqwA==","signatures":[{"sig":"MEUCIQCID3/Dww2/xEDL3jGC68NjdoXmaQuwcD8wFTwwsRFXYAIgNHvAeFL4xwzoOqPsSrHkbFVF79VNzIRGybKjfZVqcg8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":219869},"main":"index.js","types":"./index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"3b6cc8fffe042ba749db3c34f59e74dd5ef8cbcd","scripts":{"docs":"node ./docs.js","lint":"eslint .","test":"mocha ./test/*","test-coverage":"nyc --reporter lcov mocha ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"repository":{"url":"git://github.com/mongoosejs/kareem.git","type":"git"},"_npmVersion":"10.9.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"22.12.0","_hasShrinkwrap":false,"devDependencies":{"nyc":"15.1.0","mocha":"11.x","acquit":"1.x","eslint":"8.20.0","acquit-ignore":"0.2.x"},"_npmOperationalInternal":{"tmp":"tmp/kareem_3.1.0_1768235124047_0.8647294785809512","host":"s3://npm-registry-packages-npm-production"}},"3.2.0":{"name":"kareem","version":"3.2.0","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@3.2.0","maintainers":[{"name":"vkarpov15","email":"val@karpov.io"}],"homepage":"https://github.com/mongoosejs/kareem#readme","bugs":{"url":"https://github.com/mongoosejs/kareem/issues"},"dist":{"shasum":"8f69b25f9ceac80e9bc46b391008da7fc93d4ab0","tarball":"https://registry.npmjs.org/kareem/-/kareem-3.2.0.tgz","fileCount":20,"integrity":"sha512-VS8MWZz/cT+SqBCpVfNN4zoVz5VskR3N4+sTmUXme55e9avQHntpwpNq0yjnosISXqwJ3AQVjlbI4Dyzv//JtA==","signatures":[{"sig":"MEUCIQDviNcTROkg0FRTR5pj1ctRIMXcgH42eOYsZPMgwDgcrAIga1BuEvBV9a/NvlTL4FcyvtHknfxsb1G7FjZOifWalaA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":221475},"main":"index.js","types":"./index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"f6b3ad01ceff56b6f0800eae7aff7826403dc59b","scripts":{"docs":"node ./docs.js","lint":"eslint .","test":"mocha ./test/*","test-coverage":"nyc --reporter lcov mocha ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"repository":{"url":"git://github.com/mongoosejs/kareem.git","type":"git"},"_npmVersion":"10.9.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"22.12.0","_hasShrinkwrap":false,"devDependencies":{"nyc":"15.1.0","mocha":"11.x","acquit":"1.x","eslint":"8.20.0","acquit-ignore":"0.2.x"},"_npmOperationalInternal":{"tmp":"tmp/kareem_3.2.0_1769702025416_0.7441088480398192","host":"s3://npm-registry-packages-npm-production"}},"3.3.0":{"name":"kareem","version":"3.3.0","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","_id":"kareem@3.3.0","maintainers":[{"name":"vkarpov15","email":"val@karpov.io"}],"homepage":"https://github.com/mongoosejs/kareem#readme","bugs":{"url":"https://github.com/mongoosejs/kareem/issues"},"dist":{"shasum":"174048bd00e2b4a8fc2504f0f53c315b806894da","tarball":"https://registry.npmjs.org/kareem/-/kareem-3.3.0.tgz","fileCount":7,"integrity":"sha512-kpSuLD3/7RenBnjnJdOHXCKC8dTd1JzeOiJhN0necWWci6cC+qX+VuwPnMVgb+a4+KNJSfgqahpnfWaeDXCimw==","signatures":[{"sig":"MEUCIGOT2UHMO89qJl5sDYP4Qohi5Zo16OY+h4hXdTyWvRCaAiEA4lgGlKsgSufi01CWrqxDj7PN9/0VODbgeYmQFfvEO8w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73710},"main":"index.js","types":"./index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"55deabb7ef1bd4bb25c6229beb7b04a921629886","scripts":{"docs":"node ./docs.js","lint":"eslint .","test":"mocha ./test/*","test-coverage":"nyc --reporter lcov mocha ./test/*"},"_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"repository":{"url":"git://github.com/mongoosejs/kareem.git","type":"git"},"_npmVersion":"10.9.0","description":"Next-generation take on pre/post function hooks","directories":{},"_nodeVersion":"22.12.0","_hasShrinkwrap":false,"devDependencies":{"nyc":"15.1.0","mocha":"11.x","acquit":"1.x","eslint":"8.20.0","acquit-ignore":"0.2.x"},"_npmOperationalInternal":{"tmp":"tmp/kareem_3.3.0_1776178391792_0.24010589919748226","host":"s3://npm-registry-packages-npm-production"}},"3.4.0":{"_id":"kareem@3.4.0","bugs":{"url":"https://github.com/mongoosejs/kareem/issues"},"dist":{"shasum":"66b3d09ac43ba1c8611df2c69fe1424f0acd49b2","tarball":"https://registry.npmjs.org/kareem/-/kareem-3.4.0.tgz","fileCount":7,"integrity":"sha512-JAKhnR4S027v/8949QXNInRskgETCg9rFUMi1VjhGbjX+XltCAAEFcXykkSocNkom1kc66EMJfjWvhj87BDQKg==","signatures":[{"sig":"MEUCIQC9kvrdUiBpNreREtKrj7gUtMrpt5FyXZD27ZvdctxmEAIgdPCli+Fd508P1aPysnpFUU/LCyWpz7Zef5wzGE+/bek=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDI0knWB66aPP4MHxTnfvuMPhWwKh1R3zUJrVX7ElDccQIgc07ymvMbhJSUpth+JBvv9fUzdDOqqoznw/losUbmTLI="}],"unpackedSize":78049},"main":"index.js","name":"kareem","types":"index.d.ts","author":{"name":"Valeri Karpov","email":"val@karpov.io"},"engines":{"node":">=18.0.0"},"gitHead":"205a90d4d1226df184b02fb5bbce7424a3f14ffe","license":"Apache-2.0","scripts":{"docs":"node ./docs.js","lint":"eslint .","test":"mocha ./test/*","test-coverage":"nyc --reporter lcov mocha ./test/*"},"version":"3.4.0","_npmUser":{"name":"vkarpov15","email":"val@karpov.io"},"homepage":"https://github.com/mongoosejs/kareem#readme","repository":{"url":"git://github.com/mongoosejs/kareem.git","type":"git"},"_npmVersion":"10.9.0","description":"Next-generation take on pre/post function hooks","directories":{},"maintainers":[{"name":"vkarpov15","email":"val@karpov.io"}],"_nodeVersion":"22.12.0","_hasShrinkwrap":false,"devDependencies":{"nyc":"15.1.0","mocha":"11.x","acquit":"1.x","eslint":"8.20.0","acquit-ignore":"0.2.x"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/kareem_3.4.0_1787174851368_0.2501847948631062"}}},"time":{"created":"2014-12-12T05:06:06.930Z","modified":"2026-08-19T21:27:31.621Z","0.0.1":"2014-12-12T05:06:06.930Z","0.0.2":"2014-12-12T05:09:33.082Z","0.0.3":"2014-12-12T21:02:05.037Z","0.0.4":"2014-12-13T20:08:39.750Z","0.0.5":"2015-01-01T19:25:18.799Z","0.0.6":"2015-01-01T19:26:56.889Z","0.0.7":"2015-01-04T23:34:43.812Z","0.0.8":"2015-01-27T22:14:31.482Z","1.0.0":"2015-01-28T21:00:30.725Z","1.0.1":"2015-05-10T16:09:15.642Z","1.1.0":"2016-05-11T03:18:56.903Z","1.1.1":"2016-06-27T14:04:39.088Z","1.1.2":"2016-06-27T14:37:23.837Z","1.1.3":"2016-06-27T15:15:12.369Z","1.1.4":"2016-12-09T19:00:16.236Z","1.1.5":"2016-12-13T01:30:37.996Z","1.2.0":"2017-01-02T04:57:16.183Z","1.2.1":"2017-02-03T18:25:21.133Z","1.3.0":"2017-03-26T23:07:02.684Z","1.4.0":"2017-04-19T05:09:24.685Z","1.4.1":"2017-04-25T02:51:15.616Z","1.4.2":"2017-07-06T00:46:58.381Z","1.5.0":"2017-07-20T22:31:52.404Z","2.0.0-rc0":"2017-12-18T02:08:36.075Z","2.0.0-rc1":"2017-12-21T16:29:12.636Z","2.0.0-rc2":"2017-12-21T23:19:15.288Z","2.0.0-rc4":"2017-12-23T03:31:13.623Z","2.0.0-rc5":"2017-12-23T15:22:43.975Z","2.0.0":"2018-01-09T20:06:05.209Z","2.0.1":"2018-01-09T20:06:55.203Z","2.0.2":"2018-01-24T00:42:19.283Z","2.0.3":"2018-02-01T03:55:02.774Z","2.0.4":"2018-02-08T18:20:58.622Z","2.0.5":"2018-02-22T23:26:46.645Z","2.0.6":"2018-03-22T17:05:55.288Z","2.0.7":"2018-04-28T17:26:00.148Z","2.1.0":"2018-05-16T15:33:18.816Z","2.2.0":"2018-06-05T14:11:51.551Z","2.2.1":"2018-06-05T14:32:55.701Z","2.2.2":"2018-09-10T01:15:36.236Z","2.2.3":"2018-09-10T01:18:44.563Z","2.3.0":"2018-09-24T15:09:51.274Z","2.3.1":"2019-08-23T03:44:36.096Z","2.3.2":"2020-12-08T15:43:33.667Z","2.3.3":"2021-12-26T16:56:04.138Z","2.3.4":"2022-02-11T01:47:11.946Z","2.3.5":"2022-03-23T13:32:22.418Z","2.4.0":"2022-06-13T18:42:22.900Z","2.4.1":"2022-06-16T20:30:49.478Z","2.5.0":"2022-12-02T02:42:14.416Z","2.5.1":"2023-01-06T17:03:35.395Z","2.6.0":"2024-03-04T20:31:24.992Z","2.6.1":"2024-04-05T20:37:58.936Z","2.6.2":"2024-04-05T20:48:07.829Z","2.6.3":"2024-04-05T20:57:21.703Z","3.0.0":"2025-11-18T20:06:33.110Z","3.1.0":"2026-01-12T16:25:24.226Z","3.2.0":"2026-01-29T15:53:45.565Z","3.3.0":"2026-04-14T14:53:11.932Z","3.4.0":"2026-08-19T21:27:31.450Z"},"bugs":{"url":"https://github.com/mongoosejs/kareem/issues"},"author":{"name":"Valeri Karpov","email":"val@karpov.io"},"license":"Apache-2.0","homepage":"https://github.com/mongoosejs/kareem#readme","repository":{"url":"git://github.com/mongoosejs/kareem.git","type":"git"},"description":"Next-generation take on pre/post function hooks","maintainers":[{"name":"vkarpov15","email":"val@karpov.io"}],"readme":"# kareem\n\n  [![Build Status](https://github.com/mongoosejs/kareem/actions/workflows/test.yml/badge.svg?branch=master)](https://github.com/mongoosejs/kareem/actions/workflows/test.yml)\n  <!--[![Coverage Status](https://img.shields.io/coveralls/vkarpov15/kareem.svg)](https://coveralls.io/r/vkarpov15/kareem)-->\n\nRe-imagined take on the [hooks](http://npmjs.org/package/hooks) module, meant to offer additional flexibility in allowing you to execute hooks whenever necessary, as opposed to simply wrapping a single function.\n\nNamed for the NBA's 2nd all-time leading scorer Kareem Abdul-Jabbar, known for his mastery of the [hook shot](http://en.wikipedia.org/wiki/Kareem_Abdul-Jabbar#Skyhook)\n\n<img src=\"http://upload.wikimedia.org/wikipedia/commons/0/00/Kareem-Abdul-Jabbar_Lipofsky.jpg\" width=\"220\">\n\n<!--DOCS START-->\n\n# API\n\n## pre hooks\n\nMuch like [hooks](https://npmjs.org/package/hooks), kareem lets you define\npre and post hooks: pre hooks are called before a given function executes.\nUnlike hooks, kareem stores hooks and other internal state in a separate\nobject, rather than relying on inheritance. Furthermore, kareem exposes\nan `execPre()` function that allows you to execute your pre hooks when\nappropriate, giving you more fine-grained control over your function hooks.\n\n### It runs without any hooks specified\n\n```javascript\nawait hooks.execPre('cook', null);\n```\n\n### It runs basic serial pre hooks\n\npre hook functions can return a promise that resolves when finished.\n\n```javascript\nlet count = 0;\n\nhooks.pre('cook', function() {\n  ++count;\n  return Promise.resolve();\n});\n\nawait hooks.execPre('cook', null);\nassert.equal(1, count);\n```\n\n### It can run multiple pre hooks\n\n```javascript\nlet count1 = 0;\nlet count2 = 0;\n\nhooks.pre('cook', function() {\n  ++count1;\n  return Promise.resolve();\n});\n\nhooks.pre('cook', function() {\n  ++count2;\n  return Promise.resolve();\n});\n\nawait hooks.execPre('cook', null);\nassert.equal(1, count1);\nassert.equal(1, count2);\n```\n\n### It can run fully synchronous pre hooks\n\nIf your pre hook function takes no parameters, its assumed to be\nfully synchronous.\n\n```javascript\nlet count1 = 0;\nlet count2 = 0;\n\nhooks.pre('cook', function() {\n  ++count1;\n});\n\nhooks.pre('cook', function() {\n  ++count2;\n});\n\nawait hooks.execPre('cook', null);\nassert.equal(1, count1);\nassert.equal(1, count2);\n```\n\n### It properly attaches context to pre hooks\n\nPre save hook functions are bound to the second parameter to `execPre()`\n\n```javascript\nhooks.pre('cook', function() {\n  this.bacon = 3;\n});\n\nhooks.pre('cook', function() {\n  this.eggs = 4;\n});\n\nconst obj = { bacon: 0, eggs: 0 };\n\n// In the pre hooks, `this` will refer to `obj`\nawait hooks.execPre('cook', obj);\nassert.equal(3, obj.bacon);\nassert.equal(4, obj.eggs);\n```\n\n### It supports returning a promise\n\nYou can also return a promise from your pre hooks instead of calling\n`next()`. When the returned promise resolves, kareem will kick off the\nnext middleware.\n\n```javascript\nhooks.pre('cook', function() {\n  return new Promise(resolve => {\n    setTimeout(() => {\n      this.bacon = 3;\n      resolve();\n    }, 100);\n  });\n});\n\nconst obj = { bacon: 0 };\n\nawait hooks.execPre('cook', obj);\nassert.equal(3, obj.bacon);\n```\n\n### It supports filtering which hooks to run\n\nYou can pass a `filter` option to `execPre()` to select which hooks\nto run. The filter function receives each hook object and should return\n`true` to run the hook or `false` to skip it.\n\n```javascript\nconst execed = [];\n\nconst fn1 = function() { execed.push('first'); };\nfn1.skipMe = true;\nhooks.pre('cook', fn1);\n\nconst fn2 = function() { execed.push('second'); };\nhooks.pre('cook', fn2);\n\n// Only runs fn2, skips fn1 because fn1.skipMe is true\nawait hooks.execPre('cook', null, [], {\n  filter: hook => !hook.fn.skipMe\n});\n\nassert.deepStrictEqual(execed, ['second']);\n```\n\n## post hooks\n\n### It runs without any hooks specified\n\n```javascript\nconst [eggs] = await hooks.execPost('cook', null, [1]);\nassert.equal(eggs, 1);\n```\n\n### It executes with parameters passed in\n\n```javascript\nhooks.post('cook', function(eggs, bacon, callback) {\n  assert.equal(eggs, 1);\n  assert.equal(bacon, 2);\n  callback();\n});\n\nconst [eggs, bacon] = await hooks.execPost('cook', null, [1, 2]);\nassert.equal(eggs, 1);\nassert.equal(bacon, 2);\n```\n\n### It can use synchronous post hooks\n\n```javascript\nconst execed = {};\n\nhooks.post('cook', function(eggs, bacon) {\n  execed.first = true;\n  assert.equal(eggs, 1);\n  assert.equal(bacon, 2);\n});\n\nhooks.post('cook', function(eggs, bacon, callback) {\n  execed.second = true;\n  assert.equal(eggs, 1);\n  assert.equal(bacon, 2);\n  callback();\n});\n\nconst [eggs, bacon] = await hooks.execPost('cook', null, [1, 2]);\nassert.equal(Object.keys(execed).length, 2);\nassert.ok(execed.first);\nassert.ok(execed.second);\nassert.equal(eggs, 1);\nassert.equal(bacon, 2);\n```\n\n### It supports returning a promise\n\nYou can also return a promise from your post hooks instead of calling\n`next()`. When the returned promise resolves, kareem will kick off the\nnext middleware.\n\n```javascript\nhooks.post('cook', function() {\n  return new Promise(resolve => {\n    setTimeout(() => {\n      this.bacon = 3;\n      resolve();\n    }, 100);\n  });\n});\n\nconst obj = { bacon: 0 };\n\nawait hooks.execPost('cook', obj, [obj]);\nassert.equal(obj.bacon, 3);\n```\n\n### It supports filtering which hooks to run\n\nYou can pass a `filter` option to `execPost()` to select which hooks\nto run. The filter function receives each hook object and should return\n`true` to run the hook or `false` to skip it.\n\n```javascript\nconst execed = [];\n\nconst fn1 = function() { execed.push('first'); };\nfn1.skipMe = true;\nhooks.post('cook', fn1);\n\nconst fn2 = function() { execed.push('second'); };\nhooks.post('cook', fn2);\n\n// Only runs fn2, skips fn1 because fn1.skipMe is true\nawait hooks.execPost('cook', null, [], {\n  filter: hook => !hook.fn.skipMe\n});\n\nassert.deepStrictEqual(execed, ['second']);\n```\n\n## wrap()\n\n### It wraps pre and post calls into one call\n\n```javascript\nhooks.pre('cook', function() {\n  return new Promise(resolve => {\n    this.bacon = 3;\n    setTimeout(() => {\n      resolve();\n    }, 5);\n  });\n});\n\nhooks.pre('cook', function() {\n  this.eggs = 4;\n  return Promise.resolve();\n});\n\nhooks.pre('cook', function() {\n  this.waffles = false;\n  return Promise.resolve();\n});\n\nhooks.post('cook', function(obj) {\n  obj.tofu = 'no';\n});\n\nconst obj = { bacon: 0, eggs: 0 };\n\nconst args = [obj];\n\nconst result = await hooks.wrap(\n  'cook',\n  function(o) {\n    assert.equal(obj.bacon, 3);\n    assert.equal(obj.eggs, 4);\n    assert.equal(obj.waffles, false);\n    assert.equal(obj.tofu, undefined);\n    return o;\n  },\n  obj,\n  args);\n\nassert.equal(obj.bacon, 3);\nassert.equal(obj.eggs, 4);\nassert.equal(obj.waffles, false);\nassert.equal(obj.tofu, 'no');\nassert.equal(result, obj);\n```\n\n### It supports filtering hooks per call with getOptions\n\nDirect `wrap()` callers can pass the same `getOptions` option that\n`createWrapper()` accepts. `getOptions` receives the call arguments and\nreturns options for `execPre()`/`execPost()`, either a single `{ filter }`\napplied to both phases or separate `{ pre, post }` options.\n\n```javascript\nconst execed = [];\n\nconst audit = function() { execed.push('audit'); };\naudit.skipMe = true;\nhooks.pre('cook', audit);\n\nhooks.pre('cook', function() { execed.push('validate'); });\n\nconst result = await hooks.wrap('cook', o => o, null, ['eggs'], {\n  getOptions: (args) => args[0] === 'eggs' ? { filter: hook => !hook.fn.skipMe } : {}\n});\n\nassert.deepStrictEqual(execed, ['validate']);\nassert.equal(result, 'eggs');\n```\n\n## createWrapper()\n\n### It wraps wrap() into a callable function\n\n```javascript\nhooks.pre('cook', function() {\n  this.bacon = 3;\n  return Promise.resolve();\n});\n\nhooks.pre('cook', function() {\n  return new Promise(resolve => {\n    this.eggs = 4;\n    setTimeout(function() {\n      resolve();\n    }, 10);\n  });\n});\n\nhooks.pre('cook', function() {\n  this.waffles = false;\n  return Promise.resolve();\n});\n\nhooks.post('cook', function(obj) {\n  obj.tofu = 'no';\n});\n\nconst obj = { bacon: 0, eggs: 0 };\n\nconst cook = hooks.createWrapper(\n  'cook',\n  function(o) {\n    assert.equal(3, obj.bacon);\n    assert.equal(4, obj.eggs);\n    assert.equal(false, obj.waffles);\n    assert.equal(undefined, obj.tofu);\n    return o;\n  },\n  obj);\n\nconst result = await cook(obj);\nassert.equal(obj.bacon, 3);\nassert.equal(obj.eggs, 4);\nassert.equal(obj.waffles, false);\nassert.equal(obj.tofu, 'no');\n\nassert.equal(result, obj);\n```\n\n### It supports filtering hooks per call with getOptions\n\nYou can pass a `getOptions` function to `createWrapper()` to choose which\nhooks run on each call. `getOptions` receives the arguments the wrapped\nfunction was called with and returns options for `execPre()`/`execPost()`.\nReturn a single `{ filter }` to apply to both pre and post hooks, or\n`{ pre, post }` to filter them separately. `createWrapperSync()` supports\nthe same option. This is how Mongoose skips user-defined middleware for a\nsingle operation.\n\n```javascript\nconst execed = [];\n\nconst audit = function() { execed.push('audit'); };\naudit.skipMe = true;\nhooks.pre('cook', audit);\n\nhooks.pre('cook', function() { execed.push('validate'); });\n\nconst cook = hooks.createWrapper('cook', o => o, null, {\n  getOptions: (args) => {\n    const options = args[args.length - 1] || {};\n    return options.skipMiddleware ? { filter: hook => !hook.fn.skipMe } : {};\n  }\n});\n\n// Skips the `audit` hook because the call passes `skipMiddleware: true`\nawait cook({}, { skipMiddleware: true });\nassert.deepStrictEqual(execed, ['validate']);\n```\n\n## clone()\n\n### It clones a Kareem object\n\n```javascript\nconst k1 = new Kareem();\nk1.pre('cook', function() {});\nk1.post('cook', function() {});\n\nconst k2 = k1.clone();\nassert.deepEqual(Array.from(k2._pres.keys()), ['cook']);\nassert.deepEqual(Array.from(k2._posts.keys()), ['cook']);\n```\n\n## merge()\n\n### It pulls hooks from another Kareem object\n\n```javascript\nconst k1 = new Kareem();\nconst test1 = function() {};\nk1.pre('cook', test1);\nk1.post('cook', function() {});\n\nconst k2 = new Kareem();\nconst test2 = function() {};\nk2.pre('cook', test2);\nconst k3 = k2.merge(k1);\nassert.equal(k3._pres.get('cook').length, 2);\nassert.equal(k3._pres.get('cook')[0].fn, test2);\nassert.equal(k3._pres.get('cook')[1].fn, test1);\nassert.equal(k3._posts.get('cook').length, 1);\n```\n","readmeFilename":"README.md","users":{"holly":true,"hayathuk":true,"simonfan":true,"igorissen":true,"kkk123321":true}}