{"_id":"a-toolbox","_rev":"75-7214e6428fade8263eae346a90230393","name":"a-toolbox","description":"javascript lightweight basic tools for node.js and browser","dist-tags":{"latest":"1.7.3","next":"1.7.0"},"versions":{"0.0.1":{"name":"a-toolbox","version":"0.0.1","description":"lightweight tools","keywords":["tools","lib","misc"],"url":"http://github.com/simone-sanfratello/a-toolbox","author":{"name":"Simone Sanfratello","email":"simone.sanfra@gmail.com"},"license":"MIT","repository":{"type":"git","url":"git://github.com/simone-sanfratello/a-toolbox.git"},"engines":{"node":">= 0.10.x"},"scripts":{"test":"node test.js"},"files":["main.js"],"main":"main","dependencies":{},"gitHead":"d290c3036fc0804bc8e01f8680f7ab4dd1333237","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox","_id":"a-toolbox@0.0.1","_shasum":"2af249d60752f8e515675120534609a41590f5e1","_from":"./","_npmVersion":"1.4.28","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"dist":{"shasum":"2af249d60752f8e515675120534609a41590f5e1","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.0.1.tgz","integrity":"sha512-ZWppbhusVfeGXFv1+oZ6YQYKO+XZ747j+/QglKR5XKIgkR5hCpxoFopJzwM+Jfy0wmC0zdnGVCwubrhd4PvHyQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFo8PJ2+AkaXZL+XBhaVohDXBiel94hJO2OjYD3wlQF3AiBh88IlKc0mt5r0Z8CP/HM6vHQwJvljLPiW20Yi6ESkZw=="}]},"directories":{}},"0.0.2":{"name":"a-toolbox","version":"0.0.2","description":"lightweight tools","keywords":["tools","lib","misc","toolbox","array","task","random"],"url":"http://github.com/simone-sanfratello/a-toolbox","author":{"name":"Simone Sanfratello","email":"simone.sanfra@gmail.com"},"license":"MIT","repository":{"type":"git","url":"git://github.com/simone-sanfratello/a-toolbox.git"},"engines":{"node":">= 0.10.x"},"scripts":{"test":"node test.js"},"files":["main.js"],"main":"main","dependencies":{},"gitHead":"e7160f696316c059e2efc930b9541ddbd43aca68","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox","_id":"a-toolbox@0.0.2","_shasum":"2169c6d8f8751f21630d93ecb4123e3c40c37e97","_from":"./","_npmVersion":"1.4.28","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"dist":{"shasum":"2169c6d8f8751f21630d93ecb4123e3c40c37e97","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.0.2.tgz","integrity":"sha512-j2QwPnph9lPaT4P3X0GJzjHC/C1f+y/I8eTWFhtQHeMXVxMYLmTR2Zxqoi11ZMuVmEgb53m9O9jupaUwqcm7ug==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICoSDQyOF7U5LTdkrwc/ewbM1TRk5SWjDEv1IOGQUPKVAiEAjPf4nWZAi250/66YqR7zGx61BSenJzUk2I22+v2k5mM="}]},"directories":{}},"0.0.3":{"name":"a-toolbox","version":"0.0.3","description":"lightweight tools","keywords":["tools","lib","misc","toolbox","array","task","random"],"url":"http://github.com/simone-sanfratello/a-toolbox","author":{"name":"Simone Sanfratello","email":"simone.sanfra@gmail.com"},"license":"MIT","repository":{"type":"git","url":"git://github.com/simone-sanfratello/a-toolbox.git"},"engines":{"node":">= 0.10.x"},"scripts":{"test":"node test.js"},"files":["main.js"],"main":"main","dependencies":{},"gitHead":"0dcb16640576775569bd1d25fc81773289c81d66","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox","_id":"a-toolbox@0.0.3","_shasum":"889089b91dc6925d8de1fb158e5b4428ae6a2dd0","_from":"./","_npmVersion":"1.4.28","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"dist":{"shasum":"889089b91dc6925d8de1fb158e5b4428ae6a2dd0","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.0.3.tgz","integrity":"sha512-rSNhBHVPfDbTnJ2Ys29drn8cyzfn2aHXpogA7kikffY+dPIx/prj/tlDdVY5ejmM2fDyZVBp1TP65HbivpKJ/Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICsq6CyOlWBEucFE5DJKglQqrEpcvtNNV1YN74mRn9UNAiAB/pJm9M6Gp+TcLVJIKvooA9h8+slwC20M5+X/sbg1Ig=="}]},"directories":{}},"0.0.4":{"name":"a-toolbox","version":"0.0.4","description":"lightweight tools","keywords":["tools","lib","misc","toolbox","array","task","random"],"url":"http://github.com/simone-sanfratello/a-toolbox","author":{"name":"Simone Sanfratello","email":"simone.sanfra@gmail.com"},"license":"MIT","repository":{"type":"git","url":"git://github.com/simone-sanfratello/a-toolbox.git"},"engines":{"node":">= 0.10.x"},"scripts":{"test":"node test.js"},"files":["main.js"],"main":"main","dependencies":{},"gitHead":"0dcb16640576775569bd1d25fc81773289c81d66","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox","_id":"a-toolbox@0.0.4","_shasum":"442d747024923bd4153c74660d3921a0165cc7f9","_from":".","_npmVersion":"2.5.1","_nodeVersion":"0.12.0","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"dist":{"shasum":"442d747024923bd4153c74660d3921a0165cc7f9","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.0.4.tgz","integrity":"sha512-xFN2ywsYxZ2XmiLhXYcye9CW3dukpE0wbwXqiNm/BheQ1qjkrT6rcb3IoOgqXsJystAv6TATJX6q2VDtfdvSOQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCfot2R6sewh4FxXxCNAfnGDFWy5Xb2Ilqo1SwjTdO5ngIgeSxZpAfRXlpjqn4CGOlKjgIKm3EiZtN/qyKiWenuark="}]},"directories":{}},"0.0.5":{"name":"a-toolbox","version":"0.0.5","description":"lightweight tools","keywords":["tools","lib","misc","toolbox","array","task","random"],"url":"http://github.com/simone-sanfratello/a-toolbox","author":{"name":"Simone Sanfratello","email":"simone.sanfra@gmail.com"},"license":"MIT","repository":{"type":"git","url":"git://github.com/simone-sanfratello/a-toolbox.git"},"engines":{"node":">= 0.10.x"},"scripts":{"test":"node test.js"},"files":["main.js"],"main":"main","dependencies":{},"gitHead":"0dcb16640576775569bd1d25fc81773289c81d66","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox","_id":"a-toolbox@0.0.5","_shasum":"981d83f974625790c6452186aa1e317ba0cb5017","_from":".","_npmVersion":"2.5.1","_nodeVersion":"0.12.0","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"dist":{"shasum":"981d83f974625790c6452186aa1e317ba0cb5017","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.0.5.tgz","integrity":"sha512-MD2Qhuxtu5+PDcfZAVwxFlfJdl6lWxJM9zBHqt60gc//ewvNeZxlK2SK3ZebEtTT8qYiDyiIhymSOgNUPDF8vQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB2R6Gc2mugGiaw0JjrMREyU1co7I9e8yR6T3bGpx8HPAiEAgxSg67uLlxKP7Inwl9vhx2X1/hxzIFzxuUZgeM2g/CU="}]},"directories":{}},"0.0.6":{"name":"a-toolbox","version":"0.0.6","description":"lightweight tools","keywords":["tools","lib","misc","toolbox","array","task","random"],"url":"http://github.com/simone-sanfratello/a-toolbox","author":{"name":"Simone Sanfratello","email":"simone.sanfra@gmail.com"},"license":"MIT","repository":{"type":"git","url":"git://github.com/simone-sanfratello/a-toolbox.git"},"engines":{"node":">= 0.10.x"},"scripts":{"test":"node test.js"},"files":["main.js"],"main":"main","dependencies":{},"gitHead":"bf9f516d71d775a1a7318b795937d2729cb5b8ce","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox","_id":"a-toolbox@0.0.6","_shasum":"2896c87dc6670461c9097b239db749acde72d7c9","_from":".","_npmVersion":"2.5.1","_nodeVersion":"0.12.0","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"dist":{"shasum":"2896c87dc6670461c9097b239db749acde72d7c9","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.0.6.tgz","integrity":"sha512-UwZ4kVyeD6Nhug+Vggl0a+eMTdMaZ+kP41wsQBPiqTxAOHknPoq7maxlspiQh+WM/A020J23whQLM8lfDzuROg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDh582Z3lWBvGzBBqRGRgDld2gU7nedSArnuOjgYOlmFQIgVzzDHcS0aQkhZnaAuTmTgQvEguy+Fqv5OW69gBqBzpw="}]},"directories":{}},"0.0.7":{"name":"a-toolbox","version":"0.0.7","description":"lightweight tools","keywords":["tools","lib","misc","toolbox","array","task","random"],"url":"http://github.com/simone-sanfratello/a-toolbox","author":{"name":"Simone Sanfratello","email":"simone.sanfra@gmail.com"},"license":"MIT","repository":{"type":"git","url":"git://github.com/simone-sanfratello/a-toolbox.git"},"engines":{"node":">= 0.10.x"},"scripts":{"test":"node test.js"},"files":["main.js"],"main":"main","dependencies":{},"gitHead":"bc10b066ace7ab45dce119db8f3358fae435b67b","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox","_id":"a-toolbox@0.0.7","_shasum":"27ff16c9be9a7806be059fef2719b674f3e54bdd","_from":".","_npmVersion":"2.5.1","_nodeVersion":"0.12.0","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"dist":{"shasum":"27ff16c9be9a7806be059fef2719b674f3e54bdd","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.0.7.tgz","integrity":"sha512-V8rsODkze1iIpUJn/FYFWBM3vg60MvWz0ZDmF3+zS3uypZEoe9Hn1to9TSZegCC5lmLkwsrDwMHYlC0JiOAuPw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICxZp+INi91ydmXtGvjCwv/o8dxJtdC/eFEFvioUsdqZAiAVUzt+Q+UrVQ84qzan8gvJG815PfVO6HVIFJOQ/3AvgA=="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"directories":{}},"0.0.8":{"name":"a-toolbox","version":"0.0.8","description":"lightweight tools","keywords":["tools","lib","misc","toolbox","array","task","random"],"url":"http://github.com/simone-sanfratello/a-toolbox","author":{"name":"Simone Sanfratello","email":"simone.sanfra@gmail.com"},"license":"MIT","repository":{"type":"git","url":"git://github.com/simone-sanfratello/a-toolbox.git"},"engines":{"node":">= 0.10.x"},"scripts":{"test":"node test.js"},"files":["main.js"],"main":"main","dependencies":{},"gitHead":"5fa931c061db696837bed089f8004169cf02d9de","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox","_id":"a-toolbox@0.0.8","_shasum":"c3d516315760f65ffc3439bffe0d12c434849f51","_from":".","_npmVersion":"2.11.3","_nodeVersion":"0.12.7","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"dist":{"shasum":"c3d516315760f65ffc3439bffe0d12c434849f51","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.0.8.tgz","integrity":"sha512-oIWeuBTZO3sD21I8tRDwr23hTvW+Ux85DNihwxB0B6Jf3wJQEQ31Pfc5rOW0jOtsp4/U1GBNWu2CSGCuWsFypA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDm+9BpQQolwdLAq7revIzUTZSdKoAAU/X9ynxjzKd+EwIgAc36wl5ts8kLu6SrLCeaVOVrciRP+Bv/FKSsGK9E+J4="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"directories":{}},"0.0.9":{"name":"a-toolbox","version":"0.0.9","description":"lightweight tools","keywords":["tools","lib","misc","toolbox","array","task","random"],"url":"http://github.com/simone-sanfratello/a-toolbox","author":{"name":"Simone Sanfratello","email":"simone.sanfra@gmail.com"},"license":"MIT","repository":{"type":"git","url":"git://github.com/simone-sanfratello/a-toolbox.git"},"engines":{"node":">= 0.10.x"},"scripts":{"test":"istanbul cover test.js -x test.js"},"tonicExampleFilename":"test.js","files":["main.js","test.js"],"main":"main","gitHead":"ba142f08c054dcdb16d3fc970f76f7296cdecaf6","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.0.9","_shasum":"88c26c2f040751d27a287bc64131b1a929e205c3","_from":".","_npmVersion":"2.14.7","_nodeVersion":"4.2.3","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"dist":{"shasum":"88c26c2f040751d27a287bc64131b1a929e205c3","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.0.9.tgz","integrity":"sha512-k9psF4rMDfzRHTHssNyH+TiG6bBvrIXiAsd2MvL7yV3iSXhZnRpJqwaPctpcLR6VzsxtVIsEz4UkjHQxFAunMg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEJs5xFR1M6zKGCu5UF9WBTh0hs49tVOs4wmbBNN8Mr9AiEAjqQZvGo0o2aKWdzNCyf7MD4tFPcvL7gpo7bcOcePHdo="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"directories":{}},"0.0.10":{"name":"a-toolbox","version":"0.0.10","description":"lightweight tools","keywords":["tools","lib","misc","toolbox","array","task","random"],"url":"http://github.com/simone-sanfratello/a-toolbox","author":{"name":"Simone Sanfratello","email":"simone.sanfra@gmail.com"},"license":"MIT","repository":{"type":"git","url":"git://github.com/simone-sanfratello/a-toolbox.git"},"engines":{"node":">= 0.10.x"},"scripts":{"test":"istanbul cover test.js -x test.js"},"tonicExampleFilename":"test.js","files":["main.js","test.js"],"main":"main","gitHead":"f001ca4cdd39606b561ee0b8bc83b81284aefe8b","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.0.10","_shasum":"7e4a3e87394e4fd5701c077d71fbf8cc278231df","_from":".","_npmVersion":"2.14.7","_nodeVersion":"4.2.3","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"dist":{"shasum":"7e4a3e87394e4fd5701c077d71fbf8cc278231df","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.0.10.tgz","integrity":"sha512-kK6QDYIKljMJBT0AX2scEIQOrRZyA/9Vl+Cob5Q78WoL6vrvpH6PGVFt3Pv8jqFR01bXmp1pQ2kBI3ZgC91qSQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCKbFQpCF1kb6U0w/acU5YPeIj0KjFkCnONlTBrVp3sHAIhAIgMmor9/nFvC2YuDGplf4E3u3PmzGX62EuHkaCwAVro"}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"directories":{}},"0.0.11":{"name":"a-toolbox","version":"0.0.11","description":"lightweight tools","keywords":["tools","lib","misc","toolbox","array","task","random"],"url":"http://github.com/simone-sanfratello/a-toolbox","author":{"name":"Simone Sanfratello","email":"simone.sanfra@gmail.com"},"license":"MIT","repository":{"type":"git","url":"git://github.com/simone-sanfratello/a-toolbox.git"},"engines":{"node":">= 0.10.x"},"scripts":{"test":"istanbul cover test.js -x test.js"},"tonicExampleFilename":"test.js","files":["main.js","test.js"],"main":"main","gitHead":"95f2001eb463b8e080debf3f09e86366ddd6a46c","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.0.11","_shasum":"27f065eceacc2ff2f8ba0b3cc47fe55063df3dee","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"dist":{"shasum":"27f065eceacc2ff2f8ba0b3cc47fe55063df3dee","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.0.11.tgz","integrity":"sha512-e+bXa3l5kqgHkmKqJyR4RTeWDD5aYxWhR/52ugfDpPhkdPVifiIT0cWpSCrHCtMxrc7b7oqcOWmWbTFEm3K9Hg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDHa0hksFoA1P2yvDSnPzJFOQpqJ5AbBOUUIGoBzSY7HgIhAKzqSgzIjsP/Ox1el63rHf90i67UsSDjRBgfMh1kdeMu"}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"directories":{}},"0.0.12":{"name":"a-toolbox","version":"0.0.12","description":"lightweight tools","keywords":["tools","lib","misc","toolbox","array","task","random"],"url":"http://github.com/simone-sanfratello/a-toolbox","author":{"name":"Simone Sanfratello","email":"simone.sanfra@gmail.com"},"license":"MIT","repository":{"type":"git","url":"git://github.com/simone-sanfratello/a-toolbox.git"},"engines":{"node":">= 0.10.x"},"scripts":{"test":"istanbul cover test.js -x test.js"},"tonicExampleFilename":"test.js","files":["main.js","test.js"],"main":"main","gitHead":"f37fda21ec656244e99f9f7101df81ab748f7d1b","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.0.12","_shasum":"265ce354205cfbe18c3bdf7c4e1d69a07e27d372","_from":".","_npmVersion":"3.5.3","_nodeVersion":"4.2.4","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"dist":{"shasum":"265ce354205cfbe18c3bdf7c4e1d69a07e27d372","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.0.12.tgz","integrity":"sha512-5hG/YY5siy92PljljftQI9W+UrVT9MrgvOwLAEhGfuCvZbZJ48V6773FG7z//Ey2aBraCwNUON1px/rPX4Q0MA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICB/yo5qC44BogTHVFxarjcjEVLW82lLCNzfJ90xOSktAiBuukdNGbdf0d1VoTs6m0q17V9tvojytknuj2nMqtn2rw=="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"directories":{}},"0.0.13":{"name":"a-toolbox","version":"0.0.13","description":"lightweight tools","keywords":["tools","lib","misc","toolbox","array","task","random"],"url":"http://github.com/simone-sanfratello/a-toolbox","author":{"name":"Simone Sanfratello","email":"simone.sanfra@gmail.com"},"license":"MIT","repository":{"type":"git","url":"git://github.com/simone-sanfratello/a-toolbox.git"},"engines":{"node":">= 0.10.x"},"scripts":{"test":"istanbul cover test.js -x test.js"},"tonicExampleFilename":"test.js","files":["main.js","test.js"],"main":"main","gitHead":"0724445314ef6fde42763017ebdc8f635f680d58","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.0.13","_shasum":"00c327c8a6f41e6bc6c6599a1984ac632dcce792","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.4","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"dist":{"shasum":"00c327c8a6f41e6bc6c6599a1984ac632dcce792","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.0.13.tgz","integrity":"sha512-LYUhE1NCrXzEthM5EnQGOHsj7ZRNUSZhAupHIIISwkeOoTX7lKz4fJnay6F6KQqYyou21/cQ5el6/as3aTQtRA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIASXwpH7pnnjvXfwI1CG884cfojbtmwElfZAR5szVQ3+AiByUFzS9icvQu2r+bC0NSsk14tZUbtO5LpOin5QW4/C0g=="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"directories":{}},"0.0.14":{"name":"a-toolbox","version":"0.0.14","description":"lightweight tools","keywords":["tools","lib","misc","toolbox","array","task","random"],"url":"http://github.com/simone-sanfratello/a-toolbox","author":{"name":"Simone Sanfratello","email":"simone.sanfra@gmail.com"},"license":"MIT","repository":{"type":"git","url":"git://github.com/simone-sanfratello/a-toolbox.git"},"engines":{"node":">= 0.10.x"},"scripts":{"test":"istanbul cover test.js -x test.js"},"tonicExampleFilename":"test.js","files":["main.js","test.js"],"main":"main","gitHead":"445bcd9ab2069d05ee1ffd8625d58cb56cb631c3","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.0.14","_shasum":"e72ed30686c8c0b6c0fdac418adc96426782f233","_from":".","_npmVersion":"2.14.12","_nodeVersion":"4.2.6","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"dist":{"shasum":"e72ed30686c8c0b6c0fdac418adc96426782f233","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.0.14.tgz","integrity":"sha512-q00ddrj6irHQB8MO4g1pcq3ttkp2hhI0y6MR5cfRCPdIhDxQjnV9II3LNNom7hl5htDfsXVNl2ZbfDIStzIkWg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDfBDqARqXCC5TBf/LHJ8jAml70ArSu/7cCD6W1JlKktAiBOP+61oa+zBVwbuZY1NEQM2afsCasxG2TuAJkPR9tacA=="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"packages-9-west.internal.npmjs.com","tmp":"tmp/a-toolbox-0.0.14.tgz_1454669631256_0.26483837701380253"},"directories":{}},"0.0.16":{"name":"a-toolbox","version":"0.0.16","description":"lightweight tools","keywords":["tools","lib","misc","toolbox","array","task","random"],"url":"http://github.com/simone-sanfratello/a-toolbox","author":{"name":"Simone Sanfratello","email":"simone.sanfra@gmail.com"},"license":"MIT","repository":{"type":"git","url":"git://github.com/simone-sanfratello/a-toolbox.git"},"engines":{"node":">= 0.10.x"},"scripts":{"test":"istanbul cover test.js -x test.js","doc":"jsdoc -c jsdoc.json -R README.md"},"tonicExampleFilename":"test.js","files":["main.js","test.js"],"main":"main","devDependencies":{"standard":"x","istanbul":"x","ink-docstrap":"x"},"gitHead":"c1171afe0f883856ef4a33b0c529a5c68df4592d","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.0.16","_shasum":"bc1b79f9b39d74b1b63af4f4548d19d9007c1a57","_from":".","_npmVersion":"3.10.6","_nodeVersion":"4.5.0","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"dist":{"shasum":"bc1b79f9b39d74b1b63af4f4548d19d9007c1a57","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.0.16.tgz","integrity":"sha512-CLNibioevcfXycCjUnbsAtOgGhSjoy+jU0e0+8KslJUdjH5pfXS3OzygO+20lOlpturXKIQLzgzCj01jY2XeQA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEeSIFEd2h56axHawOthk3vzfmhOaFxNNWba539yrigkAiBpGMMxRPSs1kMIp+nZU6+LEPlAY62tw3rmhoFjJnSk6w=="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/a-toolbox-0.0.16.tgz_1472924018602_0.14049824746325612"},"directories":{}},"0.0.17":{"name":"a-toolbox","version":"0.0.17","description":"lightweight tools","keywords":["tools","log","lib","misc","toolbox","array","task","random"],"url":"http://github.com/simone-sanfratello/a-toolbox","author":{"name":"Simone Sanfratello","email":"simone.sanfra@gmail.com"},"license":"MIT","repository":{"type":"git","url":"git://github.com/simone-sanfratello/a-toolbox.git"},"engines":{"node":">= 0.10.x"},"scripts":{"test":"istanbul cover test.js -x test.js","doc":"jsdoc -c jsdoc.json -R README.md"},"tonicExampleFilename":"test.js","files":["main.js","test.js"],"main":"main","dependencies":{"colors":"x"},"devDependencies":{"standard":"x","istanbul":"x","ink-docstrap":"x"},"gitHead":"6cccf19a7a1adceba4e72f82c2c84dc894c3de2a","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.0.17","_shasum":"2ce35367a8b7039f533b440ea1c1638b65250c82","_from":".","_npmVersion":"3.10.6","_nodeVersion":"4.5.0","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"dist":{"shasum":"2ce35367a8b7039f533b440ea1c1638b65250c82","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.0.17.tgz","integrity":"sha512-KgJVSka/CXpVTr1JNsPl1/bfdmL6CW6vAFwUea4r0y4Tz57d2yBbkyibokZO3LCFhf9l37GehfWIFczi0l3n4w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDnrel5mLLf3a/i368cpxLw1H5vRDTV+yokJtaq4gRtTgIgOQH+zhVKbL6yvGoOsjbi96X1bxJQxLkeD6xV9hUO8OU="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/a-toolbox-0.0.17.tgz_1472963747318_0.026177151827141643"},"directories":{}},"0.1.0":{"name":"a-toolbox","version":"0.1.0","description":"basic lightweight tools","main":"main.js","devDependencies":{"faker":"x","tap":"x"},"engines":{"node":">= 4"},"files":["main.js"],"repository":{"type":"git","url":"git://github.com/simone-sanfratello/a-toolbox.git"},"keywords":["tools","log","lib","misc","toolbox","array","task","random"],"author":{"name":"Simone Sanfratello","email":"simone.sanfra@gmail.com"},"license":"MIT","gitHead":"8cd218bd3ca9914102b42de1a4ce758bd1c63c73","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.1.0","scripts":{},"_shasum":"c36c91122a2a1d54c9750f905d7fa7365ea54ea1","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.0","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"dist":{"shasum":"c36c91122a2a1d54c9750f905d7fa7365ea54ea1","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.1.0.tgz","integrity":"sha512-dTd00gJhtyAQAobb823ZUOW5xLPgVT+p/3Wg1UqrdDGC24HhiDQJ14Hwzs4eiV5tcydSTUmzZ5okJmZencBLlg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICdMoxvKWF6i59oTpjfsBnAe/VCcN3bXrHo/0xB2xWHxAiBz53McMPN5Mxb2S/eULDRUVrUJsANqiqfLuiA4wdZXLQ=="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/a-toolbox-0.1.0.tgz_1489072141992_0.7110782435629517"},"directories":{}},"0.1.1":{"name":"a-toolbox","version":"0.1.1","description":"basic lightweight tools","main":"main.js","devDependencies":{"faker":"x","tap":"x"},"engines":{"node":">= 4"},"files":["main.js"],"repository":{"type":"git","url":"git://github.com/simone-sanfratello/a-toolbox.git"},"keywords":["tools","log","lib","misc","toolbox","array","task","random"],"author":{"name":"Simone Sanfratello","email":"simone.sanfra@gmail.com"},"license":"MIT","gitHead":"f4f177a66e48ca8b94f3061e4e6c6504daf75222","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.1.1","scripts":{},"_shasum":"e7949ca939d7c1a67478b012993b0b20aa99aa42","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.0","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"dist":{"shasum":"e7949ca939d7c1a67478b012993b0b20aa99aa42","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.1.1.tgz","integrity":"sha512-u2x9qx5OomBoBZ/xKmYz8VWLt1xXG+gyZBk8x4sgdXwQduePRi9U/rowkXBigObasez3dlLhE5fEsp3cwNTrJg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG5UWr1zDOcfXtk0oya+Htkg++BX71cvpqfE89gWRUc4AiBF6HkmmQFyZ4cd6QLpT2AGVzy6AvICfHoTTLH8jlaefw=="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/a-toolbox-0.1.1.tgz_1489420467897_0.1643943057861179"},"directories":{}},"0.1.2":{"name":"a-toolbox","version":"0.1.2","description":"basic lightweight tools","main":"main.js","devDependencies":{"faker":"x","tap":"x"},"engines":{"node":">= 4"},"files":["main.js"],"repository":{"type":"git","url":"git://github.com/simone-sanfratello/a-toolbox.git"},"keywords":["tools","log","lib","misc","toolbox","array","task","random"],"author":{"name":"Simone Sanfratello","email":"simone.sanfra@gmail.com"},"license":"MIT","gitHead":"c2052d036264069e6e91107322a06100bdd4415e","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.1.2","scripts":{},"_shasum":"15633a567a1dc80adf8a41ed8b83e8515d1e1a34","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.0","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"dist":{"shasum":"15633a567a1dc80adf8a41ed8b83e8515d1e1a34","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.1.2.tgz","integrity":"sha512-GEHuhTuIgwdh3e4ezAxiQ0mKpSA6rFcV3zMfCI6XYisHJJs+J5SM2x9keRPX8w5lST5naTrZ5Fc315AVJaIReQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF1LDStktn7D/2czK8H//DgMFXQBK4a6XXj68nfFY77mAiAHj65AVbIvAPWk6C5XokkGRQ4saHOmbG5zGZmP9SsgyQ=="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/a-toolbox-0.1.2.tgz_1490068779707_0.7626463912893087"},"directories":{}},"0.1.3":{"name":"a-toolbox","version":"0.1.3","description":"basic lightweight tools","main":"main.js","devDependencies":{"faker":"x","tap":"x"},"engines":{"node":">= 4"},"files":["main.js"],"repository":{"type":"git","url":"git://github.com/simone-sanfratello/a-toolbox.git"},"keywords":["tools","log","lib","misc","toolbox","array","task","random"],"author":{"name":"Simone Sanfratello","email":"simone.sanfra@gmail.com"},"license":"MIT","gitHead":"ff3f9ce9d6819fa223eeb980f544b835b240e441","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.1.3","scripts":{},"_shasum":"ac91debc2a0ff0a7136b978693fb30412a1fa599","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.0","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"dist":{"shasum":"ac91debc2a0ff0a7136b978693fb30412a1fa599","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.1.3.tgz","integrity":"sha512-v1RAkLRHjZ8GqqPyaF3/fUypbgUNyYCz1ZQJ3g89jVuE/t8GZfNVWbVLI7DoTS+iQv9dwAlsFTzG6bHv021ozQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFzHSIjd68r/+ONpE8YapfPe8mHGIeotrKYh1tpxhrWyAiBmTjBBN9YDL8lM0/YH6hkewZ8nVUtA4GgPM/Zvx6TBXQ=="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/a-toolbox-0.1.3.tgz_1491064789271_0.7336899840738624"},"directories":{}},"0.1.4":{"name":"a-toolbox","version":"0.1.4","description":"basic lightweight tools","main":"main.js","devDependencies":{"faker":"x","tap":"x"},"engines":{"node":">= 4"},"files":["main.js"],"repository":{"type":"git","url":"git://github.com/simone-sanfratello/a-toolbox.git"},"keywords":["tools","log","lib","misc","toolbox","array","task","random"],"author":{"name":"Simone Sanfratello","email":"simone.sanfra@gmail.com"},"license":"MIT","gitHead":"ff3f9ce9d6819fa223eeb980f544b835b240e441","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.1.4","scripts":{},"_shasum":"54430288d5d855f773848066ff7872f980436156","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.0","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"dist":{"shasum":"54430288d5d855f773848066ff7872f980436156","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.1.4.tgz","integrity":"sha512-iZSuiA50b9dtTU9teIdU+IDfvopTL6gSS7uCAusl/TjJj0So6UimVJMPCoWYebRMJD+q/c55C0oCNDdFqdnCig==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG2IMjN9gm8G4kisRO93BNOFc14DpR5KuowgAB7nKHfbAiEAu8+O+Nm+KaTEWD/7A5mRUlnibOccjoQ2SUpKcOdtiWY="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/a-toolbox-0.1.4.tgz_1491066700766_0.32301047816872597"},"directories":{}},"0.1.5":{"name":"a-toolbox","version":"0.1.5","description":"javascript lightweight basic tools","main":"index.js","directories":{"test":"test"},"devDependencies":{"faker":"^x","tap":"^x"},"engines":{"node":">= 4"},"scripts":{"test":"echo 'TODO tap test/*.js'"},"repository":{"type":"git","url":"git+https://simone-sanfratello@github.com/simone-sanfratello/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","gitHead":"fd5f169e8b0dbb3b131c8eac0ec9d373ea7b898b","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.1.5","_shasum":"99b91c88c36f98151b2e6b24e66dc5fe9ef74cf2","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.0","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"dist":{"shasum":"99b91c88c36f98151b2e6b24e66dc5fe9ef74cf2","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.1.5.tgz","integrity":"sha512-zbIYqMfjd+6uzBJP+3g4e+iTE2l20R0ehqUPQYqgvqr8Pc4YloH3rejs/Z3GX7RXz4CLmS8UPCtkQ2ZqvbtGJQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBHIFHnrY26Sdk7BuED1kX5kuZB497Og9cAcws24qqI9AiEA0SG8RMEiW8Q4CYn7Zh8fXUUvNfiNka/1USxMhpceb44="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/a-toolbox-0.1.5.tgz_1491408139481_0.17995067848823965"}},"0.1.6":{"name":"a-toolbox","version":"0.1.6","description":"javascript lightweight basic tools","main":"index.js","directories":{"test":"test"},"devDependencies":{"faker":"^x","tap":"^x"},"engines":{"node":">= 4"},"scripts":{"test":"echo 'TODO tap test/*.js'"},"repository":{"type":"git","url":"git+https://simone-sanfratello@github.com/simone-sanfratello/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","gitHead":"d99dbb18798766a1af12fcbe1c3f8fef7892a045","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.1.6","_shasum":"c74ebfd828d8ba3aad56b4a9eb4946f2f735aa39","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.0","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"dist":{"shasum":"c74ebfd828d8ba3aad56b4a9eb4946f2f735aa39","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.1.6.tgz","integrity":"sha512-YbHqCRqJ4lE1SeQkvQ/jMJ0h3M2AUw6Gn2REVC6m0hu4I2gLCVoO1h/K7aAm2kmArw08tYa54mQE9tv0F+XUew==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHFSo51amUzzs8+G3ZjzsSMDt9OIgYEUo0eFG7WbcP4PAiEA1CCmn73ox0lblRqK2VLbx6veOVKsX4LSypUyRwoYsu0="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/a-toolbox-0.1.6.tgz_1491424951594_0.7084441953338683"}},"0.1.7":{"name":"a-toolbox","version":"0.1.7","description":"javascript lightweight basic tools","main":"index.js","directories":{"test":"test"},"devDependencies":{"faker":"^x","tap":"^x"},"engines":{"node":">= 4"},"scripts":{"test":"echo 'TODO tap test/*.js'"},"repository":{"type":"git","url":"git+https://simone-sanfratello@github.com/simone-sanfratello/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","gitHead":"2852ca43cd7f72f4f07c931e1e3b28924e1c92cc","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.1.7","_shasum":"31d6044be30a85095013d55fb34ba7a7fbfbcc93","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.0","_npmUser":{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"},"dist":{"shasum":"31d6044be30a85095013d55fb34ba7a7fbfbcc93","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.1.7.tgz","integrity":"sha512-c1J5qjqIS8yukv0bk9ZP1f4WIc8/1LVzdsfe2qlNuHtZ692R1TiSsnDKcPpf6aE3czxaMJm+ICOLOG7QQQQtqw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC5oA5zYncIN7+b+siqXd/psggDpMzxvkBmPqkzefRAzAIgURbiztCSmcH3IVRo/yio8RlbfQOwOLAMD8gFcU8J904="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/a-toolbox-0.1.7.tgz_1491425920033_0.36788368318229914"}},"0.1.8":{"name":"a-toolbox","version":"0.1.8","description":"javascript lightweight basic tools","main":"index.js","directories":{"test":"test"},"devDependencies":{"faker":"^x","tap":"^x"},"engines":{"node":">= 4"},"scripts":{"test":"echo 'TODO tap test/*.js'"},"repository":{"type":"git","url":"git+https://simone-sanfratello@github.com/simone-sanfratello/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","gitHead":"926d0022bed75a159e3bd77cafcc56e71b160eda","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.1.8","_shasum":"106dd432f3ba6fb7880d355a0d6ba4ae156316bc","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"shasum":"106dd432f3ba6fb7880d355a0d6ba4ae156316bc","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.1.8.tgz","integrity":"sha512-oXMoFfIxzOHQGCn0QLGtjs9t+5ci/LpX/U41KKN2RW/aknzx8vGHUgpVCOB3Ryml4mlWzTOqTizwveOkkhSRCA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFJgcH5nU6+3CQ/KEUgmoYDDJxwf5hVy1ZHLK1Xqr6mOAiBQEoEInbs/D3bhKtuU39aIYxNii8MR9ZgD6AJvfPSNqQ=="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/a-toolbox-0.1.8.tgz_1492005815358_0.3605593857355416"}},"0.1.9":{"name":"a-toolbox","version":"0.1.9","description":"javascript lightweight basic tools","main":"index.js","directories":{"test":"test"},"devDependencies":{"faker":"^x","tap":"^x"},"engines":{"node":">= 4"},"scripts":{"test":"echo 'TODO tap test/*.js'"},"repository":{"type":"git","url":"git+https://simone-sanfratello@github.com/simone-sanfratello/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","gitHead":"d2081a29b6cdf85ea262b964a02b4c5dfbbbb750","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.1.9","_shasum":"53f6a8c0fe693103dbb1aa5717bbce3e58e4f822","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.2","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"shasum":"53f6a8c0fe693103dbb1aa5717bbce3e58e4f822","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.1.9.tgz","integrity":"sha512-hEA/tUJkptVDonx1Hcw+DbvPetOLe6TCOv34ZPa3Gg2wGiSghkfdpMWX6oKClRX2b4fx6NOHLQnmKuA1DLwURg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCPk2UuGv2q4JWDTnEqBUyqM23XCahrniQVW3kHW8ifUgIgHR/84rRlGpLowDvgMAWdCDGOebYlX2upx3MV5OZKTQY="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/a-toolbox-0.1.9.tgz_1492768392836_0.32731494423933327"}},"0.1.10":{"name":"a-toolbox","version":"0.1.10","description":"javascript lightweight basic tools","main":"index.js","directories":{"test":"test"},"devDependencies":{"faker":"^x","tap":"^x"},"engines":{"node":">= 4"},"scripts":{"test":"echo 'TODO tap test/*.js'"},"repository":{"type":"git","url":"git+https://simone-sanfratello@github.com/simone-sanfratello/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","gitHead":"efa3806c01131b4b7dc3030c1343e1cabfe3099c","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.1.10","_shasum":"d3dfe0933e121604a6dc3f8130f28f447ec0965e","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.11.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"shasum":"d3dfe0933e121604a6dc3f8130f28f447ec0965e","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.1.10.tgz","integrity":"sha512-EioScG28x+Jl8RdtN219e0T3lCo8QL0QkHTwzm+9QCbInZi7CfycqGS3KrEeNHbwTIQRilOciPg0gkfPeL95/g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFYLVY9SlfP3QCriYuCaNKXvpMRO03QnAj6MkQsvYA+HAiBU3gIIJ4WHj6G1biMzADznl5lP23RX0aSCzcVhfAnSiQ=="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox-0.1.10.tgz_1497130209444_0.24664579378440976"}},"0.1.12":{"name":"a-toolbox","version":"0.1.12","description":"javascript lightweight basic tools","main":"index.js","directories":{"test":"test"},"devDependencies":{"faker":"^x","tap":"^x"},"engines":{"node":">= 4"},"scripts":{"test":"echo 'TODO tap test/*.js'"},"repository":{"type":"git","url":"git+https://simone-sanfratello@github.com/simone-sanfratello/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","gitHead":"d0e7e7c1a23a48a203f891d11c13e24ac5f167d9","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.1.12","_shasum":"f35fa9889545260ff9563aa42e021d7e5bfbfa3b","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.11.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"shasum":"f35fa9889545260ff9563aa42e021d7e5bfbfa3b","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.1.12.tgz","integrity":"sha512-rSHq8d8j8zoilS9tW+Nm/oEf4f/eg/plAs6z8F5BNeQH+p1vxqKBFeM6ZRdnEXBsasdeBTZe+BM8V4BJh6VYEA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDI3MT8AZSMIyNirVfj9op05FXTkcLuybRlhOO6OryMbgIhANXITAcTFt+2wcHEdS8NSNTd45WjxIcbdZ9YSKWWb/1B"}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox-0.1.12.tgz_1497280502231_0.7433062950149179"}},"0.1.13":{"name":"a-toolbox","version":"0.1.13","description":"javascript lightweight basic tools","main":"index.js","directories":{"test":"test"},"devDependencies":{"faker":"^x","tap":"^x"},"engines":{"node":">= 4"},"scripts":{"test":"echo 'TODO tap test/*.js'"},"repository":{"type":"git","url":"git+https://simone-sanfratello@github.com/simone-sanfratello/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","gitHead":"75c05c9986e8ec1e9c73dd7f8885c78f4699fc3c","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.1.13","_shasum":"8f052bf740d2af5d4b24d425bd36f2478182c657","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.11.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"shasum":"8f052bf740d2af5d4b24d425bd36f2478182c657","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.1.13.tgz","integrity":"sha512-VjUSKGtxkhzJf+V4dWcaMTbzaDqNGq7X4fJh6hBh4fVU5R03AZw8s4gDfEnBrAmKmbDQVgMjTYNQypCsIOKA2g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDyWyl4cJCC0cslg7DU8JTotHFFGbuPidBaoocw375CJAIhAPlNrpyId2fbw6g8BWVX1OMNPBbOv6j+VBfX+KBlkM78"}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox-0.1.13.tgz_1497354409059_0.5996374960523099"}},"0.1.14":{"name":"a-toolbox","version":"0.1.14","description":"javascript lightweight basic tools","main":"index.js","directories":{"test":"test"},"devDependencies":{"faker":"^x","tap":"^x"},"engines":{"node":">= 4"},"scripts":{"test":"echo 'TODO tap test/*.js'"},"repository":{"type":"git","url":"git+https://simone-sanfratello@github.com/simone-sanfratello/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","gitHead":"7ff7e169cd0970562d755b2587e27c3388645458","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.1.14","_shasum":"efb05612ebcdfc9e27cdf0ec3aa8bb76f5c56808","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.11.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"shasum":"efb05612ebcdfc9e27cdf0ec3aa8bb76f5c56808","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.1.14.tgz","integrity":"sha512-EDBeE/WpXUQnJ6XCw4j4MY7ROdfWO4unI3H9axSF1IHNYFgmlbD8FaTyD2Blzr8eezX2YI0lYupOhCuEFrnhnw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDCYQ6+AiB7iDp849zdYsbIssOlVCbiVk/t6nELxPoKxgIgP5RUxHpDKXWQijzF5VmFWqhE5hdvZJrf5fHVEjQZmZA="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox-0.1.14.tgz_1497356937702_0.8457675729878247"}},"0.1.15":{"name":"a-toolbox","version":"0.1.15","description":"javascript lightweight basic tools","main":"index.js","directories":{"test":"test"},"devDependencies":{"faker":"^x","tap":"^x"},"engines":{"node":">= 4"},"scripts":{"test":"echo 'TODO tap test/*.js'"},"repository":{"type":"git","url":"git+https://simone-sanfratello@github.com/simone-sanfratello/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","gitHead":"d21287860a762351cc082c3b0cbe1a93a5da943b","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@0.1.15","_shasum":"1dc9271e833471364a5b4db1db42ed94ef2498d3","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.11.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"shasum":"1dc9271e833471364a5b4db1db42ed94ef2498d3","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-0.1.15.tgz","integrity":"sha512-iNkSeU+gZAJ/NguiPoTfsvMaT/PtSe06iIOH7HDYM1aXf7hvnMmK8KDPkIQ/9tUTvPCK7QXPxiXx3cl/Wax3PQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHPByoR10dIguwjR3rLtARl8i3zlEESgF4kxSRdBiV1aAiEAymWzpyuONzHd2NYhATJfxv1GvUDAH2/OzNK6OsSxjEc="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox-0.1.15.tgz_1497418320535_0.5663779994938523"}},"1.0.0":{"name":"a-toolbox","version":"1.0.0","description":"javascript lightweight basic tools","main":"index.js","devDependencies":{"babel":"^6.x","babel-core":"^6.x","babel-preset-env":"^1.6.x","babel-preset-es2015":"^6.x","babelify":"^8.x","browserify":"^14.x","fs-extra":"^5.x","gulp":"^3.x","gulp-buffer":"0.0.x","gulp-clean":"^0.3.x","gulp-sourcemaps":"^2.6.x","ink-docstrap":"^1.x","standard":"^10.x","tap":"^10.x","vinyl-source-stream":"^1.x"},"engines":{"node":">=6"},"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clean":"gulp clean","doxdox":"mkdir -p doc; doxdox './src/*.js' --layout markdown --output ./doc/README.md","jsdoc":"jsdoc -c jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","src/_old/"]},"repository":{"type":"git","url":"git+https://simone-sanfratello@github.com/simone-sanfratello/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","gitHead":"1bd8bfbac8833371d50814934a04c3fcab519dab","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@1.0.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-Tx+QqjcF5pSUfvcOO0SYmbLqZQT2obAQTTTbbb99NubBxU5vGRBhzCzxgVHhTlpoZ2sbKhFrwjsMx6Z/eOmEHg==","shasum":"5381a36b5c018acf586f6ac4d8c2a825a4672437","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.0.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDH56O7/NjCodmBNj8AZRyc5hpwIitMROHiZwnkYgjUbwIgDJJNkP03o+jC13mQd1Rhma7RoIbFFsK1NiqQSKNT4sw="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox-1.0.0.tgz_1515402975659_0.45296208979561925"},"directories":{}},"1.0.1":{"name":"a-toolbox","version":"1.0.1","description":"javascript lightweight basic tools","main":"index.js","devDependencies":{"babel":"^6.x","babel-core":"^6.x","babel-preset-env":"^1.6.x","babel-preset-es2015":"^6.x","babelify":"^8.x","browserify":"^14.x","fs-extra":"^5.x","gulp":"^3.x","gulp-buffer":"0.0.x","gulp-clean":"^0.3.x","gulp-sourcemaps":"^2.6.x","ink-docstrap":"^1.x","standard":"^10.x","tap":"^10.x","vinyl-source-stream":"^1.x"},"engines":{"node":">=6"},"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clean":"gulp clean","doxdox":"mkdir -p doc; doxdox './src/*.js' --layout markdown --output ./doc/README.md","jsdoc":"jsdoc -c jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","src/_old/"]},"repository":{"type":"git","url":"git+https://simone-sanfratello@github.com/simone-sanfratello/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","gitHead":"7d8bd67a738dab6527d1426feaf7ee80ff1d877c","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@1.0.1","_npmVersion":"5.6.0","_nodeVersion":"8.9.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-ViQRNXGGBFhxiHIJ3CVRS8tjJVgR6OuEKPyOC0zKAyz3zFev4K3ggN6POnAHIB6CySM2cgQnGd+F/8TyUcYvgw==","shasum":"ab209a530a9de2ebd33998b70b0c89fc858e54fd","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.0.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDlUYDeq6VNYJgXFYPzTjFdrciahoKbBiKEGZVhyNe7wgIgIvc+PolsGbK1eK8UbjjZku1SjzLszDh5zZXF/9KEtbE="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox-1.0.1.tgz_1515473658301_0.49120314652100205"},"directories":{}},"1.1.0":{"name":"a-toolbox","version":"1.1.0","description":"javascript lightweight basic tools","main":"index.js","devDependencies":{"babel":"^6.x","babel-core":"^6.x","babel-preset-env":"^1.6.x","babel-preset-es2015":"^6.x","babelify":"^8.x","browserify":"^14.x","fs-extra":"^5.x","gulp":"^3.x","gulp-buffer":"0.0.x","gulp-clean":"^0.3.x","gulp-sourcemaps":"^2.6.x","ink-docstrap":"^1.x","standard":"^10.x","tap":"^10.x","vinyl-source-stream":"^1.x"},"engines":{"node":">=6"},"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clean":"gulp clean","doxdox":"mkdir -p doc; doxdox './src/*.js' --layout markdown --output ./doc/README.md","jsdoc":"jsdoc -c jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","src/_old/"]},"repository":{"type":"git","url":"git+https://simone-sanfratello@github.com/simone-sanfratello/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","gitHead":"7d8bd67a738dab6527d1426feaf7ee80ff1d877c","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@1.1.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-cCth+KzEm3qs0DWimLzIR5llyFmJ05iHUje1oSWDS+WJek96ExxuUPCRYxluN8mRb9Qm5XhTH/Ps5tI2HsG0cw==","shasum":"9d03b8415a042f73a0d803357137105d54d1ab26","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.1.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDi9g6aItO3oelWgxQ7r3edCDnYUfY9ItI3rA1YGwt6XwIhAO24PpucAvKyzs7HWFFeF4gLwlHmSg8CBgPbA/3m4kVj"}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox-1.1.0.tgz_1515474020002_0.9301700585056096"},"directories":{}},"1.1.1":{"name":"a-toolbox","version":"1.1.1","description":"javascript lightweight basic tools, zero dependecies, isomorphic","main":"index.js","devDependencies":{"babel":"^6.x","babel-core":"^6.x","babel-preset-env":"^1.6.x","babel-preset-es2015":"^6.x","babelify":"^8.x","browserify":"^14.x","fs-extra":"^5.x","gulp":"^3.x","gulp-buffer":"0.0.x","gulp-clean":"^0.3.x","gulp-sourcemaps":"^2.6.x","ink-docstrap":"^1.x","standard":"^10.x","tap":"^10.x","vinyl-source-stream":"^1.x"},"engines":{"node":">=6"},"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clean":"gulp clean","doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","jsdoc":"jsdoc -c jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","src/_old/"]},"repository":{"type":"git","url":"git+https://simone-sanfratello@github.com/simone-sanfratello/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","gitHead":"4a1a7710889461867553c793c96ed685a2eefe00","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@1.1.1","_npmVersion":"5.6.0","_nodeVersion":"8.9.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-3yH2ffC5Tp5LBHwhFRuALHp2RJ5ww/M14r9PRZ1fpRC99+jyjjWi+FM+lWTQGVqtslFa/8uARlWTV/uwuTgWMA==","shasum":"39de67d5ed92c9835c894a29e73bd0ccfc4bcbaa","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.1.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD92ElSwThcXOstjrb0jJ570fDr9iVRJu+paxtxAYOXFwIgJ8+NavLk3mXKV0/LkJF+cCU+L0Kj5zVkNtAkfgbe3fo="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox-1.1.1.tgz_1515570442384_0.49676018254831433"},"directories":{}},"1.1.2":{"name":"a-toolbox","version":"1.1.2","description":"javascript lightweight basic tools, zero dependecies, isomorphic","main":"index.js","devDependencies":{"babel":"^6.x","babel-core":"^6.x","babel-preset-env":"^1.6.x","babel-preset-es2015":"^6.x","babelify":"^8.x","browserify":"^14.x","fs-extra":"^5.x","gulp":"^3.x","gulp-buffer":"0.0.x","gulp-clean":"^0.3.x","gulp-sourcemaps":"^2.6.x","ink-docstrap":"^1.x","standard":"^10.x","tap":"^10.x","vinyl-source-stream":"^1.x"},"engines":{"node":">=6"},"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clean":"gulp clean","doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","jsdoc":"jsdoc -c jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","src/_old/"]},"repository":{"type":"git","url":"git+https://simone-sanfratello@github.com/simone-sanfratello/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","gitHead":"be1acf39312d339b9ed172a719e0d0d7eed15a90","bugs":{"url":"https://github.com/simone-sanfratello/a-toolbox/issues"},"homepage":"https://github.com/simone-sanfratello/a-toolbox#readme","_id":"a-toolbox@1.1.2","_npmVersion":"5.6.0","_nodeVersion":"8.9.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-u+9uhSm3/vUonggji65sQ3ibelzeTiHsHS4QPLhyt2P2X7/VjNbqQButDlw+j+sHgyFA5GWbS4OBlCyg/s+azQ==","shasum":"3453160c946a2d6480e13bf3fbb17afa20f5306b","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.1.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDS6ycp3yrskVcruex3ou1qkmQcToJQcno9qQns0/xBnQIgQ+Ohfr750E3cCVor3OsHfMpeV/QQvkv2QR+2tnHgYas="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox-1.1.2.tgz_1515570559642_0.05783228878863156"},"directories":{}},"1.2.0":{"name":"a-toolbox","version":"1.2.0","description":"javascript lightweight basic tools, isomorphic","main":"index.js","devDependencies":{"babel":"^6.x","babel-core":"^6.x","babel-preset-env":"^1.6.x","babel-preset-es2015":"^6.x","babelify":"^8.x","browserify":"^14.x","fs-extra":"^5.x","gulp":"^3.x","gulp-buffer":"0.0.x","gulp-clean":"^0.3.x","gulp-sourcemaps":"^2.6.x","ink-docstrap":"^1.x","standard":"^10.x","tap":"^10.x","vinyl-source-stream":"^1.x"},"engines":{"node":">=6"},"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clean":"gulp clean","doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","jsdoc":"jsdoc -c doc/jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","src/_old/"]},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"dependencies":{"hash.js":"^1.1.3"},"gitHead":"b0149f4b5961c5d54a877df6ba8ddfdf5fe32ee9","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.2.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-XbEchBIWhBASu/sPKrH09KW+vVIz1BMrD+TO2cJorQIxd6ZXGOREb2SWPE4QZcHiWNEzNvc/ImFJIf5ZAqcOuQ==","shasum":"9c925f0a85841a0a4f6c71668eaf7a285e7f8a7d","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.2.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDAkHip2D29QrTDisoSbsbUi/IhdyzEPs0E5JMg8IglSAIhAMU5Sw83q5aerGBsHW8prrkTo5gOIFB3ULGh8vE3o0dZ"}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox-1.2.0.tgz_1515649767455_0.24236712674610317"},"directories":{}},"1.2.1":{"name":"a-toolbox","version":"1.2.1","description":"javascript lightweight basic tools, isomorphic","main":"index.js","devDependencies":{"babel":"^6.x","babel-core":"^6.x","babel-preset-env":"^1.6.x","babel-preset-es2015":"^6.x","babelify":"^8.x","browserify":"^14.x","fs-extra":"^5.x","gulp":"^3.x","gulp-buffer":"0.0.x","gulp-clean":"^0.3.x","gulp-sourcemaps":"^2.6.x","ink-docstrap":"^1.x","standard":"^10.x","tap":"^10.x","vinyl-source-stream":"^1.x"},"engines":{"node":">=6"},"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clean":"gulp clean","doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","jsdoc":"jsdoc -c doc/jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","src/_old/"]},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"dependencies":{"hash.js":"^1.1.3"},"gitHead":"f7a2a8f16bcc4dadcf2f3f4b2408f443b89c4522","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.2.1","_npmVersion":"5.6.0","_nodeVersion":"8.9.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-ivgIfE5Et7A9BgBvv9eUyR7harAnFDe2xxWnS5tIC1J/NTWrW4x+X5clJatMn5CT+sSBAJuznedfttzMkczA5g==","shasum":"ed66dfc7b823ee76df60ef87b59ee74b2f742b36","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.2.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDHN0I+NZ59S8rCsPIkPrP1rMCPXEOvE2JhfNcf8zUB1QIgD1DiQoOBH6L3jDeSOveD6ZSlmp7R02Bv8/uzsWCNAsY="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox-1.2.1.tgz_1515661593510_0.10106443264521658"},"directories":{}},"1.2.2":{"name":"a-toolbox","version":"1.2.2","description":"javascript lightweight basic tools, isomorphic","main":"index.js","devDependencies":{"babel":"^6.x","babel-core":"^6.x","babel-preset-env":"^1.6.x","babel-preset-es2015":"^6.x","babelify":"^8.x","browserify":"^14.x","fs-extra":"^5.x","gulp":"^3.x","gulp-buffer":"0.0.x","gulp-clean":"^0.3.x","gulp-sourcemaps":"^2.6.x","ink-docstrap":"^1.x","standard":"^10.x","tap":"^10.x","vinyl-source-stream":"^1.x"},"engines":{"node":">=6"},"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clean":"gulp clean","doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","jsdoc":"jsdoc -c doc/jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","src/_old/"]},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"dependencies":{"hash.js":"^1.1.3"},"gitHead":"bd20036c29308ed8663923164c6013225d1590b8","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.2.2","_npmVersion":"5.6.0","_nodeVersion":"8.9.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-1lIwrYSgQXbNlTR/GD98PB1iO4+mGS1ptMkKZxSP75gHZ0kVIJBZ50lC2uh5X7q+X97w6fpgCj0oiL3Ta6fr6A==","shasum":"73617075b44d57a9342fcc0aebe0b71a8191afaf","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.2.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDPNFNtumBo30bgeEBs411g32xuGiNgmVSYaT3YWh5WugIgHEhk0pTam8fB7r1nboEWoeAqlrJmmwdvyuLYGn5OkcU="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox-1.2.2.tgz_1515662015433_0.456796501763165"},"directories":{}},"1.2.3":{"name":"a-toolbox","version":"1.2.3","description":"javascript lightweight basic tools, isomorphic","main":"index.js","devDependencies":{"babel":"^6.x","babel-core":"^6.x","babel-preset-env":"^1.6.x","babel-preset-es2015":"^6.x","babelify":"^8.x","browserify":"^14.x","fs-extra":"^5.x","gulp":"^3.x","gulp-buffer":"0.0.x","gulp-clean":"^0.3.x","gulp-sourcemaps":"^2.6.x","ink-docstrap":"^1.x","standard":"^10.x","tap":"^10.x","vinyl-source-stream":"^1.x"},"engines":{"node":">=6"},"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clean":"gulp clean","doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","jsdoc":"jsdoc -c doc/jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","src/_old/"]},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"dependencies":{"hash.js":"^1.1.3"},"gitHead":"a807da060bd16a1edf902432bca042392ab13d9c","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.2.3","_npmVersion":"5.6.0","_nodeVersion":"8.9.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-FD8LBykobDl+MmZQNttl2IIFAiWmA29Nf55RAQ2hVk8DvAeAj1z04ZkXVJhV/XMHJ0df4iFJPhw3Y1FMBUJP7g==","shasum":"cf6514bd0c011c2585703dfaaa7191a9199ef68b","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.2.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDjw42pF83BWkXAVxAsG+ZLuEI2ZhSljSI1M8LGJxTCGwIhAMR8Uf3qbT4pWpMyV6tadN3R1b/N4Si6L49iKR+wnnzG"}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox-1.2.3.tgz_1515662309928_0.8839031469542533"},"directories":{}},"1.2.4":{"name":"a-toolbox","version":"1.2.4","description":"javascript lightweight basic tools, isomorphic","main":"index.js","devDependencies":{"babel":"^6.x","babel-core":"^6.x","babel-preset-env":"^1.6.x","babel-preset-es2015":"^6.x","babelify":"^8.x","browserify":"^14.x","fs-extra":"^5.x","gulp":"^3.x","gulp-buffer":"0.0.x","gulp-clean":"^0.3.x","gulp-sourcemaps":"^2.6.x","ink-docstrap":"^1.x","standard":"^10.x","tap":"^10.x","vinyl-source-stream":"^1.x"},"engines":{"node":">=6"},"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clean":"gulp clean","doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","jsdoc":"jsdoc -c doc/jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","src/_old/"]},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"dependencies":{"hash.js":"^1.1.3"},"gitHead":"e4c62c3ba1e71de8265ed5b3bde6cbec3d6befc7","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.2.4","_npmVersion":"5.6.0","_nodeVersion":"8.9.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-pjctQUbO/YjedADERD7nwjo1XDrVA7tMaquO0XKm5heHqjisaqXUBL5qndOsI37ArLd35+1RKaoRCw/GvA34og==","shasum":"175ec2b908dafaf3c31b1a65df0a844fc652399f","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.2.4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDmDX0EoKqspcK8pqWB7BvIx4dj5Uzdj7IFjFwZJGe3YQIgTk2LfPb/2HN1AGolIpjwtCjJwmRHtfNrFzCcR1bVSwY="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox-1.2.4.tgz_1515701679766_0.21260014991275966"},"directories":{}},"1.2.5":{"name":"a-toolbox","version":"1.2.5","description":"javascript lightweight basic tools, isomorphic","main":"index.js","devDependencies":{"babel":"^6.x","babel-core":"^6.x","babel-preset-env":"^1.6.x","babel-preset-es2015":"^6.x","babelify":"^8.x","browserify":"^14.x","fs-extra":"^5.x","gulp":"^3.x","gulp-buffer":"0.0.x","gulp-clean":"^0.3.x","gulp-sourcemaps":"^2.6.x","ink-docstrap":"^1.x","standard":"^10.x","tap":"^10.x","vinyl-source-stream":"^1.x"},"engines":{"node":">=6"},"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clean":"gulp clean","doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","jsdoc":"jsdoc -c doc/jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","src/_old/"]},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"dependencies":{"hash.js":"^1.1.3"},"gitHead":"ee062ce0e78852ee332f72c8b90ec7c784dfe3dd","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.2.5","_npmVersion":"5.6.0","_nodeVersion":"8.9.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-Tgd0iMeXD5ie3jAx7cNZNAYVVCe4MxjI7jxlKVMLEiQQqkrV7eD3X49m9F5Og/9mjZtt9vurvvkrGKjBy3ZY4g==","shasum":"00f2ddb880daf6a150aa690c61f00cf7300136a6","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.2.5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDZUzTL2+LFGsM1XBlCOD7bS4JJZQgZg5ijaRYTeO92/QIhAMH0fmcmHVItE9OaJavB9EgoD1Elp+KBcq2wuN2+vOkO"}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox-1.2.5.tgz_1515731380884_0.742017280543223"},"directories":{}},"1.2.6":{"name":"a-toolbox","version":"1.2.6","description":"javascript lightweight basic tools, isomorphic","main":"index.js","dependencies":{"hash.js":"^1.1.3"},"devDependencies":{"babel":"^6.x","babel-core":"^6.x","babel-preset-env":"^1.6.x","babel-preset-es2015":"^6.x","babelify":"^8.x","browserify":"^14.x","fs-extra":"^5.x","gulp":"^3.x","gulp-buffer":"0.0.x","gulp-clean":"^0.3.x","gulp-sourcemaps":"^2.6.x","ink-docstrap":"^1.x","standard":"^10.x","tap":"^10.x","vinyl-source-stream":"^1.x"},"engines":{"node":">=6"},"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clean":"gulp clean","doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","jsdoc":"jsdoc -c doc/jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","src/_old/"]},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"gitHead":"60312fc4f5a02515200a847f954168b66fd64aff","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.2.6","_npmVersion":"5.6.0","_nodeVersion":"8.9.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-gN5d+ZevXZ8v04608XpkUdmyiyhP/ae7hGriiU0mydZYKz0Yf1thxdtDlUZZCCzc1VmmDJp+kBQ5poPYO+tKFw==","shasum":"41775185e6deff6402b8d64159da7370dd8a2bf2","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.2.6.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDaMC2yYRmaW5O+BRJvGmj0hjRysIh1Sd7CprGeRJLr+QIgYeoPepqJ+NN6d57+HH5f/NZJ5q1tHrXrH9R4ykTErTk="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox-1.2.6.tgz_1515805544498_0.013273144839331508"},"directories":{}},"1.2.7":{"name":"a-toolbox","version":"1.2.7","description":"javascript lightweight basic tools, isomorphic","main":"index.js","dependencies":{"hash.js":"^1.x"},"devDependencies":{"babel":"^6.x","babel-core":"^6.x","babel-preset-env":"^1.6.x","babel-preset-es2015":"^6.x","babelify":"^8.x","browserify":"^14.x","fs-extra":"^5.x","gulp":"^3.x","gulp-buffer":"0.0.x","gulp-clean":"^0.3.x","gulp-sourcemaps":"^2.6.x","ink-docstrap":"^1.x","standard":"^10.x","tap":"^10.x","vinyl-source-stream":"^1.x"},"engines":{"node":">=6"},"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clean":"gulp clean","doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","jsdoc":"jsdoc -c doc/jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","src/_old/"]},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"gitHead":"e6abab2c678c3b26548a511a5d0297185a3bfc1d","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.2.7","_npmVersion":"5.6.0","_nodeVersion":"8.9.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-+e2JbWi9nLfql4OJpEnFyO3juF/sQSFH51MBilhuOVHrfGQ7NDrUnACVtR4WDzmQQYkwq9ZdPWvh1VuWh3HF0g==","shasum":"74a533dbd80c3393db1f384ddebb84bc872a61e7","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.2.7.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCtiehEoLRgmA/Hr3v/aKNsOZTuAPM5eeyv6UsEgzjZXgIhAO9ySId0E3ywBNEWlp7alPigq3dWhv1li9NzkcaNOGYH"}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox-1.2.7.tgz_1515814559483_0.14681629347614944"},"directories":{}},"1.2.8":{"name":"a-toolbox","version":"1.2.8","description":"javascript lightweight basic tools, isomorphic","main":"index.js","dependencies":{"hash.js":"^1.x"},"devDependencies":{"babel":"^6.x","babel-core":"^6.x","babel-preset-env":"^1.6.x","babel-preset-es2015":"^6.x","babelify":"^8.x","browserify":"^14.x","fs-extra":"^5.x","gulp":"^3.x","gulp-buffer":"0.0.x","gulp-clean":"^0.3.x","gulp-sourcemaps":"^2.6.x","ink-docstrap":"^1.x","standard":"^10.x","tap":"^10.x","vinyl-source-stream":"^1.x"},"engines":{"node":">=6"},"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clean":"gulp clean","doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","jsdoc":"jsdoc -c doc/jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","src/_old/"]},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"gitHead":"87b5ff791835caa50deecc9fdb77f3059b61db1e","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.2.8","_npmVersion":"5.6.0","_nodeVersion":"8.9.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-jGsBX2E7TOXM11kBPNSwYDY0CTyqPS9vZ7LzJRxtUsA8ewk7PITC/4+BnBmRuzvx+WyDTzTZSHLFnhds6RNtew==","shasum":"a58e042d14a6c09d422f7093f1effcd1f4d0d224","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.2.8.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFRIW5ve2o8R97w14xoP5/IRk9h/yWBabNyBpdvRONo6AiEA2ab19Vb45Oe4R4oVr+RggvHNZlZTyPZym2IHBs36IXc="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox-1.2.8.tgz_1516424283496_0.5233483316842467"},"directories":{}},"1.2.9":{"name":"a-toolbox","version":"1.2.9","description":"javascript lightweight basic tools, isomorphic","main":"index.js","dependencies":{"hash.js":"^1.x"},"devDependencies":{"babel":"^6.x","babel-core":"^6.x","babel-preset-env":"^1.6.x","babel-preset-es2015":"^6.x","babelify":"^8.x","browserify":"^14.x","fs-extra":"^5.x","gulp":"^3.x","gulp-buffer":"0.0.x","gulp-clean":"^0.3.x","gulp-sourcemaps":"^2.6.x","ink-docstrap":"^1.x","standard":"^10.x","tap":"^10.x","vinyl-source-stream":"^1.x"},"engines":{"node":">=6"},"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clean":"gulp clean","doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","jsdoc":"jsdoc -c doc/jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","src/_old/"]},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"gitHead":"27c89729db257a95edcea204332ad3b692cdb8fc","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.2.9","_npmVersion":"5.6.0","_nodeVersion":"8.9.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-//e1ubLxY0pkyt8S18cz0hV698uXuXk/uEFOnw9g2caZGS78AYs5RQUEQEDokH/mW4HwZPcs8Smbbzxs2BzV+Q==","shasum":"b4ab94af98399127fdf132737ba8b4753092f5a7","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.2.9.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDMEsU7xj/FOvnnJtgUDJI2f3wK2s2EUowO40sf2rpf2gIgcXQEoow8ja5JeSeet+jIp6DsGJAxHSnEcsJAGzddNW8="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox-1.2.9.tgz_1516510727526_0.7675737326499075"},"directories":{}},"1.2.10":{"name":"a-toolbox","version":"1.2.10","description":"javascript lightweight basic tools, isomorphic","main":"index.js","dependencies":{"hash.js":"^1.x"},"devDependencies":{"babel":"^6.x","babel-core":"^6.x","babel-preset-env":"^1.6.x","babel-preset-es2015":"^6.x","babelify":"^8.x","browserify":"^14.x","fs-extra":"^5.x","gulp":"^3.x","gulp-buffer":"0.0.x","gulp-clean":"^0.3.x","gulp-sourcemaps":"^2.6.x","ink-docstrap":"^1.x","standard":"^10.x","tap":"^10.x","vinyl-source-stream":"^1.x"},"engines":{"node":">=6"},"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clean":"gulp clean","doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","jsdoc":"jsdoc -c doc/jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","src/_old/"]},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"gitHead":"c83cbcb874cc9b40da7c7d15579af47c16ef2b00","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.2.10","_npmVersion":"5.6.0","_nodeVersion":"8.9.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-/xUhWa4kqAMs+ORCYwCZbv9p6ezhIm1BHJPTcB+cQTV3qomlqmznl/YpGV2f0LvydjqDpAs7HJ/JO34bEv619w==","shasum":"2243e3cd43b4477db192e36711b4fc9ef2ce51aa","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.2.10.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDIA/dAevs/Y+kZ2cb8of33JPfffbfIjsGGGb9Y1GOpKQIhAJaF62cEo6Tme0uT3vHJEJeJ86SJvVZL01uIvCK6Ew1I"}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox-1.2.10.tgz_1516791852159_0.23728316091001034"},"directories":{}},"1.2.12":{"name":"a-toolbox","version":"1.2.12","description":"javascript lightweight basic tools, isomorphic","main":"index.js","dependencies":{"hash.js":"^1.x"},"devDependencies":{"babel":"^6.x","babel-core":"^6.x","babel-preset-env":"^1.6.x","babel-preset-es2015":"^6.x","babelify":"^8.x","browserify":"^14.x","fs-extra":"^5.x","gulp":"^3.x","gulp-buffer":"0.0.x","gulp-clean":"^0.3.x","gulp-sourcemaps":"^2.6.x","ink-docstrap":"^1.x","pre-commit":"^1.x","standard":"^11.x","tap":"^10.x","tollo":"^0.0.3-dev","vinyl-source-stream":"^1.x"},"pre-commit":["test","build"],"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clean":"gulp clean","_doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","_jsdoc":"jsdoc -c doc/jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","_test/","src/_*"]},"engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"gitHead":"9e49e42335a956d694d169b5671769ab760e909c","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.2.12","_npmVersion":"5.6.0","_nodeVersion":"8.9.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-2IHykaVu9CuS00lOIXSEriktDcPD/jtzZk1amBAv+l0BRxJDfy3jqZQygAURNpEUr5fcLkZA2e2qvOsURvvYrg==","shasum":"3af84beb240f0eda1b910e26c97e85dec37f9a26","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.2.12.tgz","fileCount":40,"unpackedSize":288443,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD9k1JSNRrGXNpClgsNyZcLdS4SgaG/8XcYa8QIV8iH0gIhAPMArqxTp9isElhFnaUyj21Rd2ybryKF/e1KKwDFzJ8W"}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox_1.2.12_1519294198041_0.5478208249087393"},"_hasShrinkwrap":false},"1.4.0":{"name":"a-toolbox","version":"1.4.0","description":"javascript lightweight basic tools, isomorphic","main":"index.js","dependencies":{"hash.js":"^1.x"},"devDependencies":{"babel":"^6.x","babel-core":"^6.x","babel-preset-env":"^1.6.x","babel-preset-es2015":"^6.x","babelify":"^8.x","browserify":"^14.x","fs-extra":"^5.x","gulp":"^3.x","gulp-buffer":"0.0.x","gulp-clean":"^0.3.x","gulp-sourcemaps":"^2.6.x","ink-docstrap":"^1.x","pre-commit":"^1.x","standard":"^11.x","tap":"^10.x","tollo":"^0.0.3-dev","vinyl-source-stream":"^1.x"},"pre-commit":["test","build"],"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clean":"gulp clean","_doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","_jsdoc":"jsdoc -c doc/jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","_test/","src/_*"]},"engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"gitHead":"b13a5d5f88f1f379437b06d7248c19a601cb1fbe","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.4.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-mLI1mwiIlFkLprKfMDJP//eHe4XlYw+ZWHO8TBKcdupfk6VpM5IUzBm8bpO3s0Ccz2bcdF34pD+EkT6Zw5RHUQ==","shasum":"e826fc505b24671db18b820cc22c3a141b7872a5","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.4.0.tgz","fileCount":40,"unpackedSize":294535,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICOCr4AdYE0kBh2EmF77SAP5xdAvr8m6w0SPd+fftb7tAiBs+fMRQ0WRq7Ilye/V3KNtZJagRDFDhSJ6oEyHXYKiSA=="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox_1.4.0_1521780977471_0.32955342166732104"},"_hasShrinkwrap":false},"1.4.1":{"name":"a-toolbox","version":"1.4.1","description":"javascript lightweight basic tools, isomorphic","main":"index.js","dependencies":{"hash.js":"^1.x"},"devDependencies":{"babel":"^6.x","babel-core":"^6.x","babel-preset-env":"^1.6.x","babel-preset-es2015":"^6.x","babelify":"^8.x","browserify":"^14.x","fs-extra":"^5.x","gulp":"^3.x","gulp-buffer":"0.0.x","gulp-clean":"^0.3.x","gulp-sourcemaps":"^2.6.x","ink-docstrap":"^1.x","pre-commit":"^1.x","standard":"^11.x","tap":"^10.x","tollo":"^0.0.3-dev","vinyl-source-stream":"^1.x"},"pre-commit":["test","build"],"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clean":"gulp clean","_doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","_jsdoc":"jsdoc -c doc/jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","_test/","src/_*"]},"engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"gitHead":"bb6d7a5aa5484846bc6a4ae8204c6bc047a6944f","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.4.1","_npmVersion":"5.6.0","_nodeVersion":"8.9.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-28zRGCpyKWK0R8X9wjCacPRakJN/aMqWuJNsjteKi4mQo39TLTrDuIJs1xG1nHLuBWNDX7/Opq8wnXM0hv6v2Q==","shasum":"f29eb64093ac77033cec961a0584dd4cf3ed2489","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.4.1.tgz","fileCount":40,"unpackedSize":294852,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDC3DGo7HoJgl/VHU5o99eyWGogcSfFfAo/V5kGEkl8FgIgAOivjZ6b2MDm02JsOnqG+vlQ6mJ1hdjtrGE/pe5x4Hk="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox_1.4.1_1522059384556_0.2165930905881508"},"_hasShrinkwrap":false},"1.4.2":{"name":"a-toolbox","version":"1.4.2","description":"javascript lightweight basic tools, isomorphic","main":"index.js","dependencies":{"hash.js":"^1.1.3"},"devDependencies":{"babel":"^6.x","babel-core":"^6.x","babel-preset-env":"^1.6.x","babel-preset-es2015":"^6.x","babelify":"^8.x","browserify":"^14.x","fs-extra":"^5.x","gulp":"^3.x","gulp-buffer":"0.0.x","gulp-clean":"^0.3.x","gulp-sourcemaps":"^2.6.4","ink-docstrap":"^1.x","pre-commit":"^1.x","standard":"^11.x","tap":"^10.x","tollo":"0.0.3-dev","vinyl-source-stream":"^1.x"},"pre-commit":["test","build"],"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clean":"gulp clean","_doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","_jsdoc":"jsdoc -c doc/jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","_test/","src/_*"]},"engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"gitHead":"0983ced49de185ce60bf511dca671930b41b06ce","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.4.2","_npmVersion":"5.6.0","_nodeVersion":"8.9.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-bsMpPI4Sw3zTwIQ3tF8FvRSGKtLkpE+Cxv2g1f742cdJ6vfxVeJvmCWYXkWpgeeO1hY4138MeHzIsm4F+dI9Ug==","shasum":"da99955221d39243d19d39626d2946f96c736c9e","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.4.2.tgz","fileCount":40,"unpackedSize":307128,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCmwKHd9CfbndYvvpCwmoBqFuU4nEjdRVSshxduSS7UaQIgQyarsUZl3l8aL+XVVdNbnJZb/gWJz+8MIXhNNavb7do="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox_1.4.2_1522073978637_0.23546469405227954"},"_hasShrinkwrap":false},"1.4.3":{"name":"a-toolbox","version":"1.4.3","description":"javascript lightweight basic tools, isomorphic","main":"index.js","dependencies":{"hash.js":"^1.1.3"},"devDependencies":{"babel":"^6.x","babel-core":"^6.x","babel-preset-env":"^1.6.x","babel-preset-es2015":"^6.x","babelify":"^8.x","browserify":"^14.x","fs-extra":"^5.x","gulp":"^3.x","gulp-buffer":"0.0.x","gulp-clean":"^0.3.x","gulp-sourcemaps":"^2.6.4","ink-docstrap":"^1.x","pre-commit":"^1.x","standard":"^11.x","tap":"^10.x","tollo":"0.0.3-dev","vinyl-source-stream":"^1.x"},"pre-commit":["test","build"],"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clean":"gulp clean","_doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","_jsdoc":"jsdoc -c doc/jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","_test/","src/_*"]},"engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"gitHead":"95703df984b8e1d2e2a4895451a790848228d62f","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.4.3","_npmVersion":"5.6.0","_nodeVersion":"8.9.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-EH+j1yZQN4YJd/Ta/1VVFZLV/wLSRNM+dZxpmyq7mg6bppr1T+ATNRRTT2QNkNAtoLHaSsSScPARV6xGEMUOyw==","shasum":"fd959d43c5494a7f482c15271439712f95e10947","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.4.3.tgz","fileCount":40,"unpackedSize":307228,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa1LJHCRA9TVsSAnZWagAA/B8P/0rw9S6QHJ2vsGBwLbw4\nR2qnFxu7HC0kfUKboR1cb9cS8XXT4mgES4dUQdXE37SQuojcgmcyyLqDhNPU\n+M98vGrTiPHhcw8gYKuIM/Ma6rZxi/8hFlN75+FMkZdS1icIxopLxzworlKm\nUxBm+4+zBGhoc2KIB0bxYNN/S3NPvG0rdKb/PgnrcJ9KP7mldO6ePplQ14qK\nCYys9bx3WOSXy8xMuTPhZbT6LPWiGAWq3Vxv6HgcBOIcEF3rdGc/frohAxok\nGEv+VE15ibPee/W4ESg32QdvcZVE4s1xADz5LtPU0+MQ/r0G8CnImX+rSthD\nV4R4WE6JOBhX1yPADiBcnRVMMXSyBaxN2Wgrf93KW7R8yZnOQu+vLbzIXMtz\n5HozsnPETNzRwofLUaaiM7Uxs7lWAOumf5So5Vb2LZBtm0UwGgMLRgpWQKXV\nKJ7d/eRMv3T12auSjqEB9ucGk7bUUjE5GIOtw7W+5PW5i5pdZjYsM7yhaVEk\narUVupU8Op6JZAMCRBWU21b5rWh4WOZaL2yygutVnkGmVp2vKPWpcuSsh1cB\nbVse7M8rdGALJTFXm79pRb6Iaxmp/ySM2lU4oxQCYG5qk2mtMbo5lZYuqCZT\nGntF5q52b9c3tOzmjgEBLdMcfvxH9EhoyFsAZBWiokndxcKq+2rtaSu9uaeu\nhS+n\r\n=jrXG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCrhJHLado3Qr9pxFSmh5UOgOA0J1m0s6CUHWNISw099wIhAIZ2aamCGafLxBtZ++6OhB8dAI89w/1v/EubgT1X3HkU"}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox_1.4.3_1523888709260_0.8278883075138805"},"_hasShrinkwrap":false},"1.5.0":{"name":"a-toolbox","version":"1.5.0","description":"isomorphic javascript lightweight basic tools","main":"index.js","dependencies":{"hash.js":"^1.1.3"},"devDependencies":{"babel":"^6","babel-core":"^6","babel-preset-env":"^1.6","babel-preset-es2015":"^6","babelify":"^8","browserify":"^14","fs-extra":"^5","gulp":"^3","gulp-buffer":"^0","gulp-clean":"^0.3","gulp-sourcemaps":"^2.6","ink-docstrap":"^1","pre-commit":"^1","standard":"^11","tap":"^11","tollo":"0.0.3-dev","vinyl-source-stream":"^1"},"pre-commit":["test","build"],"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clear":"gulp clear","_doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","_jsdoc":"jsdoc -c doc/jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","_test/","src/_*"]},"engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"gitHead":"00c0131c6b91e83cdb61ebc60785ec0f62ff9d9a","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.5.0","_npmVersion":"6.1.0","_nodeVersion":"8.11.3","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-/2wnuD5nI5nH0wssN6VFkjD1x7xnl5RrHE/QoRtowYUSVwDWtpgd0nutNHtEs7XH+9rOMnA47GmVPhLwGRIblg==","shasum":"e1dacd6d9206015224e4e7a22c021749366d1ee8","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.5.0.tgz","fileCount":41,"unpackedSize":319747,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbPc/ICRA9TVsSAnZWagAApNcQAJYcht/kVC5f8ZxdcL2A\nb8KkVzNnB50iXAkP/7XvgKoWL5kbNdvr2jT0mwe5GHtuJtG8qMtTMPJn8WEJ\nLyAi+nAFUAwuGH7wsTBa3WEdwBjWIncRHwH+X1dSS9QUHrYp3zNQka8QSpQU\nKywdgfJKTDGkPh/v+CIt83LJdpIIncS58cKqyXbjZjOe3FbSy4iFLy2fMdlu\n4XhSG3JZR8xJk5KsyuQnwIMF3/Z7PkTP5gY14Hb/or/L6tN+opOnJDXkxjgY\ngFHpOnOYGg9KV7yITa/giyvF7Gpkv8zTGaJMdGhAF+5bWmiC0Y26mnWkXSzt\n+8xy9b2dYlUyZy0yHhSBiwXhootRASetsGg+VYeKHiPRm43OnLIW5dcYV3DU\nqhR/hGaukGxQzwV4mzzLVl/nZ+L+uteKjBdPb10+dEGtRbkfh7nYqgGgECHz\nY3aeZk53ACByM7iSNlT3pBT/z/xpC3VgsZQd0bLTYrWrcSrtVrcL83EpUAya\nX0QeB/HNMPzgAh8yWsl9ZCTJTORagDvVkTlh8IwOgb7GjkbXwKecChZmL7p/\nQYQPKvsxPqerizQCgXC/Ak27ofO3OxxRjqmmDDOZ9ilnjyTKKE7zAwKbpUF7\navqjopBliTfvPgpX2SRWLPFte9xW/S+X+1PPD2gcB10NGCIliQ8pBEok3zq4\nMlWW\r\n=m7EO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDMCW0eLBmgGHRQ03HIB6B2D/1/HYlHlg9OpBHAF2Jf8gIgYY80sGbseI42xkLsKiTeDkfk0dEN9j/FFFI96qfC6wU="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox_1.5.0_1530777544370_0.3506619333695111"},"_hasShrinkwrap":false},"1.5.1":{"name":"a-toolbox","version":"1.5.1","description":"isomorphic javascript lightweight basic tools","main":"index.js","dependencies":{"hash.js":"^1.1.3"},"devDependencies":{"babel":"^6","babel-core":"^6","babel-preset-env":"^1.6","babel-preset-es2015":"^6","babelify":"^8","browserify":"^14","fs-extra":"^5","gulp":"^3","gulp-buffer":"^0","gulp-clean":"^0.3","gulp-sourcemaps":"^2.6","ink-docstrap":"^1","pre-commit":"^1","standard":"^11","tap":"^11","tollo":"0.0.3-dev","vinyl-source-stream":"^1"},"pre-commit":["test","build"],"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clear":"gulp clear","_doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","_jsdoc":"jsdoc -c doc/jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","_test/","src/_*"]},"engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"gitHead":"e1cdc68d3983bb481f02bee97a53d9d2546cfe41","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.5.1","_npmVersion":"6.1.0","_nodeVersion":"8.11.3","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-wzY3o1z6bqvYhflD+dgehGRw51tfYiPnTZM8KBeLYGebOU5dBoheZReO3bXgu6kxQ53+dUOIwSsK3LbfavQz8g==","shasum":"f20deadc80586867fa45d0ff6d113a66032932fb","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.5.1.tgz","fileCount":41,"unpackedSize":322740,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbQcCHCRA9TVsSAnZWagAAkdgP/RCBrCq/n6UV4oq/IDI1\nfXnBIXur61e6MIht7LkWZ7JlH+aQFlrA+86WOqc4vsqUiTWtQdvJShRH/Tam\np+Qh/yuUKHfMG4B6X1manhG/xtBZg4+ahU1wXrSZpcJ8SwjgPYmik8/WxELH\nEEBmUgIUIAzxJmIaZPC2JbB4emfUIltOgb2/NfHpKwHT7IrbRH23BdLeGP7h\nyrsnXK1ESsGrBEzXE90iFDDldKDrtZeYiPo+9CY+tla7tUhygeuq5w8fxr2Z\nw3VTSUs+UqXBIk1JZSna8UpY0NLQmLxjTfsUNCb40AB/v5U7vB8JuX/wiP33\nzs3rSYxk72VkCP4nIqVTlrjhGQ7n7YXJuhT9bfWMhmqJsQQjLbV5Bl6Z3kNi\nIf35ONzwrb0dZZHFZImMAlmKAAHpKvdMJjjeQE2ezEhv9RN3cKAantWFtXP/\n6bX7hayeDB44437kxfNC7FU6rWpRsQPEMjzeczGG0HPhN5hjxgLIxd2xYvNF\njgay4Rpks/v8ybW+xr7RyWlWZqCWlWBB+oO0j2ES4TyhzryglELRdTTz8Ki0\nkX/KyyrOdYCycXlmXUhmaFf1oYCn9HOv45eFZ1R3zaXSktg0nmx04KSClIxc\nLCrz4UiUvlTCfI1UKDgn/ledRmCQnv9akX2prmQhGre0OG0Dw/gG+R8HZKTD\ny6+v\r\n=+5gL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGoZxHWrWI8Svhams3UHvwkOa7FvbyOTRCEwHnA2qY0eAiEAuZwH9iGnBJOYISNG6osY5kMx6X7wZ4/IlbrcEdBb/10="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox_1.5.1_1531035783288_0.8003646973641994"},"_hasShrinkwrap":false},"1.5.2":{"name":"a-toolbox","version":"1.5.2","description":"isomorphic javascript lightweight basic tools","main":"index.js","dependencies":{"hash.js":"^1.1.3"},"devDependencies":{"babel":"^6","babel-core":"^6","babel-preset-env":"^1.6","babel-preset-es2015":"^6","babelify":"^8","browserify":"^14","fs-extra":"^5","gulp":"^3","gulp-buffer":"^0","gulp-clean":"^0.3","gulp-sourcemaps":"^2.6","ink-docstrap":"^1","pre-commit":"^1","standard":"^11","tap":"^11","tollo":"0.0.3-dev","vinyl-source-stream":"^1"},"pre-commit":["test","build"],"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clear":"gulp clear","_doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","_jsdoc":"jsdoc -c doc/jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","_test/","src/_*"]},"engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"gitHead":"59c0b7edfa982f4e895442340d8f0348e384b1d5","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.5.2","_npmVersion":"6.1.0","_nodeVersion":"8.11.3","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-d+/vNcwJA+IFh4cv6yaIZ7mly2q2skNPzMZ4V/o/Sy2DAAaSvlXtoMQEQcRhLIXSeBdvobJFExKBrpk8dt1SLw==","shasum":"3358435a47a8facdc738f8e99e650246e4c17a14","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.5.2.tgz","fileCount":41,"unpackedSize":323819,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbUfHTCRA9TVsSAnZWagAAfToP/jFPk8TY9+SyqVLmgZY3\nj/CLQjPtuYHdnkJK+Bb0eMfoNArZc26N1sGVYmJMnqeU4I7x9OElKIopR5a+\nnv0imJbJmXH04J/PWW3BRZN4lQUCP3w4COAqC9A/vv6UHY0apsZTUPy1jeS4\njkO8Y45LJGCtYpLZIZidmYl7a1sN6KvpWlTh1rLnrFB7cWw08AUbqsuIijSz\nTIp9MGfeSpR/8Skr2iM+cfQ2kdg021/TrSWIVzGLW5t3cyxfCKiV2RA0F8eN\n+/Gent5Vt55DZZrVW5BQjOCHyrjx5IW+uVwS3mMMtLLJqWrZ2sYeo3AKDO82\nwh2JeD/xhAHoj5BqVznqzRzRYNP5DJP+Y4CVLjbHxDJuiehwHu2735Zr4NgR\n0kP9PDbLChCJYU9HonQDz/RqWa0daKUGz+AHqMMzajg/z45LW2iF6wFWh5Lv\n7YdZSK5DEsfP+gjE/gZcnUqmEb6pPbZhaSF972hH8coHzWkIBHhjJiNDmUQi\nCr2y/SBo4eQo5AP0b2B7EAUINHGfNycrt3swOZ1J6uZ1Mv8LzpfA5wXM7Ecf\nNKJzaqY77Gg23iHqSrLIT7yPy0wt2/0bvflFJXkBv2VbOGu+kJiCvycCcCxr\nwkrlweEKOrrGOMDsF5oRzW6R+iNBhjRvv3Atj2syFCPYFUr+m5qRhYSHyVET\n21FK\r\n=+Aj2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCBvZwRfx7YNf103ejmHf1qL1mUYQiG2dQUxscVnXdp1QIgV3LJL8Az4iBuXnkJ785hzGyYlZEU2xFpC7Gw3QYlEEk="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox_1.5.2_1532096979353_0.2013858592831923"},"_hasShrinkwrap":false},"1.5.3":{"name":"a-toolbox","version":"1.5.3","description":"javascript lightweight basic tools, isomorphic","main":"index.js","dependencies":{"hash.js":"^1.1.3"},"devDependencies":{"babel":"^6","babel-core":"^6","babel-preset-env":"^1.6","babel-preset-es2015":"^6","babelify":"^8","browserify":"^14","fs-extra":"^5","gulp":"^3","gulp-buffer":"^0","gulp-clean":"^0.3","gulp-sourcemaps":"^2.6","ink-docstrap":"^1","pre-commit":"^1","standard":"^11","tap":"^11","tollo":"0.0.5-dev","vinyl-source-stream":"^1"},"pre-commit":["test","build"],"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clear":"gulp clear","_doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","_jsdoc":"jsdoc -c doc/jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","_test/","src/_*"]},"engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"gitHead":"dab18cd77756e105c07180aa7cba256d65fb44a4","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.5.3","_npmVersion":"6.1.0","_nodeVersion":"8.11.3","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-+vwz7dYyoDGMERorNQgdEMEikO5QVJmwVwx4x0n13x1VAWBBOSwohD8VBvV/ljErfsMQLy14Vw6VfMDkuha5Ig==","shasum":"7a3a71215a569d948a862daae0eac580196ce5d8","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.5.3.tgz","fileCount":41,"unpackedSize":323236,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbVIfpCRA9TVsSAnZWagAAmf0P/jGUNvPwgvakV2wma+Mk\nUU/vVLG8a3nSfUzHpOEAwfey+3InzOsP8kldP7RBqmh4ZjXee87x+j2tG9F7\ng7Z7fKCNK5OuLFuMhk9ddPEGgUuPiwivgXVAUz18b9+y1qIQ7HtB0HVA3o9U\new18bXsFWgMQc7VF2yCUsj9yYUIEkoSV0vwt3gmkOnMomybELN+UfrgNiVuZ\nLn5v6GwJVqsO+4iAKBCl7vjc4y0JCfnUHouVbGZu7/2Rs0kpThVGz4alTW5y\nEbLnAJtw3BIlry+oFrvTjMtiqU7Kdp/tXotonEhEajHZNKGQlQy8bzVqBLWo\n+NrAjKO9ksKKVCWF7V8jWCFZLDqv9S3Hebpufrb7x2wuQ5GGBPONocDza4Pb\nSljTFqTwNLSmMHOZTQO6Fo2Ih4R3PShL9e8amhhQpOjClf7GM61R12q5qWAm\n6W2+jYwoTCbNekthoM9CB4oG4XOeT3kwSl/CFm2yXeORAjMyh96NJ5Nu4n0K\nkn7FqOd7S45Dp4egpTd3Jazuz2EWgFmcs/XlE9ynC9sw8bKHkVefZm/FAhE+\nbNhqF/zHSaRvzkzvYnraL1fmQt8fO7NWkFVahB6AVMBCxcpy8keRNtwCDoXo\n0GzZWhp8i+z/8+sWPhSYwKwgCC0AbEU4G0wNdgxpu/0St51b6Z4VI5Qml7MI\nmsBq\r\n=xRdF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCXreDTF09qZGTWC2D5fKs69Nme8GtBDx1uv+cWGHHNhQIgHeTa3dThL2tGLXUI6jM6Czu1NOYPydXDZMPp1XENb1c="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox_1.5.3_1532266473331_0.4896199139049695"},"_hasShrinkwrap":false},"1.5.5":{"name":"a-toolbox","version":"1.5.5","description":"javascript lightweight basic tools for node.js and browser","main":"index.js","dependencies":{"hash.js":"^1.1.5"},"devDependencies":{"babel":"^6.23.0","babel-core":"^6.26.3","babel-preset-env":"^1.7.0","babel-preset-es2015":"^6","babelify":"^8.0.0","browserify":"^16.2.2","fs-extra":"^7.0.0","gulp":"^3.9.1","gulp-buffer":"^0","gulp-clean":"^0.3","gulp-sourcemaps":"^2.6","ink-docstrap":"^1","pre-commit":"^1","standard":"^11.0.1","tap":"^12.0.1","vinyl-source-stream":"^1"},"pre-commit":["test","build"],"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clear":"gulp clear","_doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","_jsdoc":"jsdoc -c doc/jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","_test/","src/_*"]},"engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"gitHead":"05d1731acd7ebf0f39733ec3fe66a585e66857e2","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.5.5","_npmVersion":"6.2.0","_nodeVersion":"8.11.3","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-eto9cMP3zJ0pY5JoUQPHWhvODxakoDtW8j8FqVGB94QMJkIiWfAJ5HoQbOqzJH0RetpMn+SAEglfax+q6AwAhw==","shasum":"80c7e7908bfe91fb08eb84853904d8b886660a45","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.5.5.tgz","fileCount":43,"unpackedSize":330716,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbYttiCRA9TVsSAnZWagAAmoIP/issK48OYGrtgReygGM1\npqoe1GcVxGwW7IXK2s0LIPX4ziVRyXdGqyfWoFLzCpY3ASG2I1I2GmmZt1Ns\narSvTdx5Qq/ofkcZd6BGEurXey7TKXa60im7K8ASnEI6xW9xtJNySJ7PLVQQ\n5HsbuBGQtcm4ngRP92ymTFuIma3pogKImQc0JLJhP2Uh3UtkbTAD779KDoUT\nK4Uhh8ZsYzeZvvbhJJiAvbn28v9TGXHTBJ7qVnrHQPBnI79VWi+JKzeNOK9n\nkLLPw/HalxL+7sThewMJx4GHfLYrEyCHFfX7cFcMQpCFhgVgRMCslk9VJPY4\n1gkjuwEo24zsAHTkYCp6aGpL+J9sRfyhsyHWQeOtvObJiVCSs9yoHcdZufcm\nqXxn2ktu/WnhwDZB51I0VFv+aolz5hs1UKi6ZClKAPjQoDQpskLJ93LGPpZ3\nYOe3EuZHF/lFuvbi5SWkN7+EjevX50j0aXI313+Pksj0xNlnMqAPizPCoruk\n4QJe98v63+ugXHFjLyYitzC12dteIk56UJmohRGg3Z+zvaYMdPkuqfv8pJBY\nQKKyxnkqHFY6a46XCrQ2BaPRcBTOKhpDT53lQLnAvvRF4GWJjyUc1608hZrT\ns/pYibjd2JnAwo6+GzriqUrrjB68bveHgwdyb6YEz9pyKBtYVLMvlO8MCb2K\nXc1d\r\n=NUFX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDJZEDN4dWyVhNX++x0/t/FnOyoxVaQdP2JoB8aNtieDQIhAOX6rW02TLiLTR3jXdLgatJH679bPOXI/eqP8MH46/21"}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox_1.5.5_1533205345477_0.9423328606697954"},"_hasShrinkwrap":false},"1.5.6":{"name":"a-toolbox","version":"1.5.6","description":"javascript lightweight basic tools for node.js and browser","main":"index.js","dependencies":{"hash.js":"^1.1.5"},"devDependencies":{"babel":"^6.23.0","babel-core":"^6.26.3","babel-preset-env":"^1.7.0","babel-preset-es2015":"^6","babelify":"^8.0.0","browserify":"^16.2.2","fs-extra":"^7.0.0","gulp":"^3.9.1","gulp-buffer":"^0","gulp-clean":"^0.3","gulp-sourcemaps":"^2.6","ink-docstrap":"^1","pre-commit":"^1","standard":"^11.0.1","tap":"^12.0.1","vinyl-source-stream":"^1"},"pre-commit":["test","build"],"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clear":"gulp clear","_doxdox":"mkdir -p doc/doxdox; doxdox './src/*.js' --layout markdown --output ./doc/README.md","_jsdoc":"jsdoc -c doc/jsdoc.json -t ./node_modules/ink-docstrap/template -R README.md src/*.js"},"standard":{"ignore":["test/","_test/","src/_*"]},"engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"gitHead":"ed938c811950760ceca3083dc6f0b2f55dfe46dc","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.5.6","_npmVersion":"6.4.1","_nodeVersion":"8.12.0","_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"dist":{"integrity":"sha512-bJ0UHY5G8xd9E7vx4sXiZ+X1+rBeOqev1C2ZYA15ZSDnPYLLFY5ooszaZgxBfYn8T6vCsqmlmRJObYNks+hmEw==","shasum":"4367b3ece9fedcb668486f899715694cf7282b1a","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.5.6.tgz","fileCount":43,"unpackedSize":331812,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbzwhpCRA9TVsSAnZWagAAKmwP/iXCb6+LLjXEMePQz1fI\nlY4XNKsZ3Gz2f8IBLbhzCqE8hzF2SdUzI4l7XbD64b1mXmLDL8wF7bdedqxG\nWHx9RXFEP83NdUJtSOLi0xhSwXhZ6kIt2vxSlTZ68lBNZRXFFlrxS2GE7tVh\nx0sylkVz+0gRatU628ksSIuyC33cWyL/han+bw+8iaOfAb7x/xGL2SmG7aWU\nMFFtjDGHSNZBcf+aOYWvKQifMukWtn5q9JyYc2W+OTvPF3j46Mg1fYs3Tx4G\nZOaCIWA7Ad6WbVDlyZHTiWviIzm22dvcKEdYJE055pEXX6vQ6hjIlbVMtjmy\n99Yp9uiul8TGGfNqwbUJE5K0SB8egPgUIgphuFBUDdGI0qIGaitXfxdABmKb\n6wP+0mryG2yoy1sxb/L819jnL3Oldb9lH3Je8Vytr5DEO+J65Wvm6qjeghaR\nlvIpu9DJlwaqiT1Qb4RFmC09W1IZSftWWap3LCmO+Q58kml0v4kZxDGIW3wl\nDjZnfPqmCeC+QIF6LkJaErLqp0zU+sAGLbfXkFilmHJ9rIBKo6ADxVI198IK\n7MpnZ/OHgJbGJZ+6OW9NkY/jqJqzxVqLKJjffB3apkzYk1txiAnFWzgML8GJ\nVtChJFkJCTeh4MBAKDCF5YY1UAnjPoSdz30S2blIqX7pyUDqiv4dPWNWaNQ7\nbZlM\r\n=8kH9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDg+Ff7/oA7zR5DadjJXZ9bpc8aMFDuTwG1uKQGyE0dmwIgKJYKZ9IFWwjzuo6D/+c0Yyzss+wgOuHd+E3MilUddec="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox_1.5.6_1540294760502_0.07378788224933874"},"_hasShrinkwrap":false},"1.6.1":{"name":"a-toolbox","version":"1.6.1","description":"javascript lightweight basic tools for node.js and browser","main":"index.js","dependencies":{"hash.js":"^1.1.5","tollo":"0.0.7-dev"},"devDependencies":{"babel":"^6.23.0","babel-core":"^6.26.3","babel-preset-env":"^1.7.0","babel-preset-es2015":"^6","babelify":"^8.0.0","browserify":"^16.2.2","fs-extra":"^7.0.0","gulp":"^3.9.1","gulp-buffer":"^0","gulp-clean":"^0.3","gulp-sourcemaps":"^2.6","ink-docstrap":"^1","pre-commit":"^1","standard":"^11.0.1","tap":"^12.0.1","vinyl-source-stream":"^1"},"pre-commit":["test","build"],"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clear":"gulp clear"},"standard":{"ignore":["test/","_test/","src/_*"]},"engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"gitHead":"0bf54c577f5620947835464d59a5a62e2a166058","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.6.1","_nodeVersion":"10.16.3","_npmVersion":"6.9.0","dist":{"integrity":"sha512-aDUiUyW8uhXEbQgV4ejmvsxOxNtO1t/VBJ6tO41Tc6V1DwtQgXQySzvhPt1+PE3sOsPPWExzeL+SAeOoN2zFyg==","shasum":"ac1c7685291066f02e0921d76c41c9b9c3911691","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.6.1.tgz","fileCount":43,"unpackedSize":331754,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJddPv4CRA9TVsSAnZWagAA77MQAKUK+oGXgg/fjUyr9kHJ\nhcELg9VNQJIvkeBk8nNquUuXAlhn4QfgFq66GgtDcg+tJQOBSDLVqZpR9avw\nEeGoEJQ/xcnhLPXiQvlK8rt9n1DGCXayo5mB9J8XeVsUZJvjViL///gXIUxV\nTWJQnjDgGDV/lT0A0lP81bKUDOOxcfx7zvSLgt3hYF/ofvF2xx7cbl0JMYEs\nSZjJEnYP2oIAqLT3MIZoxvzzRSe8DrIDrHi9woNMwbjk5im7r7Eso/RNMsRZ\nkXytoF0JuP0kG6a9SpZWZdbiGxnXZtEPsGnT0p6YJpQ3kCRn6Hu/cUvu4fH8\nWrHWnb/Fv9KgeSKERaqta7hNgMkyK0s+AkcMTuvxmRWarOZqs4gmQYzrj3lp\nJcusVGQ4V9Uk3KiLUud5N/JyyzemveS5psAl2GfIn8CcQpXceKrfDTmxCXDu\nH8Jy/bV56eaZcoSj/ZmnrklPWIvgUkGu1uGfAe9HyKt7YNm1MZOJ0k8HiuWP\nRNguRhtBV12boMR9deUjL+j8yZnvxtn15rh1e/UuxVoC+Fo7lXkQdF3Q1T0K\nODE3tDYGoO0vcJ+tUf0YzUaeRbrnlZN/sb5aGyKhyRfeZgiOSm+jTN1q7Hen\nvmKPfIGnT3wJnxT9Bne/Pay4CgluA7VtVsPfwb2+Va3rI7EUl+LglFc1b3tE\n+fmi\r\n=WsqY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIErrKSCNijsf1xcyKNhLMQtq8WPW3VdSUzJtQD5tC0vbAiBpQv63W4gzR6BlQahPKpKIR1aWQ2g6iHn1Ku2SLI8N0A=="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox_1.6.1_1567947767494_0.09764905173265892"},"_hasShrinkwrap":false},"1.6.2":{"name":"a-toolbox","version":"1.6.2","description":"javascript lightweight basic tools for node.js and browser","main":"index.js","dependencies":{"hash.js":"^1.1.5","tollo":"0.0.7-dev"},"devDependencies":{"babel":"^6.23.0","babel-core":"^6.26.3","babel-preset-env":"^1.7.0","babel-preset-es2015":"^6","babelify":"^8.0.0","browserify":"^16.2.2","fs-extra":"^7.0.0","gulp":"^3.9.1","gulp-buffer":"^0","gulp-clean":"^0.3","gulp-sourcemaps":"^2.6","ink-docstrap":"^1","pre-commit":"^1","standard":"^11.0.1","tap":"^12.0.1","vinyl-source-stream":"^1"},"pre-commit":["test","build"],"scripts":{"test":"standard && tap test/tdd.js","test-cov":"standard && tap test/tdd.js --cov","build":"gulp","clear":"gulp clear"},"standard":{"ignore":["test/","_test/","src/_*"]},"engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"gitHead":"b7a2dd665b2520712885a1086941d94c5c6e085d","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.6.2","_nodeVersion":"10.16.3","_npmVersion":"6.9.0","dist":{"integrity":"sha512-sr6j1F0Pl1svK9i0XygdHv1Tb+p5aj6XqJmFLuIb9B+FFt8FRtKiswNHFFNXIIrR7FbH8Goj7RMpRJkh3do7aA==","shasum":"e45fc0e671cc1fb90dbfc3271d1f87604af9c928","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.6.2.tgz","fileCount":43,"unpackedSize":331841,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJddPxhCRA9TVsSAnZWagAA4/UP/2ir+cQyPvvLIEioTMSq\nxXXjjNEdFQ41XUdtwCYI8Z7JCMa/zTkltpvwyVRlc4M/JhIDRHwCAlIFlzKp\nozLygMoTNuX2G5OftLK3spSMZNUtaLVixxjKJKKl4Iidp5zL1lwHUmNtwNoQ\nwTfL6I+xjaAWJya8wXi2ar2TLOuuP+NeVv2QQSrzQJZAamfq3fXxcrRL9dKV\n2zHagqa0ia1TufuYch4rnFsgjYKXwZBcMMtvJdJrdFmvxXlgR056htWtakwT\nW4020HPPi1W3BZ/ZXavVvyY7x606gvXQtcmLlh4vTzq8qZGcWB6KTlDtspKq\nzSKVRu362S/BdLa4d+mZwaUB94pNZ6flsDo78nsakTxBAk7jrJBy9BNkMxG6\n7lftB38poAZqd2SD+tA0yt4NB68EvIXn+gdI16tChNsxXYQjgg3farV8rKwt\n2N7b/xINuBwe0mLYsE1boTddzVZYXjlSB+THmTzdUwyyaKE3umvuUYdCeG1M\n8Fnwah2q8hWN2JrrV+k4JBUvBRAAU6knSjVVkqSADjG/MsPbEaC/HSbATcjs\nRToHE2PuXXHS8QRy4jFvWFvoCOsocBlOMrAeH8bbnqZ80+XHvZ8O5omZZzQQ\nMMbE8pXA6MHDkA84oBMWyZK6slC2R5Yaq5M2PVQgY5atMgrDzpmIMKtsZJKE\nQqT4\r\n=WpCJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDnygV8/BPeaCKGTYIz5XbTPghLazl8dxdnBq56ohzGEwIhAPGyjXRYFblIjQt3wK7L7Viwruu/+0N43oi9I3M86zRX"}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox_1.6.2_1567947873022_0.5076182706283545"},"_hasShrinkwrap":false},"1.7.0":{"name":"a-toolbox","version":"1.7.0","description":"javascript lightweight basic tools for node.js and browser","main":"index.js","dependencies":{"hash.js":"^1.1.5"},"devDependencies":{"natives":"^1.1.6","babel":"^6.23.0","babel-core":"^6.26.3","babel-preset-env":"^1.7.0","babel-preset-es2015":"^6","babelify":"^8.0.0","browserify":"^16.2.2","fs-extra":"^7.0.0","gulp":"^3.9.1","gulp-buffer":"^0","gulp-clean":"^0.3","gulp-sourcemaps":"^2.6","ink-docstrap":"^1","pre-commit":"^1","standard":"^11.0.1","tap":"^12.0.1","vinyl-source-stream":"^1"},"pre-commit":["build"],"scripts":{"build":"gulp","clear":"gulp clear"},"standard":{"ignore":["test/","_test/","src/_*"]},"engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"readme":"# a-toolbox\n\n[![NPM Version](http://img.shields.io/npm/v/a-toolbox.svg?style=flat)](https://www.npmjs.org/package/a-toolbox)\n[![NPM Downloads](https://img.shields.io/npm/dm/a-toolbox.svg?style=flat)](https://www.npmjs.org/package/a-toolbox)\n\n[![JS Standard Style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg)](http://standardjs.com/)\n\njavascript lightweight basic tools for node.js and browser\n\n## Purpose\n\n> \"This is my rifle. There are many others like it, but this one is mine.\"\n\n## Install\n\n````bash\nnpm i a-toolbox --save\n````\n\n## Quick start\n\n```js\nconst tools = require('a-toolbox')\n\ntools.string.trim('({cut these brackets please)}', ['{', '}', '(', ')'])\n// > 'cut these brackets please'\n\n```\n\nmodular import\n\n```js\nconst tools = {\n  string: require('a-toolbox/string'),\n  fs: require('a-toolbox/fs')\n}\n\n```\n\n### On browser\n\n````html\n<script src=\"node_modules/a-toolbox/dist/atoolbox.min.js\"></script>\n<script>\nvar data = {\n  name: 'Alice',\n  year: 2014,\n  color: 'purple'\n};\n\nvar str = '<div>My name is {name} I was born in {year} and my favourite color is {color}</div>{nothing}';\nconsole.log('template:', tools.string.template(str, data));\n\n//> template: <div>My name is Alice I was born in 2014 and my favourite color is purple</div>{nothing}\n</script>\n````\n\n## API\n\n- [array](#array)\n- [fs](#fs)\n- [hash](#hash)\n- [object](#object)\n- [util](#util)\n- [random](#random)\n- [string](#string)\n- [sys](#sys)\n- [time](#time)\n- [task](#task)\n- [event](#event)\n\n### array\n\n#### array.remove(array, item)  \n- _array_ \\<Array<*>\\>  \n- _item_ \\<*\\>  \n  \n\nremove an element from array\nit removes only the first occurrence  \n\n_Example_\n\n````js\nlet a = ['js','ruby','python']\ntools.array.remove(a, 'ruby')\n// > a = ['js','python']\n````\n\n#### array.removeAt(array, index)  \n- _array_ \\<Array<*>\\>  \n- _index_ \\<number\\>  \n  \n\nremove an element from array at position  \n\n_Example_\n\n````js\nlet a = [1,2,3]\ntools.array.removeAt(a, 0)\n// > a = [2,3]\n````\n\n#### array.last(array)  \n- _array_ \\<Array<*>\\>  \n- _return:_ * last element of the array or undefined  \n\nget last element of array or undefined  \n\n_Example_\n\n````js\n\ntools.array.last([1,2,3])\n// > 3\n````\n\n#### array.at(array)  \n- _array_ \\<Array<*>\\>  \n- _return:_ * nth element of array; if negative, start from end: -1 = last element; undefined if missing  \n\nget nth element of array  \n\n_Example_\n\n````js\n\ntools.array.at([1,2,3], 0)\n// > 1\n````\n\n#### array.first(array)  \n- _array_ \\<Array<*>\\>  \n- _return:_ * first element of the array or undefined  \n\nget first element of array or undefined  \n\n_Example_\n\n````js\n\ntools.array.first([1,2,3])\n// > 1\n````\n\n#### array.contains(array, item)  \n- _array_ \\<Array<*>\\>  \n- _item_ \\<*\\>  \n- _return:_ boolean   \n\ncheck if array contains an element  \n\n_Example_\n\n````js\n\ntools.array.contains([1,2,3], 1)\n// > true\n````\n\n#### array.insert(array, index, item)  \n- _array_ \\<Array<*>\\>  \n- _index_ \\<number\\>  \n- _item_ \\<*\\>  \n  \n\ninsert an item into array at index position  \n\n_Example_\n\n````js\nlet a = ['john','alice','bob']\ntools.array.insert(a, 0, 'mary')\n// > a = ['mary', 'john', 'alice', 'bob']\n````\n\n#### array.concat(arrays)  \n- _arrays_ \\<...Array<*>\\> to chain \n- _return:_ Array\\<*\\> chained arrays  \n\nconcat arrays  \n\n_Example_\n\n````js\n\ntools.array.concat([0,1,2],[3,4,5])\n// > [0,1,2,3,4,5]\n````\n\n#### array.empty()  \n\n  \n\nempty array - need to keep references  \n\n_Example_\n\n````js\nlet a = [0,1,2]\ntools.array.empty(a)\n// > a = []\n````\n\n#### array.add(array, item, [unique=false])  \n- _array_ \\<Array<*>\\>  \n- _item_ \\<*\\>  \n- _[unique=false]_ \\<boolean\\>  \n  \n\npush item into array, optionally check if already exists  \n\n_Example_\n\n````js\nlet a = [0,1,2,3]\ntools.array.add(a, 3, true)\n// > a = [0,1,2,3]\n````\n\n#### array.flat(array)    \n- _array_ \\<Array<*>\\>  \n- _return:_ Array\\<*\\> flatten array  \n  \n\ncreates a new array with all sub-array elements concatted into it recursively like ``Array.prototype.flatten()``\n\n\n_Example_\n\n````js\nlet a = [0,[1,2],[3]] >\ntools.array.flat(a)\n// > [0,1,2,3]\n````\n\n#### array.sortingInsert(array_, item)  \n- _array__ \\<Array<*>\\>  \n- _item_ \\<*\\>  \ninsert an element in a sorted array, keeping sorted  \n\n_Example_\n\n````js\nlet a = [0,1,2,10,11,20]\ntools.array.sortingInsert(a, 15)\n// > a = [0,1,2,10,11,15,20]\n````\n\n#### array.binaryIndexOf(array, item)  \n- _array_ \\<Array<*>\\>  \n- _item_ \\<*\\>  \n\n- _return:_ number index of element of -1\nlike Array.indexOf but perform binary search (array should be sorted)  \n\n_Example_\n\n````js\n\ntools.array.binaryIndexOf([0,1,2,3], 0)\n// > 0\n````\n\n---\n\n### fs\nnote: not available on browser\n\n#### fs.exists(path)  \n- _path_ \\<string\\> file path \n- _return:_ Promise.\\<boolean\\> true if file or directory exists\n\nreplace deprecated fs.exists  \n\n_Example_\n\n````js\n\ntools.fs.exists('/tmp/file')\n// > true\n````\n\n#### fs.touch(path, [mode=0o666])  \n- _path_ \\<string\\> file path \n- _[mode=0o666]_ \\<number\\>  \n- _return:_ Promise.\\<void\\>   \n\ncreate an empty file if not exists  \n\n_Example_\n\n````js\n\ntools.fs.touch('/tmp/touch-me')\n\n````\n\n#### fs.unlink(path, [safe=true])  \n- _path_ \\<string\\> file path \n- _[safe=true]_ \\<boolean\\> if safe do not throw exception \n- _return:_ Promise.\\<void\\>   \n\ndelete file, optionally in safe mode  \n\n_Example_\n\n````js\n\ntools.fs.unlink('/tmp/file')\n\n````\n\n\n---\n\n### hash\n\n#### hash.sha256(data)  \n- _data_ \\<string\\> any string \n- _return:_ string sha256 in hex format  \n\nGenerate hash using sha256 in hex format  \n\n_Example_\n\n````js\n\ntools.hash.sha256('usk6fgbuygbu6')\n// > 'ee42f619919727584b66fe25248ed4bba8e87dcfb3e62a90143ea17ba48df58e'\n````\n\n\n---\n\n### object\n\n#### object.flat(obj)  \n- _obj_ \\<Object\\>  \n- _return:_ Object   \n\nflat keys in object  \n\n_Example_\n\n````js\n\ntools.object.flat({ a: { a1: 1, a2: 2 }, b: 3 })\n// > { 'a.a1': 1, 'a.a2': 2, 'b': 3 }\n````\n\n#### object.merge(a, b)  \n- _a_ \\<Object\\>  \n- _b_ \\<Object\\>  \n  \n\nmerge b into a  \n\n_Example_\n\n````js\nlet a = {a:1,b:'ciao'}\ntools.object.merge(a, {a:4,c:{d:8,e:9}})\n// > a = { a: 4, b: 'ciao', c: { d: 8, e: 9 } }\n````\n\n#### object.clone(obj)  \n- _obj_ \\<Object|Array\\> The array or the object to clone \n- _return:_ Object|Array   \n\nClone an array or an object in input  \n\n_Example_\n\n````js\n\ntools.object.clone({a: 1, b: 'ciao'})\n// > {a: 1, b: 'ciao'}\n````\n\n#### object.getKeys(obj)  \n- _obj_ \\<Object\\>  \n- _return:_ Array\\<string\\>   \n\n  \n\n_Example_\n\n````js\n\ntools.object.getKeys({a: () => { }, b: 1, c: 'ciao'})\n// > ['a','b','c']\n````\n\n#### object.inherits(destination, source)  \n- _destination_ \\<Object\\>  \n- _source_ \\<Object\\>  \n  \n\nit use ``Object.getOwnPropertyNames`` to inherits child from parent, without prototype  \n\n_Example_\n\n````js\nlet a = {}\ntools.object.inherits(a, {f0:() => { },p1:1,p2:'ciao'})\n// > a = {f0: () => { }, p1: 1, p2: 'ciao'}\n````\n\n#### object.empty(obj)  \n- _obj_ \\<Object\\>  \n  \n\nempty object - need to keep references  \n\n_Example_\n\n````js\nlet a = {a:0,b:1,c:2,d:[],e:{f:-1}}\ntools.object.empty(a)\n// > a = {}\n````\n\n#### object.raise(flat)  \n- _flat_ \\<Object\\>  \n- _return:_ Object   \n\nrestore flat object  \n\n_Example_\n\n````js\n\ntools.object.raise({ 'a.a1': 1, 'a.a2': 2, 'b': 3 })\n// > { a: { a1: 1, a2: 2 }, b: 3 }\n````\n\n#### object.getByFlatKey(obj, fkey)  \n- _obj_ \\<Object\\>  \n- _fkey_ \\<string\\>  \n- _return:_ Object   \n\nget value in object using a flat key  \n\n_Example_\n\n````js\n\ntools.object.getByFlatKey({ a: { b: {c: 1} } }, 'a.b.c')\n// > 1\n````\n\n#### object.setByFlatKey(obj, fkey, val)  \n- _obj_ \\<Object\\>  \n- _fkey_ \\<string\\>  \n- _val_ \\<*\\>  \n  \n\nset value in object using a flat key  \n\n_Example_\n\n````js\nlet a = {}\ntools.object.setByFlatKey(a, 'a.b.c', 1)\n// > a = { a: { b: {c: 1} } }\n````\n\n\n---\n\n### util\n\n#### util.isSet(val)  \n- _val_ \\<*\\>  \n- _return:_ bool   \n\ncheck if ``val`` is setted, means it's not ``null`` or ``undefined``  \n\n\n#### util.onBrowser()  \n\n- _return:_ bool   \n\ncheck if you are on browser or not  \n\n\n\n---\n\n### string\n\n#### string.template(str, obj, [remove=false])  \n- _str_ \\<string\\>  \n- _obj_ \\<Object\\>  \n- _[remove=false]_ \\<boolean\\> remove missing placeholders from obj, default false \n- _return:_ string   \n\nreplace placeholders inside graph brackets {} with obj dictionary\n~ES6 template string without $  \n\n_Example_\n\n````js\n\ntools.string.template('hi {name} how are you?', {name: 'Alice'})\n// > 'hi Alice how are you?'\n````\n\n#### string.trim(str, cuts)  \n- _str_ \\<string\\>  \n- _cuts_ \\<Array<string>\\>  \n- _return:_ string   \n\ntrim string  \n\n_Example_\n\n````js\n\ntools.string.trim(' regular trim      ')\n// > 'regular trim'\n````\n\n#### string.replaceAll(str, from, to)  \n- _str_ \\<string\\>  \n- _from_ \\<string\\>  \n- _to_ \\<string\\>  \n- _return:_ string   \n\n_Example_\n\n````js\n\ntools.string.replaceAll('abcadaeafaga', 'a', '')\n// > 'bcdefg'\n````\n\n#### string.capitalize(str)  \n- _str_ \\<string\\>  \n- _return:_ string   \n\n  \n\n_Example_\n\n````js\n\ntools.string.capitalize('alice')\n// > 'Alice'\n````\n\n#### string.prependMissing(prefix, str)  \n- _prefix_ \\<string\\>  \n- _str_ \\<string\\>  \n- _return:_ string   \n\n  \n\n_Example_\n\n````js\n\ntools.string.prependMissing('miss ', 'Alice')\n// > 'miss Alice'\n````\n\n\n---\n\n### random\n\n#### random.rnd(max)  \n- _max_ \\<number\\>  \n- _return:_ number   \n\nget random int from 0 to max  \n\n_Example_\n\n````js\n\ntools.random.rnd(10)\n// > 5\n````\n\n#### random.number(min, max)  \n- _min_ \\<number\\>  \n- _max_ \\<number\\>  \n- _return:_ number   \n\nget random int from min to max  \n\n_Example_\n\n````js\n\ntools.random.number(10, 20)\n// > 11\n````\n\n#### random.string([length=8], [set=abcdefghijklmnopqrstuvwxyz])  \n- _[length=8]_ \\<number\\>  \n- _[set=abcdefghijklmnopqrstuvwxyz]_ \\<Array\\>  \n- _return:_ string   \n\nget random string  \n\n_Example_\n\n````js\n\ntools.random.string(8)\n// > 'ajdsfchakwt'\n````\n\n#### random.hex([length=8])  \n- _[length=8]_ \\<number\\>  \n- _return:_ string   \n\nget random hex string  \n\n_Example_\n\n````js\n\ntools.random.hex(8)\n// > '1bc956bf'\n````\n\n#### random.hash(salt)  \n- _salt_ \\<?string\\>  \n- _return:_ string   \n\nget random hash string  \n\n_Example_\n\n````js\n\ntools.random.hash()\n// > '1f8a690b7366a2323e2d5b045120da7e93896f471f8a690b731f8a690b739ab5'\n````\n\n#### random.element(array, not)  \n- _array_ \\<Array<*>\\>  \n- _not_ \\<Array<*>\\>  \n- _return:_ * element  \n\nget random element from array  \n\n_Example_\n\n````js\n\ntools.random.element([1,2,3,4,5])\n// > 1\n````\n\n---\n\n### sys\nnote: not available on browser\n\n#### sys.isRoot()  \n\n- _return:_ bool is root or not  \n\ncheck if running user is root  \n\n---\n\n### time\n\n#### time.chrono.set([tag=chrono])  \n- _[tag=chrono]_ \\<string\\>  \n\nstart a timer identified by tag  \n\n_Example_\n\n````js\n\ntools.time.chrono.set('query')\n\n````\n\n#### time.chrono.reset([tag=chrono])  \n- _[tag=chrono]_ \\<string\\>  \n\nreset the timer identified by tag  \n\n_Example_\n\n````js\n\ntools.time.chrono.reset('query')\n\n````\n\n#### time.chrono.clear([tag=chrono])  \n- _[tag=chrono]_ \\<string\\>  \n\ndiscard the timer identified by tag  \n\n_Example_\n\n````js\n\ntools.time.chrono.clear('query')\n\n````\n\n#### time.chrono.get([tag=chrono])  \n- _[tag=chrono]_ \\<string\\>  \n- _return:_ number ms\n\nget the timer in ms from start (or reset) identified by tag  \n\n_Example_\n\n````js\n\ntools.time.chrono.get('query')\n// > 11\n````\n\n#### time.gc()  \n\nclear timers (if you care about memory)  \n\n---\n\n### task\n\n#### class task.Worker(options)  \n- _options_ \\<Object\\>  \n- _options.done_ \\<function\\> callback when all tasks are completed \nsimple parallel tasks manager  \n\n_Example_\n\n````js\n\nconst tasks = new tools.task.Worker({done: () => { console.log('well done') }})\n\nconst _asyncOperationTimeout = [500, 1000, 200, 1500, 100];\n\nfor (const i in _asyncOperationTimeout) {\n  _tasks.todo('task#' + i);\n}\n\nfor (const i in _asyncOperationTimeout) {\n  setTimeout(function (i) {\n    return function () {\n      console.log('done task #', i);\n      _tasks.done('task#' + i);\n    };\n  }(i), _asyncOperationTimeout[i]);\n}\n\n````\n\n#### Worker.todo()  \n\nadd task  \n\n_Example_\n\n````js\n\ntasks.todo('task#1')\n\n````\n\n#### Worker.done()  \n\ndeclare task it's done  \n\n_Example_\n\n````js\n\ntasks.todo('task#1')\n\n````\n\n---\n\n### event\n\n#### class event.Emitter()  \nsimple event emitter  \n\n_Example_\n\n````js\n\nconst emitter = new tools.event.Emitter()\n\nemitter.on('event#0', (value0, value1) => {\n  console.log('event #0 happened with', value0, value1)\n})\n\nemitter.once('event#0', (value0, value1) => {\n  console.log('event #0 happened (once) with', value0, value1)\n})\n\nemitter.emit('event#0', 1, 2)\nemitter.emit('event#0', 3, 4)\n\nemitter.off('event#0')\n\n````\n\n#### Emitter.emit(name, ...values)   \n- _name_ \\<string\\> event name  \n- _...values_ \\<*\\> values to pass to the event listener  \n\nemit an event  \n\n_Example_\n\n````js\n\nevent.emit('event#0', 'a value', 99, {another: 'VALUE'})\n\n````\n\n#### Emitter.on(name, callback)   \n- _name_ \\<string\\> event name  \n- _callback_ \\<function\\> \n\nlisten to an event  \n\n_Example_\n\n````js\n\nemitter.on('event#0', (value0, value1) => {\n  console.log('event #0 happened (once) with', value0, value1)\n})\n\n````\n\n#### Emitter.once(name, callback)   \n- _name_ \\<string\\> event name  \n- _callback_ \\<function\\> \n\nlisten to an event only once  \n\n_Example_\n\n````js\n\nemitter.once('event#0', (value0, value1) => {\n  console.log('event #0 happened (once) with', value0, value1)\n})\n\n````\n\n#### Emitter.off(name)   \n- _name_ \\<string\\> event name  \n\nstop listening to an event  \n\n_Example_\n\n````js\n\nemitter.off('event#0')\n\n````\n\n---\n\n\n\n## Changelog\n\nv. 1.6.2\n\n- ``fs.exists`` return true on files and directories, instead of only files\n\nv. 1.5.1\n\n- ``string.template`` support multi-level syntax object\n\nv. 1.5.1\n\n- ``object.setByFlatKey`` support also Array\n\nv. 1.5.0\n\n- add ``event.Emitter`` (simple event emitter, for browser)\n\nv. 1.2.0\n\n- use [hash.js](https://github.com/indutny/hash.js) instead of ``crypto`` (for browser)\n\nv. 1.0.0\n\n- general review\n- modular loader\n- browser version\n\n---\n\n## TODO\n\n- [ ] object.walk test, doc\n- [ ] travis CI / node, browser\n- [ ] coverage badge / coverage 100%\n\n---\n\n## License\n\nThe MIT License (MIT)\n\nCopyright (c) 2015-2019, [braces lab](https://braceslab.com)\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","readmeFilename":"README.md","gitHead":"92f2ce402a2c0866f047434e0193e808e3347c5d","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.7.0","_nodeVersion":"10.16.3","_npmVersion":"6.9.0","dist":{"integrity":"sha512-7n2N01aHea/mPiy5+bBJ0DTVWsYmlmImq46KIyiO5SnkRA1FetJt5wRYtu/rV/mw5QvznZsmLoUl8oU40CJFwQ==","shasum":"4587137ca7c16e37f51cc626e9d7255735933b74","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.7.0.tgz","fileCount":41,"unpackedSize":330428,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdu8FwCRA9TVsSAnZWagAAeN8QAJteuczfsdbwL1PWf+tg\n1lPOZWZ/A98Dugh3m4/EFDmJ6unhTwOA4UA/afTzC74a9TllL17zhCSXDvDi\nCkU/R8l4Wjhb+UjhaG0Z3Qm9nODx1bVU5lUjJYCBOUBsFu27u6pekAr4zXIH\n0uKf7zDahbkEgjzsRtoIaG3oRUiaEdFNm+P6sZXbChmmMvVplG7pKXLFoNVu\nKrA1bDlzEA+4rmAKO+xuejrBwEdfEEq/Uf2+UF4EpOU4yPll5w1Z3+W4nRIh\n5QgYN1zaLVpojSie2AlihL5KsA8vur0BW63fbrIvDJxZhzW4ydEtkc4JxR60\nMEP6+S7EXtawv+UhQvn4gfpiR7lmtsYLjAgPWC7OZrSAJAADcB4zFS1lKbN5\nwfh9irYQTmaPXrqZgSH2k/fpqpKLfp0bef2EqV5hHoF6luxtroOkcvDRLnVw\nfVp8e4N6RI4SfX5LVnfMtWbeg464eQYciXTPA+eacPBj8MdpoBz+Ajj3Vdn3\n8P833n+L03cqsud6TWKRQxKKkf/QpApuWLhhVligX3HKkK7NxGsiCACI1HPO\n1kfJG0YcajhDgGlSHT9mW+n9WvTu/ePN3QIKGdKaI/JrDu7aa7b0/wo95oNd\nUrHWUxG/iGi/CfSiq5iCrEmC/2+3br52iQmSOUcgUOvr9I9enZ4YuuCSw5oy\n0mmN\r\n=GcuK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEMCHxtnPT/d48YoxuqHJmYxBWt5/lS0TVOjRJ3AUflDSPUCIACvWyOGhqk9ek/bOOH/1OI9EIMfSx9ao0PnAr31nGAz"}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox_1.7.0_1572585840480_0.13038437101532518"},"_hasShrinkwrap":false},"1.7.1":{"name":"a-toolbox","version":"1.7.1","description":"javascript lightweight basic tools for node.js and browser","main":"index.js","dependencies":{"hash.js":"^1.1.5"},"devDependencies":{"natives":"^1.1.6","babel":"^6.23.0","babel-core":"^6.26.3","babel-preset-env":"^1.7.0","babel-preset-es2015":"^6","babelify":"^8.0.0","browserify":"^16.2.2","fs-extra":"^7.0.0","gulp":"^3.9.1","gulp-buffer":"^0","gulp-clean":"^0.3","gulp-sourcemaps":"^2.6","ink-docstrap":"^1","pre-commit":"^1","standard":"^11.0.1","tap":"^12.0.1","vinyl-source-stream":"^1"},"pre-commit":["build"],"scripts":{"build":"gulp","clear":"gulp clear"},"standard":{"ignore":["test/","_test/","src/_*"]},"engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"gitHead":"92f2ce402a2c0866f047434e0193e808e3347c5d","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.7.1","_nodeVersion":"10.16.3","_npmVersion":"6.9.0","dist":{"integrity":"sha512-lW1TT42aGWwEFbcBKowD8iX9cfB2O9RR/1hHg7C99W3z1oViYZC+dkrf3KCOgF51kjXBdG9kbbI1BBCi+Fpzjg==","shasum":"088999f10afc9206f082978438789414087165d8","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.7.1.tgz","fileCount":40,"unpackedSize":330733,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdu9bYCRA9TVsSAnZWagAASHUP/2vqEE8D5YXCPlDyHGOF\nxCmOFrvX+BbrWmNDzC6zMSoUyP69TQhIukivJ/yhpcn9CQy/MrjfJIyTaKX2\nnydwtDyU20Gaz0j+/EQZjyD7xaPqrWZPyh8nf/m6HRdfEohuemJKNAmSMvk2\nVAg3wNKL8bdscKa8A1DxdQf/GQ8uVbuNK+lLLeYuERG30e27k5SktpqW60VK\nzrq+K55OrUMubU7MzljSDc5JhtRER3UhuINwbr8XX1RflbRB1xLK/8x3KQUd\nEdUrD21BTp+wED9M8nkSMwWxk9GMr4utEH7hv6TLCp//dHAscjDTZJ6ULflE\nmPs+JFdZefQYoz0yNJVyMfZo0MHkyqiJdJZQgOr8loSP+/KAX5P8BzJLwWpi\nv176u59hHMGJFzD98aWa2FzmWjM9DSQ9kRwtOc+VwP3KRKeK0WUGUVkLdxq+\nByqx8lg1hWaVT7AupDJtEwLJGq69elRnoQrJqix9vEDcve63zK0hXnO8hZEP\nZOZh6FWINpLS9kcnmkc1jbA9Syp4n89pGP4o41vKNULL5C5THO5OHU77tzLI\n4xeb520Yvss0c2/krqrFjHr7Bz4WVIcBQ2W2AY/JbN/4qfY6UaWcgAp3Vi+B\nduXjbqgtZrqB8tR/7n6JBURM4+V/FIxMOVq94uPeXRErAOhpH3ptYB+UzL6e\nM4+s\r\n=tmrj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC/Gnwp3yzMez0zorDATnIE7rmSD8TWA2P+M9nCDTX3iAIhAJ52MhSrCm8NH0yUi70pd1Jvj+m0hHulIVdJCtAAe62t"}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox_1.7.1_1572591320528_0.5998842734434513"},"_hasShrinkwrap":false},"1.7.2":{"name":"a-toolbox","version":"1.7.2","description":"javascript lightweight basic tools for node.js and browser","main":"index.js","dependencies":{"hash.js":"^1.1.7"},"devDependencies":{"babel":"^6.23.0","babel-core":"^6.26.3","babel-preset-env":"^1.7.0","babel-preset-es2015":"^6","babelify":"^8.0.0","browserify":"^16.2.2","fs-extra":"^8.1.0","gulp":"^3.9.1","gulp-buffer":"^0","gulp-clean":"^0.3","gulp-sourcemaps":"^2.6","ink-docstrap":"^1","natives":"^1.1.6","pre-commit":"^1","standard":"^14.3.1","vinyl-source-stream":"^1"},"pre-commit":["build"],"scripts":{"build":"gulp","clear":"gulp clear"},"standard":{"ignore":["test/","_test/","src/_*"]},"engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"gitHead":"fd7b095f37ef79cd20ccdfae50001cfc250d514a","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.7.2","_nodeVersion":"10.16.3","_npmVersion":"6.9.0","dist":{"integrity":"sha512-k2BThR/gYFZqhPuYcvQ6mivPMlUI4AVEy3MuqV0x7ivB6pqjBUShhcyE+PItSKUiCJS5YvFGQY7fgcA8mJI7vA==","shasum":"e5570f363bb3e574e5765117b044838deb41cc38","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.7.2.tgz","fileCount":40,"unpackedSize":339030,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd28r4CRA9TVsSAnZWagAAQ8cP/2wKJpSEf+dVGX/xucvr\n1/6jAODDkr2y6EgvxUsblmVfjTwT0x8WizSe2iR1Jfy+3z2+IeQ9WWjF3OJj\nH9NyOE67S1maPSUv/brr14sU0iUC3rfV/YmqgD3a4uqfChWttTNlTAk1vp2b\n9IxfJHGZyzxyDNLb9H8ZmRT4KsbXp566ZXsxVeqyoHSg9eribH6T5k7E8EwR\nN6l0RvtWT4bsWvMbyv+JHcWZwkYE04w2QcWuAD3BSqAqTUXFVnSHLG58hGXR\nLvgLdutPsg2RcvmJLQ8EODSggIq4b20FItA6Uy4izxEUyJK4Lb9OZ9FLdu2c\nvHQ6v5EeUA9SrSE/eqi14xRy/D+YRiU2iZMf0dM1D+0xdG/MSNfVsgCPESfJ\nc9V4fYGTNXlmHcfz7xgAt386F3fx4ISuxgX3EpYomnxK8NxHxOZxHsJKq5es\nOyWErbGcUWdxBlLIHStJ4820FytK0qtdsAC7kF//gWME+swupj/fYVCcssC9\naJgbHgj+lGzvWfpekhzb95sfHSCo/EQSE+GS+ApVlhEtCvDMBsd6DDyF+xEB\nNL789cgQ/54+2abOK4mfIAZJ8uG1BVVFxlAKcTr/ICsmdruKRj+ERNiuUX/h\nqX9zMDwqyabSGNjm7PfRHqXHlgL1bZtsSVsqq45g7LQMmyCZp2h8ogkCvLQh\nojXY\r\n=CIit\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICx5Le7Y0bHravA4o2v7Nq7bmMeawM1hrTfGqtwIs8f4AiBAmf2QNA6bkeeXwgAWOGKZloiWxsPsOM74rHdmeMQ1Og=="}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox_1.7.2_1574685431622_0.6741362197433993"},"_hasShrinkwrap":false},"1.7.3":{"name":"a-toolbox","version":"1.7.3","description":"javascript lightweight basic tools for node.js and browser","main":"index.js","dependencies":{"hash.js":"^1.1.7"},"devDependencies":{"babel":"^6.23.0","babel-core":"^6.26.3","babel-preset-env":"^1.7.0","babel-preset-es2015":"^6","babelify":"^8.0.0","browserify":"^16.2.2","fs-extra":"^8.1.0","gulp":"^3.9.1","gulp-buffer":"^0","gulp-clean":"^0.3","gulp-sourcemaps":"^2.6","ink-docstrap":"^1","natives":"^1.1.6","pre-commit":"^1","standard":"^14.3.1","vinyl-source-stream":"^1"},"pre-commit":["build"],"scripts":{"build":"gulp","clear":"gulp clear"},"standard":{"ignore":["test/","_test/","src/_*"]},"engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"license":"MIT","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"],"gitHead":"cf918f3da797d20bb39a0d2de70c0f8ada009ba6","bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"homepage":"https://github.com/braceslab/a-toolbox#readme","_id":"a-toolbox@1.7.3","_nodeVersion":"10.16.3","_npmVersion":"6.9.0","dist":{"integrity":"sha512-Ya7oHdzWz08HU2lb8NJjevcM4Yl6rCRBPHa9GD9hijXp0kTv/IwqKes1JDiGDUOdq3QnTie/MNM2mtLTtPiotQ==","shasum":"80647b78cac1bf728a3c5568317e3392e450b41f","tarball":"https://registry.npmjs.org/a-toolbox/-/a-toolbox-1.7.3.tgz","fileCount":40,"unpackedSize":339030,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd28teCRA9TVsSAnZWagAAKXoP/2a3dDY4g9VzZE94ukZ4\nkma/Uz3vw+SUD7mRn4PCiGiJnRZJvMGlDzap2/ZqWJzUGJZfLNF28xjCzQl3\nJ2kxIeovt3UPmbHTslwS86DPNR8LGpay53VHG4aJJlDmAnQAEdxrERsfhWvs\n6EYTBzysFhDlC0b3f7wwOsSHGB7RQrCS8F4zlfSRGHKMRcpY7is3R9nggH05\nZeoJQmj99mS5N9oPqRMilv37e8XHctPy9hegZpK6acEDmZWTxD7ZXWjPCBin\nHVoSfqVLYkZOCj54PFUQZfCl8AZXV3nokmryYlLkWN0xt2V8i5dZORgHnEVQ\nTGTXdBkXqKE/sigVbogsEIAoXttfjouCczBYCtkKVGILnEuRLGchL2XTMoBy\nJ5szqzq7ywwX477P5R6wWKNa79Jyt76Ae8JAfHqaGHIO5uMPCSiz6NPu1Ekc\n12w0Aq32ILz6Tv0fqijmjkG3vbPUApwujVftlDLx7rL/tx0i+2YTg2r0829O\niQPEtP0DTFBw2EVbh0Rs3sq7Ts6QXmj4Qv1aTGCqCVe/OjUPAEGhcgJs6Ai7\nfEPJ2lY4HajnMWzC7QmMVQvoZ4t6epnhvZYKz9DJz4zesrqClK1Fl+8eslvm\nNWvXelD7L3D9pnsGbIJg7iYXGg3b1AVlz5My3XK+KqA3l3CNHs1tiXZuNpl6\nS9iD\r\n=N3s7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCC31CsVaDC8Jg2jb/YcwYBcrE7oN9ZvmxJ4cRrhxd0LAIhAP5+3EqCWenHYvnaaI0kzovBawf2ix0TQjEGtOU75urE"}]},"maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"_npmUser":{"name":"simone.sanfra","email":"simone@braceslab.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/a-toolbox_1.7.3_1574685533878_0.8819310445212842"},"_hasShrinkwrap":false}},"readme":"# a-toolbox\n\n[![NPM Version](http://img.shields.io/npm/v/a-toolbox.svg?style=flat)](https://www.npmjs.org/package/a-toolbox)\n[![NPM Downloads](https://img.shields.io/npm/dm/a-toolbox.svg?style=flat)](https://www.npmjs.org/package/a-toolbox)\n\n[![JS Standard Style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg)](http://standardjs.com/)\n\njavascript lightweight basic tools for node.js and browser\n\n## Purpose\n\n> \"This is my rifle. There are many others like it, but this one is mine.\"\n\n## Install\n\n````bash\nnpm i a-toolbox --save\n````\n\n## Quick start\n\n```js\nconst tools = require('a-toolbox')\n\ntools.string.trim('({cut these brackets please)}', ['{', '}', '(', ')'])\n// > 'cut these brackets please'\n\n```\n\nmodular import\n\n```js\nconst tools = {\n  string: require('a-toolbox/string'),\n  fs: require('a-toolbox/fs')\n}\n\n```\n\n### On browser\n\n````html\n<script src=\"node_modules/a-toolbox/dist/atoolbox.min.js\"></script>\n<script>\nvar data = {\n  name: 'Alice',\n  year: 2014,\n  color: 'purple'\n};\n\nvar str = '<div>My name is {name} I was born in {year} and my favourite color is {color}</div>{nothing}';\nconsole.log('template:', tools.string.template(str, data));\n\n//> template: <div>My name is Alice I was born in 2014 and my favourite color is purple</div>{nothing}\n</script>\n````\n\n## API\n\n- [array](#array)\n- [fs](#fs)\n- [hash](#hash)\n- [object](#object)\n- [util](#util)\n- [random](#random)\n- [string](#string)\n- [sys](#sys)\n- [time](#time)\n- [task](#task)\n- [event](#event)\n\n### array\n\n#### array.remove(array, item)  \n- _array_ \\<Array<*>\\>  \n- _item_ \\<*\\>  \n  \n\nremove an element from array\nit removes only the first occurrence  \n\n_Example_\n\n````js\nlet a = ['js','ruby','python']\ntools.array.remove(a, 'ruby')\n// > a = ['js','python']\n````\n\n#### array.removeAt(array, index)  \n- _array_ \\<Array<*>\\>  \n- _index_ \\<number\\>  \n  \n\nremove an element from array at position  \n\n_Example_\n\n````js\nlet a = [1,2,3]\ntools.array.removeAt(a, 0)\n// > a = [2,3]\n````\n\n#### array.last(array)  \n- _array_ \\<Array<*>\\>  \n- _return:_ * last element of the array or undefined  \n\nget last element of array or undefined  \n\n_Example_\n\n````js\n\ntools.array.last([1,2,3])\n// > 3\n````\n\n#### array.at(array)  \n- _array_ \\<Array<*>\\>  \n- _return:_ * nth element of array; if negative, start from end: -1 = last element; undefined if missing  \n\nget nth element of array  \n\n_Example_\n\n````js\n\ntools.array.at([1,2,3], 0)\n// > 1\n````\n\n#### array.first(array)  \n- _array_ \\<Array<*>\\>  \n- _return:_ * first element of the array or undefined  \n\nget first element of array or undefined  \n\n_Example_\n\n````js\n\ntools.array.first([1,2,3])\n// > 1\n````\n\n#### array.contains(array, item)  \n- _array_ \\<Array<*>\\>  \n- _item_ \\<*\\>  \n- _return:_ boolean   \n\ncheck if array contains an element  \n\n_Example_\n\n````js\n\ntools.array.contains([1,2,3], 1)\n// > true\n````\n\n#### array.insert(array, index, item)  \n- _array_ \\<Array<*>\\>  \n- _index_ \\<number\\>  \n- _item_ \\<*\\>  \n  \n\ninsert an item into array at index position  \n\n_Example_\n\n````js\nlet a = ['john','alice','bob']\ntools.array.insert(a, 0, 'mary')\n// > a = ['mary', 'john', 'alice', 'bob']\n````\n\n#### array.concat(arrays)  \n- _arrays_ \\<...Array<*>\\> to chain \n- _return:_ Array\\<*\\> chained arrays  \n\nconcat arrays  \n\n_Example_\n\n````js\n\ntools.array.concat([0,1,2],[3,4,5])\n// > [0,1,2,3,4,5]\n````\n\n#### array.empty()  \n\n  \n\nempty array - need to keep references  \n\n_Example_\n\n````js\nlet a = [0,1,2]\ntools.array.empty(a)\n// > a = []\n````\n\n#### array.add(array, item, [unique=false])  \n- _array_ \\<Array<*>\\>  \n- _item_ \\<*\\>  \n- _[unique=false]_ \\<boolean\\>  \n  \n\npush item into array, optionally check if already exists  \n\n_Example_\n\n````js\nlet a = [0,1,2,3]\ntools.array.add(a, 3, true)\n// > a = [0,1,2,3]\n````\n\n#### array.flat(array)    \n- _array_ \\<Array<*>\\>  \n- _return:_ Array\\<*\\> flatten array  \n  \n\ncreates a new array with all sub-array elements concatted into it recursively like ``Array.prototype.flatten()``\n\n\n_Example_\n\n````js\nlet a = [0,[1,2],[3]] >\ntools.array.flat(a)\n// > [0,1,2,3]\n````\n\n#### array.sortingInsert(array_, item)  \n- _array__ \\<Array<*>\\>  \n- _item_ \\<*\\>  \ninsert an element in a sorted array, keeping sorted  \n\n_Example_\n\n````js\nlet a = [0,1,2,10,11,20]\ntools.array.sortingInsert(a, 15)\n// > a = [0,1,2,10,11,15,20]\n````\n\n#### array.binaryIndexOf(array, item)  \n- _array_ \\<Array<*>\\>  \n- _item_ \\<*\\>  \n\n- _return:_ number index of element of -1\nlike Array.indexOf but perform binary search (array should be sorted)  \n\n_Example_\n\n````js\n\ntools.array.binaryIndexOf([0,1,2,3], 0)\n// > 0\n````\n\n---\n\n### fs\nnote: not available on browser\n\n#### fs.exists(path)  \n- _path_ \\<string\\> path \n- _return:_ Promise.\\<boolean\\> true if file or directory exists\n\nreplace deprecated fs.exists  \n\n_Example_\n\n````js\n\ntools.fs.exists('/tmp/file')\n// > true\n````\n\n#### fs.isFile(path)  \n- _path_ \\<string\\> file path \n- _return:_ Promise.\\<boolean\\> true if it exists and is a file\n\n_Example_\n\n````js\n\ntools.fs.isFile('/tmp/file')\n// > true\n````\n\n#### fs.isDirectory(path)  \n- _path_ \\<string\\> dir path \n- _return:_ Promise.\\<boolean\\> true if it exists and is a dir\n\n_Example_\n\n````js\n\ntools.fs.isDirectory('/tmp')\n// > true\n````\n\n#### fs.touch(path, [mode=0o666])  \n- _path_ \\<string\\> file path \n- _[mode=0o666]_ \\<number\\>  \n- _return:_ Promise.\\<void\\>   \n\ncreate an empty file if not exists  \n\n_Example_\n\n````js\n\ntools.fs.touch('/tmp/touch-me')\n\n````\n\n#### fs.unlink(path, [safe=true])  \n- _path_ \\<string\\> file path \n- _[safe=true]_ \\<boolean\\> if safe do not throw exception \n- _return:_ Promise.\\<void\\>   \n\ndelete file, optionally in safe mode  \n\n_Example_\n\n````js\n\ntools.fs.unlink('/tmp/file')\n\n````\n\n---\n\n### hash\n\n#### hash.sha256(data)  \n- _data_ \\<string\\> any string \n- _return:_ string sha256 in hex format  \n\nGenerate hash using sha256 in hex format  \n\n_Example_\n\n````js\n\ntools.hash.sha256('usk6fgbuygbu6')\n// > 'ee42f619919727584b66fe25248ed4bba8e87dcfb3e62a90143ea17ba48df58e'\n````\n\n\n---\n\n### object\n\n#### object.flat(obj)  \n- _obj_ \\<Object\\>  \n- _return:_ Object   \n\nflat keys in object  \n\n_Example_\n\n````js\n\ntools.object.flat({ a: { a1: 1, a2: 2 }, b: 3 })\n// > { 'a.a1': 1, 'a.a2': 2, 'b': 3 }\n````\n\n#### object.merge(a, b)  \n- _a_ \\<Object\\>  \n- _b_ \\<Object\\>  \n  \n\nmerge b into a  \n\n_Example_\n\n````js\nlet a = {a:1,b:'ciao'}\ntools.object.merge(a, {a:4,c:{d:8,e:9}})\n// > a = { a: 4, b: 'ciao', c: { d: 8, e: 9 } }\n````\n\n#### object.clone(obj)  \n- _obj_ \\<Object|Array\\> The array or the object to clone \n- _return:_ Object|Array   \n\nClone an array or an object in input  \n\n_Example_\n\n````js\n\ntools.object.clone({a: 1, b: 'ciao'})\n// > {a: 1, b: 'ciao'}\n````\n\n#### object.getKeys(obj)  \n- _obj_ \\<Object\\>  \n- _return:_ Array\\<string\\>   \n\n  \n\n_Example_\n\n````js\n\ntools.object.getKeys({a: () => { }, b: 1, c: 'ciao'})\n// > ['a','b','c']\n````\n\n#### object.inherits(destination, source)  \n- _destination_ \\<Object\\>  \n- _source_ \\<Object\\>  \n  \n\nit use ``Object.getOwnPropertyNames`` to inherits child from parent, without prototype  \n\n_Example_\n\n````js\nlet a = {}\ntools.object.inherits(a, {f0:() => { },p1:1,p2:'ciao'})\n// > a = {f0: () => { }, p1: 1, p2: 'ciao'}\n````\n\n#### object.empty(obj)  \n- _obj_ \\<Object\\>  \n  \n\nempty object - need to keep references  \n\n_Example_\n\n````js\nlet a = {a:0,b:1,c:2,d:[],e:{f:-1}}\ntools.object.empty(a)\n// > a = {}\n````\n\n#### object.raise(flat)  \n- _flat_ \\<Object\\>  \n- _return:_ Object   \n\nrestore flat object  \n\n_Example_\n\n````js\ntools.object.raise({ 'a.a1': 1, 'a.a2': 2, 'b': 3 })\n// > { a: { a1: 1, a2: 2 }, b: 3 }\n````\n\n#### object.getByFlatKey(obj, fkey)  \n- _obj_ \\<Object\\>  \n- _fkey_ \\<string\\>  \n- _return:_ Object   \n\nget value in object using a flat key  \n\n_Example_\n\n````js\n\ntools.object.getByFlatKey({ a: { b: {c: 1} } }, 'a.b.c')\n// > 1\n\ntools.object.getByFlatKey({ a: { b: [{c: 1}] } }, 'a.b[0].c')\n// > 1\n````\n\n#### object.setByFlatKey(obj, fkey, val)  \n- _obj_ \\<Object\\>  \n- _fkey_ \\<string\\>  \n- _val_ \\<*\\>  \n  \n\nset value in object using a flat key  \n\n_Example_\n\n````js\nlet a = {}\ntools.object.setByFlatKey(a, 'a.b.c', 1)\n// > a = { a: { b: {c: 1} } }\n\nlet a = {}\ntools.object.setByFlatKey(a, 'a.b[0].c', 1)\n// > a = { a: { b: [{c: 1}] } }\n````\n\n\n---\n\n### util\n\n#### util.isSet(val)  \n- _val_ \\<*\\>  \n- _return:_ bool   \n\ncheck if ``val`` is setted, means it's not ``null`` or ``undefined``  \n\n\n#### util.onBrowser()  \n\n- _return:_ bool   \n\ncheck if you are on browser or not  \n\n\n\n---\n\n### string\n\n#### string.template(str, obj, [remove=false])  \n- _str_ \\<string\\>  \n- _obj_ \\<Object\\>  \n- _[remove=false]_ \\<boolean\\> remove missing placeholders from obj, default false \n- _return:_ string   \n\nreplace placeholders inside graph brackets {} with obj dictionary\n~ES6 template string without $  \n\n_Example_\n\n````js\n\ntools.string.template('hi {name} how are you?', {name: 'Alice'})\n// > 'hi Alice how are you?'\n````\n\n#### string.trim(str, cuts)  \n- _str_ \\<string\\>  \n- _cuts_ \\<Array<string>\\>  \n- _return:_ string   \n\ntrim string  \n\n_Example_\n\n````js\n\ntools.string.trim(' regular trim      ')\n// > 'regular trim'\n````\n\n#### string.replaceAll(str, from, to)  \n- _str_ \\<string\\>  \n- _from_ \\<string\\>  \n- _to_ \\<string\\>  \n- _return:_ string   \n\n_Example_\n\n````js\n\ntools.string.replaceAll('abcadaeafaga', 'a', '')\n// > 'bcdefg'\n````\n\n#### string.capitalize(str)  \n- _str_ \\<string\\>  \n- _return:_ string   \n\n  \n\n_Example_\n\n````js\n\ntools.string.capitalize('alice')\n// > 'Alice'\n````\n\n#### string.prependMissing(prefix, str)  \n- _prefix_ \\<string\\>  \n- _str_ \\<string\\>  \n- _return:_ string   \n\n  \n\n_Example_\n\n````js\n\ntools.string.prependMissing('miss ', 'Alice')\n// > 'miss Alice'\n````\n\n\n---\n\n### random\n\n#### random.rnd(max)  \n- _max_ \\<number\\>  \n- _return:_ number   \n\nget random int from 0 to max  \n\n_Example_\n\n````js\n\ntools.random.rnd(10)\n// > 5\n````\n\n#### random.number(min, max)  \n- _min_ \\<number\\>  \n- _max_ \\<number\\>  \n- _return:_ number   \n\nget random int from min to max  \n\n_Example_\n\n````js\n\ntools.random.number(10, 20)\n// > 11\n````\n\n#### random.string([length=8], [set=abcdefghijklmnopqrstuvwxyz])  \n- _[length=8]_ \\<number\\>  \n- _[set=abcdefghijklmnopqrstuvwxyz]_ \\<Array\\>  \n- _return:_ string   \n\nget random string  \n\n_Example_\n\n````js\n\ntools.random.string(8)\n// > 'ajdsfchakwt'\n````\n\n#### random.hex([length=8])  \n- _[length=8]_ \\<number\\>  \n- _return:_ string   \n\nget random hex string  \n\n_Example_\n\n````js\n\ntools.random.hex(8)\n// > '1bc956bf'\n````\n\n#### random.hash(salt)  \n- _salt_ \\<?string\\>  \n- _return:_ string   \n\nget random hash string  \n\n_Example_\n\n````js\n\ntools.random.hash()\n// > '1f8a690b7366a2323e2d5b045120da7e93896f471f8a690b731f8a690b739ab5'\n````\n\n#### random.element(array, not)  \n- _array_ \\<Array<*>\\>  \n- _not_ \\<Array<*>\\>  \n- _return:_ * element  \n\nget random element from array  \n\n_Example_\n\n````js\n\ntools.random.element([1,2,3,4,5])\n// > 1\n````\n\n---\n\n### sys\nnote: not available on browser\n\n#### sys.isRoot()  \n\n- _return:_ bool is root or not  \n\ncheck if running user is root  \n\n---\n\n### time\n\n#### time.chrono.set([tag=chrono])  \n- _[tag=chrono]_ \\<string\\>  \n\nstart a timer identified by tag  \n\n_Example_\n\n````js\n\ntools.time.chrono.set('query')\n\n````\n\n#### time.chrono.reset([tag=chrono])  \n- _[tag=chrono]_ \\<string\\>  \n\nreset the timer identified by tag  \n\n_Example_\n\n````js\n\ntools.time.chrono.reset('query')\n\n````\n\n#### time.chrono.clear([tag=chrono])  \n- _[tag=chrono]_ \\<string\\>  \n\ndiscard the timer identified by tag  \n\n_Example_\n\n````js\n\ntools.time.chrono.clear('query')\n\n````\n\n#### time.chrono.get([tag=chrono])  \n- _[tag=chrono]_ \\<string\\>  \n- _return:_ number ms\n\nget the timer in ms from start (or reset) identified by tag  \n\n_Example_\n\n````js\n\ntools.time.chrono.get('query')\n// > 11\n````\n\n#### time.gc()  \n\nclear timers (if you care about memory)  \n\n---\n\n### task\n\n#### class task.Worker(options)  \n- _options_ \\<Object\\>  \n- _options.done_ \\<function\\> callback when all tasks are completed \nsimple parallel tasks manager  \n\n_Example_\n\n````js\n\nconst tasks = new tools.task.Worker({done: () => { console.log('well done') }})\n\nconst _asyncOperationTimeout = [500, 1000, 200, 1500, 100];\n\nfor (const i in _asyncOperationTimeout) {\n  _tasks.todo('task#' + i);\n}\n\nfor (const i in _asyncOperationTimeout) {\n  setTimeout(function (i) {\n    return function () {\n      console.log('done task #', i);\n      _tasks.done('task#' + i);\n    };\n  }(i), _asyncOperationTimeout[i]);\n}\n\n````\n\n#### Worker.todo()  \n\nadd task  \n\n_Example_\n\n````js\n\ntasks.todo('task#1')\n\n````\n\n#### Worker.done()  \n\ndeclare task it's done  \n\n_Example_\n\n````js\n\ntasks.todo('task#1')\n\n````\n\n---\n\n### event\n\n#### class event.Emitter()  \nsimple event emitter  \n\n_Example_\n\n````js\n\nconst emitter = new tools.event.Emitter()\n\nemitter.on('event#0', (value0, value1) => {\n  console.log('event #0 happened with', value0, value1)\n})\n\nemitter.once('event#0', (value0, value1) => {\n  console.log('event #0 happened (once) with', value0, value1)\n})\n\nemitter.emit('event#0', 1, 2)\nemitter.emit('event#0', 3, 4)\n\nemitter.off('event#0')\n\n````\n\n#### Emitter.emit(name, ...values)   \n- _name_ \\<string\\> event name  \n- _...values_ \\<*\\> values to pass to the event listener  \n\nemit an event  \n\n_Example_\n\n````js\n\nevent.emit('event#0', 'a value', 99, {another: 'VALUE'})\n\n````\n\n#### Emitter.on(name, callback)   \n- _name_ \\<string\\> event name  \n- _callback_ \\<function\\> \n\nlisten to an event  \n\n_Example_\n\n````js\n\nemitter.on('event#0', (value0, value1) => {\n  console.log('event #0 happened (once) with', value0, value1)\n})\n\n````\n\n#### Emitter.once(name, callback)   \n- _name_ \\<string\\> event name  \n- _callback_ \\<function\\> \n\nlisten to an event only once  \n\n_Example_\n\n````js\n\nemitter.once('event#0', (value0, value1) => {\n  console.log('event #0 happened (once) with', value0, value1)\n})\n\n````\n\n#### Emitter.off(name)   \n- _name_ \\<string\\> event name  \n\nstop listening to an event  \n\n_Example_\n\n````js\n\nemitter.off('event#0')\n\n````\n\n---\n\n\n\n## Changelog\n\nv. 1.7.2\n\n- add ``object.getByFlatKey`` support also Array\n\nv. 1.7.1\n\n- add ``fs.isFile`` and ``fs.isDirectory``\n\nv. 1.6.2\n\n- ``fs.exists`` return true on files and directories, instead of only files\n\nv. 1.5.1\n\n- ``string.template`` support multi-level syntax object\n\nv. 1.5.1\n\n- ``object.setByFlatKey`` support also Array\n\nv. 1.5.0\n\n- add ``event.Emitter`` (simple event emitter, for browser)\n\nv. 1.2.0\n\n- use [hash.js](https://github.com/indutny/hash.js) instead of ``crypto`` (for browser)\n\nv. 1.0.0\n\n- general review\n- modular loader\n- browser version\n\n---\n\n## TODO\n\n- [ ] string.caseCamel, string.casePascal\n- [ ] object.walk test, doc\n- [ ] travis CI / node, browser\n- [ ] coverage badge / coverage 100%\n\n---\n\n## License\n\nThe MIT License (MIT)\n\nCopyright (c) 2015-2019, [braces lab](https://braceslab.com)\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","maintainers":[{"name":"simone.sanfra","email":"simone.sanfra@gmail.com"}],"time":{"modified":"2022-06-13T02:17:14.100Z","created":"2015-02-20T03:10:43.701Z","0.0.1":"2015-02-20T03:10:43.701Z","0.0.2":"2015-02-20T03:38:04.769Z","0.0.3":"2015-02-20T03:39:26.667Z","0.0.4":"2015-03-18T06:28:58.868Z","0.0.5":"2015-03-18T06:43:25.304Z","0.0.6":"2015-03-19T04:57:33.120Z","0.0.7":"2015-08-04T05:50:45.684Z","0.0.8":"2015-08-26T04:51:26.757Z","0.0.9":"2015-12-27T07:28:45.049Z","0.0.10":"2015-12-27T08:22:10.576Z","0.0.11":"2016-01-09T10:49:38.125Z","0.0.12":"2016-01-20T08:45:08.506Z","0.0.13":"2016-01-23T11:51:19.255Z","0.0.14":"2016-02-05T10:53:53.526Z","0.0.16":"2016-09-03T17:33:41.100Z","0.0.17":"2016-09-04T04:35:49.778Z","0.1.0":"2017-03-09T15:09:03.093Z","0.1.1":"2017-03-13T15:54:29.829Z","0.1.2":"2017-03-21T03:59:41.686Z","0.1.3":"2017-04-01T16:39:49.897Z","0.1.4":"2017-04-01T17:11:42.813Z","0.1.5":"2017-04-05T16:02:21.457Z","0.1.6":"2017-04-05T20:42:33.530Z","0.1.7":"2017-04-05T20:58:42.087Z","0.1.8":"2017-04-12T14:03:37.035Z","0.1.9":"2017-04-21T09:53:13.614Z","0.1.10":"2017-06-10T21:30:10.472Z","0.1.12":"2017-06-12T15:15:03.389Z","0.1.13":"2017-06-13T11:46:50.110Z","0.1.14":"2017-06-13T12:28:58.690Z","0.1.15":"2017-06-14T05:32:01.566Z","0.9.0":"2018-01-08T08:59:31.697Z","1.0.0":"2018-01-08T09:16:17.018Z","1.0.1":"2018-01-09T04:54:19.913Z","1.1.0":"2018-01-09T05:00:21.571Z","1.1.1":"2018-01-10T07:47:22.505Z","1.1.2":"2018-01-10T07:49:21.127Z","1.2.0":"2018-01-11T05:49:28.673Z","1.2.1":"2018-01-11T09:06:34.777Z","1.2.2":"2018-01-11T09:13:36.820Z","1.2.3":"2018-01-11T09:18:31.096Z","1.2.4":"2018-01-11T20:14:40.920Z","1.2.5":"2018-01-12T04:29:42.413Z","1.2.6":"2018-01-13T01:05:44.632Z","1.2.7":"2018-01-13T03:36:00.754Z","1.2.8":"2018-01-20T04:58:03.569Z","1.2.9":"2018-01-21T04:58:48.902Z","1.2.10":"2018-01-24T11:04:13.313Z","1.2.12":"2018-02-22T10:09:58.085Z","1.4.0":"2018-03-23T04:56:17.561Z","1.4.1":"2018-03-26T10:16:24.607Z","1.4.2":"2018-03-26T14:19:38.744Z","1.4.3":"2018-04-16T14:25:09.384Z","1.5.0":"2018-07-05T07:59:04.456Z","1.5.1":"2018-07-08T07:43:03.478Z","1.5.2":"2018-07-20T14:29:39.664Z","1.5.3":"2018-07-22T13:34:33.401Z","1.5.5":"2018-08-02T10:22:25.567Z","1.5.6":"2018-10-23T11:39:20.622Z","1.6.1":"2019-09-08T13:02:47.595Z","1.6.2":"2019-09-08T13:04:33.119Z","1.7.0":"2019-11-01T05:24:00.657Z","1.7.1":"2019-11-01T06:55:20.629Z","1.7.2":"2019-11-25T12:37:11.761Z","1.7.3":"2019-11-25T12:38:54.063Z"},"homepage":"https://github.com/braceslab/a-toolbox#readme","repository":{"type":"git","url":"git+https://github.com/braceslab/a-toolbox.git"},"author":{"name":"Simone Sanfratello","email":"simone@braceslab.com"},"bugs":{"url":"https://github.com/braceslab/a-toolbox/issues"},"license":"MIT","readmeFilename":"README.md","keywords":["library","toolkit","toolbox","array","fs","object","hash","task","async","random","string"]}