public Proposition(Proposition proposition){
  this.variableSource=proposition.variableSource;
  this.allowedCategories=new boolean[proposition.allowedCategories.length][];
  for (int i=0; i < allowedCategories.length; i++) {
    this.allowedCategories[i]=new boolean[proposition.allowedCategories[i].length];
    System.arraycopy(proposition.allowedCategories[i],0,allowedCategories[i],0,allowedCategories[i].length);
  }
}

public Proposition ( Proposition proposition ) { this . variableSource = proposition . variableSource ; this . allowedCategories = new boolean [ proposition . allowedCategories . length ] [ ] ; for ( int i = 0 ; i < allowedCategories . length ; i ++ ) { this . allowedCategories [ i ] = new boolean [ proposition . allowedCategories [ i ] . length ] ; System . arraycopy ( proposition . allowedCategories [ i ] , 0 , allowedCategories [ i ] , 0 , allowedCategories [ i ] . length ) ; } }
copies the info out of the old proposition into a new proposition for the new bayesim .
