combination generator optimized