product functs update 5 - 4