class ByteArray implements Serializable, Cloneable {

    public static boolean equalTo(ByteArray a, ByteArray b) {
        if (a == null || b == null) {
            throw new IllegalNullArgumentException();
        }
        if (a == b) {
            return true;
        }
        a.value.clear();
        b.value.clear();
        if (a.value.remaining() != b.value.remaining())
            return false;
        int length = a.value.remaining();
        boolean match = true;
        for (int i = 0; i < length; i++) {
            if (a.value.get() != b.value.get()) {
                match = false;
                break;
            }
        }
        a.value.rewind();
        b.value.rewind();
        return match;
    }

    public  ByteArray(int size);
    public  ByteArray(int size, String encoding);
    public  ByteArray(int size, ByteOrder order);
    public  ByteArray(int size, String encoding, ByteOrder order);
    public  ByteArray(byte[] array);
    public  ByteArray(byte[] array, ByteOrder order);
    public  ByteArray(byte[] array, String encoding);
    public  ByteArray(byte[] array, String encoding, ByteOrder order);
    public  ByteArray(ByteArray byteArray);
    public  ByteArray(ByteBuffer buffer);
    public  ByteArray(ByteBuffer buffer, String encoding);

}