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

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

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