docs: def scrobble_many(self, tracks):
          """
          Used to scrobble a batch of tracks at once. The parameter tracks is a
          sequence of dicts per track containing the keyword arguments as if
          passed to the scrobble() method.
          """
  
          tracks_to_scrobble = tracks[:50]
          if len(tracks) > 50:
              remaining_tracks = tracks[50:]
          else:
              remaining_tracks = None
  
          params = {}
          for i in range(len(tracks_to_scrobble)):
  
              params["artist[%d]" % i] = tracks_to_scrobble[i]["artist"]
              params["track[%d]" % i] = tracks_to_scrobble[i]["title"]
  
              additional_args = (
                  "timestamp",
                  "album",
                  "album_artist",
                  "context",
                  "stream_id",
                  "track_number",
                  "mbid",
                  "duration",
              )
              args_map_to = {  # so friggin lazy
                  "album_artist": "albumArtist",
                  "track_number": "trackNumber",
                  "stream_id": "streamID",
              }
  
              for arg in additional_args:
  
                  if arg in tracks_to_scrobble[i] and tracks_to_scrobble[i][arg]:
                      if arg in args_map_to:
                          maps_to = args_map_to[arg]
                      else:
                          maps_to = arg
  
                      params["%s[%d]" % (maps_to, i)] = tracks_to_scrobble[i][arg]
  
          _Request(self, "track.scrobble", params).execute()
  
          if remaining_tracks:
              self.scrobble_many(remaining_tracks)