impl sum