update categories approach