              auto_id=self.auto_id,
              prefix=self.add_prefix('__prefix__'),
              empty_permitted=True,
          )
          self.add_fields(form, None)
          return form
  
 
</s> remove         forms = [self._construct_form(i) for i in range(self.total_form_count())]
 </s> add         forms = [self._construct_form(i, **self.get_form_kwargs(i))
                 for i in range(self.total_form_count())]
            **self.get_form_kwargs(None)
              auto_id=self.auto_id,
              prefix=self.add_prefix('__prefix__'),
              empty_permitted=True,
            **self.get_form_kwargs(None)
          )
          self.add_fields(form, None)
          return form
  
keep keep add keep keep keep keep
 Fixed #18166 -- Added form_kwargs support to formsets.

By specifying form_kwargs when instantiating the formset, or overriding
the `get_form_kwargs` method on a formset class, you can pass extra
keyword arguments to the underlying `Form` instances.

Includes tests and documentation update. 
django/forms/formsets.py