public static <T> void put(@NotNull JComponent component, @NotNull Key<T> key, @Nullable T value) {
    component.putClientProperty(key, value);
  }
public static <T> void put(@NotNull JComponent component, @NotNull Key<T> key, @Nullable T value)