there is two parts to the code, the set up and the running loop, I know what it looks like, and its easy to copy, but I want to learn how it works too.