code: def make_valid_string(self, string=''):
          
          if not self.is_valid_str(string):
              if string in self.val_map and not self.allow_dups:
                  raise IndexError("Value {} has already been given to the sanitizer".format(string))
              internal_name = super(_NameSanitizer, self).make_valid_string()
              self.val_map[string] = internal_name
              return internal_name
          else:
              if self.map_valid:
                  self.val_map[string] = string
              return string
docs: Inputting a value for the first time