{% if formset.readonly and not formset.queryset.exists %}
{% else %}
{% for field in formset.forms.0 %}
{% if field.label and not field.is_hidden %}
{{ field.label|safe }}{% if field.field.required and not field|is_checkbox %}*{% endif %}
{% endif %}
{% endfor %}
{% endif %}
{% for field in formset.empty_form %}
{% include 'bootstrap4/field.html' with tag="td" form_show_labels=False %}
{% endfor %}
{% for form in formset %}
{% if form_show_errors and not form.is_extra %}
{% include "bootstrap4/errors.html" %}
{% endif %}
{% for field in form %}
{% with field.field.wrapper_class as wrapper_class %}
{% if field.field.widget.formset_field_template %}
{% include field.field.widget.formset_field_template with tag="td" form_show_labels=False crispy_prepended_text=field.field.widget.crispy_kwargs.prepended_text crispy_appended_text=field.field.widget.crispy_kwargs.appended_text input_size=field.field.widget.crispy_kwargs.input_size %}
{% elif field.field.widget.crispy_kwargs.prepended_text or field.field.widget.crispy_kwargs.appended_text %}
{% include 'django_modals/formset/prepended_appended_text.html' with tag="td" form_show_labels=False crispy_prepended_text=field.field.widget.crispy_kwargs.prepended_text crispy_appended_text=field.field.widget.crispy_kwargs.appended_text input_size=field.field.widget.crispy_kwargs.input_size %}
{% else %}
{% include 'bootstrap4/field.html' with tag="td" form_show_labels=False %}
{% endif %}
{% endwith %}
{% endfor %}
{% endfor %}
{% include "bootstrap4/inputs.html" %}
{% endspecialspaceless %}