extract private helper methods from call method