@Override
  public ImmutableSortedMap<K, V> headMap(K toKey, boolean inclusive) {
    return getSubMap(0, keySet.headIndex(checkNotNull(toKey), inclusive));
  }
@Override
  public ImmutableSortedMap<K, V> headMap(K toKey, boolean inclusive) {
    return getSubMap(0, keySet.headIndex(checkNotNull(toKey), inclusive));
  }
@ Override public ImmutableSortedMap < K , V > headMap ( K toKey , boolean inclusive ) { return getSubMap ( 0 , keySet . headIndex ( checkNotNull ( toKey ) , inclusive ) ) ; }
This method returns a {@code ImmutableSortedMap}, consisting of the entries whose keys are less
than (or equal to, if {@code inclusive}) {@code toKey}.

<p>The {@link SortedMap#headMap} documentation states that a submap of a submap throws an
{@link IllegalArgumentException} if passed a {@code toKey} greater than an earlier {@code
toKey}. However, this method doesn't throw an exception in that situation, but instead keeps
the original {@code toKey}.

@since 12.0
This method returns a { @code ImmutableSortedMap } consisting of the entries whose keys are less than ( or equal to if { @code inclusive } ) { @code toKey } .