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

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

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