generated products model + added gems for pleasure