added a bunch of getters and setters