maxProduct reimpl