Updated Write()