My abstract data types