INIT
WANTSTATE

!DA
RESET
PUSH "\e[c"
  output "\e[?1;2c"

!DSR
RESET
PUSH "\e[5n"
  output "\e[0n"

!CPR
PUSH "\e[6n"
  output "\e[1;1R"
PUSH "\e[10;10H\e[6n"
  output "\e[10;10R"

!DECCPR
PUSH "\e[?6n"
  output "\e[?10;10R"

!DECRQSS on DECSCUSR
PUSH "\e[3 q"
PUSH "\eP\$q q\e\\"
  output "\eP1\$r3 q\e\\"

!DECRQSS on SGR
PUSH "\e[1;5;7m"
PUSH "\eP\$qm\e\\"
  output "\eP1\$r1;5;7m\e\\"

!DECRQSS on SGR ANSI colours
PUSH "\e[0;31;42m"
PUSH "\eP\$qm\e\\"
  output "\eP1\$r31;42m\e\\"

!DECRQSS on SGR ANSI hi-bright colours
PUSH "\e[0;93;104m"
PUSH "\eP\$qm\e\\"
  output "\eP1\$r93;104m\e\\"

!DECRQSS on SGR 256-palette colours
PUSH "\e[0;38:5:56;48:5:78m"
PUSH "\eP\$qm\e\\"
  output "\eP1\$r38:5:56;48:5:78m\e\\"

!DECRQSS on SGR RGB8 colours
PUSH "\e[0;38:2:24:68:112;48:2:13:57:101m"
PUSH "\eP\$qm\e\\"
  output "\eP1\$r38:2:24:68:112;48:2:13:57:101m\e\\"

!S8C1T on DSR
PUSH "\e G"
PUSH "\e[5n"
  output "\x{9b}0n"
PUSH "\e F"

!Truncation on attempted buffer overflow
PUSH "\e[6n" x 30
  output "\e[10;10R" x 24
