code: def georadiusbymember(self, key, member, radius, unit='m', *,
                            with_dist=False, with_hash=False, with_coord=False,
                            count=None, sort=None, encoding=_NOTSET):
          
          args = validate_georadius_options(
              radius, unit, with_dist, with_hash, with_coord, count, sort
          )
  
          fut = self.execute(
              b'GEORADIUSBYMEMBER', key, member, radius,
              unit, *args, encoding=encoding)
          if with_dist or with_hash or with_coord:
              return wait_convert(fut, make_geomember,
                                  with_dist=with_dist,
                                  with_hash=with_hash,
                                  with_coord=with_coord)
          return fut
docs: Query a sorted set representing a geospatial index to fetch members
          matching a given maximum distance from a member.
  
          Return value follows Redis convention:
  
          * if none of ``WITH*`` flags are set -- list of strings returned:
  
              >>> await redis.georadiusbymember('Sicily', 'Palermo', 200, 'km')
              [b"Palermo", b"Catania"]
  
          * if any flag (or all) is set -- list of named tuples returned:
  
              >>> await redis.georadiusbymember('Sicily', 'Palermo', 200, 'km',
              ...                               with_dist=True)
              [GeoMember(name=b"Palermo", dist=190.4424, hash=None, coord=None),
               GeoMember(name=b"Catania", dist=56.4413, hash=None, coord=None)]
  
          :raises TypeError: radius is not float or int
          :raises TypeError: count is not int
          :raises ValueError: if unit not equal ``m``, ``km``, ``mi`` or ``ft``
          :raises ValueError: if sort not equal ``ASC`` or ``DESC``
  
          :rtype: list[str] or list[GeoMember]