docs: public T[] nextCombinationAsArray(T[] destination)
      {
          if (destination.length != combinationIndices.length)
          {
              throw new IllegalArgumentException("Destination array must be the same length as combinations.");
          }
          generateNextCombinationIndices();
          for (int i = 0; i < combinationIndices.length; i++)
          {
              destination[i] = elements[combinationIndices[i]];
          }
          return destination;
      }