code: def to_python(self, value: Optional[str]) -> Optional[Any]:
          
          # https://docs.djangoproject.com/en/1.8/howto/custom-model-fields/
          # log.debug("to_python: {}, {}", value, type(value))
          if isinstance(value, datetime.datetime):
              return value
          if value is None:
              return value
          if value == '':
              return None
          return iso_string_to_python_datetime(value)
docs: Called during deserialization and during form ``clean()`` calls.
          Must deal with an instance of the correct type; a string; or ``None``
          (if the field allows ``null=True``).
          Should raise ``ValidationError`` if problems.