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

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

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