*SUPPORT*
IN: dax wif tufa OUT: YELLOW PURPLE YELLOW PURPLE
IN: tufa blicket dax OUT: YELLOW PURPLE
IN: fep tufa blicket fep dax fep kiki fep OUT: BLUE BLUE YELLOW BLUE PURPLE BLUE
IN: tufa tufa OUT: YELLOW YELLOW
IN: tufa tufa tufa wif zup OUT: YELLOW YELLOW GREEN YELLOW GREEN YELLOW
IN: tufa blicket fep wif tufa OUT: YELLOW YELLOW BLUE YELLOW BLUE
IN: zup wif zup OUT: GREEN GREEN GREEN GREEN
IN: tufa wif fep OUT: BLUE YELLOW BLUE YELLOW
IN: fep OUT: BLUE
IN: dax OUT: PURPLE
IN: fep wif fep kiki fep OUT: BLUE BLUE BLUE BLUE BLUE
IN: dax wif fep kiki fep blicket tufa OUT: BLUE YELLOW BLUE PURPLE BLUE PURPLE
IN: dax wif dax OUT: PURPLE PURPLE PURPLE PURPLE
IN: dax wif zup OUT: GREEN PURPLE GREEN PURPLE

*QUERY*
IN: tufa wif dax OUT: PURPLE YELLOW PURPLE YELLOW
IN: zup zup wif zup OUT: GREEN GREEN GREEN GREEN GREEN
IN: tufa OUT: YELLOW
IN: dax fep fep wif tufa OUT: PURPLE BLUE YELLOW BLUE YELLOW BLUE
IN: tufa blicket tufa wif tufa OUT: YELLOW YELLOW YELLOW YELLOW YELLOW
IN: fep wif tufa OUT: YELLOW BLUE YELLOW BLUE
IN: fep blicket tufa OUT: BLUE YELLOW
IN: dax blicket dax OUT: PURPLE PURPLE
IN: zup wif dax OUT: PURPLE GREEN PURPLE GREEN
IN: zup blicket zup wif fep OUT: GREEN BLUE GREEN BLUE GREEN

*GRAMMAR*
zup -> GREEN 
 tufa -> YELLOW 
 fep -> BLUE 
 dax -> PURPLE 
 u1 blicket x1 -> [u1] [x1] 
 x1 kiki x2 -> [x2] [x1] 
 u1 wif u2 -> [u2] [u1] [u2] [u1] 
 u1 x1 -> [u1] [x1] 
 