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

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

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