separate write