minor update reduce & reading reduce