docs: def similar(names=None, ids=None, start=0, results=15, buckets=None, limit=False, max_familiarity=None, min_familiarity=None,
              max_hotttnesss=None, min_hotttnesss=None, seed_catalog=None,artist_start_year_before=None, \
              artist_start_year_after=None,artist_end_year_before=None,artist_end_year_after=None):
      """Return similar artists to this one
      
      Args:
      
      Kwargs:
          ids (str/list): An artist id or list of ids
          
          names (str/list): An artist name or list of names
          
          results (int): An integer number of results to return
          
          buckets (list): A list of strings specifying which buckets to retrieve
          
          limit (bool): A boolean indicating whether or not to limit the results to one of the id spaces specified in buckets
          
          start (int): An integer starting value for the result set
          
          max_familiarity (float): A float specifying the max familiarity of artists to search for
          
          min_familiarity (float): A float specifying the min familiarity of artists to search for
          
          max_hotttnesss (float): A float specifying the max hotttnesss of artists to search for
          
          min_hotttnesss (float): A float specifying the max hotttnesss of artists to search for
          
          seed_catalog (str): A string specifying the catalog similar artists are restricted to
      
      Returns:
          A list of similar Artist objects
      
      Example:
  
      >>> some_dudes = [artist.Artist('weezer'), artist.Artist('radiohead')]
      >>> some_dudes
      [<artist - Weezer>, <artist - Radiohead>]
      >>> sims = artist.similar(ids=[art.id for art in some_dudes], results=5)
      >>> sims
      [<artist - The Smashing Pumpkins>, <artist - Biffy Clyro>, <artist - Death Cab for Cutie>, <artist - Jimmy Eat World>, <artist - Nerf Herder>]
      >>> 
  
      """
      
      buckets = buckets or []
      kwargs = {}
  
      if ids:
          if not isinstance(ids, list):
              ids = [ids]
          kwargs['id'] = ids
      if names:
          if not isinstance(names, list):
              names = [names]
          kwargs['name'] = names
      if max_familiarity is not None:
          kwargs['max_familiarity'] = max_familiarity
      if min_familiarity is not None:
          kwargs['min_familiarity'] = min_familiarity
      if max_hotttnesss is not None:
          kwargs['max_hotttnesss'] = max_hotttnesss
      if min_hotttnesss is not None:
          kwargs['min_hotttnesss'] = min_hotttnesss
      if seed_catalog is not None:
          kwargs['seed_catalog'] = seed_catalog
      if start:
          kwargs['start'] = start
      if results:
          kwargs['results'] = results
      if buckets:
          kwargs['bucket'] = buckets
      if limit:
          kwargs['limit'] = 'true'
      if artist_start_year_before:
          kwargs['artist_start_year_before'] = artist_start_year_before
      if artist_start_year_after:
          kwargs['artist_start_year_after'] = artist_start_year_after
      if artist_end_year_before:
          kwargs['artist_end_year_before'] = artist_end_year_before
      if artist_end_year_after:
          kwargs['artist_end_year_after'] = artist_end_year_after
  
  
      result = util.callm("%s/%s" % ('artist', 'similar'), kwargs)
      return [Artist(**util.fix(a_dict)) for a_dict in result['response']['artists']]