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

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

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