extracted methods should be private