code: public static <I> void cover(DeterministicAutomaton<?, I, ?> automaton,
                                   Collection<? extends I> inputs,
                                   Collection<? super Word<I>> states,
                                   Collection<? super Word<I>> transitions) {
          cover(automaton, inputs, states::add, transitions::add);
      }
docs: Utility method that allows to compute a state and transition cover simultaneously.
  
  @param automaton
  the automaton for which the covers should be computed
  @param inputs
  the set of input symbols allowed in the cover sequences
  @param states
  the collection in which the state cover sequences will be stored
  @param transitions
  the collection in which the transition cover sequences will be stored
  @param <I>
  input symbol type
  
  @see #stateCover(DeterministicAutomaton, Collection, Collection)
  @see #transitionCover(DeterministicAutomaton, Collection, Collection)