fromByteArray signature now takes ByteBuffer