a note about abstraction