use read binary mode