add basic ADT