rephrase GArrow{Sum,Prod} to make instance inference easier