create OOP :) STATE MACHINE / TURING MACHINE