https://github.com/mark-watson/Java-AI-Book-Code