Extending product functions