things break if file doesnt exist yet