docs: @SuppressWarnings("unchecked")
    public static <E, C extends Counter<E>> C union(C c1, C c2) {
      C result = (C) c1.getFactory().create();
      addInPlace(result, c1);
      addInPlace(result, c2);
      return result;
    }