*SUPPORT*
IN: kiki wif kiki OUT: BLUE BLUE BLUE BLUE
IN: lug gazzer zup gazzer zup OUT: RED RED PURPLE PURPLE RED PURPLE PURPLE
IN: fep fep fep OUT: YELLOW YELLOW YELLOW
IN: zup zup OUT: RED RED
IN: fep OUT: YELLOW
IN: kiki kiki zup OUT: BLUE BLUE RED
IN: lug OUT: PURPLE
IN: kiki kiki blicket kiki lug OUT: BLUE BLUE BLUE PURPLE
IN: kiki kiki gazzer zup OUT: RED BLUE BLUE BLUE BLUE
IN: kiki fep gazzer lug OUT: PURPLE BLUE YELLOW BLUE YELLOW
IN: lug blicket zup blicket zup wif zup OUT: RED PURPLE RED RED PURPLE RED RED RED
IN: kiki gazzer lug wif lug OUT: PURPLE PURPLE BLUE BLUE PURPLE BLUE BLUE PURPLE
IN: kiki blicket fep kiki blicket fep blicket zup OUT: BLUE YELLOW BLUE YELLOW RED
IN: fep wif lug OUT: PURPLE YELLOW YELLOW PURPLE

*QUERY*
IN: zup OUT: RED
IN: fep blicket kiki OUT: YELLOW BLUE
IN: zup wif zup OUT: RED RED RED RED
IN: zup lug kiki wif fep OUT: YELLOW RED PURPLE BLUE RED PURPLE BLUE YELLOW
IN: kiki gazzer lug OUT: PURPLE BLUE BLUE
IN: kiki OUT: BLUE
IN: lug lug OUT: PURPLE PURPLE
IN: fep wif zup OUT: RED YELLOW YELLOW RED
IN: kiki gazzer fep OUT: YELLOW BLUE BLUE
IN: lug wif fep OUT: YELLOW PURPLE PURPLE YELLOW

*GRAMMAR*
fep -> YELLOW 
 zup -> RED 
 kiki -> BLUE 
 lug -> PURPLE 
 x1 wif u1 -> [u1] [x1] [x1] [u1] 
 x1 gazzer u1 -> [u1] [x1] [x1] 
 x1 blicket x2 -> [x1] [x2] 
 u1 x1 -> [u1] [x1] 
 