{"_id":"@algorithm.ts/sieve-totient","_rev":"23-9b75cf150050163de4ae3c55a7501082","name":"@algorithm.ts/sieve-totient","dist-tags":{"latest":"2.0.14"},"versions":{"1.0.21":{"name":"@algorithm.ts/sieve-totient","version":"1.0.21","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/main/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/ && tsc -p tsconfig.src.json --emitDeclarationOnly","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"610f21c513a5d0dce5afc2ad315a525c17300409","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@1.0.21","_nodeVersion":"14.17.1","_npmVersion":"lerna/4.0.0/node@v14.17.1+x64 (linux)","dist":{"integrity":"sha512-Z+tWAS9wffnwu+XX6isgWYlFnstLhVW8Bv3xwrExxSH6QabRG5NHCr+3JrzRrEZfABtct/phcstGWIZYDJVwAA==","shasum":"74ae9cb31945aba66b969196e1c3b95f2cc0247b","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-1.0.21.tgz","fileCount":6,"unpackedSize":7248,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGXYpLaLfV1iXF26efHtOLe2HkZs7Xe7eVr5Zem/YLsxAiB3bItAxDXqoqqUAZ9Lm2E9ZOvvvdYWoMsauxuNYFGa9Q=="}]},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_1.0.21_1633590261719_0.031361918998285665"},"_hasShrinkwrap":false},"1.0.22":{"name":"@algorithm.ts/sieve-totient","version":"1.0.22","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/main/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/ && tsc -p tsconfig.src.json --emitDeclarationOnly","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"d4af2ac47f6a8d2a22eee8763be73b3770d4754d","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@1.0.22","_nodeVersion":"14.17.1","_npmVersion":"lerna/4.0.0/node@v14.17.1+x64 (linux)","dist":{"integrity":"sha512-7vrZdHhX5BAkKzVFH6NVblZH7WmFMfGSqDo4ZvDO97GfO+ZlnQ3vHo0+I2MD4Gw7yR5JmwO5HwFJ4ejce4iDhg==","shasum":"a5511a3e076d196e9010a81e0394ff7a9d500b0f","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-1.0.22.tgz","fileCount":6,"unpackedSize":7248,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDtwX20/Zok2u9/GKkVphl04luBet+8146K54wpX9KeUwIgEdKuNbGsrlgJPttKgtiSB3tq+9Udo+3FWcYMw+dezN8="}]},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_1.0.22_1634632689430_0.8094895401231139"},"_hasShrinkwrap":false},"1.0.23":{"name":"@algorithm.ts/sieve-totient","version":"1.0.23","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/main/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/ && tsc -p tsconfig.src.json --emitDeclarationOnly","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"cc8576431cceb414f18f481788d5df198deeb464","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@1.0.23","_nodeVersion":"14.17.1","_npmVersion":"lerna/4.0.0/node@v14.17.1+x64 (linux)","dist":{"integrity":"sha512-oHvEIH2FeoQuoBrg6GQ1P//s1cjOgT/kQaKR21NN12Zw5F55Hc2S6p9217bvh8H67q4tDE6t+iNxrjP7KugcOQ==","shasum":"d8aaf4c04f535e2a156e0aab2c816b60bb610ef2","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-1.0.23.tgz","fileCount":6,"unpackedSize":7248,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoykZCRA9TVsSAnZWagAA9n4P/2MYDqBFi1uwu5+YNhuf\n3TyEFpQNvXaUgj6QaIKeRFTedChiAWi5y3C2UdxH0I1nVrbsT6yRK2GbKIww\nmK+fpqp3VB46qpd9efxEiHnJP/9ZwV0v69DOCrQIpj7LolGnUW394O6XHHNh\na0GeNd8QmfK7+DAA5sVUVGPxhdIRkCL9RnZRF/nesA5PTi0kWk6nRh8wsDJx\nMV9+/Tqm3Jn94nE1W3KpC7rl15Dfihv5oL04wD8pno3iB9iAtVshdXkEl2AM\nXcjwamrN214Fk/5gjImiTF/TaobqvhOLlYo1yhBaOehsB8EU5vObvX8EQTat\nr9NegQn6w8/hJhtq2YBYRNW7bP35bHQUmGexdctivasGOw9BlD+DmVG2Rs7l\nabz6ivhjVvupDVIRGgF/8hJdq8PzoftqahwUwyybTdMlBGIUs0YYFpS1Wvet\ndN1C5dDeLSmMpw31tL213SkpH0nYPyIQlIPYXTX7VjG9/AGVWQ9SR7F7Re0a\nTkFU1hRUrVbgijXsz0pEDFWHEQLjrqL4YkqcE/GxYCl7wYq1eZQtH+0/l0PT\nUhzVPKUmfdpleTVmPbyyJQrPXIsoD117+AY6tiqtfQr2ZhAarL6/9/H2gyxd\ng4hKw4a0s3C0ql+RyzZ31RK44JKktTsi76ZFd354NSjB9aoS1pWWLVva0C1/\nbaBq\r\n=4+G5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDD3Yage27K9IcYRjz6p74gB/I9sUyIqhuZL9rUlZZw+gIhAJhWufBcTqVznXm1C8H+Ny/m7PDMfcrTLR1XKuwWnD1o"}]},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_1.0.23_1638082841775_0.6136475499585157"},"_hasShrinkwrap":false},"1.0.24":{"name":"@algorithm.ts/sieve-totient","version":"1.0.24","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/main/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/ && tsc -p tsconfig.src.json --emitDeclarationOnly","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"be5ff5ef055a514bd2f9113b541e9f49ad6008b4","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@1.0.24","_nodeVersion":"14.17.1","_npmVersion":"lerna/4.0.0/node@v14.17.1+x64 (linux)","dist":{"integrity":"sha512-5lcbqJTxLvgeR2oIkf/f2So6bOxG/5eO1+pw+faznraB2FMU5ADLBBl3F4ZyuGvb9NqzyvfLSJ0KCDSAXe5nNQ==","shasum":"8bb4b10acc5dd0a2c44cbec22e7caabd6ae1cb65","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-1.0.24.tgz","fileCount":6,"unpackedSize":7248,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh6/eKCRA9TVsSAnZWagAAhw0P/1a9ZWOOE0ccD5UxTAe3\nD7mDYiD9mpCPuFojG2sYdnu3KlT8BMPpOSUWOBmnVGncXcYyLDXeIHsxgh/G\nOyefbcEQygIltl66KSncXI5xIWSa7hCZ1oMfURoXwx2ytEmwOUNCJ3jE/SqN\n+VpnHYPevuO/r7YIr4hC0j8MkHR9hgEC6/1K4pR4hTpBtqivE6n7eQtim8D0\nLZY3tOF8Xle9CrR4o9mh+ACkpeOcWktsU9kWDrJK5G6Lha2KwYF4rmbi1Ujx\ntEOp3dNQKTSaBQ5o24yp2Gr/hSqwnkXZ3ZnEWRqimI8Hix62EL5Qd4CQEcm0\ndU7/9RQekANp/z6t3WUj5gLvWt55RyFe+wU0jA03GbLLfyZPMa0KHKOcy2O1\nq1NxlzMdpK9xHDz8YOO8pVttCjuxL4jA3C7yJ7nTO0nfVg9FnmDZt8r+zphq\nxYDSMmYIFDvPDkBKHB8AtF+tjUu/gPJMJ+3yOl5e7f0E617oWqr5Nj+wcRc1\nMnQIDq1H1mdhkEwZojyuyED2cA8re5LfSfceamNLRyd1KLaVM4F2wS3DYFFA\nluqR5qgePVGQy1V3DKnclgVb7HE07w03HXzP/Cm1A6jwkXQ2WgVa8TJxVG2J\nl8T6ksaBsq7nf2m0X2mkUyS2G5/gWBsxuhcFmv46fe2aQQTfrVKvjIalXEsS\nJaJR\r\n=rcmB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHBAggsujC2hO8r2E2XjOzxdetPjTKI37fPU9vspHevqAiAYsKViEkoyF/k50punDGKHbvslPrb/RNNexrelNiIrBA=="}]},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_1.0.24_1642854282548_0.028927947298021728"},"_hasShrinkwrap":false},"2.0.0-alpha.0":{"name":"@algorithm.ts/sieve-totient","version":"2.0.0-alpha.0","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/main/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/ && tsc -p tsconfig.src.json --emitDeclarationOnly","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"f48a558ad6decd6c5eee4b9a999ac085c9e19a22","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@2.0.0-alpha.0","_nodeVersion":"14.17.1","_npmVersion":"lerna/4.0.0/node@v14.17.1+x64 (linux)","dist":{"integrity":"sha512-qBdqlkH40q+mrAxBuces+w4tYJpPl8pr5sDI/n2Isj5GFuC1bqTWjaCSNXwHkYJgA8BXK0l3bijoDaVvPxFrMg==","shasum":"aa77e4d40676d6b3fb4918125e6f8d31f6b20c5a","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-2.0.0-alpha.0.tgz","fileCount":6,"unpackedSize":7165,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh/lapCRA9TVsSAnZWagAAZpoP/3jRZQvlNybBfIbWqsuq\nt7BYcwLGjAcXm7mqYOiz/mpDgpA9O2Bq9z4C9dWhtCAkAP4ACp+5PS2ATNBp\nca8lD6WlpTEGHKgX5TbWpxxDdY/fNZo4K9yMP8lRUYn7qbX2fimSncMqaAjN\nT57O1myu8Aaeox695f3ymP/z96PvDximlbmSEwU8tqBHB5avDMGK3zoM8Raj\nJaOL6ANkE/VZ4I0FsqKwK99twZqA9ZEDxlFsph610ZPELelB42J8MxbPzvy/\ngt6QckgL8MtgqeSB1jZxEh0AYOkbLUvgLJlXToDaWrrwWbhje8xtEdVx5EuR\nxVN+5hPm2RCwH7miOBt8cLmuUJ1kBoUbpsxYOjjnwRilMJ7zvzfXtwvFaz0s\nIZ6ijqqxm4O8lDgAGeRhkb53njaxyFpdFt8KgkEgLU7Dx5gyya+pxhir4t0d\n5FX1x8WWbTNInMrkVlW3lBEqMT89Mp23ig/NJraMOiqER+zm/LMOrvsC7jlZ\najjAZ1SSYpe+721FYTmODKXNBCV8G7NStGElelNkbLu6DF9sYJnLoXsz0HYQ\nC9diT2eo14iww8388nPuwwn7ZskgUPjK2HDN21RSL/qxh12Pa8lJUB94GYhi\nj5+ZP8nO62U/vSSMkd7jwBduIspJfwYoLeaV7KXnpffmV/EppcObDgvIJ3Ez\nzeDE\r\n=1Sez\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEymVoH1i/2ojfSKWZr2Ayur/fcAc1BUhZK9ul7Fz1BjAiEAsGLGd+w6W+prHx3UFXG/H9gRD91aff4WSgQcgqlyjIg="}]},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_2.0.0-alpha.0_1644058281573_0.9880311552135261"},"_hasShrinkwrap":false},"2.0.0":{"name":"@algorithm.ts/sieve-totient","version":"2.0.0","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/main/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/ && tsc -p tsconfig.src.json --emitDeclarationOnly","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"832e998c72a5e2de64cdca52655e2f0456a17ba2","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@2.0.0","_nodeVersion":"14.17.1","_npmVersion":"lerna/4.0.0/node@v14.17.1+x64 (linux)","dist":{"integrity":"sha512-rxrWwMlNdfVwmPc1FBWsZBhAsKZXGQGbcWe05EolKcqPCC5stDWtQGYrpC99wuvbUmuETkWrEZb32j49LHHaJQ==","shasum":"4dbab8847de1688a76128e2e4fd98cfd4efff711","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-2.0.0.tgz","fileCount":6,"unpackedSize":7157,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh/3d2CRA9TVsSAnZWagAAgr8P/AhG/EB2+sddTN3yVaPV\nh3ajMr00i7TI2uFV/Nnmyhi3zrTxh13zYx0wVVk3FFSGAnqWZ3SP6zonN1mq\ndtk4Vjn60pOjySRa2TY21iYltORN306F8afQmlmcv0vG/FMPisbkdSSJq08G\nTWtG85Y3YO/DSQ7qLcCF3Rna0geCIxPTJVSYD/k7tEJ+RODtouNjSqdYeoKG\nV20oZOUwz7PwgjJRTLQS0oiNVdZVeucsMU8lm5lhilFtfg18rJ5M63hC1dlP\nptHmZPJER4cLmpVRe2QpfkmacFu59NynJShoiqu3VGkazLJbKA7Yp7qq3ox9\nEKIOyYF721krGv+yKRVBgS2hQ4U3q2mL5qRzAVJBmcDHiIhL1flB2rYxTIPx\n2sNpcH5MmrhIlLEu2U7fqKlJQER+rNbQkoL8+MAm29xlT0ZtSjlCY12s51n9\n7VQSd+4zL63PujyjceY05PRqIDoqbePeQOy+zCwfVE5WuPXSiIKa9Id2MH7r\nK2NO1UyBUQPQk51cYUaHWlhRWg8/3/Ia/bNnWP0+D6FRb61Kd82rYdzceOm5\nmP01HaV0mFianqVlmPmBD4C1dfZK8DkjuaYknHfqJ38LTObeeq4KNTqADpq2\nZyV/TbELInVZRx0l+Krzlo9dkpMlbCWu/u25DEWhbK+P8AKbg4xNQRHzMpK/\nHpup\r\n=iKiu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHiMlboJ1VC1fJzYFF6lm2Alot8zpqf6QLoytn0o0P60AiBpTMiUiJXkRPVVlzd1mcrh1QPZKD/mhuPvDluBRobUUw=="}]},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_2.0.0_1644132214652_0.8622157526417364"},"_hasShrinkwrap":false},"2.0.1":{"name":"@algorithm.ts/sieve-totient","version":"2.0.1","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/main/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/ && tsc -p tsconfig.src.json --emitDeclarationOnly","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"cac97b1cbdc95e0c0914b24ea4e4d25e40bb15c5","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@2.0.1","_nodeVersion":"14.17.1","_npmVersion":"lerna/4.0.0/node@v14.17.1+x64 (linux)","dist":{"integrity":"sha512-pFeBJu6klimpNXQFsPafe8pexxshJUv2zbQ6aeYlRa/eJ019xJBSNW+0rou9rGIi1g6w2a4cMkzfBjjQCqmwyg==","shasum":"94cd6ecf8208a1e1abb90d92b279db01815252c8","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-2.0.1.tgz","fileCount":6,"unpackedSize":7157,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiFOITACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq9khAAo0K7bCNqchHEcTLzhpkj+0o3yf/pFVxOtqplFNv59rhxpgFD\r\nQA00Vl//qnHEzH4Cd+BvW91lILrhu8ji/KJHMVJJE4s4EFtWQMwJuFvs1xt6\r\nnldGyVoGTbVtLQXF4+fS8wppjnMUKR6d+mkL83SZ3mit0QBr7diMaqoOCE7Q\r\n3E2fXtWhZXnOw8HdNJzZagKZtUzhn2Lw6Y9ayyKX4Udr4IpXgZVsRfeMcr5K\r\nEzmRSh81gDxzKeuuhPJYJNnmhQ1lbu1/fZ+lzuSMv8Hv9YJ7OPT0vCRG4M6o\r\nvbopj6ONG9mjcq+sBe6gIL7ZE6YDJ9Yh5hVnDPRerTUJHxJi0OHbR1SFDZY3\r\nG9hnMwpCt8gz03ByU0/0SOtYBzEr6ZAoshZNpZnHtSSah+gMuUiFh0isCnxJ\r\nj+lp8iPvFWbR7L0lJdRcGmusqSKMxQndZEBiWRqpIKrqpW/MUjNhhD6nGk2q\r\nenFJvpeTv9IiygGEbpGA8sofrN/qBJdz18rRfEdEsqUAyb8ZSbuSoW96fBQ0\r\nAElfVJsVys9OwNZY01EpNcY5im3gydzHl7FmEGxFpMPKIR3XF1UOta/Mir3W\r\n4dp+9oUGFYDIctbjcNqb2mfP0KzRiZYmRmSlVi2RXn7nRRQuQYA6lDBy/eqd\r\nm3o28wtDhJYGmdklJIqblw0RGmvtULuRaqU=\r\n=oKx+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCtblhqRi6uoHsT8pCDcz86/bdmUtUITPjfA0tWDNehOgIgSYTGzDVgIJxMDRT9NcTQrRE55QHnyoS+Y0Vk18v6+uI="}]},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_2.0.1_1645535763019_0.7018146689058655"},"_hasShrinkwrap":false},"2.0.2":{"name":"@algorithm.ts/sieve-totient","version":"2.0.2","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/main/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/ && tsc -p tsconfig.src.json --emitDeclarationOnly","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"386ea6eef0154a42689f03c4943c526a1234db45","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@2.0.2","_nodeVersion":"14.17.1","_npmVersion":"lerna/4.0.0/node@v14.17.1+x64 (linux)","dist":{"integrity":"sha512-h7Yt+MQwpHT9/HSRfIIhq73Z4kyFRcdsSX97bhEgdYlwK013fKXj/BRg6wzCCt81x8Kw2MEPkeYeCQG2kg5wBw==","shasum":"f8ee41a12c20dae656cfdba11d16ca2565dffc64","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-2.0.2.tgz","fileCount":6,"unpackedSize":7157,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiFzoDACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqoKA//eTlZFjcG/FiuerRxFBICXrUTcTV+biKTkH4nZuUMn+LeOK42\r\n83ddOBu9hhKVbZFy1i8AKy2vgdGOB0Lj1lR4LEmrADVstQCnL41qjI/ne2rM\r\nFxVP0IceR+sEVdsnS32GdKoetnmsawD8Tsou/CmzfEozGyOZW8y1AqpDZZMn\r\njcw4OQ22AkEQNhrcqT16DNuxnnfudARGcSct0sb9FjSmE6JfnJY4kQOfHnIX\r\nNuw6WoMLeU59peGhwK9z2p/coW23b6PcLkyMEHRgkt+gAPjo4UsIZo4uv0WK\r\n39veT+pHa0l9vfK4kQ+uUE7m9r6QyrJLP/mTrZMZ7je/D6iD2HbvNlyNs+Vw\r\nOD9T1erep2HANZ7zgni5psdlnkjA3j7lpibyEqJbUfPoP12HFEuFJMvPItCb\r\nOXUaRboxO/PxqHjbKMnkya7IjTl5NoX84EAh/vYxcAgz1AKY3Lezy64vVytb\r\nxOOw6X3XemWamLr1GM+vMZ/ENWgL3OGUkOIwzydpxPsG3HYMGd16TKv39OD2\r\n2qw7/x9xVe96eLtmQS199TwvNXcFxtDlH/swkP4WA5r0yvzE3lJvktgif+X5\r\nn1LK8E+ifP29EZDtQwqKp8mhNOsiI9usqAH2572vxViaMak4VyIXy6VeGpOo\r\n9j447rxb0vnnrJSY7XobddvRe2kFW3edqcU=\r\n=j69X\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDGsVKlZIcP3dHUR177Dy0eb3U5kTxcjiUukQyATF9SGAiA7gHN+Ws7pGUJn8CxG4/xkubiB+RgtLmrqKOKMhOOO9w=="}]},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_2.0.2_1645689347138_0.4526788838812925"},"_hasShrinkwrap":false},"2.0.3":{"name":"@algorithm.ts/sieve-totient","version":"2.0.3","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/main/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/ && tsc -p tsconfig.src.json --emitDeclarationOnly","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"bfd7ee8420771cc02f7ef53833ba17780192cc88","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@2.0.3","_nodeVersion":"14.17.1","_npmVersion":"lerna/4.0.0/node@v14.17.1+x64 (linux)","dist":{"integrity":"sha512-X4zcj4mgGf0KZYr3jhCZmHZUxPgM051MVkOkdrU5Ke3kC11M817AhHGHUbGFboQ+N3WapnJcGcAyrcaXUE2b6Q==","shasum":"39a005fdca9b51696eff0225648d1796a6deb8f3","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-2.0.3.tgz","fileCount":6,"unpackedSize":7157,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiF1oCACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqgbg/+Klf6D4igBl0rZH6aX+UHNMJAwMXPwNVyLE/jOEn9K4oeyAgh\r\ntbQA8JJLhxiQQBYv6pds4bhB3vkpp9pDGL6ZKtx0uli76t7BkkPsJXx5dCz3\r\nM7R0p4cH8TDw8aN/eZAHZ2Sg06Y50g4lThKgrLBBouxJgdNyKKrzlS7jhNM2\r\nfRgj1RtOnvE0o4OsOZkEGKtZRiApJKLkrD4tzN5curiAiy1swGcBSAMGwviR\r\n8cUuJrFPRj5fy49XYZrwrDUCMUpIGrEFYk9xACyDPO7krjq8jhRKiJthT2W8\r\nIUrf/JXMdbXai9IEFPzAqV46XExJ8RTOqw08LMNKKJuDlf4tVMHM4vSAocb7\r\nvSeJV3u4j+HHDhaASPDlzH1j6EJpfBfjJcvxzCLfFDVy8jw+Fhx6AuZ5g547\r\n+pVvVmdEprlWM5CT3vfft1syT3cQrxuVrZ/8zAsE8EedrT5Xj5KhIT2VFK1A\r\nHmUu6suxt59Hyszwt4IepdiIdutzNMbyaKjB9YvI2Tf7i6axv0ikgVgB7KPd\r\nN1Z2eQux4x6QYLBBOZWJzbTWk70uDJkwat1h+vMfrFE6qVzZkcuyM85ZYQWm\r\nOvHOmSCUSfdr3sOlBnoQtIcB0WUiouacNcSbt2LzMKyOdF1SUrmVrAnjXndG\r\njfUm3d5JT4tPbLVau3YIUQziQTx6+wBehos=\r\n=MG76\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGcyflDYlnssvVTINyl+MBIGrhndbG3GRMDAwTN9kP0oAiEA4L8Mi39r/YIh3dKgOjqhExqqrF98TgProYI55B4MHvU="}]},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_2.0.3_1645697538039_0.18557102003501535"},"_hasShrinkwrap":false},"2.0.4":{"name":"@algorithm.ts/sieve-totient","version":"2.0.4","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/main/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/ && tsc -p tsconfig.src.json --emitDeclarationOnly","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"1f37699b24bbf498fa820a44056c5f7b291308ee","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@2.0.4","_nodeVersion":"14.17.1","_npmVersion":"lerna/4.0.0/node@v14.17.1+x64 (linux)","dist":{"integrity":"sha512-yIHG+3oMEk7f2Qtt5ZYZ7QMHct1BbVgffrUXbggmivmCzBIB2ptUwIgYdSky6v5eb/255jbotuT/usUBcBZfOg==","shasum":"bff06502a7d258d46fe8efe2b570d50860886219","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-2.0.4.tgz","fileCount":6,"unpackedSize":7157,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiNz9jACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmruvA/8DFrnXgFXzNbVt3waWjHjNfiMRqihjAsYpOgbOPpBLBUp8T4s\r\nkfKY66CMo18JXPsaWlsnS6z72toyfh629Y6uiupUqlm52JPbKfwJ4NR9CCyq\r\nzuGD/XZgDmi/jXmibMvK521SyoL4+HmYr0Zk76+Jr/JmsetfOXuCPZ9Fte9u\r\nXbI6AVb8NW3jWNGefsztReNZYL/yAHG71+g2nTI2jewaV2Fi7RZ26RCgPAGd\r\nEvjT0fKraf5zA6E9ukHQn2pCwTpWtkqNDjwfdV7jwRacC8N1QkW8UbkYDdBQ\r\nsUvmYaurr9oP1arbPPpMfpR5Ierdk3HQDFGoEHhpdk75zOYZeXc0sB172XSJ\r\nTVRCrywfQ4Wur5X5MOxeyf4oHWRuarpk0UyfD+LJYK9k/rIedhe8PG8RCGWI\r\ndkJdHW8cFz5jFrh8f9uEJiWl4MhiBVkRL99JUSacW/Ghdi16f1o/6HgWJO6D\r\nxQ91faOIB+qWVum6XmTLYYpe7dyfjfrjyZbJFSAJ+0iUbvRQDFTn1uo4voir\r\nnpwqj7DN3jmVjBiZ0oN/DUcdixbvo1vMioST1jhOigrL8zipNkiEvjm10jnJ\r\n6IeaY2tHf5ytDSIRhZPtzmnFQTzYEHaf4m7bJJHHzxMJI4LDBi80eeojjjYe\r\nvr1eys/AYwFAXFCqSEi/5IQpKmRyQhsfRBo=\r\n=JFjl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDT4qzSlD2iXekrjFota8mNMqizxhXC8ICcH0Y5vugGrwIgAxW97v8+WqfqDuH9hqEe4jbJ37XDf37YQApNc2HYEEo="}]},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_2.0.4_1647787875232_0.8025687701650279"},"_hasShrinkwrap":false},"2.0.5":{"name":"@algorithm.ts/sieve-totient","version":"2.0.5","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/main/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/ && tsc -p tsconfig.src.json --emitDeclarationOnly","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"b6f49a92024b9062f89a47277f692069e3abd9ec","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@2.0.5","_nodeVersion":"14.17.1","_npmVersion":"lerna/4.0.0/node@v14.17.1+x64 (linux)","dist":{"integrity":"sha512-QtVzrV7DhfEb1l5Tchs09iZRW2Bys8nFZnn5nym9tnQ3m4ExOgODSqB/83VyUoVholz9FFrDA0NwjXwUqPj5Cg==","shasum":"c90a74e7c8dab71d9a32ae4d107472331e6c4e8a","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-2.0.5.tgz","fileCount":6,"unpackedSize":7157,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiOyHAACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoaWw/9HNi9dltFKmCgChd8JcZggI7MvX9QFC+KlsueCUPcj+0iit/T\r\nZOo/SStrCe/Y7wdIzdXjxJmIdvSCKtUJ7uqds3ydyh8czxeBjyKLv+JlMQtL\r\nsWuzNBlsTZM0iDjd5G70tbNp0C4J06jQaIkmQtfzcArLrXg9B2rm3qZX+ttt\r\nWOyR9zoWUU3fahTEjlyW7nQSWBb4OXVLm1nPT1405w1Pore+hgqK5RE6QYt1\r\n+vCxU27Kuxj+HNxFq4bQ15iY+/va0cc8D+kq14AIZALs8hTMOf553PxJf0pt\r\nBmmd0NAQ75XA3UzWaIsx8jn4p7qcGBBqC+jdINKzoE5qQ3vQ6qe7AS/iWfCa\r\nEprr26PhCMebpMjDATczWKbKV88wmQ3E8N2amcmJDNUWeWMHGXyHCUwH7zkT\r\ncujDnlHTA2q+D94IweiGA+pGR1mWaiv7mTlf0RKiCzpIsdalFp0QhnChh7UK\r\nXQODJ6bRcA99PbGXxXsPwaT8BXaPA4QY0TegY6ljXJAG1PPqV4Vsyztoe71a\r\n7679b0qx7dNzgi+y3cAsDSF29zMaQVTjHRRKxoUq+AXrufYAJfw/kUV+3E78\r\nB39a/L7djhQaYm5l35XtgZtlgkQGtbL4bLHNVNNJ28IyfMlV+AzB1NXYQ356\r\nQqp4l3mns9jZD7d4Jr2VzcwHhqGwmBUuw3o=\r\n=2W3J\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG+QSCS7s87DKAsrrx7jPNm6LytR3e4sliW6InGAlQ8oAiEAm7f7e3EJnHiOYnWmPunsYyGAHPMSR6jbJ4ezEqc+HJU="}]},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_2.0.5_1648042432384_0.14078684759977356"},"_hasShrinkwrap":false},"2.0.6":{"name":"@algorithm.ts/sieve-totient","version":"2.0.6","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/main/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/ && tsc -p tsconfig.src.json --emitDeclarationOnly","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"27a96ca7e37b440880b5fd3be8bd1bd08939104e","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@2.0.6","_nodeVersion":"14.17.1","_npmVersion":"lerna/4.0.0/node@v14.17.1+x64 (linux)","dist":{"integrity":"sha512-YbHxPGfswmH1VgTVE1chaeOJKvWEAPIbW8/gSrV2IiYaWnAej7wAOxMIAq58SrJQfadOZWfI2W95NYZtjg7quQ==","shasum":"799dcd86774d838d0ff851e58177069d27ac4ec0","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-2.0.6.tgz","fileCount":6,"unpackedSize":7157,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPpstACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpH4g/8D2GT0iReaX1kIdKLgUlXsNhaztIKhNBObUTQVPE6BwNj3Rju\r\nhZ4B/UoY8+ldtcZzBGg+Qh4cVJpSS9/JDbYlb7GtijvkoXQF3SELL+sfbInv\r\nI6mrhMofMPK24EbIRQk82oIK5wM3p9jE/ShpRLKfIZ6r/fbRryUsU5aXN//G\r\nVQuSv28yUrqJ0adq1IKfVg2eHilp99w85z6V6z9x1fnD0+fS7NSgoEfXXDBC\r\nsvlXw5aQgbIo+SvcVfDqPCnkS49RL1HaTXbpzqltvYbkFutBUzz0LSNhLvms\r\nCToOq5oJAQQZS8xQdxdhCx7A1oyplSIMf6UunP9969ocTjciLjbMvq8SPKsm\r\nn2YAqt+/x1qFPzH78ezQlDex/SsCfMW5R/vJHLenMIC+eUBtfLT+VUW+iUKB\r\nCwsna7gNhf5fMrvt38iqqEvwMH98ftbK5iOMGARJZ//JyGL1vMOAp0bF8DDh\r\nIF0VFQjIenEiVq6mW0RxwbbsWDxA7AZ2BrRf14QLACc017nO5hgnRHm5CZ2h\r\ns/uKrVDGaLNrfUbcnQupV2R/835U7ytWLiiDzGgFYf6GycNUa3rxDF7pU2yK\r\nP25fylPjRWZUchfAIkCxAzBvAOpsM2ZU5utEboSnMBkr0WYlvyaoudJqDw6X\r\nP82zc7lyMc5sHOlpRkqm71Pp+PsZ4j5hq5w=\r\n=9Yec\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDggVYoH5oe69lIkN7+t3XwEwTxyo3DBJ+Uj28PD3FTSwIhAPAwZXA4iTQbEOETj3qUK7Nk7B2PaU8a5nF45oRhxx83"}]},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_2.0.6_1648270125734_0.036484659012638865"},"_hasShrinkwrap":false},"2.0.7-alpha.0":{"name":"@algorithm.ts/sieve-totient","version":"2.0.7-alpha.0","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/main/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/ && tsc -p tsconfig.src.json --emitDeclarationOnly","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"8a89b2b68855a8eee6b244188792bd294e56045f","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@2.0.7-alpha.0","_nodeVersion":"14.17.1","_npmVersion":"lerna/4.0.0/node@v14.17.1+x64 (linux)","dist":{"integrity":"sha512-RA24xtgqBqRAi0Llj8ZmlsPo0edzm9iboRTWEKyUJNYazqRTh7tWWSSEqRLcKMFBvPEaiwE/xX/Ny+tfbl8eHQ==","shasum":"550f35a01023c7947ed53fa3fbf7ce8b5fbe3910","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-2.0.7-alpha.0.tgz","fileCount":6,"unpackedSize":7165,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQIziACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqOYw//etWwEQ65S7+f+Uh4dYgyzRy4RYKFRHyfIPP3YFIB6vzb77tZ\r\nqkYmisXcRm6Ylz+dnjZN9O/16WARs1kif4+hoLxTFFx7BERBIuNbydmLx9fn\r\nZ1G6+U9upSut0tATOBIds6dDYT0rok6ghZvSU31LOC4csNshge/ED7SLKJHJ\r\nMnywBtTwvWZGrwLFVcFjhdufKjTSqM86OhazrzhrNBKFAW9/UGDhB/BwPoFr\r\nHtvNFUymm2X2iW7o5urARsXbllrseA0Hv8RdECnYgB5yaSXMWfPpkcSge+Ef\r\nuLk2DDjN1VAgi7U1LfkuEthSgzX8WFJTdzsha63W+ipZYw5tJl3E5cVLRjpW\r\nO1HU1EWlA0IiWhTcoZEvIuqXFyR1qk0DyvGTAW9Hp7h8ohSGG8rGiJwFI5FU\r\nFO8ODAjrMH/hOaWtvmu0z8JTYY8YkGAnzmpRSLQl8VfnANqCMdl3f3T+tuKU\r\nWipg5lOEGGR4JGKuWxyWj5g0VRGPo0Nnr/a2MnAsBND3E0YEpvsEo9GyvofF\r\nm1IF81fUE3Cu0UydbOUogbSUtH++wxFLlPJ0xX49TqKyokL8DV4mWK0424LU\r\ny5/qJMwGy0Ii8O6E9QZLj6iq6ZEt67vZppI/RldGn/G3B0YcPC29d98ye2Dc\r\nXO6ZpX7cIn1zlEGJTX/Lys6zR2jBvHRyWjc=\r\n=DM6U\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEjz7fZmVbL5PRfze1Li+SgeUL6ptv8NnKL8idSFKkpkAiBzJimkesWLDqpS7CmAH7P5WqCqFrX7zFZJmJdMmoEwwg=="}]},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_2.0.7-alpha.0_1648397537963_0.21851987207869028"},"_hasShrinkwrap":false},"2.0.7-alpha.1":{"name":"@algorithm.ts/sieve-totient","version":"2.0.7-alpha.1","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/main/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/ && tsc -p tsconfig.src.json --emitDeclarationOnly","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"fd487f425bd3b8273a414ead8b697010fe1a3a83","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@2.0.7-alpha.1","_nodeVersion":"14.17.1","_npmVersion":"lerna/4.0.0/node@v14.17.1+x64 (linux)","dist":{"integrity":"sha512-ptou3jngNTmYKvWrTnK8VzWGGszngTggp4UKj06+bGAo9zOvk23crYWe6XUSjknQYf2RVkR+uFrQRxcdXVvkDg==","shasum":"18a3d4dbf60eb42422d2f1b9adf5429da0f31906","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-2.0.7-alpha.1.tgz","fileCount":6,"unpackedSize":7165,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBt/TRczLjsicEUseyfKOxEoKJYmsels2zp0Aj2eB0b8AiEA8r+XJtDPTZXtKuOjh/67Wm+g8BV7nM3cyxtRKlxC+pE="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiSXiKACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpPsw/9HYMV1SwXW4oX9rJzgxi58eqFADXxSFx+cOq3ZrcMlPlDG61d\r\n1X4cQdj6j6EldXQKVDaaoQmcICPzMHobZsO5K+IAWwRznUjymv13qh8lHOsb\r\nQjep3yziEHhO/WoBHMXJ4eH8OdGvIYcR6I+nwxFgMWN25RgCBoa+VffPFQsU\r\nZU2HciTYnJ5W5sLQC1QFfC8OnMtwIBtVQe9eWpa2jYV+NsU6by0fJV/mkyv+\r\n1SDbRklFhmV09GKSDS/LMcCN7goumYjMeSMfx2W6d+yuZGzT2h7aB6oq01xO\r\nNKn1DZUhJ17JjjShZ4BkR5r7Z4eQRE6Ufyca+w6I4nkvLwdd4R5d0aVN25Vb\r\n2fRcqaZzuf8l0/BFVCKHIsYQXzesvb7nahyvxofW0ivyS3VnepKZOl1rMnXt\r\nAD/B/cXdkIaSDroi4/aLSHYjZFHZJieqt5W2yJpeHAkXEvHWHQcju2RtSD2L\r\nnr7IwfvL45FPKOsFp0gZnz2f20FyVz6PxrhcInwT4yIpuq1PKwmSUW+eM6Xx\r\nfjOVB1oKGvcnoj1b4vwAB2DyrqijvTrYVemxgF6Y+YezGNFhvCcHNf8dpnlT\r\nbdT93A8D00u2QG3SSarquNcfQFTp2ZFAt88j3vHFGLlNe4KDaS22+LqLbA7+\r\neQ1sz6OSnEtpgRf2vzD3Dr3COtM3dH/A/2E=\r\n=tIFV\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_2.0.7-alpha.1_1648982154560_0.12513216301355135"},"_hasShrinkwrap":false},"2.0.7":{"name":"@algorithm.ts/sieve-totient","version":"2.0.7","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/main/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/ && tsc -p tsconfig.src.json --emitDeclarationOnly","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"814bc48415c5bbea555e0807b8a862cf348df5c1","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@2.0.7","_nodeVersion":"14.17.1","_npmVersion":"lerna/4.0.0/node@v14.17.1+x64 (linux)","dist":{"integrity":"sha512-nKABKD2SltyKdQrOXR8HlqtWG/6O52pW+x989+eem8W2bM/jSO7fUm65PBIJqLcvZAbyaLqMPP7ff5TSVZfn/g==","shasum":"017b78196298d36c76f5703021eec3c5a69240f8","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-2.0.7.tgz","fileCount":6,"unpackedSize":7157,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCOp2Jum5iqjjvU9JZzDS7t3S6i/QV/EEPOO1mnYo6KWAIgeKSYx3gVRhbgxB2zsbN1IEmPFkosLEaOGmTOTNlSWds="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiScAwACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpWdQ//QSRv/W882gCOAWByXf1U5qPHdPbZtHTrv2ildsRexel9v4d+\r\nn6itpx1sQ3ZpIGDrCZGtns17+1O4T/2OLLhoPP9uqqF2WzIykwBFndOYvDUT\r\nVPaWBT2Q/FNaGHsNvPBHfjyFNWrG4Rl2/tQipG4l1GAWYJbHxCf/tt8FYiOV\r\nwNf/WW5bTBfCzbxYFaXgg6v5pnoQE/ycmRjk5yNioiVIbz0MtqFFGlbX+IFD\r\ngrRiXG8Q1QOkLJ485eULQjqyqnLuSU2YqXYfNO1qxw9Y1F/4ZIB1hSyfRoYi\r\ndt6+g3skEvZA357UpGru4jYCPWDZq6dYl/naiRgNYyscmyOX+kKqxcKU8QVV\r\ncsRQq+ULtRp7QO559/Fls2FXN0BfOOmSiSOTtdnRUQin34MqOrzWNMc8OIYM\r\ntdgPjgOd2+KEwcchhqa/KrrZ1RE9LWDLPtikYU4ztBEO7y7PmkqGtb/ooN6f\r\neYcvDov/16wKZPfHNMrtOBAKyPsnCE001MIXOxaBDfLSnI4TP0XQUETOWtfx\r\nePJSowiTWbZnl0f1jl4DwMcNHRxSyhPhSpZi2PH/v/N7U2FWn9Y2RVKplXBb\r\nCG+Lt+wTF3l4hBlkvpNEStKkwZKBc/zLVPIGYT57nZFVB98CyWJFY2TQvSbN\r\nWNjBD4eHl+5Qx8D+0Gl8DCBQZQOievw3ZmM=\r\n=xr7I\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_2.0.7_1649000496132_0.055955855660095644"},"_hasShrinkwrap":false},"2.0.8-alpha.0":{"name":"@algorithm.ts/sieve-totient","version":"2.0.8-alpha.0","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/main/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/ && tsc -p tsconfig.src.json --emitDeclarationOnly","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"24a301c145ad9f6c0e50494de39456c42bb02f29","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@2.0.8-alpha.0","_nodeVersion":"14.17.1","_npmVersion":"lerna/4.0.0/node@v14.17.1+x64 (linux)","dist":{"integrity":"sha512-3MttQBTZ1mxKL9xVtkGYt7IUSjauG6QFapUd0oaPZFnppOtJ65U0fFkOpdWxVl3bkQwbmrlBxgfUbL34g9JKrg==","shasum":"c8594e167cf373939abfc30fc1c8701e7011ebdf","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-2.0.8-alpha.0.tgz","fileCount":6,"unpackedSize":7165,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDeuq6hcmQlZ9lN68LzADvyAbCsSqvzwO9EjZ15k4OuyAiEAkQw81geGLIIOmkm3SXncDYa+dp5F96tqgwbLNXOTN+E="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTGdJACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpk7w/+MlqEqhM95Q4bAM2zGNBlW0hByB89NFsnjd1qzUqczt6HMSl8\r\nfq/vZHOlzbhnU89h0OxNBOEmDp4231dDLxGeHzsrwXgvegaCHG0ysse8GiuA\r\nhst7gRDk0x+twVR8ognsqCqXtb8wJYW4fUNlibe99zW/75IofpH/zRS5iT1e\r\n+Rwx9F0a8/ZHMAfzXqJGy9/lkmRcfypS2EaprDpOfKOExoWsjgvO4Q1VjBDb\r\nDFA1438TZtnZ+0W+ajwtkS2pgSwbPsL+quNPVBGl0OjXhvPbAX6Mm9WtzCR7\r\nxaMyYBLPRfY213K0wsSxpNI+ff3Knp6twXHDjptGN4nXZ0dnc1T43U5Qkk09\r\nVgp4JN/9bI4wI7CunR1tjQj/roYpB1EJgZethB0RtMuyEi71DLS10fDGhOJT\r\nSU9UTddglbzFOpycdLZX1lidldhItNHVwdUnaEdWbD3GkUN0+2PvOjl8HUA2\r\nG1+BnqzuZyYjdpdVJlTFLeKLd/lLJz3oGm8IH7sjuAtTg4Av8CnSo7n+fhap\r\njz2cZ5H8G47ZX+eVnCnqYwAnRwnFsXn1mQhOIGyUmaKDuIUNfwNRDcL08snA\r\naO7j5AW/R2ulg7egnzfjmLPFdrkFrHUg+1QjRhTRvpi6tPOMk74Y8ANAW9kv\r\nVZNwFuN9LIh6uguPrTTUPlAbeIpjAwGKfcA=\r\n=/jI0\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_2.0.8-alpha.0_1649174345558_0.1504489533862885"},"_hasShrinkwrap":false},"2.0.8":{"name":"@algorithm.ts/sieve-totient","version":"2.0.8","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/main/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/ && tsc -p tsconfig.src.json --emitDeclarationOnly","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"7d921919d03570e772a847763100eb1a58d10d2d","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@2.0.8","_nodeVersion":"14.17.1","_npmVersion":"lerna/4.0.0/node@v14.17.1+x64 (linux)","dist":{"integrity":"sha512-rxXhpaZiaIXcYQVjHoxguzgLaEKeL5x3D4ju1gseTZ/FSmuEOh3QLT6Y1HmjrkoLsz43gb+oCoA4wEFivoSPcw==","shasum":"acc282125baf98e1aa13fbeb2a975166de462391","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-2.0.8.tgz","fileCount":6,"unpackedSize":7157,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC7xwKQ3fbd6g2P/B2TuavXGpYfuX+0j5X/ro5Q7osMBQIhAKrgM2pzebUooEbS1cZKBQhga681xFhQoZ0VOnv5LnCu"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUr+aACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq2Og//deicYk+6Z+14PNC/0YFNDnQ+fvrCYMul8qXpDYHYSQ8H1Pv3\r\nRPOY1OPL5lzE0K1Qbrrj56FQwqWM2NBlsF1oiscDB+RdNO7DxfvbMy/NvbRU\r\nPX/869bd6qKnSIVuqeUkZZ1VedN6n/MKp6oIm8y9QevxphniI++fdsPlbAjL\r\nYYSoMZ3+h0OBM9LquiGifAzHocODfn2NHME5uPx4xkAxFWxXj10qRFLDoHKj\r\ng05HJt1xDszRs/5hMam3X8BswwjhoCDkEmHTWEg31dZPCwxvutLaZmOEK/tK\r\nmF1WHgblzoUS/iHGiSmhBePJOy6TxcSeC8JyjLqUSKFcNABokbVBjaeQHxKY\r\nTUp9lWvfMgvBMW4QWWJKkIimEfMX6NgPFIYzc4uCoie/dkvGSE109T3W17hj\r\ncuN/DQbJWXrsfWCBeOP+bVleYMV6WON892mPc1lWqb0F/ag+/Pu1lkuAfh9I\r\nzLpA7EZNGULdFGuuzlo6H2tZmqa9AqGH4SHwpsayYLJZ7kRDvbcpr48cczFS\r\n0NChUtiagyBWajo1OzAmgx5Z7y3a7q3aTakGKTt2qQ6Hz7sVhaZZclEqKKzp\r\nI1a3o1HYydCBlqOQgP9HhnEfYxt3gFKOQ+ZB3K0FJ+DsurIdMGmHSucit9mP\r\noUp15+Vzpc55UFwBORpeMJMmIlannXHagBA=\r\n=JLOv\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_2.0.8_1649590169896_0.1327776557779894"},"_hasShrinkwrap":false},"2.0.9":{"name":"@algorithm.ts/sieve-totient","version":"2.0.9","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/main/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/ && tsc -p tsconfig.src.json --emitDeclarationOnly","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"1bdac6453d21e3cfeca2e65413e01aa720a34d38","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@2.0.9","_nodeVersion":"14.17.1","_npmVersion":"lerna/4.0.0/node@v14.17.1+x64 (linux)","dist":{"integrity":"sha512-lZygoiCJ6czn5PBYOF6SkLPYXGFjJ9uQrbd0gcuPmmzCuBzIOe+QZO0yoWPlz7BsafaNztAr1O6KHeu5zuD7XQ==","shasum":"0426157a19a44db491c19a92a5d31b890b5b1a28","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-2.0.9.tgz","fileCount":6,"unpackedSize":7157,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDtZpjQzEr4MLv9sLsFqNd/qjdCOcHyXJpZn+1nHCct7AiBF8itRakUleVMlgK3JDF2I5eZDx4b5VeH4uZi1mCmceg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUvJdACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoyxA//XvnId8PdCU+jWqpTTgj813oiBkyAEYYBCefHemWnTKwDzfqs\r\n6pr+pcSVsS75DDt9EfOBdBQV4wiW4sgPizj1dknbrv26urdIYPeqcfo+VQB/\r\nt13GGl6nPNClTMTGi9eQdQ1BR4sT8un/vbirWk7nvPqveYRT5ArijaDjREDx\r\n03J38FgEPm/Q8KAB2gzI4IeaSVuNcU8gZDF2hXJd1G54AyLlejp4ajq144tJ\r\nCl///9f3JtPlRapVmafMSn4BLYLb/eas6ayeZAdVQINBLTzxX0fPsVHFbltk\r\nMIHpAOcC7AyiMvZWTiSLht4ow0UHvEbL55qxZYXTmOoqFqg0hGc7HS0IEnsA\r\njyozHxD1TBadAxdK3gBvefVYYfgOOJwwyATH5UI4SJjnzj24f3iIVC4A6X+8\r\nVZ5cAMxduT1SKseVhcVRoZDD9krYGj3zJ1bcLs7Bz0ShLs7ZVb1mi7S6D9rm\r\nCjQZmzj+KZXTo2A4tb/UM8EADzad4TPlJzpJFOUBTWCmTmHb4GEx95KKNP5E\r\nYsRJdlY9NpdQZ5Ylfswy08RkU9LSu71Nx4sLK3GuDtRZRFSdeCfSL0K/ovEE\r\n0KCuE7D4UKW6Ir07lRs0spTA7s73Xt1rk8/GQPPPHeej5DvO6GofZX0nDPVN\r\nR7o0yrhTyBI+ZsEyZMz9rM+SVR894kRgoH4=\r\n=5cxZ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_2.0.9_1649603165315_0.9719727060330097"},"_hasShrinkwrap":false},"2.0.10":{"name":"@algorithm.ts/sieve-totient","version":"2.0.10","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/main/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/ && tsc -p tsconfig.src.json --emitDeclarationOnly","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"65694a5108c220d1edff9be57a12bf8c8403e14d","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@2.0.10","_nodeVersion":"14.17.1","_npmVersion":"lerna/4.0.0/node@v14.17.1+x64 (linux)","dist":{"integrity":"sha512-goerW4hOcJ32tBMbZ9dB7I38wbrnDpg314nag3n1FwnQYORQDZ9S9xyJfFqjXvVh5MTRzALZ1yEi/Ujky0b4SQ==","shasum":"79b94a390bf9e024d8ab72cff7ba6d6948094a9b","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-2.0.10.tgz","fileCount":6,"unpackedSize":7158,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCGHfKoDYXnIYRxLioH0kiy3YPpNGjEJBbAo+obsmOeOwIgU+NNMCUzcgY2UPUV2mByWz15kVGPqTCT+rtFDiu54rU="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiVZOfACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqjOg//Wg0/Cr5IKKz3cCIdJOuKtTsF/BjH+JUepXdqkC5M/pue2bdE\r\n9+E21PvXdpSpB+GtO0Bhzj52vl+wZNFYFfxmul2/LsnQ4ch3tDaaXe2aKn7L\r\nQlDGEZ+Bd0VPtJTE+4m1G5b0mwFSdMkVWfH3mc8vGJPRrSfo9bgOy1Ltdn7G\r\nMY7r3hDY0IxdzPrGuqfaNHva1O7cn++VBc69bwhxTfLA2kqLbwoeYaZoC5y5\r\nEattIBC4FlKCShdBG1cJ3LddQHo8MoykMMNhE5WZpEnk4Aw551HtGS3DJREo\r\nj7yyeqYlJBAngzrZr9yu38lDTv2X3R+aSUoKdD60oWC9UzSCT3jJozVdtWZm\r\nCvzeUVj+q2IOqOuktTvWGUqwEbhTUokrRvjoRW3lB30eUN4mUvV3qpPRDD5L\r\nx/1B/FUaKZNPtv6DTeGtv5Y8RKrGM5U26DLeLqktOSaqYAZAeGoZy/hqrKqn\r\nqgP4ggPw1bis+bBrtXrBJWU9+kmpOg/FOMcT+86KAJmWScB0gVxjc24oQJQv\r\nEEA2TCTqdOaDBAFtMSt82lvpHHqy9NQW9d/NMuAPf1CMyfipQpTXb354MuQF\r\nPOTvSILT1hJMQG8jXk5OXBth6fmuGgaH7iRs8hvyAJxojqZlTj2SCaOYptPF\r\n0o6VkH+HYe/kciOGLio8gPK9Th32MXVjknw=\r\n=wrun\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_2.0.10_1649775519122_0.05921273600876309"},"_hasShrinkwrap":false},"2.0.11":{"name":"@algorithm.ts/sieve-totient","version":"2.0.11","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/main/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/ && tsc -p tsconfig.src.json --emitDeclarationOnly","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"42feafd0303f51767aa7e498f6de84d9478c1dca","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@2.0.11","_nodeVersion":"14.17.1","_npmVersion":"lerna/4.0.0/node@v14.17.1+x64 (linux)","dist":{"integrity":"sha512-EnZ1PhxFvRgFJk6uiBvfjM87rnTgwUJAgF/ckLGxs82KTuGCH1prGTuzS223Bj8bwn9G68x4rGiMYSoOyEEFBA==","shasum":"628991dc65d440c704b209545c863777f01316ba","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-2.0.11.tgz","fileCount":6,"unpackedSize":7158,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCEVHLQkZcEe5iNQgXkuBncCTNBMMJYF/8Iqd4jjFTAVwIgUorsu0z+gTbpIRV7UnZBsZT/ZczDvOae4kWVs5bGYLI="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiXrYIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqHzQ/+MpyCXLm4gR1Y5BQHCsSbO8p6hC28aWGp6V1d94K7SxRH6ySZ\r\nsZ7pK0R4TxCaXG1XmbNaIO80Zzayu6z2b85ckFbIBQnajf+ctplb3Qs6g3pu\r\naC+UluVG+Yfk7bf5KeMk0wL4CmBArQGU36X33QZjamsU7Pzvc9M6gvgv4zMJ\r\nwJ4pwLxge+nhMxYArJJWFDJihJgUITreUABgmzU+X+R+rriSfr3A1gFnkZNY\r\nj8wHvj4u+4QQ08D+7h4HNdb4TlI/URUYeSk98LgyJ2+boEKd8yjL3fSZn318\r\nfzE3bytYly1sZYKcepgUHdOse42ZGN7/BX0sLL94lzqSzus9QUdJ6S7nxOzv\r\nPyebIHZF/eXarxUfy6UIjyoDMWb5qr+rm/LsO6dHtWzDtbgRi4FWkHwc+aPd\r\nEQiJVXhz+UUNs23KSQZXynDvg0cE90OZd1M6qKpqU5kQqM6IkjHsr96XIYE7\r\nDugfR3AIGVEdkTGwKX3+zmGh6q6uBNPN0Tp3tiWa3PTjXJEFx9Gsi+wEP6vH\r\nzAxWltsNIoz5ExCtjzCNBU0OWNGGOyAU2xiecfckftthLyhCClSIRigrhpFo\r\n4Q3D+PoRLrJ468rVHdFc3dLzirubIvy2JARJB2B3waHBmfFGOu5zNHzHFBYC\r\nsk8qnUHfBzoUGf/opT6u8AO58QejxrvEKnI=\r\n=HWyI\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_2.0.11_1650374152148_0.5884689271020132"},"_hasShrinkwrap":false},"2.0.12":{"name":"@algorithm.ts/sieve-totient","version":"2.0.12","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/main/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/ && tsc -p tsconfig.src.json --emitDeclarationOnly","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"cfc415a6e56d76dcf795421d92dd81ac2a39a5fc","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@2.0.12","_nodeVersion":"16.15.1","_npmVersion":"lerna/5.0.0/node@v16.15.1+x64 (linux)","dist":{"integrity":"sha512-fjOOzdRA+ne1rTo+YwLR7zoXITbpqsIwRAV97hjMfd5GdeNjgdRIxpTGRivfioW/vum/NfNpFBz8LeilKPDneQ==","shasum":"b458a38f263c21aa54fe0bc646b1ff934466869d","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-2.0.12.tgz","fileCount":6,"unpackedSize":7158,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHHk8p8DHza9NeLe+rZ2dXtiat2dtQRVKmDiMYwo0glrAiBpg7Rc8W8R+oKNX8H6DBZ69L9e8Ac5TZoQ4KZTeQjdVw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJinztSACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr0YQ/+I6TCjXJDYGuDEpPht24/3DpKu9HuLivYE+2EIeCynOwAroOl\r\nxJB1jNuk5/7qxJwVaqqaH/7xUmQ8/qB5t8SeNgLz/K08AdFMP7ws+cvygT4F\r\nIpDf3q9qI9Ykg87w4bC/bWAQmfmPsgiZpOLuwh7YVV1oNSwEQo5OMNWEXH16\r\nd7VQaOgGED+OwsMrQkzvvWgXmrkZbDFCAsUZnVRLFidlo8gnBI/oyINpTu/X\r\n4R//xD3FEZ1/KRaZwl7pjZmNQwnamu9pE+vHoldw9HREkbvq6gy1ld4pIDaJ\r\njVBgotHIdGh1AU7J6sr7O9jRaF65SYC0IM8jIcY/FxlP6FqwKMtP3xw7Yfv/\r\nEylzPf/k+qykBtbwEl4HjAPw6641tVQkNePQYvACm57U/zeyprxAz4Iz/WM6\r\nj+yII5hhTjI+hYiMWfBQQ8GJQ/pVuh5OGILDyYKEaHjGRjGHgypqfevcmCl1\r\nOavxGCg3QCX3O+B/Se4WEpMbvobktWK0T0RuQmwZxOXHkVIi5CWgzYLTgjg7\r\numbDtybJ2kNPB/ZK3M9Gg33GeapK0e1WBZ5C1/aSNn5a431o6X4d6WxbBPUd\r\nNDGVU18DljVffYSqAvLhuITFC/oEE+L3tFWqi3NopKUYD4LyEuSFLsTN0BAJ\r\n5bR1Jm5QRpcLsW+qm+0XqXCnFh8GHPKgHNw=\r\n=rDcw\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_2.0.12_1654602578778_0.15299635474578333"},"_hasShrinkwrap":false},"2.0.13":{"name":"@algorithm.ts/sieve-totient","version":"2.0.13","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/main/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/ && tsc -p tsconfig.src.json --emitDeclarationOnly","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"ebd6447586d9958adaff5218e91768eda82b5bec","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@2.0.13","_nodeVersion":"16.15.1","_npmVersion":"lerna/5.1.6/node@v16.15.1+x64 (linux)","dist":{"integrity":"sha512-uVP71Nlqze9VY0QX/EZoiBuMCkJLwTOq1fsCyf/b+ljSiPeh704tv/bevlQo1tEyqf7TPzkAT331XKF755Gs6g==","shasum":"1ee67a7eccdb456fe7e394f94e43f33960f30baa","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-2.0.13.tgz","fileCount":6,"unpackedSize":7158,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC+TRt+Va3PiLgu8l9wXaPqtcnEDELemTYxp3r30z23XQIhAJ3r6J5WL8IUwUpGaEFT8dp/7N3ADDn2KNr9Ms5mRACt"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJit9+DACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr0gQ//b0HZsIAApu026eESnkLEbB6Wc+MWjD/Tv/KPZ8NRraC2vKlQ\r\n7vBrA7EzwnhNZV38dvlLlLaRQedIJVqt2hyNr6HlVBZLT61IzwinwuvdUaFN\r\ne42NPepCBTWFOxfeLFmegNlnX/Xy93qz6lK/RdV9bhdsB9LTH7VWj0zO3oRK\r\nQy+XQfo2DMP9jJM6k2mnzgOzN5lkHtqmmiLLNFNjq7B9OS0ZevDJjy9fRtw8\r\n9NLwphkzUrv9nfXjMuAPT/1YSq7whkOUJ/N2zTeDqw2k2XwIsVmBVvLxk76h\r\nnY8FR0DmmLnD++T6ix5Y4GZka3Ho482r8c558J4JKuyJgUjUA4k1s5/z+D8d\r\nX35np8avDfl08Lps4D7Xi7/QnHrXBhUfguBl7N7hxseKFh9Xu0BwI8ttUX7Z\r\n/6TNQi9+Ywh7wMNjz3icK2S5hqzZ5CvgiQiB21+CDPWegKImGoD36pzQVY0A\r\n5Moj+sVzWjazcnxg+PCbRPolwEyxHQuPkEOtT2M69IjRtJDEMGFbZJiPJGpT\r\nQmAg8zchdN0E4MUgV08XyZU3Z1pIqiN5dz43I6EMGHssAZ/XoYf2pXUwKtxW\r\nytKE7cnKe6oCO9gfaG8jfPWwr+lac+vjnGWIac8J3dMB9srgcKoaFVIkmDa4\r\nYLrpLOpZogmNQ5HF6FB6VPszib05OSebStA=\r\n=qvBk\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_2.0.13_1656217475608_0.02802111321415035"},"_hasShrinkwrap":false},"2.0.14":{"name":"@algorithm.ts/sieve-totient","version":"2.0.14","description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git#release-2.x.x","directory":"packages/sieve-totient"},"homepage":"https://github.com/guanghechen/algorithm.ts/tree/release-2.x.x/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"main":"lib/cjs/index.js","module":"lib/esm/index.js","types":"lib/types/index.d.ts","source":"src/index.ts","license":"MIT","engines":{"node":">= 14.15.0"},"scripts":{"build":"cross-env NODE_ENV=production rollup -c ../../rollup.config.js","prebuild":"rimraf lib/","prepublishOnly":"cross-env ROLLUP_SHOULD_SOURCEMAP=false yarn build","test":"cross-env TS_NODE_FILES=true jest --config ../../jest.config.js --rootDir ."},"gitHead":"53a24624195c9f09422c9769c552f9066bc22c70","bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"_id":"@algorithm.ts/sieve-totient@2.0.14","_nodeVersion":"16.15.1","_npmVersion":"lerna/5.4.3/node@v16.15.1+x64 (linux)","dist":{"integrity":"sha512-TJyAB8wUBQAe6JV1m8rquJLTQgRvxHkiUkdDlnTuA2UEcsEQtbkcLZUNthOg6SyWC6YW/D4Fs1/oSLGYhCzJPw==","shasum":"2e3856803c62da1e622dbb7fed2d8644d6917e25","tarball":"https://registry.npmjs.org/@algorithm.ts/sieve-totient/-/sieve-totient-2.0.14.tgz","fileCount":6,"unpackedSize":7165,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCNpjTmBS7/mAZ0U3oRAc9z+etLQHRsTm9vHXzaR8h0CQIgb7J7pbwgff74VhxBEfhkv8MA0uSsKXh3zYs8iUHOSMM="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjChnsACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmotuw//f7gZCxWIm48vpbqh3ZN4hKbFTR2vyW1at18ExhdUatiRqjZr\r\nMIBpkPfwCliQh2C0VqXIR9LM9VSpDJD/sv0EQCcOPBOObxaf8PSxYiaMcZ6E\r\nzDdbn2l5HW/UAqbMew0Rz9WU2QN5znvXjsrwXKS3emNmcZGHu7YHXYfPI93A\r\ngZyrv42Z5z6nbph246IjNePMdOt37vhS18se1UgZOYBEKQzATORT/yjYEvET\r\nYm0qcYPkkUQq17NygPWthxW8lUeIroXImzeaTm4L8eVuCN/JRKtVzjEDRBPr\r\ng6nNOqs1J1/xLs0iaJZ2dS2fraUPvvcHPsMa8LYY1sCG5QwdgeLo6WEl9hlu\r\nZGToyF0BStvagi76zMnRHuxj4KWtTxRTdIg8svc+h7XZVSH7ejYsxmRUs7er\r\nrK+MwXJL6x3rAch+MK7cN4Tk4dio+UgDfnhmjsqarSu0CDRq/lWAoCM0RuTN\r\nGa++wsTYU3PzJ/CH+Ppwb8b7Y+OoN7zxe9DjukLgUNmipjA2M14nQaOEqtBa\r\nPaJHdhr4NaLXgFNNsCAapxI5s9luPazitZziZ/B2eL7hCxZb+S6rfdgtaFV8\r\nVxdLE7dECPJPnnmMLE92I+LSzwHESc/AIWjV0mRSNKjRoxDhMnuuBnNgO3iS\r\nQj33MbCM2CyoWQ+YBlbsz8EI15aJEtnm9Gw=\r\n=xQWM\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"lemonclown","email":"me.guanghechen@gmail.com"},"directories":{},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sieve-totient_2.0.14_1661606380630_0.5572262644641981"},"_hasShrinkwrap":false}},"time":{"created":"2021-10-07T07:04:21.678Z","1.0.21":"2021-10-07T07:04:21.926Z","modified":"2022-08-27T13:19:40.893Z","1.0.22":"2021-10-19T08:38:09.574Z","1.0.23":"2021-11-28T07:00:41.928Z","1.0.24":"2022-01-22T12:24:42.700Z","2.0.0-alpha.0":"2022-02-05T10:51:21.698Z","2.0.0":"2022-02-06T07:23:34.813Z","2.0.1":"2022-02-22T13:16:03.153Z","2.0.2":"2022-02-24T07:55:47.476Z","2.0.3":"2022-02-24T10:12:18.159Z","2.0.4":"2022-03-20T14:51:15.405Z","2.0.5":"2022-03-23T13:33:52.548Z","2.0.6":"2022-03-26T04:48:45.922Z","2.0.7-alpha.0":"2022-03-27T16:12:18.107Z","2.0.7-alpha.1":"2022-04-03T10:35:54.752Z","2.0.7":"2022-04-03T15:41:36.260Z","2.0.8-alpha.0":"2022-04-05T15:59:05.774Z","2.0.8":"2022-04-10T11:29:30.265Z","2.0.9":"2022-04-10T15:06:05.450Z","2.0.10":"2022-04-12T14:58:39.290Z","2.0.11":"2022-04-19T13:15:52.324Z","2.0.12":"2022-06-07T11:49:38.936Z","2.0.13":"2022-06-26T04:24:35.763Z","2.0.14":"2022-08-27T13:19:40.805Z"},"maintainers":[{"name":"lemonclown","email":"me.guanghechen@gmail.com"}],"description":"A linear time algorithm to sieve prime numbers and get the Euler's totient function","homepage":"https://github.com/guanghechen/algorithm.ts/tree/release-2.x.x/packages/sieve-totient#readme","keywords":["algorithm","linear sieve","Euler's totient","prime"],"repository":{"type":"git","url":"git+https://github.com/guanghechen/algorithm.ts.git#release-2.x.x","directory":"packages/sieve-totient"},"author":{"name":"guanghechen","url":"https://github.com/guanghechen/"},"bugs":{"url":"https://github.com/guanghechen/algorithm.ts/issues"},"license":"MIT","readme":"<header>\n  <h1 align=\"center\">\n    <a href=\"https://github.com/guanghechen/algorithm.ts/tree/release-2.x.x/packages/sieve-totient#readme\">@algorithm.ts/sieve-totient</a>\n  </h1>\n  <div align=\"center\">\n    <a href=\"https://www.npmjs.com/package/@algorithm.ts/sieve-totient\">\n      <img\n        alt=\"Npm Version\"\n        src=\"https://img.shields.io/npm/v/@algorithm.ts/sieve-totient.svg\"\n      />\n    </a>\n    <a href=\"https://www.npmjs.com/package/@algorithm.ts/sieve-totient\">\n      <img\n        alt=\"Npm Download\"\n        src=\"https://img.shields.io/npm/dm/@algorithm.ts/sieve-totient.svg\"\n      />\n    </a>\n    <a href=\"https://www.npmjs.com/package/@algorithm.ts/sieve-totient\">\n      <img\n        alt=\"Npm License\"\n        src=\"https://img.shields.io/npm/l/@algorithm.ts/sieve-totient.svg\"\n      />\n    </a>\n    <a href=\"#install\">\n      <img\n        alt=\"Module Formats: cjs, esm\"\n        src=\"https://img.shields.io/badge/module_formats-cjs%2C%20esm-green.svg\"\n      />\n    </a>\n    <a href=\"https://github.com/nodejs/node\">\n      <img\n        alt=\"Node.js Version\"\n        src=\"https://img.shields.io/node/v/@algorithm.ts/sieve-totient\"\n      />\n    </a>\n    <a href=\"https://github.com/facebook/jest\">\n      <img\n        alt=\"Tested with Jest\"\n        src=\"https://img.shields.io/badge/tested_with-jest-9c465e.svg\"\n      />\n    </a>\n    <a href=\"https://github.com/prettier/prettier\">\n      <img\n        alt=\"Code Style: prettier\"\n        src=\"https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square\"\n      />\n    </a>\n  </div>\n</header>\n<br/>\n\n\nA typescript implementation of the **Linear Sieve** algorithm for primes numbers\nand Euler's totient function.\n\nIf you are curious about this algorithm, you can visit [here][sieve-totient]\nfor more details.\n\n\n## Install\n\n* npm\n\n  ```bash\n  npm install --save @algorithm.ts/sieve-totient\n  ```\n\n* yarn\n\n  ```bash\n  yarn add @algorithm.ts/sieve-totient\n  ```\n\n* deno\n\n  ```typescript\n  import sieveTotient from 'https://raw.githubusercontent.com/guanghechen/algorithm.ts/main/packages/sieve-totient/src/index.ts'\n  ```\n\n## Usage\n\n* Get all prime numbers and totient function values in the range $[2, N)$:\n\n  ```typescript\n  import sieveTotient from '@algorithm.ts/sieve-totient'\n\n  const [totients, primes] = sieveTotient(10)\n  // => \n  //    totients: [0, 1, 1, 2, 2, 4, 2, 6, 4, 6]\n  //    primes: [2, 3, 5, 7]\n  ```\n\n\n## Related\n\n* [Euler's totient function | Wikipedia](https://en.wikipedia.org/wiki/Euler%27s_totient_function)\n* [数论基础之筛法 | 光和尘][sieve-totient]\n\n\n[homepage]: https://github.com/guanghechen/algorithm.ts/tree/release-2.x.x/packages/sieve-totient#readme\n[sieve-totient]: https://me.guanghechen.com/post/math/number-theory/sieve/#heading-%E7%BA%BF%E6%80%A7%E7%AD%9B-2","readmeFilename":"README.md"}