*SUPPORT*
IN: wif gazzer OUT: BLUE BLUE
IN: zup dax gazzer kiki wif kiki wif OUT: PURPLE RED RED BLUE BLUE
IN: zup OUT: PURPLE
IN: zup fep OUT: PURPLE YELLOW
IN: fep wif gazzer kiki wif kiki wif OUT: YELLOW BLUE BLUE BLUE BLUE
IN: fep fep zup blicket dax OUT: YELLOW YELLOW PURPLE RED
IN: dax dax gazzer OUT: RED RED RED
IN: wif zup OUT: BLUE PURPLE
IN: wif dax blicket dax blicket zup OUT: BLUE RED RED PURPLE
IN: zup fep blicket dax blicket dax OUT: PURPLE YELLOW RED RED
IN: zup blicket wif kiki fep OUT: PURPLE BLUE YELLOW
IN: dax zup wif dax fep gazzer blicket wif OUT: RED PURPLE BLUE RED YELLOW YELLOW BLUE
IN: dax zup dax kiki fep OUT: RED PURPLE RED YELLOW
IN: wif OUT: BLUE

*QUERY*
IN: wif dax zup OUT: BLUE RED PURPLE
IN: fep gazzer OUT: YELLOW YELLOW
IN: dax gazzer OUT: RED RED
IN: fep wif dax OUT: YELLOW BLUE RED
IN: zup blicket zup OUT: PURPLE PURPLE
IN: dax zup gazzer blicket fep OUT: RED PURPLE PURPLE YELLOW
IN: wif kiki fep OUT: BLUE YELLOW
IN: dax OUT: RED
IN: fep dax kiki fep OUT: YELLOW RED YELLOW
IN: fep dax OUT: YELLOW RED

*GRAMMAR*
dax -> RED 
 wif -> BLUE 
 fep -> YELLOW 
 zup -> PURPLE 
 x1 blicket u1 -> [x1] [u1] 
 x1 kiki u1 -> [x1] [u1] 
 u1 gazzer -> [u1] [u1] 
 u1 x1 -> [u1] [x1] 
 