using little-endian as deault byte order