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

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

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