{% set scope = scope is not null ? scope : prefix %}

{% if blueprints.type %}
    {% set field = blueprints %}
    {% set value = data %}
    {% set default_value = defaults %}

    {% include ["forms/fields/" ~ field.type|replace('.', '/') ~ ".html.twig", 'forms/fields/unknown/unknown.html.twig'] %}

{% else %}
    {% for name, field in blueprints.fields %}
        {% if name starts with '.' %}
            {% set name = name[1:] %}
        {% endif %}

        {% if field.type and name not in skip and not field.skip and not(ignore_not_overrideable and field.overridable is same as(false)) %}
            {% set field = field + {'name': name} %}
            {% set value = nested(data, scope ~ name) %}
            {% set default_value = nested(defaults, scope ~ name) %}

            {% include ["forms/fields/" ~ field.type|replace('.', '/') ~ ".html.twig", 'forms/fields/unknown/unknown.html.twig'] %}
        {% endif %}
    {% endfor %}
{% endif %}
