     let location = sender.location(in: tableView)
     guard sender.state == .began, let path = tableView.indexPathForRow(at: location) else { return }
     expandedIndexPath = path
-    openDetailView(for: path)
+    moveCells(from: path)
   }
   
 }

    setupTableView()
    setupTapGesture()
    
    if #available(iOS 10, *), traitCollection.forceTouchCapability == .available, config.forceTouchPreviewIntearctionEnabled {
      interaction = UIPreviewInteraction(view: view)
      interaction.delegate = self
    } else if config.forceTouchPreviewIntearctionEnabled {
      setupLongPressGesture()
    }
  }
  
  private func setupTableView() {

  
  open override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
    guard shouldExpand else { return }
    DispatchQueue.main.async {
      self.expandedIndexPath = indexPath
      self.openDetailView(for: indexPath)
    }
  }
  
  open override func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
