fixing windows weirdness on IO by breaking the read and parse parts