important note added to the top: this code has never been run on an actual Arduino yet