'Set the value of the named field.  If there is 0 or multiple
fields by that name, it is an error.
Setting the value of a ``<select>`` selects the given option
(and confirms it is an option).  Setting radio fields does the
same.  Checkboxes get boolean values.  You cannot set hidden
fields or buttons.
Use ``.set()`` if there is any ambiguity and you must provide
an index.'

def __setitem__(self, name, value):

    fields = self.fields.get(name)
    assert (fields is not None), ('No    field    by    the    name    %r    found    (fields:    %s)' % (name, ',    '.join(map(repr, self.fields.keys()))))
    assert (len(fields) == 1), ('Multiple    fields    match    %r:    %s' % (name, ',    '.join(map(repr, fields))))
    fields[0].value = value
