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

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

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