docs: public static List<DMNResource> sort(List<DMNResource> ins) {
          // In a graph A -> B -> {C, D}
          // showing that A requires B, and B requires C,D
          // then a depth-first visit would satisfy required ordering, for example a valid depth first visit is also a valid sort here: C, D, B, A.
          Collection<DMNResource> visited = new ArrayList<>(ins.size());
          List<DMNResource> dfv = new ArrayList<>(ins.size());
  
          for (DMNResource node : ins) {
              if (!visited.contains(node)) {
                  dfVisit(node, ins, visited, dfv);
              }
          }
  
          return dfv;
      }