oops, forgot to include Hardware.java