split improved
minor refactor
test refactor
split improved