code: private boolean checkmArcs(List<Integer> mArcsT, int neighborBondNumA, int neighborBondNumB) {
  
          int size = neighborBondNumA * neighborBondNumA;
          List<Integer> posNumList = new ArrayList<Integer>(size);
  
          for (int i = 0; i < posNumList.size(); i++) {
              posNumList.add(i, 0);
          }
  
          int yCounter = 0;
          int countEntries = 0;
          for (int x = 0; x < (neighborBondNumA * neighborBondNumB); x++) {
              if (mArcsT.get(x) == 1) {
                  posNumList.add(yCounter++, x);
                  countEntries++;
              }
          }
          boolean flag = false;
  
          verifyNodes(posNumList, first, 0, countEntries);
          if (isNewMatrix()) {
              flag = true;
          }
  
          return flag;
  
      }
docs: matrix will be stored in function partsearch.