import Foundation

func isFull(_ s: String) -> Bool {
  var c: Int = 0
  for (i, si) in s.enumerated() {
    switch si {
    case "(": c += 1
    case ")" where c > i : return false
    case ")": c -= 1
    default:  break
    }
  }
  return c == 0
}

func prefixLength(_ s: String, e: Character) -> Int {
  return s.prefix { $0 == "(" }.count
}

let nl = readLine()!.split(separator: " ").map { Int($0)! }
let n = nl[0]
var s = [String]()
for _ in (0..<n) {
  let si = readLine()!
  if !isFull(si) {
    s.append(si)
  }
}

let e: Character = "("
s.sort { prefixLength($0, e: e) > prefixLength($1, e: e) }
print("\(isFull(s.joined()) ? "Yes": "No")")