added big endian handling