<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def add_form_widget_attr(field, attr_name, attr_value, replace=0):
 """ Adds widget attributes to a bound form field. This is helpful if you would like to add a certain class to all your forms (i.e. `form-control` to all form fields when you are using Bootstrap):
: {% load libs_tags %} {% for field in form.fields %} {% add_form_widget_attr field 'class' 'form-control' as field_ %} {{ field_ }} {% endfor %} The tag will check if the attr already exists and only append your value. If you would like to replace existing attrs, set `replace=1`:: {% add_form_widget_attr field 'class' 'form-control' replace=1 as field_ %} """

    if not replace:
        attr = field.field.widget.attrs.get(attr_name, '')
        attr += force_text(attr_value)
        field.field.widget.attrs[attr_name] = attr
        return field
    else:
        field.field.widget.attrs[attr_name] = attr_value
        return field