v: 2 timestamp: '2026-07-29T18:11:45.441650' uid: 435544a2-beb3-439f-a048-4ccfb3f1de92 objects: - name: Body id: 3577 type_id: PartDesign::Body properties: AllowCompound: kind: Primitive paths: .: type: BOOL value: false group: Base BaseFeature: kind: Primitive paths: .: type: 'NULL' group: Base Label: kind: Primitive paths: .: type: STRING value: BodyMainBase group: Base Placement: kind: Placement paths: Base.x: type: QUANTITY value: 0.0 mm Base.y: type: QUANTITY value: 0.0 mm Base.z: type: QUANTITY value: 0.0 mm Rotation.Angle: type: QUANTITY value: 0.0 deg Rotation.Axis.x: type: FLOAT value: 0.0 Rotation.Axis.y: type: FLOAT value: 0.0 Rotation.Axis.z: type: FLOAT value: 1.0 group: Base Tip: kind: Unknown paths: .: type: STRING value: freecad_type: PartDesign.Feature group: Base - name: Origin id: 3578 type_id: App::Origin properties: Label: kind: Primitive paths: .: type: STRING value: Origin group: Base - name: X_Axis id: 3579 type_id: App::Line properties: Label: kind: Primitive paths: .: type: STRING value: X-axis group: Base Role: kind: Primitive paths: .: type: STRING value: X_Axis group: Base - name: Y_Axis id: 3580 type_id: App::Line properties: Label: kind: Primitive paths: .: type: STRING value: Y-axis group: Base Role: kind: Primitive paths: .: type: STRING value: Y_Axis group: Base - name: Z_Axis id: 3581 type_id: App::Line properties: Label: kind: Primitive paths: .: type: STRING value: Z-axis group: Base Role: kind: Primitive paths: .: type: STRING value: Z_Axis group: Base - name: XY_Plane id: 3582 type_id: App::Plane properties: Label: kind: Primitive paths: .: type: STRING value: XY-plane group: Base Role: kind: Primitive paths: .: type: STRING value: XY_Plane group: Base - name: XZ_Plane id: 3583 type_id: App::Plane properties: Label: kind: Primitive paths: .: type: STRING value: XZ-plane group: Base Role: kind: Primitive paths: .: type: STRING value: XZ_Plane group: Base - name: YZ_Plane id: 3584 type_id: App::Plane properties: Label: kind: Primitive paths: .: type: STRING value: YZ-plane group: Base Role: kind: Primitive paths: .: type: STRING value: YZ_Plane group: Base - name: Sketch id: 3585 type_id: Sketcher::SketchObject properties: ArcFitTolerance: kind: Primitive paths: .: type: FLOAT value: 1.0e-06 group: Sketch AttacherEngine: kind: Primitive paths: .: type: STRING value: Engine Plane group: Attachment AttachmentOffset: kind: Placement paths: Base.x: type: QUANTITY value: 0.0 mm Base.y: type: QUANTITY value: 0.0 mm Base.z: type: QUANTITY value: 0.0 mm Rotation.Angle: type: QUANTITY value: 0.0 deg Rotation.Axis.x: type: FLOAT value: 0.0 Rotation.Axis.y: type: FLOAT value: 0.0 Rotation.Axis.z: type: FLOAT value: 1.0 group: Attachment Constraints: kind: List paths: {} items: - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 5 FirstPos: type: INT value: 3 Second: type: INT value: -1 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 3 Second: type: INT value: 5 SecondPos: type: INT value: 3 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 70.0 First: type: INT value: 0 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true .: type: 'NULL' expression: <>.Baseplate_ID - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 1 FirstPos: type: INT value: 2 Second: type: INT value: 2 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 2 FirstPos: type: INT value: 2 Second: type: INT value: 3 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Horizontal Value: type: FLOAT value: 0.0 First: type: INT value: 1 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Horizontal Value: type: FLOAT value: 0.0 First: type: INT value: 3 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Vertical Value: type: FLOAT value: 0.0 First: type: INT value: 2 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 35.0 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 4 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true .: type: 'NULL' expression: <>.Baseplate_ID / 2 - kind: Constraint paths: Type: type: STRING value: DistanceY Value: type: FLOAT value: 0.0 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 4 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 160.0 First: type: INT value: 5 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 3 FirstPos: type: INT value: 2 Second: type: INT value: 5 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 1 FirstPos: type: INT value: 1 Second: type: INT value: 5 SecondPos: type: INT value: 2 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: DistanceY Value: type: FLOAT value: 80.0 First: type: INT value: 2 FirstPos: type: INT value: 1 Second: type: INT value: 2 SecondPos: type: INT value: 2 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true .: type: 'NULL' expression: <>.Comb_Width - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 20.0 First: type: INT value: 1 FirstPos: type: INT value: 1 Second: type: INT value: 1 SecondPos: type: INT value: 2 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true .: type: 'NULL' expression: <>.Joiner_Length - kind: Constraint paths: Type: type: STRING value: Symmetric Value: type: FLOAT value: 0.0 First: type: INT value: 2 FirstPos: type: INT value: 1 Second: type: INT value: 2 SecondPos: type: INT value: 2 Third: type: INT value: 6 ThirdPos: type: INT value: 1 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: DistanceY Value: type: FLOAT value: 0.0 First: type: INT value: 6 FirstPos: type: INT value: 1 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchBasePlate group: Base MakeInternals: kind: Primitive paths: .: type: BOOL value: false group: Internal Geometry MapMode: kind: Primitive paths: .: type: STRING value: FlatFace group: Attachment MapReversed: kind: Primitive paths: .: type: BOOL value: false group: Attachment Placement: kind: Placement paths: Base.x: type: QUANTITY value: 0.0 mm Base.y: type: QUANTITY value: 0.0 mm Base.z: type: QUANTITY value: 0.0 mm Rotation.Angle: type: QUANTITY value: 0.0 deg Rotation.Axis.x: type: FLOAT value: 0.0 Rotation.Axis.y: type: FLOAT value: 0.0 Rotation.Axis.z: type: FLOAT value: 1.0 group: Base - name: Spreadsheet id: 3586 type_id: Spreadsheet::Sheet properties: Label: kind: Primitive paths: .: type: STRING value: Parameters group: Base A1: kind: Primitive paths: .: type: STRING value: User Preferences group: Base A2: kind: Primitive paths: .: type: STRING value: Joiner_Length group: Base B2: kind: Primitive paths: .: type: QUANTITY value: 20.0 mm Alias: type: STRING value: Joiner_Length group: Base C2: kind: Primitive paths: .: type: STRING value: Review group: Base A3: kind: Primitive paths: .: type: STRING value: Comb_Width group: Base B3: kind: Primitive paths: .: type: QUANTITY value: 80.0 mm Alias: type: STRING value: Comb_Width group: Base C3: kind: Primitive paths: .: type: STRING value: Review group: Base A4: kind: Primitive paths: .: type: STRING value: Fillet_Width group: Base B4: kind: Primitive paths: .: type: QUANTITY value: 9.520000000000001 mm Alias: type: STRING value: Fillet_Width group: Base A5: kind: Primitive paths: .: type: STRING value: Alignmet_Mark_Diam group: Base B5: kind: Primitive paths: .: type: QUANTITY value: 3.0 mm Alias: type: STRING value: Alignmet_Mark_Diam group: Base A6: kind: Primitive paths: .: type: STRING value: Baseplate_to_Fillet_Length group: Base B6: kind: Primitive paths: .: type: QUANTITY value: 1.0 mm Alias: type: STRING value: Baseplate_to_Fillet_Length group: Base C6: kind: Primitive paths: .: type: STRING value: Where does the fillet start relative to the baseplate? Kinda dumb, but there are reasons. group: Base A7: kind: Primitive paths: .: type: STRING value: Router Inputs group: Base A8: kind: Primitive paths: .: type: STRING value: Baseplate_OD group: Base B8: kind: Primitive paths: .: type: QUANTITY value: 160.0 mm Alias: type: STRING value: Baseplate_OD group: Base C8: kind: Primitive paths: .: type: STRING value: Makita 3612BR original group: Base A9: kind: Primitive paths: .: type: STRING value: Baseplate_ID group: Base B9: kind: Primitive paths: .: type: QUANTITY value: 70.0 mm Alias: type: STRING value: Baseplate_ID group: Base C9: kind: Primitive paths: .: type: STRING value: Makita 3612BR original group: Base A10: kind: Primitive paths: .: type: STRING value: Baseplate_Thickness group: Base B10: kind: Primitive paths: .: type: QUANTITY value: 3.4 mm Alias: type: STRING value: Baseplate_Thickness group: Base C10: kind: Primitive paths: .: type: STRING value: Makita 3612BR original group: Base A11: kind: Primitive paths: .: type: STRING value: TemplateGuideCutout_Length group: Base B11: kind: Primitive paths: .: type: QUANTITY value: 75.5 mm Alias: type: STRING value: TemplateGuideCutout_Length group: Base C11: kind: Primitive paths: .: type: STRING value: Hack; the 3612 actually has two circles that I simplified as one oval group: Base A12: kind: Primitive paths: .: type: STRING value: TemplateGuideCutout_Width group: Base B12: kind: Primitive paths: .: type: QUANTITY value: 11.0 mm Alias: type: STRING value: TemplateGuideCutout_Width group: Base C12: kind: Primitive paths: .: type: STRING value: Makita 3612BR original group: Base A13: kind: Primitive paths: .: type: STRING value: Baseplate_Bolt_Location group: Base B13: kind: Primitive paths: .: type: QUANTITY value: 85.0 mm Alias: type: STRING value: Baseplate_Bolt_Location group: Base C13: kind: Primitive paths: .: type: STRING value: Makita 3612BR original group: Base A14: kind: Primitive paths: .: type: STRING value: Baseplate_Bolt_Diam group: Base B14: kind: Primitive paths: .: type: QUANTITY value: 3.91 mm Alias: type: STRING value: Baseplate_Bolt_Diam group: Base C14: kind: Primitive paths: .: type: STRING value: Not used; I put in an M4 Fine with wide hole allowance (non-parametric) group: Base A15: kind: Primitive paths: .: type: STRING value: Baseplate_Bolt_HeadDiam group: Base B15: kind: Primitive paths: .: type: QUANTITY value: 7.87 mm Alias: type: STRING value: Baseplate_Bolt_HeadDiam group: Base C15: kind: Primitive paths: .: type: STRING value: Not used; I put in an M4 Fine with wide hole allowance (non-parametric) group: Base A16: kind: Primitive paths: .: type: STRING value: Baseplate_Bolt_HeadThick group: Base B16: kind: Primitive paths: .: type: QUANTITY value: 1.5 mm Alias: type: STRING value: Baseplate_Bolt_HeadThick group: Base C16: kind: Primitive paths: .: type: STRING value: Not used; I put in an M4 Fine with wide hole allowance (non-parametric) group: Base A17: kind: Primitive paths: .: type: STRING value: Guide Rail Inputs group: Base A18: kind: Primitive paths: .: type: STRING value: Comb_Baseplate_Thickness group: Base B18: kind: Primitive paths: .: type: QUANTITY value: 4.1 mm Alias: type: STRING value: Comb_Baseplate_Thickness group: Base C18: kind: Primitive paths: .: type: STRING value: Makita guide rail measured group: Base A19: kind: Primitive paths: .: type: STRING value: Comb1_Height group: Base B19: kind: Primitive paths: .: type: QUANTITY value: 16.0 mm Alias: type: STRING value: Comb1_Height group: Base C19: kind: Primitive paths: .: type: STRING value: Makita guide rail measured group: Base A20: kind: Primitive paths: .: type: STRING value: Comb1_Width group: Base B20: kind: Primitive paths: .: type: QUANTITY value: 9.0 mm Alias: type: STRING value: Comb1_Width group: Base C20: kind: Primitive paths: .: type: STRING value: Makita guide rail measured group: Base A21: kind: Primitive paths: .: type: STRING value: Gap1_Width group: Base B21: kind: Primitive paths: .: type: QUANTITY value: 3.88 mm Alias: type: STRING value: Gap1_Width group: Base C21: kind: Primitive paths: .: type: STRING value: Makita guide rail measured group: Base A22: kind: Primitive paths: .: type: STRING value: Comb2_Height group: Base B22: kind: Primitive paths: .: type: QUANTITY value: 12.9 mm Alias: type: STRING value: Comb2_Height group: Base C22: kind: Primitive paths: .: type: STRING value: Makita guide rail measured group: Base A23: kind: Primitive paths: .: type: STRING value: Comb2_Width group: Base B23: kind: Primitive paths: .: type: QUANTITY value: 8.0 mm Alias: type: STRING value: Comb2_Width group: Base C23: kind: Primitive paths: .: type: STRING value: Makita guide rail measured group: Base A24: kind: Primitive paths: .: type: STRING value: Gap2_Width group: Base B24: kind: Primitive paths: .: type: QUANTITY value: 7.3 mm Alias: type: STRING value: Gap2_Width group: Base C24: kind: Primitive paths: .: type: STRING value: Makita guide rail measured group: Base A25: kind: Primitive paths: .: type: STRING value: Comb3_Height group: Base B25: kind: Primitive paths: .: type: QUANTITY value: 10.5 mm Alias: type: STRING value: Comb3_Height group: Base C25: kind: Primitive paths: .: type: STRING value: Makita guide rail measured group: Base A26: kind: Primitive paths: .: type: STRING value: Comb3_Width group: Base B26: kind: Primitive paths: .: type: QUANTITY value: 10.8 mm Alias: type: STRING value: Comb3_Width group: Base C26: kind: Primitive paths: .: type: STRING value: Makita guide rail measured group: Base - name: Pad id: 3587 type_id: PartDesign::Pad properties: AllowMultiFace: kind: Primitive paths: .: type: BOOL value: true group: SketchBased AlongSketchNormal: kind: Primitive paths: .: type: BOOL value: true group: Pad FuzzyTolerance: kind: Primitive paths: .: type: FLOAT value: -1.0 group: Part Design Label: kind: Primitive paths: .: type: STRING value: PadBasePlate group: Base Length: kind: Primitive paths: .: type: QUANTITY value: 3.4 mm expression: <>.Baseplate_Thickness group: Side1 Length2: kind: Primitive paths: .: type: QUANTITY value: 10.0 mm group: Side2 Midplane: kind: Primitive paths: .: type: BOOL value: false group: SketchBased Offset: kind: Primitive paths: .: type: QUANTITY value: 0.0 mm group: Side1 Offset2: kind: Primitive paths: .: type: QUANTITY value: 0.0 mm group: Side2 Profile: kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: Sketcher.SketchObject - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: '' group: SketchBased ReferenceAxis: kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: Sketcher.SketchObject - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: N_Axis group: Pad Refine: kind: Primitive paths: .: type: BOOL value: true group: Part Design Reversed: kind: Primitive paths: .: type: BOOL value: false group: SketchBased SideType: kind: Primitive paths: .: type: STRING value: One side group: Pad Suppressed: kind: Primitive paths: .: type: BOOL value: false group: Base TaperAngle: kind: Primitive paths: .: type: QUANTITY value: 0.0 deg group: Side1 TaperAngle2: kind: Primitive paths: .: type: QUANTITY value: 0.0 deg group: Side2 Type: kind: Primitive paths: .: type: STRING value: Length group: Side1 Type2: kind: Primitive paths: .: type: STRING value: Length group: Side2 UpToFace: kind: Primitive paths: .: type: 'NULL' group: Side1 UpToFace2: kind: Primitive paths: .: type: 'NULL' group: Side2 UseCustomVector: kind: Primitive paths: .: type: BOOL value: false group: Pad - name: DatumPlane id: 3590 type_id: PartDesign::Plane properties: AttacherEngine: kind: Primitive paths: .: type: STRING value: Engine Plane group: Attachment AttachmentOffset: kind: Placement paths: Base.x: type: QUANTITY value: 0.0 mm Base.y: type: QUANTITY value: 0.0 mm Base.z: type: QUANTITY value: 16.0 mm expression: <>.Comb1_Height Rotation.Angle: type: QUANTITY value: 0.0 deg Rotation.Axis.x: type: FLOAT value: 0.0 Rotation.Axis.y: type: FLOAT value: 0.0 Rotation.Axis.z: type: FLOAT value: 1.0 group: Attachment Label: kind: Primitive paths: .: type: STRING value: DatumPlane group: Base Length: kind: Primitive paths: .: type: QUANTITY value: 244.75212601576422 mm group: Size MapMode: kind: Primitive paths: .: type: STRING value: FlatFace group: Attachment MapReversed: kind: Primitive paths: .: type: BOOL value: false group: Attachment Placement: kind: Placement paths: Base.x: type: QUANTITY value: 0.0 mm Base.y: type: QUANTITY value: 0.0 mm Base.z: type: QUANTITY value: 16.0 mm Rotation.Angle: type: QUANTITY value: 0.0 deg Rotation.Axis.x: type: FLOAT value: 0.0 Rotation.Axis.y: type: FLOAT value: 0.0 Rotation.Axis.z: type: FLOAT value: 1.0 group: Base ResizeMode: kind: Primitive paths: .: type: STRING value: Automatic group: Size Width: kind: Primitive paths: .: type: QUANTITY value: 196.4760258570728 mm group: Size - name: Sketch002 id: 3591 type_id: Sketcher::SketchObject properties: ArcFitTolerance: kind: Primitive paths: .: type: FLOAT value: 1.0e-06 group: Sketch AttacherEngine: kind: Primitive paths: .: type: STRING value: Engine Plane group: Attachment AttachmentOffset: kind: Placement paths: Base.x: type: QUANTITY value: 0.0 mm Base.y: type: QUANTITY value: 0.0 mm Base.z: type: QUANTITY value: 0.0 mm Rotation.Angle: type: QUANTITY value: 0.0 deg Rotation.Axis.x: type: FLOAT value: 0.0 Rotation.Axis.y: type: FLOAT value: 0.0 Rotation.Axis.z: type: FLOAT value: 1.0 group: Attachment Constraints: kind: List paths: {} items: - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 2 Second: type: INT value: 1 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 1 FirstPos: type: INT value: 2 Second: type: INT value: 2 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 2 FirstPos: type: INT value: 2 Second: type: INT value: 3 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 3 FirstPos: type: INT value: 2 Second: type: INT value: 0 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Vertical Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Vertical Value: type: FLOAT value: 0.0 First: type: INT value: 2 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Horizontal Value: type: FLOAT value: 0.0 First: type: INT value: 1 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Horizontal Value: type: FLOAT value: 0.0 First: type: INT value: 3 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Horizontal Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 1 Second: type: INT value: -3 SecondPos: type: INT value: 2 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 9.0 First: type: INT value: 3 FirstPos: type: INT value: 2 Second: type: INT value: 3 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true .: type: 'NULL' expression: <>.Comb1_Width - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 0.0 First: type: INT value: -3 FirstPos: type: INT value: 2 Second: type: INT value: 0 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Equal Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 0 Second: type: INT value: -3 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchComb1 group: Base MakeInternals: kind: Primitive paths: .: type: BOOL value: false group: Internal Geometry MapMode: kind: Primitive paths: .: type: STRING value: FlatFace group: Attachment MapReversed: kind: Primitive paths: .: type: BOOL value: false group: Attachment Placement: kind: Placement paths: Base.x: type: QUANTITY value: 0.0 mm Base.y: type: QUANTITY value: 0.0 mm Base.z: type: QUANTITY value: 16.0 mm Rotation.Angle: type: QUANTITY value: 0.0 deg Rotation.Axis.x: type: FLOAT value: 0.0 Rotation.Axis.y: type: FLOAT value: 0.0 Rotation.Axis.z: type: FLOAT value: 1.0 group: Base - name: Pad002 id: 3592 type_id: PartDesign::Pad properties: AllowMultiFace: kind: Primitive paths: .: type: BOOL value: true group: SketchBased AlongSketchNormal: kind: Primitive paths: .: type: BOOL value: true group: Pad FuzzyTolerance: kind: Primitive paths: .: type: FLOAT value: -1.0 group: Part Design Label: kind: Primitive paths: .: type: STRING value: PadComb1 group: Base Length: kind: Primitive paths: .: type: QUANTITY value: 16.0 mm expression: <>.Comb1_Height group: Side1 Length2: kind: Primitive paths: .: type: QUANTITY value: 10.0 mm group: Side2 Midplane: kind: Primitive paths: .: type: BOOL value: false group: SketchBased Offset: kind: Primitive paths: .: type: QUANTITY value: 0.0 mm group: Side1 Offset2: kind: Primitive paths: .: type: QUANTITY value: 0.0 mm group: Side2 Profile: kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: Sketcher.SketchObject - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: '' group: SketchBased ReferenceAxis: kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: Sketcher.SketchObject - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: N_Axis group: Pad Refine: kind: Primitive paths: .: type: BOOL value: true group: Part Design Reversed: kind: Primitive paths: .: type: BOOL value: true group: SketchBased SideType: kind: Primitive paths: .: type: STRING value: One side group: Pad Suppressed: kind: Primitive paths: .: type: BOOL value: false group: Base TaperAngle: kind: Primitive paths: .: type: QUANTITY value: 0.0 deg group: Side1 TaperAngle2: kind: Primitive paths: .: type: QUANTITY value: 0.0 deg group: Side2 Type: kind: Primitive paths: .: type: STRING value: Length group: Side1 Type2: kind: Primitive paths: .: type: STRING value: Length group: Side2 UpToFace: kind: Primitive paths: .: type: 'NULL' group: Side1 UpToFace2: kind: Primitive paths: .: type: 'NULL' group: Side2 UseCustomVector: kind: Primitive paths: .: type: BOOL value: false group: Pad - name: Sketch003 id: 3595 type_id: Sketcher::SketchObject properties: ArcFitTolerance: kind: Primitive paths: .: type: FLOAT value: 1.0e-06 group: Sketch AttacherEngine: kind: Primitive paths: .: type: STRING value: Engine Plane group: Attachment AttachmentOffset: kind: Placement paths: Base.x: type: QUANTITY value: 0.0 mm Base.y: type: QUANTITY value: 0.0 mm Base.z: type: QUANTITY value: 0.0 mm Rotation.Angle: type: QUANTITY value: 0.0 deg Rotation.Axis.x: type: FLOAT value: 0.0 Rotation.Axis.y: type: FLOAT value: 0.0 Rotation.Axis.z: type: FLOAT value: 1.0 group: Attachment Constraints: kind: List paths: {} items: - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 2 Second: type: INT value: 1 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 1 FirstPos: type: INT value: 2 Second: type: INT value: 2 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 2 FirstPos: type: INT value: 2 Second: type: INT value: 3 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 3 FirstPos: type: INT value: 2 Second: type: INT value: 0 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Vertical Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Vertical Value: type: FLOAT value: 0.0 First: type: INT value: 2 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Horizontal Value: type: FLOAT value: 0.0 First: type: INT value: 1 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Horizontal Value: type: FLOAT value: 0.0 First: type: INT value: 3 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Equal Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 0 Second: type: INT value: -3 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Horizontal Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 1 Second: type: INT value: -3 SecondPos: type: INT value: 2 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Vertical Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 1 Second: type: INT value: -3 SecondPos: type: INT value: 2 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 3.88 First: type: INT value: 3 FirstPos: type: INT value: 2 Second: type: INT value: 3 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true .: type: 'NULL' expression: <>.Gap1_Width group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchGap1 group: Base MakeInternals: kind: Primitive paths: .: type: BOOL value: false group: Internal Geometry MapMode: kind: Primitive paths: .: type: STRING value: FlatFace group: Attachment MapReversed: kind: Primitive paths: .: type: BOOL value: false group: Attachment Placement: kind: Placement paths: Base.x: type: QUANTITY value: 0.0 mm Base.y: type: QUANTITY value: 0.0 mm Base.z: type: QUANTITY value: 16.0 mm Rotation.Angle: type: QUANTITY value: 0.0 deg Rotation.Axis.x: type: FLOAT value: 0.0 Rotation.Axis.y: type: FLOAT value: 0.0 Rotation.Axis.z: type: FLOAT value: 1.0 group: Base - name: Pad003 id: 3596 type_id: PartDesign::Pad properties: AllowMultiFace: kind: Primitive paths: .: type: BOOL value: true group: SketchBased AlongSketchNormal: kind: Primitive paths: .: type: BOOL value: true group: Pad FuzzyTolerance: kind: Primitive paths: .: type: FLOAT value: -1.0 group: Part Design Label: kind: Primitive paths: .: type: STRING value: PadGap1 group: Base Length: kind: Primitive paths: .: type: QUANTITY value: 4.1 mm expression: <>.Comb_Baseplate_Thickness group: Side1 Length2: kind: Primitive paths: .: type: QUANTITY value: 10.0 mm group: Side2 Midplane: kind: Primitive paths: .: type: BOOL value: false group: SketchBased Offset: kind: Primitive paths: .: type: QUANTITY value: 0.0 mm group: Side1 Offset2: kind: Primitive paths: .: type: QUANTITY value: 0.0 mm group: Side2 Profile: kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: Sketcher.SketchObject - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: '' group: SketchBased ReferenceAxis: kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: Sketcher.SketchObject - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: N_Axis group: Pad Refine: kind: Primitive paths: .: type: BOOL value: true group: Part Design Reversed: kind: Primitive paths: .: type: BOOL value: true group: SketchBased SideType: kind: Primitive paths: .: type: STRING value: One side group: Pad Suppressed: kind: Primitive paths: .: type: BOOL value: false group: Base TaperAngle: kind: Primitive paths: .: type: QUANTITY value: 0.0 deg group: Side1 TaperAngle2: kind: Primitive paths: .: type: QUANTITY value: 0.0 deg group: Side2 Type: kind: Primitive paths: .: type: STRING value: Length group: Side1 Type2: kind: Primitive paths: .: type: STRING value: Length group: Side2 UpToFace: kind: Primitive paths: .: type: 'NULL' group: Side1 UpToFace2: kind: Primitive paths: .: type: 'NULL' group: Side2 UseCustomVector: kind: Primitive paths: .: type: BOOL value: false group: Pad - name: Sketch004 id: 3597 type_id: Sketcher::SketchObject properties: ArcFitTolerance: kind: Primitive paths: .: type: FLOAT value: 1.0e-06 group: Sketch AttacherEngine: kind: Primitive paths: .: type: STRING value: Engine Plane group: Attachment AttachmentOffset: kind: Placement paths: Base.x: type: QUANTITY value: 0.0 mm Base.y: type: QUANTITY value: 0.0 mm Base.z: type: QUANTITY value: 0.0 mm Rotation.Angle: type: QUANTITY value: 0.0 deg Rotation.Axis.x: type: FLOAT value: 0.0 Rotation.Axis.y: type: FLOAT value: 0.0 Rotation.Axis.z: type: FLOAT value: 1.0 group: Attachment Constraints: kind: List paths: {} items: - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 2 Second: type: INT value: 1 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 1 FirstPos: type: INT value: 2 Second: type: INT value: 2 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 2 FirstPos: type: INT value: 2 Second: type: INT value: 3 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 3 FirstPos: type: INT value: 2 Second: type: INT value: 0 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Vertical Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Vertical Value: type: FLOAT value: 0.0 First: type: INT value: 2 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Horizontal Value: type: FLOAT value: 0.0 First: type: INT value: 1 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Horizontal Value: type: FLOAT value: 0.0 First: type: INT value: 3 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Equal Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 0 Second: type: INT value: -3 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 1 Second: type: INT value: -3 SecondPos: type: INT value: 2 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 8.0 First: type: INT value: 3 FirstPos: type: INT value: 2 Second: type: INT value: 3 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true .: type: 'NULL' expression: <>.Comb2_Width group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchComb2 group: Base MakeInternals: kind: Primitive paths: .: type: BOOL value: false group: Internal Geometry MapMode: kind: Primitive paths: .: type: STRING value: FlatFace group: Attachment MapReversed: kind: Primitive paths: .: type: BOOL value: false group: Attachment Placement: kind: Placement paths: Base.x: type: QUANTITY value: 0.0 mm Base.y: type: QUANTITY value: 0.0 mm Base.z: type: QUANTITY value: 16.0 mm Rotation.Angle: type: QUANTITY value: 0.0 deg Rotation.Axis.x: type: FLOAT value: 0.0 Rotation.Axis.y: type: FLOAT value: 0.0 Rotation.Axis.z: type: FLOAT value: 1.0 group: Base - name: Pad004 id: 3598 type_id: PartDesign::Pad properties: AllowMultiFace: kind: Primitive paths: .: type: BOOL value: true group: SketchBased AlongSketchNormal: kind: Primitive paths: .: type: BOOL value: true group: Pad FuzzyTolerance: kind: Primitive paths: .: type: FLOAT value: -1.0 group: Part Design Label: kind: Primitive paths: .: type: STRING value: PadComb2 group: Base Length: kind: Primitive paths: .: type: QUANTITY value: 12.9 mm expression: <>.Comb2_Height group: Side1 Length2: kind: Primitive paths: .: type: QUANTITY value: 10.0 mm group: Side2 Midplane: kind: Primitive paths: .: type: BOOL value: false group: SketchBased Offset: kind: Primitive paths: .: type: QUANTITY value: 0.0 mm group: Side1 Offset2: kind: Primitive paths: .: type: QUANTITY value: 0.0 mm group: Side2 Profile: kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: Sketcher.SketchObject - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: '' group: SketchBased ReferenceAxis: kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: Sketcher.SketchObject - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: N_Axis group: Pad Refine: kind: Primitive paths: .: type: BOOL value: true group: Part Design Reversed: kind: Primitive paths: .: type: BOOL value: true group: SketchBased SideType: kind: Primitive paths: .: type: STRING value: One side group: Pad Suppressed: kind: Primitive paths: .: type: BOOL value: false group: Base TaperAngle: kind: Primitive paths: .: type: QUANTITY value: 0.0 deg group: Side1 TaperAngle2: kind: Primitive paths: .: type: QUANTITY value: 0.0 deg group: Side2 Type: kind: Primitive paths: .: type: STRING value: Length group: Side1 Type2: kind: Primitive paths: .: type: STRING value: Length group: Side2 UpToFace: kind: Primitive paths: .: type: 'NULL' group: Side1 UpToFace2: kind: Primitive paths: .: type: 'NULL' group: Side2 UseCustomVector: kind: Primitive paths: .: type: BOOL value: false group: Pad - name: Sketch005 id: 3599 type_id: Sketcher::SketchObject properties: ArcFitTolerance: kind: Primitive paths: .: type: FLOAT value: 1.0e-06 group: Sketch AttacherEngine: kind: Primitive paths: .: type: STRING value: Engine Plane group: Attachment AttachmentOffset: kind: Placement paths: Base.x: type: QUANTITY value: 0.0 mm Base.y: type: QUANTITY value: 0.0 mm Base.z: type: QUANTITY value: 0.0 mm Rotation.Angle: type: QUANTITY value: 0.0 deg Rotation.Axis.x: type: FLOAT value: 0.0 Rotation.Axis.y: type: FLOAT value: 0.0 Rotation.Axis.z: type: FLOAT value: 1.0 group: Attachment Constraints: kind: List paths: {} items: - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 2 Second: type: INT value: 1 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 1 FirstPos: type: INT value: 2 Second: type: INT value: 2 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 2 FirstPos: type: INT value: 2 Second: type: INT value: 3 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 3 FirstPos: type: INT value: 2 Second: type: INT value: 0 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Vertical Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Vertical Value: type: FLOAT value: 0.0 First: type: INT value: 2 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Horizontal Value: type: FLOAT value: 0.0 First: type: INT value: 1 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Horizontal Value: type: FLOAT value: 0.0 First: type: INT value: 3 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Equal Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 0 Second: type: INT value: -3 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 1 Second: type: INT value: -3 SecondPos: type: INT value: 2 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 7.3 First: type: INT value: 1 FirstPos: type: INT value: 1 Second: type: INT value: 1 SecondPos: type: INT value: 2 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true .: type: 'NULL' expression: <>.Gap2_Width group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchGap2 group: Base MakeInternals: kind: Primitive paths: .: type: BOOL value: false group: Internal Geometry MapMode: kind: Primitive paths: .: type: STRING value: FlatFace group: Attachment MapReversed: kind: Primitive paths: .: type: BOOL value: false group: Attachment Placement: kind: Placement paths: Base.x: type: QUANTITY value: 0.0 mm Base.y: type: QUANTITY value: 0.0 mm Base.z: type: QUANTITY value: 16.0 mm Rotation.Angle: type: QUANTITY value: 0.0 deg Rotation.Axis.x: type: FLOAT value: 0.0 Rotation.Axis.y: type: FLOAT value: 0.0 Rotation.Axis.z: type: FLOAT value: 1.0 group: Base - name: Pad005 id: 3600 type_id: PartDesign::Pad properties: AllowMultiFace: kind: Primitive paths: .: type: BOOL value: true group: SketchBased AlongSketchNormal: kind: Primitive paths: .: type: BOOL value: true group: Pad FuzzyTolerance: kind: Primitive paths: .: type: FLOAT value: -1.0 group: Part Design Label: kind: Primitive paths: .: type: STRING value: PadGap2 group: Base Length: kind: Primitive paths: .: type: QUANTITY value: 4.1 mm expression: <>.Comb_Baseplate_Thickness group: Side1 Length2: kind: Primitive paths: .: type: QUANTITY value: 10.0 mm group: Side2 Midplane: kind: Primitive paths: .: type: BOOL value: false group: SketchBased Offset: kind: Primitive paths: .: type: QUANTITY value: 0.0 mm group: Side1 Offset2: kind: Primitive paths: .: type: QUANTITY value: 0.0 mm group: Side2 Profile: kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: Sketcher.SketchObject - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: '' group: SketchBased ReferenceAxis: kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: Sketcher.SketchObject - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: N_Axis group: Pad Refine: kind: Primitive paths: .: type: BOOL value: true group: Part Design Reversed: kind: Primitive paths: .: type: BOOL value: true group: SketchBased SideType: kind: Primitive paths: .: type: STRING value: One side group: Pad Suppressed: kind: Primitive paths: .: type: BOOL value: false group: Base TaperAngle: kind: Primitive paths: .: type: QUANTITY value: 0.0 deg group: Side1 TaperAngle2: kind: Primitive paths: .: type: QUANTITY value: 0.0 deg group: Side2 Type: kind: Primitive paths: .: type: STRING value: Length group: Side1 Type2: kind: Primitive paths: .: type: STRING value: Length group: Side2 UpToFace: kind: Primitive paths: .: type: 'NULL' group: Side1 UpToFace2: kind: Primitive paths: .: type: 'NULL' group: Side2 UseCustomVector: kind: Primitive paths: .: type: BOOL value: false group: Pad - name: Sketch006 id: 3601 type_id: Sketcher::SketchObject properties: ArcFitTolerance: kind: Primitive paths: .: type: FLOAT value: 1.0e-06 group: Sketch AttacherEngine: kind: Primitive paths: .: type: STRING value: Engine Plane group: Attachment AttachmentOffset: kind: Placement paths: Base.x: type: QUANTITY value: 0.0 mm Base.y: type: QUANTITY value: 0.0 mm Base.z: type: QUANTITY value: 0.0 mm Rotation.Angle: type: QUANTITY value: 0.0 deg Rotation.Axis.x: type: FLOAT value: 0.0 Rotation.Axis.y: type: FLOAT value: 0.0 Rotation.Axis.z: type: FLOAT value: 1.0 group: Attachment Constraints: kind: List paths: {} items: - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 2 Second: type: INT value: 1 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 1 FirstPos: type: INT value: 2 Second: type: INT value: 2 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 2 FirstPos: type: INT value: 2 Second: type: INT value: 3 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 3 FirstPos: type: INT value: 2 Second: type: INT value: 0 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Vertical Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Vertical Value: type: FLOAT value: 0.0 First: type: INT value: 2 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Horizontal Value: type: FLOAT value: 0.0 First: type: INT value: 1 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Horizontal Value: type: FLOAT value: 0.0 First: type: INT value: 3 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Equal Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 0 Second: type: INT value: -3 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 1 Second: type: INT value: -3 SecondPos: type: INT value: 2 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 10.8 First: type: INT value: 3 FirstPos: type: INT value: 2 Second: type: INT value: 3 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true .: type: 'NULL' expression: <>.Comb3_Width group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchComb3 group: Base MakeInternals: kind: Primitive paths: .: type: BOOL value: false group: Internal Geometry MapMode: kind: Primitive paths: .: type: STRING value: FlatFace group: Attachment MapReversed: kind: Primitive paths: .: type: BOOL value: false group: Attachment Placement: kind: Placement paths: Base.x: type: QUANTITY value: 0.0 mm Base.y: type: QUANTITY value: 0.0 mm Base.z: type: QUANTITY value: 16.0 mm Rotation.Angle: type: QUANTITY value: 0.0 deg Rotation.Axis.x: type: FLOAT value: 0.0 Rotation.Axis.y: type: FLOAT value: 0.0 Rotation.Axis.z: type: FLOAT value: 1.0 group: Base - name: Pad006 id: 3602 type_id: PartDesign::Pad properties: AllowMultiFace: kind: Primitive paths: .: type: BOOL value: true group: SketchBased AlongSketchNormal: kind: Primitive paths: .: type: BOOL value: true group: Pad FuzzyTolerance: kind: Primitive paths: .: type: FLOAT value: -1.0 group: Part Design Label: kind: Primitive paths: .: type: STRING value: PadComb3 group: Base Length: kind: Primitive paths: .: type: QUANTITY value: 10.5 mm expression: <>.Comb3_Height group: Side1 Length2: kind: Primitive paths: .: type: QUANTITY value: 10.0 mm group: Side2 Midplane: kind: Primitive paths: .: type: BOOL value: false group: SketchBased Offset: kind: Primitive paths: .: type: QUANTITY value: 0.0 mm group: Side1 Offset2: kind: Primitive paths: .: type: QUANTITY value: 0.0 mm group: Side2 Profile: kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: Sketcher.SketchObject - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: '' group: SketchBased ReferenceAxis: kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: Sketcher.SketchObject - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: N_Axis group: Pad Refine: kind: Primitive paths: .: type: BOOL value: true group: Part Design Reversed: kind: Primitive paths: .: type: BOOL value: true group: SketchBased SideType: kind: Primitive paths: .: type: STRING value: One side group: Pad Suppressed: kind: Primitive paths: .: type: BOOL value: false group: Base TaperAngle: kind: Primitive paths: .: type: QUANTITY value: 0.0 deg group: Side1 TaperAngle2: kind: Primitive paths: .: type: QUANTITY value: 0.0 deg group: Side2 Type: kind: Primitive paths: .: type: STRING value: Length group: Side1 Type2: kind: Primitive paths: .: type: STRING value: Length group: Side2 UpToFace: kind: Primitive paths: .: type: 'NULL' group: Side1 UpToFace2: kind: Primitive paths: .: type: 'NULL' group: Side2 UseCustomVector: kind: Primitive paths: .: type: BOOL value: false group: Pad - name: Sketch007 id: 3607 type_id: Sketcher::SketchObject properties: ArcFitTolerance: kind: Primitive paths: .: type: FLOAT value: 1.0e-06 group: Sketch AttacherEngine: kind: Primitive paths: .: type: STRING value: Engine Plane group: Attachment AttachmentOffset: kind: Placement paths: Base.x: type: QUANTITY value: 0.0 mm Base.y: type: QUANTITY value: 0.0 mm Base.z: type: QUANTITY value: 0.0 mm Rotation.Angle: type: QUANTITY value: 0.0 deg Rotation.Axis.x: type: FLOAT value: 0.0 Rotation.Axis.y: type: FLOAT value: 0.0 Rotation.Axis.z: type: FLOAT value: 1.0 group: Attachment Constraints: kind: List paths: {} items: - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 5.0 First: type: INT value: 0 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 42.5 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 0 SecondPos: type: INT value: 3 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true .: type: 'NULL' expression: <>.Baseplate_Bolt_Location / 2 - kind: Constraint paths: Type: type: STRING value: DistanceY Value: type: FLOAT value: 42.5 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 0 SecondPos: type: INT value: 3 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true .: type: 'NULL' expression: <>.Baseplate_Bolt_Location / 2 group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchBoltHole group: Base MakeInternals: kind: Primitive paths: .: type: BOOL value: false group: Internal Geometry MapMode: kind: Primitive paths: .: type: STRING value: FlatFace group: Attachment MapReversed: kind: Primitive paths: .: type: BOOL value: false group: Attachment Placement: kind: Placement paths: Base.x: type: QUANTITY value: 0.0 mm Base.y: type: QUANTITY value: 0.0 mm Base.z: type: QUANTITY value: 0.0 mm Rotation.Angle: type: QUANTITY value: 180.0 deg Rotation.Axis.x: type: FLOAT value: 1.0 Rotation.Axis.y: type: FLOAT value: 0.0 Rotation.Axis.z: type: FLOAT value: 0.0 group: Base - name: Hole id: 3608 type_id: PartDesign::Hole properties: AllowMultiFace: kind: Primitive paths: .: type: BOOL value: true group: SketchBased BaseProfileType: kind: Primitive paths: .: type: INT value: 6 group: Hole CustomThreadClearance: kind: Primitive paths: .: type: QUANTITY value: 0.0 mm group: Hole Depth: kind: Primitive paths: .: type: QUANTITY value: 523.5959381879916 mm group: Hole DepthType: kind: Primitive paths: .: type: STRING value: ThroughAll group: Hole Diameter: kind: Primitive paths: .: type: QUANTITY value: 4.8 mm group: Hole DrillForDepth: kind: Primitive paths: .: type: BOOL value: false group: Hole DrillPoint: kind: Primitive paths: .: type: STRING value: Angled group: Hole DrillPointAngle: kind: Primitive paths: .: type: QUANTITY value: 118.0 deg group: Hole FuzzyTolerance: kind: Primitive paths: .: type: FLOAT value: -1.0 group: Part Design HoleCutCountersinkAngle: kind: Primitive paths: .: type: QUANTITY value: 90.0 deg group: Hole HoleCutCustomValues: kind: Primitive paths: .: type: BOOL value: false group: Hole HoleCutDepth: kind: Primitive paths: .: type: QUANTITY value: 6.000000000000001 mm group: Hole HoleCutDiameter: kind: Primitive paths: .: type: QUANTITY value: 12.0 mm group: Hole HoleCutType: kind: Primitive paths: .: type: STRING value: Countersink group: Hole Label: kind: Primitive paths: .: type: STRING value: HoleBoltHole group: Base Midplane: kind: Primitive paths: .: type: BOOL value: false group: SketchBased ModelThread: kind: Primitive paths: .: type: BOOL value: false group: Hole Profile: kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: Sketcher.SketchObject - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: '' group: SketchBased Refine: kind: Primitive paths: .: type: BOOL value: true group: Part Design Reversed: kind: Primitive paths: .: type: BOOL value: false group: SketchBased Suppressed: kind: Primitive paths: .: type: BOOL value: false group: Base Tapered: kind: Primitive paths: .: type: BOOL value: false group: Hole TaperedAngle: kind: Primitive paths: .: type: QUANTITY value: 90.0 deg group: Hole ThreadClass: kind: Primitive paths: .: type: STRING value: 4G group: Hole ThreadDepth: kind: Primitive paths: .: type: QUANTITY value: 523.5959381879916 mm group: Hole ThreadDepthType: kind: Primitive paths: .: type: STRING value: Hole Depth group: Hole ThreadDiameter: kind: Primitive paths: .: type: QUANTITY value: 4.0 mm group: Hole ThreadDirection: kind: Primitive paths: .: type: STRING value: Right group: Hole ThreadFit: kind: Primitive paths: .: type: STRING value: Coarse group: Hole ThreadSize: kind: Primitive paths: .: type: STRING value: M4x0.5 group: Hole ThreadType: kind: Primitive paths: .: type: STRING value: ISOMetricFineProfile group: Hole Threaded: kind: Primitive paths: .: type: BOOL value: false group: Hole UpToFace: kind: Primitive paths: .: type: 'NULL' group: Side1 UpToFace2: kind: Primitive paths: .: type: 'NULL' group: Side2 UseCustomThreadClearance: kind: Primitive paths: .: type: BOOL value: false group: Hole - name: PolarPattern id: 3612 type_id: PartDesign::PolarPattern properties: Angle: kind: Primitive paths: .: type: QUANTITY value: 360.0 deg group: PolarPattern Axis: kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: Sketcher.SketchObject - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: N_Axis group: PolarPattern FuzzyTolerance: kind: Primitive paths: .: type: FLOAT value: -1.0 group: Part Design Label: kind: Primitive paths: .: type: STRING value: PolarPatternBoltHoles group: Base Mode: kind: Primitive paths: .: type: STRING value: Extent group: PolarPattern Occurrences: kind: Primitive paths: .: type: INT value: 4 group: PolarPattern Offset: kind: Primitive paths: .: type: QUANTITY value: 120.0 deg group: PolarPattern Refine: kind: Primitive paths: .: type: BOOL value: true group: Part Design Reversed: kind: Primitive paths: .: type: BOOL value: false group: PolarPattern Suppressed: kind: Primitive paths: .: type: BOOL value: false group: Base TransformMode: kind: Primitive paths: .: type: STRING value: Features group: Base - name: Sketch009 id: 3647 type_id: Sketcher::SketchObject properties: ArcFitTolerance: kind: Primitive paths: .: type: FLOAT value: 1.0e-06 group: Sketch AttacherEngine: kind: Primitive paths: .: type: STRING value: Engine Plane group: Attachment Constraints: kind: List paths: {} items: - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 0.0 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 0 SecondPos: type: INT value: 3 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: DistanceY Value: type: FLOAT value: 80.0 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 0 SecondPos: type: INT value: 3 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true .: type: 'NULL' expression: <>.Baseplate_OD / 2 - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 3.0 First: type: INT value: 0 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true .: type: 'NULL' expression: <>.Alignmet_Mark_Diam group: Sketch Label: kind: Primitive paths: .: type: STRING value: Sketch009 group: Base MakeInternals: kind: Primitive paths: .: type: BOOL value: false group: Internal Geometry MapMode: kind: Primitive paths: .: type: STRING value: FlatFace group: Attachment Placement: kind: Placement paths: Base.x: type: QUANTITY value: 0.0 mm Base.y: type: QUANTITY value: 0.0 mm Base.z: type: QUANTITY value: 3.4 mm Rotation.Angle: type: QUANTITY value: 0.0 deg Rotation.Axis.x: type: FLOAT value: 0.0 Rotation.Axis.y: type: FLOAT value: 0.0 Rotation.Axis.z: type: FLOAT value: 1.0 group: Base - name: Pocket id: 3648 type_id: PartDesign::Pocket properties: AllowMultiFace: kind: Primitive paths: .: type: BOOL value: true group: SketchBased AlongSketchNormal: kind: Primitive paths: .: type: BOOL value: true group: Pocket FuzzyTolerance: kind: Primitive paths: .: type: FLOAT value: -1.0 group: Part Design Label: kind: Primitive paths: .: type: STRING value: PocketAlignmentMark group: Base Length: kind: Primitive paths: .: type: QUANTITY value: 5.0 mm group: Side1 Length2: kind: Primitive paths: .: type: QUANTITY value: 5.0 mm group: Side2 Midplane: kind: Primitive paths: .: type: BOOL value: false group: SketchBased Offset: kind: Primitive paths: .: type: QUANTITY value: 0.0 mm group: Side1 Offset2: kind: Primitive paths: .: type: QUANTITY value: 0.0 mm group: Side2 Profile: kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: Sketcher.SketchObject - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: '' group: SketchBased ReferenceAxis: kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: Sketcher.SketchObject - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: N_Axis group: Pocket Refine: kind: Primitive paths: .: type: BOOL value: true group: Part Design Reversed: kind: Primitive paths: .: type: BOOL value: false group: SketchBased SideType: kind: Primitive paths: .: type: STRING value: One side group: Pocket Suppressed: kind: Primitive paths: .: type: BOOL value: false group: Base TaperAngle: kind: Primitive paths: .: type: QUANTITY value: 0.0 deg group: Side1 TaperAngle2: kind: Primitive paths: .: type: QUANTITY value: 0.0 deg group: Side2 Type: kind: Primitive paths: .: type: STRING value: ThroughAll group: Side1 Type2: kind: Primitive paths: .: type: STRING value: Length group: Side2 UpToFace: kind: Primitive paths: .: type: 'NULL' group: Side1 UpToFace2: kind: Primitive paths: .: type: 'NULL' group: Side2 UseCustomVector: kind: Primitive paths: .: type: BOOL value: false group: Pocket - name: PolarPattern001 id: 3649 type_id: PartDesign::PolarPattern properties: Angle: kind: Primitive paths: .: type: QUANTITY value: 180.0 deg group: PolarPattern Axis: kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: Sketcher.SketchObject - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: N_Axis group: PolarPattern FuzzyTolerance: kind: Primitive paths: .: type: FLOAT value: -1.0 group: Part Design Label: kind: Primitive paths: .: type: STRING value: PolarPatternAlignmentMarks group: Base Mode: kind: Primitive paths: .: type: STRING value: Extent group: PolarPattern Occurrences: kind: Primitive paths: .: type: INT value: 3 group: PolarPattern Offset: kind: Primitive paths: .: type: QUANTITY value: 120.0 deg group: PolarPattern Refine: kind: Primitive paths: .: type: BOOL value: true group: Part Design Reversed: kind: Primitive paths: .: type: BOOL value: false group: PolarPattern Suppressed: kind: Primitive paths: .: type: BOOL value: false group: Base TransformMode: kind: Primitive paths: .: type: STRING value: Features group: Base - name: Sketch010 id: 3650 type_id: Sketcher::SketchObject properties: ArcFitTolerance: kind: Primitive paths: .: type: FLOAT value: 1.0e-06 group: Sketch AttacherEngine: kind: Primitive paths: .: type: STRING value: Engine Plane group: Attachment AttachmentOffset: kind: Placement paths: Base.x: type: QUANTITY value: 0.0 mm Base.y: type: QUANTITY value: 0.0 mm Base.z: type: QUANTITY value: 0.0 mm Rotation.Angle: type: QUANTITY value: 0.0 deg Rotation.Axis.x: type: FLOAT value: 0.0 Rotation.Axis.y: type: FLOAT value: 0.0 Rotation.Axis.z: type: FLOAT value: 1.0 group: Attachment Constraints: kind: List paths: {} items: - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 11.0 First: type: INT value: 0 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true .: type: 'NULL' expression: <>.TemplateGuideCutout_Width - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 0.0 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 0 SecondPos: type: INT value: 3 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: DistanceY Value: type: FLOAT value: 37.75 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 0 SecondPos: type: INT value: 3 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true .: type: 'NULL' expression: <>.TemplateGuideCutout_Length / 2 group: Sketch Label: kind: Primitive paths: .: type: STRING value: Sketch010 group: Base MakeInternals: kind: Primitive paths: .: type: BOOL value: false group: Internal Geometry MapMode: kind: Primitive paths: .: type: STRING value: FlatFace group: Attachment MapReversed: kind: Primitive paths: .: type: BOOL value: false group: Attachment Placement: kind: Placement paths: Base.x: type: QUANTITY value: 0.0 mm Base.y: type: QUANTITY value: 0.0 mm Base.z: type: QUANTITY value: 3.4 mm Rotation.Angle: type: QUANTITY value: 0.0 deg Rotation.Axis.x: type: FLOAT value: 0.0 Rotation.Axis.y: type: FLOAT value: 0.0 Rotation.Axis.z: type: FLOAT value: 1.0 group: Base - name: Pocket001 id: 3651 type_id: PartDesign::Pocket properties: AllowMultiFace: kind: Primitive paths: .: type: BOOL value: true group: SketchBased AlongSketchNormal: kind: Primitive paths: .: type: BOOL value: true group: Pocket FuzzyTolerance: kind: Primitive paths: .: type: FLOAT value: -1.0 group: Part Design Label: kind: Primitive paths: .: type: STRING value: PocketTemplateGuideCutout group: Base Length: kind: Primitive paths: .: type: QUANTITY value: 5.0 mm group: Side1 Length2: kind: Primitive paths: .: type: QUANTITY value: 5.0 mm group: Side2 Midplane: kind: Primitive paths: .: type: BOOL value: false group: SketchBased Offset: kind: Primitive paths: .: type: QUANTITY value: 0.0 mm group: Side1 Offset2: kind: Primitive paths: .: type: QUANTITY value: 0.0 mm group: Side2 Profile: kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: Sketcher.SketchObject - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: '' group: SketchBased ReferenceAxis: kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: Sketcher.SketchObject - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: N_Axis group: Pocket Refine: kind: Primitive paths: .: type: BOOL value: true group: Part Design Reversed: kind: Primitive paths: .: type: BOOL value: false group: SketchBased SideType: kind: Primitive paths: .: type: STRING value: One side group: Pocket Suppressed: kind: Primitive paths: .: type: BOOL value: false group: Base TaperAngle: kind: Primitive paths: .: type: QUANTITY value: 0.0 deg group: Side1 TaperAngle2: kind: Primitive paths: .: type: QUANTITY value: 0.0 deg group: Side2 Type: kind: Primitive paths: .: type: STRING value: ThroughAll group: Side1 Type2: kind: Primitive paths: .: type: STRING value: Length group: Side2 UpToFace: kind: Primitive paths: .: type: 'NULL' group: Side1 UpToFace2: kind: Primitive paths: .: type: 'NULL' group: Side2 UseCustomVector: kind: Primitive paths: .: type: BOOL value: false group: Pocket - name: PolarPattern002 id: 3652 type_id: PartDesign::PolarPattern properties: Angle: kind: Primitive paths: .: type: QUANTITY value: 360.0 deg group: PolarPattern Axis: kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: Sketcher.SketchObject - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: N_Axis group: PolarPattern FuzzyTolerance: kind: Primitive paths: .: type: FLOAT value: -1.0 group: Part Design Label: kind: Primitive paths: .: type: STRING value: PolarPatternTemplateGuideCutout group: Base Mode: kind: Primitive paths: .: type: STRING value: Extent group: PolarPattern Occurrences: kind: Primitive paths: .: type: INT value: 4 group: PolarPattern Offset: kind: Primitive paths: .: type: QUANTITY value: 120.0 deg group: PolarPattern Refine: kind: Primitive paths: .: type: BOOL value: true group: Part Design Reversed: kind: Primitive paths: .: type: BOOL value: false group: PolarPattern Suppressed: kind: Primitive paths: .: type: BOOL value: false group: Base TransformMode: kind: Primitive paths: .: type: STRING value: Features group: Base - name: Fillet id: 3653 type_id: PartDesign::Fillet properties: Base: kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: PartDesign.Feature - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: Edge3 group: Base FuzzyTolerance: kind: Primitive paths: .: type: FLOAT value: -1.0 group: Part Design Label: kind: Primitive paths: .: type: STRING value: Fillet group: Base Radius: kind: Primitive paths: .: type: QUANTITY value: 9.520000000000001 mm expression: <>.Fillet_Width group: Fillet Refine: kind: Primitive paths: .: type: BOOL value: true group: Part Design SupportTransform: kind: Primitive paths: .: type: BOOL value: false group: Base Suppressed: kind: Primitive paths: .: type: BOOL value: false group: Base UseAllEdges: kind: Primitive paths: .: type: BOOL value: false group: Fillet - name: Origin001 id: 3654 type_id: App::Point properties: Label: kind: Primitive paths: .: type: STRING value: Origin group: Base occurrences: - path: Body after: null - path: Body/DatumPlane after: Body/Pad - path: Body/Fillet after: Body/PolarPattern002 - path: Body/Hole after: Body/Pad006 - path: Body/Hole/Sketch007 after: null - path: Body/Origin after: null - path: Body/Origin/Origin001 after: Body/Origin/YZ_Plane - path: Body/Origin/XY_Plane after: Body/Origin/Z_Axis - path: Body/Origin/XZ_Plane after: Body/Origin/XY_Plane - path: Body/Origin/X_Axis after: null - path: Body/Origin/YZ_Plane after: Body/Origin/XZ_Plane - path: Body/Origin/Y_Axis after: Body/Origin/X_Axis - path: Body/Origin/Z_Axis after: Body/Origin/Y_Axis - path: Body/Pad after: Body/Origin - path: Body/Pad/Sketch after: null - path: Body/Pad002 after: Body/DatumPlane - path: Body/Pad002/Sketch002 after: null - path: Body/Pad003 after: Body/Pad002 - path: Body/Pad003/Sketch003 after: null - path: Body/Pad004 after: Body/Pad003 - path: Body/Pad004/Sketch004 after: null - path: Body/Pad005 after: Body/Pad004 - path: Body/Pad005/Sketch005 after: null - path: Body/Pad006 after: Body/Pad005 - path: Body/Pad006/Sketch006 after: null - path: Body/Pocket after: Body/PolarPattern - path: Body/Pocket/Sketch009 after: null - path: Body/Pocket001 after: Body/PolarPattern001 - path: Body/Pocket001/Sketch010 after: null - path: Body/PolarPattern after: Body/Hole - path: Body/PolarPattern001 after: Body/Pocket - path: Body/PolarPattern002 after: Body/Pocket001 - path: Spreadsheet after: Body