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

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

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