(ASSEMBLE.CLAUSE ( incore 1 interp ) 2
    (execute call 1 interp)
)

(ASSEMBLE.CLAUSE ( call←direct 2 interp ) 32
    (allocate)
    (get.Ai.variable.Yn 1 2)
    (get.Ai.variable.Yn 2 5)
    (put.Ai.variable.Yn 3 4)
    (put.Ai.variable.Yn 2 3)
    (put.Ai.value.Yn 1 2)
    (functor)
    (put.Ai.variable.Yn 4 1)
    (put.Ai.value.Yn 3 5)
    (put.Ai.unsafe.Yn 2 4)
    (put.Ai.unsafe.Yn 1 3)
    (call 5 local←check←predicate 4 si)
    (put.Ai.constant 3 0)
    (put.Ai.value.Yn 2 2)
    (put.Ai.unsafe.Yn 1 1)
    (depart apply 3 si)
)

(ASSEMBLE.CLAUSE ( call 2 interp ) 2
    (execute call←direct 2 interp)
)

(ASSEMBLE.CLAUSE ( call 1 interp ) 31
    (allocate)
    (get.Ai.variable.Yn 1 2)
    (put.Ai.value.Yn 1 2)
    (call 5 check←goal←not←var 1 interp)
    (put.Ai.variable.Yn 2 1)
    (put.Ai.value.Yn 1 2)
    (call 4 transform←body 2 interp)
    (load.choice.point)
    (store.variable.Xn 5)
    (put.Ai.void 4)
    (put.Ai.structure 3 info 1)
    (unify.constant 0)
    (put.Ai.constant 2 0)
    (put.Ai.unsafe.Yn 1 1)
    (depart interpret 5 interp)
)

(ASSEMBLE.CLAUSE ( check←goal←not←var 1 interp ) 11
    (allocate)
    (is.a 1)
    (body.cut)
    (put.Ai.void 2)
    (put.Ai.constant 1 342)
    (call 3 nerror 2 si)
    (fail)
)

(ASSEMBLE.CLAUSE ( check←goal←not←var 1 interp ) 1
    (proceed)
)

(ASSEMBLE.CLAUSE ( %↑ 2 interp ) 4
    (put.Ai.value.Xn 1 2)
    (execute call 1 interp)
)

(ASSEMBLE.CLAUSE ( %$interpreter←hook 2 interp ) 96
    (allocate)
    (get.Ai.variable.Yn 1 1)
    (get.Ai.variable.Yn 2 2)
    (put.Ai.symbol 4 user)
    (put.Ai.void 3)
    (put.Ai.void 2)
    (put.Ai.value.Yn 1 2)
    (call 6 procedure 4 si)
    (put.Ai.variable.Yn 5 3)
    (put.Ai.void 4)
    (put.Ai.void 3)
    (put.Ai.void 2)
    (put.Ai.value.Yn 1 2)
    (call 6 predicate←parts 5 si)
    (load.value.Yn 3)
    (load.pos.word 3)
    (boolean.and)
    (store.variable.Xn 1)
    (load.value.Xn 1)
    (load.pos.word 2)
    (less.than.else 52)
    (put.Ai.value.Yn 5 2)
    (put.Ai.void 4)
    (put.Ai.structure 3 info 1)
    (unify.constant 0)
    (put.Ai.constant 2 0)
    (put.Ai.value.Yn 1 1)
    (depart undefined←trap 5 interp)
    (load.choice.point)
    (store.variable.Xn 1)
    (either 5 81)
    (gettopval QP%.TRACE%.STATE)
    (store.integer 1)
    (load.value.Xn 1)
    (cut.to.choice.point)
    (put.Ai.value.Yn 6 2)
    (put.Ai.nil 5)
    (put.Ai.void 4)
    (put.Ai.structure 3 info 1)
    (unify.constant 0)
    (put.Ai.constant 2 0)
    (put.Ai.value.Yn 1 1)
    (depart interpret←goal 6 interp)
    (or.finally)
    (put.Ai.value.Yn 5 2)
    (put.Ai.void 4)
    (put.Ai.structure 3 info 1)
    (unify.constant 0)
    (put.Ai.constant 2 0)
    (put.Ai.value.Yn 1 1)
    (depart interpreter←debug←trap 5 interp)
)

(ASSEMBLE.CLAUSE ( interpret 5 interp ) 9
    (get.Ai.constant 1 %$VAR)
    (put.Ai.void 2)
    (put.Ai.constant 1 1013)
    (execute nerror 2 si)
)

(ASSEMBLE.CLAUSE ( interpret 5 interp ) 6
    (get.Ai.constant 1 true)
    (get.Ai.value.Xn 4 3)
    (proceed)
)

(ASSEMBLE.CLAUSE ( interpret 5 interp ) 6
    (get.Ai.constant 1 otherwise)
    (get.Ai.value.Xn 4 3)
    (proceed)
)

(ASSEMBLE.CLAUSE ( interpret 5 interp ) 4
    (get.Ai.constant 1 false)
    (fail)
)

(ASSEMBLE.CLAUSE ( interpret 5 interp ) 4
    (get.Ai.constant 1 fail)
    (fail)
)

(ASSEMBLE.CLAUSE ( interpret 5 interp ) 8
    (get.Ai.constant 1 %!)
    (get.Ai.value.Xn 4 3)
    (load.value.Xn 5)
    (cut.to.choice.point)
    (proceed)
)

