code: private BitSet buildB(BitSet c1, BitSet c2) {
          this.c1 = c1;
          this.c2 = c2;
  
          BitSet bs = new BitSet();
  
          // only nodes that fulfill the initial constrains
          // are allowed in the initial extension set : B
          for (Iterator<RNode> i = graph.iterator(); i.hasNext();) {
              RNode rn = i.next();
  
              if ((c1.get(rn.rMap.id1) || c1.isEmpty()) && (c2.get(rn.rMap.id2) || c2.isEmpty())) {
                  bs.set(graph.indexOf(rn));
              }
          }
          return bs;
      }
docs: Builds the initial extension set. This is the
  set of node that may be used as seed for the
  RGraph parsing. This set depends on the constrains
  defined by the user.
  @param  c1  constraint in the graph G1
  @param  c2  constraint in the graph G2
  @return the new extension set