https://medium.com/@monocosmo77/how-decoding-algorithms-work-part2-artificial-intelligence-6b86cd1b4ba7