public SymGraph(Motif motif){
  this.motif=motif;
  colorsToRecheck=new HashSet<Integer>();
  topMotifnodeToColor=new int[motif.getNrMotifNodes()];
  colorToBottomMotifnode=new HashMap<Integer,List<Integer>>();
  colorToTopMotifnode=new HashMap<Integer,List<Integer>>();
  ArrayList<Integer> list1=new ArrayList<Integer>();
  ArrayList<Integer> list2=new ArrayList<Integer>();
  for (int i=0; i < topMotifnodeToColor.length; i++) {
    list1.add(i);
    list2.add(i);
  }
  colorToBottomMotifnode.put(0,list2);
  colorToTopMotifnode.put(0,list1);
}

public SymGraph ( Motif motif ) { this . motif = motif ; colorsToRecheck = new HashSet < Integer > ( ) ; topMotifnodeToColor = new int [ motif . getNrMotifNodes ( ) ] ; colorToBottomMotifnode = new HashMap < Integer , List < Integer > > ( ) ; colorToTopMotifnode = new HashMap < Integer , List < Integer > > ( ) ; ArrayList < Integer > list1 = new ArrayList < Integer > ( ) ; ArrayList < Integer > list2 = new ArrayList < Integer > ( ) ; for ( int i = 0 ; i < topMotifnodeToColor . length ; i ++ ) { list1 . add ( i ) ; list2 . add ( i ) ; } colorToBottomMotifnode . put ( 0 , list2 ) ; colorToTopMotifnode . put ( 0 , list1 ) ; }
create an initial opp
