*SUPPORT*
IN: kiki lug blicket dax dax OUT: YELLOW RED YELLOW RED YELLOW RED YELLOW RED
IN: kiki OUT: RED
IN: gazzer OUT: PINK
IN: kiki zup OUT: RED GREEN
IN: zup OUT: GREEN
IN: gazzer zup dax OUT: PINK GREEN PINK GREEN
IN: zup wif dax OUT: GREEN GREEN GREEN GREEN
IN: blicket dax OUT: YELLOW YELLOW
IN: gazzer wif wif OUT: PINK PINK PINK PINK
IN: kiki wif dax OUT: RED RED RED RED
IN: zup blicket wif wif OUT: GREEN YELLOW GREEN YELLOW GREEN YELLOW GREEN YELLOW
IN: blicket OUT: YELLOW
IN: kiki dax dax dax OUT: RED RED RED RED RED RED RED RED
IN: gazzer lug gazzer wif wif OUT: PINK PINK PINK PINK PINK

*QUERY*
IN: zup dax OUT: GREEN GREEN
IN: kiki blicket wif OUT: RED YELLOW RED YELLOW
IN: gazzer zup OUT: PINK GREEN
IN: blicket gazzer OUT: YELLOW PINK
IN: kiki lug gazzer kiki dax OUT: PINK RED RED PINK RED RED
IN: gazzer kiki wif dax OUT: PINK RED PINK RED PINK RED PINK RED
IN: gazzer zup zup OUT: PINK GREEN GREEN
IN: blicket wif dax OUT: YELLOW YELLOW YELLOW YELLOW
IN: kiki wif OUT: RED RED
IN: blicket wif OUT: YELLOW YELLOW

*GRAMMAR*
zup -> GREEN 
 kiki -> RED 
 gazzer -> PINK 
 blicket -> YELLOW 
 x1 dax -> [x1] [x1] 
 x1 lug x2 -> [x2] [x1] 
 x1 wif -> [x1] [x1] 
 u1 x1 -> [u1] [x1] 
 