abstractions
enums
