user file saver implementation