kittycad.models.ok_web_socket_response_data.ModelingData
- class kittycad.models.ok_web_socket_response_data.ModelingData(**data)[source][source]
Bases:
BaseModel
Create a new model by parsing and validating input data from keyword arguments.
Raises [
ValidationError
][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.self
is explicitly positional-only to allowself
as a field name.- __init__(**data)[source]
Create a new model by parsing and validating input data from keyword arguments.
Raises [
ValidationError
][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.self
is explicitly positional-only to allowself
as a field name.
Methods
__init__
(**data)Create a new model by parsing and validating input data from keyword arguments.
construct
([_fields_set])copy
(*[, include, exclude, update, deep])Returns a copy of the model.
dict
(*[, include, exclude, by_alias, ...])from_orm
(obj)json
(*[, include, exclude, by_alias, ...])model_construct
([_fields_set])Creates a new instance of the
Model
class with validated data.model_copy
(*[, update, deep])Usage docs: https://docs.pydantic.dev/2.9/concepts/serialization/#model_copy
model_dump
(*[, mode, include, exclude, ...])Usage docs: https://docs.pydantic.dev/2.9/concepts/serialization/#modelmodel_dump
model_dump_json
(*[, indent, include, ...])Usage docs: https://docs.pydantic.dev/2.9/concepts/serialization/#modelmodel_dump_json
model_json_schema
([by_alias, ref_template, ...])Generates a JSON schema for a model class.
model_parametrized_name
(params)Compute the class name for parametrizations of generic classes.
model_post_init
(_BaseModel__context)Override this method to perform additional initialization after
__init__
andmodel_construct
.model_rebuild
(*[, force, raise_errors, ...])Try to rebuild the pydantic-core schema for the model.
model_validate
(obj, *[, strict, ...])Validate a pydantic model instance.
model_validate_json
(json_data, *[, strict, ...])Usage docs: https://docs.pydantic.dev/2.9/concepts/json/#json-parsing
model_validate_strings
(obj, *[, strict, context])Validate the given object with string data against the Pydantic model.
parse_file
(path, *[, content_type, ...])parse_obj
(obj)parse_raw
(b, *[, content_type, encoding, ...])schema
([by_alias, ref_template])schema_json
(*[, by_alias, ref_template])update_forward_refs
(**localns)validate
(value)Attributes
A dictionary of computed field names and their corresponding
ComputedFieldInfo
objects.Configuration for the model, should be a dictionary conforming to [
ConfigDict
][pydantic.config.ConfigDict].Get extra fields set during validation.
Metadata about the fields defined on the model, mapping of field names to [
FieldInfo
][pydantic.fields.FieldInfo] objects.Returns the set of fields that have been explicitly set on this model instance.
- __annotations__ = {'__class_vars__': 'ClassVar[set[str]]', '__private_attributes__': 'ClassVar[Dict[str, ModelPrivateAttr]]', '__pydantic_complete__': 'ClassVar[bool]', '__pydantic_core_schema__': 'ClassVar[CoreSchema]', '__pydantic_custom_init__': 'ClassVar[bool]', '__pydantic_decorators__': 'ClassVar[_decorators.DecoratorInfos]', '__pydantic_extra__': 'dict[str, Any] | None', '__pydantic_fields_set__': 'set[str]', '__pydantic_generic_metadata__': 'ClassVar[_generics.PydanticGenericMetadata]', '__pydantic_parent_namespace__': 'ClassVar[Dict[str, Any] | None]', '__pydantic_post_init__': "ClassVar[None | Literal['model_post_init']]", '__pydantic_private__': 'dict[str, Any] | None', '__pydantic_root_model__': 'ClassVar[bool]', '__pydantic_serializer__': 'ClassVar[SchemaSerializer]', '__pydantic_validator__': 'ClassVar[SchemaValidator | PluggableSchemaValidator]', '__signature__': 'ClassVar[Signature]', 'model_computed_fields': 'ClassVar[Dict[str, ComputedFieldInfo]]', 'model_config': 'ClassVar[ConfigDict]', 'model_fields': 'ClassVar[Dict[str, FieldInfo]]', 'modeling_response': <class 'pydantic.root_model.RootModel[Annotated[Union[OptionEmpty, OptionExport, OptionSelectWithPoint, OptionHighlightSetEntity, OptionEntityGetChildUuid, OptionEntityGetNumChildren, OptionEntityGetParentId, OptionEntityGetAllChildUuids, OptionEntityGetSketchPaths, OptionLoft, OptionClosePath, OptionCameraDragMove, OptionCameraDragEnd, OptionDefaultCameraGetSettings, OptionDefaultCameraZoom, OptionZoomToFit, OptionViewIsometric, OptionGetNumObjects, OptionDefaultCameraFocusOn, OptionSelectGet, OptionSolid3DGetAllEdgeFaces, OptionSolid3DGetAllOppositeEdges, OptionSolid3DGetOppositeEdge, OptionSolid3DGetNextAdjacentEdge, OptionSolid3DGetPrevAdjacentEdge, OptionGetEntityType, OptionCurveGetControlPoints, OptionCurveGetType, OptionMouseClick, OptionTakeSnapshot, OptionPathGetInfo, OptionPathSegmentInfo, OptionPathGetCurveUuidsForVertices, OptionPathGetCurveUuid, OptionPathGetVertexUuids, OptionPathGetSketchTargetUuid, OptionCurveGetEndPoints, OptionFaceIsPlanar, OptionFaceGetPosition, OptionFaceGetCenter, OptionFaceGetGradient, OptionPlaneIntersectAndProject, OptionImportFiles, OptionImportedGeometry, OptionMass, OptionVolume, OptionDensity, OptionSurfaceArea, OptionCenterOfMass, OptionGetSketchModePlane, OptionEntityGetDistance, OptionEntityLinearPatternTransform, OptionEntityLinearPattern, OptionEntityCircularPattern, OptionSolid3DGetExtrusionFaceInfo, OptionExtrusionFaceInfo], FieldInfo(annotation=NoneType, required=True, discriminator='type')]]'>}[source]
- classmethod __class_getitem__(typevar_values)[source]
- Return type:
type
[BaseModel
] |PydanticRecursiveRef
- __class_vars__: ClassVar[set[str]] = {}[source]
The names of the class variables defined on the model.
- classmethod __get_pydantic_core_schema__(source, handler, /)[source]
Hook into generating the model’s CoreSchema.
- Parameters:
source (
type
[BaseModel
]) – The class we are generating a schema for. This will generally be the same as thecls
argument if this is a classmethod.handler (
GetCoreSchemaHandler
) – A callable that calls into Pydantic’s internal CoreSchema generation logic.
- Return type:
Union
[AnySchema
,NoneSchema
,BoolSchema
,IntSchema
,FloatSchema
,DecimalSchema
,StringSchema
,BytesSchema
,DateSchema
,TimeSchema
,DatetimeSchema
,TimedeltaSchema
,LiteralSchema
,EnumSchema
,IsInstanceSchema
,IsSubclassSchema
,CallableSchema
,ListSchema
,TupleSchema
,SetSchema
,FrozenSetSchema
,GeneratorSchema
,DictSchema
,AfterValidatorFunctionSchema
,BeforeValidatorFunctionSchema
,WrapValidatorFunctionSchema
,PlainValidatorFunctionSchema
,WithDefaultSchema
,NullableSchema
,UnionSchema
,TaggedUnionSchema
,ChainSchema
,LaxOrStrictSchema
,JsonOrPythonSchema
,TypedDictSchema
,ModelFieldsSchema
,ModelSchema
,DataclassArgsSchema
,DataclassSchema
,ArgumentsSchema
,CallSchema
,CustomErrorSchema
,JsonSchema
,UrlSchema
,MultiHostUrlSchema
,DefinitionsSchema
,DefinitionReferenceSchema
,UuidSchema
,ComplexSchema
]- Returns:
A
pydantic-core
CoreSchema
.
- classmethod __get_pydantic_json_schema__(core_schema, handler, /)[source]
Hook into generating the model’s JSON schema.
- Parameters:
core_schema (
Union
[AnySchema
,NoneSchema
,BoolSchema
,IntSchema
,FloatSchema
,DecimalSchema
,StringSchema
,BytesSchema
,DateSchema
,TimeSchema
,DatetimeSchema
,TimedeltaSchema
,LiteralSchema
,EnumSchema
,IsInstanceSchema
,IsSubclassSchema
,CallableSchema
,ListSchema
,TupleSchema
,SetSchema
,FrozenSetSchema
,GeneratorSchema
,DictSchema
,AfterValidatorFunctionSchema
,BeforeValidatorFunctionSchema
,WrapValidatorFunctionSchema
,PlainValidatorFunctionSchema
,WithDefaultSchema
,NullableSchema
,UnionSchema
,TaggedUnionSchema
,ChainSchema
,LaxOrStrictSchema
,JsonOrPythonSchema
,TypedDictSchema
,ModelFieldsSchema
,ModelSchema
,DataclassArgsSchema
,DataclassSchema
,ArgumentsSchema
,CallSchema
,CustomErrorSchema
,JsonSchema
,UrlSchema
,MultiHostUrlSchema
,DefinitionsSchema
,DefinitionReferenceSchema
,UuidSchema
,ComplexSchema
]) – Apydantic-core
CoreSchema. You can ignore this argument and call the handler with a new CoreSchema, wrap this CoreSchema ({'type': 'nullable', 'schema': current_schema}
), or just call the handler with the original schema.handler (
GetJsonSchemaHandler
) – Call into Pydantic’s internal JSON schema generation. This will raise apydantic.errors.PydanticInvalidForJsonSchema
if JSON schema generation fails. Since this gets called byBaseModel.model_json_schema
you can override theschema_generator
argument to that function to change JSON schema generation globally for a type.
- Return type:
- Returns:
A JSON schema, as a Python object.
- __init__(**data)[source]
Create a new model by parsing and validating input data from keyword arguments.
Raises [
ValidationError
][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.self
is explicitly positional-only to allowself
as a field name.
- __pretty__(fmt, **kwargs)[source]
Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __private_attributes__: ClassVar[Dict[str, ModelPrivateAttr]] = {}[source]
Metadata about the private attributes of the model.
- __pydantic_complete__: ClassVar[bool] = True[source]
Whether model building is completed, or if there are still undefined fields.
- __pydantic_core_schema__: ClassVar[CoreSchema] = {'definitions': [{'cls': <class 'kittycad.models.point3d.Point3d'>, 'config': {'title': 'Point3d'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.point3d.Point3d'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.point3d.Point3d'>>]}, 'ref': 'kittycad.models.point3d.Point3d:94091983921120', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'x': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'float'}, 'type': 'model-field'}, 'y': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'float'}, 'type': 'model-field'}, 'z': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'float'}, 'type': 'model-field'}}, 'model_name': 'Point3d', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'kittycad.models.point4d.Point4d'>, 'config': {'title': 'Point4d'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.point4d.Point4d'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.point4d.Point4d'>>]}, 'ref': 'kittycad.models.point4d.Point4d:94091990259824', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'w': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'float'}, 'type': 'model-field'}, 'x': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'float'}, 'type': 'model-field'}, 'y': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'float'}, 'type': 'model-field'}, 'z': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'float'}, 'type': 'model-field'}}, 'model_name': 'Point4d', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'kittycad.models.camera_settings.CameraSettings'>, 'config': {'title': 'CameraSettings'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.camera_settings.CameraSettings'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.camera_settings.CameraSettings'>>]}, 'ref': 'kittycad.models.camera_settings.CameraSettings:94091990263904', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'center': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.point3d.Point3d:94091983921120', 'type': 'definition-ref'}, 'type': 'model-field'}, 'fov_y': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'schema': {'type': 'float'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'orientation': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.point4d.Point4d:94091990259824', 'type': 'definition-ref'}, 'type': 'model-field'}, 'ortho': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'bool'}, 'type': 'model-field'}, 'ortho_scale': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'schema': {'type': 'float'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'pos': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.point3d.Point3d:94091983921120', 'type': 'definition-ref'}, 'type': 'model-field'}, 'up': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.point3d.Point3d:94091983921120', 'type': 'definition-ref'}, 'type': 'model-field'}}, 'model_name': 'CameraSettings', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <enum 'PathCommand'>, 'members': [PathCommand.MOVE_TO, PathCommand.LINE_TO, PathCommand.BEZ_CURVE_TO, PathCommand.NURBS_CURVE_TO, PathCommand.ADD_ARC], 'metadata': {'pydantic_js_functions': [<function GenerateSchema._enum_schema.<locals>.get_json_schema>]}, 'ref': 'kittycad.models.path_command.PathCommand:94091996900336', 'sub_type': 'str', 'type': 'enum'}, {'cls': <class 'kittycad.models.path_segment_info.PathSegmentInfo'>, 'config': {'title': 'PathSegmentInfo'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.path_segment_info.PathSegmentInfo'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.path_segment_info.PathSegmentInfo'>>]}, 'ref': 'kittycad.models.path_segment_info.PathSegmentInfo:94091996903216', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'command': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.path_command.PathCommand:94091996900336', 'type': 'definition-ref'}, 'type': 'model-field'}, 'command_id': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'schema': {'function': {'function': <class 'kittycad.models.modeling_cmd_id.ModelingCmdId'>, 'type': 'no-info'}, 'schema': {'type': 'str'}, 'type': 'function-after'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'relative': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'bool'}, 'type': 'model-field'}}, 'model_name': 'PathSegmentInfo', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <enum 'ExtrusionFaceCapType'>, 'members': [ExtrusionFaceCapType.NONE, ExtrusionFaceCapType.TOP, ExtrusionFaceCapType.BOTTOM], 'metadata': {'pydantic_js_functions': [<function GenerateSchema._enum_schema.<locals>.get_json_schema>]}, 'ref': 'kittycad.models.extrusion_face_cap_type.ExtrusionFaceCapType:94091990831536', 'sub_type': 'str', 'type': 'enum'}, {'cls': <class 'kittycad.models.extrusion_face_info.ExtrusionFaceInfo'>, 'config': {'title': 'ExtrusionFaceInfo'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.extrusion_face_info.ExtrusionFaceInfo'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.extrusion_face_info.ExtrusionFaceInfo'>>]}, 'ref': 'kittycad.models.extrusion_face_info.ExtrusionFaceInfo:94091990835264', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'cap': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.extrusion_face_cap_type.ExtrusionFaceCapType:94091990831536', 'type': 'definition-ref'}, 'type': 'model-field'}, 'curve_id': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'schema': {'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'face_id': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'schema': {'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'ExtrusionFaceInfo', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'kittycad.models.ok_web_socket_response_data.ModelingData'>, 'config': {'title': 'ModelingData'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_web_socket_response_data.ModelingData'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_web_socket_response_data.ModelingData'>>]}, 'ref': 'kittycad.models.ok_web_socket_response_data.ModelingData:94091998657520', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'modeling_response': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'pydantic.root_model.RootModel[Annotated[Union[OptionEmpty, OptionExport, OptionSelectWithPoint, OptionHighlightSetEntity, OptionEntityGetChildUuid, OptionEntityGetNumChildren, OptionEntityGetParentId, OptionEntityGetAllChildUuids, OptionEntityGetSketchPaths, OptionLoft, OptionClosePath, OptionCameraDragMove, OptionCameraDragEnd, OptionDefaultCameraGetSettings, OptionDefaultCameraZoom, OptionZoomToFit, OptionViewIsometric, OptionGetNumObjects, OptionDefaultCameraFocusOn, OptionSelectGet, OptionSolid3DGetAllEdgeFaces, OptionSolid3DGetAllOppositeEdges, OptionSolid3DGetOppositeEdge, OptionSolid3DGetNextAdjacentEdge, OptionSolid3DGetPrevAdjacentEdge, OptionGetEntityType, OptionCurveGetControlPoints, OptionCurveGetType, OptionMouseClick, OptionTakeSnapshot, OptionPathGetInfo, OptionPathSegmentInfo, OptionPathGetCurveUuidsForVertices, OptionPathGetCurveUuid, OptionPathGetVertexUuids, OptionPathGetSketchTargetUuid, OptionCurveGetEndPoints, OptionFaceIsPlanar, OptionFaceGetPosition, OptionFaceGetCenter, OptionFaceGetGradient, OptionPlaneIntersectAndProject, OptionImportFiles, OptionImportedGeometry, OptionMass, OptionVolume, OptionDensity, OptionSurfaceArea, OptionCenterOfMass, OptionGetSketchModePlane, OptionEntityGetDistance, OptionEntityLinearPatternTransform, OptionEntityLinearPattern, OptionEntityCircularPattern, OptionSolid3DGetExtrusionFaceInfo, OptionExtrusionFaceInfo], FieldInfo(annotation=NoneType, required=True, discriminator='type')]]'>, 'config': {'title': "RootModel[Annotated[Union[OptionEmpty, OptionExport, OptionSelectWithPoint, OptionHighlightSetEntity, OptionEntityGetChildUuid, OptionEntityGetNumChildren, OptionEntityGetParentId, OptionEntityGetAllChildUuids, OptionEntityGetSketchPaths, OptionLoft, OptionClosePath, OptionCameraDragMove, OptionCameraDragEnd, OptionDefaultCameraGetSettings, OptionDefaultCameraZoom, OptionZoomToFit, OptionViewIsometric, OptionGetNumObjects, OptionDefaultCameraFocusOn, OptionSelectGet, OptionSolid3DGetAllEdgeFaces, OptionSolid3DGetAllOppositeEdges, OptionSolid3DGetOppositeEdge, OptionSolid3DGetNextAdjacentEdge, OptionSolid3DGetPrevAdjacentEdge, OptionGetEntityType, OptionCurveGetControlPoints, OptionCurveGetType, OptionMouseClick, OptionTakeSnapshot, OptionPathGetInfo, OptionPathSegmentInfo, OptionPathGetCurveUuidsForVertices, OptionPathGetCurveUuid, OptionPathGetVertexUuids, OptionPathGetSketchTargetUuid, OptionCurveGetEndPoints, OptionFaceIsPlanar, OptionFaceGetPosition, OptionFaceGetCenter, OptionFaceGetGradient, OptionPlaneIntersectAndProject, OptionImportFiles, OptionImportedGeometry, OptionMass, OptionVolume, OptionDensity, OptionSurfaceArea, OptionCenterOfMass, OptionGetSketchModePlane, OptionEntityGetDistance, OptionEntityLinearPatternTransform, OptionEntityLinearPattern, OptionEntityCircularPattern, OptionSolid3DGetExtrusionFaceInfo, OptionExtrusionFaceInfo], FieldInfo(annotation=NoneType, required=True, discriminator='type')]]"}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'pydantic.root_model.RootModel[Annotated[Union[OptionEmpty, OptionExport, OptionSelectWithPoint, OptionHighlightSetEntity, OptionEntityGetChildUuid, OptionEntityGetNumChildren, OptionEntityGetParentId, OptionEntityGetAllChildUuids, OptionEntityGetSketchPaths, OptionLoft, OptionClosePath, OptionCameraDragMove, OptionCameraDragEnd, OptionDefaultCameraGetSettings, OptionDefaultCameraZoom, OptionZoomToFit, OptionViewIsometric, OptionGetNumObjects, OptionDefaultCameraFocusOn, OptionSelectGet, OptionSolid3DGetAllEdgeFaces, OptionSolid3DGetAllOppositeEdges, OptionSolid3DGetOppositeEdge, OptionSolid3DGetNextAdjacentEdge, OptionSolid3DGetPrevAdjacentEdge, OptionGetEntityType, OptionCurveGetControlPoints, OptionCurveGetType, OptionMouseClick, OptionTakeSnapshot, OptionPathGetInfo, OptionPathSegmentInfo, OptionPathGetCurveUuidsForVertices, OptionPathGetCurveUuid, OptionPathGetVertexUuids, OptionPathGetSketchTargetUuid, OptionCurveGetEndPoints, OptionFaceIsPlanar, OptionFaceGetPosition, OptionFaceGetCenter, OptionFaceGetGradient, OptionPlaneIntersectAndProject, OptionImportFiles, OptionImportedGeometry, OptionMass, OptionVolume, OptionDensity, OptionSurfaceArea, OptionCenterOfMass, OptionGetSketchModePlane, OptionEntityGetDistance, OptionEntityLinearPatternTransform, OptionEntityLinearPattern, OptionEntityCircularPattern, OptionSolid3DGetExtrusionFaceInfo, OptionExtrusionFaceInfo], FieldInfo(annotation=NoneType, required=True, discriminator='type')]]'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'pydantic.root_model.RootModel[Annotated[Union[OptionEmpty, OptionExport, OptionSelectWithPoint, OptionHighlightSetEntity, OptionEntityGetChildUuid, OptionEntityGetNumChildren, OptionEntityGetParentId, OptionEntityGetAllChildUuids, OptionEntityGetSketchPaths, OptionLoft, OptionClosePath, OptionCameraDragMove, OptionCameraDragEnd, OptionDefaultCameraGetSettings, OptionDefaultCameraZoom, OptionZoomToFit, OptionViewIsometric, OptionGetNumObjects, OptionDefaultCameraFocusOn, OptionSelectGet, OptionSolid3DGetAllEdgeFaces, OptionSolid3DGetAllOppositeEdges, OptionSolid3DGetOppositeEdge, OptionSolid3DGetNextAdjacentEdge, OptionSolid3DGetPrevAdjacentEdge, OptionGetEntityType, OptionCurveGetControlPoints, OptionCurveGetType, OptionMouseClick, OptionTakeSnapshot, OptionPathGetInfo, OptionPathSegmentInfo, OptionPathGetCurveUuidsForVertices, OptionPathGetCurveUuid, OptionPathGetVertexUuids, OptionPathGetSketchTargetUuid, OptionCurveGetEndPoints, OptionFaceIsPlanar, OptionFaceGetPosition, OptionFaceGetCenter, OptionFaceGetGradient, OptionPlaneIntersectAndProject, OptionImportFiles, OptionImportedGeometry, OptionMass, OptionVolume, OptionDensity, OptionSurfaceArea, OptionCenterOfMass, OptionGetSketchModePlane, OptionEntityGetDistance, OptionEntityLinearPatternTransform, OptionEntityLinearPattern, OptionEntityCircularPattern, OptionSolid3DGetExtrusionFaceInfo, OptionExtrusionFaceInfo], FieldInfo(annotation=NoneType, required=True, discriminator='type')]]'>>]}, 'ref': "pydantic.root_model.RootModel:94091986340976[Annotated[Union[OptionEmpty, OptionExport, OptionSelectWithPoint, OptionHighlightSetEntity, OptionEntityGetChildUuid, OptionEntityGetNumChildren, OptionEntityGetParentId, OptionEntityGetAllChildUuids, OptionEntityGetSketchPaths, OptionLoft, OptionClosePath, OptionCameraDragMove, OptionCameraDragEnd, OptionDefaultCameraGetSettings, OptionDefaultCameraZoom, OptionZoomToFit, OptionViewIsometric, OptionGetNumObjects, OptionDefaultCameraFocusOn, OptionSelectGet, OptionSolid3DGetAllEdgeFaces, OptionSolid3DGetAllOppositeEdges, OptionSolid3DGetOppositeEdge, OptionSolid3DGetNextAdjacentEdge, OptionSolid3DGetPrevAdjacentEdge, OptionGetEntityType, OptionCurveGetControlPoints, OptionCurveGetType, OptionMouseClick, OptionTakeSnapshot, OptionPathGetInfo, OptionPathSegmentInfo, OptionPathGetCurveUuidsForVertices, OptionPathGetCurveUuid, OptionPathGetVertexUuids, OptionPathGetSketchTargetUuid, OptionCurveGetEndPoints, OptionFaceIsPlanar, OptionFaceGetPosition, OptionFaceGetCenter, OptionFaceGetGradient, OptionPlaneIntersectAndProject, OptionImportFiles, OptionImportedGeometry, OptionMass, OptionVolume, OptionDensity, OptionSurfaceArea, OptionCenterOfMass, OptionGetSketchModePlane, OptionEntityGetDistance, OptionEntityLinearPatternTransform, OptionEntityLinearPattern, OptionEntityCircularPattern, OptionSolid3DGetExtrusionFaceInfo, OptionExtrusionFaceInfo], FieldInfo(annotation=NoneType, required=True, discriminator='type')]:139980708256400]", 'root_model': True, 'schema': {'choices': {'camera_drag_end': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionCameraDragEnd'>, 'config': {'title': 'OptionCameraDragEnd'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionCameraDragEnd'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionCameraDragEnd'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionCameraDragEnd:94091997041184', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.camera_drag_end.CameraDragEnd'>, 'config': {'title': 'CameraDragEnd'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.camera_drag_end.CameraDragEnd'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.camera_drag_end.CameraDragEnd'>>]}, 'ref': 'kittycad.models.camera_drag_end.CameraDragEnd:94091990297664', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'settings': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.camera_settings.CameraSettings:94091990263904', 'type': 'definition-ref'}, 'type': 'model-field'}}, 'model_name': 'CameraDragEnd', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'camera_drag_end', 'schema': {'expected': ['camera_drag_end'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionCameraDragEnd', 'type': 'model-fields'}, 'type': 'model'}, 'camera_drag_move': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionCameraDragMove'>, 'config': {'title': 'OptionCameraDragMove'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionCameraDragMove'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionCameraDragMove'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionCameraDragMove:94091997029808', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.camera_drag_move.CameraDragMove'>, 'config': {'title': 'CameraDragMove'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.camera_drag_move.CameraDragMove'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.camera_drag_move.CameraDragMove'>>]}, 'ref': 'kittycad.models.camera_drag_move.CameraDragMove:94091990330768', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'settings': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.camera_settings.CameraSettings:94091990263904', 'type': 'definition-ref'}, 'type': 'model-field'}}, 'model_name': 'CameraDragMove', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'camera_drag_move', 'schema': {'expected': ['camera_drag_move'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionCameraDragMove', 'type': 'model-fields'}, 'type': 'model'}, 'center_of_mass': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionCenterOfMass'>, 'config': {'title': 'OptionCenterOfMass'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionCenterOfMass'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionCenterOfMass'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionCenterOfMass:94091997705904', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.center_of_mass.CenterOfMass'>, 'config': {'title': 'CenterOfMass'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.center_of_mass.CenterOfMass'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.center_of_mass.CenterOfMass'>>]}, 'ref': 'kittycad.models.center_of_mass.CenterOfMass:94091976257824', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'center_of_mass': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.point3d.Point3d:94091983921120', 'type': 'definition-ref'}, 'type': 'model-field'}, 'output_unit': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <enum 'UnitLength'>, 'members': [UnitLength.CM, UnitLength.FT, UnitLength.IN, UnitLength.M, UnitLength.MM, UnitLength.YD], 'metadata': {'pydantic_js_functions': [<function GenerateSchema._enum_schema.<locals>.get_json_schema>]}, 'ref': 'kittycad.models.unit_length.UnitLength:94091989171184', 'sub_type': 'str', 'type': 'enum'}, 'type': 'model-field'}}, 'model_name': 'CenterOfMass', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'center_of_mass', 'schema': {'expected': ['center_of_mass'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionCenterOfMass', 'type': 'model-fields'}, 'type': 'model'}, 'close_path': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionClosePath'>, 'config': {'title': 'OptionClosePath'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionClosePath'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionClosePath'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionClosePath:94091997018432', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.close_path.ClosePath'>, 'config': {'title': 'ClosePath'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.close_path.ClosePath'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.close_path.ClosePath'>>]}, 'ref': 'kittycad.models.close_path.ClosePath:94091976285696', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'face_id': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'ClosePath', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'close_path', 'schema': {'expected': ['close_path'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionClosePath', 'type': 'model-fields'}, 'type': 'model'}, 'curve_get_control_points': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionCurveGetControlPoints'>, 'config': {'title': 'OptionCurveGetControlPoints'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionCurveGetControlPoints'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionCurveGetControlPoints'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionCurveGetControlPoints:94091997368752', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.curve_get_control_points.CurveGetControlPoints'>, 'config': {'title': 'CurveGetControlPoints'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.curve_get_control_points.CurveGetControlPoints'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.curve_get_control_points.CurveGetControlPoints'>>]}, 'ref': 'kittycad.models.curve_get_control_points.CurveGetControlPoints:94091976693088', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'control_points': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'items_schema': {'schema_ref': 'kittycad.models.point3d.Point3d:94091983921120', 'type': 'definition-ref'}, 'type': 'list'}, 'type': 'model-field'}}, 'model_name': 'CurveGetControlPoints', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'curve_get_control_points', 'schema': {'expected': ['curve_get_control_points'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionCurveGetControlPoints', 'type': 'model-fields'}, 'type': 'model'}, 'curve_get_end_points': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionCurveGetEndPoints'>, 'config': {'title': 'OptionCurveGetEndPoints'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionCurveGetEndPoints'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionCurveGetEndPoints'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionCurveGetEndPoints:94091997511952', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.curve_get_end_points.CurveGetEndPoints'>, 'config': {'title': 'CurveGetEndPoints'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.curve_get_end_points.CurveGetEndPoints'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.curve_get_end_points.CurveGetEndPoints'>>]}, 'ref': 'kittycad.models.curve_get_end_points.CurveGetEndPoints:94091976702720', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'end': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.point3d.Point3d:94091983921120', 'type': 'definition-ref'}, 'type': 'model-field'}, 'start': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.point3d.Point3d:94091983921120', 'type': 'definition-ref'}, 'type': 'model-field'}}, 'model_name': 'CurveGetEndPoints', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'curve_get_end_points', 'schema': {'expected': ['curve_get_end_points'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionCurveGetEndPoints', 'type': 'model-fields'}, 'type': 'model'}, 'curve_get_type': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionCurveGetType'>, 'config': {'title': 'OptionCurveGetType'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionCurveGetType'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionCurveGetType'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionCurveGetType:94091997382192', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.curve_get_type.CurveGetType'>, 'config': {'title': 'CurveGetType'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.curve_get_type.CurveGetType'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.curve_get_type.CurveGetType'>>]}, 'ref': 'kittycad.models.curve_get_type.CurveGetType:94091976715680', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'curve_type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <enum 'CurveType'>, 'members': [CurveType.LINE, CurveType.ARC, CurveType.NURBS], 'metadata': {'pydantic_js_functions': [<function GenerateSchema._enum_schema.<locals>.get_json_schema>]}, 'ref': 'kittycad.models.curve_type.CurveType:94091976719840', 'sub_type': 'str', 'type': 'enum'}, 'type': 'model-field'}}, 'model_name': 'CurveGetType', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'curve_get_type', 'schema': {'expected': ['curve_get_type'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionCurveGetType', 'type': 'model-fields'}, 'type': 'model'}, 'default_camera_focus_on': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionDefaultCameraFocusOn'>, 'config': {'title': 'OptionDefaultCameraFocusOn'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionDefaultCameraFocusOn'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionDefaultCameraFocusOn'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionDefaultCameraFocusOn:94091997273184', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.default_camera_focus_on.DefaultCameraFocusOn'>, 'config': {'title': 'DefaultCameraFocusOn'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.default_camera_focus_on.DefaultCameraFocusOn'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.default_camera_focus_on.DefaultCameraFocusOn'>>]}, 'ref': 'kittycad.models.default_camera_focus_on.DefaultCameraFocusOn:94091977163952', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {}, 'model_name': 'DefaultCameraFocusOn', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'default_camera_focus_on', 'schema': {'expected': ['default_camera_focus_on'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionDefaultCameraFocusOn', 'type': 'model-fields'}, 'type': 'model'}, 'default_camera_get_settings': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionDefaultCameraGetSettings'>, 'config': {'title': 'OptionDefaultCameraGetSettings'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionDefaultCameraGetSettings'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionDefaultCameraGetSettings'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionDefaultCameraGetSettings:94091997078528', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.default_camera_get_settings.DefaultCameraGetSettings'>, 'config': {'title': 'DefaultCameraGetSettings'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.default_camera_get_settings.DefaultCameraGetSettings'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.default_camera_get_settings.DefaultCameraGetSettings'>>]}, 'ref': 'kittycad.models.default_camera_get_settings.DefaultCameraGetSettings:94091988935728', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'settings': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.camera_settings.CameraSettings:94091990263904', 'type': 'definition-ref'}, 'type': 'model-field'}}, 'model_name': 'DefaultCameraGetSettings', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'default_camera_get_settings', 'schema': {'expected': ['default_camera_get_settings'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionDefaultCameraGetSettings', 'type': 'model-fields'}, 'type': 'model'}, 'default_camera_zoom': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionDefaultCameraZoom'>, 'config': {'title': 'OptionDefaultCameraZoom'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionDefaultCameraZoom'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionDefaultCameraZoom'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionDefaultCameraZoom:94091997115776', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.default_camera_zoom.DefaultCameraZoom'>, 'config': {'title': 'DefaultCameraZoom'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.default_camera_zoom.DefaultCameraZoom'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.default_camera_zoom.DefaultCameraZoom'>>]}, 'ref': 'kittycad.models.default_camera_zoom.DefaultCameraZoom:94091990399888', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'settings': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.camera_settings.CameraSettings:94091990263904', 'type': 'definition-ref'}, 'type': 'model-field'}}, 'model_name': 'DefaultCameraZoom', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'default_camera_zoom', 'schema': {'expected': ['default_camera_zoom'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionDefaultCameraZoom', 'type': 'model-fields'}, 'type': 'model'}, 'density': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionDensity'>, 'config': {'title': 'OptionDensity'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionDensity'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionDensity'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionDensity:94091997678960', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.density.Density'>, 'config': {'title': 'Density'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.density.Density'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.density.Density'>>]}, 'ref': 'kittycad.models.density.Density:94091990431136', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'density': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'float'}, 'type': 'model-field'}, 'output_unit': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <enum 'UnitDensity'>, 'members': [UnitDensity.LB_FT3, UnitDensity.KG_M3], 'metadata': {'pydantic_js_functions': [<function GenerateSchema._enum_schema.<locals>.get_json_schema>]}, 'ref': 'kittycad.models.unit_density.UnitDensity:94091988925504', 'sub_type': 'str', 'type': 'enum'}, 'type': 'model-field'}}, 'model_name': 'Density', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'density', 'schema': {'expected': ['density'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionDensity', 'type': 'model-fields'}, 'type': 'model'}, 'empty': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionEmpty'>, 'config': {'title': 'OptionEmpty'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionEmpty'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionEmpty'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionEmpty:94091996833392', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'empty', 'schema': {'expected': ['empty'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionEmpty', 'type': 'model-fields'}, 'type': 'model'}, 'entity_circular_pattern': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionEntityCircularPattern'>, 'config': {'title': 'OptionEntityCircularPattern'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionEntityCircularPattern'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionEntityCircularPattern'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionEntityCircularPattern:94091997794240', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.entity_circular_pattern.EntityCircularPattern'>, 'config': {'title': 'EntityCircularPattern'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.entity_circular_pattern.EntityCircularPattern'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.entity_circular_pattern.EntityCircularPattern'>>]}, 'ref': 'kittycad.models.entity_circular_pattern.EntityCircularPattern:94091990558144', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'entity_ids': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'type': 'model-field'}}, 'model_name': 'EntityCircularPattern', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'entity_circular_pattern', 'schema': {'expected': ['entity_circular_pattern'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionEntityCircularPattern', 'type': 'model-fields'}, 'type': 'model'}, 'entity_get_all_child_uuids': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetAllChildUuids'>, 'config': {'title': 'OptionEntityGetAllChildUuids'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetAllChildUuids'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetAllChildUuids'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetAllChildUuids:94091996982992', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.entity_get_all_child_uuids.EntityGetAllChildUuids'>, 'config': {'title': 'EntityGetAllChildUuids'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.entity_get_all_child_uuids.EntityGetAllChildUuids'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.entity_get_all_child_uuids.EntityGetAllChildUuids'>>]}, 'ref': 'kittycad.models.entity_get_all_child_uuids.EntityGetAllChildUuids:94091990566096', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'entity_ids': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'type': 'model-field'}}, 'model_name': 'EntityGetAllChildUuids', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'entity_get_all_child_uuids', 'schema': {'expected': ['entity_get_all_child_uuids'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionEntityGetAllChildUuids', 'type': 'model-fields'}, 'type': 'model'}, 'entity_get_child_uuid': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetChildUuid'>, 'config': {'title': 'OptionEntityGetChildUuid'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetChildUuid'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetChildUuid'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetChildUuid:94091996946128', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.entity_get_child_uuid.EntityGetChildUuid'>, 'config': {'title': 'EntityGetChildUuid'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.entity_get_child_uuid.EntityGetChildUuid'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.entity_get_child_uuid.EntityGetChildUuid'>>]}, 'ref': 'kittycad.models.entity_get_child_uuid.EntityGetChildUuid:94091990572112', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'entity_id': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'EntityGetChildUuid', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'entity_get_child_uuid', 'schema': {'expected': ['entity_get_child_uuid'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionEntityGetChildUuid', 'type': 'model-fields'}, 'type': 'model'}, 'entity_get_distance': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetDistance'>, 'config': {'title': 'OptionEntityGetDistance'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetDistance'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetDistance'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetDistance:94091992236464', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.entity_get_distance.EntityGetDistance'>, 'config': {'title': 'EntityGetDistance'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.entity_get_distance.EntityGetDistance'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.entity_get_distance.EntityGetDistance'>>]}, 'ref': 'kittycad.models.entity_get_distance.EntityGetDistance:94091990592208', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'max_distance': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'function': {'function': <class 'kittycad.models.length_unit.LengthUnit'>, 'type': 'no-info'}, 'schema': {'type': 'float'}, 'type': 'function-after'}, 'type': 'model-field'}, 'min_distance': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'function': {'function': <class 'kittycad.models.length_unit.LengthUnit'>, 'type': 'no-info'}, 'schema': {'type': 'float'}, 'type': 'function-after'}, 'type': 'model-field'}}, 'model_name': 'EntityGetDistance', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'entity_get_distance', 'schema': {'expected': ['entity_get_distance'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionEntityGetDistance', 'type': 'model-fields'}, 'type': 'model'}, 'entity_get_num_children': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetNumChildren'>, 'config': {'title': 'OptionEntityGetNumChildren'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetNumChildren'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetNumChildren'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetNumChildren:94091996961504', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.entity_get_num_children.EntityGetNumChildren'>, 'config': {'title': 'EntityGetNumChildren'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.entity_get_num_children.EntityGetNumChildren'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.entity_get_num_children.EntityGetNumChildren'>>]}, 'ref': 'kittycad.models.entity_get_num_children.EntityGetNumChildren:94091990579792', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'num': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'int'}, 'type': 'model-field'}}, 'model_name': 'EntityGetNumChildren', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'entity_get_num_children', 'schema': {'expected': ['entity_get_num_children'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionEntityGetNumChildren', 'type': 'model-fields'}, 'type': 'model'}, 'entity_get_parent_id': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetParentId'>, 'config': {'title': 'OptionEntityGetParentId'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetParentId'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetParentId'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetParentId:94091996972176', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.entity_get_parent_id.EntityGetParentId'>, 'config': {'title': 'EntityGetParentId'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.entity_get_parent_id.EntityGetParentId'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.entity_get_parent_id.EntityGetParentId'>>]}, 'ref': 'kittycad.models.entity_get_parent_id.EntityGetParentId:94091990584784', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'entity_id': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'EntityGetParentId', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'entity_get_parent_id', 'schema': {'expected': ['entity_get_parent_id'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionEntityGetParentId', 'type': 'model-fields'}, 'type': 'model'}, 'entity_get_sketch_paths': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetSketchPaths'>, 'config': {'title': 'OptionEntityGetSketchPaths'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetSketchPaths'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetSketchPaths'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionEntityGetSketchPaths:94091996993760', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.entity_get_sketch_paths.EntityGetSketchPaths'>, 'config': {'title': 'EntityGetSketchPaths'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.entity_get_sketch_paths.EntityGetSketchPaths'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.entity_get_sketch_paths.EntityGetSketchPaths'>>]}, 'ref': 'kittycad.models.entity_get_sketch_paths.EntityGetSketchPaths:94091990611120', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'entity_ids': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'type': 'model-field'}}, 'model_name': 'EntityGetSketchPaths', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'entity_get_sketch_paths', 'schema': {'expected': ['entity_get_sketch_paths'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionEntityGetSketchPaths', 'type': 'model-fields'}, 'type': 'model'}, 'entity_linear_pattern': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionEntityLinearPattern'>, 'config': {'title': 'OptionEntityLinearPattern'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionEntityLinearPattern'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionEntityLinearPattern'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionEntityLinearPattern:94091997781952', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.entity_linear_pattern.EntityLinearPattern'>, 'config': {'title': 'EntityLinearPattern'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.entity_linear_pattern.EntityLinearPattern'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.entity_linear_pattern.EntityLinearPattern'>>]}, 'ref': 'kittycad.models.entity_linear_pattern.EntityLinearPattern:94091990617392', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'entity_ids': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'type': 'model-field'}}, 'model_name': 'EntityLinearPattern', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'entity_linear_pattern', 'schema': {'expected': ['entity_linear_pattern'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionEntityLinearPattern', 'type': 'model-fields'}, 'type': 'model'}, 'entity_linear_pattern_transform': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionEntityLinearPatternTransform'>, 'config': {'title': 'OptionEntityLinearPatternTransform'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionEntityLinearPatternTransform'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionEntityLinearPatternTransform'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionEntityLinearPatternTransform:94091997768560', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.entity_linear_pattern_transform.EntityLinearPatternTransform'>, 'config': {'title': 'EntityLinearPatternTransform'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.entity_linear_pattern_transform.EntityLinearPatternTransform'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.entity_linear_pattern_transform.EntityLinearPatternTransform'>>]}, 'ref': 'kittycad.models.entity_linear_pattern_transform.EntityLinearPatternTransform:94091990622960', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'entity_ids': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'type': 'model-field'}}, 'model_name': 'EntityLinearPatternTransform', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'entity_linear_pattern_transform', 'schema': {'expected': ['entity_linear_pattern_transform'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionEntityLinearPatternTransform', 'type': 'model-fields'}, 'type': 'model'}, 'export': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionExport'>, 'config': {'title': 'OptionExport'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionExport'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionExport'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionExport:94091996834384', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.export.Export'>, 'config': {'title': 'Export'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.export.Export'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.export.Export'>>]}, 'ref': 'kittycad.models.export.Export:94091990701280', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'files': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'items_schema': {'cls': <class 'kittycad.models.export_file.ExportFile'>, 'config': {'title': 'ExportFile'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.export_file.ExportFile'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.export_file.ExportFile'>>]}, 'ref': 'kittycad.models.export_file.ExportFile:94091990692352', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'contents': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'function': {'function': <bound method Base64Data.validate of <class 'kittycad.models.base64data.Base64Data'>>, 'type': 'no-info'}, 'schema': {'choices': [{'type': 'str'}, {'type': 'bytes'}], 'type': 'union'}, 'serialization': {'function': <bound method Base64Data.serialize of <class 'kittycad.models.base64data.Base64Data'>>, 'type': 'function-plain'}, 'type': 'function-after'}, 'type': 'model-field'}, 'name': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'ExportFile', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'list'}, 'type': 'model-field'}}, 'model_name': 'Export', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'export', 'schema': {'expected': ['export'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionExport', 'type': 'model-fields'}, 'type': 'model'}, 'extrusion_face_info': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionExtrusionFaceInfo'>, 'config': {'title': 'OptionExtrusionFaceInfo'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionExtrusionFaceInfo'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionExtrusionFaceInfo'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionExtrusionFaceInfo:94091997818672', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.extrusion_face_info.ExtrusionFaceInfo:94091990835264', 'type': 'definition-ref'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'extrusion_face_info', 'schema': {'expected': ['extrusion_face_info'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionExtrusionFaceInfo', 'type': 'model-fields'}, 'type': 'model'}, 'face_get_center': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionFaceGetCenter'>, 'config': {'title': 'OptionFaceGetCenter'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionFaceGetCenter'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionFaceGetCenter'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionFaceGetCenter:94091997572240', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.face_get_center.FaceGetCenter'>, 'config': {'title': 'FaceGetCenter'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.face_get_center.FaceGetCenter'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.face_get_center.FaceGetCenter'>>]}, 'ref': 'kittycad.models.face_get_center.FaceGetCenter:94091990857856', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'pos': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.point3d.Point3d:94091983921120', 'type': 'definition-ref'}, 'type': 'model-field'}}, 'model_name': 'FaceGetCenter', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'face_get_center', 'schema': {'expected': ['face_get_center'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionFaceGetCenter', 'type': 'model-fields'}, 'type': 'model'}, 'face_get_gradient': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionFaceGetGradient'>, 'config': {'title': 'OptionFaceGetGradient'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionFaceGetGradient'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionFaceGetGradient'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionFaceGetGradient:94091997588096', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.face_get_gradient.FaceGetGradient'>, 'config': {'title': 'FaceGetGradient'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.face_get_gradient.FaceGetGradient'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.face_get_gradient.FaceGetGradient'>>]}, 'ref': 'kittycad.models.face_get_gradient.FaceGetGradient:94091990867376', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'df_du': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.point3d.Point3d:94091983921120', 'type': 'definition-ref'}, 'type': 'model-field'}, 'df_dv': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.point3d.Point3d:94091983921120', 'type': 'definition-ref'}, 'type': 'model-field'}, 'normal': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.point3d.Point3d:94091983921120', 'type': 'definition-ref'}, 'type': 'model-field'}}, 'model_name': 'FaceGetGradient', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'face_get_gradient', 'schema': {'expected': ['face_get_gradient'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionFaceGetGradient', 'type': 'model-fields'}, 'type': 'model'}, 'face_get_position': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionFaceGetPosition'>, 'config': {'title': 'OptionFaceGetPosition'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionFaceGetPosition'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionFaceGetPosition'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionFaceGetPosition:94091997543664', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.face_get_position.FaceGetPosition'>, 'config': {'title': 'FaceGetPosition'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.face_get_position.FaceGetPosition'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.face_get_position.FaceGetPosition'>>]}, 'ref': 'kittycad.models.face_get_position.FaceGetPosition:94091990881408', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'pos': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.point3d.Point3d:94091983921120', 'type': 'definition-ref'}, 'type': 'model-field'}}, 'model_name': 'FaceGetPosition', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'face_get_position', 'schema': {'expected': ['face_get_position'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionFaceGetPosition', 'type': 'model-fields'}, 'type': 'model'}, 'face_is_planar': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionFaceIsPlanar'>, 'config': {'title': 'OptionFaceIsPlanar'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionFaceIsPlanar'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionFaceIsPlanar'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionFaceIsPlanar:94091997525344', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.face_is_planar.FaceIsPlanar'>, 'config': {'title': 'FaceIsPlanar'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.face_is_planar.FaceIsPlanar'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.face_is_planar.FaceIsPlanar'>>]}, 'ref': 'kittycad.models.face_is_planar.FaceIsPlanar:94091990891936', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'origin': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'schema': {'schema_ref': 'kittycad.models.point3d.Point3d:94091983921120', 'type': 'definition-ref'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'x_axis': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'schema': {'schema_ref': 'kittycad.models.point3d.Point3d:94091983921120', 'type': 'definition-ref'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'y_axis': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'schema': {'schema_ref': 'kittycad.models.point3d.Point3d:94091983921120', 'type': 'definition-ref'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'z_axis': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'schema': {'schema_ref': 'kittycad.models.point3d.Point3d:94091983921120', 'type': 'definition-ref'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'FaceIsPlanar', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'face_is_planar', 'schema': {'expected': ['face_is_planar'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionFaceIsPlanar', 'type': 'model-fields'}, 'type': 'model'}, 'get_entity_type': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionGetEntityType'>, 'config': {'title': 'OptionGetEntityType'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionGetEntityType'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionGetEntityType'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionGetEntityType:94091997355488', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.get_entity_type.GetEntityType'>, 'config': {'title': 'GetEntityType'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.get_entity_type.GetEntityType'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.get_entity_type.GetEntityType'>>]}, 'ref': 'kittycad.models.get_entity_type.GetEntityType:94091991292800', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'entity_type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <enum 'EntityType'>, 'members': [EntityType.ENTITY, EntityType.OBJECT, EntityType.PATH, EntityType.CURVE, EntityType.SOLID2D, EntityType.SOLID3D, EntityType.EDGE, EntityType.FACE, EntityType.PLANE, EntityType.VERTEX], 'metadata': {'pydantic_js_functions': [<function GenerateSchema._enum_schema.<locals>.get_json_schema>]}, 'ref': 'kittycad.models.entity_type.EntityType:94091990630400', 'sub_type': 'str', 'type': 'enum'}, 'type': 'model-field'}}, 'model_name': 'GetEntityType', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'get_entity_type', 'schema': {'expected': ['get_entity_type'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionGetEntityType', 'type': 'model-fields'}, 'type': 'model'}, 'get_num_objects': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionGetNumObjects'>, 'config': {'title': 'OptionGetNumObjects'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionGetNumObjects'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionGetNumObjects'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionGetNumObjects:94091997229856', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.get_num_objects.GetNumObjects'>, 'config': {'title': 'GetNumObjects'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.get_num_objects.GetNumObjects'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.get_num_objects.GetNumObjects'>>]}, 'ref': 'kittycad.models.get_num_objects.GetNumObjects:94091991302720', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'num_objects': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'int'}, 'type': 'model-field'}}, 'model_name': 'GetNumObjects', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'get_num_objects', 'schema': {'expected': ['get_num_objects'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionGetNumObjects', 'type': 'model-fields'}, 'type': 'model'}, 'get_sketch_mode_plane': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionGetSketchModePlane'>, 'config': {'title': 'OptionGetSketchModePlane'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionGetSketchModePlane'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionGetSketchModePlane'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionGetSketchModePlane:94091997719728', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.get_sketch_mode_plane.GetSketchModePlane'>, 'config': {'title': 'GetSketchModePlane'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.get_sketch_mode_plane.GetSketchModePlane'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.get_sketch_mode_plane.GetSketchModePlane'>>]}, 'ref': 'kittycad.models.get_sketch_mode_plane.GetSketchModePlane:94091991317856', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'origin': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.point3d.Point3d:94091983921120', 'type': 'definition-ref'}, 'type': 'model-field'}, 'x_axis': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.point3d.Point3d:94091983921120', 'type': 'definition-ref'}, 'type': 'model-field'}, 'y_axis': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.point3d.Point3d:94091983921120', 'type': 'definition-ref'}, 'type': 'model-field'}, 'z_axis': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.point3d.Point3d:94091983921120', 'type': 'definition-ref'}, 'type': 'model-field'}}, 'model_name': 'GetSketchModePlane', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'get_sketch_mode_plane', 'schema': {'expected': ['get_sketch_mode_plane'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionGetSketchModePlane', 'type': 'model-fields'}, 'type': 'model'}, 'highlight_set_entity': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionHighlightSetEntity'>, 'config': {'title': 'OptionHighlightSetEntity'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionHighlightSetEntity'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionHighlightSetEntity'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionHighlightSetEntity:94091976346992', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.highlight_set_entity.HighlightSetEntity'>, 'config': {'title': 'HighlightSetEntity'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.highlight_set_entity.HighlightSetEntity'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.highlight_set_entity.HighlightSetEntity'>>]}, 'ref': 'kittycad.models.highlight_set_entity.HighlightSetEntity:94091991323632', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'entity_id': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'schema': {'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'sequence': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'schema': {'type': 'int'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'HighlightSetEntity', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'highlight_set_entity', 'schema': {'expected': ['highlight_set_entity'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionHighlightSetEntity', 'type': 'model-fields'}, 'type': 'model'}, 'import_files': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionImportFiles'>, 'config': {'title': 'OptionImportFiles'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionImportFiles'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionImportFiles'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionImportFiles:94091997623872', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.import_files.ImportFiles'>, 'config': {'title': 'ImportFiles'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.import_files.ImportFiles'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.import_files.ImportFiles'>>]}, 'ref': 'kittycad.models.import_files.ImportFiles:94091991396032', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'object_id': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'ImportFiles', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'import_files', 'schema': {'expected': ['import_files'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionImportFiles', 'type': 'model-fields'}, 'type': 'model'}, 'imported_geometry': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionImportedGeometry'>, 'config': {'title': 'OptionImportedGeometry'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionImportedGeometry'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionImportedGeometry'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionImportedGeometry:94091997642416', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.imported_geometry.ImportedGeometry'>, 'config': {'title': 'ImportedGeometry'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.imported_geometry.ImportedGeometry'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.imported_geometry.ImportedGeometry'>>]}, 'ref': 'kittycad.models.imported_geometry.ImportedGeometry:94091991404848', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'id': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'value': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'type': 'model-field'}}, 'model_name': 'ImportedGeometry', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'imported_geometry', 'schema': {'expected': ['imported_geometry'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionImportedGeometry', 'type': 'model-fields'}, 'type': 'model'}, 'loft': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionLoft'>, 'config': {'title': 'OptionLoft'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionLoft'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionLoft'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionLoft:94091997006128', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.loft.Loft'>, 'config': {'title': 'Loft'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.loft.Loft'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.loft.Loft'>>]}, 'ref': 'kittycad.models.loft.Loft:94091991670496', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'solid_id': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'Loft', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'loft', 'schema': {'expected': ['loft'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionLoft', 'type': 'model-fields'}, 'type': 'model'}, 'mass': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionMass'>, 'config': {'title': 'OptionMass'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionMass'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionMass'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionMass:94091997653600', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.mass.Mass'>, 'config': {'title': 'Mass'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.mass.Mass'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.mass.Mass'>>]}, 'ref': 'kittycad.models.mass.Mass:94091991675968', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'mass': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'float'}, 'type': 'model-field'}, 'output_unit': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <enum 'UnitMass'>, 'members': [UnitMass.G, UnitMass.KG, UnitMass.LB], 'metadata': {'pydantic_js_functions': [<function GenerateSchema._enum_schema.<locals>.get_json_schema>]}, 'ref': 'kittycad.models.unit_mass.UnitMass:94091988927280', 'sub_type': 'str', 'type': 'enum'}, 'type': 'model-field'}}, 'model_name': 'Mass', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'mass', 'schema': {'expected': ['mass'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionMass', 'type': 'model-fields'}, 'type': 'model'}, 'mouse_click': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionMouseClick'>, 'config': {'title': 'OptionMouseClick'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionMouseClick'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionMouseClick'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionMouseClick:94091997399328', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.mouse_click.MouseClick'>, 'config': {'title': 'MouseClick'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.mouse_click.MouseClick'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.mouse_click.MouseClick'>>]}, 'ref': 'kittycad.models.mouse_click.MouseClick:94091995494048', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'entities_modified': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'type': 'model-field'}, 'entities_selected': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'type': 'model-field'}}, 'model_name': 'MouseClick', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'mouse_click', 'schema': {'expected': ['mouse_click'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionMouseClick', 'type': 'model-fields'}, 'type': 'model'}, 'path_get_curve_uuid': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionPathGetCurveUuid'>, 'config': {'title': 'OptionPathGetCurveUuid'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionPathGetCurveUuid'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionPathGetCurveUuid'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionPathGetCurveUuid:94091997476320', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.path_get_curve_uuid.PathGetCurveUuid'>, 'config': {'title': 'PathGetCurveUuid'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.path_get_curve_uuid.PathGetCurveUuid'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.path_get_curve_uuid.PathGetCurveUuid'>>]}, 'ref': 'kittycad.models.path_get_curve_uuid.PathGetCurveUuid:94091994157760', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'curve_id': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'PathGetCurveUuid', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'path_get_curve_uuid', 'schema': {'expected': ['path_get_curve_uuid'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionPathGetCurveUuid', 'type': 'model-fields'}, 'type': 'model'}, 'path_get_curve_uuids_for_vertices': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionPathGetCurveUuidsForVertices'>, 'config': {'title': 'OptionPathGetCurveUuidsForVertices'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionPathGetCurveUuidsForVertices'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionPathGetCurveUuidsForVertices'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionPathGetCurveUuidsForVertices:94091997460256', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.path_get_curve_uuids_for_vertices.PathGetCurveUuidsForVertices'>, 'config': {'title': 'PathGetCurveUuidsForVertices'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.path_get_curve_uuids_for_vertices.PathGetCurveUuidsForVertices'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.path_get_curve_uuids_for_vertices.PathGetCurveUuidsForVertices'>>]}, 'ref': 'kittycad.models.path_get_curve_uuids_for_vertices.PathGetCurveUuidsForVertices:94091996652656', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'curve_ids': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'type': 'model-field'}}, 'model_name': 'PathGetCurveUuidsForVertices', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'path_get_curve_uuids_for_vertices', 'schema': {'expected': ['path_get_curve_uuids_for_vertices'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionPathGetCurveUuidsForVertices', 'type': 'model-fields'}, 'type': 'model'}, 'path_get_info': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionPathGetInfo'>, 'config': {'title': 'OptionPathGetInfo'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionPathGetInfo'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionPathGetInfo'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionPathGetInfo:94091997425120', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.path_get_info.PathGetInfo'>, 'config': {'title': 'PathGetInfo'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.path_get_info.PathGetInfo'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.path_get_info.PathGetInfo'>>]}, 'ref': 'kittycad.models.path_get_info.PathGetInfo:94091996882352', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'segments': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'items_schema': {'schema_ref': 'kittycad.models.path_segment_info.PathSegmentInfo:94091996903216', 'type': 'definition-ref'}, 'type': 'list'}, 'type': 'model-field'}}, 'model_name': 'PathGetInfo', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'path_get_info', 'schema': {'expected': ['path_get_info'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionPathGetInfo', 'type': 'model-fields'}, 'type': 'model'}, 'path_get_sketch_target_uuid': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionPathGetSketchTargetUuid'>, 'config': {'title': 'OptionPathGetSketchTargetUuid'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionPathGetSketchTargetUuid'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionPathGetSketchTargetUuid'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionPathGetSketchTargetUuid:94091997499872', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.path_get_sketch_target_uuid.PathGetSketchTargetUuid'>, 'config': {'title': 'PathGetSketchTargetUuid'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.path_get_sketch_target_uuid.PathGetSketchTargetUuid'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.path_get_sketch_target_uuid.PathGetSketchTargetUuid'>>]}, 'ref': 'kittycad.models.path_get_sketch_target_uuid.PathGetSketchTargetUuid:94091996661248', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'target_id': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'schema': {'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'PathGetSketchTargetUuid', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'path_get_sketch_target_uuid', 'schema': {'expected': ['path_get_sketch_target_uuid'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionPathGetSketchTargetUuid', 'type': 'model-fields'}, 'type': 'model'}, 'path_get_vertex_uuids': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionPathGetVertexUuids'>, 'config': {'title': 'OptionPathGetVertexUuids'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionPathGetVertexUuids'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionPathGetVertexUuids'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionPathGetVertexUuids:94091997488608', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.path_get_vertex_uuids.PathGetVertexUuids'>, 'config': {'title': 'PathGetVertexUuids'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.path_get_vertex_uuids.PathGetVertexUuids'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.path_get_vertex_uuids.PathGetVertexUuids'>>]}, 'ref': 'kittycad.models.path_get_vertex_uuids.PathGetVertexUuids:94091996668480', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'vertex_ids': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'type': 'model-field'}}, 'model_name': 'PathGetVertexUuids', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'path_get_vertex_uuids', 'schema': {'expected': ['path_get_vertex_uuids'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionPathGetVertexUuids', 'type': 'model-fields'}, 'type': 'model'}, 'path_segment_info': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionPathSegmentInfo'>, 'config': {'title': 'OptionPathSegmentInfo'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionPathSegmentInfo'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionPathSegmentInfo'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionPathSegmentInfo:94091997439904', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.path_segment_info.PathSegmentInfo:94091996903216', 'type': 'definition-ref'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'path_segment_info', 'schema': {'expected': ['path_segment_info'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionPathSegmentInfo', 'type': 'model-fields'}, 'type': 'model'}, 'plane_intersect_and_project': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionPlaneIntersectAndProject'>, 'config': {'title': 'OptionPlaneIntersectAndProject'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionPlaneIntersectAndProject'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionPlaneIntersectAndProject'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionPlaneIntersectAndProject:94091997603952', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.plane_intersect_and_project.PlaneIntersectAndProject'>, 'config': {'title': 'PlaneIntersectAndProject'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.plane_intersect_and_project.PlaneIntersectAndProject'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.plane_intersect_and_project.PlaneIntersectAndProject'>>]}, 'ref': 'kittycad.models.plane_intersect_and_project.PlaneIntersectAndProject:94091996721568', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'plane_coordinates': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'schema': {'cls': <class 'kittycad.models.point2d.Point2d'>, 'config': {'title': 'Point2d'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.point2d.Point2d'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.point2d.Point2d'>>]}, 'ref': 'kittycad.models.point2d.Point2d:94091992043968', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'x': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'function': {'function': <class 'kittycad.models.length_unit.LengthUnit'>, 'type': 'no-info'}, 'schema': {'type': 'float'}, 'type': 'function-after'}, 'type': 'model-field'}, 'y': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'function': {'function': <class 'kittycad.models.length_unit.LengthUnit'>, 'type': 'no-info'}, 'schema': {'type': 'float'}, 'type': 'function-after'}, 'type': 'model-field'}}, 'model_name': 'Point2d', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'PlaneIntersectAndProject', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'plane_intersect_and_project', 'schema': {'expected': ['plane_intersect_and_project'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionPlaneIntersectAndProject', 'type': 'model-fields'}, 'type': 'model'}, 'select_get': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionSelectGet'>, 'config': {'title': 'OptionSelectGet'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionSelectGet'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionSelectGet'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionSelectGet:94091997284416', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.select_get.SelectGet'>, 'config': {'title': 'SelectGet'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.select_get.SelectGet'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.select_get.SelectGet'>>]}, 'ref': 'kittycad.models.select_get.SelectGet:94091996683872', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'entity_ids': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'type': 'model-field'}}, 'model_name': 'SelectGet', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'select_get', 'schema': {'expected': ['select_get'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionSelectGet', 'type': 'model-fields'}, 'type': 'model'}, 'select_with_point': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionSelectWithPoint'>, 'config': {'title': 'OptionSelectWithPoint'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionSelectWithPoint'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionSelectWithPoint'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionSelectWithPoint:94091996929936', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.select_with_point.SelectWithPoint'>, 'config': {'title': 'SelectWithPoint'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.select_with_point.SelectWithPoint'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.select_with_point.SelectWithPoint'>>]}, 'ref': 'kittycad.models.select_with_point.SelectWithPoint:94091996709376', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'entity_id': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'schema': {'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'SelectWithPoint', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'select_with_point', 'schema': {'expected': ['select_with_point'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionSelectWithPoint', 'type': 'model-fields'}, 'type': 'model'}, 'solid3d_get_all_edge_faces': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetAllEdgeFaces'>, 'config': {'title': 'OptionSolid3DGetAllEdgeFaces'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetAllEdgeFaces'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetAllEdgeFaces'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetAllEdgeFaces:94091997293680', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.solid3d_get_all_edge_faces.Solid3dGetAllEdgeFaces'>, 'config': {'title': 'Solid3dGetAllEdgeFaces'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.solid3d_get_all_edge_faces.Solid3dGetAllEdgeFaces'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.solid3d_get_all_edge_faces.Solid3dGetAllEdgeFaces'>>]}, 'ref': 'kittycad.models.solid3d_get_all_edge_faces.Solid3dGetAllEdgeFaces:94091996715568', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'faces': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'type': 'model-field'}}, 'model_name': 'Solid3dGetAllEdgeFaces', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'solid3d_get_all_edge_faces', 'schema': {'expected': ['solid3d_get_all_edge_faces'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionSolid3DGetAllEdgeFaces', 'type': 'model-fields'}, 'type': 'model'}, 'solid3d_get_all_opposite_edges': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetAllOppositeEdges'>, 'config': {'title': 'OptionSolid3DGetAllOppositeEdges'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetAllOppositeEdges'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetAllOppositeEdges'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetAllOppositeEdges:94091997305664', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.solid3d_get_all_opposite_edges.Solid3dGetAllOppositeEdges'>, 'config': {'title': 'Solid3dGetAllOppositeEdges'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.solid3d_get_all_opposite_edges.Solid3dGetAllOppositeEdges'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.solid3d_get_all_opposite_edges.Solid3dGetAllOppositeEdges'>>]}, 'ref': 'kittycad.models.solid3d_get_all_opposite_edges.Solid3dGetAllOppositeEdges:94091996726832', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'edges': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'type': 'model-field'}}, 'model_name': 'Solid3dGetAllOppositeEdges', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'solid3d_get_all_opposite_edges', 'schema': {'expected': ['solid3d_get_all_opposite_edges'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionSolid3DGetAllOppositeEdges', 'type': 'model-fields'}, 'type': 'model'}, 'solid3d_get_extrusion_face_info': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetExtrusionFaceInfo'>, 'config': {'title': 'OptionSolid3DGetExtrusionFaceInfo'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetExtrusionFaceInfo'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetExtrusionFaceInfo'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetExtrusionFaceInfo:94091997806384', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.solid3d_get_extrusion_face_info.Solid3dGetExtrusionFaceInfo'>, 'config': {'title': 'Solid3dGetExtrusionFaceInfo'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.solid3d_get_extrusion_face_info.Solid3dGetExtrusionFaceInfo'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.solid3d_get_extrusion_face_info.Solid3dGetExtrusionFaceInfo'>>]}, 'ref': 'kittycad.models.solid3d_get_extrusion_face_info.Solid3dGetExtrusionFaceInfo:94091996732560', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'faces': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'items_schema': {'schema_ref': 'kittycad.models.extrusion_face_info.ExtrusionFaceInfo:94091990835264', 'type': 'definition-ref'}, 'type': 'list'}, 'type': 'model-field'}}, 'model_name': 'Solid3dGetExtrusionFaceInfo', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'solid3d_get_extrusion_face_info', 'schema': {'expected': ['solid3d_get_extrusion_face_info'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionSolid3DGetExtrusionFaceInfo', 'type': 'model-fields'}, 'type': 'model'}, 'solid3d_get_next_adjacent_edge': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetNextAdjacentEdge'>, 'config': {'title': 'OptionSolid3DGetNextAdjacentEdge'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetNextAdjacentEdge'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetNextAdjacentEdge'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetNextAdjacentEdge:94091997330464', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.solid3d_get_next_adjacent_edge.Solid3dGetNextAdjacentEdge'>, 'config': {'title': 'Solid3dGetNextAdjacentEdge'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.solid3d_get_next_adjacent_edge.Solid3dGetNextAdjacentEdge'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.solid3d_get_next_adjacent_edge.Solid3dGetNextAdjacentEdge'>>]}, 'ref': 'kittycad.models.solid3d_get_next_adjacent_edge.Solid3dGetNextAdjacentEdge:94091996698176', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'edge': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'schema': {'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'Solid3dGetNextAdjacentEdge', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'solid3d_get_next_adjacent_edge', 'schema': {'expected': ['solid3d_get_next_adjacent_edge'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionSolid3DGetNextAdjacentEdge', 'type': 'model-fields'}, 'type': 'model'}, 'solid3d_get_opposite_edge': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetOppositeEdge'>, 'config': {'title': 'OptionSolid3DGetOppositeEdge'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetOppositeEdge'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetOppositeEdge'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetOppositeEdge:94091997318032', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.solid3d_get_opposite_edge.Solid3dGetOppositeEdge'>, 'config': {'title': 'Solid3dGetOppositeEdge'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.solid3d_get_opposite_edge.Solid3dGetOppositeEdge'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.solid3d_get_opposite_edge.Solid3dGetOppositeEdge'>>]}, 'ref': 'kittycad.models.solid3d_get_opposite_edge.Solid3dGetOppositeEdge:94091996743904', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'edge': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'Solid3dGetOppositeEdge', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'solid3d_get_opposite_edge', 'schema': {'expected': ['solid3d_get_opposite_edge'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionSolid3DGetOppositeEdge', 'type': 'model-fields'}, 'type': 'model'}, 'solid3d_get_prev_adjacent_edge': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetPrevAdjacentEdge'>, 'config': {'title': 'OptionSolid3DGetPrevAdjacentEdge'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetPrevAdjacentEdge'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetPrevAdjacentEdge'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionSolid3DGetPrevAdjacentEdge:94091997342064', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.solid3d_get_prev_adjacent_edge.Solid3dGetPrevAdjacentEdge'>, 'config': {'title': 'Solid3dGetPrevAdjacentEdge'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.solid3d_get_prev_adjacent_edge.Solid3dGetPrevAdjacentEdge'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.solid3d_get_prev_adjacent_edge.Solid3dGetPrevAdjacentEdge'>>]}, 'ref': 'kittycad.models.solid3d_get_prev_adjacent_edge.Solid3dGetPrevAdjacentEdge:94091996747872', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'edge': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'schema': {'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'Solid3dGetPrevAdjacentEdge', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'solid3d_get_prev_adjacent_edge', 'schema': {'expected': ['solid3d_get_prev_adjacent_edge'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionSolid3DGetPrevAdjacentEdge', 'type': 'model-fields'}, 'type': 'model'}, 'surface_area': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionSurfaceArea'>, 'config': {'title': 'OptionSurfaceArea'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionSurfaceArea'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionSurfaceArea'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionSurfaceArea:94091997693376', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.surface_area.SurfaceArea'>, 'config': {'title': 'SurfaceArea'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.surface_area.SurfaceArea'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.surface_area.SurfaceArea'>>]}, 'ref': 'kittycad.models.surface_area.SurfaceArea:94091996757888', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'output_unit': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <enum 'UnitArea'>, 'members': [UnitArea.CM2, UnitArea.DM2, UnitArea.FT2, UnitArea.IN2, UnitArea.KM2, UnitArea.M2, UnitArea.MM2, UnitArea.YD2], 'metadata': {'pydantic_js_functions': [<function GenerateSchema._enum_schema.<locals>.get_json_schema>]}, 'ref': 'kittycad.models.unit_area.UnitArea:94091988921136', 'sub_type': 'str', 'type': 'enum'}, 'type': 'model-field'}, 'surface_area': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'float'}, 'type': 'model-field'}}, 'model_name': 'SurfaceArea', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'surface_area', 'schema': {'expected': ['surface_area'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionSurfaceArea', 'type': 'model-fields'}, 'type': 'model'}, 'take_snapshot': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionTakeSnapshot'>, 'config': {'title': 'OptionTakeSnapshot'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionTakeSnapshot'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionTakeSnapshot'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionTakeSnapshot:94091997411120', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.take_snapshot.TakeSnapshot'>, 'config': {'title': 'TakeSnapshot'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.take_snapshot.TakeSnapshot'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.take_snapshot.TakeSnapshot'>>]}, 'ref': 'kittycad.models.take_snapshot.TakeSnapshot:94091996775408', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'contents': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'function': {'function': <bound method Base64Data.validate of <class 'kittycad.models.base64data.Base64Data'>>, 'type': 'no-info'}, 'schema': {'choices': [{'type': 'str'}, {'type': 'bytes'}], 'type': 'union'}, 'serialization': {'function': <bound method Base64Data.serialize of <class 'kittycad.models.base64data.Base64Data'>>, 'type': 'function-plain'}, 'type': 'function-after'}, 'type': 'model-field'}}, 'model_name': 'TakeSnapshot', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'take_snapshot', 'schema': {'expected': ['take_snapshot'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionTakeSnapshot', 'type': 'model-fields'}, 'type': 'model'}, 'view_isometric': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionViewIsometric'>, 'config': {'title': 'OptionViewIsometric'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionViewIsometric'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionViewIsometric'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionViewIsometric:94091996647536', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.view_isometric.ViewIsometric'>, 'config': {'title': 'ViewIsometric'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.view_isometric.ViewIsometric'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.view_isometric.ViewIsometric'>>]}, 'ref': 'kittycad.models.view_isometric.ViewIsometric:94091996783328', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'settings': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.camera_settings.CameraSettings:94091990263904', 'type': 'definition-ref'}, 'type': 'model-field'}}, 'model_name': 'ViewIsometric', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'view_isometric', 'schema': {'expected': ['view_isometric'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionViewIsometric', 'type': 'model-fields'}, 'type': 'model'}, 'volume': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionVolume'>, 'config': {'title': 'OptionVolume'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionVolume'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionVolume'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionVolume:94091997666464', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.volume.Volume'>, 'config': {'title': 'Volume'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.volume.Volume'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.volume.Volume'>>]}, 'ref': 'kittycad.models.volume.Volume:94091996801744', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'output_unit': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <enum 'UnitVolume'>, 'members': [UnitVolume.CM3, UnitVolume.FT3, UnitVolume.IN3, UnitVolume.M3, UnitVolume.YD3, UnitVolume.USFLOZ, UnitVolume.USGAL, UnitVolume.L, UnitVolume.ML], 'metadata': {'pydantic_js_functions': [<function GenerateSchema._enum_schema.<locals>.get_json_schema>]}, 'ref': 'kittycad.models.unit_volume.UnitVolume:94091988931008', 'sub_type': 'str', 'type': 'enum'}, 'type': 'model-field'}, 'volume': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'type': 'float'}, 'type': 'model-field'}}, 'model_name': 'Volume', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'volume', 'schema': {'expected': ['volume'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionVolume', 'type': 'model-fields'}, 'type': 'model'}, 'zoom_to_fit': {'cls': <class 'kittycad.models.ok_modeling_cmd_response.OptionZoomToFit'>, 'config': {'title': 'OptionZoomToFit'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.ok_modeling_cmd_response.OptionZoomToFit'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.ok_modeling_cmd_response.OptionZoomToFit'>>]}, 'ref': 'kittycad.models.ok_modeling_cmd_response.OptionZoomToFit:94091997153536', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'kittycad.models.zoom_to_fit.ZoomToFit'>, 'config': {'title': 'ZoomToFit'}, 'custom_init': False, 'metadata': {'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'kittycad.models.zoom_to_fit.ZoomToFit'>, title=None), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'kittycad.models.zoom_to_fit.ZoomToFit'>>]}, 'ref': 'kittycad.models.zoom_to_fit.ZoomToFit:94091996810688', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'settings': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'schema_ref': 'kittycad.models.camera_settings.CameraSettings:94091990263904', 'type': 'definition-ref'}, 'type': 'model-field'}}, 'model_name': 'ZoomToFit', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'zoom_to_fit', 'schema': {'expected': ['zoom_to_fit'], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OptionZoomToFit', 'type': 'model-fields'}, 'type': 'model'}}, 'discriminator': 'type', 'from_attributes': True, 'metadata': {}, 'strict': False, 'type': 'tagged-union'}, 'type': 'model'}, 'type': 'model-field'}}, 'model_name': 'ModelingData', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}[source]
The core schema of the model.
- __pydantic_custom_init__: ClassVar[bool] = False[source]
Whether the model has a custom
__init__
method.
- __pydantic_decorators__: ClassVar[_decorators.DecoratorInfos] = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})[source]
Metadata containing the decorators defined on the model. This replaces
Model.__validators__
andModel.__root_validators__
from Pydantic V1.
- __pydantic_extra__: dict[str, Any] | None[source]
A dictionary containing extra values, if [
extra
][pydantic.config.ConfigDict.extra] is set to'allow'
.
- __pydantic_generic_metadata__: ClassVar[_generics.PydanticGenericMetadata] = {'args': (), 'origin': None, 'parameters': ()}[source]
Metadata for generic models; contains data used for a similar purpose to __args__, __origin__, __parameters__ in typing-module generics. May eventually be replaced by these.
- classmethod __pydantic_init_subclass__(**kwargs)[source]
This is intended to behave just like
__init_subclass__
, but is called byModelMetaclass
only after the class is actually fully initialized. In particular, attributes likemodel_fields
will be present when this is called.This is necessary because
__init_subclass__
will always be called bytype.__new__
, and it would require a prohibitively large refactor to theModelMetaclass
to ensure thattype.__new__
was called in such a manner that the class would already be sufficiently initialized.This will receive the same
kwargs
that would be passed to the standard__init_subclass__
, namely, any kwargs passed to the class definition that aren’t used internally by pydantic.
- __pydantic_parent_namespace__: ClassVar[Dict[str, Any] | None] = None[source]
Parent namespace of the model, used for automatic rebuilding of models.
- __pydantic_post_init__: ClassVar[None | Literal['model_post_init']] = None[source]
The name of the post-init method for the model, if defined.
- __pydantic_private__: dict[str, Any] | None[source]
Values of private attributes set on the model instance.
- __pydantic_root_model__: ClassVar[bool] = False[source]
Whether the model is a [
RootModel
][pydantic.root_model.RootModel].
- __pydantic_serializer__: ClassVar[SchemaSerializer] = SchemaSerializer(serializer=Model( ModelSerializer { class: Py( 0x000055938027fbf0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "modeling_response": SerField { key_py: Py( 0x00007f4fcc6d4ff0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x00005593801bc480, ), serializer: TaggedUnion( TaggedUnionSerializer { discriminator: LookupKey( Simple { key: "type", py_key: Py( 0x00007f4fd143da58, ), path: LookupPath( [ S( "type", Py( 0x00007f4fd143da58, ), ), ], ), }, ), lookup: { "path_get_vertex_uuids": 34, "face_is_planar": 37, "import_files": 42, "entity_get_distance": 50, "curve_get_type": 27, "entity_linear_pattern": 52, "entity_circular_pattern": 53, "default_camera_focus_on": 18, "face_get_center": 39, "get_entity_type": 25, "solid3d_get_next_adjacent_edge": 23, "solid3d_get_extrusion_face_info": 54, "extrusion_face_info": 55, "loft": 9, "camera_drag_end": 12, "volume": 45, "center_of_mass": 48, "mouse_click": 28, "surface_area": 47, "solid3d_get_all_opposite_edges": 21, "solid3d_get_all_edge_faces": 20, "path_get_curve_uuids_for_vertices": 32, "entity_get_sketch_paths": 8, "select_get": 19, "path_get_info": 30, "face_get_position": 38, "entity_get_child_uuid": 4, "plane_intersect_and_project": 41, "export": 1, "zoom_to_fit": 15, "path_get_sketch_target_uuid": 35, "default_camera_zoom": 14, "empty": 0, "default_camera_get_settings": 13, "mass": 44, "density": 46, "close_path": 10, "camera_drag_move": 11, "entity_get_all_child_uuids": 7, "face_get_gradient": 40, "imported_geometry": 43, "take_snapshot": 29, "entity_linear_pattern_transform": 51, "view_isometric": 16, "solid3d_get_opposite_edge": 22, "curve_get_control_points": 26, "get_sketch_mode_plane": 49, "curve_get_end_points": 36, "path_segment_info": 31, "select_with_point": 2, "path_get_curve_uuid": 33, "entity_get_num_children": 5, "highlight_set_entity": 3, "entity_get_parent_id": 6, "get_num_objects": 17, "solid3d_get_prev_adjacent_edge": 24, }, choices: [ Model( ModelSerializer { class: Py( 0x00005593800c2670, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fd13a9f40, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "empty", }, expected_py: None, name: "literal['empty']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "OptionEmpty", }, ), Model( ModelSerializer { class: Py( 0x00005593800c2a50, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fae94e0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "files": SerField { key_py: Py( 0x00007f4fd13f1b60, ), alias: None, alias_py: None, serializer: Some( List( ListSerializer { item_serializer: Model( ModelSerializer { class: Py( 0x000055937fae7200, ), serializer: Fields( GeneralFieldsSerializer { fields: { "contents": SerField { key_py: Py( 0x00007f4fd13f5940, ), alias: None, alias_py: None, serializer: Some( Function( FunctionPlainSerializer { func: Py( 0x00007f4fccce3480, ), name: "plain_function[serialize]", function_name: "serialize", return_serializer: Any( AnySerializer, ), fallback_serializer: None, when_used: Always, is_field_serializer: false, info_arg: false, }, ), ), required: true, }, "name": SerField { key_py: Py( 0x00007f4fd143b7b0, ), alias: None, alias_py: None, serializer: Some( Str( StrSerializer, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "ExportFile", }, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[ExportFile]", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "Export", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcfc90570, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "export", }, expected_py: None, name: "literal['export']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionExport", }, ), Model( ModelSerializer { class: Py( 0x00005593800d9f90, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x00005593800a4200, ), serializer: Fields( GeneralFieldsSerializer { fields: { "entity_id": SerField { key_py: Py( 0x00007f4fccce3170, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fd1348100, ), ), serializer: Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "SelectWithPoint", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd888630, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "select_with_point", }, expected_py: None, name: "literal['select_with_point']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionSelectWithPoint", }, ), Model( ModelSerializer { class: Py( 0x000055937ed38d70, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fb813f0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "entity_id": SerField { key_py: Py( 0x00007f4fccce3170, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fd1348100, ), ), serializer: Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), }, ), ), required: true, }, "sequence": SerField { key_py: Py( 0x00007f4fd143cc48, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fd1348100, ), ), serializer: Nullable( NullableSerializer { serializer: Int( IntSerializer, ), }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "HighlightSetEntity", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd95a870, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "highlight_set_entity", }, expected_py: None, name: "literal['highlight_set_entity']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionHighlightSetEntity", }, ), Model( ModelSerializer { class: Py( 0x00005593800dded0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fac9c50, ), serializer: Fields( GeneralFieldsSerializer { fields: { "entity_id": SerField { key_py: Py( 0x00007f4fccce3170, ), alias: None, alias_py: None, serializer: Some( Str( StrSerializer, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "EntityGetChildUuid", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcdd012b0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "entity_get_child_uuid", }, expected_py: None, name: "literal['entity_get_child_uuid']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionEntityGetChildUuid", }, ), Model( ModelSerializer { class: Py( 0x00005593800e1ae0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937facba50, ), serializer: Fields( GeneralFieldsSerializer { fields: { "num": SerField { key_py: Py( 0x00007f4fd09335d0, ), alias: None, alias_py: None, serializer: Some( Int( IntSerializer, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "EntityGetNumChildren", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcdd025b0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "entity_get_num_children", }, expected_py: None, name: "literal['entity_get_num_children']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionEntityGetNumChildren", }, ), Model( ModelSerializer { class: Py( 0x00005593800e4490, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcdd026b0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "entity_get_parent_id", }, expected_py: None, name: "literal['entity_get_parent_id']", }, ), }, ), ), required: true, }, "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937faccdd0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "entity_id": SerField { key_py: Py( 0x00007f4fccce3170, ), alias: None, alias_py: None, serializer: Some( Str( StrSerializer, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "EntityGetParentId", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionEntityGetParentId", }, ), Model( ModelSerializer { class: Py( 0x00005593800e6ed0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fac84d0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "entity_ids": SerField { key_py: Py( 0x00007f4fccce0f30, ), alias: None, alias_py: None, serializer: Some( List( ListSerializer { item_serializer: Str( StrSerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[str]", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "EntityGetAllChildUuids", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd879cf0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "entity_get_all_child_uuids", }, expected_py: None, name: "literal['entity_get_all_child_uuids']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionEntityGetAllChildUuids", }, ), Model( ModelSerializer { class: Py( 0x00005593800e98e0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcdd027b0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "entity_get_sketch_paths", }, expected_py: None, name: "literal['entity_get_sketch_paths']", }, ), }, ), ), required: true, }, "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fad34b0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "entity_ids": SerField { key_py: Py( 0x00007f4fccce0f30, ), alias: None, alias_py: None, serializer: Some( List( ListSerializer { item_serializer: Str( StrSerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[str]", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "EntityGetSketchPaths", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionEntityGetSketchPaths", }, ), Model( ModelSerializer { class: Py( 0x00005593800ec930, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fbd5ee0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "solid_id": SerField { key_py: Py( 0x00007f4fccbfb430, ), alias: None, alias_py: None, serializer: Some( Str( StrSerializer, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "Loft", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcdc522e0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "loft", }, expected_py: None, name: "literal['loft']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionLoft", }, ), Model( ModelSerializer { class: Py( 0x00005593800ef940, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937ed29e00, ), serializer: Fields( GeneralFieldsSerializer { fields: { "face_id": SerField { key_py: Py( 0x00007f4fccfcb0f0, ), alias: None, alias_py: None, serializer: Some( Str( StrSerializer, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "ClosePath", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd903b30, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "close_path", }, expected_py: None, name: "literal['close_path']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionClosePath", }, ), Model( ModelSerializer { class: Py( 0x00005593800f25b0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fa8ed90, ), serializer: Fields( GeneralFieldsSerializer { fields: { "settings": SerField { key_py: Py( 0x00007f4fd03237b0, ), alias: None, alias_py: None, serializer: Some( Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "CameraDragMove", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd903070, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "camera_drag_move", }, expected_py: None, name: "literal['camera_drag_move']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionCameraDragMove", }, ), Model( ModelSerializer { class: Py( 0x00005593800f5220, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fa86c40, ), serializer: Fields( GeneralFieldsSerializer { fields: { "settings": SerField { key_py: Py( 0x00007f4fd03237b0, ), alias: None, alias_py: None, serializer: Some( Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "CameraDragEnd", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd902e70, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "camera_drag_end", }, expected_py: None, name: "literal['camera_drag_end']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionCameraDragEnd", }, ), Model( ModelSerializer { class: Py( 0x00005593800fe400, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd8796b0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "default_camera_get_settings", }, expected_py: None, name: "literal['default_camera_get_settings']", }, ), }, ), ), required: true, }, "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937f93a430, ), serializer: Fields( GeneralFieldsSerializer { fields: { "settings": SerField { key_py: Py( 0x00007f4fd03237b0, ), alias: None, alias_py: None, serializer: Some( Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "DefaultCameraGetSettings", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionDefaultCameraGetSettings", }, ), Model( ModelSerializer { class: Py( 0x0000559380107580, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fa9fb90, ), serializer: Fields( GeneralFieldsSerializer { fields: { "settings": SerField { key_py: Py( 0x00007f4fd03237b0, ), alias: None, alias_py: None, serializer: Some( Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "DefaultCameraZoom", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd86e2f0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "default_camera_zoom", }, expected_py: None, name: "literal['default_camera_zoom']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionDefaultCameraZoom", }, ), Model( ModelSerializer { class: Py( 0x0000559380110900, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd88b730, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "zoom_to_fit", }, expected_py: None, name: "literal['zoom_to_fit']", }, ), }, ), ), required: true, }, "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x00005593800bcdc0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "settings": SerField { key_py: Py( 0x00007f4fd03237b0, ), alias: None, alias_py: None, serializer: Some( Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "ZoomToFit", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionZoomToFit", }, ), Model( ModelSerializer { class: Py( 0x0000559380095070, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd88b2f0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "view_isometric", }, expected_py: None, name: "literal['view_isometric']", }, ), }, ), ), required: true, }, "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x00005593800b62e0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "settings": SerField { key_py: Py( 0x00007f4fd03237b0, ), alias: None, alias_py: None, serializer: Some( Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "ViewIsometric", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionViewIsometric", }, ), Model( ModelSerializer { class: Py( 0x0000559380123320, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fb7c240, ), serializer: Fields( GeneralFieldsSerializer { fields: { "num_objects": SerField { key_py: Py( 0x00007f4fcddea370, ), alias: None, alias_py: None, serializer: Some( Int( IntSerializer, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "GetNumObjects", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd95acb0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "get_num_objects", }, expected_py: None, name: "literal['get_num_objects']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionGetNumObjects", }, ), Model( ModelSerializer { class: Py( 0x000055938012dc60, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd86dff0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "default_camera_focus_on", }, expected_py: None, name: "literal['default_camera_focus_on']", }, ), }, ), ), required: true, }, "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937ee004b0, ), serializer: Fields( GeneralFieldsSerializer { fields: {}, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 0, }, ), has_extra: false, root_model: false, name: "DefaultCameraFocusOn", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionDefaultCameraFocusOn", }, ), Model( ModelSerializer { class: Py( 0x0000559380130840, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055938009de60, ), serializer: Fields( GeneralFieldsSerializer { fields: { "entity_ids": SerField { key_py: Py( 0x00007f4fccce0f30, ), alias: None, alias_py: None, serializer: Some( List( ListSerializer { item_serializer: Str( StrSerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[str]", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "SelectGet", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd888570, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "select_get", }, expected_py: None, name: "literal['select_get']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionSelectGet", }, ), Model( ModelSerializer { class: Py( 0x0000559380132c70, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x00005593800a5a30, ), serializer: Fields( GeneralFieldsSerializer { fields: { "faces": SerField { key_py: Py( 0x00007f4fcc89a700, ), alias: None, alias_py: None, serializer: Some( List( ListSerializer { item_serializer: Str( StrSerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[str]", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "Solid3dGetAllEdgeFaces", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd87aa10, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "solid3d_get_all_edge_faces", }, expected_py: None, name: "literal['solid3d_get_all_edge_faces']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionSolid3DGetAllEdgeFaces", }, ), Model( ModelSerializer { class: Py( 0x0000559380135b40, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd87aa60, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "solid3d_get_all_opposite_edges", }, expected_py: None, name: "literal['solid3d_get_all_opposite_edges']", }, ), }, ), ), required: true, }, "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x00005593800a8630, ), serializer: Fields( GeneralFieldsSerializer { fields: { "edges": SerField { key_py: Py( 0x00007f4fd142a4a0, ), alias: None, alias_py: None, serializer: Some( List( ListSerializer { item_serializer: Str( StrSerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[str]", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "Solid3dGetAllOppositeEdges", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionSolid3DGetAllOppositeEdges", }, ), Model( ModelSerializer { class: Py( 0x0000559380138b90, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x00005593800ac8e0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "edge": SerField { key_py: Py( 0x00007f4fcccf04b0, ), alias: None, alias_py: None, serializer: Some( Str( StrSerializer, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "Solid3dGetOppositeEdge", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd87ac40, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "solid3d_get_opposite_edge", }, expected_py: None, name: "literal['solid3d_get_opposite_edge']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionSolid3DGetOppositeEdge", }, ), Model( ModelSerializer { class: Py( 0x000055938013bc20, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd87aba0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "solid3d_get_next_adjacent_edge", }, expected_py: None, name: "literal['solid3d_get_next_adjacent_edge']", }, ), }, ), ), required: true, }, "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x00005593800a1640, ), serializer: Fields( GeneralFieldsSerializer { fields: { "edge": SerField { key_py: Py( 0x00007f4fcccf04b0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fd1348100, ), ), serializer: Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "Solid3dGetNextAdjacentEdge", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionSolid3DGetNextAdjacentEdge", }, ), Model( ModelSerializer { class: Py( 0x000055938013e970, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x00005593800ad860, ), serializer: Fields( GeneralFieldsSerializer { fields: { "edge": SerField { key_py: Py( 0x00007f4fcccf04b0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fd1348100, ), ), serializer: Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "Solid3dGetPrevAdjacentEdge", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd87ac90, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "solid3d_get_prev_adjacent_edge", }, expected_py: None, name: "literal['solid3d_get_prev_adjacent_edge']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionSolid3DGetPrevAdjacentEdge", }, ), Model( ModelSerializer { class: Py( 0x0000559380141de0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fb79b80, ), serializer: Fields( GeneralFieldsSerializer { fields: { "entity_type": SerField { key_py: Py( 0x00007f4fcdd029f0, ), alias: None, alias_py: None, serializer: Some( Enum( EnumSerializer { class: Py( 0x000055937fad8000, ), serializer: Some( Str( StrSerializer, ), ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "GetEntityType", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd95ad70, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "get_entity_type", }, expected_py: None, name: "literal['get_entity_type']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionGetEntityType", }, ), Model( ModelSerializer { class: Py( 0x00005593801451b0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937ed8d560, ), serializer: Fields( GeneralFieldsSerializer { fields: { "control_points": SerField { key_py: Py( 0x00007f4fccd784b0, ), alias: None, alias_py: None, serializer: Some( List( ListSerializer { item_serializer: Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[definition-ref]", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "CurveGetControlPoints", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd879660, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "curve_get_control_points", }, expected_py: None, name: "literal['curve_get_control_points']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionCurveGetControlPoints", }, ), Model( ModelSerializer { class: Py( 0x0000559380148630, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937ed92da0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "curve_type": SerField { key_py: Py( 0x00007f4fcd86d0b0, ), alias: None, alias_py: None, serializer: Some( Enum( EnumSerializer { class: Py( 0x000055937ed93de0, ), serializer: Some( Str( StrSerializer, ), ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "CurveGetType", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd86d030, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "curve_get_type", }, expected_py: None, name: "literal['curve_get_type']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionCurveGetType", }, ), Model( ModelSerializer { class: Py( 0x000055938014c920, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937ff7b6a0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "entities_selected": SerField { key_py: Py( 0x00007f4fcc8fb2f0, ), alias: None, alias_py: None, serializer: Some( List( ListSerializer { item_serializer: Str( StrSerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[str]", }, ), ), required: true, }, "entities_modified": SerField { key_py: Py( 0x00007f4fcc8fb570, ), alias: None, alias_py: None, serializer: Some( List( ListSerializer { item_serializer: Str( StrSerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[str]", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "MouseClick", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd9931b0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "mouse_click", }, expected_py: None, name: "literal['mouse_click']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionMouseClick", }, ), Model( ModelSerializer { class: Py( 0x000055938014f730, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd889530, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "take_snapshot", }, expected_py: None, name: "literal['take_snapshot']", }, ), }, ), ), required: true, }, "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x00005593800b43f0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "contents": SerField { key_py: Py( 0x00007f4fd13f5940, ), alias: None, alias_py: None, serializer: Some( Function( FunctionPlainSerializer { func: Py( 0x00007f4fcc95edc0, ), name: "plain_function[serialize]", function_name: "serialize", return_serializer: Any( AnySerializer, ), fallback_serializer: None, when_used: Always, is_field_serializer: false, info_arg: false, }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "TakeSnapshot", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionTakeSnapshot", }, ), Model( ModelSerializer { class: Py( 0x0000559380152de0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd8875b0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "path_get_info", }, expected_py: None, name: "literal['path_get_info']", }, ), }, ), ), required: true, }, "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x00005593800ce5b0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "segments": SerField { key_py: Py( 0x00007f4fd034e430, ), alias: None, alias_py: None, serializer: Some( List( ListSerializer { item_serializer: Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[definition-ref]", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "PathGetInfo", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionPathGetInfo", }, ), Model( ModelSerializer { class: Py( 0x00005593801567a0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd8878b0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "path_segment_info", }, expected_py: None, name: "literal['path_segment_info']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionPathSegmentInfo", }, ), Model( ModelSerializer { class: Py( 0x000055938015b720, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x0000559380096470, ), serializer: Fields( GeneralFieldsSerializer { fields: { "curve_ids": SerField { key_py: Py( 0x00007f4fcc7fd670, ), alias: None, alias_py: None, serializer: Some( List( ListSerializer { item_serializer: Str( StrSerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[str]", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "PathGetCurveUuidsForVertices", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd87a600, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "path_get_curve_uuids_for_vertices", }, expected_py: None, name: "literal['path_get_curve_uuids_for_vertices']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionPathGetCurveUuidsForVertices", }, ), Model( ModelSerializer { class: Py( 0x000055938015f5e0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fe352c0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "curve_id": SerField { key_py: Py( 0x00007f4fccb35370, ), alias: None, alias_py: None, serializer: Some( Str( StrSerializer, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "PathGetCurveUuid", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd8874b0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "path_get_curve_uuid", }, expected_py: None, name: "literal['path_get_curve_uuid']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionPathGetCurveUuid", }, ), Model( ModelSerializer { class: Py( 0x00005593801625e0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055938009a240, ), serializer: Fields( GeneralFieldsSerializer { fields: { "vertex_ids": SerField { key_py: Py( 0x00007f4fccaa5030, ), alias: None, alias_py: None, serializer: Some( List( ListSerializer { item_serializer: Str( StrSerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[str]", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "PathGetVertexUuids", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd887730, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "path_get_vertex_uuids", }, expected_py: None, name: "literal['path_get_vertex_uuids']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionPathGetVertexUuids", }, ), Model( ModelSerializer { class: Py( 0x00005593801651e0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd87a6a0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "path_get_sketch_target_uuid", }, expected_py: None, name: "literal['path_get_sketch_target_uuid']", }, ), }, ), ), required: true, }, "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x0000559380098600, ), serializer: Fields( GeneralFieldsSerializer { fields: { "target_id": SerField { key_py: Py( 0x00007f4fd142a560, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fd1348100, ), ), serializer: Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "PathGetSketchTargetUuid", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionPathGetSketchTargetUuid", }, ), Model( ModelSerializer { class: Py( 0x0000559380168110, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937ed8fb00, ), serializer: Fields( GeneralFieldsSerializer { fields: { "end": SerField { key_py: Py( 0x00007f4fd1439760, ), alias: None, alias_py: None, serializer: Some( Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ), required: true, }, "start": SerField { key_py: Py( 0x00007f4fd143d1a0, ), alias: None, alias_py: None, serializer: Some( Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "CurveGetEndPoints", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd86d130, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "curve_get_end_points", }, expected_py: None, name: "literal['curve_get_end_points']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionCurveGetEndPoints", }, ), Model( ModelSerializer { class: Py( 0x000055938016b560, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd959d70, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "face_is_planar", }, expected_py: None, name: "literal['face_is_planar']", }, ), }, ), ), required: true, }, "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fb17da0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "y_axis": SerField { key_py: Py( 0x00007f4fcccf3270, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fd1348100, ), ), serializer: Nullable( NullableSerializer { serializer: Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), }, ), }, ), ), required: true, }, "z_axis": SerField { key_py: Py( 0x00007f4fcccf3360, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fd1348100, ), ), serializer: Nullable( NullableSerializer { serializer: Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), }, ), }, ), ), required: true, }, "origin": SerField { key_py: Py( 0x00007f4fd143bec0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fd1348100, ), ), serializer: Nullable( NullableSerializer { serializer: Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), }, ), }, ), ), required: true, }, "x_axis": SerField { key_py: Py( 0x00007f4fcccf3180, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fd1348100, ), ), serializer: Nullable( NullableSerializer { serializer: Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 4, }, ), has_extra: false, root_model: false, name: "FaceIsPlanar", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionFaceIsPlanar", }, ), Model( ModelSerializer { class: Py( 0x000055938016fcf0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd959b30, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "face_get_position", }, expected_py: None, name: "literal['face_get_position']", }, ), }, ), ), required: true, }, "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fb15480, ), serializer: Fields( GeneralFieldsSerializer { fields: { "pos": SerField { key_py: Py( 0x00007f4fd143c250, ), alias: None, alias_py: None, serializer: Some( Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "FaceGetPosition", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionFaceGetPosition", }, ), Model( ModelSerializer { class: Py( 0x0000559380176c90, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fb0f880, ), serializer: Fields( GeneralFieldsSerializer { fields: { "pos": SerField { key_py: Py( 0x00007f4fd143c250, ), alias: None, alias_py: None, serializer: Some( Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "FaceGetCenter", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd9597b0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "face_get_center", }, expected_py: None, name: "literal['face_get_center']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionFaceGetCenter", }, ), Model( ModelSerializer { class: Py( 0x000055938017aa80, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd959970, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "face_get_gradient", }, expected_py: None, name: "literal['face_get_gradient']", }, ), }, ), ), required: true, }, "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fb11db0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "df_dv": SerField { key_py: Py( 0x00007f4fcccf24f0, ), alias: None, alias_py: None, serializer: Some( Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ), required: true, }, "df_du": SerField { key_py: Py( 0x00007f4fcccf2460, ), alias: None, alias_py: None, serializer: Some( Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ), required: true, }, "normal": SerField { key_py: Py( 0x00007f4fcfc9ee50, ), alias: None, alias_py: None, serializer: Some( Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 3, }, ), has_extra: false, root_model: false, name: "FaceGetGradient", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionFaceGetGradient", }, ), Model( ModelSerializer { class: Py( 0x000055938017e870, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x00005593800a71a0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "plane_coordinates": SerField { key_py: Py( 0x00007f4fcc8a8930, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fd1348100, ), ), serializer: Nullable( NullableSerializer { serializer: Model( ModelSerializer { class: Py( 0x000055937fc311c0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "y": SerField { key_py: Py( 0x00007f4fd143f658, ), alias: None, alias_py: None, serializer: Some( Float( FloatSerializer { inf_nan_mode: Null, }, ), ), required: true, }, "x": SerField { key_py: Py( 0x00007f4fd143df18, ), alias: None, alias_py: None, serializer: Some( Float( FloatSerializer { inf_nan_mode: Null, }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "Point2d", }, ), }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "PlaneIntersectAndProject", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd87a7e0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "plane_intersect_and_project", }, expected_py: None, name: "literal['plane_intersect_and_project']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionPlaneIntersectAndProject", }, ), Model( ModelSerializer { class: Py( 0x0000559380183640, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd95a970, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "import_files", }, expected_py: None, name: "literal['import_files']", }, ), }, ), ), required: true, }, "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fb92ec0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "object_id": SerField { key_py: Py( 0x00007f4fcf570e70, ), alias: None, alias_py: None, serializer: Some( Str( StrSerializer, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "ImportFiles", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionImportFiles", }, ), Model( ModelSerializer { class: Py( 0x0000559380187eb0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fb95130, ), serializer: Fields( GeneralFieldsSerializer { fields: { "value": SerField { key_py: Py( 0x00007f4fd143dc20, ), alias: None, alias_py: None, serializer: Some( List( ListSerializer { item_serializer: Str( StrSerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[str]", }, ), ), required: true, }, "id": SerField { key_py: Py( 0x00007f4fd143a4e8, ), alias: None, alias_py: None, serializer: Some( Str( StrSerializer, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "ImportedGeometry", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd95ba30, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "imported_geometry", }, expected_py: None, name: "literal['imported_geometry']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionImportedGeometry", }, ), Model( ModelSerializer { class: Py( 0x000055938018aa60, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fbd7440, ), serializer: Fields( GeneralFieldsSerializer { fields: { "output_unit": SerField { key_py: Py( 0x00007f4fcd809d30, ), alias: None, alias_py: None, serializer: Some( Enum( EnumSerializer { class: Py( 0x000055937f938330, ), serializer: Some( Str( StrSerializer, ), ), }, ), ), required: true, }, "mass": SerField { key_py: Py( 0x00007f4fcdc52430, ), alias: None, alias_py: None, serializer: Some( Float( FloatSerializer { inf_nan_mode: Null, }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "Mass", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcdc52430, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "mass", }, expected_py: None, name: "literal['mass']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionMass", }, ), Model( ModelSerializer { class: Py( 0x000055938018dca0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fd143dcb0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "volume", }, expected_py: None, name: "literal['volume']", }, ), }, ), ), required: true, }, "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x00005593800baad0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "output_unit": SerField { key_py: Py( 0x00007f4fcd809d30, ), alias: None, alias_py: None, serializer: Some( Enum( EnumSerializer { class: Py( 0x000055937f9391c0, ), serializer: Some( Str( StrSerializer, ), ), }, ), ), required: true, }, "volume": SerField { key_py: Py( 0x00007f4fd143dcb0, ), alias: None, alias_py: None, serializer: Some( Float( FloatSerializer { inf_nan_mode: Null, }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "Volume", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionVolume", }, ), Model( ModelSerializer { class: Py( 0x0000559380190d70, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fce62a130, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "density", }, expected_py: None, name: "literal['density']", }, ), }, ), ), required: true, }, "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937faa75a0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "output_unit": SerField { key_py: Py( 0x00007f4fcd809d30, ), alias: None, alias_py: None, serializer: Some( Enum( EnumSerializer { class: Py( 0x000055937f937c40, ), serializer: Some( Str( StrSerializer, ), ), }, ), ), required: true, }, "density": SerField { key_py: Py( 0x00007f4fce62a130, ), alias: None, alias_py: None, serializer: Some( Float( FloatSerializer { inf_nan_mode: Null, }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "Density", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionDensity", }, ), Model( ModelSerializer { class: Py( 0x00005593801945c0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x00005593800aff80, ), serializer: Fields( GeneralFieldsSerializer { fields: { "output_unit": SerField { key_py: Py( 0x00007f4fcd809d30, ), alias: None, alias_py: None, serializer: Some( Enum( EnumSerializer { class: Py( 0x000055937f936b30, ), serializer: Some( Str( StrSerializer, ), ), }, ), ), required: true, }, "surface_area": SerField { key_py: Py( 0x00007f4fcd8894b0, ), alias: None, alias_py: None, serializer: Some( Float( FloatSerializer { inf_nan_mode: Null, }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "SurfaceArea", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd8894b0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "surface_area", }, expected_py: None, name: "literal['surface_area']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionSurfaceArea", }, ), Model( ModelSerializer { class: Py( 0x00005593801976b0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937ed23120, ), serializer: Fields( GeneralFieldsSerializer { fields: { "output_unit": SerField { key_py: Py( 0x00007f4fcd809d30, ), alias: None, alias_py: None, serializer: Some( Enum( EnumSerializer { class: Py( 0x000055937f973bf0, ), serializer: Some( Str( StrSerializer, ), ), }, ), ), required: true, }, "center_of_mass": SerField { key_py: Py( 0x00007f4fcd900230, ), alias: None, alias_py: None, serializer: Some( Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "CenterOfMass", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd900230, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "center_of_mass", }, expected_py: None, name: "literal['center_of_mass']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionCenterOfMass", }, ), Model( ModelSerializer { class: Py( 0x000055938019acb0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fb7fd60, ), serializer: Fields( GeneralFieldsSerializer { fields: { "origin": SerField { key_py: Py( 0x00007f4fd143bec0, ), alias: None, alias_py: None, serializer: Some( Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ), required: true, }, "y_axis": SerField { key_py: Py( 0x00007f4fcccf3270, ), alias: None, alias_py: None, serializer: Some( Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ), required: true, }, "x_axis": SerField { key_py: Py( 0x00007f4fcccf3180, ), alias: None, alias_py: None, serializer: Some( Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ), required: true, }, "z_axis": SerField { key_py: Py( 0x00007f4fcccf3360, ), alias: None, alias_py: None, serializer: Some( Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 4, }, ), has_extra: false, root_model: false, name: "GetSketchModePlane", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd95acf0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "get_sketch_mode_plane", }, expected_py: None, name: "literal['get_sketch_mode_plane']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionGetSketchModePlane", }, ), Model( ModelSerializer { class: Py( 0x000055937fc601b0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937facead0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "max_distance": SerField { key_py: Py( 0x00007f4fd03d9db0, ), alias: None, alias_py: None, serializer: Some( Float( FloatSerializer { inf_nan_mode: Null, }, ), ), required: true, }, "min_distance": SerField { key_py: Py( 0x00007f4fccce3ef0, ), alias: None, alias_py: None, serializer: Some( Float( FloatSerializer { inf_nan_mode: Null, }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "EntityGetDistance", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcdd01a70, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "entity_get_distance", }, expected_py: None, name: "literal['entity_get_distance']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionEntityGetDistance", }, ), Model( ModelSerializer { class: Py( 0x00005593801a6b70, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd879d40, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "entity_linear_pattern_transform", }, expected_py: None, name: "literal['entity_linear_pattern_transform']", }, ), }, ), ), required: true, }, "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fad62f0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "entity_ids": SerField { key_py: Py( 0x00007f4fccce0f30, ), alias: None, alias_py: None, serializer: Some( List( ListSerializer { item_serializer: Str( StrSerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[str]", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "EntityLinearPatternTransform", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionEntityLinearPatternTransform", }, ), Model( ModelSerializer { class: Py( 0x00005593801a9fc0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fad4d30, ), serializer: Fields( GeneralFieldsSerializer { fields: { "entity_ids": SerField { key_py: Py( 0x00007f4fccce0f30, ), alias: None, alias_py: None, serializer: Some( List( ListSerializer { item_serializer: Str( StrSerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[str]", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "EntityLinearPattern", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcdd028b0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "entity_linear_pattern", }, expected_py: None, name: "literal['entity_linear_pattern']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionEntityLinearPattern", }, ), Model( ModelSerializer { class: Py( 0x00005593801acfc0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055937fac65c0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "entity_ids": SerField { key_py: Py( 0x00007f4fccce0f30, ), alias: None, alias_py: None, serializer: Some( List( ListSerializer { item_serializer: Str( StrSerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[str]", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "EntityCircularPattern", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcdd03ab0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "entity_circular_pattern", }, expected_py: None, name: "literal['entity_circular_pattern']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionEntityCircularPattern", }, ), Model( ModelSerializer { class: Py( 0x00005593801aff30, ), serializer: Fields( GeneralFieldsSerializer { fields: { "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x00005593800a9c90, ), serializer: Fields( GeneralFieldsSerializer { fields: { "faces": SerField { key_py: Py( 0x00007f4fcc89a700, ), alias: None, alias_py: None, serializer: Some( List( ListSerializer { item_serializer: Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[definition-ref]", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "Solid3dGetExtrusionFaceInfo", }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd87ab00, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "solid3d_get_extrusion_face_info", }, expected_py: None, name: "literal['solid3d_get_extrusion_face_info']", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionSolid3DGetExtrusionFaceInfo", }, ), Model( ModelSerializer { class: Py( 0x00005593801b2f30, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type": SerField { key_py: Py( 0x00007f4fd143da58, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007f4fcd959db0, ), ), serializer: Literal( LiteralSerializer { expected_int: {}, expected_str: { "extrusion_face_info", }, expected_py: None, name: "literal['extrusion_face_info']", }, ), }, ), ), required: true, }, "data": SerField { key_py: Py( 0x00007f4fd14390a0, ), alias: None, alias_py: None, serializer: Some( Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "OptionExtrusionFaceInfo", }, ), ], name: "TaggedUnion[OptionEmpty, OptionExport, OptionSelectWithPoint, OptionHighlightSetEntity, OptionEntityGetChildUuid, OptionEntityGetNumChildren, OptionEntityGetParentId, OptionEntityGetAllChildUuids, OptionEntityGetSketchPaths, OptionLoft, OptionClosePath, OptionCameraDragMove, OptionCameraDragEnd, OptionDefaultCameraGetSettings, OptionDefaultCameraZoom, OptionZoomToFit, OptionViewIsometric, OptionGetNumObjects, OptionDefaultCameraFocusOn, OptionSelectGet, OptionSolid3DGetAllEdgeFaces, OptionSolid3DGetAllOppositeEdges, OptionSolid3DGetOppositeEdge, OptionSolid3DGetNextAdjacentEdge, OptionSolid3DGetPrevAdjacentEdge, OptionGetEntityType, OptionCurveGetControlPoints, OptionCurveGetType, OptionMouseClick, OptionTakeSnapshot, OptionPathGetInfo, OptionPathSegmentInfo, OptionPathGetCurveUuidsForVertices, OptionPathGetCurveUuid, OptionPathGetVertexUuids, OptionPathGetSketchTargetUuid, OptionCurveGetEndPoints, OptionFaceIsPlanar, OptionFaceGetPosition, OptionFaceGetCenter, OptionFaceGetGradient, OptionPlaneIntersectAndProject, OptionImportFiles, OptionImportedGeometry, OptionMass, OptionVolume, OptionDensity, OptionSurfaceArea, OptionCenterOfMass, OptionGetSketchModePlane, OptionEntityGetDistance, OptionEntityLinearPatternTransform, OptionEntityLinearPattern, OptionEntityCircularPattern, OptionSolid3DGetExtrusionFaceInfo, OptionExtrusionFaceInfo]", }, ), has_extra: false, root_model: true, name: "RootModel[Annotated[Union[OptionEmpty, OptionExport, OptionSelectWithPoint, OptionHighlightSetEntity, OptionEntityGetChildUuid, OptionEntityGetNumChildren, OptionEntityGetParentId, OptionEntityGetAllChildUuids, OptionEntityGetSketchPaths, OptionLoft, OptionClosePath, OptionCameraDragMove, OptionCameraDragEnd, OptionDefaultCameraGetSettings, OptionDefaultCameraZoom, OptionZoomToFit, OptionViewIsometric, OptionGetNumObjects, OptionDefaultCameraFocusOn, OptionSelectGet, OptionSolid3DGetAllEdgeFaces, OptionSolid3DGetAllOppositeEdges, OptionSolid3DGetOppositeEdge, OptionSolid3DGetNextAdjacentEdge, OptionSolid3DGetPrevAdjacentEdge, OptionGetEntityType, OptionCurveGetControlPoints, OptionCurveGetType, OptionMouseClick, OptionTakeSnapshot, OptionPathGetInfo, OptionPathSegmentInfo, OptionPathGetCurveUuidsForVertices, OptionPathGetCurveUuid, OptionPathGetVertexUuids, OptionPathGetSketchTargetUuid, OptionCurveGetEndPoints, OptionFaceIsPlanar, OptionFaceGetPosition, OptionFaceGetCenter, OptionFaceGetGradient, OptionPlaneIntersectAndProject, OptionImportFiles, OptionImportedGeometry, OptionMass, OptionVolume, OptionDensity, OptionSurfaceArea, OptionCenterOfMass, OptionGetSketchModePlane, OptionEntityGetDistance, OptionEntityLinearPatternTransform, OptionEntityLinearPattern, OptionEntityCircularPattern, OptionSolid3DGetExtrusionFaceInfo, OptionExtrusionFaceInfo], FieldInfo(annotation=NoneType, required=True, discriminator='type')]]", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "ModelingData", }, ), definitions=[Model(ModelSerializer { class: Py(0x55937f471fe0), serializer: Fields(GeneralFieldsSerializer { fields: {"z": SerField { key_py: Py(0x7f4fd143f688), alias: None, alias_py: None, serializer: Some(Float(FloatSerializer { inf_nan_mode: Null })), required: true }, "x": SerField { key_py: Py(0x7f4fd143df18), alias: None, alias_py: None, serializer: Some(Float(FloatSerializer { inf_nan_mode: Null })), required: true }, "y": SerField { key_py: Py(0x7f4fd143f658), alias: None, alias_py: None, serializer: Some(Float(FloatSerializer { inf_nan_mode: Null })), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 3 }), has_extra: false, root_model: false, name: "Point3d" }), Enum(EnumSerializer { class: Py(0x5593800d2bf0), serializer: Some(Str(StrSerializer)) }), Model(ModelSerializer { class: Py(0x55937fa7e860), serializer: Fields(GeneralFieldsSerializer { fields: {"center": SerField { key_py: Py(0x7f4fd0d08150), alias: None, alias_py: None, serializer: Some(Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true })), required: true }, "pos": SerField { key_py: Py(0x7f4fd143c250), alias: None, alias_py: None, serializer: Some(Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true })), required: true }, "fov_y": SerField { key_py: Py(0x7f4fcd005710), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7f4fd1348100)), serializer: Nullable(NullableSerializer { serializer: Float(FloatSerializer { inf_nan_mode: Null }) }) })), required: true }, "up": SerField { key_py: Py(0x7f4fd01d78a0), alias: None, alias_py: None, serializer: Some(Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true })), required: true }, "ortho_scale": SerField { key_py: Py(0x7f4fccd6cd30), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7f4fd1348100)), serializer: Nullable(NullableSerializer { serializer: Float(FloatSerializer { inf_nan_mode: Null }) }) })), required: true }, "ortho": SerField { key_py: Py(0x7f4fcd005590), alias: None, alias_py: None, serializer: Some(Bool(BoolSerializer)), required: true }, "orientation": SerField { key_py: Py(0x7f4fccd6ce30), alias: None, alias_py: None, serializer: Some(Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true })), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 7 }), has_extra: false, root_model: false, name: "CameraSettings" }), Model(ModelSerializer { class: Py(0x5593800d3730), serializer: Fields(GeneralFieldsSerializer { fields: {"command_id": SerField { key_py: Py(0x7f4fcc806c30), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7f4fd1348100)), serializer: Nullable(NullableSerializer { serializer: Str(StrSerializer) }) })), required: true }, "relative": SerField { key_py: Py(0x7f4fcfb4b7b0), alias: None, alias_py: None, serializer: Some(Bool(BoolSerializer)), required: true }, "command": SerField { key_py: Py(0x7f4fd1438de0), alias: None, alias_py: None, serializer: Some(Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: false })), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 3 }), has_extra: false, root_model: false, name: "PathSegmentInfo" }), Model(ModelSerializer { class: Py(0x55937fa7d870), serializer: Fields(GeneralFieldsSerializer { fields: {"w": SerField { key_py: Py(0x7f4fd143f5f8), alias: None, alias_py: None, serializer: Some(Float(FloatSerializer { inf_nan_mode: Null })), required: true }, "y": SerField { key_py: Py(0x7f4fd143f658), alias: None, alias_py: None, serializer: Some(Float(FloatSerializer { inf_nan_mode: Null })), required: true }, "x": SerField { key_py: Py(0x7f4fd143df18), alias: None, alias_py: None, serializer: Some(Float(FloatSerializer { inf_nan_mode: Null })), required: true }, "z": SerField { key_py: Py(0x7f4fd143f688), alias: None, alias_py: None, serializer: Some(Float(FloatSerializer { inf_nan_mode: Null })), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 4 }), has_extra: false, root_model: false, name: "Point4d" }), Enum(EnumSerializer { class: Py(0x55937fb091b0), serializer: Some(Str(StrSerializer)) }), Model(ModelSerializer { class: Py(0x55937fb0a040), serializer: Fields(GeneralFieldsSerializer { fields: {"cap": SerField { key_py: Py(0x7f4fcf3b27c0), alias: None, alias_py: None, serializer: Some(Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: false })), required: true }, "face_id": SerField { key_py: Py(0x7f4fccfcb0f0), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7f4fd1348100)), serializer: Nullable(NullableSerializer { serializer: Str(StrSerializer) }) })), required: true }, "curve_id": SerField { key_py: Py(0x7f4fccb35370), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7f4fd1348100)), serializer: Nullable(NullableSerializer { serializer: Str(StrSerializer) }) })), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 3 }), has_extra: false, root_model: false, name: "ExtrusionFaceInfo" })])[source]
The
pydantic-core
SchemaSerializer
used to dump instances of the model.
- __pydantic_validator__: ClassVar[SchemaValidator | PluggableSchemaValidator] = SchemaValidator(title="ModelingData", validator=Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "modeling_response", lookup_key: Simple { key: "modeling_response", py_key: Py( 0x00007f4fcc58ab30, ), path: LookupPath( [ S( "modeling_response", Py( 0x00007f4fcc58a9b0, ), ), ], ), }, name_py: Py( 0x00007f4fcc6d4ff0, ), validator: Model( ModelValidator { revalidate: Never, validator: TaggedUnion( TaggedUnionValidator { discriminator: LookupKey( Simple { key: "type", py_key: Py( 0x00007f4fd143da58, ), path: LookupPath( [ S( "type", Py( 0x00007f4fd143da58, ), ), ], ), }, ), lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "entity_get_sketch_paths": 8, "highlight_set_entity": 3, "default_camera_get_settings": 13, "solid3d_get_prev_adjacent_edge": 24, "mass": 44, "solid3d_get_all_opposite_edges": 21, "entity_get_parent_id": 6, "loft": 9, "face_get_center": 39, "face_get_gradient": 40, "get_num_objects": 17, "curve_get_type": 27, "get_sketch_mode_plane": 49, "entity_get_child_uuid": 4, "entity_linear_pattern_transform": 51, "extrusion_face_info": 55, "default_camera_zoom": 14, "entity_get_all_child_uuids": 7, "path_segment_info": 31, "curve_get_control_points": 26, "path_get_curve_uuids_for_vertices": 32, "camera_drag_move": 11, "view_isometric": 16, "solid3d_get_all_edge_faces": 20, "take_snapshot": 29, "mouse_click": 28, "path_get_info": 30, "path_get_vertex_uuids": 34, "path_get_sketch_target_uuid": 35, "curve_get_end_points": 36, "path_get_curve_uuid": 33, "default_camera_focus_on": 18, "face_get_position": 38, "plane_intersect_and_project": 41, "density": 46, "entity_linear_pattern": 52, "entity_circular_pattern": 53, "entity_get_num_children": 5, "solid3d_get_opposite_edge": 22, "export": 1, "solid3d_get_next_adjacent_edge": 23, "solid3d_get_extrusion_face_info": 54, "face_is_planar": 37, "volume": 45, "center_of_mass": 48, "imported_geometry": 43, "empty": 0, "get_entity_type": 25, "import_files": 42, "surface_area": 47, "zoom_to_fit": 15, "select_get": 19, "select_with_point": 2, "camera_drag_end": 12, "entity_get_distance": 50, "close_path": 10, }, ), expected_py_dict: None, expected_py_values: None, values: [ Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d1ef0, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d1e60, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fd13a9f40, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "empty": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fd13a9f40, ), ], }, expected_repr: "'empty'", name: "literal['empty']", }, ), validate_default: false, copy_default: false, name: "default[literal['empty']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionEmpty", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800c2670, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionEmpty", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d1770, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d1800, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "files", lookup_key: Simple { key: "files", py_key: Py( 0x00007f4fcc6d1650, ), path: LookupPath( [ S( "files", Py( 0x00007f4fcc6d18c0, ), ), ], ), }, name_py: Py( 0x00007f4fd13f1b60, ), validator: List( ListValidator { strict: false, item_validator: Some( Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "contents", lookup_key: Simple { key: "contents", py_key: Py( 0x00007f4fcc58ba30, ), path: LookupPath( [ S( "contents", Py( 0x00007f4fcc58bb30, ), ), ], ), }, name_py: Py( 0x00007f4fd13f5940, ), validator: FunctionAfter( FunctionAfterValidator { validator: Union( UnionValidator { mode: Smart, choices: [ ( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), None, ), ( Bytes( BytesValidator { strict: false, bytes_mode: ValBytesMode { ser: Utf8, }, }, ), None, ), ], custom_error: None, strict: false, name: "union[str,bytes]", }, ), func: Py( 0x00007f4fcccfe2c0, ), config: Py( 0x00007f4fcc5812c0, ), name: "function-after[validate(), union[str,bytes]]", field_name: None, info_arg: false, }, ), frozen: false, }, Field { name: "name", lookup_key: Simple { key: "name", py_key: Py( 0x00007f4fcc6d0ff0, ), path: LookupPath( [ S( "name", Py( 0x00007f4fcc6d16b0, ), ), ], ), }, name_py: Py( 0x00007f4fd143b7b0, ), validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), frozen: false, }, ], model_name: "ExportFile", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fae7200, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "ExportFile", }, ), ), min_length: None, max_length: None, name: OnceLock( <uninit>, ), fail_fast: false, }, ), frozen: false, }, ], model_name: "Export", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fae94e0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "Export", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d18f0, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d1860, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcfc90570, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "export": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcfc90570, ), ], }, expected_repr: "'export'", name: "literal['export']", }, ), validate_default: false, copy_default: false, name: "default[literal['export']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionExport", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800c2a50, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionExport", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d1830, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d1620, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "entity_id", lookup_key: Simple { key: "entity_id", py_key: Py( 0x00007f4fcc58bc30, ), path: LookupPath( [ S( "entity_id", Py( 0x00007f4fcc58bcb0, ), ), ], ), }, name_py: Py( 0x00007f4fccce3170, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fd1348100, ), ), on_error: Raise, validator: Nullable( NullableValidator { validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), name: "nullable[str]", }, ), validate_default: false, copy_default: false, name: "default[nullable[str]]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "SelectWithPoint", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800a4200, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "SelectWithPoint", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d1680, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d1710, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd888630, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "select_with_point": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd888630, ), ], }, expected_repr: "'select_with_point'", name: "literal['select_with_point']", }, ), validate_default: false, copy_default: false, name: "default[literal['select_with_point']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionSelectWithPoint", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800d9f90, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionSelectWithPoint", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d17a0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d1740, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "entity_id", lookup_key: Simple { key: "entity_id", py_key: Py( 0x00007f4fcc58b4b0, ), path: LookupPath( [ S( "entity_id", Py( 0x00007f4fcc58bb70, ), ), ], ), }, name_py: Py( 0x00007f4fccce3170, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fd1348100, ), ), on_error: Raise, validator: Nullable( NullableValidator { validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), name: "nullable[str]", }, ), validate_default: false, copy_default: false, name: "default[nullable[str]]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, Field { name: "sequence", lookup_key: Simple { key: "sequence", py_key: Py( 0x00007f4fcc58ba70, ), path: LookupPath( [ S( "sequence", Py( 0x00007f4fcc58baf0, ), ), ], ), }, name_py: Py( 0x00007f4fd143cc48, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fd1348100, ), ), on_error: Raise, validator: Nullable( NullableValidator { validator: Int( IntValidator { strict: false, }, ), name: "nullable[int]", }, ), validate_default: false, copy_default: false, name: "default[nullable[int]]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "HighlightSetEntity", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fb813f0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "HighlightSetEntity", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d16e0, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d11a0, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd95a870, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "highlight_set_entity": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd95a870, ), ], }, expected_repr: "'highlight_set_entity'", name: "literal['highlight_set_entity']", }, ), validate_default: false, copy_default: false, name: "default[literal['highlight_set_entity']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionHighlightSetEntity", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937ed38d70, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionHighlightSetEntity", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d1170, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d10e0, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "entity_id", lookup_key: Simple { key: "entity_id", py_key: Py( 0x00007f4fcc58bbb0, ), path: LookupPath( [ S( "entity_id", Py( 0x00007f4fcc58b9f0, ), ), ], ), }, name_py: Py( 0x00007f4fccce3170, ), validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), frozen: false, }, ], model_name: "EntityGetChildUuid", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fac9c50, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "EntityGetChildUuid", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d1110, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d12c0, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcdd012b0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "entity_get_child_uuid": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcdd012b0, ), ], }, expected_repr: "'entity_get_child_uuid'", name: "literal['entity_get_child_uuid']", }, ), validate_default: false, copy_default: false, name: "default[literal['entity_get_child_uuid']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionEntityGetChildUuid", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800dded0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionEntityGetChildUuid", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d1410, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d12f0, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "num", lookup_key: Simple { key: "num", py_key: Py( 0x00007f4fcc6d1440, ), path: LookupPath( [ S( "num", Py( 0x00007f4fcc6d1380, ), ), ], ), }, name_py: Py( 0x00007f4fd09335d0, ), validator: Int( IntValidator { strict: false, }, ), frozen: false, }, ], model_name: "EntityGetNumChildren", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937facba50, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "EntityGetNumChildren", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d1200, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d1230, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcdd025b0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "entity_get_num_children": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcdd025b0, ), ], }, expected_repr: "'entity_get_num_children'", name: "literal['entity_get_num_children']", }, ), validate_default: false, copy_default: false, name: "default[literal['entity_get_num_children']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionEntityGetNumChildren", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800e1ae0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionEntityGetNumChildren", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d10b0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d1260, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "entity_id", lookup_key: Simple { key: "entity_id", py_key: Py( 0x00007f4fcc58be30, ), path: LookupPath( [ S( "entity_id", Py( 0x00007f4fcc58bf30, ), ), ], ), }, name_py: Py( 0x00007f4fccce3170, ), validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), frozen: false, }, ], model_name: "EntityGetParentId", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937faccdd0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "EntityGetParentId", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d11d0, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d0e40, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcdd026b0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "entity_get_parent_id": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcdd026b0, ), ], }, expected_repr: "'entity_get_parent_id'", name: "literal['entity_get_parent_id']", }, ), validate_default: false, copy_default: false, name: "default[literal['entity_get_parent_id']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionEntityGetParentId", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800e4490, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionEntityGetParentId", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d0ed0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d0de0, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "entity_ids", lookup_key: Simple { key: "entity_ids", py_key: Py( 0x00007f4fcc58bc70, ), path: LookupPath( [ S( "entity_ids", Py( 0x00007f4fcc58bfb0, ), ), ], ), }, name_py: Py( 0x00007f4fccce0f30, ), validator: List( ListValidator { strict: false, item_validator: Some( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), ), min_length: None, max_length: None, name: OnceLock( <uninit>, ), fail_fast: false, }, ), frozen: false, }, ], model_name: "EntityGetAllChildUuids", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fac84d0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "EntityGetAllChildUuids", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d0db0, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d0d20, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd879cf0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "entity_get_all_child_uuids": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd879cf0, ), ], }, expected_repr: "'entity_get_all_child_uuids'", name: "literal['entity_get_all_child_uuids']", }, ), validate_default: false, copy_default: false, name: "default[literal['entity_get_all_child_uuids']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionEntityGetAllChildUuids", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800e6ed0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionEntityGetAllChildUuids", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d0ea0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d0c30, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "entity_ids", lookup_key: Simple { key: "entity_ids", py_key: Py( 0x00007f4fcc58bf70, ), path: LookupPath( [ S( "entity_ids", Py( 0x00007f4fcc58b930, ), ), ], ), }, name_py: Py( 0x00007f4fccce0f30, ), validator: List( ListValidator { strict: false, item_validator: Some( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), ), min_length: None, max_length: None, name: OnceLock( <uninit>, ), fail_fast: false, }, ), frozen: false, }, ], model_name: "EntityGetSketchPaths", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fad34b0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "EntityGetSketchPaths", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d0bd0, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d0c00, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcdd027b0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "entity_get_sketch_paths": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcdd027b0, ), ], }, expected_repr: "'entity_get_sketch_paths'", name: "literal['entity_get_sketch_paths']", }, ), validate_default: false, copy_default: false, name: "default[literal['entity_get_sketch_paths']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionEntityGetSketchPaths", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800e98e0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionEntityGetSketchPaths", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d0d80, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d0cf0, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "solid_id", lookup_key: Simple { key: "solid_id", py_key: Py( 0x00007f4fcc58beb0, ), path: LookupPath( [ S( "solid_id", Py( 0x00007f4fcc58bdb0, ), ), ], ), }, name_py: Py( 0x00007f4fccbfb430, ), validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), frozen: false, }, ], model_name: "Loft", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fbd5ee0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "Loft", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d0c90, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d0c60, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcdc522e0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "loft": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcdc522e0, ), ], }, expected_repr: "'loft'", name: "literal['loft']", }, ), validate_default: false, copy_default: false, name: "default[literal['loft']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionLoft", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800ec930, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionLoft", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d03c0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d0360, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "face_id", lookup_key: Simple { key: "face_id", py_key: Py( 0x00007f4fcc6d0cc0, ), path: LookupPath( [ S( "face_id", Py( 0x00007f4fcc6d0810, ), ), ], ), }, name_py: Py( 0x00007f4fccfcb0f0, ), validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), frozen: false, }, ], model_name: "ClosePath", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937ed29e00, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "ClosePath", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d0390, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d0300, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd903b30, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "close_path": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd903b30, ), ], }, expected_repr: "'close_path'", name: "literal['close_path']", }, ), validate_default: false, copy_default: false, name: "default[literal['close_path']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionClosePath", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800ef940, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionClosePath", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d09f0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d0120, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "settings", lookup_key: Simple { key: "settings", py_key: Py( 0x00007f4fcc58bdf0, ), path: LookupPath( [ S( "settings", Py( 0x00007f4fcc58be70, ), ), ], ), }, name_py: Py( 0x00007f4fd03237b0, ), validator: DefinitionRef( DefinitionRefValidator { definition: "...", }, ), frozen: false, }, ], model_name: "CameraDragMove", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fa8ed90, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "CameraDragMove", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d0ab0, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d0180, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd903070, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "camera_drag_move": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd903070, ), ], }, expected_repr: "'camera_drag_move'", name: "literal['camera_drag_move']", }, ), validate_default: false, copy_default: false, name: "default[literal['camera_drag_move']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionCameraDragMove", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800f25b0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionCameraDragMove", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d0750, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d0690, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "settings", lookup_key: Simple { key: "settings", py_key: Py( 0x00007f4fcc58bef0, ), path: LookupPath( [ S( "settings", Py( 0x00007f4fcc58bcf0, ), ), ], ), }, name_py: Py( 0x00007f4fd03237b0, ), validator: DefinitionRef( DefinitionRefValidator { definition: "...", }, ), frozen: false, }, ], model_name: "CameraDragEnd", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fa86c40, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "CameraDragEnd", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d0720, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d06f0, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd902e70, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "camera_drag_end": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd902e70, ), ], }, expected_repr: "'camera_drag_end'", name: "literal['camera_drag_end']", }, ), validate_default: false, copy_default: false, name: "default[literal['camera_drag_end']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionCameraDragEnd", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800f5220, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionCameraDragEnd", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d2250, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d2280, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "settings", lookup_key: Simple { key: "settings", py_key: Py( 0x00007f4fcc58bd70, ), path: LookupPath( [ S( "settings", Py( 0x00007f4fcc58bd30, ), ), ], ), }, name_py: Py( 0x00007f4fd03237b0, ), validator: DefinitionRef( DefinitionRefValidator { definition: "...", }, ), frozen: false, }, ], model_name: "DefaultCameraGetSettings", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937f93a430, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "DefaultCameraGetSettings", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d22b0, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d22e0, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd8796b0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "default_camera_get_settings": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd8796b0, ), ], }, expected_repr: "'default_camera_get_settings'", name: "literal['default_camera_get_settings']", }, ), validate_default: false, copy_default: false, name: "default[literal['default_camera_get_settings']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionDefaultCameraGetSettings", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800fe400, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionDefaultCameraGetSettings", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d2310, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d2340, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "settings", lookup_key: Simple { key: "settings", py_key: Py( 0x00007f4fcc58b770, ), path: LookupPath( [ S( "settings", Py( 0x00007f4fcc58b530, ), ), ], ), }, name_py: Py( 0x00007f4fd03237b0, ), validator: DefinitionRef( DefinitionRefValidator { definition: "...", }, ), frozen: false, }, ], model_name: "DefaultCameraZoom", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fa9fb90, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "DefaultCameraZoom", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d2370, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d23a0, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd86e2f0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "default_camera_zoom": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd86e2f0, ), ], }, expected_repr: "'default_camera_zoom'", name: "literal['default_camera_zoom']", }, ), validate_default: false, copy_default: false, name: "default[literal['default_camera_zoom']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionDefaultCameraZoom", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x0000559380107580, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionDefaultCameraZoom", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d23d0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d2400, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "settings", lookup_key: Simple { key: "settings", py_key: Py( 0x00007f4fcc58b1f0, ), path: LookupPath( [ S( "settings", Py( 0x00007f4fcc58b730, ), ), ], ), }, name_py: Py( 0x00007f4fd03237b0, ), validator: DefinitionRef( DefinitionRefValidator { definition: "...", }, ), frozen: false, }, ], model_name: "ZoomToFit", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800bcdc0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "ZoomToFit", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d2430, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d2460, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd88b730, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "zoom_to_fit": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd88b730, ), ], }, expected_repr: "'zoom_to_fit'", name: "literal['zoom_to_fit']", }, ), validate_default: false, copy_default: false, name: "default[literal['zoom_to_fit']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionZoomToFit", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x0000559380110900, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionZoomToFit", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d2490, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d24c0, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "settings", lookup_key: Simple { key: "settings", py_key: Py( 0x00007f4fcc58b6f0, ), path: LookupPath( [ S( "settings", Py( 0x00007f4fcc58b6b0, ), ), ], ), }, name_py: Py( 0x00007f4fd03237b0, ), validator: DefinitionRef( DefinitionRefValidator { definition: "...", }, ), frozen: false, }, ], model_name: "ViewIsometric", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800b62e0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "ViewIsometric", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d24f0, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d2520, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd88b2f0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "view_isometric": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd88b2f0, ), ], }, expected_repr: "'view_isometric'", name: "literal['view_isometric']", }, ), validate_default: false, copy_default: false, name: "default[literal['view_isometric']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionViewIsometric", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x0000559380095070, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionViewIsometric", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d2550, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d2580, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "num_objects", lookup_key: Simple { key: "num_objects", py_key: Py( 0x00007f4fcc58b630, ), path: LookupPath( [ S( "num_objects", Py( 0x00007f4fcc58b5b0, ), ), ], ), }, name_py: Py( 0x00007f4fcddea370, ), validator: Int( IntValidator { strict: false, }, ), frozen: false, }, ], model_name: "GetNumObjects", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fb7c240, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "GetNumObjects", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d25b0, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d25e0, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd95acb0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "get_num_objects": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd95acb0, ), ], }, expected_repr: "'get_num_objects'", name: "literal['get_num_objects']", }, ), validate_default: false, copy_default: false, name: "default[literal['get_num_objects']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionGetNumObjects", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x0000559380123320, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionGetNumObjects", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d2610, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d2640, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [], model_name: "DefaultCameraFocusOn", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937ee004b0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "DefaultCameraFocusOn", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d2670, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d26a0, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd86dff0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "default_camera_focus_on": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd86dff0, ), ], }, expected_repr: "'default_camera_focus_on'", name: "literal['default_camera_focus_on']", }, ), validate_default: false, copy_default: false, name: "default[literal['default_camera_focus_on']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionDefaultCameraFocusOn", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055938012dc60, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionDefaultCameraFocusOn", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d26d0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d2700, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "entity_ids", lookup_key: Simple { key: "entity_ids", py_key: Py( 0x00007f4fcc58b670, ), path: LookupPath( [ S( "entity_ids", Py( 0x00007f4fcc58b230, ), ), ], ), }, name_py: Py( 0x00007f4fccce0f30, ), validator: List( ListValidator { strict: false, item_validator: Some( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), ), min_length: None, max_length: None, name: OnceLock( <uninit>, ), fail_fast: false, }, ), frozen: false, }, ], model_name: "SelectGet", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055938009de60, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "SelectGet", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d2730, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d2760, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd888570, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "select_get": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd888570, ), ], }, expected_repr: "'select_get'", name: "literal['select_get']", }, ), validate_default: false, copy_default: false, name: "default[literal['select_get']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionSelectGet", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x0000559380130840, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionSelectGet", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d27f0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d2820, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "faces", lookup_key: Simple { key: "faces", py_key: Py( 0x00007f4fcc6d2790, ), path: LookupPath( [ S( "faces", Py( 0x00007f4fcc6d27c0, ), ), ], ), }, name_py: Py( 0x00007f4fcc89a700, ), validator: List( ListValidator { strict: false, item_validator: Some( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), ), min_length: None, max_length: None, name: OnceLock( <uninit>, ), fail_fast: false, }, ), frozen: false, }, ], model_name: "Solid3dGetAllEdgeFaces", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800a5a30, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "Solid3dGetAllEdgeFaces", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d2850, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d2880, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd87aa10, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "solid3d_get_all_edge_faces": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd87aa10, ), ], }, expected_repr: "'solid3d_get_all_edge_faces'", name: "literal['solid3d_get_all_edge_faces']", }, ), validate_default: false, copy_default: false, name: "default[literal['solid3d_get_all_edge_faces']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionSolid3DGetAllEdgeFaces", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x0000559380132c70, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionSolid3DGetAllEdgeFaces", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d2910, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d2940, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "edges", lookup_key: Simple { key: "edges", py_key: Py( 0x00007f4fcc6d28b0, ), path: LookupPath( [ S( "edges", Py( 0x00007f4fcc6d28e0, ), ), ], ), }, name_py: Py( 0x00007f4fd142a4a0, ), validator: List( ListValidator { strict: false, item_validator: Some( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), ), min_length: None, max_length: None, name: OnceLock( <uninit>, ), fail_fast: false, }, ), frozen: false, }, ], model_name: "Solid3dGetAllOppositeEdges", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800a8630, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "Solid3dGetAllOppositeEdges", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d2970, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d29a0, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd87aa60, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "solid3d_get_all_opposite_edges": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd87aa60, ), ], }, expected_repr: "'solid3d_get_all_opposite_edges'", name: "literal['solid3d_get_all_opposite_edges']", }, ), validate_default: false, copy_default: false, name: "default[literal['solid3d_get_all_opposite_edges']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionSolid3DGetAllOppositeEdges", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x0000559380135b40, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionSolid3DGetAllOppositeEdges", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d2a30, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d2a60, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "edge", lookup_key: Simple { key: "edge", py_key: Py( 0x00007f4fcc6d29d0, ), path: LookupPath( [ S( "edge", Py( 0x00007f4fcc6d2a00, ), ), ], ), }, name_py: Py( 0x00007f4fcccf04b0, ), validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), frozen: false, }, ], model_name: "Solid3dGetOppositeEdge", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800ac8e0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "Solid3dGetOppositeEdge", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d2a90, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d2ac0, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd87ac40, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "solid3d_get_opposite_edge": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd87ac40, ), ], }, expected_repr: "'solid3d_get_opposite_edge'", name: "literal['solid3d_get_opposite_edge']", }, ), validate_default: false, copy_default: false, name: "default[literal['solid3d_get_opposite_edge']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionSolid3DGetOppositeEdge", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x0000559380138b90, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionSolid3DGetOppositeEdge", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d2b50, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d2b80, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "edge", lookup_key: Simple { key: "edge", py_key: Py( 0x00007f4fcc6d2af0, ), path: LookupPath( [ S( "edge", Py( 0x00007f4fcc6d2b20, ), ), ], ), }, name_py: Py( 0x00007f4fcccf04b0, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fd1348100, ), ), on_error: Raise, validator: Nullable( NullableValidator { validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), name: "nullable[str]", }, ), validate_default: false, copy_default: false, name: "default[nullable[str]]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "Solid3dGetNextAdjacentEdge", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800a1640, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "Solid3dGetNextAdjacentEdge", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d2bb0, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d2be0, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd87aba0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "solid3d_get_next_adjacent_edge": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd87aba0, ), ], }, expected_repr: "'solid3d_get_next_adjacent_edge'", name: "literal['solid3d_get_next_adjacent_edge']", }, ), validate_default: false, copy_default: false, name: "default[literal['solid3d_get_next_adjacent_edge']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionSolid3DGetNextAdjacentEdge", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055938013bc20, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionSolid3DGetNextAdjacentEdge", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d2c70, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d2ca0, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "edge", lookup_key: Simple { key: "edge", py_key: Py( 0x00007f4fcc6d2c10, ), path: LookupPath( [ S( "edge", Py( 0x00007f4fcc6d2c40, ), ), ], ), }, name_py: Py( 0x00007f4fcccf04b0, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fd1348100, ), ), on_error: Raise, validator: Nullable( NullableValidator { validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), name: "nullable[str]", }, ), validate_default: false, copy_default: false, name: "default[nullable[str]]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "Solid3dGetPrevAdjacentEdge", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800ad860, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "Solid3dGetPrevAdjacentEdge", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d2cd0, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d2d00, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd87ac90, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "solid3d_get_prev_adjacent_edge": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd87ac90, ), ], }, expected_repr: "'solid3d_get_prev_adjacent_edge'", name: "literal['solid3d_get_prev_adjacent_edge']", }, ), validate_default: false, copy_default: false, name: "default[literal['solid3d_get_prev_adjacent_edge']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionSolid3DGetPrevAdjacentEdge", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055938013e970, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionSolid3DGetPrevAdjacentEdge", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d2d30, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d2d60, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "entity_type", lookup_key: Simple { key: "entity_type", py_key: Py( 0x00007f4fcc58aef0, ), path: LookupPath( [ S( "entity_type", Py( 0x00007f4fcc58b370, ), ), ], ), }, name_py: Py( 0x00007f4fcdd029f0, ), validator: StrEnum( EnumValidator { phantom: PhantomData<_pydantic_core::validators::enum_::StrEnumValidator>, class: Py( 0x000055937fad8000, ), lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "curve": 3, "edge": 6, "object": 1, "path": 2, "vertex": 9, "plane": 8, "face": 7, "solid3d": 5, "solid2d": 4, "entity": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fccc5e5d0, ), Py( 0x00007f4fccc5e750, ), Py( 0x00007f4fccc5e7b0, ), Py( 0x00007f4fccc5e810, ), Py( 0x00007f4fccc5e870, ), Py( 0x00007f4fccc5e8d0, ), Py( 0x00007f4fccc5e930, ), Py( 0x00007f4fccc5e990, ), Py( 0x00007f4fccc5e9f0, ), Py( 0x00007f4fccc5ea50, ), ], }, missing: None, expected_repr: "'entity', 'object', 'path', 'curve', 'solid2d', 'solid3d', 'edge', 'face', 'plane' or 'vertex'", strict: false, class_repr: "EntityType", name: "str-enum[EntityType]", }, ), frozen: false, }, ], model_name: "GetEntityType", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fb79b80, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "GetEntityType", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d2d90, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d2dc0, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd95ad70, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "get_entity_type": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd95ad70, ), ], }, expected_repr: "'get_entity_type'", name: "literal['get_entity_type']", }, ), validate_default: false, copy_default: false, name: "default[literal['get_entity_type']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionGetEntityType", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x0000559380141de0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionGetEntityType", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d2df0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d2e20, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "control_points", lookup_key: Simple { key: "control_points", py_key: Py( 0x00007f4fcc58b4f0, ), path: LookupPath( [ S( "control_points", Py( 0x00007f4fcc58adb0, ), ), ], ), }, name_py: Py( 0x00007f4fccd784b0, ), validator: List( ListValidator { strict: false, item_validator: Some( DefinitionRef( DefinitionRefValidator { definition: "Point3d", }, ), ), min_length: None, max_length: None, name: OnceLock( <uninit>, ), fail_fast: false, }, ), frozen: false, }, ], model_name: "CurveGetControlPoints", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937ed8d560, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "CurveGetControlPoints", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d2e50, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d2e80, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd879660, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "curve_get_control_points": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd879660, ), ], }, expected_repr: "'curve_get_control_points'", name: "literal['curve_get_control_points']", }, ), validate_default: false, copy_default: false, name: "default[literal['curve_get_control_points']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionCurveGetControlPoints", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593801451b0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionCurveGetControlPoints", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d2eb0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d2ee0, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "curve_type", lookup_key: Simple { key: "curve_type", py_key: Py( 0x00007f4fcc58b3f0, ), path: LookupPath( [ S( "curve_type", Py( 0x00007f4fcc58b2f0, ), ), ], ), }, name_py: Py( 0x00007f4fcd86d0b0, ), validator: StrEnum( EnumValidator { phantom: PhantomData<_pydantic_core::validators::enum_::StrEnumValidator>, class: Py( 0x000055937ed93de0, ), lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "nurbs": 2, "arc": 1, "line": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcce1a6f0, ), Py( 0x00007f4fcce1a750, ), Py( 0x00007f4fcce1a7b0, ), ], }, missing: None, expected_repr: "'line', 'arc' or 'nurbs'", strict: false, class_repr: "CurveType", name: "str-enum[CurveType]", }, ), frozen: false, }, ], model_name: "CurveGetType", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937ed92da0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "CurveGetType", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d2f10, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d2f40, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd86d030, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "curve_get_type": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd86d030, ), ], }, expected_repr: "'curve_get_type'", name: "literal['curve_get_type']", }, ), validate_default: false, copy_default: false, name: "default[literal['curve_get_type']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionCurveGetType", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x0000559380148630, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionCurveGetType", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d2f70, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d2fa0, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "entities_modified", lookup_key: Simple { key: "entities_modified", py_key: Py( 0x00007f4fcc58b270, ), path: LookupPath( [ S( "entities_modified", Py( 0x00007f4fcc58b330, ), ), ], ), }, name_py: Py( 0x00007f4fcc8fb570, ), validator: List( ListValidator { strict: false, item_validator: Some( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), ), min_length: None, max_length: None, name: OnceLock( <uninit>, ), fail_fast: false, }, ), frozen: false, }, Field { name: "entities_selected", lookup_key: Simple { key: "entities_selected", py_key: Py( 0x00007f4fcc58b3b0, ), path: LookupPath( [ S( "entities_selected", Py( 0x00007f4fcc58b430, ), ), ], ), }, name_py: Py( 0x00007f4fcc8fb2f0, ), validator: List( ListValidator { strict: false, item_validator: Some( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), ), min_length: None, max_length: None, name: OnceLock( <uninit>, ), fail_fast: false, }, ), frozen: false, }, ], model_name: "MouseClick", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937ff7b6a0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "MouseClick", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d2fd0, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d3000, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd9931b0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "mouse_click": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd9931b0, ), ], }, expected_repr: "'mouse_click'", name: "literal['mouse_click']", }, ), validate_default: false, copy_default: false, name: "default[literal['mouse_click']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionMouseClick", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055938014c920, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionMouseClick", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d3030, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d3060, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "contents", lookup_key: Simple { key: "contents", py_key: Py( 0x00007f4fcc58b7f0, ), path: LookupPath( [ S( "contents", Py( 0x00007f4fcc58b470, ), ), ], ), }, name_py: Py( 0x00007f4fd13f5940, ), validator: FunctionAfter( FunctionAfterValidator { validator: Union( UnionValidator { mode: Smart, choices: [ ( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), None, ), ( Bytes( BytesValidator { strict: false, bytes_mode: ValBytesMode { ser: Utf8, }, }, ), None, ), ], custom_error: None, strict: false, name: "union[str,bytes]", }, ), func: Py( 0x00007f4fccc0e140, ), config: Py( 0x00007f4fcc5a3540, ), name: "function-after[validate(), union[str,bytes]]", field_name: None, info_arg: false, }, ), frozen: false, }, ], model_name: "TakeSnapshot", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800b43f0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "TakeSnapshot", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d3090, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d30c0, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd889530, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "take_snapshot": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd889530, ), ], }, expected_repr: "'take_snapshot'", name: "literal['take_snapshot']", }, ), validate_default: false, copy_default: false, name: "default[literal['take_snapshot']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionTakeSnapshot", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055938014f730, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionTakeSnapshot", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d30f0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d3120, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "segments", lookup_key: Simple { key: "segments", py_key: Py( 0x00007f4fcc58af70, ), path: LookupPath( [ S( "segments", Py( 0x00007f4fcc58a6b0, ), ), ], ), }, name_py: Py( 0x00007f4fd034e430, ), validator: List( ListValidator { strict: false, item_validator: Some( DefinitionRef( DefinitionRefValidator { definition: "...", }, ), ), min_length: None, max_length: None, name: OnceLock( <uninit>, ), fail_fast: false, }, ), frozen: false, }, ], model_name: "PathGetInfo", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800ce5b0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "PathGetInfo", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d3150, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d3180, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd8875b0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "path_get_info": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd8875b0, ), ], }, expected_repr: "'path_get_info'", name: "literal['path_get_info']", }, ), validate_default: false, copy_default: false, name: "default[literal['path_get_info']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionPathGetInfo", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x0000559380152de0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionPathGetInfo", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d31b0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d31e0, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: DefinitionRef( DefinitionRefValidator { definition: "...", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d3210, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d3240, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd8878b0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "path_segment_info": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd8878b0, ), ], }, expected_repr: "'path_segment_info'", name: "literal['path_segment_info']", }, ), validate_default: false, copy_default: false, name: "default[literal['path_segment_info']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionPathSegmentInfo", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593801567a0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionPathSegmentInfo", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d3270, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d32a0, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "curve_ids", lookup_key: Simple { key: "curve_ids", py_key: Py( 0x00007f4fcc58acf0, ), path: LookupPath( [ S( "curve_ids", Py( 0x00007f4fcc58b1b0, ), ), ], ), }, name_py: Py( 0x00007f4fcc7fd670, ), validator: List( ListValidator { strict: false, item_validator: Some( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), ), min_length: None, max_length: None, name: OnceLock( <uninit>, ), fail_fast: false, }, ), frozen: false, }, ], model_name: "PathGetCurveUuidsForVertices", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x0000559380096470, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "PathGetCurveUuidsForVertices", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d32d0, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d3300, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd87a600, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "path_get_curve_uuids_for_vertices": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd87a600, ), ], }, expected_repr: "'path_get_curve_uuids_for_vertices'", name: "literal['path_get_curve_uuids_for_vertices']", }, ), validate_default: false, copy_default: false, name: "default[literal['path_get_curve_uuids_for_vertices']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionPathGetCurveUuidsForVertices", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055938015b720, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionPathGetCurveUuidsForVertices", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d3330, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d3360, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "curve_id", lookup_key: Simple { key: "curve_id", py_key: Py( 0x00007f4fcc58afb0, ), path: LookupPath( [ S( "curve_id", Py( 0x00007f4fcc58b0f0, ), ), ], ), }, name_py: Py( 0x00007f4fccb35370, ), validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), frozen: false, }, ], model_name: "PathGetCurveUuid", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fe352c0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "PathGetCurveUuid", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d3390, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d33c0, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd8874b0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "path_get_curve_uuid": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd8874b0, ), ], }, expected_repr: "'path_get_curve_uuid'", name: "literal['path_get_curve_uuid']", }, ), validate_default: false, copy_default: false, name: "default[literal['path_get_curve_uuid']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionPathGetCurveUuid", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055938015f5e0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionPathGetCurveUuid", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d33f0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d3420, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "vertex_ids", lookup_key: Simple { key: "vertex_ids", py_key: Py( 0x00007f4fcc58ae70, ), path: LookupPath( [ S( "vertex_ids", Py( 0x00007f4fcc58aa30, ), ), ], ), }, name_py: Py( 0x00007f4fccaa5030, ), validator: List( ListValidator { strict: false, item_validator: Some( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), ), min_length: None, max_length: None, name: OnceLock( <uninit>, ), fail_fast: false, }, ), frozen: false, }, ], model_name: "PathGetVertexUuids", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055938009a240, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "PathGetVertexUuids", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d3450, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d3480, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd887730, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "path_get_vertex_uuids": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd887730, ), ], }, expected_repr: "'path_get_vertex_uuids'", name: "literal['path_get_vertex_uuids']", }, ), validate_default: false, copy_default: false, name: "default[literal['path_get_vertex_uuids']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionPathGetVertexUuids", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593801625e0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionPathGetVertexUuids", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d34b0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d34e0, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "target_id", lookup_key: Simple { key: "target_id", py_key: Py( 0x00007f4fcc58b030, ), path: LookupPath( [ S( "target_id", Py( 0x00007f4fcc58b0b0, ), ), ], ), }, name_py: Py( 0x00007f4fd142a560, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fd1348100, ), ), on_error: Raise, validator: Nullable( NullableValidator { validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), name: "nullable[str]", }, ), validate_default: false, copy_default: false, name: "default[nullable[str]]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "PathGetSketchTargetUuid", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x0000559380098600, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "PathGetSketchTargetUuid", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d3510, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d3540, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd87a6a0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "path_get_sketch_target_uuid": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd87a6a0, ), ], }, expected_repr: "'path_get_sketch_target_uuid'", name: "literal['path_get_sketch_target_uuid']", }, ), validate_default: false, copy_default: false, name: "default[literal['path_get_sketch_target_uuid']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionPathGetSketchTargetUuid", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593801651e0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionPathGetSketchTargetUuid", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d3630, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d3660, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "end", lookup_key: Simple { key: "end", py_key: Py( 0x00007f4fcc6d3570, ), path: LookupPath( [ S( "end", Py( 0x00007f4fcc6d35a0, ), ), ], ), }, name_py: Py( 0x00007f4fd1439760, ), validator: DefinitionRef( DefinitionRefValidator { definition: "Point3d", }, ), frozen: false, }, Field { name: "start", lookup_key: Simple { key: "start", py_key: Py( 0x00007f4fcc6d35d0, ), path: LookupPath( [ S( "start", Py( 0x00007f4fcc6d3600, ), ), ], ), }, name_py: Py( 0x00007f4fd143d1a0, ), validator: DefinitionRef( DefinitionRefValidator { definition: "Point3d", }, ), frozen: false, }, ], model_name: "CurveGetEndPoints", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937ed8fb00, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "CurveGetEndPoints", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d3690, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d36c0, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd86d130, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "curve_get_end_points": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd86d130, ), ], }, expected_repr: "'curve_get_end_points'", name: "literal['curve_get_end_points']", }, ), validate_default: false, copy_default: false, name: "default[literal['curve_get_end_points']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionCurveGetEndPoints", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x0000559380168110, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionCurveGetEndPoints", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d3870, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d38a0, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "origin", lookup_key: Simple { key: "origin", py_key: Py( 0x00007f4fcc6d36f0, ), path: LookupPath( [ S( "origin", Py( 0x00007f4fcc6d3720, ), ), ], ), }, name_py: Py( 0x00007f4fd143bec0, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fd1348100, ), ), on_error: Raise, validator: Nullable( NullableValidator { validator: DefinitionRef( DefinitionRefValidator { definition: "Point3d", }, ), name: "nullable[Point3d]", }, ), validate_default: false, copy_default: false, name: "default[nullable[Point3d]]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, Field { name: "x_axis", lookup_key: Simple { key: "x_axis", py_key: Py( 0x00007f4fcc6d3750, ), path: LookupPath( [ S( "x_axis", Py( 0x00007f4fcc6d3780, ), ), ], ), }, name_py: Py( 0x00007f4fcccf3180, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fd1348100, ), ), on_error: Raise, validator: Nullable( NullableValidator { validator: DefinitionRef( DefinitionRefValidator { definition: "Point3d", }, ), name: "nullable[Point3d]", }, ), validate_default: false, copy_default: false, name: "default[nullable[Point3d]]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, Field { name: "y_axis", lookup_key: Simple { key: "y_axis", py_key: Py( 0x00007f4fcc6d37b0, ), path: LookupPath( [ S( "y_axis", Py( 0x00007f4fcc6d37e0, ), ), ], ), }, name_py: Py( 0x00007f4fcccf3270, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fd1348100, ), ), on_error: Raise, validator: Nullable( NullableValidator { validator: DefinitionRef( DefinitionRefValidator { definition: "Point3d", }, ), name: "nullable[Point3d]", }, ), validate_default: false, copy_default: false, name: "default[nullable[Point3d]]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, Field { name: "z_axis", lookup_key: Simple { key: "z_axis", py_key: Py( 0x00007f4fcc6d3810, ), path: LookupPath( [ S( "z_axis", Py( 0x00007f4fcc6d3840, ), ), ], ), }, name_py: Py( 0x00007f4fcccf3360, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fd1348100, ), ), on_error: Raise, validator: Nullable( NullableValidator { validator: DefinitionRef( DefinitionRefValidator { definition: "Point3d", }, ), name: "nullable[Point3d]", }, ), validate_default: false, copy_default: false, name: "default[nullable[Point3d]]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "FaceIsPlanar", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fb17da0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "FaceIsPlanar", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d38d0, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d3900, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd959d70, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "face_is_planar": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd959d70, ), ], }, expected_repr: "'face_is_planar'", name: "literal['face_is_planar']", }, ), validate_default: false, copy_default: false, name: "default[literal['face_is_planar']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionFaceIsPlanar", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055938016b560, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionFaceIsPlanar", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d3990, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d39c0, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "pos", lookup_key: Simple { key: "pos", py_key: Py( 0x00007f4fcc6d3930, ), path: LookupPath( [ S( "pos", Py( 0x00007f4fcc6d3960, ), ), ], ), }, name_py: Py( 0x00007f4fd143c250, ), validator: DefinitionRef( DefinitionRefValidator { definition: "Point3d", }, ), frozen: false, }, ], model_name: "FaceGetPosition", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fb15480, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "FaceGetPosition", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d39f0, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d3a20, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd959b30, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "face_get_position": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd959b30, ), ], }, expected_repr: "'face_get_position'", name: "literal['face_get_position']", }, ), validate_default: false, copy_default: false, name: "default[literal['face_get_position']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionFaceGetPosition", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055938016fcf0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionFaceGetPosition", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d3ab0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d3ae0, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "pos", lookup_key: Simple { key: "pos", py_key: Py( 0x00007f4fcc6d3a50, ), path: LookupPath( [ S( "pos", Py( 0x00007f4fcc6d3a80, ), ), ], ), }, name_py: Py( 0x00007f4fd143c250, ), validator: DefinitionRef( DefinitionRefValidator { definition: "Point3d", }, ), frozen: false, }, ], model_name: "FaceGetCenter", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fb0f880, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "FaceGetCenter", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d3b10, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d3b40, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd9597b0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "face_get_center": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd9597b0, ), ], }, expected_repr: "'face_get_center'", name: "literal['face_get_center']", }, ), validate_default: false, copy_default: false, name: "default[literal['face_get_center']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionFaceGetCenter", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x0000559380176c90, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionFaceGetCenter", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d3c90, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d3cc0, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "df_du", lookup_key: Simple { key: "df_du", py_key: Py( 0x00007f4fcc6d3b70, ), path: LookupPath( [ S( "df_du", Py( 0x00007f4fcc6d3ba0, ), ), ], ), }, name_py: Py( 0x00007f4fcccf2460, ), validator: DefinitionRef( DefinitionRefValidator { definition: "Point3d", }, ), frozen: false, }, Field { name: "df_dv", lookup_key: Simple { key: "df_dv", py_key: Py( 0x00007f4fcc6d3bd0, ), path: LookupPath( [ S( "df_dv", Py( 0x00007f4fcc6d3c00, ), ), ], ), }, name_py: Py( 0x00007f4fcccf24f0, ), validator: DefinitionRef( DefinitionRefValidator { definition: "Point3d", }, ), frozen: false, }, Field { name: "normal", lookup_key: Simple { key: "normal", py_key: Py( 0x00007f4fcc6d3c30, ), path: LookupPath( [ S( "normal", Py( 0x00007f4fcc6d3c60, ), ), ], ), }, name_py: Py( 0x00007f4fcfc9ee50, ), validator: DefinitionRef( DefinitionRefValidator { definition: "Point3d", }, ), frozen: false, }, ], model_name: "FaceGetGradient", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fb11db0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "FaceGetGradient", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d3cf0, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d3d20, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd959970, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "face_get_gradient": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd959970, ), ], }, expected_repr: "'face_get_gradient'", name: "literal['face_get_gradient']", }, ), validate_default: false, copy_default: false, name: "default[literal['face_get_gradient']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionFaceGetGradient", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055938017aa80, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionFaceGetGradient", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d3d50, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d3d80, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "plane_coordinates", lookup_key: Simple { key: "plane_coordinates", py_key: Py( 0x00007f4fcc58b2b0, ), path: LookupPath( [ S( "plane_coordinates", Py( 0x00007f4fcc58b070, ), ), ], ), }, name_py: Py( 0x00007f4fcc8a8930, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fd1348100, ), ), on_error: Raise, validator: Nullable( NullableValidator { validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "x", lookup_key: Simple { key: "x", py_key: Py( 0x00007f4fd143f628, ), path: LookupPath( [ S( "x", Py( 0x00007f4fd143f628, ), ), ], ), }, name_py: Py( 0x00007f4fd143df18, ), validator: FunctionAfter( FunctionAfterValidator { validator: Float( FloatValidator { strict: false, allow_inf_nan: true, }, ), func: Py( 0x000055937face640, ), config: Py( 0x00007f4fcc5b40c0, ), name: "function-after[LengthUnit(), float]", field_name: None, info_arg: false, }, ), frozen: false, }, Field { name: "y", lookup_key: Simple { key: "y", py_key: Py( 0x00007f4fd143f658, ), path: LookupPath( [ S( "y", Py( 0x00007f4fd143f658, ), ), ], ), }, name_py: Py( 0x00007f4fd143f658, ), validator: FunctionAfter( FunctionAfterValidator { validator: Float( FloatValidator { strict: false, allow_inf_nan: true, }, ), func: Py( 0x000055937face640, ), config: Py( 0x00007f4fcc5b40c0, ), name: "function-after[LengthUnit(), float]", field_name: None, info_arg: false, }, ), frozen: false, }, ], model_name: "Point2d", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fc311c0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "Point2d", }, ), name: "nullable[Point2d]", }, ), validate_default: false, copy_default: false, name: "default[nullable[Point2d]]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "PlaneIntersectAndProject", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800a71a0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "PlaneIntersectAndProject", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d3db0, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d3de0, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd87a7e0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "plane_intersect_and_project": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd87a7e0, ), ], }, expected_repr: "'plane_intersect_and_project'", name: "literal['plane_intersect_and_project']", }, ), validate_default: false, copy_default: false, name: "default[literal['plane_intersect_and_project']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionPlaneIntersectAndProject", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055938017e870, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionPlaneIntersectAndProject", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d3e10, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d3e40, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "object_id", lookup_key: Simple { key: "object_id", py_key: Py( 0x00007f4fcc58b170, ), path: LookupPath( [ S( "object_id", Py( 0x00007f4fcc58aaf0, ), ), ], ), }, name_py: Py( 0x00007f4fcf570e70, ), validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), frozen: false, }, ], model_name: "ImportFiles", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fb92ec0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "ImportFiles", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6d3e70, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6d3ea0, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd95a970, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "import_files": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd95a970, ), ], }, expected_repr: "'import_files'", name: "literal['import_files']", }, ), validate_default: false, copy_default: false, name: "default[literal['import_files']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionImportFiles", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x0000559380183640, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionImportFiles", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6d3f90, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6d3fc0, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "id", lookup_key: Simple { key: "id", py_key: Py( 0x00007f4fcc6d3ed0, ), path: LookupPath( [ S( "id", Py( 0x00007f4fcc6d3f00, ), ), ], ), }, name_py: Py( 0x00007f4fd143a4e8, ), validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), frozen: false, }, Field { name: "value", lookup_key: Simple { key: "value", py_key: Py( 0x00007f4fcc6d3f30, ), path: LookupPath( [ S( "value", Py( 0x00007f4fcc6d3f60, ), ), ], ), }, name_py: Py( 0x00007f4fd143dc20, ), validator: List( ListValidator { strict: false, item_validator: Some( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), ), min_length: None, max_length: None, name: OnceLock( <uninit>, ), fail_fast: false, }, ), frozen: false, }, ], model_name: "ImportedGeometry", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fb95130, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "ImportedGeometry", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6b8030, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6b8060, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd95ba30, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "imported_geometry": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd95ba30, ), ], }, expected_repr: "'imported_geometry'", name: "literal['imported_geometry']", }, ), validate_default: false, copy_default: false, name: "default[literal['imported_geometry']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionImportedGeometry", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x0000559380187eb0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionImportedGeometry", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6b80f0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6b8120, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "mass", lookup_key: Simple { key: "mass", py_key: Py( 0x00007f4fcc6b8090, ), path: LookupPath( [ S( "mass", Py( 0x00007f4fcc6b80c0, ), ), ], ), }, name_py: Py( 0x00007f4fcdc52430, ), validator: Float( FloatValidator { strict: false, allow_inf_nan: true, }, ), frozen: false, }, Field { name: "output_unit", lookup_key: Simple { key: "output_unit", py_key: Py( 0x00007f4fcc58a770, ), path: LookupPath( [ S( "output_unit", Py( 0x00007f4fcc58abb0, ), ), ], ), }, name_py: Py( 0x00007f4fcd809d30, ), validator: StrEnum( EnumValidator { phantom: PhantomData<_pydantic_core::validators::enum_::StrEnumValidator>, class: Py( 0x000055937f938330, ), lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "g": 0, "kg": 1, "lb": 2, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcce57050, ), Py( 0x00007f4fcce570b0, ), Py( 0x00007f4fcce57110, ), ], }, missing: None, expected_repr: "'g', 'kg' or 'lb'", strict: false, class_repr: "UnitMass", name: "str-enum[UnitMass]", }, ), frozen: false, }, ], model_name: "Mass", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fbd7440, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "Mass", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6b8150, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6b8180, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcdc52430, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "mass": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcdc52430, ), ], }, expected_repr: "'mass'", name: "literal['mass']", }, ), validate_default: false, copy_default: false, name: "default[literal['mass']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionMass", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055938018aa60, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionMass", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6b8210, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6b8240, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "output_unit", lookup_key: Simple { key: "output_unit", py_key: Py( 0x00007f4fcc58aeb0, ), path: LookupPath( [ S( "output_unit", Py( 0x00007f4fcc58acb0, ), ), ], ), }, name_py: Py( 0x00007f4fcd809d30, ), validator: StrEnum( EnumValidator { phantom: PhantomData<_pydantic_core::validators::enum_::StrEnumValidator>, class: Py( 0x000055937f9391c0, ), lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "usfloz": 5, "usgal": 6, "ft3": 1, "in3": 2, "ml": 8, "l": 7, "cm3": 0, "m3": 3, "yd3": 4, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcce571d0, ), Py( 0x00007f4fcce57230, ), Py( 0x00007f4fcce57290, ), Py( 0x00007f4fcce572f0, ), Py( 0x00007f4fcce57350, ), Py( 0x00007f4fcce573b0, ), Py( 0x00007f4fcce57410, ), Py( 0x00007f4fcce57470, ), Py( 0x00007f4fcce574d0, ), ], }, missing: None, expected_repr: "'cm3', 'ft3', 'in3', 'm3', 'yd3', 'usfloz', 'usgal', 'l' or 'ml'", strict: false, class_repr: "UnitVolume", name: "str-enum[UnitVolume]", }, ), frozen: false, }, Field { name: "volume", lookup_key: Simple { key: "volume", py_key: Py( 0x00007f4fcc6b81b0, ), path: LookupPath( [ S( "volume", Py( 0x00007f4fcc6b81e0, ), ), ], ), }, name_py: Py( 0x00007f4fd143dcb0, ), validator: Float( FloatValidator { strict: false, allow_inf_nan: true, }, ), frozen: false, }, ], model_name: "Volume", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800baad0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "Volume", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6b8270, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6b82a0, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fd143dcb0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "volume": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fd143dcb0, ), ], }, expected_repr: "'volume'", name: "literal['volume']", }, ), validate_default: false, copy_default: false, name: "default[literal['volume']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionVolume", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055938018dca0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionVolume", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6b8330, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6b8360, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "density", lookup_key: Simple { key: "density", py_key: Py( 0x00007f4fcc6b82d0, ), path: LookupPath( [ S( "density", Py( 0x00007f4fcc6b8300, ), ), ], ), }, name_py: Py( 0x00007f4fce62a130, ), validator: Float( FloatValidator { strict: false, allow_inf_nan: true, }, ), frozen: false, }, Field { name: "output_unit", lookup_key: Simple { key: "output_unit", py_key: Py( 0x00007f4fcc58adf0, ), path: LookupPath( [ S( "output_unit", Py( 0x00007f4fcc58ab70, ), ), ], ), }, name_py: Py( 0x00007f4fcd809d30, ), validator: StrEnum( EnumValidator { phantom: PhantomData<_pydantic_core::validators::enum_::StrEnumValidator>, class: Py( 0x000055937f937c40, ), lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "lb:ft3": 0, "kg:m3": 1, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcce56f30, ), Py( 0x00007f4fcce56f90, ), ], }, missing: None, expected_repr: "'lb:ft3' or 'kg:m3'", strict: false, class_repr: "UnitDensity", name: "str-enum[UnitDensity]", }, ), frozen: false, }, ], model_name: "Density", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937faa75a0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "Density", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6b8390, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6b83c0, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fce62a130, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "density": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fce62a130, ), ], }, expected_repr: "'density'", name: "literal['density']", }, ), validate_default: false, copy_default: false, name: "default[literal['density']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionDensity", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x0000559380190d70, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionDensity", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6b83f0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6b8420, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "output_unit", lookup_key: Simple { key: "output_unit", py_key: Py( 0x00007f4fcc58ac30, ), path: LookupPath( [ S( "output_unit", Py( 0x00007f4fcc58ad30, ), ), ], ), }, name_py: Py( 0x00007f4fcd809d30, ), validator: StrEnum( EnumValidator { phantom: PhantomData<_pydantic_core::validators::enum_::StrEnumValidator>, class: Py( 0x000055937f936b30, ), lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "dm2": 1, "mm2": 6, "km2": 4, "yd2": 7, "in2": 3, "cm2": 0, "ft2": 2, "m2": 5, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcce56bd0, ), Py( 0x00007f4fcce56c30, ), Py( 0x00007f4fcce56c90, ), Py( 0x00007f4fcce56cf0, ), Py( 0x00007f4fcce56d50, ), Py( 0x00007f4fcce56db0, ), Py( 0x00007f4fcce56e10, ), Py( 0x00007f4fcce56e70, ), ], }, missing: None, expected_repr: "'cm2', 'dm2', 'ft2', 'in2', 'km2', 'm2', 'mm2' or 'yd2'", strict: false, class_repr: "UnitArea", name: "str-enum[UnitArea]", }, ), frozen: false, }, Field { name: "surface_area", lookup_key: Simple { key: "surface_area", py_key: Py( 0x00007f4fcc58af30, ), path: LookupPath( [ S( "surface_area", Py( 0x00007f4fcc58aff0, ), ), ], ), }, name_py: Py( 0x00007f4fcd8894b0, ), validator: Float( FloatValidator { strict: false, allow_inf_nan: true, }, ), frozen: false, }, ], model_name: "SurfaceArea", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800aff80, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "SurfaceArea", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6b8450, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6b8480, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd8894b0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "surface_area": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd8894b0, ), ], }, expected_repr: "'surface_area'", name: "literal['surface_area']", }, ), validate_default: false, copy_default: false, name: "default[literal['surface_area']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionSurfaceArea", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593801945c0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionSurfaceArea", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6b84b0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6b84e0, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "center_of_mass", lookup_key: Simple { key: "center_of_mass", py_key: Py( 0x00007f4fcc58ad70, ), path: LookupPath( [ S( "center_of_mass", Py( 0x00007f4fcc58ae30, ), ), ], ), }, name_py: Py( 0x00007f4fcd900230, ), validator: DefinitionRef( DefinitionRefValidator { definition: "Point3d", }, ), frozen: false, }, Field { name: "output_unit", lookup_key: Simple { key: "output_unit", py_key: Py( 0x00007f4fcc58a7b0, ), path: LookupPath( [ S( "output_unit", Py( 0x00007f4fcc58a370, ), ), ], ), }, name_py: Py( 0x00007f4fcd809d30, ), validator: StrEnum( EnumValidator { phantom: PhantomData<_pydantic_core::validators::enum_::StrEnumValidator>, class: Py( 0x000055937f973bf0, ), lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "cm": 0, "ft": 1, "in": 2, "mm": 4, "yd": 5, "m": 3, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fccf8fe90, ), Py( 0x00007f4fcce54470, ), Py( 0x00007f4fcce54530, ), Py( 0x00007f4fcce54590, ), Py( 0x00007f4fcce545f0, ), Py( 0x00007f4fcce54650, ), ], }, missing: None, expected_repr: "'cm', 'ft', 'in', 'm', 'mm' or 'yd'", strict: false, class_repr: "UnitLength", name: "str-enum[UnitLength]", }, ), frozen: false, }, ], model_name: "CenterOfMass", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937ed23120, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "CenterOfMass", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6b8510, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6b8540, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd900230, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "center_of_mass": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd900230, ), ], }, expected_repr: "'center_of_mass'", name: "literal['center_of_mass']", }, ), validate_default: false, copy_default: false, name: "default[literal['center_of_mass']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionCenterOfMass", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593801976b0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionCenterOfMass", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6b86f0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6b8720, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "origin", lookup_key: Simple { key: "origin", py_key: Py( 0x00007f4fcc6b8570, ), path: LookupPath( [ S( "origin", Py( 0x00007f4fcc6b85a0, ), ), ], ), }, name_py: Py( 0x00007f4fd143bec0, ), validator: DefinitionRef( DefinitionRefValidator { definition: "Point3d", }, ), frozen: false, }, Field { name: "x_axis", lookup_key: Simple { key: "x_axis", py_key: Py( 0x00007f4fcc6b85d0, ), path: LookupPath( [ S( "x_axis", Py( 0x00007f4fcc6b8600, ), ), ], ), }, name_py: Py( 0x00007f4fcccf3180, ), validator: DefinitionRef( DefinitionRefValidator { definition: "Point3d", }, ), frozen: false, }, Field { name: "y_axis", lookup_key: Simple { key: "y_axis", py_key: Py( 0x00007f4fcc6b8630, ), path: LookupPath( [ S( "y_axis", Py( 0x00007f4fcc6b8660, ), ), ], ), }, name_py: Py( 0x00007f4fcccf3270, ), validator: DefinitionRef( DefinitionRefValidator { definition: "Point3d", }, ), frozen: false, }, Field { name: "z_axis", lookup_key: Simple { key: "z_axis", py_key: Py( 0x00007f4fcc6b8690, ), path: LookupPath( [ S( "z_axis", Py( 0x00007f4fcc6b86c0, ), ), ], ), }, name_py: Py( 0x00007f4fcccf3360, ), validator: DefinitionRef( DefinitionRefValidator { definition: "Point3d", }, ), frozen: false, }, ], model_name: "GetSketchModePlane", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fb7fd60, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "GetSketchModePlane", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6b8750, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6b8780, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd95acf0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "get_sketch_mode_plane": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd95acf0, ), ], }, expected_repr: "'get_sketch_mode_plane'", name: "literal['get_sketch_mode_plane']", }, ), validate_default: false, copy_default: false, name: "default[literal['get_sketch_mode_plane']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionGetSketchModePlane", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055938019acb0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionGetSketchModePlane", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6b87b0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6b87e0, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "max_distance", lookup_key: Simple { key: "max_distance", py_key: Py( 0x00007f4fcc589f70, ), path: LookupPath( [ S( "max_distance", Py( 0x00007f4fcc58abf0, ), ), ], ), }, name_py: Py( 0x00007f4fd03d9db0, ), validator: FunctionAfter( FunctionAfterValidator { validator: Float( FloatValidator { strict: false, allow_inf_nan: true, }, ), func: Py( 0x000055937face640, ), config: Py( 0x00007f4fcc5b7ec0, ), name: "function-after[LengthUnit(), float]", field_name: None, info_arg: false, }, ), frozen: false, }, Field { name: "min_distance", lookup_key: Simple { key: "min_distance", py_key: Py( 0x00007f4fcc58a330, ), path: LookupPath( [ S( "min_distance", Py( 0x00007f4fcc58aab0, ), ), ], ), }, name_py: Py( 0x00007f4fccce3ef0, ), validator: FunctionAfter( FunctionAfterValidator { validator: Float( FloatValidator { strict: false, allow_inf_nan: true, }, ), func: Py( 0x000055937face640, ), config: Py( 0x00007f4fcc5b7ec0, ), name: "function-after[LengthUnit(), float]", field_name: None, info_arg: false, }, ), frozen: false, }, ], model_name: "EntityGetDistance", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937facead0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "EntityGetDistance", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6b8810, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6b8840, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcdd01a70, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "entity_get_distance": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcdd01a70, ), ], }, expected_repr: "'entity_get_distance'", name: "literal['entity_get_distance']", }, ), validate_default: false, copy_default: false, name: "default[literal['entity_get_distance']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionEntityGetDistance", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fc601b0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionEntityGetDistance", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6b8870, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6b88a0, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "entity_ids", lookup_key: Simple { key: "entity_ids", py_key: Py( 0x00007f4fcc58a870, ), path: LookupPath( [ S( "entity_ids", Py( 0x00007f4fcc58a7f0, ), ), ], ), }, name_py: Py( 0x00007f4fccce0f30, ), validator: List( ListValidator { strict: false, item_validator: Some( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), ), min_length: None, max_length: None, name: OnceLock( <uninit>, ), fail_fast: false, }, ), frozen: false, }, ], model_name: "EntityLinearPatternTransform", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fad62f0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "EntityLinearPatternTransform", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6b88d0, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6b8900, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd879d40, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "entity_linear_pattern_transform": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd879d40, ), ], }, expected_repr: "'entity_linear_pattern_transform'", name: "literal['entity_linear_pattern_transform']", }, ), validate_default: false, copy_default: false, name: "default[literal['entity_linear_pattern_transform']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionEntityLinearPatternTransform", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593801a6b70, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionEntityLinearPatternTransform", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6b8930, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6b8960, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "entity_ids", lookup_key: Simple { key: "entity_ids", py_key: Py( 0x00007f4fcc58a8b0, ), path: LookupPath( [ S( "entity_ids", Py( 0x00007f4fcc58a930, ), ), ], ), }, name_py: Py( 0x00007f4fccce0f30, ), validator: List( ListValidator { strict: false, item_validator: Some( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), ), min_length: None, max_length: None, name: OnceLock( <uninit>, ), fail_fast: false, }, ), frozen: false, }, ], model_name: "EntityLinearPattern", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fad4d30, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "EntityLinearPattern", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6b8990, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6b89c0, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcdd028b0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "entity_linear_pattern": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcdd028b0, ), ], }, expected_repr: "'entity_linear_pattern'", name: "literal['entity_linear_pattern']", }, ), validate_default: false, copy_default: false, name: "default[literal['entity_linear_pattern']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionEntityLinearPattern", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593801a9fc0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionEntityLinearPattern", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6b89f0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6b8a20, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "entity_ids", lookup_key: Simple { key: "entity_ids", py_key: Py( 0x00007f4fcc58aa70, ), path: LookupPath( [ S( "entity_ids", Py( 0x00007f4fcc58a970, ), ), ], ), }, name_py: Py( 0x00007f4fccce0f30, ), validator: List( ListValidator { strict: false, item_validator: Some( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), ), min_length: None, max_length: None, name: OnceLock( <uninit>, ), fail_fast: false, }, ), frozen: false, }, ], model_name: "EntityCircularPattern", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055937fac65c0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "EntityCircularPattern", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6b8a50, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6b8a80, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcdd03ab0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "entity_circular_pattern": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcdd03ab0, ), ], }, expected_repr: "'entity_circular_pattern'", name: "literal['entity_circular_pattern']", }, ), validate_default: false, copy_default: false, name: "default[literal['entity_circular_pattern']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionEntityCircularPattern", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593801acfc0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionEntityCircularPattern", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6b8b10, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6b8b40, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "faces", lookup_key: Simple { key: "faces", py_key: Py( 0x00007f4fcc6b8ab0, ), path: LookupPath( [ S( "faces", Py( 0x00007f4fcc6b8ae0, ), ), ], ), }, name_py: Py( 0x00007f4fcc89a700, ), validator: List( ListValidator { strict: false, item_validator: Some( DefinitionRef( DefinitionRefValidator { definition: "...", }, ), ), min_length: None, max_length: None, name: OnceLock( <uninit>, ), fail_fast: false, }, ), frozen: false, }, ], model_name: "Solid3dGetExtrusionFaceInfo", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593800a9c90, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "Solid3dGetExtrusionFaceInfo", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6b8b70, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6b8ba0, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd87ab00, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "solid3d_get_extrusion_face_info": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd87ab00, ), ], }, expected_repr: "'solid3d_get_extrusion_face_info'", name: "literal['solid3d_get_extrusion_face_info']", }, ), validate_default: false, copy_default: false, name: "default[literal['solid3d_get_extrusion_face_info']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionSolid3DGetExtrusionFaceInfo", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593801aff30, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionSolid3DGetExtrusionFaceInfo", }, ), Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "data", lookup_key: Simple { key: "data", py_key: Py( 0x00007f4fcc6b8bd0, ), path: LookupPath( [ S( "data", Py( 0x00007f4fcc6b8c00, ), ), ], ), }, name_py: Py( 0x00007f4fd14390a0, ), validator: DefinitionRef( DefinitionRefValidator { definition: "...", }, ), frozen: false, }, Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007f4fcc6b8c30, ), path: LookupPath( [ S( "type", Py( 0x00007f4fcc6b8c60, ), ), ], ), }, name_py: Py( 0x00007f4fd143da58, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007f4fcd959db0, ), ), on_error: Raise, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "extrusion_face_info": 0, }, ), expected_py_dict: None, expected_py_values: None, values: [ Py( 0x00007f4fcd959db0, ), ], }, expected_repr: "'extrusion_face_info'", name: "literal['extrusion_face_info']", }, ), validate_default: false, copy_default: false, name: "default[literal['extrusion_face_info']]", undefined: Py( 0x00007f4fcf4c6310, ), }, ), frozen: false, }, ], model_name: "OptionExtrusionFaceInfo", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x00005593801b2f30, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "OptionExtrusionFaceInfo", }, ), ], }, from_attributes: true, strict: false, custom_error: None, tags_repr: "'empty', 'export', 'select_with_point', 'highlight_set_entity', 'entity_get_child_uuid', 'entity_get_num_children', 'entity_get_parent_id', 'entity_get_all_child_uuids', 'entity_get_sketch_paths', 'loft', 'close_path', 'camera_drag_move', 'camera_drag_end', 'default_camera_get_settings', 'default_camera_zoom', 'zoom_to_fit', 'view_isometric', 'get_num_objects', 'default_camera_focus_on', 'select_get', 'solid3d_get_all_edge_faces', 'solid3d_get_all_opposite_edges', 'solid3d_get_opposite_edge', 'solid3d_get_next_adjacent_edge', 'solid3d_get_prev_adjacent_edge', 'get_entity_type', 'curve_get_control_points', 'curve_get_type', 'mouse_click', 'take_snapshot', 'path_get_info', 'path_segment_info', 'path_get_curve_uuids_for_vertices', 'path_get_curve_uuid', 'path_get_vertex_uuids', 'path_get_sketch_target_uuid', 'curve_get_end_points', 'face_is_planar', 'face_get_position', 'face_get_center', 'face_get_gradient', 'plane_intersect_and_project', 'import_files', 'imported_geometry', 'mass', 'volume', 'density', 'surface_area', 'center_of_mass', 'get_sketch_mode_plane', 'entity_get_distance', 'entity_linear_pattern_transform', 'entity_linear_pattern', 'entity_circular_pattern', 'solid3d_get_extrusion_face_info', 'extrusion_face_info'", discriminator_repr: "'type'", name: "tagged-union[OptionEmpty,OptionExport,OptionSelectWithPoint,OptionHighlightSetEntity,OptionEntityGetChildUuid,OptionEntityGetNumChildren,OptionEntityGetParentId,OptionEntityGetAllChildUuids,OptionEntityGetSketchPaths,OptionLoft,OptionClosePath,OptionCameraDragMove,OptionCameraDragEnd,OptionDefaultCameraGetSettings,OptionDefaultCameraZoom,OptionZoomToFit,OptionViewIsometric,OptionGetNumObjects,OptionDefaultCameraFocusOn,OptionSelectGet,OptionSolid3DGetAllEdgeFaces,OptionSolid3DGetAllOppositeEdges,OptionSolid3DGetOppositeEdge,OptionSolid3DGetNextAdjacentEdge,OptionSolid3DGetPrevAdjacentEdge,OptionGetEntityType,OptionCurveGetControlPoints,OptionCurveGetType,OptionMouseClick,OptionTakeSnapshot,OptionPathGetInfo,OptionPathSegmentInfo,OptionPathGetCurveUuidsForVertices,OptionPathGetCurveUuid,OptionPathGetVertexUuids,OptionPathGetSketchTargetUuid,OptionCurveGetEndPoints,OptionFaceIsPlanar,OptionFaceGetPosition,OptionFaceGetCenter,OptionFaceGetGradient,OptionPlaneIntersectAndProject,OptionImportFiles,OptionImportedGeometry,OptionMass,OptionVolume,OptionDensity,OptionSurfaceArea,OptionCenterOfMass,OptionGetSketchModePlane,OptionEntityGetDistance,OptionEntityLinearPatternTransform,OptionEntityLinearPattern,OptionEntityCircularPattern,OptionSolid3DGetExtrusionFaceInfo,OptionExtrusionFaceInfo]", }, ), class: Py( 0x00005593801bc480, ), post_init: None, frozen: false, custom_init: false, root_model: true, undefined: Py( 0x00007f4fcf4c6310, ), name: "RootModel[Annotated[Union[OptionEmpty, OptionExport, OptionSelectWithPoint, OptionHighlightSetEntity, OptionEntityGetChildUuid, OptionEntityGetNumChildren, OptionEntityGetParentId, OptionEntityGetAllChildUuids, OptionEntityGetSketchPaths, OptionLoft, OptionClosePath, OptionCameraDragMove, OptionCameraDragEnd, OptionDefaultCameraGetSettings, OptionDefaultCameraZoom, OptionZoomToFit, OptionViewIsometric, OptionGetNumObjects, OptionDefaultCameraFocusOn, OptionSelectGet, OptionSolid3DGetAllEdgeFaces, OptionSolid3DGetAllOppositeEdges, OptionSolid3DGetOppositeEdge, OptionSolid3DGetNextAdjacentEdge, OptionSolid3DGetPrevAdjacentEdge, OptionGetEntityType, OptionCurveGetControlPoints, OptionCurveGetType, OptionMouseClick, OptionTakeSnapshot, OptionPathGetInfo, OptionPathSegmentInfo, OptionPathGetCurveUuidsForVertices, OptionPathGetCurveUuid, OptionPathGetVertexUuids, OptionPathGetSketchTargetUuid, OptionCurveGetEndPoints, OptionFaceIsPlanar, OptionFaceGetPosition, OptionFaceGetCenter, OptionFaceGetGradient, OptionPlaneIntersectAndProject, OptionImportFiles, OptionImportedGeometry, OptionMass, OptionVolume, OptionDensity, OptionSurfaceArea, OptionCenterOfMass, OptionGetSketchModePlane, OptionEntityGetDistance, OptionEntityLinearPatternTransform, OptionEntityLinearPattern, OptionEntityCircularPattern, OptionSolid3DGetExtrusionFaceInfo, OptionExtrusionFaceInfo], FieldInfo(annotation=NoneType, required=True, discriminator='type')]]", }, ), frozen: false, }, ], model_name: "ModelingData", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055938027fbf0, ), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007f4fcf4c6310, ), name: "ModelingData", }, ), definitions=[Model(ModelValidator { revalidate: Never, validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "w", lookup_key: Simple { key: "w", py_key: Py(0x7f4fd143f5f8), path: LookupPath([S("w", Py(0x7f4fd143f5f8))]) }, name_py: Py(0x7f4fd143f5f8), validator: Float(FloatValidator { strict: false, allow_inf_nan: true }), frozen: false }, Field { name: "x", lookup_key: Simple { key: "x", py_key: Py(0x7f4fd143f628), path: LookupPath([S("x", Py(0x7f4fd143f628))]) }, name_py: Py(0x7f4fd143df18), validator: Float(FloatValidator { strict: false, allow_inf_nan: true }), frozen: false }, Field { name: "y", lookup_key: Simple { key: "y", py_key: Py(0x7f4fd143f658), path: LookupPath([S("y", Py(0x7f4fd143f658))]) }, name_py: Py(0x7f4fd143f658), validator: Float(FloatValidator { strict: false, allow_inf_nan: true }), frozen: false }, Field { name: "z", lookup_key: Simple { key: "z", py_key: Py(0x7f4fd143f688), path: LookupPath([S("z", Py(0x7f4fd143f688))]) }, name_py: Py(0x7f4fd143f688), validator: Float(FloatValidator { strict: false, allow_inf_nan: true }), frozen: false }], model_name: "Point4d", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), class: Py(0x55937fa7d870), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7f4fcf4c6310), name: "Point4d" }), StrEnum(EnumValidator { phantom: PhantomData<_pydantic_core::validators::enum_::StrEnumValidator>, class: Py(0x5593800d2bf0), lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some({"move_to": 0, "nurbs_curve_to": 3, "line_to": 1, "bez_curve_to": 2, "add_arc": 4}), expected_py_dict: None, expected_py_values: None, values: [Py(0x7f4fcc8080b0), Py(0x7f4fcc808170), Py(0x7f4fcc8081d0), Py(0x7f4fcc808230), Py(0x7f4fcc8082f0)] }, missing: None, expected_repr: "'move_to', 'line_to', 'bez_curve_to', 'nurbs_curve_to' or 'add_arc'", strict: false, class_repr: "PathCommand", name: "str-enum[PathCommand]" }), StrEnum(EnumValidator { phantom: PhantomData<_pydantic_core::validators::enum_::StrEnumValidator>, class: Py(0x55937fb091b0), lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some({"top": 1, "bottom": 2, "none": 0}), expected_py_dict: None, expected_py_values: None, values: [Py(0x7f4fccc5f5f0), Py(0x7f4fccc5f650), Py(0x7f4fccc5f6b0)] }, missing: None, expected_repr: "'none', 'top' or 'bottom'", strict: false, class_repr: "ExtrusionFaceCapType", name: "str-enum[ExtrusionFaceCapType]" }), Model(ModelValidator { revalidate: Never, validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "x", lookup_key: Simple { key: "x", py_key: Py(0x7f4fd143f628), path: LookupPath([S("x", Py(0x7f4fd143f628))]) }, name_py: Py(0x7f4fd143df18), validator: Float(FloatValidator { strict: false, allow_inf_nan: true }), frozen: false }, Field { name: "y", lookup_key: Simple { key: "y", py_key: Py(0x7f4fd143f658), path: LookupPath([S("y", Py(0x7f4fd143f658))]) }, name_py: Py(0x7f4fd143f658), validator: Float(FloatValidator { strict: false, allow_inf_nan: true }), frozen: false }, Field { name: "z", lookup_key: Simple { key: "z", py_key: Py(0x7f4fd143f688), path: LookupPath([S("z", Py(0x7f4fd143f688))]) }, name_py: Py(0x7f4fd143f688), validator: Float(FloatValidator { strict: false, allow_inf_nan: true }), frozen: false }], model_name: "Point3d", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), class: Py(0x55937f471fe0), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7f4fcf4c6310), name: "Point3d" }), Model(ModelValidator { revalidate: Never, validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "center", lookup_key: Simple { key: "center", py_key: Py(0x7f4fcc800480), path: LookupPath([S("center", Py(0x7f4fcc89bbd0))]) }, name_py: Py(0x7f4fd0d08150), validator: DefinitionRef(DefinitionRefValidator { definition: "Point3d" }), frozen: false }, Field { name: "fov_y", lookup_key: Simple { key: "fov_y", py_key: Py(0x7f4fcc80f600), path: LookupPath([S("fov_y", Py(0x7f4fcc80f5d0))]) }, name_py: Py(0x7f4fcd005710), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7f4fd1348100)), on_error: Raise, validator: Nullable(NullableValidator { validator: Float(FloatValidator { strict: false, allow_inf_nan: true }), name: "nullable[float]" }), validate_default: false, copy_default: false, name: "default[nullable[float]]", undefined: Py(0x7f4fcf4c6310) }), frozen: false }, Field { name: "orientation", lookup_key: Simple { key: "orientation", py_key: Py(0x7f4fcc58b7b0), path: LookupPath([S("orientation", Py(0x7f4fcc58b130))]) }, name_py: Py(0x7f4fccd6ce30), validator: DefinitionRef(DefinitionRefValidator { definition: "..." }), frozen: false }, Field { name: "ortho", lookup_key: Simple { key: "ortho", py_key: Py(0x7f4fcc80f720), path: LookupPath([S("ortho", Py(0x7f4fcc80f690))]) }, name_py: Py(0x7f4fcd005590), validator: Bool(BoolValidator { strict: false }), frozen: false }, Field { name: "ortho_scale", lookup_key: Simple { key: "ortho_scale", py_key: Py(0x7f4fcc58b8f0), path: LookupPath([S("ortho_scale", Py(0x7f4fcc58b830))]) }, name_py: Py(0x7f4fccd6cd30), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7f4fd1348100)), on_error: Raise, validator: Nullable(NullableValidator { validator: Float(FloatValidator { strict: false, allow_inf_nan: true }), name: "nullable[float]" }), validate_default: false, copy_default: false, name: "default[nullable[float]]", undefined: Py(0x7f4fcf4c6310) }), frozen: false }, Field { name: "pos", lookup_key: Simple { key: "pos", py_key: Py(0x7f4fcc6d1bc0), path: LookupPath([S("pos", Py(0x7f4fcc6d1d10))]) }, name_py: Py(0x7f4fd143c250), validator: DefinitionRef(DefinitionRefValidator { definition: "Point3d" }), frozen: false }, Field { name: "up", lookup_key: Simple { key: "up", py_key: Py(0x7f4fcc6d1bf0), path: LookupPath([S("up", Py(0x7f4fcc6d1c80))]) }, name_py: Py(0x7f4fd01d78a0), validator: DefinitionRef(DefinitionRefValidator { definition: "Point3d" }), frozen: false }], model_name: "CameraSettings", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), class: Py(0x55937fa7e860), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7f4fcf4c6310), name: "CameraSettings" }), Model(ModelValidator { revalidate: Never, validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "command", lookup_key: Simple { key: "command", py_key: Py(0x7f4fcc6d1d40), path: LookupPath([S("command", Py(0x7f4fcc6d1ce0))]) }, name_py: Py(0x7f4fd1438de0), validator: DefinitionRef(DefinitionRefValidator { definition: "..." }), frozen: false }, Field { name: "command_id", lookup_key: Simple { key: "command_id", py_key: Py(0x7f4fcc58b970), path: LookupPath([S("command_id", Py(0x7f4fcc58bbf0))]) }, name_py: Py(0x7f4fcc806c30), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7f4fd1348100)), on_error: Raise, validator: Nullable(NullableValidator { validator: FunctionAfter(FunctionAfterValidator { validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), func: Py(0x55937fc4a6c0), config: Py(0x7f4fcc5c3300), name: "function-after[ModelingCmdId(), str]", field_name: None, info_arg: false }), name: "nullable[function-after[ModelingCmdId(), str]]" }), validate_default: false, copy_default: false, name: "default[nullable[function-after[ModelingCmdId(), str]]]", undefined: Py(0x7f4fcf4c6310) }), frozen: false }, Field { name: "relative", lookup_key: Simple { key: "relative", py_key: Py(0x7f4fcc58b870), path: LookupPath([S("relative", Py(0x7f4fcc58b8b0))]) }, name_py: Py(0x7f4fcfb4b7b0), validator: Bool(BoolValidator { strict: false }), frozen: false }], model_name: "PathSegmentInfo", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), class: Py(0x5593800d3730), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7f4fcf4c6310), name: "PathSegmentInfo" }), Model(ModelValidator { revalidate: Never, validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "cap", lookup_key: Simple { key: "cap", py_key: Py(0x7f4fcc6d1da0), path: LookupPath([S("cap", Py(0x7f4fcc6d2220))]) }, name_py: Py(0x7f4fcf3b27c0), validator: DefinitionRef(DefinitionRefValidator { definition: "..." }), frozen: false }, Field { name: "curve_id", lookup_key: Simple { key: "curve_id", py_key: Py(0x7f4fcc58bab0), path: LookupPath([S("curve_id", Py(0x7f4fcc58b9b0))]) }, name_py: Py(0x7f4fccb35370), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7f4fd1348100)), on_error: Raise, validator: Nullable(NullableValidator { validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), name: "nullable[str]" }), validate_default: false, copy_default: false, name: "default[nullable[str]]", undefined: Py(0x7f4fcf4c6310) }), frozen: false }, Field { name: "face_id", lookup_key: Simple { key: "face_id", py_key: Py(0x7f4fcc6d1f20), path: LookupPath([S("face_id", Py(0x7f4fcc6d1dd0))]) }, name_py: Py(0x7f4fccfcb0f0), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7f4fd1348100)), on_error: Raise, validator: Nullable(NullableValidator { validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), name: "nullable[str]" }), validate_default: false, copy_default: false, name: "default[nullable[str]]", undefined: Py(0x7f4fcf4c6310) }), frozen: false }], model_name: "ExtrusionFaceInfo", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), class: Py(0x55937fb0a040), post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7f4fcf4c6310), name: "ExtrusionFaceInfo" })], cache_strings=True)[source]
The
pydantic-core
SchemaValidator
used to validate instances of the model.
- __rich_repr__()[source]
Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __signature__: ClassVar[Signature] = <Signature (*, modeling_response: pydantic.root_model.RootModel[Annotated[Union[OptionEmpty, OptionExport, OptionSelectWithPoint, OptionHighlightSetEntity, OptionEntityGetChildUuid, OptionEntityGetNumChildren, OptionEntityGetParentId, OptionEntityGetAllChildUuids, OptionEntityGetSketchPaths, OptionLoft, OptionClosePath, OptionCameraDragMove, OptionCameraDragEnd, OptionDefaultCameraGetSettings, OptionDefaultCameraZoom, OptionZoomToFit, OptionViewIsometric, OptionGetNumObjects, OptionDefaultCameraFocusOn, OptionSelectGet, OptionSolid3DGetAllEdgeFaces, OptionSolid3DGetAllOppositeEdges, OptionSolid3DGetOppositeEdge, OptionSolid3DGetNextAdjacentEdge, OptionSolid3DGetPrevAdjacentEdge, OptionGetEntityType, OptionCurveGetControlPoints, OptionCurveGetType, OptionMouseClick, OptionTakeSnapshot, OptionPathGetInfo, OptionPathSegmentInfo, OptionPathGetCurveUuidsForVertices, OptionPathGetCurveUuid, OptionPathGetVertexUuids, OptionPathGetSketchTargetUuid, OptionCurveGetEndPoints, OptionFaceIsPlanar, OptionFaceGetPosition, OptionFaceGetCenter, OptionFaceGetGradient, OptionPlaneIntersectAndProject, OptionImportFiles, OptionImportedGeometry, OptionMass, OptionVolume, OptionDensity, OptionSurfaceArea, OptionCenterOfMass, OptionGetSketchModePlane, OptionEntityGetDistance, OptionEntityLinearPatternTransform, OptionEntityLinearPattern, OptionEntityCircularPattern, OptionSolid3DGetExtrusionFaceInfo, OptionExtrusionFaceInfo], FieldInfo(annotation=NoneType, required=True, discriminator='type')]]) -> None>[source]
The synthesized
__init__
[Signature
][inspect.Signature] of the model.
- __slots__ = ('__dict__', '__pydantic_fields_set__', '__pydantic_extra__', '__pydantic_private__')[source]
- copy(*, include=None, exclude=None, update=None, deep=False)[source]
Returns a copy of the model.
- !!! warning “Deprecated”
This method is now deprecated; use
model_copy
instead.
If you need
include
orexclude
, use:`py data = self.model_dump(include=include, exclude=exclude, round_trip=True) data = {**data, **(update or {})} copied = self.model_validate(data) `
- Parameters:
include – Optional set or mapping specifying which fields to include in the copied model.
exclude – Optional set or mapping specifying which fields to exclude in the copied model.
update – Optional dictionary of field-value pairs to override field values in the copied model.
deep – If True, the values of fields that are Pydantic models will be deep-copied.
- Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(*, include=None, exclude=None, by_alias=False, exclude_unset=False, exclude_defaults=False, exclude_none=False)[source]
- json(*, include=None, exclude=None, by_alias=False, exclude_unset=False, exclude_defaults=False, exclude_none=False, encoder=PydanticUndefined, models_as_dict=PydanticUndefined, **dumps_kwargs)[source]
- Return type:
- model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}[source]
A dictionary of computed field names and their corresponding
ComputedFieldInfo
objects.
- model_config: ClassVar[ConfigDict] = {'protected_namespaces': ()}[source]
Configuration for the model, should be a dictionary conforming to [
ConfigDict
][pydantic.config.ConfigDict].
- classmethod model_construct(_fields_set=None, **values)[source]
Creates a new instance of the
Model
class with validated data.Creates a new model setting
__dict__
and__pydantic_fields_set__
from trusted or pre-validated data. Default values are respected, but no other validation is performed.- !!! note
model_construct()
generally respects themodel_config.extra
setting on the provided model. That is, ifmodel_config.extra == 'allow'
, then all extra passed values are added to the model instance’s__dict__
and__pydantic_extra__
fields. Ifmodel_config.extra == 'ignore'
(the default), then all extra passed values are ignored. Because no validation is performed with a call tomodel_construct()
, havingmodel_config.extra == 'forbid'
does not result in an error if extra values are passed, but they will be ignored.
- Parameters:
_fields_set (
set
[str
] |None
) – A set of field names that were originally explicitly set during instantiation. If provided, this is directly used for the [model_fields_set
][pydantic.BaseModel.model_fields_set] attribute. Otherwise, the field names from thevalues
argument will be used.values (
Any
) – Trusted or pre-validated data dictionary.
- Return type:
Self
- Returns:
A new instance of the
Model
class with validated data.
- model_copy(*, update=None, deep=False)[source]
Usage docs: https://docs.pydantic.dev/2.9/concepts/serialization/#model_copy
Returns a copy of the model.
- model_dump(*, mode='python', include=None, exclude=None, context=None, by_alias=False, exclude_unset=False, exclude_defaults=False, exclude_none=False, round_trip=False, warnings=True, serialize_as_any=False)[source]
Usage docs: https://docs.pydantic.dev/2.9/concepts/serialization/#modelmodel_dump
Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.
- Parameters:
mode (
Union
[Literal
['json'
,'python'
],str
]) – The mode in whichto_python
should run. If mode is ‘json’, the output will only contain JSON serializable types. If mode is ‘python’, the output may contain non-JSON-serializable Python objects.include (
Union
[Set
[int
],Set
[str
],Dict
[int
,Union
[Set
[int
],Set
[str
],Dict
[int
,Union
[IncEx,bool
]],Dict
[str
,Union
[IncEx,bool
]],bool
]],Dict
[str
,Union
[Set
[int
],Set
[str
],Dict
[int
,Union
[IncEx,bool
]],Dict
[str
,Union
[IncEx,bool
]],bool
]],None
]) – A set of fields to include in the output.exclude (
Union
[Set
[int
],Set
[str
],Dict
[int
,Union
[Set
[int
],Set
[str
],Dict
[int
,Union
[IncEx,bool
]],Dict
[str
,Union
[IncEx,bool
]],bool
]],Dict
[str
,Union
[Set
[int
],Set
[str
],Dict
[int
,Union
[IncEx,bool
]],Dict
[str
,Union
[IncEx,bool
]],bool
]],None
]) – A set of fields to exclude from the output.context (
Any
|None
) – Additional context to pass to the serializer.by_alias (
bool
) – Whether to use the field’s alias in the dictionary key if defined.exclude_unset (
bool
) – Whether to exclude fields that have not been explicitly set.exclude_defaults (
bool
) – Whether to exclude fields that are set to their default value.exclude_none (
bool
) – Whether to exclude fields that have a value ofNone
.round_trip (
bool
) – If True, dumped values should be valid as input for non-idempotent types such as Json[T].warnings (
Union
[bool
,Literal
['none'
,'warn'
,'error'
]]) – How to handle serialization errors. False/”none” ignores them, True/”warn” logs errors, “error” raises a [PydanticSerializationError
][pydantic_core.PydanticSerializationError].serialize_as_any (
bool
) – Whether to serialize fields with duck-typing serialization behavior.
- Return type:
- Returns:
A dictionary representation of the model.
- model_dump_json(*, indent=None, include=None, exclude=None, context=None, by_alias=False, exclude_unset=False, exclude_defaults=False, exclude_none=False, round_trip=False, warnings=True, serialize_as_any=False)[source]
Usage docs: https://docs.pydantic.dev/2.9/concepts/serialization/#modelmodel_dump_json
Generates a JSON representation of the model using Pydantic’s
to_json
method.- Parameters:
indent (
int
|None
) – Indentation to use in the JSON output. If None is passed, the output will be compact.include (
Union
[Set
[int
],Set
[str
],Dict
[int
,Union
[Set
[int
],Set
[str
],Dict
[int
,Union
[IncEx,bool
]],Dict
[str
,Union
[IncEx,bool
]],bool
]],Dict
[str
,Union
[Set
[int
],Set
[str
],Dict
[int
,Union
[IncEx,bool
]],Dict
[str
,Union
[IncEx,bool
]],bool
]],None
]) – Field(s) to include in the JSON output.exclude (
Union
[Set
[int
],Set
[str
],Dict
[int
,Union
[Set
[int
],Set
[str
],Dict
[int
,Union
[IncEx,bool
]],Dict
[str
,Union
[IncEx,bool
]],bool
]],Dict
[str
,Union
[Set
[int
],Set
[str
],Dict
[int
,Union
[IncEx,bool
]],Dict
[str
,Union
[IncEx,bool
]],bool
]],None
]) – Field(s) to exclude from the JSON output.context (
Any
|None
) – Additional context to pass to the serializer.by_alias (
bool
) – Whether to serialize using field aliases.exclude_unset (
bool
) – Whether to exclude fields that have not been explicitly set.exclude_defaults (
bool
) – Whether to exclude fields that are set to their default value.exclude_none (
bool
) – Whether to exclude fields that have a value ofNone
.round_trip (
bool
) – If True, dumped values should be valid as input for non-idempotent types such as Json[T].warnings (
Union
[bool
,Literal
['none'
,'warn'
,'error'
]]) – How to handle serialization errors. False/”none” ignores them, True/”warn” logs errors, “error” raises a [PydanticSerializationError
][pydantic_core.PydanticSerializationError].serialize_as_any (
bool
) – Whether to serialize fields with duck-typing serialization behavior.
- Return type:
- Returns:
A JSON string representation of the model.
- property model_extra: dict[str, Any] | None[source]
Get extra fields set during validation.
- Returns:
A dictionary of extra fields, or
None
ifconfig.extra
is not set to"allow"
.
- model_fields: ClassVar[Dict[str, FieldInfo]] = {'modeling_response': FieldInfo(annotation=RootModel[Annotated[Union[OptionEmpty, OptionExport, OptionSelectWithPoint, OptionHighlightSetEntity, OptionEntityGetChildUuid, OptionEntityGetNumChildren, OptionEntityGetParentId, OptionEntityGetAllChildUuids, OptionEntityGetSketchPaths, OptionLoft, OptionClosePath, OptionCameraDragMove, OptionCameraDragEnd, OptionDefaultCameraGetSettings, OptionDefaultCameraZoom, OptionZoomToFit, OptionViewIsometric, OptionGetNumObjects, OptionDefaultCameraFocusOn, OptionSelectGet, OptionSolid3DGetAllEdgeFaces, OptionSolid3DGetAllOppositeEdges, OptionSolid3DGetOppositeEdge, OptionSolid3DGetNextAdjacentEdge, OptionSolid3DGetPrevAdjacentEdge, OptionGetEntityType, OptionCurveGetControlPoints, OptionCurveGetType, OptionMouseClick, OptionTakeSnapshot, OptionPathGetInfo, OptionPathSegmentInfo, OptionPathGetCurveUuidsForVertices, OptionPathGetCurveUuid, OptionPathGetVertexUuids, OptionPathGetSketchTargetUuid, OptionCurveGetEndPoints, OptionFaceIsPlanar, OptionFaceGetPosition, OptionFaceGetCenter, OptionFaceGetGradient, OptionPlaneIntersectAndProject, OptionImportFiles, OptionImportedGeometry, OptionMass, OptionVolume, OptionDensity, OptionSurfaceArea, OptionCenterOfMass, OptionGetSketchModePlane, OptionEntityGetDistance, OptionEntityLinearPatternTransform, OptionEntityLinearPattern, OptionEntityCircularPattern, OptionSolid3DGetExtrusionFaceInfo, OptionExtrusionFaceInfo], FieldInfo(annotation=NoneType, required=True, discriminator='type')]], required=True)}[source]
Metadata about the fields defined on the model, mapping of field names to [
FieldInfo
][pydantic.fields.FieldInfo] objects.This replaces
Model.__fields__
from Pydantic V1.
- property model_fields_set: set[str][source]
Returns the set of fields that have been explicitly set on this model instance.
- Returns:
- A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
- classmethod model_json_schema(by_alias=True, ref_template='#/$defs/{model}', schema_generator=<class 'pydantic.json_schema.GenerateJsonSchema'>, mode='validation')[source]
Generates a JSON schema for a model class.
- Parameters:
by_alias (
bool
) – Whether to use attribute aliases or not.ref_template (
str
) – The reference template.schema_generator (
type
[GenerateJsonSchema
]) – To override the logic used to generate the JSON schema, as a subclass ofGenerateJsonSchema
with your desired modificationsmode (
Literal
['validation'
,'serialization'
]) – The mode in which to generate the schema.
- Return type:
- Returns:
The JSON schema for the given model class.
- classmethod model_parametrized_name(params)[source]
Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
- Parameters:
params (
tuple
[type
[Any
],...
]) – Tuple of types of the class. Given a generic classModel
with 2 type variables and a concrete modelModel[str, int]
, the value(str, int)
would be passed toparams
.- Return type:
- Returns:
String representing the new class where
params
are passed tocls
as type variables.- Raises:
TypeError – Raised when trying to generate concrete names for non-generic models.
- model_post_init(_BaseModel__context)[source]
Override this method to perform additional initialization after
__init__
andmodel_construct
. This is useful if you want to do some validation that requires the entire model to be initialized.- Return type:
- classmethod model_rebuild(*, force=False, raise_errors=True, _parent_namespace_depth=2, _types_namespace=None)[source]
Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during the initial attempt to build the schema, and automatic rebuilding fails.
- Parameters:
force (
bool
) – Whether to force the rebuilding of the model schema, defaults toFalse
.raise_errors (
bool
) – Whether to raise errors, defaults toTrue
._parent_namespace_depth (
int
) – The depth level of the parent namespace, defaults to 2._types_namespace (
dict
[str
,Any
] |None
) – The types namespace, defaults toNone
.
- Return type:
- Returns:
Returns
None
if the schema is already “complete” and rebuilding was not required. If rebuilding _was_ required, returnsTrue
if rebuilding was successful, otherwiseFalse
.
- classmethod model_validate(obj, *, strict=None, from_attributes=None, context=None)[source]
Validate a pydantic model instance.
- Parameters:
- Raises:
ValidationError – If the object could not be validated.
- Return type:
Self
- Returns:
The validated model instance.
- classmethod model_validate_json(json_data, *, strict=None, context=None)[source]
Usage docs: https://docs.pydantic.dev/2.9/concepts/json/#json-parsing
Validate the given JSON data against the Pydantic model.
- Parameters:
- Return type:
Self
- Returns:
The validated Pydantic model.
- Raises:
ValidationError – If
json_data
is not a JSON string or the object could not be validated.
- classmethod model_validate_strings(obj, *, strict=None, context=None)[source]
Validate the given object with string data against the Pydantic model.
-
modeling_response:
RootModel[Annotated[Union[OptionEmpty, OptionExport, OptionSelectWithPoint, OptionHighlightSetEntity, OptionEntityGetChildUuid, OptionEntityGetNumChildren, OptionEntityGetParentId, OptionEntityGetAllChildUuids, OptionEntityGetSketchPaths, OptionLoft, OptionClosePath, OptionCameraDragMove, OptionCameraDragEnd, OptionDefaultCameraGetSettings, OptionDefaultCameraZoom, OptionZoomToFit, OptionViewIsometric, OptionGetNumObjects, OptionDefaultCameraFocusOn, OptionSelectGet, OptionSolid3DGetAllEdgeFaces, OptionSolid3DGetAllOppositeEdges, OptionSolid3DGetOppositeEdge, OptionSolid3DGetNextAdjacentEdge, OptionSolid3DGetPrevAdjacentEdge, OptionGetEntityType, OptionCurveGetControlPoints, OptionCurveGetType, OptionMouseClick, OptionTakeSnapshot, OptionPathGetInfo, OptionPathSegmentInfo, OptionPathGetCurveUuidsForVertices, OptionPathGetCurveUuid, OptionPathGetVertexUuids, OptionPathGetSketchTargetUuid, OptionCurveGetEndPoints, OptionFaceIsPlanar, OptionFaceGetPosition, OptionFaceGetCenter, OptionFaceGetGradient, OptionPlaneIntersectAndProject, OptionImportFiles, OptionImportedGeometry, OptionMass, OptionVolume, OptionDensity, OptionSurfaceArea, OptionCenterOfMass, OptionGetSketchModePlane, OptionEntityGetDistance, OptionEntityLinearPatternTransform, OptionEntityLinearPattern, OptionEntityCircularPattern, OptionSolid3DGetExtrusionFaceInfo, OptionExtrusionFaceInfo], FieldInfo(annotation=NoneType, required=True, discriminator='type')]]
[source]
- classmethod parse_file(path, *, content_type=None, encoding='utf8', proto=None, allow_pickle=False)[source]
- Return type:
Self
- classmethod parse_raw(b, *, content_type=None, encoding='utf8', proto=None, allow_pickle=False)[source]
- Return type:
Self