code: protected Integer compatibilityGraphNodesIfCEdgeIsZero() throws IOException {
  
          int countNodes = 1;
          List<String> map = new ArrayList<String>();
          compGraphNodesCZero = new ArrayList<Integer>(); //Initialize the compGraphNodesCZero List
          LabelContainer labelContainer = LabelContainer.getInstance();
          compGraphNodes.clear();
  
          for (int i = 0; i < source.getAtomCount(); i++) {
              for (int j = 0; j < target.getAtomCount(); j++) {
                  IAtom atom1 = source.getAtom(i);
                  IAtom atom2 = target.getAtom(j);
  
                  //You can also check object equal or charge, hydrogen count etc
  
                  if (atom1.getSymbol().equalsIgnoreCase(atom2.getSymbol()) && (!map.contains(i + "_" + j))) {
                      compGraphNodesCZero.add(i);
                      compGraphNodesCZero.add(j);
                      compGraphNodesCZero.add(labelContainer.getLabelID(atom1.getSymbol())); //i.e C is label 1
                      compGraphNodesCZero.add(countNodes);
                      compGraphNodes.add(i);
                      compGraphNodes.add(j);
                      compGraphNodes.add(countNodes++);
                      map.add(i + "_" + j);
                  }
              }
          }
          map.clear();
          return countNodes;
      }
docs: compGraphNodesCZero is used to build up of the edges of the compatibility graph
  @return
  @throws IOException