re-organization, private methods