private <W extends BoundedWindow> PCollection<?> applyInternal(PCollection<KV<K, V>> input) { try { return BatchViewAsMultimap.applyForMapLike(runner, input, view, true /* unique keys */); } catch (NonDeterministicException e) { runner.recordViewUsesNonDeterministicKeyCoder(this); // Since the key coder is not deterministic, we convert the map into a singleton // and return a singleton view equivalent. return applyForSingletonFallback(input); } }