remove abstraction