Testing @jin: @jin 5 6 => FALSE (correct) @jin 6 5 => TRUE (correct) @jin 0 5 => FALSE (correct) @jin 0 0 => TRUE (correct) Testing @get_child: @get_child 5 => 6 (correct) @get_child 7 => 0 (correct) @get_child 0 => 0 (correct) Testing @get_parent: @get_parent 5 => 0 (correct) @get_parent 6 => 5 (correct) @get_parent 0 => 0 (correct) Testing @get_sibling: @get_sibling 5 => 0 (correct) @get_sibling 6 => 7 (correct) @get_sibling 0 => 0 (correct) Testing @get_prop_addr: @get_prop_addr 5 4 => 571 (correct) @get_prop_addr 7 4 => 0 (correct) @get_prop_addr 0 4 => 0 (correct) Testing @get_prop: @get_prop 5 4 => 1 (correct) @get_prop 6 4 => 0 (correct) @get_prop 0 4 => 0 (correct) Testing @clear_attr: @clear_attr 5 0 @clear_attr 5 1 @clear_attr 0 0 @clear_attr 0 1 Testing @set_attr: @set_attr 5 0 @set_attr 5 1 @set_attr 0 0 (Note: An attempt has been made to set attribute number 0 in object number 0. If the @test_attr test below indicates that this attribute has been set, the interpreter did not ignore the instruction as it should have done.) Testing @test_attr: @test_attr 5 0 => TRUE (correct) @test_attr 5 1 => TRUE (correct) @test_attr 6 0 => FALSE (correct) @test_attr 6 1 => FALSE (correct) @test_attr 0 0 => TRUE (incorrect; shouldn't set attributes in object 0) @test_attr 0 1 => FALSE (correct) Testing @insert_obj: @insert_obj 7 5 @insert_obj 0 5 @insert_obj 5 0 @insert_obj 0 0 Testing remove_obj: @remove_obj 7 @remove_obj 0 Testing get_next_prop: @get_next_prop 5 5 => 4 (correct) @get_next_prop 6 4 => 0 (correct) Fatal error: No such property