def __setattr__(self, keyName, value):
oga = object.__getattribute__<EOL>if keyName not in ('<STR_LIT>', '<STR_LIT>'):<EOL><INDENT>fields = oga(self, '<STR_LIT>')<EOL>try:<EOL><INDENT>idx = fields.index(keyName)<EOL><DEDENT>except:<EOL><INDENT>idx = -<NUM_LIT:1><EOL><DEDENT>if idx != -<NUM_LIT:1>:<EOL><INDENT>value = fields[idx].fromInput(value)<EOL><DEDENT><DEDENT>object.__setattr__(self, keyName, value)<EOL>
__setattr__ - Will be used to set an attribute on this object.

  If the attribute is a field (in self.FIELDS), it will be converted via the field type's #fromInput method.

  Otherwise, it will just set the attribute on this object.