(ASSEMBLE.CLAUSE ( interpret 5 interp ) 9
    (get.Ai.structure 1 %↑ 2)
    (unify.void 1)
    (unify.variable.Xn 1)
    (load.choice.point)
    (store.variable.Xn 5)
    (execute interpret 5 interp)
)

(ASSEMBLE.CLAUSE ( interpret 5 interp ) 33
    (get.Ai.structure 1 %, 2)
    (unify.variable.Xn 1)
    (allocate)
    (unify.variable.Yn 1)
    (get.Ai.variable.Yn 2 2)
    (get.Ai.variable.Yn 4 4)
    (get.Ai.variable.Yn 5 5)
    (put.Ai.value.Yn 5 5)
    (put.Ai.variable.Yn 4 3)
    (put.Ai.value.Yn 2 2)
    (call 8 interpret 5 interp)
    (put.Ai.value.Yn 5 5)
    (put.Ai.value.Yn 4 4)
    (put.Ai.unsafe.Yn 3 3)
    (put.Ai.value.Yn 2 2)
    (put.Ai.value.Yn 1 1)
    (depart interpret 5 interp)
)

(ASSEMBLE.CLAUSE ( interpret 5 interp ) 34
    (get.Ai.structure 1 %-%> 2)
    (unify.variable.Xn 1)
    (allocate)
    (unify.variable.Yn 1)
    (get.Ai.variable.Yn 2 2)
    (get.Ai.variable.Yn 4 4)
    (get.Ai.variable.Yn 5 5)
    (put.Ai.value.Yn 5 5)
    (put.Ai.variable.Yn 4 3)
    (put.Ai.value.Yn 2 2)
    (call 8 interpret 5 interp)
    (body.cut)
    (put.Ai.value.Yn 5 5)
    (put.Ai.value.Yn 4 4)
    (put.Ai.unsafe.Yn 3 3)
    (put.Ai.value.Yn 2 2)
    (put.Ai.value.Yn 1 1)
    (depart interpret 5 interp)
)

(ASSEMBLE.CLAUSE ( interpret 5 interp ) 39
    (get.Ai.structure 1 %; 2)
    (unify.variable.Xn 1)
    (unify.void 1)
    (get.Ai.structure 1 %-%> 2)
    (unify.variable.Xn 1)
    (allocate)
    (unify.variable.Yn 1)
    (get.Ai.variable.Yn 2 2)
    (get.Ai.variable.Yn 4 4)
    (get.Ai.variable.Yn 5 5)
    (put.Ai.value.Yn 5 5)
    (put.Ai.variable.Yn 4 3)
    (put.Ai.value.Yn 2 2)
    (call 8 interpret 5 interp)
    (body.cut)
    (put.Ai.value.Yn 5 5)
    (put.Ai.value.Yn 4 4)
    (put.Ai.unsafe.Yn 3 3)
    (put.Ai.value.Yn 2 2)
    (put.Ai.value.Yn 1 1)
    (depart interpret 5 interp)
)

(ASSEMBLE.CLAUSE ( interpret 5 interp ) 12
    (get.Ai.structure 1 %; 2)
    (unify.variable.Xn 6)
    (unify.variable.Xn 1)
    (get.Ai.structure 6 %-%> 2)
    (unify.void 2)
    (head.cut)
    (execute interpret 5 interp)
)

(ASSEMBLE.CLAUSE ( interpret 5 interp ) 7
    (get.Ai.structure 1 %; 2)
    (unify.variable.Xn 1)
    (unify.void 1)
    (execute interpret 5 interp)
)

(ASSEMBLE.CLAUSE ( interpret 5 interp ) 7
    (get.Ai.structure 1 %; 2)
    (unify.void 1)
    (unify.variable.Xn 1)
    (execute interpret 5 interp)
)

(ASSEMBLE.CLAUSE ( interpret 5 interp ) 98
    (get.Ai.structure 1 %$goal 2)
    (allocate)
    (unify.variable.Yn 5)
    (unify.variable.Yn 1)
    (get.Ai.variable.Yn 2 2)
    (get.Ai.variable.Yn 3 3)
    (get.Ai.variable.Yn 4 4)
    (put.Ai.variable.Yn 3 7)
    (put.Ai.constant 2 13)
    (put.Ai.value.Yn 1 5)
    (get.word)
    (load.value.Yn 7)
    (load.pos.word 3)
    (boolean.and)
    (store.variable.Yn 6)
    (load.value.Yn 6)
    (load.pos.word 0)
    (equal.to.else 44)
    (put.Ai.value.Yn 5 5)
    (put.Ai.value.Yn 4 4)
    (put.Ai.value.Yn 3 3)
    (put.Ai.value.Yn 2 2)
    (put.Ai.value.Yn 1 1)
    (depart undefined←trap 5 interp)
    (load.choice.point)
    (store.variable.Xn 1)
    (either 9 87)
    (gettopval QP%.TRACE%.STATE)
    (store.integer 1)
    (load.value.Xn 1)
    (cut.to.choice.point)
    (load.value.Yn 6)
    (load.pos.word 1)
    (equal.to.else 74)
    (put.Ai.value.Yn 1 3)
    (get.Ai.value.Yn 1 4)
    (put.Ai.constant 3 0)
    (put.Ai.value.Yn 2 1)
    (put.Ai.value.Yn 1 5)
    (depart apply 3 si)
    (put.Ai.value.Yn 6 5)
    (put.Ai.nil 5)
    (put.Ai.value.Yn 4 4)
    (put.Ai.value.Yn 3 3)
    (put.Ai.value.Yn 2 2)
    (put.Ai.value.Yn 1 1)
    (depart interpret←goal 6 interp)
    (or.finally)
    (put.Ai.value.Yn 5 5)
    (put.Ai.value.Yn 4 4)
    (put.Ai.value.Yn 3 3)
    (put.Ai.value.Yn 2 2)
    (put.Ai.value.Yn 1 1)
    (depart interpreter←debug←trap 5 interp)
)

