* file operations moved to resource