remove extra abstraction