packages feed

symantic-parser-0.1.0.20210201: test/Golden/Machine/nandlang.dump

push (\u1 -> (\u2 -> (\u3 -> (\u4 -> (\u5 -> u4)))))
<hidden>:
| push (\u1 -> (\u2 -> (\u3 -> u3)))
| <hidden>:
| | push Term
| | ret
| call <hidden>
| lift (\u1 -> (\u2 -> u1 u2))
| <hidden>:
| | catchFail
| |   <try>
| |   | push (\u1 -> (\u2 -> (\u3 -> u2 u3)))
| |   | <hidden>:
| |   | | lift (\u1 -> (\u2 -> u1 u2))
| |   | | call <hidden>
| |   | | lift (\u1 -> (\u2 -> u1 u2))
| |   | | popFail
| |   | | ret
| |   | catchFail
| |   |   <try>
| |   |   | push (\u1 -> (\u2 -> Term))
| |   |   | <hidden>:
| |   |   | | push (\u1 -> (\u2 -> u2))
| |   |   | | read Term
| |   |   | | lift (\u1 -> (\u2 -> u1 u2))
| |   |   | | call <hidden>
| |   |   | | lift (\u1 -> (\u2 -> u1 u2))
| |   |   | | ret
| |   |   | call <hidden>
| |   |   | lift (\u1 -> (\u2 -> u1 u2))
| |   |   | <hidden>:
| |   |   | | catchFail
| |   |   | |   <try>
| |   |   | |   | push (\u1 -> (\u2 -> (\u3 -> u2 u3)))
| |   |   | |   | call <hidden>
| |   |   | |   | lift (\u1 -> (\u2 -> u1 u2))
| |   |   | |   | call <hidden>
| |   |   | |   | lift (\u1 -> (\u2 -> u1 u2))
| |   |   | |   | popFail
| |   |   | |   | ret
| |   |   | |   <handler>
| |   |   | |     pushInput
| |   |   | |     lift Term
| |   |   | |     choices [(\u1 -> u1)]
| |   |   | |       <branch>
| |   |   | |       | push (\u1 -> u1)
| |   |   | |       | ret
| |   |   | |       <default>
| |   |   | |         fail
| |   |   | call <hidden>
| |   |   | lift (\u1 -> (\u2 -> u1 u2))
| |   |   | popFail
| |   |   | refJoin <hidden>
| |   |   <handler>
| |   |     pushInput
| |   |     lift Term
| |   |     choices [(\u1 -> u1)]
| |   |       <branch>
| |   |       | push (\u1 -> (\u2 -> (\u3 -> (\u4 -> (\u5 -> u5)))))
| |   |       | catchFail
| |   |       |   <try>
| |   |       |   | push (\u1 -> (\u2 -> '/' : ('/' : Term)))
| |   |       |   | read ('/' ==)
| |   |       |   | lift (\u1 -> (\u2 -> u1 u2))
| |   |       |   | read ('/' ==)
| |   |       |   | lift (\u1 -> (\u2 -> u1 u2))
| |   |       |   | popFail
| |   |       |   | lift (\u1 -> (\u2 -> u1 u2))
| |   |       |   | call <hidden>
| |   |       |   | lift (\u1 -> (\u2 -> u1 u2))
| |   |       |   | <hidden>:
| |   |       |   | | catchFail
| |   |       |   | |   <try>
| |   |       |   | |   | push (\u1 -> (\u2 -> (\u3 -> u2 u3)))
| |   |       |   | |   | read Term
| |   |       |   | |   | lift (\u1 -> (\u2 -> u1 u2))
| |   |       |   | |   | call <hidden>
| |   |       |   | |   | lift (\u1 -> (\u2 -> u1 u2))
| |   |       |   | |   | popFail
| |   |       |   | |   | ret
| |   |       |   | |   <handler>
| |   |       |   | |     pushInput
| |   |       |   | |     lift Term
| |   |       |   | |     choices [(\u1 -> u1)]
| |   |       |   | |       <branch>
| |   |       |   | |       | push (\u1 -> u1)
| |   |       |   | |       | ret
| |   |       |   | |       <default>
| |   |       |   | |         fail
| |   |       |   | call <hidden>
| |   |       |   | lift (\u1 -> (\u2 -> u1 u2))
| |   |       |   | call <hidden>
| |   |       |   | lift (\u1 -> (\u2 -> u1 u2))
| |   |       |   | call <hidden>
| |   |       |   | lift (\u1 -> (\u2 -> u1 u2))
| |   |       |   | refJoin <hidden>
| |   |       |   <handler>
| |   |       |     loadInput
| |   |       |     fail
| |   |       <default>
| |   |         fail
| |   <handler>
| |     pushInput
| |     lift Term
| |     choices [(\u1 -> u1)]
| |       <branch>
| |       | push (\u1 -> u1)
| |       | ret
| |       <default>
| |         fail
| call <hidden>
| lift (\u1 -> (\u2 -> u1 u2))
| call <hidden>
| lift (\u1 -> (\u2 -> u1 u2))
| ret
call <hidden>
lift (\u1 -> (\u2 -> u1 u2))
call <hidden>
lift (\u1 -> (\u2 -> u1 u2))
<hidden>:
| catchFail
|   <try>
|   | push (\u1 -> (\u2 -> (\u3 -> (\u4 -> (\u5 -> (\u6 -> (\u7 -> (\u8 -> (\u9 -> (\u10 -> u9 u10))))))))))
|   | catchFail
|   |   <try>
|   |   | push (\u1 -> (\u2 -> u2))
|   |   | catchFail
|   |   |   <try>
|   |   |   | push (\u1 -> (\u2 -> (\u3 -> (\u4 -> (\u5 -> (\u6 -> (\u7 -> (\u8 -> (\u9 -> 'f' : ('u' : ('n' : ('c' : ('t' : ('i' : ('o' : ('n' : u9))))))))))))))))
|   |   |   | read ('f' ==)
|   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | read ('u' ==)
|   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | read ('n' ==)
|   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | read ('c' ==)
|   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | read ('t' ==)
|   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | read ('i' ==)
|   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | read ('o' ==)
|   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | read ('n' ==)
|   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | <hidden>:
|   |   |   | | push Term
|   |   |   | | ret
|   |   |   | call <hidden>
|   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | popFail
|   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | <hidden>:
|   |   |   | | catchFail
|   |   |   | |   <try>
|   |   |   | |   | pushInput
|   |   |   | |   | read Term
|   |   |   | |   | pop
|   |   |   | |   | popFail
|   |   |   | |   | loadInput
|   |   |   | |   | fail
|   |   |   | |   <handler>
|   |   |   | |     loadInput
|   |   |   | |     push Term
|   |   |   | |     ret
|   |   |   | call <hidden>
|   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | popFail
|   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | call <hidden>
|   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | <hidden>:
|   |   |   | | push (\u1 -> (\u2 -> u2))
|   |   |   | | catchFail
|   |   |   | |   <try>
|   |   |   | |   | push (\u1 -> (\u2 -> (\u3 -> (\u4 -> u4))))
|   |   |   | |   | read Term
|   |   |   | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | call <hidden>
|   |   |   | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | <hidden>:
|   |   |   | |   | | catchFail
|   |   |   | |   | |   <try>
|   |   |   | |   | |   | push (\u1 -> (\u2 -> (\u3 -> u2 u3)))
|   |   |   | |   | |   | read Term
|   |   |   | |   | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | |   | call <hidden>
|   |   |   | |   | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | |   | popFail
|   |   |   | |   | |   | ret
|   |   |   | |   | |   <handler>
|   |   |   | |   | |     pushInput
|   |   |   | |   | |     lift Term
|   |   |   | |   | |     choices [(\u1 -> u1)]
|   |   |   | |   | |       <branch>
|   |   |   | |   | |       | push (\u1 -> u1)
|   |   |   | |   | |       | ret
|   |   |   | |   | |       <default>
|   |   |   | |   | |         fail
|   |   |   | |   | call <hidden>
|   |   |   | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | call <hidden>
|   |   |   | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | popFail
|   |   |   | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | call <hidden>
|   |   |   | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | ret
|   |   |   | |   <handler>
|   |   |   | |     loadInput
|   |   |   | |     fail
|   |   |   | call <hidden>
|   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | <hidden>:
|   |   |   | | push (\u1 -> (\u2 -> '('))
|   |   |   | | read ('(' ==)
|   |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | call <hidden>
|   |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | ret
|   |   |   | call <hidden>
|   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | <hidden>:
|   |   |   | | catchFail
|   |   |   | |   <try>
|   |   |   | |   | push (\u1 -> (\u2 -> (\u3 -> (\u4 -> Term))))
|   |   |   | |   | <hidden>:
|   |   |   | |   | | push (\u1 -> (\u2 -> u2))
|   |   |   | |   | | call <hidden>
|   |   |   | |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | | <hidden>:
|   |   |   | |   | | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | | | ret
|   |   |   | |   | | catchFail
|   |   |   | |   | |   <try>
|   |   |   | |   | |   | push (\u1 -> Term)
|   |   |   | |   | |   | <hidden>:
|   |   |   | |   | |   | | push (\u1 -> (\u2 -> (\u3 -> (\u4 -> (\u5 -> (\u6 -> Term))))))
|   |   |   | |   | |   | | read ('[' ==)
|   |   |   | |   | |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | |   | | call <hidden>
|   |   |   | |   | |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | |   | | <hidden>:
|   |   |   | |   | |   | | | read Term
|   |   |   | |   | |   | | | ret
|   |   |   | |   | |   | | call <hidden>
|   |   |   | |   | |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | |   | | <hidden>:
|   |   |   | |   | |   | | | catchFail
|   |   |   | |   | |   | | |   <try>
|   |   |   | |   | |   | | |   | push (\u1 -> (\u2 -> (\u3 -> u2 u3)))
|   |   |   | |   | |   | | |   | call <hidden>
|   |   |   | |   | |   | | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | |   | | |   | call <hidden>
|   |   |   | |   | |   | | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | |   | | |   | popFail
|   |   |   | |   | |   | | |   | ret
|   |   |   | |   | |   | | |   <handler>
|   |   |   | |   | |   | | |     pushInput
|   |   |   | |   | |   | | |     lift Term
|   |   |   | |   | |   | | |     choices [(\u1 -> u1)]
|   |   |   | |   | |   | | |       <branch>
|   |   |   | |   | |   | | |       | push (\u1 -> u1)
|   |   |   | |   | |   | | |       | ret
|   |   |   | |   | |   | | |       <default>
|   |   |   | |   | |   | | |         fail
|   |   |   | |   | |   | | call <hidden>
|   |   |   | |   | |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | |   | | read (']' ==)
|   |   |   | |   | |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | |   | | call <hidden>
|   |   |   | |   | |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | |   | | ret
|   |   |   | |   | |   | call <hidden>
|   |   |   | |   | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | |   | popFail
|   |   |   | |   | |   | refJoin <hidden>
|   |   |   | |   | |   <handler>
|   |   |   | |   | |     pushInput
|   |   |   | |   | |     lift Term
|   |   |   | |   | |     choices [(\u1 -> u1)]
|   |   |   | |   | |       <branch>
|   |   |   | |   | |       | call <hidden>
|   |   |   | |   | |       | refJoin <hidden>
|   |   |   | |   | |       <default>
|   |   |   | |   | |         fail
|   |   |   | |   | call <hidden>
|   |   |   | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | call <hidden>
|   |   |   | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | <hidden>:
|   |   |   | |   | | catchFail
|   |   |   | |   | |   <try>
|   |   |   | |   | |   | push (\u1 -> (\u2 -> (\u3 -> (\u4 -> (\u5 -> (u1 u3) (u4 u5))))))
|   |   |   | |   | |   | <hidden>:
|   |   |   | |   | |   | | push (\u1 -> (\u2 -> u2))
|   |   |   | |   | |   | | ret
|   |   |   | |   | |   | call <hidden>
|   |   |   | |   | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | |   | <hidden>:
|   |   |   | |   | |   | | push (\u1 -> (\u2 -> ','))
|   |   |   | |   | |   | | read (',' ==)
|   |   |   | |   | |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | |   | | call <hidden>
|   |   |   | |   | |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | |   | | ret
|   |   |   | |   | |   | call <hidden>
|   |   |   | |   | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | |   | call <hidden>
|   |   |   | |   | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | |   | call <hidden>
|   |   |   | |   | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | |   | popFail
|   |   |   | |   | |   | ret
|   |   |   | |   | |   <handler>
|   |   |   | |   | |     pushInput
|   |   |   | |   | |     lift Term
|   |   |   | |   | |     choices [(\u1 -> u1)]
|   |   |   | |   | |       <branch>
|   |   |   | |   | |       | push (\u1 -> u1)
|   |   |   | |   | |       | ret
|   |   |   | |   | |       <default>
|   |   |   | |   | |         fail
|   |   |   | |   | call <hidden>
|   |   |   | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | call <hidden>
|   |   |   | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | |   | popFail
|   |   |   | |   | ret
|   |   |   | |   <handler>
|   |   |   | |     pushInput
|   |   |   | |     lift Term
|   |   |   | |     choices [(\u1 -> u1)]
|   |   |   | |       <branch>
|   |   |   | |       | jump <hidden>
|   |   |   | |       <default>
|   |   |   | |         fail
|   |   |   | call <hidden>
|   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | <hidden>:
|   |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | <hidden>:
|   |   |   | | | push (\u1 -> (\u2 -> ')'))
|   |   |   | | | read (')' ==)
|   |   |   | | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | call <hidden>
|   |   |   | | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | ret
|   |   |   | | call <hidden>
|   |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | <hidden>:
|   |   |   | | | push (\u1 -> (\u2 -> (\u3 -> (\u4 -> (\u5 -> (\u6 -> (\u7 -> u5)))))))
|   |   |   | | | read ('{' ==)
|   |   |   | | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | call <hidden>
|   |   |   | | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | call <hidden>
|   |   |   | | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | <hidden>:
|   |   |   | | | | catchFail
|   |   |   | | | |   <try>
|   |   |   | | | |   | push (\u1 -> (\u2 -> (\u3 -> u2 u3)))
|   |   |   | | | |   | <hidden>:
|   |   |   | | | |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   | | call <hidden>
|   |   |   | | | |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   | | popFail
|   |   |   | | | |   | | ret
|   |   |   | | | |   | catchFail
|   |   |   | | | |   |   <try>
|   |   |   | | | |   |   | push (\u1 -> (\u2 -> (\u3 -> (\u4 -> (\u5 -> u5)))))
|   |   |   | | | |   |   | catchFail
|   |   |   | | | |   |   |   <try>
|   |   |   | | | |   |   |   | push (\u1 -> (\u2 -> u2))
|   |   |   | | | |   |   |   | catchFail
|   |   |   | | | |   |   |   |   <try>
|   |   |   | | | |   |   |   |   | push (\u1 -> (\u2 -> (\u3 -> 'i' : ('f' : u3))))
|   |   |   | | | |   |   |   |   | read ('i' ==)
|   |   |   | | | |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | read ('f' ==)
|   |   |   | | | |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | call <hidden>
|   |   |   | | | |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | popFail
|   |   |   | | | |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | call <hidden>
|   |   |   | | | |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | popFail
|   |   |   | | | |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | call <hidden>
|   |   |   | | | |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | <hidden>:
|   |   |   | | | |   |   |   |   | | push (\u1 -> (\u2 -> (\u3 -> (\u4 -> u4))))
|   |   |   | | | |   |   |   |   | | <hidden>:
|   |   |   | | | |   |   |   |   | | | catchFail
|   |   |   | | | |   |   |   |   | | |   <try>
|   |   |   | | | |   |   |   |   | | |   | push (\u1 -> (\u2 -> u2))
|   |   |   | | | |   |   |   |   | | |   | <hidden>:
|   |   |   | | | |   |   |   |   | | |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |   | | call <hidden>
|   |   |   | | | |   |   |   |   | | |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |   | | popFail
|   |   |   | | | |   |   |   |   | | |   | | ret
|   |   |   | | | |   |   |   |   | | |   | catchFail
|   |   |   | | | |   |   |   |   | | |   |   <try>
|   |   |   | | | |   |   |   |   | | |   |   | push (\u1 -> '0')
|   |   |   | | | |   |   |   |   | | |   |   | read ('0' ==)
|   |   |   | | | |   |   |   |   | | |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |   |   | popFail
|   |   |   | | | |   |   |   |   | | |   |   | refJoin <hidden>
|   |   |   | | | |   |   |   |   | | |   |   <handler>
|   |   |   | | | |   |   |   |   | | |   |     pushInput
|   |   |   | | | |   |   |   |   | | |   |     lift Term
|   |   |   | | | |   |   |   |   | | |   |     choices [(\u1 -> u1)]
|   |   |   | | | |   |   |   |   | | |   |       <branch>
|   |   |   | | | |   |   |   |   | | |   |       | push (\u1 -> '1')
|   |   |   | | | |   |   |   |   | | |   |       | read ('1' ==)
|   |   |   | | | |   |   |   |   | | |   |       | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |   |       | refJoin <hidden>
|   |   |   | | | |   |   |   |   | | |   |       <default>
|   |   |   | | | |   |   |   |   | | |   |         fail
|   |   |   | | | |   |   |   |   | | |   <handler>
|   |   |   | | | |   |   |   |   | | |     pushInput
|   |   |   | | | |   |   |   |   | | |     lift Term
|   |   |   | | | |   |   |   |   | | |     choices [(\u1 -> u1)]
|   |   |   | | | |   |   |   |   | | |       <branch>
|   |   |   | | | |   |   |   |   | | |       | catchFail
|   |   |   | | | |   |   |   |   | | |       |   <try>
|   |   |   | | | |   |   |   |   | | |       |   | push (\u1 -> (\u2 -> (\u3 -> (\u4 -> u2))))
|   |   |   | | | |   |   |   |   | | |       |   | read ('\'' ==)
|   |   |   | | | |   |   |   |   | | |       |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |   | <hidden>:
|   |   |   | | | |   |   |   |   | | |       |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |   | | read ('\'' ==)
|   |   |   | | | |   |   |   |   | | |       |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |   | | call <hidden>
|   |   |   | | | |   |   |   |   | | |       |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |   | | popFail
|   |   |   | | | |   |   |   |   | | |       |   | | ret
|   |   |   | | | |   |   |   |   | | |       |   | catchFail
|   |   |   | | | |   |   |   |   | | |       |   |   <try>
|   |   |   | | | |   |   |   |   | | |       |   |   | push (\u1 -> (\u2 -> u2))
|   |   |   | | | |   |   |   |   | | |       |   |   | read Term
|   |   |   | | | |   |   |   |   | | |       |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |   |   | call <hidden>
|   |   |   | | | |   |   |   |   | | |       |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |   |   | popFail
|   |   |   | | | |   |   |   |   | | |       |   |   | refJoin <hidden>
|   |   |   | | | |   |   |   |   | | |       |   |   <handler>
|   |   |   | | | |   |   |   |   | | |       |   |     pushInput
|   |   |   | | | |   |   |   |   | | |       |   |     lift Term
|   |   |   | | | |   |   |   |   | | |       |   |     choices [(\u1 -> u1)]
|   |   |   | | | |   |   |   |   | | |       |   |       <branch>
|   |   |   | | | |   |   |   |   | | |       |   |       | push (\u1 -> (\u2 -> (\u3 -> u3)))
|   |   |   | | | |   |   |   |   | | |       |   |       | read ('\\' ==)
|   |   |   | | | |   |   |   |   | | |       |   |       | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |   |       | read Term
|   |   |   | | | |   |   |   |   | | |       |   |       | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |   |       | call <hidden>
|   |   |   | | | |   |   |   |   | | |       |   |       | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |   |       | refJoin <hidden>
|   |   |   | | | |   |   |   |   | | |       |   |       <default>
|   |   |   | | | |   |   |   |   | | |       |   |         fail
|   |   |   | | | |   |   |   |   | | |       |   <handler>
|   |   |   | | | |   |   |   |   | | |       |     pushInput
|   |   |   | | | |   |   |   |   | | |       |     lift Term
|   |   |   | | | |   |   |   |   | | |       |     choices [(\u1 -> u1)]
|   |   |   | | | |   |   |   |   | | |       |       <branch>
|   |   |   | | | |   |   |   |   | | |       |       | push (\u1 -> (\u2 -> u2))
|   |   |   | | | |   |   |   |   | | |       |       | call <hidden>
|   |   |   | | | |   |   |   |   | | |       |       | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |       | <hidden>:
|   |   |   | | | |   |   |   |   | | |       |       | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |       | | ret
|   |   |   | | | |   |   |   |   | | |       |       | catchFail
|   |   |   | | | |   |   |   |   | | |       |       |   <try>
|   |   |   | | | |   |   |   |   | | |       |       |   | push (\u1 -> Term)
|   |   |   | | | |   |   |   |   | | |       |       |   | <hidden>:
|   |   |   | | | |   |   |   |   | | |       |       |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |       |   | | popFail
|   |   |   | | | |   |   |   |   | | |       |       |   | | refJoin <hidden>
|   |   |   | | | |   |   |   |   | | |       |       |   | catchFail
|   |   |   | | | |   |   |   |   | | |       |       |   |   <try>
|   |   |   | | | |   |   |   |   | | |       |       |   |   | push (\u1 -> (\u2 -> (\u3 -> u2)))
|   |   |   | | | |   |   |   |   | | |       |       |   |   | call <hidden>
|   |   |   | | | |   |   |   |   | | |       |       |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |       |   |   | <hidden>:
|   |   |   | | | |   |   |   |   | | |       |       |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |       |   |   | | call <hidden>
|   |   |   | | | |   |   |   |   | | |       |       |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |       |   |   | | popFail
|   |   |   | | | |   |   |   |   | | |       |       |   |   | | refJoin <hidden>
|   |   |   | | | |   |   |   |   | | |       |       |   |   | catchFail
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   <try>
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | push (\u1 -> (\u2 -> (\u3 -> (\u4 -> Term))))
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | call <hidden>
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | call <hidden>
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | <hidden>:
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | | catchFail
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | |   <try>
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | |   | push (\u1 -> (\u2 -> (\u3 -> (\u4 -> (\u5 -> (u1 u3) (u4 u5))))))
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | |   | call <hidden>
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | |   | call <hidden>
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | |   | call <hidden>
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | |   | call <hidden>
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | |   | popFail
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | |   | ret
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | |   <handler>
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | |     pushInput
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | |     lift Term
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | |     choices [(\u1 -> u1)]
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | |       <branch>
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | |       | push (\u1 -> u1)
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | |       | ret
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | |       <default>
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | |         fail
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | call <hidden>
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | call <hidden>
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | popFail
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   | refJoin <hidden>
|   |   |   | | | |   |   |   |   | | |       |       |   |   |   <handler>
|   |   |   | | | |   |   |   |   | | |       |       |   |   |     pushInput
|   |   |   | | | |   |   |   |   | | |       |       |   |   |     lift Term
|   |   |   | | | |   |   |   |   | | |       |       |   |   |     choices [(\u1 -> u1)]
|   |   |   | | | |   |   |   |   | | |       |       |   |   |       <branch>
|   |   |   | | | |   |   |   |   | | |       |       |   |   |       | call <hidden>
|   |   |   | | | |   |   |   |   | | |       |       |   |   |       | refJoin <hidden>
|   |   |   | | | |   |   |   |   | | |       |       |   |   |       <default>
|   |   |   | | | |   |   |   |   | | |       |       |   |   |         fail
|   |   |   | | | |   |   |   |   | | |       |       |   |   <handler>
|   |   |   | | | |   |   |   |   | | |       |       |   |     pushInput
|   |   |   | | | |   |   |   |   | | |       |       |   |     lift Term
|   |   |   | | | |   |   |   |   | | |       |       |   |     choices [(\u1 -> u1)]
|   |   |   | | | |   |   |   |   | | |       |       |   |       <branch>
|   |   |   | | | |   |   |   |   | | |       |       |   |       | call <hidden>
|   |   |   | | | |   |   |   |   | | |       |       |   |       | refJoin <hidden>
|   |   |   | | | |   |   |   |   | | |       |       |   |       <default>
|   |   |   | | | |   |   |   |   | | |       |       |   |         fail
|   |   |   | | | |   |   |   |   | | |       |       |   <handler>
|   |   |   | | | |   |   |   |   | | |       |       |     pushInput
|   |   |   | | | |   |   |   |   | | |       |       |     lift Term
|   |   |   | | | |   |   |   |   | | |       |       |     choices [(\u1 -> u1)]
|   |   |   | | | |   |   |   |   | | |       |       |       <branch>
|   |   |   | | | |   |   |   |   | | |       |       |       | call <hidden>
|   |   |   | | | |   |   |   |   | | |       |       |       | refJoin <hidden>
|   |   |   | | | |   |   |   |   | | |       |       |       <default>
|   |   |   | | | |   |   |   |   | | |       |       |         fail
|   |   |   | | | |   |   |   |   | | |       |       <default>
|   |   |   | | | |   |   |   |   | | |       |         fail
|   |   |   | | | |   |   |   |   | | |       <default>
|   |   |   | | | |   |   |   |   | | |         fail
|   |   |   | | | |   |   |   |   | | call <hidden>
|   |   |   | | | |   |   |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | call <hidden>
|   |   |   | | | |   |   |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | <hidden>:
|   |   |   | | | |   |   |   |   | | | catchFail
|   |   |   | | | |   |   |   |   | | |   <try>
|   |   |   | | | |   |   |   |   | | |   | push (\u1 -> (\u2 -> (\u3 -> (\u4 -> (\u5 -> u4 u5)))))
|   |   |   | | | |   |   |   |   | | |   | read ('!' ==)
|   |   |   | | | |   |   |   |   | | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |   | call <hidden>
|   |   |   | | | |   |   |   |   | | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |   | call <hidden>
|   |   |   | | | |   |   |   |   | | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |   | call <hidden>
|   |   |   | | | |   |   |   |   | | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | |   | popFail
|   |   |   | | | |   |   |   |   | | |   | ret
|   |   |   | | | |   |   |   |   | | |   <handler>
|   |   |   | | | |   |   |   |   | | |     pushInput
|   |   |   | | | |   |   |   |   | | |     lift Term
|   |   |   | | | |   |   |   |   | | |     choices [(\u1 -> u1)]
|   |   |   | | | |   |   |   |   | | |       <branch>
|   |   |   | | | |   |   |   |   | | |       | push (\u1 -> u1)
|   |   |   | | | |   |   |   |   | | |       | ret
|   |   |   | | | |   |   |   |   | | |       <default>
|   |   |   | | | |   |   |   |   | | |         fail
|   |   |   | | | |   |   |   |   | | call <hidden>
|   |   |   | | | |   |   |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | call <hidden>
|   |   |   | | | |   |   |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | ret
|   |   |   | | | |   |   |   |   | call <hidden>
|   |   |   | | | |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | call <hidden>
|   |   |   | | | |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | <hidden>:
|   |   |   | | | |   |   |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   | | popFail
|   |   |   | | | |   |   |   |   | | refJoin <hidden>
|   |   |   | | | |   |   |   |   | catchFail
|   |   |   | | | |   |   |   |   |   <try>
|   |   |   | | | |   |   |   |   |   | push (\u1 -> (\u2 -> (\u3 -> Term)))
|   |   |   | | | |   |   |   |   |   | catchFail
|   |   |   | | | |   |   |   |   |   |   <try>
|   |   |   | | | |   |   |   |   |   |   | push (\u1 -> (\u2 -> u2))
|   |   |   | | | |   |   |   |   |   |   | catchFail
|   |   |   | | | |   |   |   |   |   |   |   <try>
|   |   |   | | | |   |   |   |   |   |   |   | push (\u1 -> (\u2 -> (\u3 -> (\u4 -> (\u5 -> 'e' : ('l' : ('s' : ('e' : u5))))))))
|   |   |   | | | |   |   |   |   |   |   |   | read ('e' ==)
|   |   |   | | | |   |   |   |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   |   |   |   | read ('l' ==)
|   |   |   | | | |   |   |   |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   |   |   |   | read ('s' ==)
|   |   |   | | | |   |   |   |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   |   |   |   | read ('e' ==)
|   |   |   | | | |   |   |   |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   |   |   |   | call <hidden>
|   |   |   | | | |   |   |   |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   |   |   |   | popFail
|   |   |   | | | |   |   |   |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   |   |   |   | call <hidden>
|   |   |   | | | |   |   |   |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   |   |   |   | popFail
|   |   |   | | | |   |   |   |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   |   |   |   | call <hidden>
|   |   |   | | | |   |   |   |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   |   |   |   | call <hidden>
|   |   |   | | | |   |   |   |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |   |   |   |   |   |   | popFail
|   |   |   | | | |   |   |   |   |   |   |   | refJoin <hidden>
|   |   |   | | | |   |   |   |   |   |   |   <handler>
|   |   |   | | | |   |   |   |   |   |   |     loadInput
|   |   |   | | | |   |   |   |   |   |   |     fail
|   |   |   | | | |   |   |   |   |   |   <handler>
|   |   |   | | | |   |   |   |   |   |     loadInput
|   |   |   | | | |   |   |   |   |   |     fail
|   |   |   | | | |   |   |   |   |   <handler>
|   |   |   | | | |   |   |   |   |     pushInput
|   |   |   | | | |   |   |   |   |     lift Term
|   |   |   | | | |   |   |   |   |     choices [(\u1 -> u1)]
|   |   |   | | | |   |   |   |   |       <branch>
|   |   |   | | | |   |   |   |   |       | call <hidden>
|   |   |   | | | |   |   |   |   |       | refJoin <hidden>
|   |   |   | | | |   |   |   |   |       <default>
|   |   |   | | | |   |   |   |   |         fail
|   |   |   | | | |   |   |   |   <handler>
|   |   |   | | | |   |   |   |     loadInput
|   |   |   | | | |   |   |   |     fail
|   |   |   | | | |   |   |   <handler>
|   |   |   | | | |   |   |     loadInput
|   |   |   | | | |   |   |     fail
|   |   |   | | | |   |   <handler>
|   |   |   | | | |   |     pushInput
|   |   |   | | | |   |     lift Term
|   |   |   | | | |   |     choices [(\u1 -> u1)]
|   |   |   | | | |   |       <branch>
|   |   |   | | | |   |       | catchFail
|   |   |   | | | |   |       |   <try>
|   |   |   | | | |   |       |   | push (\u1 -> (\u2 -> (\u3 -> (\u4 -> u4))))
|   |   |   | | | |   |       |   | catchFail
|   |   |   | | | |   |       |   |   <try>
|   |   |   | | | |   |       |   |   | push (\u1 -> (\u2 -> u2))
|   |   |   | | | |   |       |   |   | catchFail
|   |   |   | | | |   |       |   |   |   <try>
|   |   |   | | | |   |       |   |   |   | push (\u1 -> (\u2 -> (\u3 -> (\u4 -> (\u5 -> (\u6 -> 'w' : ('h' : ('i' : ('l' : ('e' : u6))))))))))
|   |   |   | | | |   |       |   |   |   | read ('w' ==)
|   |   |   | | | |   |       |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |   |   |   | read ('h' ==)
|   |   |   | | | |   |       |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |   |   |   | read ('i' ==)
|   |   |   | | | |   |       |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |   |   |   | read ('l' ==)
|   |   |   | | | |   |       |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |   |   |   | read ('e' ==)
|   |   |   | | | |   |       |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |   |   |   | call <hidden>
|   |   |   | | | |   |       |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |   |   |   | popFail
|   |   |   | | | |   |       |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |   |   |   | call <hidden>
|   |   |   | | | |   |       |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |   |   |   | popFail
|   |   |   | | | |   |       |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |   |   |   | call <hidden>
|   |   |   | | | |   |       |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |   |   |   | call <hidden>
|   |   |   | | | |   |       |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |   |   |   | call <hidden>
|   |   |   | | | |   |       |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |   |   |   | popFail
|   |   |   | | | |   |       |   |   |   | refJoin <hidden>
|   |   |   | | | |   |       |   |   |   <handler>
|   |   |   | | | |   |       |   |   |     loadInput
|   |   |   | | | |   |       |   |   |     fail
|   |   |   | | | |   |       |   |   <handler>
|   |   |   | | | |   |       |   |     loadInput
|   |   |   | | | |   |       |   |     fail
|   |   |   | | | |   |       |   <handler>
|   |   |   | | | |   |       |     pushInput
|   |   |   | | | |   |       |     lift Term
|   |   |   | | | |   |       |     choices [(\u1 -> u1)]
|   |   |   | | | |   |       |       <branch>
|   |   |   | | | |   |       |       | catchFail
|   |   |   | | | |   |       |       |   <try>
|   |   |   | | | |   |       |       |   | catchFail
|   |   |   | | | |   |       |       |   |   <try>
|   |   |   | | | |   |       |       |   |   | push (\u1 -> (\u2 -> (\u3 -> (\u4 -> (\u5 -> (\u6 -> (\u7 -> (\u8 -> (\u9 -> (\u10 -> (\u11 -> (\u12 -> u11))))))))))))
|   |   |   | | | |   |       |       |   |   | <hidden>:
|   |   |   | | | |   |       |       |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   | | call <hidden>
|   |   |   | | | |   |       |       |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   | | call <hidden>
|   |   |   | | | |   |       |       |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   | | <hidden>:
|   |   |   | | | |   |       |       |   |   | | | catchFail
|   |   |   | | | |   |       |       |   |   | | |   <try>
|   |   |   | | | |   |       |       |   |   | | |   | push (\u1 -> (\u2 -> (\u3 -> (\u4 -> (\u5 -> (u1 u3) (u4 u5))))))
|   |   |   | | | |   |       |       |   |   | | |   | call <hidden>
|   |   |   | | | |   |       |       |   |   | | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   | | |   | call <hidden>
|   |   |   | | | |   |       |       |   |   | | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   | | |   | call <hidden>
|   |   |   | | | |   |       |       |   |   | | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   | | |   | call <hidden>
|   |   |   | | | |   |       |       |   |   | | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   | | |   | popFail
|   |   |   | | | |   |       |       |   |   | | |   | ret
|   |   |   | | | |   |       |       |   |   | | |   <handler>
|   |   |   | | | |   |       |       |   |   | | |     pushInput
|   |   |   | | | |   |       |       |   |   | | |     lift Term
|   |   |   | | | |   |       |       |   |   | | |     choices [(\u1 -> u1)]
|   |   |   | | | |   |       |       |   |   | | |       <branch>
|   |   |   | | | |   |       |       |   |   | | |       | push (\u1 -> u1)
|   |   |   | | | |   |       |       |   |   | | |       | ret
|   |   |   | | | |   |       |       |   |   | | |       <default>
|   |   |   | | | |   |       |       |   |   | | |         fail
|   |   |   | | | |   |       |       |   |   | | call <hidden>
|   |   |   | | | |   |       |       |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   | | call <hidden>
|   |   |   | | | |   |       |       |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   | | read ('=' ==)
|   |   |   | | | |   |       |       |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   | | call <hidden>
|   |   |   | | | |   |       |       |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   | | call <hidden>
|   |   |   | | | |   |       |       |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   | | call <hidden>
|   |   |   | | | |   |       |       |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   | | <hidden>:
|   |   |   | | | |   |       |       |   |   | | | catchFail
|   |   |   | | | |   |       |       |   |   | | |   <try>
|   |   |   | | | |   |       |       |   |   | | |   | push (\u1 -> (\u2 -> (\u3 -> (\u4 -> (\u5 -> (u1 u3) (u4 u5))))))
|   |   |   | | | |   |       |       |   |   | | |   | call <hidden>
|   |   |   | | | |   |       |       |   |   | | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   | | |   | call <hidden>
|   |   |   | | | |   |       |       |   |   | | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   | | |   | call <hidden>
|   |   |   | | | |   |       |       |   |   | | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   | | |   | call <hidden>
|   |   |   | | | |   |       |       |   |   | | |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   | | |   | popFail
|   |   |   | | | |   |       |       |   |   | | |   | ret
|   |   |   | | | |   |       |       |   |   | | |   <handler>
|   |   |   | | | |   |       |       |   |   | | |     pushInput
|   |   |   | | | |   |       |       |   |   | | |     lift Term
|   |   |   | | | |   |       |       |   |   | | |     choices [(\u1 -> u1)]
|   |   |   | | | |   |       |       |   |   | | |       <branch>
|   |   |   | | | |   |       |       |   |   | | |       | push (\u1 -> u1)
|   |   |   | | | |   |       |       |   |   | | |       | ret
|   |   |   | | | |   |       |       |   |   | | |       <default>
|   |   |   | | | |   |       |       |   |   | | |         fail
|   |   |   | | | |   |       |       |   |   | | call <hidden>
|   |   |   | | | |   |       |       |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   | | call <hidden>
|   |   |   | | | |   |       |       |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   | | <hidden>:
|   |   |   | | | |   |       |       |   |   | | | push (\u1 -> (\u2 -> ';'))
|   |   |   | | | |   |       |       |   |   | | | read (';' ==)
|   |   |   | | | |   |       |       |   |   | | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   | | | call <hidden>
|   |   |   | | | |   |       |       |   |   | | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   | | | ret
|   |   |   | | | |   |       |       |   |   | | call <hidden>
|   |   |   | | | |   |       |       |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   | | popFail
|   |   |   | | | |   |       |       |   |   | | popFail
|   |   |   | | | |   |       |       |   |   | | refJoin <hidden>
|   |   |   | | | |   |       |       |   |   | catchFail
|   |   |   | | | |   |       |       |   |   |   <try>
|   |   |   | | | |   |       |       |   |   |   | push (\u1 -> (\u2 -> Term))
|   |   |   | | | |   |       |       |   |   |   | catchFail
|   |   |   | | | |   |       |       |   |   |   |   <try>
|   |   |   | | | |   |       |       |   |   |   |   | push (\u1 -> (\u2 -> u2))
|   |   |   | | | |   |       |       |   |   |   |   | catchFail
|   |   |   | | | |   |       |       |   |   |   |   |   <try>
|   |   |   | | | |   |       |       |   |   |   |   |   | push (\u1 -> (\u2 -> (\u3 -> (\u4 -> 'v' : ('a' : ('r' : u4))))))
|   |   |   | | | |   |       |       |   |   |   |   |   | read ('v' ==)
|   |   |   | | | |   |       |       |   |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   |   |   |   | read ('a' ==)
|   |   |   | | | |   |       |       |   |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   |   |   |   | read ('r' ==)
|   |   |   | | | |   |       |       |   |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   |   |   |   | call <hidden>
|   |   |   | | | |   |       |       |   |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   |   |   |   | popFail
|   |   |   | | | |   |       |       |   |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   |   |   |   | call <hidden>
|   |   |   | | | |   |       |       |   |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   |   |   |   | popFail
|   |   |   | | | |   |       |       |   |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   |   |   |   | call <hidden>
|   |   |   | | | |   |       |       |   |   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |   |   |   |   |   | popFail
|   |   |   | | | |   |       |       |   |   |   |   |   | refJoin <hidden>
|   |   |   | | | |   |       |       |   |   |   |   |   <handler>
|   |   |   | | | |   |       |       |   |   |   |   |     loadInput
|   |   |   | | | |   |       |       |   |   |   |   |     fail
|   |   |   | | | |   |       |       |   |   |   |   <handler>
|   |   |   | | | |   |       |       |   |   |   |     loadInput
|   |   |   | | | |   |       |       |   |   |   |     fail
|   |   |   | | | |   |       |       |   |   |   <handler>
|   |   |   | | | |   |       |       |   |   |     pushInput
|   |   |   | | | |   |       |       |   |   |     lift Term
|   |   |   | | | |   |       |       |   |   |     choices [(\u1 -> u1)]
|   |   |   | | | |   |       |       |   |   |       <branch>
|   |   |   | | | |   |       |       |   |   |       | call <hidden>
|   |   |   | | | |   |       |       |   |   |       | refJoin <hidden>
|   |   |   | | | |   |       |       |   |   |       <default>
|   |   |   | | | |   |       |       |   |   |         fail
|   |   |   | | | |   |       |       |   |   <handler>
|   |   |   | | | |   |       |       |   |     loadInput
|   |   |   | | | |   |       |       |   |     fail
|   |   |   | | | |   |       |       |   <handler>
|   |   |   | | | |   |       |       |     pushInput
|   |   |   | | | |   |       |       |     lift Term
|   |   |   | | | |   |       |       |     choices [(\u1 -> u1)]
|   |   |   | | | |   |       |       |       <branch>
|   |   |   | | | |   |       |       |       | push (\u1 -> (\u2 -> u1))
|   |   |   | | | |   |       |       |       | call <hidden>
|   |   |   | | | |   |       |       |       | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |       | call <hidden>
|   |   |   | | | |   |       |       |       | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | |   |       |       |       | refJoin <hidden>
|   |   |   | | | |   |       |       |       <default>
|   |   |   | | | |   |       |       |         fail
|   |   |   | | | |   |       |       <default>
|   |   |   | | | |   |       |         fail
|   |   |   | | | |   |       <default>
|   |   |   | | | |   |         fail
|   |   |   | | | |   <handler>
|   |   |   | | | |     pushInput
|   |   |   | | | |     lift Term
|   |   |   | | | |     choices [(\u1 -> u1)]
|   |   |   | | | |       <branch>
|   |   |   | | | |       | push (\u1 -> u1)
|   |   |   | | | |       | ret
|   |   |   | | | |       <default>
|   |   |   | | | |         fail
|   |   |   | | | call <hidden>
|   |   |   | | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | call <hidden>
|   |   |   | | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | read ('}' ==)
|   |   |   | | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | call <hidden>
|   |   |   | | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | | ret
|   |   |   | | call <hidden>
|   |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | call <hidden>
|   |   |   | | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   | | popFail
|   |   |   | | ret
|   |   |   | catchFail
|   |   |   |   <try>
|   |   |   |   | push (\u1 -> (\u2 -> (\u3 -> Term)))
|   |   |   |   | read (':' ==)
|   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   |   | call <hidden>
|   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   |   | call <hidden>
|   |   |   |   | lift (\u1 -> (\u2 -> u1 u2))
|   |   |   |   | popFail
|   |   |   |   | refJoin <hidden>
|   |   |   |   <handler>
|   |   |   |     pushInput
|   |   |   |     lift Term
|   |   |   |     choices [(\u1 -> u1)]
|   |   |   |       <branch>
|   |   |   |       | call <hidden>
|   |   |   |       | refJoin <hidden>
|   |   |   |       <default>
|   |   |   |         fail
|   |   |   <handler>
|   |   |     loadInput
|   |   |     fail
|   |   <handler>
|   |     loadInput
|   |     fail
|   <handler>
|     pushInput
|     lift Term
|     choices [(\u1 -> u1)]
|       <branch>
|       | push (\u1 -> u1)
|       | ret
|       <default>
|         fail
call <hidden>
lift (\u1 -> (\u2 -> u1 u2))
call <hidden>
lift (\u1 -> (\u2 -> u1 u2))
<hidden>:
| lift (\u1 -> (\u2 -> u1 u2))
| ret
catchFail
  <try>
  | catchFail
  |   <try>
  |   | pushInput
  |   | read (\u1 -> Term)
  |   | pop
  |   | popFail
  |   | loadInput
  |   | fail
  |   <handler>
  |     loadInput
  |     push Term
  |     popFail
  |     refJoin <hidden>
  <handler>
    pushInput
    lift Term
    choices [(\u1 -> u1)]
      <branch>
      | fail
      <default>
        fail