[ {
  "relativePath" : "settings.gradle.kts",
  "extension" : "kts",
  "linesOfCode" : 24,
  "components" : [ "primary::ROOT" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "annotation-processors/src/main/kotlin/com/intellij/vim/annotations/ExCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::annotation-processors" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "annotation-processors/src/main/kotlin/com/intellij/vim/annotations/CommandOrMotion.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::annotation-processors" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "annotation-processors/src/main/kotlin/com/intellij/vim/annotations/VimscriptFunction.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::annotation-processors" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "annotation-processors/src/main/kotlin/com/intellij/vim/providers/ExCommandProcessorProvider.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::annotation-processors" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "annotation-processors/src/main/kotlin/com/intellij/vim/providers/CommandOrMotionProcessorProvider.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::annotation-processors" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "annotation-processors/src/main/kotlin/com/intellij/vim/providers/VimscriptFunctionProcessorProvider.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::annotation-processors" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "annotation-processors/src/main/kotlin/com/intellij/vim/providers/ExtensionsProcessorProvider.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::annotation-processors" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "annotation-processors/src/main/kotlin/com/intellij/vim/processors/ExCommandProcessor.kt",
  "extension" : "kt",
  "linesOfCode" : 46,
  "components" : [ "primary::annotation-processors" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "annotation-processors/src/main/kotlin/com/intellij/vim/processors/ExtensionsProcessor.kt",
  "extension" : "kt",
  "linesOfCode" : 50,
  "components" : [ "primary::annotation-processors" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "annotation-processors/src/main/kotlin/com/intellij/vim/processors/VimscriptFunctionProcessor.kt",
  "extension" : "kt",
  "linesOfCode" : 44,
  "components" : [ "primary::annotation-processors" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "annotation-processors/src/main/kotlin/com/intellij/vim/processors/KspExtensionBean.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::annotation-processors" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "annotation-processors/src/main/kotlin/com/intellij/vim/processors/CommandOrMotionProcessor.kt",
  "extension" : "kt",
  "linesOfCode" : 47,
  "components" : [ "primary::annotation-processors" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "annotation-processors/src/main/kotlin/com/intellij/vim/processors/CommandBean.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::annotation-processors" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "annotation-processors/build.gradle.kts",
  "extension" : "kts",
  "linesOfCode" : 18,
  "components" : [ "primary::annotation-processors" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/ex/ExException.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/ex/ranges/Range.kt",
  "extension" : "kt",
  "linesOfCode" : 59,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/ex/ranges/LineRange.kt",
  "extension" : "kt",
  "linesOfCode" : 28,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/ex/ranges/Address.kt",
  "extension" : "kt",
  "linesOfCode" : 180,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/ex/ExExceptions.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/extension/ExtensionLoader.kt",
  "extension" : "kt",
  "linesOfCode" : 6,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/extension/ExtensionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 17,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/extension/LazyExtensionFunctionInstance.kt",
  "extension" : "kt",
  "linesOfCode" : 17,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/extension/LazyVimExtension.kt",
  "extension" : "kt",
  "linesOfCode" : 7,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/extension/JsonExtensionProvider.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/extension/ExtensionBean.kt",
  "extension" : "kt",
  "linesOfCode" : 14,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/mark/Marks.kt",
  "extension" : "kt",
  "linesOfCode" : 45,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/mark/VimMarkConstants.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/mark/Jump.kt",
  "extension" : "kt",
  "linesOfCode" : 2,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/thinapi/OutputPanelScopeImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 32,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/thinapi/editor/EditorAccessorImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 165,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/thinapi/editor/ReadScopeImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/thinapi/editor/caret/CaretTransactionImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 241,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/thinapi/editor/caret/CaretReadImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 208,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/thinapi/editor/EditorScopeImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 21,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/thinapi/editor/TransactionImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 99,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/thinapi/MappingScopeImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 214,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/thinapi/OptionScopeImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 70,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/thinapi/VimPluginService.kt",
  "extension" : "kt",
  "linesOfCode" : 9,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/thinapi/DigraphScopeImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 15,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/thinapi/VimApiImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 262,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/thinapi/TextObjectScopeImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 121,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/thinapi/ModalInputImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 135,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/thinapi/ThinApi.kt",
  "extension" : "kt",
  "linesOfCode" : 52,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/thinapi/VimHighlightingService.kt",
  "extension" : "kt",
  "linesOfCode" : 14,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/thinapi/Modes.kt",
  "extension" : "kt",
  "linesOfCode" : 149,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/thinapi/Path.kt",
  "extension" : "kt",
  "linesOfCode" : 35,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/thinapi/commandline/CommandLineTransactionImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/thinapi/commandline/CommandLineScopeImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 38,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/thinapi/commandline/CommandLineReadImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 14,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/thinapi/ListenerScopeImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 156,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/interceptors/VimInputInterceptorBase.kt",
  "extension" : "kt",
  "linesOfCode" : 28,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/interceptors/VimInputInterceptor.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/RequiredShortcut.kt",
  "extension" : "kt",
  "linesOfCode" : 18,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/OperatorFunction.kt",
  "extension" : "kt",
  "linesOfCode" : 7,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/KeyConsumer.kt",
  "extension" : "kt",
  "linesOfCode" : 18,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/ShortcutOwner.kt",
  "extension" : "kt",
  "linesOfCode" : 110,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/KeyStrokeTrie.kt",
  "extension" : "kt",
  "linesOfCode" : 144,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/consumers/ModeInputConsumer.kt",
  "extension" : "kt",
  "linesOfCode" : 67,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/consumers/StartSelectRegisterConsumer.kt",
  "extension" : "kt",
  "linesOfCode" : 46,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/consumers/CommandCountConsumer.kt",
  "extension" : "kt",
  "linesOfCode" : 48,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/consumers/EditorResetConsumer.kt",
  "extension" : "kt",
  "linesOfCode" : 84,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/consumers/ModalInputConsumer.kt",
  "extension" : "kt",
  "linesOfCode" : 28,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/consumers/SelectRegisterConsumer.kt",
  "extension" : "kt",
  "linesOfCode" : 47,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/consumers/CharArgumentConsumer.kt",
  "extension" : "kt",
  "linesOfCode" : 65,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/consumers/DigraphConsumer.kt",
  "extension" : "kt",
  "linesOfCode" : 126,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/consumers/CommandKeyConsumer.kt",
  "extension" : "kt",
  "linesOfCode" : 114,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/consumers/DeleteCommandCountConsumer.kt",
  "extension" : "kt",
  "linesOfCode" : 48,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/MappingInfoLayer.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/Nodes.kt",
  "extension" : "kt",
  "linesOfCode" : 47,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/KeyStack.kt",
  "extension" : "kt",
  "linesOfCode" : 75,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/KeyMapping.kt",
  "extension" : "kt",
  "linesOfCode" : 122,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/MappingInfo.kt",
  "extension" : "kt",
  "linesOfCode" : 224,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/KeyMappingLayer.kt",
  "extension" : "kt",
  "linesOfCode" : 6,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/handler/TextObjectActionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 49,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/handler/EditorActionHandlerBase.kt",
  "extension" : "kt",
  "linesOfCode" : 114,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/handler/SpecialKeyHandlers.kt",
  "extension" : "kt",
  "linesOfCode" : 145,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/handler/MotionActionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 228,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/handler/VimActionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 68,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/handler/ExternalActionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/handler/Motion.kt",
  "extension" : "kt",
  "linesOfCode" : 15,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/handler/VisualOperatorActionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 191,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/handler/ChangeEditorActionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 109,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/KeyHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 347,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/undo/VimTimestampBasedUndoService.kt",
  "extension" : "kt",
  "linesOfCode" : 9,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/undo/VimKeyBasedUndoService.kt",
  "extension" : "kt",
  "linesOfCode" : 6,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/undo/VimUndoRedo.kt",
  "extension" : "kt",
  "linesOfCode" : 7,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/impl/state/VimStateMachineImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 32,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/helper/EngineMessageHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/helper/VimLockLabel.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/helper/StringAndKeys.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/helper/EngineHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 29,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/helper/SearchOptions.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/helper/StrictMode.kt",
  "extension" : "kt",
  "linesOfCode" : 20,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/helper/VimNlsSafe.kt",
  "extension" : "kt",
  "linesOfCode" : 3,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/helper/CharacterHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 38,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/helper/EngineModeExtensions.kt",
  "extension" : "kt",
  "linesOfCode" : 35,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/helper/NumberType.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/helper/EngineStringHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 64,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/LiveRange.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/VimPluginListener.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/Listener.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/ArgumentCapturer.kt",
  "extension" : "kt",
  "linesOfCode" : 3,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/CommandAlias.kt",
  "extension" : "kt",
  "linesOfCode" : 87,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/MacroRecordingListener.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/VimListenersNotifier.kt",
  "extension" : "kt",
  "linesOfCode" : 78,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/ListenerOwner.kt",
  "extension" : "kt",
  "linesOfCode" : 14,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/DigraphResult.kt",
  "extension" : "kt",
  "linesOfCode" : 18,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/VimEditorReplaceMask.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/DigraphSequence.kt",
  "extension" : "kt",
  "linesOfCode" : 245,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/InsertSequence.kt",
  "extension" : "kt",
  "linesOfCode" : 9,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/VimYankListener.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/IsReplaceCharListener.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/Graphemes.kt",
  "extension" : "kt",
  "linesOfCode" : 197,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/ModeChangeListener.kt",
  "extension" : "kt",
  "linesOfCode" : 6,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/VimCopiedText.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/ChangesListener.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/TextRange.kt",
  "extension" : "kt",
  "linesOfCode" : 87,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/ExtendedPictographics.kt",
  "extension" : "kt",
  "linesOfCode" : 75,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/CurrentCommandState.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/VimVisualGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 45,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/EditorListener.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/common/Direction.kt",
  "extension" : "kt",
  "linesOfCode" : 16,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/command/Command.kt",
  "extension" : "kt",
  "linesOfCode" : 37,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/command/CommandFlags.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/command/OperatorArguments.kt",
  "extension" : "kt",
  "linesOfCode" : 16,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/command/CommandBuilder.kt",
  "extension" : "kt",
  "linesOfCode" : 273,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/command/MappingProcessor.kt",
  "extension" : "kt",
  "linesOfCode" : 201,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/command/MappingMode.kt",
  "extension" : "kt",
  "linesOfCode" : 41,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/command/DuplicableOperatorAction.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/command/MappingState.kt",
  "extension" : "kt",
  "linesOfCode" : 97,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/command/Argument.kt",
  "extension" : "kt",
  "linesOfCode" : 28,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/register/Register.kt",
  "extension" : "kt",
  "linesOfCode" : 62,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/register/VimRegisterGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 56,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/register/VimRegisterGroupBase.kt",
  "extension" : "kt",
  "linesOfCode" : 434,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/register/RegisterConstants.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/state/mode/modeExtensions.kt",
  "extension" : "kt",
  "linesOfCode" : 40,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/state/mode/Mode.kt",
  "extension" : "kt",
  "linesOfCode" : 58,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/state/mode/editorExtensions.kt",
  "extension" : "kt",
  "linesOfCode" : 19,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/state/KeyHandlerState.kt",
  "extension" : "kt",
  "linesOfCode" : 69,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/state/VimStateMachine.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/parser/DeletionInfo.kt",
  "extension" : "kt",
  "linesOfCode" : 19,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/parser/visitors/VisitorHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/parser/visitors/CommandVisitor.kt",
  "extension" : "kt",
  "linesOfCode" : 295,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/parser/visitors/ScriptVisitor.kt",
  "extension" : "kt",
  "linesOfCode" : 16,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/parser/visitors/ExpressionVisitor.kt",
  "extension" : "kt",
  "linesOfCode" : 371,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/parser/visitors/ExecutableVisitor.kt",
  "extension" : "kt",
  "linesOfCode" : 176,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/parser/errors/IdeavimErrorListener.kt",
  "extension" : "kt",
  "linesOfCode" : 28,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/Script.kt",
  "extension" : "kt",
  "linesOfCode" : 32,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/ExecutionResult.kt",
  "extension" : "kt",
  "linesOfCode" : 9,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/MarksCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 41,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/PrintLineNumberCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 40,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/PrintCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 44,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/WriteNextFileCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/DeleteMarksCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 62,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/MoveTextCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 155,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/TabOnlyCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/SelectFirstFileCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/DelCmdCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 29,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/SelectLastFileCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/PlugCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 33,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/ExCommandProvider.kt",
  "extension" : "kt",
  "linesOfCode" : 18,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/OnlyCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/EchoCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 26,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/Command.kt",
  "extension" : "kt",
  "linesOfCode" : 240,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/DelfunctionCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 39,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/NextFileCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/GoToLineCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 29,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/ShellCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 26,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/CmdCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 139,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/NextTabCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/YankLinesCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 46,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/NoHLSearchCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/UndoCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/JoinLinesCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 41,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/EditFileCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 36,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/DigraphCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 32,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/PreviousFileCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/UnknownCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 68,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/PackaddCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 28,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/SetCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 247,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/WriteQuitCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/PlugDisable.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/SelectFileCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/ClearJumpsCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/DeleteLinesCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 32,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/EngineExCommandProvider.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/RegistersCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 34,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/GotoCharacterCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 29,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/GlobalCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 193,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/SubstituteCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 37,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/AsciiCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/WriteAllCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/HistoryCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 106,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/ShiftLeftCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 39,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/MarkCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/PlugEnable.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/ShiftRightCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 39,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/WritePreviousFileCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/CopyTextCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 54,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/SetHandlerCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 70,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/PreviousTabCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/RepeatCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 54,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/NormalCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 50,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/CallCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 31,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/TabMoveCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 61,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/TabCloseCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 66,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/BufferCloseCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 28,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/ExitCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/ExecuteCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/FileCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 26,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/SplitCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 31,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/CmdClearCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/PutLinesCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 46,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/IdeaPlug.kt",
  "extension" : "kt",
  "linesOfCode" : 47,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/JumpsCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 51,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/LazyExCommandInstance.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/ActionCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 38,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/SmileCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 43,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/mapping/MapCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 195,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/mapping/MapClearCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 48,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/mapping/UnMapCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 50,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/mapping/CommandInfo.kt",
  "extension" : "kt",
  "linesOfCode" : 12,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/FindFileCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 36,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/WriteCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/SourceCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 33,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/LetCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 133,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/RedoCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/QuitCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/SortCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 112,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/LockVarCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 69,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/commands/ExCommandTree.kt",
  "extension" : "kt",
  "linesOfCode" : 44,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/Executable.kt",
  "extension" : "kt",
  "linesOfCode" : 20,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/EnvVariableExpression.kt",
  "extension" : "kt",
  "linesOfCode" : 12,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/BinExpression.kt",
  "extension" : "kt",
  "linesOfCode" : 14,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/ScopeExpression.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/VariableExpression.kt",
  "extension" : "kt",
  "linesOfCode" : 70,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/RegisterExpression.kt",
  "extension" : "kt",
  "linesOfCode" : 33,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/TruthyExpressions.kt",
  "extension" : "kt",
  "linesOfCode" : 35,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/CurlyBracesName.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/SublistExpression.kt",
  "extension" : "kt",
  "linesOfCode" : 65,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/Expression.kt",
  "extension" : "kt",
  "linesOfCode" : 19,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/OptionExpression.kt",
  "extension" : "kt",
  "linesOfCode" : 52,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/NamedFunctionCallExpression.kt",
  "extension" : "kt",
  "linesOfCode" : 42,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/Scope.kt",
  "extension" : "kt",
  "linesOfCode" : 26,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/FuncrefCallExpression.kt",
  "extension" : "kt",
  "linesOfCode" : 26,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/LambdaExpression.kt",
  "extension" : "kt",
  "linesOfCode" : 50,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/SimpleExpression.kt",
  "extension" : "kt",
  "linesOfCode" : 20,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/IndexedExpression.kt",
  "extension" : "kt",
  "linesOfCode" : 100,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/ListExpression.kt",
  "extension" : "kt",
  "linesOfCode" : 12,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/LambdaFunctionCallExpression.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/operators/handlers/binary/LessThanHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 7,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/operators/handlers/binary/LessThanOrEqualToHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 6,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/operators/handlers/binary/GreaterThanOrEqualToHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 6,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/operators/handlers/binary/LogicalOperatorHandlers.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/operators/handlers/binary/ArithmeticOperatorHandlers.kt",
  "extension" : "kt",
  "linesOfCode" : 62,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/operators/handlers/binary/MatchesHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/operators/handlers/binary/GreaterThanHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 6,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/operators/handlers/binary/ComparisonOperatorHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 56,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/operators/handlers/binary/DoesNotMatchHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 9,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/operators/handlers/binary/IsHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 42,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/operators/handlers/binary/ConcatenationHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/operators/handlers/binary/EqualToHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/operators/handlers/binary/BinaryOperatorHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 14,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/operators/handlers/binary/BitwiseShiftHandlers.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/operators/handlers/unary/NotOperatorHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/operators/handlers/unary/UnaryOperatorHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/operators/handlers/unary/ArithmeticUnaryOperatorHandlers.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/operators/AssignmentOperator.kt",
  "extension" : "kt",
  "linesOfCode" : 83,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/operators/UnaryOperator.kt",
  "extension" : "kt",
  "linesOfCode" : 16,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/operators/BinaryOperator.kt",
  "extension" : "kt",
  "linesOfCode" : 71,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/UnaryExpression.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/expressions/DictionaryExpression.kt",
  "extension" : "kt",
  "linesOfCode" : 17,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/LazyVimscriptFunction.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/DefinedFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 134,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/cursorFunctions/ColLineFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 113,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/DeepCopyFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 20,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/dictionaryFunctions/KeysFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/dictionaryFunctions/ValuesFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/dictionaryFunctions/HasKeyFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 32,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/commandLineFunctions/GetCmdTypeFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/bitwiseFunctions/InvertFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 12,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/bitwiseFunctions/BitwiseFunctionHandlers.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/variousFunctions/ErrTeapotFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/variousFunctions/ExistsFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 34,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/textFunctions/GetLineFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 49,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/collectionFunctions/GetFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 37,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/collectionFunctions/MaxFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 35,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/collectionFunctions/ReduceFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 45,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/collectionFunctions/ExtendFunctionHandlers.kt",
  "extension" : "kt",
  "linesOfCode" : 62,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/collectionFunctions/EmptyFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 36,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/collectionFunctions/SliceFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 33,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/collectionFunctions/ReverseFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 38,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/collectionFunctions/MinFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 35,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/collectionFunctions/ItemsFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 42,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/collectionFunctions/MapFunctionHandlers.kt",
  "extension" : "kt",
  "linesOfCode" : 198,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/collectionFunctions/RemoveFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 56,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/collectionFunctions/ForEachFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 76,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/collectionFunctions/LenFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 31,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/collectionFunctions/RepeatFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 33,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/collectionFunctions/CountFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 61,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/varFunctions/FunctionFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 68,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/varFunctions/CallFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 43,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/floatFunctions/HyperbolicFunctionHandlers.kt",
  "extension" : "kt",
  "linesOfCode" : 17,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/floatFunctions/ClassificationFunctionHandlers.kt",
  "extension" : "kt",
  "linesOfCode" : 43,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/floatFunctions/FmodFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 6,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/floatFunctions/PowerFunctionHandlers.kt",
  "extension" : "kt",
  "linesOfCode" : 12,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/floatFunctions/Float2NrFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/floatFunctions/ExponentialFunctionHandlers.kt",
  "extension" : "kt",
  "linesOfCode" : 17,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/floatFunctions/FloatFunctionHandlerBase.kt",
  "extension" : "kt",
  "linesOfCode" : 27,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/floatFunctions/RoundingFunctionHandlers.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/floatFunctions/AbsFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/floatFunctions/TrigonometricFunctionHandlers.kt",
  "extension" : "kt",
  "linesOfCode" : 37,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/CopyFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 18,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/stringFunctions/Char2nrFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/stringFunctions/ToupperFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/stringFunctions/TolowerFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/stringFunctions/TrimFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 36,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/stringFunctions/Nr2charFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 27,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/stringFunctions/EscapeFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 27,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/stringFunctions/SubmatchFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/stringFunctions/StringFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/listFunctions/IndexOfFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 72,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/listFunctions/AddFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 31,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/listFunctions/FlattenFunctionHandlers.kt",
  "extension" : "kt",
  "linesOfCode" : 59,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/listFunctions/InsertFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 37,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/listFunctions/SplitFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 31,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/listFunctions/SortUniqFunctionHandlers.kt",
  "extension" : "kt",
  "linesOfCode" : 138,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/listFunctions/JoinFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/listFunctions/RangeFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 58,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/handlers/listFunctions/IndexFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 37,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/VimscriptFunctionProvider.kt",
  "extension" : "kt",
  "linesOfCode" : 18,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/FunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 152,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/EngineFunctionProvider.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/functions/FunctionUtil.kt",
  "extension" : "kt",
  "linesOfCode" : 35,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/VimLContext.kt",
  "extension" : "kt",
  "linesOfCode" : 47,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/variables/Variable.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/variables/KeyVariable.kt",
  "extension" : "kt",
  "linesOfCode" : 17,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/variables/RegisterVariable.kt",
  "extension" : "kt",
  "linesOfCode" : 20,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/variables/ValueVariable.kt",
  "extension" : "kt",
  "linesOfCode" : 17,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/variables/HighLightVariable.kt",
  "extension" : "kt",
  "linesOfCode" : 17,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/statements/FunctionDeclaration.kt",
  "extension" : "kt",
  "linesOfCode" : 56,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/statements/FinishStatement.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/statements/ReturnStatement.kt",
  "extension" : "kt",
  "linesOfCode" : 15,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/statements/ThrowStatement.kt",
  "extension" : "kt",
  "linesOfCode" : 16,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/statements/loops/WhileLoop.kt",
  "extension" : "kt",
  "linesOfCode" : 42,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/statements/loops/ForLoop.kt",
  "extension" : "kt",
  "linesOfCode" : 134,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/statements/loops/ContinueStatement.kt",
  "extension" : "kt",
  "linesOfCode" : 21,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/statements/loops/BreakStatement.kt",
  "extension" : "kt",
  "linesOfCode" : 21,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/statements/IfStatement.kt",
  "extension" : "kt",
  "linesOfCode" : 48,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/statements/TryStatement.kt",
  "extension" : "kt",
  "linesOfCode" : 115,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/statements/AnonymousFunctionDeclaration.kt",
  "extension" : "kt",
  "linesOfCode" : 66,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/datatypes/VimInt.kt",
  "extension" : "kt",
  "linesOfCode" : 52,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/datatypes/VimString.kt",
  "extension" : "kt",
  "linesOfCode" : 36,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/datatypes/VimFloat.kt",
  "extension" : "kt",
  "linesOfCode" : 32,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/datatypes/VimDataType.kt",
  "extension" : "kt",
  "linesOfCode" : 34,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/datatypes/VimList.kt",
  "extension" : "kt",
  "linesOfCode" : 135,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/datatypes/VimBlob.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/datatypes/VimFuncref.kt",
  "extension" : "kt",
  "linesOfCode" : 124,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/datatypes/VimDictionary.kt",
  "extension" : "kt",
  "linesOfCode" : 107,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/model/LazyInstance.kt",
  "extension" : "kt",
  "linesOfCode" : 12,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/services/VimRcService.kt",
  "extension" : "kt",
  "linesOfCode" : 129,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/services/VimVariableServiceBase.kt",
  "extension" : "kt",
  "linesOfCode" : 383,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/vimscript/services/VariableService.kt",
  "extension" : "kt",
  "linesOfCode" : 62,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/options/OptionDeclaredScope.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/options/OptionConstants.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/options/helpers/GuiCursorOptionHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 179,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/options/helpers/KeywordOptionHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 165,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/options/helpers/ClipboardOptionHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/options/OptionAccessScope.kt",
  "extension" : "kt",
  "linesOfCode" : 7,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/options/Option.kt",
  "extension" : "kt",
  "linesOfCode" : 232,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/options/OptionChangeListener.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/diagnostic/VimLogger.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/group/SearchGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 421,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/group/TabService.kt",
  "extension" : "kt",
  "linesOfCode" : 9,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/group/VimWindowGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 14,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/group/visual/EngineVisualGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 125,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/group/visual/VisualChange.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/group/visual/VisualOperation.kt",
  "extension" : "kt",
  "linesOfCode" : 63,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/group/visual/VimSelection.kt",
  "extension" : "kt",
  "linesOfCode" : 134,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/group/visual/EngineVisualModeHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/group/WindowGroupBase.kt",
  "extension" : "kt",
  "linesOfCode" : 2,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/group/StringUtil.kt",
  "extension" : "kt",
  "linesOfCode" : 55,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/yank/VimYankGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/yank/YankGroupBase.kt",
  "extension" : "kt",
  "linesOfCode" : 128,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimCaretListener.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimRegexpService.kt",
  "extension" : "kt",
  "linesOfCode" : 7,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimOptionGroupBase.kt",
  "extension" : "kt",
  "linesOfCode" : 860,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimMotionGroupBase.kt",
  "extension" : "kt",
  "linesOfCode" : 362,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimFile.kt",
  "extension" : "kt",
  "linesOfCode" : 16,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimCommandLineServiceBase.kt",
  "extension" : "kt",
  "linesOfCode" : 54,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimCommandLineCaret.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimMotionGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 79,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimInjector.kt",
  "extension" : "kt",
  "linesOfCode" : 86,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimIndentConfig.kt",
  "extension" : "kt",
  "linesOfCode" : 6,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimJumpServiceBase.kt",
  "extension" : "kt",
  "linesOfCode" : 58,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimStorageServiceBase.kt",
  "extension" : "kt",
  "linesOfCode" : 2,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimStatistics.kt",
  "extension" : "kt",
  "linesOfCode" : 12,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimMessagesBase.kt",
  "extension" : "kt",
  "linesOfCode" : 2,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimscriptParser.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimOptionGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 78,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimClipboardManager.kt",
  "extension" : "kt",
  "linesOfCode" : 28,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimChangeGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 221,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimVisualMotionGroupBase.kt",
  "extension" : "kt",
  "linesOfCode" : 169,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimKeyGroupBase.kt",
  "extension" : "kt",
  "linesOfCode" : 192,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimEditorBase.kt",
  "extension" : "kt",
  "linesOfCode" : 28,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimActionExecutor.kt",
  "extension" : "kt",
  "linesOfCode" : 35,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimSearchGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 49,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/OptionsPropertiesBase.kt",
  "extension" : "kt",
  "linesOfCode" : 86,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimscriptExecutor.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimModalInputBase.kt",
  "extension" : "kt",
  "linesOfCode" : 7,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimScrollingModel.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimMessages.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimEnabler.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimMarkServiceBase.kt",
  "extension" : "kt",
  "linesOfCode" : 558,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimMarkService.kt",
  "extension" : "kt",
  "linesOfCode" : 63,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimKeyGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 54,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimscriptParserBase.kt",
  "extension" : "kt",
  "linesOfCode" : 156,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimOutputPanel.kt",
  "extension" : "kt",
  "linesOfCode" : 15,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/Options.kt",
  "extension" : "kt",
  "linesOfCode" : 289,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimScriptFunctionServiceBase.kt",
  "extension" : "kt",
  "linesOfCode" : 148,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimScriptExecutorBase.kt",
  "extension" : "kt",
  "linesOfCode" : 107,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimEditorGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimJumpService.kt",
  "extension" : "kt",
  "linesOfCode" : 51,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimscriptFunctionService.kt",
  "extension" : "kt",
  "linesOfCode" : 17,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimCaret.kt",
  "extension" : "kt",
  "linesOfCode" : 97,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimFileBase.kt",
  "extension" : "kt",
  "linesOfCode" : 90,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimProcessGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimSearchGroupBase.kt",
  "extension" : "kt",
  "linesOfCode" : 1106,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimCommandGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 17,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimStringParserBase.kt",
  "extension" : "kt",
  "linesOfCode" : 581,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimInjectorBase.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimPsiService.kt",
  "extension" : "kt",
  "linesOfCode" : 7,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimSearchHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 167,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimModalInput.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimOutputPanelServiceBase.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimrcFileState.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimTemplateManager.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimProcessGroupBase.kt",
  "extension" : "kt",
  "linesOfCode" : 2,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimChangeGroupBase.kt",
  "extension" : "kt",
  "linesOfCode" : 1614,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/SelectionInfo.kt",
  "extension" : "kt",
  "linesOfCode" : 55,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/EngineEditorHelperBase.kt",
  "extension" : "kt",
  "linesOfCode" : 9,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimScrollGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimCaretBase.kt",
  "extension" : "kt",
  "linesOfCode" : 82,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimSearchHelperBase.kt",
  "extension" : "kt",
  "linesOfCode" : 1536,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimPathExpansionImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 44,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimRegexServiceBase.kt",
  "extension" : "kt",
  "linesOfCode" : 43,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimDigraphGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimStringParser.kt",
  "extension" : "kt",
  "linesOfCode" : 19,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/EngineEditorHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 190,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimApplication.kt",
  "extension" : "kt",
  "linesOfCode" : 16,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimRedrawService.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimExtensionRegistrator.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimDocument.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimOutputPanelService.kt",
  "extension" : "kt",
  "linesOfCode" : 7,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/OptionProperties.kt",
  "extension" : "kt",
  "linesOfCode" : 49,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/SystemInfoService.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimEditor.kt",
  "extension" : "kt",
  "linesOfCode" : 141,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimPathExpansion.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimLookupManager.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimExceptionUtil.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimVirtualFile.kt",
  "extension" : "kt",
  "linesOfCode" : 6,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimOutputPanelBase.kt",
  "extension" : "kt",
  "linesOfCode" : 28,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimApplicationBase.kt",
  "extension" : "kt",
  "linesOfCode" : 2,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimModalInputService.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/ExecutionContextManagerBase.kt",
  "extension" : "kt",
  "linesOfCode" : 2,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimCommandGroupBase.kt",
  "extension" : "kt",
  "linesOfCode" : 48,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimVisualMotionGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/NativeAction.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimCommandLine.kt",
  "extension" : "kt",
  "linesOfCode" : 82,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/ExecutionContext.kt",
  "extension" : "kt",
  "linesOfCode" : 7,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimCommandLineService.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimStorageService.kt",
  "extension" : "kt",
  "linesOfCode" : 16,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimDigraphGroupBase.kt",
  "extension" : "kt",
  "linesOfCode" : 1616,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/history/VimHistory.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/history/VimHistoryBase.kt",
  "extension" : "kt",
  "linesOfCode" : 55,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/history/HistoryEntry.kt",
  "extension" : "kt",
  "linesOfCode" : 2,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/history/HistoryBlock.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ex/InsertCommandLineTextActions.kt",
  "extension" : "kt",
  "linesOfCode" : 145,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ex/DeleteToCaretAction.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ex/MoveCaretToPreviousBigWordAction.kt",
  "extension" : "kt",
  "linesOfCode" : 17,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ex/DeleteNextCharAction.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ex/DeletePreviousWordAction.kt",
  "extension" : "kt",
  "linesOfCode" : 19,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ex/DeletePreviousCharAction.kt",
  "extension" : "kt",
  "linesOfCode" : 20,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ex/MoveCaretRightAction.kt",
  "extension" : "kt",
  "linesOfCode" : 14,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ex/SelectOlderHistoryFilteredAction.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ex/SelectOlderHistoryAction.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ex/CommandLineActionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 31,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ex/InsertFilenameUnderCaretAction.kt",
  "extension" : "kt",
  "linesOfCode" : 21,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ex/LeaveCommandLineAction.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ex/ExEntryAction.kt",
  "extension" : "kt",
  "linesOfCode" : 27,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ex/SelectNewerHistoryAction.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ex/MoveCaretLeftAction.kt",
  "extension" : "kt",
  "linesOfCode" : 14,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ex/MoveCaretToNextBigWordAction.kt",
  "extension" : "kt",
  "linesOfCode" : 17,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ex/ToggleInsertModeAction.kt",
  "extension" : "kt",
  "linesOfCode" : 15,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ex/MoveCaretToLineEnd.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ex/MoveCaretToLineStart.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ex/SelectNewerHistoryFilteredAction.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ex/ProcessExEntryActions.kt",
  "extension" : "kt",
  "linesOfCode" : 103,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/EngineCommandProvider.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollLastScreenColumnAction.kt",
  "extension" : "kt",
  "linesOfCode" : 21,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollFirstScreenColumnAction.kt",
  "extension" : "kt",
  "linesOfCode" : 21,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollHalfPageDownAction.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollFirstScreenLineStartAction.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollPageDownAction.kt",
  "extension" : "kt",
  "linesOfCode" : 40,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollHalfWidthRightAction.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollLineAction.kt",
  "extension" : "kt",
  "linesOfCode" : 38,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollColumnLeftAction.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollPageUpAction.kt",
  "extension" : "kt",
  "linesOfCode" : 40,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollHalfPageUpAction.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollLastScreenLinePageStartAction.kt",
  "extension" : "kt",
  "linesOfCode" : 40,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollMiddleScreenLineAction.kt",
  "extension" : "kt",
  "linesOfCode" : 38,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollFirstScreenLineAction.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollHalfWidthLeftAction.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollFirstScreenLinePageStartAction.kt",
  "extension" : "kt",
  "linesOfCode" : 34,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollColumnRightAction.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/CtrlUpDownAction.kt",
  "extension" : "kt",
  "linesOfCode" : 45,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollLastScreenLineAction.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollLastScreenLineStartAction.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/mark/MotionGotoFileMarkLineAction.kt",
  "extension" : "kt",
  "linesOfCode" : 47,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/mark/MotionJumpNextAction.kt",
  "extension" : "kt",
  "linesOfCode" : 27,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/mark/MotionJumpPreviousAction.kt",
  "extension" : "kt",
  "linesOfCode" : 27,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/mark/MotionGotoFileMarkAction.kt",
  "extension" : "kt",
  "linesOfCode" : 47,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/mark/MotionGotoMarkAction.kt",
  "extension" : "kt",
  "linesOfCode" : 65,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/mark/MotionMarkAction.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/mark/MotionGotoMarkLineAction.kt",
  "extension" : "kt",
  "linesOfCode" : 47,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/object/MotionAngleAction.kt",
  "extension" : "kt",
  "linesOfCode" : 122,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/object/MotionQuoteAction.kt",
  "extension" : "kt",
  "linesOfCode" : 94,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/object/MotionSentenceAction.kt",
  "extension" : "kt",
  "linesOfCode" : 38,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/object/MotionParagraphAction.kt",
  "extension" : "kt",
  "linesOfCode" : 38,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/object/MotionBlockTagAction.kt",
  "extension" : "kt",
  "linesOfCode" : 38,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/object/MotionWordAction.kt",
  "extension" : "kt",
  "linesOfCode" : 73,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/select/SelectEnableBlockModeAction.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/select/SelectDeleteAction.kt",
  "extension" : "kt",
  "linesOfCode" : 40,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/select/SelectToggleVisualMode.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/select/motion/SelectMotionArrowRightAction.kt",
  "extension" : "kt",
  "linesOfCode" : 47,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/select/motion/SelectMotionArrowLeftAction.kt",
  "extension" : "kt",
  "linesOfCode" : 46,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/select/motion/SelectMotionBigWordRightAction.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/select/motion/SelectMotionBigWordLeftAction.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/select/SelectEscapeAction.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/select/SelectEnableLineModeAction.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/select/SelectEnableCharacterModeAction.kt",
  "extension" : "kt",
  "linesOfCode" : 31,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/select/SelectToggleSingleVisualCommandAction.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/select/SelectEnterAction.kt",
  "extension" : "kt",
  "linesOfCode" : 33,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/updown/MotionDownActions.kt",
  "extension" : "kt",
  "linesOfCode" : 61,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/updown/MotionDownFirstNonSpaceAction.kt",
  "extension" : "kt",
  "linesOfCode" : 49,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/updown/MotionArrowDownAction.kt",
  "extension" : "kt",
  "linesOfCode" : 26,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/updown/MotionArrowUpAction.kt",
  "extension" : "kt",
  "linesOfCode" : 26,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/updown/MotionShiftUpAction.kt",
  "extension" : "kt",
  "linesOfCode" : 29,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/updown/MotionUpActions.kt",
  "extension" : "kt",
  "linesOfCode" : 61,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/updown/MotionGotoLineFirstAction.kt",
  "extension" : "kt",
  "linesOfCode" : 48,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/updown/MotionUpFirstNonSpaceAction.kt",
  "extension" : "kt",
  "linesOfCode" : 26,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/updown/MotionGotoLineLastEndAction.kt",
  "extension" : "kt",
  "linesOfCode" : 72,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/updown/MotionShiftDownAction.kt",
  "extension" : "kt",
  "linesOfCode" : 29,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/updown/MotionPercentOrMatchAction.kt",
  "extension" : "kt",
  "linesOfCode" : 38,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/updown/MotionGotoLineLastAction.kt",
  "extension" : "kt",
  "linesOfCode" : 39,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/updown/MotionDownLess1FirstNonSpaceAction.kt",
  "extension" : "kt",
  "linesOfCode" : 27,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/gn/GnNextTextObject.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/gn/VisualSelectSearch.kt",
  "extension" : "kt",
  "linesOfCode" : 55,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/gn/GnPreviousTextObject.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/search/SearchWholeWordBackwardAction.kt",
  "extension" : "kt",
  "linesOfCode" : 32,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/search/SearchAgainNextAction.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/search/SearchWholeWordForwardAction.kt",
  "extension" : "kt",
  "linesOfCode" : 32,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/search/GotoDeclarationAction.kt",
  "extension" : "kt",
  "linesOfCode" : 27,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/search/SearchWordBackwardAction.kt",
  "extension" : "kt",
  "linesOfCode" : 32,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/search/SearchEntryActions.kt",
  "extension" : "kt",
  "linesOfCode" : 43,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/search/SearchAgainPreviousAction.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/search/SearchWordForwardAction.kt",
  "extension" : "kt",
  "linesOfCode" : 32,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/visual/VisualToggleBlockModeAction.kt",
  "extension" : "kt",
  "linesOfCode" : 28,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/visual/VisualSelectPreviousAction.kt",
  "extension" : "kt",
  "linesOfCode" : 33,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/visual/VisualSwapSelectionsAction.kt",
  "extension" : "kt",
  "linesOfCode" : 39,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/visual/VisualToggleLineModeAction.kt",
  "extension" : "kt",
  "linesOfCode" : 49,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/visual/VisualExitModeAction.kt",
  "extension" : "kt",
  "linesOfCode" : 48,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/visual/VisualToggleCharacterModeAction.kt",
  "extension" : "kt",
  "linesOfCode" : 28,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/visual/VisualSwapEndsAction.kt",
  "extension" : "kt",
  "linesOfCode" : 60,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/screen/MotionFirstScreenLineAction.kt",
  "extension" : "kt",
  "linesOfCode" : 35,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/screen/MotionLastScreenLineAction.kt",
  "extension" : "kt",
  "linesOfCode" : 35,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/screen/MotionMiddleScreenLineAction.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionNthCharacterAction.kt",
  "extension" : "kt",
  "linesOfCode" : 31,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionCamelLeftAction.kt",
  "extension" : "kt",
  "linesOfCode" : 41,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionSentenceNextEndAction.kt",
  "extension" : "kt",
  "linesOfCode" : 43,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionWordRightAction.kt",
  "extension" : "kt",
  "linesOfCode" : 42,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionWordLeftAction.kt",
  "extension" : "kt",
  "linesOfCode" : 42,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionCamelEndAction.kt",
  "extension" : "kt",
  "linesOfCode" : 41,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionSentenceStartAction.kt",
  "extension" : "kt",
  "linesOfCode" : 53,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionMisspelledWord.kt",
  "extension" : "kt",
  "linesOfCode" : 44,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionBigWordLeftAction.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionMethodEndAction.kt",
  "extension" : "kt",
  "linesOfCode" : 44,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionBigWordRightAction.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionSectionAction.kt",
  "extension" : "kt",
  "linesOfCode" : 63,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionParagraphAction.kt",
  "extension" : "kt",
  "linesOfCode" : 39,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionWordEndAction.kt",
  "extension" : "kt",
  "linesOfCode" : 59,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionMethodStartAction.kt",
  "extension" : "kt",
  "linesOfCode" : 44,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionUnmatchedAction.kt",
  "extension" : "kt",
  "linesOfCode" : 47,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionFirstNonSpaceAction.kt",
  "extension" : "kt",
  "linesOfCode" : 26,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionBackspaceAction.kt",
  "extension" : "kt",
  "linesOfCode" : 29,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionRightAction.kt",
  "extension" : "kt",
  "linesOfCode" : 35,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionLastColumnAction.kt",
  "extension" : "kt",
  "linesOfCode" : 46,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionShiftEndAction.kt",
  "extension" : "kt",
  "linesOfCode" : 29,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionColumnAction.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionLastScreenColumnAction.kt",
  "extension" : "kt",
  "linesOfCode" : 39,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionLastNonSpaceAction.kt",
  "extension" : "kt",
  "linesOfCode" : 27,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionLeftAction.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionFirstColumnAction.kt",
  "extension" : "kt",
  "linesOfCode" : 43,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionEndAction.kt",
  "extension" : "kt",
  "linesOfCode" : 37,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/TillCharacterMotion.kt",
  "extension" : "kt",
  "linesOfCode" : 65,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionHomeAction.kt",
  "extension" : "kt",
  "linesOfCode" : 26,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionMiddleColumnAction.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionShiftHomeAction.kt",
  "extension" : "kt",
  "linesOfCode" : 17,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionShiftArrowRightAction.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionSpaceAction.kt",
  "extension" : "kt",
  "linesOfCode" : 29,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionFirstScreenNonSpaceAction.kt",
  "extension" : "kt",
  "linesOfCode" : 26,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionShiftArrowLeftAction.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionArrowRightAction.kt",
  "extension" : "kt",
  "linesOfCode" : 58,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionFirstScreenColumnAction.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionLastMatchCharAction.kt",
  "extension" : "kt",
  "linesOfCode" : 42,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionArrowLeftAction.kt",
  "extension" : "kt",
  "linesOfCode" : 56,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/CommandProvider.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/copy/YankVisualLinesAction.kt",
  "extension" : "kt",
  "linesOfCode" : 43,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/copy/YankMotionAction.kt",
  "extension" : "kt",
  "linesOfCode" : 26,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/copy/PutVisualTextAction.kt",
  "extension" : "kt",
  "linesOfCode" : 68,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/copy/YankLineAction.kt",
  "extension" : "kt",
  "linesOfCode" : 21,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/copy/YankVisualAction.kt",
  "extension" : "kt",
  "linesOfCode" : 36,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/copy/PutTextAction.kt",
  "extension" : "kt",
  "linesOfCode" : 68,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/file/FilePreviousAction.kt",
  "extension" : "kt",
  "linesOfCode" : 21,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/file/FileCloseAction.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/file/FileGetLocationInfoAction.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/file/FileGetFileInfoAction.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/file/FileGetHexAction.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/file/FileGetAsciiAction.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/file/FileSaveCloseAction.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/VimRepeater.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertEnterAction.kt",
  "extension" : "kt",
  "linesOfCode" : 38,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/VisualBlockAppendAction.kt",
  "extension" : "kt",
  "linesOfCode" : 32,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertDeleteInsertedTextAction.kt",
  "extension" : "kt",
  "linesOfCode" : 49,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertCompletedLiteralAction.kt",
  "extension" : "kt",
  "linesOfCode" : 33,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertBeforeCursorAction.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertPreviousInsertAction.kt",
  "extension" : "kt",
  "linesOfCode" : 36,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertAtPreviousInsertAction.kt",
  "extension" : "kt",
  "linesOfCode" : 34,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertSingleCommandAction.kt",
  "extension" : "kt",
  "linesOfCode" : 26,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertDeletePreviousWordAction.kt",
  "extension" : "kt",
  "linesOfCode" : 58,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertRegisterAction.kt",
  "extension" : "kt",
  "linesOfCode" : 66,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertLineStartAction.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertInsertAction.kt",
  "extension" : "kt",
  "linesOfCode" : 29,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertAfterCursorAction.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertAfterLineEndAction.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertExitModeAction.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertCompletedDigraphAction.kt",
  "extension" : "kt",
  "linesOfCode" : 33,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertCharacterAroundCursorAction.kt",
  "extension" : "kt",
  "linesOfCode" : 69,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertBackspaceAction.kt",
  "extension" : "kt",
  "linesOfCode" : 33,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertBeforeFirstNonBlankAction.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/VisualInsertAction.kt",
  "extension" : "kt",
  "linesOfCode" : 41,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertNewLineBelowAction.kt",
  "extension" : "kt",
  "linesOfCode" : 83,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/RedoAction.kt",
  "extension" : "kt",
  "linesOfCode" : 27,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/UndoAction.kt",
  "extension" : "kt",
  "linesOfCode" : 27,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/delete/DeleteMotionAction.kt",
  "extension" : "kt",
  "linesOfCode" : 31,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/delete/DeleteEndOfLineAction.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/delete/DeleteVisualAction.kt",
  "extension" : "kt",
  "linesOfCode" : 33,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/delete/DeleteCharacterAction.kt",
  "extension" : "kt",
  "linesOfCode" : 36,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/delete/DeleteVisualLinesEndAction.kt",
  "extension" : "kt",
  "linesOfCode" : 59,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/delete/DeleteVisualLinesAction.kt",
  "extension" : "kt",
  "linesOfCode" : 47,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/LazyVimCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 31,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ChangeVisualLinesAction.kt",
  "extension" : "kt",
  "linesOfCode" : 47,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ChangeRot13MotionAction.kt",
  "extension" : "kt",
  "linesOfCode" : 60,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ReformatCodeVisualAction.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ChangeEndOfLineAction.kt",
  "extension" : "kt",
  "linesOfCode" : 28,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ChangeVisualAction.kt",
  "extension" : "kt",
  "linesOfCode" : 31,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ChangeReplaceAction.kt",
  "extension" : "kt",
  "linesOfCode" : 28,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ChangeLineAction.kt",
  "extension" : "kt",
  "linesOfCode" : 36,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ChangeInInsertSequenceAction.kt",
  "extension" : "kt",
  "linesOfCode" : 37,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ChangeCharacterAction.kt",
  "extension" : "kt",
  "linesOfCode" : 73,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ChangeLastSearchReplaceAction.kt",
  "extension" : "kt",
  "linesOfCode" : 33,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ChangeVisualLinesEndAction.kt",
  "extension" : "kt",
  "linesOfCode" : 53,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/number/ChangeNumberIncAction.kt",
  "extension" : "kt",
  "linesOfCode" : 27,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/number/ChangeVisualNumberIncAction.kt",
  "extension" : "kt",
  "linesOfCode" : 38,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ReformatCodeMotionAction.kt",
  "extension" : "kt",
  "linesOfCode" : 28,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ChangeCaseUpperMotionAction.kt",
  "extension" : "kt",
  "linesOfCode" : 41,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ChangeMotionAction.kt",
  "extension" : "kt",
  "linesOfCode" : 37,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/FilterMotionAction.kt",
  "extension" : "kt",
  "linesOfCode" : 59,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ChangeCaseToggleVisualAction.kt",
  "extension" : "kt",
  "linesOfCode" : 27,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ChangeCharactersAction.kt",
  "extension" : "kt",
  "linesOfCode" : 28,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ChangeCaseToggleCharacterAction.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ChangeVisualCharacterAction.kt",
  "extension" : "kt",
  "linesOfCode" : 51,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ChangeCaseLowerVisualAction.kt",
  "extension" : "kt",
  "linesOfCode" : 27,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ChangeRot13VisualAction.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ChangeLastGlobalSearchReplaceAction.kt",
  "extension" : "kt",
  "linesOfCode" : 26,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ChangeCaseLowerMotionAction.kt",
  "extension" : "kt",
  "linesOfCode" : 41,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ChangeCaseUpperVisualAction.kt",
  "extension" : "kt",
  "linesOfCode" : 27,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/AutoIndentLinesVisualAction.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/change/ChangeCaseToggleMotionAction.kt",
  "extension" : "kt",
  "linesOfCode" : 41,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/BreakUndoSequenceAction.kt",
  "extension" : "kt",
  "linesOfCode" : 35,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/shift/ShiftLeft.kt",
  "extension" : "kt",
  "linesOfCode" : 72,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/shift/AutoIndentMotionAction.kt",
  "extension" : "kt",
  "linesOfCode" : 31,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/shift/ShiftRight.kt",
  "extension" : "kt",
  "linesOfCode" : 72,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/Extension.kt",
  "extension" : "kt",
  "linesOfCode" : 36,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/fold/FoldActions.kt",
  "extension" : "kt",
  "linesOfCode" : 128,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/macro/ToggleRecordingAction.kt",
  "extension" : "kt",
  "linesOfCode" : 31,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/macro/PlaybackRegisterAction.kt",
  "extension" : "kt",
  "linesOfCode" : 53,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/window/WindowOnlyAction.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/window/HorizontalSplitAction.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/window/CloseWindowAction.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/window/VerticalSplitAction.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/window/WindowNextAction.kt",
  "extension" : "kt",
  "linesOfCode" : 43,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/window/tabs/PreviousTabAction.kt",
  "extension" : "kt",
  "linesOfCode" : 35,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/window/tabs/NextTabAction.kt",
  "extension" : "kt",
  "linesOfCode" : 35,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/window/LookupUpAction.kt",
  "extension" : "kt",
  "linesOfCode" : 32,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/window/WindowAction.kt",
  "extension" : "kt",
  "linesOfCode" : 61,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/window/LookupDownAction.kt",
  "extension" : "kt",
  "linesOfCode" : 32,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ResetModeAction.kt",
  "extension" : "kt",
  "linesOfCode" : 51,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/listener/ListenerSuppressor.kt",
  "extension" : "kt",
  "linesOfCode" : 33,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/macro/VimMacro.kt",
  "extension" : "kt",
  "linesOfCode" : 18,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/macro/VimMacroBase.kt",
  "extension" : "kt",
  "linesOfCode" : 37,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/put/ProcessedTextData.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/put/PutData.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/put/VimPutBase.kt",
  "extension" : "kt",
  "linesOfCode" : 527,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/put/VimPut.kt",
  "extension" : "kt",
  "linesOfCode" : 51,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/parser/VimRegexParserResult.kt",
  "extension" : "kt",
  "linesOfCode" : 12,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/parser/VimRegexParser.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/parser/error/VimRegexParserException.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/parser/error/BailErrorLexer.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/parser/error/VimRegexParserErrorStrategy.kt",
  "extension" : "kt",
  "linesOfCode" : 15,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/parser/visitors/MultiVisitor.kt",
  "extension" : "kt",
  "linesOfCode" : 82,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/parser/visitors/PatternVisitor.kt",
  "extension" : "kt",
  "linesOfCode" : 636,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/parser/visitors/CollectionElementVisitor.kt",
  "extension" : "kt",
  "linesOfCode" : 100,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/CharPointer.kt",
  "extension" : "kt",
  "linesOfCode" : 194,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/match/VimMatchGroupCollection.kt",
  "extension" : "kt",
  "linesOfCode" : 52,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/match/VimMatchResult.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/match/VimMatchGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 6,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/VimRegexException.kt",
  "extension" : "kt",
  "linesOfCode" : 2,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/VimRegex.kt",
  "extension" : "kt",
  "linesOfCode" : 509,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/VimRegexEngine.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/matcher/EpsilonMatcher.kt",
  "extension" : "kt",
  "linesOfCode" : 19,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/matcher/EndOfFileMatcher.kt",
  "extension" : "kt",
  "linesOfCode" : 18,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/matcher/EndOfWordMatcher.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/matcher/StartOfWordMatcher.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/matcher/CollectionMatcher.kt",
  "extension" : "kt",
  "linesOfCode" : 45,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/matcher/VisualAreaMatcher.kt",
  "extension" : "kt",
  "linesOfCode" : 32,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/matcher/StartOfLineMatcher.kt",
  "extension" : "kt",
  "linesOfCode" : 20,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/matcher/Matcher.kt",
  "extension" : "kt",
  "linesOfCode" : 14,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/matcher/PredicateMatcher.kt",
  "extension" : "kt",
  "linesOfCode" : 36,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/matcher/StartOfFileMatcher.kt",
  "extension" : "kt",
  "linesOfCode" : 18,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/matcher/EndOfLineMatcher.kt",
  "extension" : "kt",
  "linesOfCode" : 21,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/matcher/CursorMatcher.kt",
  "extension" : "kt",
  "linesOfCode" : 26,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/matcher/CharacterMatcher.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/matcher/MatcherResult.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/matcher/BackreferenceMatcher.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/matcher/MarkMatchers.kt",
  "extension" : "kt",
  "linesOfCode" : 34,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/matcher/DotMatcher.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/matcher/ColumnMatchers.kt",
  "extension" : "kt",
  "linesOfCode" : 109,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/matcher/LineMatchers.kt",
  "extension" : "kt",
  "linesOfCode" : 109,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/NFAAssertion.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/NFA.kt",
  "extension" : "kt",
  "linesOfCode" : 101,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/NFAState.kt",
  "extension" : "kt",
  "linesOfCode" : 12,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/nfa/NFATransition.kt",
  "extension" : "kt",
  "linesOfCode" : 6,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/strategies/BacktrackingStrategy.kt",
  "extension" : "kt",
  "linesOfCode" : 170,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/strategies/ImplicitDFAStrategy.kt",
  "extension" : "kt",
  "linesOfCode" : 87,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/strategies/SimulationStrategy.kt",
  "extension" : "kt",
  "linesOfCode" : 6,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/engine/strategies/SimulationResult.kt",
  "extension" : "kt",
  "linesOfCode" : 6,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/VimRegexOptions.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/kotlin/com/maddyhome/idea/vim/regexp/VimRegexErrors.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/antlr/Vimscript.g4",
  "extension" : "g4",
  "linesOfCode" : 826,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "vim-engine/src/main/antlr/RegexParser.g4",
  "extension" : "g4",
  "linesOfCode" : 208,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/src/main/antlr/RegexLexer.g4",
  "extension" : "g4",
  "linesOfCode" : 618,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "vim-engine/build.gradle.kts",
  "extension" : "kts",
  "linesOfCode" : 97,
  "components" : [ "primary::vim-engine" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts-ts/src/checkNewPluginDependencies.ts",
  "extension" : "ts",
  "linesOfCode" : 76,
  "components" : [ "primary::scripts-ts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts-ts/src/teamcityTest.ts",
  "extension" : "ts",
  "linesOfCode" : 18,
  "components" : [ "primary::scripts-ts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts-ts/src/selectTicketForAnalysis.ts",
  "extension" : "ts",
  "linesOfCode" : 165,
  "components" : [ "primary::scripts-ts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts-ts/src/updateYoutrackOnCommit.ts",
  "extension" : "ts",
  "linesOfCode" : 34,
  "components" : [ "primary::scripts-ts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts-ts/src/tools/youtrack.ts",
  "extension" : "ts",
  "linesOfCode" : 286,
  "components" : [ "primary::scripts-ts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts-ts/src/youtrack-cli/delete-version.ts",
  "extension" : "ts",
  "linesOfCode" : 16,
  "components" : [ "primary::scripts-ts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts-ts/src/youtrack-cli/set-fix-version.ts",
  "extension" : "ts",
  "linesOfCode" : 14,
  "components" : [ "primary::scripts-ts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts-ts/src/youtrack-cli/add-comment.ts",
  "extension" : "ts",
  "linesOfCode" : 38,
  "components" : [ "primary::scripts-ts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts-ts/src/youtrack-cli/remove-tag.ts",
  "extension" : "ts",
  "linesOfCode" : 19,
  "components" : [ "primary::scripts-ts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts-ts/src/youtrack-cli/set-status.ts",
  "extension" : "ts",
  "linesOfCode" : 31,
  "components" : [ "primary::scripts-ts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts-ts/src/youtrack-cli/get-ticket.ts",
  "extension" : "ts",
  "linesOfCode" : 50,
  "components" : [ "primary::scripts-ts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts-ts/src/youtrack-cli/create-version.ts",
  "extension" : "ts",
  "linesOfCode" : 14,
  "components" : [ "primary::scripts-ts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts-ts/src/youtrack-cli/add-tag.ts",
  "extension" : "ts",
  "linesOfCode" : 19,
  "components" : [ "primary::scripts-ts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts-ts/src/updateAuthors.ts",
  "extension" : "ts",
  "linesOfCode" : 230,
  "components" : [ "primary::scripts-ts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts-ts/src/completeTicketAnalysis.ts",
  "extension" : "ts",
  "linesOfCode" : 108,
  "components" : [ "primary::scripts-ts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ex/ExOutputModel.kt",
  "extension" : "kt",
  "linesOfCode" : 125,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ex/vimscript/VimScriptGlobalEnvironment.java",
  "extension" : "java",
  "linesOfCode" : 19,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/highlightedyank/VimHighlightedYank.kt",
  "extension" : "kt",
  "linesOfCode" : 212,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/VimExtensionFacade.kt",
  "extension" : "kt",
  "linesOfCode" : 228,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/paragraphmotion/ParagraphMotion.kt",
  "extension" : "kt",
  "linesOfCode" : 48,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/replacewithregister/ReplaceWithRegister.kt",
  "extension" : "kt",
  "linesOfCode" : 26,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/replacewithregister/ReplaceWithRegisterNewApi.kt",
  "extension" : "kt",
  "linesOfCode" : 132,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/hints/ToggleHintsAction.kt",
  "extension" : "kt",
  "linesOfCode" : 108,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/hints/HintTarget.kt",
  "extension" : "kt",
  "linesOfCode" : 21,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/hints/HintGenerator.kt",
  "extension" : "kt",
  "linesOfCode" : 93,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/VimExtension.java",
  "extension" : "java",
  "linesOfCode" : 18,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/exchange/VimExchangeExtension.kt",
  "extension" : "kt",
  "linesOfCode" : 287,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/nerdtree/NerdTreeAction.kt",
  "extension" : "kt",
  "linesOfCode" : 31,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/nerdtree/Mappings.kt",
  "extension" : "kt",
  "linesOfCode" : 95,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/nerdtree/NerdTree.kt",
  "extension" : "kt",
  "linesOfCode" : 207,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/nerdtree/AbstractDispatcher.kt",
  "extension" : "kt",
  "linesOfCode" : 42,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/nerdtree/NerdTreeEverywhere.kt",
  "extension" : "kt",
  "linesOfCode" : 45,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/multiplecursors/VimMultipleCursorsExtension.kt",
  "extension" : "kt",
  "linesOfCode" : 238,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/VimExtensionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 14,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/commentary/CommentaryExtension.kt",
  "extension" : "kt",
  "linesOfCode" : 191,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/matchit/Matchit.kt",
  "extension" : "kt",
  "linesOfCode" : 463,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/sneak/IdeaVimSneakExtension.kt",
  "extension" : "kt",
  "linesOfCode" : 277,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/argtextobj/VimArgTextObjExtension.kt",
  "extension" : "kt",
  "linesOfCode" : 491,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/VimExtensionRegistrar.kt",
  "extension" : "kt",
  "linesOfCode" : 105,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/ExtensionBeanClass.kt",
  "extension" : "kt",
  "linesOfCode" : 20,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/VimApi.kt",
  "extension" : "kt",
  "linesOfCode" : 9,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/ShortcutDispatcher.kt",
  "extension" : "kt",
  "linesOfCode" : 88,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/textobjindent/VimIndentObject.kt",
  "extension" : "kt",
  "linesOfCode" : 137,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/surround/VimSurroundExtension.kt",
  "extension" : "kt",
  "linesOfCode" : 325,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/miniai/MiniAI.kt",
  "extension" : "kt",
  "linesOfCode" : 130,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/extension/textobjentire/VimTextObjEntireExtension.kt",
  "extension" : "kt",
  "linesOfCode" : 35,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/mark/IntellijMark.kt",
  "extension" : "kt",
  "linesOfCode" : 29,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/thinapi/IjVimPluginService.kt",
  "extension" : "kt",
  "linesOfCode" : 19,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/thinapi/IjPluginListener.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/thinapi/IjVimHighlightingService.kt",
  "extension" : "kt",
  "linesOfCode" : 48,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/thinapi/IjJsonExtensionProvider.kt",
  "extension" : "kt",
  "linesOfCode" : 120,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/thinapi/IjPluginExtensionsScanner.kt",
  "extension" : "kt",
  "linesOfCode" : 54,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/thinapi/IjExtensionLoader.kt",
  "extension" : "kt",
  "linesOfCode" : 38,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ide/riderDetector.kt",
  "extension" : "kt",
  "linesOfCode" : 12,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ide/clionNovaDetector.kt",
  "extension" : "kt",
  "linesOfCode" : 12,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/newapi/IjVimSearchGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 242,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/newapi/IjVimMessages.kt",
  "extension" : "kt",
  "linesOfCode" : 74,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/newapi/IjVimSearchHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 40,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/newapi/IjEditorExecutionContext.kt",
  "extension" : "kt",
  "linesOfCode" : 12,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/newapi/IjVimLookupManager.kt",
  "extension" : "kt",
  "linesOfCode" : 27,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/newapi/ExecuteExtension.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/newapi/IjVimDocument.kt",
  "extension" : "kt",
  "linesOfCode" : 32,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/newapi/IjVimCaret.kt",
  "extension" : "kt",
  "linesOfCode" : 183,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/newapi/IjNativeActionManager.kt",
  "extension" : "kt",
  "linesOfCode" : 28,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/newapi/IjClipboardManager.kt",
  "extension" : "kt",
  "linesOfCode" : 190,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/newapi/IjExecutionContextManager.kt",
  "extension" : "kt",
  "linesOfCode" : 12,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/newapi/IjTemplateManager.kt",
  "extension" : "kt",
  "linesOfCode" : 14,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/newapi/IjVimLogger.kt",
  "extension" : "kt",
  "linesOfCode" : 28,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/newapi/IjVimEditor.kt",
  "extension" : "kt",
  "linesOfCode" : 423,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/newapi/IjVimInjector.kt",
  "extension" : "kt",
  "linesOfCode" : 220,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/newapi/IjVimApplication.kt",
  "extension" : "kt",
  "linesOfCode" : 81,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/newapi/IjVimEnabler.kt",
  "extension" : "kt",
  "linesOfCode" : 19,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/newapi/IjLiveRange.kt",
  "extension" : "kt",
  "linesOfCode" : 26,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/EventFacade.java",
  "extension" : "java",
  "linesOfCode" : 88,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/key/VimActionsPromoter.kt",
  "extension" : "kt",
  "linesOfCode" : 43,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/key/KeyHandlerKeeper.kt",
  "extension" : "kt",
  "linesOfCode" : 12,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/key/IdeaVimDisablerExtensionPoint.kt",
  "extension" : "kt",
  "linesOfCode" : 12,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/handler/IdeActionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 18,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/handler/EditorHandlersChainLogger.kt",
  "extension" : "kt",
  "linesOfCode" : 41,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/handler/KeymapChecker.kt",
  "extension" : "kt",
  "linesOfCode" : 108,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/handler/VimEnterHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 219,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/handler/CopilotKeymapCorrector.kt",
  "extension" : "kt",
  "linesOfCode" : 72,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/RegisterActions.kt",
  "extension" : "kt",
  "linesOfCode" : 36,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/VimBundledDictionaryProvider.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/icons/VimIcons.java",
  "extension" : "java",
  "linesOfCode" : 14,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/troubleshooting/Troubleshooter.kt",
  "extension" : "kt",
  "linesOfCode" : 35,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/troubleshooting/AccidentalInstallDetector.kt",
  "extension" : "kt",
  "linesOfCode" : 74,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/IjActionExecutor.kt",
  "extension" : "kt",
  "linesOfCode" : 146,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/ModeExtensions.kt",
  "extension" : "kt",
  "linesOfCode" : 36,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/MacKeyRepeat.kt",
  "extension" : "kt",
  "linesOfCode" : 43,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/UiHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 34,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/CaretVisualAttributesHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 115,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/EditorHelper.java",
  "extension" : "java",
  "linesOfCode" : 386,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/HandlerInjector.kt",
  "extension" : "kt",
  "linesOfCode" : 47,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/ScrollHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/SearchHelperKt.kt",
  "extension" : "kt",
  "linesOfCode" : 60,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/SearchHighlightsHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 233,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/PsiHelper.java",
  "extension" : "java",
  "linesOfCode" : 99,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/EditorHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 73,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/InlayHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 62,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/TestInputModel.kt",
  "extension" : "kt",
  "linesOfCode" : 29,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/CommandStateExtensions.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/StringHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 15,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/ScrollViewHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 126,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/IjEditorHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 60,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/IjVimStringParser.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/MessageHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/Helper.kt",
  "extension" : "kt",
  "linesOfCode" : 62,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/UserDataManager.kt",
  "extension" : "kt",
  "linesOfCode" : 153,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/helper/UndoRedoHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 188,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/statistic/OptionsState.kt",
  "extension" : "kt",
  "linesOfCode" : 61,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/statistic/WidgetState.kt",
  "extension" : "kt",
  "linesOfCode" : 58,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/statistic/ShortcutConflictState.kt",
  "extension" : "kt",
  "linesOfCode" : 186,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/statistic/ActionTracker.kt",
  "extension" : "kt",
  "linesOfCode" : 27,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/statistic/VimscriptState.kt",
  "extension" : "kt",
  "linesOfCode" : 74,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/statistic/PluginState.kt",
  "extension" : "kt",
  "linesOfCode" : 52,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/common/CharacterPosition.kt",
  "extension" : "kt",
  "linesOfCode" : 17,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/common/IndentConfig.kt",
  "extension" : "kt",
  "linesOfCode" : 17,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/command/CommandState.kt",
  "extension" : "kt",
  "linesOfCode" : 55,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/vimscript/parser/VimscriptParser.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/vimscript/Executor.kt",
  "extension" : "kt",
  "linesOfCode" : 20,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/vimscript/model/commands/CmdFilterCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 92,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/vimscript/model/commands/BufferCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 70,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/vimscript/model/commands/IntellijExCommandProvider.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/vimscript/model/commands/BufferListCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 119,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/vimscript/model/commands/ActionListCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 43,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/vimscript/model/commands/HelpCommand.kt",
  "extension" : "kt",
  "linesOfCode" : 38,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/vimscript/model/options/helpers/IdeaRefactorModeHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 100,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/vimscript/model/functions/handlers/PopupMenuVisibleFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 14,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/vimscript/model/functions/handlers/HasFunctionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 51,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/vimscript/model/functions/IntellijFunctionProvider.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/vimscript/services/FunctionStorage.kt",
  "extension" : "kt",
  "linesOfCode" : 9,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/vimscript/services/IjVariableService.kt",
  "extension" : "kt",
  "linesOfCode" : 95,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/NotificationService.kt",
  "extension" : "kt",
  "linesOfCode" : 387,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/FileGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 261,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/EditorGroup.java",
  "extension" : "java",
  "linesOfCode" : 312,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/IjOptions.kt",
  "extension" : "kt",
  "linesOfCode" : 117,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/RegisterGroup.java",
  "extension" : "java",
  "linesOfCode" : 147,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/CommandGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/VimJumpServiceImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 107,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/IjVimStorageService.kt",
  "extension" : "kt",
  "linesOfCode" : 38,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/IjVimRedrawService.kt",
  "extension" : "kt",
  "linesOfCode" : 28,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/WindowGroup.java",
  "extension" : "java",
  "linesOfCode" : 179,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/IjOptionProperties.kt",
  "extension" : "kt",
  "linesOfCode" : 32,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/VimMarkServiceImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 234,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/IjStatisticsService.kt",
  "extension" : "kt",
  "linesOfCode" : 33,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/TabServiceImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 54,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/MotionGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 249,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/IjVimSystemInfoService.kt",
  "extension" : "kt",
  "linesOfCode" : 9,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/MacroGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 58,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/HistoryGroup.java",
  "extension" : "java",
  "linesOfCode" : 105,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/copy/PutGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 193,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/OptionGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 771,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/IjVimPsiService.kt",
  "extension" : "kt",
  "linesOfCode" : 44,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/visual/VisualMotionGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 15,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/visual/VisualGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 42,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/visual/VisualModeHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/visual/VimVisualTimer.kt",
  "extension" : "kt",
  "linesOfCode" : 38,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/visual/IdeaSelectionControl.kt",
  "extension" : "kt",
  "linesOfCode" : 134,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/XMLGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/ChangeGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 197,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/KeyGroup.java",
  "extension" : "java",
  "linesOfCode" : 331,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/ProcessGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 104,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/SystemMarks.kt",
  "extension" : "kt",
  "linesOfCode" : 49,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/ScrollGroup.kt",
  "extension" : "kt",
  "linesOfCode" : 241,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/group/LastTabService.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/VimPlugin.java",
  "extension" : "java",
  "linesOfCode" : 332,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/PluginStartup.kt",
  "extension" : "kt",
  "linesOfCode" : 58,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/config/VimState.kt",
  "extension" : "kt",
  "linesOfCode" : 63,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/config/migration/ApplicationConfigurationMigrator.kt",
  "extension" : "kt",
  "linesOfCode" : 62,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/config/migration/VersionDetectors.kt",
  "extension" : "kt",
  "linesOfCode" : 31,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/config/migration/ConfigurationMigrators.kt",
  "extension" : "kt",
  "linesOfCode" : 38,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/action/editor/VimEditorActions.kt",
  "extension" : "kt",
  "linesOfCode" : 83,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/action/RedrawAction.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/action/IntellijCommandProvider.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/action/VimPluginToggleAction.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/action/VimShortcutKeyAction.kt",
  "extension" : "kt",
  "linesOfCode" : 292,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/action/change/RepeatChangeAction.kt",
  "extension" : "kt",
  "linesOfCode" : 62,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/action/change/delete/DeleteJoinVisualLinesSpacesAction.kt",
  "extension" : "kt",
  "linesOfCode" : 46,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/action/change/delete/DeleteJoinLinesSpacesAction.kt",
  "extension" : "kt",
  "linesOfCode" : 34,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/action/change/delete/DeleteJoinVisualLinesAction.kt",
  "extension" : "kt",
  "linesOfCode" : 46,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/action/change/delete/DeleteJoinLinesAction.kt",
  "extension" : "kt",
  "linesOfCode" : 43,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/action/change/OperatorAction.kt",
  "extension" : "kt",
  "linesOfCode" : 114,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/action/internal/AddInlineInlaysAction.kt",
  "extension" : "kt",
  "linesOfCode" : 43,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/action/internal/AddBlockInlaysAction.kt",
  "extension" : "kt",
  "linesOfCode" : 115,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/inspections/UsePlugSyntaxInspection.kt",
  "extension" : "kt",
  "linesOfCode" : 71,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/listener/IdeaSpecifics.kt",
  "extension" : "kt",
  "linesOfCode" : 261,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/listener/RiderSpecifics.kt",
  "extension" : "kt",
  "linesOfCode" : 61,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/listener/VimInsertListener.kt",
  "extension" : "kt",
  "linesOfCode" : 18,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/listener/AceJumpSpecifics.kt",
  "extension" : "kt",
  "linesOfCode" : 19,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/listener/VimListenerManager.kt",
  "extension" : "kt",
  "linesOfCode" : 584,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/listener/IJEditorFocusListener.kt",
  "extension" : "kt",
  "linesOfCode" : 48,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/VimTypedActionHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 78,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/customization/feature/terminal/IdeaVimTerminalDisablerExtension.kt",
  "extension" : "kt",
  "linesOfCode" : 14,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/VimProjectService.kt",
  "extension" : "kt",
  "linesOfCode" : 19,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/ExOutputPanel.kt",
  "extension" : "kt",
  "linesOfCode" : 250,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/ex/InlineCompositeView.kt",
  "extension" : "kt",
  "linesOfCode" : 80,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/ex/ExNonPrintableFieldView.kt",
  "extension" : "kt",
  "linesOfCode" : 21,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/ex/ExTextFieldUI.kt",
  "extension" : "kt",
  "linesOfCode" : 60,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/ex/ExDocument.kt",
  "extension" : "kt",
  "linesOfCode" : 164,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/ex/ExTextField.kt",
  "extension" : "kt",
  "linesOfCode" : 340,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/ex/ExEntryPanelService.kt",
  "extension" : "kt",
  "linesOfCode" : 146,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/ex/IjOutputPanelService.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/ex/ExEntryPanel.kt",
  "extension" : "kt",
  "linesOfCode" : 437,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/ex/ExEditorKit.kt",
  "extension" : "kt",
  "linesOfCode" : 18,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/ex/ExFakePromptView.kt",
  "extension" : "kt",
  "linesOfCode" : 21,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/ex/ScrollingInlineCompositeView.kt",
  "extension" : "kt",
  "linesOfCode" : 45,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/StatusBar.kt",
  "extension" : "kt",
  "linesOfCode" : 247,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/ShowCmd.kt",
  "extension" : "kt",
  "linesOfCode" : 98,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/VimEmulationConfigurable.kt",
  "extension" : "kt",
  "linesOfCode" : 346,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/widgets/mode/listeners/ModeWidgetListener.kt",
  "extension" : "kt",
  "linesOfCode" : 69,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/widgets/mode/ModeWidgetFactory.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/widgets/mode/Util.kt",
  "extension" : "kt",
  "linesOfCode" : 142,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/widgets/mode/VimStatusBarWidget.kt",
  "extension" : "kt",
  "linesOfCode" : 37,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/widgets/mode/ModeWidgetPopup.kt",
  "extension" : "kt",
  "linesOfCode" : 334,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/widgets/mode/VimModeWidget.kt",
  "extension" : "kt",
  "linesOfCode" : 167,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/widgets/macro/MacroWidgetFactory.kt",
  "extension" : "kt",
  "linesOfCode" : 79,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/widgets/VimWidgetListener.kt",
  "extension" : "kt",
  "linesOfCode" : 14,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/Tutor.kt",
  "extension" : "kt",
  "linesOfCode" : 529,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/ExPanelBorder.kt",
  "extension" : "kt",
  "linesOfCode" : 18,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/ReloadVimRc.kt",
  "extension" : "kt",
  "linesOfCode" : 128,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/java/com/maddyhome/idea/vim/ui/ModalEntry.kt",
  "extension" : "kt",
  "linesOfCode" : 57,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/resources/META-INF/ideavim-withAceJump.xml",
  "extension" : "xml",
  "linesOfCode" : 6,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/resources/META-INF/plugin.xml",
  "extension" : "xml",
  "linesOfCode" : 4,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/resources/META-INF/ides/ideavim-withClionNova.xml",
  "extension" : "xml",
  "linesOfCode" : 11,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/resources/META-INF/ides/ideavim-withRider.xml",
  "extension" : "xml",
  "linesOfCode" : 15,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/resources/META-INF/features/ideavim-withTerminal.xml",
  "extension" : "xml",
  "linesOfCode" : 5,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/resources/inspectionDescriptions/UsePlugSyntax.html",
  "extension" : "html",
  "linesOfCode" : 19,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/resources/inspectionDescriptions/UsePlug.html",
  "extension" : "html",
  "linesOfCode" : 19,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/testFixtures/kotlin/org/jetbrains/plugins/ideavim/util.kt",
  "extension" : "kt",
  "linesOfCode" : 108,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/testFixtures/kotlin/org/jetbrains/plugins/ideavim/NeovimTesting.kt",
  "extension" : "kt",
  "linesOfCode" : 266,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/testFixtures/kotlin/org/jetbrains/plugins/ideavim/OnlyThrowLoggedErrorProcessor.kt",
  "extension" : "kt",
  "linesOfCode" : 19,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/testFixtures/kotlin/org/jetbrains/plugins/ideavim/EmptyTransferable.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/testFixtures/kotlin/org/jetbrains/plugins/ideavim/TestOptionConstants.kt",
  "extension" : "kt",
  "linesOfCode" : 36,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/testFixtures/kotlin/org/jetbrains/plugins/ideavim/VimTestCase.kt",
  "extension" : "kt",
  "linesOfCode" : 938,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/scopes/ListenersScope.kt",
  "extension" : "kt",
  "linesOfCode" : 18,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/scopes/editor/caret/CaretRead.kt",
  "extension" : "kt",
  "linesOfCode" : 53,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/scopes/editor/caret/CaretTransaction.kt",
  "extension" : "kt",
  "linesOfCode" : 33,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/scopes/editor/EditorScope.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/scopes/editor/Transaction.kt",
  "extension" : "kt",
  "linesOfCode" : 32,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/scopes/editor/ReadScope.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/scopes/editor/EditorAccessor.kt",
  "extension" : "kt",
  "linesOfCode" : 57,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/scopes/mappingPluginExtensions.kt",
  "extension" : "kt",
  "linesOfCode" : 126,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/scopes/MappingScope.kt",
  "extension" : "kt",
  "linesOfCode" : 53,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/scopes/ModalInput.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/scopes/TextObjectScope.kt",
  "extension" : "kt",
  "linesOfCode" : 15,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/scopes/VimApiDsl.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/scopes/DigraphScope.kt",
  "extension" : "kt",
  "linesOfCode" : 6,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/scopes/commandline/CommandLineTransaction.kt",
  "extension" : "kt",
  "linesOfCode" : 9,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/scopes/commandline/CommandLineScope.kt",
  "extension" : "kt",
  "linesOfCode" : 26,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/scopes/commandline/CommandLineRead.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/scopes/OptionScope.kt",
  "extension" : "kt",
  "linesOfCode" : 50,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/scopes/OutputPanelScope.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/models/Range.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/models/Color.kt",
  "extension" : "kt",
  "linesOfCode" : 15,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/models/Mark.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/models/Jump.kt",
  "extension" : "kt",
  "linesOfCode" : 7,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/models/Mode.kt",
  "extension" : "kt",
  "linesOfCode" : 35,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/models/ApiModels.kt",
  "extension" : "kt",
  "linesOfCode" : 15,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/models/Path.kt",
  "extension" : "kt",
  "linesOfCode" : 6,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/VimPlugin.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/src/main/kotlin/com/intellij/vim/api/VimApi.kt",
  "extension" : "kt",
  "linesOfCode" : 78,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "api/build.gradle.kts",
  "extension" : "kts",
  "linesOfCode" : 17,
  "components" : [ "primary::api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "build.gradle.kts",
  "extension" : "kts",
  "linesOfCode" : 248,
  "components" : [ "primary::ROOT" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts/src/main/kotlin/scripts/release/changelogUpdateUnreleased.kt",
  "extension" : "kt",
  "linesOfCode" : 38,
  "components" : [ "primary::scripts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts/src/main/kotlin/scripts/release/commitChanges.kt",
  "extension" : "kt",
  "linesOfCode" : 20,
  "components" : [ "primary::scripts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts/src/main/kotlin/scripts/release/util.kt",
  "extension" : "kt",
  "linesOfCode" : 103,
  "components" : [ "primary::scripts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts/src/main/kotlin/scripts/release/addReleaseTag.kt",
  "extension" : "kt",
  "linesOfCode" : 16,
  "components" : [ "primary::scripts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts/src/main/kotlin/scripts/release/calculateNewVersion.kt",
  "extension" : "kt",
  "linesOfCode" : 17,
  "components" : [ "primary::scripts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts/src/main/kotlin/scripts/release/selectBranch.kt",
  "extension" : "kt",
  "linesOfCode" : 17,
  "components" : [ "primary::scripts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts/src/main/kotlin/scripts/release/calculateNewDevVersion.kt",
  "extension" : "kt",
  "linesOfCode" : 45,
  "components" : [ "primary::scripts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts/src/main/kotlin/scripts/release/setTeamCityBuildNumber.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::scripts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts/src/main/kotlin/scripts/release/calculateNewEapVersion.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::scripts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts/src/main/kotlin/scripts/Main.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::scripts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts/src/main/kotlin/scripts/youtrack.kt",
  "extension" : "kt",
  "linesOfCode" : 191,
  "components" : [ "primary::scripts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts/src/main/kotlin/scripts/releaseActions.kt",
  "extension" : "kt",
  "linesOfCode" : 28,
  "components" : [ "primary::scripts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts/src/main/kotlin/scripts/releaseEap/eapReleaseActions.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::scripts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts/src/main/kotlin/scripts/ktor.kt",
  "extension" : "kt",
  "linesOfCode" : 38,
  "components" : [ "primary::scripts" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "scripts/build.gradle.kts",
  "extension" : "kts",
  "linesOfCode" : 100,
  "components" : [ "primary::scripts" ],
  "concerns" : [ "::Unclassified" ]
} ]