v: 2 timestamp: '2026-07-29T18:11:43.070724' uid: 5b8917ab-82cf-4bce-b10c-44e791cb52dc 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: Router Bit Diameter group: Base B2: kind: Primitive paths: .: type: STRING value: RouterBitDiam group: Base C2: kind: Primitive paths: .: type: QUANTITY value: 7.9375 mm Alias: type: STRING value: RouterBitDiam group: Base D2: kind: Primitive paths: .: type: STRING value: Router bit being used group: Base A3: kind: Primitive paths: .: type: STRING value: Jig corner radius group: Base B3: kind: Primitive paths: .: type: STRING value: CornerRad group: Base C3: kind: Primitive paths: .: type: QUANTITY value: 3.1750000000000003 mm Alias: type: STRING value: CornerRad group: Base D3: kind: Primitive paths: .: type: STRING value: Corner rounding of jig (arbitrary) group: Base A4: kind: Primitive paths: .: type: STRING value: Diameter of scribe alignment group: Base B4: kind: Primitive paths: .: type: STRING value: ScribeDiameter group: Base C4: kind: Primitive paths: .: type: QUANTITY value: 1.0 mm Alias: type: STRING value: ScribeDiameter group: Base D4: kind: Primitive paths: .: type: STRING value: Diameter (thickness) of alignment lines inside guides group: Base A5: kind: Primitive paths: .: type: STRING value: Diameter of screw holes group: Base B5: kind: Primitive paths: .: type: STRING value: ScrewDiameter group: Base C5: kind: Primitive paths: .: type: QUANTITY value: 4.1655999999999995 mm Alias: type: STRING value: ScrewDiameter group: Base D5: kind: Primitive paths: .: type: STRING value: 'Major thread diameter of a #8 wood screw' group: Base A6: kind: Primitive paths: .: type: STRING value: Diameter of screw head group: Base B6: kind: Primitive paths: .: type: STRING value: ScrewHeadDiameter group: Base C6: kind: Primitive paths: .: type: QUANTITY value: 8.4328 mm Alias: type: STRING value: ScrewHeadDiameter group: Base D6: kind: Primitive paths: .: type: STRING value: 'Diameter of #8 wood screw head' group: Base A7: kind: Primitive paths: .: type: STRING value: Height of screw head group: Base B7: kind: Primitive paths: .: type: STRING value: ScrewHeadHeight group: Base C7: kind: Primitive paths: .: type: QUANTITY value: 2.54 mm Alias: type: STRING value: ScrewHeadHeight group: Base D7: kind: Primitive paths: .: type: STRING value: 'Height of #8 flat head wood screw head' group: Base A8: kind: Primitive paths: .: type: STRING value: Printer Maximum Width group: Base B8: kind: Primitive paths: .: type: STRING value: PrinterMaxWidth group: Base C8: kind: Primitive paths: .: type: QUANTITY value: 270.0 mm Alias: type: STRING value: PrinterMaxWidth group: Base D8: kind: Primitive paths: .: type: STRING value: Capability of printer, used for both width and length group: Base A9: kind: Primitive paths: .: type: STRING value: Plug slip group: Base B9: kind: Primitive paths: .: type: STRING value: PlugSlip group: Base C9: kind: Primitive paths: .: type: QUANTITY value: 0.3 mm Alias: type: STRING value: PlugSlip group: Base D9: kind: Primitive paths: .: type: STRING value: Diametrical gap around plug in guide hole (to allow my plugs to fit in my jig) group: Base A10: kind: Primitive paths: .: type: STRING value: Dog diameter adjustment group: Base B10: kind: Primitive paths: .: type: STRING value: DogDiamAdjustment group: Base C10: kind: Primitive paths: .: type: QUANTITY value: 0.5 mm Alias: type: STRING value: DogDiamAdjustment group: Base D10: kind: Primitive paths: .: type: STRING value: Change to guide hole diameter so commercial dogs fit well. group: Base A11: kind: Primitive paths: .: type: STRING value: Version group: Base B11: kind: Primitive paths: .: type: STRING value: Version group: Base C11: kind: Primitive paths: .: type: STRING value: R4 Alias: type: STRING value: Version group: Base A13: kind: Primitive paths: .: type: STRING value: Dog Holes group: Base A14: kind: Primitive paths: .: type: STRING value: Dog Hole Diameter group: Base B14: kind: Primitive paths: .: type: STRING value: DogHoleDiam group: Base C14: kind: Primitive paths: .: type: QUANTITY value: 19.049999999999997 mm Alias: type: STRING value: DogHoleDiam group: Base D14: kind: Primitive paths: .: type: STRING value: Typically 0.75 in for Imperial, 20 mm for metric group: Base A15: kind: Primitive paths: .: type: STRING value: Dog Hole Pitch (center to center) group: Base B15: kind: Primitive paths: .: type: STRING value: DogHolePitch group: Base C15: kind: Primitive paths: .: type: QUANTITY value: 101.6 mm Alias: type: STRING value: DogHolePitch group: Base D15: kind: Primitive paths: .: type: STRING value: Typically 3 in for Imperial, 96 mm for metric group: Base A16: kind: Primitive paths: .: type: STRING value: Dog Hole 1 - X centerline group: Base B16: kind: Primitive paths: .: type: STRING value: DogHole1X group: Base C16: kind: Primitive paths: .: type: QUANTITY value: 25.4 mm Alias: type: STRING value: DogHole1X group: Base D16: kind: Primitive paths: .: type: STRING value: 3" standard - Distance from left edge of board to center of first doghole group: Base A17: kind: Primitive paths: .: type: STRING value: Dog Hole 1 - Y centerline group: Base B17: kind: Primitive paths: .: type: STRING value: DogHole1Y group: Base C17: kind: Primitive paths: .: type: QUANTITY value: 25.4 mm Alias: type: STRING value: DogHole1Y group: Base D17: kind: Primitive paths: .: type: STRING value: Distance from front edge of board to center of first doghole group: Base A18: kind: Primitive paths: .: type: STRING value: Dog Length (workbench thickness) group: Base B18: kind: Primitive paths: .: type: STRING value: DogLength group: Base C18: kind: Primitive paths: .: type: QUANTITY value: 19.049999999999997 mm Alias: type: STRING value: DogLength group: Base D18: kind: Primitive paths: .: type: STRING value: Dog length; typically workbench thickness group: Base A20: kind: Primitive paths: .: type: STRING value: Bushing group: Base A21: kind: Primitive paths: .: type: STRING value: Bushing OD per specification group: Base B21: kind: Primitive paths: .: type: STRING value: BushingOD group: Base C21: kind: Primitive paths: .: type: QUANTITY value: 15.875 mm Alias: type: STRING value: BushingOD group: Base D21: kind: Primitive paths: .: type: STRING value: Outside diameter of bushing group: Base A22: kind: Primitive paths: .: type: STRING value: Bushing Height group: Base B22: kind: Primitive paths: .: type: STRING value: BushingH group: Base C22: kind: Primitive paths: .: type: QUANTITY value: 13.096874999999999 mm Alias: type: STRING value: BushingH group: Base D22: kind: Primitive paths: .: type: STRING value: Actual height of bushing group: Base A23: kind: Primitive paths: .: type: STRING value: Baseplate Height group: Base B23: kind: Primitive paths: .: type: STRING value: RouterBaseHeight group: Base C23: kind: Primitive paths: .: type: QUANTITY value: 5.096874999999999 mm Alias: type: STRING value: RouterBaseHeight group: Base D23: kind: Primitive paths: .: type: STRING value: Thickness of router baseplate (consumes some bushing) group: Base A25: kind: Primitive paths: .: type: STRING value: Calculated group: Base A26: kind: Primitive paths: .: type: STRING value: Jig width (left to right) group: Base B26: kind: Primitive paths: .: type: STRING value: JigWidth group: Base C26: kind: Primitive paths: .: type: QUANTITY value: 247.64999999999998 mm Alias: type: STRING value: JigWidth group: Base D26: kind: Primitive paths: .: type: STRING value: Calculated group: Base A27: kind: Primitive paths: .: type: STRING value: Jig depth (front to back) group: Base B27: kind: Primitive paths: .: type: STRING value: JigDepth group: Base C27: kind: Primitive paths: .: type: QUANTITY value: 247.64999999999998 mm Alias: type: STRING value: JigDepth group: Base D27: kind: Primitive paths: .: type: STRING value: Calculated group: Base A28: kind: Primitive paths: .: type: STRING value: Jig thickness group: Base B28: kind: Primitive paths: .: type: STRING value: JigThickness group: Base C28: kind: Primitive paths: .: type: QUANTITY value: 8.0 mm Alias: type: STRING value: JigThickness group: Base D28: kind: Primitive paths: .: type: STRING value: Calculated group: Base A29: kind: Primitive paths: .: type: STRING value: Bushing Effective Height group: Base B29: kind: Primitive paths: .: type: STRING value: BushingEffH group: Base C29: kind: Primitive paths: .: type: QUANTITY value: 8.0 mm Alias: type: STRING value: BushingEffH group: Base D29: kind: Primitive paths: .: type: STRING value: 'Calculated: Distance bushing extends beneath router base' group: Base A30: kind: Primitive paths: .: type: STRING value: Number of columns of dog holes (X) group: Base B30: kind: Primitive paths: .: type: STRING value: DogHoleColumns group: Base C30: kind: Primitive paths: .: type: INT value: 3 Alias: type: STRING value: DogHoleColumns group: Base D30: kind: Primitive paths: .: type: STRING value: Calculated group: Base A31: kind: Primitive paths: .: type: STRING value: Number of rows of dog holes (Y) group: Base B31: kind: Primitive paths: .: type: STRING value: DogHoleRows group: Base C31: kind: Primitive paths: .: type: INT value: 3 Alias: type: STRING value: DogHoleRows group: Base D31: kind: Primitive paths: .: type: STRING value: Calculated group: Base A32: kind: Primitive paths: .: type: STRING value: Guide hole diameter group: Base B32: kind: Primitive paths: .: type: STRING value: GuideHoleDiameter group: Base C32: kind: Primitive paths: .: type: QUANTITY value: 27.487499999999997 mm Alias: type: STRING value: GuideHoleDiameter group: Base D32: kind: Primitive paths: .: type: STRING value: Calculated 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 MainTemplate 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: Sketch id: 3300 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: 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: 0 FirstPos: type: INT value: 2 Second: type: INT value: 5 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 1 FirstPos: type: INT value: 1 Second: type: INT value: 5 SecondPos: type: INT value: 2 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 1 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 2 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: 2 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: 3 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: 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: 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: 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: Equal Value: type: FLOAT value: 0.0 First: type: INT value: 5 FirstPos: type: INT value: 0 Second: type: INT value: 6 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Equal Value: type: FLOAT value: 0.0 First: type: INT value: 6 FirstPos: type: INT value: 0 Second: type: INT value: 7 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: 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: 9 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: 9 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: Radius Value: type: FLOAT value: 3.1750000000000003 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 .: type: 'NULL' expression: Spreadsheet.CornerRad - kind: Constraint paths: Type: type: STRING value: DistanceY Value: type: FLOAT value: 247.64999999999998 First: type: INT value: 3 FirstPos: type: INT value: 2 Second: type: INT value: 3 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true .: type: 'NULL' expression: Spreadsheet.JigDepth - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 247.64999999999998 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.JigWidth - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 0.0 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 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 - 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: 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 group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchMain 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: 3301 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: PadMain 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: 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 Constraints: kind: List paths: {} items: - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 27.487499999999997 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.GuideHoleDiameter - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 25.4 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.DogHole1X - kind: Constraint paths: Type: type: STRING value: DistanceY Value: type: FLOAT value: 25.4 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.DogHole1Y - 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: 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: 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: Tangent Value: type: FLOAT value: 1.5707963267948966 First: type: INT value: 2 FirstPos: type: INT value: 2 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: 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: Equal Value: type: FLOAT value: 0.0 First: type: INT value: 1 FirstPos: type: INT value: 0 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: Horizontal Value: type: FLOAT value: 0.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 - kind: Constraint paths: Type: type: STRING value: Radius Value: type: FLOAT value: 0.5 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.ScribeDiameter / 2 - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 28.487499999999997 First: type: INT value: 4 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.GuideHoleDiameter + Spreadsheet.ScribeDiameter - kind: Constraint paths: Type: type: STRING value: Horizontal Value: type: FLOAT value: 0.0 First: type: INT value: 1 FirstPos: type: INT value: 3 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: 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: 5 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: 0 FirstPos: type: INT value: 3 Second: type: INT value: 5 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Tangent Value: type: FLOAT value: 1.5707963267948966 First: type: INT value: 6 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 - kind: Constraint paths: Type: type: STRING value: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 6 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: Tangent Value: type: FLOAT value: 1.5707963267948966 First: type: INT value: 7 FirstPos: type: INT value: 2 Second: type: INT value: 8 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: 7 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: Equal Value: type: FLOAT value: 0.0 First: type: INT value: 6 FirstPos: type: INT value: 0 Second: type: INT value: 7 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: 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 - kind: Constraint paths: Type: type: STRING value: DistanceY Value: type: FLOAT value: 28.487499999999997 First: type: INT value: 8 FirstPos: type: INT value: 1 Second: type: INT value: 8 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.GuideHoleDiameter + Spreadsheet.ScribeDiameter - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 1.0 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.ScribeDiameter - kind: Constraint paths: Type: type: STRING value: Symmetric Value: type: FLOAT value: 0.0 First: type: INT value: 8 FirstPos: type: INT value: 1 Second: type: INT value: 8 SecondPos: type: INT value: 2 Third: type: INT value: 10 ThirdPos: type: INT value: 1 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: 3 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: Vertical Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 3 Second: type: INT value: 7 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 group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchDogHoleGuide 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: Array id: 3308 type_id: Part::FeaturePython properties: AlwaysSyncPlacement: kind: Primitive paths: .: type: BOOL value: true 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: 9 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: 101.6 expression: Spreadsheet.DogHolePitch 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: 101.6 expression: Spreadsheet.DogHolePitch 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: 3 expression: Spreadsheet.DogHoleColumns group: Orthogonal array NumberY: kind: Primitive paths: .: type: INT value: 3 expression: Spreadsheet.DogHoleRows 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: 3309 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: Pocket id: 3311 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: PocketDogHoleGuide 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: Body001 id: 3312 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 Dog 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: 3313 type_id: App::Origin properties: Label: kind: Primitive paths: .: type: STRING value: Origin001 group: Base - name: X_Axis001 id: 3314 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: Y_Axis001 id: 3315 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: 3316 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: XY_Plane001 id: 3317 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: 3318 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: YZ_Plane001 id: 3319 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: Sketch002 id: 3320 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: 3 Second: type: INT value: -1 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 27.187499999999996 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.GuideHoleDiameter - Spreadsheet.PlugSlip group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchDogPlugPart 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: Pad001 id: 3321 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: PadDogPlugPart group: Base Length: kind: Primitive paths: .: type: QUANTITY value: 8.0 mm expression: Spreadsheet.JigThickness 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: Sketch003 id: 3322 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: 3 Second: type: INT value: -1 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 19.049999999999997 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.DogHoleDiam group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchDogDogPart 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: Pad002 id: 3323 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: PadDogDogPart group: Base Length: kind: Primitive paths: .: type: QUANTITY value: 27.049999999999997 mm expression: Spreadsheet.JigThickness + Spreadsheet.DogLength 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: Body002 id: 3324 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 Screwed Plug 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: Origin002 id: 3325 type_id: App::Origin properties: Label: kind: Primitive paths: .: type: STRING value: Origin002 group: Base - name: Pad003 id: 3326 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: PadDogPlugPart001 group: Base Length: kind: Primitive paths: .: type: QUANTITY value: 8.0 mm expression: Spreadsheet.JigThickness 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: Sketch004 id: 3328 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: 3 Second: type: INT value: -1 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 27.187499999999996 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.GuideHoleDiameter - Spreadsheet.PlugSlip group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchDogPlugPart001 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_Plane002 id: 3330 type_id: App::Plane properties: Label: kind: Primitive paths: .: type: STRING value: XY-plane002 group: Base Role: kind: Primitive paths: .: type: STRING value: XY_Plane group: Base - name: XZ_Plane002 id: 3331 type_id: App::Plane properties: Label: kind: Primitive paths: .: type: STRING value: XZ-plane002 group: Base Role: kind: Primitive paths: .: type: STRING value: XZ_Plane group: Base - name: X_Axis002 id: 3332 type_id: App::Line properties: Label: kind: Primitive paths: .: type: STRING value: X-axis002 group: Base Role: kind: Primitive paths: .: type: STRING value: X_Axis group: Base - name: YZ_Plane002 id: 3333 type_id: App::Plane properties: Label: kind: Primitive paths: .: type: STRING value: YZ-plane002 group: Base Role: kind: Primitive paths: .: type: STRING value: YZ_Plane group: Base - name: Y_Axis002 id: 3334 type_id: App::Line properties: Label: kind: Primitive paths: .: type: STRING value: Y-axis002 group: Base Role: kind: Primitive paths: .: type: STRING value: Y_Axis group: Base - name: Z_Axis002 id: 3335 type_id: App::Line properties: Label: kind: Primitive paths: .: type: STRING value: Z-axis002 group: Base Role: kind: Primitive paths: .: type: STRING value: Z_Axis group: Base - name: Sketch005 id: 3336 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: 3 Second: type: INT value: -1 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: 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 group: Sketch Label: kind: Primitive paths: .: type: STRING value: Sketch005 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: Pocket001 id: 3337 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: Pocket001 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: Sketch006 id: 3338 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: 3 Second: type: INT value: -1 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: 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 group: Sketch Label: kind: Primitive paths: .: type: STRING value: Sketch006 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: Pocket002 id: 3339 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: Pocket002 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: Edge1 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: Sketch007 id: 3340 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: 3 Second: type: INT value: -1 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: 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 group: Sketch Label: kind: Primitive paths: .: type: STRING value: Sketch007 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: Pocket003 id: 3341 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: 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: Body003 id: 3342 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: BodyTestHoleSizer 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: Origin003 id: 3343 type_id: App::Origin properties: Label: kind: Primitive paths: .: type: STRING value: Origin003 group: Base - name: X_Axis003 id: 3344 type_id: App::Line properties: Label: kind: Primitive paths: .: type: STRING value: X-axis003 group: Base Role: kind: Primitive paths: .: type: STRING value: X_Axis group: Base - name: Y_Axis003 id: 3345 type_id: App::Line properties: Label: kind: Primitive paths: .: type: STRING value: Y-axis003 group: Base Role: kind: Primitive paths: .: type: STRING value: Y_Axis group: Base - name: Z_Axis003 id: 3346 type_id: App::Line properties: Label: kind: Primitive paths: .: type: STRING value: Z-axis003 group: Base Role: kind: Primitive paths: .: type: STRING value: Z_Axis group: Base - name: XY_Plane003 id: 3347 type_id: App::Plane properties: Label: kind: Primitive paths: .: type: STRING value: XY-plane003 group: Base Role: kind: Primitive paths: .: type: STRING value: XY_Plane group: Base - name: XZ_Plane003 id: 3348 type_id: App::Plane properties: Label: kind: Primitive paths: .: type: STRING value: XZ-plane003 group: Base Role: kind: Primitive paths: .: type: STRING value: XZ_Plane group: Base - name: YZ_Plane003 id: 3349 type_id: App::Plane properties: Label: kind: Primitive paths: .: type: STRING value: YZ-plane003 group: Base Role: kind: Primitive paths: .: type: STRING value: YZ_Plane group: Base - name: Sketch008 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 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: 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: 0 FirstPos: type: INT value: 2 Second: type: INT value: 5 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 1 FirstPos: type: INT value: 1 Second: type: INT value: 5 SecondPos: type: INT value: 2 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 1 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: Tangent Value: type: FLOAT value: -1.5707963267948966 First: type: INT value: 2 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: 2 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: 3 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: 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: 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: 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: Equal Value: type: FLOAT value: 0.0 First: type: INT value: 5 FirstPos: type: INT value: 0 Second: type: INT value: 6 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Equal Value: type: FLOAT value: 0.0 First: type: INT value: 6 FirstPos: type: INT value: 0 Second: type: INT value: 7 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: 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: 9 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: 9 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: 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: 230.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 group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchMainHoleSizer 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: Pad004 id: 3351 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: Pad004 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: Sketch009 id: 3352 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: 4.1655999999999995 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.ScrewDiameter - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 27.487499999999997 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.GuideHoleDiameter - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 27.362499999999997 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.GuideHoleDiameter - Spreadsheet.DogDiamAdjustment / 4 - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 27.237499999999997 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 .: type: 'NULL' expression: Spreadsheet.GuideHoleDiameter - Spreadsheet.DogDiamAdjustment / 2 - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 27.112499999999997 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 .: type: 'NULL' expression: Spreadsheet.GuideHoleDiameter - Spreadsheet.DogDiamAdjustment * 3 / 4 - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 26.987499999999997 First: type: INT value: 5 FirstPos: type: INT value: 0 Second: type: INT value: -2000 SecondPos: type: INT value: 0 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true .: type: 'NULL' expression: Spreadsheet.GuideHoleDiameter - Spreadsheet.DogDiamAdjustment - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 4.1656 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 - kind: Constraint paths: Type: type: STRING value: Horizontal Value: type: FLOAT value: 0.0 First: type: INT value: 1 FirstPos: type: INT value: 3 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: Horizontal Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 3 Second: type: INT value: 2 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: Horizontal Value: type: FLOAT value: 0.0 First: type: INT value: 2 FirstPos: type: INT value: 3 Second: type: INT value: 3 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: Horizontal Value: type: FLOAT value: 0.0 First: type: INT value: 3 FirstPos: type: INT value: 3 Second: type: INT value: 5 SecondPos: type: INT value: 3 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Horizontal Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 3 Second: type: INT value: 6 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: Horizontal Value: type: FLOAT value: 0.0 First: type: INT value: 5 FirstPos: type: INT value: 3 Second: type: INT value: 4 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: 40.0 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 6 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: 10.0 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 6 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: 220.0 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 4 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 group: Sketch Label: kind: Primitive paths: .: type: STRING value: Sketch009 group: Base MakeInternals: kind: Primitive paths: .: type: BOOL value: false group: Internal Geometry MapMode: kind: Primitive paths: .: type: STRING value: FlatFace group: Attachment 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: 3353 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: Pocket004 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: Sketch010 id: 3354 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: DistanceY Value: type: FLOAT value: 40.0 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 0 SecondPos: type: INT value: 3 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Horizontal Value: type: FLOAT value: 0.0 First: type: INT value: 0 FirstPos: type: INT value: 3 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 - 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: 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: DistanceX Value: type: FLOAT value: 220.0 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 - kind: Constraint paths: Type: type: STRING value: DistanceX Value: type: FLOAT value: 10.0 First: type: INT value: -1 FirstPos: type: INT value: 1 Second: type: INT value: 0 SecondPos: type: INT value: 3 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true group: Sketch Label: kind: Primitive paths: .: type: STRING value: Sketch010 group: Base MakeInternals: kind: Primitive paths: .: type: BOOL value: false group: Internal Geometry MapMode: kind: Primitive paths: .: type: STRING value: FlatFace group: Attachment MapReversed: kind: Primitive paths: .: type: BOOL value: false group: Attachment Placement: kind: Placement paths: Base.x: type: QUANTITY value: 0.0 mm Base.y: type: QUANTITY value: 0.0 mm Base.z: type: QUANTITY value: 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: 3355 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: 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: Binder001 id: 3357 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: PartDesign.Body - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: Pocket003.Face3 group: Base - name: Binder002 id: 3358 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: Binder002 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: PartDesign.Body - kind: List paths: {} items: - kind: Primitive paths: .: type: STRING value: Pocket003.Face3 group: Base - name: Body004 id: 3359 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 Dog 1inchH x 1.5inchDia 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: Origin004 id: 3360 type_id: App::Origin properties: Label: kind: Primitive paths: .: type: STRING value: Origin004 group: Base - name: Pad005 id: 3361 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: PadDogAboveBenchPart group: Base Length: kind: Primitive paths: .: type: QUANTITY value: 25.4 mm expression: 1 " 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: Pad006 id: 3362 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: PadDogDogPart001 group: Base Length: kind: Primitive paths: .: type: QUANTITY value: 44.449999999999996 mm expression: 1 " + Spreadsheet.DogLength 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: Sketch011 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 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: 3 Second: type: INT value: -1 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Diameter Name: type: STRING value: ConstraintAboveBenchDiameter Value: type: FLOAT value: 38.099999999999994 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: 1.5 " group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchDogAboveBenchPart 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: Sketch012 id: 3364 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: 3 Second: type: INT value: -1 SecondPos: type: INT value: 1 Third: type: INT value: -2000 ThirdPos: type: INT value: 0 Driving: type: BOOL value: true IsActive: type: BOOL value: true - kind: Constraint paths: Type: type: STRING value: Diameter Value: type: FLOAT value: 19.049999999999997 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.DogHoleDiam group: Sketch Label: kind: Primitive paths: .: type: STRING value: SketchDogDogPart001 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_Plane004 id: 3365 type_id: App::Plane properties: Label: kind: Primitive paths: .: type: STRING value: XY-plane004 group: Base Role: kind: Primitive paths: .: type: STRING value: XY_Plane group: Base - name: XZ_Plane004 id: 3366 type_id: App::Plane properties: Label: kind: Primitive paths: .: type: STRING value: XZ-plane004 group: Base Role: kind: Primitive paths: .: type: STRING value: XZ_Plane group: Base - name: X_Axis004 id: 3367 type_id: App::Line properties: Label: kind: Primitive paths: .: type: STRING value: X-axis004 group: Base Role: kind: Primitive paths: .: type: STRING value: X_Axis group: Base - name: YZ_Plane004 id: 3368 type_id: App::Plane properties: Label: kind: Primitive paths: .: type: STRING value: YZ-plane004 group: Base Role: kind: Primitive paths: .: type: STRING value: YZ_Plane group: Base - name: Y_Axis004 id: 3369 type_id: App::Line properties: Label: kind: Primitive paths: .: type: STRING value: Y-axis004 group: Base Role: kind: Primitive paths: .: type: STRING value: Y_Axis group: Base - name: Z_Axis004 id: 3370 type_id: App::Line properties: Label: kind: Primitive paths: .: type: STRING value: Z-axis004 group: Base Role: kind: Primitive paths: .: type: STRING value: Z_Axis group: Base - name: Origin005 id: 3371 type_id: App::Point properties: Label: kind: Primitive paths: .: type: STRING value: Origin group: Base - name: Origin006 id: 3372 type_id: App::Point properties: Label: kind: Primitive paths: .: type: STRING value: Origin group: Base - name: Origin007 id: 3373 type_id: App::Point properties: Label: kind: Primitive paths: .: type: STRING value: Origin group: Base - name: Origin008 id: 3374 type_id: App::Point properties: Label: kind: Primitive paths: .: type: STRING value: Origin group: Base - name: Origin009 id: 3375 type_id: App::Point properties: Label: kind: Primitive paths: .: type: STRING value: Origin group: Base occurrences: - path: Array after: Body - path: Array/Sketch001 after: null - path: Body after: Spreadsheet - path: Body/Origin after: null - path: Body/Origin/Origin005 after: Body/Origin/YZ_Plane - path: Body/Origin/XY_Plane after: Body/Origin/Z_Axis - path: Body/Origin/XZ_Plane after: Body/Origin/XY_Plane - path: Body/Origin/X_Axis after: null - path: Body/Origin/YZ_Plane after: Body/Origin/XZ_Plane - path: Body/Origin/Y_Axis after: Body/Origin/X_Axis - path: Body/Origin/Z_Axis after: Body/Origin/Y_Axis - path: Body/Pad after: Body/Origin - path: Body/Pad/Sketch after: null - path: Body/Pocket after: Body/Sketch001 - path: Body/Pocket/Binder after: null - path: Body/Sketch001 after: Body/Pad - path: Body001 after: Array - path: Body001/Origin001 after: null - path: Body001/Origin001/Origin006 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/Pad001 after: Body001/Origin001 - path: Body001/Pad001/Sketch002 after: null - path: Body001/Pad002 after: Body001/Pad001 - path: Body001/Pad002/Sketch003 after: null - path: Body002 after: Body001 - path: Body002/Origin002 after: null - path: Body002/Origin002/Origin007 after: Body002/Origin002/YZ_Plane002 - path: Body002/Origin002/XY_Plane002 after: Body002/Origin002/Z_Axis002 - path: Body002/Origin002/XZ_Plane002 after: Body002/Origin002/XY_Plane002 - path: Body002/Origin002/X_Axis002 after: null - path: Body002/Origin002/YZ_Plane002 after: Body002/Origin002/XZ_Plane002 - path: Body002/Origin002/Y_Axis002 after: Body002/Origin002/X_Axis002 - path: Body002/Origin002/Z_Axis002 after: Body002/Origin002/Y_Axis002 - path: Body002/Pad003 after: Body002/Origin002 - path: Body002/Pad003/Sketch004 after: null - path: Body002/Pocket001 after: Body002/Pad003 - path: Body002/Pocket001/Sketch005 after: null - path: Body002/Pocket002 after: Body002/Pocket001 - path: Body002/Pocket002/Sketch006 after: null - path: Body002/Pocket003 after: Body002/Pocket002 - path: Body002/Pocket003/Sketch007 after: null - path: Body003 after: Body002 - path: Body003/Binder001 after: Body003/Pocket005 - path: Body003/Binder002 after: Body003/Binder001 - path: Body003/Origin003 after: null - path: Body003/Origin003/Origin008 after: Body003/Origin003/YZ_Plane003 - path: Body003/Origin003/XY_Plane003 after: Body003/Origin003/Z_Axis003 - path: Body003/Origin003/XZ_Plane003 after: Body003/Origin003/XY_Plane003 - path: Body003/Origin003/X_Axis003 after: null - path: Body003/Origin003/YZ_Plane003 after: Body003/Origin003/XZ_Plane003 - path: Body003/Origin003/Y_Axis003 after: Body003/Origin003/X_Axis003 - path: Body003/Origin003/Z_Axis003 after: Body003/Origin003/Y_Axis003 - path: Body003/Pad004 after: Body003/Origin003 - path: Body003/Pad004/Sketch008 after: null - path: Body003/Pocket004 after: Body003/Pad004 - path: Body003/Pocket004/Sketch009 after: null - path: Body003/Pocket005 after: Body003/Pocket004 - path: Body003/Pocket005/Sketch010 after: null - path: Body004 after: Body003 - path: Body004/Origin004 after: null - path: Body004/Origin004/Origin009 after: Body004/Origin004/YZ_Plane004 - path: Body004/Origin004/XY_Plane004 after: Body004/Origin004/Z_Axis004 - path: Body004/Origin004/XZ_Plane004 after: Body004/Origin004/XY_Plane004 - path: Body004/Origin004/X_Axis004 after: null - path: Body004/Origin004/YZ_Plane004 after: Body004/Origin004/XZ_Plane004 - path: Body004/Origin004/Y_Axis004 after: Body004/Origin004/X_Axis004 - path: Body004/Origin004/Z_Axis004 after: Body004/Origin004/Y_Axis004 - path: Body004/Pad005 after: Body004/Origin004 - path: Body004/Pad005/Sketch011 after: null - path: Body004/Pad006 after: Body004/Pad005 - path: Body004/Pad006/Sketch012 after: null - path: Spreadsheet after: null