moved product behaviour into two different behaviours