Functor (Product p q)