List<RangeMarker> (boolean create) { Caret currentCaret = myEditor.getCaretModel().getCurrentCaret(); List<RangeMarker> result = currentCaret.getUserData(TRACKED_SCOPES); if (result == null && create) { result = currentCaret.putUserDataIfAbsent(TRACKED_SCOPES, ContainerUtil.createLockFreeCopyOnWriteList()); } return result; }