*SUPPORT*
IN: wif lug blicket OUT: RED GREEN
IN: wif blicket blicket lug blicket zup OUT: RED GREEN GREEN GREEN RED GREEN GREEN GREEN
IN: blicket wif lug wif fep wif OUT: RED GREEN RED RED RED GREEN RED RED
IN: dax blicket dax fep dax OUT: BLUE BLUE GREEN BLUE BLUE BLUE GREEN BLUE
IN: blicket blicket OUT: GREEN GREEN
IN: wif wif lug wif zup OUT: RED RED RED RED RED RED
IN: wif fep blicket lug blicket OUT: GREEN GREEN RED GREEN GREEN RED
IN: dax dax lug dax zup OUT: BLUE BLUE BLUE BLUE BLUE BLUE
IN: wif OUT: RED
IN: dax fep dax lug gazzer OUT: BLUE PINK BLUE BLUE PINK BLUE
IN: blicket lug gazzer OUT: GREEN PINK
IN: blicket lug wif fep gazzer OUT: PINK GREEN RED PINK GREEN RED
IN: gazzer lug dax OUT: PINK BLUE
IN: dax wif blicket fep wif OUT: RED BLUE RED GREEN RED BLUE RED GREEN

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

*GRAMMAR*
blicket -> GREEN 
 wif -> RED 
 dax -> BLUE 
 gazzer -> PINK 
 x1 zup -> [x1] [x1] 
 x1 fep x2 -> [x2] [x1] [x2] [x1] 
 u1 lug u2 -> [u1] [u2] 
 u1 x1 -> [u1] [x1] 
 