{"_id":"pow-functions","_rev":"150-fd23db66454be1d0e964c250fdcdf676","name":"pow-functions","dist-tags":{"dev":"1.0.14-dev.64","latest":"1.0.14"},"versions":{"0.0.0-SNAPSHOT.88edbb7":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-SNAPSHOT.88edbb7","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","dependencies":{"@google-cloud/kms":"^1.5.2","body-parser":"^1.15.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","io-ts":"^1.8.6","io-ts-reporters":"0.0.21","moment":"^2.24.0","node-fetch":"^2.6.0","stripe":"^7.1.0"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","npm-snapshot":"^1.0.3","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"gitHead":"88edbb79cf2c3257d83034202eeb8bda11ddcb67","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-SNAPSHOT.88edbb7","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-ins36ui7NFz3Q8L0yYPw82LY3T5EI+/M3xVHzvpFVmLotHjakG4Fc8hQHgGVd4MRuxFBoR7eSrsGYhkuZk+5Hw==","shasum":"7e9c96177527677332a475bc772489bfdb5c4b80","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-SNAPSHOT.88edbb7.tgz","fileCount":2,"unpackedSize":2017,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd06zRCRA9TVsSAnZWagAAscMP/28wY1wQGJrmZkxt9Ay/\n9qQns0vhROGfSDEZYfjrojthFB9RSwwsBYrdLcQ0/Rv5XSGLBBuhxi+5F00d\nPm1V6Jxev0MoxfPskC/g4IpgJcq+L2HX0XHC4uFmOedlSj78YLTM9Ng+3YxM\n12OuP/+2TxNBOw7CkeXwHW5gcBGtWzyCEe5XCLkRQi1XZgYtaViSKHEi1psW\n8wxk7dFa9aXrLIZeb338+hRIgClrHdtGU7H6sBX6ydM6o5Va1viF93yxPemc\nbB7GQr6iwvvYleA08CXPho87s0tZT46V53B92A8+jfKwJqB6vnIfkm8EHF9b\n6cHgwTyjx91/Bhw2cU2nFYZvdqUNbDe5i+tSTkIPk3diCL+UGTUGA5icdgY5\nGGNqDUcFc8syGRMx0wikcc/ljTE1HgW/cvUHPC9zb/WGNtPHZ3zNULa/6SXu\nWD6Wn0NMLmiAYU/PA7YUNt/ov8X7j/F5vK0EEYzaXiOfASp60hobqFVnltGi\nlh3yOg2nPnY6rRuFMEwHHaGPdzCPxXqnG/O5EUrMJwJu6vy34oqz0TI+cvDp\n/3N7b4EF7t1JZwW84KMBsc2Bx+fjwA/ivUC+bRmkg/sHYc4QPi27kaUZAuaB\nI7XQG0XfLL6DXCS2cZ8c5K1tMaa6X4Ykv/405owsMkkaFXoSjqpRoqgtWwte\n7uMK\r\n=FoIu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDjqQP3ofxOSZZCERmnRMwO1kf2eWuR85eeXd8zqJzIbAIhAMO196UnTOy+SSToVis0J3tlH41PfJuxAd0cr7Dnx2GS"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-SNAPSHOT.88edbb7_1574153425265_0.7599019518992214"},"_hasShrinkwrap":false},"0.0.0-SNAPSHOT.e489c56":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-SNAPSHOT.e489c56","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","dependencies":{"@google-cloud/kms":"^1.5.2","body-parser":"^1.15.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","io-ts":"^1.8.6","io-ts-reporters":"0.0.21","moment":"^2.24.0","node-fetch":"^2.6.0","stripe":"^7.1.0"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","npm-snapshot":"^1.0.3","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"e489c56c2fbfbd73b234a0dd92b2c0aa106f5e74","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-SNAPSHOT.e489c56","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-tgcgeVTHqhDEFcqsVo8V8uGuxiiUy3Qe7GGKHHCDO+7COuheM/SofD4p+CE8ie7GVQyOca2cc7MGQSJwg8l+xQ==","shasum":"32cd39705a9006042c8649985e3509d27c9762b1","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-SNAPSHOT.e489c56.tgz","fileCount":2,"unpackedSize":2017,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd065cCRA9TVsSAnZWagAA4xMQAITIzeaajxBzKxSdDoQ6\n5CkTzZdYwL/C8zdr0orkarqZOc7MiV9/fTT/+Objvzu8tpcws8jZmJ8CWAxN\n0TdtUEUmwIJ150+Aes9/oKbp6x7dyZ+kgO9T3OwWxzH9T7X0DtLo3DTKBQ1Q\nu5Tp6P1CMYql7f1rSW85oEEYrgg4pCyZPV0FNe3yMc5GJYteyHNayZ75dlHj\nLjb6oO+t3FbsFPHgKeisVbBpyfN8XthSc/CgYCFchXwgGljlzQ3w1V8BSONa\nGe3Mx2ihKsBnmdjCO7f+KdFdOyRXZYp0T4d01QZUMs0x6gNCAK3+vesU088T\nYd/ZwFEYUo+O/VY1tXhpsRDPO5ApCuUwR8k17XckU1MfYoVJ6ZSgPREnnD6P\nq/tO/ySeHzKMhcqM3IGzP/5oPeHKNQXSJKM9GSgRPnc+FIPruKbVuRCgpBKw\nrqdFv1bFl+urtLgxN7fJPGiOdIcrDfwuuHY8dxxODMtEAn2K0SDVtdQ41ilB\nzeHXKIQDtrTJZxekzzQU/tp8jFZU4Jo3CR5xdi6Oa1RwsncEQwlxHLqZHbCP\nEExyW35HfpGr2y1QeZOmdDmEvmh749ssLgHZcTM9ZDtmxLFQ1txhBPukePcG\nLO/lWHvNa396QJGFi2RSZdACsVUZX1Uw05aWr+pWjR7mwQ1yE+Inz0Uullu+\nbYKr\r\n=n5J6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICqpvOizLEa2N5JtxMViUcOL+q403PUPxRh3m1BbNMzsAiEAns/qYwM+cVWS8KGVodyfql8EchWFELrMj/rWB340/Vc="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-SNAPSHOT.e489c56_1574153820376_0.7197990829816978"},"_hasShrinkwrap":false},"0.0.0-SNAPSHOT.8a36333":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-SNAPSHOT.8a36333","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","dependencies":{"@google-cloud/kms":"^1.5.2","body-parser":"^1.15.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","io-ts":"^1.8.6","io-ts-reporters":"0.0.21","moment":"^2.24.0","node-fetch":"^2.6.0","stripe":"^7.1.0"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","npm-snapshot":"^1.0.3","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"8a363333b5982eb884e00545935fb2448cf16a2b","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-SNAPSHOT.8a36333","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-1y2eQ6IE0P/lhHIoJsF9y+a/oK/PLkuaiG9HPxP7eIInnK2AsF3rqqpBHIYy1HMWRp3nNsfcFMwxJgchmw2t0A==","shasum":"312c159c8baaed9269852612bc6d3926033fd7d8","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-SNAPSHOT.8a36333.tgz","fileCount":2,"unpackedSize":2017,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd07CKCRA9TVsSAnZWagAAbRAP/0exwwLxSpgoQVWttslO\nZAPWMCHWKO4lMoF6pdZhdrfn3H4SfIYTezZ+1NSJBD/jmTJydVOsPFV75tnR\nHR8nRPNA/SEIgwTJOyk5HXOFfV2/msGtSIPySImXQgxX7IJm02JkelFxf6zp\nSBEU3Sr9IRx9f1pwqAcZyTlPYxv+epGwrDeyrMr0FUuJDrdCOvyzqMiqZsvE\nsTlPhRsP541NGPsN1DtPbNzfqizUj5bzhpArSWeIq7XsoicLDsM88R6YiDnw\nlYenfoD79gTdge38k/lnTg9zi9fT+6gJ5s4Q6EDIuK2LUnkT2nEQK6nBiFaL\ndOEReehh+iwjYcObzzc84tY+PxwuSKQjuvzOkBlppv1aUiTUc7N3iUJF2XfD\n0FXehVjxmgVaaIb4BdcZu+6tUUFwk7ecxnRU3rbxCor9ZzKJhRtTIwMTXV3C\ngzFopj1bcZNAq9EX+SOA+uS4Y75cW1SQ+MRYhyjgvhuCAfjOyDbqkt2yK1cf\ntwVngAK4DRr+19FTjLP87zjp8ShhsIci6qhLe5X+Fs1aUhtkYDTSSXCriGdw\nnjmS+Xl/ALGImXxiK0BeVANI5HvfpL25z58Aaw6UCswW8uUQ0rbEoPGZxiSU\nACFg5e5gvrt6tTYQTd6xiLuQAlHkjTPSZxXL6IkwH63foEsvRvgTx7OTGd7M\nd9X8\r\n=xtrf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDFSOPJCNmpilue/t26IokI+S8n37RcSwb4q+dDF9G14QIhAIjgHlHssSFnzM5R7mizACilyexPjeVPYRGmrxIeCwO8"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-SNAPSHOT.8a36333_1574154378368_0.014693375106575646"},"_hasShrinkwrap":false},"0.0.0-SNAPSHOT.1ab8f76":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-SNAPSHOT.1ab8f76","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","dependencies":{"@google-cloud/kms":"^1.5.2","body-parser":"^1.15.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","io-ts":"^1.8.6","io-ts-reporters":"0.0.21","moment":"^2.24.0","node-fetch":"^2.6.0","stripe":"^7.1.0"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","npm-snapshot":"^1.0.3","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"1ab8f761019006f01d8cbdfc7c7a44e731473a22","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-SNAPSHOT.1ab8f76","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-pyicvPzXp37mzGFiNvnrLyxPOMild7iiPA3lCK4HnHG4IFY2G5EMzYFkGjtem+NJDsyv08h5WCwtPHCgsFm6Ow==","shasum":"31b00267f71c6db3bfd097f303698278c0f9014d","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-SNAPSHOT.1ab8f76.tgz","fileCount":2,"unpackedSize":2017,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd07IyCRA9TVsSAnZWagAAQkwP/1oSZvV5DholasfJmvLR\ntegFX4vSylqh1zvnn+4Ao6FdlfwpIgUkS/nuaSf7kNQ2YH3zQpx4WTqGf+Qd\nawWDKdYd1Hm+mmBQCedPclE9psZGkmiQIo0ocqGRL52OyH+w94m9r4NwfLhP\nJ64FozeUbRmGBbPd5Q2a8+oITp/sFRNXqWshiy2NSV3IMtZe9SNGVw7tolVo\nUK09XZ4yxR95vvf+/MhG+HgdVejNiSv4NJeimwUea+HYfUaXDGRpc31W1xgO\nUilfJjnasM/4AmAkGdOqgHnD79WMj/sFvIcO7mCfNfzoSp7QrmEMqPuT39EE\nM73G9jDpGnDoKcZ0zztkyb8rkGVhz8SqEvX2+7rcp30l/NfDfeN3E0a6Gcbg\nuMMon9CLodpSV0k84wbZxtJvSZvfLa4BDA67+KSNZlsnrI9giOEev3e4OR3+\nxrUK08iMqFm0+8lm0MJzuCjE36MYvwSpSgTIoTFt7RP+zEf8TzypWielYc39\nMKwELF7G+/U0KxMQZ9EbtyuwbryZb7uRJM1VIagC2FExsbZffkOLwkUUtv7t\nGmJyvdGWxNLrVMo4njY1VSNIqrQUejCG8VhLG/x994aX1ESGa5mvlETZwqy9\ntUk/NwFlBH9gnHF69ad/F9wJGgv46IDzsgQ3OswTVhjDtbQsJFuOzJkV44MP\nXpKW\r\n=gfI0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCRXF9p9cBCxP4Qg6NgaBGutL2SkwTfWDogNev6AjCmpQIgbO2Ckpx1+yb30s9A1sDfleSmQHyRejr56bf/jVIiDBA="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-SNAPSHOT.1ab8f76_1574154802457_0.13866996241033425"},"_hasShrinkwrap":false},"0.0.0-SNAPSHOT.e68705e":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-SNAPSHOT.e68705e","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","dependencies":{"@google-cloud/kms":"^1.5.2","body-parser":"^1.15.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","io-ts":"^1.8.6","io-ts-reporters":"0.0.21","moment":"^2.24.0","node-fetch":"^2.6.0","stripe":"^7.1.0"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","npm-snapshot":"^1.0.3","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"e68705ebc0a8c4d23037aa6a8eeed92b3398fa2c","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-SNAPSHOT.e68705e","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-41ZmADJsM3SYITjpnp0bddrkTnUsiUsH83DDty6pP9cGVGYZyAw77B7PQTvjT3jPmjKhd18JWT8JZa+klZ1oHA==","shasum":"57164702a300ec64e9a3b288bb9c61e722a3ca93","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-SNAPSHOT.e68705e.tgz","fileCount":2,"unpackedSize":2017,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd07LuCRA9TVsSAnZWagAAAIsP/15/Ubjcwg8t97X0jbRN\nMa7Ekrh9Bzuv4doFo2rR/raQTFBO0LOn8TnAbHAas5pEH/X/iwVs/BgeJBzV\ngK5LVLffmSbZDht6dqGu6DzgmnM2rEuRmP2q+mRtl2znNJQa3fhwiLd/pWcy\nKHYWEaaJJZuAtGYGZaJEpXrs1/a2UTGbMrV3CE4fyai07LDSHsjPWqWARZjK\njoh/RY7wQk1NokQ7Do8iTfaXUOSmhqqwYGox7/odPgv+QLQJjXdBmI2J1HPa\n9qQ+YAaPWsUXJfamG3B+QAl/VLM4zGmQEttLTFcWtmQnjTAIv1/EfZ/GwhTq\nYxEMIOuqsjkU1tjWGwCrTT0f38KPAZENn0J4rdyT/5xu/FQpsz+YSBYBbPNl\nLv3hJH07VmQlEcR9PoH3uxKsUKysrPKcTVIwoxeOZEhfoZlvvNjvI4E5E9OZ\ny1R0JCnfGfKh/NYUTNo07zW71GdZgdLXGGYqHAiGCBoGBfdLK9iYs3rkmjel\nxsu52koBFaxMT6/fzcHmi7wUdYTrrLcDFZNJa7Mf3FzaGl3m7fY7PT3xeQtm\nY2W3/E/p9N+B6Opo1yNOlwCNm6juS0/PE3k9/hqKHalAksFTvFs4gYbObHQr\n6KcMUXH0comOIOjLG7+2jccA0OC7vlIobPe18DQOjdyDvzr1MTitvoHlAhin\nV1pw\r\n=/rz8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF1GfDjZ5EQ3ULs73mryfRd7F1lqQOHqOQTpmH81r9GjAiBAdAfvfvBZJaf5yZyQZ2rqXeLisWLkS9XCQARnUHrOVw=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-SNAPSHOT.e68705e_1574154990422_0.16954212018303805"},"_hasShrinkwrap":false},"0.0.0-SNAPSHOT.d0ef16f":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-SNAPSHOT.d0ef16f","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","dependencies":{"@google-cloud/kms":"^1.5.2","body-parser":"^1.15.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","io-ts":"^1.8.6","io-ts-reporters":"0.0.21","moment":"^2.24.0","node-fetch":"^2.6.0","stripe":"^7.1.0"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","npm-snapshot":"^1.0.3","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"d0ef16f5696a30088aa763bc45f93890cb94b0c7","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-SNAPSHOT.d0ef16f","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-VR+i235Hcj+ymZJ3zGHENA0UGE5oBRCeJ1z+8yhf2tmbfJbuq4QhLkq64S8YtziEJFCeDSSPywvITckhQdL1GA==","shasum":"8f29c92c50b9ce8b71412ce22bea2fd0663d3c0c","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-SNAPSHOT.d0ef16f.tgz","fileCount":2,"unpackedSize":2017,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd07MtCRA9TVsSAnZWagAAaNEP+wfJIpfuTRLJ4kz5rOY7\nVGTxD7kV5msUMdFliG+w3OYN674P4k/8XCXZzv+hb64d9JFos5CzilwVhmeC\nc6dpN4uXL3yWu5gHK0eujDwSPM2FKABWyWXKGN60DarEtvKC78RzFyseWP3l\nCB8sjVlVvMfi5NM+2Yt3m7OFR6AbwjBn6Q16NthqzQlj6mIp2kB5JanABMKA\n3VB1VqMicwjsyI2ttcOzD/Vo2xPg+8v26iTGiEKayBTZtQ61hcpZzFH290FJ\nQp7pSlCIywc0P0i888zu3lxd38PUahWNTGxEpuG4k2asT7naZwX2L2yFAepe\nJBavOBa+7h6Q43msmL0luIWBr3ExdE1ZRqauIZc05VrzBh/e12IJYQKA+wxq\nPkxsbLmaMPl7ryPyb+kza14o+P3V95PMt2FFIE5BXfyRkRnaSkd0B24knf9E\nVZzBcUY+9GdLHCeBE2f5yx9RWljdlnwYVndfOwFhoP0IhZjJe4AIKjahWEKF\nq+0ga+1l1tDUufSGMNA5j4/KogUExggg08Eu7EQQwnhiQxhU5OflmKiJxPrd\n0VIpbOTpvkC5NKhLfWA4IP/nZzlf8JHJelWPn3m/qPvTsbxJiIibbBFKbM7Y\nHvdcxT2VJFaAyVynezWtkyoGDTAd27JQE6TOhUbFv0Sy87axXfCuvrspexoN\nYyZU\r\n=zCqP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDbiNcRbjQNreI6c1XgC0mQOUGH1H+5CBUuWz74gg4SAAiEA3DOXQGJigABfgY6qHAwxUujQ/7AK+JUo5XeKrpB9DLI="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-SNAPSHOT.d0ef16f_1574155052968_0.3822573619775942"},"_hasShrinkwrap":false},"0.0.0-SNAPSHOT.188d4f4":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-SNAPSHOT.188d4f4","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","dependencies":{"@google-cloud/kms":"^1.5.2","body-parser":"^1.15.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","io-ts":"^1.8.6","io-ts-reporters":"0.0.21","moment":"^2.24.0","node-fetch":"^2.6.0","stripe":"^7.1.0"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","npm-snapshot":"^1.0.3","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"188d4f4801294975819c290ebc1b6e1ed71542d6","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-SNAPSHOT.188d4f4","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-9m/xtf3AMfibY0rVsNWwlRrp6BNUFXlCReI4uFk8UHtzsI6ZChIWtLBDpLIj+kkIM/XTw4AS9uESL3fCk7n8Ig==","shasum":"a6261b1186fff9b8be01fc7287dc35f184f6b69d","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-SNAPSHOT.188d4f4.tgz","fileCount":2,"unpackedSize":2017,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd07PhCRA9TVsSAnZWagAAx+cQAJnEzla5yKW2kyysexya\nydaU2uWyGoz/v4Rxn3+w+yq3UrbDuOcYQl5Xaqe5RjbhSvq3AXtr1NxcuDJU\np0dVPoIsnYm8BCa7+wWkc9S4NL50es0EaUK/oKiKua81AW1OkHt3rxgANZTi\nyG6p9i2Cn0pC1vPTD8jOme3rkC0YU1h7fUNXkorSEJFEV0UxbzTc6+hGchfq\nATXEL60XeAbD7EY25aZt1Ig9CcjB/naYfXfkkOyzMPdU1Ljyk2t5Vt0cIu3s\nod1mCsZnUpi4oc3wMHJ7CpjvZvH6kQpGU4pOaJxAbmDFwE2RXJyIyEBbQmr+\nB3XHmJxWvHgi1H/KkSxZ061vZCNF5XUxYYZXrUpdwTdFGBjZWVSVEiDyESW7\n9Gw6Prd9Bleti+s1PI/y3tC4waO/Mm9mVKi92iOu7B3MmmggC5i0Yvmsptbo\n29ssfL/l8UV5JXumNZ3DG9CtNKOPT7oXCGDUpsyvoaeUjTFdHsSxYgJHjaen\nHMOXFWlXU+QJpEzyjBNM/tiFc+mCi08avwecpcsttfbHsDvCk+fD/7mmTsxE\nv/ywItv6NBW72HIt1jsv81SqEg8D4FO8/XQs1W0OhSJvbgrNlqWCG+zHO2Ls\nC7mdgdNV/yNgvL3wB0CLOPWeBUm0RspxWuihUDMT0VdH7aphlNF/j2GN74OE\nLSIC\r\n=nPiU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDYD78IGbFt65IizfZFzmLZioLXGgqWjhSynEBq2P50VQIhAOApX6wjeli2nB1Oy3GNN+rYpOgyejYMA8GQNdpueKYW"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-SNAPSHOT.188d4f4_1574155232935_0.8958136474219911"},"_hasShrinkwrap":false},"0.0.0-dev.f5a3a0b":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.f5a3a0b","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"f5a3a0b476895c7089b592ae76753c23d2e6264e","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.f5a3a0b","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-H6+fT0TQ5fpVhkyXeU6DwgAcsUYH+UaLnMD9D2jVdsd2qcWEfP8gMXkpUuovPN+j8NazGXgHtcPVEqDCgTSBcA==","shasum":"c0ef9b47bb55c0a13abc709603ba9e969f9b127f","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.f5a3a0b.tgz","fileCount":2,"unpackedSize":1898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1FmqCRA9TVsSAnZWagAAz4UP/Rwg5T/IxUxCOSL2YDNq\nAc+8Dai0tCbQNN123zJp68wzJMOEp6IxBPLkfzLMbggMulOBc2f1w9+ViOUC\nK4PxxazW4CE8ye0QFl8E5+4pdU0qYkcjloWrE+64VRX6rgNaIIDLJ6Ce3EKF\nOjSrbeCo7JnRXHeC40P9X1pjhDaCVm9I1vOYs4gZszgg4k8izhsGgk3fGzig\npTZRvo2lHoDrz73R+wnS8Or163r86R4lEdu04D+rCZnajC96gsPoy8GF4Kfx\nQbhvaTFEM48tNh9FO/J1uZzjWa0r3Od2Qu3voPkAwMBPIsrhupQYrviweEIu\nOUr7XcJjYOxSP7u2LGpXFvGuQdK3M95Gc8QyQK3o2sjbDtAZutNB9g5ZCYiR\nkTFrElClHr2JFVI7lqArengyAiZPLve3is6BqlZ5v3VoG9UP/hCiV4up51Kn\nQfFxmGYxA7DuEQtx1W4/PUR5wxGCU+k1sSzW6H55MlXl/Hd8bVjdIKgO0uVq\napOPRlV6w+u7MWCI4HwDj20akjQ5W1olB56lfoJO+EFWTY5XmoZr/DXcLDEu\n532Z4cGP4pwBaAMzAjx0ClbBHDWUOx4dQa4/v5AZp35UDM4uThvdW6qKVhYz\nbO3mG21PGTbnclKKa5Xw+/HFaJPqCRS8bFnovmTZdj9C9FLinLSzMzaWSyPd\n08+4\r\n=1b/X\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEa3d5xzZL46GEFTOjOKbGGFF2yp9swaKyaCZ6zL0NqIAiEA9ROY+bGnXvnhDh+5aPFWZCCb8HnJJ9tzKT7oMmx6PuE="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.f5a3a0b_1574197674290_0.2503987470951161"},"_hasShrinkwrap":false},"0.0.0-dev.b3824a0":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.b3824a0","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"b3824a0e8d2b54cd48dd72bdcf133d1e6fc8f949","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.b3824a0","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-82ShbECQ9Ct1tn/pBacE1e8CMmSZgO0BGh5uDpxoqWP4zL6tOHIEyznD+gJaJuhR6p+C20b/jdD1Q6m68SdeQw==","shasum":"4c0faae47b8ecd59896bf49c9e4f33e498bce86f","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.b3824a0.tgz","fileCount":2,"unpackedSize":1898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1FovCRA9TVsSAnZWagAAmF0QAJ1X2AM2eH075IlpsBvx\nvulgVZaP8r04MrMwiVvt8sbhQPbsEICS9wrQDZJFWNC3VbWOQ7pVg2clq2JJ\nxWNnalBkuvKO+KaFO3gaPZnetMAF7u9hyhc5/aIAhbldCbVy7lqLoDWw6LXw\nAnJrakpLT5WPs2YV4/Yrc/Ox10L3KGtlRowq4kMSYfUVXerBYnkeqvtCUXGg\nbVLosiKw9mkBP5P6ELcR43st/HGn2QBbmodPtDsN9RiCqHVs05CpRzfcBOxW\nJBSXA0UPryu0qHnzlJMykVEcA/GPP2+MTGQWo1OihotbukmRoR3ItHydSni8\niHY7+3kLUtk2KAYA9taDjJwNjvY3/GWBu8AcZ5DPoW2feV49160Vtz+Ox4kp\nawN+3KkmYC+8QnnqBehKrYImK8TLnubZGPub8bEIs7aGKj002y3eP5HHb330\n8Kbg8LcigTXiPNbgIecTr2zGQC4YmCltOTXKit819NyuqQRA7eSPLqBjAhHg\nLJRjxIgl/IOD+70gVahA3THKJ/kW2U47lTlYOH1G4Ut/XrrOiaanuRj1hhVg\nzZPZcR7Tv2JxQuWf4MZLA+ii8LCaDTlkbHq2NURlhf5b1tyJeXvP275mP+vf\nTLowhTs4QS5bB1LcPfvAXfya10wyVCkzLU7VAIuHUhJBSHErUe+EyDVMggir\nb64S\r\n=sfWd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDn4UXkw+/kZgi5O87R5vxLk/2LqX65oteX7jiflME8XQIhAKvhTHFOqRry2vMeo/vrV/d1Ghp88uf8lckwIrh8oT/D"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.b3824a0_1574197807055_0.5276162910819353"},"_hasShrinkwrap":false},"0.0.0-dev.ff764a0":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.ff764a0","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"ff764a06464ca8e8f93538fe503f6c2981b1287f","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.ff764a0","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-VU6stcf8cC7q5WRZzyR2hLdbp7dh5keKexLBqxGOKZlX6iCd1oIJEw+0xtCq7Ww44LwIj5DzYvnXRl7cSs+KDw==","shasum":"c87335a79e53c6fab00690207124a2271761cb7a","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.ff764a0.tgz","fileCount":2,"unpackedSize":1898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1Y6BCRA9TVsSAnZWagAAJBkP/1PATgPpvFoQ8/a81lmT\nY5F7emgtHEmYDKGDhW9vYJGOjR35fG7WtgiRLpYDWPqlOi4yuOlSB52EZLd6\nZfgPoYV5Vf0lI68ogXbrECHQv0KrLtN2DWcQEeATU+k9PRiWGUCYoA6Cipez\nwzT+BuhzWiqMABqqZPTgrUiailtHOtv3XX5DPT+JgOeIpsROxSMHqzqd//qu\na7AcIBvK3RUReMxlymLmFn3CpIZzb6kWtBgZLpErlHCzZRklYnZmri+/as9H\nXX1knQvTrePotxQ5N/LKEOQOK+7+YmboW0VPJs2tmBUkQmVuuLpkcL+0J2Va\nlKqU0guTtNnFosBm64Ow33EhPHx3ySAg4tO8U9IzlyHVHKOuPLNJ+0Q9+x7L\n7F4f9P2uOu1XIUuEq7kCCZcpMR3No9T8zOLwiM8IFqmpRYOMo90fMrdOrUS4\nI/D6501i2QnlpwQTzTdYCKzRjNdf6d8jsZPZMlc5Sk20Zx3fLIEWC0e70zC1\nj/RdzwURZUi8pPjjBeKiqau0TQDzlqgjgFMCiZam3b1WBI2zE8ejqgsVEYhg\n5bCBcC5i4EHyqzKTB0HdL9lyXDu4hWTw6HOojtSMhtEhB+dsAWO0z6OiW0oo\nNNpGs7R8+AXwNz5baeV6ee1mhqqrFcHznW7mhuLOQYr63TWb7LvUa9la2NdX\nlqzW\r\n=sHgS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDAe78YARguuY7gqVUxsGK2SIIMgnEItVXAnRFyAOB15AiB0WXwvMF2pYbop8dsfZ6LWk3Dp8PmN+Q/ZyDS7/pQv4w=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.ff764a0_1574276736587_0.9503990072303852"},"_hasShrinkwrap":false},"0.0.0-dev.d380523":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.d380523","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"d38052353b562a5d8556da787475e4930d39cf4d","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.d380523","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-CZjblO1Lvz2rk7xXOMdubvc6iXsjBrx3Q5wkd8hIvUXJjkMSef3Unl57trAjK8bvCUZYH4h+PVSryF34lUDq1g==","shasum":"59bdf5370304a40d180d105c4a7e09a310537025","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.d380523.tgz","fileCount":2,"unpackedSize":1898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1Y+6CRA9TVsSAnZWagAAuUQP/RNaA7+XgY0+uMhUTjRM\nnrU2fV0ogxRc6Uwh7VjT3jN5RpwG/IuCHDxaN0beG5aUy4MA95THmXQkqEiM\nm3Wr6d1mr/jM5em/sJolWOU0CnmS/Aq81RxL5WOb2ykNFEBQ2R3Hl3pDTKuD\nWdg6DXD9za4N0Sy88bNxuIE4vbgxV/4dQDqx8jasVk826qDqNMl6iMKCyqJz\npqIGo5fmWAW4tQCCJFSYGU0rxTDeyxVwp2in9C9XHR/8ynCeNxqQsUuGzSjC\nMGFOv9VUNSNJym9Xg9rhXp7cY+RJ9VQGZMKmKi1/Xbi1sgOERGyRccXvU4Jj\nh4zqigWibjGd0OHht+NAHIjriXaK7qbPxmLhvQjtXfsLk5wHl0jgexgGwu6Y\n7ZuUzXTFvFI2BXsj8SduNAHN4TEahrP/h4zMI1HQCV8D0xmyLfIaYFMwzTKf\n23HJ4xUf4j6Gs1XaAPTgmOihBlpb4hssh+FLPah8l62X344Jlbv7LFD1UgUl\nqzwGQEW1iyqi5cR1diSWXpHKKC/IrJ5Vf+vBFsL/+e8lMNvsi+6RiAPVGd7E\n9E2un2rEjRwsGWqeaqO3CZJq8lfR0qW1VZWr9QCq52dRkFdLFWgXBguX4YMA\noLSQMwunfFYb9H2oH9M42s8nwazG+1cgCFrmVWbHcFD1uF4kQoaolgN3v4aE\nNF6E\r\n=Rom2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDApCMVdTRnPqt4O1viOUxGwr6hJ1PejWZWwOqp/UJV0AiEA25wJrvN78I58nW74zqo6hyVI4p/Uy+deHlY9UXLI2nU="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.d380523_1574277049891_0.602706496683785"},"_hasShrinkwrap":false},"0.0.0-dev.c0370c6":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.c0370c6","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"c0370c6b9bbe8d348017cf325ea3cc086b13ec62","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.c0370c6","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-hluuGotZrMUTxvZxFSYUUQtfJZ07+1SfDWOmPrrTvilEEc0PwJqSAM8ppwOFYaJVcc9GM4j4ndWcFGe8Oo+drg==","shasum":"2b7177c2ecc9fbc3332291695ffc9daf24c3bb30","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.c0370c6.tgz","fileCount":2,"unpackedSize":1898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1aoXCRA9TVsSAnZWagAAtUwP/jdHQE0mAOWKcERB/vZ/\nmgxSQ5ldrm1Tic30lCezjJsMbnCv9Yro2Rj6O5TUL1cU6SUoRszVe/pg4aHu\nYDOhTleBOB7LboBP9eQXH825k95DRXMNeB3u7UxVj7RL1MNtGCXRXYA7kgeW\nD9mtuNjkGi8M21X97EBVevv+dQEW5bI5Ae9JzewHD3tUPlxWdTRPKb7TAq25\nCUpPwRoi9e4TsvvkCsOdbxI40Ga7dqJWMi6goEVLRzKupzF2b4gvBITZZ6uG\no0rTk5z/UBEnTD9KXcbNKhqqkpjw7u4jpm/QVLlkw8qsnEaRDr4q1LIceU4a\nbEokxY1hW3ZD5+SEiBBf22ScxYJGbwvZ42cPKcnBXrIZCmkGMAsZp0JRmgnp\nQ646sY0MgTwqsNJ4bb7MDMzEB39BghDMTbGajWJ9jsrPWTvyyvTQAmkKA1p2\nyMDoXAZuMu8QV7MB+cgxmqa1fajMoSXnSMg3ydRVtH33I4WoN8QK6L492V4H\nvB19pL5aPeMSprFyy8eizJqVSAJw9J26VB9FX6Kum9qF9lz8qx2EXmkNK+8s\nZW5d7cSU3hmpVUf+SqcTmyAk/1pu+DpiGJmWCQL9vJM5I1eDExrdPPDv49u+\nXwDS0LpA5EWp8Bg6/Cc7Odsmplaj+b6aW5bSgTaNBSE8btm8V5lr41qkq9yG\noyhs\r\n=f2Se\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCwfEiVqp6d7hTmadWvnBbQBTcM3MhedtuGLGOBFljHRAIgYDFsuKboCsECFYUHWj1wkZ1q+fAM3pAqMuABw1a0ei4="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.c0370c6_1574283799084_0.05227598677744716"},"_hasShrinkwrap":false},"0.0.0-dev.b07b4d1":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.b07b4d1","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"b07b4d1f5876945aee641002783ed828304044fe","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.b07b4d1","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-e1Bcygp79uVUfbYa6miDPBtCFPooVIwy6t17N64iLzUPi4qVNrYFrh+AfoD1Ld8wzDmKoAWfp9hZ9JxRXZBWZg==","shasum":"ab20b00dcbeac967e1d1909ac3924801ca8858e6","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.b07b4d1.tgz","fileCount":2,"unpackedSize":1898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1gSOCRA9TVsSAnZWagAAR3AP/3cX8DG5ygzf2n0n4zhs\nAucqLUKjqoDGF8BTY8m4kso8xRyFZcVkfpe6OTQE5+VW1veSVOgt6qZXyesL\nyihgQqJrm5RyAn1LohIP49AJ/Bc87N86CP+fscB44Hz8jNXELDInOvMYqC3U\nPWraCZt94CmffROjyovkl6pcSGaf8ZQ9g7f9LdL7W9mRwaDWL8RuEbEnn5E1\npDZy2lXTSNGZPwDr5LYGlDU1dpoGO9QFO6/AgSJQI0KzO07NlvW1SvrfwndK\n8q6MuQ6iAxD2eHh38/yh1fWmtAXZSaEUm2zgEPZUACEGS6MF+zYubbGZFK9r\n4Vq5IP6sB5plOPKOcMkJ7ADSX0DY7eX0/KR2kpd43/l51ttcMir1xKhgkdfb\nq75gV6tCumfcxtGkGYx+jhvmNotTshG0sWDB7n6WR0e32VRBv719DO6nrZ2+\n7Q6zOWWuyG4cLwgyaanut78/PRJVF528umED6HqmDpCtZ3cX6Vzv0b7zXmLX\nxH1YWIYmIABWlOFxX9IxQv7yqkDr89SI5BZpsUyJnbBoqf6kpShNfH+R+PCB\npGJNZ47TmUWeWsoCgps4D5uKM2Vq8zycV/m9PajChTV8wnww4ook03Es6h/A\nIyxooRglPdXbf0aMPkCUuv+fH+gkoNEXZWDQZ4X4j0gJfl5SsytgBCIo1o4u\noL1i\r\n=vO8q\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC2b24hKJzrCgIWXBFsrPjt6mXe8loF7rskTphs1f1eJAiEA6o/p0LfNVPnksxkPlHuTuTHfS7MVE6ofS/iHOGjD5ow="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.b07b4d1_1574306957624_0.928666061931378"},"_hasShrinkwrap":false},"0.0.0-dev.3ba2832":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.3ba2832","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"3ba2832ce3c807757cacd7247da7e883a8ed4c02","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.3ba2832","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-0X3D4wdYyRcpORrDkAzFTMYQsT3StoM4UEUwJJpyclQrw+zIceGWnrrliH9kEC1lRJaYjatQu5Nqhm+kLSKPKg==","shasum":"0ad82246fc66fcbe2a81de00278c900d09beff51","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.3ba2832.tgz","fileCount":2,"unpackedSize":1898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1gntCRA9TVsSAnZWagAA8JYP/iswbfjDIrex/O3Ru9iD\nKzoKxnKmwkU8K5XTKD0m3cP3ymA+kCmUVaF/2VOEFGsJg7v1Zr04A2l/0Kb7\nZIMSduz4ZGpM9E5tKoi6wxxxKIeOuhSEVmO+q9iXKEO314Fvl9I82k/p1hPI\nR+f/mV3HxopkD5ohsy1ek6315hf8jlgHLekBnOMWRHGCrpaog50gAbgh/5L8\nu8mEsoR7i1aqNJO/KYFbzMqenlpfEGazFJbSyFI99avE3nD5gTdmmq1alCsD\nXDcHwLpu6Z0zslNSt6AQsk2AZXVl3wrEZThtpQjnkVXviSJ+6IQDUgZdvRZH\ntRpoZ4fsAD2aTg7uYEoeC94b4t1C5h7WmYbB9BVSSFwWANkO/h3kP4WL+6L7\np72SpLv1MsRClwRB9ejAjKxki49TcNrI8GX0yE5AJj91AI7xH4FFv6iNUp5o\nIVXx7CDwHRPP4+IUuGDceRI8Az2prF2ph3c831NYE1g8saRes1O4C8zZRm8v\ncsQJIFmD2hw9V4gBqOsBsh3RcPliw7jByLRh0ltLsDS03L5ctFQHcvhEiQdU\nYfN3tOupqM29F4wC6F/0RNyJ3Y9wDvt8vR3Pf0H1mA6/qPSvhThtG1wr6kZ7\n9GGCiJ5w0eRpH/UP0dkgc4qLRqX8UL6eu2YNE/NkgokDe4sD0pXP2DD7Ln/G\nWqLh\r\n=D/5F\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIANLMkUEzrrnACAk7Eq9em6m8njbNcMnBQD9xcAu+Pz+AiAbxz3ojkAW1zPTb0PtPXB4OVMOdsEvXTQKxzJx9Vx4og=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.3ba2832_1574308333326_0.35951386511175665"},"_hasShrinkwrap":false},"0.0.0-dev.8b42303":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.8b42303","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"8b4230367127bca5cf9883a0c43ccf15b14ac9a5","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.8b42303","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-gJTVfMo575oX2q6tGZyNaNW/vAt8SDrOiccFXNaAW0LE2UtdRoDtqFAM8eO+0tyK5hoxNCebhOHaIzIO7P+JRQ==","shasum":"a68da8320687d29b7c0aa2dee7a6a4ab1d19b6a3","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.8b42303.tgz","fileCount":2,"unpackedSize":1898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1grACRA9TVsSAnZWagAACaoP/3JWpsW+JMpILjyM97Kh\nDHm2uSrBqS7t0GLX263gn1Md66+AQVQNocPEBw+dpE29y/rVBacMnyPpZPcf\nvT2cSHz7fqqm8r8WRhetzboSTkvo9XcA+3WFVkfyqjxR8/GOc6CVRPm6OUcx\nh5mvlL6JlGN5n+qrV+uK2X72f8yzXfSUjC5vC858ZL2ZVEP8q97fTYnfOppd\n0eoU/qRPYBNAnMYRKIk1/AcN/x7R/ZJ6IkzdPSbdWo5wVoEvAKjoWMztP6Os\nmultfRwLDmy85JFS8tBBdPWfdYrCuQWLL4sYzryapm87LX/AtrP+NOv0rvgu\nAflbuXKoj9qMUfCUcBa4Ty0FDSVssSrf9vm3v6L6sFtQzF37JutLkyXvT04s\n8XsUu3t2/f3CM6TFXiZMfirQY3QxCFZPQAkOAWuF3irjPrI+r+x1BLaUu0dW\nkye9GeSF2q9dAGH+LF4zg6urWdzFyQrKhBFIC5rLnxVd8PMyhk8KCuuhJpGs\nLrQNC/FLH7E7FM6vMw3IQ9n9pUF0xEDhx5ApQCTCFnS1IV7LerzTl6AQj3oM\n30bx83kR6smy3VOjhtIHYLz7z9AvVxaNYSTnzBwhvzpoFenArnW3tmwg4Zf1\nqTvbxNNjlcCatvwDi0Kahmwr6dWVr53Ch89wkxIXSyWAdR3HulELa49XzrP9\n4aNZ\r\n=myW2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCuHspz8bvqm4BcO+VYn0rPcfimZNpTe5yyiPkWjvBtfwIgH+yCI2koqwzEhv1o6jGzD0a53ua1Hw9mOLgXmG55JpU="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.8b42303_1574308544102_0.3345002625140485"},"_hasShrinkwrap":false},"0.0.0-dev.5e6d5d3":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.5e6d5d3","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"5e6d5d3af8595d13f80925428cffe8fa6b997365","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.5e6d5d3","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-SwGwzLYf1cbAqM3vFlCmFOZ0ttr6ypZ86v+/bNFCjbD71m2GksKPsLO9NZYj2BVsFsf8+IpaPE2xxVDI6aC+8g==","shasum":"d83ec9fbc51524bbe6df0e543d72d66f9c448b7e","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.5e6d5d3.tgz","fileCount":2,"unpackedSize":1898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1gskCRA9TVsSAnZWagAANcIP/j6zgRv9Lkkadr8OUqnY\nvKpYiwj7g61PjY7Mtcevo40lesW8eRClxH8dN9udobkQLn4EKUrPDwioAuR7\nPS5NSg6+Wi5bbaHgeofsoUZDVvTntDvVWfT2rksG/ubknu/2ddhVeN8SUkte\n2hjZkcUinko6zaE6Wl20SRB2xFDQ43PktXqzY9S0utrIJB6Ph33xVzDKZ+bM\necijkZhURxOsC8YxYmAWoOcECU4R93WC2xddcZUowiS0ZRx7loihdS+Iq24f\nM75Mw5KaS5ODDS16Mvimkg2M9zSLgqE5Gs1cxTs6kq7P/TN8aGYb4PuebX3F\nxWoDcT37/mybjR1EYxyL7hEXqfojHc2iB6SMF8kL55MTDStdmyKvNxT2IDAB\nl7b0HLWfV5exrXsEZkvvcJCb1PQCfQeKh3R9SA9st2DHPPjCTMEPLnM1hZKC\nVruBx7YkjeWgUnHdi0F7BH9u9Fl7TbXbmV/yuR/N/OOBCFQbPb2973PeYtUw\nQWTfUfH3B0wzwpayJYoKo+xFCt6rbIi4bcWk72BoBAYaGwFOnlf+XFevk3pG\n6HRFO3nEqmLirkw6hSLzsipSe0QCEM3fTAmQLkAARi8wtmxHKqc/8F7IeSkx\nrOQvoxmA4snql5HmZ/fQyfm66iZWhxGE3BZ43bOmceabc3uGrSuA7oq3c9oa\nQpf3\r\n=e1RS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDqJCGej+Tdt5kUSWqK7UpBbfReyp1i3tTCyvtyJdE81AiBOoIlZV5o3tWly2Cy93Lp50c9g505m/ogn2BxI477ERA=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.5e6d5d3_1574308643666_0.5962553323399302"},"_hasShrinkwrap":false},"0.0.0-dev.cf7cb1d":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.cf7cb1d","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"cf7cb1de093acd99a07a767b47b74397c1279b86","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.cf7cb1d","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-tWFn9Xezxc+H8PwSrK+6HZmu/aOXrZ6oXx3AdSoRq0l2D8SkW71rRofCqs93S+C5uxwfJiFGeBEpVjwAUw9ylA==","shasum":"cfebb5b2867ca4a75f5be41377cbf59d5ed2d9fb","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.cf7cb1d.tgz","fileCount":2,"unpackedSize":1898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1guDCRA9TVsSAnZWagAAILUP/3nmHn2nXqkQcuTflGNv\nDk5sWpcE2YhQ9XuEQCEEHenaB1nRN/TZCuL0kqhJ1sd52eyLz0S5OadCNB41\nzfivffuqtaJMvm4q//v80AhXHp/tZ0C5GmoOikImo45SV8U70MWPAuPFbG94\nkiVDQVjwn6gRFzVy0YFHNfg9ZGPGcM6tB+Kb1T8rya7fWlRrIltuSQ3s5yGN\nlCic2N+s6BD07RrizEnip3Iu1ix7TCPAkM29wcCtHWKK0mfQP+BGJMH5hik3\nqODkW6Nta1FW1nhM79+KYvf+BnGpiV1f0B0teaZIgjoRlll+tagviTbKvydZ\n2EVNbiS0AXxuc/fqkiVovG2DNZJ79HQ+2VftlqM34Zaq7eyUU/L8WKfCOR0d\n0bBuHJsnaJPR1mIccqpwrZ4Q/EzaXqzB0MXQohc0ii5XqcelPSssvs77w8q3\nGvfXKbXX5e6FkEj5mLjQV5bjz7VresoQDnEtQKVA+UZ1+KeXDaopqunt8/VS\nH5Ha8viCemQBN3xQrlLlLpdYy9VMI4DaVXFIFXoZ+tt4cEVaLMuMODDfa5Zu\n3JN9AGE/Bwv9pmA7hVqS2vPVIV1WF2VZlY5GhgPjgUFgvFPbJk/SYlqCHvoB\nsT7OpWtN/7INUdvIY215JYuCRuHvhZaOTf2FrSkDaC9wz5+hVSE/PpsUZKHb\nnDnm\r\n=Gbdu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCLmviNWbJkBnIrFabx8k5AF1LXEcSZhp5kR/08BbRNaQIgdu4NW12OaQ7IyVS8fjJtJ35uFpXvEmhk3aEVHp2G3JM="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.cf7cb1d_1574308738849_0.9002721006238925"},"_hasShrinkwrap":false},"0.0.0-dev.ccea008":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.ccea008","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"ccea0080f711cb4b781abe44dd542a22e2717e93","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.ccea008","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-Lbbqwg95A+yS2cHlBzTr5Ac6iQ+psU+N6KE0/ocH3RsFyH+NMhYXHZVlsPzo25eCCIYPIpZnsdf5lJu5pdaxGQ==","shasum":"436f7f61c53205f1e3a59171e6e8118d6f1af9dc","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.ccea008.tgz","fileCount":2,"unpackedSize":1898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1g0nCRA9TVsSAnZWagAAskAP+wVkKnsirlJRjH7+++od\njrO5Me0hXAAdxGgcQxoJnJzUv6iy/BHaajk4lHrWTtP8IZp7u4o2i8ZsR9Td\nFXTU1N0GHws6h66FqpIYTJ14vAKawBb1rgTIa8vG8cKBV71lvNphI2LQxJpA\nW/ksBmteWFa1OGhz+odm285NZPsWuyvYw0twts6yHBKlUVGZpWNVrkZVe7gz\n3U5L22gCtSINU/H+D2q/ip8mbEttkrk+xdqaLfpPVbMZE1UjOnaOGCPR6TLh\nBMb2wmq6KdYDL9km0zrwDVQ986bP6ecjwhbRWSLJcCw7r0/egbRxG4fYMbGe\nL0FjEtFL3XjTzajC+phILAWK3tYXawfoJxjl6esR7MiA8bGWQLvbAHxz5joh\neR0mkituJD2ce2Q7BuI40nBdmq3XoZHOa0u+AfX5x1Z3iSljGpt+C19z+0Ia\ncYnNsqsUdiojyGbOTlxC1qIA9K1glhetA0RSSK6w7bwv6lKISxV0z4KmfNEC\nlZgixCLuyAn3k6ks8dAAfXTWVHps5cDZVgEGaO9v47/Q4IE6TMv3VwPw5hNq\nC9GMJfBJBrYgI1XCZiM5JIUt0Ei6thE0Bh3v9x60Ozt1GwPbgpkUOR5YZHXU\nuB62RN5mOhOCAq51R8/6uk0PUB1WZ+I49az1dBFP5avfkNSW4tsjBMiWP4Ch\nXnI2\r\n=xCug\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDKKtVR3Kf4IP36FECo9uVdWC66V67YJ+7ej8mjXIO6egIgDBKtrx/S4vdulHnbdAUkGgqK4b1RYVpQa7lu8hyjxCc="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.ccea008_1574309159372_0.8257682232722676"},"_hasShrinkwrap":false},"0.0.0-dev.25a611a":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.25a611a","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"25a611a0bc71643a6c606bb29a17ecf5cc7ad93e","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.25a611a","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-r0jHJYmdA79q03lX3bQuzcvhRkO3vHurnM/VAlU7ih8gmdJRsSBZs4JgKQEtR161n3x7iY9f1pfcwHyN3FbHaw==","shasum":"f4733708615ddf57cd16039e52d360f203b848ac","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.25a611a.tgz","fileCount":2,"unpackedSize":1898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1hbGCRA9TVsSAnZWagAASjYP/1uy62JReWP53Fwt9Fsm\ngLQ2nNv9ZDj6p7Va2usZjlIxXpVqRwTEshuV+EPpX1wMOUiocZCWtLnd9z4x\nxHDIMUsyyy7DUWzVDzNSIlg7tBKbQfFDmNMNeXQf1d70E7igGfrUotD1ZC4M\n08K7aGK5TfdtHqyzv+3CvdPTK7CMQOqZBMnC6y2Mshdw22MyeKiOIQ0E254m\n70ytS1HKEHBgKkW470ej8zucvcqofOWKcysSNGxVTdCpw2gNK9lnyMLTSJDL\nwXtDHQDG1bZkV0qzpu2kYgiKdn0TJso7Ec5Tcamouyx2ZnoSG8ItSVTLvqdd\nOboBcCUUmRRT1FfIQoFyUMFDUMbgjocmpYebxZ+zzPkGBVlmcjCMFIA64ku7\nGFXj6olbeqDQ/5kWOSVp3gx3cpnuvKidxwJQbGaQ8f+VAJFqK7O5nhZTarw7\ni7YLZ9GFHXJANgk1kjZjPg5hypWT8K8ZZNMmaLEpYY31XRzmBOSznDvaujGH\nPRZK8alDLFudMwGRyWEOb1Ic3qkZFQ1ZAAV/+Y80YN7TQjH6Q6nppZFf5Vkt\nunBovdqQ5naZPWSIkDuaA/mmGPvhjuBKVAKObOHFkdwmUYhihG+LdN31tQMl\nXd27HWsNHC2nQJUDDMwBPfyHwEqKwC8Y1qBhM/NaMM50yMjZUzGw4IAbOuwS\nLTUb\r\n=FGyA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDSgac57ObqHDHNTlOIzp2kBxUoQNVYdbOStKhWxZsnxgIhAN/2WGAUyLe3ztUJF363UXojbJW49lOZjWDqY3MkD5Ne"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.25a611a_1574311622032_0.24105795948758968"},"_hasShrinkwrap":false},"0.0.0-dev.6f75b16":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.6f75b16","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"6f75b16c3a585a148fa1a5aace71c2fc1a3175d8","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.6f75b16","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-vuorRr01LazSGnDrPDQjpJ7283H0sOvY4ntATOQ9stluu+0XWPvHfuuGCf4dgzMEfceC3tdwhJtNw2mHqerepA==","shasum":"614998b2a2bbaf195efcc16ff3c7aeb2021f4962","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.6f75b16.tgz","fileCount":2,"unpackedSize":1898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1ho3CRA9TVsSAnZWagAAodIP/26osrkcimDO/ZBoL1By\nv07WEzVQzhSJ6vaCqa3NxXvRcqD02UpcB4CZQIUUD+o87Fkb7s/r71Vf3Snz\noW8gGuwv4cOiOS+M9S70srIBK3WqGtoADD7PeWq5W5G3jXk+PZKBfQlhYKCU\nzryO9KLlkI4L2V5VdUd7vxiAbczL9wacYgeiyNPQjGg1jz2OpsFE0HG0lxls\nIM5C+UVMET1/D/hmmO9b3j67h498QZzl3HxYGx+Cz+GU1Hu5AwDGnV9q5Cos\nixMtUh1CX4yRu1yr8VCysrf6OeJA262TTL2HSQfiv7TbIA0Qxt1hQi3NzJR2\n27bpI/aqUvpF9ddEhFcVQX9JY9XfPRk84GqfwotCqv7SXVMyGyEx7wldDXIu\nioiF5bsFdgMXHbLYqaL+zhAPDq5vd3aVJAhEl+5vZhLFsa4lvp0KWHE5772t\ntJq6AhapqhVRiG4jWHcutFL/cBZcmd4X4o1Dvwhkw+beUWmjvbq8+WI0f1NA\ne8N5SAGG2ib1PBc0THLrNx4sNLbZpEZFvzYlEP5K7iVS6WVH7SmgZgg4vzWq\nd4MfCGCV9tEp/KyTgPK6V3CMfan/NPr8D+0aiDXZEt6SmhVOvyrT3tyolHJJ\nG6Fh67tr7JWf7eJhtPs16OnVcNBI014HQTo8Vf3cwFGNDj4x9htYnmBb+0bA\nluT9\r\n=7FIU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQClFoov/phqdiPKKbv1Cr92oT7cP/YD7jQVVQfqmv6hugIgagyCvOHdj2E7gkTZd42IKs1FBf7SybDlu2QFN1ENmuw="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.6f75b16_1574312503115_0.26537882230483234"},"_hasShrinkwrap":false},"0.0.0-dev.e24b492":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.e24b492","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"e24b492f5854fe07fb32f01da592350c322b4758","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.e24b492","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-ORxMTbXZeuNcqsxKGlxhu1sG2gS74WoGsAMBRkMoeqt5jJPn9yiljnEvk14EBeXQb8WWNFCg9Wg+gFFN6lvqWg==","shasum":"b71897f694f1cf8436f4f7fdba21e34a37d8180a","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.e24b492.tgz","fileCount":2,"unpackedSize":1898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1htOCRA9TVsSAnZWagAAZKgP/0LCtXcM12kFvSdd2/Jb\nzqGaor5bCgQ8fWPpdr+j+DyElANn2hoVDD3VxS5t/2+QkE2/ei26uxwyNaLg\ntHsDRMwlTv24varOIpPVGkeITPwvfA9Dghdd9Gi0IxUkRoTUg0BYFgIyp4HP\n3EgXZvQ6zSQgMa+ucCNMBya6Dm3x65bfqM0CDL8sJIevRkkUVQodkNgKzxke\nS3KpIteUvfbc3MjuXLC+dJ2HP/fgxUDen9obq75RwlOy7LiFh5Swak9jkWC3\nLOszaYHxdwfSgCOqkoZ+rEe0jhrhdO9NDJRsDMCAf8TgmGPk1WCv04IGyyhX\n0eWx3wQHcEsMp8SQNxr6jgvfN8/lHUa/RQC7p/hkoDWz/gP95s5r327R4Kb7\nkbfFl882EmS5y+CIsKNPVHAmVuwnrJVtnRzrVTKt6ibBlrfiz0WjrXmtM4Fc\n6oMZ9YsPZEWI7KGKkTRBaFjyD5IwXd/HekBOJT2R38cMO1DXan1FMfjwZ/if\nDCks3jhOVyxTFnGB6IIxcBxKubqO2UUhra9fs66N/NrYD2aLitZikW1k6HTl\nTVtTuSTA+DslDNUKMlY3d9iTBbJ3NvjJfPkvcrtEoc2UdrTTIYyoSsFwtBW6\nFFtTk4f0njbCECTe4DaH7wiX3mEvHblpf8XgLaekPYKIYulYPWzOH23yTI2Q\nhOcu\r\n=jMjv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDzaa+SoVy2VSmsAWm9bKVA7d8G4W6KBK02jhz+DZhPIgIhAIXj0yB7moDWa2ps2bw3BUvIqkBf2eeGrf9KZpjPKzdf"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.e24b492_1574312781660_0.08443774725433917"},"_hasShrinkwrap":false},"0.0.0-dev.65353ea":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.65353ea","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"65353eafc2b971bf978c472717d3d4418a162b00","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.65353ea","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-j6DbWfMfLYuKaCaNzjJDY4MMxuf3xKBLhKgC+qRBoNL8rB0+A6D9FMe2eie39PDLqCJeuNbReZVI6FaG9laOWQ==","shasum":"a94944bee00a562fc096910d8fffc239c8476340","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.65353ea.tgz","fileCount":2,"unpackedSize":1898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1hufCRA9TVsSAnZWagAA0RQP/3T2HJBiDsFnQkRTGLuv\n4SNAUetK1pvQrQNZkzuTNxXFQo4COv1aZwE0PrLB1pETTcFaMy0zAD4MEGrw\nsmm4FIorHBzsLR+mHunO5dvsn95kuREsVhDd9pkATvR/J/n3dPnjAFol7GVl\nKXDtjMQ7wbo+n2OUfsNVGh/ScqlH/XQ7mRsILZ85YiIeDxQOVhJ+qWVbdlQ0\nRjl5z1YHi2TRb/JT/r+CGMbGFxPek+rtRAe2KBITgrJbEpRrYhM6OIqzxUPp\nzTjyzGms78bdUF6rz0I4jdrvjlarpB+tuADyiKDm/vusVC6S8/JlTlLRR+j/\n1ZHWrTUrxnT78oqZFcg0cq7wbdd0KU+phTRacVVLm1sz7hpvRjD4e+yNE6+q\nuurbjvusxKyAnG3acy4NHcTM6WwDI0X6eSsPssAu1Mtm+N4ZXkCgyYcrZ0Bd\n7PZ16uSUzYkV5841GLvn2Qaa6GeBBStwUADMUD9YmrVREwqcdEuyxepUQyYK\nqmcXo/gFiKV81+pCJf9n++/9HiOSK8tT+0urd+ffjdRRsdLps2D/J/+GeagG\nZkjTAIHn/9LB1RO7rsi1MrIPi3b75AaNMbZDAxCC999nKjECIeOcLpgecPzG\n5nuPHX1psDOZresxpJofvxFpsTTnPflBI9APl1nC5pFXaWotrUvWx/dQFlST\nTU+0\r\n=rlB8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGA+ER4L+evQ+2gyqPTKYss+vqhuTt24duBLTnvPVZo/AiEAufQuhR9NdvBDbDQVXlnh+cWzG8NaqHg7bKAbvQrK9eo="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.65353ea_1574312863202_0.7260945156542986"},"_hasShrinkwrap":false},"0.0.0-dev.66fc2fa":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.66fc2fa","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/body-parser":"^1.17.0","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"66fc2fa0ab81c150fca6791e8607c8847c39a47b","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.66fc2fa","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-IzbYJ+XXBlQoGJV+ChgAG3AdZiWh7WArTcTkq7FKpjFrY5Xj9CSwZXaOiwD/ae4dykdwPPrApUhRRYAkrYd0ew==","shasum":"c8d08bde2c21c4794b8843bd49f6bd053c873ff6","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.66fc2fa.tgz","fileCount":2,"unpackedSize":1898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1hyiCRA9TVsSAnZWagAAM3gP/0eTVcQBSeQK+Ndd/GQP\nWYQpVHbZRPxq6etv4cylNZ0IgF3/BHjxqJPhNIaw5GCWSvoQ67hxSQi2zX43\nNZtgu6GDxJE01xSaAhuzVTEHbhDplwrLKGDFXOJDWZTYVbt0zGUuwo6fMbtE\nVmYkkAQCu31R2obkXaBiKNs/H5ti2lBWx97OiU5O9I9DLhCYq1ACnBJ7f9u7\nnfDlhUwTDUdpOeyJUqAjJ6ZuvV7/IZ7sS/3wRPdFKsxv+V0hIAkkw8+RYGGg\nraku2xU/jydwv+gdER1/y5PrS2/tQG4ERxwtnEPiOjgIsJiJTmtITJSzoerS\nc9b41rD+TPWJUmRPLonRwjzp1MD3vb/N7nWvV25NEOj5joGlpO3ItbkiUTED\nvQEHjG0t5MqgchgyuLKtFnujz4M/fZRKztLlUm5mTP2mmQOcVpA+TdlyM/aX\nvoccfogesQG0PzuzzrvBoLtjHX34OgK9WlCtNnceH6tryEuclf8NTWFB0sYM\nB5Sce65ucymSArdvPkUxI+eC7C0zv6+5qPw6bTk/i61ZsMY3ea7/xPuKWHlx\ntg69xKn4YiqB1QEEi/EjGYNrQCBnyB0XilCi+RgdGTxCjTZrvXH06p56atcJ\n4YdKWCi2ZHmIJ2QFVjDc1J9hRghGcCe2N4lIDesVGboIGd05PRbCmfPF2OFi\nOjs0\r\n=0CvH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCtZm4XYyl7iaKr+Xm1u6AGIdm0o9JZEd0pyEkLYaaMBwIhAJHBUpZngra/JXoK9NQtFeyGQTsdUt33pjA3LpnTj1GE"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.66fc2fa_1574313121720_0.8519634643999265"},"_hasShrinkwrap":false},"0.0.0-dev.78b0a0a":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.78b0a0a","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"78b0a0a67a1a6d366d55de19f0a9fe604a8e7db0","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.78b0a0a","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-vTjO0u1+Gap9zw2Wo2lP9W2/ObqWWZ1m8h8MlANzqbRjVbAOQfuOad8J9qXFECQnOw+oVVLR7ltAVki9aZKtsA==","shasum":"29ff2311d90e3dd8cc7419fb14b09dc1529c67d9","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.78b0a0a.tgz","fileCount":2,"unpackedSize":1861,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1h3MCRA9TVsSAnZWagAAzeAP/igGicr0iWNN8LEH7Icx\nqqAT5SnbPCpZZNUMQ7RSKWKadAjCn39lhUhGo/6oQU6QkDc9QHlWYXPo1wPt\nYeCiWmbb2xBK5Hl/HgMNntB/m/6j6sYlwoQgWqIWlbWJ+STGiZA38uIi1Re0\ntw0DHaSzLgmscgA01i0R9jPoDCTJNLREdBBpX+3uhDlWRV0qrYyVFKx3blsT\niZGzonxc0Z6npsDtsQ1AGGyPXwyc9e8lmlbprArbMhLs8LtCH/Ga5sV+tELN\n9ZVJbeDhjyx1HHsNVhvbvi/4zaaRwxOMjxJLiQ6N0ugnC8Ly4sLj6WHnb0Ig\nAMHdJ6IAfcuwgjk2XDZUJDAzMjj5Qx2qV7VpsPUnpvG3tkK/qioOSLqhdofO\nKK1jxKKmJte8+R4HjmjXc17UIl8M9cg4hyDeKWL8no0W2LD+aNbv8bq6R+Ne\nU4LvU/P6Etx7vtyhdvnL/Y95gY8EEjxlECpYCzaHz6pbXRP/3iAXj+RUmwwu\nrSJA0ug/gMoVSrw31ecPhuIgp4PGPNzas2+WPEAZW5Y9EeHlpwKUtb75N//s\n5adn8YIcMjc2MnC9XyRQw2v8OcNqcVX173lnq6lZsu0Wdwo1ZhHyWtIjzS4o\n2DssQ6k+Lo5SLiikkviD8UCn4mvEw4qFmY8VPr7dBnvzQgn8wwlUdhr9TQFd\n6LIG\r\n=q+af\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBe7pDVn8GODLCDJmOlQY5NGbjYwtbEUV9vlojf8bOTFAiEAnd1FC15k00eZkVxmRv9EYibm3XpSO1UG9jU5RfTkfiw="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.78b0a0a_1574313419847_0.009416238455643766"},"_hasShrinkwrap":false},"0.0.0-dev.01c2f6a":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.01c2f6a","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"01c2f6a8292b7eda20cff655861770463230dd95","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.01c2f6a","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-uCCj3a8cYCzU7wDuSm/IJ7B9fz3ra4YO+hARUnEqGGzjspfFaOZp+FhD5iPihnRLJrDpi34l5NX6uBpE2OQrqQ==","shasum":"e9db67a1f635202cdf60bd41df5acd5f656179be","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.01c2f6a.tgz","fileCount":2,"unpackedSize":1861,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1h5GCRA9TVsSAnZWagAAcB0P/1PAdNi+dRPqNlqU/D9i\n/IzSzXsJE0vUP4IcQtAubaQ/T0pwfz8+jk0lFtNQdjcTF4XsesYCythdtNNj\nk4DSYLf0Gd0ottqWgtqO5wxkzq78McfbRmeoKZyzfUTyzkJFziet3b3WtPJm\nSZfQd3Sj4lRkDMWitO+PkDgFj421dI7OaIn3rQ6kPlG5K4nuXWebWDM6Kaw5\nUlGYMYfc/2TQMFyRrmOoh1HYNrAKz0xNCju4V/y2vLfZGurU2OnHQ496qTd/\nlQMMddOUDIPyL6biePvR4YFRAJKVhVK/iAPP7FEJLG7qjo5A7NIMiH6ofvIb\nQ0gcqLKvJ54WhXgyGEXd+HQF1K7JWAiCAa24Tq1TVMtZkdgbTn/61j4J2zux\ne9eya8WdnAaH5dmoTg4I30zQ1XOAmRFNt6wrm/k8twYxfjOKeBP/hBjFI8Jz\nooM7rc7QPCdflQg7gY4Wa67YRdeUS6T1MF+J9KWdYqQGBd3M3KPYED6zV6t0\ns9hDaL1N39ayAMMuNT6RkZMreq/5CTfXYEMFa+14xVVrupKBbnH8UqJ5zCsH\nSMPlhvVahgOaFfXqndXcn55bZ929voZjr101tDuK+WM9GM3YutBh/8Rze8V8\nq4Q+MYcDzwPaOXI0DQeKLdIA5H+nLk6ZFPPXwOXvmEQ1i9KKdcmDKIyhKMJ7\nkJ8u\r\n=jPXS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCN/zSGMTPEdIw1uS2mQwF1pZPbi3lA25IgU3IhynZamwIhAOiAeaKPyz376CAMscTBzKNQio/tCyl/G3lyNgjjLfUx"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.01c2f6a_1574313541829_0.03809154452002139"},"_hasShrinkwrap":false},"0.0.0-dev.3250452":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.3250452","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"3250452dd546e6c06ce1dd5609bc09f4a251eb87","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.3250452","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-LNp5LfZh7elVHMwGryHVPw6HX0jHCcgHYmZhUxC/lqqgADVxOt9TdKGs2ZGkPJ8uATSQtP/8yjTbXWtvT9uKyA==","shasum":"15a7e51b84c0ab9ad731959b682c5de9fa2abbf4","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.3250452.tgz","fileCount":2,"unpackedSize":1861,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1h7ACRA9TVsSAnZWagAAnQIQAIXPBIRqmJG3gkdR9BoV\nMJo9eA8JGkmUL3y/f4YLv/I0de1ytUYn9JI7JLVT/E64NpFdLHEm2CABfPa/\ny0oCkBWboHyoUtJSdz0h9xIgHuRYdzpgutIVAoan1RBoJprTsyCSlV1bmHwK\nc90YStJLdcNYLhd92dYC3xoD74UuIfTj+HMj6WZY74qnoxr2vGQWu7tR3Iyi\np9dCIWbTLhXA0Sr7ERmTUbNAxNUmDmqZbLM36ukLzAxv5FhPMvNr2JItc+cf\nPXUbwWgnFL38dQqfHFmi7I3s0+rjfL0ZJCXbzEkpDZwUh31SpVWIf8pV2hB/\nESGWuD54uzBMj6E5258jWqxE3R50jZ6kG3Vqfe+MTyc6cHXErXUfZMyFqcjr\n1QGcy9Q79F7k1KMO6yAejlJ5zrFIl1rWzBJbAqWI0E8WGi2CJJJd4czcgHiT\nvyCg3RMBjmMzT7+XdgsFxLQd6kILoZ2hqeWtqPbUmZBQdvFeuWAWZimxvhis\nMxYs8oNeNyN1EVyI4laUji3jslR6KiYFrEUHDvB63DF/oC8TCtF/AZXCQkJD\nvpIPhfUSlJgywHHZ8paDwweLufxsItcUGs0yDdKZxqJlOomA13F35mfhjVhY\nHf6iaXqllVrWZONAc1zVvYp3kU2fGZDlRMeTAH/0FNWfKsl/WOMNckPEfLcs\n5dMe\r\n=UTYf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICT2gVn7/FBVC7AzHS8IOIMENSMVh2CNudIlS86gu14cAiBRnOKxSuY1jBaVclSsMCKeRZ8HRwpDv89G1fTPIcLAzA=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.3250452_1574313664297_0.7848336066036734"},"_hasShrinkwrap":false},"0.0.0-dev.221488c":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.221488c","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. ./dev-env.sh\nnpx functions-framework --source=build/functions --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n","readmeFilename":"README.md","gitHead":"221488c88b4417d5ab7c31b8f4697c0a31676c1a","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.221488c","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-gDqnQzGNAn/e3sxbZ8O+YFUQAOmZpfc0++YY6MLa9xqTdFXcrRJj3D2Gw0pwMDp8M90tLshgIvGRVCDPKLm7bA==","shasum":"b9182682250553472a83f56558f5a7039540053c","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.221488c.tgz","fileCount":2,"unpackedSize":1861,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1iDPCRA9TVsSAnZWagAAepQP/1qxC6YkKF3SvzAiGdcR\nnstQbUdy1A21d43iQHbTP6statIZ6wB3k7SobqkmQ3om8lrT8h5CDdIlFYSA\nEQzjWK+4mKqsY76XdOG7/QiatYtzuKaA376UA746l7fvkmzUQSss9GS9GBud\nZi4XY/NZ0gxfOc1wMEp4k7LJruAxQZPhbeGZ8dZUzDbvPIcuMATR3J5m+vv+\nDjS2KaFLARDajFRn+e8Y0kgS64z7AdTHgBoX1y/IDCo19eOnErS4lz85zexc\nl3F7YPyLzmvwkJqYMHrAQ6ouyGNJo/2JHiTz/lxFRA+MiPJ3643VZl5gDE5F\n0d2TalA7RVKLAXa44YZwHzq4TNPg4gzTmIpZRVWoAA4/pVwG0HZR5KKrv8pV\nwFREsXAoezuJ1DAa36d3JMjNFTLe78p9uuPITY0ipSkDYgI/hX945BWAF1Wx\n29gmNJHFvNw/8xisw4QscEkQBC0Qri91hb+SrbQ/YXJKHGquU8YyG9FGmkeX\n4hp7DA1TM6kFy8R8AvS3AI82WliDU7lO9B3x3O0eU3sDdXY3xHAoLZQjlH79\nQyFTSNzbC9RIa+0d6CHQiBuxhiKPtIzYDuJ2v5eo8ZRRvJHf2LbdW/qh2nNc\n/47z4W2p0lBLTyoweieU2g8IDI8emu+RkNZcgoB9eyK21yy7+KPifTc3lx2b\nwldw\r\n=BwuM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCQ3o04TGs/wO+gt6l7Tt/02OG66y5I6r2+5NHMQwq/DgIgE3OHBSuupjyYUrGENndQUX2y4tXLBdJ4QfXK+oij0/Q="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.221488c_1574314190976_0.5903140173330332"},"_hasShrinkwrap":false},"0.0.0-dev.b226d6f":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.b226d6f","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. cloudbuild/env.dev.sh\nnpx functions-framework --target=FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman.\n\n**One-liner to reload a function after code changes**\n\n```\nnpx tsc && . cloudbuild/env.dev.sh && npx functions-framework --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"b226d6f0e073f00f7d376b2127f484aab6e93f20","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.b226d6f","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-VouDzMSXZ0+bc8Ren4KMwnDzUpXKE7XiocAS8jrzPx+Y3SJOt5cTHS2G+ZLTDm9BYZ8II8RDouGLw60xaF7DIg==","shasum":"c24d3c57f9216d606e9e32a8974e458f6fc14f4d","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.b226d6f.tgz","fileCount":2,"unpackedSize":2143,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1kpOCRA9TVsSAnZWagAABIwQAJ6E36A0Ug/A3C5IxSPl\n4quX1EEl3qTD/FUuKcIpk/LeSu/22vD7mUoR4wVauvjUXet99TBEJVOmPUMV\n4rRwTsXIlNbRugKyqD88V9036Ql38sHwqp0tvYnB38jRlZFt/82TsCCyfETT\nHdglT3uSxYuYWVScoemgwEFizFwLTRUQKuWOU/tmsTJaw6Mvg8msRcwvXGvK\nkTCfz6VP3GYPrsfYyvoJS2118UyjfQlP2YRuNakghJabEbtpBkcw7yyMfnIN\nq6q0LRYlsCvRdRpqCzqHOwHr/TzVu3ekp4+LcDZMG+u0lMflemOjIggRAetV\nYTpqixJsooPESm/Wkg6B67cUhKz1y2bdonP+kwhxDnJ+649k05V87K+ovZpv\nn3RBpis29Tnd765zpKGcTaYmV7FNUldfg/7zTmkR0zdMdeMCsjPTfg2ARBfQ\nvO3MTxmHmW83eDHIALlsn2GbKzdXnwVycW5cPF3lSIszVRJeseE8Gyl8ZhiM\nkO6iYj0R1iqAlvlFvFEhB3VzT530RIkHIkvlik0AnPP5nIwopLUTJBoG1KL2\nP97CSGGHLiX85KoeBwDXhrfGNPHWeNWk5PTZq7IlabE5pfl0ldr4ZLL//pbp\nWnZAm0UW33p6cw5auJgAtElFznhiIleg+C80cJbPxpDsMXRv/OjHIlk0skHN\n6zEG\r\n=p4gV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD7UbY65rOQB/5i0GalPRGKtsm8DH3DDVoOp5cbOxEFkAIgaAdwnRaS8slt7xk+LJgU5clan4SkE0qBbQC11KqKXWg="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.b226d6f_1574324814076_0.12430926934139608"},"_hasShrinkwrap":false},"0.0.0-dev.80a3df3":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.80a3df3","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. cloudbuild/env.dev.sh\nnpx functions-framework --target=FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman.\n\n**One-liner to reload a function after code changes**\n\n```\nnpx tsc && . cloudbuild/env.dev.sh && npx functions-framework --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"80a3df3bb6c10943efe285a95cbc3374b81ec6ef","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.80a3df3","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-bSPFtrC0jtdVT5ndhBVianu2rHTWGoJKvdvjzMyjr64y+/YV0MaHFFxDbWEv0EVhGEvKI1GJuMXp1AYQMRGmCg==","shasum":"7562a84d7f1e51614a801b27b6d9803d7f208626","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.80a3df3.tgz","fileCount":2,"unpackedSize":2143,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1krQCRA9TVsSAnZWagAAjpUP/AkuEckAAQsMbdMhigWw\nA7+MqeP3Aebk6j8bMyJLFYJ7tcWTsTIO9EFkC9GEPQoMlpcPCN38biGd96fs\nJ+ffDm0Nl0an2Mfoprfa1anzAdJsp06rzgxdp9BjgmPIsn5YcJX8owTU11/+\n/Lpl5EioOmPXfc/my7aK13LKXPQ5bDTs71t7YoVNn6tRaFAqjfP3vefd+AnI\nDvxHQbZbntf+66hsK9h3NBffnBMWaWJdXo7qtwWDGVjGh3CuSF0tfFTjZUVN\nSU7X52Wx4VKDvfLPtXnWyVIlnk7I1oh5aMO9vE26y4BOYQvP1U/UPzFUExut\nuJiyK66dXyMaO4lqUwoc8VtcZZGfxYZIlZwUq7o4BnvU//E4jK1PhrXawhFz\nTxE0CQtX9NQNMQPt5/VI62tu9HhZtG8SXL3b/9srLDz4eiSJJNp7iQclIvi0\n9Y7SWnHJT9uUMs2NtyRvQw/vcBgD6hS+8w2xmkmlX4DzL9383sZCIuIdUNq6\nm801L1aVIv/ZBOPnT3BRRIuqB8YLjEH/euNpXDePerUVQxQ5fRWRoIfMvkI/\nhqHxEDSzVeOf8/s0Z3/QSwc1UotAOkIjyB1YzSI32WKGxoVbP045P/OYYryo\nbQ+GGgRUBGig21l/OMd9ylnqQarrH7RFaSQCHvk6VbzT5ziZGsltoyEuZHBT\n8UX7\r\n=9izs\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDyFWMnKHZYo3PP7pLBvC7h2LDutlizdTRLcUxdLA6KbgIgZSHxvkfbWRLbt+xW8rPBQ4dANLJOyrMXDj7Rk5vkvNs="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.80a3df3_1574324944042_0.7522461536437004"},"_hasShrinkwrap":false},"0.0.0-dev.18c4ed2":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.18c4ed2","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. cloudbuild/env.dev.sh\nnpx functions-framework --target=FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman.\n\n**One-liner to reload a function after code changes**\n\n```\nnpx tsc && . cloudbuild/env.dev.sh && npx functions-framework --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"18c4ed2d677e78971f51d1be73cadd617fd295fe","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.18c4ed2","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-N7Ef1iMKesHfpw/C+y+RWajSVJV/isGeYDm5rkte3Z9e8t3rDRVa869h+KzBE0O2RcTtzRCZnDnpUhPuravU9A==","shasum":"81e26c7bde64d76958dd91eff1b313037c70afec","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.18c4ed2.tgz","fileCount":2,"unpackedSize":2143,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1kvLCRA9TVsSAnZWagAAzFkP/1lBnErvtRvGY6VWMqJz\npgX5BIpv/mNp0JcmGhCnJ25doS0b1BzajsLbjnYv9FhV4NatG40cPt8Snvum\n5n+gEnusCvX+XAHaxCecwXSxHzNvdre2ZwDcjQJ0z8TITeRgU4TBAXFPipbM\nPPIP3cJREqx1F67b3WbnOUPrj4JIQUn5OrsCDpjudPoZF5tZoBebuUeXY2dd\nVC4KP9JF/c3f7G7P46hAUcCXp7TtWQkVnVSnrM2g8FGk6akaM2d0MMoyvwdB\nfAJKzvv2i2g4sMpUHup4oZUZiLEjy+NotCPKAedaUoJjHQkyBY97x6ZodYet\n0oX/FgKAqU/Z4q1Y4JlJN0swg1/gZb03acfuh7xE9usLBUIEii4KYF0zd+dv\ne/FFpmWQNqrRlDskmFlQi9CjRj8juQ/UjZ6L2yP3OeMVEwfAH7emAFaB4lWD\nKJkcQmBzaY4m1bwS+z4fa7HA99yj/WqqQDYfF0w0v4skhVFj58zYGrLqbdwU\nxYtdaGKM6+OYW1u62Q9ZFKeDEyZfexYTZIG3hx8FkYaSQRgh4rm9hZqFLDM5\n7HfFkfE1OikW7X7mOdJffRES0qLQPEy50XAe7C0Zx5iDtZeQE+8ktU/t2nds\nrv22BuXJyPof2Mb3NxYoydcsnq2sUYEkVOeLCThR13+52eNzgslUBROaqPJ6\nnGSC\r\n=B8++\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGgx6IFvLKHaLLLJGtDn1pPCBWyB+FaD+Rl8n1hM25dJAiEAiUNL9j5mvK5yoLVBub5lzMi79mng0tHdte/2vJngXJg="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.18c4ed2_1574325195260_0.8052894206030972"},"_hasShrinkwrap":false},"0.0.0-dev.8c13a22":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.8c13a22","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. cloudbuild/env.dev.sh\nnpx functions-framework --target=FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman.\n\n**One-liner to reload a function after code changes**\n\n```\nnpx tsc && . cloudbuild/env.dev.sh && npx functions-framework --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"8c13a2281726739314a5ff70ee1316e5b634f55a","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.8c13a22","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-yjzKyqWLr4LkQPKrC1soJ8hKNEnzrUq+DGbP5OgVLxLyVkHt92LHvkPXPpsoJ+t/DZiKbZ2F4xPjv3S72VfQHQ==","shasum":"162f668a7ca3b278881034cf82540db12e1277d6","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.8c13a22.tgz","fileCount":2,"unpackedSize":2143,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1lI5CRA9TVsSAnZWagAACAsP/0EXnC+hmscV29SjETG4\nhzjiWFPGLrRE5teFV+RWASLEftSPfHOJHkWTE0ubO8kZpaRnSS5VjoniWaC+\ntkBBZQFIWMDP98yZe07LAnT6MPl4pbNaeX64Lyyz8HQStJOyxxQFMmalEdFF\ni26KhD7mlvVtRunustyO8dxN2mfENSzsZRbu56vDx0YybC+SwPcIinKfXd3B\n3pdjSbFxzbH/s4yBfdf7w4qHoKr2AxoiTiAoQELNjbRPnD4dAZ8Utq6WC8vi\nXKf4MtrIBflfH48FgpsSFrUVRng34iOmkePAMkCjgpTgihSAcyZk/qOIIuN6\nbaYgXhRvbDDcd1q1yWBi0UGjf5FmetS7NL/aMr6APRK/FBlLpjEw/4lKnNlo\n7F6OZZWZoSeyhmbCLhbQPrZHMRGSULwnu0jkwmKzXPcXA9xoKm+r5YOmbRiU\n0fDv5bxo3y/gBylSAP9Lx4nxxGB5sOTQcvfTV2lh0+3644TD1wJN5QcmL/Th\nqCd7Fjs1Iy+2RsYCRQ0mQN6irl3Oxy0+3OD6x6/x500SFTMH7G6Js+mJZVJ+\n9XSfmUi4K35ChnOlGxeXj1AnqTtgRS9AFvbj9867acgvnYkC68cmvl2sbDZH\nXYLtKig3rMMMFmZf83Hzcx/eIIyoknEcKKdPLulSQgTin9r9z9oItgKHhswp\nCIoP\r\n=5Q9L\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDxPuqjkQGG6aKRo4XmMHlZHcH4Tq9R0Yrr3EzX+KNyRAiEA/Z1b1u2CRaOtvLejGsGwohpKxIA8RRZlYCLVphkKkBQ="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.8c13a22_1574326840711_0.6500628335345662"},"_hasShrinkwrap":false},"0.0.0-dev.3defe79":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.3defe79","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. cloudbuild/env.dev.sh\nnpx functions-framework --target=FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman.\n\n**One-liner to reload a function after code changes**\n\n```\nnpx tsc && . cloudbuild/env.dev.sh && npx functions-framework --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"3defe791e924cef951f421665089472bd9ab1dd7","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.3defe79","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-QqslJxITiN/kbV9PvunUH8f+lA8cRGWEXrM7PYNNzcof5aHjQCgpkFgtFQi7yyI+CQ2GjUJb12VHtf+8cO4c6Q==","shasum":"3ce92de17c064c46b8410a297d0e58cdfb77078a","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.3defe79.tgz","fileCount":2,"unpackedSize":2143,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1lcFCRA9TVsSAnZWagAA9ykP/iZeqNc0D8qu7u1/oBzz\nOQzr6AtkUAuWD880PCFSXnF52O5CDKx5lI7hSsT68zQIcbjUZlRi/wG76uMs\noWf+FrVrL8JcoEHXM1SGyeFWLSx658nesYQpdbFZ3Lo0DRIWeamApKZ5aqqv\n203Lp5CwZ5zEsKvrhqJnzdzB0XjOv3Cn6DLE7dqnUw+Gc80dxWZtYYbnz78w\nAImp3X/sWKkKLHFPlRW5uLIQ0cFaEjOnDv6h/P6AEU3AbcycFUPm3Zw/LvGv\nikyj45ry3FW2ZrvRYV2LVZxzjND2PqpLQgpp3yAWRYuHiJ78UjYXP6dT3BsR\nylbAO0oeEo5Ii55m2P6bcZVQ2qJR8pxarE24JdmNGF61qVS31j2huVojg/Uu\netWE4t7B/lFLKwXjhVm77rZHWfTlzx4+7AdbanHF4g+ZEfAR8hAvhCDvcUUa\n8euLKp1+xvjdR71eOeHhRABqoasmQJ7/kLefSiAOd9Ns7Soy+JERridYtGFj\n/e0au9fvcBXGXPbVK+bMJXbak1zypggTyJW10UJGN/8+OMCOOPxKASuowqFp\nwFvL6/YQgoD9bVWx71ikauaDCf7uhc/G54HTkwVSaU4MM1hrDRgSHgTAYnAC\nkKycHmXfKxp8eN+P2pnscBcqauuezZ5SJdfISTdyZOsKb4rLLEH1E98m347C\nN9c5\r\n=r5B/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDGwOQEYmaDABwjjRw7/LUrBg1rxbTbe0yPUoqWGZ7FeAIhALc1Gwc567jsu9ZkgSqBFvnCl4eqzQXuNffNPAMtKiJX"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.3defe79_1574328069406_0.5497202639570549"},"_hasShrinkwrap":false},"0.0.0-dev.348bfb2":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.348bfb2","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. cloudbuild/env.dev.sh\nnpx functions-framework --target=FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman.\n\n**One-liner to reload a function after code changes**\n\n```\nnpx tsc && . cloudbuild/env.dev.sh && npx functions-framework --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"348bfb2fac2760a84e857b00e44d12133c89f2ae","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.348bfb2","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-sjTXv/LX6ITxRDCY+ZkXYPC2ZUp/E47XxHYSZU/lKQUMu1Auyp94SQeSdVr8S84PZfNOrqrvBcQtHJOzO3cAWA==","shasum":"7804c0a032872f0b85da763cd7f48a755d78cf83","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.348bfb2.tgz","fileCount":2,"unpackedSize":2143,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1lmzCRA9TVsSAnZWagAAePAP/3HkWbc/OOSv4A9M4f0t\nxU3/4GaEO2aZCUnE4xEOxSoaWK6vn0nLYOedEdVxVKORbyxBUdYt65gH9+wq\n7/nGodK+WTKuF68RHr/EGOOfDx6RtBJIbs2GsoOPM2Y8t9Zdtb6fAF7pOZVT\ndnUgyt6gvz0xuoSfGsrhhGZHjwn3NVqw99rea5vq4xc/FqCZlWJQxMBoWDTF\n47YrkvrK2o05jRxC2UZ7NSFP+qjQrm0ymSp4GY6RJH9JeFabFzUDA8DXXWcG\nPvnu5NWN2ZOHKSku9NUK1ZKZ4qNmm632biJiDUTxkuQUr6k5xhfGUor+Z7sd\nJ7KH+gS4/KkfFWkqvNsz5kzoWADdow7owMJIsUCODTCnxuypZcn511NLf1Av\ng8nWZ09AunH0co6oJ0SkMN9dLHaJ7udnEXt8jENlnF67qVrL7pFnd5hs740y\n3suCw01GOuZ5mtcN03Lpat3fj90hDYzsE6KSAYdLjKvcsmTQVgTLYIXGP9lm\nQ/uswy7ReFF9HzHi1Nj4wmza7OeXvbtQY9s8/Kqt8XwOFELJHmzFNWaeGmX1\nS7QUrJgsajXL1KrB0CVYfPV4m4A2JpDBwPSnz/U++nyc8BEglu7SKMenLdRL\nsg92BGk3h6y0NunUYc/ntPP8NHTSa1ofu3tTA7/BibJqysF+ubBxd9wONgra\nsrs1\r\n=NNiA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB42Tz7k99gd+4/40QyBJvkOZB4E44hDdWNn0bgklVprAiEA4gM9btteGCbS27x6A9WS/DhvCiQZHdXb0tDWPlUWu4s="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.348bfb2_1574328755387_0.270657051366485"},"_hasShrinkwrap":false},"0.0.0-dev.16afda5":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.16afda5","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. cloudbuild/env.dev.sh\nnpx functions-framework --target=FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n**One-liner to reload a function after code changes**\n\n```\nnpx tsc && . cloudbuild/env.dev.sh && npx functions-framework --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"16afda536149a23c9a607ca6f93841897218eca0","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.16afda5","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-9nt5yDnAbRoiiux6XU9kpAsCOoEXvL4oxJ5lZ327F6iUqPcCn/dacyUvr4pgPtp0b231a2Z8Z0rF3iN8fRgznA==","shasum":"dff73d50f6840d5420c579f79a4f9d51a9c29c0a","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.16afda5.tgz","fileCount":2,"unpackedSize":3267,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1l2TCRA9TVsSAnZWagAATIQQAJ+w7dSSnxYtUYSMW+Vn\nTA2l8fp5TTWXCxhojUdU22KM+ZXxPkRUxQa1LcLYfSJCkM8dyUBwg38nVAwR\n5uixGT5w1Z4dDjFcAePiIywNwZEuVsJmQUqB1p1a2/DWBYhw2zKlEmFfSwLY\ndcDpMIVpT+DHP/Bz6taVAICWFkDaLGRjHUd4eNAdvJ7WxL3m+Uu6JJWSweEa\nLWZu3pFDkWVGlFGehUpiRtr5KpV0wXKvuBOuGJJqeVwfNNNxZRrXu3o6N6pK\nOUM+6UvSqJ/KzS82BhpWZYpquCR6VnOq7aLe+YQtoAGXOCHmQknwdlFqz+At\n2r3e4cRDXC56DnAmyQ6HkpSW69rGmw7oJDwp4LVDqpRIZ5fPvUmwkwWm3T64\nHrD3rI3XZSPT2E8vPSxKGRcNvbbln3AWD19Evk0TNs9EmSGrabnLJwzV2NOq\n+i437xXF/avMcS0Lp7dHBil5tnzs62dmrUXcIb43JM34VgV/zTS5K68zMEUi\nNeeGZi4/qaarkyAgXPP/EVsh9JrAwEeUePoXCIPs3j21XtO92sn7c1qg7qnd\nbU4GrzPHHZHD6Y7MzSOH74H891EFyM/kXz7G3N3RgPNi+0Q2UoGdLv+otnUX\nsQnABJtAPTESOoWRB2uBDal21QkDpxuNp7pYHHTR4L1GHd4ZoLntoXKmIFx4\nRjXo\r\n=fnXd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDFbWTRyoAwFCkxzMT5qSbNC5oChK8NIxO/zVK7O8Wr1gIgVySGsBxWWlmu4YlCFk0Wa6/gsjKHpIkzi8/VC00r9/0="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.16afda5_1574329747492_0.6147213267504088"},"_hasShrinkwrap":false},"0.0.0-dev.a182c10":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.a182c10","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. cloudbuild/env.dev.sh\nnpx functions-framework --target=FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n**One-liner to reload a function after code changes**\n\n```\nnpx tsc && . cloudbuild/env.dev.sh && npx functions-framework --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"a182c1020d2ff1eaa5bf0deec7796838696d3042","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.a182c10","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-qHfYx6w0Ncrv9gfGakYlZ5zSu1Qs42pzEG9W1KX7CuRzQ6U2T/P5mrtimYfd0nGczOHivAdBQbgjFERL8OxnJw==","shasum":"15c3c30b3b143f0a13344e8ab78858cbd5f236d7","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.a182c10.tgz","fileCount":2,"unpackedSize":3267,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1toqCRA9TVsSAnZWagAAF+MP/2eqRU4vH2JFyzCVjnAe\nV1Idh4nBOeHfb6eWVa+HdcvuSNl+xEqskfoIbAO1JChy8FT35LJ3drLphUai\nHqxB1cDg3jLx5To1V7xc4UYw1dD9CRlyYzWWEjoI7QcTmeDbXvncmK6LfgkZ\nRj2X48H7k1jMgE5By7WC37mKsukBsgGWA5R9iOA2o4RtGzWXQI7nBgFqjhoA\nAASEgc4fVARM3PYQ8aCXba7Na0Tx1Lg4PDySiODcuUIHhq53yoIgX6lnDDyY\nmgIX2nJ2LyBqZuCzQMzgGev3WDuJVaYhzsiUxpvHBEPR14qJBi2KlZsQqdwn\nTqW1tk0337GY9r+Op5cd5btg/JkW51sK+7j+2WzfzekOSTKjSeT6R9Q//oAi\nLVmB+NOQIQOBKqmZ2MJKcVGd4r75D981XfBoWwKcO6BqUql/ojaS0Z6wS5B1\ngVkoFcIsoqA0edZesL4GD8snDMnjlZO5PcYxMMkHB3UzYbOnOhsFlyqIi5Br\neCJ0YzHYWa5nEzch2p6CzVlszzyYH3Zo8YpVeNvNTJGZZMgyXC2jzvzctCRD\nrqHr/mC3CpNDa7jXNkz4hMVOp1kNzNkqaus98ErURTwg4im8DFdJ4vTTuWf7\nLAoZzSnGU64fA9JerHXaWyrpNSdxOTxm8pLjAAocf1JAwDHZw3WFg8pKhgU4\n/xLF\r\n=vbkT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFsPjz0c74Fb2tZ6cE4Yu19tw4WIbwiJMJdWHAKEbO00AiBfho5ytSzAggs0UuMzp+JMGUoyksEfJPvXvpKZn8F3Kg=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.a182c10_1574361641680_0.23946229641933048"},"_hasShrinkwrap":false},"0.0.0-dev.a1bba3f":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.a1bba3f","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. cloudbuild/env.dev.sh\nnpx functions-framework --target=FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n**One-liner to reload a function after code changes**\n\n```\nnpx tsc && . cloudbuild/env.dev.sh && npx functions-framework --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"a1bba3f178a367e9b807b866c1575a0a9665a49a","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.a1bba3f","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-1LYmMFS7/adLeFNWfJbv4xrmitzQyBLMqkbgZla8k9dhkD+1qp1Qsho5+DE0M7LW9JlRJPKSoobFrrRRuhELog==","shasum":"6076171b963bd4cec345f46d66621a69ad245bec","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.a1bba3f.tgz","fileCount":2,"unpackedSize":3267,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1trICRA9TVsSAnZWagAAZVAP/icS68N3IgbyaPxjR4z8\nYdhBOzc3H4N/oz0b2hT5A3nQQk0kXL8dox8EujaEHMn4on0tPdTauX8UzdBn\nMF0r/kgf9Gsbpk42F03Hx5MGd8lLJ8vZH9Bnxyu7Olc0I18L2UfhGkxFggSZ\nvu5n/g0PK2whyCFeQt/KyLSD5U2TvMWlHFZUf/6fRCpLUcWBt2NLHTf5dfu0\n1jE+jS8SyjFr/M+KLvk5NEmnB4wE+VB/T75inrsZ4VzNp74trPYT98zHLhtA\nCQ/yBWOyRFm9i7jhwiaapy5BRj4uTl8EN6BoQQPZO+wyM8T3simVSwY+jd69\nIuxyImeB3FRFVGf2ncLv9otLyEcG4Hqt/9hHzYSKbx+QLPhebR7YOSJ6TiE/\nzX3wAlO1+xHMkqTXZ+jYRaUE/nT4h/snXc0JkcxD9bGKXjiXjrx2NKRXeXbb\noSsk8GS85ZeuzMZst9Mh3WfXkSjCe6HOlrWio1pdRbwTPE75gN1Ko1LEx4PA\nFAbt1N2xIU4je1RLMxHa7YLdUCPzMrUkwH+79kjOibH4LQ6e/14ISWRa5Crz\nnkxyqYFyWC8xnM2BCMaDceh03/EPW5nzyKzaW/6LjqJF49g3+5syA0qxndiu\n2SZ13K6TV6J0EB/zRX/tnuCmuKxMa+h4MoKMwMZrfPwT2+sq566x8saXFiiZ\n4wp8\r\n=lEcy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC3/q701wxkiOUE50n/1wKiFFsluMsrxHwOiRnwJVO6/AiEAuaCWSESi9yjzTrKro7f+vGeH1Us9Uh4mlnapjrsCzKs="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.a1bba3f_1574361799990_0.867565433412089"},"_hasShrinkwrap":false},"0.0.0-dev.cbc1406":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.cbc1406","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\n. cloudbuild/env.dev.sh\nnpx functions-framework --target=FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n**One-liner to reload a function after code changes**\n\n```\nnpx tsc && . cloudbuild/env.dev.sh && npx functions-framework --target=FUNCTION_NAME\n```\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"cbc1406db7e631b481324296a6b46badd739a8d8","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.cbc1406","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-4CkRxpuOTaL8Eml2oK1AYIStm1CXYGcHJMZAiktKS+W9Rcj23ENj7vKXPrSzvSwBeXNAZtoW2ZHMR237ShvY3Q==","shasum":"64ebba43d29085b6bb5cf3faca046c0284e88510","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.cbc1406.tgz","fileCount":2,"unpackedSize":3267,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1uR5CRA9TVsSAnZWagAAswIQAJPCdtrGDL+y4PgOkuHb\ntMWdmvdVLULqI5XoS6tnhZcCR5whEr2tik+5/oNyN8BBVOm4VLgseJcBVAn3\naGWgVJrtbKcE2iS2UX/wdO8kJHOkJuHBc7g7gHs2i2cg07DqhrKq5se9Dp3t\nSDmRW5seYf+IyEqAOEaxmjcBDt4m0MQyGJmJp3yVLXkadwGnFYFp3YAouCPp\no81HSViWfaCbodNTP8srlrrR6elLGuZTXUj+wxNGl9VXnLL5P9YdmNFOdJ70\nATRlKk+Z0gjEggIyOaqyRdrk0n7zsuLOS+nNN4HbF4E5psYfzr3ROdYWlfqn\nmnGGzywva3ytNvsDrvCQtpIP7Z0E0mY1uFsckp2XIp827XjYv3J1hhpfBNUI\nXbAa+ZnHTWS0LFZRE/oE/4B/GbCZ9Yb9cS7K9BYGKSKSeLWYtOPYroAe1ciN\nS+rjZXKWqRwCHXKivCpKK6ODMLD2IL1YTbxH935Zhil5q3HYBmyFlRqKR0gS\nSzUPrgYlWu7C8pfsBzNAyzxQIZK8gQ5IWjOW16fxoeQhvpfuIK6Xpl+wfRFk\nvA3m3UYF3FSTZlpOW0grt1pUlfkSupE2FIQ99S6/poFh6cL3uBbUt0dYYDzA\nWFznlD5rkvHCcLXvI/wMQsKPmtgycDQhoqG5P7jadHwZxshzAsty3B86Jr+7\nPhMV\r\n=ENvo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICvYEij8F1Gu4JPYQ0OuoPaUhtbjp5M0vM2gPL4pgSmsAiEAjfjUaex2hwZe/5GGufhzSpofL6gH8DZvwycchpKQrdU="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.cbc1406_1574364280785_0.23549983591160872"},"_hasShrinkwrap":false},"0.0.0-dev.41a6b3d":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.41a6b3d","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./functions-framework.sh"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\nnpm start -- FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"41a6b3d10f24644ba1c7bfdf29c2fc4b0a2ce539","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.41a6b3d","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-nh9VxnkJ+to/oRn8s6LOBsZibd+65DXm0nhVBZ7+cVQL47fjA01jheeC8thLxEp1UjPhX5yb+ZrneFAsdgCWWw==","shasum":"03cf7a9a9b4180e94a00bdcecf6ada1a16399fbf","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.41a6b3d.tgz","fileCount":2,"unpackedSize":3134,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1uqBCRA9TVsSAnZWagAASuMP+wcdcoRjHdzjnPLbVoLE\nE5pR6Hfhpg3N28zWPf1lsm4NKMOgJytT/mWo2jcZ7NfzjJZC2/fli41rTtiB\njPLojhioKtzfOfY5aw7X0HmClNADpKRiLralRNywUV225k0vM/w8ccMfhYB8\ndlEfmm2cufQ6+MZOAN4bXIUFzaKOoKH+OGXf7/rbIuc8Q/WSM0HI6EADP/5v\nI+HPWqDr0R6gsxDFZrIu8b3/vcmk3HJs5ne21meMWRdOKL3U6hvelQlMckwW\nqj/PYKIQcBjFOpi8gNAkLImSMwCpMmLGZohGN6g/5x1XJMM3qhn/fIARWUm2\n1PX4y+/WW3A/FtQP4NOn1QjeooDsHJpcSg6bF3qAGPW2StEm87FCPdCjg7L3\nYkPkkXkPH1DzfWq3sTS28skkDF7jbcKffus6jvSL6/8RwTuK4nZI0P6I9JIO\n3MFlKMwoyzRlhosMkDEi6dzd8uUu2SCefyOYiifUJN2gp1IhIGz7YuRuVGPF\nnGPrJrlEevYO8sFaaMJVv2/YyCDe0zq2oKgna81L10rAq3k/VySpBk+2d5na\nbrbnBYQf7a/NqW5WSJ6G8DbvNhz4Dar+HRIZO+YINCp3qql7OZYzoBid/IlI\np9Bku21axxNYdFOJCVXW4ZosiAVKkEKVrJH7/1+3tLDLEAVIuId/H4cnUOQ+\nTzlk\r\n=VYQa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCvG4VtVCzBD4ncHKRZQG0X8Zqpud9794Bx4gM5iyNvKAIgGeB+Obq7AdQeB4XDGnxO5TDTPVGsX3KIvRZMQXX9MB4="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.41a6b3d_1574365825275_0.9415408142204058"},"_hasShrinkwrap":false},"0.0.0-dev.46b948f":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.46b948f","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./functions-framework.sh"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\nnpm start -- FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"46b948ffc32f97cfa480fd56e6e1aa1c069bdeb2","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.46b948f","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-k8AOr8pyC6J2oCajV73TOeKWi3Cl2HgGgbwZlCHtLSDYP8OAIGj2vtXfuaLEwbED97j16+KhQ/7gVoY2YF1qHQ==","shasum":"c7cd0e7314dbe4216026a3cda9398536486a0a23","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.46b948f.tgz","fileCount":2,"unpackedSize":3134,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1uwWCRA9TVsSAnZWagAAxqEP/0xIBiYo2/4QFC63/kc3\nvXX24U1c8HApHWqIiht4VV6+xsGP8SekvrMkiTwYIvR4dcCa9/9/ngRt6fx5\nRC+Hgf+MOnnXE0LVld8MJvWKeMODjJD3g1te25PvxmfvNbkzVFwb5oGmwqT8\nm8n/rMTnhcURKw6pX5iuilAPJtC/NULpdMmYyU8IuiOVV3cyNAHPQbLhIt0G\nZA/qeA7ZdAWfgBXaQEklhF6Hj4UcX/tKpLZokmDgloAUJjX/vSb8v7lzklCh\nF/+pmWcaATAoETbWbmx02sm7f8zwuqryM7daUQa/YmuMlOKV1TS719d4+A5N\nSHwAejVDEuUfWvkCHHC+05Jpk2B4RFAfLkraRVW6iXdgrASBMyS9NKKh9lU5\nRLKKiMrrqMHiI7aJlZVWVwHXwDtw/C2Npw9C3/gHHYK61p6tkP1jJuQBvbkG\nIQdqyIVZ8AOu9EWRZTmbkPLxKFJ3g3ydHAW2GUc7aduRaweOZ3KGUGYQ0BR9\nQfKp9ywWDSO6P1YvX+e0MOfYRyaU3GBsVQ62dstcFcYH7WkXcY3gAXtw1GXE\nCppYRNEPL6upzGl7KvBaHmGsUEUn0w7IobL5RDy2z4fEpv5hgDwY2F8wSCdf\nIuDJ8Lra/4elPM9VLGA1PKvPOvaDFAg0YsMWSqg7Xwdjyg/u9pqaX018eyzP\n5VnX\r\n=MLev\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDV1A5XF07zI4djAGSvF5OFQH1r8cv+fNmvdvly+aoyPgIhAPXWEbQvyTISMesulnb3I0h4LSFpKqtP23ALzlsZvMan"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.46b948f_1574366230529_0.8437243525377653"},"_hasShrinkwrap":false},"0.0.0-dev.62de153":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.62de153","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./functions-framework.sh"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\nnpm start -- FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"62de153149c4223ed62bcadcc4a64199c89e7e45","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.62de153","_nodeVersion":"12.9.1","_npmVersion":"6.10.2","dist":{"integrity":"sha512-Yl8pN8vH0YrQ1LdVplK+shLP35Aor3XPOiJPnjTlmHiAZL8idailEuxPFrL9vGTw6jh/sVAOHrxdghDaHvG4ng==","shasum":"f949308679526b66c451d62b02b7e7cb663bee47","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.62de153.tgz","fileCount":14,"unpackedSize":17600,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1vYiCRA9TVsSAnZWagAA/5kQAKJ8PHvpO6w3+LWoewvA\na6JC9fXQFJHtO34QereJT03Zd4jrVCyNGECeeH/Q+ze+DbWjPNcUTv7gyolu\n9o4vgO9Acg5AjrkoQpvm4UecgRL9gwRjdLLYAzXSFVhcPo9fDsSV6Nr8pr2f\nHHfiLmPp9QQjG6ABJCff9JzG9QNBIMR8d9IWn4+gMuw1guWYaG+N9H28zxAB\nR4el5n5pC66feEmypSrFg22+g5umAHgc7pxOrT9BiPGRgqwXoGquTxpi2Nqr\nQmQN0irOMvvSPto5KOU+8II+L/TA3g3ufxvXmdfl8WzHcMhMWbwfWr3IjsKs\nLMnw1Pg62ePjhxaJgwlV9FrCU5ycYI77SFR+V6x/jmMehBhtkvh2zptIqnJL\nyN6nbD3GeiqKF44sOkSl8jHECi2f2pu0InMI7fp7PRaeMcLgeopeP9wKnV9Q\nQ0qYkqXHBS+h5+me+pPJRDA5YbdF+fJlnSEgy9PwGETJZk3ujAvygwhtNsEr\n1YxEcTQOXis0FTdIogW5W2ld+QXzItLDCmqDsB+ayCkk1xbFkbfoyb6FtUwt\n6Y4Bz/03eRVNS3KE12iSQKTOZZKpyHKkN4YSyKHKG0AGbDR6CgI8JmpsfsSD\n8TBt3ofwVvu+8AIFHceqjYTphIcNniBeSBwCsDkf/5GC7f4UVoRKRuhLKdaj\nlwUx\r\n=jVyl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGMyiDwm4dLGWCVqp1Ukh6ysAieUiAgvZOW58k6TrtNhAiAqC0fmlSlY6dcg8v8278sGbSfLLsR1ZpF3erwY02KmYw=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.62de153_1574368802248_0.5297392014746283"},"_hasShrinkwrap":false},"0.0.0-dev.90bab89":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.90bab89","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./start-function.sh"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpx tsc\nnpm start -- FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"90bab8955754ed5f58e5122eca50a1d112eb4c3a","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.90bab89","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-Ad9kUM0qtyFUtV6yKzGf+g/9xn5YC1qrhqwUPM1HAzpz+lKwbGZgF4wr3WYBYrK6kMQtxLZ80MyIHJnoLx4C5A==","shasum":"0bdd1ebf1aae5c31a99d95f1ace6c22f3940fa3b","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.90bab89.tgz","fileCount":14,"unpackedSize":17487,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1xbnCRA9TVsSAnZWagAAj2EP/3eL9Iw0+Zbqkv+KNBYV\nhnkglNHc9F+5ed5JOmKfPlFwntJFJIW+XWEPlteTpeybbuXJw+tnTOxR48IY\nj4HxIh3RZjreEmUschuuXqHpqxLgc9kHK3f2hJTkqIfyJlkiZPm27A4EuxFv\nWhtKVV5cJphs1fsrag5y+S9hC/FN26nVn7ppA8ghgF2zkBkEabUeGx3X3oav\n8Ut5w4YEGLYeYcwIypnnWJajW58cgSfoEG+mqmH2Abq7Y2aa64Ks/T9rC2sO\nyEbb6py5gMkf4s984QrhLRVIkadNACbus9Kx3hSnpDDrdYxnivYFoEteikY5\nSUri6k5ff7qfD829+Peyzi3aawyVNVvh1dcMuiOlJIPg5sQCU6gl2dt7t0f/\nh5mzsyeip2YINBkjK3tbSBaPNitAmpJquPTxSObSh8HhBxkK4t7NxoXX92re\n0UekSVgk51dMwYpVqn6/qjWDgowi2aA6XtHyUO+eoFmVQaAZDtok04mAloFt\nsoYSEWykkB9MbOZagsUMOKw+l7ce6MxiIHVADSzLej8vHO8LlyTeCEfFBoOK\n9f4p79VD10mCbY3YRHEkUflpHCS74tu8tG3P/ny49gG2mazcBksmi210tgCM\nbnrcSJWGuGfsHlbYxZcbUS6/TRnmvb1zXa9LN+pNrJiSzIUvR4XOxzd50ixh\n5M6f\r\n=GKwk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA2LAW9EJJjMsrJVZFvk0g/5cQEpKeUHm+T7XMMRPyqdAiEA+56Qtii1EgqKq7k30y4q3nNtpv32qwM/CI89kb/KDc8="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.90bab89_1574377191379_0.7528519554214037"},"_hasShrinkwrap":false},"0.0.0-dev.b38ba5c":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.b38ba5c","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./start-function.sh"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"b38ba5c3db6a2c409df3be42847b9466d23256c4","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.b38ba5c","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-5O+n6Riii3NYPRtTVWpSGfHfDvVSfuqQ/Dah1cMNYGM/gZZ6MN2dnDoPILUV1zBjxGXwa7pnI1N4a145LCKi6A==","shasum":"737fff2a4826631e1d980d547ea85a46ff211bbb","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.b38ba5c.tgz","fileCount":14,"unpackedSize":17474,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1ydkCRA9TVsSAnZWagAAfYsP/3RIE/U6HL8Poue+nM15\no6Gv74P4yr0DOpV2IzZmULHrBb4ikPw4kvwzy6HAuQWwwI6t/xXUahVovuGf\nWIe7VbAv0wlcViE6GbgrTvDVCSOwUdpzFfQXRVzlb7CTTAT3meUNX0Zl5JpD\nQxkEch3rMzlJOptuNHZoDdGWlp/xJUrwoBWV+OMg8pAaub3CzyViguRfaTZ4\nOMa+E4spYr+6mgQVnzlrFcLYYB6UBZERzkhNzuj5zeETf46dk0jM3+6l9n7t\nFByzj1LONjdgrsRQvxHRZj096RwB7cYZ+yGkDsLzMcBfMbydmqq7ZzkkC5Bl\nO9pn8nzQtQfNUCSUZ8P4SNDDb1zOxHboZw+TonsiE0D0CGwzNBYpAosE2xQ0\n/Tx/60IrIAeYJ5UGS1up/iNptnshUmVJ4cS2AmBFTQMpNj2I71jaS+qUX0/G\n+ePVV2KDakRZQDhMmRjd+XFSCAzM1YBqJGZAwOaFoZ+2ioY8AnvzXqapcSS9\n36l6zO0NL7bXOkJA4f4hrlSJUlA/Kg+qiNO3AeGhmUc+kxmKDNJYirn1ydAp\n9rmun+LNq7hJogpRn8YT7gcRFdwra6g8RkxRKC754lRG7UPUPrgUFzzUvCGJ\nky22rxIiRGW3164C9awKrR15xwYeGOgZdcLrC/i6AGKS5+TQP0FjP+/0a1B4\noJBm\r\n=ujVv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD1YrsBkWO4lEwDc1qfxd9NFUVpDrq2H3ZAb1bTuwA1/AIhAKG6MxGc0VnVrK87h5/XoHMnHUK1Iblzuat2ZYmb08vE"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.b38ba5c_1574381412188_0.3285523373348551"},"_hasShrinkwrap":false},"0.0.0-dev.b910b24":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.b910b24","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./start-function.sh"},"main":"./build/client","clientMain":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"clientDependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"b910b24b971179da4bced91e07bbf3fbc76cf35f","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.b910b24","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-2/IEl+013qAuQH98mLuT1ZI3mj5jD/HW7T+yAhwJw4mOB8wYt3BClkMxXJg/m8htKXAR4qUDu13WjcT+v+wPhw==","shasum":"d51068482727e5e92980d5108783fb89125ec1b1","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.b910b24.tgz","fileCount":14,"unpackedSize":17474,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1ylOCRA9TVsSAnZWagAAFIkP/ihxiz65xldGfHUvt4h7\nruzcZ9+cmcd3GJXQb1VMRvGePT/G4UpUhDyD449nAlq+iuv4mtH5VizI/rgj\nXfM34tpOUoKqsNOkQmi5Eqhah/wCS940aNn67nctuOVqzkVf2/R7LNj/RVmL\nGfYsCiyFX0PNM/QAziGUJ6RoUeKYsjJhyZtrgG6CpitiqfM9Cnr207Ccam5p\no+6x2NoKuvJlAgZVQW2Do+BQkMDizChp47ggT83tswdz+BDEPgTYSvMjnOSU\np5Q3CGR5XvIiCdFSQajLBN2hbfxnbC7SZYCr+mk77EJ8kHz7Hmot6zbSxvwr\nu4WktI3Kg1yHc7+smIckoAe+yzgUysoE+Nu/d6aJDleUWXaPTS0p51xTTyTG\nVDeEFvmu3llUWhXKj+Zb8Yf65vAlXggRKEnnAMOAD6HOnyYCfxyGsAO607U+\noMnW3t0Hb5byw64GfgOUhL7IqhewaoFp8YJRBI2ThqHlT5LRvgUDSEoZ5FN6\nVy+Qx9F65F3Oo32ohiKwwlLvnzSbWRD8d6+tH4F5mzi6WK8CVDVPHFNQH8lg\ntHoOiGRnJSoxyYlAx4Glvh9ZKn1HYhByEYI3U6aF9yKEBRs39tlG/B2meMV/\nejx5mVYXyCnWOSfaf4J3/dPCEpVYUiSFTNKEh/slHmUyxXhPOMKzZC5Mt9kv\nxuxF\r\n=utKl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDNbq9BjGh3d6rC5wmOK3O1eK87/2M2a2uO7Y6b9at20AiAWZ/hQKGFBzkvRWd+6RB0IRlcSFMcRYiV2o0UtvXztpw=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.b910b24_1574381902195_0.25696939819872977"},"_hasShrinkwrap":false},"0.0.0-dev.6abc68b":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.6abc68b","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"6abc68b75dd9f4c8ad582933b25bc2b7efe0626d","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.6abc68b","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-A2yPIJGT2WJjb6BfLGMAdA+lHwx2dMo36HDf+6Sc9Mp8xVnvgTDeiPnhzBWLNjjarLmx16xQkwoPL01Wcwy/6g==","shasum":"8f1a7001fb4056528f0663ac0fcfd32f32313e6b","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.6abc68b.tgz","fileCount":15,"unpackedSize":18169,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5qgKCRA9TVsSAnZWagAA3RQQAJY+/8imXp8S9k3V4EkE\ncKZORkArhRxDMMZdyxEGf6cobkJM10zsAB62JJUYnvgnBAC6rgnsBw9epw3X\nWI9CLmRQGeHjCQ1JyNybJU51zc0940ocTYV+moVnBjzag1C1BUd782Rm9WW8\nukzYPV0pcypfmcvOnPpHShJNSOdtiaha3sW6R4q/r7B0ICVoJG+Ts94NmppX\nff+TF9V4VBQfVxnZNWdquIQWzovQOSO6DHI0KOho01Mfy6XOwYnFFniJYqVl\nKWrbfc8xwzOPBkCd50Vhm4hgylwmV5Odr6veXyA7lvNuHt+WMfX2+m98+YFa\n6aHEKUKYhVNMBCf54J7Ff6gbDDT3URRT8auCh6z05l0ClJcvx2KCEsegzPEx\n6E671Bi8NSxsAxqF3Tl70dc+hyrJ3565LbQlajnjC229uv+fWKo0T0JjKrX9\nAxu4llavkNhKdMcWRPOpzkVd4i4evfwgp9wVIUTrltAFz7ZbLzDo+e+4z/kb\nIOZqwxA9De/GbdnnzIzoy4towQF93q3TMi17699voF2LyFPxQItl35my859e\nqdIUV5XhB80PkQNl/TYCP/oxClYEwsxwFCGBuryO8TmATRwQDBSUgOZ270Kl\n82Dh1drK1yUjj/V2hCivSeA3Gje5D0NYxeQAyhE5OIchGpzlSbpEZbvokM6S\n7Zrr\r\n=crCo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCFz34SJauHnhSwkn5HmpJjMjDD7z29iPAGqpOeo6GgpQIgekXlJsO6J1mR44k6PJWru7P/BwwzBwEF3fMmzZHEx1w="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.6abc68b_1575397386261_0.8666442075836769"},"_hasShrinkwrap":false},"0.0.0-dev.c8746ad":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.c8746ad","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"c8746ad98c0685fa8118a110b07272c31d0d3d8a","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.c8746ad","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-am47KVUEdfqozG8DNs7ZNdpcBV+qBCBvfjWuApNGVdKxUH3cbfLRKsKfSCXdZAZN/2ecz0WYXtmNCyqho6dF+g==","shasum":"59181c499f07320b79142f878919fb2edfc88510","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.c8746ad.tgz","fileCount":15,"unpackedSize":18169,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5qjrCRA9TVsSAnZWagAAh24QAJrBLCjOVZ0XxfQVJuhj\njdtb5ckucKlrlihSSP/RyQu55HsyGTWJg5LcEL2wggUVfeCF2jlQaA+UPwCy\ncuu1vNuts33D4uo6CCzcaJtlYodidO8bez3iIgneQAaWhvm8iSKhUrFRDtzZ\nWTIpswoRuReY0qRLu5sKhJKgSVX0Cv4XnOLNvJDprXfn/wcXJ7zgbO3VyE6G\nrnPwuGDB6OgB0Vm2KzG3hRW8rL/0BVjcmhUTu32qJbyXvNUmUXeN8PszlHoj\n+Zf5YN9jUHyiE3LilTBPK5+AjG045YXRvdhP5dAqpM1dRs2lzFy/SNFNebNy\nE/Q2EgviUtnUCFI/42rea0j6iAD1v+Dtr/n3O/1e0RE1/3JAq/8leIM44ZxR\nBGe22ijFZrE8VsAADfatjBsDZxRs8yAhTzLCw59TUY4Bg9XSOALpMkMw/PP5\n8ucLJsW8wy2+r1gJhwtDqCBg+zwBkndwY5j6yRmtSMg+sUWNPoF0VYeJb/IN\nSsGe7+s1KOAvOLGO8bmbd6ccin1MNToaPEmlOyErr8ueTUBetIw5m7EhyG8o\ncrXonopqF7xLpdOEGng1BRD+DhlGYvZJwxQhw5FSMTACPnesu7A03s4ZjjFd\n9dAwLMUh5nb0IipYnyQkNpl1O/4jCqjABMs9X/c7KinAD8k1YigzpMnH0zPC\nhuv9\r\n=p5u4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDBbfDtfEyweErzZpykdEHvpQjWXFHsG7Cx5h2qY8/TlAiBKYkBWCH9higTGdSLNepfBhR3L0tQRVCSamDMg9EMqXg=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.c8746ad_1575397611175_0.5440737265980125"},"_hasShrinkwrap":false},"0.0.0-dev.2140f43":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.2140f43","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"2140f43c84fcf8eafd0deda865f762acf55bb394","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.2140f43","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-K4vuD1aon0LdUpKW5sjJdl6+zSVFjjEZu8mkUBrqDNHsvfIBFW6ISZZbDJSS2loKvbWj/nDZJxI7ZwALf5IgcQ==","shasum":"262145b0ed029675488da012bee7ff4e8ac4c720","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.2140f43.tgz","fileCount":15,"unpackedSize":18169,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5rc3CRA9TVsSAnZWagAAgA4QAKBHzMmuTRly3Iqf3DxH\ngp5Vh6U3uG9aag07NojOUzwUwtJxBWe/YjvAgei4MWvszz82NuaKd4mHOJbQ\nTbAwvQqQSxTtEbuWhTiAzRoasx05EEfb5ptaW4AOi1ons/hzL1cNwQz9cijd\nrqqf18UbuFx8kjiop0CJpfFjGVSqcTyriZo4b3fQqRJRjp3WIQ+pDLTgX0Tg\nVXWpbMwwqhhEHjwA4nSjFnXb2ROE7YpsHjnuXIxxGRo6CHT9UCQ5hmEsSfj8\nULAdWUCXcqmdW+u+PAEwxSLgQFVXXEkuLS4fvhjIOy5knWNNuGPwWfTJw5zu\nTlC8x7WYmqBq9MgMoh68udYjp7xhpu8E+f2UaMXZLmP3oJb5lrs/n5s+oKEP\ntq5m4mX8A4Qo/lTES4RyLK8BapYEylt+Nji/vCk9dWmSQYJE18n+3BdtXo03\nPhEICIxwRo5pKT6QfkMZ9BV9SGKZRcX1+0kJaG3d1yM96xwf3zxOUI/ciZ0P\ni/AeSDYDzK20mfW3/7CN9brqcFqwFmx65eNn3vB2hZs19c2XPNqyVjkV0d4k\nvnRLG5WUmMcddo1J+STb9xDg7mB3mODqI/SA9eG0gyfdKdvXyK9LwXRtmf5n\nrtOrWv/jEWgvTH6ITSnPxKt55GSwMVFlGqQHzr4P6fGnZfcCel+rdFm+O2rU\ngPMY\r\n=ao2G\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC+PWQIBnyqZiflD5smvPUaMK7CA3kyikbxkzCCYap8EAiEA0HvKRrPYNtZBFPF52Sp9lXYBu0AV/6oqw4+X1BJpJ7A="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.2140f43_1575401270931_0.8034607589106055"},"_hasShrinkwrap":false},"0.0.0-dev.1afc340":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.1afc340","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"1afc340204d25f5f0e099c6b0da3ff3417780bdd","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.1afc340","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-b5uyDyqDe/5KMFL+4y0qKVF3l2YqWHTbexwJU6t2I/SumSk8R+/FYFaKp9dq0BJy/4ZH1FdTvMYR+HsjzVVZUQ==","shasum":"6f2eb068e8f28b915b06ddd641042bd90f14bcca","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.1afc340.tgz","fileCount":15,"unpackedSize":18169,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5rlKCRA9TVsSAnZWagAAtwUP/RooXyYWSO9cmhpcIzZ/\nX3Kf2nGFRehmHHHpjUknIY0RYtZqRCGhzheIm+ER81JNYcn1dw1BjaPkKaVP\nmp/5OShE6h0VNPEkykE5Cma/cP0S0QXCF4BSS8cyBlIRTJkF6S5kbsKQW3oU\nlS2vBLh/scesc62a1uI+9X1hsK5/XqBdhRon260p+xGJW2l/ESU3fbK20NuD\nLUVl5iZWWrarpb+9oQ0eWhRP2jNEn3HlH6KYUDjMIZzLZbknfpXMKPGvvhQF\n/TPYyZMkYTJtTLD+M1pQUhp+CBjzzRzTSswQps1Sfc6jArKeUXnprdFaumeX\nw4gjJdmspFkNnZCuPSE6HT5aGAPWmDRatmyfo8NjhIypN19EuuUyDlvMpL5Q\nEddIO9orisHIMTbw66Iysz+W6lTQe0U6whscl8YkyThQllS7BdE0YUy547J2\nfY8euaMLdZi+cPPLrMrX16BsKDj0tbpBRz0BM9qOfOL4QPreHGYR5jWrOwKK\nvoxKfJNQb169x1+BEVcv8ycZy0z7XI8Xa9nsYymDnEnkR+lTkvvLNxXnhzmF\nLqFH+47qsdHm7qTivIzPbsvZocpvYeZapm16atF5YQVMNdYr8PU876VF8SN9\nIhxUBcYsAhNnhJN+kiBCPL4iNB91VlxOBrfvZZ2dFH2HTL64ihnJoKDpeSKs\nVVwD\r\n=1lWg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA4rMyCNN5DytWV/DXZs/SN9lRJW7NsffRIIuhZcR5dXAiBxOlDBE5wUTf5Rn5rf/c53URAEcGAIGC9GAXTBkZa0lw=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.1afc340_1575401802116_0.8669710475017038"},"_hasShrinkwrap":false},"0.0.0-dev.a77e1c9":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.a77e1c9","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"a77e1c9f6c1bd7150608fb8dab7a9e0ecd365737","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.a77e1c9","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-On+OVC3ICjJqfUZf/dMLt354jFkZDOCamHAU7IDK42S3zUkegq7yBZWt6LM7D+F+XhUEzrRrgqMEi1+rgCChww==","shasum":"bc7c7552a086a3391e738f4990aa5d2d5d53a2c4","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.a77e1c9.tgz","fileCount":15,"unpackedSize":18169,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5rxaCRA9TVsSAnZWagAAe18P/i6p5WI7yCL6+HFajLcp\nHPD8acevJndiQp3kjqFmg+uhaB2FHiS2515PWMw05C9rV1Sezj5mVfZsfJp1\nbeCAZzWdqnPFLVxkDpGUsa4+G1ddruUX26zw0jh59hYM/HZZRABLJihiUgxC\nX4tN+6vAJ1bPeQ1wqb/ViAxFPyMU0bA5+QObZ+1An14nkAGWmO8sstJBlp1z\njL9OHhICV4HK0HyruDDQz6AOmBMnYyw7yTHodhukIJRGJCslxssOA7uXQXPD\n3t+h1bSlubrhYWzYi0o8IacOccXHpIhg2KcKynLywp4SAS+gQdjfLJAAp1wR\nAjfIARrKg9d0DBQmguIstRhznHQ/n/18uL+J0QcqwX9wpEDMJ6k/bKHyefWv\nIMZldV5j4aHN+afhEywDCoT+RlZZtvQUFcDUuv+pg9btQcgKQR9A5JnZ/S0+\nvHkHLD9W8uw2RKZtszljWKjr1LN8exCDGLR+oozFpt/izKs7MSe1Qmf4CcQC\naWYl7ule5gF4HKE8eznj99J3LkBPNYVj+1OIVggxqplxg8AI6d1y5MCRv7V9\njMGojU0n6R1hhch/M0shhq/oqResvhsY2gHDO9+aiv0GUvbu8VlodLDZfj/C\nGw637wg+lzw26lpuuZZGgitB5YjK/FFnOAQDc7jtuhyY9DSBDcG2l/W0Hmrs\n6MBC\r\n=b+Bx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDhoyRK/dgedwNitHVawAtf1Dbbq18i2LlRgWAlNO2FOgIgL1gJ5jwKkgmQaxBo7hW19PjV3p5+s1EZiWtjMHpcY2I="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.a77e1c9_1575402585844_0.9503213630893093"},"_hasShrinkwrap":false},"0.0.0-dev.c4e593e":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.c4e593e","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"c4e593e87bdc0dcaa24b13ac62683358bec36ddf","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.c4e593e","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-mIMoNE16H3HWdaVXiuQeN4OLa4vy3tSckix4cQM7J76qGznErXBuWSlOXVC05S8wxwKvijURzNArMnZrQkT0Og==","shasum":"b1926d1908866af80a474040161c5752fd90b0a6","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.c4e593e.tgz","fileCount":15,"unpackedSize":18169,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5r/YCRA9TVsSAnZWagAALf8QAJmS82QNFIbJREglKNIM\n/dgzUmFQ4G2xvWVRSHtTFgikR3QO9Ct7wlqdOuKjZAsGwUhyV+EQ4gzBTKmU\nDjhi7Fs09pYWOjExxkLEGru/hbygUa6IhbAvp0gIZuurF2FSgXU2U5HP/QnG\n9hD7umveFshE+ERSdqeRs1lPK2bN8LWYc8rqcscDTYbzVWuA+f2PWw5RvoHx\nQ6sZaZJnENymlxJSGG02e5zNBVLlJQois76zjMuaGTEHS8bor4wdelqrc8Sc\nXdLC8I1eW+VlMZQzhrmQNXN5jKXd07ZfyuhfJ6fu+LIuDhWOJnQk6Df3NYKK\nWdPFH9Itt2NdsByfEPgBNTf9Pxr5876qOGbkLS++54VkYLbMwjEVz8wXqgJ6\nq2St9x3IuNKh38ogyB4bN0qxrOze7PSSe6c3knkDj+ShLc2elhtE/tbfifoh\nxSId9kI+yqLWlMHINfdcCW+dM62a5C5Sl4LBmc9uApEdbC6Q1A8lV8PAaJ2D\nuKJwqfrUWYTc6Q2GaIF3YmDbUDO4HWKVLk+RGaUgbj8YrfISRvFlH1e06wHh\nLuIRMx45xCT4nR8tw5gm25FuvAaZfJH+Zh3nSSeusrGVHES5W6pTVxgD6JKi\ngrsb57AZAAftYnN4lL3Klc/dhFByMi0wIazMjkO+nNmE2qNz/joIsmzFwncu\nP1Rs\r\n=VaKu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIArSfTlDRTLfOwOrorEESbLGbxZo3wcT6goUDDYyTjhRAiB7udtqAgurtufrRYaacpOqKA5hbT8DVUYEaIQe9Lf+eg=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.c4e593e_1575403479856_0.31833125606531487"},"_hasShrinkwrap":false},"0.0.0-dev.9bc83ed":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.9bc83ed","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"9bc83ed445140a054f0d6c4e532a8d87dc9ca5cb","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.9bc83ed","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-hB5QsKhvmQwgIa+5LtPsf/qgsYARjQfyuuCUcDQ8qsVs1jk+GU12rCeYXnNSFRPtT9JnJ4jb+YfQws8prn9w8g==","shasum":"d52f084a77ffd797bb028b46c847693a65623bfa","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.9bc83ed.tgz","fileCount":15,"unpackedSize":18169,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5sAACRA9TVsSAnZWagAANygP/3N9tfuLm9aTWuqfH05b\nuMY5GCwUpd1qFFnlaBMXbrR/poLCQYK9TZ9lXUO68VnZcnTsdQQh9oMCizk6\n36n+YWfyEII51D84W7Mfd4PtczYZv317qynGYse3G4HCSWbA3zYz7Ho7wnp7\ngQ8Pm6faPCWsFAh8hyAOD0BsRhmBeAzLSqZ2sneVPrdU7AhjkHqk7FDRLnTZ\n2caUyxB6ZAAhhzjF/6TimsLuOxEgymGeZb+7BF27s0E2dV9wlvI1ISpljSFf\nUelT3Jak/BI70b4Pdv3TXIxLrAxE5GeDXn1dVo/pMc1sacYOvuhCT0lcINSO\nDMl8b1jXmH5eSCsvHyPSwX18LUxRgPB+qgdgR6TKXYJf9HOzIxLDd/s0jImU\n8yKErN9k0xuoEO2ULS4z8qZOBF7s9fMUuCLszfJDdLYwu8MgA7lUgXcS93b8\nKnHy1S/LK5dxS+iOMMbl6J3EyNZla8IIK2aZ/ZIm6GmCcs2XG7ZL7sCoshUm\nBt8QidnlZFD6/GMCN7I7iCaPHW+VKZ/POC0igJGC1QpwPWp8Gbv5FTA7eKV+\nAd4ARCAriyimMCYOcWd+5ZSF+5CwzU4mQ8tn0KCyt4/OSukanhaTLD8E9YEV\nLvPpNELD6LcIWW+u8YBQJ+87pL8xQvwA4z8aC3AwpoAldpNp5nFFFHxxR/VB\nVsvK\r\n=hM0Z\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD2/TDUccUEezmqhHgzKXRGkCIRiVydXqDDA5mKO9PLBwIhAMnzHSMKu5z+qkBPocjRSSJ7SUVQo+ySZZe4+uE/U8gE"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.9bc83ed_1575403520030_0.25971594878800963"},"_hasShrinkwrap":false},"0.0.0-dev.41b1811":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.41b1811","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"41b18112f0e6e7f1e837ee9c6fb459f0a58359d6","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.41b1811","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-lLlqWytPTvlJtx87HsPz7wuhVuTOalZHYWd3F8EvqCtCayLEoP2KZhPbPl1/WcBwkFJ6BWXfIoQISsvOhvgYlQ==","shasum":"dc5f4279b9a1eef232c3e33fd4d9fd324d1f0454","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.41b1811.tgz","fileCount":15,"unpackedSize":18169,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5sS5CRA9TVsSAnZWagAAPx4QAKHR7+KQrckwGgXg3AM1\nbU0+5ITqI+DJO370tEQFd7VAiCaD3iBqRiRQDwBcuynDEPi9TSLkU7NsQhrb\nufW3xPUa6+e3CMG4AWalSmi7cvsAKlK/y7BAuPCLy9T5jsV5hKzkvSz8XPED\nBQ7z7caUIe416blU4REIJMzacOKr90vbL0eEOYp4Ls+dePKN+fD5kV6fPjJf\npiJtiRkLnGHfIl13zzfJUMj6A+AMWAv0yYxQ8ZPBjgvA2jI1WMVpmVOv7P95\nKUtwU+wD6aN5OSlcMw8YNisvRD5Dm8uPN6oeRw1iVbnYcTwu9f9KFL433sjw\nwAsA5qZ7TXao162hIT/2AzuSchhBCvEoHvpXhvYXgTFY5IDJiCAf/G7ppnFX\n6L5jpKi+jQ81dTiuPyhw3FinmmXW5sY9kQ80Yoqt6sm1YFn+aIB9dSFAocOt\ndZEHOvy9Z+Cmf59ZdzKOL/T6bZGXn70SUd7g1eHTY9pmmpxU2Fa2HKo9Jwer\n3cXclkRtOh+XHG6+CZXSK4i1QsGwn9zQ7U76+kw4zjjQQNV3sdoTVT56Ni5X\nmMLb9jKBzBjubS3reTVpJW7Fco0/rBzHira389oGkvByneweMSMnR8ijCa+Z\nfh4l5F9bTwpOJ/8HhjaI5zRxGVgZswE1Tzpqcz98icKnORLcs1UBJdnUPxT0\nx8ZP\r\n=9W+7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICKyeIOvfjYYEqIt/iRddllnSmqLwFXjDw9fp/c8SOmeAiEAmjc7VLYCLJ4ZeEBMJpVEQzXZ4d4DTd/r4NWjjlk7rsI="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.41b1811_1575404728796_0.015553355093147925"},"_hasShrinkwrap":false},"0.0.0-dev.34ab0a0":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.34ab0a0","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"34ab0a0c06807f927f515f0b2eadfc9eb1c75a5b","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.34ab0a0","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-nlgAFTHfHpmTyPFOGeGSgzoZIxaUa0cha5hfhNv2rHJ9CI+RVDiEMO7g1K1p9exa5AfsYm8cc6x8IF+qKgBY+A==","shasum":"e7d730d47e8057dfbf774d1b7b06dbe429b273ea","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.34ab0a0.tgz","fileCount":15,"unpackedSize":18169,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5sVHCRA9TVsSAnZWagAA9MkQAIQnvdN1OLv5qjVgKFBU\nZdj2sJb6qyS+GlLudXx4He0F4G+/1cXli6k7z4rHddpiLQ56+hB1BeuTpFpV\nan2wTk48j8oH+g1qFGy/g0ZLqo48zZsvq/qluVh9460c99PuyWzC095geI5C\nS9nGMZFOMdrInQO9/TFBOoHkW6Vf1eScrNl+lhnQSoBhxN/n3FafyO0MufNM\nppAX7A5INJzy7MhN8WgbnikpDnaV+eemZIiOArwd0gOZ6XGiWGxaoihBaAMi\naQKSQMrwQri8NdKU3owJPmLja+PvFsceAfdUkbpNcpTGgiQnWTE8k0myh5aC\nZltQQj/kOupQHhuLFVqGbMc5jV8t6lS+ncAUJ1EJA7KV5gqW6FuLPx5ApF06\naLdJjynCgVixjJB98NfyAw9ccGhED7vikAmb+sYbWyosSKMflO1vkEjrFGE2\nEBwXP8qExMQ3iGTBg+cQ2hnRnN1K0vBr8Fh+1eqtigot5BZrXdal9nsioQf4\n41z7NZxDET2T1R2pHLn1hIozz13QDWYvemEeUIVutw26caWZkUQlSusQs4yT\nLk0dPTnpgia63WRAZclnjsg32ilP9GfUorMJuQN7uvNgpXpE5rRPTsCiHsol\nQTF6QlY3REVcHKo02dS4MuTWiX+5XbbzaxNhv8un+vSkuozrOIAXPcsPRPVo\nSS0s\r\n=KXyy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHPdxV8mV1x8jUcfFon+V/hu0DVxoEJcPZqpIW0yHOhqAiAh7D1w/cSmeqZOVq9OPUeayK+dD2RZwRJ4UQgo5tToqA=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.34ab0a0_1575404870820_0.599156687586756"},"_hasShrinkwrap":false},"0.0.0-dev.8862dc8":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.8862dc8","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"8862dc872b2695ff381fb861491ece22d0235adf","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.8862dc8","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-SHbSpvXBzYv5BEqCezERkicYL0jmjXS4XahuKp7cFNaRBeh0OzDGBMakTNplOxIHYsKrNqHaIq9kVmeRwBTi1Q==","shasum":"94af07781bf58eeb473b62e3a9c4fdd921805909","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.8862dc8.tgz","fileCount":15,"unpackedSize":18169,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5sW7CRA9TVsSAnZWagAAAMIQAJafcAmMClyOYsTaxi9b\n3hYiN/gDvXyMAb8owdni9FR6acim/dfN6IHKhHw8H1YyXfMOvl56+joe6M7b\nbeSe4xZyxGhC8k0Jgak8gAzx9bUeCVsSQ5y9vEiDlftkjUTegcgDBR77iI+/\n9Wp3jyQjSOBwEihuUw2sS7ckniDmdmYEjkMi2BPN766u8wj7Izm2ftLZ6XFY\nF/CpeNrBkPkYY3gMDyPJzH+Z6PwOdmrMM7i/w1qxJ9Gmv6w9xu/OZzQchQ9F\nzAiTGDNtt3anB6l6DGEJIK+SlTMIrAfRYHBdD9+Uws00G8Dj++qKaQVoDB3p\nvaN48ZpgDINjxI808rfUDLiMggNh6P5dS2gkuXnKgxdN+WZigxOqB2Kpduzq\nkuE+kxMO8JSgeq0g6qOnTpnK6Dccf4ze4/Eh5rQuCOhzSt8/yMUqUPthDEk5\nOMZ97KjNEvLoGVK9mAew3M2cXfP5XNn97J22PeFGIcqklauIN6RIPS6GRR8E\n3mF7OitDFScTPg3cExLVcEjbqU289mkLAxpi7cm3G+CVnzGbFy4Jd52UOLI6\n9Jsng6hk5bFu5pOuWVcal6+eW8UUSclYvuDea18BoxqI7eUrpcFZL2vXdXw3\nAzT3WC3RfM1JP4GzCioiJndVoP3TAoUA2BUaIewRYMx+7u8+W03AwLxUUpRk\n1lv2\r\n=lQlY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEiSKtccHd0WAbrLJMgxSAh7x3wv+BD2DdF2+IhbC+e9AiAp0FPDF/tqs6t6vvlPrDMvtrSEJUtP/g2dTZENs4lixQ=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.8862dc8_1575404986742_0.3427134837200778"},"_hasShrinkwrap":false},"0.0.0-dev.f2163f2":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.f2163f2","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"f2163f25575aea3c81d35cfb82becf5141f9ec31","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.f2163f2","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-FOeKXkeJd01TtowxBPTFkOJYffK5/yxyupZtU+GtrmIqVD41DcPmivT7CzrgEL4PJ1SoKBrQ7zp/sriSKI19sA==","shasum":"3e482df23bbc2a21659e44d8700eba9d4ffb5ae5","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.f2163f2.tgz","fileCount":15,"unpackedSize":18169,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5sdXCRA9TVsSAnZWagAAai8P/if+UQLLphO3hqGRjA5j\n7jbfuM60ppH3jQQsgdKdZChnr7UYMgat3WB/Ng0thsJ5AbNlXV9uwrb3TDDO\nJa56683yoDOy20fYMJ6T9htjmAfwnna9PF6ixuBSx4E8IRj2FT3VNTKoX1WG\n22rqTnkQQBKEky8IXqR/jGPYrRod/ax1X/J6V8b0My7NvdONURmMAOmpc9Pp\np40Bf1snvomGgDVda29yRXxoeFl3ctqstr7Be7/wEuzbwVTKKdZ/F2QAOt9g\nbrzCtvfjh63IvVtjotzFoSldVavbSRXcSKkGqypIWRnxUi2T9b4sczf3V/Xd\npLKKK3B+crvHYO+3NG34SrreCi0svBrEeFCIkyUqZ2mFIdnT0kz71tcb1X/e\nB0m3DLiV5Es0BrZn1U1B06H1CPZJQlHHAOi0oqofUCLOoS18FdFYpPdOsZgH\nhZrbRHdV20vDQK5WYt5jOF51mnLCgObMjKPb1so8BE2lewLFIm2M6V9XuYu6\nRMoohp/ScPZH3n2TsfkbAFkHs8axqCWsI4xT8GWYVsq4HoF2HkW5QwEQCCnk\nEvUTpyw2h7EsdiTPbI2CK4Ter9FejmlMQNu/0+x2lvE9xBifZj5RgLdhpJaZ\nf4eFNGQ9SutBq9eeZWlLC79KuusfezFnqdnsoYQJeTtJS23mfntSJmY7/Eqp\n8o45\r\n=KSIa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDLVAdVdnKwfLEQQBe82H6cH1mo+07d/RfMRisFi7ORzwIgWvkPoQr+FwiMay9kAE/zXRLY/e65r6aPXbSqvpbMxLk="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.f2163f2_1575405399379_0.38130707655638796"},"_hasShrinkwrap":false},"0.0.0-dev.e22cf9e":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.e22cf9e","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"e22cf9e3da6a3f3b3441d3ca55670cd0f1888752","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.e22cf9e","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-TA70zDCUKGyC1eYC/ugHdkZB63TI4FCHmjsUaCMD5gmo65n7+fukVMfLz7DzZ25m3bFozmybBW6+w/3tvUhvug==","shasum":"f0b90051babd5b0d1a771575184809e8bfe964f1","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.e22cf9e.tgz","fileCount":15,"unpackedSize":18169,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5vIOCRA9TVsSAnZWagAAgX4P+wWxQtAshgOLIOaTUlAR\nkYRv5pKRRVYJb+lP322V0DXUk+rebe5jrUb9WlD4NvU0vLKgWzQJj2fcz170\nkq/FXXPlHajscI9LR6IxC6zNNSwoPVZy9oCnIXFF5wQEnXq0+hChodIM6hzO\nMbt8CPWC5p1AY17HtU0/J+KOwOdjcDKou5HtjnsxJrH+LjHt6GuGFx/0fPsl\nS9J9b/H+sVqIomT2me8BVudn2OD7Fscym3VH1lKGKMu82BKkGBs09Dc05w5A\nI0gB/t5tx+O6TjjEyN05iIDNgkR/ucS4XB/w7eZyazrwaRdbT2LD1qOUROV8\nm8v9MMf4dKTfYPZUo6qblw6s2ob45lJkIVZtUUU4Wwq7iAFS5vnYCbA821Ls\nblKFhVfLhRB1y824dNlBYKsR7qtPGuVTjRHQY0+mEeT0wB38Zug1TQ0QQa3Z\n7pVp4SMsBOHw6M3omv0klxjhep9JpIHbJTc7eiQniwB8olBrV4pQLpH/a5nv\nTcw+ng1iXRaaOeimVcM+ZbMiGDZZddIL7JxzucCAPpFPxnqSza4aUXWFH3Ch\nk34bZrE+YVKLjC/zN1K/NqgFlidN2Ly7VsthrhiVvtKfZDkTJSAVXdGk3wF1\n/wX0kSbSqer88jCIBuYAvjTR0vm3xMFu7RwSQmGnhl1SAwwI9NxDOjkVwZV4\ncP0J\r\n=IwMF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCg+8nNJwbE2pbhjBku5mzTWi4VfxXOzWFf8TjuEN7cGwIhANRfHL3/jT4ukcwsl3MSjKpKsBpWjAP3dB7jOPYfzZRl"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.e22cf9e_1575416334183_0.6474857433501464"},"_hasShrinkwrap":false},"0.0.0-dev.2d66faf":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.2d66faf","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"2d66faf691fb150b76da4ea631d55a4c29a840ec","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.2d66faf","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-qRvvfsZPjMUtQYdmC3liaN4zg4UPHYm6hMqQ0LqJy4wfWRu3zptL18U2JaufeeuJ2TZuJcAjeCBqcjKuu/x3iQ==","shasum":"cbd856992116b12d92876e948fd6edc2281c778d","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.2d66faf.tgz","fileCount":28,"unpackedSize":31627,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5vtKCRA9TVsSAnZWagAAonMP/1DgKZjzPQCU0rSWOj+1\nWFZRr+tKXuWR00C1wfMyrAhdh7ZNMbJnBf16Uly+hh4FEAwGTUapHnGWB91N\nepibVLzBodNihSZEXsQbObyIhNpd1ugwV4kswM9y58JTKc2ZE6q7DcyRpfKn\nVq0WbcWSkGhxepBvKwisA44PR032nK7/evjyi5NIfuBzMB5038SxlPgmShiR\nJE4kXwz7P5q35jWYYfW3gF3ituHAferauCzPf/J4jDTmURuRi/BXvPJQ+FWh\nriCx3ESHI/kQit/oToPoR8S6Sp2bFg2PH68PEhZf33rwNfD4syHx+eBwfTnw\ngjjtWNUvZYHNHWjfHTkoV31YKRwBtWaG6hWInFRQV4ieUkeC0ztq8CNbPUEm\nt7ZIKLCgCXS2ndtZ/k42RbYzJW0K95bSPj7oSClYGyW6bCverrcSx3uZ8krm\n+NH/MtTz8p+Irj7JHmZbHs4+IzkDPebp4peY2upNBsKiI5qWHAIhoH2+cAOb\nHoTLjkUELO+eenqkzJ0V6J+H0zurg2o6tLSqBXdJuvxQwrwmWM7dxMql+hlC\nHAjZrAOvoSlr1ZeFd55JIOxXa+Gputm5Gu2K+9Aa+DbVYGJ9tRNzqiP+QJFO\nFUJ281wpSFGX6B8gZkjMztAx3f7gMuxZuIZFt8U520Nq7ixUWWwa6KiU9Bwe\nAlAt\r\n=ijIO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCWEW5wW95/JOSe6MUNrb8XJ6N5EdvCAUhWNfu+2b6JMwIhAJ0jl5zpwieOv2C9ovkwRHYFIbD08zMdEms68lGcW2MZ"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.2d66faf_1575418698225_0.970014760314055"},"_hasShrinkwrap":false},"0.0.0-dev.df63ed0":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.df63ed0","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"df63ed05a94cb77135c590257e9114178002d7b1","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.df63ed0","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-vFGxyR4yFbD7raMytZA8yncydrUDUJFH7RTXvkdsuTCfOyYgLIZwD+0j6FtO1jhOp3xYXkOUqyWxBYCanTTA7A==","shasum":"8645deea88a410acc116db4ce213037027a2a2d1","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.df63ed0.tgz","fileCount":28,"unpackedSize":31735,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5v+YCRA9TVsSAnZWagAAZ+YP/idRh3PxEmdlz04dJv8c\nyqmfOCgP3Ht0YS8uWg7Ux4gVpJzjR9AcMaun0gGk3+2/rfn/OnHTz9Js8V5O\nCVuBx7IMBCVIdKGJWdoZDdZQY56OJPcUtlM3oF6FHTxza9v0O1K/eGRZ8r85\nTCH63/PRm8c3MUXvjPs27DWBn54J7dTwAJIEddNaoSsPFrVW2tiB6Bz9VNH7\nSkuZebM0J+QWfdGPMTnRP69t6HPErh+NlJdTWVa9S8BzFexz9XVPEvJG5VRj\nVxsXZmzmMiVwb11MKknPVJ3eWirqJIl2bL9p+lnBMHI0a3rM9GFEekry+9Qu\nhM+v+ZKL53xM1e1wDCyUlGT/imY9WYttQPbwQzE4XNq2sFWFs5E3+/VnLvBV\nDgxqiMC8/Ng1+yEIO/1f7H5vivlPi+SwIxsOkaTkd4i6VtpjI8dCOIg9uj1y\n+2IRbO9lkX/rMt745zOjKt+TUcpeEy/vcooATKefTMtmzM8q54izo49rUgpT\nLRglVGydUvAkHVolnmAzJGXRiO3AhyCy0C8nHV6uAkskhs7avi8vpDP4wKpJ\nPBzuNpF1YVwj2kE5Jo+NlqdpaQjHZhHI7y9SmCRQBysUxuA0Gj17vw3hG6s8\nQNn/anm1tqgC+GpJudGXvk1JHQ/8IxDaytybkHAOr2ZS5oLersvRRf7RvrP8\nhY/+\r\n=0mMD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGFSFMXFZiDKdvJtn075Gh1Ks6B88xi6H85Flm6IqjA7AiBqaxoqJnfu9tVtBDgpltNbE1MmqZx1R8gKgK59HRmMPQ=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.df63ed0_1575419799673_0.7150102339803599"},"_hasShrinkwrap":false},"0.0.0-dev.885a2a9":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.885a2a9","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-subset":"^1.3.3","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/nock":"^11.1.0","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-subset":"^1.6.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","nock":"^11.7.0","noop-cli":"^1.0.0","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"885a2a9f627e642d1532aea0e2f690b6831190fa","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.885a2a9","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-7tra6rPruWuIhPlskh9vn1DeWRx8wDWxtypS4Fa26Qi9Ht23AzrXsL4llMFFjIcwovJ1QTggs2nXW1dvpP2zRQ==","shasum":"af8f93104f403987262c08c99e799be1b38a9564","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.885a2a9.tgz","fileCount":28,"unpackedSize":31735,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5wGECRA9TVsSAnZWagAArBkP/RhqsTbIxPu9fBmhJWuV\nh6QPZkFWkExeMD0tjk3IDdMkZr8pdb5L1/PuOT+xBbGcCcqR9ACkHhFOdt4k\nmyVZ/HqGzcT8tQwskC6m8tIPeVOVT7SiQfKS7AnTziOHa6JTzv8l1eLUKYIl\nziPTeWVMGTqMmhVVIYhcOCKiDGQyKwzDj5e1NE45ODvwDFbkJZZHXo82ZvAo\ng8S0Ls4Vu1Q4aZ7p/0qtuKs4qGYUM+cH87LiFPT4vY6+qNAij8FWzEZSqcjF\nggGv2VJfJVzpTEQqCgFcpNA7EUk3LYXkpJdAcXN+b6xfplgChAAmKshK0XUk\nnFTM2AihnJiW8kFIZ5d/NONLlNHmj7AOqCUB5wIfk/PayRAjMiisfVv5vuWe\njtTawi1fvB9bDa+h7KOMrRjOOo5cSTSAElnLOsXuX9cJCAb9gD4aQDADxXFQ\nQpQdH80T6Z+TYl29LKLa/7yn5soQW8VrRoiC6W7GaO5lMcq3pcjpaoeqHfPu\nl4R9IXQb3TQZLwXWVjtsZtDbTwBYZ/ZIXCth1x/iOIYJsfD0h0/7EGrTNPCf\nHknaxufUy9Yzex4BIKWTfSpar/WP0rTQVyI6N97/OS5FhvEHdDL+HIXhg8iZ\npMceNj8/rWHaSEYxskbwlGFYIotRs3UHdpxJWZsRGUll1JydRPnrZqlRgdLJ\nfoig\r\n=1yDe\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID9+T8Cr1SAjTFWNt6ynlCjqbuV1sP71J6HcIbETk5ZLAiEAkrrMZeqNeMclKzECZwJpGJgoKCUTqNvE8w1tFhkZnZU="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.885a2a9_1575420292121_0.060296381460325676"},"_hasShrinkwrap":false},"0.0.0-dev.48a567a":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.48a567a","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.1","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"48a567a9e1d8d47eb19bdf1114a841de94eda585","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.48a567a","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-61Gh2GH7ddshw7mK2aeoWFKcQMMu1oXmYK7Uvx3q3r8YUG4j7k/3G6YoSeKG4MwSNA69aMcFTBEDRfxnsCFETA==","shasum":"073a942fcaf4b58ed54c4b9174112c7512019011","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.48a567a.tgz","fileCount":26,"unpackedSize":31639,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd6HSaCRA9TVsSAnZWagAArC8P/iPAME0QCUpz/F3R6FW8\n+UlSpl9yCWVOEsR/VVPcBrOToC2aVjFrKZZuvoWSuuszudJN99lBIpqOJm/M\n5HSkdiUBllRy37UJ8NYWeoV9E9YUiIw8Y4Nljd8rob9nyVRtX56b3H7NasWU\nCQrKVLI5FM4efILtzGTSsCwdtotY1F0x2nvUGda0tzpP0J75QWOfflCG+Wto\nJF3lK6BAkgsIciRmz2DcMtkJocXhd3Kwz/O/e7TXjlfD1j3Xpu8mkiYAxyhZ\n0FgStQXxib+PXemYDPKey0eyuQrlIh46rsmRJaGC1WFGWo1SDMQeUM0Wwh95\n9hrHwQWN2jt5KiW2JyfPv+PZHR/fuhJ8tA8lRJ5RlfdTe12vXF5d0XoVagNh\nnikE65bRNwRItpEowBe0+aIDsnq0uhfbxs4PaTR0PswXSdrjl7+74hyF+vUv\nbIZ7b4FJPFMzNunpHneQbZAi4nwuns5axoNUwacibZ9G3LoxA77cgWy9bFN9\nX/dlXBcpO+IIza9VOgM7YMxYGqNMqOhUcW7SDnBUywFSGi/625w612a9G1jh\nFNAesPtJMrXwNh6TAmqno9t4CzDBF3Tsl7R/iOnR7VaOZw7m2XopCSs+AAz4\njA6Xv17Oq06JAYemwRL/4w8piOIyXj7Q5Du1JRsuXeUza5rN1sYRA+QpZC1M\nI94h\r\n=egas\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB4g7GVKR3OYeJkDoua7viU/KCIBnYUpx1MA5HzSNAD2AiEAraL3m+SIAYPZbRWZLKv7YdGEKlVti3a9VFNyOiPIPBo="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.48a567a_1575515289487_0.0024599907427758083"},"_hasShrinkwrap":false},"0.0.0-dev.859cad7":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.859cad7","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.1","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"859cad7692548663011af9ec72e6fe40da1f3bdf","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.859cad7","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-HT5TS9SXVse9BNhvPB3qAkePLmLk7p+AQERz6xWyQgDXJGLmoqJKwbyhseuvxa6U8hUYyon+53HqvbADRtUjqQ==","shasum":"43ef0101c4f44a998dada5f271943b6943c11ddb","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.859cad7.tgz","fileCount":26,"unpackedSize":31639,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd6Hh1CRA9TVsSAnZWagAAzsIP/AmT3WI6ThHsRkyCCEPu\n6oUBBrU7ZgPvmBiQHz0BpcSM9lFurHKk1DLMgw05q5u+oMBJ6tVU30V60jWP\nnCaMmM/IevDILRlCWbl0RnouHK6y6i+pvx+ind+gYthJaCzhUWUu7MbLSQtG\n4rzHiyUIL6Gwrcas3XV8+RT1gWWYoUPlhAj/BNoy/uWTNVY73fNCqAr/ZIX0\njBd01PlLRd0rOOFP9yAd2EPRhJr3kGvF3ixPTFPXqsCNUQgnmw0cP++Qax76\n14Ou8/lomKdyDdsz8qhbJ1U2EJLvL1PM9crCo/d33hAOakYL/VqALwU3AzIA\nZ3w2Pc/kApU8UbfX6/rowXnL+8NpEX0MRxQE4hHXxLz2h+WhR/Do66pzTfMh\nCTBQ7wJG9EBctlT5hU/f1HgjJ38ju0wdqmXPtWG3NhfR+AXCtfPiofv/CXHk\nKSU2SppNHzwvrBBoQgSX1tvifTVnQDChOJIfbY2Nlf1V6fpPYAQD4ExeJeK4\noRPIpebUp2LsoteuioThyb4u5O0lr34GhGFY2fEvTk+K95j/BBbz7fk5Isz4\ngoCG9hro2cUX/mxi1jFET29VK91nohY5tootOFuvVPN9xr683S2CtTC+5UQv\nAWQ5gh7sREDFR7sV/N1EplFr6yPd9dkopHWla1SnGeYLerA6pajLvnoZfSXK\nHBiR\r\n=vNI5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDEBmeigT+IWh3HF99EAmc+e4Nd6AR6ZWWVetn5tlWGOAiBDLIYNSkH5ar5/01Fzp8vrPYv42LcC3KuidD314U09pA=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.859cad7_1575516277324_0.912828252456978"},"_hasShrinkwrap":false},"0.0.0-dev.ef1fc6a":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.ef1fc6a","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.1","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"ef1fc6a686250c561e778878b92a45984425c1eb","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.ef1fc6a","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-MT5dUWFbnxhty+uId3CIaC4eQqyO1oVK660za9JzTOLT8MWcy0FbqS/zzl+FNcJKpzq7vwAmoRQ9ZzXNRXPHRg==","shasum":"cdb9d0ee4052e0538f18e04d4ecbae6c00122849","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.ef1fc6a.tgz","fileCount":26,"unpackedSize":31667,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd6Hj0CRA9TVsSAnZWagAAw6MP/3SUWZLdlXD2vjf7YLtA\nFSJKfev0/wKvDQTHecjbLXb6AHO1nBl5/JNviJIU+2dEm3bV80n8ndCLKoV/\nmZK2L9cZm8umu5QO9NbkwrfLktJe84hmouPJiqaiIeejb/vUYiZLtfPeIIry\nMwOTopOkWOS8Y3D0/lM3N7dhutkVZB5I4vmI3MwmKeI1BSzbz1s02qQ5lDvt\nxkSHQ9eI2wrALoTG/6QalGyGJ0vO4KLbyI6SWYT2m5aQu079T3EPY7t9h45i\nL8E3K4bAXtd7UkmxLZDLXWQD3DAt3YoQDTOhORWV7QLrL4BxzEN1hj7SYz0+\nv8EdeAXEpXIMJGtZq4kfbxZNpIFM5rEUNnMkANOGZngflRSt8kf20b6f9cH7\neUc1mHWRcmwRdb9Qfqn3jNS/QYIltC4jplHm9x0KFghGVwBuA/SlFbAd6dkg\ni+G34hv3QMflrnAVTipZshSsGzuYhvXCt0vRcrcpkPic8AuQwXPnpgCzafuz\nqMyaKnXQQNImhVV1RrqkBJicQsSmbiPPoRPJw586MI/wTMcUPqXxDVhV1zsH\nr8jv+jdt7hk+bvP+nU/siWJHONUx2k3tR7efeTIf/EJvnayY1vGn+fWo+GED\nHS8Rk3KGGcNFKz9BLE3yIcf3FWhIBrSCS6DwZNrlBKncMCUL76YB1H1Jami4\nkzyA\r\n=YQkH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCGE/B+0Oceuscasw7WIIlGPUaCtk5W3k247RoALF+zAAIhALCXACZLt+V0gceJAN3TZDOX8nVIJICKJQBkTy5WJd+G"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.ef1fc6a_1575516403555_0.7636942974975289"},"_hasShrinkwrap":false},"0.0.0-dev.d1fa35d":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.d1fa35d","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.1","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"d1fa35d7a016a37f68747dd5f05a0304dee30ca4","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.d1fa35d","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-GrIKAXg1wPqZ87YOTr5Lco8hKhL+eAqHsDsMAmezgx8ckb9Yq+J74IPum4J/NojsmONO/O4eiVJtltqMJK5XLQ==","shasum":"d778062e1dc559d7e08ae11a3322c58eed30f3f4","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.d1fa35d.tgz","fileCount":26,"unpackedSize":31667,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd6HkJCRA9TVsSAnZWagAARJ4QAI9ZTamEgXJF41rkni8y\nDPiAwuCk+4rrkdeTIwiiFYokZRBLGVYRLFbwgAJELqKkkwuv3OsqStal5jB5\nN7JMrggGlvPULXb96SZry8pFNqFWDRO9V4jq7k9AJew1rMz9Vu29g7D9DB7p\ndUPl/FYK3BnBLVjWKuVVRYUK3cW0wVMAOsHQdztlK4OoWCoKty/mF36kavjz\nFXdraW0Eq02pEbOUK42nRev73X3mq2bxiZjTEJH2a+/ElZXPRbreZbXRZdBC\nlnPD/QD3y7EF3kMnjcxT0s/Khrj+MStFhn3uZp5vNmEzlFqHwVcpxQ2gQEx6\n7uxaVUbYjASg3L/MZrqvQKJn9XqrkcLpn1Vk+0T1IzmXtLs6KhKWiQTRHalF\nZeAWqVxmQUnYwiXCd5WKgI+NVKalt8/jL3KIzwovEsbYi/kIdV4AWkoBzf5r\n+n+zB5MnVcQb3h5KNb07iwYLggOkxPYYxvuvaeG/VO4oypsfns0Xc8AhJVxG\nUr609M4MswMuZoEUvAE2fVGwslAsap4IVfAJ5wVPx24Qt3iTTQuOiZrm/UzX\nNpHDUabmrYkkNI0irlsEjX5h2l/Y9vIHwz5pWq894C6lg37lt/OAG2FgQaV+\nmGcysRLdAZGotnVmWCw54eWLPhvK5+6OpT1Tyn6bbDtyuO0O5BJUnmq8Sh3x\n0Osy\r\n=VKu7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA2C3BZz/J4jpi3TvPxLnHC6hjTSgERVYmMsBRaTnKfqAiEAtiPNqob8agCfbvwQtSki27qpBRjO7Z5mnauef/STVfo="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.d1fa35d_1575516424552_0.7105965087234367"},"_hasShrinkwrap":false},"0.0.0-dev.437a397":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.437a397","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.1","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"437a397b6467fa883634104597cf8fed0b3c34f2","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.437a397","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-XeK/NnlsfYIGaAzll4UmabxAqU3Ufz/OTmkuww2XcL+hJ3RwshcNzVzVUJU/OAa51yyCH0wb9tY5BmvUFpTO9Q==","shasum":"78067c66106eb056f7a005e2b81b81a1f1640f84","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.437a397.tgz","fileCount":26,"unpackedSize":31666,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd6HkvCRA9TVsSAnZWagAAeuQP/2x/E+M4gFl7gyJLCJoq\nNT4Wsxt8YITnpiOR7AzSfKeNaJZcQ+X6C/RDTiNL3eh6En03Cd74SrdSIvB8\nbROMEhykDQoAmIKgdsSJ6JzNyEfj5IP5E+bDHzuGXowhZ3+V0VP0d43a35Cf\nZafQpXeCOyi+e7qsFv9psrIMj1ajSsVOH9bkm8+w1jvUgu2/cK5YQbZHaNTf\n2fxN9IfOWaAuuskg2ys9RMZ4Tel27rUByvS5k39TdlBWIMpI4jboY7rRETJN\nzuGCOUCjfT7/vOWHpB56eMErYVknvtKf3omAbZdJ8Q1vGtheFvHkZ7x1aaCq\nn3VkjDg2obeDmKbY+0Zaoy+Kjz41hJH7aHDH4DWNZrDKh2dgj/14cbJp5CLX\nRXqJA0VBNtXv4kFwFJBNg0IIUL5kMAfFIVAev+GABJ/5pDYWukQHVfzNYVTz\njSy2FzKuSRzvXfj2wWrl6NVnDhzkaWTKO1f6HLZdiuyuxcskADvBwwnp1dcE\n6CZ7FRBUX3LBK7vL7VgUmHA+PjvPG5fTjpd0XsxpURtbmih6pXZq02vxdXgx\nch/yX6G6h5fJIPgN8QSgGkOZiJMezbzhBhtb3jTbPLwuENOTEB4Rr/whK8+L\nzUNYMCKTLTwZK9/HPLMcj4aqRwqS5uiAoXFtEK3RTIDNiSuIiJxjmScQNF8d\nfJsR\r\n=/A87\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB5+unP0EBK1PsBMlwvXDyPaP7MAHMM3JJL92kZCQ8wKAiEAtrWL+ZK/aZAQXgHJSbOUlSaOiH0BHJ6wS+eEt/had5s="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.437a397_1575516462696_0.9244992556660789"},"_hasShrinkwrap":false},"0.0.0-dev.a96f5be":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.a96f5be","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.1","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"a96f5be1262c7c036f7632ae860fc36ef37c0d05","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.a96f5be","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-aGMFriIsdE8f5Q9LNItevCy4A8ZC3fMs1o5JScgEunUN3W/BPx15CwwmoqIIvzwj7Jhu3L4ITZP/+B+LVOS9Hw==","shasum":"893c77a3ddff2f3b7eae4fb5508757812182bf49","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.a96f5be.tgz","fileCount":26,"unpackedSize":31666,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd6Hk1CRA9TVsSAnZWagAASoIP/R7FSy1+FNN0kgE69K89\nEwa4FZ/7A6vEKwYctE+ypFAMgd2MV1Kw9kpoVfRhnHUyBR+FH3zFb1Z0Sb1r\nrYR8Nw4Aifm7yHpj5hYw00wUwURskZ+9Li2ERqgZKDAe1RMF4wyE9hgHkDb1\nMsS8s4VAyNk5bKLmLJiuk4NhV0awOxdh3T5MVsmgCbKc1IXzP8EtfvVXBeXg\nelCNxeljEJ7PjdtxUILtOrGRB0cmhgPRiZzdaIYvZfRr6V0I6UupcNOsstXA\n54krdriJbq4WvKS4MSDP0klnq4YpzA+FJ9nwvxhRw+G2GSjXpPsFGHFN4+Ec\ntvFYYzGXN0BpsxknVY9H4tTwuU0jd2b9nurd3wJ5DD/FmxwXoUM98vLwIrLK\nTrw9OhTJDBupJjiUx8PpnNAbWWep61n3jqnjeo3Z2JPfK9JA7WL/EtYZF7BS\nE4Uj6EnEVa3SQHEyvIm3ib8KLZ+inu8jTjoJu08qU6fEgc8cy54hprSjiSdi\nfo8olC+3A4sFOd0gn/vH5R2SWLPwHiYq4y+xeqpSHAjXO8iRysvSv8/Ei9AJ\nv4Y73zAlA4yoZF6grvtZbcdgZhGY9N+ds4b9cLEitMh65An0zaKyevR9SzsO\nS7mPxtTiFiFK2sthUheMWX99F4ftjF7DiOIuwusdmp/rCAZkdlDT6M0UWgSK\nEskG\r\n=jC03\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICdsvShxIUe6Wz2rCrdkl3nSEqJzeSZkc95VO9vW4GV6AiAvCEpUgYAcJbnmi4FbvMut7Rxpzka3LCGsf97i4YUZNA=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.a96f5be_1575516469388_0.9863268828575651"},"_hasShrinkwrap":false},"0.0.0-dev.c7ac7c3":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.c7ac7c3","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.1","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start FUNCTION_NAME\n```\n\nYou can now send requests to the function using Postman (at `localhost:8080`).\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"c7ac7c322f2c9660a7a58ce3ad6c8e12b94a407f","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.c7ac7c3","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-vSPuUWGJl53QZ4ripxzN26TmoFdZlFRZ6WwXzWkx9LBFEfKg1QcdDLsNQeP9U7w50VM/caqXaDD3fgFT3cFGgw==","shasum":"e8344c08f94250ce694d13a70798f2797c7b8dd7","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.c7ac7c3.tgz","fileCount":24,"unpackedSize":55415,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd6kEFCRA9TVsSAnZWagAAHncP/1gWpWGLFJr5uXB30IRq\nusoXlRI/lJlZFvY7ypFJxHa5zgn/DONsKEs+zYoA4AIlzlrdEgbW9guLYXIh\neyvObJQ42kzIDl9SYbkqIYFzOZEmmQ/uNmiF1r+aNct9uLx/tcTMLNbe0Lqb\nUUURl8iR1KHJMM4pSF8mm9HDGRn+WM6rdAkMIyLSB3opQxFh2Ygpr9Gx/Sn/\nFjsilqLXR8pImykwRBwWMs2gYVcra7YNH57t1Prxd+cgeTm0lBnLb5wg7GM0\nB3hIg9IVxr5xKXmSPadrKwmG8RVbwi/Qz2WNOHEwppTzxzKfl4Ve71VKY1Na\ndDNmlbh7b8CbkUTnkIpR06m9CJOrbNiBWd0l/+MwLw4E3I0jx8GSbjfZbO2v\nQhk4Ms1rKCpMCtoFyNcrgx+1gRzYps6rhowox3hP/7qxgkbMpA2WQ6tI5G6g\nKA7bYi+PozuAwYzBv+7Pq1t1KdKl+OWjLMoTcavGwtvd+yCB34O3f20eYNHP\ntAxoVSQrFG7W2Yq0AdiyN7yjyR6kg5Nn35rhZf1lhFHAowzDenQihQTO5874\nfFe0WGGfVzcgSJzPQyfU4rLyCrsjgxj14hzjc+H3rG0ElrMfB8lT9g0lJT/+\nX3XKQ9jUvjLFGqoqGTip4HtfRo/+XGJxpM+ZHr2wvvrbjzFHeaCBsOmNEX+Q\nxqpt\r\n=+WtB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF/WjVImd+jU8NnaPti6TLLRMSifmgr1fsUcXHol2hqNAiBGjubekWBl8kJPlq0eb/VAGJNWEBZCH7th76tpc0Xv7Q=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.c7ac7c3_1575633157343_0.5919571611899348"},"_hasShrinkwrap":false},"0.0.0-dev.b89ed68":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.b89ed68","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.1","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"b89ed68299b65e181c173e45016958545b1ab49a","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.b89ed68","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-chtp0TNpAE4kSVTUyFmvDQbESh7YAhCPaqrRn53XzUTibHji6X+bSHcATnr2v6c31kpB5C8TpBMlh8RlqHBaTA==","shasum":"79ac41a4a755d77a8d681d789ba4e682787939fc","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.b89ed68.tgz","fileCount":24,"unpackedSize":55442,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd6kGYCRA9TVsSAnZWagAAJTcQAI2EbqLz5Xw1hiBG1NM9\nDjxoWKcZFImqIW99sutjR/HlxPvOf0m1YfsHH1289+3Jx3B29RX9OVGJle5I\nxt9DoJ+c1iVLqCAj7TY9uWtpuILTw67rcste+B4M99BXd5LxdHHO7L5Vjz2g\nJ3slUIiN7LlgejBOMbDNtewu/8UbcSE7iyguew37Z/gwitmepEY8LBSDs5I+\nWqr7fpfXyWmfhWiNSBYOs+nX7wT3JTMoAFcd4p97PKMAYnNfAaTcTsoflQIr\n0jJ8WLYsFCGmER6PYFPlN+T25LbZH++aSjNx+aVGbZws1gGONE0awd0vTKkm\nVMxyI2Q9iU28eVOZR2HQhuwUJOda1k6MitDFjQxG0bk4+Rp+o6WA588E/wXO\ne64OUxi0Eax/g5TpewjqhRtIViwTiQE99K0TxxTtRnwQ9rZgFqZixtnlkOaP\nOzudwJlyx6qA1meeSYeSKL6MYG7T5XQBfS23bD3Onq2wwz0LS5CjkuZ1KB9a\nA1NduFyDRLYeSNZv8SA4Dd6dD0j3IjLf4QqYWD5bihHnrBJu2Aa++5+JbsuX\n6YqZC+LRo6ISm9sD0ak6SSn+JfRtXFqKiUD1747sJjH9P7HlVNVKxqb2Zs6k\njHxjeJQwv/9nZRaWsU8/Xce8KTu2tr3FfM3zozImvQud1G3quaEsPb672b1k\n0AKE\r\n=S4EG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDPX08K/0iAtTybr/7xThB5HeRRLs19nSIIADhi21jHbAIhAIuXf1U09z333SFG9mMCHmgoEiWOrgj/e4Y01GKpP+LQ"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.b89ed68_1575633304378_0.10945732083852566"},"_hasShrinkwrap":false},"0.0.0-dev.de12763":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.de12763","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.1","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"de1276387a6486ac48d0e4cf7294b55e6916db25","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.de12763","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-NGZtlMavAbFpR1inviMu6TPIb87LgfvJywVjCZ6WzOIEBLBBCXzulIFMPpyZD0DCPd46VHPZjZxTiTnioW0nbA==","shasum":"68175a508925fc262932ce314ffef16cdf71e527","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.de12763.tgz","fileCount":24,"unpackedSize":55698,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd6rLACRA9TVsSAnZWagAAr9IP/0fT725aQ8FQSGqArxR4\nXVi91ahqHXLEVJwwO3X5mG4XJ3aANLPlWgvdxhrh5h9WaDMJm3y6lAYqsSj8\ncXgDOeLxZOXFc3czstiBX05vCuij+osu7ker6N2waJWXziUiMZCKaoPeA81c\nyHpBOZstbKt3bDufSxtKRMUPnQ3xL1gjsw2MW66cTDwWPyibkJ8kpwU1d3Ow\nRPSBHdReBrBn22D3h/e3uWU2L/GWs0+6FUzAXKsfz6nVqq2lE4pfuw007fX1\nB61pEx720cYdjbgOeY8tcCt2smmKsTZFQ54+rzHxnpcV7DMOR47DeU+kw2g3\nDLjA1I3CTRcX3y7pT70x3mXAR79OqaF0+zUA3iHWrTy8dM+SonysyBlKvA3e\n+73qSSg1KsNmsBt3w5gg7HJEfZRav3MRKasGv4zDDDFVGULecbGXebL3jzBA\nYNrGZiLkg83xermP6csf+/2UFDWLvdLW2UJ5K5RZUJ2Xk9d+RbwK/OC3poUi\nmgwQHbVNj6JoSaSyYtjmiozE2w7lTNKZYvkxjw/FgEWx4ydjxj0VYGKtOmx7\nvoB8ZVG6PvRmTjidQATTOQrTrCX/yFWaOXHT/vMjj13ONIsBH0yT96razHwC\nIKmmhSPBOArz4Sq2kRJy9mo1Zi+GtGcLpXeHFN/ndvSaWCI3Njy94P1DuPA1\nHggY\r\n=mOQp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCbsugY0RPFWOEHzEwTLSnN+WJbuiyMsi5EHulFstjdbAIgWCkn1oCZK15rse4kEXtZ1/A6tEffUhSbujTh2ehCK18="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.de12763_1575662272262_0.38801961607816726"},"_hasShrinkwrap":false},"0.0.0-dev.93cd762":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.93cd762","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.1","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"93cd7629dc78c5021054f5b939dc130110b08d98","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.93cd762","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-E2vlJnpYXMggxdiCvdbzgcfVoswmxASkyY0rEl5v8vn+bPIzuvKyKyBFVuF+gN4YBtQjZ4tSpyOak7ctPCNqOA==","shasum":"8256dd280676090e99a70f137e903167b584e62d","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.93cd762.tgz","fileCount":24,"unpackedSize":55698,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd6rbyCRA9TVsSAnZWagAAwhcP/RK7VA426az7FPNCgDnt\nMUo5vkMOPoO5pWFQD+Y2q6dZJPoytVYWpnIbs0nbqh2ZrxJ+u15hi1XkS4+a\n08Kp6957tcgxKJ4ePgFdjG5jde3Blp3aaG18kqnkP4oaJyCE9AW2QILdBU5k\nWFL52OE1iWm6PH2r5u3gAuDzCJlDHEPd3cyUF9N8vY0uneAeOl1aPwYQTNDR\n3+1QZYMrqGoL8b2K390UE4j4gt0MchqPjCmdgBQLmeyyAiki8V82BrmjCmVx\n/ObVki8ZQNrmPGtfmZSroThy6iQX2KJavKNBaGT00ffYgwHeL2i02mjqVqqF\n+m0aGIZcjr9QjYPthC1vLUkGNGxfZr2rdFgsULK4YNZ4KfeAtmz+d4IgEKLs\nkIQpOUo2XoTzGU2drHqYIZoj0Hg1mQWefqTKJFJJMtjIopn+Dcbxk2Zty2vw\n8GcL279yE3L9sP1NJ/ZTHfSva/AKK33uoTbG9hMqvCy4R1DGsrpCzRlklJfm\n0ubU1gsgMAuujgv+UEwOWZd9lWiO8zDJ0qenlionmpKM/lKPw7k28BvJikQS\n0a6q8TMpBHIIs9mDxr6NqssNXn3ebzepqj22kUH4gNOskwvw95pNe/XMIYD9\ncyIcjuIQrrk+0FAyIVIbg2CERh1Ql4l5GWkXiHNDuA42CutbvQ+Q383vPsaA\nTdbS\r\n=722Z\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH0SUuO5iwieMbuGtAvYttFJLrh2UcPL3/nLlzcAyiEZAiB5VziH27QV1EaJ6SI2EX1rUGFwzVBOoiSsun9Q6E992g=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.93cd762_1575663345685_0.47612931083341725"},"_hasShrinkwrap":false},"0.0.0-dev.62f61df":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.62f61df","license":"UNLICENSED","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"scripts":{"start":"./run-local.sh"},"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/sinon-test":"^2.4.0","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","sinon-test":"^2.4.1","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"./precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Test:\n\n```\nnpm i\nnpx mocha --opts mocha.opts\n```\n\n**End-to-End tests against the dev environment**\n\n```\nnpx mocha --opts mocha.e2e.opts\n```\n","readmeFilename":"README.md","gitHead":"62f61df1c1dad8c8e988018eba26d48834bcedb5","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.62f61df","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-SS1SuBaXmyhUabrfXSiEjFhVPfGVy207dQFvPWBORvHIQ9gWGVF8A1esBvJZKz7LMa8dR71LqKhML2SEaDxuNw==","shasum":"c66854a9e948700b413fa81cef0427520e953b75","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.62f61df.tgz","fileCount":26,"unpackedSize":57533,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd6ze6CRA9TVsSAnZWagAAYf0P/1//RuJ8pLczG0x3s6IK\n+qIgSQdw5NdTkjYuJAo86EmbxJ9Pw1jQED3kBr6gRbvmjXyZaPjLzbW/HRBN\ne07M8CRLQiue1hJyTOCDysEssm2r29m16mq+2c10yz54GX8FSt8pJcyqkE9W\nDlcTrelL+QbemKyJZUyiOEfG4JeSKUyN9EcOdQeqC/kgDVNZya1djBRtY61W\nHCZWtAloClb7nEzPR4sE9YpLQRk1Ud32pTq/kBLXF3YMKsElLXt7GQMyJute\nUQ5OKATjQYiZoTOy5u0SUAefeQ5fb0lJhLV4w7XNlB3MYVsu8/X6VuxT7zM1\nLdAq2xujhhi8LK9qpRf+SxvXj7431DXKrDtutSdil/RTZTxT/839vok3sJmj\nnRPr7FAOaXVGXWAN2bNF6gR8+mN1gqssTARpov9+8W8/L7yfgGPqBUCZFJo0\nINDGwbJjmPAzRRV0gJhe5AWGmMZu7/EtjCoasbYaeWfSsZPm+A+OV5evdOhQ\nf3ft0bM28GD/3+ASGReXWm3HJkfjHT/osqh/D0Tj0ErHGLylAZlc+WhzykOi\n6chJKDmiX+tQYSbqc/Rg67rX8cemRvgVUzZdD6aiHhpgfNQiJfm1AyyBO53r\nmyDP210UeNlaDeUTyp/fUgfSOU2+XTZAsAdZo9HS96vQ10y8u9igFeecpiMU\nni2O\r\n=pfQ4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEFeH5+tGZnQUNy8ZjrGM9HTGG1Qqv8Zo5deOS+4qeotAiEAmMhUJBQp17ej8B3RqUqUOeivqEq3oyJfLKUJF1J1EWk="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.62f61df_1575696314192_0.5930563219099905"},"_hasShrinkwrap":false},"0.0.0-dev.0":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.0","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"prepare":"scripts/prepare.sh","test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"source scripts/env.dev.sh && functions-framework --target=all","prepublishOnly":"scripts/prepublish.sh"},"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6","io-ts-reporters":"0.0.21"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"dc0fb0781efbb9cf323390f544e2fc7d525911a2","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.0","_nodeVersion":"12.9.1","_npmVersion":"6.13.2","dist":{"integrity":"sha512-8p5ZsokvskGs8+XtVAV+n1/V/X+9SunCVxdvx3z47EvokalHA1XS/Ltg3n/Z0V8ncstjf37TgOKjsg2C7pLr9g==","shasum":"bc7ff829c59a26f6dfcacb8e7df637986a68ffd8","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.0.tgz","fileCount":34,"unpackedSize":62685,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd7KpVCRA9TVsSAnZWagAAq6IQAJELdw496pm+vJnde/Be\n/mARzIjo6hrAAsjceby5jHJY0dyQcvR2OGO7gMClB6i1KpzTwGYlpzvkqfLo\n7rPsb7yS4Luy+awDSZXNVatGnF222wROdbfoYWM6w5zsi34CdVKeD5jwtEFB\nzbxot8eI4MgleaClk0qamw0s1pyONItgD1ihTOOFYkV4IDv/IvnZucuRYJ5B\n/Cgu9aZlaVi0DKaLuGpeLCqlGjBnn3ZTy768guCnfqnH2czyff2tJQtGIR0v\n4/8KmFDJ5ty1+P7xiJE1ujLipQHzcb94YjmQdinuko3iypVm5gT5FmONifHq\nyZqV3BaJArQedUzGKWhicHgvL573oCBkZENhNvMekvzj6zG3E2RRsh/Umkcm\nUuvRDGIIRzu1/zIbIV45mY8uQqiBc2XZJKLhLk44wcs2wPak3V4gnQCIC+hJ\nL2GCzfm087qGfKXrzk1Izcphgtnos40IC1hk9gjch5d9DyE0l3K+/aB1rvei\nQ94DUuCHm10h/fXfcapykZ9DB5rntoXE3wsAIuztgVxYDpdstSpLlDucK0CY\nz+H/ia4/MEP+Eo0HkMaR8lCLLYcH7+hiEX/HjYcnxtQWj9v+JOanL8XNxBDj\nAliTZiIx73hfBKlRokr4Jnyn2BUgphzgq6Y9O2WpDqQN4C9ULzMhYj12u7/p\nW2F0\r\n=wIs1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB0dgAyJhLzIFNlGCjIVSEpPUcPQPi0Sv9e+YoVfkUk0AiAMtWaBv9wYMtVt2M8IIMdjY8uzicWM+H2MDTy809VkgQ=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.0_1575791189015_0.11459361987291006"},"_hasShrinkwrap":false},"0.0.0-dev.1":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.1","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"io-ts":"^1.8.6"},"client":{"main":"./build/client","dependencies":{"io-ts":"^1.8.6"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","io-ts":"^1.10.4","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"8653891c37ec76a9582e68bfee28c5e63768a77c","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.1","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-Q9092DcG1+yhPHAmViS5JThQP+rKs1YOsEyLFYFlzjNAvmI9qp35PI5/QTZuo32QRA9+bfOz6TFxwnd4sjp65Q==","shasum":"ef95c431abdeaa11c381cc307a15dd0539eeaaa1","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.1.tgz","fileCount":28,"unpackedSize":58377,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8AUhCRA9TVsSAnZWagAA3YwP/AhvFbSxU8Yv8NrjRcrV\nin2c0b1hRZr7dhDY7Th8ZZn5rJ73CmoPayS84LGgo/a0exXdtkfU4b9icjVO\nzU++7U9u7YO+jcobKf83aC1D3A/UvaMOB2Mtkuku806Sf9VzmDlddxPUSHqd\nPJNLWdYDb3s6KqHj1Bk5+WXUV+IoBdg8OuHc6U1gZ48IG2x8voCokmEDwN/H\n7J3niu7J7lIQ9AK/safKj5YGyA4LA3vu9QuwyyyVhMgLUyU5o3SGvpiKzegO\nKThAw0YceZr2j2sSdUCRq1ERlWxgRmzEimKmnBbjDgOcfhSWQ5O3sdRN8yzT\nWnug7tBgzFtJBZ4SwKLieMnXErJRT56iIrpQ6DDZ+KcLaoQFNwbsJG/1aFGJ\nmNjr2P1Ysbhzv8Ck3c22jQ81ZS18Y+PFy5ktXGswtBcAxGPXMeqsmcBxQvYr\n1UA4i9fFOv/p1IkTjzQmK3R2WMcOjopCNqVWl2IOucGIy08XqFMDDezlZez6\nQuSxDaVpWBksO08Qyzz1Nbu+0IWE6JrRuwJsStS2vUWMDp3cNLeRE6tt7x1P\nbmMrlguL9zxZb6XQzkDVMygrK7qT3lvJNF1rk1c60lT/rLyF2Gd9VLzRhvY2\n1kLZb36X3dyjiaG3AnJ9Y95qoCld5wYqVKbBy2LG0IWzJBwZbOfMTdfJ0py1\nUH3H\r\n=AgBY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCJDYTpfgrlNdcljNXFE1lz2HW3LFCAFrENV7FbU8QC6gIgeXG0f7gtL23gizB0VechEoF1QJTH2CkaMWmFELnaEkU="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.1_1576011041380_0.8576486759724165"},"_hasShrinkwrap":false},"0.0.0-dev.2":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.2","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"io-ts":"^1.8.6","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"io-ts":"^1.8.6","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","io-ts":"^1.10.4","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","rxjs":"^6.5.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"e250ded2f699c0d30c71b09f39c521fd7143bb73","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.2","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-yKJa8c4WNNhMAh6woMB58sQCe1d5/SnaRIDTRtRhkG99nbLAr35VrI9nn8s7aZ0VZBVtLT+PJ0w2NULMAOKOLA==","shasum":"008446d09ce42cd9cc67f64e34663576b054b544","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.2.tgz","fileCount":38,"unpackedSize":64346,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8ptZCRA9TVsSAnZWagAAKccP/iTH7IQHLu5LLD4c3+rH\n4ltiVwQQWqyme6FtjCF/z3e+PDQTbAoMsmLS2Sw0yTLj3sskzNEOn7jvwkkG\no4t1s1aqEmNH/0Osh7kRxQutAFVG3py9TL4GbPJHE68vH447P2mts2WKaezx\n2keMOXxFElj5eUKWX4SnBbY7lBjiiMyxqPTaI3b9ot2SV5YHG4HS6M6cRRcX\nFhSFdq6EzdfMhkbJURnqjzYU3sBe47TowvWXM8wAW2xexgQJva5BGHLC8PRf\nCms/eMqSsbHNMnLwZpYp0h8svB+Zyw1p3pju07XBGjsofHN5/ZLBCfLrqc+j\nzjTkpAhjff6OUYs5KZOeWETg/u4z89z+xfsLuuZ2311i4AqNUWY+NF0A+6RC\nHTvswbcu7bAtPHjfPvczcNi9/RLMbRH9AxAIcLAPI5qUHQN+AzBJQqkW6wLt\nqo4JEXBmQASDnuEfP3lUCdv6RZXM1cHzfHuHEFrcp8jTEPd1Flo8y2KwSKWE\n4MeT+ovWNuhCl66FB6o6dGbxQL7hT563xdMTZMG5xkHmnHLIbumPvGUvzSAz\nOq2UHesETOoTPy8miZpaH20FRwBMrZNyk4gf0D3byiAfEQcohPKuyllJik+D\nDMtHOwieiFzMlQ2atiGJwdcgHjWh0dcOT5An0X4LhPTtCqMipRgh5ecssSVj\nE8xS\r\n=mVgB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEC7wAUFYSvcwAQKLUp2o4aNwncSb/f63drWQ/VXlBvjAiBStTytkrLDoC/ydthl1B+v28ofaAZ3clM+CIMx9Co3vg=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.2_1576180568824_0.8364403804357567"},"_hasShrinkwrap":false},"0.0.0-dev.3":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.3","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"io-ts":"^1.8.6","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"io-ts":"^1.8.6","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","io-ts":"^1.10.4","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","rxjs":"^6.5.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"d53802c3c78ffa2bd347132f31fac6b9b795d422","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.3","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-BpfZ/QLgm7LipnvMROBDU+pncY76Zulv/BT7HLEnx26gRDoEn+g28ibo8G/zbKO6J2Qpwd7c3601u0ZxVA232w==","shasum":"c7868e3cb8d2486f4d171f6729fca4b6472618cf","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.3.tgz","fileCount":38,"unpackedSize":64461,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8q9qCRA9TVsSAnZWagAAZSIP/j3MogyzmCm+uE7uoAY4\nmDOgTWODcfwU0HR3J4pZP/twW4jFN47iQmiaAZNFmTfiCDay1VOm480cm1T4\n44sN+Ijow7HLwAGJgL3wda3mwDt+3WQJTls1zhSgBLHob7n3fLKOailLL7Rk\nSWQpVFTMbttmqVYR138F5j2a4yvcgpJB26EmaoZJGXIgbpJp2K9KV1YO3YS6\ntG1SANzlGA6cMhRSmmboUXOHWt7Cc0UxyDSUQiHEnJl8RzIhq3xEIIrKurRs\n1GhdUKf2sReMqgomLtRVfu5g6AqTKF8w8fVu3Fe9sEBRvjt6CPM5/wz5G5Y+\nk+6ZdpENGGKEVLyKiyd/KbI0+tgGKP7CF2kO3SnLPuL4oRO3ib/nCf/7Gfpi\nZ2dQx7w2/qdVb2pt+xcN95QEQzNDiPoYPnu2fYa37ihjyZXYMnT/3MTTMsUg\nedMsF99dTc5+Rjwsk7orfJr5qs87qQQu0/Q1nOEeJu5On4lOIlfxp5l8cVSm\ng3HFuVHjeMnC+uRgLr1LFTTXkb2Mjd+oXiCVis7KHDVUy56AQq//D9m3w003\nieWgHoZhrVUCREr6grsF80+iXCSqjVea9MjbKMT2pOasOnA8IwaARgPWADKc\ndu3eIJ2Pm/SUA7MQKFhFkHdqULk09udgvhZY2sXlgVXOxECHk8cLHgO+CBRV\nYD1S\r\n=Imt9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC0otrEJliYQrBM66kBxIu6pZQU3JKRs4fJk5yMTSz10AiB+H36+4xeQsRp/IdnWehkDLf4O994RuAM3cNgC9qWaKQ=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.3_1576185705738_0.5871041113473874"},"_hasShrinkwrap":false},"0.0.0-dev.4":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.4","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"io-ts":"^1.8.6","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"io-ts":"^1.8.6","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","io-ts":"^1.10.4","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"12aef065006f8609fb65da911a31cd0372758cd2","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.4","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-H4+XanEdpLnLdPuOhsadqbF+tnGN+7zxvF6BbDUerOuhcrCHKcnYgvFlur/3r9w1Fe0sprf7Ay2PAcn340JqzQ==","shasum":"562fa0ae5ecad293033ccd9b285bb2a7db1bd718","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.4.tgz","fileCount":38,"unpackedSize":64348,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8rE0CRA9TVsSAnZWagAAvK4QAIYzZ6jDMl3UWX6jw4vy\ncmFNV/ZIclAPRcAa1/nzk8bv4/jdIkUjvofggam7zQcpuUiON1L1NxxMxc77\nXag1FA+4gNKbYAcpIe7s7iqfLUfNBu+qM6F/FC574ZO8SZSrfHf2JM9MOeoG\no6Hw8wtMUJMV3cawYmvuGGkU0lxTD4sDytJr933t+st5zI5cz+N4PASXys1z\nQk+dBMKArb7c+W1l+OFUklf2rzrdceVTC4fUwCnoFP3uh1ihmhcJ3Pyh2M+B\nZs0seLA/vqfg2vBycPsjBBrEYCyvHWhQM+XqNekHUbDI8b1wACjnt/k5JHUO\nezMRDqpljjxG+t6o2u8UhKsVoQS/8egkBiTVtaIRvIGBEoda/Kr0ouW/fNIQ\nHiz2is772dJ6vfP6406CFOYIjdMdGASCjXETlAEGwDIXhn+kqvWKfU0OE7QL\nEw4FuLcxrQ6TdE3CknKE2zwadPQzdbyykSEH4IncW6f0d2J69TY+I2j45lOt\naF7wnI9dfQTASD99L1A3oMgSd6uFtKnEka6u0jG+89abZ/eDyYff/LKaAcZM\nt9qoWOLB4AaR4jZi+NcWJ+4IqR2pCdcj5yq63WScXHHe/Nn+8Qth0ASsXXIg\n8oRJpLReqE+69i72WRnJgzvuQoMSaID7OahIB/eI7eL+mo6QaGQZ9AogP7YW\nW8uR\r\n=C8GQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCi6U+cQ9jyFTqk9L7YGvE4tQrfaw7didvneg9/bghyvAIgXH3wriA7bXSBcbHILRiq5kOoXRJGWLCZTzt0oi1SGEk="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.4_1576186163546_0.35413638186723095"},"_hasShrinkwrap":false},"0.0.0-dev.5":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.5","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"io-ts":"^1.8.6","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"io-ts":"^1.8.6","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","io-ts":"^1.10.4","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"7e29f4be2901e5d60695c721a2e55c7d72259827","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.5","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-q/AiH6oz+LfKtoFRAirnm7BIW7Zjj9Fd9BkrBusiH2VH+Hw4UW04hv0JBM9wFln2x4cFVmT9i6R3v4N76gx2jQ==","shasum":"93fb5403774ba1d2ee644e3c75b16afcb1b05c22","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.5.tgz","fileCount":38,"unpackedSize":64433,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8sNrCRA9TVsSAnZWagAA8/AP/i/1ZJbcrMWLLSR+uiPd\nT7IwhW/UzHKtKT6zrCiahhooXG2cGioghdRyD6o89G6z3f4w5Hyv9n1+Bqq+\ntiNT4sfr0uu5Z2pDGkmtFovgLo0DLIFmv0ikRd9DIYp1Hn99MXap7KwfIn9p\nvqQ8KIfLsE78FfwznvrzP+WhtMDd84PUmNwVQrh3190fJJJbnIPCyvbC7epY\ntgV3m/uPqTv6Npeo9ewbYsyW+SWll795fL1HDKNF/5TWSFLbt+2M7t4kjbjK\nq+pQxVdqqUqQiLLkkd6Mz3bNVDPcIOP91CqNcwJ7R4uxlVzmwY93mqjk1EZJ\nEtQCAGsVsBUYbtkch9qSvgncqqL/W0/D+wtvIeDxvbcl9JHNx3gRHSDXFHrc\nL/iERgv7OyC24xmxrBOoVasz2L9dB1feL/pJYnz2jW3pv9/DFfDd/alASnvM\n9p2dRKE3Ze01VOKAzNcx0lIjCKgadF9hhuIkfRKJuyG7LJMrMvdaaVaPF8yy\n+KvRqKaO4RIVj71NAz6XKBYA3aeJ5Z4tJeCETtawi3+yfNJNYuJH3AWMKseD\nQyjstx1TLwo6w3bmFXxqtXK/WtxgIDUcefe+VecCZ8ts3sjDTu+mAsj7Hphg\nuWb5jQHIyidkwbBhUdjtwpv0REJnblNrPNFdUQH6CeQGaAXJyY4geWbkncTN\nJi6a\r\n=9syE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHhtN6n5rFyh5cMmW4pwmn/c28i5zhiZVxLIWLzwZbteAiEAuFiHePWKPhs79ODQbh/2FYcOKkZxqtCj+U4TBnzWtDM="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.5_1576190826751_0.0305535637461678"},"_hasShrinkwrap":false},"0.0.0-dev.6":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.6","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"7775fb325bb84e86556eb17e488558b8120369eb","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.6","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-fE4lb1LexAVhf7RuRhkEWYt2JCB5/9ZH9n/v/uVEgTNsjC33fEKUkPHUa44P5g9vbfzQ1MRFpiO1FZkzg1y7mA==","shasum":"b0bf7b75bc90f34f914d09dded82e38373834e2f","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.6.tgz","fileCount":38,"unpackedSize":64505,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8sonCRA9TVsSAnZWagAAz+QP/jV7TYjuXQzxsxulVtzJ\nfnU5sO1jzsOTaqRyckDf1d4ynUxNBZ6JVaxY06z97BMq6kVdA0YQezlGnHMc\n1KUTZjBL54W1rfV4gDyX7pduUwjGCZg2O03aHe0/vzuYXs+T5S7Be6HOpb2D\nmfB6yGaZWJS2vLohDmctKi5R0MEYHBJY4f7Y5UBC9nvgpGfrBCCk3nzf4rqz\nClmi8hc/CPQzj/fckRKsWTL90gg1f9o4yWGuS7Ls7TgyrYnrh+0tmcmLaaJ9\nCJWSyT3N7ceDy4ZCxzVxPLg4oabCvqvsSv2fnJRIN/SEvhNlbBgqpGeYNBVk\nrPi2z5R6NHHyB3AwQ2KxJ5XIHi6owuLAJieE0mZxC2OU9ukfzBukazBJVPl1\n99zFqHSCc2ef+nckBy8rA0+X6oom31G+0+EhOIsfgHI28/iyyax/SK9SKpOe\nDGfZ537QWQm81kJp6Mq7mSn+hT7HLxxmb0qjOAyrVhIHXj2BWcejo2HMZDzx\n4mtuzIgI5QVqEveBPOTRuwHz30QqqsrDY4653CfQ0+/GErnI4/OKprJb51Gj\nW5iNhoPk6iTszk4LyHhzsSqKZB8vEqHKC1I53KKw9Jt/rhVVqakE81obUfLp\nG0qPzoYkwhtKnxp9Pzw5y3gmSVZovFL2ZDG9xrriNzBpPkeS3M7pGQhguVEr\n+SQh\r\n=nfwd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDTwJelc15nnRog6llRHOdqWp422RX4k5CSBBloo92v5QIhAMBq3jTtjcnKAhPvDJmgKRV32vRGC394OJzdhYVzbQ1D"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.6_1576192551308_0.9484933746855801"},"_hasShrinkwrap":false},"0.0.0-dev.7":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.7","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"684b8e0f5e819499394fa34215488b91529aae6a","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.7","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-UROQtGLRwgudqQhq2mB017IhH7MjYSd/xMyHedM4jXPL4tdBpyZKuz2IUC45/y5Qz99V41wdLRsuoM3L3KK68w==","shasum":"f219050f27206c9b4f6b1d49615683830a60133e","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.7.tgz","fileCount":38,"unpackedSize":64505,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8s/OCRA9TVsSAnZWagAA2oUQAItwv0+witrP6vkZvgJX\nmziXPs7uJ1IprDye06twhOI9oCX6omtk7iT+dXFZnTHKeIRgvBgiW72kBbEG\nl3CxPzpFBAnnxL/WtS6/6mMsps75uV64oGvbznhazL702mIBiBjIL/zRq8zJ\nGEcukGrGqzoO80Y9OgS6bVvcOMxcEoJUCuZCx5HOtCq+2mtWg+iRKlkIjp2d\nHlGhmkGloaP0d1tmCYF7NkWUU4lZL5h4KXVHWsmc+0u9bsEwhYCGoogYq90z\nTEBegRRbDVI+EQQ9jxsBkno4lKsxwpa161meiQL3Ds392cMwFJlDbRdCK0xx\nMszD8oeTgFX3OH9I6sMYEWIwmS7cbWe9hSBZ/J7LmcMwbfFpUohCLNNY83ew\nMG2DEGqy1AXxg85W7338I6/qLylz2vysJucGe1lpHrMYOdQOyS6BEhXWSeVo\nigF7UPRszG3trFJws6XyxIVTBe8SgPEaFz6b5mchjjtgakcNjzUO0q7tZbjd\n7Njag7oF0OSSEMFLGP7G+B6GYNiw+PulJdhF3/kXDyUWByjANtPVg6YuhsSx\nN8DbgZAWhtzYChU0PK25z7nEif8CZTRey5wCAfTupNMNUsXn2eX9RiHVLquy\nNNmOgd0fKR3uMigOocqEDUOupPbmbS53sKPK/ffAfWHg2wttjEbW6PQDZPhk\nhmKp\r\n=78WT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD9u/JctCQKZp5CNrwSzES1VDGMnIhQ/ztFP/3+1nZB4wIgLMdRfaeKvPJPgEyNAf/gXfl6d1EbIhuL9FJu0m/Osjc="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.7_1576193998183_0.06433325984720173"},"_hasShrinkwrap":false},"0.0.0-dev.8":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.8","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"b904e83b322d0c2246f95509b5f05e6371a9077b","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.8","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-z9jcu+HtLD13djbZH5NKOsU6RXz42FFJfjzUVgD0qy4aLwfS1aLUcMHPL3C6IimcqguXXBWR4fJHDoNkVUhDaA==","shasum":"6b1130b7217d14051099113791cb14b16f2b97a3","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.8.tgz","fileCount":38,"unpackedSize":64505,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8tH7CRA9TVsSAnZWagAA24gP+QB1nu/v1I3qyHYk7EWj\n8cVkqpn2fdEVsWAeUxAmXSjfOrLF/njzU655uaeKBolUr92AJuO7jMTQRcuE\nG+UQzZzB/g5mBeR1WYTiskCdQVwmxgAQHEy8TbwNXlDiMlR7zhDbFQKzXySZ\ng5JnjHQHtTfsxfL6krgoxV52bEUX9fPzLIhBlULoxxNLXhndoS1BfWevr+Ty\nUcHmtq9q5fOwr4VibC235i7a5sJBnUOn2zqy6K2u8mo7N39ioYsct9KXzc8A\nxDXlBg+jYD+m39wccoyqQ8sIyhQLfV7pdK7mEYrOKnUGXBOmbQ8/8CWQ6eyh\nA46iavUxXJ/+gUplJ9WtkwT3dnHMxHSKUqEv4BpGiO9OaEdwDN59XP2IRmZ4\n9VTjBQEdD9RjdO2Jb1/no09jX5/RhgJUBS5CtiX6SuvXgf0HwNHgjr96Bhuh\nvzDI/3TZgNfTyxn7IIcqYyZxZ1AZhdN8faN1FQ4Al6rsFy8BD3RTAImGomAA\nY97QC34gNXpBCtV3KQrHbRqJLFGWqQOCqj0bgmgiEVD3THyQjT3UnUdsdhfT\ndPnkzACf70qtgH1UhGxnJc1bIw/6l3LvHlNTQAX1aBpnG7hdoqBXJVUbBslZ\n1ZKkzqSj/qWNTas5zWKHpY3i+8sQ4yjaVjL3CBfXjvfDh3WTQP05Ccu5oDKv\navjH\r\n=Hko/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAvxAsJdorr3o9391S1G5VPLydEOh+xuO0VmWmQ7tTGAAiAmGRfWvXdytIv8UBjOBxdD+xgFSRHcnwhUKX3o3oEUWQ=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.8_1576194555148_0.4665241611226538"},"_hasShrinkwrap":false},"0.0.0-dev.9":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.9","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"03656519b57a0723e2c4d09cadfe2c086bb721e4","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.9","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-gBpN7B+kFhNfwsZ9jjNZ+bGxtAFPFaYDSb1ktV/al6CcUg74wZei4T6xEjOXZXWpknLZDbqlYyBJif4Ow5rt3g==","shasum":"27fa57d570c3a6b80133936c3674fddf995f620f","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.9.tgz","fileCount":38,"unpackedSize":64505,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8tNxCRA9TVsSAnZWagAAGfEP/ifew7bQDJI8x9MRIHgG\nxo3/21NOzp/ma6h4uLc5uEhbx9ZdaRBwpU595VmqIZmIR2sUPjcM4LnFceao\nHZtQh5NScQL1zARHoCIARZIl2HQ+4Y0TQ2ilZurS+jvpIBwqcckLPsh5r2wQ\nDMqLTeHnFLxQ9f55mqZkpcCiKwZyC/+aO5wB1JdJIKbm1SX2hH8yA9YGY/rM\nQk1ILavBxEBAU3uOL70xDTNIgxhzfG+4P2Vt8quf0GPoaO4/+MD0vsnK+cKP\n+yVHLJ8W5VK+QnepFwG83AMThFDg/y+Y+hRnFSDcthi7Ka5aiq1zkI2LbSEM\nFvNhqo+aH/rmePXtSrrTCWGR6Oei43ujQBPI/yXjGD3SQVhOmG3WSmRtNlGV\nF5xcLSsKT5c8Kq4q8xXTGexovCsnfjEzFIuXXPPuFxappq31PJb2qZMOUPSy\nZapSVKtunBUYhEQ3NyQmYBM586whLR44gXM/JOMYLXJQiddueWz9JwvP4kUk\nN0BMNrwHfM1T2FcnoaOBB+tKogpw4bg8XJ2tH4MMQT7Naxyzbh0gmLCA6Gdu\n+YCvc2Ch5ZSJ6KDGi7jJ8kpkUgkLN4fynTn+JeXgY5Kdes8bo79fPrqZu5sl\njFtoAUAR0h8BO4Fcg2OgXX5xXibDs3aBKIInQZwyB2VQGHYB5poYb8pELfbk\nT2vx\r\n=+Moc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDgvAavNJIBUuNi1+er4NsyY7XOfFhI+x8/+MOXpcP/WwIgUM1hTI+2K/tx+jX9e8U1YEXxwG4QYqRLvXFVYhLH+P0="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.9_1576194929473_0.09151215722783257"},"_hasShrinkwrap":false},"0.0.0-dev.10":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.10","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"68a1e1d248a7f97f841f27aaca502070af62099b","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.10","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-yRpUinGb2m4wxe6ZQTj+vkKFkz4WyWWDeFSuZcKh9qYFSpsAdvo8+lAKKePkwhd00hFV7l84AVMsyno55s3IMw==","shasum":"8f7e5903f63efe92810572c0d307a4520968f470","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.10.tgz","fileCount":38,"unpackedSize":64506,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8tj7CRA9TVsSAnZWagAAtv8QAKLoFpTcwhiGwZHKjJSB\n2NLLe2VfNHM8Ug7pD6FiqpQ4DPkOrtjjhYCtsiNgayfQaj0jJgkMlbmN2hpd\n+rWiMhW3Y3UhPFojxsWag14L6fzBBlbA7MZRxrBQoP4gyKwxQkt/SEFhi3QX\njxRoI9f/7adC5/OCWA3GFZM708L4Y9K085tmBRQPpyu8TInCf+ASGkdC/DFK\nasjhjiKmdun71koR71NVS0YSRSAD4KJgRpDjG3jpMBS87vh7T01KuT5wNFHz\n7BM/pXirjnzWE5JbeCa+7ADap/TGz2/eqNHkALGxBZo4PxCmTTKNJiztW6Fs\nGKgyBHaRWns+fjLjaqg2B3tFryBZGnthPO1icy+NTH2Ox4mK4cmj+HY3cVKr\n6szNojQ6r+vYq5FZSrZoqb7rj+2t8mS0nTGIfz4YSDbkM6330bII3KTP819y\nIjtfnFQKHi5jXcevQcfAIgxSNGPbKYp+egX4wM/dAznc7umVpys9nmsQLx5o\nL31mv12dlic5PYsCFfakAiQvaMZcZF8L8sM07u596n1runoJDbaf5QUiSCKf\nVqInkZyDQGoAth34nUYs9q09Nw08HxKfJSmmQdMi/hqLCjQoCf/MlV8sL16q\nrktK/101GCxZMLPfTpi3Y8XCnUk870zN/U76UORHUZ4qfLzgpxDHGvJPuQ2N\n0N98\r\n=ydRJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCyenOv4FTpTkszLdbKENLP5kTM9za9+v/kPY8STjquAAIhAPFd8mfn/Y7swffHwg1lOYvDfgn/wLZCNpytQXRH8bSs"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.10_1576196346856_0.4378831574700275"},"_hasShrinkwrap":false},"0.0.0-dev.11":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.11","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"7ea7510c7cf2941f5c65351c5552abc29eaa2516","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.11","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-vj4uR6C+qIWC6xNWyfpyUI8HdLKzD2sHVxYVgIUUupft25YlE8xU4MbC/384G0vDPqVtcGDLG6n6hx6QggktFQ==","shasum":"bd63326776276217116cad31ad6104d9bda9736b","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.11.tgz","fileCount":38,"unpackedSize":64506,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8uMxCRA9TVsSAnZWagAA6aAP/R0iSCb/RHbGsGLVOjIa\nawhJNokOjC/hr5KhAl22IDUL2Kq2dz5FEh1wJf8f6TTkOxK4nr5A5b6uJF62\nCDrxMEddYBBDuyOxTr4xn0grB0OPHj9tWHJmaPICJH3cRFdCfOT/ES/l+WQK\n6qCnlOO5/HLiClNvo3mwBhh8cANBj23ub8tYrdBeMzfjwTtL1jIjvMwPvsPm\nGXGqi9hLM2uPav/rNY5n/a3bGiqr95pKGNLjvVe63RIwnH991AGRw3GP+dIF\nOj2Wx9gXeO0F3sCBWaOBLYFRXU6RGEoaw7VmhmEx7JIiranCvyNQaO1te+TV\n8rMyxdQnaJEjXTXFqrp1Te8FJG+FwpJLWvsDauBZ+SFPAZKg/hP9SMOwVIPm\nNS6MRpAmMtI7mmaR3UuRyrHAY0QFqnVjd9Pc/YYYnZkpGo1CvaVeziR4e5B5\ngLSzfVczu1Ju85gXB+WOeDzx70Barq7rRGbmDB7Mtx4qRTBXuz7YfBhFfLcl\nOeYKoUAnYrhRlVCZBW/xWyhL07ysr47YYs4T+4IBK6ZOQA/iRym+fjES7ZUu\nCaEPgHa/3Je4d7hdNpeRxIBMxVmXA0EWOQfclwjSjGFc7SkeUIqntI+DVFYd\n0eLsbrplCCc4iHWXbD3fazOL7eEq0YERfsenALNmcXtqQUizN+S+ZbdDa2UX\n+JDv\r\n=sl/9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBS+iQoy1wia9Mn8WW/agC8v9pZRPF0qMxmpKMfQC3wsAiEAulaJMjJ6CYuiMF6vgyaD+ad31KlU8svEAgXZw73o4b0="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.11_1576198960348_0.5872635603863492"},"_hasShrinkwrap":false},"0.0.0-dev.12":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.12","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"2ec262619cb33c677d8e3985bad3ff80de752bc5","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.12","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-bUUIfZTQW0xg2ZRxPUwXD/pow24etL4xCA9fKjUD6Qo0+6w6AudNtfTJ+9FQWLWTXpIPLmyJZljwZye12i55qg==","shasum":"f433e675f314682953705fff28d48b47fe855278","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.12.tgz","fileCount":38,"unpackedSize":64506,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8uRLCRA9TVsSAnZWagAAENYQAJmqyKLi8Q3mQ8FArJro\nigDW7laX9MzFpsej+aRkQBwb0Eol1t+zICPwVDVPqWjgapRqw5uxWQLOLcZC\nt65SPkYhyplMQjiA/0MeQoFI8MFYvtomQRFbkSauV1rPC8sWltz51B/CAP96\niIMMz+bujBR/7GW1DZmbGlJK0w+HtXTav3o+zopQZW+M3K1NNWGTL9J1yn60\n67EosXFSN+/TdEp5hdUB3PO4Mt3i0yJf7wqZBjMeKmG/DthXbGL6/SVZfzR9\neoCdqg0fSlTlC0CwGfjwz97mjgC6iyI0P7wrvznF3G4tPxQJAxrNbu2DHyag\n+s2JddHaangU/pmHGL9GiIz1D/qaQd2Z3Oqe+i/Rg94xJyw6hCeEJ0hP5hZk\n+Fsu68Rs0f33qwEWnfaKoWPWtqPSCCwCVVtpZia48HdlYj4dP0mo4M4RejOf\n1xyBWEfcHSWLWcVnSHyeTsVYfs7aAOv2UanZaWZwRmt28SV7lMfRcGJqfOXl\nkTayC3TaLsjfj3IM80sipUuyY26M8dCzqnOzbEQElcP9asfBwtoOwuMifFeZ\nXGhKbxa8BMVf6mRvIeRAD+K5tIo1hIqQd1EwdoBJ+QofGosmV4pKV9qvXEBJ\n1QW9gQeVOdyKnbtStKtHqkCIjUKVslnL0gjZGuZAZAcF7xcj8IrYCSTiaNWI\n53mW\r\n=ZGj4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDIpBNva8kzRFxXG8dhvx8sajt6hWjLgQF+wWZT6Rk0MwIhAM66hz7C8JMS31rASlkRzrouPnQsi9NctkJ4S+jk8IV/"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.12_1576199242828_0.039665145963269755"},"_hasShrinkwrap":false},"0.0.0":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"gitHead":"a8ba0de1d19149d87d7b36580da2ceed6e8e9138","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-NMYeJSivQ9rEwujd7yD1E6dD2MNXDHvyl+YAHMQBeP7eTtZsghIPorDHE4gY6qg3q5uzPdrS7sAXOcM/c92t1A==","shasum":"1319fccac2e14b828cb97a2253c02bdea4bb5720","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0.tgz","fileCount":38,"unpackedSize":64499,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8uS/CRA9TVsSAnZWagAAndIP/iBvib6cOasYfx9xZ7hw\nMxghV7TeJJ6f9QYlZEK2g5nWXRuusuErURcyXfJR4mlvH3/navwtd6Nou5kp\nkV5qUv4JQ386R/2OwAKbgMaRSB0V3hs837bFNpTHD1tWqr7n9WWIhMlxMfvH\n4EJ7G2fvmGY3pyArceBuk/7+tpLnriziEEnbwILMGWaPhWhMmHeWGEnB5VNg\n7lGk2dXK1gEBlBpowaPBmWHQ7kccgvMKV0LBOIIfpLFukczk2rCdyXdObmlX\nBUlRwzjYYPdsq/oYNnp1zMbG47ABYhXrTo4AvQVyYymQTlKT1+q5wF1ZKz2m\nADfa3/IEe5ctRKvWboQTcoEgaY8zVuw3S4DUaI4oEXN6RJ3yjbgpK/6ou0fg\nlnWd1xFvsYTHxszAln4gnYwKHxn22Ml7TFn5CSiN2nKgT4l1C0srDRyrEq9d\nUvBJr3RpaHLA62aJDqud5GcSBFOexFJpv8nZXzcpLrPbwNMLB7AuoVhb4ad/\nT70NwWX2G+VkymBPPK52aqRkN8Co3Ov70oYtqwzCMYB1jtkrSZidzCTCafKM\nyGhNMKBegMvaEa2hch2nzfb/4iLSQcqlmtwmO9KUBTkwU99FMxiMS3MF/RQn\nVMrwEpWsa1x3+JWJ5xxhZ4dFeGuWQ8LmfaLkcH2586bssk3N8CuwsqiJ7bID\nKF4V\r\n=+UEb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDW8lVsBCHItD7DkRWh8SXn7Ww5nAH6KyKMcM589rjU7QIhAKk4s5cfdwv2gOxROD5jb1P596qnDq1U5qvV0DZtSBoC"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0_1576199358585_0.5101537736055888"},"_hasShrinkwrap":false},"0.0.0-dev.13":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.13","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"a8ba0de1d19149d87d7b36580da2ceed6e8e9138","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.13","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-UbpJqpxeSZsUXk4Mg2YQTap/bcOLPQ/v/2UNhf4UY9DSdKfkuQZEFtrDr/tYoth7tv7LN/Pv9O7JEPfxzfKxCA==","shasum":"116cbbcdae4b8fd41ce2f289f82d596c69cedaa1","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.13.tgz","fileCount":38,"unpackedSize":64506,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8uTNCRA9TVsSAnZWagAAmZEQAJI6HUuuccVxNrmngrSo\nx9x7ooPkzIfRNB+hCLMCXmd7/tPLeQd1WOUQowYnbYbjU7QHZ5eGvLNqq4Ru\nmHRUenjy8/CR1KghpVekxQ40w22zJKJGRVzYVglgJ80St7+Y9brap8xWU0s0\nad3q9NFp1wj6z25IGsf7PyNXmmpuf6sx8P9ZwGrRcqGJqtDU09IV3fuLksO+\nnVcUs9pZ9oIH7lqi6oL7JIk+8euR0b490a+1ypfUDFTvNSKz5OfYKUvCc/ZV\nzlo3U45tOknK/R0weIODCElDdWiSVLIhZY9E0fua0a8jWZ8dIEDOqfPf46wJ\nKEpDe9rzXIf+58iLTZ7Zs4gvTrO0k32Qrah8fyajUv9gx3NnA0l++7GAm/tQ\no7Ut1KBoC9TSckbrrdYyg9bZ9pQm87bT4C7XN6IpFQp0NPR1KkD7sLkBfPOM\nZTEMAm6ompDv/xkGXLlYSr4DmRrTXLbhjBIBh1WY8Kbfudd8sV8GcvtEh+cK\nY3tNjNGZ33U6jY7SgEpSudmJrVZ7s9S/n21chZCFDl7K9x5MGPW7VhV5ZZtA\nubUyloMmkjqTEddSNnfyB7WMbKd+ZJmHjhA1GaZmyuWOKWOAG9MlnRESNhzS\n1EyEo7aUrUXyBAefUcKwR4GCc8JNnX5VmR22qQgofHLjHWLHn9/IaTRu868y\nIC+O\r\n=EKcm\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDBqkd6Bou5dFXDd+v2KBwU6qPL3ijsW/KnenoC/LX14AiEAz2oBRXh4ITp3QCF2TNEZa7j/M57KKqQsGB/RTC7XSic="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.13_1576199372949_0.2892785529406341"},"_hasShrinkwrap":false},"0.0.0-dev.14":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.14","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"6c0eadd5bdd5084ea76dc796c4a37cddf0831116","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.14","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-VLbizJCR4hqOdx/G0/5T4yM6lTXc622KLOfsrMCw5OexUDjYrCAV3rJUkOjWU4Zeu744mvOQiiYNKvghCR/9lQ==","shasum":"ba5fee56a86cfd716c5486de46de7aae92692a9f","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.14.tgz","fileCount":38,"unpackedSize":63794,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8wpZCRA9TVsSAnZWagAAwToP/0zKRsW3ViuTCeEgfIve\nhYk/wxnHaniBHZs/vfXCPgISpUALFSCePqaoy75RvL1nXczH+mv01ue/Uwpj\nfYX19PyCHy8lIjW/wOErnqnGwNWReUgSoAB+urwr3jVZrgSpZYUlGLnTTbu7\n3ff71MCe37K+H6oeSJ2fdcV2SX6BCAcGBKqyUtbRId+TfioHWLMCmF+rqLzG\nIcT/fWeXCuLUmBVblx4twRqCfA+m+RHjE29M+ThytKva+wCoXujx+kcssW0i\njI/kyNbEASmMF/zazKMQO5KxOBfYg9TJNV/ntGIR+xcVg6lK3VVdVlRmZ+Ts\nJ8NEfl3Q9avT761eVI7rgpE0Tv/2WM0XTLkqqNtcy0wn1XLjIdA9YvhCmHqN\n5oD+c5zM67/44gXT0syTOo9l+XCuoduNMvMTNBfz5e5f0cxDWZLCTAwbS1VG\nmcKCDj+ADI6UWmnJVTyDZxnkV4h0WHnzpOGQNZKUQkkhFRWgwB0ODLQ6JN2J\nQPE/l9RugzBNU+NHc/wn/nJ0BafSJ58bLUo6eV9fbE3C4gQoKFMOzET9hZPu\nnLihYppp5aYj897xKuXC/SLr4YUSO+tqux1rvXt4LvmHAkkmyIsVO2FvUGle\np+y3djsRW7uyHNeN7HdJl64ip4KiCpp5eFewN06ePvbZOXqGPsVuAN9cn5q6\nCjtP\r\n=ZbEo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBhcu8I9ZMZS8D19i2MpKOWql/CGYY+08No2Engc+IUZAiAeuQeVknkid+86AglQk053z2wVIxBSYWA8ffIMwWNbIA=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.14_1576208984634_0.8513797241412466"},"_hasShrinkwrap":false},"0.0.0-dev.15":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.15","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"cb52ed93415e78dded6614e32a98639f23c29ee7","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.15","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-zOUKj4vzmZxiyQgRpts2BZQ2hPhIfO4Qf+4p5Qjz/tK2BuVB5mlppogbzC8ujD9wgn/oIlw8Ej24D/W75qPZFQ==","shasum":"24266b73ee71b1c938eb3edf3da13975695107ec","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.15.tgz","fileCount":38,"unpackedSize":63794,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8w5SCRA9TVsSAnZWagAAm3MQAKEwFMBGXYHnPr5GCZqe\neUIg0eqN7xB8kejvn2abm+r+xj/vO2qK8f9mNhiZi7EZeAjBiVZbTbR/Ciu1\nUy2jCos9snU2K9QeLkaTvQy11Ava7DBbKLKsoO3HuqsDo2n3QtGr6iDmFsNd\nczILEVsSVOfe2+D6zB1knv7uuJ2oZoG130jjKt44HLicUSroyJDpJ+pa04It\ntSQmj+NYhKjYnWm8FTb4uTCQGeGgIATF5wIOuOtHmr3uOCRGtNB9f/fO9byK\npG6AL/kJiYH4w1F/0o5Tsmxn7Ulan/Nqy/VpJrFq+XhNMDyjTkivznMvhXJS\n98umo31rZHl7oPMD8FATyegpR0NkbuiD/DHebEBz2DtywQ7wvRdQf+eqjMnG\njfDLSq2tN2pDd9pcI6JMXESLMfZunZKAOwsAdJxYdPjl39sOh21esozk3UEs\n3i9z5uOWq8BKlP2cfvuDACc2t2FsZB4Q1gJeTDMFJEixnNxagCP8bwqI7sIL\nY/HeIRkQ7Mos+Q8IvsjrePaZvfFbECzq/SFhI+YQ3q/PPs67LzrMvEMQzRYq\noOKfa2jFXxm5IkSMaU00Z5D2CVvAJ6ApG0sGKa9mdTYZHryd7InT1WLnounD\nU/CFC/C3+/c01Nk2TpIcFpHuHPyYnqmUZW95jYU4Fla3CbZpmAcHddPBXS85\nuvFp\r\n=AzEn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEpStpczntB43J9Apf6vpDBhxodwMN+qNqP332/1handAiBc9hDF5gka3OTQxryJNgxWv/V0wRkOsou2tqU5Qa8AmQ=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.15_1576210000219_0.8762881502075088"},"_hasShrinkwrap":false},"0.0.0-dev.16":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.0-dev.16","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"5f5e29124638c0a78db1962b327db4acde3b64e1","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.0-dev.16","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-dFJ/nVtYgIXuLFwg1pOz/IOx/bNsMBIKtm1mS4Q43ywuzf1Xyp7fQnRro2348NrK600boxEyNQRyFdj9qgJvxQ==","shasum":"4e47e6d8f8249cc3ec3035987f43833743b62fcf","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.0-dev.16.tgz","fileCount":38,"unpackedSize":63922,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8xJICRA9TVsSAnZWagAAq20P/35EMnmLWtWQ+z6LgcfP\n9ktphQ6mlPKZk6go89QKgP/b1IshyqI1bdsWiaMfm54g9Iz6CEvd6gJ1Sy+J\nXTuMxHNrPa98ZBUDwcyPd+Cx1E7aksft0fjVbg4gXflgKRyRy60Bi8jyfPef\nK0gjy19eR4zWdi4j3M6ibLPvuJW17FH58ZXMABkGP1l0LlckkU99AY3GFJdz\nHnOtPnUId7ubkqR6dvkYBzxyJcJuYdbw9fpQ5+lF0U/BqPRtT8yNy8tn0wXN\nWBRterql3R5777i7ooHDpbH5Lk+e6JRKVA5EwisCvppkJuH4tVsS7laWn0Bu\nF2L0mBEslkjP7vYXJ+j0f0YczANsYdoqJraoK3Le9lXdbUSDJoEufQqe42fu\nbTfIzFPXTiAE4vSRlGMoVLGDFaKNNfu+7JZbcPRQbBvHwqoTMbsUiyp7Mbw2\nOxXglqXyPRCHmOJ1nWohzTOs0eDxpjxw7ROmFWS9TN26+gdYyek6s89cwiqm\nGBFJ02Nr2M6tfjPua70QFdy4bUc9Xe2ksUSxHnY25lTEhKc1cQ4TF3sdxWSN\n//QfY0ObQsbH6l2QoUVga65FhU1h9cDmeIlLmokvDWNURT6mERqeYsKi56+s\nxrfubouoFpBx5emHoJZKcUEzrOQ4cfoKlPzkvzXa9xNoQ68HOXuwqdjwbaCo\nuFuZ\r\n=Dv/T\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICfuRvAiVXxGQCquCaJqhSPRxI68kYaR+tlCeJpSWO03AiBGZOVoq7uR78pGECtb7tei43pEtvvNLdx1eVyIMPtpQA=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.0-dev.16_1576211015852_0.2549084320624009"},"_hasShrinkwrap":false},"0.0.1-dev.17":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.17","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"32a4281d8ee852aea70eacadeaa329d4fc3310b2","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.17","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-B2ouFtBZ3pYHlHGQcC+reFxOEFLpVqaQxa889zHZHqLox65MvVT7mqInNKCsaxtCQiK6cefEQR3tfWsVuWx2ig==","shasum":"a7fab6261b757941b15658a285cb4fd814a01fae","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.17.tgz","fileCount":38,"unpackedSize":63922,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8xKFCRA9TVsSAnZWagAAJlAQAKILDGHh9QfXzmU4USjl\ng1KnuTI5LWhXB0n5LpqNqJUp/CuJaQz9z6uMFAwrsmG1PcSeM2S0m3NWvjkp\nuP5zjV6+nkuLXDlBpes0OLgKPAL3/BseM9SZo2Fnn6lOrxWGp0WY3O84XuuF\nWumUJQ29FiwFJ+HlBtFCRzeALNVaJYY3f6oFSXmzySIC7ptne1cw0gbgN77Y\nNss8gj3mB9DHNSZmwqAg2VCaZ5bUty5glwuWNaO5wBKG29Rk+BJ/ujM5rKea\nL26OlaDU9IP+DPK8gieN3z6EWeJf6Ms6i7wpb45p8vp1hG9NgG4qeDQSc/Rq\nGq4oxJiWxRgIqpCozFz3P4Cx5Etk0Xgo5qS9KSWACsGJiPJ/7S/Y5l6hk8dJ\nqySFcgUePqnAzOd+roBhMR1Lo8UF/Vm6NHTRW3W7BxoUj5chM9az0cdX2VnI\nB/i8xAqMqHya2RyX+4RpZwl8H0rSZHyw2FhBuuRKogt0siXxOIx7pEtfnmEP\n7JxoI8jSji6L7OY0F9kfDBBLdFgExMSsFng/2JQTz6PwctMj4SX+MIJMLhaq\nRn0EFZra8ATMBmSq7X3aPDKIgCBYYnvVBy+8atGhZJ9PVIhLq1bjWHhcMKpp\ntJfu/Ab7GOL6NiZ8kypmNPbVR93I0ZBFL3Wn2yu75fXMgGQxiR1FWF6zd1ly\n1AF6\r\n=BRUI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFgv7sz5Dx+TrGF7ixX+4LCcMUJUKR12kSMsRNN0kfMTAiA3OukfjnDgFrox1ls0nw4oXh8n7HTXeFqemjekh//7Qg=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.17_1576211077068_0.9737866593198166"},"_hasShrinkwrap":false},"0.0.1-dev.18":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.18","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"0650a877fd244bc83d2e1cc174242328668154af","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.18","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-xvC3dECwqNIgBf/hGH3Djbwu0vIFOetNkJ08lmIvsnr5TYloeOgrXgyghi3lAZ7F81sIIVM6mZidjSGiRCi8Pw==","shasum":"94618ec0c7b84d3f0fe0a5913d72591eb34c3e15","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.18.tgz","fileCount":38,"unpackedSize":63935,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8xTiCRA9TVsSAnZWagAAIegP/20EKfjJN2VVNs4p0uQo\nERcJJmlUjawNJn2L9GqzifM8wng/Te7et9iLy+FD16mERJtdHGJrqnBl5o0r\nU1xMrbYOTWiND5YuK8yzOkNeYvKAwMCqIvvoLy43S2vF6nxqdZGhmPJEygAu\nlfpql1jLs945ElI0ONqJAdKiB4I0X3FU9XPQBR2P1N5SDenTzwiWkudMP+EP\nWGXB9Tp+5F1HmwwKFDnyGl/qtCc9YhlK7+S8ylOHSqn5gSwavvmUtVdL99s2\nUY+1JpC6WVmF2ZlsnnVjscWfMVwI8BKvIfqB7kb4ytnnDlzwFuXwRbZewuwE\n7RqD3yLbqM6yizBm+dmifbd/23QJMoePueTnrwQ2plBLfloeEGaMfwzZaI4f\nJBj5U/uOFJXbLYKrwY+dO7qchDJSfX91anAip9TwRT0llzCgfSc5WN77OAI/\nbd7cGuUKQz2jPaXZsUIvpkIM6AIRdVKwNJCJ+6bep/Y8TRj3HbpDRhETS6tD\n7ZXWIMkHaHh1liyqLrmFt6l4GqHy4eKamD+z5ENy3Gm/eHVI/x/rUKEMcMp1\n7hSynKbZ4D1VFO34uwpsbfMxoMfhba/NDniwailsU0fYZzFEGpJSpSyioo9P\ngLuS2oj0SUOpdD3Hs7s6dWbzeDru8e2KLEoKPQDv4C40c03Hs4MK8zJMfelJ\n73cn\r\n=zcpu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC8GrtRkTDPKuB4258cYhCq5b98ZmtxLUw++cTUfGjzPgIhAIivl2FhVSwe2H0trCy4/s2XTMXvazPtxqdVX7myaL0E"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.18_1576211682095_0.48236352113964376"},"_hasShrinkwrap":false},"0.0.1-dev.19":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.19","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"52a19cbb651f510debb4a9953b14ed07f0f12c7f","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.19","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-WjNsjB2KmYfgJFO3k87QjIbICylNTP09LC99FRZcPzuT4v2w6XJA1IllCjDe0ZK5hFiawjliBHBBj08/soqh3g==","shasum":"d01691bddb72738dbdfab20686bfb47fa73b65df","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.19.tgz","fileCount":38,"unpackedSize":63960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8xZACRA9TVsSAnZWagAAx7AP/Ah4S0hrNJZVr2LpNYEB\nXb/6o0dpv8Gl+NBkN2nTRqAevYaRuGYNI/7l25GC5BZnGJVRG66GcrfHBXTq\nR4lQ71OwH6K4hRTPSylNKCbjqFH7tksLRPiCUgTtON33kkFij5gLE+xiNWNQ\nO/LpDjbWEPCu3snpGvTErKuJr1Uv1zz170HRlERaGvZ+QdxR+qE1IIozDZhp\nTBi17+VPT0sdSiLpBU4lGNLUuvkUO2Nmo6H51tlzJJIJyWrltmdT1iNvfPBI\nX2ktZBUlD0F6TROG2XL/KCjIf+Z5Dbff9bFsuvESu7pw6xj1X1IdJWQo7458\nBZbZmzXTBU2A4Qr4ijdfo3ZnterJ9ebVDaltFllmsIFzVnT0xO1Y4x5YQuvi\nZclWdrstALye76bzFROxVo1e6tup4eRGRSCtpMiETIO9/88+ov3btDRgftQp\nA9XWHShQc/M7vdTQl/CbiWgXlptOOC4pCdoQGimLQwKUxwohS50FN77Y2tjs\npLcK4hvbxHGr/SmsweKg9IwSBLtPMNy7fSpDt58pM4bMRAm0vcnnjXjsEmlB\n+vrJGQr9SGUfwBNM/7R1TFi0prcGiixzkZO12NB1MbnFghnRZK80rwZJiTRz\n/vDFhcNKozbpd/uTgHQCS9bl+JKe8C5gilQZ/DHcVZ+OFzRcu0n8V41f/aMU\nFEZ8\r\n=dwVE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEWL9R3hBj3xclxQH3Qx32OHdDHc5yWH5S57ycbYfu62AiAPmFvO+9GN2CF6bQ99ZeYQY1TFo5UAi+Q/Iz69O542Ew=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.19_1576212032337_0.03013310634544908"},"_hasShrinkwrap":false},"0.0.1-dev.20":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.20","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"5c33ed05373ad89b5cc94727e79cb46b442e8049","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.20","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-PcQZHQgyIx7k+KQ5rOMAvDYRhZZGbNcLKbzUQxfnbc8clJFxUxJCMjWUOC2LP27jKJJ/NINciEFNFAVOdx+MZw==","shasum":"379cfa1d62d7066e5d62a972f0b669106dab19ac","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.20.tgz","fileCount":38,"unpackedSize":64831,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9I6mCRA9TVsSAnZWagAA3lIQAIJRWfj4KOZENBnVAzSf\nH/orR6OL3/tmSWXH54rZWZEpJ2ET5O37mll1EWXYyy+vNpMKsZMNClbFbUiY\nnOxR8voLjRrYVpQUG8j73omP/p9wGkGnoBjwTNXxDiuxlxZYFZFDPV3Y4WAW\nBclyyYuCcGeMa0bGhGPv+cLzTyyJ/eVrukY118r00XRvy5aYn/TOLV5mMb81\niAarutIAv8N6cV5ErhAeviCePn96kGHd3JT4u7dnRAEbECVAccHPHLL904Pd\nocTCa8qIWiiYjgYCXPzPsYtIXC7kGbdtiqe6r82PpFqqwtvwxOfNmB6EJnQ6\n0Yasze3zhHgLoGk2Tm0t4mI+syZVYQ5KEuFFGPd0x+r1A88YQ44cysK1L1ch\n/NhzSYh2gH45gJXFP9ZuzpOAiB+0yEAMjcw8JStLCFMR5bqNUTGzyBJvkWvi\nwEKav7xP4nLCFagqMBlOW+zpx4kCjCuvfUfV9uD8+RPSI4PLUVRIQtNuGAeU\nZzpS4vIJmFDjWpNgOeEnRlq72P2oBrGc7wzO3g6bVlb2svwR1KDbgPMrcJau\nxPKXwHfSjLe4pnzJxBe246TV1y6VpXLzKiBGerm/8HK5xRmQRjkx+qKYKKRk\nGeLQK/TtjoxeVp3zGhUlf0mOiH6QJ5FTrccLyuN9rS+CE2WqqWcuyT4wM65K\nyhgO\r\n=QPvZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD/xDW37DQagn0hT4m1GKeqZtN+WmjWRwh0dK327TyvLgIgL0vSEJfARro14EZ4afbnFkFK0ia2R+Ixc4gPtbWLAgU="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.20_1576308389615_0.5015607378220435"},"_hasShrinkwrap":false},"0.0.1-dev.21":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.21","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"4818bb6981cafec163fb2a0a8a789c52bf3e699a","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.21","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-rylCBqzwvVqgiNw1O6+Uz4iXFy53XgHtriLqDzT0fP9WzaKr6Zlicqz7n/nfeA4FchH2L2TRz5Qn8OQNAtByMQ==","shasum":"4261635999ff7276a5ab36f2e1088ade8af849b9","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.21.tgz","fileCount":38,"unpackedSize":65434,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9KrgCRA9TVsSAnZWagAA7PgP/Ao/oqxEp4uJzHu+V4Mp\no+UMr2A336t3MwF6HX0qQAq18BXKHqLPmZNd97IXvPBjrO1BQw59i5YWobmQ\np97yvsLgQaIOd6rcL5wEKzjST7qXNbN6QNPblFJXJUdMLytJP0iRUS7kx5m/\nJxcm6T8Z3/Kdu4jzGOBBo/AFPM+ukGfaNQZow5peGVpQXtPED9B9VrUcHcxU\ntzofGcIBSdRyC1jAe3wkiAuRGLah5AjhNt5E/xZrGcYbDo3+qBGGXOXO1F+u\noHV9Mdr4WgX4vc/m2WaW/53vz+v9zZO+sYp1X+aZ7X1N2bFzh1K4C+/pghrE\nc0sGtrsq7Zw3/mlgV5E5bBmiiy1wnyuSSvVN7HrFCOp+IshLT6UU8pI6TQct\nvSR+FS03L8sSZLaMHCentkZJ9n0dlDG2zFehGfu/oaekyker6O9cdAv0ep98\n6luSqTu197oVsXpHhRnTzg361jCvhpPL+7LBVr9UmbWX/nerXHTVIRjMkCb7\nJX62APMFrhS10+VDUkNBwsYPVN+hvhI6BOK+6TOrOILjNola+mdmUl9e1u6R\n9iLzrWF5KN7V9X8M06+smqLk1P460NoWb1iDP/Z/dGJK4vb5P4tCZHKNyCwo\n23TP/WXGFcLAa4FSEzfFeks/czdok/4GC3feb2Ic/Om2CUsJZ302XIeZyMZV\nfjWC\r\n=JS3j\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDlk2M9NlUxrLPiHpUHpuERTboQQFnss6njAa425QSs7QIhANuzyzQxcBP3qQat5XuKo/HXkYposy987WofWND7Yukr"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.21_1576315615763_0.8248457779583152"},"_hasShrinkwrap":false},"0.0.1-dev.22":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.22","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"60f4230c9047cb8a50116df41758043f3b37cf05","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.22","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-/D5phWglcmIu20XjaqdgTRJCnDyrI8NXxFSuT8JBfz5Kvv9rrH8c91BC0RqhxAiTHIFAJVn1NO1OUpGUZ7dU1Q==","shasum":"55f6641a5129f5594901645ae68aae5bfbf089ed","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.22.tgz","fileCount":38,"unpackedSize":65459,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9Kx0CRA9TVsSAnZWagAA1uwP+wdTjZhO/KpGpa7KSqPE\n+bN1uGeSPJwOe9qMFhTbDbmx3bWmDzT/4+A00k3Gal6srohq92inrsNeSWuG\nu19HoXYWVQ3UiuvdJoa7yI8tpKvgjqC9mlldoA6qAt5FJayiby/QU+NlFgsZ\n9IYmGBLSl8ThaYAG52TGB7iehEAknfaMtQyeBSkMjQTHaW3CwYmQKMu+XCN4\npdMjiTeKkpl+gmPDLB2Afq5kHrnpgjbkp4tUP4oeYAmNzp5UzNO+FWQDNLUx\nm+bBi8K0m2oluoWltDMP7Lv5RN7vrWKF7GoOYYW83UAH2I6MZYupY/mhmzh7\nkj+lC3o2z8J+lMAgC5PYD1Ah504y5EjWmZUPcCPzIKCuielGlXU1mkZImZlJ\nWql+00VORu2Fglj1b8r9Ha3pxzmZxnWFSrtYCifzfa4Y1koLt6i0d7JloB8F\nKWvUgnInZ/RCM9AxtJ9pFrhgqIER6r/miPnmhrfvLd8LZBpKPAgjZtx1L/Fh\nM1E5Hh2S51NvwM3J2KJWwwApTacT+27YFecEclrEN53HGjasCJJYvdYl0/ez\nDx8YCxkoMSGWdCmy2dCB4FRWLxYQJ+A46f6JJp+tRmvYb18IU36ozk29NhOT\nmOnrmcpBin9j0FFUOLf5cySqdOmuYUEbUVOrrJ2FK8YrCRzMLHqfuYDoU4Xu\nqMWw\r\n=ZPH3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCCHZFK6F7FFANhK45MlVNancri+fj273dzPzYmwZNb3QIhAKmKjqSvpmrtqSdawaar95Ju0uxQRJmXQPnhSxcKJkli"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.22_1576316019588_0.7932954697536689"},"_hasShrinkwrap":false},"0.0.1-dev.23":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.23","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"e0fa395c86a4802abc57a78e69e37b3404c73388","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.23","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-PAgNz64Xk7sKUiD+1LKepkjVspcbGAOexC7I18MOU7F+teqrbvHSTkZdmreYFijFYK7WNoZIi8uVK1oay01sug==","shasum":"88aea82b6fe73b5b49a2895f98c327bdfafe4066","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.23.tgz","fileCount":38,"unpackedSize":65584,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9WjCCRA9TVsSAnZWagAAsQgP/jtg5RFA4PKavDXFF0Hy\n5aoJo4FyMXMdnJjYuJMY0HsjwZPCFaYPjCauSpGC8r//vbNrXW/AH2nvh1Aj\nTl9sD9eo99hIhmmQsqNkIrPjmVIu8mxsyAKFRncDYtSRGKg/xr8qdNuOWoy4\n95MrV1CFeJZFEccvoV4P/af9YY46+jkPKXfRMPfhbNOo/nb/A0u/NqKWqqyg\nhEsGbbk8w4FFAapi7dqGGfpwTvGghx1y0SMrMhIdvrfYkYkbg20/+87PbbjM\nA22vaaMg/Ppbi5/FICB5tOV3yFS3BNiC2XubZv/FZ6qzLfrq4Keb+iwVT1HS\nMwk20tH3/TdoSgoqkzpguvmXubyMgKWYWAv3R0e63TpBeOO1llFjpSDm+rux\n/67CD1uSvLsgTgz25Lec8oHwctvXL2HyDAmfUQ6IRFOQnEqVk3FTu/JWWcpm\nBO2N+w6fpaDa+Xp1WPx4acwe2GfHkuvLpuEBK+nt8ygtAojQtwbgjCwiQ9jn\nWWH8AYitkqhyuUtyTE6AjkmVesxsbJ2aLLb8VkRezIlhWtVYj5ENgjc8zJ9y\nWh3vivFGfTLLbsTSZ1bNc/cNjdnlaEGxJAkLLfZThGTo+qORaU9gXoq7hvQB\nJT/Q5++Qfm07/93abJVi3l6dghVNwE4ieO0DuhLc84d/m2KuG4QA8719QvrP\nDMt2\r\n=d9wZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHkooSnIFn2lFr2VGCcG9Q2z+3YoH9+cRGRq51knvyOSAiB5AjhuaErW7Du3knnKleE8FrwhiJf69/MOESIsl1mHxQ=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.23_1576364225789_0.6461909165611641"},"_hasShrinkwrap":false},"0.0.1-dev.24":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.24","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"4df42a80bb14cd6969f4fd08457d44f1b90726b8","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.24","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-TQgrQpU3td2SGJ5xNOWTUqobcwTe1jiHc8PSHNmrfanMky535I/SD7IQcMGZoIn8yw8DajHFWusbLmruhimFdw==","shasum":"ea0b36cc79d8451ab6d18953afa5f56f782e2e48","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.24.tgz","fileCount":40,"unpackedSize":63289,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9ZCzCRA9TVsSAnZWagAABGoP/2p1jXOwRTSXgtYSkgr6\nJ/gNZbu+MCz0bzvqHNhRAy9Kel/Qh+jIpFWgk5BMvfZ8m49jRmYlDjkAkYaD\nfmrgTMVeBRvuR6OMDxYVtDD+p75HSCrHFry/fBcNm7RI6xkOD/FQPETicZxk\n8iPFObJI2LYESU5gT/xgaUQ0tZopxZSCpScb27+COJ5U48kLG0AaOGdX9vRX\nDdZWy/YW/Jyrd7d9STDFPK6ka8aSO/sLYh7QG/jd31F+YNIE6stgzFNLBkJj\nkz3mIL/TrMZuUzfDbcbiMu+BfSi0aHpHcSSDHuznMynfXU9SpAKhU3cF4WKL\nRMQYJS0HXiQhslsHbGBLaQDXe/XA/w4xkAO2UgroxAXzwbdqUy443UCDizps\nCc82bmZL9Bw10+HjWFad/vqE+fF08VRrQDNXBZo5/XE8hSwLyXvgKBWl8VOa\nQmjObi8/Xjv+9s2aDGFugbtMGobGnag2s7+Bp3Jk2lKFhmp5pF5k6+PGrSzc\nLKePd/3Kw9XDUJ/GMuUzXtMavqwdZv7Z1KcApsf37iGilCuOrf9dWDnLQ9zs\nYG28ocJmrQjLMJhRGRf3xS4aqzYApi7YyjKq9sWbYzayXEHHVhkWJ+5/4vJ2\nJui8TU1u6j4tWQR0tcVEfW6ZIYczclF2KJ05YnBvKUV6pZlXRgptF1g3/C/B\nPA8B\r\n=TBVo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC6gkdgFdMvVopCuIyE6/NAxKcCvLrjVX14+lMe1SPaOwIgYv6mnUN2KuwoLi+ekegQNANZ8XGyM9jkfjLS+gbDQsM="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.24_1576374451102_0.5843962586872486"},"_hasShrinkwrap":false},"0.0.1-dev.25":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.25","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"e39ff2cdaeb0509fec0f3e3cde3e764b67c19cf0","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.25","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-PboBy9lYMrLpmxh7LMGhFv77OfewkfYX/YB5Bqd+On0v8fiDGgj0Ye5yzp+Rx/Td2O1b0skF+tfL5netdLZ4xg==","shasum":"405d7481dd5e5702657c82da18c8beb7a447343b","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.25.tgz","fileCount":42,"unpackedSize":64994,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9aQUCRA9TVsSAnZWagAAp/YP/RkdK2HLSxd+XOM7vpEI\nq60Gkw8xKq3wjEADueh1BStL9brXsFsbbgeVemepjv8yG/sIcHXOyk6CdPk+\nb0MnTHrcQmyGcT9RMPtto+Y5JmSM/I6e4WqDMBXj/XDQKNnlRoeHrUjeWAac\noUIgZbfaEqZ31dxs7pH4ypub8HKBg01KBKdE/IImBbnYMLMe9EUOJLDfQ7sQ\nc1M7cLhFiqMhyUVtNZw3vqJy/ObVtKCKcMMUeYyyp3zRe0M7Lml34gSPy6Ge\npcZ+q7hFmRmgsF3vwTWCmpfaLYvKSuz+Ttp9ocpN6v6mMOUIrOj1aHJUvyh9\nrs3yJpZMEba27kXAaLefKJKP8LdP7KqxdwcF3nYlLcc4EdDtRODIX9LKpnbt\nJBl+rQ1jnVRs1/65uoDuiHTGrihe+3WDEUpf48tMLDN22w3aMnXtbiDqoRie\nvjM9JFUDQXx1uqEt9u/F7BVPdQqrp0I7O9UNIV+Vp7VTGh7CQZS4fW7kwbWx\ns9qaSUeANV/k5gFx3DOgqm4JYm3bc5JzL4RdE2gdk4j5KoaBWcBaDm2LRuVa\nMuroxFmcRopSmyLKyrlj8ABaU6YQ68nVp6EVZ+6slsWS+qAlCJW306MPAe9s\nhx9ovoI+u60n9iAPw1MMKOjXJjzcclCjrjcxPvI8OFz6ZId5mnfjk6baQ8Vy\ndc7t\r\n=f82S\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHHUZYonAW/QfTrvgcdENe179wS6f2zIllq6lSPqpz9yAiAoeARJ6WnHndUkAUfRXUYABXxzlsI2sCVAz/BGz4is6w=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.25_1576379412093_0.3819821152760401"},"_hasShrinkwrap":false},"0.0.1-dev.26":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.26","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"ff0f16aeb3efd0aa6b962655c450929bad835b1f","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.26","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-0dgFeUIoSI1LHrzfHvRCTbyaywUkM3hhrPpLYlFQ/a5szDOFnsVeKeQTqfD/aH7LItJEIV4szhfL8HShG8szOA==","shasum":"c20e588ad54a9c1e14803efcc540ab49e573b92d","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.26.tgz","fileCount":42,"unpackedSize":65145,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9aY9CRA9TVsSAnZWagAAUc0P/1ANhNkPET9YQjWUMidY\nL/yavKCck4Hsflycbnz+2S+RO4pFpQ2QGBkt0HplPJEcNhtgAXu8yfZd07V5\nnXniK6Oj/a7lk3FaBwGvF5gwT5HoYBJREZjCNMsqOCVdJpV2S6Q2hdXDG378\nBDW4TDXTV4EP/x9MIksQbZOlRY5BlvlBGGydGMwOzyHI7WOVg5bM327AFGYo\nksaleuSFieoV0zbcjeq4UuzsP0MWk3/mC81HrOss+M0XqVfDtSAgn2gm2c2Q\noiq27rqu4LECb8zU5Z0wSwx/kJlXQmRgmXIwNlTpP48DVC0kKRqQ2CEj4WhA\n8w/tS2A4WeLSXu75NFAoCAbsBbhcKn53Ws386JGfMrnbG5kgxfaRbzKC3rmz\n5D5m9jvH+yJVEVSzc8dG2++D5eWooYQKjutQuuYCVhCpEGttiqpyJaopiQJ/\n5Z+CELdPzHRYz0Cy8dJtoKYZRH2HAp7l0qvRUOVKs4NBQCZ12tmXAQwINesQ\npdgOTXBj4xNqFqycaPz+EiBRidNYuHTJ6RguFvmhj32od4TmBsym0IfNLQM9\neGfNh67cWElt6fZB9rAQrEXKkkvWxZdYvoMNF5lzetJhVpLUxOuGziCzXEu/\nfw67LTPSIwMFWcg7dzthg7eUlf/qUm7byxrkbQh0g2oEUqPFNmAEy49F4wnr\nC3aS\r\n=2bDE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEn/aQD7eb7dYHKUSg9wlq7oO5l94/7g/S4Z2RNsWrDiAiEA1iwS2M+1I71yp+Itq0cGFBzLH55cHgPI5hWKRcWqQtw="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.26_1576379965459_0.05346224345208683"},"_hasShrinkwrap":false},"0.0.1-dev.27":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.27","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"25add76ef79990f81b634e43a11aaeb5da061baf","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.27","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-vQO2IxyfRTUVjYnOShLXQTr2pU08FFwqcwIuqhh1XEgu2wpxd0d961gwb4D4p4qjK0nSrBWrULA2aI/fkP1aSA==","shasum":"1d760352afd6089fdc0fcff26a96c0ef51cbf538","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.27.tgz","fileCount":42,"unpackedSize":65149,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9a9yCRA9TVsSAnZWagAA2IkP/AjRBkcLau44ORbKjgY+\nQvGDICUbWIDkVz4fx9cU2767VZeWjzOYV7ZFFUxkguAQ+c8/+U/yirlX7u0U\naC18iVTYeEQ8G6EZvBpHEcvVpmDz5WJ1dNlqHJ1+Xea306Zzv15qS3IsfcGq\nJ+1pNc8zdR1obXTbOa+XyEgzQGEPnWMxZLh8zhFvxd/cWJSJAEowkrzKNF8/\nyqJ1fHIFv9/rHRB2nxL4Lo6ZQw08IzykFJueQ/PMee9qNDUAl9k/5dp5grsL\ntMv9Lc05TR09VvoEqQONpdtcZTbNwRpRsbCgpFUZnqAt6Q31fkZWbkJf+V0l\nfwN58r6HbbdoVlPj2H4378QGzcq/hQNenMGj7Xz+Lk4JEU0YE+7xhZevUipi\nepDAcfKv0+4JIlWRmHH8WektPJcttBIy17rNRr1AVKFR7upE/XUyL1FIgpS0\ntK7aWi8KiJAGP2dbq4+idu8et2GAy/NvobK9Ts6pQG+dQwPg8myRV2ACurTp\n/yX4s7+CBEsamJkAw0Mv+EsBntX+Cu87cWxiHN7dNvzEsgVRKyQuDncBTPCs\nn9YzU4bt+qmgzD6GNqPJ+r5JBkJBhCT9TPLu5pvfLgTypmQjQkuYteD7iWFs\nHBiR1vzM/D82G1UBEQ/25oJV1WbtYAb0XMgHNwCpNbuEFtmlATA7rcsTis2l\nMwXs\r\n=v/0X\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCzMHEUK04utjWGOSrkv+BoCTi+zFk8HkLw5ifHOI+x8wIhAK6WmCUizzeTb7W8qo9loqMXCzyuMoSse5xVAfwPEJxF"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.27_1576382321514_0.30428491155325577"},"_hasShrinkwrap":false},"0.0.1-dev.28":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.28","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"4a50d8a7953415fdda5aa01ea428c1faa8ae234d","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.28","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-+e/3ktcEMvtJV1JDmmvaO8bO5P/aXr+FCQBKM8yDvC4MneeLIfOUQriG+1dBkiPNHrJXaa0MpQQCQd3PWl+3Fg==","shasum":"85374f515ac0311941c9bf8eb166ce677b9da311","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.28.tgz","fileCount":42,"unpackedSize":65025,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9stxCRA9TVsSAnZWagAACocP/i/m91oD01xJN6deGAwf\nnFP0EsuH+2j3hgDfZXkEB3bzq+D2dlWSd/fIEZfplH1zHPex9PsXKMk+gUpC\nYkaH5KbMTaDW2zmzxT+ytQA/cAZCcELGiIDH4mk+UKZ19e65J+Lc9DrfHbJe\n76VO9vvo1gszkVyLZ0dq5Ozj43m/w+qMxHK1dJ8WdjUYhN0LikwZs9CcWB+r\nzesY2E/mLC2ZurztxsP1XGvwANWc9E4mXf04B25qHMQjN1JDma+KR3yFtZKK\nEf31g9b2O69cL3G1PHDuMnqX5By5z1UOiVPJ2NgVhaiJ+jyZgM9BSnfTN9Rb\na2lKAYCvhwrUN15E9BS92b37UGkgx3Osx2Uq7wum9DYDFPcYXfOxM0/+P5Xi\n6nFLn7NgxrDzOIWQYItWXUNkz62n4Xx3njzdOA9q+MzHi+UOGbVnQZ/YvPEJ\nHx/uOLu+0RW3omMP32o1OmKilBmAFc1LoOGu6FsnbvTj1KhwjkMjg83/SwIv\n4rZPY/333EbztHV0/1nXfnM8FDg/gPxxdHKH7aTQ2ulE3Th0VzAiQxZR3PMo\nx04zfduJ8I5KlNZANJMfb4IPy++F/1zTw+oHz2eK4gkRI627VqqbwdRhxWWt\np+kVU8EBuPpzzWdLHzQhwj/VLndy6ic9/1N80/gW7nU3UmnKS+0dcZ9tAwa2\njIfA\r\n=DWti\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG6E59PigtNfhh729YRQtP3niFsfGY1SxjSf/sG0pq6IAiEA3/XjRcR+bebmtfJC3R+spwXQgmjAI8F4ePAQPs5kFqw="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.28_1576455025257_0.2285002923809869"},"_hasShrinkwrap":false},"0.0.1":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"gitHead":"621c79dae1f94b0f2b485749c79cf9efcc139ea5","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-5pLPe1hIg260grhm4Xq5rv2SQPGSVAGOfP8mZHF4CUnuPfRx7PQyzC1PzUWHrlOz8EKNZDY2ELNa/CPg7mtfaA==","shasum":"def55642b23b4997ae0647bf3c9a22c57a1fb4db","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1.tgz","fileCount":42,"unpackedSize":65018,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9u7KCRA9TVsSAnZWagAAe0EP/1bkwhVDQr1Cns2W0P7P\ndpKClFpDFI+E/BespEfH98LnhAYeNzDr0A88C7XDbZAyu0IUyAvsZ/qD9/lb\nTU+3NOREarB/dhbLcO2xyY5PYlIIhz6GB8LThIx7IHk4longbCkkK1pHdlAx\nK2UYByM0+7amEZ/UyvEcIT8y3Zca3Q6jTzSpm5ex2M035m99CYEfA9nNdU3o\nZGUOceepF9DZx0L6YcxfPGTK9HiJCeFDK0eoBJG8pJW4RQ8cicZDnPmbRMlo\nroGZLpvdVH8mzHg9FCw2oHxV2DHvtwPbvx93FJamAJ1YT/EiwZuVKmMzuGMA\nzLMUSu7oP35DCzH/ktyo0E/GRz/mriPFfFYUaO3reJptzTVGfBLYylalaRMg\nCWxazCifOqUYJG4ZRyPcjS00xML3/RJZpRuqq+y8Yesk8t7TpsAE8hT70Mgk\nQLyqZG4QH2g/JKPjvgFcBgxowe0tupa7LwZFdi8WPtCfF8uFZw5xtO9xH8/Q\nmW48Xn2J9hsIXUJZEPshMCLLpLQ9CblRj42xhPRr/1vCmBXZdJPaPszj4gj0\nDbF4vOp5z7Qa0ZEtwxZlOQ/EYAwKdDFRK7J+NQPrA7GHkAfd0B42bTgOgSKC\n4btqJ4fIku21506ueAddVeCzTjVqoZOZ33+URcxbI6QRICLimU9CTa4EwtcS\nMARZ\r\n=AT8B\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDYpLa/C5NZlZOxhzRcluG1xIR9NmHgnugWLneYTc5zqgIgWB8pp8rkIAengjnWfJsyIL1LPQpMsNyo52WEdT/CYU8="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1_1576464074167_0.15020259516356282"},"_hasShrinkwrap":false},"0.0.1-dev.29":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.29","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"621c79dae1f94b0f2b485749c79cf9efcc139ea5","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.29","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-8SB2vdbOiLTJdyZ1ZHBRtf6uaWTsT/Yy4Q6y+YavdasoREEMsNxS6oXjn9mN/t257P+Tb90Pqo80fPfLsq9Xkw==","shasum":"bb29e70c189c5058cdb0357332b35d7ac9b8f984","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.29.tgz","fileCount":42,"unpackedSize":65025,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9u7UCRA9TVsSAnZWagAAPRcQAIFlexUkFGl/mdoxM6ax\nqVoXCqRnzU8PgoDMKBhQypCMnlFvQHXDwKp/aTZiAmetspkL+nyixvQ7uEAM\nzWG1TPuR4zC8kanQEgMEXQySKLpvAnr829MNvod2dmG/hk5B84qImoSY/0dM\nFj94Ycr5Wb0yrUb5iXS8wFnPIVgchR6pa8eDT5Bh40R/IzNPWBdmHC2m+6y3\nke77r0li5Yk1pDZD7E/np7aB1ZatEGsRygK5iBlh93E/1SMz4RICOTKacRpm\nbtWP0BpTDN8kCOvzzBcBgte2p9vaEaUL4FusszH102rIWnLhVrxxxf2nvxRU\nyxHR35N05vQe2pC3pLLbx/fskdzytSSQOy+i0low6io6M9OXD4RIoEq5gAKS\nWp3B5WS1erctkJmHrXoIkm2O8GGUHQNYz+hr8mgmMsR2NdI1ByUvPqieRzOq\nk7SB2D3fjWym4TviuFmRU1kc5vhq01SGl+AtviD0smao/mjdz4Tpk2bEEqqI\n+7qUVCK5fDeDfglKG6U/mM8XuReMOXcz0Nf+oD0JIEEXFcmxI4N/PtQTXexF\n+xqqlKKQXytHgZGh63ve9uBgTkHsb8eT8e+qZ19L656xnMZEjm9EoPPuzEnQ\n2OJd5XttPH22H4FePaBXD4Rz7f95rrtnrC4eq21On1JRfWW3PwZd9bgoalzW\nxFXU\r\n=aGUV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDSBR6M8QUbyKRdXLxahU6QLUaQl/xMEpeGWj07Pu9Y3AIge3DFGa/rJz2fpJI6slA8xEvD9C5InQVJ6lv6+kCXeqg="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.29_1576464083631_0.5755921758775944"},"_hasShrinkwrap":false},"0.0.1-dev.30":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.30","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"13c2d91a29efe42d73033605fb587a961540763a","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.30","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-4BwBI2rH/Nu25MmfNTxSo+xw+e8T60qC81sIIBno6F5yRDF9hyfcD/NXMAHhAgMqk5NdOGuQCww6FDWLHywRIA==","shasum":"f14a587fd9cb9c84970ae643577c313a7b77ae1d","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.30.tgz","fileCount":42,"unpackedSize":65117,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9xhUCRA9TVsSAnZWagAAjXsP/0ZtlEiftNImBpOLIsXv\nAmP21m9TLTlV96JjTaZfhLIfnp/FrHG0k2W2K/Rhgzd/GO6VN5IDM2YFRFC/\nP1KE+k7+5pvoghcJia2nj5ydnRybZUcKpZCA1mFPEhI05eFRmhpzEiPABcU/\nkXF3ujaY4ho9HypWoLVud+i8yeVcd4by18C5O/jD54kxHyFXVcBhOrJbtpeK\nCb2cs3Unu5L+YCXN38i+hK/KV//pzZ8+7uaN7LeoX21u1vbZ2K5fJtZ9BKl6\ncWNpkQg16jNRFEddkMRwyFdDlwUbJbE9/yZAJxfIDyBO3itCUchYyiouMz7h\n/DtUZ7JusUpcv67llcUFDO/QdlEuWATB3dlKXjr2oZLxZ8pRiueNSe6faMd7\nqhs1iL/ALjNCPkGnIZibM274bmIGJg0TXyykOi2GD0ZVuSKDE/75s17GnkD2\npeZrs8lp9iE/VzNhdHeghB2UrplOClHwbTcW9o3GfTeb58y4z/02foOrj6Kt\nW/STQA3YXloswSQjGJANQ8keYZsOHSkhzvbf240njIFFpnLWP3Uz0f+q+P2c\nL1+87pEP+LvYK558BQi0EUPZvmZ2CgB8DrrDE9DEukyu+HdgPVP17POPsaUz\nB/LVXg8I1T8a9DYvsL7DNmtjoWvlMwu3UlFjG8j6ae1ve5owFfVnVArsigkv\ns+x8\r\n=fYob\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFK59HQKW+hzZOXsPqk1ojwdiDYuuXx8NS80nZmMdryOAiA/0/+uTeQffBy6s/ZL2YbJLHD95zOROoFNZX++gRP4LA=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.30_1576474708367_0.860896893530025"},"_hasShrinkwrap":false},"0.0.1-dev.31":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.31","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"gitHead":"730449e6b7393c4e5a4bb08494ec7a1a0f4fca6b","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.31","_nodeVersion":"12.9.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-fXblYnCEIkNsTvDqhGMbCWhdFW7hm0Hrf2RMHZx5kdl+h/3kQSPYuJ4saZ7JN4w546APIipWDMYojBzOCexNQA==","shasum":"49d9895f818dccabb5e03cc8b108e5c92423c5ff","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.31.tgz","fileCount":42,"unpackedSize":65406,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9x4ECRA9TVsSAnZWagAA6FYP+wZVRzsDxHaySWpztUjP\nOm8ersiuBE2lDRaAhvKCfVOH2xugmjcWko4KM6I1/dO4n4xhR5y8OqrA2JiG\n5ghe+M9XTdZyIaChRty+l0Aw527ZeRxXOrHzmwgmxpUrt82kFWWH3ibht+pO\nc1lrSjlOtiR2IK+t2TcnNUMCCXMCZJ83aGjksl/URmq0AFD98/L6P6Yv1Hds\ncPidxZbpkgjmsGBongoC1E3cHsA4McwLnX9gCVpzfsfNC7r0DCkLa11sryeR\nZv4SBDkZhKTuU3vB7xXxdV3vwrJZ62JRJjojiN0Y+LvN5+RSUYitOvg/wFXd\n+NryzRF90RkShQWV4oTRLoNYk/JTHhRhKS6wSlS33RJqSFa3eBLGAggZ0CUv\nHIBkl6TPFyVCSJKqi/uuZv5FHWJqgPUDbnjdDLx1ZHZxtS+1KIqv4wa79foK\nZlEVGeWThVWK0xVRjfPG/sjqMtS5oFC1GYogjc0Wh2hC7k4uM5ZAb5DcE9oL\nMC+SO6r9odq3CeuWK9jWoPTPTdfKyZx4g58E8dcEcxIcs6dLlevyPxvnhzU1\nPRcqnz2vBojVjrPIgXWOdWY4IFVV8zDddOev8mZnLuyi0J0dhYhjB7uOV4KZ\nurnHaw6MPVdj74HVrXUaq+JgMcIcHfGyxsZHdShHCA1gSwqKY6faklDfwAHa\ndFkc\r\n=px2P\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDp3bLpAoG8Jwoe47juqxjaOEPoV/U5flhgIBtity81dgIgB8yRUDaFFLmwY+Ur6yNb71Wmlo7FNjKw5EDuTFSl3o4="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.31_1576476164310_0.5795604349064623"},"_hasShrinkwrap":false},"0.0.1-dev.32":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.32","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"730449e6b7393c4e5a4bb08494ec7a1a0f4fca6b","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.32","_nodeVersion":"12.9.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-NyiYdKUCGRb06DWMBBrFzJgqGDnA5oy6ndy5/HHX41/DQGeV6OqS9vyJBAP3MliBQ/vCwzf49BRLUfBfIiOUjA==","shasum":"4d032ccd818d823c20d2cae547fbe1a62b92c1f6","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.32.tgz","fileCount":42,"unpackedSize":65406,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9x6ICRA9TVsSAnZWagAA/j8P/2TneHYGx+VtIeBvdP3B\niXxSfXH/SkxnEOTHf51OGJbO1MxMfVCKDEx244C4p3E12Iay/6xMYqlhrGut\nxKNn1K68E4aMFr14e0MHkanpt0JI7wc/o0R31Ivzo7usE+fpmCBJ4c7qZuoS\nC6hyE7sPPwDqauuKDPul0d+l7Lzg/eE22u67Y6AJwTZujcw6rcQJY84nrPIk\nbhoyrmJJ/futCXHP7s3xa31mI0mZWmORY5R2Z9EnkNRIs8GbFVh2V1+S4Jg9\n5EYqsJpQXikqhH6mGGatXcnMhrb8y79kfrxG3J2sv4nq8FHmqfZVHgZ7Ngvw\njv3pOaLFRock4aqOPS716SXCj3sHzO7dqaRh2h7viirzuFBE7HbBUaRvUGPU\nB2Evfazs7OgJGv27ilw7iSV8d/LsswX+xn+YdaAj5DjOMVoDH8vWPftxqUwu\nY2laJCKQOcHX0YB3QHvhqfMBVyJN8ZSs04H1+Tk6FLqrl7QtZbQVBcJIA/Zl\nIxSPNlbMGBkle6qbDDij/gvdH5/dZKBkjnFyhJNm0nCNx6+tRmyQhv/3vnUj\nLShGsgrmR3qUqN7EOAvFT3lthHkJeZm0C6mL//UBdJ/d/PRi968JtaiGcz5w\njUV3zIdOVkAMWKFYBFtOxS3FTW6Xv7r+TVYpfZzLQBt8P3IQMOxuPFWa9/oV\nPx/B\r\n=6NUd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFmjYpXWleC+69QAecjb1rWZQdP1K0oHyJQTDHdc22JXAiBUrTXBVw1CEQY4ipqDPs5luzJ5Yu1AAKdbzpblqAoUmA=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.32_1576476295621_0.1530883023365004"},"_hasShrinkwrap":false},"0.0.1-dev.33":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.33","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"730449e6b7393c4e5a4bb08494ec7a1a0f4fca6b","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.33","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-IyFgmriJXrRE469XvmQwH+PoUYhfFStUXDTkeLN9IOIKACWRIujdD+CRDJQYvIa4yWmcYNCIu/E6dOlWIgGDhg==","shasum":"1dfbe2e9a14319bc1ab33701c0fbec19da7a84b1","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.33.tgz","fileCount":42,"unpackedSize":65406,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9x7kCRA9TVsSAnZWagAA/IwQAIthsR2dPhsVNiHQielQ\nxM5bMvVdZtDXb5QGyR8mNJzel7bl+XBpnHCEB2Kmz8ZCuGg9CmhofaMIYmoD\nylHPD1be+8+viNZeoOLX/Kf0WF2i/m4Fokj9hw8y4LbqfQhqtdSoec09M8dj\nmhEZ3pCRN9+nSed50t1wKHAiwTpcttwaomWgVhVrUb6Cx9m4lnsHsEJwUnIv\nDeoWl+YgOsZa1hR+KvdD4sXwDWIOdsBCTEuehq+vsO5eENWiLI8WSdOyxI1z\nyvdvDztZJ8ZI/F4RZvtxPDNQvWGMgRE9aTfYzy9UybezevqbBc1Rz1B8FAPF\nszhg6bzeXeUnLHDLsYyL5qESVeL5I/qWOiC3KEsvJSlm8sCHXOguEY69jiC9\nOvWZ9TjyTO1PGRojMMUFxg7rL9ukNK+Htb0w17DilE9/d+7HK2bdaNKfnIDS\n59pkevhM65bD8DWIYkr5MdvYIVr0kiYE4cqTlqFHFBX+57beDGIxTC7RdLMY\nVbln0yJFHS7N5d4Ury3Q4ES3i2vBHCSy6Jt1H/Xq3FqiMahM6SuEgAhvkDpm\n73qg9cAgOUc6BpWVwrXxsnZGhPgUM7Zgs33L/FQzPn3iuN8vu20KjUOSURtG\nExnvzmb9YdYBwGM8nfzvgxPWKEETM2LKqX+oO4zVnrjfbxCw/02LwVTzmERo\nsoVq\r\n=Jk1T\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHGGVDfjC+0uPCI71eppjjgPJExd5JEC1vpWtS9YZr1fAiEAgDVtCpXh0mAU4ucVWFiyqff1gBpp7vRFU2W0R1RBSQw="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.33_1576476387790_0.9223302692182473"},"_hasShrinkwrap":false},"0.0.1-dev.34":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.34","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"739848db51f78c5ac7b3a26356fb527522fed53a","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.34","_nodeVersion":"12.9.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-8VOKOh34eMAMz9PbVqjnIE/WjiABzHPy/ioWM9q+zbJtRr9u+gLnM1I05aYlz4FhqKTK1bom8wAD/ty0GPaYuw==","shasum":"36a308b5ee88fdc0735b5cb15c6d1f17ff7b98d3","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.34.tgz","fileCount":42,"unpackedSize":66026,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9z3hCRA9TVsSAnZWagAANlsQAIaNtvSuXE4eMY1ges43\nEiij0XZueyoXqshMnTqVETlyAElyMPpTQvKbMXKAen8ZzEnXLB8PADgpSkPl\nNoXl2nSAZz7DGNbWpQAoRLFkktwSCzvvP2w0pNtdmnuRmpiM9ch1Eukdm4kH\n4PqC7XzK9wqvIo6AbqwrhsdfnHCL6QH7Y7wAr+tBxrmeOaVaQDNiObSS4XzQ\nHBEb7X7sCArGw9oWnKbr/umpO/5duBAteGmrS76gZresPONl9D3vqbVa7rU3\nfkeFE8EB18wtwcK0dGpd3nOJTIWIxkJD6NU/rciabBdLuTcMAT4zVKV5JZ8r\n/VKhy0rZsu+o4kmO4VHToRmRV3JSUbh+kmGq3OpuuYxtyCfSqbPjt76ZFEC+\nW473X8mBqN/yBbgg1+UdtKAurbpsJb5MfV1FBVt2zMeIx1eDfvB1emHjexFT\nzJalgP/L3siH1KdsN5pMWd2y5CTitsZT7Bh4Bq8uJIFiQb21TihgIovEt7bd\nITbRDKQoAMKfn2SUq4EdnDbLVJePbty5Sc3WZoxH4MCKzBVYtpGGJC4jE8XN\n9LvRH3im3v4pZEMe5OIXyxS62wQ1bJEfC/2fecqOpbS0dAvmTbawv19gwsQJ\nXPMqI9+Sw4sz6D4eOhzTQvylrQ9YXClheYZgmW9TvCCUuXmwxY5/a3k3rCjh\neaRy\r\n=oG2u\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIE/SYcZaRxJOEu+ICWzwqe5CB402jHLSsxZzqyxbPTJ0AiEA/u5vAPAqRJE8g8iRLJKcp50BLn2sqDGFIFWwPVf+rmY="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.34_1576484321212_0.3668081317753855"},"_hasShrinkwrap":false},"0.0.1-dev.35":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.35","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"739848db51f78c5ac7b3a26356fb527522fed53a","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.35","_nodeVersion":"12.9.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-Isc0KRvVipfoi/BuQxhkLICUXxW42+lqdeJni2WoDj2Z/ZagUlbw3frPYjI2/1pMRtH4qxwWcIoa3yXbnfQJYA==","shasum":"d396fa8c9b86e4cbb1a2fdce0fa04ada3d07bd7a","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.35.tgz","fileCount":42,"unpackedSize":66233,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9z4BCRA9TVsSAnZWagAAHj4P/3VzqalT+QJhOYltMzy0\nA/F8YkzRiTECkVDLyCs2wkmgOtjLzOO4a6Jx5ksQCXP7dDR1J2hdkeodaVBK\nIWkhwkgDWQ+BHUUQJeefM+72QBT4g9he28d3TBPlVwUmASHtPvlUYu7rZnug\np276Ume/Miw8v4tHwDgZS3rXTGEj2w/2mR3WviBOZUnY7otMv2DDP6xawTbA\nsjsOLz51M3UW1zgy3H3qBlEgiZPwRl5JBx5ToIj5ri3gHhOIyZDlJxeu2LGK\nLYysfn+E+443IJ6vCHsTAIjtbuanwuaBkbwh4mC1mspP8QRY/E3i2gk/qbPd\nw4OHo4CZA8jRLD8s3XJbjat0Mu27mpPlsP9FgAH0PXOYwKzr0NIXs74Lax9x\nPH/Y0xeXu3Bwj3nqzqYENquZjJXVS75MSx8z4q/9FIJQXsFePJ2mkItF0qm1\nDqiCT2c8P+hs+ck1h8odHSoS7URWu6an960eU0SW3B6UxAMfgXuh4PW/PUAZ\nGM0Sn2g7HaCx7+p48j4q9qvhfTaGUtfOPumHZyUCowReAZEMsQfjhkzHt26O\nK1oNNCFzvRxNZrlv3pxnpcLdgoWWDkbx3wmLgd3DnCUudStT8Hc6+P0TrjGV\njoI3m9+52iqU9X0/LFA23bjHlfvSgZPLvrxfZHomMmALVofDU0frA8oD4owU\nIreq\r\n=GwOk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCwFMOa8xy6wxTShial0ImEanHPVmUcrkgG9anTkzBYDgIgcz/bY4d/dlC3UWptkaR+hh3nOjKty9Rc+/2z0Guz8NI="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.35_1576484352628_0.6139415844008493"},"_hasShrinkwrap":false},"0.0.1-dev.36":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.36","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"f23738c0793bfe65b5dd5b0a67d41d8f7196c226","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.36","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-6C+hj16wZomZkflkykXa8qVcYrJgQkcd3RI455ikaRcQuad4um9Ptmj5XLoeHw9Luaw3UEhdipFHnVRJ64X63w==","shasum":"43ee8ae4b87dd12482f7ed05815593ee37e8eed6","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.36.tgz","fileCount":42,"unpackedSize":66411,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd90CkCRA9TVsSAnZWagAAYywP/jzcx91KccXCp7MWGQC1\n9oGlNf2j6+S3fZCBUKlB2OB5xp8sdMGyVtm6MZgFKE/ApKTCRpF7GPk7KqCx\nwYz4eRzMQnWijGHKb4PWtqxqhONqRTEXGSe3y9e2TozY5sBYVUtPRA98CmAF\n/e2VTpN4sZJkD8gqMHix7FeR4fL5rd6/i9t5Ys8W++aGE/HVxGPAwBtKNL5f\noL0T/2WPZRu6gjXvIGXF0gIASSsA3w6auOH3tvMxcFxLohIrMLSD9xfGWfga\nj6eIeM1DVYaeYfFctRJllqC03V8LVWSiyvBUSJwpv9GVFIwLZHy41S6dtrA5\nQW9ahjk5ftkyyuJlGsNTo0NsJJp5UC7n+J3Ai0OafeOdYMQtr7MdIE3VvaWY\nq9Q0hK3Czqo9EBEtBuPhVTcCqzNnkTSCWv+3yy52Y/bumXtTqsEdNx19wFGJ\n1lr6VN9u86UpDV11/ny0yDDnnIQa8goV1QZpCbPGep6z48JEQwsVFk8V9yg/\nFyn1x8p7KIhmi/DU5t3Rgjw5M9AgyHhvpzdb2dbRFX1GPpzsn01sUqGssFmZ\n+AJqxtlgtFx2BVwI6h0MLfIC6pZX+uW30OF8VJ69TIqOl6e8GEIvpIvmGIJS\nh4QtvmvsCgowh5TpOt9iM40PkY3G+6x2FimdHq4WFrs0B3PF2VB8te9wcO7L\n5/OF\r\n=zAxO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDmjgPPGqPysQjrSgri/y7LkNc/srCNI2OCcs2+bPaXsAIhALFzv2WcKPCzPhhTQAtur55oSh76UZ/YUgpgVwcFmXf/"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.36_1576485027673_0.8831986346810414"},"_hasShrinkwrap":false},"0.0.1-dev.37":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.37","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"gitHead":"9d2d45667580c7a7ae1c882e50378a111d8eefe9","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.37","_nodeVersion":"12.9.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-Xqwk62pUWsKId+cPCUBFPM+OMs6teYPAHnx4UF8t/mzr+fEMrT6G+RGTba3t/MCeJcDlbtu66J5MEPMexzrbsQ==","shasum":"010fbbf40cfb5e0a729613d674aa10f81a65c7c8","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.37.tgz","fileCount":42,"unpackedSize":66233,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd90DTCRA9TVsSAnZWagAAt20QAIEWHblK0wQRQmsfSHkb\nlwljYsULzDbGcB7hsUY8ZCklaqwcghdg2SO1ShEJTwlnovI6rzMLXIChxTm1\nZRVoDNpraezizE7eDt1MHbZCsPXaFQS/HYYycZ5vt2us01cx7OCem/dFq+Xw\nObYDdEBKjIvpF+/uNAMlL7qSqFRB0x7r0PUxa82OnFRbwHEAVqofAbDYf/qR\nhv28zjez/or1wZDu7UC52rzg3TUGjloJb9hE7jHn/T+HJdPN7qw7aeD9tTwF\nWsHKr8A7eAMNFEUeJ/2j7Hsn87Y4SzG+RpNOPOh9bCay6IEgfxmim2CjG0bt\nY2+cyOTM2yAfqwTfYUmZWPHhikbQWPDU2m8EbJq4R5RdcH4i46ypF68DxUsh\n7+252LwnNfvJAV76FWUvF50XjdA43FOGJV5Eb6Lc8IZInTFRB741NSNQuTXM\nqaPd4LspZp7VyfUqlpjupj89PHvnDPgynFAyKN12FIj6JSYSuf++haYmZMDB\ndP8aYpWX5UyK2eXGmVbU2rPUooygKSyz+AEMW0X6egXr2wEXWWfn13ps5aGs\nxzncj2B50Qlo1/PkMMX+OnLnxsAdjjLVpKTbBdC7EZrCE8oNbkvvNwa3F129\nHP7UdSDDUwtXhVS+CcbAtuxSKdumEWv6gTgd9hjEyXuTYuaWiyz6KsdnhHyM\nVoa0\r\n=SqSm\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCeNq4fA7smhPM6NWm4crJX36M7+4ZrlojacZt1bwNrGAIgbK7MLwNGZHRWgO+vuzESzfNLzGLcPo3Tq31JzP5HMvY="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.37_1576485075154_0.7648479103336217"},"_hasShrinkwrap":false},"0.0.1-dev.38":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.38","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"gitHead":"9d2d45667580c7a7ae1c882e50378a111d8eefe9","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.38","_nodeVersion":"12.9.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-nRu8XW7UOd597AWDlnq7iQiPFgqJQ119uq1WbsUspLvLb3UYjfog1Y44pYolmLaXovPVDNlJV/94ZtMWoDDQdA==","shasum":"fe399790fd7b482964434fbfe631acaa98d9141c","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.38.tgz","fileCount":42,"unpackedSize":66413,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd90HHCRA9TVsSAnZWagAAo1wP/210ffN0siqE8OuBfQAa\nWHX4agLUY5/rll6OtziKFfwLuXNFIv2Tg+eeAoC6GkJ0b0armY0mu1+M1SeD\n3De73LBNvRuNAA0VaZT8dPyl1/QQ87yLGfmT/UiRpF3efPv9cwdetRA5mLgA\nrx2SdM9/O+Ojo7oIY/XqJKubtBhrT0T/Jota8eSJmuIqJVMx7uhnFEA/t/c6\n36r8AeJnr7apBWqTvmcj/R/ALWPuPwQwbF9NCy5q1/wLig18VnEeRwZJlW6z\nS4Cb2rEuV70SAubVl7R8tnRHx9aIwxTp8ojl7kxjkEbt8VlFW9N1nyMWS2F6\n9KZ1p3btIJRRXIiQpJB7L3btxbgfWSEywzRgiPl98znC2IDQbqoUCU884ZAA\n0rtebEvYDSB4BKonpem2tnXAMRddpPFYWcHTSrbf/u8RJq3zG2tddH6AsfG/\nfpr1juWJgfKr76082GQYFOkquefIjSoYChkbRScOw7oMzO8XJC/ONrLu6c5i\nQ6Y7xMW1VJwOnnrvDYOU1yJm+sEfwjq/rz72CAZZZCiVnG5czsWPzh40dP/0\nyXzh/jTpGdpNSuLIcMvmG/xgRN5Wnsnwn2ovdmZHQ9dPMB/qfg9S7XRWzORf\nbD5c1DUcz8sbSHQmc7e28NJm8xRAaQRo3WTvAD+Ci6KZGv7J2Ys2vdKxiUO8\nDMR6\r\n=0UDj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHVvD/sAG57HhBPoTyjfIZ67RQsrwKgFOaDxh6P1tpA1AiEAvDw050w0HRdGoAPdbtLtXc+sQsXg9UkhdUj38RmRpGI="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.38_1576485319104_0.8019196971208395"},"_hasShrinkwrap":false},"0.0.1-dev.39":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.39","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"9d2d45667580c7a7ae1c882e50378a111d8eefe9","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.39","_nodeVersion":"12.9.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-wFmgGLNbNwQOumPePyYQvOfLJsryqpDoxhzb5wyajCtGtvzrRtSZZB7xijvIJxa8gxjvsZ3gTAdUE+lPpx5/GA==","shasum":"4ccb50d46711400f478c3e5e97158093dbb28bde","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.39.tgz","fileCount":42,"unpackedSize":66413,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd90JCCRA9TVsSAnZWagAAUjAP/iId48bzhNDX1LAWeSFs\noy61hlzraKaAsWXgAaOkyxgnsYv+pxHVOViNoUFwOAIpVDSpFn3Ly2PGOT88\nhUaA9GnnE0UtFe9EPH5r/CRHBH9TU7sApLnj2RFqnC/l3PFApc5uTqUSjXC+\nXXw6n4846OkSQmJYSaxpMnP2y7bJ3AHP9AcYk59XSUGassEnAHORzo9mPzGC\n3zPhYlvRl6g6TpB6AZxRrc/11/JmE3YkPDVSeK2NHUJTppqlavEY1p+TfWBO\ntm4O3FFPm1M+k+ejaQKeQRpgl13XsPLJ8RFBEQawkblgx66HUeqBenTTGHnB\nYV7ViJHaXxKwLUroaf5qKxkr4NWiQf4e+ijJoGxO92unBLtas/OWejALzSFy\nWR9nfL+fZ1bKFcYIr4eCnHL29FDJjq+ms54IDS5cbMc33N6JotLytpCnuWat\nfX64GRrzFR3w3Lqgmi3vcqW7VYxNdaGO5gdYdVnFkb/gCROjyyM5tuq9l/JF\nNAlvk9otrz32oXeKVtKXCM2z1TttwF/mNGtxwwPNc4+ApLgT1l/zzL1ATEYh\nyBigf3iKm7sza3gWioryOFwDtG75SOL8Faqphdh7oPuq5n5Qhq0teBciflWP\nMhWNHde8ipKgUVvvc2/21MXE9qVIpThaDkAxyjf/Cx5OjSo80EOp9FX8ckjH\nhhWE\r\n=bneO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDw2l4FBIHK0fSh5iQUlWkVNDS/6LRWa9SbGh+ymcXYzQIgPLSs8pXjuXtid0B9G122O9Vha0dbadtk3mumIh9nX18="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.39_1576485441728_0.305313730616231"},"_hasShrinkwrap":false},"0.0.1-dev.40":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.40","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"4ddb6f825c9f9c29b875f11f3721de6fa32ef9f1","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.40","_nodeVersion":"12.9.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-qUdU6irNp1ayiciE4ACAbeeZVpwJydjSWbUq/PIH20IzIYVIVRR0z3O4ANrztfSVsNgjGq9NCWvY5bt8i6mwLg==","shasum":"a1ec27093815915daf2843591a38783a3683b372","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.40.tgz","fileCount":42,"unpackedSize":66413,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd90QeCRA9TVsSAnZWagAAlFUQAIO2zTE8m1dUxbDODRDu\nnttWHT5875x7EVOl4cVylwcLi59ySPfFFVb8GQopHLUAt3VTnIF2CvA8mrxg\ngDMfyYQM/+w/P+I42OYo1O+gGcW7dabjqDu30knayoNBVUuCGyUH7KSwySPV\nWqDiRx8cRZSwFwWtGiLlIcjy5hG6tnA8pHglCoB+8B291thmpkyPkhcXp1sS\nS2SJYGnpGZ4caHRHrSGuZG5X1EkqjAAz5plmRhSSoA0GJnQM1HtcHAKr4hQn\n1WLNds6Sy+5tsMOQ5aSu8xPJHpDwOfXtFA4lRhSWUvcO+YbxGotKd5r9dszl\nK20NcQENYyyxh5dGjoH1cbPWBbncTpHgTMH9hL+WHtqOZo6ZRd3Uq5TS1HhX\nbD2sQ9ylOK29dkiJtSdURyIJDt5pUFEaRPJoarmFnw/pl43pvnF6GqDRHzih\njkVKDH0m3j6WPHGmcU16z6nJxH3UUStZ0c9Rx/1yavtLI8JfT9Kh0JGlrmLm\nWa/45PZ12+iZnQaheGyuWfPtiHCgqfdZb6PM1ci9sdfIXVUwgDxkumTdt/Dv\nGwyKgaAEAN/TweFHna6N1s9y0spywyts7dFX6y4J8eXkKKS8+702m+xy3lFg\nft1hAqHJp7S7wco8Yum4E4546ErjXDYxZvLjmmsXSYs4U0I5vcjGaJuJT7AC\nqp2U\r\n=08my\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH5RGRoepIO3Y58uD3bV+oYYY7/phGnuH7SZn9rbiTF/AiEAqevfCAoV+cXUCLU+6+385UtEUNyDQoMB+5udqunz9Zg="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.40_1576485917755_0.8723853968219604"},"_hasShrinkwrap":false},"0.0.1-dev.42":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.42","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"4ddb6f825c9f9c29b875f11f3721de6fa32ef9f1","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.42","_nodeVersion":"12.9.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-4kpmbjA7lwXKtU7/tgTWIzlNKS35xw0Xv9FK6r1hpfbLoRz67QnEF+BXbMr0X2lgwurSdAs5dCoTPDEbiITkdA==","shasum":"7987e0b8d5ec9f052b1bd01e50de1db1c9dafc1a","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.42.tgz","fileCount":42,"unpackedSize":66414,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd90RZCRA9TVsSAnZWagAAA1kQAI2MrVJpVdYVDFMDmmvg\nE5wHW06TwYMkH+B6yY3/F/JbVZ6M4PneUJi1KxztQtIVuHDCSzcGsT4D7LeV\nYWgPNfkOI2IwgWq95DMBNl/bh7R+KzrpqNMoJrZjXp0TpQ4txszWGPS0ZfTO\n/Ky82Vo9nuTysd/woWbrfuYj8Klv3aUgecSGb2itE7mW7ZPL+GFppk+cEjwG\n7mhH0774fFrKhMkE/aidE2NlwJmTHkc6R31u8tsV05SNXqjB3xqRtxGwmJMs\noaQYJ4xpxm3Hc4Q00DZwe3AUSwb0mDxjjnNCAS6uos2CMS1oMA0ygbrLtwtK\nWvB07kHJCfaiqV1598ByUt9MnCB1F9wnqQWqj8zVe3rHp/rNrM5RrRc8NPXR\nGNWxbic9llyOyIHHVIv3zQYlgeeXDFN13/rO/zEN3bkWMH8KZuDUF4m3URY/\nSybeKz8PrGk/uGb0dOQPQ6DLXuHoxBHiuLaLfWNuCs/mLSdfIBI0mCzeimA+\nwyjzRh93kZ9VSKkYwZjG4CmSyLpwrBdjd0l5bhTitU4YlHLu9Q7M8/uXumDf\ny8I1N+13vMkeNTg8KnjZ9ou6/Vzd2ctclsyMRw6OOPCgtmhsxMoKPf7njrJp\ncMZQs8T721kjMydZXnQwxx9hO6MHkxeD3prH3WEY9Z7TDbisfAZFdy4ihWA8\nQl8N\r\n=J7sV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCw3pvlDcKPkweV7AGsL/YeHWBggE1EJgh4pAMM0C1m5AIhALUO28RJYzsoLOW8a7rI5iHDZlKT/Qb/HGjHdaD8g3fh"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.42_1576485977162_0.32268323375600705"},"_hasShrinkwrap":false},"0.0.1-dev.43":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"0.0.1-dev.43","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"4ddb6f825c9f9c29b875f11f3721de6fa32ef9f1","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@0.0.1-dev.43","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-1TQlew6M7aKVTn24ZQ/B8fvtJSPOdpPaL93/RDTXXZzofVWcIiQVhtwOA7EbYlVLjxK8yUzLzWAVKSE+v79ysw==","shasum":"778a3196c0a0606d9fb61d7669969dda6bbdfcc1","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-0.0.1-dev.43.tgz","fileCount":42,"unpackedSize":66414,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd90SUCRA9TVsSAnZWagAAgFoQAJgvewztLa7/HDcGtI/d\nZMTcb5byRqFzDbG3dKef+BIZUHf1BqSbLpgMZQXadjUqogq/v0zIPVuZbHvk\nkae0L7f1WFPzrAEe6GmgxIEltKCp0K5Rkh51pOnfm1GMPbMVVv80BxfuWykn\ntMeCnJCtD1Ba0/gQzP0pZBlmUi9uZy5I8q5STaSQBWxJLwsnZah8jfaIGbdw\nzNiRn72lp2VdMPV/hyTsWvcWDhPPYzCeUsSnBk7iC50qmOXKAnT8DnrSBwVk\nb3JfpRkD6TekgoHbScsz2xEwIKaI9FuF2AVWzqmM9g5bc2TuG/h4vkjtg/Yk\nXXeFSmukk/z8sULYIWqF+LlefG9sIjr/+y8xMfc+cmxkeWGOFmG02MKN2JKc\n035xIkNiEgSMmg9WKOj1aRzrbnq0y0s9CWIHACghRvJpyUgClrThNS8p2RXv\nBrRMTY18vUlJKtoyVziQvGOw4ayf4t5azaPoRTAevTIVOgetI23iGmR1sZ0I\nlGuwMC04ZXS7LnmzN+Ba4KwRfa35ea3a4SEbjvPcIddBAQdbL4tFRs5KvEXA\ntH1bX07eAgnBCr3oss0oXkk5hKjMzRInkmKwPOxeKlv9PpkXmKzsEKO/lC9N\nSbvpV6kJDJu2AKMw6IPt/bgxddIL5cQo4vVgKQnvg/x0YkAgyJFfu1DGLDr5\nmEma\r\n=gcFg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC5NvsCGrtW1e0i5x9UTaT1MLyBMzkX4gNobqQCSVKneAiEA/yXyC0M4RA6ZBBjyfdBET1hW4lByxMj+CJXTqWcDyEg="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_0.0.1-dev.43_1576486035458_0.04558086970895281"},"_hasShrinkwrap":false},"1.0.0-dev.43":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.0-dev.43","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"37886fb700a7e78c8ed8fe8ae47b1bc2c84374f3","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.0-dev.43","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-4ja+400LYnx4pSJCLh4M0kTZFB4kEqnxfpvDUYhHEMX81Es9rQHCm29eidwR6vMHcbflTmNXirm0o3vPaW3TEw==","shasum":"93effa748b9d0e785faef0ba293fac4b7823d39d","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.0-dev.43.tgz","fileCount":42,"unpackedSize":66414,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd94gQCRA9TVsSAnZWagAAjH0QAJK+UjIH/B6U3SBNbHQH\nBdXgcuX8kX9eDdANFHmvQr0nclM4hXo/wEMOqGXnKgxNr3aUdU+AVd95AJ/V\nlNgkuoPKTDwpE9SFX00LPmb7UUnB/tOJ68QDbifkt0vlC8DKMAcPFhRg1jK9\nW2j31tpNqTOjUzOdyCjxA1DQnV2bbxA2Gk6xKpzgq7LB98AVbhBbqBwjSVhO\n7YyhECt1LJw4n/60IGjKRB3v0bj5govvdzt4iO6/VUcazOzWcUHay7YO4F/I\nUMaTz9paVmwznWRi/Pu6vYrOKtMGScXJZ/nwhaMGAaZ6x0GjRrWmSKLAETOJ\nDAjJJv63UJA1H4beEgjYlDsV46J3Q66w7TwmWPcCtzxWwg1lhpMCfqb1GRC2\npqTWwlo3BKxQhIyFuZbcHwXcllpjB462YFGAgpiYW7uhXi3rbYse6qDC4iKi\nCyov0sPWD09hgK6UEnz5GTWMOpZ/stC+Q2Vj6N13u66mZrefqZwZQ4ieEmiP\niyFehGDqkTtPd7rZH6ieUAwVEg9Ko1f8f96FkMXaRGNPgkTI6Hm+YRFbM4ql\nWWgSw+RUGsgMYJHyMPkuZlcNj+3q71LQ+CERPwXA/YUfTa/5CivKtQkieZl5\nfVrX6zYqmT4Tn2az0fDrHjKNfTLDFPwn19QKz8RFXCLQHJLUuIuZRbTqfi9u\nQbwc\r\n=xXwi\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDY65zjLVS6p/LZEDaJvEnjBFCywq84AmOjVvLR29UafAIhAPq5DA0iHBFjyjcqzKRWXWHAI+9na2KFzt33t8ijdHhF"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.0-dev.43_1576503312387_0.6924248359538163"},"_hasShrinkwrap":false},"1.0.0-dev.44":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.0-dev.44","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"1ef1c9337bc4b4f59c7b6caf45056af900c691eb","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.0-dev.44","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-JjxdQu8aJCf4gc6oWs4298ylB5nTmi+xdaOLyeC+V6yJszzjYcuPFKrD714Q8aHegfudkNVMMUwIg6CVmo6nWQ==","shasum":"dcb8cb3da478ab2fff088cef7c7b2160211fe24d","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.0-dev.44.tgz","fileCount":42,"unpackedSize":66414,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd94kqCRA9TVsSAnZWagAAXhoP/3ZhAk1gnGQzpqlo+564\nHojW0LiwZkFvlRzOm+6Yc7NxeOlwqcpRXdfWV2ZSvte7pFkJP/e2s2K23yYq\n/BgsJ2SgccTlwOtT938cveKNID/m4XNETZ1tPQDmJHTZKkh83loyBB4Pn6H/\nordTy9odkIx/rT09Wt6ZhTKYeUTBZn+gqzE0NWbhmAuRJUy7yCoWRDQjF74b\nmM3s7tWTIvZ7dA723KF52j7XZZKftAnWhEekjdfY547CzPVDhgy1YsTcUMkw\n0UAyitB0kUk/+mnGfMcbnRdV3T6Qe1BQ/bH8Xwqk1qomJULBGNZlCMSZIaNr\nmN/JHfCyaHvOHDgMrXiX0ebFeYeGBl2VR/hsOuQVMAdq5qH4k1z7sUi09FK8\n5sJFBHHCYVCnvrXNa/fcy0e/f86w7lVXP19AXPDWR9pHc5S10NVYjycwrgoz\nYXIUGzVYmJ3xlHUR4YopL8if+U/eF6dEGoTPBiumyDh25s/pyrVZMe+RjLJQ\nQAhDN3oXW3T3DPaM/2ifV2O1RpXb3CHR+bqti0Nv/5H/KPiUS3T1LhRA8W81\nzPmp7yaUuwVahOmQCkLfKfGeBdRpKp39Bw/Aw7K35F2Aopki10xn6h9KdVPL\ncC/Y/GXs5wM6v750dC6hb2h9Ojh4FvwjOdcj2PHljlstQOrW19+gdhWZmF2k\nALjy\r\n=47AQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH3QZyG5D7WLD2qrLqkesjUDJ5yRJG7o7o6l0MCTBjZUAiAq8kw6uCLa1iIgiD8nR6e9df1O8N7/rb4SBORyHaQKlQ=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.0-dev.44_1576503593568_0.5788372012455132"},"_hasShrinkwrap":false},"1.0.0":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.0","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"gitHead":"1ef1c9337bc4b4f59c7b6caf45056af900c691eb","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.0","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-2Vxq3HDFLIMgq7wlUn6pHuMu0xan5taDiSFi/Z/3ZnEkytHOn8HCMGuN8HlHHePWUhCLBF0UEDn8K31PBuimZw==","shasum":"aa8b40446359afba33ae6f77b64a2c93f30722a4","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.0.tgz","fileCount":42,"unpackedSize":66407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd94k8CRA9TVsSAnZWagAAUMgP+QDUh4MunNrO+syf68T3\nvH4q2IhCupcuAQyzTAnRFJJ3Q95BIO81y0U6lKrRmRm65Hq2TAzMGIg3VsGH\n90uDuGy4aJoKVsmR92Qm6Mu3Y2rJTP590huj1LsoKc9ortQQtf2JXMaZU4uh\n5Skq/VnPCbwzuuyCmp4K9J6jo5RDxL7iAxHY9YVGpXOHB3VWTILtqETyY1B4\n0QC0CQ9PPxFAnQdXdohfQhzXtxwIc2rv5dwENXlrc9rbASDyIYQsPsSz+JWU\niZpQgriTyJm3W+/gZz5EkULd2w4+VTjJCw8KFg1Hw1Y+tPZcF+MEkl7mi3Yq\n+oKbgc7Jf1+nwDeRZ8u4kIlUMjTSskW2G9D+OqHGEtD8S1UAhkqWeutDJIod\nqm909DUSC0yCSQdAourNb4xuqdCx96C87v5EgPBxG0iZig6OYBCmOxdbVRVg\nJMdJ6yP6H6RQamZKl5OgHH960nMVlteSxJsWZSxw29yhx2u6r8xKC1HPDI8g\nRR/LFoUMQo/dZY8b1cZ9oVWfjfqblAPQ3KT68Dza6tNZJ7KGMev+e4yUW5OG\n9O70qaIZccWt34NKk7wTOwg4nRNXgjvHBVbwcTKY8K2tn1WRVpEB9lQFUQI0\nLsUm2oocL4KwFGf5NCB861uo7MzSL4OE9357UVI9aAzOL/VFHA2MroAAzH00\nzJFo\r\n=XmgP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCN/dwexfFvDsahfZ1Gk0tgfL0eZPqSeVXk1fCQQx0OKgIgHvCytjLbzZmJIcOafAPBKGYpCj6WpPoyKqY/khX5dQw="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.0_1576503612091_0.5636032043585189"},"_hasShrinkwrap":false},"1.0.1":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.1","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"gitHead":"459d0b0d91b00e4b095deb67516588a974074ee8","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.1","_nodeVersion":"12.9.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-4a7c/A/1BqvcSVkgZNHQjPnw4af6ULVKy6aLSOZkTUxZ+q2uLfbjy1qPnLfQr1+sj3Kw2f3XjF4Aerb3SKs3Xw==","shasum":"7c8e606f4f792bba8d2a83c6bca37a8a994d1ed0","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.1.tgz","fileCount":66,"unpackedSize":164498,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd94oDCRA9TVsSAnZWagAA1G0P/1mTNYg5MwDL7JL/aIX4\nuhsBm33wF9nA4YUzA+4b//Ujkhl6q7kXSgCiivCtDYUlhQ0quZa40uMzQLr/\nIV65y6wvaY7DWYHKrabB/d9CYKkkuGFAY+jvs9KWZKo+dcijpjpWS+W00W26\nVWhOQ6PrcVoPMs37sApCMhpXbY96StzcJVYg8srslUA2Sx78F8srRT2xzxEZ\nM9Q2LbDmwnBgeC2xaZVXdSi41Wd3kOUFL8FCPfYQWX5kpvDoHhj3rnt2GP2q\noE5AWBsCOsH5cCeCfkF6VPhZ03sECiL7Y1pTh1ZknBHKay+GqyB9lAafh63e\n1+fw9oU1s5cLwf3jTHPlTjtBYbk/0O/bnySLBInouo6XAUL/AIlt9BemQvng\n+2U5Sp0NqIIQdQHhT2NTEV2P6FiyTtGHubW7Pf96KnirY1U5EQSI3iPJWZp3\nl4PEPUDvvIyNAWe+uac2CD27SeHc13QKZVKpgQmMfe1CZPbVhUbA7OHFPl+8\n4VbNODDZUwlo4YTMMMqVC3mdmOt9bmZxnTkIOzqnpcpIz9VVTM8iHI/SotRm\n25k82VIwbIBbb2CGk2KaQ3+39TRTxMJ9xnWiDkkAlGmri4vmosf9UNa6eA31\nn+8QW6RnIVboEwNz3s5UfJFNHG9lXJ+36N0ticnz/KNw1jbOkwP+XcRy0rsI\n9vIA\r\n=akXm\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDpTIuORbACBiTPfSxU1bt0epLDxi+2lbapmd7lI8Li3QIgSCJ3IZfAyWifvlH+jiA6+WItpEC35InsXqbjJv7Qgto="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.1_1576503810984_0.11219818400532788"},"_hasShrinkwrap":false},"1.0.1-dev.45":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.1-dev.45","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"44eba917641582212aaf6e32693003fe0b35edad","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.1-dev.45","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-x+c+kfG7+sdKxxdzlR3qgIeHLPDckXhVIfMUPmbQPNFIN+xtEvi7rpdzAjF4ywfeI/n3vWjcX7nmNbs/HaoGQQ==","shasum":"75732134699fab16cc203573db926b8e8140cdab","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.1-dev.45.tgz","fileCount":42,"unpackedSize":66414,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd94p0CRA9TVsSAnZWagAAHAUP/1gZa/PjjhYvcF1aDNRT\nZXJ9bfKmSOpvlhSaOnkqhAYXAo+/6eb4E/PiKwMFltDtLejQI8i2l7iz82Yu\n8EOvv/YD2e6TVRqLgHVR8M9VCUWAtvHQTy4BGU2Y4sxwhakya53agtuekdnh\ncu2zizFef2VawLr5ZN6op1VN8SUO6YG/vZ2X+YOywvu7M3menGXi2yzOHMs1\n3rm/hEW00Uz7VfrGTVmD/MyB2hqoXrUSDPxgpeP6PTmud4LzXnyRUOpnvN7n\nL4zvwPIC1lO+KoWsXI9Dcw5ya0WMQB2XUhJJRebPeP2mHGy/vB2Ww+/7Q2/i\nx2ECi5V4J/3PWFsIjuWpB537RNBo7HrjGIYRuLfkMo/xZq2c5x2oAmiJMSng\ne0k4YVcQgksmpjT8l2Kuo/3htnl8vVCEvDEEETJbRxnaqxpn5FlXE5WmyAGm\nR8K0WgpXxd1gQA5uYWp8sLfpAD9eshl+ys8ceMct3Z00qm/8aSMWQoyDlhA4\nygVl4Uxcj4eC5S4gMHPDzgyXy6sc4mU42gOVRR0Ux8wAseUN7sQuls8QYCGD\nRJpJ4FJ5fYfJlT6D3cL7xjaHJLE2TC9yk+nfSDRjItLuUYUOl5tE8iRPT0ai\nUHh6eY7qd6gAfc0IeCM/1QyepBj4Ivxv/R7SdnT2na9tZZWSwz6GjBzxZG5Z\nDjOE\r\n=cp2e\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDu6LdBbsg1W7evvXcHWWBrBo/N5E9HgLM5a+ht+bY+3AiEA6x8X8giqtumUinet4cK7+Yj/+Ch771VZ2jA1r3n37QQ="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.1-dev.45_1576503924312_0.8448474914076425"},"_hasShrinkwrap":false},"1.0.1-dev.46":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.1-dev.46","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"289729ae4245671d586459c5b8a1dfadf61142d4","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.1-dev.46","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-cQYarLojntKEJOgJSvAlD/HtbLQV5v2HysMPvYkDaenaamhj6MvW0nfQ1bnrDDO812qKJITx0BoJIBkgOXiYeQ==","shasum":"f6997e6e4bfa6068970a949fdbd81dae40643b82","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.1-dev.46.tgz","fileCount":42,"unpackedSize":66414,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd944QCRA9TVsSAnZWagAAot8QAIhLlKZc48Zt2G9VPLZB\nIqN2oLCTnBzNXJ3bPlSQhXhKEwEm7gJaDOs2cdn2ePlPVFtpsmVdSAo3CSZf\nZFIjApg96/R9ogOUYje6SA+sc1nl132TMMy78o7uMJk1k9zsgfOZlW5WDt+I\nBf8gg4hmoV4oxCyahmD4wk+dLl7MXcNJf0ioP99sS7JN677qbv5Ij5kP1N9L\nZ2yJXBc2ylSZBcvWK3dkR9TZ6j4hF20q/nNKMUswBUCBdHuxKEl16POdiaXQ\nUdv9xGCvMwerlABb8BSkYjfmgeFJH2O68a3jvYu8gWrJ23PjE78w0cWbNn3i\ngGKacc1w+KMiJnqlTB9unX3ohlivIGAhxPaAIig6YX0fssw4DeYTv15I0xXR\nuGwDev3voF2RyvYwdObT/PkBB3jKJRfF0K1wyJ43L7U7gJTXL78h15NrC3Wo\nc+e2SowBSfuWgxJbTnl8+pZsBhopLb41KTPYTZRTWM1/YfXHroRa7RpbJSTP\nha+GZBz1wEnrtkF340+TB8A9zTVCXmX1MhEIjCHK0x4zWh8UqFtu5DXS4yXt\nHyEBYd4C5wzghdnmqI132lG7JNrpcT4cpFnHhj5iER5TZ1H88XN1/PjlUfTV\nuhVYHdLFHi99QsEptjzyMj8HLR4/zHOg6rjaHmx9RUL4gjc8zp2zDa/p+3sb\nOwlC\r\n=C5Cc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID3LoGRrx5NrqcHY6CFdBUzypkI8Yg+T+PJR0viOA2XHAiALuSCDtuaEt5+A3ssWAki4fNzVg7BAYL+HFyb26NgTCA=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.1-dev.46_1576504847493_0.6820826264258331"},"_hasShrinkwrap":false},"1.0.2":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.2","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"gitHead":"23e093bcc3e540737c526ec8058570f34e3ce3d8","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.2","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-+mi7u01Aw1PbjO9DwwApm38zu7tz/qEQ8N2sBDg1pROJQmu2qLplFmlhWyn9LS7oX2gIpsDPMRD7zies/2AbaQ==","shasum":"8787845a7b02d8aad9e67084d5ef784cdad53e14","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.2.tgz","fileCount":42,"unpackedSize":66407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9/F7CRA9TVsSAnZWagAAezYP/31M58VL3NnmyejCV+jK\nkCyWKtwkkYU0vRAZMJnFbqeM7ha3Q3nIncNMlVUpXZodtB2BtudqmCWF02bG\nnDvO6flPvcQrqx4AIR1Yc/CYEQ5KFE5/YkDR21YjtaEG4Qe15jVmFZYH5AyG\nCbrrCgHk22zGiapEdyQ/Ck1wPEqOegA5cyw/i7q5QJS3jy7DeP5DtuEhhBW8\nleLIVrG2bAZx/mecTlbeyYf9Nb5jRR8ptlwOQoyPhl2zkdCrlXcLkjduIYEA\nglzsPezmuWgjvCmvami/YL6Pn8Ehho/RM91c9YObiof0opcQM4oii8mVNnMl\nh+4jE1/oc/dBC9B06IGvd/WmS2qNgkwj5+m1TcVjT9aqHPGvHb4k4F8QFr4Q\nSmndZqP3kMV+9xUVevWz7Hp246cCrFC5HW6WGd6Q79UIJSQ/ozVKMgc8mhqW\nS1dilQeWy+XhOk3xvP3sjFL29RcVQQ/f8RJDchvQEkroUx9MdPMdsvRfYoFJ\n1pkOUznDQtP9+4SAKlcbQYBsuVXAIi5z3kjlPeuTem+ilvUYW8fVss1Kpnxg\nN03weMl+0Hh/ngsj3zUw0h+z0/c8hyYvNapQLvk/jCfT0kyhGNK/S1Q7PtBr\n/gXar2py/+es7RtQifIS31VCUhXORtS0BNM4XynMZKwZxd3zB/A+wd5N3r1X\ndc/x\r\n=TIRl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDOgbRogcArvFaMM6RW24573GIEd5iP3Bn840V6sWrgNAIhAMqdKMv57p08RfJ373qeW/luJosgo9zqNPyHLgnT0Jbt"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.2_1576530298978_0.08610786562485084"},"_hasShrinkwrap":false},"1.0.2-dev.47":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.2-dev.47","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"23e093bcc3e540737c526ec8058570f34e3ce3d8","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.2-dev.47","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-etp40F39P3Hq/kTbXdDXUZQd3sxXkIUDenwLWmfsgGKrH/l8J1/lx/7T1K9nyhYA60/WkCZ4TJ6hTXetqsH61Q==","shasum":"ba46860c667c9c6d82964d572083f24f91beb1c6","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.2-dev.47.tgz","fileCount":42,"unpackedSize":66414,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9/GBCRA9TVsSAnZWagAASE0P/2b4K4plMDhQj7Z4M34+\n4iNwQfb7h/XOnBXcmGeJLVPUv4wrtPgoorwUfkXbF8r8td9EY/Phs90cPXIq\nnXYxuu7JDW+0FNdAmi5BRSyRpr2DtZoSMMbEV0+LoWooO3f13yEqyt6qg1NC\nDMY3jm5HK9xJqQtTXGt9TPRPsho4QGaRtABj7MP6VSQFqANT8l2wpOuayu3I\nRKIvQY+p7uIrT/NkkJV0sBOit+nrij8yEJOvCWue1c3b1kWioIE0zM0XMJ5o\nB/mSIb1Ew1WutpPLVUgJp9YXZvfjeZ+vqd35wzi/2J+07UZxUaFiDjpvOZej\nd9Fe8KK9eUriGhVNzeZAoL7x0rbYXvWQSjGwN/mFKp7Ojh8XeylBLIjqnDFv\nUuzuezclPOe29TL/mMhV3rIwkKA852SG8d1mmveyE6iE6AUqoSH2IOf656jt\nAFnjXnLidhFzvQnNTmKD2atakiAnj1j5l62t1oDvFKejhzEtXBwAks91eQYD\nLlLRChurTxIDdLCAonsipP8ZawBB2zQhc7zY2IGVgQ0QLn4LSE/CT0BTcHyX\ntOqQvGVo3Bo8YvDgXBvE8UNQ3/vCBrG2Lg5oAUWfHzcUHdivx7Wdg6TkUJiG\nQAbrvph9GF1EmJ1XA9W8uiRYLn49zxTJCWzCw4a7QR6foHyX9q43+t2/1XvW\nx0O1\r\n=wQA8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG0beDx2YDrZEO9bAerupkYHbJaIam6vkhUlnEyOL2AkAiABxdsUUPOuhnBLM/51xdYv4+YNFWn6/OIwOFs2I2Kyng=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.2-dev.47_1576530304963_0.9988337612965308"},"_hasShrinkwrap":false},"1.0.3-dev.48":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.3-dev.48","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"7908844024211335a3917785576d70a01050d984","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.3-dev.48","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-jm6wMxpk9g4hB6s3drWIxgYRuSiLKuLzW9449U/6ygtYMZDs9PGjZtYNL6HePvS7iA/oX33qXhIPBB+0TCbgSA==","shasum":"d759d70dec39cffc6ade09bee5a455bbbc9b9656","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.3-dev.48.tgz","fileCount":42,"unpackedSize":66522,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9/gjCRA9TVsSAnZWagAArJ8P/R9lNVx9aM1TGhszxdv0\nZ31cGMicb8EKehUktRpy4UYC74EO1YRXbfhyRGAhmShbfRwcbvK4nPP3ZCyy\nfSKoSqxDSBgzcdrpjdNpQ9+e2EaqfVIOtBv9VDex1BCaPRs1eZuG6G3oYQlM\nrmzvwY44GKnrM3x/r3AY3ULpdaoDUXBewKxJ5MRxSKkrVKlmPcrRkLnAQMQi\nSHliYF3TtlqCabU6vefXLx0wjefNluqcyOuROErNl8lzYfOX1X+supqx6Ps9\nfNRlEh3YCcpfr8W8cN0SrhstGxBSu55a5fo111zOdDA+LtBkzvULTUyoVzdC\n6uWxDW0wXNQaS04UudDZvCvxITcBBKJbQzdjCwVtiIBw64HmK+zFj0IrU9PR\nOAyHRTJqq8CYY2EssMJnLhs0NyAyESGnPH1IiA2RlYUdhc3+i2SF1ys/99K5\nSFs+WtN2NFIrFjC7zlATmNDvZtC5n6UOJS2YUJfd10jvKrWx9i4wijJbET8y\n8j22KOJuapDXERqmG0IokVdArwS03NcT8U+2MRg2ywLRV1LAyrjsbUYk54bF\nnvJEHlhA4NKlj3J//aoZmPWGLXdP/1F17OTR4LjCn5YKci6jVFRC/ha9Yhlw\n01/hxgrEP5kdm+uDtqLU26zSyuSl1AUctpRGAgAD4if80tMcbgB0rlsL0jzm\nS3Cy\r\n=nK11\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCyDUhkhFqCV/HHR9FizXLs57KHuCvZdO7YYruRfrRw6wIhAKe/iueHYKMKVBRV9u6g27+rzZ5eIaqYHc1WeHj4wLzP"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.3-dev.48_1576532003330_0.4751613242672943"},"_hasShrinkwrap":false},"1.0.3":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.3","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"gitHead":"c38af6fb40985b08387fddd52af19b7fd4ba646c","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.3","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-OHu1jdMLjgu3X00VEbXiJA/8WMZEbLxCxtojxTOcNxZc6BBfIF0zX/z7BNEZndZyHAEUKU+w9oXvTG222eNEpg==","shasum":"dd919be5a81d8c157683019d0f099e3c77d8841d","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.3.tgz","fileCount":42,"unpackedSize":66515,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9/hlCRA9TVsSAnZWagAAwVsP/0crq9fhMZ13adMI/TG8\n3o+zq8uETpse+P5+eo8JkCwQjqqUeQKYXRVJD9vGVfWeUWgqeuJSQRy3Yfj+\nWWhmp/p7p7UPMIW6hzAnkOO8GB26mgsgxLz8/QPICVJQ6ZHG0JJFdnikY+Dj\nk0K+M0Qia9Tma1jehuNJkbHwmznLB9VhVXgFXxjyySbq2Nw9SlebFN5+2gvv\n5gvjiD4wYVlne8qUqr7MzhjtZDSUouiDbu+/rIM+Cub1QHrNbXMwDZejwN7L\n4tKjzdSuq8S74jf9bAw2PJZDxyLLh5HRSiTXbT1CpHEB8jHWbDAofGM219+D\nZM8sGo/nU/yrnkJOcXfXkw31wGrh5IiwnEUkj741CnJFaJyNVakGJPvlyuZJ\nJ7ByxnGNReqliDGcvnU0RXct/zifpSliA54MZQaLJ3hTg1BUZfn6vhJovvWY\neFsRcmzBoHJq1seNfRg9m9aP9kQlI9POIaD6+FL6w+TxPD6xtgIEtn1ERmu8\ny44+PdGPQ6biZHTMDPO4vF74akTNiRvyYPqos+q9WOmA4yuN8aglBHAyUOyN\nA6PswWdvyiFSmCm5szzxywH678N06iy/E18Oaoxej0vAo1ZafZrBlwzz48/0\nWtic1l7nNo+QOaKHjpRJt0xxwehQE0atLMiO15Ft+wOX1xNkOhmEEIyxL53v\nC70V\r\n=/G2A\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICoTBrJ99u/Cj93e+saxRbyhEL9tgx045f4KSIzVaouVAiAUpWWLUqAZHmNVad7IV7Gsr8TQC3Pdh3CSu9Jd2oZYFA=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.3_1576532069301_0.0732781518761807"},"_hasShrinkwrap":false},"1.0.3-dev.49":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.3-dev.49","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"c38af6fb40985b08387fddd52af19b7fd4ba646c","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.3-dev.49","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-y7ucjD2NHRu2Af2vupRwenyGXtpGZyeHqGdi8dsM+rxLve6LM/h4b5anEkTU/o6QA1nQVqSJi+DEDFTKtudd2Q==","shasum":"a461dba54e94318081e53b65cd7c609c69f9d300","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.3-dev.49.tgz","fileCount":42,"unpackedSize":66522,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9/h1CRA9TVsSAnZWagAAD5EP/0CEQ0tsaeSJpuhP0stF\ns5HJuzvlSP7fdkdcMNBtaHLimwgx9xxgXo9N3om1elXyJz/rrALPyAx1lj5M\n/iXxS2/I5b4D/33Sb/m0ENZgi6hm+70BmnoMGqQsntVZkPFQ0sC69/bamcpa\n2jiAu0LlUKgvxFJJi296ixHziYh7sR7jt3BGWYpT2Kmcgk/8YIBMpMKOAc8w\nMMYqXO9DDQH2JJFqSVNqQUksrgTieIfeOeGiOD6xTfTzJ8/Xomixffl0Ow56\nD2tThWSdrWBuU370XSljLT9NoeidgIKkMKxxbQ6YnmoVJnMKU4C9ZpEULL0o\nmZavp1kPcS5woSe49Rn0n5gGLKpoNU2ErPpjH15udaxUySFCU1fMcZmgeZbN\nLxD8rutut46iooIXCRoTIC66/okrGjCy6vDjgzW9Cd0sNktozKRnuFHu+S9f\n1DM3QlXItTWM9KMNFZCJJXpkyOPiiE56cdE0fX/q1TH5+BKDfoP3THMvaoSw\nS3ywRSWj9FhZOLd2rByaToiFHeJ79Q2c0N+cQGt1dP2khKFA6QQKIUuOjaR1\nh1Ag/e+3S5HGjqAaUSJBoOXmRcxqaN1hnaiSZHzNwz9g6lVzJtCmCKEG9Xys\n3r0jPzsaYEG4qD7t394kKVMfBU6OhO9LRDSZpjQrs/o6c52uYFgBt1huaVsn\nw5C4\r\n=JOro\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD1BnFhT6CrH5NGTrE7eKZVn6R8xmis2do9IWREH7LT0gIhAML8CW1yE9zCFGNKyIgpWGK3owhGfNFIC4iwYY3IaVFQ"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.3-dev.49_1576532084656_0.27979572876113856"},"_hasShrinkwrap":false},"1.0.4":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.4","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"gitHead":"05459f3e8d839c7e351b598e131bba01a509fdec","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.4","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-yiEtohNMGs4JvUmxhAH8QXVtcDfYd/mDGY50jRk9frFPdewIiLu6OD7gPqRSYvr8jH0hwWsubm0PiIWTq412gQ==","shasum":"878134f12a21bd625b10b7b5c70ebe6d0f8d0355","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.4.tgz","fileCount":42,"unpackedSize":66590,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9/0RCRA9TVsSAnZWagAAssoP+QBzN7wFVs8Nf46prNcQ\nxPI6RMCFq5xhbYuj9nnCg+EdmRwrRbZug+zxaKyN9PLpTSQdP+K/7H9Sk56t\nRaSqICnxXSBTz8V+UesHptNOBGkHBPF68Xw5cYjwFmjDJEmTBcsZv+7Nkox/\nlJIVP2IcF1M9FtcGOyzWvYeTA7a2cR4R6da3eLxzmqZSEuAD3hLK+w7fr1Et\nT1UqfeEUHC/mrd5MIuwCvkaTL6znTX/Ds59EnFNaLIZZmAHzWjqH4Mdpc/Hf\nZDeAYTyii7U1Sv5+Ie+7wZgfy7AjRhp0HuH8MKGVVuxdAHyaBbFLQDdgm2X9\nHRb/OuDyYsv8yyOvXtw7U3hqgtrH0IlwkQqvrQidicbbeARNIZLqFDVwHjvC\nQ8OTciEqFr3lpUTACMckM4Q1KMhpNDfRSZdFAa8qTE2x8qX9cQ4qq3Qbv3Tr\nNKqzUK0oUZRVlBbvhp2W3atA3Ti+Ly6B1QqosnjYAprGi2LM5+Sdn0KgiLhb\nNGgFQtVOiuZd5ttindppard89pkkXreEVCvPSTQGJMNAWeaJb6BNkUqWcz04\nJJGrK+XVHAXBBGTePz2EgQ/tG39+u/ItTUknq7ocloT+rykisK7JFEZUHos4\n/xCUWXR0Dd/9s+lOgMoJoIc9ZF52GaplCl6pEdO93sjLLfLR5DS+UhnULJ+q\n19+A\r\n=OB+T\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDL7wROCnll6s9+uVoYVBYZ9/P17VtAQdH2Bc5uv8PsxQIgD3ZnQ+Wgkvh/00a8B4OZ6Sc8qZndYvWFIbiM92Hb+0Y="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.4_1576533265492_0.5623178339227781"},"_hasShrinkwrap":false},"1.0.4-dev.50":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.4-dev.50","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"05459f3e8d839c7e351b598e131bba01a509fdec","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.4-dev.50","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-6yrxYtEOBQ3J9ofbbjYaeoFxJMRuQyCtHdzqLWNN5WdE2e3H9LLU+iGWTX0cSKrI99yyXcy4AJYLvjW+VTPFgw==","shasum":"4c8200b3ef370b82cee92b8a6367fb6b2dd64147","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.4-dev.50.tgz","fileCount":42,"unpackedSize":66597,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9/7fCRA9TVsSAnZWagAATZIP/0y/rQfijTdtp0MGssM8\nUjy2GbM27x57/8FTfpS0g+KjHncizkerXIM3vZzoEjMcaFbtJHKDTyH9/35a\nvqJAEj77o82rsZoIFNIHqzey9tt1xU5ciihEcFIEXPh4IkxcHMGTPe9WTQlr\nZBGgVR/G0Ya0LNTH5Ux1GU5cgAOzvWkqNoY8jyZJejfWLSjmzf8W3cieZON8\nvqER80JLzvf+v1e1bHoIMkWAN1EdKweudgT6C7jKsEe7XqFbCLmQ+Ih1VujY\n9qkBkeJcniHZjz1wQVK9I12LRE+st6gbw3T0AdHAyzpe4Lo17Nwn2s4cBJp+\ncWkd0Qltyw7rFXBLPnzhqGc+NeSW56lN7agj71t7veJt2OZBsUQ3oyB+f5ji\nQe7xL8LjJ+V3X/JR/O1tHBmZ6uWkhM3KrqacdG8XMw1DNnOOGuBUKaE3XZ4g\ndsHdJqpIqdvf1oVOOIO5AL5r/psUaiMWt2iiEe0VcGbpSjXBmjb1kkidKr1k\n03JYBP9TaCytTFseyo4aydmjYD+zt5oDtJ0jLcfOZ+i7dbC8h9uYaNygpAIl\ne0BLBJWkehjXXOQL+CaktpwDKMXPAx7KGtUxBS6dmXMYsdNzNtEs2M2ATpXl\nIHBYKdxiJfxNuW3I4W6KdalIVvu2AHQDNrFaWxBsZpVBiUBUWRq7z+esIt/K\ntD7Q\r\n=GfJp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEinJQ0ZR7V2IwnXH/NYS/Dr2f+Xc3nrDcsNtnS1jbbmAiEA1Pti+xUfLFX8glm/uZvIRXCmEma/iGV0oBkS8zXuTg4="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.4-dev.50_1576533726934_0.0689381560148783"},"_hasShrinkwrap":false},"1.0.4-dev.51":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.4-dev.51","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"aa3c2b9b83ba02a5d3206154677932b4720e7061","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.4-dev.51","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-FYAND0w2SZUcw22KTyK8VU6xSK8LrdkSkEYpHwj4czE5zH5Gcxo42IcEaSL/2bTTiW9HLipL7rz+/2pX01APIA==","shasum":"56d8fbda39cc24b6774fbcd10c82dfdd2e239574","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.4-dev.51.tgz","fileCount":42,"unpackedSize":66686,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+AfzCRA9TVsSAnZWagAAmPkP/2Is3PKKDo/J6D+7khJK\nFqXbwi/AQ4aRFu0420jDMORF3n+9e47lckRDo2C/Xqvj9WrfH0r2G0d3hKy/\nuvOUgxjlN88GxYCWkjbZz8kORxzBrirlc7ANazHLMTQoaLeBevIVC/i596FE\nyrB5QKgpl4PN4bCvJhSPIme7EnN1J9ZPw5Ki9IQhuEfXHaXlHwHh//NW48fg\ndx/uoNV7xUHPbjKMOgP4Phi+7a8Pt3WEaDyp+rSuab9yP9Sk1M0uviQPvgzy\nkA9n3lvwyK9VXpe7k8nSWZfRylzR0a6ET1dpuCgh+RDazw6xOPizm9u+DDZO\nOG1VTlzyqKPEJipTfaFB3ml4pXTg4LkbRr0IxRyc8qE1dM6cRukRI26DbB1l\nDvy9u5xjeEfR9IpT0pskXYj9Z5Kz0bQd2pmD+YXgthAwZ6GpkFJQ+Ca7cu5S\nqaLXHU/brygTOgpPQxy5fSDGC3vwziyiT2Bs2tfbfU4hjjRTBRgupif6CH75\nwthDrKEBap+TMnKRvp/HI+TTakPCdnIqyPulPaZUx3xjio6NAfGfI1HFkY6F\nG5KdKvzBcfn2TinXDE4gynZ2YPKUoUS0GAJLcBeAdpHcBc7HBEXO5X3xAAtB\niMNtV9aAS2rO1zpgtJTSH1bhW4xLCfxemdpdfThU3A5SRG+AvICZ57kF8CrN\nuU6q\r\n=LCjy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEtLbgTJ1zyxvw55PlH25n5D2obqAWerZwhbss5FYyOhAiBEGbWIUyezfoN5LDYC+l19K010zTv1+FE72ldJW3DJMA=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.4-dev.51_1576536051119_0.7151824135702796"},"_hasShrinkwrap":false},"1.0.5":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.5","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"gitHead":"8051b397323c37cc2b6b8275695680fedfd58ad4","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.5","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-CNZukC9vBc85tPoZx5jDdB48f0MfuWx7WrbDBSIFMOvrZmta9JXjeJ3oI+DA3xlpkyichvXKOBAVLZXFsk4E6Q==","shasum":"3789eb3d1017090f8238701ed2e31d71490802e2","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.5.tgz","fileCount":42,"unpackedSize":66679,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+AiUCRA9TVsSAnZWagAAhocP/R+NXu+uV6TAzdNl5hi1\nMsAt9NXNC928uKNT2rYCvH+Rg7jvgahDKwLwMRGpn4txyh3a07JC8FUphPuP\nTn1QLIjvvJTGN7SdGbfrCtrIvPQz2lfTn/H2bWTLM8OM0Fnd+1sUwbc8NqMm\nTq3KmVjp1D6StE+1x9TH36pEVAaD4nxQVSuEXmdWLfh1tfJKlttGr9cDagvj\nvAwFK6oT/ZOSYBS7r7TyTaWLbLegyr/sC5gMfGrlRSD98+tLjVfChkZzsDmC\neDkBAo5bqEOjliBsBA2E1CSy8ZPQCiaRXz+v9/2rpx6ufIVR7XsVz2C/bs8N\nrwnNDZ4r50PGYZOR0ErOVA2BJPjUeV+i/7Uu+9+LGGbL9bO2jvpl/Ec9Zcrg\nEmsL3OGCWXe/M9NZN/5LaT0XBqT2R5PT7vbKBl25+yQd6X2gAtOLxm22ru2A\nQyVUOFzhhnbZOF2ZERtYVCz8nqMs6p6gagZcdx7uGF0pNIBsAFN4AkZTbsnA\n9HJ/7jZHZjj8tBcyf2wXOsbzc7Lp+7+yk8o+BX0pB8NjaBNWrYS5SGTDlwRv\nSVTcuVQSEG4rchEYjwWyNEcTnuQhOe8MqMxGalfeySH22a0RqGpqtAoe3k3q\nGJKCe0+gSC+9NeZodYsJZVxwUn0E1Zr70ZLHAny6j59G7WTEkgi67mb7s3EP\nFv2e\r\n=fipR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD+qqQr+zvtFBSd6CdAtiWmWLFwU6vKUfQKo8oPsS3fVwIhAJfaFPwQgmKDZT85pQ0AtqsYstijMFunJL6cvDch2R6N"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.5_1576536212342_0.8873525709223511"},"_hasShrinkwrap":false},"1.0.6-dev.52":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.6-dev.52","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"bdb336fb1563bca996f019df3c471839f3ff28ba","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.6-dev.52","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-lAT4DmYXhR/YH2OVnK2Sp6Qob5oUodvtAf1cvpLbbXrgv1BBUsdAmFUgHHbyX4/5fH7GgYFEsnNn+mPEz3ewNA==","shasum":"072a226bf2d8819a7d63178117702630dacd014f","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.6-dev.52.tgz","fileCount":42,"unpackedSize":66853,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+BGVCRA9TVsSAnZWagAAKkAQAIc0VEZA9IPytXx3Wue/\n0LVkpG2ZhPaRQTDskufdznlTOI4Qz1v9MKEEmQnjAgzmiQQ4L8UB15uztmcY\nNLC9H8JXulTg9tFZ21ukk0MpO7AVhYAES2CL03xO9+ORux+XSMmeZB4biHND\nX8IUVoZWLDGu+r36jOB0JeWuun+vW9AY5QGSKG9NnzNM0QPV69gnJtVxi60Y\nTvs7J4cOCA90g3iDTg1T2m0rBLcJ521vNrURn+h4nCGo3T69Ho1EtqUy+Bsx\nuI49m2CJUGN4zuj3BMLewKF5hUdaAEPGD1f/SqTGonfGLwdkB+1M1NB0bBUK\nk5GD3YbPaClq5L/H5wpfk7r+tkZIhbdcm0yfV2oh13dbpz0MGm7vcuiiveV4\nqkvVKvpxpHgh+3aHZI9n4L8wGWzgd9EY92/p70Xf6iaudQ06lYuyfyQinmqX\nw72N0PdzxZGZSVVuDtkBNcYI9vaoP/870/+OwGe2qBaBGD+aFzVGMG8goCUd\nAppuvX2aD+96QEKYR0tQR5HQHqjn5Q+S78pJITgKK025lIrsr9Ppe/8tdEwd\nv6Cy9ZNho3sBoOoOTnvfaY6Seanz4/f5ytf7rvKViP68rSDusmagBFAbjoHI\nuO8LAtgWIYGsqL6oGk2k/u8w1HxlI4fwlO1k3wxxJWKZVkFlCufJ4aoD+Al1\nUMwQ\r\n=nET7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC15tJKLwe8IiXQebzO1hE0Oz6z8pDsqMcxLI9i0CDP4gIgCs9Y6T447lPrP3qeMU+OOP31zo10LkFixDcsJ8dtriw="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.6-dev.52_1576538516764_0.9803098329041446"},"_hasShrinkwrap":false},"1.0.6":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.6","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"gitHead":"d2b57d6b3f5fc75a8d87e4a2a42ac94d06d699f5","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.6","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-GEhG8SWAsGTQp6Y2MFQ7kNswwqra/BrMJMgBNUnFmAGhsu18ChyjnutET1Vyc93oi0yv/ZhvdhGfcxjPSG+P1w==","shasum":"e2ad0f8c4d907a854e2e71651025d2098f633f3e","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.6.tgz","fileCount":42,"unpackedSize":66846,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+BGoCRA9TVsSAnZWagAAPVUQAJnqsxOabaeqjvNAV07P\nDL9QqHpMMB7mA+p0kEd32DV4wiXK7FKpVGTGfzHjzbezHXGNiEfoFfpXjmRW\nA+hQhphm1YIi9APNJI1yXWmLzvGXShggFAP42dBSOqx+CtA/AqwOMVU5l8wc\neDiTIp5i0gDV3GDL6RpSpAI5ntD50j/4z16K9vY8Yd6PIj/mcvaNZrs6tz6F\n0HD/3kTRbbHu3tgfWKnVZRchegtBGYYG2lKxafxIfouZeD3Uk+T7ZEiQaXln\nFqIokewoaX/TL6agVnmNgk4EiynwJddTM+q632koolYWN8dPQ0a1Zc4+afu9\nw9dXCueKqQ9RL3gKrMVcBCK5dBR00LAoFycMxs+vpzGGQDuoizjq4YlPkkz2\ne7ZrirmPbGHIE52u5HUp6M7QGKsykudAztOZZe5fRzOi/1DOZiDYYp+JGyRL\nIhBd6x2x3mG3KI1Zfbo2SYuxq042qgmrwzYjR5YuEppx9MUnqe5QmKiuuUKL\nxkkKGvxoj/N7ZbvBMf+8WGuUWf61c/+VVKuXmAmCl9yVXTl+yBlkUtGWsPKN\nY2rvc099ORWgF/cK4X+0CD9nvs1nDDff7F0DsBQKRc0vdlygixMkpZUiVJrB\nVAY8h+9P0H770psS7lBGws98kBK9oOQ7e54q0fYPM8fSIDXOhupE97hhnESx\nmgrL\r\n=MoBJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG1sBwAYfujMGqBF3FmLOpaXEkkQqad4o53+v32eBM34AiEAgZY0Wr2vgrezpDERsXdRhcZwU3L5LAaVsa8Yy0lZUHc="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.6_1576538536081_0.39610766726323376"},"_hasShrinkwrap":false},"1.0.6-dev.53":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.6-dev.53","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"d77b397c60405faa9fad2e60419487c199819cb0","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.6-dev.53","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-EV1tyfIZrC6oVwl3m/XRmgnBTyt4s/ulPA25aJNzISrw8mKqwSm5QCukDdprSo/vjVuAPemaOZAw0cEkYmPaRw==","shasum":"532c7fb567906fd444e78a5de062d7838babc4dd","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.6-dev.53.tgz","fileCount":42,"unpackedSize":66848,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+UdUCRA9TVsSAnZWagAA3lAQAJbfaGr8g1IPRf2n5j7t\nHZ+wm6TIzYYn31XtnxoSQQATqiCBy3Chj3rfNfAO7NaCnovgIAM7mLtm6dBq\nGIdX0e/Xq7m87q2wv5ButqW37hoExwcuJ/Pn4aG2s4J1PemhHAxdjCVt4XKI\n/DBd2Ak2LGZtoWQ23zs9W0X07nhdoCS9Ec3+TSt1WknTfkJJ/vT16PQO7D0x\nrLzm0Bjr4pRs1ZaowgPRHArLYMf3pjSrg9lCrnLImRIzy9YDERcFaFiynWrN\nC8n9OcfwvYZnduX+24HLmAt2xxdY3cITRahyedzlTyp/f+iuSr9nh/ReDYBO\nj0G31Lsw5DRADF8c3VuvS/pa9TPSdznQuzuVMRhiYZM1+y4oNIjSAEFsCYui\n8V+EZTwMcUc35qapAXLptxLXYYiStQnOXft7131XwKVM99EYP28C7t+UZNN+\n8h/Gu44YkddETGXbyScWy9sTr15KdHBQLYuJyPxqAZkRTHYoGQ9BH1M5pLlV\nboSiJqEyRm3htJMPR3s6edWq4hnJ16QPcCszYFzSGrLMA+3lJumDgXK5uTNT\nTbpBcaek1N2zPqyhudgiBBHyFrh/Z4JVrQ9Mzrs9zC3UB5WJHP4TTQAWUxDb\netiUcgzfmxRs+paqeFCkCqEQ93HSuOB7SswyoCF91a7/mHkpl4mEF6DEWYog\n8xOY\r\n=4Q4N\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAHBd12kZEhkLk42JL6DtegrjOK4t6V2n4vS9rDpR3cEAiBKPJYmbKpWSO+QwGv0hlzMjCA3yxwKEyuoucVYeyqGpw=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.6-dev.53_1576617812052_0.5665822554815587"},"_hasShrinkwrap":false},"1.0.7-dev.54":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.7-dev.54","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"b5a50528533e7b2e6ada029ec3beecd604b76fe4","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.7-dev.54","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-lhdgIUtoUAuRwHnCY5B608WlisD9WqE9AtKSIUiwM87aqcf2LdWVBFBzERkvTmOQSfXHAnFAPHraxBF9hYV9FQ==","shasum":"78a27b6620b470fbf29533ed2bcd41de071cc890","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.7-dev.54.tgz","fileCount":42,"unpackedSize":66848,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+UgMCRA9TVsSAnZWagAA60AP/jtsW3S6E3hp8xo8Cf0k\nhdBlbC+4xbUnuTyqnQBKhUN67TUUwRBTW7UA0PJ40KJLYm/L3bnFRBfNfkuE\nM6zEGN144T1s+F63AQ6eTiyICH4CGf5e4OteJhir55ZQIo3KdX6zxIQbUqk/\nSk7k4rXh2GMtyyq/1pp02EOyRMs1iTKJIqHs/uz7zG8se2b8L3PCmp6MY1oc\nL491gG7C23Y1qWQxC3naVwaM0ieIVmzvuLuuT2kb/erE0Uf7HYi3eWr+aKRo\neiQDB9luNCss6qcSHq+8IhZT+y8xG80ARZHT7sMXWznK3oOIwcjR+yC53ydq\nW1sUPkkeB98a0XxMec2RVWA7o7FxGn5+neFhrEJboiODw9TgoDvtlyQqa8lH\nrG2vPJPJ6P8GX+2AmklHQee3rmEYUlhBGYPTjHmykcFGN/CWGPVf6/aAgvj1\nsYVEF6bUPQtpEA0EuTlMtcRw7Uv25jtcbzUy89fOc6TP2TMal3mPJdjw5vDT\nRRMZvWVEKiGuW1c0zPLan6sOrw7jre8W2OMIBXBHHtDqnaKJerCXOvX1Jncq\nQBaoYOJbC2sbbDygFzwy0vbXXcF59+0NdSOesaRQ/DoN52RK0KUECP0vM3Tk\nhNmGf4pdMYLD1qDIL7cu2S6cPIEPjoJj2ojmtrqmj3TMS5ocCGviFLzF1Sbo\nKIjz\r\n=XIYy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCbMHu6yGgHx8WV7EERmiAaDPAQD+dfM1j/o1z7mOwrDgIhAMOq7CcuX9f+9dZZOgav2r5fCQ32zLjokZecSPrN/hi3"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.7-dev.54_1576617995643_0.36835288589754334"},"_hasShrinkwrap":false},"1.0.7":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.7","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"gitHead":"cb3e783b78945bf825d4fb83d3113be7d1f42e6f","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.7","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-dvJ4RXHbHw8vljb/gq/QBHl4PkNOHFujZ6xhfhNwP1pnR+Tbrq9V9hbVXcDq//Pl6f6UVgYfY+6sxdENkiZPoA==","shasum":"a39435e59e733736c940fe6f81805115ca58edc1","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.7.tgz","fileCount":42,"unpackedSize":66841,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+UgmCRA9TVsSAnZWagAA51gP/RLUXGMfjH+VdTri+hmV\nGHPzbVhcrHMc+X3jW4jeuU1gfys9x+wmmpFC2/6YrSpB8WKP2ZbmDXH9aTqf\nXaUNnkbUVoiFja2sgSlsX1UhECI9CLhLrPBOvMWGO++bg/9oPozBWwH5kIwR\nCFoSI/1jUrsihyDnuBZi7OtbIN1MO1x4kt3tcHOgiCCF9CcYYh3YBQWamqm9\nHlTFLfcliTzwP71cOdtc+/f6GGQpgxKnQswhr84/AC8dBdJ/arEMII1Xp9bV\nrcI47dUEDcoQyAFugD6PnZZdSXVIYAwIZc9F/iCuzSBbeN7iASYcq0oIpOMN\nV1s4BPcZgv80H70hu8vrYl2l5bhNC914NHRYa3Kyw5zI0Y9tJ4XtfrS3qFng\nCQURxbJTenEV1RjlHlyYmZK9PPntTyn1gL4skXACAD8UVjC8rdAGRLA6ms1h\nxdsHLBpHSMKd3KGfp7IqlHUS6BpK2b37qxJcUY9MsYvONAe55a0E8k8z0xWo\nNgWw9jzu7zx/RBz+TWqVsBODr7FhgeelHMCDoYL4HkGqiq+ARD/olmkpZauA\n/9f61GRNdnYDmjGXbwr5ayrC0zTpPNeyzVWlAMic/B+RLwc9sESvRITfk0un\nV/xQftC+5DiEEiwevZESbNnc7WOmSIhMWzlNsUQD17RVTFJnrTmCFpkSH80F\nV6h/\r\n=GLIs\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEFFYf/CX4IRVWwoNEl6tWSCad/xUkvibrszjYVKuoUDAiEAkDhhYFnvZHnQAiCMs7UnTknZuGtzKjcN26gzZSDK1DM="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.7_1576618022130_0.3308251029794258"},"_hasShrinkwrap":false},"1.0.8-dev.55":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.8-dev.55","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"97516acf600736aad7075a83e3237c25748b74fd","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.8-dev.55","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-3XfCIeoTM+KZ5+NKp8W1Q1DHpnoknGJ3xlNpT7iWQW+H6tJ581C8ujDic2j7KK/YeiAZRtQ2fANLIn/4p71alQ==","shasum":"d272c9fc38b1a01ab4d3a5b2ae0e5b8e841575e1","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.8-dev.55.tgz","fileCount":42,"unpackedSize":66780,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+Um7CRA9TVsSAnZWagAA9vcP/iu0Z9RQqIDgfz3h9Bsi\nVQaSeo1XlzHcIqSnw73eTTjxIBRgfHXnQfwG8ttCGZgGh/5vgaMHpC0sstGQ\nKUBdbFvdGva7Hi/ciVm/xODMHvQeDu2+sWP3Ve9QMRCqywQVGTMCypGAg3lI\ntoMF8EXYuUfh9ZeBawkqRH0O493kPQFrrWjeegOJ2NiIzGLjOL4qXlOBUO1I\n0QanJdICTFH/OBQdQYYcqIpfPBo0Cw/APdrJhg31Pvv9x+6c6ja8kypF9Wsk\n6erGUXBaB5jrnDblu1lg0XNF3cz2zRzaAk+ma1/zmAz3EJzHxSUIDeIG2jSZ\nJRzrXpqVcbiRzZ7jSaNWLje36ZB32tr6SRnLYqi88npmLgvC8DtMw5lLwQc3\nPBrGTCrzKLvk+QWUcunHEz5uCAjduyPfgprmuX5iaXdHN3H2RMpUtojxj3g8\nfDaP12h5LcVprjx3RM2cVuVO3fgPVRLcfS6i9yiKqBh9XNRLV6C0I/r3sSy7\nTu0QypfHci1xrEwnIs6dPkbJN+XuT1EljwULaOnNY41bQU5Bp7IlY3knXLUl\n5/zI/REhTtA9v65N96GbQqK9N4KhVVGZFzhLBBUmNTz77L2i0hhn13RgNwga\nU2TB0LCm5SoR7lKSsKFORxakGyua+SqD5ocygCJuSGl2dV0BAqqZWdA8ja4G\nntfu\r\n=23Lz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDoXjNXXLmm45xSMJ0IBRec8A0WXAur4X1lLLfLDQZaTgIgfg6tKoqKrP0MF4JfTusMJc0nifVacNIkczkvSVzr0G4="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.8-dev.55_1576618426537_0.6287426462964976"},"_hasShrinkwrap":false},"1.0.8":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.8","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"gitHead":"5c56670f55f254d74f6bc6abcd14966b1bd6dbb0","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.8","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-ILMFqhvmI7CoUYdwZYLjBLsegFZ23p9FSjc1AY5I4m8ssOk5n/HkhyYEo6gqS4DRokTJuiASV+JtMDGo+UcGdA==","shasum":"c6a62985044712609cd6f36eca9f2432320295f2","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.8.tgz","fileCount":42,"unpackedSize":66773,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+UnXCRA9TVsSAnZWagAA+wsP/3L6dF62/Gtoyq8ts35T\nt1DcEkQ1aTltNoVMDpWXckX07v8PeqqNchu2onYo/QuautqpP0mmYZ0MQO7N\nlkSliaHujg3zcCbhZOnC1J8qXsBkuZ5fwApCniBJJYRmDbloAsPy0u0dlutd\nUJ3fUGlmaz9nUsAYRGA9+xSU8S5KdsI15TjQ9PP5sBfZ0T4JzYBJ9P546VJI\n4nh7jalgwklJQ7bI3Xzob6ko/vO8gjH36EOT3QSRLVVw6MDn8LI5q9pNxYba\nl5PGohj//ztIGaFw60jbBYOsyqR65PGILlvu1ch6+ektPzgMtdStOQRkRcho\nPIAN8MuttXNnbJd1KGR+hn8CMF17CBV3zDxDmTi2echG8BLfAq50Pv2mK0jg\nNLNdngbervjHh8ylQxsoBmEcc0JgTx9yidyw2/ViV8Oxs7ZV996yG8IgRxDt\nenLZnl+BSYopg/eDxgwFzOS2KktslIPr1dDQBniQtBKGeSF29LT/SKs/YyNw\nMqDSyQwDNRET7vMBVE5brqr4FhO1lgFMV338nKZr/rGppcJ7mFtO93cDOnX4\nfrvxRPmaEk7epAM7UPcDI0HztJwEDEuAR/b6BRJFPFpYirrxbKxkpFuuV2y/\nWYsQbOhTCeGktaulSK06nvvZUAd3/AYKIGOP4hffR6pOoLY26kNM8Yrchwcq\nkBnQ\r\n=TPWW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEqjfVVCvaWQ3vepFvPAstkf4JR/Nka3mMHKFzst90LkAiAHS3rOkIC+z792oRHIYI0oUJCShoKE8Mq4Fe6H+MTlCA=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.8_1576618454914_0.9129467422863868"},"_hasShrinkwrap":false},"1.0.8-dev.56":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.8-dev.56","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"tsc && scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"e6e8960ec05b65d98643d6e314438cfca4e64031","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.8-dev.56","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-RBFnIEDVzBpwf5jkazF3bjHASPkX18DFUFDDPKOhmLLOb4kkf6GfgpOQ3kFjS7zJTvGbfxQQ2YYexIQb/LzM9g==","shasum":"05cf2aa7e36983e1a1155aeb5909c8fff5641beb","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.8-dev.56.tgz","fileCount":42,"unpackedSize":66877,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+WA1CRA9TVsSAnZWagAAJJ0P/i2ZpDSRZBRbNgcZwsEd\naIMQUWlb+VBmW31HPeuctpC18C9HuHrG7VTM5Cf7nsh+ouadUsmgSWNiXeU2\n2MB2J4g9d6G0ZYLvVbDkerfj2mIItv0PQAkk4DowGXe/0jgTOXq5KQOiny/m\nyeAD8PNcgm5nzj1eX4IkBGxdt8G55NAFmhs912TNBtjDLGzeB8aecmDkuQ2p\n15g1x9mNtgmKQhjob19kN8ZGNcXuyG4Iu0AHMx+dqNFigqrlEZvYk2BvYbjK\nzmQlpkyZSYWGxdgUsdyw+RHikbULSLdX+dh8uV+fSgjeKuDgLdiQgOLRwiw1\nR4tQOB73l2AUZNaMqny7WG/uKDtLOPU9U+gWA/2opjm++W1F7wqz3hu0cKQ3\nIu2LpPiU36rjzVhfvm7xb2xErSmN6i7Zh9+NWp+AVMHP0OyrL8AvTt7Jjnwg\nZaImsmkgWI4NeSNkmiTUPR+sBYEx2aGJrHfmyztqj9d6swzrfkiKGHpgtQnS\nKBM/1hHCQovNirprJH0NL76zjqDAUT/WrxHfuP0oH6fWlVZcP338CaoYm0HO\nOH0Ks77BNH323/4f9pAfVa5wjlqXpB54vccWMqXPnsjRUKmB0JwgnF7beEwf\nBuEfCpxXgA1aOJyUIp94Jmx5NLGU1ZMUtzbKOh8FMeTgjc6Y+nmDQIGknEfR\nY5NH\r\n=w/LG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDylWK3kctavoRBUbGfvNaFmTNL1Jwz5y2cf6I3YL6/PgIgKrRMWOkU4xsr160vxoFCB2cdupWsY3dLZnu/nHEX1Qo="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.8-dev.56_1576624181411_0.499754643321662"},"_hasShrinkwrap":false},"1.0.8-dev.57":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.8-dev.57","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"tsc && scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"46bd40fa3b12e079794585f34d7ebbe07f2a5dde","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.8-dev.57","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-2+6QinF036un6Fd7Ghy8wsE+o0e0ZVvJom/7qPJmrFKRBorsFZavh0z0rZSeS+C2fDfVBCT5knMhNI7JBe/2nQ==","shasum":"72cb464ae3efc6082e7c622c6593d23aa8cce7bf","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.8-dev.57.tgz","fileCount":42,"unpackedSize":66991,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+WgNCRA9TVsSAnZWagAAEe4P/jh0QlDaE76iAYIRn6g9\nXjuTseQQRI7Fj6sntFLAbSJncmqo15YgUfXqQVggLf4spcYdTEbRb4iFiJr6\nRPqpF01ciLX29jnDacvuXGPmtsLmHQpvhupBKLETvZ/B6Z5ZZznyUA6vc2Y7\nDiMh1VzfY9WHVw6HlZf0W4508svpQ1LmM6qihzXOYFOJkdfE3HwL1Ap9RP5C\n2Uy8jAaby6wZrsVeHGwKGtw1UrmPw8ZF3JYum9IAKeO6sVqHkt8kVfcUftx/\n7h6ItnRejPcErDgIMQxhmZn7r8W9ihn0Wey3D+Zz6dToxJcsjsDR6f9Zd9kZ\nJdgKfcKL4HQRNwK3mnjt1IFQOeAJhps3bJIrXqWUTRqGX5BGSfg+1m/M+SNo\nF4KLvsQSwKpJL7gND/ZvYmSO0Hbls/+3aUy5CwNkYRedawBDT+itIWiXAGBZ\n4RHHB23JybNFUI9d8AODJ46u3w+FAZqmpDRRDe28Rhphmxwz3A15ttiVa/BR\nRO+mzi0Ckv85iqPqsJHRnp3XW03zgJ/pdPVL3r0YSEcvoZLe7EoMFnGbeIj5\ncrZO4nJJ0g/C4tY5VQd3lJUBJAkMeAueLti8vIleJv4dJiRDPRfJe3LS/htH\n/Aycy0vlvJZdS05xjstflvNiyWC9v3UGiCLLiamlROE7JHTqd3Fvzm3FhoZH\noWc/\r\n=2kbJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCQQV55BUK8HTaUurFYY1APfuOx2ValBIQuVWmDCf7bJAIhALg0XCe6UUNNQ+6y3mOw7nku2ZtlY+tQhE6acc92VTjl"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.8-dev.57_1576626188273_0.9412566191417526"},"_hasShrinkwrap":false},"1.0.9-dev.58":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.9-dev.58","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"tsc && scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"6ba9f4e4ae207efa6979298e1cb456d5b5e67be0","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.9-dev.58","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-VIWy/jb7myj1Qt7SZ7YiWPs4GtAeNHnjVOjM+OnFR+1wjxDNG3YV+l9QkHgmni4/CfXQVCHq022ftN4Wl+rUug==","shasum":"2620b7ac9ee34689edb9678b919522826447d9c6","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.9-dev.58.tgz","fileCount":42,"unpackedSize":66991,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+WgsCRA9TVsSAnZWagAAyJIP/jy1DOZWEx8alNvKPVR9\nflvZBt5YXw1xBJ0CkM20lf6Q+U97zZqUIpr2MK60CnYtE42Ik3aJF9p2T1AP\n2DNvV36NFruSySJe3iZmGP3fYgeHL+Sfh0p3ag36Qj9mTeWpw9D/iJoGryP9\ngtQ0cI5rpZkX2H85Kg5F0xwbTrxvpegCziv5lmP01U8KybD/dkRPPgMRnS+Z\ndg1sC+nzYTXzPq423bKzcd70bK51H/9mhBnVT7Sf3cHKwLczxvxwhBf03IsO\n6p85szdhbhHGkIX6tPgfdL39ZQLTCDE+gqH6b6ImRrH29QDXUrEYPHc7ZLCp\nfnqphITBeuc8fi82nRSogGBx4HxeVGeXQb80QMyHpGGn7oqVQNS+VT6t/DWC\nTF6/b8tPf9I8rpQ/pAg4QhuJAY00oZ0xihvkqyMzPWXXCn0QpaJS89lb746T\nSKtV0iqLcPNHpt7MSnfNRqDCKaqfW3fwPhwA/hkRFP1UEv/UpYw/2+KsDhYt\nDtLpm08tDC/KHdY0MvCmwWV3b6J+Y7bYdq/aNZk1xWvOF0OxB4VhU6NfJAJ7\nwTmP3AB8tqdOby7pcDNGMgKqGPpsZE5zuvTjLTBptlpo1iasKLkytN0AgkJx\neqGwhRwlrU/rsRKwRz8m7CnD5ACnGCHMjU/3mJQ1iPCMZOheQgVZCHPvm0uh\nRuvM\r\n=KWl1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDAa99VvoOj/X+HNV/1a5r2LB90XmrlIlyQBrmXN4EGrQIhAMGaWedIChUl7zVKySY++RB6XAm6/SRbStyMzIXtS6ad"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.9-dev.58_1576626219878_0.9747741462527693"},"_hasShrinkwrap":false},"1.0.9":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.9","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"tsc && scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"gitHead":"95733382493a5241d8559ae83eefb7b96a8e5a1f","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.9","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-jP2h68bzhQUbtUV3ScDjoHpZj1B5iPLghgjviGBSIpLtzWthgLFj3W1KyN7p9/BfPq5BIF94CgD/u3+MIJaQ8g==","shasum":"7cf18fb6c420bc4d28a13f6b8d9ec7eebff2d6f2","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.9.tgz","fileCount":42,"unpackedSize":66984,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+WhcCRA9TVsSAnZWagAAWEIP/iaHJZkt2q7nACfab9js\ndoUSICScdQhd9gTbK6A9iauTbifHLMqV67cf9L9MEvGxI2FLIObvYEJekrU0\nnGBEYIiaV1i9wHGqb074uhYwR9+v9SgFU14dzMq36Fy+iAFfAztEClOdo23z\nj20B0eap7I07d5jt/a8p4jMaOBBBVxP+6eh24WnCk8ZiYkNJ+AO/E5cca17P\naiTzLZ8FkDL+MuwhgQCE05/RLdjjQWf0Nhniv/CxHi9gUiYuLSOLHTOto1l8\nuLWFydAgoRjPIYpgv26n7bjVJMfomLN1Wl2EQOl4gER0QARQ17UmhWLXCRVy\nBJHvTwINW5hwrj6vX8K6/8UvwKipKLaCyQG96IDHovshlzOD5Al1kPFu7BT1\nfUzqEhmDxqOrGjlHUGQj0JGt0Hd6hc1ZMTjGIJjbq4tHiq1UF7GWhSfHGQJW\n4bgjcWf84R/WarOA8XcdkPRRoS0hXbcaPNrd+Ix7iTD23zOaQ2NUJ3sRyxau\nPDFl5uXHhDTrTrGrOkFpNjKXH8NIel5ijq6QPmQYflRMoHBf/JYMn/0v4qNo\niWVhuRMTtaOB5Be20abVT1Zpi7jxw4kSNNClmeTHfjO9IykemVTPq1bFcxyH\nubYPJaUrniaEOU7i7jykdoG2YYSZcmw9/BxwyQZiBXtFahWJ+v4oyLr4LnmG\nW2DY\r\n=d6SO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDuPdTHi9lYYp/atGfSpv9lfajV6IkOUOPY2nTMN562EQIgMMmqXfAlOsCp/m/1T+OMdyY9Z4zRNdTKBOKXGR7+fqg="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.9_1576626267633_0.9938632849834235"},"_hasShrinkwrap":false},"1.0.10-dev.59":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.10-dev.59","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"tsc && scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"b4187bd668ae37677c1cc817426a110cdf654bd5","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.10-dev.59","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-6vqtGYA8QGjYS+zZ+h1rNGyjT6RVVeg4uJKgok3sXaEYuqEnnS61BMOY6+XLJM6BFNqlSVYQqUg1rN+KJE6XRg==","shasum":"05a7a70d13b696f8d3091f0504173957f98bb8ce","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.10-dev.59.tgz","fileCount":42,"unpackedSize":67083,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+YYYCRA9TVsSAnZWagAA9ZAP/3RIgaLlSQZgPsppdmfc\nID+nRkQsH1ARWpcbdWIKiVw1NeuXKefeT/3EcOCxZk9RLuQvcncqbfn8Onm1\nffh0cn0Qyt8RLR1iMV2eiVOfZzErsy0d+lw9Q6car2ALP6zzPROaJThIDWl9\n43CBw4B9vW8GLBfayyjRKCrR3rfnlEXnLjlaOcYxYRWRR+2RECPuZ0BmOng1\nlor/kttq8y0CO50plOdtLRE+/tmWLNSdIIBHHCFai0vPQq3Yeiu9PasdJrRg\nd9hYAxYJ5/lx0F2AN/TMiHGYSF5YFl5SGSzY4PR+BSzogHdM5l6ju5lYsmOr\nttcXO/5GcB9G81bDQw5i/VUH/B/OWmEK7Kn876VO7K0cLRpJy22N5/HwhJZD\np6RGv+4S2bEwJIsmOf+YAUjjVpc3xJy3vSWmhRP/77nEUg53+Um6mQilFSSH\n0AGzCuxCyG5fC8tc06JqvZaOBt05V/88ETt35jH4EGiquWaDU21+sDPej81V\nsRIgpYCckJfFxwEDq5v08lipZZhA7XScHQzLCHS+UD1EGtOxffGlwpYtDKc3\nZn3xblEaQ6MvQ53dwtG0VRTfjAden9TzbIF9ccLbCc0OAA9vRkKCLSU+1J27\nTMWhjjYtXk0pJ/Lr102tbqjbOuuXOeJdyHgHxbMK35shcY0Q11CLKabt58oG\njp1T\r\n=wVqI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDkx3vD4YmRRRvAIxZW9USSogq0EUHxDOGBKiKwxj7fNgIgXX5ag+8WnPXBQqzPx60ZKVbLTcHPJZFutN2e02Vmndo="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.10-dev.59_1576633880430_0.5041218158918417"},"_hasShrinkwrap":false},"1.0.10":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.10","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"tsc && scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"gitHead":"2c4ea2579b91defff175436dcdc4f95ad282822a","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.10","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-QQ7pG7K8RQmm8txEzophoqVkn3fjftpEE/P2D7j/uKIG4Rx+6XlbvBts3mfgQRrPv5xsKh5bN9UeoowAN0VJJQ==","shasum":"18530a2914634fd62820a5a315f5810366668ed2","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.10.tgz","fileCount":42,"unpackedSize":67076,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+YZtCRA9TVsSAnZWagAAiFsP/jlC0apIOGX6nJfyyItI\nRvnPbMAfJWmCIFCf+K38TUOXF3PNkTbQU8+KC/WTMd1KGKPatWvX9QPjSUxr\n2SdkWHUUtvc10qxZylEVNP+pe9BVouCOYuu+yN/0RyHlYMwABdoiX2ULZYKh\neylqPUR6T562N0Sd80tOpiL8AMXcY4jUvByzKs1tFfvKUhlOAWsHw4sOfdfs\nCDcypTDstTN8d1eTgAVjEQ6K64HY82tl3Sxa7LVQzm6EXh0JGaua/1pDnUXY\nq0aMwIgrzkfyRAWU/1xHsDhC7GpEp+dQMLACk9HPUfpTS/Et9OuJc0nvMf9C\nNFRrpzfS+qTZu0PSCGWBXngl4hOQVt0q6YmzeWocoyxHfIkCru6Uv5kEzYfT\nLO6KKrKcU3IEKSVP6yCXbMrnv+JWULT6rV5sbP7juFjXY+Qlw5LBmkKdEgvY\npIKC4ZhT9ZUhTF3UYW6sIpHSlFgVeRV8fVJ7KcmQCL3ZUk9VUkOvXrJEF0fd\nQEuYI++KVu/I17miqLrMeV5eJ7lYquOOI9XGNgSQ7oCZHH/u7/4Ih0vokbZJ\n8vjLK4r9RZhDw012W2i9MUB5QkPN1/5zHf8mzgh9Lm6d/N5gJ+SOAnkLkNQD\nYKaQzhFJ8hUEaijDR/byJG8sLMHEI25wvzKe8rdn7u1T+aCxqloA5Krgyas3\n+Dmy\r\n=qPzC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCyLZmHg1Swou+3jmye+KZZtcYXzkpvooS7u24L3U/MGQIhANqQRnuDSCyQ/qb/w1OmwBXkaDIuAJbPoW+G8XcUorBf"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.10_1576633964853_0.2455578427266849"},"_hasShrinkwrap":false},"1.0.11-dev.60":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.11-dev.60","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"tsc && scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"705d0a3e53be4cdfeea2896c2c58736a0034f1b7","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.11-dev.60","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-a18c8B+E4LRCxa5vozvt1b1DGS+DnPauZ7lt7P1tASQI0orbXgvwiMTF9Sr/EHdG2HbpPOD18zzaK5EyyZfnrw==","shasum":"85c03f530ae3daadf4b069b8ae52131e8bc3cc72","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.11-dev.60.tgz","fileCount":42,"unpackedSize":66791,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+d1mCRA9TVsSAnZWagAAmGwP/Az+ma6JGVDzzm1sy3mt\n+p/dBiLpaPixjZ8sA25fROTpbPQeIn78tuqwtNqTdIEwqtB+vD8jvl64u++U\nImEjX54kAEPF4QCSdKUCneWoVSkXYn8iZuSgE4FD9wehx18YTWhhkPTuKgOQ\nRpxR0ZHemz+6PQV+l/uYWmIq9MIxvULO2KtvH6+u7tOdcR+jw4JJvIPk85Qk\nqKH0ze8vketGB/FAa+epmxjknusInEcDMZ2WT3Xp9DKK7yxp3SaPTcB+7WGd\nTrH/bnMzifrEgbo5tA3o4ycuw+EdczjDAZzBcNpE8zGBbmsSEJEkV92AcjLJ\nmv4eyy+BCCKkuJ7hk7fQ807CjVYy6Q+6pj1Q2bjNy0waNoqvtZvmoyAIpFYl\nujrTetoSOTdnn+u54jAMXbxNYgqECNLc5gY/Qlo0KieXqrk7A32wsHh5M2oy\ntvQlv37++mFHolwEbSaNnP43bKVA9UQ78VmnaffBlPkLhME42gU1WLkh65S3\n8M9nzrYgRKRLB/t+Te1RXkiMeNZKZ2EtPrLgPirJkgTg3fGORsZx18KPNMD/\nnjN94lZwPGtZeTE0LyKxSMWfkxk5nydsCrd8XOzf+yxXbH613G3tFKTClhWy\nYeVvIw8GWNtJdyjRa9xc056uXvH4I1GAoQDXZHMb9FX9Qa8KU3k/Sjg0WLLT\npwvV\r\n=WACZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDBmU/iS3m50b2x7CM6rufzqsed/YHH8A7e3rvIY/RgUgIhAKHEks2WNpgxp7RvcHVgAuzFva8iYxxhbX0XIkslbigC"}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.11-dev.60_1576656230049_0.40827956903916784"},"_hasShrinkwrap":false},"1.0.12-dev.61":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.12-dev.61","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"tsc && scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"8992e79624c90d040e12d647d5404c7870ed3013","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.12-dev.61","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-HlI/tMosavd2gO8eMENf2PYWT/qSGmCCXefrgGJ5zF3z4b6F+wA9cdrSe9qfW3YfYAFp9RJ0eIpeJN6iJi10XQ==","shasum":"49407a715c1458611796ff668218324fec55b8ca","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.12-dev.61.tgz","fileCount":42,"unpackedSize":66768,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+d3+CRA9TVsSAnZWagAArDIP/1ocLGQI6qkkEN9EkGe2\nc7aH9zvVbNB72HU5cdt2Iu7j3I/OoXZ8WH6ZE5r4XJ+1VnTU+qfukyBf9mGG\nBnAfO9zezxjLiJ0/gUACuvWX2NQBu7qZKOjHFZMV1LzTs5ZvxqnkzFbJoohC\n1kd/e3aNO2chvw0O3Q8zcaXfrP5BUm+CPIlYlee9U3Vse8OMb+CH/7xOlCCS\n2jazUCDnr4qwbaWooCT8Wkc+73GCmbejDkfEIiFRijadGuzqeRO+/fHsaAc5\n2v0CpmfZMKXZWQ41XAmbXQa3Jy4gbgMV+76Nj3Ggt4Be2tE5qifyhsABzDLP\nHmcVQ6P9dBoXZIgZVaK42nMkd0zTJPl+DuINDTmqVrCvc/2/OFPwbJEuGCtu\n1c+5DiaM6VeHlJkYBHGrIIEigBsbG8QRdxiia5if2ZthDE5YD1RPcfkYalTl\nqHvJsDoKNQouLvxsc8mR2cOgBfE/lspI6kEWNySjbld1jRoPtkvuKZDDUdEj\nsPpel11zdY8DhkBGztpfoM+Rl1TC8bE0T0AF7UKrv7a788o9q5AdHzeYoAzs\nJ7GAb2RULKksf5ZeR0R9uX4IHQzMoQUSTFuzdaNlP24niElKkXVaFtKQqx1b\nRZPxY2MgUYsyHCw3ACsJpdHHob2xB1S9XyUpHo5v9wmS342GxzC8SwDIjM8U\nacy+\r\n=p7FA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBFxxkXts6xE1OClXTxzeTfoxz0GCKPKw34azuk4UXkXAiA+1OZZ/iS6esI7yNDTi2auy7KSWor0AbNg5DS6lsnGCQ=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.12-dev.61_1576656382271_0.9316700723606701"},"_hasShrinkwrap":false},"1.0.12":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.12","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"tsc && scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"gitHead":"99f8ddd06417b2e171a15eac7238874342dec92c","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.12","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-ojPS6nZyNDUlpw9tOiXCG7h/cKECmivyLZXxBYg9T3itq9MPDMBDmYYFds1+bmXIyEHcZHSrSEPONAtKXWuLmw==","shasum":"ed99a27f35732b9093d692f5728715368c1d7460","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.12.tgz","fileCount":42,"unpackedSize":66761,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+d5bCRA9TVsSAnZWagAABBkP/A2SUVNLgTolg2KVyiu/\nR96b39yReyG7mfZJ+H/5ABesCwuYTqLUCb7WBjQ2kYqStcm56t0cIECIuJKg\nHvixJJjvl//JzFLuW3fl/kdbRIddrU3uzXSza+RYgqTt0CdkPSiGuF3Yrm7g\nXDBt8ubIGtZDeoEV4tbW2gRzba4y6X0RHfCTmMr7FN7IoDKWmjDKz3JOzp3T\nE+FWF34T7C+H2JL5x+OemK1y46lcLolu9rh+E0gcvD18wEo3v3DZvnMYX0H9\n8cXmOZgLWCrncnya3B82uGc+v56HohIVW/gezXIWwsBfSiQkazSlyYP4xl1A\nDtwaBxyBPqWsCGWG8Pc8nmLPbRE9RpxQJWqpDhcZYcdF6jjDiAnu80kFQx1k\n0WeFn+gvJWzdB9oDMqu3fF2tiWcjDoIwN42jXMd7MLab7+0EyXxQpgMzi0P0\nR8AMZxkvJT0T3GE2MEYOybpC4Qvi7UZRaJDDDPTvbsqWmLnoMJC79+/bLvkk\nNEYFXwSqkrovep7LQCd9nBOtILiflPiY+9+QPWxton7rw69sHfJ/unuITz1B\nHxXbXbUYOLsaTuVBP3G7/KwjbEtiGhNzDVCZ5kmx8s370CqZBT8DKrsDGoX3\nb8n+TCgP6bvsryExiiZxb+OzfBPj+oYY4u26LBiXF+6z899Ph8jiAczOSyAd\n4agh\r\n=cS9W\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCGgzU5EN+xl6gHbf42GM6pgxjG/YNWeLqV6KxOMPw4ZwIgdTBLM2TF6UeSK1wOj/YaVTsVuekCtmYAL8BUxLkLy0A="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.12_1576656475215_0.27830536905782854"},"_hasShrinkwrap":false},"1.0.13-dev.62":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.13-dev.62","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"tsc && scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"7c71a310dceb9e260c2bc1dd6981a9bd9eaa2da7","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.13-dev.62","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-3w3s0Z8YmdfviYIGh0xGXlTPICJDd1r9bYzMO5sW/a4SSMbOxCL1FeJbKKqU2sVCNQV7VnM1QlyZbyNDK+wmfQ==","shasum":"fcff6fbd1a25a6762f378507bb618bf5f1bb83c1","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.13-dev.62.tgz","fileCount":42,"unpackedSize":66761,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+d/1CRA9TVsSAnZWagAAXCsP/jklD/7lMUbnkMJNp2J0\ndd86zXMmKzOrBCaHyYV8vT+6ATpXMVFV+rgiGP6YdPPWV6hmhZ/uWGnPbLd5\nyjhYKWt3mNuFyY9fl8W+cBh2rWsBqD9C5nB6LaqqOcNRYRDu8GWAXvVzYdtI\nh0HLQgu+lRxo6ky6MdH2NsIi/ATF7nJjf4lMp6i8PsCE8paKz2ZWiwDb3Rzp\n3bJiG2MdkkKtKnID3mmWHk7Et+Fr5qGTJ3HqNeP4rxDJ7JFQEjZti7GrTSr7\nRi2TSH9ns9CeygbXnXTp2/tOZdI79dFllAUyjl+EVG3xVXexBEgeaLMDx+6/\nWyL6Auuj94jQd/bkmWsSPspbWe5CXu4RzqzXAWy4V5AmdU99IroUVH0ckhmq\n8jCa7+a8YWbUZNDvvazFcENJ3N0SIUs6RNJnpdpRo6GiXPnA274x7XZGuFjF\n4m21hLSTTVIS+3lwxqlIKeEp31Os3h08vvnoK1OpCWPBGTSlIeB7MXnEy0RH\nMN28nEspS963tCydHgZqjNzYxGr10MCiuufAxXJxydU+m6pv3kXRPtnLGSxX\n7SxDts9E5kZQajzwCCov+3rs0y+fDOqY46BftpuOal/S1fCIFW7Yduk3AJwZ\nO9kEvv5LkuUYTatRImiz1a3qHsJsngVhJktUZ4OZCg89WiFd13Jv48rdPaao\ntFM7\r\n=TBnU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB1/58e1NM6rXuV8PH6aTSIojjX2K0UQBQ1s50UTf04ZAiBQcqF3dFD7RE6x86+RKpF6h3sV2ZKTAclZrb6DPru6nA=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.13-dev.62_1576656884883_0.9657104533057657"},"_hasShrinkwrap":false},"1.0.13":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.13","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"tsc && scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"gitHead":"39ff1aef60fcb2be2deab20c965a0c2acb6d5232","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.13","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-bMoYGz8mfMjJyO+JtuOHKH4Ig/Xv25oJZ8v973LHWnuUn4erKVtDpZFFealOISuzsCc3CPgdCCJIw5U3etBBVA==","shasum":"cd2bcbb27f7177e1fb3676240134ac14a7dea5cf","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.13.tgz","fileCount":42,"unpackedSize":66754,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+eAgCRA9TVsSAnZWagAAQQwQAId0yE5nl97kJ1Z60rmT\nBHGchnxREnMcId7AVnHuEQta1IttVCS+3xwTV2htQACKrMPQ6sn9N4C4ljPz\nxPofC5hPHA7SygprtFJ04eYfr1lcHaf2NmNqQHHiMSJmYBAuCLD/wP/EGXVB\naGCIjdJY0PkCXw4DKbr97XYkJ1+0clrVI8dJ4KUgYD6+UCf61gBoecmlF/NF\nujZsgB7lUgTDyt/GlNypqeqIxQJt/c2+GtVasSbjoynhifwbZuIfQUncZ0/1\nBnank0BXqjq1bZaHvlLASU4ZW0xiFyL/x1XPXI9nBRR/koZ2gj4G2oHAb5rc\niiZZg9G4WimOhzcHHYrDi8uDHEJiB7BaumDdVDXWF6Qn5BsJahKvjLEMPgib\n+UdQUKf0hSZ9VhqAEAqhC9gnq5X394lPBICrPx+q2BkIwQGqqiYXwcxnX0bc\n9ujA+vlGafklhUZAU/SvZIY4agpKj/CRdgzNhGobCR7U7qmgmmeVV6A3W4nK\noXBXNngf5JvlRkfOdrBFCOrVL6vBvDzHCp21iELyGVbAu63nrTRecYkU2Czx\n1WzcJDiMuLKsHqKCL8aA1UNHTwvY8HUSQQIcuqjbLRUipgxu6SegoQTXyrtu\nH5+VJcytPIeWbDcgKvqMZqlJV+F0kfpjCYsse/PTqWkRpQ9KEfYFF/ryKzYS\nVSof\r\n=iaq+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA5bHwai/5wB5Zpuc6KNHhlEw7LC/072jnIAIOn2RdNyAiEAoB4m9T4r304ndYjIEad4QuEaI2oOC4gsjvVQSLTPalw="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.13_1576656928227_0.2735528180670428"},"_hasShrinkwrap":false},"1.0.14-dev.63":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.14-dev.63","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"tsc && scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"36dca1049ca71a29464259442a6fc596e0ce7d70","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.14-dev.63","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-Qcc/GC4jZK9Wlb7I+Uw7pPX+2pvzIEjJRVaAVQpGv66cuNWHyRIIF1S4jZI5L4b9U6HiCCFJJc87dt6QWn4Dtw==","shasum":"e196416a941f2d36d51f81b3fcbd7da6a4583a6f","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.14-dev.63.tgz","fileCount":42,"unpackedSize":66764,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+tp5CRA9TVsSAnZWagAA/PcP/2LumhC3nenPioXJnnTE\nN1XRPmJvilvE5Jv05Mrp4wgkukd2q64ET6JEZLG46rWZWylR0ehDKTlJyTEs\ntVMH3Kd0oA8aOrCMVV0mIWvmyDw1tGuVqaq3hT01OPMuN0PSGbbKQqxbU+gr\njGuUV3zhb5elfOc1ALQ9tDNdGRatDGW0wiPKdSGm6q46+g7uUy+7HbHb7xTv\n6GoCXA87GFDYfgtIX0ASSWmUO9I/Q68bHoMWrk9XnasAmxGLZbf2+byu0NNo\n4xYnrOXlX+vRgi1Iup0rjE+rVTngkgbZNtQUdKZyOH/G9jWZPKHFTdC22cED\nxHVY5P+La9687hVuMVas6WlJUl5mA35GQe8niBj6Ko6opNXRgnkQ++nSoTTg\ni3uL/J3oSBZlP38B2JPsMWFkoqgtXky3GAl4Fd8leDik+t9nG/pSrBQuofLW\nlexjQRCYB2BgNW2JZPh01SVkuPbTjIpNUnQH5mqFG6ABqCXmV0Ofq0lqf6sE\nsCcoDLHR7UwHBdKip75MbFkm6gW0QmvC9fGRZsf7ZWP3hzo64QL6/JxIIzF9\nypXKbaTl239Dwo3xOJsIkkzgZw4jCFMgiR+fg+u79lPqe/7eTNU7QAjnzh4c\npScyB9Xuq9pmD8XBYrz1wTMQPWtnxgHEaMX/lLR4NmE/0ygmFB+Olao4QPzx\n6WFH\r\n=3Bux\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFT+oOXD7n8wU/O644LURMGu3IvQTD7AkG28ytqPIshLAiEA66/MjnUZluWWd4tj5YUQvGUETw4fDxM16MAbC329BMI="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.14-dev.63_1576721016842_0.35268569390164384"},"_hasShrinkwrap":false},"1.0.14":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.14","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"tsc && scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"gitHead":"9932272a7d627415a311480c55e48d41c2f6e38a","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.14","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-BoWbiFCO545K72V7cThubNd/6qaDJddyp+UAmvFBmzT8eA088RsAl3iq0NnV3jRGsc/nG/zJKOx8YmaCIaK4yg==","shasum":"a9dc821d5d0e7bd55ddd92ee631d64c6fc362238","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.14.tgz","fileCount":42,"unpackedSize":66757,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+uOWCRA9TVsSAnZWagAAFFgP/Ryc88nhZ6JiVlbJnW0f\nozwoOb17aNsfJW1vdSiO75HSrRKchPgAKMTYTFeUaHLCqybi5pgnEjuTmYyo\noLwq951TJkNQJge/+s/liVb/XG7DGOxJoKgfdMLjjMy6JhTRS855iU6np1ce\nmkMH6utp0mer/jK3Cm2CGCGigVXQXns7c1wAJahLf+7cLnlG8JZYrXqcFMKe\n6a/3gzUqp3U0vxA2DFOua8EJrRsbn2aKH8hAEp1fNA4Q8j1e3CuNHv4K7EwM\nWWBL00vHWCvL+FbrP4a5sUs9Mbjm1+902XIOm9+tmkqWfedCaFGwv3ikcatu\n3f5wbMjQQLFmp2FgA3rrKfLyHRz80oNAOOu9fV+/6qLNGGsiqNKvD7RapxuY\nBh/4IoasZwvhywyyIQnlwMj0b80b/HlP8j93fTXO5P4fryNr8UcwmykFttfr\nJg5r/tt1Ev8ssgtfNHnF5SX+gIAZPM66Hod41JqtbO0/wCKoyh5X719KLyJx\nP6ZDoSkiCt94qeF5jTTfbf8DADJDD75A+F9nmTMzopHu22MzI2wQq8wp4jyU\n/zDZKVBIXUgaRuVmb9e9UGl3EQ25OhMEImTuCdQUBBSl3kc7kZjth4I2c5ti\nv08TkwP+NebnpOX3NVdrqwPfCNYTJuPAxwYT9DUY/8BGhqOESBUXEUQQ2lcF\nM0Qn\r\n=zIuP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAJ5U026X5hZsj8aZd9o05zqzJyTp1YKXW7HcDs2jFzqAiA3zr3IPQAAQgJwYveWTVeOuEkDstuLbszEmVUxmobVXg=="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.14_1576723350043_0.452942839005843"},"_hasShrinkwrap":false},"1.0.14-dev.64":{"name":"pow-functions","description":"POW Cost of Carbon Google Cloud Functions","version":"1.0.14-dev.64","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","scripts":{"test":"mocha --opts mocha/mocha.opts","test:e2e":"mocha --opts mocha/mocha.e2e.opts","start":"tsc && scripts/start.sh","pkgmode:client":"json -I -f package.json -e 'Object.assign(this, this.client)'","pkgmode:functions":"json -I -f package.json -e 'Object.assign(this, this.functions)'"},"main":"./build/client","dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"},"client":{"main":"./build/client","files":["build/client/**/*"],"dependencies":{"fp-ts":"^2.3.0","io-ts":"^2.0.1","rxjs":"^6.5.3"}},"functions":{"main":"./build/functions","dependencies":{"@google-cloud/kms":"^1.5.2","cors":"^2.8.5","express":"^4.13.4","express-rate-limit":"^5.0.0","fp-ts":"^2.3.0","io-ts":"^2.0.1","mathjs":"^6.2.5","moment":"^2.24.0","node-fetch":"^2.6.0","rxjs":"^6.5.3","stripe":"^7.1.0"}},"devDependencies":{"@google-cloud/functions-framework":"^1.3.2","@types/chai":"^4.2.5","@types/chai-as-promised":"^7.1.2","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/express-rate-limit":"^3.3.3","@types/faker":"^4.1.8","@types/google-cloud__kms":"^1.5.0","@types/mathjs":"^6.0.2","@types/mocha":"^5.2.7","@types/node-fetch":"^2.5.3","@types/sinon":"^7.5.0","@types/sinon-chai":"^3.2.3","@types/stripe":"^6.26.3","chai":"^4.2.0","chai-as-promised":"^7.1.1","faker":"^4.1.0","husky":"^1.0.1","json":"^9.0.6","mocha":"^6.2.2","prettier":"^1.14.3","sinon":"^7.5.0","sinon-chai":"^3.3.0","ts-node":"^6.1.1","typescript":"^3.6.3"},"prettier":{"semi":false,"singleQuote":true,"trailingComma":"none","bracketSpacing":true,"printWidth":100},"husky":{"hooks":{"pre-commit":"scripts/precommit.sh"}},"readme":"# pow-functions\n\nPOW Cost of Carbon Google Cloud Functions\n\n### Git Workflow:\n\nCI/CD automatically deploys code to the cloud when new changes are pushed. All branches except `master` will deploy to the dev environment, but `master` branch deploys to production.\n\nFor that reason, changes cannot be pushed directly to `master`. During development, you must create your own feature branch and push your changes there. After each complete unit of work, [create a pull request](https://bitbucket.org/protectourwinters/pow-functions/pull-requests/new) between your branch and `master`. Once the code is approved and CI/CD has successfully deployed to the dev environment, the PR can be merged.\n\nFor example, this workflow will start from the `master` baseline, create a new branch, and push commits to that branch:\n\n```\ngit checkout master\ngit pull\ngit checkout -b add-test-charge-methods\n\n... do some development...\n\ngit commit -m \"work in progress\"\ngit push -u origin add-test-charge-methods\n\n... do some more development ...\n\ngit commit -m \"my work is done\"\ngit push\n```\n\nAfter this, open a PR, checkout `master` and repeat the process for the next unit of work.\n\n### Running Locally:\n\n```\nnpm i\nnpm start\n```\n\nYou can now send requests to any of the functions using Postman. For example, try `POST http://localhost:8080/offsets`.\n\n### Development Workflow:\n\nRun `tsc` in watch mode (`npx tsc -w`), and restart the server when you make changes.\n\n### Test:\n\n```\nnpm i\nnpm test\n```\n\n**End-to-End tests against your local environment (must be running)**\n\n```\nnpm run test:e2e\n```\n","readmeFilename":"README.md","gitHead":"0abc7d94c0285116c296ba6a325334b5b45b0449","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","_id":"pow-functions@1.0.14-dev.64","_npmVersion":"6.4.1","_nodeVersion":"10.10.0","_npmUser":{"name":"hiebj","email":"hiebj@live.com"},"dist":{"integrity":"sha512-oj82dXhJ0rUCQjsJ/bZDaxpIV2E8C/sh9jbyFj4/aZSTKV8jb/uGZMIkHttEu5hY9fP+nnteAJyp03mlVuxxlw==","shasum":"fa34fbbfd0fb42fa90ce4f759c9415c13f46eb2f","tarball":"https://registry.npmjs.org/pow-functions/-/pow-functions-1.0.14-dev.64.tgz","fileCount":42,"unpackedSize":67695,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeAQMICRA9TVsSAnZWagAA/SUQAIJF4fInqik51YAULRms\nyL8JC1o8CAUBpNQ/yhuTQg+4Xv5R/pSIatHTJTPkAZNTl5RvG6Ypk8IRM7Gn\nlxCDZ1cQpb6sX24W2hFSPPW3pwZWWTIauLZMG1Y4ST6+UWC2mVO9mDm9bvAb\nO25EgMlYbB/g2YdKpCgs4/y5pZJzZ8FNrJ1NX4xa909idmF+7FPhw/7YrsEU\n5FlImHO1W9q8UGhwlJqd7Mb7UCUaaTP7KRzkAycHDJlSNm9dHZMgp1jPzRRa\nsX2XFopho+zRcBme8coGKLwo9ZsiG3goR/6ciNIOBljNqOZ3j5FkzQSBA2d8\nWjkMN1OTXPQ8y3Dn2bYmdoW+BWKyl1v9/mcopZAQViIqP0ds4qu5yFvRFGW1\nqqf+9L9VRDqNPSVRSqx9hzVfCYWIDC5TkFRXJF3HiEiNYLg+BQnF+ShNyJ16\nNXWqC617AynP33Wdoghlo2+AqXoqftm7yTo+Lz15KjjaU6tDqpCYks3Pxi6M\ngyeeqg4KF2YnnWPDMhL6YC8RU1M2/lZ87n/co5MX0QGC3gl+bOzc86KkKiHR\na1DvqVnEs53emzHOgCB3VIAe1o/W8jjLgBodedaCBu8c9/itEcS4kexfB3Hx\nWCI4xaB8olbFLqygXiK0FDGs5NNWpHTvJDsdKxCjRtIWt4/N+xmaBVt/f/U/\nfvjh\r\n=qdEB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGudo5M5WhmS2XdvuWzPD4kAMK0/rbrjLLxJlZ1dAyVjAiEAjty8OmEboPSOS2PHKrnT9xXG4jFW5LVxNvceAoCHz8w="}]},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pow-functions_1.0.14-dev.64_1577124616011_0.09825005404240894"},"_hasShrinkwrap":false}},"time":{"created":"2019-11-19T08:50:25.264Z","0.0.0-SNAPSHOT.88edbb7":"2019-11-19T08:50:25.597Z","modified":"2022-05-13T07:31:55.853Z","0.0.0-SNAPSHOT.e489c56":"2019-11-19T08:57:00.480Z","0.0.0-SNAPSHOT.8a36333":"2019-11-19T09:06:18.523Z","0.0.0-SNAPSHOT.1ab8f76":"2019-11-19T09:13:22.549Z","0.0.0-SNAPSHOT.e68705e":"2019-11-19T09:16:30.554Z","0.0.0-SNAPSHOT.d0ef16f":"2019-11-19T09:17:33.117Z","0.0.0-SNAPSHOT.188d4f4":"2019-11-19T09:20:33.036Z","0.0.0-dev.f5a3a0b":"2019-11-19T21:07:54.418Z","0.0.0-dev.b3824a0":"2019-11-19T21:10:07.238Z","0.0.0-dev.ff764a0":"2019-11-20T19:05:36.751Z","0.0.0-dev.d380523":"2019-11-20T19:10:50.038Z","0.0.0-dev.c0370c6":"2019-11-20T21:03:19.194Z","0.0.0-dev.b07b4d1":"2019-11-21T03:29:17.710Z","0.0.0-dev.3ba2832":"2019-11-21T03:52:13.419Z","0.0.0-dev.8b42303":"2019-11-21T03:55:44.456Z","0.0.0-dev.5e6d5d3":"2019-11-21T03:57:23.768Z","0.0.0-dev.cf7cb1d":"2019-11-21T03:58:58.961Z","0.0.0-dev.ccea008":"2019-11-21T04:05:59.485Z","0.0.0-dev.25a611a":"2019-11-21T04:47:02.161Z","0.0.0-dev.6f75b16":"2019-11-21T05:01:43.227Z","0.0.0-dev.e24b492":"2019-11-21T05:06:21.998Z","0.0.0-dev.65353ea":"2019-11-21T05:07:43.346Z","0.0.0-dev.66fc2fa":"2019-11-21T05:12:01.888Z","0.0.0-dev.78b0a0a":"2019-11-21T05:16:59.942Z","0.0.0-dev.01c2f6a":"2019-11-21T05:19:02.014Z","0.0.0-dev.3250452":"2019-11-21T05:21:04.498Z","0.0.0-dev.221488c":"2019-11-21T05:29:51.172Z","0.0.0-dev.b226d6f":"2019-11-21T08:26:54.166Z","0.0.0-dev.80a3df3":"2019-11-21T08:29:04.177Z","0.0.0-dev.18c4ed2":"2019-11-21T08:33:15.494Z","0.0.0-dev.8c13a22":"2019-11-21T09:00:40.855Z","0.0.0-dev.3defe79":"2019-11-21T09:21:09.732Z","0.0.0-dev.348bfb2":"2019-11-21T09:32:35.536Z","0.0.0-dev.16afda5":"2019-11-21T09:49:07.619Z","0.0.0-dev.a182c10":"2019-11-21T18:40:41.899Z","0.0.0-dev.a1bba3f":"2019-11-21T18:43:20.174Z","0.0.0-dev.cbc1406":"2019-11-21T19:24:40.890Z","0.0.0-dev.41a6b3d":"2019-11-21T19:50:25.386Z","0.0.0-dev.46b948f":"2019-11-21T19:57:10.665Z","0.0.0-dev.62de153":"2019-11-21T20:40:02.376Z","0.0.0-dev.90bab89":"2019-11-21T22:59:51.508Z","0.0.0-dev.b38ba5c":"2019-11-22T00:10:12.311Z","0.0.0-dev.b910b24":"2019-11-22T00:18:22.350Z","0.0.0-dev.6abc68b":"2019-12-03T18:23:06.439Z","0.0.0-dev.c8746ad":"2019-12-03T18:26:51.331Z","0.0.0-dev.2140f43":"2019-12-03T19:27:51.071Z","0.0.0-dev.1afc340":"2019-12-03T19:36:42.241Z","0.0.0-dev.a77e1c9":"2019-12-03T19:49:45.951Z","0.0.0-dev.c4e593e":"2019-12-03T20:04:40.059Z","0.0.0-dev.9bc83ed":"2019-12-03T20:05:20.144Z","0.0.0-dev.41b1811":"2019-12-03T20:25:28.921Z","0.0.0-dev.34ab0a0":"2019-12-03T20:27:51.022Z","0.0.0-dev.8862dc8":"2019-12-03T20:29:46.864Z","0.0.0-dev.f2163f2":"2019-12-03T20:36:39.499Z","0.0.0-dev.e22cf9e":"2019-12-03T23:38:54.328Z","0.0.0-dev.2d66faf":"2019-12-04T00:18:18.392Z","0.0.0-dev.df63ed0":"2019-12-04T00:36:39.772Z","0.0.0-dev.885a2a9":"2019-12-04T00:44:52.262Z","0.0.0-dev.48a567a":"2019-12-05T03:08:09.663Z","0.0.0-dev.859cad7":"2019-12-05T03:24:37.414Z","0.0.0-dev.ef1fc6a":"2019-12-05T03:26:43.763Z","0.0.0-dev.d1fa35d":"2019-12-05T03:27:04.735Z","0.0.0-dev.437a397":"2019-12-05T03:27:42.849Z","0.0.0-dev.a96f5be":"2019-12-05T03:27:49.541Z","0.0.0-dev.c7ac7c3":"2019-12-06T11:52:37.526Z","0.0.0-dev.b89ed68":"2019-12-06T11:55:04.570Z","0.0.0-dev.de12763":"2019-12-06T19:57:52.404Z","0.0.0-dev.93cd762":"2019-12-06T20:15:45.820Z","0.0.0-dev.62f61df":"2019-12-07T05:25:14.321Z","0.0.0-dev.0":"2019-12-08T07:46:29.147Z","0.0.0-dev.1":"2019-12-10T20:50:41.501Z","0.0.0-dev.2":"2019-12-12T19:56:08.974Z","0.0.0-dev.3":"2019-12-12T21:21:45.955Z","0.0.0-dev.4":"2019-12-12T21:29:23.742Z","0.0.0-dev.5":"2019-12-12T22:47:06.878Z","0.0.0-dev.6":"2019-12-12T23:15:51.445Z","0.0.0-dev.7":"2019-12-12T23:39:58.296Z","0.0.0-dev.8":"2019-12-12T23:49:15.312Z","0.0.0-dev.9":"2019-12-12T23:55:29.669Z","0.0.0-dev.10":"2019-12-13T00:19:07.007Z","0.0.0-dev.11":"2019-12-13T01:02:40.736Z","0.0.0-dev.12":"2019-12-13T01:07:22.996Z","0.0.0":"2019-12-13T01:09:18.747Z","0.0.0-dev.13":"2019-12-13T01:09:33.360Z","0.0.0-dev.14":"2019-12-13T03:49:44.805Z","0.0.0-dev.15":"2019-12-13T04:06:40.597Z","0.0.0-dev.16":"2019-12-13T04:23:36.018Z","0.0.1-dev.17":"2019-12-13T04:24:37.234Z","0.0.1-dev.18":"2019-12-13T04:34:42.271Z","0.0.1-dev.19":"2019-12-13T04:40:32.524Z","0.0.1-dev.20":"2019-12-14T07:26:29.740Z","0.0.1-dev.21":"2019-12-14T09:26:55.898Z","0.0.1-dev.22":"2019-12-14T09:33:39.712Z","0.0.1-dev.23":"2019-12-14T22:57:06.052Z","0.0.1-dev.24":"2019-12-15T01:47:31.222Z","0.0.1-dev.25":"2019-12-15T03:10:12.213Z","0.0.1-dev.26":"2019-12-15T03:19:25.612Z","0.0.1-dev.27":"2019-12-15T03:58:41.721Z","0.0.1-dev.28":"2019-12-16T00:10:25.482Z","0.0.1":"2019-12-16T02:41:14.349Z","0.0.1-dev.29":"2019-12-16T02:41:23.885Z","0.0.1-dev.30":"2019-12-16T05:38:28.513Z","0.0.1-dev.31":"2019-12-16T06:02:44.493Z","0.0.1-dev.32":"2019-12-16T06:04:55.798Z","0.0.1-dev.33":"2019-12-16T06:06:27.900Z","0.0.1-dev.34":"2019-12-16T08:18:41.345Z","0.0.1-dev.35":"2019-12-16T08:19:12.843Z","0.0.1-dev.36":"2019-12-16T08:30:27.805Z","0.0.1-dev.37":"2019-12-16T08:31:15.334Z","0.0.1-dev.38":"2019-12-16T08:35:19.412Z","0.0.1-dev.39":"2019-12-16T08:37:21.826Z","0.0.1-dev.40":"2019-12-16T08:45:18.277Z","0.0.1-dev.42":"2019-12-16T08:46:17.357Z","0.0.1-dev.43":"2019-12-16T08:47:16.015Z","1.0.0-dev.43":"2019-12-16T13:35:12.523Z","1.0.0-dev.44":"2019-12-16T13:39:53.723Z","1.0.0":"2019-12-16T13:40:12.219Z","1.0.1":"2019-12-16T13:43:31.120Z","1.0.1-dev.45":"2019-12-16T13:45:24.462Z","1.0.1-dev.46":"2019-12-16T14:00:48.251Z","1.0.2":"2019-12-16T21:04:59.117Z","1.0.2-dev.47":"2019-12-16T21:05:05.138Z","1.0.3-dev.48":"2019-12-16T21:33:23.491Z","1.0.3":"2019-12-16T21:34:29.476Z","1.0.3-dev.49":"2019-12-16T21:34:44.877Z","1.0.4":"2019-12-16T21:54:25.634Z","1.0.4-dev.50":"2019-12-16T22:02:07.142Z","1.0.4-dev.51":"2019-12-16T22:40:51.237Z","1.0.5":"2019-12-16T22:43:32.497Z","1.0.6-dev.52":"2019-12-16T23:21:56.884Z","1.0.6":"2019-12-16T23:22:16.251Z","1.0.6-dev.53":"2019-12-17T21:23:32.181Z","1.0.7-dev.54":"2019-12-17T21:26:35.821Z","1.0.7":"2019-12-17T21:27:02.311Z","1.0.8-dev.55":"2019-12-17T21:33:46.674Z","1.0.8":"2019-12-17T21:34:15.040Z","1.0.8-dev.56":"2019-12-17T23:09:41.507Z","1.0.8-dev.57":"2019-12-17T23:43:08.430Z","1.0.9-dev.58":"2019-12-17T23:43:40.031Z","1.0.9":"2019-12-17T23:44:27.831Z","1.0.10-dev.59":"2019-12-18T01:51:20.595Z","1.0.10":"2019-12-18T01:52:45.071Z","1.0.11-dev.60":"2019-12-18T08:03:50.197Z","1.0.12-dev.61":"2019-12-18T08:06:22.448Z","1.0.12":"2019-12-18T08:07:55.378Z","1.0.13-dev.62":"2019-12-18T08:14:45.017Z","1.0.13":"2019-12-18T08:15:28.350Z","1.0.14-dev.63":"2019-12-19T02:03:37.227Z","1.0.14":"2019-12-19T02:42:30.197Z","1.0.14-dev.64":"2019-12-23T18:10:16.139Z"},"maintainers":[{"name":"hiebj","email":"hiebj@live.com"}],"description":"POW Cost of Carbon Google Cloud Functions","homepage":"https://bitbucket.org/protectourwinters/pow-functions#readme","repository":{"type":"git","url":"git+https://bitbucket.org/protectourwinters/pow-functions.git"},"license":"UNLICENSED","readme":"","readmeFilename":""}