{"_id":"smart-tictactoe","_rev":"63-f97f43f37083522e70c53cadef5fe02e","name":"smart-tictactoe","dist-tags":{"latest":"2.1.2","alpha":"2.2.0-alpha.1","dev":"2.2.0-pre.2"},"versions":{"1.0.0":{"name":"smart-tictactoe","version":"1.0.0","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"game.node","scripts":{"test":"game.bestMove(    x    );"},"keywords":["tictactoe"],"author":{"name":"lukechu10"},"license":"MIT","_id":"smart-tictactoe@1.0.0","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-+odqxhHrqOknhurUNx1OqLO6qYqkp4uJceIt/Py3r0kbqsO0ORE4XuUYcoHKp/gC7DKC/hj5Kl2WL6L1f0hZbg==","shasum":"7c43a2586f108e3c01763ef366c6eaf025a81511","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-1.0.0.tgz","fileCount":17,"unpackedSize":6253886,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbcfdoCRA9TVsSAnZWagAA+WYP/3lABTHk32pgj+pKPjFx\nd2JkQe7lHhd5ItqcQqGzedwl1iMfVeTKLXLX+YgZVX2wrGQwez7N5Y59Q5HG\nVs0CpgSc2e/VBQtR3Jq2D/iO/pWtra+gDea/1IygpOnR3X9F1pUSUpicdhB1\nNrUr9T3D3wZd0QSg61D6Nf6GCp7DsUI5BR4/8PHWvtfqe8aadvWFfEHNmoP7\n10DPBJcBMFdZ7mYdZw9SzAbGfhcua53+KLBh44FwRv7gEwkzkAVUSwP+1oKb\ny3S/GjKRsBklDbORK/PIk14/obIS2vfGNktzVg9cop8fOxx6ZY2XXoQ62s5H\nwEZzMK7z6wkn1/Udsbf8malaY2R1gHvsTAMguwuQQ5LPsf3RFFX65wAOopSP\nWkCMmZ48z/CasnN6TtozFF+w8BMrSND9RKVtJ88kZMmUAoW1xEOcUMnRGohb\nqSW11h8rZg77+pXy5IdtZkranuJcx07vX5meDmhY6BvqISDCZ41yMXHyacR0\ngZEfI4ra/+SXD2Pb1DTjIdfqRMLs687oafIhaOKRkI/aR2nlYnXSZt0NAh2f\n7FI1U5AohYPXR8GMLRnlmpWtjDJ4v2Cpx8xXOD9s1pbl/w0ut86ooJ/VuPyv\nXOR0MVemDyMPRKqkAI3t68MW4lL0Vg9bgR6rkw/VYJ9x3jDItBTp0eJGtpvS\nCtWU\r\n=w7HD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICz5HkTVByZQWYPVI+Jf7HHRjUDgaJ6/ueT2bhAKU/WQAiB7xSQ7duxjWq1AXnxMM0erHI+hOwF3vWi9ZILwjksW3A=="}]},"maintainers":[{"name":"lukechu10","email":"lukechu10@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_1.0.0_1534195559677_0.5554321895906462"},"_hasShrinkwrap":false,"deprecated":"Uprgade to 2.x branch recommended"},"1.0.1":{"name":"smart-tictactoe","version":"1.0.1","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"game.node","scripts":{"test":"game.bestMove(    x    );"},"keywords":["tictactoe"],"author":{"name":"lukechu10"},"license":"MIT","_id":"smart-tictactoe@1.0.1","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-HyUDZg1UiCCcCdMUxN9t8XPzPjkQHpNmmAr21QJJjmxrXhatO15AMGpKCRiD/q+byumh2UWWqn31qhfPlLFrlQ==","shasum":"acd276e15598cbb1e756a35d3592317b542a0813","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-1.0.1.tgz","fileCount":18,"unpackedSize":6254449,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbcgAUCRA9TVsSAnZWagAA1SoP/Ag59OhV23RPKTZzbZgr\nbYxYLAx7TbCmrOPFqCAMDp9hU6uWSmqOpbPm/qKUgUnnpXqdtsdvm3OdGvgh\nChAnHC7zw+ECc4FdKpsS+5G8YhUkpSv6jprDmWMVTqV0Lisk8taBcmPYLi1Q\nji6vXj9ca0iclqDFMmP6N8VAwMFV+So9EtSFShNxBfsaVWfKoJYSOgF+3c5+\nWXQagDaaD/EoyxUQrIAr4O6NJ0qGlwddl31bbdJ3I7Ak3393QpkR3sN8Cl85\n20jD7f3Jc+XH2IIKn6OjH1xCwythXd3p8I+aTBAxAb4FMZozQbEicpIS1Mlj\nJ/wKIGKZny7aBjuTV1dnDRx72lPB5wogpMcSfikwZcGrOBHohpuvN+RQBBe2\n2qSO9HuXj6McMsniyQRZMkoVMhPhB2lYvCrwWcwAG3Xcc6ZfbrVgDBufpOlP\nCMQQeUU0vV83izVXQqxrc2z1mPeGzAXxhVS3Q4rEFIQ7lG8jRRRYmZEmi44p\nlPOkohcAwuz0vQi+vaY7e+tTxi/IdMxD5jwC/Ire1ZA/Fng3WPkzsg/dDHNU\n/GKiR7o3ZTJYe4MmWL5hNNzoZusVEkYwDWps1gpotPFLE+CfCAaV6qFgF1nD\nlzPyPP1Gdc8jBmg3q61kzc6bu2FPxJMsLjBAlVQ6pV8EgdKbvVpEhnUU5zqG\nkS7k\r\n=ETHe\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGp7CZCW5DP3eoAiQbwyqWz1Stt333KVA1ssoXMrCcX+AiEA2oxDfroJPa8/cmALh25ZWKuqd2fKpfyD+IL3lJUcls4="}]},"maintainers":[{"name":"lukechu10","email":"lukechu10@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_1.0.1_1534197779577_0.018141338963781006"},"_hasShrinkwrap":false,"deprecated":"Uprgade to 2.x branch recommended"},"1.0.2":{"name":"smart-tictactoe","version":"1.0.2","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"game.node","scripts":{"test":"game.bestMove(    x    );"},"keywords":["tictactoe"],"author":{"name":"lukechu10"},"license":"MIT","_id":"smart-tictactoe@1.0.2","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-0G5l3w8M28NhX8hO2ZKb/u5DPuH3VkdlUSnY30b4K6Zjk2CLIfMuMxJa5zGqAEed8When0AHIPzlf7enLLUd0w==","shasum":"8371d307969dd7c04c173ba8651d71858250b475","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-1.0.2.tgz","fileCount":18,"unpackedSize":6254507,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbcz/NCRA9TVsSAnZWagAANy0QAKJ7/J7t1WQbPa8TjUvL\nC8ftZFSWPihzKPSSorM4hfOBYAfBDHXZJr44Zl/+DAtzvROSzBxsg1rcmvgQ\nZxAuloEFYeifTHM+tCa4wwSvPhF2/lxlc++6j34rqtd/7Re+411vM12fabEP\nKbTP2QRM9MfCrkL1f+0ylme6aYIEMeKHXUaoNtMeXbCPX2y6coxjnHKjqBe3\ncQH6G1z23kGEL8T9Rkt4f7WYvsXygD+R20Bpvam1PFHcT72ZWplnIhxhCmRI\nmanTwhVFNyKh+/x4ZLerfW7WTlIW7553mn+offNXnjO+LP0FYs+MptSN0+1S\ntDhUQyf0PwIUWtM762Dt28dULnwGrjMficBOe7mP+GMdsQqOfzK/EIVjQbvw\nTl2WkX/lRV5eytK+J6+ZszXnMHDHyrTolH/dSi+X7Qz/7AkiXJE9uBlc+2OC\nzr9gfifRR1JwEtKro9knPXmundKY48qKgRerEKo/k7rQZveCPo5DDdRdfWcc\n/a5RImZ6iB3mmsjEwlninSzOSuSRLkpEJBrR9Eo7xul1+slam/5W0Fa5C9z5\nA8V3lCc2L5PcHy7Ap3rNkB+wSR+jh87D73s+9j82UBeDLTDdZwRGg4dkyI4M\npLCuUogEvfZya+M+gZf5BQtMJ6fm5YQoOOv8a5v/YsR1V5A3r3eO9lgWccDi\nDvCR\r\n=Km1S\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCDxVeY1lr36VXLm7QwW7V9zcSfmYIvXcVqkyJ153ERXQIhAJhUzTwpguNp5dtChHvSN1tMGdegVc3KfaZlu/jJ9zR4"}]},"maintainers":[{"name":"lukechu10","email":"lukechu10@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_1.0.2_1534279628718_0.7506699171777089"},"_hasShrinkwrap":false,"deprecated":"Uprgade to 2.x branch recommended"},"1.0.3":{"name":"smart-tictactoe","version":"1.0.3","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"game.node","scripts":{"test":"game.bestMove(    x    );"},"keywords":["tictactoe"],"author":{"name":"lukechu10"},"license":"MIT","_id":"smart-tictactoe@1.0.3","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-2xBAJYq7k/km9dThyVdJLn/w7o/xl//7Mu1Ce0M78WYCxWaaDXBzvg5AA+B2kFyYvbvdh/isrir7eE1zf4TswA==","shasum":"7c05a804c4fbd9b1da75a57be7edcc1e6eaecadf","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-1.0.3.tgz","fileCount":18,"unpackedSize":6254533,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbc0CDCRA9TVsSAnZWagAAW/cP/iFornDo/WqZmrTO0srQ\nLlzI/EmANLaom/VTsvCCtbzWWfCVaaMbNT+WFRHIbJISTCrPunuNQ6hAMxWs\nf4WUapCKa/ZkaEk/ZEuCPBBDAGu8j31c2VxieTmA2iUcpuWuQljtSp2gisRI\nzbsZ7SgBiixweIRm0bUitd6RPCzD78nl0aSgaxXMeD3cM6tbHDGbX7bIWHsU\ntDlfgE7aymiLTEYQZp4nU6sN+OJk6lD5ACoqNnbMhmKFB3xrLHgd6vqq27gz\nnHbE75SsCcQAHiDVapDDSuWakgx9rL1M6OULx8ylediRl+7BCekMxGW4k3iV\n+6gWw9S+6KIqn1McewEuQ2aV1vowlj90ubabkmf6tYZQPWDEkMmkJW94Mmk8\nzB9Mv07f2s8tLOGYwSUJB4M3r+aZxt+bjXGsOiQpPWEhwzWS+uLxaCgqqB59\n0ZUPiqwLyFRdy6bdQR9vnlMlq8R8gxfdWlaNm2PnW1FD6bfTmO3THP0gKZ9C\nWxMfTEqSoleM/lnQgEJWJy+rXOex5reTZVNbao5GkDrwZWjZ2O73PYtNrOjR\nJjOTQJY4OtbnY/Th4bLxG9/9dLBmZvzhLFRsHSbkBBGVSsbMQKDhtcBb6pwn\nhvuFPy8aFz/YIvPqjgrGYY+XMiWccC6qplvJgaQrjLQnNmaUoQqbLvyfAJNU\nN973\r\n=HlYl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDxre/SaybRUH20f9693Tp2nZBKMBFGOJahjdBai8wihgIgXrDoErfWGCtdjlzhJXkDt3cTFKqLhJV9kU2AQBaTXq8="}]},"maintainers":[{"name":"lukechu10","email":"lukechu10@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_1.0.3_1534279810887_0.38443633457667903"},"_hasShrinkwrap":false,"deprecated":"Uprgade to 2.x branch recommended"},"1.0.4":{"name":"smart-tictactoe","version":"1.0.4","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"game.node","scripts":{"test":"game.bestMove(    x    );"},"keywords":["tictactoe"],"author":{"name":"lukechu10"},"license":"MIT","_id":"smart-tictactoe@1.0.4","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-ywyVo2zOtXSY3fc4Gkyp7e5hajqAVQwxi+jnmEHg7h3m6PYj92+OULKwg58kyxwGzmSl6ESC+vhZ9qxoeDhbag==","shasum":"7427e1bb049689a64088432d7831ac4fce4ffc23","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-1.0.4.tgz","fileCount":18,"unpackedSize":6254508,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbc0FOCRA9TVsSAnZWagAANhsQAKKpZbyGpFoULsky1g7g\nujHXLsBeMlrZrUsBpvUuwAI9w582DwVzM7xE48C46ZNaJFph/7q/tR/P7nZv\nkcNpWx41nnXm1QMvUyRg4oqNkso/tkZUQWgjCYd86U81ggFX9UxCQrQNTu27\nusGQC4jZAQRmHaxvE3Q5DgtViexjri7vm1Dc7WRNTW7ieKO61DLuN1xBNdmd\nIIPUK2MX5FnmVgrMWEwlAVH90V7Y3PnA/TTOMdVY9JdboHCUugV0L0SZ03UC\nu3kNEP/AXqlktnoGCfHTrHS7n+y8JFp4rq1bYVRbgD80j1cFTebgKDjKZ+vP\nOv1E0i92V/VKf910h75CbCGJuwc2kjLpTzlycW6NYFYfTncPzmgc2Hl82EoK\nbzW2lvvg8Gf5VABStxlQp9bJs6UtT066wcErabkmZA9N7kyioCwbMYYaY4qi\n7/v/6O4C9ivHujZmDKZS63NMf9JuT90JzIw15xYmjGefsgGxn4atBn5mpyGi\nPZzj5FrwHsReM949c3dyvSCDxMffgcgiIvdcj9WxLOfP/9hROClIgkVj2ggR\n3chO1xTSNInU4yzaLToMeZ+TgFD21/sHw8x65dbHVNfbDmDBDzlpoZ/jiL9M\nn2MjkeyVNooSzwspjn+fJ29/C1DrdXJ9pQkn2w2g9ttsIOYpoc1PBOputoQu\neGAE\r\n=1MI/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA7uRfHJXIjaInGZCtLroF9a98fqbcgkJekMswukRswZAiBLB++eZjz7J7S/ARtawuMUp5ObW/6dzY5da3kJdAQaYg=="}]},"maintainers":[{"name":"lukechu10","email":"lukechu10@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_1.0.4_1534280013748_0.5882582985802838"},"_hasShrinkwrap":false,"deprecated":"Uprgade to 2.x branch recommended"},"1.0.5":{"name":"smart-tictactoe","version":"1.0.5","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"game.node","scripts":{"test":"game.bestMove(    x    );"},"keywords":["tictactoe"],"author":{"name":"lukechu10"},"license":"MIT","_id":"smart-tictactoe@1.0.5","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-UZxGfFDjux1ApULluCH4Ijah3tk844SUi4Ue2X9AI6gXPKc7Ppo8oR6b7WThvVvisKHIeBVq5y3quXl1OZnIWw==","shasum":"71a45f618fea8a78f7f7f9ef3e88ad418fc42bf6","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-1.0.5.tgz","fileCount":18,"unpackedSize":6254500,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbc0HuCRA9TVsSAnZWagAAm1EP/AzsnKZRvJdo/v6yYnXo\nWK4Lidj/BfvI6bateGHKt+bqGQnK0EpvTD9VOfXowIkr4Z+Y/UQLUaR46zU3\nYnb9TmWobFpckrPmyIw/lqC90OiSV5e2Z4jKkX6SXrOft03hp4FyhjxfRQb+\n/7/6IG1HG4OZTOAiJtA0ySHZ4PS0qf9kHPzX2HcvNiVYIzhohok17sJCVAX6\n05ZtwIV+v0YIpurFC8M6dzdxetPJoPzrFT5pDXgh/6KsTrwQypININ2NSmoE\n0ntj4meVgUbmsvJdDPoOi7kQiJbBxRXhi971GWJvXPWESeaRoqQbWUsABSN5\nI8BlTgFeFiYNspTJyasIiHAYEyVwnrLY8HV7/qPfx/KBM3MeFZ5/TueVoCFH\n73GWfOPJBltJ97vM6FcN7BLqWzLfHbW5nSrCnwCSqFzX0JXXHM/E6Vtb7MDt\neXUmepUfzfleSzs7qqMdb7LANQBpdNVblVfLeCGtBc4GAkwFEVLZnXdCfLt5\n51PEMyOe3sdQrtUsbCMW71AoZyjbYqrO6nowx1a6psVln05bZ1dVuWCgaiqt\nifcknyr9xRV12o2vB4uqs/kgVncsQwQuaxvCpGLn7dwmD3Mx68+yxF6SVAz5\nI4RHyVOGPC3iyPw8l9RrJWhLPvF9RSLZ+uKLUZvaa4S/WYy7+r6yf9hUSN4K\nu+xO\r\n=R4eY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDvRJDrKpXBjiRsZZ711axvWNUypSxRjkhSdm6fgzm4RgIgNn/kf7O0KMAIW9Xuo5KIA09themqNXjn4DmNewSUlFw="}]},"maintainers":[{"name":"lukechu10","email":"lukechu10@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_1.0.5_1534280173756_0.26511864962529996"},"_hasShrinkwrap":false,"deprecated":"Uprgade to 2.x branch recommended"},"1.0.6":{"name":"smart-tictactoe","version":"1.0.6","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe"],"author":{"name":"lukechu10"},"license":"MIT","gypfile":true,"_id":"smart-tictactoe@1.0.6","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-Vp6TznfeYxVGAQKYWckHYm7H3x25zkeo1o+f+UqL7R51U2oKfIVNYi0zABNEkHgtm4hsRTDTWLaxS32LEGearw==","shasum":"8db4577359aa388b61f1c4210fd862b76c0e5b63","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-1.0.6.tgz","fileCount":52,"unpackedSize":7925217,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbc0oLCRA9TVsSAnZWagAAA5QP/1K0Xg5aDGM9ioVXfHxZ\neryXHYNxySeY+tKD9XLE2EDZZzKKIM0Xm/jhkBW6iCte9rYcZWLCLlkh6J5u\nFRXqxKeuetuioz3sMnEWP5wAC4SZSNIg2y3qj2Bq+p483IYCvgJCd2mbuJQU\nvyZhCk8Si/D98Zph1WBnfm6AiGCOngVTvMmyDJjNcUhoDFTUGAXWI8hUAPP9\nNq5eQXl7tarYzQ0MXKP6GglqLKIUfR66HxcOr4AYHAL/KiTE0YQi6YN5J9A3\n5EM3LCXMNBAhSfqn4/agSXS3vp+lM8DiNJKaEBX+7f7TaQa5ex3cbqvVLy9w\nE4Hy/H1Y49sxlnBCeJAkF1kDTmzHqQa2pBUKPMmcRkeRX9iM/SmLRSt9uizH\nbQNeJsTtkpymw7UmlHSAN3WyXaoMuJGmyR8VtPKEfqJJ5olp/fWvW9Lmafv+\nES/Ti30vdt2PGvCh574RNj1qCuXLfXB7MHA4xDVM0rWXOmyTXIym0Kb0NqW8\n66Ue0JhbLq4lOX2bLbI2UsVJDea8qer22UULAGd1a9ZrTnBaBpx25/JlQiyU\nLo67pKwH+guEVUM4eHDTCPwJc7QiB0BmYotKZQYAZMNZi4wJgXNi/9i66Cxk\nl/rj+eYbHJIrrb+mnQOF3sj+apuB/m5p79EJjIHWf4cVYGyuIt2BauOQusRk\nVhZ5\r\n=NZh8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDcGUXJMEwmICBMB5bcKuoN/G8S0nqJTYoSDZY9rybqOAiAvio0tKqgg0qYBNKbFvoU3qEieAlpOdlqlERQwnb9Ufw=="}]},"maintainers":[{"name":"lukechu10","email":"lukechu10@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_1.0.6_1534282251061_0.6429602246760642"},"_hasShrinkwrap":false,"deprecated":"Uprgade to 2.x branch recommended"},"1.0.7":{"name":"smart-tictactoe","version":"1.0.7","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe"],"author":{"name":"lukechu10"},"license":"MIT","gypfile":true,"_id":"smart-tictactoe@1.0.7","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-MUiJd/dbe3AJ24wXLZCtXwasOO70l9GfChAPGHd8UkCUfpPkp0RQ+H1wg+MIRJJ1fUc4ThQnCV/A+y/eLjHpzA==","shasum":"03366114d6952b77674098cfbde3758140ff32d3","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-1.0.7.tgz","fileCount":22,"unpackedSize":6272804,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbdIc0CRA9TVsSAnZWagAA+7QP/0k8ZrTnyhyyyUvvA03s\n5C5qk8i3EJfx1eDxlSGRY3pEewBdrIi299suXxyavvcOVayvmc16tvXKwQ0a\n2bl9aAv2Da+W0bXEvPwKn3TGYTuVKpowTcp5In495pmAlFgzHav0voVvW8BM\nzbTTm3rOBpmaHe4bJ3uiu6ndzbIVB+imMD4Z4wjWGLvz5ei/hBfwsKI9SPeS\n0xYcmUZZ04DSLKmmLEXQ91fOX/MdApnD3M5+LjkpudTuciWLxAAbQXITA3tK\n2t4OQvv024R4hoKJM0ziimQjcLTEbI3RMaUtIlMbeyE6W5JR5Zxc3GHyT7hg\ni/pugMhKcOXkdZJh13wyQS+Ono0YZ/B6rnXaZUOxHHW7f+lLkMwwM12e7+/0\nL6kefUIUpqBuJHb3q1JIZL/KTFIm7lesyjF+iZPD5GGPMYtUIFigZEe7g0R4\n7R3UxwDlIKUdwVrAbJsGPQwXEH1HUYQjNrCTEQqcsRiY1IaT/MvpMbtBApg/\nLIBwdeluuy12fUHh9tlioK4SKwrqU/kTGe7na5riEjhC+UYQKZaU+jfiAL2a\nxQ6/wtO7tCCyW/KL+f7XyPqQO3bQu/ZNqLf5I05/TZv1Ed82Di9uFkfleUai\nGWW8ZwPwOgSvXKttnwcVLWZa1eSaAQsDnpRs3GH47EeErnfqYzOc18pCN5M3\nFIHE\r\n=ROdR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD+d4FTDTiA0vQdTHcINQgRyuf4GgtMWXw4f0q2lMgNkgIhAKKU/fXrVNqmdDhdEJ2usFoZ9kaQEZ21RM9yTdruNVnk"}]},"maintainers":[{"name":"lukechu10","email":"lukechu10@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_1.0.7_1534363444242_0.11316599489519374"},"_hasShrinkwrap":false,"deprecated":"Uprgade to 2.x branch recommended"},"1.0.8":{"name":"smart-tictactoe","version":"1.0.8","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","gypfile":true,"_id":"smart-tictactoe@1.0.8","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-WLdL4lSe4HRL3031rYnB/3x2aOmWOJ/JzhHAeOLWyl6MKaQ3h7GaPJswUZEfMc7mOKHA9ujRrmC+nEt858n4zg==","shasum":"91fbabf745f4045c4021b9d87d15b48942cf2457","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-1.0.8.tgz","fileCount":22,"unpackedSize":6273966,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbdInICRA9TVsSAnZWagAALxoP/1QePI20ieBQ+Q7BE/ax\njsXAt5Lz8WTyiyyq6C8xZn+lrStlV/fA/5A5+g5MsCpvQpRjp4//r5QDV9Pt\ntdAoYGCKN6HNqNzMvyMaWuqasWNwJ1MXCdsKxbliSjohEG+6z23mlIFwA9Y2\nnsSYrDsdaViUPRSaPYc7wVmGKSAR/s+LY7AcADyaWvPX7IdHkjtD4l/aKPya\nVqufqBtgjL6YPkYRpFvt0X0GkrZ7gmKwOcIxlQ/dkQGvxI1I/eSXomPHfYwE\nfa5UxIi55ppLDfSKCRpOX+B9bnjZcfWnfv3WqhwQwEX2p8o5L4rZ2fZGrqP4\npIii/JvEeavGhB3PZvAxjSVpvpHBVxd9lQvaVzmsVpXagABZR568Ky9vLJzT\ndMJbReo+j+hpDd0nrp1Lv+Ya0AKmfkK3R3GFWjtb4dajTNaNTAwaFDvINxw2\nIcP0/nIteYNA/D+/7AHpjOSWYeSHbTwK+odqACy4KWe0ms/y53P2yt3XDlvM\nz9ra5WpLFpqmf9v/1xzMhiKtKoJU8xBYwwHU19MND4unG3mwfitWiynobFKq\nhTHjekf3baTTBrm5IcuhMr9XWhM8YX4sWBA/9MVltdGV32lGqJNVY5tyCEP+\nwgyeZ7yU6oEyftrYo3E1opevfQvMQrl7LST5d4nRf4IZk7iR986JDlfXBYPP\nX7um\r\n=gxe9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCLcdag6o0tobCWy+H54p7ytj7EX/DIX8UO6syMxGJWcwIhAJVZac8UYfqkR00UD1eYiYA9dv7Io35QnbDyaPNdkE1H"}]},"maintainers":[{"name":"lukechu10","email":"lukechu10@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_1.0.8_1534364104063_0.06420299112828731"},"_hasShrinkwrap":false,"deprecated":"Uprgade to 2.x branch recommended"},"1.0.9":{"name":"smart-tictactoe","version":"1.0.9","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","gypfile":true,"_id":"smart-tictactoe@1.0.9","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-XWzR9XDV5aykwEm1JDBo46rgjATtMOtg1tBz7lSS52Je66hhcJeZT02sw81lWYtj/daj8S8l6Ou9dQE23V1k5A==","shasum":"209bc37663383898aa9eb204780ebc630f2aaf5c","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-1.0.9.tgz","fileCount":22,"unpackedSize":6273968,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbdIovCRA9TVsSAnZWagAAVW0P/32kRpcCWKCLQXf4NTum\nsiwQ2AF5rrzDVnMbqh1FGbS4htaMMYRO7W9pEYye81r2GaOqfuHMwnci7t/3\nxGShzpkf02L5xzJRcK4gBTpbZ5h2bNrJY7B/VcfRpFeAP0CsJZ/QecO1nby8\n5WjHyYM9Fk+iZowqEEL1lkJH/Yp2eMnfGo3R6q6/WqvQZbXq64VBJQ0cKGpy\nKdc+yzYd7ZUpXo2dgwYCHrK5xOwdKXlCX/Bt3Z7g0kcCqgq6t8CFTfVJHh0f\n2G/76GoSLWjB5b8hXDBx9lv2reR45tQoJq0i+6Hg3dswIvHuooNMNKTZxTn1\nUYO58CXUoeQ6qlluFnmSRfN+6Y1lJZ8YDJzsKI77g1FJIcsU1ceSaUyPGHoC\nfGTVWem+98i8QG8bWyQR+8HP+s6BQhpBebouyP6h9Pnv2YDf63O2S5auCY92\npczRHjy3ssg5EEkRNjJ5OB+m8o+VELh1F2yyxAGb+70C/Dij307w12bimb1y\nWDFTkpi+Guo6jQTMZHsimymLxyP5uba545YVEhAOHxTaLL/YvIw9mxGla/Ny\nUT4Mj+d/WMpRKrzFwFVEFaPOL66w4bXiUQGpdnfZ64ZKioyMWg3Sq1pj7K8v\nCfIZNYQ+MICtvOOZ53GXvtdSxfkhlJVuUBYf/VPlLIsa+TZf8EJSwDGW8v/Y\nSNfT\r\n=tUun\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICpt1dhsKjalAYAn5hZ1F63CJNYmzAmnHtwDDmqmWQrnAiABp3hfsk49hTXZ5H17JxdAC1NFroj+wx4/+oVBNX99zg=="}]},"maintainers":[{"name":"lukechu10","email":"lukechu10@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_1.0.9_1534364206960_0.2619993622588235"},"_hasShrinkwrap":false,"deprecated":"Uprgade to 2.x branch recommended"},"1.1.0-0":{"name":"smart-tictactoe","version":"1.1.0-0","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","gypfile":true,"_id":"smart-tictactoe@1.1.0-0","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-z7zSZOCsh1Fh6fXpvJVFf1hvCtVOO0+1CTrh/dAHlsyCVwhX9XeVt/o6g7zYIlelhzAaWpJYq9/jjzpTBB8Lag==","shasum":"fedc109f511c413be0a49c920bdce4cf65063b2f","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-1.1.0-0.tgz","fileCount":23,"unpackedSize":42239393,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbdJHMCRA9TVsSAnZWagAAdbYQAKP/HGDHnP2+Qx6Z/S0p\nN863L9sO0ob1Cuk3FySOKenYpHPkXcG8bpU8cEUwV1KKISAZBPh5e7ECkugE\nxFhW2RmeAZZZF2SHfNxcew9xVBvhm6oH0xhYibh3RJZl2LMtjsaNHGPUhpuS\npaDj7Op86LT2/RnUHr+zr4Id6pw06DV/lvB5NHuW23RAnfO0id/7TFJxbh9w\nmDWeKPv8G7OjZsP2VX1O6h72/3NJIdnCfyrDhPxXimPEm1cM+VicAbhdHiZY\nJw0ldclTmOO9vgm0VQ1skdHQJvuSTYuaj4wUCyu2sWU4SLaxLH/zEym8JGFd\nV1EWnkDt+MfK8Wc0o14EZiIQ7buHW02mduthATCCMTnELwfSOsqYL8H5D+2r\n6IdGrj16nSDJrivveqbjkrLDjs7HCr65ljQcdbCtUUPlZQQm1pK8cFrFsbP1\nEwxJQYTSubWsq2NX71J/t7aRCMhjL0CGu3/VwCr5znCEnN61u2AnrfwHj0O0\npFH1uowXWshj+1jqzJPwuaG4rScN58j0g2Vh5Ls6s/NQNTgyii6ynBwsNeSi\nQ2fjkeo0nHVgzMsT44UxkgR7AkurWVIH3NVzni2HXMoeFmvMXITbkv2E5gl4\n4MzzO6Q+gDqNiwXtCUuFkszrWMpnDboe2X9qsoHo9UuvsjyC42lkrmwhx2uS\n+Q5H\r\n=+iSf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDqYHXR9fENHmvFvaTaYXtaAf5ffRsvswBxfeqJXkh6XAiEA+OHg6dwhUsLoFuhfsup3KLDSCD5cSM7Slj7nl0QyZwg="}]},"maintainers":[{"name":"lukechu10","email":"lukechu10@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_1.1.0-0_1534366156449_0.7581873801741412"},"_hasShrinkwrap":false,"deprecated":"Uprgade to 2.x branch recommended"},"1.1.0":{"name":"smart-tictactoe","version":"1.1.0","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","gypfile":true,"_id":"smart-tictactoe@1.1.0","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-YxCgexBQjS85vrXhgHLewPs2ZCBws/+kB/14A5ilWqrhPM2T77CmUUDvttUNNx5o8/Vw7o20KIdjhFHPKxn2Gw==","shasum":"1c4883a0807e5486657c1d1b72183bd65695000a","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-1.1.0.tgz","fileCount":21,"unpackedSize":42256432,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbdJKaCRA9TVsSAnZWagAADg8P/RLBbehd/bW5KGDdIGsM\nBXrPpWDPNZlni7ejXj279kafhB1H+OwOzATFRZx6p0CnNzi+GiY8+jxTTzT4\nHV5ZpyJ97uf9ommYuhDVJkl71FbOklM+x9Ntu8DqWsLyQ1LJNAUVVOzytmnc\nFus6vCCmqi2EPjFjxmqUfQwl5yqfqcO5mkYidpeZvgQd6ODL+xmGlifxll4V\nJiWgAuHltygMEyD8Uu1k2JF4esqVqNFByqBGPRymoCAavC9H2L8aYPTM3whN\nJX/KpSOOJnYOzv4gXWVAyuTT4e6aV68EiQsQvGWT4WriDj0p/SdU+3PqJCd/\ntavA4pMYKL/i+TaNqz5U0R5M3lPzEvXv4gHcf+Uf4ywJbVXTVUDeNIiH/SiO\nFF3Oqras+GAVE0w2y/PuHQalg5AY5aHWi58BXUEXNHWYO8xEpKvg0veIh9b9\nWZ0Ek6R7XpFY+BxoD+ipNwTfZMLcywiCfpOZ0nHHGQgbx2K8Q4kEWsOF3307\nLVvxp1ZzAVMuoIk65eLdcgahlRVlY+ch3J2AosfpgXq0WM21AB8oU4KRMbGL\n6m7rubfmikfrkDDfMVrH4kuMZDB8xdJJV3Q9kKM78OYv5pUR879yUPnL4LMT\nL/wtub2dbfSPUeJ+bRqYZI/Gz9pqJ/t8beTkxNUeaQu2Ieq6IiAX05JdREwV\nWkYb\r\n=+PjF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAF3KpjZf+XIC8RT2wwbUq6E6y8/WnjA+Ua4I03vsfoJAiEA7jAMcUNXyclKsT1y6jZbX1RMe9mVVLG7IibXHqH3ezU="}]},"maintainers":[{"name":"lukechu10","email":"lukechu10@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_1.1.0_1534366362634_0.6381886728851545"},"_hasShrinkwrap":false,"deprecated":"Uprgade to 2.x branch recommended"},"1.1.1":{"name":"smart-tictactoe","version":"1.1.1","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","gypfile":true,"_id":"smart-tictactoe@1.1.1","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-g8ln2UmX+Neimd5rb+YJq5BOSpKL0lm4dZha+/k2NRfI2W2+6NqhMQHKvW8ZP48kEdr1Hlyg1ywOYgoHMR9+lg==","shasum":"5d9c770da7b6b3ebe8f75b8ab3e4541896c71d33","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-1.1.1.tgz","fileCount":21,"unpackedSize":42267696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbdJRbCRA9TVsSAnZWagAAku4P/RZEzRoS95VvlSGLjJea\nnYMT5tpKfQqMmIAXrq+HDEyiejghJuTUmYqhIeP4utX10nPc8j0oJUNlbGqG\n2IJ2bzhv7KvAfM6MIbOczovNRBkY+qH54Fva6nM7sS6/15Atud1WlQNKGSH0\nvlsNWesQJuLnVqh7gfahqyFLbuWiXcjc2Xcb+B8OOM6wccdngO+WAhj6mDwn\n5SVguw1hKrDsxlW5B7kb1zpXWI6NJfn+naHMnEKHD9T7VWjb6fdTd50xqCyx\n0vNYMeW080XqefRAHZxb3unKEbUOphjx4DDFdLFg04rEgePny3kd06RMyb4v\n0o+nSsxF8gcsR9hDsLKrkRUD+o34mGLX1ju9YDhPyMxvaFd2Cf8fNhdkm3Cp\nsRNNcjLhj97tV2HLbIxHkk8gOJFLXLLpxFnxCWW7JFXMvuG6TCeVXVCt+Fi3\nAILhrVAWvhQPgjzl+nBUnKHmyN3q16TsI1ilyM4Y6QnPZz/p+Tgy09vpNPoz\npi632AcnB+EgA3LaX2tM1CkXlsoOENE0JBNDGL7rTy7sLFUXatyRk3f5pJXn\nusV/1Dq+2J0lN35zwHDxm9hIagTjDAUlk9OyNS/ZfbMGpIRFhAPp+tf5r6wr\nJfvNYyDv5i/428GFy5J0paJAwdTaErKz70j03CuMdQO6rIVl2tsawQMC9EGO\n45VI\r\n=tO/h\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDCP3I4qb5GSpYS4fw0PtB06D+o3wiVO5n4Rokm8dD02gIgSGfyD+EBSuK2/W3TpxA1UOKzxYem01G7bD25dOgE0co="}]},"maintainers":[{"name":"lukechu10","email":"lukechu10@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_1.1.1_1534366811343_0.26896377099652"},"_hasShrinkwrap":false,"deprecated":"Uprgade to 2.x branch recommended"},"2.0.0-alpha.0":{"name":"smart-tictactoe","version":"2.0.0-alpha.0","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","gypfile":true,"readme":"# Smart TicTacToe:\r\n\r\n## What does it do?\r\n\r\nSmart TicTacToe adds a function to your Node.js app that returns the best move possible for the computer in a TicTacToe game. It is impossible to loose with this algorithm.\r\n\r\n## Methods:\r\n>`bestMove(<gameBoard (type is a string with a length of 9 characters)>` : Returns the position that has the highest chance of winning (*See figures under ## Examples*)<br>**Note**: Computer is always `O` support to change has not yet been released.\r\n\r\n>`conversionTest(<String to test>)` : For testing purposes only.\r\n## Examples:\r\n\r\nSmart TictacToe is really simple to use:\r\n```javascript\r\nvar tictactoe = require('smart-tictactoe');<br>\r\nconsole.log(tictactoe.bestMove(o   xxo x);<br>\r\n```\r\n___\r\nThis logs `4` in the console because `tictactoe.bestMove()` returns the best location for the computer if the scenario was:\r\n\r\n  O  |  _  |  _\r\n-----|-----|-----\r\n**_**|**X**|**X**\r\n**O**|**_**   |**X**\r\n\r\nWhich is `3` to prevent `X` from winning because the TicTacToe board is stored as a array:\r\n  0  |  1  |  2\r\n-----|-----|-----\r\n `3` |**4**|**5**\r\n**6**|**7**|**8**\r\n\r\n## What's New in this Update:\r\n\r\n+ Added method: conversionTest(<String to test>);\r\n+ Fixed bugs\r\n+ Made code more efficient\r\n+ Added a simple argument checker to prevent invalid input: returns \"*undefined*\" if invalid arguments.\r\n\r\n## Installation:\r\n\r\nYou can install Smart-TicTacToe like any other npm module:\r\n```\r\nnpm install smart-tictactoe\r\n```\r\nSmart-TicTacToe does not require any external dependencies.\r\n\r\n## License:\r\n\r\nCopyright (c) 2018 Luke Chu <[lukechu10@gmail.com](mailto:lukechu10@gmail.com)>\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a copy\r\nof this software and associated documentation files (the \"Software\"), to deal\r\nin the Software without restriction, including without limitation the rights\r\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\ncopies of the Software, and to permit persons to whom the Software is\r\nfurnished to do so, subject to the following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included in all\r\ncopies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","readmeFilename":"README.md","_id":"smart-tictactoe@2.0.0-alpha.0","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-/23BIShRAlLqP171SeprnaWCPL6ZaOQfjFpWTcbNyv4B8ydNmjxkxCAmcPXWyP7oAiDRudB5DOex6a+Pn2qM9A==","shasum":"56f8bd4c92168203ea690c8b10159e430a0a97fe","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-2.0.0-alpha.0.tgz","fileCount":21,"unpackedSize":42277228,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbguwTCRA9TVsSAnZWagAA09sP/3bZxIfFc2oms1/jC83i\nxQZ4aKyxbxWoa4n87gt5OJkUJ40sVeDoeF7pn9ZpS1FhQ1zTLpxkWvDxdiS7\nk7mYQ5mVFjkXDrnYxx3coEbtm3sT2wW2ojd2L61QWEhwbLinLlkMsga8RYTQ\nyj18u3BExQoUU1KMqdHjcVYGCPW3zuR/riSwuDlxekww/WDXtOOpj1ISdrJp\nuad2asXaco6ajTFlILw7cgRsSjq4s9jwz7NT89oOfbHcyJE+RJ++aJOukyYr\nqiwT/D09ehGKYKjr2ENI2KNW+4xjtMafpPFOxEkawp1Cg4grgiUAZDURyn1z\nsu9NfoH8V2AXgXJfN6tGwTbefxK34jyhpQdaCmiWqw+HBlccFFBWcZ+eBpdW\noG5IRg8c69jIo6QldvbIIjywKk+VRIHXucRqXIvU5PRG6zr8vvFzSOvz9u/T\nhiPBZotFnVvHV2vYa5EJ5crlMMECR9FHHTLJfCdxiZ6smkiwbuJG/LYm/Man\nviSmxY43dpMR3cifmODYZ/+VoOGB4oj9HK2gftTGGrbN3/JBH+p2MbdcfWcX\nZcBkfj1rNsKFTojcoEfQG6SVi00uBqO52Cx2zqojeaHxhHiVnefWlqjfWpEM\ndfeqwONJrUVMzYoH1a74+cIuKq6Qsi2EcH8A78adD5a6kW6Bs8m8Q2uDZ1B1\n0KIF\r\n=Ry5T\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDNpyHIqq5k6zbvFKCNfai+sOyuxMmdBxD7GvAKNgPHdwIgHfi4ufaY/aEbAiLkYq+l2PISLQYEPeScmLDUMs1lklU="}]},"maintainers":[{"name":"lukechu10","email":"lukechu10@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_2.0.0-alpha.0_1535306770366_0.9833462298213891"},"_hasShrinkwrap":false},"2.0.0-alpha.1":{"name":"smart-tictactoe","version":"2.0.0-alpha.1","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","gypfile":true,"readme":"# Smart TicTacToe:\r\n\r\n## What does it do?\r\n\r\nSmart TicTacToe adds a function to your Node.js app that returns the best move possible for the computer in a TicTacToe game. It is impossible to loose with this algorithm.\r\n\r\n## Methods:\r\n>`bestMove(<gameBoard (type is a string with a length of 9 characters)>` : Returns the position that has the highest chance of winning (*See figures under ## Examples*)<br>**Note**: Computer is always `O` support to change has not yet been released.\r\n\r\n>`conversionTest(<String to test>)` : For testing purposes only.\r\n## Examples:\r\n\r\nSmart TictacToe is really simple to use:\r\n```javascript\r\nvar tictactoe = require('smart-tictactoe');<br>\r\nconsole.log(tictactoe.bestMove(o   xxo x);<br>\r\n```\r\n___\r\nThis logs `4` in the console because `tictactoe.bestMove()` returns the best location for the computer if the scenario was:\r\n\r\n  O  |  _  |  _\r\n-----|-----|-----\r\n**_**|**X**|**X**\r\n**O**|**_**   |**X**\r\n\r\nWhich is `3` to prevent `X` from winning because the TicTacToe board is stored as a array:\r\n  0  |  1  |  2\r\n-----|-----|-----\r\n `3` |**4**|**5**\r\n**6**|**7**|**8**\r\n\r\n## What's New in this Update: (**Note**: This version is in alpha)\r\n\r\n+ New method: `checkWin(<gameboard>);` to check if someone wins.\r\n+ Updated README.md\r\n\r\n## Installation:\r\n\r\nYou can install Smart-TicTacToe like any other npm module:\r\n```\r\nnpm install smart-tictactoe\r\n```\r\n\r\nOr, if you want to install it globally:\r\n```\r\nnpm install -g smart-tictactoe\r\n```\r\n\r\nSmart-TicTacToe does not require any external dependencies.\r\n\r\n## License:\r\n\r\nCopyright (c) 2018 Luke Chu <[lukechu10@gmail.com](mailto:lukechu10@gmail.com)>\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a copy\r\nof this software and associated documentation files (the \"Software\"), to deal\r\nin the Software without restriction, including without limitation the rights\r\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\ncopies of the Software, and to permit persons to whom the Software is\r\nfurnished to do so, subject to the following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included in all\r\ncopies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","readmeFilename":"README.md","_id":"smart-tictactoe@2.0.0-alpha.1","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-sFQ23q7CfDI1DcBoJeEB6Zii4jtTwwNH7a7uLwx61rUgCjoyhEvdXf6bDJSI4Pf6+5oxoW+ai4DLnIS1bVRiFw==","shasum":"3e1c221a80bab0cda9295de952df96054fc78155","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-2.0.0-alpha.1.tgz","fileCount":21,"unpackedSize":42277241,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbgu1PCRA9TVsSAnZWagAAAwQP/inHysqWdr3Ao5x3frSz\n1JwViqbkVhh+/kv/Gl0mOHAuoTKKXVDkqyGgd7OvSFe+FY5K+lcyPE8j37ok\nfGk++8zT3Z96mqjC/i7W82VfP3RtWmIMd64OYsy6HBCI1nHhqdh+YRtSG0Cn\nXISvFQ/MylcR/R+XtDmRNbFcvbcVwMVWIi3Mr3B5J2QIT0Uk90BLGyRJ4Zve\nonfqtOCFqtgzd028VUpyexOlVsh06C38jj80MT8XQwtIyh4aZ7OEbThustqv\nb7Dc2DPxNkCxoJ3sP0pdHBxwqyoElfkNHw6i5domPz8xlQcQmbwWs8hXQi0g\nLZkiUoUyWBJJU+s6QusjmC1TlYmUZmVTDSi6dKYoCNMPvpxLpVU6TUiaFEqQ\nzZ/SRwpsUgXu8YbRjWexmtU5Qxdy0bgb79f6DFUyrcV6b+zzYaagtioTJmk8\n0iYFhVIprkD5/bDZH+utuOi3C0bVLFBW7Mif6XHLQcvaZ9wKUyL++KAN6nll\npmow2FzmO90VCeUnKkDkvx4kZNbUn69Vr/C7f1ScIMuH6C86SsMVZkXY/qSJ\nhPekHIy7O/td3oVLu57A15b8NhJiOrUeAXbFgMq94JHHBcR9W1pt5b2BqSRG\nkofWIFTCiVLNBZPUWPnQJ2MuHhoVta/f2qVeCFP35r0ZCkhjXN5O4pyL+KYe\njwOh\r\n=3iUs\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCbQrH6BxldxMug9n5+CvFgNV7U2APY6ssMdgRI7m7KbwIhAMnAFKbS173Qq9ii849JL9kRr9MpJbXMaNLasOMqeX+b"}]},"maintainers":[{"name":"lukechu10","email":"lukechu10@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_2.0.0-alpha.1_1535307086462_0.7381939632146677"},"_hasShrinkwrap":false},"2.0.2":{"name":"smart-tictactoe","version":"2.0.2","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","gypfile":true,"_id":"smart-tictactoe@2.0.2","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-por9KTtVfqORr3fRKc9xJ6Pe2fP6Ox1FKwwEPbb8lJDGvbTNxALW2a3/sJytmZ4HE5WIUCtkQCGoKIlqbwY0jA==","shasum":"da38d1365e84b38512a77e60e568aa85572d2033","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-2.0.2.tgz","fileCount":21,"unpackedSize":42277301,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbgvWFCRA9TVsSAnZWagAANwgP/AooGBDKmUNyavSv4dQK\na9zBZdvkgfrN7KUwv8NI0Gr+U1WXltIq2+GLdMI8nfBev9z1diG2zSdHZLur\nMakNpH6eIVcNKyl/PZiX1+G5zCAlWPYd2/76CpSy9Zl8KI4ENRAlVlgvhyG8\n/XYQv7xBzLokq4dLoZihDnG9sjWcYPt4vpTkx9d05+Ik3/rAf+EUrUfiX+h1\n4F8DqJRYNQUVX1bpKdGj4IZAuF/acFXLE1kv6cThAx4z1aS98uQ3nqJsA7yK\nq4y0GrgQ6pDbNjSATwMTN6YfDOHQlyZ1R1aP0lskuNCR36hxFz7SxfjOArdu\nu5rbPxdYfS7Hw3DhfFJvjWI2jZAitIM5yZdRxBOmH2G5TZRZeOKhvxi8i0QA\nEJff23IlvQq0ZIq8A46YogSI7NafgFngjMz6gDp+xAMRpxun9HUd+1qihcx7\nfk3zVAwI5Bn8q28C52O8hnIMg+Ow22QXnqexxax7t/AUaOYbFfj7V2Wxq4VI\nzwOz0ehC1M7qDDhCh6PN55fuqQSRvbkyrv4uy79/L9Qqry+K08CNI29FuO+g\nL+Y7RHGKrxonitaUDas5/G5R6PuwS208+f1FiuZuNB7oNqgf9eOklzoQWdRX\nBDu+aaJ0BfeuNY55ECLPFOIqxla676t9I+xNIcrty4opX/4NyxGaiSQx2X7O\n4J4F\r\n=tQg1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC87TXAHo2iU+lta9pxmIQ7ZH06nvgvO6sa22vDg5nfLgIgEeQ2IsYZz4YSU8Ah73pAF30FBgk2MvHXA32S8Padt5M="}]},"maintainers":[{"name":"lukechu10","email":"lukechu10@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_2.0.2_1535309188193_0.4298986603719619"},"_hasShrinkwrap":false},"2.0.3":{"name":"smart-tictactoe","version":"2.0.3","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","devDependencies":{"v8":"^6.2.x"},"gypfile":true,"_id":"smart-tictactoe@2.0.3","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-JfzF6s2PDqZrVI11dZ/Z2MoQJbRF91vnjTz1NGFzofnH1yzokzTX30GXNGjkNAtjUYpR8PLdDjA68QwFQQbxmQ==","shasum":"396ab18608dc229dc8ed47f9885e8411105ce7db","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-2.0.3.tgz","fileCount":21,"unpackedSize":42277348,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbgvZnCRA9TVsSAnZWagAAgG8P/1R+H56bJET/W3waR8pm\nkQ8d981R6dS+2+UDY9vWfqnbGNULIAtJsGV+AlVe0O4TN7zySvRufIwRlIdh\ns9Zxk5pVRJaEnwm2vLzZEYYeDE32ydKlAoERIAl4TsShH5IwT+EtR8VtiW/n\nFzy8/ajcSJNlAKZo/Brut2ZSlpM7n4ZJ3UskkltoJmMkgpPou71pAz6Ug3oG\nUUTjLvK5J+OxORyl1VdC/iygxNm19gmzqNGIh9VPkv8zbsHszeNXeGpNBs+k\ngvSsjHw+XGcQAUwhzXDvX+qfii0treJrZwr3ARCaeIuj2qPsf82VhPV+wJza\n0dQQyTdDBFnrzt1Hn+ASakGQxVd7rfactZROYiWNXaV26MapMkfgRl3wfw49\n4FSRtQIfU8kkFSDKBcnTxN36SdVfqXzL9Bjkapo1SvdIEj0u1hjJt0EiENMD\nSDjk5msW2bVqMpiyHnMDoRyhNXIZjLMiyfSXgoBzm6Ah0r+8Ak43YdrrGCXs\nUoppbyBcNU1BCM8H+qkq+GDCFWJuRRUCMAza/vbrzwwR3UqB2iUOi7EhX2W0\np1rFTq3ox1UtzVJMt4aZGzZ+yoDODaXga5W329dOdik/5QI4HYL4fxYNHHFX\ngtg0WmYm71w2grwuEMNS7WXfjjoBYXo4R/4HXWooZ4as0AFkMZDrKvs2PdIW\nie0C\r\n=j2pX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAs1izeg+Hatek/ZZbn8pSbEkKLQ7qGbDY2QfBwoxULOAiEAkxtRrHVAPu/xXE53Xet0uwnbCYGzr4JdIuRFqNB6gao="}]},"maintainers":[{"name":"lukechu10","email":"lukechu10@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_2.0.3_1535309414260_0.4248919484484248"},"_hasShrinkwrap":false},"2.0.4":{"name":"smart-tictactoe","version":"2.0.4","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","devDependencies":{},"gypfile":true,"_id":"smart-tictactoe@2.0.4","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-v5bD89BmAYDjrV8Bf+iaihdLBwwVv8N7mEg4LOOPFcrpW5C7chb5IWFq9nP17C5K9J/A75u9ZrexR1Goh6tkNQ==","shasum":"5150e1905ad83856e72acecdd410d003f2f3c44b","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-2.0.4.tgz","fileCount":21,"unpackedSize":42277326,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbgvc9CRA9TVsSAnZWagAAH9kP+wRDqi9yPuxdBEc3vg+K\nf1G4q+G1lm/qNkdaKZyFiGwWVx7Lm+hx3boIqanum5Y6jb6v1olJll3ExcAa\nVfuBuysnJ5qh60+1yPlSq530/eMFsI9EdAvvByLJzAeolmxi6DtEs7AiW9kv\nzn+iFyu4DZzsYvvy+dVQYZDpeSCSOi/ZTBGq9P0QnBEp5FYRCC0wCWC6sR3S\no1wgo9K6yINA13dKgIGTW8iwT+Phc2kZ2V7CCCj6x882TBjAO9Z7LnPRKZCm\nUwYRBG4O5pt2Hzi3gGC2jyZ/T7yaTya+o4kgflvl+dyB4R+5zwfM33c95RnI\nxcxLML3mZN8gfSaBROKmyj7sTCpsWAs7W09ymK0oDozYQ5/NWtO5cjRCALAs\nExisz9Bmsb2YVWgq5C7hp9tN+EnU5y/gvQya0aArZcaRfgDfvfQFxC5+K7Uj\nBgDfYA98mqyxxLiQXD4f8Qic8u/8ZO4HMDwSTsCjVeTFqqVg6UXFDf0Kas69\n63raObv+73UgOc91BG3Qoe9pQfS+xd+M2svK7cYPkUaAg8m1fZYfWkWNXSPU\nJ8W8/EAYR1H/SnovZfgdRmV/RCae3njA0/Z8Kf3oKxieAbM6gKMtzNba/9nM\n7r8vu0qKF9oZyCfWYTOA90U+js5fbaJeDu34h7HZJkAhJ1NTeF5EGEfhg16v\n7GIX\r\n=yYjD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHH8s/2gKmtxwc55fEuWFCQzJBmhWfTAni0Yf4wkdO+5AiAB4J94cGt6j9lfIrSZO12VAw6W6vz/1iI2XEHEUxg12Q=="}]},"maintainers":[{"name":"lukechu10","email":"lukechu10@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_2.0.4_1535309628752_0.20193453558171193"},"_hasShrinkwrap":false},"2.1.0":{"name":"smart-tictactoe","version":"2.1.0","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","devDependencies":{},"gypfile":true,"_id":"smart-tictactoe@2.1.0","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-7jjI6P33lFO2Isl3WBlSUg7yhyIPRml8jpm/SA0wMzFsDSI1fFKjHPSShkaS5lC2y6BIS181QMMgi3ooA+XD0A==","shasum":"257e5e64322e358dfd0ca428df1445f6aa646341","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-2.1.0.tgz","fileCount":37,"unpackedSize":37687294,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbiwQhCRA9TVsSAnZWagAAVN0QAIlJmPprBrtR5gixdGFN\nxJvud0hKgulakD7TjSBk1cu2zMC2F3pSsEEgyPDBz4eiK3dvJ9KKl6c+kB71\nuBFvejmAyOcaZei1+KchwfDu/kBj0r4r81lyi41EaraWtNG5nfccixBiLEJ6\nOfm9xR4lUCjHoKg3Sp4fTpfDFYB29v55ggn1Fq7AsGWasaxo6kE23tAuStzP\n9YRM4tOL6M8zxI/PGDRnFTbXFXsfkuIlUbcO5Wi4RuLFuP5SAEcIAb+5GYCM\nVpfh2ibl69BYDGT+sD28+I6iRn6r3TGpXgZa4uUlk0Y+cBC6YaaEIZx8vZRb\nahpn3t8RJM39Rdk6wKF2e7gWMzGK/zoT6RtGLLy5xwuk1ow9oiXFU/Wzf+qR\n1SJMEWZ6Iza5LZPPmRbwIz3UyyBa2giKyF5SJhLk1dwIjTNZrO70p+kZOykY\nsXwc7Uj/ol6xfSJ5DXcMislFixwrU217XZyb9DCYxAcIyzLk9Cgwk++k++7v\n4dS9gaPw3YDgmtg2OPJ06ifYb8GDCmTRFqWa8buMUQjxIa1AEO98v7Ppcv6+\nUoqtQGuDB368P42uShIHYTWc4aB1T3ZXLywk+/B1ConOCOf0Kq8Xda9mLnEL\nCd+0nnrqVthCDXGXbDTuBkIgHQveoGHJ5laCUUIJFYBbf8wHDo4p7wXUXEnv\ny1x9\r\n=WZjL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFXC0DNYfRzJ1zkk6OtGtUw5zsvje8YKC9vwyIcRmpCmAiBoExMwaqqoby4/ydZpF6o1WX+Y2Vt7IGv5ITt3v+FCJA=="}]},"maintainers":[{"email":"lukechu10@gmail.com","name":"lukechu10"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_2.1.0_1535837216681_0.48248296962683557"},"_hasShrinkwrap":false,"deprecated":"Bug fixed in 2.1.1, upgrade strongly recommended"},"2.1.1":{"name":"smart-tictactoe","version":"2.1.1","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","devDependencies":{},"gypfile":true,"_id":"smart-tictactoe@2.1.1","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-Xab7ZCgg1GM1IogUjg1LGXZIVwL5Rhvv7Tb9Z202Q/6RCiHXzIVb1OeCJFx2fUzyMYrcmjMvFqaz2JKkHh7eVQ==","shasum":"2be6a919d34d7a1848027a0500822dfc25e4aa40","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-2.1.1.tgz","fileCount":37,"unpackedSize":37687207,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbi12JCRA9TVsSAnZWagAAmbYQAJ3TKpWkHJ6xnSo9dnWj\nE8r0woVfsg12QKqEiGwxIRFmJpiF7ryDApbRN2WAVfotjB7JbnaQoQcbND9F\npPSOFsld1tFpGxgK8p5iQ79oy/MEnuat6norlCD0OXms+jFwX0qCgXKuP07d\nG1hubdfuDZ+/CyMPifU9DzsVkR/9Rlll2+1jviZRofKCnhr+faEsc6AsUOI6\n0g4HR3D3vllYr6Npwnc/lUiuJdVK5RNIrjWaUenkuhEPyZ3QNk0wa2IFdV+c\nxURFbatnBxT7iIYUofFZc6CoTfsbmOC5SdY/+5yCFQfYQLlKTBG++0CiBgl5\ncbS1bO5V2HwnBbLcFBONZKwq1ohr76yjL8RFhoRw5aqtJnDvKfL5ly/sdNkW\nUmclxHbjyu9jNgjuSKwIJsPf6s/qlxeK9xn7o7oeBd1ZtJrWbNjbimEJUU1l\ngkdOl8mSse2MsjGeA6H4msw5aX5ecAnfzSIIPRaU0Zl2Qp4K5+htb4r1Khlw\nndrj5sGBFMaU1dWcmkwfMoZ+fg0CYicF/MHkQ+K5+VTfweLzdExuicNQGM8+\n5OVd9UEWJc1ZlyG3LD7UkmXvWGxEdWShrnzS3vcqSvWoM+E6kl/LAJVLmKSD\nfgmz1a+PQSCzg9b6VtAtkc3St4fiwUwv3QJG6HhDSCiMcyJG2HxsAX6FtUHP\nxWn9\r\n=mdL8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCtMI3iyjB7VHTfK5kEphyhq/11XLeagMrqanxBVlQEXgIhAN5U+I6Ye+ks1n0stSDwRBN7VrPdY92yPC8J81BQ8HE7"}]},"maintainers":[{"email":"lukechu10@gmail.com","name":"lukechu10"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_2.1.1_1535860104790_0.15257803616532928"},"_hasShrinkwrap":false},"2.1.2":{"name":"smart-tictactoe","version":"2.1.2","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","devDependencies":{"node-gyp":"~3.8.0"},"gypfile":true,"_id":"smart-tictactoe@2.1.2","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-8W12JU1y3Mg703/vBEcPe/nQTVF3PqYRP5dFkT5hYSyrSeO9aJzNXJVm8244KyUvadWIBxz5mf/8v8kwuilcCQ==","shasum":"00fca3aaaf673bfd85336f18eb91f5ff3f3f7f01","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-2.1.2.tgz","fileCount":37,"unpackedSize":37687235,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbi17UCRA9TVsSAnZWagAAtQUP/1i0OkHOdWpLRNkcqRxz\nkjRKrKL7Fooe3VnGPz6OMcxbESXpkJdDmUr5l6tBnB1J8kbqCHFNeRctlW0m\nlz0kSp3E974sahSx4SRPZCNSUz1qbV32wua4PgesQdhWuvXQ9M4RgHjEhGAL\nNG3eD680NzpQ28oCwFz81pIBENZgDMm4XmXnkI6moyCqtcgcKEFfuVrN6DLV\nIZMDJQu/YXZqvjMnEk7LEL9YZv3eYxQAkLkf3MJ4u8hGKog5YBdKnSayuFvG\nnE84nh0BDfiE4875Sote1KS+wIddwhF5cYisBi27ZOjf0madU416fvqf25KV\nEPy59xhaGBtKisGNfBlYobhGoePBhx1onsu7P73gOgC6oqerZbb1b7/Orj9B\nt4/bnaicac7dt2bzfF1WLbprmnZvIPa2IaMnvnBz0sFg2ef28wSDIc6kGIgm\nXMszAh7FE7j9BQSoDxYz40nfnkZ5S+ev2oL52ObWHAyKnXUDbowWrtIrsgfa\nbrv01/ue6Wo41PByyPRvxPKLt6gmYQnbAkN2e8qPPyRxsJL7VnvLVfrDubTc\nEpGh/7u6Ubt3kxE24B73pZPF7uEJVyTqpt8E6fPhRD9qT7YiCrrxarxsvkHf\nW0YnajuZAx03zUvgW3kxohp5b7O4jLKcpnTqivHGsdtAK/G1kCMcbHfW3tvI\nM9yN\r\n=L3q6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIESAjPYEzbg9X5QWLE3r47tAnlimujMTncDN26YP708QAiAs8CJx5cmDaxRNZBfO3w+1SOGETIfPtukDe+Z6FlgZRA=="}]},"maintainers":[{"email":"lukechu10@gmail.com","name":"lukechu10"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_2.1.2_1535860436099_0.30146070465995756"},"_hasShrinkwrap":false},"2.2.0-alpha.0":{"name":"smart-tictactoe","version":"2.2.0-alpha.0","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","devDependencies":{"node-gyp":"~3.8.0"},"engines":{"node":">6.0.0"},"gypfile":true,"readme":"# Smart TicTacToe:\r\n\r\n## What does it do?\r\n\r\nSmart TicTacToe adds a function to your Node.js app that returns the best move possible for the computer in a TicTacToe game. It is impossible to loose with this algorithm.\r\n\r\n## Methods:\r\n>`bestMove(<gameBoard (type is a string with a length of 9 characters)>` : Returns the position that has the highest chance of winning (*See figures under ## Examples*)<br>**Note**: Computer is always `O` support to change has not yet been released.\r\n\r\n>`conversionTest(<String to test>)` : For testing purposes only.\r\n\r\n>`checkWin(<gameBoard>)` : Returns if someone won or not. If no one wins, it returns an empty string.\r\n## Examples:\r\n\r\nSmart TictacToe is really simple to use:\r\n```javascript\r\nvar tictactoe = require('smart-tictactoe');<br>\r\nconsole.log(tictactoe.bestMove(o   xxo x);<br>\r\n```\r\n___\r\nThis logs `4` in the console because `tictactoe.bestMove()` returns the best location for the computer if the scenario was:\r\n\r\n  O  |  _  |  _\r\n-----|-----|-----\r\n**_**|**X**|**X**\r\n**O**|**_**   |**X**\r\n\r\nWhich is `3` to prevent `X` from winning because the TicTacToe board is stored as a array:\r\n  0  |  1  |  2\r\n-----|-----|-----\r\n `3` |**4**|**5**\r\n**6**|**7**|**8**\r\n\r\n## What's New in this Update:\r\n\r\n+ Fixed minor problem with node dependencies\r\n\r\n## Installation:\r\n\r\nYou can install Smart-TicTacToe like any other npm module:\r\n```\r\nnpm install smart-tictactoe\r\n```\r\n\r\nOr, if you want to install it globally:\r\n```\r\nnpm install -g smart-tictactoe\r\n```\r\n\r\nSmart-TicTacToe requires node-gyp to compile source.\r\n\r\n## License:\r\n\r\nCopyright (c) 2018 Luke Chu <[lukechu10@gmail.com](mailto:lukechu10@gmail.com)>\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a copy\r\nof this software and associated documentation files (the \"Software\"), to deal\r\nin the Software without restriction, including without limitation the rights\r\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\ncopies of the Software, and to permit persons to whom the Software is\r\nfurnished to do so, subject to the following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included in all\r\ncopies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","readmeFilename":"README.md","_id":"smart-tictactoe@2.2.0-alpha.0","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-u7dPP4vDyvTKk7h7b3LA8JMGeTmhFWljzzl7eoep6wZV6VQ0J8GDiVzrkS3Yh/K3OygDca71chKiyhlOZwnyug==","shasum":"30f913258d68415150db899865e615b3464c0ef2","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-2.2.0-alpha.0.tgz","fileCount":38,"unpackedSize":34730624,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbjG0+CRA9TVsSAnZWagAAUNgQAKUYE7C1RL4PNJOjhOMA\nMVImFTtesRjE4d6ctqBF5I8woDO1jSyQ29FyC9FYwnRaX7aNTuSNaZh2jDaz\ndfiUCfdBxxyZaHQevbdPdDXkDKb1Y7BXK7WQOLzyLeANEfl5WxTLMi+Fwevv\n5RXFB57vu1/S/NZqzC8LvgMnFuY6hg1A1eKel+4w/9PBYw9huGlCSBT2YSc2\n8lALSsAaQ3SKo5mWd3BZa2C131ZaUJ4EIlB2okZOtXcS1xb8pq0rhVb29/pY\nCYfT2M6uVOB0r5rt7Wn8CXpbiRfpUX442Fk2aC9yTiu48xv9BPLvimqbzMAJ\nsLC/VaMqnlLg3SEWu4+tFyN74e3Ja+9jNMUP9pch6aRURFkzUkujHY9JpUKU\nQRO7aKdvqEEZ4QTWhdnr36va6xsc+J0MgJb5X6/xDmSnzQ1N9RWQ+fnhUjcA\njJEAgc08H3TqfdSxYMzfSdgKZHwZL9+9M5E2xApQ3wLSCtkYN1S+hptcqyw7\n9JQxICPGDxClDB9RQ4u/I0qMhoNAhaWmlMGrn51G6QVI0MSO73mfGIlKKAlI\nS2E64iP4ZZLWXvco201skgLfq3QWsrPpP3xbUocngoftabjtPlcILfm/9s0+\nhlClW1sthd4WpNuIj7/SWWhFYD1tFW+da40Vk5iHKzJIle/Kjh5+i8Mmr6HZ\nWPyL\r\n=tvJi\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFnBNxyCDSecaD3FQ9Eh+eZOqqE+jEAY823DHF6IjitIAiEA9GbvPUTVCsbrwvePpwNcRNO11GqaO+A037IV5N9HqM0="}]},"maintainers":[{"email":"lukechu10@gmail.com","name":"lukechu10"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_2.2.0-alpha.0_1535929661391_0.776662863277692"},"_hasShrinkwrap":false},"2.2.0-alpha.1":{"name":"smart-tictactoe","version":"2.2.0-alpha.1","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","devDependencies":{"node-gyp":"~3.8.0"},"engines":{"node":">6.0.0"},"gypfile":true,"readme":"# Smart TicTacToe:\r\n\r\n## What does it do?\r\n\r\nSmart TicTacToe adds a function to your Node.js app that returns the best move possible for the computer in a TicTacToe game. It is impossible to loose with this algorithm.\r\n\r\n## Methods:\r\n>`bestMove(<gameBoard (type is a string with a length of 9 characters)>` : Returns the position that has the highest chance of winning (*See figures under ## Examples*)<br>**Note**: Computer is always `O` support to change has not yet been released.\r\n\r\n>`conversionTest(<String to test>)` : For testing purposes only.\r\n\r\n>`checkWin(<gameBoard>)` : Returns if someone won or not. If no one wins, it returns an empty string.\r\n## Examples:\r\n\r\nSmart TictacToe is really simple to use:\r\n```javascript\r\nvar tictactoe = require('smart-tictactoe');<br>\r\nconsole.log(tictactoe.bestMove(o   xxo x);<br>\r\n```\r\n___\r\nThis logs `4` in the console because `tictactoe.bestMove()` returns the best location for the computer if the scenario was:\r\n\r\n  O  |  _  |  _\r\n-----|-----|-----\r\n**_**|**X**|**X**\r\n**O**|**_**   |**X**\r\n\r\nWhich is `3` to prevent `X` from winning because the TicTacToe board is stored as a array:\r\n  0  |  1  |  2\r\n-----|-----|-----\r\n `3` |**4**|**5**\r\n**6**|**7**|**8**\r\n\r\n## What's New in this Update:\r\n\r\n+ Fixed compatibility problem with Windows 10\r\n\r\n## Installation:\r\n\r\nYou can install Smart-TicTacToe like any other npm module:\r\n```\r\nnpm install smart-tictactoe\r\n```\r\n\r\nOr, if you want to install it globally:\r\n```\r\nnpm install -g smart-tictactoe\r\n```\r\n\r\nSmart-TicTacToe requires node-gyp to compile source.\r\n\r\n## License:\r\n\r\nCopyright (c) 2018 Luke Chu <[lukechu10@gmail.com](mailto:lukechu10@gmail.com)>\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a copy\r\nof this software and associated documentation files (the \"Software\"), to deal\r\nin the Software without restriction, including without limitation the rights\r\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\ncopies of the Software, and to permit persons to whom the Software is\r\nfurnished to do so, subject to the following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included in all\r\ncopies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","readmeFilename":"README.md","_id":"smart-tictactoe@2.2.0-alpha.1","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-SndZqsNqpeAGPUYhPiiSBXN/2JZJZOx8nj9JZ8F9fPAaEadI5OZmNYwvPsHwaIX9sicpMzmXrvvM5eYqbbELUA==","shasum":"5bcaaec58a01b433a76602831a5139bc533b697f","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-2.2.0-alpha.1.tgz","fileCount":37,"unpackedSize":34721891,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbjbG+CRA9TVsSAnZWagAATN0QAJVEvwuUNtLp7hJqefzv\ncwSQl+qzcqBq6O1GMYyGoMwCCo1jKl7fB4OERoSCzNdutEJXHofaX1Tu7wC1\nvzY734opgjc+SgdDGYyLN1mYAR3iW8U8EzU8xQLTYzB45KOrm8X3f6MBnY1d\ntpLP3gEym4HdsmUaMCCDgb5iN8AWZDJJfmtHbTgR7djZ7fjMiqE/LM0Ay21O\nsiDX0Q9JdAs7QrDElGYWeD7bzz8Xnx5cf7PgDNvYxs3ZVImLOXDSruwRcFDE\nC3nwrdBHJyJDeDPMDCCUWH3XVPOwtJy+S+YomJ3dbLNj3dTPoVaL/MC+VWXC\n38Cn4HLzYEaHbBiNWY6y318dxv9qikBEnHBTFYMCIAKMT4bRZ95jApO0pDjG\npe7doX3pbCNEh1Eqdg67FJM+hN/GVpDl1m6IMpxw65QpcG76ukOtFJvbAzv+\nR07ZouPwlRvqBqL4itlPDEQ3jOLprgOGddCD2zeKDBWGj5LyYBlGcTIA9bdY\nNUP8uUl2YVlVtSz42b5B7oS1AP9OM/15/CoJ/jw4ds91D52iDJhLi4x1L7sm\nVyWwe+38uZmWpccJJCdvNHdsLKGZtmEiRAzETtmzsMPewSxKQ2aOA5AkBYtR\n1vyAD/SXPqy8v7tKU3To+nVR3tyaL9ckdjFcl4PIk0eborn1GA2wYnZ7Gz8V\n/2ls\r\n=GbDU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCUcp1p3Ln6Vu2zEPiwyuS58mimWvlG4srdgxNfVxfk6wIgVD1s5O5pTnTvovWaAJkTS+HBWvFbSMArKsr6MdhIxUM="}]},"maintainers":[{"email":"lukechu10@gmail.com","name":"lukechu10"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_2.2.0-alpha.1_1536012733640_0.0073736913121598135"},"_hasShrinkwrap":false},"2.2.0-beta.0":{"name":"smart-tictactoe","version":"2.2.0-beta.0","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","devDependencies":{"node-gyp":"~3.8.0"},"engines":{"node":">6.0.0"},"gypfile":true,"readme":"# Smart TicTacToe:\r\n\r\n## What does it do?\r\n\r\nSmart TicTacToe adds a function to your Node.js app that returns the best move possible for the computer in a TicTacToe game. It is impossible to loose with this algorithm.\r\n\r\n## Methods:\r\n>`bestMove(<gameBoard (type is a string with a length of 9 characters)>` : Returns the position that has the highest chance of winning (*See figures under ## Examples*)<br>**Note**: Computer is always `O` support to change has not yet been released.\r\n\r\n>`conversionTest(<String to test>)` : For testing purposes only.\r\n\r\n>`checkWin(<gameBoard>)` : Returns if someone won or not. If no one wins, it returns an empty string.\r\n## Examples:\r\n\r\nSmart TictacToe is really simple to use:\r\n```javascript\r\nvar tictactoe = require('smart-tictactoe');<br>\r\nconsole.log(tictactoe.bestMove(o   xxo x);<br>\r\n```\r\n___\r\nThis logs `4` in the console because `tictactoe.bestMove()` returns the best location for the computer if the scenario was:\r\n\r\n  O  |  _  |  _\r\n-----|-----|-----\r\n**_**|**X**|**X**\r\n**O**|**_**   |**X**\r\n\r\nWhich is `3` to prevent `X` from winning because the TicTacToe board is stored as a array:\r\n  0  |  1  |  2\r\n-----|-----|-----\r\n `3` |**4**|**5**\r\n**6**|**7**|**8**\r\n\r\n## What's New in this Update:\r\n\r\n+ Fixed compatibility problem with Windows 10\r\n\r\n## Installation:\r\n\r\nYou can install Smart-TicTacToe like any other npm module:\r\n```\r\nnpm install smart-tictactoe\r\n```\r\n\r\nOr, if you want to install it globally:\r\n```\r\nnpm install -g smart-tictactoe\r\n```\r\n\r\nSmart-TicTacToe requires node-gyp to compile source.\r\n\r\n## License:\r\n\r\nCopyright (c) 2018 Luke Chu <[lukechu10@gmail.com](mailto:lukechu10@gmail.com)>\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a copy\r\nof this software and associated documentation files (the \"Software\"), to deal\r\nin the Software without restriction, including without limitation the rights\r\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\ncopies of the Software, and to permit persons to whom the Software is\r\nfurnished to do so, subject to the following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included in all\r\ncopies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","readmeFilename":"README.md","_id":"smart-tictactoe@2.2.0-beta.0","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-p63zAh1AZUvdnxIh/4xk/OtJaE+dfOXbDfJ8wyH/TGRy4Q9VH4IA+kQAupF6fuU2JCcE04luv+431TosVKlcLg==","shasum":"2b0b8fbf18f1052673c8b611b976b6f29bde6ac0","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-2.2.0-beta.0.tgz","fileCount":37,"unpackedSize":34721848,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbjbSaCRA9TVsSAnZWagAAp9cP/3DL7QdZFxUc64aaquu4\nOmobN8O76t22hgZ282qETZXyQ0wWStsjhQNDRA4FUJwwEmI6sFviCn4vAifX\nQW0yL4hyJ64FdxHCOEjYOAn4ZXHLEjYVdVGsqPhUrih/pHmDr6sKbF2StyFv\ntl55C0/lQxqbkFFbwpDOwLlBlkGkC3oF+Gi706VIIvvgjPZOlJxtj5uZDCe6\nm9mkv0XCSXE2QKHyJShZkUSnKRGjWCi/1GddhjKDpBZsmPW/zXw3xdMeAeJh\nNGCS1uM8cY/hyvIJQs7rBt2hMQtAj69eto69FQtguNkQIktRQwE+FT3ntaUl\nuuft0NNYKHgm5nS0YqCZXTxKbogT38xN6oK2R70Ds+1JXaHtRf+dTkeLCbuJ\nIAELvqQy6xBVoDoBM2FaXxpFGHnPdeCS55wEbzTFGnHPWjqbcoYxN+f873Y1\nPNBlVMs6DHx43REX1+AA1uxAtOUr8buZO8aAAAQUgjZzE4KO4wFzkp1A9ARA\n2NCv9cAoWFa4/seoL8e6IsYpVvTJOsBKtyvGN11s20AXrhhcjTzltSvQhmE6\nWQucOx9G+QJZ1rmDyvSd4YQ0KfIl0I7KzWPGw1o9+RrgpqJGr1x+mVQAfPWM\n9Bgm6G0TYmitOcWfCNOblBgLq9Leqvqi6mKFowcz5hlxdGY54Sv2NZjFo0OO\nuhn5\r\n=JBNF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCQzBPRzSLnHKL6BcxYiguCRBoL1WFc9GC9EvZEiVbdIQIgVmg9HQw3qr+cX7FQFaBI1RhfuI9RgvnSyjFq0gZNcBI="}]},"maintainers":[{"email":"lukechu10@gmail.com","name":"lukechu10"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_2.2.0-beta.0_1536013465485_0.8839147836661672"},"_hasShrinkwrap":false},"2.2.0-beta.1":{"name":"smart-tictactoe","version":"2.2.0-beta.1","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","devDependencies":{"node-gyp":"~3.8.0"},"engines":{"node":">6.0.0"},"gypfile":true,"readme":"# Smart TicTacToe:\r\n\r\n## What does it do?\r\n\r\nSmart TicTacToe adds a function to your Node.js app that returns the best move possible for the computer in a TicTacToe game. It is impossible to loose with this algorithm.\r\n\r\n## Methods:\r\n>`bestMove(<gameBoard (type is a string with a length of 9 characters)>` : Returns the position that has the highest chance of winning (*See figures under ## Examples*)<br>**Note**: Computer is always `O` support to change has not yet been released.\r\n\r\n>`conversionTest(<String to test>)` : For testing purposes only.\r\n\r\n>`checkWin(<gameBoard>)` : Returns if someone won or not. If no one wins, it returns an empty string.\r\n## Examples:\r\n\r\nSmart TictacToe is really simple to use:\r\n```javascript\r\nvar tictactoe = require('smart-tictactoe');<br>\r\nconsole.log(tictactoe.bestMove(o   xxo x);<br>\r\n```\r\n___\r\nThis logs `4` in the console because `tictactoe.bestMove()` returns the best location for the computer if the scenario was:\r\n\r\n  O  |  _  |  _\r\n-----|-----|-----\r\n**_**|**X**|**X**\r\n**O**|**_**   |**X**\r\n\r\nWhich is `3` to prevent `X` from winning because the TicTacToe board is stored as a array:\r\n  0  |  1  |  2\r\n-----|-----|-----\r\n `3` |**4**|**5**\r\n**6**|**7**|**8**\r\n\r\n## What's New in this Update:\r\n\r\n+ Added method `bestMoveDebug`\r\n\r\n## Installation:\r\n\r\nYou can install Smart-TicTacToe like any other npm module:\r\n```\r\nnpm install smart-tictactoe\r\n```\r\n\r\nOr, if you want to install it globally:\r\n```\r\nnpm install -g smart-tictactoe\r\n```\r\n\r\nSmart-TicTacToe requires node-gyp to compile source.\r\n\r\n## License:\r\n\r\nCopyright (c) 2018 Luke Chu <[lukechu10@gmail.com](mailto:lukechu10@gmail.com)>\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a copy\r\nof this software and associated documentation files (the \"Software\"), to deal\r\nin the Software without restriction, including without limitation the rights\r\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\ncopies of the Software, and to permit persons to whom the Software is\r\nfurnished to do so, subject to the following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included in all\r\ncopies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","readmeFilename":"README.md","gitHead":"b8b9a22502598f23bc0023af044b65a72e5bb566","_id":"smart-tictactoe@2.2.0-beta.1","_npmVersion":"6.4.1","_nodeVersion":"8.12.0","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-DMsG3zkHeh+5k2/4A+Ct1oO1jETvugnrKJTlmc4guayAwms4GOT/t/HR+B8+l9lSgZukGhmt/mOgkWrf7TszDw==","shasum":"e871875d926c6696b0acfd679e21c7bfc828086c","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-2.2.0-beta.1.tgz","fileCount":15,"unpackedSize":34034,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbnBMWCRA9TVsSAnZWagAAwx4P/jKD8greKgOmirZNFuL1\n+WdXid5wNCBKSsNFE5G+clI9JO0V9E9g3A3qCe3IkQTRiOimPB31JdmfT2g6\nNx+bRG/gooSKzHhjMwLJqb/Gnrp/nI/cYHGbTcOL3V9B09CrPOVgK9Mn/tL+\nPbfB1sXG4hhXVksF7UyvB38bPqoJJxm7sGkG2J/14BPmP2s4dqfb5grHQ7Ie\nt1dd8ZawmGgesQ76Y6UM8CgL0tkAf1MTvz2BMLNIlHcVB+a96FB4zc94MLBX\nmn2/iepAcE5y+rjYgsuAuczFn015gPn1cFFBUk8QlvGGRHXlCQhA0EkNtmOp\nEGhXOMslyTjFR8k41/uTj8AU7ptXMHSLDD/lFa93wniHdqQFPIz4Ccvy9Tnq\nMyMcFNqrk6kG+jtjJwIut71bxd24AWGPpyFrfuCDqiSSu4C6JWwIhp9o5tF0\nd3jcLek2f8HIQnlgW4gm+uReEZMLVfpXAVemOPPeKb+LvkjrU3G1XEORXc27\nOxOtVIs4gbddzPW0Md9AF7aHZdjbqo9K6SoyyhCREgqzpMIYH7biTclJIEWZ\nvMIKEXTh6+zAtt4y8IVutSRvDpDkH9Cr4RraVYtiU7+uKtLOOfvsTUi9aFHN\n4XDjJsvWeJIOQFoCJCmyBLI1FpKWQflbazsQ66pbV3Jfbv7abOHUlvrolGmf\n6DVI\r\n=tIyJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICftuqUN2CcYDxY1NrjjUMuxSeRyoDMhJx853G2rx3adAiEAk+UFtmKF6Ld/DY/btgZwAwVY+bHgm97bqv5Yo1J9wdo="}]},"maintainers":[{"email":"lukechu10@gmail.com","name":"lukechu10"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_2.2.0-beta.1_1536955157130_0.6833595843368641"},"_hasShrinkwrap":false,"deprecated":"Fatal error fixed in next version"},"2.2.0-beta.2":{"name":"smart-tictactoe","version":"2.2.0-beta.2","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","devDependencies":{"node-gyp":"~3.8.0"},"engines":{"node":">6.0.0"},"gypfile":true,"gitHead":"b8b9a22502598f23bc0023af044b65a72e5bb566","_id":"smart-tictactoe@2.2.0-beta.2","_npmVersion":"6.4.1","_nodeVersion":"8.12.0","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-pJ6oHa3kxBNwf9ggTdJ5tJkJgMSXYDAdLuy3gIXYU1OVX2KhXNhdLNOlgTjlQO1Zu01EysTnSFo0nMgP0Sl8jw==","shasum":"8cad93d6d14c49ef56eb75f436be573617a81652","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-2.2.0-beta.2.tgz","fileCount":15,"unpackedSize":35256,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbnHZlCRA9TVsSAnZWagAAfncP/3BntnNMQMaB5JcylTLN\n6owsxt1lZfnuw4Y2df7qmn6t46hTv7b4PZQ7wFJUILOhbZHKF/IKU5VueEtU\nnW/aQyKvfBK3J6yBsIMQsXkxqwE6a/lKz4ShsyjoFRifMQzVdueeM8P3rpA3\nUzcvhTNYkene01RpOjH4bcS9Z8lhf5IyxZ3sjW8msXGVcMtsfh8PR3daFDlt\no1zay72tDukHAuyjDFt99f2xLLoNa2H5tu8uTRmY3tPfLpuIi7u5ld5ZO7c1\n5rsv7xL3/iYxpK/QPrwvOSP8pvW3AdvmOLUmgZBhW+FmLpeT78okEefIjw7C\n609QENTCtpPg4Faxs4rKQUHIJGJMcu51TgzNGTnnOJ2zVK8AlravaowWGt48\nxTjoosAwKH9XHSAiw/N4DnqVDjmgStaY/inBTt203tHfCeh4d9po7B20rtcx\ntz4aba9Xdzxy5fhyskzSabeyIrZuze6pWUaSGcNQmE32591bUHgvf3bO0IlH\nwucZAncFTe/ro8DLIjY1Qqz0xlZPso6sjV6i+F68LoVRHlcN//96ZuE074iT\n5qKMqJJnyHaWCSE2JmqBgW+LBvenWSw7I16207SYDdeDWFXWrJuBvtgsNWf0\nE1jsAa7OpBEuMZ/XNaEQT8rk2C1oBpzysDhOkjkaE0rLVD3hRiu2Ox1jIumG\nig1Q\r\n=kmyL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFzXRGv1q1HSUGeaCFWbJv1v7gHE4MtSpvCyekAWQ2z5AiBUpT1Pk7wPcqkhFUdXG3HLd4tfvl2dyain6OMVxKD+Dw=="}]},"maintainers":[{"email":"lukechu10@gmail.com","name":"lukechu10"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_2.2.0-beta.2_1536980580431_0.1866285944175381"},"_hasShrinkwrap":false},"2.2.0-beta.3":{"name":"smart-tictactoe","version":"2.2.0-beta.3","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","devDependencies":{"node-gyp":"~3.8.0"},"engines":{"node":">6.0.0"},"gypfile":true,"readme":"# Smart TicTacToe:\r\n\r\n## What does it do?\r\n\r\nSmart TicTacToe adds a function to your Node.js app that returns the best move possible for the computer in a TicTacToe game. It is impossible to loose with this algorithm.\r\n\r\n## Methods:\r\n>`bestMove(<gameBoard (type is a string with a length of 9 characters)>` : Returns the position that has the highest chance of winning (*See figures under ## Examples*)<br>**Note**: Computer is always `O` support to change has not yet been released.\r\n\r\n>`conversionTest(<String to test>)` : For testing purposes only.\r\n\r\n>`checkWin(<gameBoard>)` : Returns if someone won or not. If no one wins, it returns an empty string.\r\n## Examples:\r\n\r\nSmart TictacToe is really simple to use:\r\n```javascript\r\nvar tictactoe = require('smart-tictactoe');<br>\r\nconsole.log(tictactoe.bestMove(o   xxo x);<br>\r\n```\r\n___\r\nThis logs `4` in the console because `tictactoe.bestMove()` returns the best location for the computer if the scenario was:\r\n\r\n  O  |  _  |  _\r\n-----|-----|-----\r\n**_**|**X**|**X**\r\n**O**|**_**   |**X**\r\n\r\nWhich is `3` to prevent `X` from winning because the TicTacToe board is stored as a array:\r\n  0  |  1  |  2\r\n-----|-----|-----\r\n `3` |**4**|**5**\r\n**6**|**7**|**8**\r\n\r\n## What's New in this Update:\r\n\r\n+ Added method `bestMoveDebug`\r\n\r\n## Installation:\r\n\r\nYou can install Smart-TicTacToe like any other npm module:\r\n```\r\nnpm install smart-tictactoe\r\n```\r\n\r\nOr, if you want to install it globally:\r\n```\r\nnpm install -g smart-tictactoe\r\n```\r\n\r\nSmart-TicTacToe requires node-gyp to compile source.\r\n\r\n## License:\r\n\r\nCopyright (c) 2018 Luke Chu <[lukechu10@gmail.com](mailto:lukechu10@gmail.com)>\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a copy\r\nof this software and associated documentation files (the \"Software\"), to deal\r\nin the Software without restriction, including without limitation the rights\r\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\ncopies of the Software, and to permit persons to whom the Software is\r\nfurnished to do so, subject to the following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included in all\r\ncopies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","readmeFilename":"README.md","gitHead":"b8b9a22502598f23bc0023af044b65a72e5bb566","_id":"smart-tictactoe@2.2.0-beta.3","_npmVersion":"6.4.1","_nodeVersion":"8.12.0","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-tpUjLIbNnSmj9VwQc2F04bEFtKflPBW6Evi5i5vTlhPTOTiX8HmGzLA8j7tmXnrxx7QdGumYZ/ClyGgJ2JSHWg==","shasum":"9230be0dcbba67b0a841cb801372df4e705dd609","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-2.2.0-beta.3.tgz","fileCount":15,"unpackedSize":35462,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbnHqSCRA9TVsSAnZWagAAdE0P/RcOIfoWZvuOpFdONmwp\n9wxaMrXlUF1z9DPAK0kvlafhyHzlwb8qj5gS+jmZpEimY3BtGWELQupeuaWz\nQ1ZshV1z3e2lEasQkKeX3nrWs50ZgBvClVoGeWX0UHVjMfka9wQWiv5eoQpY\nZervbejvpA5YN8g4aAdsAXq/1QCVzqHPFu6z04JNnOEwI7vtoWZ6q5YesyY5\nh/Krz0+AjA7isYJqPI8Q4YeSOFjF/+PdB/P5ywqd/K0o61lnMN107BQ0LuV3\nYEl1iyWPHWnReeb8r/kJVT9zF6z6YP7XaKXzkmC1Z2LkkRi+QZWECdzEP3qe\nc51R6Uiqyt59zEz5QlK6bTh8y7Dj0VgtV0O6IjOR5YpH1Bb0NisZZBrmGxMx\nC2uqC74/jncMbUi6/Cm1w22MpIiPZMxa4wGvKLrWNpcMpZjA5Pr+uwopo7ay\nrXyGMKaPiXG4ziK+J7tfMdPV6yFmO0sCYv3kIK1t5SMJWcRV1cRMY4eujvuj\nM0W9+fksg2HfIiwHP5frI7I5snsXf5L/OmFh+7P7zMWAPJaeAwaAlytZxnC7\n4m/48W59gZOu5T8LyWP8FXzrhYASKkJZNTMQLQ7SGz+idaTLXDUmrgxxVnRa\ndlNZHun2m2T0OWMjcfpafiEcZA8FD2YcCY5jIJXVjbDQoZgyIQoYbhurj2w1\nmB6o\r\n=3pcc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDqL3zMRCwBKeM/Arl3L2UrlT/G9DiV4bG2X3TElrcTNQIgCvV0dtsSb9u696ZThvfp+ZRg4Sr2KMVKWcP9niODR0E="}]},"maintainers":[{"email":"lukechu10@gmail.com","name":"lukechu10"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_2.2.0-beta.3_1536981650165_0.0041430867264729"},"_hasShrinkwrap":false,"deprecated":"Fatal error fixed in next version"},"2.2.0-beta.4":{"name":"smart-tictactoe","version":"2.2.0-beta.4","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","devDependencies":{"node-gyp":"~3.8.0"},"engines":{"node":">6.0.0"},"gypfile":true,"readme":"# Smart TicTacToe:\r\n\r\n## What does it do?\r\n\r\nSmart TicTacToe adds a function to your Node.js app that returns the best move possible for the computer in a TicTacToe game. It is impossible to loose with this algorithm.\r\n\r\n## Methods:\r\n>`bestMove(<gameBoard (type is a string with a length of 9 characters)>` : Returns the position that has the highest chance of winning (*See figures under ## Examples*)<br>**Note**: Computer is always `O` support to change has not yet been released.\r\n\r\n>`conversionTest(<String to test>)` : For testing purposes only.\r\n\r\n>`checkWin(<gameBoard>)` : Returns if someone won or not. If no one wins, it returns an empty string.\r\n## Examples:\r\n\r\nSmart TictacToe is really simple to use:\r\n```javascript\r\nvar tictactoe = require('smart-tictactoe');<br>\r\nconsole.log(tictactoe.bestMove(o   xxo x);<br>\r\n```\r\n___\r\nThis logs `4` in the console because `tictactoe.bestMove()` returns the best location for the computer if the scenario was:\r\n\r\n  O  |  _  |  _\r\n-----|-----|-----\r\n**_**|**X**|**X**\r\n**O**|**_**   |**X**\r\n\r\nWhich is `3` to prevent `X` from winning because the TicTacToe board is stored as a array:\r\n  0  |  1  |  2\r\n-----|-----|-----\r\n `3` |**4**|**5**\r\n**6**|**7**|**8**\r\n\r\n## What's New in this Update:\r\n\r\n+ Added method `bestMoveDebug`\r\n\r\n## Installation:\r\n\r\nYou can install Smart-TicTacToe like any other npm module:\r\n```\r\nnpm install smart-tictactoe\r\n```\r\n\r\nOr, if you want to install it globally:\r\n```\r\nnpm install -g smart-tictactoe\r\n```\r\n\r\nSmart-TicTacToe requires node-gyp to compile source.\r\n\r\n## License:\r\n\r\nCopyright (c) 2018 Luke Chu <[lukechu10@gmail.com](mailto:lukechu10@gmail.com)>\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a copy\r\nof this software and associated documentation files (the \"Software\"), to deal\r\nin the Software without restriction, including without limitation the rights\r\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\ncopies of the Software, and to permit persons to whom the Software is\r\nfurnished to do so, subject to the following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included in all\r\ncopies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","readmeFilename":"README.md","gitHead":"b8b9a22502598f23bc0023af044b65a72e5bb566","_id":"smart-tictactoe@2.2.0-beta.4","_npmVersion":"6.4.1","_nodeVersion":"8.12.0","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-eojG9O4G+AHW4oZVo85MGlZH0EGKjqEzIBMUjeXSroB6IGbUuQjQAJUUzXDbzqI5VvlUekZDLHjOL11tzg6Scw==","shasum":"02f067418da47c96b18e53da2d40c2a5b27f9553","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-2.2.0-beta.4.tgz","fileCount":16,"unpackedSize":37588,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbnHw/CRA9TVsSAnZWagAAvYkP/RVaxriG/RNvPWm+t9nw\nUomtB9u9udDFMZ8SfRepa1OgIDj4W79vEs9Nw8ySvdtTJjvZIecwe8/C/ZzR\nLf84qBVlurr7crL+8V/aJ8ZweO9cjR0w6u7C+WeGJgR/4JLdZ2iao2tWCSGG\njUZ7MbTwXEE1JmbuKGkIq/TUtYU/2KXWB8sybbp/3nG6dA5Y/tYefZIrMhDI\npHGthupKyIpMkQUE1j14L7ZL6qjonY9BdyjX6jD6wJCfF1fOuUc42ny6R6+a\nkPDxEfa1NT1Z6dk1c+yYJpBprNiYARo+44+JiNbR4Eq1tby/r00VSQtjX/F3\nOOD+tS+jAj0d8YA0dyuO8lGxKaKPDni/CyJIVDFy+HWX1TomXteER0mKRhjL\nDDU5aSLCvw2JTCs/AuwHtV/mrTDVAeaXayX3Xgco8rGJoBOifS6PPeHqeJak\n8kPIB0zTsS1T7citt0sPCpwSBOplYYl0q+ZrJ8k4cDjhCJ/KLMwHCfVdgxaF\nHkh2rOsXcRIBxhiwqcF9agcIYEcFCAScvNU5/V4mu8g3TEGbZutiHM899GBq\nBiVu7RoEFcbmwUJuqUBKxEhdDWA2BBSuSTjesl4mzPpSktyKv3FeyMgmDpd+\nl9VE4euSkLua3gXPWVD7D1GD3HmNIFUb9P7oaUI+pjXZ6W4tS2RZE05gtavN\nLMuV\r\n=TJa9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGnWb5Hmvjz/GXit/cG9PPwtzpsd7dfzftAPlcAa+5aeAiAHXupxkMRFYq2QnEdFsW9zAHglVLtF2bj2BDel3nzWAA=="}]},"maintainers":[{"email":"lukechu10@gmail.com","name":"lukechu10"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_2.2.0-beta.4_1536982078725_0.2632759884238216"},"_hasShrinkwrap":false,"deprecated":"Fatal error fixed in next version"},"2.2.0-beta.5":{"name":"smart-tictactoe","version":"2.2.0-beta.5","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","devDependencies":{"node-gyp":"~3.8.0"},"engines":{"node":">6.0.0"},"gypfile":true,"readme":"# Smart TicTacToe:\r\n\r\n## What does it do?\r\n\r\nSmart TicTacToe adds a function to your Node.js app that returns the best move possible for the computer in a TicTacToe game. It is impossible to loose with this algorithm.\r\n\r\n## Methods:\r\n>`bestMove(<gameBoard (type is a string with a length of 9 characters)>` : Returns the position that has the highest chance of winning (*See figures under ## Examples*)<br>**Note**: Computer is always `O` support to change has not yet been released.\r\n\r\n>`conversionTest(<String to test>)` : For testing purposes only.\r\n\r\n>`checkWin(<gameBoard>)` : Returns if someone won or not. If no one wins, it returns an empty string.\r\n## Examples:\r\n\r\nSmart TictacToe is really simple to use:\r\n```javascript\r\nvar tictactoe = require('smart-tictactoe');<br>\r\nconsole.log(tictactoe.bestMove(o   xxo x);<br>\r\n```\r\n___\r\nThis logs `4` in the console because `tictactoe.bestMove()` returns the best location for the computer if the scenario was:\r\n\r\n  O  |  _  |  _\r\n-----|-----|-----\r\n**_**|**X**|**X**\r\n**O**|**_**   |**X**\r\n\r\nWhich is `3` to prevent `X` from winning because the TicTacToe board is stored as a array:\r\n  0  |  1  |  2\r\n-----|-----|-----\r\n `3` |**4**|**5**\r\n**6**|**7**|**8**\r\n\r\n## What's New in this Update:\r\n\r\n+ Added method `bestMoveDebug`\r\n\r\n## Installation:\r\n\r\nYou can install Smart-TicTacToe like any other npm module:\r\n```\r\nnpm install smart-tictactoe\r\n```\r\n\r\nOr, if you want to install it globally:\r\n```\r\nnpm install -g smart-tictactoe\r\n```\r\n\r\nSmart-TicTacToe requires node-gyp to compile source.\r\n\r\n## License:\r\n\r\nCopyright (c) 2018 Luke Chu <[lukechu10@gmail.com](mailto:lukechu10@gmail.com)>\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a copy\r\nof this software and associated documentation files (the \"Software\"), to deal\r\nin the Software without restriction, including without limitation the rights\r\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\ncopies of the Software, and to permit persons to whom the Software is\r\nfurnished to do so, subject to the following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included in all\r\ncopies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","readmeFilename":"README.md","gitHead":"b8b9a22502598f23bc0023af044b65a72e5bb566","_id":"smart-tictactoe@2.2.0-beta.5","_npmVersion":"6.4.1","_nodeVersion":"8.12.0","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-HP95X8CZ+Sw8GHxDwNI9cVtwJ7SvWRyv6xXLm2Yy8kAezB1sffg6M3FFemneT/yJ6lIAY0pprXUzjnBiSZGHLA==","shasum":"39e988e141af45fe948d22554e50d304e94566c3","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-2.2.0-beta.5.tgz","fileCount":16,"unpackedSize":27904,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbnHzMCRA9TVsSAnZWagAAKoEP/1k5/wcTAoxJhBr1DdeX\nvigeWkf+QaOmUsiTgK78fGtAavNuLrllgno1BK8+Jm4eAvkxcRwa3rhht8ld\ngtGZZ6xP/oNj9LhQZHkpVAXMmFc6mU9CyH6VmzkqXVQVjKwq7YrME1nHgWGe\n8V2okdG7LpGEuH0lWvIPlS8e7nalOZDb0KPJCJaigS8CI4idtEpxMztGPpA5\n4KU5du2wDheo58GAf3tnSYvXItxl4WXbLs2ir/WryIhSv+d6eWfNL4rdoNwm\nYEdlWN6aIMvXxAxTvuZk4zcXbYhx22DGZShdV93VxS7tNYX6Mq9/+O7tiAvq\nBJ8QrROTxStvDmyMcx1HamSv1LMotbx+yVEFK1yEo0LuJoGp4Qm5qsIUcJ3o\n9Ot+llVms/pcfNy+qm7JUDmJM/v7mHOx0WodOLM8hagCuD2S7RartKOKHQxz\na4Wv0M2OMcNPg7+bVDeW3MFwnXO4UPyriNviT8K1gkosJaNDzIaxbpLOUbsD\n9gbdxg4CLn5Yw+JALX/K/Z+seoshKZ6leaalWkAbOSuddCYpB8t1QeB/6qcN\nXcC7EdvK6SCZXOtOYEoiPrEJWGmGz1euIxGGHvgDgzYIoF56U1eQ6at5WIEn\npgaF+DlVAtS0Wh0WbbChUGBV7HKpg1JRACRu5qvYC/0P578E+Y1ys/0M2nV2\nYgXK\r\n=Jgfp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB9x5gmRf6SKxDjqpIZm0NPiDT5HdaI+IJyaq6d9+9gMAiAlSdwNr9ZFBM1PCBSiOyTgR0zT6J8EecVpw/JN9USboQ=="}]},"maintainers":[{"email":"lukechu10@gmail.com","name":"lukechu10"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_2.2.0-beta.5_1536982220237_0.929272669080996"},"_hasShrinkwrap":false},"2.2.0-beta.6":{"name":"smart-tictactoe","version":"2.2.0-beta.6","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","devDependencies":{"node-gyp":"~3.8.0"},"engines":{"node":">6.0.0"},"gypfile":true,"gitHead":"b8b9a22502598f23bc0023af044b65a72e5bb566","_id":"smart-tictactoe@2.2.0-beta.6","_npmVersion":"6.4.1","_nodeVersion":"8.12.0","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-E2fI91Tb32hEd5RFKK8ivx+A641dNTCbhh9YlCBIlGkRl5Sgccw2rhxT4r/pTLjKJj+JeTdMi0rYjTHSGrshLg==","shasum":"72b7e994f5faf0c35c42899ce58c1629a46b1fda","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-2.2.0-beta.6.tgz","fileCount":22,"unpackedSize":53523,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboVn7CRA9TVsSAnZWagAALWgP/1am9JMvdxGHG/G9HG3F\nF8N4hjMZvhFFQznGQJwvUsFKx0mvdzj02E0ceql9oD1Ztx1XCJlfK4w9Beq0\nXLS9A/rtAbqXtwZCZHmbAFuddg2LJ8o6zqjORlsXGru2+omzSjdvGILURa8R\nKh+G0XWbJ1hYo5cc8f/rrCP6zu8jCtbgt3q5cWpuAqz0nU4qCL7Tu4MinqGB\n0mcJCyG5X+MzVd8UpEf3OQ2KexiqOVYGhLnxXoV+l3Zpz3ztp+4CzWjdVA4g\njnYNzF0vwnxwwyuG1AiOkwQTi59Dda8vklmARoCMgq+7jiq4iEkKTyjV3ShP\nQxa+6IjoWXMIxY/Y9BWW0mugi3WshqZ2FemwsqqkbPltbDubPE1X50KVfxq5\nmmHe2Y5baPbi61pbfyt5fpAARVGYXoaSd/riicxoimd2p724T6HMXhLk7WX+\n1Kcuu0NqaUe/yv7GIxsJyShR5dqINGaJlqixPhn7vsMHXgHqNbJtu49uZWod\nR79ksz4auSi1jJfVOF1/bIxhJ8dTgwRH9mJO/KXS+sZazp1odbwasaTkx2eX\nToYjhPts2LenX35HvM/u9qo6mt5KDe9fBYbEz5/Koidwb8L5g/Dx/KJoRRJg\nIcWUYptVDZOni2YZzUteXeaQnuyxXuD3fQPbxElnNfhJosdDHlJV6xiGjrPW\nnoi/\r\n=5pPg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCH3TmCSWLkRJOZmQxfjiyDlgyfTrslC0OHFp/FgQxPYAIgTuZbwH9G3KephtnV53NS0mlKhd0d7qTObC0JW0vYVz8="}]},"maintainers":[{"email":"lukechu10@gmail.com","name":"lukechu10"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_2.2.0-beta.6_1537300987140_0.185364427409487"},"_hasShrinkwrap":false},"2.2.0-pre.0":{"name":"smart-tictactoe","version":"2.2.0-pre.0","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","devDependencies":{"node-gyp":"~3.8.0"},"engines":{"node":">6.0.0"},"gypfile":true,"readme":"# Smart TicTacToe:\r\n\r\n## What does it do?\r\n\r\nSmart TicTacToe adds a function to your Node.js app that returns the best move possible for the computer in a TicTacToe game. It is impossible to loose with this algorithm.\r\n\r\n## Methods:\r\n>`bestMove(<gameBoard (type is a string with a length of 9 characters)>` : Returns the position that has the highest chance of winning (*See figures under ## Examples*)<br>**Note**: Computer is always `O` support to change has not yet been released.\r\n\r\n>`conversionTest(<String to test>)` : For testing purposes only.\r\n\r\n>`checkWin(<gameBoard>)` : Returns if someone won or not. If no one wins, it returns an empty string.\r\n## Examples:\r\n\r\nSmart TictacToe is really simple to use:\r\n```javascript\r\nvar tictactoe = require('smart-tictactoe');<br>\r\nconsole.log(tictactoe.bestMove(o   xxo x);<br>\r\n```\r\n___\r\nThis logs `4` in the console because `tictactoe.bestMove()` returns the best location for the computer if the scenario was:\r\n\r\n  O  |  _  |  _\r\n-----|-----|-----\r\n**_**|**X**|**X**\r\n**O**|**_**   |**X**\r\n\r\nWhich is `3` to prevent `X` from winning because the TicTacToe board is stored as a array:\r\n\r\n  0  |  1  |  2\r\n-----|-----|-----\r\n `3` |**4**|**5**\r\n**6**|**7**|**8**\r\n\r\n## What's New in this Update:\r\n\r\n+ Fixed errors causing `bestMoveDebug()` to not work as expected\r\n+ Stabalized some methods\r\n+ Crushed bugs\r\n\r\n## Installation:\r\n\r\nYou can install Smart-TicTacToe like any other npm module:\r\n```\r\nnpm install smart-tictactoe\r\n```\r\n\r\nOr, if you want to install it globally:\r\n```\r\nnpm install -g smart-tictactoe\r\n```\r\n\r\nSmart-TicTacToe requires node-gyp to compile source.\r\n\r\n\r\n**Required software:**\r\n+ Python 2.7 (3.x won't work) (for node-gyp to compile the source code)\r\n+ Make (also for node-gyp)\r\n\r\n## License:\r\n\r\nCopyright (c) 2018 Luke Chu <[lukechu10@gmail.com](mailto:lukechu10@gmail.com)>\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a copy\r\nof this software and associated documentation files (the \"Software\"), to deal\r\nin the Software without restriction, including without limitation the rights\r\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\ncopies of the Software, and to permit persons to whom the Software is\r\nfurnished to do so, subject to the following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included in all\r\ncopies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r\n","readmeFilename":"README.md","gitHead":"472a37df06c37c833c67f31697f21d129a8ef46e","_id":"smart-tictactoe@2.2.0-pre.0","_npmVersion":"6.4.1","_nodeVersion":"8.12.0","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-HEOQxeiMAiwsu4xZEQ7036vJXrQ2DdYn0Cu+IOQ90A7HBb1TWeFR+/3I4pl4VGuFVMJyu8UatiP41amcaEy53g==","shasum":"1569b8322b5da95dfd0374f5b0697959dfa53016","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-2.2.0-pre.0.tgz","fileCount":22,"unpackedSize":56289,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboXuwCRA9TVsSAnZWagAAYdAP/RCOV+5Y8giaDSgSZJml\nxF7xvvXTFUDC5fNOVHSZ3RHWb2YFc1QBMQqyGGuiVQ8/E+YjVEijQB7Hbzeh\np41nXvoDu9UfoFIWwykBw4BpUhk91jeav/5JTfOWnMrBkCSM9xNXL1lVnhzS\nN2WjxPhwEisNuEIjOyR5M72GiqoZuEFmZo6vE/Nw1zxJpgBLhAmPS0SU5ugP\nePnkNyua75LfgEmC6+6Nm1ElFYnRA3KND199lJWYM7cN0WQV27xGRWoNItFS\n5aehkgAHgZ9ubPkp0GwpJjkj36+rMRBpC6IvqwoZmnBUBzHLapjQI7ewIkjj\nvEU/Lncj6Vb+YL+5Xi6wV8b1Ot1U3YEWRpKzpBk0dO4yfDRGD5w9dsB4XW6j\nG6S8nm4H+ChMM21L5HMvxoYciir3iv/LVupuZUQ/n7zkGqNibKbcqwa5J4sx\n+erdGiTWxpx8YlNkIxNA1v+6E/U85KKzKVyNvC7RdfFIBfk39Rlz4eCWV0Wa\nDHoeP9BWh4r9s9aFKXC5Tj+2tJp3O6Tr/pimy42RP8JKvxtOyQzdDyLckTmH\n5KnNtobhIfv/HNh2i8/EXXrr4hspgQuN9qyjAn1eCkIbJg4jVoCotiQZ6X8A\nvktGjL5nN719RABUGeL8b3X5EZ/Eu8U/lKCSFNuDkjDm2K8+5IhAAQVWS1pF\nfLsq\r\n=QDto\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDR+sL0jW7h30T4ANpOjiNB8lpkfyHdldk8is92cbze1QIgVdFv1h4VqhlYuRypGSPMMJiNVucZT3E5UT6R/r2lazg="}]},"maintainers":[{"email":"lukechu10@gmail.com","name":"lukechu10"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_2.2.0-pre.0_1537309615386_0.5151466829344034"},"_hasShrinkwrap":false},"2.2.0-pre.1":{"name":"smart-tictactoe","version":"2.2.0-pre.1","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","devDependencies":{"node-gyp":"~3.8.0"},"engines":{"node":">6.0.0"},"repository":{"type":"git","url":"git+https://github.com/lukechu10/Smart-TicTacToe.git"},"bugs":{"url":"https://github.com/lukechu10/Smart-TicTacToe/issues"},"gypfile":true,"readme":"# Smart TicTacToe:\r\n\r\n## What does it do?\r\n\r\nSmart TicTacToe adds a function to your Node.js app that returns the best move possible for the computer in a TicTacToe game. It is impossible to loose with this algorithm.\r\n\r\n## Methods:\r\n>`bestMove(<gameBoard (type is a string with a length of 9 characters)>` : Returns the position that has the highest chance of winning (*See figures under ## Examples*)<br>**Note**: Computer is always `O` support to change has not yet been released.\r\n\r\n>`conversionTest(<String to test>)` : For testing purposes only.\r\n\r\n>`checkWin(<gameBoard>)` : Returns if someone won or not. If no one wins, it returns an empty string.\r\n## Examples:\r\n\r\nSmart TictacToe is really simple to use:\r\n```javascript\r\nvar tictactoe = require('smart-tictactoe');<br>\r\nconsole.log(tictactoe.bestMove(o   xxo x);<br>\r\n```\r\n___\r\nThis logs `4` in the console because `tictactoe.bestMove()` returns the best location for the computer if the scenario was:\r\n\r\n  O  |  _  |  _\r\n-----|-----|-----\r\n**_**|**X**|**X**\r\n**O**|**_**   |**X**\r\n\r\nWhich is `3` to prevent `X` from winning because the TicTacToe board is stored as a array:\r\n\r\n  0  |  1  |  2\r\n-----|-----|-----\r\n `3` |**4**|**5**\r\n**6**|**7**|**8**\r\n\r\n## What's New in this Update:\r\n\r\n+ Fixed errors causing `bestMoveDebug()` to not work as expected\r\n+ Stabalized some methods\r\n+ Crushed bugs\r\n\r\n## Installation:\r\n\r\nYou can install Smart-TicTacToe like any other npm module:\r\n```\r\nnpm install smart-tictactoe\r\n```\r\n\r\nOr, if you want to install it globally:\r\n```\r\nnpm install -g smart-tictactoe\r\n```\r\n\r\nSmart-TicTacToe requires node-gyp to compile source.\r\n\r\n\r\n**Required software:**\r\n+ Python 2.7 (3.x won't work) (for node-gyp to compile the source code)\r\n+ Make (also for node-gyp)\r\n\r\n## License:\r\n\r\nCopyright (c) 2018 Luke Chu <[lukechu10@gmail.com](mailto:lukechu10@gmail.com)>\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a copy\r\nof this software and associated documentation files (the \"Software\"), to deal\r\nin the Software without restriction, including without limitation the rights\r\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\ncopies of the Software, and to permit persons to whom the Software is\r\nfurnished to do so, subject to the following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included in all\r\ncopies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r\n","readmeFilename":"README.md","gitHead":"472a37df06c37c833c67f31697f21d129a8ef46e","homepage":"https://github.com/lukechu10/Smart-TicTacToe#readme","_id":"smart-tictactoe@2.2.0-pre.1","_npmVersion":"6.4.1","_nodeVersion":"8.12.0","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-IngdKEtzo0ooM6e34eJJuwTIWsM/T7aSSYqjOquNjZ8HX0sJdM2sxxIcRw3fCDQY+DKsyt8tOeanfQTCxGoTsA==","shasum":"12d8f3a11901c82c28bf157003e02897b59cff25","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-2.2.0-pre.1.tgz","fileCount":22,"unpackedSize":59730,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboXz2CRA9TVsSAnZWagAA9EAP/3p4jQgs5sKZcHlIM/Z5\nU5zplxCqeQEwETKuVRbCzHi3V3EqUJ149Hyo0lCM/VQcmt42ykC8EIYJOBfq\nkCkti26p5VURgLx6OdYZLEFNPztHQVHFut+xYo3vnakLpK1aGf0J9nuU9Iqg\n3dlnpTlvLbR4bal2oXvnft6tBwtvuKPdaE82yHhqduBGlhRtSMsuMPXdshcc\nhrzPl84SFbMfyVof7QoJ5WkKf8NRu3pW5DexRfyPIrcz74+el5jZXfkTgia/\nHxBEKTeuMm0XcMTeAOFpCmgFVBWNKBPdsJGP48U9Fiu5DqArpCVQgnHlgevn\nWFo8mS9U/WHYTxnRazZ9IHuto7rHHAknQmT87Asz0R2ldoHXMDrMtWgMbqw4\nkLk61ANUDmazIYaXS2KG31QaPL0Qfo1qacjlSkXKU2h3apRpmfrbEQCad+3R\nPJuem2LLvcW5AQc8IYDkXNHyCmJiIngiFELCm/3WC0Vqgz1MkmffCBZMFIhu\nQkzdqGImlcu0lGYMqU9n2AN7A1uiULeXe+fUHE3mJ0ag+LoiGZW2Z0PretE0\nci1pJhzrTenMm8fXChf/GAk/9qd+iTCxBYkfraObI2dQcdIUUT4hqeyCKKIE\noYZkcN9eHFedYqdMg2Kt1vjlHVlOjOKwo7Gb5liENBCf+H2lkGKP9bh1oxBF\nOdtk\r\n=bxJ7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC9YHGWWBjpNxA05FvCT/vTHv+EsdmnqpwyDrfMBJxcjAIgXEoVzDzEnUEBRMY6FHPsuwgh4/7uVujaEqxMj2eNg94="}]},"maintainers":[{"email":"lukechu10@gmail.com","name":"lukechu10"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_2.2.0-pre.1_1537309942139_0.24562749706734643"},"_hasShrinkwrap":false},"2.2.0-pre.2":{"name":"smart-tictactoe","version":"2.2.0-pre.2","description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","main":"./build/Release/game.node","scripts":{"test":"game.bestMove(    x    );","install":"node-gyp rebuild"},"keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","devDependencies":{"node-gyp":"~3.8.0"},"engines":{"node":">6.0.0"},"repository":{"type":"git","url":"git+https://github.com/lukechu10/Smart-TicTacToe.git"},"homepage":"https://github.com/lukechu10/Smart-TicTacToe/blob/master/README.md","bugs":{"url":"https://github.com/lukechu10/Smart-TicTacToe/issues"},"gypfile":true,"readme":"# Smart TicTacToe:\r\n\r\n## What does it do?\r\n\r\nSmart TicTacToe adds a function to your Node.js app that returns the best move possible for the computer in a TicTacToe game. It is impossible to loose with this algorithm.\r\n\r\n## Methods:\r\n>`bestMove(<gameBoard (type is a string with a length of 9 characters)>` : Returns the position that has the highest chance of winning (*See figures under ## Examples*)<br>**Note**: Computer is always `O` support to change has not yet been released.\r\n\r\n>`conversionTest(<String to test>)` : For testing purposes only.\r\n\r\n>`checkWin(<gameBoard>)` : Returns if someone won or not. If no one wins, it returns an empty string.\r\n## Examples:\r\n\r\nSmart TictacToe is really simple to use:\r\n```javascript\r\nvar tictactoe = require('smart-tictactoe');<br>\r\nconsole.log(tictactoe.bestMove(o   xxo x);<br>\r\n```\r\n___\r\nThis logs `4` in the console because `tictactoe.bestMove()` returns the best location for the computer if the scenario was:\r\n\r\n  O  |  _  |  _\r\n-----|-----|-----\r\n**_**|**X**|**X**\r\n**O**|**_**   |**X**\r\n\r\nWhich is `3` to prevent `X` from winning because the TicTacToe board is stored as a array:\r\n\r\n  0  |  1  |  2\r\n-----|-----|-----\r\n `3` |**4**|**5**\r\n**6**|**7**|**8**\r\n\r\n## What's New in this Update:\r\n\r\n+ Fixed errors causing `bestMoveDebug()` to not work as expected\r\n+ Stabalized some methods\r\n+ Crushed bugs\r\n\r\n## Installation:\r\n\r\nYou can install Smart-TicTacToe like any other npm module:\r\n```\r\nnpm install smart-tictactoe\r\n```\r\n\r\nOr, if you want to install it globally:\r\n```\r\nnpm install -g smart-tictactoe\r\n```\r\n\r\nSmart-TicTacToe requires node-gyp to compile source.\r\n\r\n\r\n**Required software:**\r\n+ Python 2.7 (3.x won't work) (for node-gyp to compile the source code)\r\n+ Make (also for node-gyp)\r\n\r\n## License:\r\n\r\nCopyright (c) 2018 Luke Chu <[lukechu10@gmail.com](mailto:lukechu10@gmail.com)>\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a copy\r\nof this software and associated documentation files (the \"Software\"), to deal\r\nin the Software without restriction, including without limitation the rights\r\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\ncopies of the Software, and to permit persons to whom the Software is\r\nfurnished to do so, subject to the following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included in all\r\ncopies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r\n","readmeFilename":"README.md","gitHead":"472a37df06c37c833c67f31697f21d129a8ef46e","_id":"smart-tictactoe@2.2.0-pre.2","_npmVersion":"6.4.1","_nodeVersion":"8.12.0","_npmUser":{"name":"lukechu10","email":"lukechu10@gmail.com"},"dist":{"integrity":"sha512-n2g9ZvJrEqi7Xwfv/N8plnxHS5Lyp+tneeBGuRJPQLFGnvXFOuCGkcvF4YV5XpcC1i9dyDV+Wz+cKNM3BIqk6A==","shasum":"e492185af9e0fbe602661540f1a163cdc8fbbd71","tarball":"https://registry.npmjs.org/smart-tictactoe/-/smart-tictactoe-2.2.0-pre.2.tgz","fileCount":22,"unpackedSize":61832,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboX4JCRA9TVsSAnZWagAAyZ0P/juTCsAkrZzqZ4u7/3jy\naMcIoHhNrLboKnDyqdPD/qLpFBvgb7SKPevimlnHF4aJFdaLx5xPpfof4Sdd\nM1WvOcAk7gi47k7RyU1jOCcom8PkvSomx65cJ8LDLRyT8z3kSHakf4lPCCd7\nHLeMuu/4JTzkcBg0RgD+Da1pbaq1DOexQW/46zwk6GY2YGGiJFH9BuPieCB6\ng0Y+xuJHpA18ExBazqESw59oByCDCm1KwoR5lbZ6P5M+dfmD58tm+SVu8yez\nmDp2rxaHU9wB3fLmdp4VV2+pId6aAwmXkAonwPveDKaJbpPcRDOtVlIjNd8U\nlflhVtSX4SuSqyNRJDEex8+qt6WiL4Zto+zvc9Yl6cXR7G5msjxuQ0/t4izN\neq6Gfk2L0sfxczNSLebj+2yWxH3a/xPq4Pr7ZCNtuG1jl21WMeRZI1OTHWPF\nYM0+89qBfChDtFmfDasnZkXUrGjDkfxT99O96HF+IclKygo4eBCsWAj199+7\niiDqQayMf5jnib76jnDaywgcBNUSdp8u45hsWJSU5V9feXORQngspMS7AEWJ\nLKC37rTO1c/8AD8ZEaHh0XGJjZXf1Iva3caNO5eJZ0VGV95/1ywvfGjqiszs\nLp8RKsjK2w0HT2LTTl7XSK95Q+wwDyQ7Rxue4XnDEO6tHDsKxCCHgvQcu81v\nfnrz\r\n=cY1v\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDthGI5xqh8Gt7AKkLRfD4+footB9f33Qhk61J4BNYaZAiEAmoYeTuGoQtvLaZ/zSuDBG4jH9axey9lw7KwIkJ5YbD0="}]},"maintainers":[{"email":"lukechu10@gmail.com","name":"lukechu10"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/smart-tictactoe_2.2.0-pre.2_1537310216436_0.5343357753215796"},"_hasShrinkwrap":false}},"time":{"created":"2018-08-13T21:25:59.677Z","1.0.0":"2018-08-13T21:25:59.808Z","modified":"2022-05-18T03:58:21.029Z","1.0.1":"2018-08-13T22:02:59.743Z","1.0.2":"2018-08-14T20:47:08.887Z","1.0.3":"2018-08-14T20:50:11.097Z","1.0.4":"2018-08-14T20:53:33.918Z","1.0.5":"2018-08-14T20:56:13.939Z","1.0.6":"2018-08-14T21:30:51.273Z","1.0.7":"2018-08-15T20:04:04.378Z","1.0.8":"2018-08-15T20:15:04.190Z","1.0.9":"2018-08-15T20:16:47.110Z","1.1.0-0":"2018-08-15T20:49:16.822Z","1.1.0":"2018-08-15T20:52:42.992Z","1.1.1":"2018-08-15T21:00:11.843Z","2.0.0-0":"2018-08-26T17:49:39.423Z","2.0.0-alpha.0":"2018-08-26T18:06:10.833Z","2.0.0-alpha.1":"2018-08-26T18:11:26.806Z","2.0.0":"2018-08-26T18:39:08.387Z","2.0.1":"2018-08-26T18:42:41.189Z","2.0.2":"2018-08-26T18:46:28.568Z","2.0.3":"2018-08-26T18:50:14.686Z","2.0.4":"2018-08-26T18:53:49.386Z","2.1.0":"2018-09-01T21:26:57.120Z","2.1.1":"2018-09-02T03:48:25.297Z","2.1.2":"2018-09-02T03:53:56.548Z","2.2.0-alpha.0":"2018-09-02T23:07:41.987Z","2.2.0-alpha.1":"2018-09-03T22:12:14.162Z","2.2.0-alpha.2":"2018-09-03T22:21:31.357Z","2.2.0-beta.0":"2018-09-03T22:24:25.851Z","2.2.0-beta.1":"2018-09-14T19:59:18.133Z","2.2.0-beta.2":"2018-09-15T03:03:00.613Z","2.2.0-beta.3":"2018-09-15T03:20:50.351Z","2.2.0-beta.4":"2018-09-15T03:27:58.940Z","2.2.0-beta.5":"2018-09-15T03:30:20.385Z","2.2.0-beta.6":"2018-09-18T20:03:07.278Z","2.2.0-pre.0":"2018-09-18T22:26:55.523Z","2.2.0-pre.1":"2018-09-18T22:32:22.304Z","2.2.0-pre.2":"2018-09-18T22:36:56.526Z"},"maintainers":[{"email":"lukechu10@gmail.com","name":"lukechu10"}],"description":"A Node Module that provides a function to return the best move in a Tic Tac Toe game for the computer.","keywords":["tictactoe","ai","never-win"],"author":{"name":"lukechu10"},"license":"MIT","readme":"","readmeFilename":""}