This will need to be changed based on what name you give the abstract datatype.