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

*QUERY*
IN: kiki OUT: PURPLE
IN: lug zup gazzer OUT: YELLOW PINK PINK
IN: lug kiki zup lug OUT: PINK PINK PURPLE PURPLE
IN: kiki kiki OUT: PURPLE PURPLE
IN: wif zup lug OUT: PINK BLUE BLUE
IN: gazzer OUT: YELLOW
IN: wif lug OUT: BLUE PINK
IN: lug OUT: PINK
IN: gazzer zup gazzer OUT: YELLOW YELLOW YELLOW
IN: wif OUT: BLUE

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