(ASSEMBLE.CLAUSE ( interpret 5 interp ) 108
    (get.Ai.structure 1 special 1)
    (allocate)
    (unify.variable.Yn 1)
    (get.Ai.variable.Yn 2 2)
    (get.Ai.variable.Yn 3 3)
    (get.Ai.variable.Yn 4 4)
    (get.Ai.variable.Yn 5 6)
    (put.Ai.variable.Yn 3 9)
    (put.Ai.variable.Yn 2 8)
    (put.Ai.value.Yn 1 1)
    (functor)
    (put.Ai.variable.Yn 1 10)
    (call 13 current←module 1 si)
    (put.Ai.variable.Yn 4 5)
    (put.Ai.unsafe.Yn 3 10)
    (put.Ai.unsafe.Yn 2 9)
    (put.Ai.unsafe.Yn 1 8)
    (call 10 find←predicate 4 interp)
    (put.Ai.variable.Yn 5 7)
    (put.Ai.void 4)
    (put.Ai.void 3)
    (put.Ai.void 2)
    (put.Ai.value.Yn 1 5)
    (call 10 predicate←parts 5 si)
    (load.value.Yn 7)
    (load.pos.word 3)
    (boolean.and)
    (store.variable.Xn 1)
    (load.value.Xn 1)
    (load.pos.word 0)
    (equal.to.else 70)
    (put.Ai.value.Yn 5 5)
    (put.Ai.value.Yn 4 4)
    (put.Ai.value.Yn 3 3)
    (put.Ai.value.Yn 2 2)
    (put.Ai.value.Yn 1 1)
    (depart undefined←trap 5 interp)
    (load.choice.point)
    (store.variable.Xn 1)
    (either 9 97)
    (gettopval QP%.TRACE%.STATE)
    (store.integer 1)
    (load.value.Xn 1)
    (cut.to.choice.point)
    (put.Ai.value.Yn 7 6)
    (put.Ai.value.Yn 6 5)
    (put.Ai.nil 5)
    (put.Ai.value.Yn 4 4)
    (put.Ai.value.Yn 3 3)
    (put.Ai.value.Yn 2 2)
    (put.Ai.value.Yn 1 1)
    (depart interpret2 7 interp)
    (or.finally)
    (put.Ai.unsafe.Yn 5 5)
    (put.Ai.value.Yn 4 4)
    (put.Ai.value.Yn 3 3)
    (put.Ai.value.Yn 2 2)
    (put.Ai.value.Yn 1 1)
    (depart interpreter←debug←trap 5 interp)
)

