refactor how helpers work