Removed failure fields and read/writeSize fields
Reduced back to most basic parts - SLOW