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

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

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