*SUPPORT*
IN: zup OUT: PINK
IN: zup zup zup blicket gazzer OUT: PINK PINK PURPLE PINK
IN: gazzer blicket gazzer OUT: PURPLE PURPLE
IN: gazzer blicket zup fep OUT: PINK PURPLE PINK PURPLE
IN: gazzer dax blicket wif fep OUT: PURPLE BLUE RED PURPLE BLUE RED
IN: gazzer OUT: PURPLE
IN: zup zup fep OUT: PINK PINK PINK PINK
IN: zup gazzer kiki wif blicket wif OUT: PINK BLUE BLUE PURPLE BLUE BLUE
IN: dax dax blicket wif OUT: RED BLUE RED
IN: zup kiki dax fep OUT: RED PINK RED RED PINK RED
IN: wif fep OUT: BLUE BLUE
IN: dax kiki dax OUT: RED RED RED
IN: zup kiki dax OUT: RED PINK RED
IN: dax dax gazzer gazzer fep OUT: RED RED PURPLE PURPLE RED RED PURPLE PURPLE

*QUERY*
IN: dax wif OUT: RED BLUE
IN: gazzer fep OUT: PURPLE PURPLE
IN: wif kiki dax OUT: RED BLUE RED
IN: wif OUT: BLUE
IN: gazzer blicket dax OUT: RED PURPLE
IN: dax zup blicket wif OUT: RED BLUE PINK
IN: wif kiki dax blicket wif OUT: BLUE RED BLUE BLUE RED
IN: wif blicket zup OUT: PINK BLUE
IN: wif blicket dax OUT: RED BLUE
IN: dax OUT: RED

*GRAMMAR*
wif -> BLUE 
 gazzer -> PURPLE 
 zup -> PINK 
 dax -> RED 
 u1 blicket u2 -> [u2] [u1] 
 x1 fep -> [x1] [x1] 
 u1 kiki x1 -> [x1] [u1] [x1] 
 u1 x1 -> [u1] [x1] 
 