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

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

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