abstract file path