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

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

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