use []byte{} for writing to save reallocs