(ASSEMBLE.CLAUSE ( debug←return 6 interp ) 55
    (allocate)
    (get.Ai.variable.Yn 1 1)
    (get.Ai.variable.Yn 2 2)
    (get.Ai.variable.Yn 3 3)
    (get.Ai.variable.Yn 4 4)
    (get.Ai.variable.Yn 5 5)
    (get.Ai.variable.Yn 6 7)
    (put.Ai.variable.Yn 5 8)
    (put.Ai.void 4)
    (put.Ai.void 3)
    (put.Ai.void 2)
    (put.Ai.value.Yn 1 7)
    (call 11 predicate←parts 5 si)
    (load.value.Yn 8)
    (load.pos.word 3)
    (boolean.and)
    (store.variable.Xn 1)
    (load.value.Xn 1)
    (load.pos.word 0)
    (not.equal.to)
    (put.Ai.variable.Yn 2 6)
    (put.Ai.value.Yn 1 7)
    (call 9 real←proc 2 interp)
    (load.choice.point)
    (store.variable.Xn 7)
    (put.Ai.unsafe.Yn 6 6)
    (put.Ai.value.Yn 5 5)
    (put.Ai.value.Yn 4 4)
    (put.Ai.value.Yn 3 3)
    (put.Ai.value.Yn 2 2)
    (put.Ai.value.Yn 1 1)
    (depart interpret2 7 interp)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 13
    (get.Ai.structure 1 depth 1)
    (unify.variable.Xn 8)
    (put.Ai.value.Xn 1 3)
    (get.Ai.value.Xn 4 1)
    (head.cut)
    (put.Ai.value.Xn 2 8)
    (execute info←depth 2 interp)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 11
    (get.Ai.structure 1 subgoal←of 1)
    (unify.variable.Xn 1)
    (put.Ai.value.Xn 2 3)
    (get.Ai.value.Xn 4 2)
    (head.cut)
    (execute info←member 2 interp)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 13
    (get.Ai.structure 1 ancestors 1)
    (unify.variable.Xn 8)
    (put.Ai.value.Xn 1 3)
    (get.Ai.value.Xn 4 1)
    (head.cut)
    (put.Ai.value.Xn 2 8)
    (execute info←to←list 2 interp)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 10
    (get.Ai.list 1)
    (unify.variable.Xn 1)
    (unify.variable.Xn 8)
    (get.Ai.value.Xn 4 3)
    (head.cut)
    (put.Ai.value.Xn 2 8)
    (execute %. 2 si)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 38
    (get.Ai.structure 1 call 1)
    (allocate)
    (unify.variable.Yn 6)
    (get.Ai.variable.Yn 2 2)
    (get.Ai.variable.Yn 3 3)
    (get.Ai.variable.Yn 4 4)
    (get.Ai.variable.Yn 5 5)
    (head.cut)
    (put.Ai.value.Yn 1 6)
    (call 9 check←goal←not←var 1 interp)
    (put.Ai.variable.Yn 2 1)
    (put.Ai.value.Yn 1 6)
    (call 8 transform←body 2 interp)
    (put.Ai.value.Yn 5 5)
    (put.Ai.value.Yn 4 4)
    (put.Ai.value.Yn 3 3)
    (put.Ai.value.Yn 2 2)
    (put.Ai.unsafe.Yn 1 1)
    (depart interpret←next 5 interp)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 27
    (get.Ai.structure 1 %\%+ 1)
    (unify.variable.Xn 1)
    (put.Ai.value.Xn 8 3)
    (put.Ai.value.Xn 9 5)
    (put.Ai.value.Xn 5 7)
    (allocate)
    (load.value.Xn 2)
    (add.pos.word 1)
    (store.variable.Xn 2)
    (put.Ai.structure 3 info 4)
    (unify.value.Xn 2)
    (unify.value.Xn 1)
    (unify.local.Xn 9)
    (unify.local.Xn 8)
    (call 3 interpret 5 interp)
    (body.cut)
    (fail)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 7
    (get.Ai.structure 1 %\%+ 1)
    (unify.void 1)
    (get.Ai.value.Xn 4 3)
    (cut.proceed)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 17
    (get.Ai.structure 1 put 1)
    (unify.variable.Xn 1)
    (get.Ai.value.Xn 4 3)
    (head.cut)
    (allocate)
    (put.Ai.variable.Yn 2 1)
    (call 4 evaluate 2 si)
    (put.Ai.unsafe.Yn 1 1)
    (depart put 1 si)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 17
    (get.Ai.structure 1 skip 1)
    (unify.variable.Xn 1)
    (get.Ai.value.Xn 4 3)
    (head.cut)
    (allocate)
    (put.Ai.variable.Yn 2 1)
    (call 4 evaluate 2 si)
    (put.Ai.unsafe.Yn 1 1)
    (depart skip 1 si)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 17
    (get.Ai.structure 1 tab 1)
    (unify.variable.Xn 1)
    (get.Ai.value.Xn 4 3)
    (head.cut)
    (allocate)
    (put.Ai.variable.Yn 2 1)
    (call 4 evaluate 2 si)
    (put.Ai.unsafe.Yn 1 1)
    (depart tab 1 si)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 20
    (get.Ai.structure 1 put 2)
    (allocate)
    (unify.variable.Yn 1)
    (unify.variable.Xn 1)
    (get.Ai.value.Xn 4 3)
    (head.cut)
    (put.Ai.variable.Yn 2 2)
    (call 5 evaluate 2 si)
    (put.Ai.unsafe.Yn 2 2)
    (put.Ai.value.Yn 1 1)
    (depart put 2 si)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 20
    (get.Ai.structure 1 skip 2)
    (allocate)
    (unify.variable.Yn 1)
    (unify.variable.Xn 1)
    (get.Ai.value.Xn 4 3)
    (head.cut)
    (put.Ai.variable.Yn 2 2)
    (call 5 evaluate 2 si)
    (put.Ai.unsafe.Yn 2 2)
    (put.Ai.value.Yn 1 1)
    (depart skip 2 si)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 20
    (get.Ai.structure 1 tab 2)
    (allocate)
    (unify.variable.Yn 1)
    (unify.variable.Xn 1)
    (get.Ai.value.Xn 4 3)
    (head.cut)
    (put.Ai.variable.Yn 2 2)
    (call 5 evaluate 2 si)
    (put.Ai.unsafe.Yn 2 2)
    (put.Ai.value.Yn 1 1)
    (depart tab 2 si)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 17
    (get.Ai.structure 1 ttyput 1)
    (unify.variable.Xn 1)
    (get.Ai.value.Xn 4 3)
    (head.cut)
    (allocate)
    (put.Ai.variable.Yn 2 1)
    (call 4 evaluate 2 si)
    (put.Ai.unsafe.Yn 1 1)
    (depart ttyput 1 si)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 17
    (get.Ai.structure 1 ttyskip 1)
    (unify.variable.Xn 1)
    (get.Ai.value.Xn 4 3)
    (head.cut)
    (allocate)
    (put.Ai.variable.Yn 2 1)
    (call 4 evaluate 2 si)
    (put.Ai.unsafe.Yn 1 1)
    (depart ttyskip 1 si)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 17
    (get.Ai.structure 1 ttytab 1)
    (unify.variable.Xn 1)
    (get.Ai.value.Xn 4 3)
    (head.cut)
    (allocate)
    (put.Ai.variable.Yn 2 1)
    (call 4 evaluate 2 si)
    (put.Ai.unsafe.Yn 1 1)
    (depart ttytab 1 si)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 12
    (get.Ai.structure 1 is 2)
    (unify.variable.Xn 8)
    (unify.variable.Xn 1)
    (get.Ai.value.Xn 4 3)
    (head.cut)
    (put.Ai.value.Xn 2 8)
    (execute evaluate 2 si)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 25
    (get.Ai.structure 1 %=%:%= 2)
    (unify.variable.Xn 1)
    (allocate)
    (unify.variable.Yn 3)
    (get.Ai.value.Xn 4 3)
    (head.cut)
    (put.Ai.variable.Yn 2 2)
    (call 6 evaluate 2 si)
    (put.Ai.variable.Yn 2 1)
    (put.Ai.value.Yn 1 3)
    (call 5 evaluate 2 si)
    (load.value.Yn 2)
    (load.value.Yn 1)
    (equal.to)
    (progress)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 25
    (get.Ai.structure 1 %=%\%= 2)
    (unify.variable.Xn 1)
    (allocate)
    (unify.variable.Yn 3)
    (get.Ai.value.Xn 4 3)
    (head.cut)
    (put.Ai.variable.Yn 2 2)
    (call 6 evaluate 2 si)
    (put.Ai.variable.Yn 2 1)
    (put.Ai.value.Yn 1 3)
    (call 5 evaluate 2 si)
    (load.value.Yn 2)
    (load.value.Yn 1)
    (not.equal.to)
    (progress)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 25
    (get.Ai.structure 1 %< 2)
    (unify.variable.Xn 1)
    (allocate)
    (unify.variable.Yn 3)
    (get.Ai.value.Xn 4 3)
    (head.cut)
    (put.Ai.variable.Yn 2 2)
    (call 6 evaluate 2 si)
    (put.Ai.variable.Yn 2 1)
    (put.Ai.value.Yn 1 3)
    (call 5 evaluate 2 si)
    (load.value.Yn 2)
    (load.value.Yn 1)
    (less.than)
    (progress)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 25
    (get.Ai.structure 1 %=%< 2)
    (unify.variable.Xn 1)
    (allocate)
    (unify.variable.Yn 3)
    (get.Ai.value.Xn 4 3)
    (head.cut)
    (put.Ai.variable.Yn 2 2)
    (call 6 evaluate 2 si)
    (put.Ai.variable.Yn 2 1)
    (put.Ai.value.Yn 1 3)
    (call 5 evaluate 2 si)
    (load.value.Yn 2)
    (load.value.Yn 1)
    (not.greater.than)
    (progress)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 25
    (get.Ai.structure 1 %>%= 2)
    (unify.variable.Xn 1)
    (allocate)
    (unify.variable.Yn 3)
    (get.Ai.value.Xn 4 3)
    (head.cut)
    (put.Ai.variable.Yn 2 2)
    (call 6 evaluate 2 si)
    (put.Ai.variable.Yn 2 1)
    (put.Ai.value.Yn 1 3)
    (call 5 evaluate 2 si)
    (load.value.Yn 2)
    (load.value.Yn 1)
    (not.less.than)
    (progress)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 25
    (get.Ai.structure 1 %> 2)
    (unify.variable.Xn 1)
    (allocate)
    (unify.variable.Yn 3)
    (get.Ai.value.Xn 4 3)
    (head.cut)
    (put.Ai.variable.Yn 2 2)
    (call 6 evaluate 2 si)
    (put.Ai.variable.Yn 2 1)
    (put.Ai.value.Yn 1 3)
    (call 5 evaluate 2 si)
    (load.value.Yn 2)
    (load.value.Yn 1)
    (greater.than)
    (progress)
)

