*SUPPORT*
IN: dax zup dax zup fep OUT: BLUE PINK PINK
IN: dax OUT: PINK
IN: wif tufa OUT: RED RED RED
IN: dax dax tufa zup dax zup fep OUT: BLUE PINK PINK PINK PINK PINK
IN: dax tufa OUT: PINK PINK PINK
IN: fep fep OUT: BLUE BLUE
IN: blicket wif tufa zup wif gazzer blicket tufa OUT: RED GREEN RED RED RED GREEN GREEN GREEN
IN: wif fep gazzer wif zup blicket OUT: RED BLUE GREEN RED
IN: wif fep tufa gazzer wif tufa zup fep OUT: RED BLUE BLUE BLUE BLUE RED RED RED
IN: blicket blicket fep fep zup blicket OUT: GREEN GREEN GREEN BLUE BLUE
IN: blicket OUT: GREEN
IN: blicket tufa gazzer fep wif OUT: GREEN GREEN GREEN BLUE RED
IN: wif OUT: RED
IN: wif dax tufa OUT: RED PINK PINK PINK

*QUERY*
IN: fep tufa OUT: BLUE BLUE BLUE
IN: wif blicket tufa zup fep OUT: BLUE RED GREEN GREEN GREEN
IN: fep dax tufa OUT: BLUE PINK PINK PINK
IN: blicket wif tufa zup blicket zup fep OUT: BLUE GREEN GREEN RED RED RED
IN: blicket tufa OUT: GREEN GREEN GREEN
IN: blicket zup wif OUT: RED GREEN
IN: fep tufa gazzer fep tufa zup fep OUT: BLUE BLUE BLUE BLUE BLUE BLUE BLUE
IN: blicket wif dax fep OUT: GREEN RED PINK BLUE
IN: blicket tufa gazzer fep dax tufa zup dax OUT: GREEN GREEN GREEN PINK BLUE PINK PINK PINK
IN: fep OUT: BLUE

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