{"_id":"ghost-cursor","_rev":"35-1a2b7cf07ca8cf6007369aa89bd726a3","name":"ghost-cursor","dist-tags":{"latest":"1.4.2"},"versions":{"1.0.0":{"name":"ghost-cursor","version":"1.0.0","keywords":[],"author":"","license":"ISC","_id":"ghost-cursor@1.0.0","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"dist":{"shasum":"3b2665ddc019e605aae6db467ce04132c7e768fc","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.0.0.tgz","fileCount":9,"integrity":"sha512-s/pTLUHcm3wNY90spaoY4CmH2zN4k9dJwWHhTr02zB6HO4LeXHKFmjKA4Hif+IOnaychBxKuF4yKgElwLQqPDw==","signatures":[{"sig":"MEUCID1NqLiMMBvC7LuR+h27+Nu18Qv35WXilkarnPh4Lvh6AiEAz/jE5faAtjpvmYHK2WVSG+QFvosDLiYrxGs8ko/w9pM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":32897,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeEwfuCRA9TVsSAnZWagAAX1sP/38BAT+2cAZnBAi7YRFI\nKsXB30KEbzh5ESc6iHWpuwP62b7XsE2G9PpbP7wNo3Hc8X+HV4jPH1CAZWiE\ng3dvUQ+A7QXUJhhuNwJXMOSW/MpqSGd/HALC6p9nXYNIw0A/xbTdx/KXzAP/\n7AS2q/+ZUDn3t7e1CuqWYvi9LjNy1kQlzs4Zb1b0JardzyceuwhVSsK2V99x\nrPuSi3/A5r4AAJ1HSf8DELyFumAx75jDbnOC4FpfQR9orkRvKs3SgzscSfVc\n6vubZCGnJJT8LGNu/4zkFsAlSmmlYGkD/bq+BcgJFaHYlkiz1Ns4xpFXQAvF\nrsZEzHdRmlgADq1KBvFk3TV6FmTaat9ufHzT3TSihdIKDfaz2DD+7bglFVua\nKNiVEt//5fHKGrD+2ze9VmfjIWV0xmNbSmEitSF3yanmrkME26PB5DKUkuMN\nrP+CM0ZydLaFFfZbghBpDhBbqtuTDHlVA5COINODvNOHwbFP3LhAPdMte/EX\nq/o3xWVC1X/aXUFL1snqLlF+/56kOzqHAAJKsRBsscWLBHIcWpTPX/ws2KHM\nIcUxlqv2b4vS8qIf85tkqBP6CG/pP4ygQQB9epjWVLpYuCRyZQpwGp9nwAOW\nfFerXo8yuar/PCsuVXNYGdNLyYGzuEbRy1x/z9VUG903dZLNqp5uQo5kSEW2\ndj1b\r\n=TGhT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"spoof.js","gitHead":"7f2bc794ea4f11a4d633810edbd58c810988fc63","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"_npmVersion":"6.13.0","description":"","directories":{},"_nodeVersion":"13.3.0","dependencies":{"p5":"^0.10.2","noisejs":"^2.1.0","bindings":"^1.5.0","typescript":"^3.8.0-dev.20200104","simplex-noise":"^2.4.0"},"_hasShrinkwrap":false,"devDependencies":{"puppeteer":"^2.0.0","nodeplotlib":"^0.6.5","parcel-bundler":"^1.12.4","@types/puppeteer":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.0.0_1578305517728_0.24791960016465775","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"ghost-cursor","version":"1.0.1","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.0.1","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"dist":{"shasum":"6cc7523adf5f88f96ea389ac035923687084d62d","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.0.1.tgz","fileCount":6,"integrity":"sha512-gaoqzbpQysTHEDxFi3vTJi3nq7Pah3WtBy05I9BZbznzCxY4y39ucPsegRUb/3pEFFI19n3PnlE7Oz5UbSzllA==","signatures":[{"sig":"MEUCIAoFMSasvgJnzaYNLS4sMVcLgYVidqKqRxcC0U7l1XBeAiEAy7/WkCJRPHouKLBMUmD686lc1BVkWMGp7yR5+O/g23s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFTWaCRA9TVsSAnZWagAAgxIQAJSzD3Zv1ZREs+E/+fub\n3s0JshEa0/Tbax9mDdYymv5J2e+ProCfguzKRzNrRdUl39eiyhNZ/5MRK0RU\nfmmZdvZP1emKOOc4vYiArr62OEkOkTV7YhbyPFIgzYbmSNKNuZtg81cilNzs\nBFZ9rMeOvIDjixd7pm5apy48VquqRNAYWW43se/6ehdY2/V+UxkiYf8pvGNX\nOHeWPZAXhTdiGSb+n2AbkhxOR1Wr+xUunWIvJJjkr9d/JWPJfwaYzhCixBab\n1Jux+P+P0dg+i6NPF0tT9FBVckUhGiNKZbRpVJ9OjJD2vXG4sqrXiQqvoZ09\nMz+h0mWr+ZGMMhZG4kmujS5TQQyvGRQtVdSEpdU9kOtJHGFJcKZD1OO7Bykm\nZ7CFWtQm0B+hWoKssH8Y3Qmok1kvp24ifqqoDExWsif5dMxfNGhpjxoMdtF7\nly3oMEQh8SMzmb5GvyYKQHw0RO24Fp0mfqDGAY4YfHgjNSKTRggTcJqcG5/T\nro0d+7jfiByihUShikwAQgsjac7l8/3goBLqOa9d44exEaAKHtDNey0BPfuO\ne6+mPfLpqS8CoCUgxXmECFZhfwcUddHZ7eKOLDUG/audgLvz27MkDDPxNm5a\nuEHXqBQ9v3/qYEof3cY/VKfZD6FSWddw5Cnxj3hH9cw8NgPzx4Sl1iZoq4ZQ\nCUcS\r\n=Y9Hl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/spoof.js","gitHead":"eef1540fdb191f179412d607165f41a5fd386b55","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc","prepare":"yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"_npmVersion":"6.13.0","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"13.3.0","dependencies":{"bezier-js":"^2.5.1"},"_hasShrinkwrap":false,"devDependencies":{"puppeteer":"^2.0.0","typescript":"^3.8.0-dev.20200104","@types/puppeteer":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.0.1_1578448282057_0.496976748507179","host":"s3://npm-registry-packages"}},"1.0.2":{"name":"ghost-cursor","version":"1.0.2","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.0.2","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"dist":{"shasum":"374807761fd11913ffe619ba598a6f970ca521c8","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.0.2.tgz","fileCount":6,"integrity":"sha512-0q+vlkdVMsQTviNNju3AlNTEWaiHHvKct1XKzux64mSFEghOY3ZMRELswI+NIkHBHinx9y+39jdyG26xjcF2BQ==","signatures":[{"sig":"MEQCIAiD8l/RveqUk8s6lXD+c77e2rm00v5wAGIBs1BVyt7qAiBL9KKdlqowHK6KzJgRSd3hslbu0E1C/Q6ri7MAUmQxXg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21711,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFTXVCRA9TVsSAnZWagAA1YwP/jRFf5DalGOOZTEecClp\nrajqIBw2XTx3ke1J4NlaChgJELcBftznytTv0DTBdsPyjIgAT8dtANhfe9i3\nEcgnUzD2BJHAMM11leT6X9Dk0lTUI7FpMTjlu2t9nnPn+EmYuKN0XHcVjsmK\nI03BVhEucekceDrZkTf0/uWFPTMtOblX0W7Zsn5i7fABdGoOczRquVSeID6O\nu9NnqLBO1httC1cyaOZFzqZinNMV+vpfY89BZvP9NLmgRTw12EXVvGhEFasv\n9JHXrpAyl01mjbu7kXrH5Peu4p+M1ebq3r2zBR5FSXaLsKWYo2TuSQ4ekFEu\nAgiVJzBMZXlVn74pecbdLVZszXeOnjuRt32iA0smxuhfswdxZJ/KDuP4pY/q\n1KkS+YytnnkE0UkDjJkKmLx6j/MmVwjuunRt3VtXfT8Xb4sLCWbPICV/7+o2\n5dq/hG62szg4YF1lupGNftTrPEhl1y8MmxGmS84hG+x6dzrk1ayd7R6DXGqb\nmweSNWUrLIH0CD+DhlIs2NZY18XqY1Y9dLqtnGaBOXnWMEi87iUltx+AXjm6\nsnnaUHxbE0MvojWdJwRITjuzOTS71axnXAuQzybBlNgCTwoJuIMI/d5Gjc5H\nkDs5wFuKXueac0P/cYd/NF8y+Gd+HdDbZWRKt7a/Yc2u0xpM7D1W/Q9ZHXo3\niUcC\r\n=16Du\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/spoof.js","gitHead":"966b89e3d08b4fb3f3607e25ce21447842bb4f18","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc","prepare":"yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"_npmVersion":"6.13.0","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"13.3.0","dependencies":{"bezier-js":"^2.5.1"},"_hasShrinkwrap":false,"devDependencies":{"puppeteer":"^2.0.0","typescript":"^3.8.0-dev.20200104","@types/puppeteer":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.0.2_1578448340837_0.8017943256057061","host":"s3://npm-registry-packages"}},"1.0.3":{"name":"ghost-cursor","version":"1.0.3","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.0.3","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"dist":{"shasum":"9daa302480b7a787619cfaf0cffb9409ffb4ec82","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.0.3.tgz","fileCount":6,"integrity":"sha512-BNZcMXWvyVq3GYBftFvDP86wi7S49rf3d6JTOpso22Clds/2HSHrwSoUsSSNTz18ZxFRLIPSzOXXG9lJuJTgkQ==","signatures":[{"sig":"MEUCIGcmW3wN/3TqmyT2rs/9pCqJmeaBiJmRyy2L0peOxGbTAiEAqi1QsE5WQFaGvNT12c+z+yzDunLTmJ2vkzBxACs624o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":18659,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFXjxCRA9TVsSAnZWagAAVWEP+weg1fUJlNDFUcix+W+q\nswHPwfwzS1LYXs4elX+ktEy7FI9I7B6U5PxjSXTbffCEx6Yoq6clMExcVPbw\nQJdK18BLxWMvMnemGwh4z4gHTm+kEkUXAzgHVy/yaW49zksIqhXuAifngpQm\nWi/SIPHowH7XeLEw1ARjpczGTj9SESsfhEqym7DZAneKb48xDVcHrtstF9Vc\nFPE8XA7vAPwXKkAPmVIWuZYr/3gIVnhhPi3nCen1UJvVTfCs6LxEeRRWFPLn\nyTctxbJPVVh59Z6jCZqwOfh9n4GovOiK/s+qWas0t6mu8UfoWGtSOpj7N9J1\nEVGI80UtOcV8RlkxAf0H34zyjKFwvC1R+YeUKYWnr9LIzbWz79oCFueTfj6Q\nzb6dRu+AIBTv7iFxz4Roz7coofutwNIJFHttU3mOUOwonrV2kX0su5EGfJU5\n9jknfWpQybpwu3ogOR86hKzXAcveCCGprSQdiVvM3tGPJmYkQWJa2jaj7q6F\nuHzJ9bwZ81E8V1q6nRDllw1WiI7C0JECfFtD7PzDMyF0tOSChzuwoHGW1+Q+\n9GEgSm6kEIPsmPxaI0kjGdva72JRtTGo6dwbl1AnzdsNe23kxaA7kz8ndWMA\nxfr0stN2fYySqpF68IoUG8EqXKzet3higUNQlNEnvQBrGpeps6/gCNEUt/Fr\nkHjU\r\n=Dx0S\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/spoof.js","types":"lib/spoof.d.ts","gitHead":"b73e0fbed2c71e0362a7e4fad5456a24578e3feb","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc","prepare":"yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"_npmVersion":"6.13.0","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"13.3.0","dependencies":{"bezier-js":"^2.5.1"},"_hasShrinkwrap":false,"devDependencies":{"puppeteer":"^2.0.0","typescript":"^3.8.0-dev.20200104","@types/puppeteer":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.0.3_1578465521377_0.8353582696968664","host":"s3://npm-registry-packages"}},"1.0.4":{"name":"ghost-cursor","version":"1.0.4","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.0.4","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"dist":{"shasum":"bc4ada487711dfaf149999b9959c36fed1f050ac","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.0.4.tgz","fileCount":8,"integrity":"sha512-ZYw7zFuN8cxEmJVTAaIfddnGH0tbohkB71MXg+rbiapQWqYL8WRqiFRruAnrcZ40/TpZNEmCpLaevhA3xD0XaQ==","signatures":[{"sig":"MEYCIQC07ytJfE1zoL9b0GMp8zlXBl5Yz7F5FPZyraGvQgMTfQIhAP+IUNy6drxL5bb+GzHAnGrlf5D3rEHVqNF5fQyroSwf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":29748,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfpRp/CRA9TVsSAnZWagAAfbsP/2waXCMQx5keUswEFRas\nTQSjd+Zw4LyLQTGJUbuwYus/KT/POwaYx8l7y9VOUtvT4DEH46BASql9ro+m\nm31o0gbcLQQj1ajLyTJvSEM26dOF2jCtdgWme0Z3rRBx6Ihdt7d7/Tx25Grj\n59QGfxnltfISMQUl5Jfxd7X/V7qprZrsqKTj0OV+zUMLFeeVpGegj3iWg0LI\n2Llx91Pyf23sDl2kxG7lowTVRqsNOiFJoS+4bOVQah1TUiNpRMYsZMxlhmnM\nDGwH8ST3saq+6HnlcdnxzkDD08RUpbSoKQE71VkE3qHY3uzM562CMRUaStrS\nVHHEtjQQy7HGo0Vvl0cKyEwTF/pYo8EbbKtZ6tkjC9VGJO4FUrIUlXdJce6y\n4n0b6emjit4ld3XQTi3dDb3A8bQOcUc2JS6WOjklOg7NiOtfQO+r7SBbxBLa\nwo0hG5AJxymJIFE0BkwVS/ybTmczqujE3vXLeevsVj8c5acuHOTzIohMjKJ6\nBW4gjPpZkNVY/ryN/8Rh7Eq8ByJKybDCps/QOOtzmoszR5Kh3SdfdoIL3qF9\n7ydSrWVqoG5MpIsjZhGd3f2WgHqu5OahRd8WIRGXJKoya9CMEpgL0tYfJbmE\n+8GkQ4CpDO46tJjTmJOjN8vd75W25pggAh6gpBtM6NdtarsoOzzuX+0Jrvh+\n92xS\r\n=GaLv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/spoof.js","husky":{"hooks":{"post-merge":"yarnhook","pre-commit":"yarn lint","post-rewrite":"yarnhook","post-checkout":"yarnhook"}},"types":"lib/spoof.d.ts","gitHead":"44d346e5b10d94ee381986e5f49e952d096c8b42","scripts":{"lint":"yarn eslint --fix .","test":"exit 0","build":"tsc","prepare":"yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"_npmVersion":"6.14.8","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"14.15.0","dependencies":{"bezier-js":"^2.6.1"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^4.3.0","eslint":"7","yarnhook":"^0.4.5","typescript":"^4.0.5","puppeteer-core":"^5.4.1","@types/puppeteer":"^5.4.0","eslint-plugin-node":"11","eslint-plugin-import":"2","eslint-plugin-promise":"4","eslint-plugin-standard":"4","@typescript-eslint/parser":"^4.6.1","@typescript-eslint/eslint-plugin":"^4.6.1","eslint-config-standard-with-typescript":"^19.0.1"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.0.4_1604655743139_0.8292393149953929","host":"s3://npm-registry-packages"}},"1.0.5":{"name":"ghost-cursor","version":"1.0.5","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.0.5","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"dist":{"shasum":"772b19c781f4efd3f69db727521d34f7487b6027","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.0.5.tgz","fileCount":8,"integrity":"sha512-St66GUf0aAKsIEtigzGOedqimeWH+LgXo06gjVYb98icpFGrWqzUuRhtSpdBRll5IS601EsSu8yuDyKfcPi6fg==","signatures":[{"sig":"MEQCIAxHkHCbYPsUpTqpE15rvQfLfw9yOdp/TV1rgRr+mZBvAiBZZZk8nrGrddf7StK8RJdqOrrdiN9R/FHpSKfZgY8UUA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":29740,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfpSDECRA9TVsSAnZWagAAIKkP/11VYyBsTBmyy9dWm3++\njTOKtbQtAOa0T+yesm6vVMHF0Cln78uVKT5Gy93Iw7PalyvHt0ExhFoR8EXe\nCxy49UOkaLgwnKlvKwZJMBoy4dDnzEhmOMolIJwrzUho6cyL8e340G6s1ZxG\nzaHN+JuiDzJ5JOFQaI04JzfvBAU7hmVDnBABiluHBhMklXkiora0rjeQt1kX\n2bX/j5UR8mk7s2iH9qkYSWOPHt/+dSyBbrzpT/05/iE4/z9E+844mZNJNT3/\nAW7x6yxqODzMWlrhRfUwBl+ptUMI2vved9lZI0aieUVv+w3xR95MNRT9mRjp\n/z/HWOquNtcheeWjgx4DMec+6E25ssPY5WMEru95ZeyD9cXoNXqEM/GZLUcu\nRZ13lymdbUE5AQXdX/bR90nAFg6AQZSf5UC4ftOW+6lNJ9ndkcrbMvhmqYRb\neF0REdbQKpGUPYA+IYuLnj9a40SIqmQ3wc08p4nVfs8VCMWfnfJEberqYwjc\nzRA2azI8CnnJ67xQE4hGVJkCxvZv+VrWMKQKiDsa60LULVKOtcHOhj8hVkuS\nN8ejzuIPZ9dAukgOpzXsurX0bOattTPsIFVmAzMeDYgU5nCjv03S6LdYVbjM\nAKDCoO8xKat5hzMSRBQD+YshplVuQwrTl4leAZkHHo+E2YHWp7HoM2pPZ2JT\n0oNe\r\n=hDgp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/spoof.js","husky":{"hooks":{"post-merge":"yarnhook","pre-commit":"yarn lint","post-rewrite":"yarnhook","post-checkout":"yarnhook"}},"types":"lib/spoof.d.ts","gitHead":"40ae9cbd0541be3f1100296e50d53d20e11d1989","scripts":{"lint":"yarn eslint --fix .","test":"exit 0","build":"tsc","prepare":"yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"_npmVersion":"6.14.8","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"14.15.0","dependencies":{"bezier-js":"^2.6.1"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^4.3.0","eslint":"7","yarnhook":"^0.4.5","typescript":"^4.0.5","puppeteer-core":"^5.4.1","@types/puppeteer":"^5.4.0","eslint-plugin-node":"11","eslint-plugin-import":"2","eslint-plugin-promise":"4","eslint-plugin-standard":"4","@typescript-eslint/parser":"^4.6.1","@typescript-eslint/eslint-plugin":"^4.6.1","eslint-config-standard-with-typescript":"^19.0.1"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.0.5_1604657347952_0.5114465210014387","host":"s3://npm-registry-packages"}},"1.0.6":{"name":"ghost-cursor","version":"1.0.6","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.0.6","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"dist":{"shasum":"244a34af09f774e35aab615d2812aab26ed6f13b","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.0.6.tgz","fileCount":8,"integrity":"sha512-S7Hp6PPUeD3jYrvbyhEDD3XDBsJrESRPRhcjvDlzOVHZDKIEUmhWYv2bII+uz3O8R8D5Oudtn+aM/C7FR5Y0nQ==","signatures":[{"sig":"MEUCIQCeUEkNOWVPTeyt2p7eEkX+Sn+btp9miqmbxY9jKHLa1wIgC3/aV+uE5q9jAGIkf0J4jJUqzHBnYKbZfIMWrW5+/rA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":30429,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfpYAVCRA9TVsSAnZWagAATwoP/0SZ2mJ9K8z5vKHBCZdO\n68coLvpRNhPYc6UodEgPQcPjO3GdzhKx/lVACdOnRMUTVMt21mK3cAmhBjXG\nayGm7x6XmENn9Cc18/iVm50r0jfQSM3NarO3i37Yz2cT8IMT2dDhw03t67Su\n00KgcXNacYj+n85TryCea3oyBatFe+kEbBJbfkD056x28DAdZfUF9ENuF+88\nZk7db/aeiTPN8bZxUNodY5YzwBc4CtMAOoiwhw0rsFryimaDNZ4cWmn74oth\nhxvwO5wU/Pqa8LRU+lbUBecB/C0YrjHGxzuNsaKqWfsjVmgAmE4Y2VIfMM6s\nqgHz/LuQWs2rPT+y3ZvpMsLWsyGOdsiHwdWVxXEKarMUReJ8QwfHAvOxUqs1\nC9n+nFrL3mKbqqpwWK2rszHirqKSR9FmzcLU/4sa8Euvgk7AM/5vq2e+1gj/\nS1qUDIsUSZuSAgdemXsa8nbGQ/Ys6lCta8ctu3b+Xnu6iVKvZN28z4Vi6Df5\n84HsNTHM/nfwkjY2CttfkHJmiwDlDv84Hy1Nanw378Rd33IF0VD/OcYfyjew\n/0zmOzYABqpvDNmGN5TkbiqVPo6NprOEsWtXbt5Nyziximv5CJ+lQajSm5UD\nnaZM7+nQDqGqeodPuGiiolD0fIBUyLQV6N+v5OEz8cqIHtN4h5dMCgAF3qFU\nY2ug\r\n=oCmt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/spoof.js","husky":{"hooks":{"post-merge":"yarnhook","pre-commit":"yarn lint","post-rewrite":"yarnhook","post-checkout":"yarnhook"}},"types":"lib/spoof.d.ts","gitHead":"7d223b1676b18aaae309e653ec82e5b62fd83c11","scripts":{"lint":"yarn eslint --fix .","test":"exit 0","build":"tsc","prepare":"yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"_npmVersion":"6.14.8","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"14.15.0","dependencies":{"bezier-js":"^2.6.1"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^4.3.0","eslint":"7","yarnhook":"^0.4.5","typescript":"^4.0.5","puppeteer-core":"^5.4.1","@types/puppeteer":"^5.4.0","eslint-plugin-node":"11","eslint-plugin-import":"2","eslint-plugin-promise":"4","eslint-plugin-standard":"4","@typescript-eslint/parser":"^4.6.1","@typescript-eslint/eslint-plugin":"^4.6.1","eslint-config-standard-with-typescript":"^19.0.1"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.0.6_1604681748724_0.9672750506641978","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"ghost-cursor","version":"1.1.0","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.1.0","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"dist":{"shasum":"2b7619239529bd37b43ac7c13a661bcd418919d3","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.1.0.tgz","fileCount":8,"integrity":"sha512-W2gfTxYpWvkmc72n1LLff6qF37Rr+fh33to/xzxktoItZOg9lSrblsyShzoza8THYOaC5B4F9b5xZhQxF23D9A==","signatures":[{"sig":"MEYCIQCoDLT+JEZ9kN7VIpSVJ40TFP+8J0WnFVMDZnPCs2V1HAIhAMXuLfzCdo7CgidJ7ij+LFmBTCAsJ6g4IBUw1sdqKNLb","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":37189,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf/anzCRA9TVsSAnZWagAA18kP/ixCVQhodzXZFtNqDSWp\nmRhgB0e4QU6aT8ZHNOxbnGiJlIlAvxHp06/F21vABPmGSSekjIeTj6iXS36c\naHC4AkQRrNxo9YYvxpGro80LXAGnHSOG4/96pfnglhET4FR8Yg+zKNCVYtLE\nUF5yKFd8iCYUoZPBjW5dF5UHKWHHRd9Jxx9oMEb3PO80WkXlDJT/BHzEmlGV\nnFrD+oB+5iF3ETKO6mDOkG09Ms1ob5BQwGrW1J2vEM0RQ0Pfq+eKIxYL1afk\nVCSuV7omRAxdt3UA+JorhvucyWwAKYOCjVd23GqlZOJOHGJQHilVkthacNGe\n2iOv3+Bs3sgYwdr8VImUUa8KWciVAgubPv+8zknO9weXBu9R5xPPdL3susjI\n4/PFlJdwbOnX339h8y/t39rOUD80BSpgMf9fuyV7C2M8wJdaPWwDbf0/0r3H\n3PWszu2fi8xY1LfcvOYUWguBeNmyyq1LqTdWj3RcnU4UyH+/nj7P07sQJbTe\nRTtISM9hJwikxWxMhImcg4IpyJbXYO59TENAR6FxU0ORpvQtX7E/Vys+Bj7o\nfDaWzFg144A1+cIeiFM+q6SGxWFctAKtDunaTn4qRC8ylcblNzkFpbhqtPcx\ntf2MOENDw7XnSCYw0u/0pD9/3DV9Gt6JFoGSHkjf38i89+93Ku1/3u2RC3PD\nvIzT\r\n=mW6Y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/spoof.js","husky":{"hooks":{"post-merge":"yarnhook","pre-commit":"yarn lint","post-rewrite":"yarnhook","post-checkout":"yarnhook"}},"types":"lib/spoof.d.ts","gitHead":"5be31dbb24c326017cfdb74e8b5c7777e8402658","scripts":{"lint":"yarn eslint --fix .","test":"exit 0","build":"tsc","prepare":"yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"_npmVersion":"6.14.8","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"14.15.1","dependencies":{"bezier-js":"^2.6.1"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^4.3.0","eslint":"7","yarnhook":"^0.4.5","typescript":"^4.0.5","puppeteer-core":"^5.4.1","@types/puppeteer":"^5.4.0","eslint-plugin-node":"11","eslint-plugin-import":"2","eslint-plugin-promise":"4","eslint-plugin-standard":"4","@typescript-eslint/parser":"^4.6.1","@typescript-eslint/eslint-plugin":"^4.6.1","eslint-config-standard-with-typescript":"^19.0.1"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.1.0_1610459635093_0.04674574813256349","host":"s3://npm-registry-packages"}},"1.1.1":{"name":"ghost-cursor","version":"1.1.1","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.1.1","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"dist":{"shasum":"d8f3e48c8d8c786967e36f0fea31332c4bdb43ef","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.1.1.tgz","fileCount":8,"integrity":"sha512-hA/6im/JlgMW6CuyxufqEmhzBm9O5lFIEGxirfWQawefVAXfTPALOs+zol6XpUzpaqv6R0fzeqzOJg3Wj5khgA==","signatures":[{"sig":"MEQCIG/j6EviAHot0dhx8OrSsjLz0rsVRneI7rpxYE8aiCbVAiAVZ9pxEs4SF+KNvjT6US1dDGCkmCuWAXz/eLhecB8XeA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":37267,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgDuRbCRA9TVsSAnZWagAAUD4QAJdCTmV5hLZKXwVCoUwb\nl8KkZqSQglP2yuJud0kbb6x5dLtsynyhEi+0g+F8sRIwc1gEY46PBHp9pYmf\nBi9li9gEDWlyujY7h+kC33d27PjwfOG5d4Lq0DSbg7wiCpCAgjf34Zul4A19\nAW85/4YErgLICj3DT5JByHADMqXUe+VQnPI4rc9TmCx37SeZaBGsGmKmY0lJ\n9NiOr0hI8Cx9gH0RKXgd3hmGk0fZilMfZE4Lq0/Htb//JiHwSFwJyigmq05+\njMqpet9yBp0eUBlqOlIuU/33DXZW8jcOr+WwxqvtGyibSkbWsdQ82rRGwu25\nxfMFU+mWQxHAVl7cChjv4sYMKWk52/OdOox5Fgj0ZEx69NTlg5waZq5mL+HA\nQLesFFRnt+zyRySUd07JZu033fkaypPCzvvMG/V26bPnwaYWuYpCPi42YK+o\nWCpXibfNTNlUMIuSHyv5+R/0Yb9LoMzYLQ/NJTOqfhmsS25lafH+RRpBJX2V\nTPVsPm3MFIOY3+kcZWCOQZOZdKo9wtKRzNLgwyBpoOWZLboLNrbT60GenN1r\ndvCwn2S8ciX6c+mDl4a3Ubk5LxIDHWo7I5wHgORQI8Cugk4pnBYTy1y7xwjz\nnPrc+tHi5mxuxPtJfwF5IAf1U2HSsmtLF5W9E3fK0lq+/9lbqlIjpV7okUer\nGOth\r\n=+QG/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/spoof.js","husky":{"hooks":{"post-merge":"yarnhook","pre-commit":"yarn lint","post-rewrite":"yarnhook","post-checkout":"yarnhook"}},"types":"lib/spoof.d.ts","gitHead":"bc6503d89e45cdeee499fb385101c2d4c2c92792","scripts":{"lint":"yarn eslint --fix .","test":"exit 0","build":"tsc","prepare":"yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"_npmVersion":"6.14.8","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"14.15.1","dependencies":{"bezier-js":"^2.6.1"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^4.3.0","eslint":"7","yarnhook":"^0.5.1","typescript":"^4.0.5","puppeteer-core":"^5.4.1","@types/puppeteer":"^5.4.0","eslint-plugin-node":"11","eslint-plugin-import":"2","eslint-plugin-promise":"4","eslint-plugin-standard":"5","@typescript-eslint/parser":"^4.6.1","@typescript-eslint/eslint-plugin":"^4.6.1","eslint-config-standard-with-typescript":"^19.0.1"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.1.1_1611588699387_0.39322122423403805","host":"s3://npm-registry-packages"}},"1.1.2":{"name":"ghost-cursor","version":"1.1.2","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.1.2","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"dist":{"shasum":"03759fee0f80337964bffafe526df8d3f31d2f59","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.1.2.tgz","fileCount":8,"integrity":"sha512-WJDkU12HxS2c9u9aeDMVXY/uYPklsvKZETfjGijkQJILMfOEi8fu6VTtYGBX2KCamzYQViFNS00Z7G5chbYr2w==","signatures":[{"sig":"MEQCICi5hPCeWD1TUE1AkBNyTOsEWS96fUVPwBTxq0ixoqDnAiB8/UGmo+CNPb7uJ7rByj5E1MPkhFSk/bbJoJUtPUAvCg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":37781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgMOQKCRA9TVsSAnZWagAAgOAQAJLwd7pd8usIFJ8ly/oV\nq38wtkl+WniWFMbxHsEBJrKzs0aU/HEWuIo+pTmduzlJfzVLAQ8W8C5Kd5Xc\noJVGHaAr38FX67XO1xpUPId7yJbvhNT18Ot2q0Z77G826Eyxlhga8+adeJH8\nH7k2oEGOqPqTb0j0i2zm6b1/0IBBk5e3cV51qORHEV7hcO9QL2fpsTBS0bHp\nxMl1OfzV5kmPDAOVNmovrMJKvjXzW1moA4TPfk4VyouT/yBnBefl7lu5nSjr\ntqFNmoEn0jtJ8xn+s+eRnLI6P5YfvKPrXkglOi9MboUTndtq7J3qojRXsWTv\nVt/N8v7Fc1IZH4OHCwnhcJGpbXkvbeTcypa/J53G5MUAPBWh/cZb+BIhDMEN\nwZn8uiHduj3nKmVxWpZUh9QzCi+b0ktqkY/o3PkcH7J53j8DgpFRz3X05NGI\nKXSKSNgCihseIi1j52dNPXq4nuYTINz+MKb3eYMvNyk2BA8YpjYE+8yHs3TZ\n8Xv2n5w/PeoD88rOY1u/7cZmdwV1tG6vsD2AHdBALE8E12rhx1MKdMo8xiN1\n1fYeK5UNXfl0q2m2gC6RTeKgjzUIDG6tYLdODcVTnJGs4B6RJf0N8wcJm7Zy\niTXnCcVYoQ0O+PhlSGWm7XKjBBKrM/omk5oAXnHZiaxW62xh8hmE1DTEdO3W\ntcFc\r\n=xH2L\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/spoof.js","husky":{"hooks":{"post-merge":"yarnhook","pre-commit":"yarn lint","post-rewrite":"yarnhook","post-checkout":"yarnhook"}},"types":"lib/spoof.d.ts","gitHead":"fb176c09662aa36651be5b85e2dc4959ea054ee0","scripts":{"lint":"yarn eslint --fix .","test":"exit 0","build":"tsc","prepare":"yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"_npmVersion":"6.14.11","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"14.15.5","dependencies":{"bezier-js":"^2.6.1"},"_hasShrinkwrap":false,"devDependencies":{"husky":"4","eslint":"7","yarnhook":"^0.5.1","typescript":"^4.0.5","@types/puppeteer":"^5.4.3","eslint-plugin-node":"11","eslint-plugin-import":"2","eslint-plugin-promise":"4","eslint-plugin-standard":"5","@typescript-eslint/parser":"^4.6.1","@typescript-eslint/eslint-plugin":"^4.6.1","eslint-config-standard-with-typescript":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.1.2_1613816841888_0.16865627026482288","host":"s3://npm-registry-packages"}},"1.1.3":{"name":"ghost-cursor","version":"1.1.3","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.1.3","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"dist":{"shasum":"d18ea78fc86c110e1ff5ba2385ede2b4e0fece23","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.1.3.tgz","fileCount":8,"integrity":"sha512-c9Uca+5581+g3vdF0GfR0w1bmOMqi04aQjs+47nlVMkNG2lPwFHOio3BX6dWjJkqW42DmIl1LkEm0K1pUk2Tzw==","signatures":[{"sig":"MEQCIGrBZ/L6uPYwMWSr0R2Xk/iErerqHpbXF76/lAomnpF1AiBEUwFduF1ls9lEePbd8L+S5AZiCmEcx14cJJCshHVIcw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":37788,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgM5TGCRA9TVsSAnZWagAAVTkQAILj7pW5RPbjozK7Ecd8\nvmSF5VOZywb19bPjEaR9YNxEhyvsShzEAm3gc6mEnm911Y8NYgPtTFVSRo3x\nVtrs1pGTQrzL7J4rAXebZbrY/dpy/LpO+Km6eXSKuFQPD7Twno4QX74gXRgq\nX8M1skgh8V4Sq6MDuCbroKH+pagzOzXF9v+57VF9aqFeERyzxKCRza/9Oopg\nBdATlzBwNERg/MF5/77NEToCSOdMy5T6+MdPZpSvYxA8mYwTQ++R0SJ1wVQ3\nDZUip84b27ReNFKH9MuuiMmP0otsIQ9waroSwbkVx8DdEqQCSmyUFOqkTPNi\nQ0Z6yLGVfkRcAB4J8pzU5gZ29UGVtuv/NshTrXesPPx4utAYU08ZO/jtPPmP\neuLGwbxF9lg93dIbBg75C8OFr28H51KoiNzY9RfvfgPKUjTwvRbRozPWCIM8\n3qvQnffDzZ1uKZxqH1Z5ywAaZwxOAJTf7JBwWRdreZMuaQbKJSAc2kiJllZu\n3YsxqqNaHv2iCNNPFHBd48Z0QLupyVztq615innl5/CJwBG6MhH9S3E98g0a\n5jqQqHOdc/9SbAp7TllJ8jTynb0aQ18zO9jFj1Q4yNiRrycgWq4mVpf5rctW\nU00bdFd8VBj2+sPKqHAtoSOWmGJYx7GWXfHRSF1vLgFAPDG5iie9ltp7GQGi\n2Ld6\r\n=cOvR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/spoof.js","husky":{"hooks":{"post-merge":"yarnhook","pre-commit":"yarn lint","post-rewrite":"yarnhook","post-checkout":"yarnhook"}},"types":"lib/spoof.d.ts","gitHead":"be0080487089e5c182248e7a11817d0a431c1e60","scripts":{"lint":"yarn eslint --fix .","test":"exit 0","build":"tsc","prepare":"yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"_npmVersion":"6.14.11","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"14.15.5","dependencies":{"bezier-js":"^2.6.1"},"_hasShrinkwrap":false,"devDependencies":{"husky":"4","eslint":"7","yarnhook":"^0.5.1","typescript":"^4.0.5","@types/puppeteer":"^5.4.3","eslint-plugin-node":"11","eslint-plugin-import":"2","eslint-plugin-promise":"4","eslint-plugin-standard":"5","@typescript-eslint/parser":"^4.6.1","@typescript-eslint/eslint-plugin":"^4.6.1","eslint-config-standard-with-typescript":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.1.3_1613993158111_0.3214446472742898","host":"s3://npm-registry-packages"}},"1.1.4":{"name":"ghost-cursor","version":"1.1.4","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.1.4","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"dist":{"shasum":"b5bb119cb62f26ec79e741b65527f20a4b56d5d2","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.1.4.tgz","fileCount":8,"integrity":"sha512-Ghr3QSmQxfKyuRFQWp091NMYfJn/acweBjM+52OvIym4XLxmdYtv6pB3fsX5/9Lv2tORnNLE4GO/pz4LJPhDxg==","signatures":[{"sig":"MEQCICGxc52cyEnUFgEw/JPS/KpC/M+R6LuNmPz0nNu3m21vAiBQW1Q0ecHwtgfNvF70G083qi1PQRGG3dvtYbteF15Q7w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":38264,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgNKt+CRA9TVsSAnZWagAAyaIP/3hdKr2k4tdEMb+CcFI4\ngqrd6nKYftVs1QOBq79AG0I7qd/3hKOh+wan4udNOAvPqMuH9OwfYnwkBMNN\naq8S55OvadNNpNzi2Je4lFZS7/FoI87us8o4TU0MBMWdv17ZgKl4R1bBcxbL\ntJG3evPNFFw4/83+40H1Cq09q2mmPXP7/acRJ29I/AJ9LlQWzWIAup4SXvBc\nvPG+iFYkmw6E0V64+PiNaObKsNJjvZu1l0NaMIBXtuAdyT7hhMxKWHtlybkS\nGmSnsB0Os8a9HTsN+Y+OTC8WhkVB9IIuyGXfsR/Oz0Zacch5ewEVD+No+sZK\nuyxQRJx6Ts1RM5qqMOAIWwCHpNNeZ/YJLs56BA1b2m2pcekC2Q9pj+Hu0WPc\nQ5CchFSKEwFO9ejqbZwSjScgG4LfuLTa9p3wazi6woiI/RqgL3af1VnG8KIg\nLdTMZu1/xQvfu/+79RXiFP29IQOrRgKHlrLmYXKZQJ7sOStVk89u+vF6drKM\nEvQaITD1UOB+KS/e2uFgY8uZAfqIDpAH4dOvuFRa4ktusYq8yeQNcw/JCMhI\nq/a7nVNL3TWD5TYKsW6AlzM04o1PSjEdnt/ZaUAT9pI3vTyuKS65fMIYlRb0\n65flCRI4oBqaJxCrAXajOYWF+FeBYDHtzCe+DeLkHptna54k58hvy+e7RYUx\nnpet\r\n=JsJX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/spoof.js","husky":{"hooks":{"post-merge":"yarnhook","pre-commit":"yarn lint","post-rewrite":"yarnhook","post-checkout":"yarnhook"}},"types":"lib/spoof.d.ts","gitHead":"a0f2dc26d1be776a3adfa0a1a79a668e00a800e0","scripts":{"lint":"yarn eslint --fix .","test":"exit 0","build":"tsc","prepare":"yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"_npmVersion":"6.14.11","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"14.15.5","dependencies":{"bezier-js":"^2.6.1"},"_hasShrinkwrap":false,"devDependencies":{"husky":"4","eslint":"7","yarnhook":"^0.5.1","typescript":"^4.0.5","@types/puppeteer":"^5.4.3","eslint-plugin-node":"11","eslint-plugin-import":"2","eslint-plugin-promise":"4","eslint-plugin-standard":"5","@typescript-eslint/parser":"^4.6.1","@typescript-eslint/eslint-plugin":"^4.6.1","eslint-config-standard-with-typescript":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.1.4_1614064510108_0.402035188008778","host":"s3://npm-registry-packages"}},"1.1.5":{"name":"ghost-cursor","version":"1.1.5","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.1.5","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"dist":{"shasum":"bda1e2d97187e2c0fa312543ae72fb34126736d5","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.1.5.tgz","fileCount":8,"integrity":"sha512-p0PKpj/ELiqkheHAYWgKk4vz8rnsNjfhDoS8K7FSwhyFkWCbXJ2TmazJfYvqXkTxlg8EsfQvAyitnbxBmLTtQg==","signatures":[{"sig":"MEUCIAXUUYBVXKiZwlT3632soH2lsS8zoktO0L+e7xrN5xK9AiEAzdcMHhoMWEkIAwggFJY2w09J1T22mob+DUS9BpVKUFQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40611,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgShR1CRA9TVsSAnZWagAAWyMQAIeIAVtoWADNxVzQa2pi\nESA3befN3mJXbBtlkTvDh5ctzACwZaVpUcP4j9AMetk2QxsWVZ+pIEy9XppC\nCUrCwETEAsBtbWCBBM74Q6KvFE0vO7edAzT2Sxts2inI32sGf7Aj3yiDBQdC\nM5mD4md53P8ULO9hw2AIgxuk/J3LdBbUJLqPzWXVnMZm9DTjQNTBXKtksTjp\nEIeUApy9ASqo0QDBKa2CwY8RU0QvYiV7NAhuc7AIyQEt/Dds/j5jNtf1pEDL\ndcC1ryVdC6rP6B2D1Xtat1zYCoazdpd7OV8sS0jk2ENk91P1GepF/kShSwVS\nxYU0t+DC7f7wvuz5RN1euyyAkL0hhCLd67l+Tobu4JKj8nIlx3lEinr6v0WA\nMNVVcmkSdZculueYVAOM8NjXTGJAFgI0R0UL/+TpYUjapx3df6pWEPfLntvC\nSZykVxyrmpH1cRWTXpwfbMDwYQuXlT1zAf/7Y+9pxw4q+Z/A3AP4O4ysKxjv\nETHcv+BF1FTS7zjJscU7OPDczut14vaEcuXV9mmV5RaY27l5G8tCRi+7TZTz\nVEPoDRzZMdorpXjZVndRkWOKq+IHjxtgmGCmyzgvzZ87N0oroTOFSrO5y2V0\no1+VkBkOdrtWN5QZgAdVMdC5hC7CDAk6ut7BuAQhJznlYYyOeES+vgyH1E+V\nMaua\r\n=clyD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/spoof.js","husky":{"hooks":{"post-merge":"yarnhook","pre-commit":"yarn lint","post-rewrite":"yarnhook","post-checkout":"yarnhook"}},"types":"lib/spoof.d.ts","gitHead":"ab56eacfd482a5a655b6005636a7b2ecaef9adc5","scripts":{"lint":"yarn eslint --fix .","test":"exit 0","build":"tsc","prepare":"yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"_npmVersion":"6.14.11","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"14.16.0","dependencies":{"bezier-js":"^2.6.1"},"_hasShrinkwrap":false,"devDependencies":{"husky":"4","eslint":"7","yarnhook":"^0.5.1","typescript":"^4.0.5","@types/puppeteer":"^5.4.3","eslint-plugin-node":"11","eslint-plugin-import":"2","eslint-plugin-promise":"4","eslint-plugin-standard":"5","@typescript-eslint/parser":"^4.6.1","@typescript-eslint/eslint-plugin":"^4.6.1","eslint-config-standard-with-typescript":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.1.5_1615467636545_0.3910504863499742","host":"s3://npm-registry-packages"}},"1.1.6":{"name":"ghost-cursor","version":"1.1.6","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.1.6","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"dist":{"shasum":"3b6de766ec48ddcffb3fa45310f1f93bf80841e0","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.1.6.tgz","fileCount":9,"integrity":"sha512-8f4RLNtSEIaiVgvf26dW2tSPb5+imwWzKm+maXQi9rzLiTp2zTP++BA6oz+w6rjpjo0GcEMH6Wu/G+7Yv/w6/g==","signatures":[{"sig":"MEUCICMx7ImjKT1ryoROumEaeqSWlnz0cn0U0bsWNa7rZEP7AiEAkWSG+9elbNBvpCH3XBlkYyl6W5hSZc3cuuqBVYHonGg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41723,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3fjnCRA9TVsSAnZWagAA2s4P/2/MH6UYz/zfWsOejGLW\nLGFu6X4p4r7fnoCAEp9C4RIiWAenHCd4oaJh1jCaqpwxqeghKWWNKKdHFrTm\nIPcvDTRkCfu3wX6R4DVpyX/DeRb+BlShfUnXygrV42DMFx4GizMuWlDgbf/O\nvfInnNb6upxGtnDXm5Ub07+kxoV+Mh5cWzZCTwhlcJtIK/9l90AFkf2RrQVd\nuv8cMoQ8h9BV5faTmWBTccdSCNIGFEBbik+rr6Alk344VhhOm7kpzf7Xg0A2\na9csxJYdUlPDqaglKQhpO97UY3x2Neik68CmFVVnHH26Ryob/OnfpgE08Xa6\nwnoRK0j3eT/h/qtzc9/P8VUBQ+iVU9GaymTnGqdWu6wKqBDEg+Aqp+UHn/oh\nHvCuIUlZDrl9A81W4cvT8pGVnhwaDdxKYO4Zo5GohGevq3OPs+erqU6H9hhv\nW8Jfj0FiZG+gfNbhF2YLyTSzvJVoVBwrVvwfH1RckwaTKK6OWeh9/KW3YAPu\nIT4UO3yuiqYZ96P9R9xQ3QvnrOR7+rQnwD9di3bGbOE/fhJuUN9dkQgvNjgM\no57ZNcvzlwAbHhVzgtIszuu4hLVIOS3+8tbmFJP3VFtelxBU4UAIgfQuz5jp\nN4oQoKwqWSpJufQahEJ2SIZXuB/M9BgEv3FvWn/VOMgIzzyCWVYTlTlcGizy\nG/eJ\r\n=WUYK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/spoof.js","husky":{"hooks":{"post-merge":"yarnhook","pre-commit":"yarn lint","post-rewrite":"yarnhook","post-checkout":"yarnhook"}},"types":"lib/spoof.d.ts","gitHead":"b64ccf26cb72d46c32910a11bb26532a5db6ac1e","scripts":{"lint":"yarn eslint --fix .","test":"exit 0","build":"tsc","prepare":"yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"_npmVersion":"7.18.1","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"16.4.0","dependencies":{"bezier-js":"^2.6.1"},"_hasShrinkwrap":false,"devDependencies":{"husky":"4","eslint":"7","yarnhook":"^0.5.1","puppeteer":"^10.1.0","typescript":"^4.0.5","eslint-plugin-node":"11","eslint-plugin-import":"2","eslint-plugin-promise":"5","eslint-plugin-standard":"5","@typescript-eslint/parser":"^4.6.1","@typescript-eslint/eslint-plugin":"^4.6.1","eslint-config-standard-with-typescript":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.1.6_1625159910937_0.5993020424922602","host":"s3://npm-registry-packages"}},"1.1.7":{"name":"ghost-cursor","version":"1.1.7","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.1.7","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"homepage":"https://github.com/Xetera/ghost-cursor#readme","bugs":{"url":"https://github.com/Xetera/ghost-cursor/issues"},"dist":{"shasum":"c00102e6108237e0efa7e808d16e1ad2f0780b73","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.1.7.tgz","fileCount":9,"integrity":"sha512-IpdtYLI8SaBDKbukJIgXOCWxj0YsJvLq3j1WSNmWPrlsha+5N14JaxtmLvBRmPjOT7/tcDeAznaKO6g82rVW0A==","signatures":[{"sig":"MEYCIQChXd90AE6sB/AtcpLXfDGUN5qltbbOoOmVr/XsUAns4AIhAOVttSAQ43Z+9MC+DxYInf32x3jJM4nze5pwQJyEe3SC","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41685,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhpfbHCRA9TVsSAnZWagAAfSEP/jsyZwZJ4G+Ja9rnLMW0\nN4af8vm/BKlEkXtfpY08YQp4lim9gTIcuOPpoH/bb7ebgAdjmFJBYzHgaVM6\nzs3a5E6aZCb+iRbls0pFG3Jv0YXLmeADNEixeip1BYqIStRL19oC+q5W9kFT\nXfGx+2eZ7ld2yzoHR0N95d8vUqnMpNlCxh3nC3lE59O5yL+qrX71qdJEgKv7\nuW9pMCX+8E5YGphmCnZK2nr+IlBWMY81JOU04VVuMQWpquou8f5uMOIftgoI\n6DBQ6sRrUp0932F3mhHA1W6n372hlmoNNkr6YUNKtF1vjdbSakVB7/93lOg/\ng+rFjagNdg7XP6na8eWtm8Iju5aT0VLhatiNBt7bfGidKXHT4CeAc+PZadsx\nsLewN8dIr4da5JHNDkeJEmzlLx0W1uT7rNcSOgagzfBK2wTngaRDxfJCvq9j\n0rFmbBYmDMLE78C3wKKzKdYeCdfgNr291wi/zqX0LzgQFnlLq8J3OACQI3MD\nd+ZBp3lJzbOunl75iKhC2KRhpLGrE+dvDePVsIq4bo3V0q9GR0mlDLecBk2x\n7ROoerMFXwlw96GjfEnPK7qwkecA/LtMB1zRpz3ekEir/R8I4lG99qFBc4kW\nB4jBMdPEFgCQuS5F3uEvBWmtMiFYGMNlffexEBxHukWz9OjYO1lh3ygXMpG5\nMvzW\r\n=05GS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/spoof.js","types":"lib/spoof.d.ts","gitHead":"3fdf655fde57849386aa5eb89e203de3ac0e33cc","scripts":{"lint":"yarn ts-standard --fix","test":"exit 0","build":"tsc","prepare":"husky install && yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"repository":{"url":"git+https://github.com/Xetera/ghost-cursor.git","type":"git"},"_npmVersion":"8.1.0","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"16.13.0","dependencies":{"bezier-js":"^2.6.1"},"_hasShrinkwrap":false,"devDependencies":{"husky":"7","puppeteer":"12","typescript":"4","ts-standard":"11"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.1.7_1638266567070_0.7536992977620898","host":"s3://npm-registry-packages"}},"1.1.8":{"name":"ghost-cursor","version":"1.1.8","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.1.8","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"homepage":"https://github.com/Xetera/ghost-cursor#readme","bugs":{"url":"https://github.com/Xetera/ghost-cursor/issues"},"dist":{"shasum":"053bbf6e52ac33474e51b1c38e82a8a6635c6e8a","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.1.8.tgz","fileCount":9,"integrity":"sha512-+tir6Dc/wVQ4TAOC8Ip0r860GC1jVfG84rQLOZvZ7xOHjSCaiS8HWNr/24FhmvKNfUN6/CB6LPoys0pAPFxhsA==","signatures":[{"sig":"MEQCIApGelXx6UWiey8WJUm6YUKREO/FsPcK29kobIvoxYQZAiA3FAwCHVMQ9CzdD8nyVWb63UZGrcW6G10Zj9Yf7A01Uw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41685,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhwvy0CRA9TVsSAnZWagAAtjoP/1vyvGW1DXa+8xyyz4X+\n0kw3q+KXQuXwJDjTIRc3e1wokN1BnjrUgiummMJT6CGcH6xJDKjl8xRyxuTh\nk9AGL6J25B5sU2S3lHF+ccZszex3a2qykNEDFC2GZPzTv3fyJL9K4zEOOa2B\neUDvfASjlZ8WiRl1nyTkYhESNYuUXF+fzYNoS/aJYF8Z1B8MjseEhTJ71R3C\nnb61RddDtzLwHmfA0WAs5qvi1nhaL1nO6WLuJXreHy9lL3Dn/pJIB3q/WWBu\n8xD6Zl7koABnGZaCuD9pQqr8vcr9Em9BiBaWZvCSU26K+2xluw/9reYyZDfI\nqIEv71mKyba91BnQct7VkROLUGTw8fulK6nVEUCdChmAE9MejJDa0VFgbCl8\nafLEYIrj4PAG+9nGzLkwxM+S8JcDb48+YRzMV+4CL83rirN6jSfKxJ3tYacr\nDKnPwn/wVJkeYpD7iHV51SNB27lLjlPDXamuDPAs6Bf3lMhM+cWuk6afwm/Z\nC9wCVV0eEBzGfXhSPPbUlbneVDcNDiB0xhlIZamhwwUmJ9h1MKfH74SFfiR6\n1oqZ3UH/oCePxrnrj76fY8TTegILrKbqNmOOhtFw09QIk6/QGGsvUhkCXbUF\nR3mdJZtFMhXzxRV2tTMWZwr6v5JqQJg2UNXXAWRsLrGYWmPgHdLPlcxil/28\nzk0k\r\n=JTwD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/spoof.js","types":"lib/spoof.d.ts","gitHead":"8f25d914c1823f661318e0c76a0f7f688a946568","scripts":{"lint":"yarn ts-standard --fix","test":"exit 0","build":"tsc","prepare":"husky install && yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"repository":{"url":"git+https://github.com/Xetera/ghost-cursor.git","type":"git"},"_npmVersion":"8.1.2","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"16.13.1","dependencies":{"bezier-js":"^2.6.1"},"_hasShrinkwrap":false,"devDependencies":{"husky":"7","puppeteer":"13","typescript":"4","ts-standard":"11"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.1.8_1640168628571_0.3755958098542236","host":"s3://npm-registry-packages"}},"1.1.9":{"name":"ghost-cursor","version":"1.1.9","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.1.9","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"homepage":"https://github.com/Xetera/ghost-cursor#readme","bugs":{"url":"https://github.com/Xetera/ghost-cursor/issues"},"dist":{"shasum":"12ad8bbc6b404e8ea12d5b425273a713e99da20d","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.1.9.tgz","fileCount":9,"integrity":"sha512-FuImtbV93gbhD7NugMriFbzQg+SXlGQP87LF9jjSIpuU/jONd1OljrqdNYe+CXAIwROmuWQjN9ZHZyBZkLgqAw==","signatures":[{"sig":"MEYCIQCNjb+fuHb5IY0h4HcqGyrHZjzlH+Mdgcqlx+PL4XmaSQIhANF0xuQzqmSdS6xlZ13hekakfrWj1+fTdj9DSWQ56Fim","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41706,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiMHGaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmohNBAAgESrQDBkI4EL1ENeu9L/STrlrL70Muie9eyuXeCPw0qsuGO/\r\nffEx4ns3lG+dmWp+Qv1yUM1mUIlLZjEZGqbBmptpEDvVUU18n4tRtygHouYi\r\nAqe6ZEE+QI/T65CJrq+iXTJtoDv1/cMNQG4Xq9glfv0FXZHro9xTFf3eGZ10\r\nxtQx97hNzJfj1r/yBN9Kavo/9vph75sudrYlDp3+WAXR4tZtGXmnK0RdLeRW\r\nf6j4eqicD6DWGw3ULPSiX5pi+hsFQr408kS2W72D9y7y+FhYEt4u2sRiUBVh\r\nbedx54VFsCt+5MP9Z29uuN/aS6hQadSlWvY2RdirzEoPavqGizPwtAUeRyV+\r\nhuPkXHlyFfk5MgeSo3rdjMX8LwDq895Am/0TiCyvqvb5292xAa9kAumC9/Ys\r\nbBSTTncFaJ5AxlNkmOdLlFlUpb1WBJHWetNtPcyRqPUBpDO/8drmL0eca0aE\r\nunL8AJ+d2dfv3FomF6icMCdu7Rp+6ZKNJ/PP7gDy01Ka6mUiXO6gvIhIS+nB\r\nAjoEmtJfeS1yVonKlkv5jHb0EMdrHtKND68ffugnbCLU6eJi/1A3tdYsmga6\r\nR/T/nFDTGzXKEERbJGPZjYcHklNfTdfEo9RCR1rzZpXbD85yIvfQuQzPXGRb\r\nku8JbuQSeUdJwu9F0OC+e8wPOWKdHJOyZ7s=\r\n=je2R\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/spoof.js","types":"lib/spoof.d.ts","gitHead":"fd61a6bb26108b325c124738d66558fc56af5017","scripts":{"lint":"yarn ts-standard --fix","test":"exit 0","build":"tsc","prepare":"husky install && yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"repository":{"url":"git+https://github.com/Xetera/ghost-cursor.git","type":"git"},"_npmVersion":"8.3.1","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"16.14.0","dependencies":{"bezier-js":"^6"},"_hasShrinkwrap":false,"devDependencies":{"husky":"7","puppeteer":"13","typescript":"4","ts-standard":"11"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.1.9_1647341978597_0.2070308335147817","host":"s3://npm-registry-packages"}},"1.1.10":{"name":"ghost-cursor","version":"1.1.10","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.1.10","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"homepage":"https://github.com/Xetera/ghost-cursor#readme","bugs":{"url":"https://github.com/Xetera/ghost-cursor/issues"},"dist":{"shasum":"bba78fb3a3394268ccf97df13d84a9d2d0929963","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.1.10.tgz","fileCount":9,"integrity":"sha512-wHy+ar+/ddxdQV6U2jv/lB9TCoiZR4a4Hk/uVC1oXYea+MWfISJyb9es54EH1aHFTwRDiHerz/BerOjpGmw8Ag==","signatures":[{"sig":"MEQCIHzHT8Zg8L20trNQFqcxoDxbGFRxQ04nDpIWnF1GYGGOAiBFHn8/LuXWtA/+7WQxmo//nFVM9voOFKU4ZT2s0RU2pA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41772,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiMJGoACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo/oQ//dxtx+P+FY7yqFR0il/3XHE/57SQ62tlooI62hBuW1P6calXY\r\ngQa2eLVDdeHLlpjhEZ1w7YwktmSc55gWeGvUzvfr+5RjqDqZt4kFupWrksM8\r\n6uyLNCC+4OrVmQ0OGT5STy04lyP2VgQxrimdtScLzks/aVRPpJVkM5stFvAA\r\n6C4DJ4rHNvU/qDs+uYuJUKfp4AKU+lfIeotU/BHKFr3mOdKjrCrdg14F4Vkk\r\njDAcRlmA7a0WtJ8+a3x5qX2SKtCuqvdauoZqroyz0bU2FeO7971f5Mva9hfD\r\nyUnDETlAjX5OnuV82LT8G5M3oyCoP1BX4q0D2GQhSPbJ+j7O+XmTOPEzfaPq\r\nE+T220Tt5ZkoxAwLqfJC0S2zLHFTaoABta0SZvxzCqw2G5hJHwPk0VpZ95Ef\r\n+n6YcrVq8JbQTKuY62cW6o/LZz3Op8h8C8wbgruSYTZCvu9/TU8QkHM+tvOY\r\nKRx9piQd+Ed7lIlArQ7OsLZggZLMANosHlyHxpNC+N40bR5eShjBiBOyKYlz\r\nQybieNCq3KOn4y/UzB+FePiRGx9FaTP/JKBOKg6wxUStfAmnxziwH67XhOV5\r\n5OQsRIhfNVFW448QpHnYy299qBL5hncInU+n+LgtOnaimRGq2a+i83rFBLu1\r\n8n9gdbuAk1NwsX19ZKEM00++uFlrjfzUH40=\r\n=Ok5v\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/spoof.js","types":"lib/spoof.d.ts","gitHead":"127c762d554ac1a05c598a078fd97f40cb4a1677","scripts":{"lint":"yarn ts-standard --fix","test":"exit 0","build":"tsc","prepare":"husky install && yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"repository":{"url":"git+https://github.com/Xetera/ghost-cursor.git","type":"git"},"_npmVersion":"8.3.1","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"16.14.0","dependencies":{"bezier-js":"^6"},"_hasShrinkwrap":false,"devDependencies":{"husky":"7","puppeteer":"13","typescript":"4","ts-standard":"11","@types/bezier-js":"4"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.1.10_1647350183984_0.8340963324899822","host":"s3://npm-registry-packages"}},"1.1.11":{"name":"ghost-cursor","version":"1.1.11","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.1.11","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"homepage":"https://github.com/Xetera/ghost-cursor#readme","bugs":{"url":"https://github.com/Xetera/ghost-cursor/issues"},"dist":{"shasum":"0bc65d77a69f789b1bdad3a43eda8a3fc2bfdc20","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.1.11.tgz","fileCount":9,"integrity":"sha512-FK7lAKlB8XLJ5wGDzCNvfTA/UYpDzbSm/jQXNIfY/cFhnEwQ3rVANMI0j2QTA/SObXVqRFKGmOOI1n31t1SoSQ==","signatures":[{"sig":"MEUCIBOr4tjkMc0+WWYJ+oay6pz/9CN84y4jtQ4RmtrNQwu6AiEA5K3MyfHrLGoPdWlBHUdVIXNVOoVgFC1kDbKLUSTArGY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41760,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJikgXWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrzQhAAguR//I2S5Rq1BNN7vZw2e5gi2gD0ZHOlgf9vl+aCb1qZYn+A\r\n+bc9OKgbSLyc4diPMdb2uYtT0lCTgWu5woKteInrB2EfnpO1d+yPuny34dKw\r\n5mXaWJX9GLyC7xy6urH/qDMj7c7Jmom4PoUBpguXWVKHgkII51eKIbAvTP6w\r\n8BbWDzbZ1AtkU2GVu+hXYAaSnZvv7KQCDomjeuc91ye5zBhXzpfT/ekAOTpl\r\nuauLyU/giFB2jRQgV5AN3ANQMsueoMm09aeTK0mQa3FfjpEbW3qLk0utRGVk\r\nQI4YqGv+kBih3iRA7uFY2oax69b4+HXLO7DuHUCl9zy70+9v5/YEr+JdzJHg\r\nJNuFoNKHWQ3BnBgaGs2jyvwWcPOH+KU9N3AvL0kjXfiyf7NqSleV8u4zEfrC\r\n0eY9xWonsi1ZsQxJeSIo1miN0nIag7QWNHY+kyeXADtkSJPXo9De5P4Pk/c1\r\ndaQingi50Om5q3MP0RGC0zk6mNiHcLCQKq2HfT8kR4rqSHewGt1+lSXiARMe\r\ntWtwn/ZUgZoHKfHgEhXz/+Y1MR66ZfnJ/RSH8fkYz9Ka935c7HJt2sSfKktA\r\nIv+LxeojyvkaAlURpqrizt+gmegKzQzCZNwDRfffDgJSNP7uyK2bLyCcMxwm\r\n23+2rgxhvWuoQJjsCekWSEn1XjdODIMr+rs=\r\n=+/in\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/spoof.js","types":"lib/spoof.d.ts","gitHead":"6d7998b96446077d0a0ff3b295b8c9776b400715","scripts":{"lint":"yarn ts-standard --fix","test":"exit 0","build":"tsc","prepare":"husky install && yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"repository":{"url":"git+https://github.com/Xetera/ghost-cursor.git","type":"git"},"_npmVersion":"8.5.5","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"16.15.0","dependencies":{"bezier-js":"^6","@types/bezier-js":"4"},"_hasShrinkwrap":false,"devDependencies":{"husky":"8","puppeteer":"14","typescript":"4","ts-standard":"11"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.1.11_1653736917792_0.362948758908223","host":"s3://npm-registry-packages"}},"1.1.13":{"name":"ghost-cursor","version":"1.1.13","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.1.13","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"homepage":"https://github.com/Xetera/ghost-cursor#readme","bugs":{"url":"https://github.com/Xetera/ghost-cursor/issues"},"dist":{"shasum":"3e49d52bf9bec1f719a39b83719c3c0e6d670e16","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.1.13.tgz","fileCount":11,"integrity":"sha512-CQMnBJwx8pxu3qxKdCNsT7jdAb2mU15vOMvOlp0sw6tAWaS2gt0cjyH0DIm5e4oSC9Toc0VgHv2OfDkJ8OLrsg==","signatures":[{"sig":"MEQCIGfdVH1vcPWyRlLRAR0Nls7Y2vjfRpJB7oQizC0YRfNZAiAHTRcItYFFDyHyfAimoKvyZHC70mvwwS2hoOD5Jy2TqQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50530,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiwpN3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoRQQ//TPqeLlB6MnGM5P4+aZ8aEBr222inivE0HHzW9aLyapFBhBgB\r\nfSNOn09osysxK8HAW5joHqmbzBsyC9CnyIIi1KZGV1cFNZhYUIEugIYTVnsW\r\nGJKQRM6F9UUAQwYPSv6Szvog7DjX8QmDZiOVnlPoyiL1E10OCrSEdDrmFmHc\r\n4H3TZ2ENskt9M679/pQEkyEfH946b9WMb3idfGkCvJ7B2fIUCmN+j7WkOILQ\r\n9wfKFInBxAB5sJ9b35Y0xumaOwN6b8hf1wspW6MBwFMxDh2cOTGUHUUS4s6P\r\nbSDxiV31xTnu+krLcUJ5Gh6Ob00Xss7sUbX+830Yayky+8zRA/+TGekMzaQ4\r\nqna70e29xUfuNMd14W4L9hpee6MCliPpzzatkF8g8lKNde9qiZ/2zqSx//9v\r\np7Dksj5jXYcgzLv7L8Gt4voPDYuRNlokpW+11eJDJSMQIijWKhlEGem4T32x\r\nL2YaGzUpy56LYCZrpdkV8HQaGPv7mzNdCGc4pJRDdFxq/BIJRmelAC2Z9nG8\r\nzwQGTpxqJBs7KDvZlocmWDOU7MevkY3ree1cYG/1MQ1H9cUF03ndQEHBg1FD\r\ntZdTYcBZuSueo4wqxU4V48VTuprLhfk9LSSaa61uL5wb0P62MXfSgNBeOhS+\r\nXniBW/LSt8alxoeU/C36sFxKKaNHgMpn5hs=\r\n=Vimn\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"jest-puppeteer","verbose":true,"reporters":["default","github-actions"],"transform":{"^.+\\.(t|j)sx?$":"@swc/jest"},"modulePathIgnorePatterns":["./lib","./src/test.ts"]},"main":"lib/spoof.js","types":"lib/spoof.d.ts","gitHead":"41313fbdcb79d1db47ed4ec51d8e6e2eacba5fde","scripts":{"lint":"yarn ts-standard --fix","test":"jest","build":"tsc","prepare":"husky install && yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"repository":{"url":"git+https://github.com/Xetera/ghost-cursor.git","type":"git"},"_npmVersion":"8.11.0","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"16.15.1","dependencies":{"bezier-js":"^6","@types/bezier-js":"4"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^28.1.0","husky":"8","@swc/core":"^1.2.194","@swc/jest":"^0.2.21","puppeteer":"15","typescript":"4","@types/jest":"28","ts-standard":"11","jest-puppeteer":"^6.1.0"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.1.13_1656918903526_0.8139469972080544","host":"s3://npm-registry-packages"}},"1.1.14":{"name":"ghost-cursor","version":"1.1.14","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.1.14","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"homepage":"https://github.com/Xetera/ghost-cursor#readme","bugs":{"url":"https://github.com/Xetera/ghost-cursor/issues"},"dist":{"shasum":"b1d208fad677df725340da412ee4398327e84165","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.1.14.tgz","fileCount":11,"integrity":"sha512-BiUhdefEQwY20dxY0dUQZ5EfXQQ3rKJhEe6ZCyYjyObU3yl/3tLasC+bED8ib1kDANdbiPYjlmfcTCKEXIJkWw==","signatures":[{"sig":"MEUCIQCGhRUJF1LbocqK1+Jln0jESsXhfp4agEGjM8n4K0LeoAIgaDDBWimoP7gHoK5a0CacjT2IU8RM2jcy36zw0Dsvu/s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49826,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjDh7FACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrppw/+KhyrCLhF90HJjDchuJM2id9+I+Uz15MY8WlARewjRm5u9C3L\r\nWsOQylrJea+cqmPyuoC9wqZJokpmSNJWepCZbLzJDJYoZNgUJQsZ6AIlMfX6\r\nsO3eRevykja8oByjUDVXJU0cTqovwQfJtgink84mYiRElOcpyJySoz3Nj0c3\r\nHOfLL5Gntgni2zuJBnPmFivACTIWXJVCKTVrusuuBx1Y+wWhwHvBsZoTBp8O\r\nJ3PbRNAMzwsMZPygem+zCxFdfBdj+wCfbCMYGVAKJBb18EoiMZ3NK/S0k2Dp\r\ncsNdRXWH5Y4MrAGgypwEt83akIu3ipgGApvNiUyaYg3dBQR7fgpnYmSWE17v\r\nVSr8tSR9aVOXCQATwJQZ8nGinRKLp6AdxzWjIfhw7gl6Gb3OvSAKzcww1XZs\r\nVnY5urYbvTBImmuDwvOG/VcaJus4nResUmFdPEdNfBJAn3/RELfLaJf69lMD\r\n6kaSIqNF4xu3R9ZdCxk4ZqPQG2+d1MY7oPE0NlHqws1jOIQdngNZackyaE8R\r\necaPlQub3uEqOnDm0E8oMc9uu4Gmi/UXQ9l1ZvW5FxdPdJFFCro711srV/0e\r\nknKMlhvxS0d67EcBYgnbmNIKf9d1BZ3HTsvKZB4Pcf+zmGL/RCajPx3AkOqL\r\nFvmaHUWC/fzeV2bHctk+HKNzYLuK7unDKos=\r\n=BMyB\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"jest-puppeteer","verbose":true,"reporters":["default","github-actions"],"transform":{"^.+\\.(t|j)sx?$":"@swc/jest"},"modulePathIgnorePatterns":["./lib","./src/test.ts"]},"main":"lib/spoof.js","types":"lib/spoof.d.ts","gitHead":"32656f8d1052ce6279e11963e5c8d9914d4ef7ea","scripts":{"lint":"yarn ts-standard --fix","test":"jest","build":"tsc","prepare":"husky install && yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"repository":{"url":"git+https://github.com/Xetera/ghost-cursor.git","type":"git"},"_npmVersion":"8.15.0","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"16.17.0","dependencies":{"bezier-js":"^6","@types/bezier-js":"4"},"_hasShrinkwrap":false,"devDependencies":{"jest":"29","husky":"8","@swc/core":"^1.2.194","@swc/jest":"^0.2.21","puppeteer":"17","typescript":"4","@types/jest":"29","ts-standard":"11","jest-puppeteer":"^6.1.0"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.1.14_1661869765253_0.13726680448534911","host":"s3://npm-registry-packages"}},"1.1.15":{"name":"ghost-cursor","version":"1.1.15","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.1.15","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"homepage":"https://github.com/Xetera/ghost-cursor#readme","bugs":{"url":"https://github.com/Xetera/ghost-cursor/issues"},"dist":{"shasum":"f1d7c545aa7e3b5bbf182d4bee2e965710ff1395","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.1.15.tgz","fileCount":11,"integrity":"sha512-VMcWQ854VwlKun5rcFMgCyFyDYZDnea5Lfb71og7XmLN/OpXiRPkqa4U8+LYxfuf/EcCLLzkArWZcTsz8PvOHg==","signatures":[{"sig":"MEYCIQDEvbqnHotqDSxSHvdRsWDXfP65umMB97WkAAJfeDcbgwIhAN4rAVAYCFiQYet2DY71eMnA0BjrgzgT03835zFR41vr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50886,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjDiVaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmotnRAAiI9cgmGyhwEB9b3LQdFSA9n6YTIlGntpFpXT3RYL+PMYoStU\r\ndbQsTdXpKTleb8dlpvBiaPpDG70FYoQKFZd0AhU6x4Z4y9xcav0VSMmeRsPh\r\nKn4zN85VAPZQaNu6vR4lZ9TjXKLCfxtnSPD7jjiUT7YLrbri4CxlICiXu4Ge\r\n9SECS5ELjnsL+jYAlEFq1sDTqAmRzUq2HjdyKFACcKSszqDE7ve9ctd0g0Wj\r\nLVapog7k39V4HyK3WQHDi11811hhGQ/fYh+hhHnmbBiveh6ua9FZSKvcpx+i\r\n2FLyqaouxOrpWhNldZYGZbbjBUvxyAy8x37VnPji4FQ8ybpBLqzl+KTBiVA4\r\nLP2pKbpIlRS4m7fr06GitIYaF8xiwSn/CrU6t2I/or+51RLfo8S3urq1sZC6\r\niRp9GZk3nsteNgHInUGdiyzWRaEpDCMpBpvoNYQECKodVJ4bKPzWBwKo4r0Q\r\njkaUBXx8hg4nEHpjzgLFSbJq21lQRxUUmafuNQgCCGA2OSXa/2qx2VQqQbEg\r\nQXYu5wPps4giK7aBergnXJXnfRIw7E/nLTLqleoGGkldoet2KUckrxOAKPRY\r\nd4S3M7Hr/bwWnHyLtNUEk6x6EQUvCAng89vGhQ624/i3FsNna24AJ5HfKkeH\r\ncIZNqJ+czf93/IL1giQMQOiYFptzW8LG6OA=\r\n=Q8eN\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"jest-puppeteer","verbose":true,"reporters":["default","github-actions"],"transform":{"^.+\\.(t|j)sx?$":"@swc/jest"},"modulePathIgnorePatterns":["./lib","./src/test.ts"]},"main":"lib/spoof.js","types":"lib/spoof.d.ts","gitHead":"7327dfa3215e6f2a9391af650ff2221c2e4dfe80","scripts":{"lint":"yarn ts-standard --fix","test":"jest","build":"tsc","prepare":"husky install && yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"repository":{"url":"git+https://github.com/Xetera/ghost-cursor.git","type":"git"},"_npmVersion":"8.15.0","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"16.17.0","dependencies":{"bezier-js":"^6","@types/bezier-js":"4"},"_hasShrinkwrap":false,"devDependencies":{"jest":"29","husky":"8","@swc/core":"^1.2.194","@swc/jest":"^0.2.21","puppeteer":"17","typescript":"4","@types/jest":"29","ts-standard":"11","jest-puppeteer":"^6.1.0"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.1.15_1661871450537_0.44551795367004954","host":"s3://npm-registry-packages"}},"1.1.16":{"name":"ghost-cursor","version":"1.1.16","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.1.16","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"homepage":"https://github.com/Xetera/ghost-cursor#readme","bugs":{"url":"https://github.com/Xetera/ghost-cursor/issues"},"dist":{"shasum":"a2a50e500dbb0270286aa26fb240dbc78a9d1206","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.1.16.tgz","fileCount":11,"integrity":"sha512-C2+U2/IYrbJmSRkhUaEsrhiZC/a/BB8qdApEMWBbhc10D5V7VA4AuA53W/XhBXENFWucavq07R5skB7T84vqyA==","signatures":[{"sig":"MEQCIAmLLbpfuPjNuKFTFZ3D6yjCTlA6+s75+H8eKOG0gjdIAiBC3NaE/lIExARjninBhI9pP4hrWtP79OaG2XW2AnjHyQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52049,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjRS8kACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpSdg//bSe3/8zFCHSXRDcVCwx3+ETYNjyWlqedceCIBMR+2XHCDTg3\r\npYk0Jaq3k70ezo59jFy0P7/wYdkNWYGH5qCvOgvCDc26Z8xTzoEqwpxLVm0e\r\nPcmWYAETmFZIwECA8fesY0bZF1VnSi77kVcgbpObcMU9Vk2tytDYuLsll0Vd\r\nVWtES3WygGACnbF2MNf3wDjbxwJHZmWrggP2zoksj5lP8I0LZSdKwnqkT7a2\r\n9GUl4kbpj6X9P6d5uQTcNPV+Jb89z8pa0vhy36jp0T4/fINHwvFJuRE+cpcC\r\nv4g9mUDocNktH8o/SpVx18busjFLJalVNgQR4vsZ1P7zS4WfPVOjsOHM/ItO\r\n9zm24701aD3bmXqu3hFZi/Wu+PTzq2aUEPR/4e6BgTzy9lHVKF3qUAuzCQr0\r\nGglTY1iT8ezT9LLIjlZxEgz40AtIGuekclwfEdkfRVJW4yhiOhfkmlcyWBBC\r\nYqP/5KCvDnT04oS5W4FL7KQDmM/UJaKdE8IMvRx6UgOKD960UuUMXAT5qi3S\r\nBDtlkzkU62PORfLPToeuoVYZcF1W2h/0upyILXhOWp2sc9sXD8P4hrBv1tzw\r\n4k2cLRx+wYbp/IznUme9gai2VCpq5Q3qUrKLav4yQsRiMzVZ2xqfhXoGRZa0\r\nrDuOLl9XTh6tInrerL/wFiyVO0QUcPZRjV0=\r\n=u8W3\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"jest-puppeteer","verbose":true,"reporters":["default","github-actions"],"transform":{"^.+\\.(t|j)sx?$":"@swc/jest"},"modulePathIgnorePatterns":["./lib","./src/test.ts"]},"main":"lib/spoof.js","types":"lib/spoof.d.ts","gitHead":"8d52f8a8c6d90f3ae46d8fcbe7e4b5ffdf5391bb","scripts":{"lint":"yarn ts-standard --fix","test":"jest","build":"tsc","prepare":"husky install && yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"repository":{"url":"git+https://github.com/Xetera/ghost-cursor.git","type":"git"},"_npmVersion":"8.15.0","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"16.17.1","dependencies":{"bezier-js":"^6","@types/bezier-js":"4"},"_hasShrinkwrap":false,"devDependencies":{"jest":"29","husky":"8","@swc/core":"^1.2.194","@swc/jest":"^0.2.21","puppeteer":"18","typescript":"4","@types/jest":"29","ts-standard":"12","jest-puppeteer":"^6.1.0"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.1.16_1665478436268_0.6566740099932904","host":"s3://npm-registry-packages"}},"1.1.17":{"name":"ghost-cursor","version":"1.1.17","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.1.17","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"homepage":"https://github.com/Xetera/ghost-cursor#readme","bugs":{"url":"https://github.com/Xetera/ghost-cursor/issues"},"dist":{"shasum":"4219f92e4baab62c9c71c6e93c9868a634b22273","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.1.17.tgz","fileCount":11,"integrity":"sha512-qKQAojecdMIrQ4DiYfY59nRTPMYlaGH0L3Gf60Xh5EXxw8fzLX8ijIvHfMYmr5rxURL7Q11oA6+2VYkQaDUuRQ==","signatures":[{"sig":"MEQCIE4wf0Ge9ePxAP9CcV3oC/dbLUcQtZ1Pzz/XYtWMHUaYAiBZcZmx817+vRmhOXphOHGQUxxOT8Wv64+ybP6wcF7KHw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52150,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj83nfACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrIHQ/+MVszJK3qeHziue0/yyKUcUovEtnCBkXxSoNv/OlMjDHxcVQI\r\neLZU1tCjllGuoUfVwPqdPrdbBBLksxzngGG54arQvXSvy1sq+Z2xaw8TnV3n\r\nhTr1xK2St2B265V2B4VzBZ90Ns+iuAHhWONvVln8JdDD4XiwcQBNNnBkXC7a\r\niNZsvrlrQxq/74ZyJdeBwcKypAUFqufYzrWhW6ZHCVI/udM4i1vqZvrHRybd\r\neIzo3fYbk586kP0pHDfuwrO1BfAPKO2CAN8ZAizXGYCcdZrTUxGujZvJdB50\r\nkgdHxbxGx1CnRhL5VzUKYhN+vY3MiZRKCisIbWDEDD/8KGBxkQ048FXXxkDT\r\n7uxr5fgd5mxb0Zr90uUrO3SHKCNg7nSfkLc9zubb/fti16BlZGSGk2yJ5uo3\r\nzjpMFFPj7PEe7TN6TbwybfDoB6j1j5ACoZ7bZDQAO1pjQlM7fgtlE0O/8xDn\r\nIoADflFGa7PdQC8UCjgj9r+v1pjOBY2oG6ejwPyTp/HZEwuV3XyAKmhlHO/f\r\nHtinaEzTIKDLOAHG/ZSJ9yo4ea/rkJZvdVXoHUI5g0zKSAv2BQZ2HX8oaa9a\r\nyADkUW43AzoIHzHslX/BDb9dn0RlRtWUu2HVrwezebwa6P560RW5Y1U/0kfv\r\nMOTKKGtjCd87zG31knDMZtyc3Oo/4W4wV74=\r\n=phDm\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"jest-puppeteer","verbose":true,"reporters":["default","github-actions"],"transform":{"^.+\\.(t|j)sx?$":"@swc/jest"},"modulePathIgnorePatterns":["./lib","./src/test.ts"]},"main":"lib/spoof.js","types":"lib/spoof.d.ts","gitHead":"fcb42a19a32b169a05d0b5354542f17d57cb8c91","scripts":{"lint":"yarn ts-standard --fix","test":"jest","build":"tsc","prepare":"husky install && yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"repository":{"url":"git+https://github.com/Xetera/ghost-cursor.git","type":"git"},"_npmVersion":"8.19.3","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"16.19.0","dependencies":{"bezier-js":"=6.1.0","@types/bezier-js":"4"},"_hasShrinkwrap":false,"devDependencies":{"jest":"29","husky":"8","@swc/core":"^1.2.194","@swc/jest":"^0.2.21","puppeteer":"19","typescript":"4","@types/jest":"29","ts-standard":"12","jest-puppeteer":"7"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.1.17_1676900831429_0.6487166146982062","host":"s3://npm-registry-packages"}},"1.1.18":{"name":"ghost-cursor","version":"1.1.18","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.1.18","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"homepage":"https://github.com/Xetera/ghost-cursor#readme","bugs":{"url":"https://github.com/Xetera/ghost-cursor/issues"},"dist":{"shasum":"c403fcfb6b95ef525f9064c17fa0897d231b7d8b","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.1.18.tgz","fileCount":11,"integrity":"sha512-fIdA8W3/X6IHGc+lPKYCVE3bUoH44CHbpaVbXaOKgdDvMJa53T0798iik54uc7Dj/iUAeR2Q74vw5J5WpGOwIw==","signatures":[{"sig":"MEYCIQC+4pma3T2GgfNfSXl/aT+2SSc64GS8KCLVNy+2rKCLjAIhALuYjrnDKlf71Js73x/52VZmsIP/+V0PRlP67/wwDV7/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52150,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj86wTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq5lg/+J2IvWof0LEVUJnDwJ9xbz1+Q65BPLEji6U0y+XnPMr8yg5bJ\r\nuGTvqR3lHmNLXcVFWS0p1F3S9IshXsc6Ichyo9e0EkzH+omY4DhNx6h28IPM\r\nis9XvDLpXyORxRdICG7T88SQylUliPCaDFbRWCqgi6kjqyoKKathHc8fUzSm\r\nrlIgbaR/jHJEAICLKhwGSu4wn5DfUBM9A1L+8/WxeWLOFkhElPTcKSOvvpnx\r\nTG1mm5RgeCTnXn2rge7nAytG8OFhFpIeGl+BGBLR8YJLAWbFx4NWzPaTGgWb\r\nq4F3AK9steBfBpYMYnR5FfO3xCCDsRiUAIPppFS4eyTm0pzSmzINVpukkJPi\r\ndWOvba6AABkFzF6E7/jA/dMDevJ5KJtdZ4N9TWkFEhF7Mh8X0pYq8SjL2JoS\r\n0yeqrFC08Z0ytbcidnUFiEyDWCS3kEBFpb7U7zru+rrQ6UrVP/CcfWrlOqW1\r\nGi2JJqeveU7n3xcFnPthVKCVLmO2Dp0UYRuHTYbecnvy+8uFpJb7y5bY8Zox\r\naNxMYs9bOkfJPktqQwmZ2UjhNJLcTMnyJunRzNdKna28NdFf/I9nx9bzyqI5\r\nbgFBXUVkonMIHegaXES32ZOXSnaDGXQXAmum6J3ZYp6RfgAsN8zG2MO+ZU+H\r\nnQJcYcdGniB67tW8H2wWudo210fEfwv6w34=\r\n=yBP/\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"jest-puppeteer","verbose":true,"reporters":["default","github-actions"],"transform":{"^.+\\.(t|j)sx?$":"@swc/jest"},"modulePathIgnorePatterns":["./lib","./src/test.ts"]},"main":"lib/spoof.js","types":"lib/spoof.d.ts","gitHead":"e3ecd704e2d2a865a0637ca8b22d7e1b98125752","scripts":{"lint":"yarn ts-standard --fix","test":"jest","build":"tsc","prepare":"husky install && yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"repository":{"url":"git+https://github.com/Xetera/ghost-cursor.git","type":"git"},"_npmVersion":"8.19.3","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"16.19.0","dependencies":{"bezier-js":"^6.1.3","@types/bezier-js":"4"},"_hasShrinkwrap":false,"devDependencies":{"jest":"29","husky":"8","@swc/core":"^1.2.194","@swc/jest":"^0.2.21","puppeteer":"19","typescript":"4","@types/jest":"29","ts-standard":"12","jest-puppeteer":"7"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.1.18_1676913683177_0.08090756735712734","host":"s3://npm-registry-packages"}},"1.1.19":{"name":"ghost-cursor","version":"1.1.19","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.1.19","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"homepage":"https://github.com/Xetera/ghost-cursor#readme","bugs":{"url":"https://github.com/Xetera/ghost-cursor/issues"},"dist":{"shasum":"0dfe790825b7c8255dc4ca9ed591f7062852296a","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.1.19.tgz","fileCount":11,"integrity":"sha512-PJsM+edFPB7VxBASB1IZP2CP03R4goJ142RIfPslo1drin16WvNaZX7eSxY4zZpJ41u+F8rVbKFImPku9spHiQ==","signatures":[{"sig":"MEQCIBvkovzTJHaEysTStO6xP7q64gv4ohnen6snSSn946OzAiA90qS8xNJ4FdA5qYrIMY2rAp8ol9DWL+eD4vWxLGZduA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52169},"jest":{"preset":"jest-puppeteer","verbose":true,"reporters":["default","github-actions"],"transform":{"^.+\\.(t|j)sx?$":"@swc/jest"},"modulePathIgnorePatterns":["./lib","./src/test.ts"]},"main":"lib/spoof.js","types":"lib/spoof.d.ts","gitHead":"14334d014b183eec33220f097da057108f5633f0","scripts":{"lint":"yarn ts-standard --fix","test":"jest","build":"tsc","prepare":"husky install && yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"repository":{"url":"git+https://github.com/Xetera/ghost-cursor.git","type":"git"},"_npmVersion":"8.19.4","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"16.20.1","dependencies":{"bezier-js":"^6.1.3","@types/bezier-js":"4"},"_hasShrinkwrap":false,"devDependencies":{"jest":"29","husky":"8","@swc/core":"^1.2.194","@swc/jest":"^0.2.21","puppeteer":"21","typescript":"5","@types/jest":"29","ts-standard":"12","jest-puppeteer":"9"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.1.19_1691438422281_0.8238140849484816","host":"s3://npm-registry-packages"}},"1.2.0":{"name":"ghost-cursor","version":"1.2.0","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.2.0","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"homepage":"https://github.com/Xetera/ghost-cursor#readme","bugs":{"url":"https://github.com/Xetera/ghost-cursor/issues"},"dist":{"shasum":"711ec4d83623469890c9f0833d86c1b673a9aa8f","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.2.0.tgz","fileCount":11,"integrity":"sha512-iXoYqmeS5UQXKqolMoyaXvBdu2WSWbtznRt7gg6HcxGs8AAgrKK7xvFTTqzXVczoGXsaXAxZVKS0rEA0IhO04A==","signatures":[{"sig":"MEUCICJBQgCNzpPn38xsDsCJ7Zmc/0yB2etVNZGDz8PVplzuAiEA6NApGecpOIEq+YhcsJzK97QIiFKhMoBJcRl5Jfgz/MU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55215},"jest":{"preset":"jest-puppeteer","verbose":true,"reporters":["default","github-actions"],"transform":{"^.+\\.(t|j)sx?$":"@swc/jest"},"modulePathIgnorePatterns":["./lib","./src/test.ts"]},"main":"lib/spoof.js","types":"lib/spoof.d.ts","gitHead":"cca6f9fb9863ac3af4a22a0acf157e0cf65e5d53","scripts":{"lint":"yarn ts-standard --fix","test":"jest","build":"tsc","prepare":"husky && yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"repository":{"url":"git+https://github.com/Xetera/ghost-cursor.git","type":"git"},"_npmVersion":"10.2.4","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"20.11.0","dependencies":{"debug":"^4.3.4","bezier-js":"^6.1.3","@types/bezier-js":"4"},"_hasShrinkwrap":false,"devDependencies":{"jest":"29","husky":"9","@swc/core":"^1.2.194","@swc/jest":"^0.2.21","puppeteer":"22","typescript":"5","@types/jest":"29","ts-standard":"12","@types/debug":"^4.1.9","jest-puppeteer":"10"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.2.0_1708349650914_0.6131444772854209","host":"s3://npm-registry-packages"}},"1.2.1":{"name":"ghost-cursor","version":"1.2.1","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.2.1","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"}],"homepage":"https://github.com/Xetera/ghost-cursor#readme","bugs":{"url":"https://github.com/Xetera/ghost-cursor/issues"},"dist":{"shasum":"3690e79940d32ee8dc7465c071c79e9699059aff","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.2.1.tgz","fileCount":11,"integrity":"sha512-YC1v+k/c86+nu52nqAQc1Lbaa4qWSDmqaxFGP5jY/maczxV57rOVnG8k74hPwacBLK+/AqEOkhllTX+tMoRMlA==","signatures":[{"sig":"MEUCIHSxuMzMYAwp52O1CUnX6vuS+hzZnsg6V/ET/AdPUQQdAiEAiGnRYbanhdgNgbWlgXwu5V/3vgPJqTLBSku8UxqfzDE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":56131},"jest":{"preset":"jest-puppeteer","verbose":true,"reporters":["default","github-actions"],"transform":{"^.+\\.(t|j)sx?$":"@swc/jest"},"modulePathIgnorePatterns":["./lib","./src/test.ts"]},"main":"lib/spoof.js","types":"lib/spoof.d.ts","gitHead":"476e21db3af616e4ce874a0d99df8e8feb474311","scripts":{"lint":"yarn ts-standard --fix","test":"jest","build":"tsc","prepare":"husky && yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"repository":{"url":"git+https://github.com/Xetera/ghost-cursor.git","type":"git"},"_npmVersion":"10.5.0","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"20.12.2","dependencies":{"debug":"^4.3.4","bezier-js":"^6.1.3","@types/bezier-js":"4"},"_hasShrinkwrap":false,"devDependencies":{"jest":"29","husky":"9","@swc/core":"^1.2.194","@swc/jest":"^0.2.21","puppeteer":"22","typescript":"5","@types/jest":"29","ts-standard":"12","@types/debug":"^4.1.9","jest-puppeteer":"10"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.2.1_1714802521407_0.32910997963412325","host":"s3://npm-registry-packages"}},"1.2.2":{"name":"ghost-cursor","version":"1.2.2","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.2.2","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"},{"name":"niekvdmaas","email":"mail@niekvandermaas.nl"}],"homepage":"https://github.com/Xetera/ghost-cursor#readme","bugs":{"url":"https://github.com/Xetera/ghost-cursor/issues"},"dist":{"shasum":"c4c88b72885ff0a8b1034c3bacf866fd9000200f","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.2.2.tgz","fileCount":11,"integrity":"sha512-XiA6tYmdmXHKuyUNma9yZuCyPdKyJz+VLCISQhIC7XehIagB4VHcuQLTAkQKTmd/7XTkxwS3eXW59RLJgDPuFw==","signatures":[{"sig":"MEQCIE42w2vHSExDMGtmxKx9SZqX8mHZddjx0jQUm9wmJQ6GAiBW7NbE4FD5uZQQBv9j7Kr1I/O5y3SotkhwCGZuOu1LrA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":62062},"jest":{"preset":"jest-puppeteer","verbose":true,"reporters":["default","github-actions"],"transform":{"^.+\\.(t|j)sx?$":"@swc/jest"},"modulePathIgnorePatterns":["./lib","./src/test.ts"]},"main":"lib/spoof.js","types":"lib/spoof.d.ts","gitHead":"2cdc5c8f25d217464f7cc1030f12267257ec587f","scripts":{"lint":"yarn ts-standard --fix","test":"jest","build":"tsc","prepare":"husky && yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"repository":{"url":"git+https://github.com/Xetera/ghost-cursor.git","type":"git"},"_npmVersion":"10.5.0","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"20.12.2","dependencies":{"debug":"^4.3.4","bezier-js":"^6.1.3","@types/bezier-js":"4"},"_hasShrinkwrap":false,"devDependencies":{"jest":"29","husky":"9","@swc/core":"^1.2.194","@swc/jest":"^0.2.21","puppeteer":"22","typescript":"5","@types/jest":"29","ts-standard":"12","@types/debug":"^4.1.9","jest-puppeteer":"10"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.2.2_1715283164460_0.24546895511984612","host":"s3://npm-registry-packages"}},"1.3.0":{"name":"ghost-cursor","version":"1.3.0","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.3.0","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"},{"name":"niekvdmaas","email":"mail@niekvandermaas.nl"}],"homepage":"https://github.com/Xetera/ghost-cursor#readme","bugs":{"url":"https://github.com/Xetera/ghost-cursor/issues"},"dist":{"shasum":"e53e89f3342711d04bd26a0e454aea482ddca9fd","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.3.0.tgz","fileCount":11,"integrity":"sha512-niTjgH8o2EhYG0vJfGB45JrLAt5CRoXg+8zWIcXtcgUgLds+i6YyFXkYuHpno9gKi93KpQvxY/uVYMV9CeeJ0w==","signatures":[{"sig":"MEUCIQDaHMb2eKN7lwGBCL61sV7hJtHMHLkE49Nh06GUqIuvmgIgE/ci6S6+EkcWFjgzMbp4504FKut26L7JMwLTYr30TZM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":63498},"jest":{"preset":"jest-puppeteer","verbose":true,"reporters":["default","github-actions"],"transform":{"^.+\\.(t|j)sx?$":"@swc/jest"},"modulePathIgnorePatterns":["./lib","./src/test.ts"]},"main":"lib/spoof.js","types":"lib/spoof.d.ts","gitHead":"7719c610719fc51245062c5fc1a3c552bdfeefa4","scripts":{"lint":"yarn ts-standard --fix","test":"jest","build":"tsc","prepare":"husky && yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"repository":{"url":"git+https://github.com/Xetera/ghost-cursor.git","type":"git"},"_npmVersion":"10.5.0","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"20.12.2","dependencies":{"debug":"^4.3.4","bezier-js":"^6.1.3","@types/bezier-js":"4"},"_hasShrinkwrap":false,"devDependencies":{"jest":"29","husky":"9","@swc/core":"^1.2.194","@swc/jest":"^0.2.21","puppeteer":"22","typescript":"5","@types/jest":"29","ts-standard":"12","@types/debug":"^4.1.9","jest-puppeteer":"10"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.3.0_1715333222115_0.5377793958500918","host":"s3://npm-registry-packages"}},"1.4.0":{"name":"ghost-cursor","version":"1.4.0","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.4.0","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"},{"name":"niekvdmaas","email":"mail@niekvandermaas.nl"}],"homepage":"https://github.com/Xetera/ghost-cursor#readme","bugs":{"url":"https://github.com/Xetera/ghost-cursor/issues"},"dist":{"shasum":"d8b3aca1b55eb458d6a2150c31d76d8556ac9201","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.4.0.tgz","fileCount":9,"integrity":"sha512-Bz82ZjXeW4Txhsa8JfsorfBM3frGYWaON6KnLoR8mtk535LI27V0Rvh+U4C93aiZ381LxOpv4Kf093CQFisrug==","signatures":[{"sig":"MEUCIFqg1MyfAgGXrEBeyZ6IgJHJZYeEsiE92X5rOLs36JV4AiEA2mXQjwTohcfPdmT+yRmvmtfbcgKkgVelTbERV63wwdw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":75880},"jest":{"preset":"jest-puppeteer","verbose":true,"reporters":["default","github-actions"],"transform":{"^.+\\.(t|j)sx?$":"@swc/jest"},"modulePathIgnorePatterns":["./lib","./src/test.ts"]},"main":"lib/spoof.js","types":"lib/spoof.d.ts","gitHead":"2cb431c466f4b96a3b4f926f1ac8205009268905","scripts":{"lint":"yarn ts-standard --fix","test":"jest","build":"tsc -p tsconfig.build.json","debug":"ts-node src/__debug__/browser-debug.ts","prepare":"husky && yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"repository":{"url":"git+https://github.com/Xetera/ghost-cursor.git","type":"git"},"_npmVersion":"10.8.2","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"20.18.3","dependencies":{"debug":"^4.3.4","bezier-js":"^6.1.3","@types/bezier-js":"4"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e","devDependencies":{"jest":"29","husky":"9","ts-node":"^10.9.2","@swc/core":"^1.2.194","@swc/jest":"^0.2.21","puppeteer":"24","typescript":"5","@types/jest":"29","ts-standard":"12","@types/debug":"^4.1.9","jest-puppeteer":"11"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.4.0_1741013032777_0.44507833543660213","host":"s3://npm-registry-packages-npm-production"}},"1.4.1":{"name":"ghost-cursor","version":"1.4.1","keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","_id":"ghost-cursor@1.4.1","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"},{"name":"niekvdmaas","email":"mail@niekvandermaas.nl"}],"homepage":"https://github.com/Xetera/ghost-cursor#readme","bugs":{"url":"https://github.com/Xetera/ghost-cursor/issues"},"dist":{"shasum":"dbdf38132459bb385334d1093958134b57551a87","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.4.1.tgz","fileCount":9,"integrity":"sha512-K8A8/Co/Jbdqee694qrNsGWBG51DVK5UF2gGKEoZBDx9F1WmoD2SzUoDHWoY7O+TY84s1VrWwwfkVKxI2FoV2Q==","signatures":[{"sig":"MEUCIGP8flf0xjt1W5kiyVYA7iL3TI28zsJQdJHCwek0zIevAiEAj20FWz686Y+zC7CDwIC+7C/epiOshci0AO7s5TmmMS8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82602},"jest":{"preset":"jest-puppeteer","verbose":true,"reporters":["default","github-actions"],"transform":{"^.+\\.(t|j)sx?$":"@swc/jest"},"modulePathIgnorePatterns":["./lib","./src/test.ts"]},"main":"lib/spoof.js","types":"lib/spoof.d.ts","gitHead":"d500ffe920d7eb400569ef52f9332ffee6622f00","scripts":{"lint":"yarn ts-standard --fix","test":"jest","build":"tsc -p tsconfig.build.json","debug":"ts-node src/__debug__/browser-debug.ts","prepare":"husky && yarn lint && yarn build"},"_npmUser":{"name":"xetera","email":"mythologyali@gmail.com"},"repository":{"url":"git+https://github.com/Xetera/ghost-cursor.git","type":"git"},"_npmVersion":"10.8.2","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","directories":{},"_nodeVersion":"20.18.3","dependencies":{"debug":"^4.3.4","bezier-js":"^6.1.3","@types/bezier-js":"4"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e","devDependencies":{"jest":"29","husky":"9","ts-node":"^10.9.2","@swc/core":"^1.2.194","@swc/jest":"^0.2.21","puppeteer":"24","typescript":"5","@types/jest":"29","ts-standard":"12","@types/debug":"^4.1.9","jest-puppeteer":"11"},"_npmOperationalInternal":{"tmp":"tmp/ghost-cursor_1.4.1_1741773375015_0.2567682656148227","host":"s3://npm-registry-packages-npm-production"}},"1.4.2":{"name":"ghost-cursor","version":"1.4.2","description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","repository":{"type":"git","url":"git+https://github.com/Xetera/ghost-cursor.git"},"main":"lib/spoof.js","types":"lib/spoof.d.ts","scripts":{"prepare":"husky && yarn lint && yarn build","build":"tsc -p tsconfig.build.json","debug":"ts-node src/__debug__/browser-debug.ts","lint":"yarn ts-standard --fix","test":"jest"},"keywords":["bezier-curve","mouse-movement","botting"],"author":{"name":"Xetera"},"license":"ISC","dependencies":{"@types/bezier-js":"4","bezier-js":"^6.1.3","debug":"^4.3.4"},"devDependencies":{"@swc/core":"^1.2.194","@swc/jest":"^0.2.21","@types/debug":"^4.1.9","@types/jest":"30","husky":"9","jest":"30","jest-puppeteer":"11","puppeteer":"24","ts-node":"^10.9.2","ts-standard":"12","typescript":"5"},"jest":{"verbose":true,"preset":"jest-puppeteer","modulePathIgnorePatterns":["./lib","./src/test.ts"],"reporters":["default","github-actions"],"transform":{"^.+\\.(t|j)sx?$":"@swc/jest"}},"packageManager":"yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e","gitHead":"3cffd610b2cb7636c031ffac8684ee9af947372e","_id":"ghost-cursor@1.4.2","bugs":{"url":"https://github.com/Xetera/ghost-cursor/issues"},"homepage":"https://github.com/Xetera/ghost-cursor#readme","_nodeVersion":"24.12.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-NPMuH05Ik9h99zrAb4fvAzhB4T6MqKwdPoI+Me0IJWN3676j4UoAsjKN/cJq5AG4zyZwAEPPggZXHVU0P57/5g==","shasum":"ca49c293740d40e813fc3210a56e1bdd7bc997aa","tarball":"https://registry.npmjs.org/ghost-cursor/-/ghost-cursor-1.4.2.tgz","fileCount":9,"unpackedSize":95211,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/ghost-cursor@1.4.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCp+DfBYcQZnfR5fnGqcDzfIXGK6AsC+NZl3Gx/ceK2RgIhAKsBvAlNu3djXrMhfW17aN8jIm8mBIXj/3yMi1MQ2tT2"}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:22592810-dd66-4cb6-b73a-2320d260ba91"}},"directories":{},"maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"},{"name":"niekvdmaas","email":"mail@niekvandermaas.nl"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ghost-cursor_1.4.2_1768240447423_0.2970412756773946"},"_hasShrinkwrap":false}},"time":{"created":"2020-01-06T10:11:57.728Z","modified":"2026-01-12T17:54:07.938Z","1.0.0":"2020-01-06T10:11:57.886Z","1.0.1":"2020-01-08T01:51:22.172Z","1.0.2":"2020-01-08T01:52:20.979Z","1.0.3":"2020-01-08T06:38:41.486Z","1.0.4":"2020-11-06T09:42:23.286Z","1.0.5":"2020-11-06T10:09:08.119Z","1.0.6":"2020-11-06T16:55:48.843Z","1.1.0":"2021-01-12T13:53:55.262Z","1.1.1":"2021-01-25T15:31:39.541Z","1.1.2":"2021-02-20T10:27:22.107Z","1.1.3":"2021-02-22T11:25:58.272Z","1.1.4":"2021-02-23T07:15:10.250Z","1.1.5":"2021-03-11T13:00:36.713Z","1.1.6":"2021-07-01T17:18:31.069Z","1.1.7":"2021-11-30T10:02:47.200Z","1.1.8":"2021-12-22T10:23:48.749Z","1.1.9":"2022-03-15T10:59:38.753Z","1.1.10":"2022-03-15T13:16:24.114Z","1.1.11":"2022-05-28T11:21:58.019Z","1.1.13":"2022-07-04T07:15:03.695Z","1.1.14":"2022-08-30T14:29:25.497Z","1.1.15":"2022-08-30T14:57:30.756Z","1.1.16":"2022-10-11T08:53:56.559Z","1.1.17":"2023-02-20T13:47:11.578Z","1.1.18":"2023-02-20T17:21:23.375Z","1.1.19":"2023-08-07T20:00:22.456Z","1.2.0":"2024-02-19T13:34:11.080Z","1.2.1":"2024-05-04T06:02:01.587Z","1.2.2":"2024-05-09T19:32:44.693Z","1.3.0":"2024-05-10T09:27:02.283Z","1.4.0":"2025-03-03T14:43:52.978Z","1.4.1":"2025-03-12T09:56:15.189Z","1.4.2":"2026-01-12T17:54:07.579Z"},"bugs":{"url":"https://github.com/Xetera/ghost-cursor/issues"},"author":{"name":"Xetera"},"license":"ISC","homepage":"https://github.com/Xetera/ghost-cursor#readme","keywords":["bezier-curve","mouse-movement","botting"],"repository":{"type":"git","url":"git+https://github.com/Xetera/ghost-cursor.git"},"description":"Move your mouse like a human in puppeteer or generate realistic movements on any 2D plane","maintainers":[{"name":"xetera","email":"mythologyali@gmail.com"},{"name":"niekvdmaas","email":"mail@niekvandermaas.nl"}],"readme":"# Ghost Cursor\n\n<img src=\"https://media2.giphy.com/media/26ufp2LYURTvL5PRS/giphy.gif\" width=\"100\" align=\"right\">\n\nGenerate realistic, human-like mouse movement data between coordinates or navigate between elements with puppeteer\nlike the definitely-not-robot you are.\n\n> Oh yeah? Could a robot do _**this?**_\n\n## Installation\n\n```sh\nyarn add ghost-cursor\n```\nor with npm\n```sh\nnpm install ghost-cursor\n```\n\n## Usage\nGenerating movement data between 2 coordinates.\n\n```js\nimport { path } from \"ghost-cursor\"\n\nconst from = { x: 100, y: 100 }\nconst to = { x: 600, y: 700 }\n\nconst route = path(from, to)\n\n/**\n * [\n *   { x: 100, y: 100 },\n *   { x: 108.75573501957051, y: 102.83608396351725 },\n *   { x: 117.54686481838543, y: 106.20019239793275 },\n *   { x: 126.3749821408895, y: 110.08364505509256 },\n *   { x: 135.24167973152743, y: 114.47776168684264 }\n *   ... and so on\n * ]\n */\n```\n\nGenerating movement data between 2 coordinates with timestamps.\n```js\nimport { path } from \"ghost-cursor\"\n\nconst from = { x: 100, y: 100 }\nconst to = { x: 600, y: 700 }\n\nconst route = path(from, to, { useTimestamps: true })\n\n/**\n * [\n *   { x: 100, y: 100, timestamp: 1711850430643 },\n *   { x: 114.78071695023473, y: 97.52340709495319, timestamp: 1711850430697 },\n *   { x: 129.1362373468682, y: 96.60141853603243, timestamp: 1711850430749 },\n *   { x: 143.09468422606352, y: 97.18676354029148, timestamp: 1711850430799 },\n *   { x: 156.68418062398405, y: 99.23217132478408, timestamp: 1711850430848 },\n *   ... and so on\n * ]\n */\n```\n\n\nUsage with puppeteer:\n\n```js\nimport { GhostCursor } from \"ghost-cursor\"\nimport puppeteer from \"puppeteer\"\n\nconst run = async (url) => {\n  const selector = \"#sign-up button\"\n  const browser = await puppeteer.launch({ headless: false });\n  const page = await browser.newPage()\n  const cursor = new GhostCursor(page)\n  await page.goto(url)\n  await page.waitForSelector(selector)\n  await cursor.click(selector)\n  // shorthand for\n  // await cursor.move(selector)\n  // await cursor.click()\n}\n```\n\n### Puppeteer-specific behavior\n* `cursor.move()` will automatically overshoot or slightly miss and re-adjust for elements that are too far away\nfrom the cursor's starting point.\n* When moving over objects, a random coordinate that's within the element will be selected instead of\nhovering over the exact center of the element.\n* The speed of the mouse will take the distance and the size of the element you're clicking on into account.\n\n<br>\n\n![ghost-cursor in action](https://cdn.discordapp.com/attachments/418699380833648644/664110683054538772/acc_gen.gif)\n\n> Ghost cursor in action on a form\n\n## Methods\n\n#### `new GhostCursor(page: puppeteer.Page, { start?: Vector, performRandomMoves?: boolean, defaultOptions?: DefaultOptions, visible?: boolean = false }): GhostCursor`\n\nCreates the ghost cursor that contains the action functions described below.\n\n- **page:** Puppeteer `page`.\n- **start (optional):** Cursor start position. Default is `{ x: 0, y: 0 }`.\n- **performRandomMoves (optional):** Initially perform random movements. Default is `false`.\n- **defaultOptions (optional):** Set custom default options for `click`, `move`, `moveTo`, and `randomMove` functions. Default values are described below.\n- **visible (optional):** Make the cursor visible, using `installMouseHelper()`. Default is `false`.\n \n#### `toggleRandomMove(random: boolean): void`\n\nToggles random mouse movements on or off.\n\n#### `click(selector?: string | ElementHandle, options?: ClickOptions): Promise<void>`\n\nSimulates a mouse click at the specified selector or element.\n\n- **selector (optional):** CSS selector or ElementHandle to identify the target element.\n- **options (optional):** Additional options for clicking. **Extends the `options` of the `move`, `scrollIntoView`, and `getElement` functions (below)**\n  - `hesitate (number):` Delay before initiating the click action in milliseconds. Default is `0`.\n  - `waitForClick (number):` Delay between mousedown and mouseup in milliseconds. Default is `0`.\n  - `moveDelay (number):` Delay after moving the mouse in milliseconds. Default is `2000`. If `randomizeMoveDelay=true`, delay is randomized from 0 to `moveDelay`.\n  - `button (MouseButton):` Mouse button to click. Default is `left`.\n  - `clickCount (number):` Number of times to click the button. Default is `1`.\n\n#### `move(selector: string | ElementHandle, options?: MoveOptions): Promise<void>`\n\nMoves the mouse to the specified selector or element.\n\n- **selector:** CSS selector or ElementHandle to identify the target element.\n- **options (optional):** Additional options for moving. **Extends the `options` of the `scrollIntoView` and `getElement` functions (below)**\n  - `paddingPercentage (number):` Percentage of padding to be added inside the element when determining the target point. Default is `0` (may move to anywhere within the element). `100` will always move to center of element.\n  - `destination (Vector):` Destination to move the cursor to, relative to the top-left corner of the element. If specified, `paddingPercentage` is not used. If not specified (default), destination is random point within the `paddingPercentage`.\n  - `moveDelay (number):` Delay after moving the mouse in milliseconds. Default is `0`. If `randomizeMoveDelay=true`, delay is randomized from 0 to `moveDelay`.\n  - `randomizeMoveDelay (boolean):` Randomize delay between actions from `0` to `moveDelay`. Default is `true`.\n  - `maxTries (number):` Maximum number of attempts to mouse-over the element. Default is `10`.\n  - `moveSpeed (number):` Speed of mouse movement. Default is random.\n  - `overshootThreshold (number):` Distance from current location to destination that triggers overshoot to occur. (Below this distance, no overshoot will occur). Default is `500`.\n\n#### `moveTo(destination: Vector, options?: MoveToOptions): Promise<void>`\n\nMoves the mouse to the specified destination point.\n\n- **destination:** An object with `x` and `y` coordinates representing the target position. For example, `{ x: 500, y: 300 }`.\n- **options (optional):** Additional options for moving.\n  - `moveSpeed (number):` Speed of mouse movement. Default is random.\n  - `moveDelay (number):` Delay after moving the mouse in milliseconds. Default is `0`. If `randomizeMoveDelay=true`, delay is randomized from 0 to `moveDelay`.\n  - `randomizeMoveDelay (boolean):` Randomize delay between actions from `0` to `moveDelay`. Default is `true`.\n\n#### `moveBy(delta: Vector, options?: MoveToOptions): Promise<void>`\n\nMoves the mouse by a specified amount.\n\n- **delta:** An object with `x` and `y` coordinates representing the distance to move. For example, `{ x: 10, y: 20 }`.\n- **options (optional):** Additional options for moving. Same as `moveTo` options\n  \n#### `scrollIntoView(selector: string | ElementHandle, options?: ScrollIntoViewOptions) => Promise<void>`\n\nScrolls the element into view. If already in view, no scroll occurs.\n\n- **selector:** CSS selector or ElementHandle to identify the target element.\n- **options (optional):** Additional options for scrolling. **Extends the `options` of the `getElement` and `scroll` functions (below)**\n  - `scrollSpeed (number):` Scroll speed (when scrolling occurs). 0 to 100. 100 is instant. Default is `100`.\n  - `scrollDelay (number):` Time to wait after scrolling (when scrolling occurs). Default is `200`.\n  - `inViewportMargin (number):` Margin (in px) to add around the element when ensuring it is in the viewport. Default is `0`.\n\n#### `scrollTo: (destination: Partial<Vector> | 'top' | 'bottom' | 'left' | 'right', options?: ScrollOptions) => Promise<void>`\n\nScrolls to the specified destination point.\n\n- **destination:** An object with `x` and `y` coordinates representing the target position. For example, `{ x: 500, y: 300 }`. Can also be `\"top\"` or `\"bottom\"`.\n- **options (optional):** Additional options for scrolling. **Extends the `options` of the `scroll` function (below)**\n\n#### `scroll: (delta: Partial<Vector>, options?: ScrollOptions) => Promise<void>`\n\nScrolls the page the distance set by `delta`.\n\n- **delta:** An object with `x` and `y` coordinates representing the distance to scroll from the current position.\n- **options (optional):** Additional options for scrolling.\n  - `scrollSpeed (number):` Scroll speed. 0 to 100. 100 is instant. Default is `100`.\n  - `scrollDelay (number):` Time to wait after scrolling. Default is `200`.\n\n#### `mouseDown / mouseUp: (options?: MouseButtonOptions) => Promise<void>`\n\nMouse button up or down.\n\n- **options (optional):** Additional options for mouse action.\n  - `button (MouseButton):` Mouse button to click. Default is `left`.\n  - `clickCount (number):` Number of times to click the button. Default is `1`.\n  \n#### `getElement(selector: string | ElementHandle, options?: GetElementOptions) => Promise<void>`\n\nGets the element via a selector. Can use an XPath.\n\n- **selector:** CSS selector or ElementHandle to identify the target element.\n- **options (optional):** Additional options.\n  - `waitForSelector (number):` Time to wait for the selector to appear in milliseconds. Default is to not wait for selector.\n\n#### `getLocation(): Vector`\n\nGet current location of the cursor.\n\n### Other Utility Methods\n\n#### `installMouseHelper(page: Page): Promise<void>`\n\nInstalls a mouse helper on the page, making the pointer visible. Gets executed in the `GhostCursor` initialization when passing `visible=true`. Use for debugging only.\n\n#### `getRandomPagePoint(page: Page): Promise<Vector>`\n\nGets a random point on the browser window.\n\n#### `path(start: Vector, end: Vector | BoundingBox, options?: number | PathOptions): Vector[] | TimedVector[]`\n\nGenerates a set of points for mouse movement between two coordinates.\n\n- **start:** Starting point of the movement.\n- **end:** Ending point (or bounding box) of the movement.\n- **options (optional):** Additional options for generating the path. Can also be a number which will set `spreadOverride`.\n  - `spreadOverride (number):` Override the spread of the generated path.\n  - `moveSpeed (number):` Speed of mouse movement. Default is random.\n  - `useTimestamps (boolean):` Generate timestamps for each point based on the trapezoidal rule.\n\n## How does it work\n\nBezier curves do almost all the work here. They let us create an infinite amount of curves between any 2 points we want\nand they look quite human-like. (At least moreso than alternatives like perlin or simplex noise)\n\n![](https://mamamoo.xetera.dev/😽🤵👲🧦👵.png)\n\nThe magic comes from being able to set multiple points for the curve to go through. This is done by picking\n2 coordinates randomly in a limited area above and under the curve. \n\n<img src=\"https://mamamoo.xetera.dev/🧣👎😠🧟✍.png\" width=\"400\">\n\nHowever, we don't want wonky looking cubic curves when using this method because nobody really moves their mouse\nthat way, so only one side of the line is picked when generating random points.\n\n<img src=\"http://simonwallner.at/ext/fitts/shannon.png\" width=\"250\" align=\"right\">\nWhen calculating how fast the mouse should be moving we use <a href=\"https://en.wikipedia.org/wiki/Fitts%27s_law\">Fitts's Law</a>\nto determine the amount of points we should be returning relative to the width of the element being clicked on and the distance\nbetween the mouse and the object.\n\n## To turn on logging, please set your DEBUG env variable like so:\n\n- OSX: `DEBUG=\"ghost-cursor:*\"`\n- Linux: `DEBUG=\"ghost-cursor:*\"`\n- Windows CMD: `set DEBUG=ghost-cursor:*`\n- Windows PowerShell: `$env:DEBUG = \"ghost-cursor:*\"`\n","readmeFilename":"README.md"}