some tuning on factorization