Source: https://www.cs.umd.edu/class/spring2019/cmsc330/lectures/01-automata.pdf