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

*QUERY*
IN: dax blicket dax OUT: PURPLE PURPLE
IN: dax OUT: PURPLE
IN: zup blicket wif OUT: BLUE PINK
IN: wif fep wif fep dax OUT: PURPLE PURPLE PINK PINK PINK
IN: kiki OUT: YELLOW
IN: zup fep dax OUT: PURPLE PURPLE BLUE
IN: wif blicket wif fep zup OUT: BLUE BLUE PINK PINK
IN: kiki blicket zup OUT: YELLOW BLUE
IN: wif OUT: PINK
IN: zup blicket kiki fep kiki fep kiki OUT: YELLOW YELLOW YELLOW YELLOW BLUE YELLOW

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