void (final CompletionProgressIndicator indicator, @NotNull final LookupElement item, final char completionChar, final List<LookupElement> items) { WatchingInsertionContext context = null; try { StatisticsUpdate update = StatisticsUpdate.collectStatisticChanges(item); if (item.getUserData(DIRECT_INSERTION) != null) { context = callHandleInsert(indicator, item, completionChar); } else { context = insertItemHonorBlockSelection(indicator, item, completionChar, update); } update.trackStatistics(context); } finally { afterItemInsertion(indicator, context == null ? null : context.getLaterRunnable()); } }