private <T> T synchronizedGetFor(GraphicsConfiguration configuration, @NotNull String key, @NotNull Class<T> type) {
    CachedState state = myStateMap.get(getAbsoluteKey(configuration, key));
    if (isVisible(state)) return state.get(type, null);

    state = myStateMap.get(key);
    return state == null ? null : state.get(type, state.myScreen == null ? null : getScreenRectangle(configuration));
  }
private <T> T synchronizedGetFor(GraphicsConfiguration configuration, @NotNull String key, @NotNull Class<T> type)