Source: https://galton.uchicago.edu/~lalley/Courses/312/MarkovChains.pdf