[refac] extract methods + rename 'term' to 'factor'