*SUPPORT*
IN: lug OUT: RED
IN: lug zup blicket fep dax OUT: PURPLE RED BLUE
IN: blicket dax wif dax OUT: PURPLE BLUE BLUE
IN: dax OUT: BLUE
IN: gazzer zup gazzer wif lug fep blicket OUT: YELLOW YELLOW RED PURPLE
IN: dax lug wif gazzer fep gazzer OUT: BLUE RED YELLOW YELLOW
IN: blicket lug OUT: PURPLE RED
IN: blicket lug zup lug zup gazzer fep blicket OUT: PURPLE YELLOW RED RED PURPLE
IN: dax zup gazzer OUT: YELLOW BLUE
IN: gazzer gazzer zup dax fep lug OUT: YELLOW BLUE YELLOW RED
IN: blicket zup dax OUT: BLUE PURPLE
IN: gazzer zup blicket dax OUT: PURPLE BLUE YELLOW
IN: lug lug wif gazzer wif dax wif blicket OUT: RED RED YELLOW BLUE PURPLE
IN: gazzer wif dax OUT: YELLOW BLUE

*QUERY*
IN: lug gazzer fep dax fep gazzer fep blicket OUT: RED YELLOW BLUE YELLOW PURPLE
IN: dax zup blicket gazzer blicket gazzer zup gazzer OUT: PURPLE YELLOW PURPLE YELLOW YELLOW BLUE
IN: lug zup blicket OUT: PURPLE RED
IN: lug gazzer zup lug wif gazzer fep lug OUT: RED RED YELLOW YELLOW RED
IN: blicket OUT: PURPLE
IN: gazzer dax OUT: YELLOW BLUE
IN: lug dax lug wif blicket OUT: RED BLUE RED PURPLE
IN: dax lug fep lug wif dax OUT: BLUE RED RED BLUE
IN: lug gazzer fep dax wif lug OUT: RED YELLOW BLUE RED
IN: gazzer OUT: YELLOW

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