decorator sort products