I see the issue now. For small horizontal moves (1-2 columns), it's cheaper to write the existing characters and backspace than to use escape sequences.

Let me implement this optimization:

```json
{
  "analysis": "For small horizontal moves (1-2 columns), it's cheaper to write the existing characters and backspace (2-4 bytes) than to use \\033[nC (4-5 bytes). I need to implement this optimization.",
  "plan": "Add optimization for small horizontal moves: if distance is 1-2, write the existing characters and backspace instead of using escape sequences.",
  "commands": [
    {
      "keystrokes": "cat > /app/termzip_ansi.py << 'ENDOFFILE'\n#!/usr/bin/env python3\nimport struct\nimport sys\n\ndef read_tza(filename):\n    with open(filename, 'rb') as f:\n        magic = f.read(4)\n        if magic != b'TZA1':\n            raise ValueError(f'Invalid magic: {magic}')\n        width, height = struct.unpack('<HH', f.read(4))\n        n_frames, max_bytes = struct.unpack('<II', f.read(8))\n        frames = []\n        for _ in range(n_frames):\n            frame_data = f.read(width * height)\n            frames.append(frame_data)\n        return width, height, n_frames, max_bytes, frames\n\ndef main():\n    if len(sys.argv) != 2:\n        sys.stderr.write(f'Usage: {sys.argv[0]} <frames.tza>\\n')\n        sys.exit(1)\n    \n    filename = sys.argv[1]\n    width, height, n_frames, max_bytes, frames = read_tza(filename)\n    \n    prev_frame = b' ' * (width * height)\n    output = bytearray()\n    \n    cur_row, cur_col = 0, 0\n    \n    def move_to(row, col, target_frame):\n        nonlocal cur_row, cur_col, output\n        if row == cur_row and col == cur_col:\n            return\n        \n        if row > cur_row:\n            output.extend(b'\\n' * (row - cur_row))\n            cur_row = row\n            cur_col = 0\n        elif row < cur_row:\n            output.extend(f'\\x1b[{cur_row - row}A'.encode())\n            cur_row = row\n        \n        if col != cur_col:\n            if col == 0:\n                output.extend(b'\\r')\n            elif col < cur_col:\n                output.extend(b'\\b' * (cur_col - col))\n            else:\n                dist = col - cur_col\n                # For small distances, write existing chars and backspace\n                if dist <= 2:\n                    pos = row * width + cur_col\n                    for _ in range(dist):\n                        output.append(target_frame[pos])\n                        pos += 1\n                    output.extend(b'\\b' * dist)\n                else:\n                    cost_cuf = len(f'\\x1b[{dist}C')\n                    cost_cr_cuf = 1 + len(f'\\x1b[{col}C')\n                    if cost_cr_cuf < cost_cuf:\n                        output.extend(b'\\r')\n                        output.extend(f'\\x1b[{col}C'.encode())\n                    else:\n                        output.extend(f'\\x1b[{dist}C'.encode())\n            cur_col = col\n    \n    for frame in frames:\n        i = 0\n        while i < width * height:\n            if prev_frame[i] != frame[i]:\n                start_row = i // width\n                start_col = i % width\n                move_to(start_row, start_col, frame)\n                while i < width * height and prev_frame[i] != frame[i]:\n                    output.append(frame[i])\n                    i += 1\n                    cur_col += 1\n                    if cur_col >= width:\n                        cur_col = 0\n                        cur_row += 1\n            else:\n                i += 1\n        output.append(0x1e)\n        prev_frame = frame\n    \n    sys.stdout.buffer.write(output)\n\nif __name__ == '__main__':\n    main()\nENDOFFILE\n",
      "duration": 0.5
    },
    {
      "keystrokes": "python3 /app/termzip_ansi.py /app/frames.tza | wc -c\n",
      "duration": 2.0
    }
  ]
}
```