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

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

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