code: def from_json(cls, json_data):
          
          data = json.loads(json_data)
          result = cls(data)
          if hasattr(result, "_from_json"):
              result._from_json()
          return result
docs: Tries to convert a JSON representation to an object of the same
          type as self
  
          A class can provide a _fromJSON implementation in order to do specific
          type checking or other custom implementation details. This method
          will throw a ValueError for invalid JSON, a TypeError for
          improperly constructed, but valid JSON, and any custom errors
          that can be be propagated from class constructors.
  
          :param json_data: The JSON string to convert
          :type json_data: str | unicode
  
          :raises: TypeError, ValueError, LanguageMapInitError