cloneObj.paramGroupOwnedHash.add(iter.next());
cloneObj.paramGroupOwnedHash.add(((Group)iter.next()).clone());
   public Object clone() throws CloneNotSupportedException{    Structure cloneObj = (Structure) super.clone();    //deep copy of the paramGroupOwnedHash     synchronized (this.paramGroupOwnedHash) {      synchronized(cloneObj.paramGroupOwnedHash) {        cloneObj.paramGroupOwnedHash = Collections.synchronizedSet(new HashSet(this.paramGroupOwnedHash.size()));        Iterator iter = this.paramGroupOwnedHash.iterator();        while (iter.hasNext()) {          cloneObj.paramGroupOwnedHash.add(iter.next());        }      }    }    return cloneObj;   }