%%HP: T(3)A(R)F(.);
DIR
  VIEWRF
    \<< ERASE PICT {
# 0d # 0d } ROT RFU
REPL { # 0d # 0d }
PVIEW 0 WAIT DROP
    \>>
  VIEWIT
    \<< RCLF SWAP -55
SF -40 CF OBJ\-> 1 -
\->LIST SWAP 1
VIEWPAGE
      WHILE 0 WAIT
DUP 11.1 \=/
      REPEAT
        CASE DUP
12.1 ==
          THEN DROP
JUMP
          END DUP
22.1 ==
          THEN
DROP2 \-> A B C D
            \<< 1 SF
TEXT HALT 1 CF A B
C D VIEWPAGE
            \>>
          END DUP
51.1 ==
          THEN
HELPSCR DROP2
VIEWPAGE
          END DUP
13.1 ==
          THEN DROP
1 DOATTACH
          END DUP
14.1 ==
          THEN DROP
2 DOATTACH
          END DUP
15.1 ==
          THEN DROP
3 DOATTACH
          END DUP
16.1 ==
          THEN DROP
4 DOATTACH
          END DUP
25.1 ==
          THEN DROP
PGUP
          END DUP
35.1 ==
          THEN DROP
PGDN
          END 1
          THEN DROP
          END
        END
      END 5 DROPN
STOF
    \>>
  HELPSCR
    \<< { "A-EXIT"
"B-JUMP"
"C,D,E,F-RUN ATTACHED PROGRAM"
"H-HALT"
"ENTER-HELP" }
PUTPAGE { # 0d # 0d
} PVIEW 0 WAIT DROP
    \>>
  DOATTACH
    \<< \-> A B C D E F
      \<< F E TEXT
EVAL A B C D
VIEWPAGE
      \>>
    \>>
  PGDN
    \<< DROP 1 +
VIEWPAGE
    \>>
  PGUP
    \<< DROP 1 -
VIEWPAGE
    \>>
  JUMP
    \<< DROP2 "PAGE:"
"" INPUT OBJ\->
VIEWPAGE
    \>>
  VIEWPAGE
    \<< 3 DUPN
      IFERR GET
      THEN
      ELSE OBJ\-> 1 +
ROLLD SUB PUTPAGE {
# 0d # 0d } PVIEW
      END
    \>>
  PUTPAGE
    \<< ERASE DUP
SIZE 1 - 1 0 ROT
      FOR J GETI
# 0d J # 6d * 2
\->LIST PICT SWAP ROT
1 \->GROB REPL
      NEXT DROP
DROP
    \>>
END
