refactoring
tst pass