add byte array support