*SUPPORT*
IN: zup OUT: RED
IN: blicket OUT: GREEN
IN: dax tufa dax OUT: PURPLE PURPLE
IN: blicket tufa zup wif dax tufa dax OUT: PURPLE PURPLE GREEN RED
IN: zup gazzer zup OUT: RED RED
IN: dax tufa dax wif dax gazzer zup OUT: PURPLE RED PURPLE PURPLE
IN: blicket wif kiki tufa dax OUT: YELLOW PURPLE GREEN
IN: kiki OUT: YELLOW
IN: kiki tufa dax OUT: YELLOW PURPLE
IN: dax gazzer dax OUT: PURPLE PURPLE
IN: kiki gazzer dax wif kiki tufa zup OUT: YELLOW RED YELLOW PURPLE
IN: blicket blicket OUT: GREEN GREEN
IN: blicket tufa zup OUT: GREEN RED
IN: dax wif zup dax zup blicket gazzer dax OUT: RED PURPLE RED GREEN PURPLE PURPLE

*QUERY*
IN: zup tufa dax wif blicket gazzer blicket OUT: GREEN GREEN RED PURPLE
IN: dax wif zup tufa zup OUT: RED RED PURPLE
IN: kiki zup wif zup kiki gazzer zup OUT: RED YELLOW RED YELLOW RED
IN: blicket tufa kiki OUT: GREEN YELLOW
IN: blicket tufa blicket OUT: GREEN GREEN
IN: dax tufa zup OUT: PURPLE RED
IN: dax OUT: PURPLE
IN: blicket gazzer dax OUT: GREEN PURPLE
IN: blicket gazzer zup wif zup OUT: RED GREEN RED
IN: dax gazzer blicket OUT: PURPLE GREEN

*GRAMMAR*
dax -> PURPLE 
 kiki -> YELLOW 
 zup -> RED 
 blicket -> GREEN 
 u1 tufa u2 -> [u1] [u2] 
 u1 gazzer u2 -> [u1] [u2] 
 x1 wif x2 -> [x2] [x1] 
 u1 x1 -> [u1] [x1] 
 