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

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

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