TITLE "mp3test.a -- test data for MP3" INT ROOT NULL = 0 ; tool to build the node data structure, the sons are optional MACRO NODE =x,=y,text,son1,son2,son3,son4,son5 H x H y W TEXTLC IF LEN(son1) > 0 CHILDREN son1,son2,son3,son4,son5 ENDIF W NULL SAVELC = . . = TEXTLC ASCII text,0 TEXTLC = . . = SAVELC ENDMAC ; handle variable numbers of children (up to 5) MACRO CHILDREN a,b,c,d,e W a IF LEN(b) > 0 CHILDREN b,c,d,e ENDIF ENDMAC ROOT: NODE 25,4,"limericks",SON1,SON2,SON3,SON4,TEST SON1: NODE 16,2,"from",GS1,GS2 SON2: NODE 29,3,"pity",GS3,GS4 SON3: NODE 28,5,"his",GS5,GS6 SON4: NODE 16,6,"composed",GS7 GS1: NODE 10,2,"A",GGS1 GS2: NODE 26,2,"City",GGS2 GS3: NODE 18,3,"it",GGS3,GGS4,GGS5 GS4: NODE 18,4,"though",GGS6 GS5: NODE 13,5,"none",GGS7,GGS8 GS6: NODE 32,5,"town,",GGS9 GS7: NODE 30,6,"ditty.",GGS10 GGS1: NODE 12,2,"man" GGS2: NODE 21,2,"Iowa" GGS3: NODE 10,3,"thought" GGS4: NODE 21,3,"a" GGS5: NODE 23,3,"great" GGS6: NODE 13,4,"that" GGS7: NODE 35,4,"abound" GGS8: NODE 18,5,"mentioned" GGS9: NODE 13,6,"he",GGGS1 GGS10: NODE 25,6,"this" GGGS1: NODE 10,6,"so" TEST: NODE 10,8,"Your program does postorder traversal.",TEST1 TEST1: NODE 28,8,"preorder traversal. " ; put all text strings here TEXTLC = . END