abstract objects
