imrpove i/o