(ASSEMBLE.CLAUSE ( interpret2 7 interp ) 77
    (allocate)
    (get.Ai.variable.Yn 1 1)
    (get.Ai.variable.Yn 2 2)
    (get.Ai.variable.Yn 3 3)
    (get.Ai.variable.Yn 4 4)
    (get.Ai.variable.Yn 5 5)
    (get.Ai.variable.Yn 6 6)
    (put.Ai.variable.Yn 5 8)
    (put.Ai.void 4)
    (put.Ai.void 3)
    (put.Ai.void 2)
    (put.Ai.value.Yn 1 6)
    (call 11 predicate←parts 5 si)
    (load.value.Yn 8)
    (load.pos.word 3)
    (boolean.and)
    (store.variable.Yn 7)
    (load.value.Yn 7)
    (load.pos.word 0)
    (equal.to.else 47)
    (put.Ai.value.Yn 5 6)
    (put.Ai.value.Yn 4 4)
    (put.Ai.value.Yn 3 3)
    (put.Ai.value.Yn 2 2)
    (put.Ai.value.Yn 1 1)
    (depart undefined←trap 5 interp)
    (load.value.Yn 7)
    (load.pos.word 1)
    (equal.to.else 65)
    (put.Ai.value.Yn 1 3)
    (get.Ai.value.Yn 1 4)
    (put.Ai.constant 3 0)
    (put.Ai.value.Yn 2 1)
    (put.Ai.value.Yn 1 6)
    (depart apply 3 si)
    (put.Ai.value.Yn 6 6)
    (put.Ai.value.Yn 5 5)
    (put.Ai.value.Yn 4 4)
    (put.Ai.value.Yn 3 3)
    (put.Ai.value.Yn 2 2)
    (put.Ai.value.Yn 1 1)
    (depart interpret←goal 6 interp)
)

