code: def transformFromNative(self):
          
          if self.isNative and self.behavior and self.behavior.hasNative:
              try:
                  return self.behavior.transformFromNative(self)
              except Exception as e:
                  # wrap errors in transformation in a NativeError
                  lineNumber = getattr(self, 'lineNumber', None)
                  if isinstance(e, NativeError):
                      if lineNumber is not None:
                          e.lineNumber = lineNumber
                      raise
                  else:
                      msg = "In transformFromNative, unhandled exception on line %s %s: %s"
                      msg = msg % (lineNumber, sys.exc_info()[0], sys.exc_info()[1])
                      raise NativeError(msg, lineNumber)
          else:
              return self
docs: Return self transformed into a ContentLine or Component if needed.
  
          May have side effects.  If it does, transformFromNative and
          transformToNative MUST have perfectly inverse side effects. Allowing
          such side effects is convenient for objects whose transformations only
          change a few attributes.
  
          Note that it isn't always possible for transformFromNative to be a
          perfect inverse of transformToNative, in such cases transformFromNative
          should return a new object, not self after modifications.