refactor jrank some