code: def _translate_struct(inner_dict):
      
      try:
          optional = inner_dict['optional'].items()
          required = inner_dict['required'].items()
      except KeyError as ex:
          raise DeserializationError("Missing key: {}".format(ex))
      except AttributeError as ex:
          raise DeserializationError(
              "Invalid Structure: {}".format(inner_dict))
  
      val_dict = {k: _translate(v) for k, v in required}
      val_dict.update({Optional(k): _translate(v) for k, v in optional})
      return val_dict
docs: Translate a teleport Struct into a val subschema.