split the read and write setting, add forceWriteEntireBody()