(ASSEMBLE.CLAUSE ( invisible←goal 1 interp ) 4
    (get.Ai.constant 1 true)
    (proceed)
)

(ASSEMBLE.CLAUSE ( invisible←goal 1 interp ) 4
    (get.Ai.constant 1 otherwise)
    (proceed)
)

(ASSEMBLE.CLAUSE ( invisible←goal 1 interp ) 4
    (get.Ai.constant 1 false)
    (proceed)
)

(ASSEMBLE.CLAUSE ( invisible←goal 1 interp ) 4
    (get.Ai.constant 1 fail)
    (proceed)
)

(ASSEMBLE.CLAUSE ( invisible←goal 1 interp ) 4
    (get.Ai.constant 1 %!)
    (proceed)
)

(ASSEMBLE.CLAUSE ( invisible←goal 1 interp ) 5
    (get.Ai.structure 1 %$goal 2)
    (unify.void 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5
    (get.Ai.structure 1 depth 1)
    (unify.void 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5
    (get.Ai.structure 1 subgoal←of 1)
    (unify.void 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5
    (get.Ai.structure 1 ancestors 1)
    (unify.void 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( special←goal 1 interp ) 3
    (get.Ai.list 1)
    (unify.void 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5
    (get.Ai.structure 1 call 1)
    (unify.void 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5
    (get.Ai.structure 1 %\%+ 1)
    (unify.void 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5
    (get.Ai.structure 1 put 1)
    (unify.void 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5
    (get.Ai.structure 1 skip 1)
    (unify.void 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5
    (get.Ai.structure 1 tab 1)
    (unify.void 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5
    (get.Ai.structure 1 put 2)
    (unify.void 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5
    (get.Ai.structure 1 skip 2)
    (unify.void 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5
    (get.Ai.structure 1 tab 2)
    (unify.void 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5
    (get.Ai.structure 1 ttyput 1)
    (unify.void 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5
    (get.Ai.structure 1 ttyskip 1)
    (unify.void 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5
    (get.Ai.structure 1 ttytab 1)
    (unify.void 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5
    (get.Ai.structure 1 is 2)
    (unify.void 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5
    (get.Ai.structure 1 %=%:%= 2)
    (unify.void 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5
    (get.Ai.structure 1 %=%\%= 2)
    (unify.void 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5
    (get.Ai.structure 1 %< 2)
    (unify.void 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5
    (get.Ai.structure 1 %=%< 2)
    (unify.void 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5
    (get.Ai.structure 1 %>%= 2)
    (unify.void 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5
    (get.Ai.structure 1 %> 2)
    (unify.void 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8
    (get.Ai.structure 1 put 1)
    (unify.void 1)
    (get.Ai.constant 2 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8
    (get.Ai.structure 1 put 2)
    (unify.void 2)
    (get.Ai.constant 2 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8
    (get.Ai.structure 1 ttyput 1)
    (unify.void 1)
    (get.Ai.constant 2 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8
    (get.Ai.structure 1 skip 1)
    (unify.void 1)
    (get.Ai.constant 2 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8
    (get.Ai.structure 1 skip 2)
    (unify.void 2)
    (get.Ai.constant 2 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8
    (get.Ai.structure 1 ttyskip 1)
    (unify.void 1)
    (get.Ai.constant 2 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8
    (get.Ai.structure 1 tab 1)
    (unify.void 1)
    (get.Ai.constant 2 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8
    (get.Ai.structure 1 tab 2)
    (unify.void 2)
    (get.Ai.constant 2 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8
    (get.Ai.structure 1 ttytab 1)
    (unify.void 1)
    (get.Ai.constant 2 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8
    (get.Ai.structure 1 is 2)
    (unify.void 2)
    (get.Ai.constant 2 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8
    (get.Ai.structure 1 %=%:%= 2)
    (unify.void 2)
    (get.Ai.constant 2 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8
    (get.Ai.structure 1 %=%:%= 2)
    (unify.void 2)
    (get.Ai.constant 2 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8
    (get.Ai.structure 1 %=%\%= 2)
    (unify.void 2)
    (get.Ai.constant 2 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8
    (get.Ai.structure 1 %=%\%= 2)
    (unify.void 2)
    (get.Ai.constant 2 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8
    (get.Ai.structure 1 %< 2)
    (unify.void 2)
    (get.Ai.constant 2 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8
    (get.Ai.structure 1 %< 2)
    (unify.void 2)
    (get.Ai.constant 2 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8
    (get.Ai.structure 1 %=%< 2)
    (unify.void 2)
    (get.Ai.constant 2 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8
    (get.Ai.structure 1 %=%< 2)
    (unify.void 2)
    (get.Ai.constant 2 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8
    (get.Ai.structure 1 %>%= 2)
    (unify.void 2)
    (get.Ai.constant 2 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8
    (get.Ai.structure 1 %>%= 2)
    (unify.void 2)
    (get.Ai.constant 2 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8
    (get.Ai.structure 1 %> 2)
    (unify.void 2)
    (get.Ai.constant 2 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8
    (get.Ai.structure 1 %> 2)
    (unify.void 2)
    (get.Ai.constant 2 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( depth 1 interp ) 4
    (get.Ai.constant 1 0)
    (proceed)
)

(ASSEMBLE.CLAUSE ( subgoal←of 1 interp ) 1
    (fail)
)

(ASSEMBLE.CLAUSE ( ancestors 1 interp ) 4
    (get.Ai.constant 1 NIL)
    (proceed)
)

(ASSEMBLE.CLAUSE ( %\%+ 1 interp ) 14
    (allocate)
    (load.choice.point)
    (store.variable.Yn 1)
    (either 4 14)
    (call 4 call 1 interp)
    (load.value.Yn 1)
    (cut.to.choice.point)
    (fail)
    (or.finally)
    (progress)
)

(ASSEMBLE.CLAUSE ( interpret←next 5 interp ) 19
    (put.Ai.value.Xn 6 3)
    (put.Ai.value.Xn 7 5)
    (load.value.Xn 2)
    (add.pos.word 1)
    (store.variable.Xn 2)
    (load.choice.point)
    (store.variable.Xn 5)
    (put.Ai.structure 3 info 4)
    (unify.value.Xn 2)
    (unify.local.Xn 1)
    (unify.local.Xn 7)
    (unify.local.Xn 6)
    (execute interpret 5 interp)
)

(ASSEMBLE.CLAUSE ( interpret←goal 6 interp ) 66
    (allocate)
    (get.Ai.variable.Yn 1 7)
    (get.Ai.variable.Yn 4 4)
    (get.Ai.variable.Yn 6 6)
    (load.value.Xn 2)
    (add.pos.word 1)
    (store.variable.Yn 2)
    (put.Ai.variable.Yn 1 3)
    (get.Ai.structure 1 info 4)
    (unify.value.Yn 2)
    (unify.local.Yn 7)
    (unify.local.Xn 5)
    (unify.local.Xn 3)
    (gettopval QP%.MAXDEPTH)
    (store.variable.Xn 6)
    (load.value.Yn 2)
    (load.value.Xn 6)
    (greater.than.else 37)
    (put.Ai.value.Yn 5 6)
    (put.Ai.value.Yn 4 4)
    (put.Ai.value.Yn 1 7)
    (depart depth←trap 6 interp)
    (load.choice.point)
    (store.variable.Yn 5)
    (put.Ai.constant 3 1)
    (put.Ai.structure 1 %:%- 2)
    (unify.local.Yn 7)
    (unify.variable.Yn 1)
    (put.Ai.structure 2 %$ 1)
    (unify.value.Xn 1)
    (put.Ai.value.Yn 1 6)
    (call 8 apply 3 si)
    (put.Ai.value.Yn 5 5)
    (put.Ai.value.Yn 4 4)
    (put.Ai.unsafe.Yn 3 3)
    (put.Ai.value.Yn 2 2)
    (put.Ai.value.Yn 1 1)
    (depart interpret 5 interp)
)

(ASSEMBLE.CLAUSE ( undefined←trap 5 interp ) 53
    (allocate)
    (get.Ai.variable.Yn 1 1)
    (get.Ai.variable.Yn 2 2)
    (get.Ai.variable.Yn 3 3)
    (get.Ai.variable.Yn 4 4)
    (get.Ai.variable.Yn 5 5)
    (load.choice.point)
    (store.variable.Xn 1)
    (either 8 42)
    (gettopval QP%.UNKNOWN)
    (store.integer 1)
    (load.value.Xn 1)
    (cut.to.choice.point)
    (put.Ai.value.Yn 1 5)
    (call 8 not←user←special 1 interp)
    (put.Ai.value.Yn 2 5)
    (put.Ai.value.Yn 1 1)
    (call 8 undefined←warning 2 interp)
    (call 8 force←error←trap 0 interp)
    (jump.to 43)
    (or.finally)
    (put.Ai.value.Yn 5 5)
    (put.Ai.value.Yn 4 4)
    (put.Ai.value.Yn 3 3)
    (put.Ai.value.Yn 2 2)
    (put.Ai.value.Yn 1 1)
    (depart interpreter←debug←trap 5 interp)
)

(ASSEMBLE.CLAUSE ( not←user←special 1 interp ) 21
    (allocate)
    (put.Ai.symbol 4 user)
    (put.Ai.variable.Yn 3 2)
    (put.Ai.variable.Yn 2 1)
    (call 5 procedure 4 si)
    (put.Ai.symbol 3 user)
    (put.Ai.unsafe.Yn 2 2)
    (put.Ai.unsafe.Yn 1 1)
    (call 3 user 3 si)
    (body.cut)
    (fail)
)

(ASSEMBLE.CLAUSE ( not←user←special 1 interp ) 1
    (proceed)
)

(ASSEMBLE.CLAUSE ( maxdepth 1 interp ) 34
    (allocate)
    (get.Ai.variable.Yn 1 2)
    (put.Ai.value.Yn 1 2)
    (is.a 24)
    (load.value.Yn 2)
    (load.pos.word 1)
    (less.than.else 20)
    (put.Ai.variable.Yn 1 1)
    (get.Ai.constant 1 1)
    (jump.to 24)
    (put.Ai.value.Yn 1 2)
    (get.Ai.variable.Yn 1 1)
    (load.value.Yn 1)
    (settopval QP%.MAXDEPTH)
    (put.Ai.list 3)
    (unify.local.Yn 1)
    (unify.nil)
    (put.Ai.symbol 2 %[Interpreter% maxdepth%(%~w%)% set%]%~n)
    (put.Ai.symbol 1 user)
    (depart format 3 format)
)

(ASSEMBLE.CLAUSE ( depth←trap 6 interp ) 36
    (allocate)
    (get.Ai.variable.Yn 1 1)
    (get.Ai.variable.Yn 2 2)
    (get.Ai.variable.Yn 3 3)
    (get.Ai.variable.Yn 4 4)
    (get.Ai.variable.Yn 5 5)
    (put.Ai.list 3)
    (unify.local.Xn 6)
    (unify.nil)
    (put.Ai.symbol 2 %[% Warning%:% Interpreter% maxdepth%(%~w%)% exceeded%]%~n)
    (put.Ai.symbol 1 user)
    (call 8 format 3 format)
    (call 8 force←error←trap 0 interp)
    (put.Ai.value.Yn 5 5)
    (put.Ai.value.Yn 4 4)
    (put.Ai.value.Yn 3 3)
    (put.Ai.value.Yn 2 2)
    (put.Ai.value.Yn 1 1)
    (depart interpreter←debug←trap 5 interp)
)

(ASSEMBLE.CLAUSE ( find←predicate 4 interp ) 5
    (allocate)
    (call 3 check←predicate 4 si)
    (depart.cut)
)

(ASSEMBLE.CLAUSE ( find←predicate 4 interp ) 4
    (get.Ai.constant 4 0)
    (proceed)
)

(ASSEMBLE.CLAUSE ( find←procedure 5 interp ) 10
    (get.Ai.constant 1 0)
    (get.Ai.symbol 4 user)
    (put.Ai.value.Xn 1 5)
    (head.cut)
    (functor)
    (proceed)
)

(ASSEMBLE.CLAUSE ( find←procedure 5 interp ) 2
    (execute procedure 4 si)
)

(ASSEMBLE.CLAUSE ( info←tail 2 interp ) 8
    (get.Ai.structure 1 info 4)
    (unify.void 3)
    (unify.variable.Xn 1)
    (get.Ai.value.Xn 2 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( info←depth 2 interp ) 6
    (get.Ai.constant 1 NIL)
    (get.Ai.symbol 2 C)
    (proceed)
)

(ASSEMBLE.CLAUSE ( info←depth 2 interp ) 10
    (get.Ai.structure 1 info 1)
    (unify.constant 0)
    (get.Ai.constant 2 0)
    (proceed)
)

(ASSEMBLE.CLAUSE ( info←depth 2 interp ) 8
    (get.Ai.structure 1 info 4)
    (unify.variable.Xn 1)
    (unify.void 3)
    (get.Ai.value.Xn 2 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( info←debug←member 2 interp ) 7
    (get.Ai.structure 2 info 4)
    (unify.void 2)
    (unify.local.Xn 1)
    (unify.void 1)
    (proceed)
)

(ASSEMBLE.CLAUSE ( info←debug←member 2 interp ) 7
    (get.Ai.structure 2 info 4)
    (unify.void 3)
    (unify.variable.Xn 2)
    (execute info←debug←member 2 interp)
)

(ASSEMBLE.CLAUSE ( info←member 2 interp ) 16
    (allocate)
    (get.Ai.variable.Yn 1 1)
    (put.Ai.value.Xn 1 2)
    (put.Ai.variable.Yn 2 2)
    (call 5 get←ancestors 2 interp)
    (put.Ai.unsafe.Yn 2 2)
    (put.Ai.value.Yn 1 1)
    (depart info←member2 2 interp)
)

(ASSEMBLE.CLAUSE ( info←member2 2 interp ) 10
    (get.Ai.list 2)
    (unify.variable.Xn 2)
    (unify.void 1)
    (get.Ai.structure 2 info 4)
    (unify.void 1)
    (unify.local.Xn 1)
    (unify.void 2)
    (proceed)
)

(ASSEMBLE.CLAUSE ( info←member2 2 interp ) 5
    (get.Ai.list 2)
    (unify.void 1)
    (unify.variable.Xn 2)
    (execute info←member2 2 interp)
)

(ASSEMBLE.CLAUSE ( info←to←list 2 interp ) 14
    (allocate)
    (get.Ai.variable.Yn 2 2)
    (put.Ai.variable.Yn 2 1)
    (call 5 get←ancestors 2 interp)
    (put.Ai.value.Yn 2 2)
    (put.Ai.unsafe.Yn 1 1)
    (depart info←to←list2 2 interp)
)

(ASSEMBLE.CLAUSE ( info←to←list2 2 interp ) 5
    (get.Ai.constant 1 NIL)
    (get.Ai.nil 2)
    (cut.proceed)
)

(ASSEMBLE.CLAUSE ( info←to←list2 2 interp ) 14
    (get.Ai.list 1)
    (unify.variable.Xn 3)
    (unify.variable.Xn 1)
    (get.Ai.structure 3 info 4)
    (unify.void 1)
    (unify.variable.Xn 3)
    (unify.void 2)
    (get.Ai.list 2)
    (unify.value.Xn 3)
    (unify.variable.Xn 2)
    (execute info←to←list2 2 interp)
)

STOP