abstracted files