added reduce right