code: def IndexedREMap(*re_strings, **kwargs):
      
      default = kwargs.get('default', 0)
      offset = kwargs.get('offset', 1)
      string_index_pairs = []
      for index, string_or_tuple in enumerate(re_strings, offset):
          if isinstance(string_or_tuple, six.string_types):
              string_or_tuple = (string_or_tuple,)
          for re_string in string_or_tuple:
              string_index_pairs.append((re_string, index))
      remap = REMap.from_string_pairs(string_index_pairs,
                                      default=default)
      return remap
docs: Build a :class:`~.REMap` from the provided regular expression string.
      Each string will be associated with the index corresponding to its position
      in the argument list.
  
      :param re_strings: The re_strings that will serve as keys in the map.
      :param default: The value to return if none of the regular expressions match
      :param offset: The offset at which to start indexing for regular expressions
                     defaults to 1.