manual product matrix
consistent variable ordering: last changes fastest