reduce decode part