reduce assoc