public @Override void setDNA(String dna) throws IllegalArgumentException {
        if (dna == null || dna.length() == 0)
            throw new IllegalArgumentException("argument null or empty");
        if (dna.contains("TGC"))
            throw new IllegalArgumentException("argument contains TGC");
        for (int i= 0; i < dna.length(); i= i+1) {
            char c= dna.charAt(i);
            if ("CTGA".indexOf(c) < 0) {
                throw new IllegalArgumentException("argument contains illegal character '" + c + "'");
            }
        }
        this.dna= dna;
    }