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

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

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