v: 2 timestamp: '2026-07-29T18:11:45.636546' uid: 56669b98-2554-4093-a5ac-83d03b36d3ed objects: - name: Spreadsheet id: 3291 type_id: Spreadsheet::Sheet properties: Label: kind: Primitive paths: .: type: STRING value: Spreadsheet group: Base A1: kind: Primitive paths: .: type: STRING value: General group: Base A2: kind: Primitive paths: .: type: STRING value: Depth of horizontal face group: Base B2: kind: Primitive paths: .: type: STRING value: FaceDepth group: Base C2: kind: Primitive paths: .: type: QUANTITY value: 101.6 mm Alias: type: STRING value: FaceDepth group: Base D2: kind: Primitive paths: .: type: STRING value: Width (depth) of face router rides on, front to back group: Base A3: kind: Primitive paths: .: type: STRING value: Height of clamp leg group: Base B3: kind: Primitive paths: .: type: STRING value: ClampLegH group: Base C3: kind: Primitive paths: .: type: QUANTITY value: 76.19999999999999 mm Alias: type: STRING value: ClampLegH group: Base D3: kind: Primitive paths: .: type: STRING value: Height of vertical clamping leg group: Base A4: kind: Primitive paths: .: type: STRING value: Thickness of clamp leg group: Base B4: kind: Primitive paths: .: type: STRING value: ClampLegT group: Base C4: kind: Primitive paths: .: type: QUANTITY value: 12.7 mm Alias: type: STRING value: ClampLegT group: Base D4: kind: Primitive paths: .: type: STRING value: Thickness of clamp leg (arbitrary) group: Base A5: kind: Primitive paths: .: type: STRING value: Height of alignment ridge group: Base B5: kind: Primitive paths: .: type: STRING value: AlignRidgeH group: Base C5: kind: Primitive paths: .: type: QUANTITY value: 10.16 mm Alias: type: STRING value: AlignRidgeH group: Base D5: kind: Primitive paths: .: type: STRING value: Height of alignment ridge (arbitrary) group: Base A6: kind: Primitive paths: .: type: STRING value: Length of alignment ridge group: Base B6: kind: Primitive paths: .: type: STRING value: AlignRidgeL group: Base C6: kind: Primitive paths: .: type: QUANTITY value: 19.049999999999997 mm Alias: type: STRING value: AlignRidgeL group: Base D6: kind: Primitive paths: .: type: STRING value: 'Calculated: Length of alignment ridge (same as board thickness)' group: Base A7: kind: Primitive paths: .: type: STRING value: Thickness of alignment ridge group: Base B7: kind: Primitive paths: .: type: STRING value: AlignRidgeT group: Base C7: kind: Primitive paths: .: type: QUANTITY value: 6.35 mm Alias: type: STRING value: AlignRidgeT group: Base D7: kind: Primitive paths: .: type: STRING value: Thickness of alignment ridge (arbitrary) group: Base A8: kind: Primitive paths: .: type: STRING value: Jig corner radius group: Base B8: kind: Primitive paths: .: type: STRING value: CornerRad group: Base C8: kind: Primitive paths: .: type: QUANTITY value: 5.08 mm Alias: type: STRING value: CornerRad group: Base D8: kind: Primitive paths: .: type: STRING value: Corner rounding of jig (arbitrary) group: Base A9: kind: Primitive paths: .: type: STRING value: Width of horizontal face group: Base B9: kind: Primitive paths: .: type: STRING value: FaceWidth group: Base C9: kind: Primitive paths: .: type: QUANTITY value: 290.0 mm Alias: type: STRING value: FaceWidth group: Base D9: kind: Primitive paths: .: type: STRING value: 'Calculated: Width of horizontal face' group: Base A10: kind: Primitive paths: .: type: STRING value: Diameter of scribe alignment group: Base B10: kind: Primitive paths: .: type: STRING value: ScribeDiameter group: Base C10: kind: Primitive paths: .: type: QUANTITY value: 1.0 mm Alias: type: STRING value: ScribeDiameter group: Base D10: kind: Primitive paths: .: type: STRING value: Diameter (thickness) of alignment lines inside guides group: Base A11: kind: Primitive paths: .: type: STRING value: Diameter of screw holes group: Base B11: kind: Primitive paths: .: type: STRING value: ScrewDiameter group: Base C11: kind: Primitive paths: .: type: QUANTITY value: 4.1655999999999995 mm Alias: type: STRING value: ScrewDiameter group: Base D11: kind: Primitive paths: .: type: STRING value: 'Major thread diameter of a #8 wood screw' group: Base A12: kind: Primitive paths: .: type: STRING value: Diameter of screw head group: Base B12: kind: Primitive paths: .: type: STRING value: ScrewHeadDiameter group: Base C12: kind: Primitive paths: .: type: QUANTITY value: 8.4328 mm Alias: type: STRING value: ScrewHeadDiameter group: Base D12: kind: Primitive paths: .: type: STRING value: 'Diameter of #8 wood screw head' group: Base A13: kind: Primitive paths: .: type: STRING value: Height of screw head group: Base B13: kind: Primitive paths: .: type: STRING value: ScrewHeadHeight group: Base C13: kind: Primitive paths: .: type: QUANTITY value: 2.54 mm Alias: type: STRING value: ScrewHeadHeight group: Base D13: kind: Primitive paths: .: type: STRING value: 'Height of #8 flat head wood screw head' group: Base A14: kind: Primitive paths: .: type: STRING value: Printer Maximum Width group: Base B14: kind: Primitive paths: .: type: STRING value: PrinterMaxWidth group: Base C14: kind: Primitive paths: .: type: QUANTITY value: 290.0 mm Alias: type: STRING value: PrinterMaxWidth group: Base D14: kind: Primitive paths: .: type: STRING value: Capability of printer group: Base A16: kind: Primitive paths: .: type: STRING value: Bushing group: Base A17: kind: Primitive paths: .: type: STRING value: Bushing OD per specification group: Base B17: kind: Primitive paths: .: type: STRING value: BushingOD group: Base C17: kind: Primitive paths: .: type: QUANTITY value: 15.875 mm Alias: type: STRING value: BushingOD group: Base D17: kind: Primitive paths: .: type: STRING value: Outside diameter of bushing group: Base A18: kind: Primitive paths: .: type: STRING value: Bushing Height group: Base B18: kind: Primitive paths: .: type: STRING value: BushingH group: Base C18: kind: Primitive paths: .: type: QUANTITY value: 13.096874999999999 mm Alias: type: STRING value: BushingH group: Base D18: kind: Primitive paths: .: type: STRING value: Actual height of bushing group: Base A19: kind: Primitive paths: .: type: STRING value: Baseplate Height group: Base B19: kind: Primitive paths: .: type: STRING value: RouterBaseHeight group: Base C19: kind: Primitive paths: .: type: QUANTITY value: 5.096874999999999 mm Alias: type: STRING value: RouterBaseHeight group: Base D19: kind: Primitive paths: .: type: STRING value: Thickness of router baseplate (consumes some bushing) group: Base A20: kind: Primitive paths: .: type: STRING value: Bushing Effective Height group: Base B20: kind: Primitive paths: .: type: STRING value: BushingEffH group: Base C20: kind: Primitive paths: .: type: QUANTITY value: 8.0 mm Alias: type: STRING value: BushingEffH group: Base D20: kind: Primitive paths: .: type: STRING value: 'Calculated: Distance bushing extends beneath router base' group: Base A21: kind: Primitive paths: .: type: STRING value: Bushing slip group: Base B21: kind: Primitive paths: .: type: STRING value: BushingSlip group: Base C21: kind: Primitive paths: .: type: QUANTITY value: 0.5 mm Alias: type: STRING value: BushingSlip group: Base D21: kind: Primitive paths: .: type: STRING value: Amount to oversize the slot for the bushing to allow easy fit group: Base A22: kind: Primitive paths: .: type: STRING value: Bushing OD to actually use group: Base B22: kind: Primitive paths: .: type: STRING value: BushingODwithSlip group: Base C22: kind: Primitive paths: .: type: QUANTITY value: 16.375 mm Alias: type: STRING value: BushingODwithSlip group: Base D22: kind: Primitive paths: .: type: STRING value: 'Calculated: Bushing size to use in guide' group: Base A24: kind: Primitive paths: .: type: STRING value: Board group: Base A25: kind: Primitive paths: .: type: STRING value: Board Width group: Base B25: kind: Primitive paths: .: type: STRING value: BoardW group: Base C25: kind: Primitive paths: .: type: QUANTITY value: 292.09999999999997 mm Alias: type: STRING value: BoardW group: Base D25: kind: Primitive paths: .: type: STRING value: Bookshelf side width (i.e., shelf depth) group: Base A26: kind: Primitive paths: .: type: STRING value: Board Thickness group: Base B26: kind: Primitive paths: .: type: STRING value: BoardT group: Base C26: kind: Primitive paths: .: type: QUANTITY value: 19.049999999999997 mm Alias: type: STRING value: BoardT group: Base D26: kind: Primitive paths: .: type: STRING value: Plywood thickness group: Base A27: kind: Primitive paths: .: type: STRING value: Board Centerline group: Base B27: kind: Primitive paths: .: type: STRING value: BoardCenterline group: Base C27: kind: Primitive paths: .: type: QUANTITY value: 9.524999999999999 mm Alias: type: STRING value: BoardCenterline group: Base D27: kind: Primitive paths: .: type: STRING value: Calculated group: Base A28: kind: Primitive paths: .: type: STRING value: Tenon Selected group: Base A29: kind: Primitive paths: .: type: STRING value: Tenon Height (thickness) group: Base B29: kind: Primitive paths: .: type: STRING value: TenonThickness group: Base C29: kind: Primitive paths: .: type: QUANTITY value: 5.0 mm Alias: type: STRING value: TenonThickness group: Base D29: kind: Primitive paths: .: type: STRING value: From Festool group: Base A30: kind: Primitive paths: .: type: STRING value: Tenon Width group: Base B30: kind: Primitive paths: .: type: STRING value: TenonWidth group: Base C30: kind: Primitive paths: .: type: QUANTITY value: 18.0 mm Alias: type: STRING value: TenonWidth group: Base D30: kind: Primitive paths: .: type: STRING value: From Festool group: Base A31: kind: Primitive paths: .: type: STRING value: Tenon Length group: Base B31: kind: Primitive paths: .: type: STRING value: TenonLength group: Base C31: kind: Primitive paths: .: type: QUANTITY value: 30.0 mm Alias: type: STRING value: TenonLength group: Base D31: kind: Primitive paths: .: type: STRING value: From Festool group: Base A32: kind: Primitive paths: .: type: STRING value: Mortises group: Base A33: kind: Primitive paths: .: type: STRING value: Distance from board edge group: Base B33: kind: Primitive paths: .: type: STRING value: MortiseFromEdge group: Base C33: kind: Primitive paths: .: type: QUANTITY value: 38.099999999999994 mm Alias: type: STRING value: MortiseFromEdge group: Base D33: kind: Primitive paths: .: type: STRING value: How close should the edge of the mortise be to the edge of board? group: Base A34: kind: Primitive paths: .: type: STRING value: Extra Mortise Width per side group: Base B34: kind: Primitive paths: .: type: STRING value: MortiseWidthExtra group: Base C34: kind: Primitive paths: .: type: QUANTITY value: 3.0 mm Alias: type: STRING value: MortiseWidthExtra group: Base D34: kind: Primitive paths: .: type: STRING value: Adjustment slop PER SIDE (set to zero for one of mortise pairs) group: Base A35: kind: Primitive paths: .: type: STRING value: Mortise Width, narrow group: Base B35: kind: Primitive paths: .: type: STRING value: MortiseW_N group: Base C35: kind: Primitive paths: .: type: QUANTITY value: 18.0 mm Alias: type: STRING value: MortiseW_N group: Base D35: kind: Primitive paths: .: type: STRING value: Calculated for narrow (tight) mortise group: Base A36: kind: Primitive paths: .: type: STRING value: Mortise Width, wide group: Base B36: kind: Primitive paths: .: type: STRING value: MortiseW_W group: Base C36: kind: Primitive paths: .: type: QUANTITY value: 24.0 mm Alias: type: STRING value: MortiseW_W group: Base D36: kind: Primitive paths: .: type: STRING value: Calculated for wide ("sloppy") mortise group: Base A37: kind: Primitive paths: .: type: STRING value: Mortise Width to use group: Base B37: kind: Primitive paths: .: type: STRING value: UNUSEDMortiseW group: Base C37: kind: Primitive paths: .: type: QUANTITY value: 18.0 mm Alias: type: STRING value: UNUSEDMortiseW group: Base D37: kind: Primitive paths: .: type: STRING value: 'UNUSED: Which mortise width to use?' group: Base A38: kind: Primitive paths: .: type: STRING value: Minimum spacing group: Base B38: kind: Primitive paths: .: type: STRING value: MortiseMinSpacing group: Base C38: kind: Primitive paths: .: type: QUANTITY value: 25.4 mm Alias: type: STRING value: MortiseMiinSpacing group: Base D38: kind: Primitive paths: .: type: STRING value: Minimum distance between mortises (edge to edge) group: Base A39: kind: Primitive paths: .: type: STRING value: Mortise Depth group: Base B39: kind: Primitive paths: .: type: STRING value: MortiseDepth group: Base C39: kind: Primitive paths: .: type: QUANTITY value: 15.0 mm Alias: type: STRING value: MortiseDepth group: Base D39: kind: Primitive paths: .: type: STRING value: Calculated; half tenon length group: Base A40: kind: Primitive paths: .: type: STRING value: Number of mortises group: Base B40: kind: Primitive paths: .: type: STRING value: MortiseCount group: Base C40: kind: Primitive paths: .: type: INT value: 4 Alias: type: STRING value: MortiseCount group: Base D40: kind: Primitive paths: .: type: STRING value: Calculated from wide mortise (applies to both narrow and wide) group: Base A41: kind: Primitive paths: .: type: STRING value: Mortise spacing group: Base B41: kind: Primitive paths: .: type: STRING value: MortiseSpacing group: Base C41: kind: Primitive paths: .: type: QUANTITY value: 71.96666666666665 mm Alias: type: STRING value: MortiseSpacing group: Base D41: kind: Primitive paths: .: type: STRING value: Calculated group: Base A42: kind: Primitive paths: .: type: STRING value: Centerline of 1st mortise (from left) group: Base B42: kind: Primitive paths: .: type: STRING value: Mortise1CL_X group: Base C42: kind: Primitive paths: .: type: QUANTITY value: 43.74999999999999 mm Alias: type: STRING value: Mortise1CL_X group: Base D42: kind: Primitive paths: .: type: STRING value: Calculated group: Base A43: kind: Primitive paths: .: type: STRING value: Center of 2nd mortise group: Base B43: kind: Primitive paths: .: type: STRING value: UNUSEDMortise2Center group: Base C43: kind: Primitive paths: .: type: QUANTITY value: 146.04999999999998 mm Alias: type: STRING value: UNUSEDMortise2Center group: Base D43: kind: Primitive paths: .: type: STRING value: Calculated group: Base A44: kind: Primitive paths: .: type: STRING value: Center of 4th mortise group: Base B44: kind: Primitive paths: .: type: STRING value: UNUSEDMortise4Center group: Base C44: kind: Primitive paths: .: type: QUANTITY value: 289.9833333333333 mm Alias: type: STRING value: UNUSEDMortise4Center group: Base D44: kind: Primitive paths: .: type: STRING value: Calculated group: Base A45: kind: Primitive paths: .: type: STRING value: Centerline of mortises (from bottom) group: Base B45: kind: Primitive paths: .: type: STRING value: MortiseCL_Y group: Base C45: kind: Primitive paths: .: type: QUANTITY value: 22.224999999999998 mm Alias: type: STRING value: MortiseCL_Y group: Base D45: kind: Primitive paths: .: type: STRING value: 'Calculated: Distance from clamp face to centerline of mortise holes' group: Base A46: kind: Primitive paths: .: type: STRING value: Bottom of mortise guide holes group: Base B46: kind: Primitive paths: .: type: STRING value: GuideHoleBottom group: Base C46: kind: Primitive paths: .: type: QUANTITY value: 14.037499999999998 mm Alias: type: STRING value: GuideHoleBottom group: Base D46: kind: Primitive paths: .: type: STRING value: 'Calculated: Distance from clamp face to bottom of mortise guide hole' group: Base A47: kind: Primitive paths: .: type: STRING value: Top of mortise guide holes group: Base B47: kind: Primitive paths: .: type: STRING value: GuideHoleTop group: Base C47: kind: Primitive paths: .: type: QUANTITY value: 30.412499999999998 mm Alias: type: STRING value: GuideHoleTop group: Base D47: kind: Primitive paths: .: type: STRING value: 'Calculated: Distance from clamp face to top of mortise guide hole' group: Base A48: kind: Primitive paths: .: type: STRING value: Left end of guide hole 1 group: Base B48: kind: Primitive paths: .: type: STRING value: GuideHole1Left group: Base C48: kind: Primitive paths: .: type: QUANTITY value: 44.449999999999996 mm Alias: type: STRING value: GuideHole1Left group: Base D48: kind: Primitive paths: .: type: STRING value: 'Calculated: Distance from left edge of jig to left edge of first guide hole' group: Base - name: Body id: 3292 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: Body Edge Mortise Jig 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: 3293 type_id: App::Origin properties: Label: kind: Primitive paths: .: type: STRING value: Origin group: Base - name: X_Axis id: 3294 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: 3295 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: 3296 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: 3297 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: 3298 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: 3299 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: Sketch001 id: 3302 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: Horizontal 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: Horizontal 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: Vertical 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: Vertical 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: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 8 FirstPos: type: INT value: 1 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: DistanceX Value: type: FLOAT value: 290.0 First: type: INT value: 8 FirstPos: type: INT value: 1 Second: type: INT value: 7 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: Spreadsheet.FaceWidth - kind: Constraint paths: Type: type: STRING value: Distance Value: type: FLOAT value: 101.6 First: type: INT value: 10 FirstPos: type: INT value: 1 Second: type: INT value: 8 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: Spreadsheet.FaceDepth - kind: Constraint paths: Type: type: STRING value: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 5 FirstPos: type: INT value: 1 Second: type: INT value: 2 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: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 5 FirstPos: type: INT value: 1 Second: type: INT value: 1 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 2 FirstPos: type: INT value: 1 Second: type: INT value: 4 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 1 FirstPos: type: INT value: 2 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: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 7 FirstPos: type: INT value: 1 Second: type: INT value: 1 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: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 7 FirstPos: type: INT value: 1 Second: type: INT value: 0 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 1 FirstPos: type: INT value: 1 Second: type: INT value: 6 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 0 FirstPos: type: INT value: 2 Second: type: INT value: 6 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: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 8 FirstPos: type: INT value: 1 Second: type: INT value: 0 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: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 8 FirstPos: type: INT value: 1 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: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 10 FirstPos: type: INT value: 1 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: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 10 FirstPos: type: INT value: 1 Second: type: INT value: 2 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 3 FirstPos: type: INT value: 1 Second: type: INT value: 9 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 2 FirstPos: type: INT value: 2 Second: type: INT value: 9 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: Radius Value: type: FLOAT value: 5.08 First: type: INT value: 9 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: Spreadsheet.CornerRad - kind: Constraint paths: Type: type: STRING value: Radius Value: type: FLOAT value: 5.08 First: type: INT value: 4 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: Spreadsheet.CornerRad - kind: Constraint paths: Type: type: STRING value: Radius Value: type: FLOAT value: 5.08 First: type: INT value: 6 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: Spreadsheet.CornerRad - kind: Constraint paths: Type: type: STRING value: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 12 FirstPos: type: INT value: 1 Second: type: INT value: 0 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: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 12 FirstPos: type: INT value: 1 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 0 FirstPos: type: INT value: 1 Second: type: INT value: 11 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 3 FirstPos: type: INT value: 2 Second: type: INT value: 11 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: Radius Value: type: FLOAT value: 5.08 First: type: INT value: 11 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 group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchHorizontalFace 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: Pad id: 3303 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: PadHorizontalFace group: Base Length: kind: Primitive paths: .: type: QUANTITY value: 8.0 mm expression: Spreadsheet.BushingEffH 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: Sketch002 id: 3304 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: 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: 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: Horizontal 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: Vertical 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: Vertical 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: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 5 FirstPos: type: INT value: 1 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: DistanceY Value: type: FLOAT value: 12.7 First: type: INT value: 5 FirstPos: type: INT value: 1 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: Spreadsheet.ClampLegT - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 290.0 First: type: INT value: 5 FirstPos: type: INT value: 1 Second: type: INT value: 7 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: Spreadsheet.FaceWidth - kind: Constraint paths: Type: type: STRING value: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 5 FirstPos: type: INT value: 1 Second: type: INT value: 0 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: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 5 FirstPos: type: INT value: 1 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 0 FirstPos: type: INT value: 1 Second: type: INT value: 4 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 3 FirstPos: type: INT value: 2 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: Radius Value: type: FLOAT value: 5.08 First: type: INT value: 4 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: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 7 FirstPos: type: INT value: 1 Second: type: INT value: 1 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: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 7 FirstPos: type: INT value: 1 Second: type: INT value: 0 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 1 FirstPos: type: INT value: 1 Second: type: INT value: 6 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 0 FirstPos: type: INT value: 2 Second: type: INT value: 6 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: Radius Value: type: FLOAT value: 5.08 First: type: INT value: 6 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 group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchVerticalClamp 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: 8.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: Pad001 id: 3305 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: PadVerticalClamp group: Base Length: kind: Primitive paths: .: type: QUANTITY value: 76.19999999999999 mm expression: Spreadsheet.ClampLegH 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: Sketch id: 3309 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: Horizontal 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: Horizontal 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: Vertical 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: Vertical 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: Symmetric Value: type: FLOAT value: 0.0 First: type: INT value: 2 FirstPos: type: INT value: 1 Second: type: INT value: 0 SecondPos: type: INT value: 1 Third: type: INT value: 4 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: 15.874999999999998 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: (Spreadsheet.AlignRidgeL - Spreadsheet.ClampLegT) / 2 + Spreadsheet.ClampLegT - kind: Constraint paths: Type: type: STRING value: DistanceY Value: type: FLOAT value: 19.049999999999997 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: Spreadsheet.AlignRidgeL - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 6.35 First: type: INT value: 0 FirstPos: type: INT value: 1 Second: type: INT value: 0 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: Spreadsheet.AlignRidgeT - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 3.175 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: Spreadsheet.AlignRidgeT / 2 group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchAlignmentRidge 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: 8.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: 3310 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: PadAlignmentRidge group: Base Length: kind: Primitive paths: .: type: QUANTITY value: 18.16 mm expression: Spreadsheet.AlignRidgeH + Spreadsheet.BushingEffH 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: 3323 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: Tangent Value: type: FLOAT value: 1.5707963267948966 First: type: INT value: 0 FirstPos: type: INT value: 1 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 0 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: Tangent Value: type: FLOAT value: 1.5707963267948966 First: type: INT value: 1 FirstPos: type: INT value: 2 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 - kind: Constraint paths: Type: type: STRING value: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 1 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: Equal Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 0 Second: type: INT value: 1 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: DistanceX Value: type: FLOAT value: 13.0 First: type: INT value: 3 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 .: type: 'NULL' expression: Spreadsheet.MortiseW_N - Spreadsheet.TenonThickness - kind: Constraint paths: Type: type: STRING value: DistanceY Value: type: FLOAT value: 22.224999999999998 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: Spreadsheet.MortiseCL_Y - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 16.375 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: Spreadsheet.BushingODwithSlip - kind: Constraint paths: Type: type: STRING value: Tangent Value: type: FLOAT value: 1.5707963267948966 First: type: INT value: 4 FirstPos: type: INT value: 1 Second: type: INT value: 6 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 4 FirstPos: type: INT value: 2 Second: type: INT value: 7 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: Tangent Value: type: FLOAT value: 1.5707963267948966 First: type: INT value: 5 FirstPos: type: INT value: 2 Second: type: INT value: 6 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 5 FirstPos: type: INT value: 1 Second: type: INT value: 7 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: Equal Value: type: FLOAT value: 0.0 First: type: INT value: 4 FirstPos: type: INT value: 0 Second: type: INT value: 5 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: 7 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: Tangent Value: type: FLOAT value: 1.5707963267948966 First: type: INT value: 8 FirstPos: type: INT value: 1 Second: type: INT value: 10 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 8 FirstPos: type: INT value: 2 Second: type: INT value: 11 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: Tangent Value: type: FLOAT value: 1.5707963267948966 First: type: INT value: 9 FirstPos: type: INT value: 2 Second: type: INT value: 10 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 9 FirstPos: type: INT value: 1 Second: type: INT value: 11 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: Equal Value: type: FLOAT value: 0.0 First: type: INT value: 8 FirstPos: type: INT value: 0 Second: type: INT value: 9 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: 11 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: Diameter Value: type: FLOAT value: 1.0 First: type: INT value: 4 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: Spreadsheet.ScribeDiameter - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 1.0 First: type: INT value: 8 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: Spreadsheet.ScribeDiameter - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 31.875 First: type: INT value: 7 FirstPos: type: INT value: 1 Second: type: INT value: 7 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: Spreadsheet.MortiseW_N + Spreadsheet.BushingOD - Spreadsheet.TenonThickness + 3 mm - kind: Constraint paths: Type: type: STRING value: DistanceY Value: type: FLOAT value: 21.724999999999998 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 4 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: Spreadsheet.MortiseCL_Y - Spreadsheet.ScribeDiameter / 2 - kind: Constraint paths: Type: type: STRING value: Symmetric Value: type: FLOAT value: 0.0 First: type: INT value: 3 FirstPos: type: INT value: 1 Second: type: INT value: 3 SecondPos: type: INT value: 2 Third: type: INT value: 12 ThirdPos: type: INT value: 1 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Symmetric Value: type: FLOAT value: 0.0 First: type: INT value: 7 FirstPos: type: INT value: 1 Second: type: INT value: 7 SecondPos: type: INT value: 2 Third: type: INT value: 13 ThirdPos: type: INT value: 1 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 0.0 First: type: INT value: 12 FirstPos: type: INT value: 1 Second: type: INT value: 13 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: Distance Value: type: FLOAT value: 19.375 First: type: INT value: 11 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: <>.BushingODwithSlip + 3 mm - kind: Constraint paths: Type: type: STRING value: Symmetric Value: type: FLOAT value: 0.0 First: type: INT value: 10 FirstPos: type: INT value: 1 Second: type: INT value: 10 SecondPos: type: INT value: 2 Third: type: INT value: 14 ThirdPos: type: INT value: 1 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: 12 FirstPos: type: INT value: 1 Second: type: INT value: 8 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: 0.0 First: type: INT value: 14 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: DistanceX Value: type: FLOAT value: 43.74999999999999 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 15 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: Spreadsheet.Mortise1CL_X - kind: Constraint paths: Type: type: STRING value: DistanceY Value: type: FLOAT value: 22.224999999999998 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 15 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: Spreadsheet.MortiseCL_Y - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 0.0 First: type: INT value: 12 FirstPos: type: INT value: 1 Second: type: INT value: 15 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 group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchMortise1 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: 8.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: Pocket id: 3324 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: PocketMortise 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: Array id: 3334 type_id: Part::FeaturePython properties: AlwaysSyncPlacement: kind: Primitive paths: .: type: BOOL value: false group: Draft ArrayType: kind: Primitive paths: .: type: STRING value: ortho group: Objects Base: kind: Unknown paths: .: type: STRING value: freecad_type: Sketcher.SketchObject group: Objects Count: kind: Primitive paths: .: type: INT value: 4 group: Objects ExpandArray: kind: Primitive paths: .: type: BOOL value: false group: Objects Fuse: kind: Primitive paths: .: type: BOOL value: false group: Objects IntervalX: kind: Vector paths: x: type: FLOAT value: 71.96666666666665 expression: Spreadsheet.MortiseSpacing y: type: FLOAT value: 0.0 z: type: FLOAT value: 0.0 group: Orthogonal array IntervalY: kind: Vector paths: x: type: FLOAT value: 0.0 y: type: FLOAT value: 100.0 z: type: FLOAT value: 0.0 group: Orthogonal array IntervalZ: kind: Vector paths: x: type: FLOAT value: 0.0 y: type: FLOAT value: 0.0 z: type: FLOAT value: 100.0 group: Orthogonal array Label: kind: Primitive paths: .: type: STRING value: Array group: Base LinkCopyOnChange: kind: Primitive paths: .: type: STRING value: Disabled group: ' Link' LinkTransform: kind: Primitive paths: .: type: BOOL value: false group: ' Link' NumberX: kind: Primitive paths: .: type: INT value: 4 group: Orthogonal array NumberY: kind: Primitive paths: .: type: INT value: 1 group: Orthogonal array NumberZ: kind: Primitive paths: .: type: INT value: 1 group: Orthogonal array 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 Proxy: kind: Unknown paths: .: type: STRING value: freecad_type: draftobjects.array.Array group: Base Scale: kind: Primitive paths: .: type: FLOAT value: 1.0 group: ' Link' - name: Binder id: 3338 type_id: PartDesign::SubShapeBinder properties: BindCopyOnChange: kind: Primitive paths: .: type: STRING value: Disabled group: Base BindMode: kind: Primitive paths: .: type: STRING value: Synchronized group: Base ClaimChildren: kind: Primitive paths: .: type: BOOL value: false group: Base Fuse: kind: Primitive paths: .: type: BOOL value: false group: Base Label: kind: Primitive paths: .: type: STRING value: Binder group: Base MakeFace: kind: Primitive paths: .: type: BOOL value: true group: Base Offset: kind: Primitive paths: .: type: FLOAT value: 0.0 group: Offsetting OffsetFill: kind: Primitive paths: .: type: BOOL value: false group: Offsetting OffsetIntersection: kind: Primitive paths: .: type: BOOL value: false group: Offsetting OffsetJoinType: kind: Primitive paths: .: type: STRING value: Arcs group: Offsetting OffsetOpenResult: kind: Primitive paths: .: type: BOOL value: false group: Offsetting PartialLoad: kind: Primitive paths: .: type: BOOL value: false 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 Refine: kind: Primitive paths: .: type: BOOL value: true group: Base Relative: kind: Primitive paths: .: type: BOOL value: true group: Base Support: kind: List paths: {} items: - kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: builtins.FeaturePython - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: '' group: Base - name: Array001 id: 3341 type_id: Part::FeaturePython properties: AlwaysSyncPlacement: kind: Primitive paths: .: type: BOOL value: false group: Draft ArrayType: kind: Primitive paths: .: type: STRING value: ortho group: Objects Base: kind: Unknown paths: .: type: STRING value: freecad_type: Sketcher.SketchObject group: Objects Count: kind: Primitive paths: .: type: INT value: 4 group: Objects ExpandArray: kind: Primitive paths: .: type: BOOL value: false group: Objects Fuse: kind: Primitive paths: .: type: BOOL value: false group: Objects IntervalX: kind: Vector paths: x: type: FLOAT value: 71.96666666666665 expression: Spreadsheet.MortiseSpacing y: type: FLOAT value: 0.0 z: type: FLOAT value: 0.0 group: Orthogonal array IntervalY: kind: Vector paths: x: type: FLOAT value: 0.0 y: type: FLOAT value: 100.0 z: type: FLOAT value: 0.0 group: Orthogonal array IntervalZ: kind: Vector paths: x: type: FLOAT value: 0.0 y: type: FLOAT value: 0.0 z: type: FLOAT value: 100.0 group: Orthogonal array Label: kind: Primitive paths: .: type: STRING value: Array001 group: Base LinkCopyOnChange: kind: Primitive paths: .: type: STRING value: Disabled group: ' Link' LinkTransform: kind: Primitive paths: .: type: BOOL value: false group: ' Link' NumberX: kind: Primitive paths: .: type: INT value: 4 expression: '4' group: Orthogonal array NumberY: kind: Primitive paths: .: type: INT value: 1 group: Orthogonal array NumberZ: kind: Primitive paths: .: type: INT value: 1 group: Orthogonal array 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 Proxy: kind: Unknown paths: .: type: STRING value: freecad_type: draftobjects.array.Array group: Base Scale: kind: Primitive paths: .: type: FLOAT value: 1.0 group: ' Link' - name: Binder001 id: 3342 type_id: PartDesign::SubShapeBinder properties: BindCopyOnChange: kind: Primitive paths: .: type: STRING value: Disabled group: Base BindMode: kind: Primitive paths: .: type: STRING value: Synchronized group: Base ClaimChildren: kind: Primitive paths: .: type: BOOL value: false group: Base Fuse: kind: Primitive paths: .: type: BOOL value: false group: Base Label: kind: Primitive paths: .: type: STRING value: Binder001 group: Base MakeFace: kind: Primitive paths: .: type: BOOL value: true group: Base Offset: kind: Primitive paths: .: type: FLOAT value: 0.0 group: Offsetting OffsetFill: kind: Primitive paths: .: type: BOOL value: false group: Offsetting OffsetIntersection: kind: Primitive paths: .: type: BOOL value: false group: Offsetting OffsetJoinType: kind: Primitive paths: .: type: STRING value: Arcs group: Offsetting OffsetOpenResult: kind: Primitive paths: .: type: BOOL value: false group: Offsetting PartialLoad: kind: Primitive paths: .: type: BOOL value: false 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 Refine: kind: Primitive paths: .: type: BOOL value: true group: Base Relative: kind: Primitive paths: .: type: BOOL value: true group: Base Support: kind: List paths: {} items: - kind: List paths: {} items: - kind: Unknown paths: .: type: STRING value: freecad_type: builtins.FeaturePython - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: '' group: Base - name: Body001 id: 3343 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: Body Flat Mortise Jig 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: Origin001 id: 3344 type_id: App::Origin properties: Label: kind: Primitive paths: .: type: STRING value: Origin001 group: Base - name: Pad003 id: 3345 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: PadHorizontalFace001 group: Base Length: kind: Primitive paths: .: type: QUANTITY value: 8.0 mm expression: Spreadsheet.BushingEffH 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: Pad005 id: 3347 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: PadAlignmentRidge001 group: Base Length: kind: Primitive paths: .: type: QUANTITY value: 18.16 mm expression: Spreadsheet.AlignRidgeH + Spreadsheet.BushingEffH 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: Pocket003 id: 3349 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: Pocket003 group: Base Length: kind: Primitive paths: .: type: QUANTITY value: 10.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: Part.Feature - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: '' group: SketchBased ReferenceAxis: kind: Primitive paths: .: type: 'NULL' 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: Sketch005 id: 3350 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: 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: Horizontal 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: Horizontal 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: Vertical 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: Vertical 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: Symmetric Value: type: FLOAT value: 0.0 First: type: INT value: 2 FirstPos: type: INT value: 1 Second: type: INT value: 0 SecondPos: type: INT value: 1 Third: type: INT value: 4 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: 50.8 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: Spreadsheet.FaceDepth / 2 - kind: Constraint paths: Type: type: STRING value: DistanceY Value: type: FLOAT value: 101.6 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: Spreadsheet.FaceDepth - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 6.35 First: type: INT value: 0 FirstPos: type: INT value: 1 Second: type: INT value: 0 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: Spreadsheet.AlignRidgeT - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 3.175 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: Spreadsheet.AlignRidgeT / 2 group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchAlignmentRidge001 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: 8.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: Sketch006 id: 3351 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: Horizontal 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: Horizontal 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: Vertical 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: Vertical 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: Coincident Value: type: FLOAT value: 0.0 First: type: INT value: 8 FirstPos: type: INT value: 1 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: DistanceX Value: type: FLOAT value: 290.0 First: type: INT value: 8 FirstPos: type: INT value: 1 Second: type: INT value: 7 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: Spreadsheet.FaceWidth - kind: Constraint paths: Type: type: STRING value: Distance Value: type: FLOAT value: 101.6 First: type: INT value: 10 FirstPos: type: INT value: 1 Second: type: INT value: 8 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: Spreadsheet.FaceDepth - kind: Constraint paths: Type: type: STRING value: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 5 FirstPos: type: INT value: 1 Second: type: INT value: 2 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: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 5 FirstPos: type: INT value: 1 Second: type: INT value: 1 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 2 FirstPos: type: INT value: 1 Second: type: INT value: 4 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 1 FirstPos: type: INT value: 2 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: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 7 FirstPos: type: INT value: 1 Second: type: INT value: 1 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: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 7 FirstPos: type: INT value: 1 Second: type: INT value: 0 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 1 FirstPos: type: INT value: 1 Second: type: INT value: 6 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 0 FirstPos: type: INT value: 2 Second: type: INT value: 6 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: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 8 FirstPos: type: INT value: 1 Second: type: INT value: 0 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: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 8 FirstPos: type: INT value: 1 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: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 10 FirstPos: type: INT value: 1 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: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 10 FirstPos: type: INT value: 1 Second: type: INT value: 2 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 3 FirstPos: type: INT value: 1 Second: type: INT value: 9 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 2 FirstPos: type: INT value: 2 Second: type: INT value: 9 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: Radius Value: type: FLOAT value: 5.08 First: type: INT value: 9 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: Spreadsheet.CornerRad - kind: Constraint paths: Type: type: STRING value: Radius Value: type: FLOAT value: 5.08 First: type: INT value: 4 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: Spreadsheet.CornerRad - kind: Constraint paths: Type: type: STRING value: Radius Value: type: FLOAT value: 5.08 First: type: INT value: 6 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: Spreadsheet.CornerRad - kind: Constraint paths: Type: type: STRING value: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 12 FirstPos: type: INT value: 1 Second: type: INT value: 0 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: PointOnObject Value: type: FLOAT value: 0.0 First: type: INT value: 12 FirstPos: type: INT value: 1 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 0 FirstPos: type: INT value: 1 Second: type: INT value: 11 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 3 FirstPos: type: INT value: 2 Second: type: INT value: 11 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: Radius Value: type: FLOAT value: 5.08 First: type: INT value: 11 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: Spreadsheet.CornerRad group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchHorizontalFace001 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: XY_Plane001 id: 3355 type_id: App::Plane properties: Label: kind: Primitive paths: .: type: STRING value: XY-plane001 group: Base Role: kind: Primitive paths: .: type: STRING value: XY_Plane group: Base - name: XZ_Plane001 id: 3356 type_id: App::Plane properties: Label: kind: Primitive paths: .: type: STRING value: XZ-plane001 group: Base Role: kind: Primitive paths: .: type: STRING value: XZ_Plane group: Base - name: X_Axis001 id: 3357 type_id: App::Line properties: Label: kind: Primitive paths: .: type: STRING value: X-axis001 group: Base Role: kind: Primitive paths: .: type: STRING value: X_Axis group: Base - name: YZ_Plane001 id: 3358 type_id: App::Plane properties: Label: kind: Primitive paths: .: type: STRING value: YZ-plane001 group: Base Role: kind: Primitive paths: .: type: STRING value: YZ_Plane group: Base - name: Y_Axis001 id: 3359 type_id: App::Line properties: Label: kind: Primitive paths: .: type: STRING value: Y-axis001 group: Base Role: kind: Primitive paths: .: type: STRING value: Y_Axis group: Base - name: Z_Axis001 id: 3360 type_id: App::Line properties: Label: kind: Primitive paths: .: type: STRING value: Z-axis001 group: Base Role: kind: Primitive paths: .: type: STRING value: Z_Axis group: Base - name: Sketch009 id: 3361 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: 8.4328 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: Spreadsheet.ScrewHeadDiameter - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 12.5664 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: Spreadsheet.AlignRidgeT + Spreadsheet.ScrewHeadDiameter / 2 + 2 mm - kind: Constraint paths: Type: type: STRING value: DistanceY Value: type: FLOAT value: 50.8 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: Spreadsheet.FaceDepth / 2 - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 8.4328 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 .: type: 'NULL' expression: Spreadsheet.ScrewHeadDiameter - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 283.7836 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 1 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: Spreadsheet.FaceWidth - Spreadsheet.ScrewHeadDiameter / 2 - 2 mm - kind: Constraint paths: Type: type: STRING value: DistanceY Value: type: FLOAT value: 50.8 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 1 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: Spreadsheet.FaceDepth / 2 group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchScrewHeads 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: 8.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: Pocket004 id: 3362 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: PocketScrewHeads group: Base Length: kind: Primitive paths: .: type: QUANTITY value: 2.54 mm expression: Spreadsheet.ScrewHeadHeight 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: 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: Pocket - name: Sketch010 id: 3363 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 3D 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: 4.1655999999999995 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: Spreadsheet.ScrewDiameter - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 12.5664 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: Spreadsheet.AlignRidgeT + Spreadsheet.ScrewHeadDiameter / 2 + 2 mm - kind: Constraint paths: Type: type: STRING value: DistanceY Value: type: FLOAT value: 50.8 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: Spreadsheet.FaceDepth / 2 - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 4.1655999999999995 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 .: type: 'NULL' expression: Spreadsheet.ScrewDiameter - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 283.7836 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 1 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: Spreadsheet.FaceWidth - Spreadsheet.ScrewHeadDiameter / 2 - 2 mm - kind: Constraint paths: Type: type: STRING value: DistanceY Value: type: FLOAT value: 50.8 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 1 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: Spreadsheet.FaceDepth / 2 group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchScrewHoles 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: 8.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: Pocket005 id: 3364 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: Pocket005 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: Sketch011 id: 3365 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 3D 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: DistanceX Value: type: FLOAT value: 16.375 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: Spreadsheet.BushingODwithSlip - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 136.8125 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 0 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: Spreadsheet.FaceWidth / 2 - Spreadsheet.BushingODwithSlip / 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: 0 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: 24.0 First: type: INT value: 0 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 .: type: 'NULL' expression: Spreadsheet.BushingEffH + Spreadsheet.TenonLength / 2 + 1 mm group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchDepthGauge 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: 8.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: Pocket006 id: 3366 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: PocketDepthGauge 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: Sketch012 id: 3369 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: Tangent Value: type: FLOAT value: 1.5707963267948966 First: type: INT value: 0 FirstPos: type: INT value: 1 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 0 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: Tangent Value: type: FLOAT value: 1.5707963267948966 First: type: INT value: 1 FirstPos: type: INT value: 2 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 - kind: Constraint paths: Type: type: STRING value: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 1 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: Equal Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 0 Second: type: INT value: 1 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: DistanceX Value: type: FLOAT value: 19.0 First: type: INT value: 3 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 .: type: 'NULL' expression: Spreadsheet.MortiseW_W - Spreadsheet.TenonThickness - kind: Constraint paths: Type: type: STRING value: DistanceY Value: type: FLOAT value: 50.8 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: Spreadsheet.FaceDepth / 2 - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 16.375 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: Spreadsheet.BushingODwithSlip - kind: Constraint paths: Type: type: STRING value: Tangent Value: type: FLOAT value: 1.5707963267948966 First: type: INT value: 4 FirstPos: type: INT value: 1 Second: type: INT value: 6 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 4 FirstPos: type: INT value: 2 Second: type: INT value: 7 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: Tangent Value: type: FLOAT value: 1.5707963267948966 First: type: INT value: 5 FirstPos: type: INT value: 2 Second: type: INT value: 6 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 5 FirstPos: type: INT value: 1 Second: type: INT value: 7 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: Equal Value: type: FLOAT value: 0.0 First: type: INT value: 4 FirstPos: type: INT value: 0 Second: type: INT value: 5 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: 7 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: Tangent Value: type: FLOAT value: 1.5707963267948966 First: type: INT value: 8 FirstPos: type: INT value: 1 Second: type: INT value: 10 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 8 FirstPos: type: INT value: 2 Second: type: INT value: 11 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: Tangent Value: type: FLOAT value: 1.5707963267948966 First: type: INT value: 9 FirstPos: type: INT value: 2 Second: type: INT value: 10 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 9 FirstPos: type: INT value: 1 Second: type: INT value: 11 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: Equal Value: type: FLOAT value: 0.0 First: type: INT value: 8 FirstPos: type: INT value: 0 Second: type: INT value: 9 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: 11 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: Diameter Value: type: FLOAT value: 1.0 First: type: INT value: 4 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: Spreadsheet.ScribeDiameter - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 1.0 First: type: INT value: 8 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: Spreadsheet.ScribeDiameter - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 37.875 First: type: INT value: 7 FirstPos: type: INT value: 1 Second: type: INT value: 7 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: Spreadsheet.MortiseW_W + Spreadsheet.BushingOD - Spreadsheet.TenonThickness + 3 mm - kind: Constraint paths: Type: type: STRING value: DistanceY Value: type: FLOAT value: 50.3 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 4 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: Spreadsheet.FaceDepth / 2 - Spreadsheet.ScribeDiameter / 2 - kind: Constraint paths: Type: type: STRING value: Symmetric Value: type: FLOAT value: 0.0 First: type: INT value: 3 FirstPos: type: INT value: 1 Second: type: INT value: 3 SecondPos: type: INT value: 2 Third: type: INT value: 12 ThirdPos: type: INT value: 1 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Symmetric Value: type: FLOAT value: 0.0 First: type: INT value: 7 FirstPos: type: INT value: 1 Second: type: INT value: 7 SecondPos: type: INT value: 2 Third: type: INT value: 13 ThirdPos: type: INT value: 1 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 0.0 First: type: INT value: 12 FirstPos: type: INT value: 1 Second: type: INT value: 13 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: Distance Value: type: FLOAT value: 19.375 First: type: INT value: 11 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: <>.BushingODwithSlip + 3 mm - kind: Constraint paths: Type: type: STRING value: Symmetric Value: type: FLOAT value: 0.0 First: type: INT value: 10 FirstPos: type: INT value: 1 Second: type: INT value: 10 SecondPos: type: INT value: 2 Third: type: INT value: 14 ThirdPos: type: INT value: 1 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: 12 FirstPos: type: INT value: 1 Second: type: INT value: 8 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: 0.0 First: type: INT value: 14 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: DistanceX Value: type: FLOAT value: 43.74999999999999 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 15 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: Spreadsheet.Mortise1CL_X - kind: Constraint paths: Type: type: STRING value: DistanceY Value: type: FLOAT value: 22.224999999999998 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 15 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: Spreadsheet.MortiseCL_Y - kind: Constraint paths: Type: type: STRING value: Vertical Value: type: FLOAT value: 0.0 First: type: INT value: 12 FirstPos: type: INT value: 1 Second: type: INT value: 15 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 group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchMortise003 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: 8.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: Pocket007 id: 3370 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: Pocket007 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: Pocket008 id: 3372 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: Pocket008 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: Part.Feature - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: '' group: SketchBased ReferenceAxis: kind: Primitive paths: .: type: 'NULL' 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: Origin002 id: 3373 type_id: App::Point properties: Label: kind: Primitive paths: .: type: STRING value: Origin group: Base - name: Origin003 id: 3374 type_id: App::Point properties: Label: kind: Primitive paths: .: type: STRING value: Origin group: Base occurrences: - path: Array after: Body - path: Array/Sketch004 after: null - path: Array001 after: Array - path: Array001/Sketch012 after: null - path: Body after: Spreadsheet - path: Body/Origin after: null - path: Body/Origin/Origin002 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/Sketch001 after: null - path: Body/Pad001 after: Body/Pad - path: Body/Pad001/Sketch002 after: null - path: Body/Pad002 after: Body/Pad001 - path: Body/Pad002/Sketch after: null - path: Body/Pocket after: Body/Pad002 - path: Body/Pocket/Sketch004 after: null - path: Body/Pocket008 after: Body/Pocket - path: Body/Pocket008/Binder after: null - path: Body001 after: Array001 - path: Body001/Origin001 after: null - path: Body001/Origin001/Origin003 after: Body001/Origin001/YZ_Plane001 - path: Body001/Origin001/XY_Plane001 after: Body001/Origin001/Z_Axis001 - path: Body001/Origin001/XZ_Plane001 after: Body001/Origin001/XY_Plane001 - path: Body001/Origin001/X_Axis001 after: null - path: Body001/Origin001/YZ_Plane001 after: Body001/Origin001/XZ_Plane001 - path: Body001/Origin001/Y_Axis001 after: Body001/Origin001/X_Axis001 - path: Body001/Origin001/Z_Axis001 after: Body001/Origin001/Y_Axis001 - path: Body001/Pad003 after: Body001/Origin001 - path: Body001/Pad003/Sketch006 after: null - path: Body001/Pad005 after: Body001/Pad003 - path: Body001/Pad005/Sketch005 after: null - path: Body001/Pocket003 after: Body001/Pad005 - path: Body001/Pocket003/Binder001 after: null - path: Body001/Pocket004 after: Body001/Pocket003 - path: Body001/Pocket004/Sketch009 after: null - path: Body001/Pocket005 after: Body001/Pocket004 - path: Body001/Pocket005/Sketch010 after: null - path: Body001/Pocket006 after: Body001/Pocket005 - path: Body001/Pocket006/Sketch011 after: null - path: Body001/Pocket007 after: Body001/Pocket006 - path: Body001/Pocket007/Sketch012 after: null - path: Spreadsheet after: null