         for i in y..<ey {
           move(Int32(i), nx)
           for _ in x..<ex {
-            addstr(s)
+            NC.output(s)
           }
         }
       } else {

        move(Int32(i), nx)
        var j = x
        while j < limit {
          addstr(s)
          j += slen
        }
        if j < ex {
          addstr(s.characters.substring(0, endIndex: ex - j))
        }
        si += 1
        if si >= blen {

    move(Int32(ap.y), Int32(ap.x))
    let len = size.count
    if w == len {
      NC.output(text)
    } else {
      let z = String(text.characters.substring(0, endIndex: min(w, len)))
      if align != .Left {
        let n = align == .Right ? w - len : (w - len) / 2
        move(Int32(ap.y), Int32(ap.x + n))
      }
      NC.output(z)
    }
  }

