MAIN
MOVE TEMP 2 4
MOVE TEMP 3 HALLOCATE TEMP 2
MOVE TEMP 1 TEMP 3
MOVE TEMP 5 4
MOVE TEMP 6 HALLOCATE TEMP 5
MOVE TEMP 4 TEMP 6
MOVE TEMP 7 TV_Start
HSTORE TEMP 1 0 TEMP 7
HSTORE TEMP 4 0 TEMP 1
MOVE TEMP 0 TEMP 4
HLOAD TEMP 8 TEMP 0 0
HLOAD TEMP 9 TEMP 8 0
MOVE TEMP 10 CALL TEMP 9 ( TEMP 0 )
PRINT TEMP 10
END
TV_Start [1]
BEGIN
MOVE TEMP 4 84
MOVE TEMP 5 HALLOCATE TEMP 4
MOVE TEMP 3 TEMP 5
MOVE TEMP 7 28
MOVE TEMP 8 HALLOCATE TEMP 7
MOVE TEMP 6 TEMP 8
MOVE TEMP 9 Tree_accept
HSTORE TEMP 3 80 TEMP 9
MOVE TEMP 10 Tree_RecPrint
HSTORE TEMP 3 76 TEMP 10
MOVE TEMP 11 Tree_Print
HSTORE TEMP 3 72 TEMP 11
MOVE TEMP 12 Tree_Search
HSTORE TEMP 3 68 TEMP 12
MOVE TEMP 13 Tree_RemoveLeft
HSTORE TEMP 3 64 TEMP 13
MOVE TEMP 14 Tree_RemoveRight
HSTORE TEMP 3 60 TEMP 14
MOVE TEMP 15 Tree_Remove
HSTORE TEMP 3 56 TEMP 15
MOVE TEMP 16 Tree_Delete
HSTORE TEMP 3 52 TEMP 16
MOVE TEMP 17 Tree_Insert
HSTORE TEMP 3 48 TEMP 17
MOVE TEMP 18 Tree_Compare
HSTORE TEMP 3 44 TEMP 18
MOVE TEMP 19 Tree_SetHas_Right
HSTORE TEMP 3 40 TEMP 19
MOVE TEMP 20 Tree_SetHas_Left
HSTORE TEMP 3 36 TEMP 20
MOVE TEMP 21 Tree_GetHas_Left
HSTORE TEMP 3 32 TEMP 21
MOVE TEMP 22 Tree_GetHas_Right
HSTORE TEMP 3 28 TEMP 22
MOVE TEMP 23 Tree_SetKey
HSTORE TEMP 3 24 TEMP 23
MOVE TEMP 24 Tree_GetKey
HSTORE TEMP 3 20 TEMP 24
MOVE TEMP 25 Tree_GetLeft
HSTORE TEMP 3 16 TEMP 25
MOVE TEMP 26 Tree_GetRight
HSTORE TEMP 3 12 TEMP 26
MOVE TEMP 27 Tree_SetLeft
HSTORE TEMP 3 8 TEMP 27
MOVE TEMP 28 Tree_SetRight
HSTORE TEMP 3 4 TEMP 28
MOVE TEMP 29 Tree_Init
HSTORE TEMP 3 0 TEMP 29
MOVE TEMP 31 4
MOVE TEMP 30 TEMP 31
L2
MOVE TEMP 32 27
MOVE TEMP 33 LE  TEMP 30 TEMP 32
CJUMP TEMP 33 L3
MOVE TEMP 34 PLUS  TEMP 6 TEMP 30
MOVE TEMP 35 0
HSTORE TEMP 34 0 TEMP 35
MOVE TEMP 36 4
MOVE TEMP 37 PLUS  TEMP 30 TEMP 36
MOVE TEMP 30 TEMP 37
JUMP L2
L3
HSTORE TEMP 6 0 TEMP 3
MOVE TEMP 2 TEMP 6
MOVE TEMP 39 TEMP 2
HLOAD TEMP 40 TEMP 39 0
HLOAD TEMP 41 TEMP 40 0
MOVE TEMP 42 16
MOVE TEMP 43 CALL TEMP 41 ( TEMP 39  TEMP 42 )
MOVE TEMP 38 TEMP 43
MOVE TEMP 44 TEMP 2
HLOAD TEMP 45 TEMP 44 0
HLOAD TEMP 46 TEMP 45 72
MOVE TEMP 47 CALL TEMP 46 ( TEMP 44 )
MOVE TEMP 38 TEMP 47
MOVE TEMP 48 100000000
PRINT TEMP 48
MOVE TEMP 49 TEMP 2
HLOAD TEMP 50 TEMP 49 0
HLOAD TEMP 51 TEMP 50 48
MOVE TEMP 52 8
MOVE TEMP 53 CALL TEMP 51 ( TEMP 49  TEMP 52 )
MOVE TEMP 38 TEMP 53
MOVE TEMP 54 TEMP 2
HLOAD TEMP 55 TEMP 54 0
HLOAD TEMP 56 TEMP 55 48
MOVE TEMP 57 24
MOVE TEMP 58 CALL TEMP 56 ( TEMP 54  TEMP 57 )
MOVE TEMP 38 TEMP 58
MOVE TEMP 59 TEMP 2
HLOAD TEMP 60 TEMP 59 0
HLOAD TEMP 61 TEMP 60 48
MOVE TEMP 62 4
MOVE TEMP 63 CALL TEMP 61 ( TEMP 59  TEMP 62 )
MOVE TEMP 38 TEMP 63
MOVE TEMP 64 TEMP 2
HLOAD TEMP 65 TEMP 64 0
HLOAD TEMP 66 TEMP 65 48
MOVE TEMP 67 12
MOVE TEMP 68 CALL TEMP 66 ( TEMP 64  TEMP 67 )
MOVE TEMP 38 TEMP 68
MOVE TEMP 69 TEMP 2
HLOAD TEMP 70 TEMP 69 0
HLOAD TEMP 71 TEMP 70 48
MOVE TEMP 72 20
MOVE TEMP 73 CALL TEMP 71 ( TEMP 69  TEMP 72 )
MOVE TEMP 38 TEMP 73
MOVE TEMP 74 TEMP 2
HLOAD TEMP 75 TEMP 74 0
HLOAD TEMP 76 TEMP 75 48
MOVE TEMP 77 28
MOVE TEMP 78 CALL TEMP 76 ( TEMP 74  TEMP 77 )
MOVE TEMP 38 TEMP 78
MOVE TEMP 79 TEMP 2
HLOAD TEMP 80 TEMP 79 0
HLOAD TEMP 81 TEMP 80 48
MOVE TEMP 82 14
MOVE TEMP 83 CALL TEMP 81 ( TEMP 79  TEMP 82 )
MOVE TEMP 38 TEMP 83
MOVE TEMP 84 TEMP 2
HLOAD TEMP 85 TEMP 84 0
HLOAD TEMP 86 TEMP 85 72
MOVE TEMP 87 CALL TEMP 86 ( TEMP 84 )
MOVE TEMP 38 TEMP 87
MOVE TEMP 88 100000000
PRINT TEMP 88
MOVE TEMP 91 4
MOVE TEMP 92 HALLOCATE TEMP 91
MOVE TEMP 90 TEMP 92
MOVE TEMP 94 12
MOVE TEMP 95 HALLOCATE TEMP 94
MOVE TEMP 93 TEMP 95
MOVE TEMP 96 MyVisitor_visit
HSTORE TEMP 90 0 TEMP 96
MOVE TEMP 98 4
MOVE TEMP 97 TEMP 98
L4
MOVE TEMP 99 11
MOVE TEMP 100 LE  TEMP 97 TEMP 99
CJUMP TEMP 100 L5
MOVE TEMP 101 PLUS  TEMP 93 TEMP 97
MOVE TEMP 102 0
HSTORE TEMP 101 0 TEMP 102
MOVE TEMP 103 4
MOVE TEMP 104 PLUS  TEMP 97 TEMP 103
MOVE TEMP 97 TEMP 104
JUMP L4
L5
HSTORE TEMP 93 0 TEMP 90
MOVE TEMP 89 TEMP 93
MOVE TEMP 105 50000000
PRINT TEMP 105
MOVE TEMP 107 TEMP 2
HLOAD TEMP 108 TEMP 107 0
HLOAD TEMP 109 TEMP 108 80
MOVE TEMP 110 CALL TEMP 109 ( TEMP 107  TEMP 89 )
MOVE TEMP 106 TEMP 110
MOVE TEMP 111 100000000
PRINT TEMP 111
MOVE TEMP 112 TEMP 2
HLOAD TEMP 113 TEMP 112 0
HLOAD TEMP 114 TEMP 113 68
MOVE TEMP 115 24
MOVE TEMP 116 CALL TEMP 114 ( TEMP 112  TEMP 115 )
PRINT TEMP 116
MOVE TEMP 117 TEMP 2
HLOAD TEMP 118 TEMP 117 0
HLOAD TEMP 119 TEMP 118 68
MOVE TEMP 120 12
MOVE TEMP 121 CALL TEMP 119 ( TEMP 117  TEMP 120 )
PRINT TEMP 121
MOVE TEMP 122 TEMP 2
HLOAD TEMP 123 TEMP 122 0
HLOAD TEMP 124 TEMP 123 68
MOVE TEMP 125 16
MOVE TEMP 126 CALL TEMP 124 ( TEMP 122  TEMP 125 )
PRINT TEMP 126
MOVE TEMP 127 TEMP 2
HLOAD TEMP 128 TEMP 127 0
HLOAD TEMP 129 TEMP 128 68
MOVE TEMP 130 50
MOVE TEMP 131 CALL TEMP 129 ( TEMP 127  TEMP 130 )
PRINT TEMP 131
MOVE TEMP 132 TEMP 2
HLOAD TEMP 133 TEMP 132 0
HLOAD TEMP 134 TEMP 133 68
MOVE TEMP 135 12
MOVE TEMP 136 CALL TEMP 134 ( TEMP 132  TEMP 135 )
PRINT TEMP 136
MOVE TEMP 137 TEMP 2
HLOAD TEMP 138 TEMP 137 0
HLOAD TEMP 139 TEMP 138 52
MOVE TEMP 140 12
MOVE TEMP 141 CALL TEMP 139 ( TEMP 137  TEMP 140 )
MOVE TEMP 38 TEMP 141
MOVE TEMP 142 TEMP 2
HLOAD TEMP 143 TEMP 142 0
HLOAD TEMP 144 TEMP 143 72
MOVE TEMP 145 CALL TEMP 144 ( TEMP 142 )
MOVE TEMP 38 TEMP 145
MOVE TEMP 146 TEMP 2
HLOAD TEMP 147 TEMP 146 0
HLOAD TEMP 148 TEMP 147 68
MOVE TEMP 149 12
MOVE TEMP 150 CALL TEMP 148 ( TEMP 146  TEMP 149 )
PRINT TEMP 150
MOVE TEMP 151 0
RETURN TEMP 151
END
Tree_Init [2]
BEGIN
HSTORE TEMP 0 12 TEMP 1
MOVE TEMP 3 0
HSTORE TEMP 0 16 TEMP 3
MOVE TEMP 4 0
HSTORE TEMP 0 20 TEMP 4
MOVE TEMP 5 1
RETURN TEMP 5
END
Tree_SetRight [2]
BEGIN
HSTORE TEMP 0 8 TEMP 1
MOVE TEMP 3 1
RETURN TEMP 3
END
Tree_SetLeft [2]
BEGIN
HSTORE TEMP 0 4 TEMP 1
MOVE TEMP 3 1
RETURN TEMP 3
END
Tree_GetRight [1]
BEGIN
HLOAD TEMP 2 TEMP 0 8
RETURN TEMP 2
END
Tree_GetLeft [1]
BEGIN
HLOAD TEMP 2 TEMP 0 4
RETURN TEMP 2
END
Tree_GetKey [1]
BEGIN
HLOAD TEMP 2 TEMP 0 12
RETURN TEMP 2
END
Tree_SetKey [2]
BEGIN
HSTORE TEMP 0 12 TEMP 1
MOVE TEMP 3 1
RETURN TEMP 3
END
Tree_GetHas_Right [1]
BEGIN
HLOAD TEMP 2 TEMP 0 20
RETURN TEMP 2
END
Tree_GetHas_Left [1]
BEGIN
HLOAD TEMP 2 TEMP 0 16
RETURN TEMP 2
END
Tree_SetHas_Left [2]
BEGIN
HSTORE TEMP 0 16 TEMP 1
MOVE TEMP 3 1
RETURN TEMP 3
END
Tree_SetHas_Right [2]
BEGIN
HSTORE TEMP 0 20 TEMP 1
MOVE TEMP 3 1
RETURN TEMP 3
END
Tree_Compare [3]
BEGIN
MOVE TEMP 5 0
MOVE TEMP 4 TEMP 5
MOVE TEMP 7 1
MOVE TEMP 8 PLUS  TEMP 2 TEMP 7
MOVE TEMP 6 TEMP 8
MOVE TEMP 10 1
MOVE TEMP 11 MINUS  TEMP 2 TEMP 10
MOVE TEMP 9 TEMP 11
MOVE TEMP 12 LE  TEMP 1 TEMP 9
CJUMP TEMP 12 L6
MOVE TEMP 13 0
MOVE TEMP 4 TEMP 13
JUMP L7
L6
MOVE TEMP 15 1
MOVE TEMP 16 MINUS  TEMP 6 TEMP 15
MOVE TEMP 14 TEMP 16
MOVE TEMP 17 1
MOVE TEMP 18 LE  TEMP 1 TEMP 14
MOVE TEMP 19 MINUS  TEMP 17 TEMP 18
CJUMP TEMP 19 L8
MOVE TEMP 20 0
MOVE TEMP 4 TEMP 20
JUMP L9
L8
MOVE TEMP 21 1
MOVE TEMP 4 TEMP 21
L9
NOOP
L7
NOOP
RETURN TEMP 4
END
Tree_Insert [2]
BEGIN
MOVE TEMP 5 84
MOVE TEMP 6 HALLOCATE TEMP 5
MOVE TEMP 4 TEMP 6
MOVE TEMP 8 28
MOVE TEMP 9 HALLOCATE TEMP 8
MOVE TEMP 7 TEMP 9
MOVE TEMP 10 Tree_accept
HSTORE TEMP 4 80 TEMP 10
MOVE TEMP 11 Tree_RecPrint
HSTORE TEMP 4 76 TEMP 11
MOVE TEMP 12 Tree_Print
HSTORE TEMP 4 72 TEMP 12
MOVE TEMP 13 Tree_Search
HSTORE TEMP 4 68 TEMP 13
MOVE TEMP 14 Tree_RemoveLeft
HSTORE TEMP 4 64 TEMP 14
MOVE TEMP 15 Tree_RemoveRight
HSTORE TEMP 4 60 TEMP 15
MOVE TEMP 16 Tree_Remove
HSTORE TEMP 4 56 TEMP 16
MOVE TEMP 17 Tree_Delete
HSTORE TEMP 4 52 TEMP 17
MOVE TEMP 18 Tree_Insert
HSTORE TEMP 4 48 TEMP 18
MOVE TEMP 19 Tree_Compare
HSTORE TEMP 4 44 TEMP 19
MOVE TEMP 20 Tree_SetHas_Right
HSTORE TEMP 4 40 TEMP 20
MOVE TEMP 21 Tree_SetHas_Left
HSTORE TEMP 4 36 TEMP 21
MOVE TEMP 22 Tree_GetHas_Left
HSTORE TEMP 4 32 TEMP 22
MOVE TEMP 23 Tree_GetHas_Right
HSTORE TEMP 4 28 TEMP 23
MOVE TEMP 24 Tree_SetKey
HSTORE TEMP 4 24 TEMP 24
MOVE TEMP 25 Tree_GetKey
HSTORE TEMP 4 20 TEMP 25
MOVE TEMP 26 Tree_GetLeft
HSTORE TEMP 4 16 TEMP 26
MOVE TEMP 27 Tree_GetRight
HSTORE TEMP 4 12 TEMP 27
MOVE TEMP 28 Tree_SetLeft
HSTORE TEMP 4 8 TEMP 28
MOVE TEMP 29 Tree_SetRight
HSTORE TEMP 4 4 TEMP 29
MOVE TEMP 30 Tree_Init
HSTORE TEMP 4 0 TEMP 30
MOVE TEMP 32 4
MOVE TEMP 31 TEMP 32
L10
MOVE TEMP 33 27
MOVE TEMP 34 LE  TEMP 31 TEMP 33
CJUMP TEMP 34 L11
MOVE TEMP 35 PLUS  TEMP 7 TEMP 31
MOVE TEMP 36 0
HSTORE TEMP 35 0 TEMP 36
MOVE TEMP 37 4
MOVE TEMP 38 PLUS  TEMP 31 TEMP 37
MOVE TEMP 31 TEMP 38
JUMP L10
L11
HSTORE TEMP 7 0 TEMP 4
MOVE TEMP 3 TEMP 7
MOVE TEMP 40 TEMP 3
HLOAD TEMP 41 TEMP 40 0
HLOAD TEMP 42 TEMP 41 0
MOVE TEMP 43 CALL TEMP 42 ( TEMP 40  TEMP 1 )
MOVE TEMP 39 TEMP 43
MOVE TEMP 44 TEMP 0
MOVE TEMP 46 1
MOVE TEMP 45 TEMP 46
L12
CJUMP TEMP 45 L13
MOVE TEMP 48 TEMP 44
HLOAD TEMP 49 TEMP 48 0
HLOAD TEMP 50 TEMP 49 20
MOVE TEMP 51 CALL TEMP 50 ( TEMP 48 )
MOVE TEMP 47 TEMP 51
MOVE TEMP 53 1
MOVE TEMP 54 MINUS  TEMP 47 TEMP 53
MOVE TEMP 52 TEMP 54
MOVE TEMP 55 LE  TEMP 1 TEMP 52
CJUMP TEMP 55 L14
MOVE TEMP 56 TEMP 44
HLOAD TEMP 57 TEMP 56 0
HLOAD TEMP 58 TEMP 57 32
MOVE TEMP 59 CALL TEMP 58 ( TEMP 56 )
CJUMP TEMP 59 L16
MOVE TEMP 60 TEMP 44
HLOAD TEMP 61 TEMP 60 0
HLOAD TEMP 62 TEMP 61 16
MOVE TEMP 63 CALL TEMP 62 ( TEMP 60 )
MOVE TEMP 44 TEMP 63
JUMP L17
L16
MOVE TEMP 64 0
MOVE TEMP 45 TEMP 64
MOVE TEMP 65 TEMP 44
HLOAD TEMP 66 TEMP 65 0
HLOAD TEMP 67 TEMP 66 36
MOVE TEMP 68 1
MOVE TEMP 69 CALL TEMP 67 ( TEMP 65  TEMP 68 )
MOVE TEMP 39 TEMP 69
MOVE TEMP 70 TEMP 44
HLOAD TEMP 71 TEMP 70 0
HLOAD TEMP 72 TEMP 71 8
MOVE TEMP 73 CALL TEMP 72 ( TEMP 70  TEMP 3 )
MOVE TEMP 39 TEMP 73
L17
NOOP
JUMP L15
L14
MOVE TEMP 74 TEMP 44
HLOAD TEMP 75 TEMP 74 0
HLOAD TEMP 76 TEMP 75 28
MOVE TEMP 77 CALL TEMP 76 ( TEMP 74 )
CJUMP TEMP 77 L18
MOVE TEMP 78 TEMP 44
HLOAD TEMP 79 TEMP 78 0
HLOAD TEMP 80 TEMP 79 12
MOVE TEMP 81 CALL TEMP 80 ( TEMP 78 )
MOVE TEMP 44 TEMP 81
JUMP L19
L18
MOVE TEMP 82 0
MOVE TEMP 45 TEMP 82
MOVE TEMP 83 TEMP 44
HLOAD TEMP 84 TEMP 83 0
HLOAD TEMP 85 TEMP 84 40
MOVE TEMP 86 1
MOVE TEMP 87 CALL TEMP 85 ( TEMP 83  TEMP 86 )
MOVE TEMP 39 TEMP 87
MOVE TEMP 88 TEMP 44
HLOAD TEMP 89 TEMP 88 0
HLOAD TEMP 90 TEMP 89 4
MOVE TEMP 91 CALL TEMP 90 ( TEMP 88  TEMP 3 )
MOVE TEMP 39 TEMP 91
L19
NOOP
L15
NOOP
JUMP L12
L13
NOOP
MOVE TEMP 92 1
RETURN TEMP 92
END
Tree_Delete [2]
BEGIN
MOVE TEMP 3 TEMP 0
MOVE TEMP 4 TEMP 0
MOVE TEMP 6 1
MOVE TEMP 5 TEMP 6
MOVE TEMP 8 0
MOVE TEMP 7 TEMP 8
MOVE TEMP 10 1
MOVE TEMP 9 TEMP 10
L20
CJUMP TEMP 5 L21
MOVE TEMP 12 TEMP 3
HLOAD TEMP 13 TEMP 12 0
HLOAD TEMP 14 TEMP 13 20
MOVE TEMP 15 CALL TEMP 14 ( TEMP 12 )
MOVE TEMP 11 TEMP 15
MOVE TEMP 17 1
MOVE TEMP 18 MINUS  TEMP 11 TEMP 17
MOVE TEMP 16 TEMP 18
MOVE TEMP 19 LE  TEMP 1 TEMP 16
CJUMP TEMP 19 L22
MOVE TEMP 20 TEMP 3
HLOAD TEMP 21 TEMP 20 0
HLOAD TEMP 22 TEMP 21 32
MOVE TEMP 23 CALL TEMP 22 ( TEMP 20 )
CJUMP TEMP 23 L24
MOVE TEMP 4 TEMP 3
MOVE TEMP 24 TEMP 3
HLOAD TEMP 25 TEMP 24 0
HLOAD TEMP 26 TEMP 25 16
MOVE TEMP 27 CALL TEMP 26 ( TEMP 24 )
MOVE TEMP 3 TEMP 27
JUMP L25
L24
MOVE TEMP 28 0
MOVE TEMP 5 TEMP 28
L25
NOOP
JUMP L23
L22
MOVE TEMP 30 1
MOVE TEMP 31 MINUS  TEMP 1 TEMP 30
MOVE TEMP 29 TEMP 31
MOVE TEMP 32 LE  TEMP 11 TEMP 29
CJUMP TEMP 32 L26
MOVE TEMP 33 TEMP 3
HLOAD TEMP 34 TEMP 33 0
HLOAD TEMP 35 TEMP 34 28
MOVE TEMP 36 CALL TEMP 35 ( TEMP 33 )
CJUMP TEMP 36 L28
MOVE TEMP 4 TEMP 3
MOVE TEMP 37 TEMP 3
HLOAD TEMP 38 TEMP 37 0
HLOAD TEMP 39 TEMP 38 12
MOVE TEMP 40 CALL TEMP 39 ( TEMP 37 )
MOVE TEMP 3 TEMP 40
JUMP L29
L28
MOVE TEMP 41 0
MOVE TEMP 5 TEMP 41
L29
NOOP
JUMP L27
L26
CJUMP TEMP 9 L30
MOVE TEMP 43 0
MOVE TEMP 42 TEMP 43
MOVE TEMP 44 1
MOVE TEMP 45 TEMP 3
HLOAD TEMP 46 TEMP 45 0
HLOAD TEMP 47 TEMP 46 28
MOVE TEMP 48 CALL TEMP 47 ( TEMP 45 )
MOVE TEMP 49 MINUS  TEMP 44 TEMP 48
CJUMP TEMP 49 L34
MOVE TEMP 50 1
MOVE TEMP 51 TEMP 3
HLOAD TEMP 52 TEMP 51 0
HLOAD TEMP 53 TEMP 52 32
MOVE TEMP 54 CALL TEMP 53 ( TEMP 51 )
MOVE TEMP 55 MINUS  TEMP 50 TEMP 54
CJUMP TEMP 55 L34
MOVE TEMP 56 1
MOVE TEMP 42 TEMP 56
L34
NOOP
CJUMP TEMP 42 L32
MOVE TEMP 58 1
MOVE TEMP 57 TEMP 58
JUMP L33
L32
MOVE TEMP 59 TEMP 0
HLOAD TEMP 60 TEMP 59 0
HLOAD TEMP 61 TEMP 60 56
MOVE TEMP 62 CALL TEMP 61 ( TEMP 59  TEMP 4  TEMP 3 )
MOVE TEMP 57 TEMP 62
L33
NOOP
JUMP L31
L30
MOVE TEMP 63 TEMP 0
HLOAD TEMP 64 TEMP 63 0
HLOAD TEMP 65 TEMP 64 56
MOVE TEMP 66 CALL TEMP 65 ( TEMP 63  TEMP 4  TEMP 3 )
MOVE TEMP 57 TEMP 66
L31
NOOP
MOVE TEMP 67 1
MOVE TEMP 7 TEMP 67
MOVE TEMP 68 0
MOVE TEMP 5 TEMP 68
L27
NOOP
L23
NOOP
MOVE TEMP 69 0
MOVE TEMP 9 TEMP 69
JUMP L20
L21
NOOP
RETURN TEMP 7
END
Tree_Remove [3]
BEGIN
MOVE TEMP 4 TEMP 2
HLOAD TEMP 5 TEMP 4 0
HLOAD TEMP 6 TEMP 5 32
MOVE TEMP 7 CALL TEMP 6 ( TEMP 4 )
CJUMP TEMP 7 L35
MOVE TEMP 9 TEMP 0
HLOAD TEMP 10 TEMP 9 0
HLOAD TEMP 11 TEMP 10 64
MOVE TEMP 12 CALL TEMP 11 ( TEMP 9  TEMP 1  TEMP 2 )
MOVE TEMP 8 TEMP 12
JUMP L36
L35
MOVE TEMP 13 TEMP 2
HLOAD TEMP 14 TEMP 13 0
HLOAD TEMP 15 TEMP 14 28
MOVE TEMP 16 CALL TEMP 15 ( TEMP 13 )
CJUMP TEMP 16 L37
MOVE TEMP 17 TEMP 0
HLOAD TEMP 18 TEMP 17 0
HLOAD TEMP 19 TEMP 18 60
MOVE TEMP 20 CALL TEMP 19 ( TEMP 17  TEMP 1  TEMP 2 )
MOVE TEMP 8 TEMP 20
JUMP L38
L37
MOVE TEMP 22 TEMP 2
HLOAD TEMP 23 TEMP 22 0
HLOAD TEMP 24 TEMP 23 20
MOVE TEMP 25 CALL TEMP 24 ( TEMP 22 )
MOVE TEMP 21 TEMP 25
MOVE TEMP 28 TEMP 1
HLOAD TEMP 29 TEMP 28 0
HLOAD TEMP 30 TEMP 29 16
MOVE TEMP 31 CALL TEMP 30 ( TEMP 28 )
MOVE TEMP 27 TEMP 31
HLOAD TEMP 32 TEMP 27 0
HLOAD TEMP 33 TEMP 32 20
MOVE TEMP 34 CALL TEMP 33 ( TEMP 27 )
MOVE TEMP 26 TEMP 34
MOVE TEMP 35 TEMP 0
HLOAD TEMP 36 TEMP 35 0
HLOAD TEMP 37 TEMP 36 44
MOVE TEMP 38 CALL TEMP 37 ( TEMP 35  TEMP 21  TEMP 26 )
CJUMP TEMP 38 L39
MOVE TEMP 39 TEMP 1
HLOAD TEMP 40 TEMP 39 0
HLOAD TEMP 41 TEMP 40 8
HLOAD TEMP 42 TEMP 0 24
MOVE TEMP 43 CALL TEMP 41 ( TEMP 39  TEMP 42 )
MOVE TEMP 8 TEMP 43
MOVE TEMP 44 TEMP 1
HLOAD TEMP 45 TEMP 44 0
HLOAD TEMP 46 TEMP 45 36
MOVE TEMP 47 0
MOVE TEMP 48 CALL TEMP 46 ( TEMP 44  TEMP 47 )
MOVE TEMP 8 TEMP 48
JUMP L40
L39
MOVE TEMP 49 TEMP 1
HLOAD TEMP 50 TEMP 49 0
HLOAD TEMP 51 TEMP 50 4
HLOAD TEMP 52 TEMP 0 24
MOVE TEMP 53 CALL TEMP 51 ( TEMP 49  TEMP 52 )
MOVE TEMP 8 TEMP 53
MOVE TEMP 54 TEMP 1
HLOAD TEMP 55 TEMP 54 0
HLOAD TEMP 56 TEMP 55 40
MOVE TEMP 57 0
MOVE TEMP 58 CALL TEMP 56 ( TEMP 54  TEMP 57 )
MOVE TEMP 8 TEMP 58
L40
NOOP
L38
NOOP
L36
NOOP
MOVE TEMP 59 1
RETURN TEMP 59
END
Tree_RemoveRight [3]
BEGIN
L41
MOVE TEMP 4 TEMP 2
HLOAD TEMP 5 TEMP 4 0
HLOAD TEMP 6 TEMP 5 28
MOVE TEMP 7 CALL TEMP 6 ( TEMP 4 )
CJUMP TEMP 7 L42
MOVE TEMP 9 TEMP 2
HLOAD TEMP 10 TEMP 9 0
HLOAD TEMP 11 TEMP 10 24
MOVE TEMP 13 TEMP 2
HLOAD TEMP 14 TEMP 13 0
HLOAD TEMP 15 TEMP 14 12
MOVE TEMP 16 CALL TEMP 15 ( TEMP 13 )
MOVE TEMP 12 TEMP 16
HLOAD TEMP 17 TEMP 12 0
HLOAD TEMP 18 TEMP 17 20
MOVE TEMP 19 CALL TEMP 18 ( TEMP 12 )
MOVE TEMP 20 CALL TEMP 11 ( TEMP 9  TEMP 19 )
MOVE TEMP 8 TEMP 20
MOVE TEMP 1 TEMP 2
MOVE TEMP 21 TEMP 2
HLOAD TEMP 22 TEMP 21 0
HLOAD TEMP 23 TEMP 22 12
MOVE TEMP 24 CALL TEMP 23 ( TEMP 21 )
MOVE TEMP 2 TEMP 24
JUMP L41
L42
NOOP
MOVE TEMP 25 TEMP 1
HLOAD TEMP 26 TEMP 25 0
HLOAD TEMP 27 TEMP 26 4
HLOAD TEMP 28 TEMP 0 24
MOVE TEMP 29 CALL TEMP 27 ( TEMP 25  TEMP 28 )
MOVE TEMP 8 TEMP 29
MOVE TEMP 30 TEMP 1
HLOAD TEMP 31 TEMP 30 0
HLOAD TEMP 32 TEMP 31 40
MOVE TEMP 33 0
MOVE TEMP 34 CALL TEMP 32 ( TEMP 30  TEMP 33 )
MOVE TEMP 8 TEMP 34
MOVE TEMP 35 1
RETURN TEMP 35
END
Tree_RemoveLeft [3]
BEGIN
L43
MOVE TEMP 4 TEMP 2
HLOAD TEMP 5 TEMP 4 0
HLOAD TEMP 6 TEMP 5 32
MOVE TEMP 7 CALL TEMP 6 ( TEMP 4 )
CJUMP TEMP 7 L44
MOVE TEMP 9 TEMP 2
HLOAD TEMP 10 TEMP 9 0
HLOAD TEMP 11 TEMP 10 24
MOVE TEMP 13 TEMP 2
HLOAD TEMP 14 TEMP 13 0
HLOAD TEMP 15 TEMP 14 16
MOVE TEMP 16 CALL TEMP 15 ( TEMP 13 )
MOVE TEMP 12 TEMP 16
HLOAD TEMP 17 TEMP 12 0
HLOAD TEMP 18 TEMP 17 20
MOVE TEMP 19 CALL TEMP 18 ( TEMP 12 )
MOVE TEMP 20 CALL TEMP 11 ( TEMP 9  TEMP 19 )
MOVE TEMP 8 TEMP 20
MOVE TEMP 1 TEMP 2
MOVE TEMP 21 TEMP 2
HLOAD TEMP 22 TEMP 21 0
HLOAD TEMP 23 TEMP 22 16
MOVE TEMP 24 CALL TEMP 23 ( TEMP 21 )
MOVE TEMP 2 TEMP 24
JUMP L43
L44
NOOP
MOVE TEMP 25 TEMP 1
HLOAD TEMP 26 TEMP 25 0
HLOAD TEMP 27 TEMP 26 8
HLOAD TEMP 28 TEMP 0 24
MOVE TEMP 29 CALL TEMP 27 ( TEMP 25  TEMP 28 )
MOVE TEMP 8 TEMP 29
MOVE TEMP 30 TEMP 1
HLOAD TEMP 31 TEMP 30 0
HLOAD TEMP 32 TEMP 31 36
MOVE TEMP 33 0
MOVE TEMP 34 CALL TEMP 32 ( TEMP 30  TEMP 33 )
MOVE TEMP 8 TEMP 34
MOVE TEMP 35 1
RETURN TEMP 35
END
Tree_Search [2]
BEGIN
MOVE TEMP 3 TEMP 0
MOVE TEMP 5 1
MOVE TEMP 4 TEMP 5
MOVE TEMP 7 0
MOVE TEMP 6 TEMP 7
L45
CJUMP TEMP 4 L46
MOVE TEMP 9 TEMP 3
HLOAD TEMP 10 TEMP 9 0
HLOAD TEMP 11 TEMP 10 20
MOVE TEMP 12 CALL TEMP 11 ( TEMP 9 )
MOVE TEMP 8 TEMP 12
MOVE TEMP 14 1
MOVE TEMP 15 MINUS  TEMP 8 TEMP 14
MOVE TEMP 13 TEMP 15
MOVE TEMP 16 LE  TEMP 1 TEMP 13
CJUMP TEMP 16 L47
MOVE TEMP 17 TEMP 3
HLOAD TEMP 18 TEMP 17 0
HLOAD TEMP 19 TEMP 18 32
MOVE TEMP 20 CALL TEMP 19 ( TEMP 17 )
CJUMP TEMP 20 L49
MOVE TEMP 21 TEMP 3
HLOAD TEMP 22 TEMP 21 0
HLOAD TEMP 23 TEMP 22 16
MOVE TEMP 24 CALL TEMP 23 ( TEMP 21 )
MOVE TEMP 3 TEMP 24
JUMP L50
L49
MOVE TEMP 25 0
MOVE TEMP 4 TEMP 25
L50
NOOP
JUMP L48
L47
MOVE TEMP 27 1
MOVE TEMP 28 MINUS  TEMP 1 TEMP 27
MOVE TEMP 26 TEMP 28
MOVE TEMP 29 LE  TEMP 8 TEMP 26
CJUMP TEMP 29 L51
MOVE TEMP 30 TEMP 3
HLOAD TEMP 31 TEMP 30 0
HLOAD TEMP 32 TEMP 31 28
MOVE TEMP 33 CALL TEMP 32 ( TEMP 30 )
CJUMP TEMP 33 L53
MOVE TEMP 34 TEMP 3
HLOAD TEMP 35 TEMP 34 0
HLOAD TEMP 36 TEMP 35 12
MOVE TEMP 37 CALL TEMP 36 ( TEMP 34 )
MOVE TEMP 3 TEMP 37
JUMP L54
L53
MOVE TEMP 38 0
MOVE TEMP 4 TEMP 38
L54
NOOP
JUMP L52
L51
MOVE TEMP 39 1
MOVE TEMP 6 TEMP 39
MOVE TEMP 40 0
MOVE TEMP 4 TEMP 40
L52
NOOP
L48
NOOP
JUMP L45
L46
NOOP
RETURN TEMP 6
END
Tree_Print [1]
BEGIN
MOVE TEMP 2 TEMP 0
MOVE TEMP 4 TEMP 0
HLOAD TEMP 5 TEMP 4 0
HLOAD TEMP 6 TEMP 5 76
MOVE TEMP 7 CALL TEMP 6 ( TEMP 4  TEMP 2 )
MOVE TEMP 3 TEMP 7
MOVE TEMP 8 1
RETURN TEMP 8
END
Tree_RecPrint [2]
BEGIN
MOVE TEMP 3 TEMP 1
HLOAD TEMP 4 TEMP 3 0
HLOAD TEMP 5 TEMP 4 32
MOVE TEMP 6 CALL TEMP 5 ( TEMP 3 )
CJUMP TEMP 6 L55
MOVE TEMP 8 TEMP 0
HLOAD TEMP 9 TEMP 8 0
HLOAD TEMP 10 TEMP 9 76
MOVE TEMP 11 TEMP 1
HLOAD TEMP 12 TEMP 11 0
HLOAD TEMP 13 TEMP 12 16
MOVE TEMP 14 CALL TEMP 13 ( TEMP 11 )
MOVE TEMP 15 CALL TEMP 10 ( TEMP 8  TEMP 14 )
MOVE TEMP 7 TEMP 15
JUMP L56
L55
MOVE TEMP 16 1
MOVE TEMP 7 TEMP 16
L56
NOOP
MOVE TEMP 17 TEMP 1
HLOAD TEMP 18 TEMP 17 0
HLOAD TEMP 19 TEMP 18 20
MOVE TEMP 20 CALL TEMP 19 ( TEMP 17 )
PRINT TEMP 20
MOVE TEMP 21 TEMP 1
HLOAD TEMP 22 TEMP 21 0
HLOAD TEMP 23 TEMP 22 28
MOVE TEMP 24 CALL TEMP 23 ( TEMP 21 )
CJUMP TEMP 24 L57
MOVE TEMP 25 TEMP 0
HLOAD TEMP 26 TEMP 25 0
HLOAD TEMP 27 TEMP 26 76
MOVE TEMP 28 TEMP 1
HLOAD TEMP 29 TEMP 28 0
HLOAD TEMP 30 TEMP 29 12
MOVE TEMP 31 CALL TEMP 30 ( TEMP 28 )
MOVE TEMP 32 CALL TEMP 27 ( TEMP 25  TEMP 31 )
MOVE TEMP 7 TEMP 32
JUMP L58
L57
MOVE TEMP 33 1
MOVE TEMP 7 TEMP 33
L58
NOOP
MOVE TEMP 34 1
RETURN TEMP 34
END
Tree_accept [2]
BEGIN
MOVE TEMP 3 333
PRINT TEMP 3
MOVE TEMP 5 TEMP 1
HLOAD TEMP 6 TEMP 5 0
HLOAD TEMP 7 TEMP 6 0
MOVE TEMP 8 CALL TEMP 7 ( TEMP 5  TEMP 0 )
MOVE TEMP 4 TEMP 8
MOVE TEMP 9 0
RETURN TEMP 9
END
Visitor_visit [2]
BEGIN
MOVE TEMP 3 TEMP 1
HLOAD TEMP 4 TEMP 3 0
HLOAD TEMP 5 TEMP 4 28
MOVE TEMP 6 CALL TEMP 5 ( TEMP 3 )
CJUMP TEMP 6 L59
MOVE TEMP 7 TEMP 1
HLOAD TEMP 8 TEMP 7 0
HLOAD TEMP 9 TEMP 8 12
MOVE TEMP 10 CALL TEMP 9 ( TEMP 7 )
HSTORE TEMP 0 8 TEMP 10
HLOAD TEMP 13 TEMP 0 8
MOVE TEMP 12 TEMP 13
HLOAD TEMP 14 TEMP 12 0
HLOAD TEMP 15 TEMP 14 80
MOVE TEMP 16 CALL TEMP 15 ( TEMP 12  TEMP 0 )
MOVE TEMP 11 TEMP 16
JUMP L60
L59
MOVE TEMP 17 0
MOVE TEMP 11 TEMP 17
L60
NOOP
MOVE TEMP 18 TEMP 1
HLOAD TEMP 19 TEMP 18 0
HLOAD TEMP 20 TEMP 19 32
MOVE TEMP 21 CALL TEMP 20 ( TEMP 18 )
CJUMP TEMP 21 L61
MOVE TEMP 22 TEMP 1
HLOAD TEMP 23 TEMP 22 0
HLOAD TEMP 24 TEMP 23 16
MOVE TEMP 25 CALL TEMP 24 ( TEMP 22 )
HSTORE TEMP 0 4 TEMP 25
HLOAD TEMP 27 TEMP 0 4
MOVE TEMP 26 TEMP 27
HLOAD TEMP 28 TEMP 26 0
HLOAD TEMP 29 TEMP 28 80
MOVE TEMP 30 CALL TEMP 29 ( TEMP 26  TEMP 0 )
MOVE TEMP 11 TEMP 30
JUMP L62
L61
MOVE TEMP 31 0
MOVE TEMP 11 TEMP 31
L62
NOOP
MOVE TEMP 32 0
RETURN TEMP 32
END
MyVisitor_visit [2]
BEGIN
MOVE TEMP 3 TEMP 1
HLOAD TEMP 4 TEMP 3 0
HLOAD TEMP 5 TEMP 4 28
MOVE TEMP 6 CALL TEMP 5 ( TEMP 3 )
CJUMP TEMP 6 L63
MOVE TEMP 7 TEMP 1
HLOAD TEMP 8 TEMP 7 0
HLOAD TEMP 9 TEMP 8 12
MOVE TEMP 10 CALL TEMP 9 ( TEMP 7 )
HSTORE TEMP 0 8 TEMP 10
HLOAD TEMP 13 TEMP 0 8
MOVE TEMP 12 TEMP 13
HLOAD TEMP 14 TEMP 12 0
HLOAD TEMP 15 TEMP 14 80
MOVE TEMP 16 CALL TEMP 15 ( TEMP 12  TEMP 0 )
MOVE TEMP 11 TEMP 16
JUMP L64
L63
MOVE TEMP 17 0
MOVE TEMP 11 TEMP 17
L64
NOOP
MOVE TEMP 18 TEMP 1
HLOAD TEMP 19 TEMP 18 0
HLOAD TEMP 20 TEMP 19 20
MOVE TEMP 21 CALL TEMP 20 ( TEMP 18 )
PRINT TEMP 21
MOVE TEMP 22 TEMP 1
HLOAD TEMP 23 TEMP 22 0
HLOAD TEMP 24 TEMP 23 32
MOVE TEMP 25 CALL TEMP 24 ( TEMP 22 )
CJUMP TEMP 25 L65
MOVE TEMP 26 TEMP 1
HLOAD TEMP 27 TEMP 26 0
HLOAD TEMP 28 TEMP 27 16
MOVE TEMP 29 CALL TEMP 28 ( TEMP 26 )
HSTORE TEMP 0 4 TEMP 29
HLOAD TEMP 31 TEMP 0 4
MOVE TEMP 30 TEMP 31
HLOAD TEMP 32 TEMP 30 0
HLOAD TEMP 33 TEMP 32 80
MOVE TEMP 34 CALL TEMP 33 ( TEMP 30  TEMP 0 )
MOVE TEMP 11 TEMP 34
JUMP L66
L65
MOVE TEMP 35 0
MOVE TEMP 11 TEMP 35
L66
NOOP
MOVE TEMP 36 0
RETURN TEMP 36
END
