datatype 'label evenTree = Empty | Enode of 'label * 'label oddTree * 'label oddTree and 'label oddTree = Onode of 'label * 'label evenTree * 'label evenTree; val t1 = Onode(1,Empty,Empty); val t2 = Onode(2,Empty,Empty); val t3 = Enode(3,t1,t2); val t4 = Onode(4,t3,Empty); val t5 = Enode(5,t4,t4);