code: def _find_primary_without_dot_start(self, offset):
          
          last_atom = offset
          offset = self._find_last_non_space_char(last_atom)
          while offset > 0 and self.code[offset] in ')]':
              last_atom = self._find_parens_start(offset)
              offset = self._find_last_non_space_char(last_atom - 1)
          if offset >= 0 and (self.code[offset] in '"\'})]' or
                              self._is_id_char(offset)):
              atom_start = self._find_atom_start(offset)
              if not keyword.iskeyword(self.code[atom_start:offset + 1]):
                  return atom_start
          return last_atom
docs: It tries to find the undotted primary start
  
          It is different from `self._get_atom_start()` in that it
          follows function calls, too; such as in ``f(x)``.