docs: void sortList() {
  
          final List<Sortables> order = MainFrame.getInstance().getSorter().getOrderAfterDivider();
  
          Comparator<BugLeafNode> comparator = new Comparator<BugLeafNode>() {
              int compare(int one, int two) {
                  if (one > two) {
                      return 1;
                  } else if (one < two) {
                      return -1;
                  }
                  return 0;
              }
  
              @Override
              public int compare(BugLeafNode one, BugLeafNode two) {
                  if (one == two) {
                      return 0;
                  }
                  int result;
                  for (Sortables i : order) {
                      result = i.getBugLeafNodeComparator().compare(one, two);
                      if (result != 0) {
                          return result;
                      }
                  }
                  BugInstance bugOne = one.getBug();
                  BugInstance bugTwo = two.getBug();
                  result = bugOne.getPrimaryClass().getClassName().compareTo(bugTwo.getPrimaryClass().getClassName());
                  if (result != 0) {
                      return result;
                  }
                  SourceLineAnnotation oneSource = bugOne.getPrimarySourceLineAnnotation();
                  SourceLineAnnotation twoSource = bugTwo.getPrimarySourceLineAnnotation();
                  result = oneSource.getClassName().compareTo(twoSource.getClassName());
                  if (result != 0) {
                      return result;
                  }
                  result = compare(oneSource.getStartLine(), twoSource.getStartLine());
                  if (result != 0) {
                      return result;
                  }
                  result = compare(oneSource.getEndLine(), twoSource.getEndLine());
                  if (result != 0) {
                      return result;
                  }
                  result = compare(oneSource.getStartBytecode(), twoSource.getStartBytecode());
                  if (result != 0) {
                      return result;
                  }
                  result = compare(oneSource.getEndBytecode(), twoSource.getEndBytecode());
                  return result;
  
              }
          };
          ArrayList<BugLeafNode> copy = new ArrayList<>(mainList);
          Collections.sort(copy, comparator);
          mainList = copy;
  
          if (SystemProperties.ASSERTIONS_ENABLED) {
              for(int i = 0; i < mainList.size(); i++) {
                  BugLeafNode nodeI = mainList.get(i);
  
                  for(int j = i+1; j < mainList.size(); j++) {
                      BugLeafNode nodeJ = mainList.get(j);
                      if (comparator.compare(nodeI, nodeJ) > 0) {
                          throw new AssertionError(
                                  String.format("bug list isn't consistently sorted (%d:%s) vs. (%d:%s)",
                                          i, nodeI.getBug().getInstanceHash(), j, nodeJ.getBug().getInstanceHash()));
                      }
                  }}
          }
  
  
  
      }