make rule.product multivalue.  Cleanup code