     let point = convertToCanvasCoordinates(point: event.locationInWindow)
     
     if event.isSingleClick() {
-      if let clickedConcepts = clickedConcepts(atPoint: point) {
+      if let clickedElements = clickedElements(atPoint: point) {
         Swift.print("[mouseDown][singleClick] clicked concepts [\(clickedConcepts)]")
         
         if (!currentState.isSimilar(to: .multipleSelectedElements(elements: [Element]()))) {
           safeTransiton {
-            try stateManager.toSelectedElement(element: clickedConcepts.first!)
+            try stateManager.toSelectedElement(element: clickedElements.first!)
           }
         }
         


protocol GraphLink {
  var color: NSColor { get }
  
  var stringValue: String { get }
  var attributedStringValue: NSAttributedString { get }

    let results = document.concepts.filter { (concept) -> Bool in
      return concept.rect.contains(clickedPoint)
    }
    guard results.count > 0 else { return nil }
    return results
  }
  
  func clickedElements(atPoint clickedPoint: NSPoint) -> [Element]? {
    var results = [Element]()
    let clickedConcepts: [Element] = document.concepts.filter { (concept) -> Bool in
      return concept.rect.contains(clickedPoint)
    }
    let clickedLinks: [Element] = document.links.filter { (link) -> Bool in
      return link.rect.contains(clickedPoint)
    }
    
    results.append(contentsOf: clickedConcepts)
    results.append(contentsOf: clickedLinks)
    
    guard results.count > 0 else { return nil }
    return results
  }
