diff --git a/Generic objects/pushpins/pushpin-model-II.fcstd b/Generic objects/pushpins/pushpin-model-II.fcstd
new file mode 100644
index 00000000..bab0f556
Binary files /dev/null and b/Generic objects/pushpins/pushpin-model-II.fcstd differ
diff --git a/Generic objects/pushpins/pushpin-model-II.step b/Generic objects/pushpins/pushpin-model-II.step
new file mode 100644
index 00000000..b5f5429c
--- /dev/null
+++ b/Generic objects/pushpins/pushpin-model-II.step	
@@ -0,0 +1,1161 @@
+ISO-10303-21;
+HEADER;
+FILE_DESCRIPTION(('FreeCAD Model'),'2;1');
+FILE_NAME(
+'/home/obijuan/develop/FreeCAD-library/Generic 
+objects/pushpins/pushpin-model-II.step','2017-03-20T09:01:33',(''),(''),
+  'Open CASCADE STEP processor 6.8','FreeCAD','Unknown');
+FILE_SCHEMA(('AUTOMOTIVE_DESIGN_CC2 { 1 2 10303 214 -1 1 5 4 }'));
+ENDSEC;
+DATA;
+#1 = APPLICATION_PROTOCOL_DEFINITION('committee draft',
+  'automotive_design',1997,#2);
+#2 = APPLICATION_CONTEXT(
+  'core data for automotive mechanical design processes');
+#3 = SHAPE_DEFINITION_REPRESENTATION(#4,#10);
+#4 = PRODUCT_DEFINITION_SHAPE('','',#5);
+#5 = PRODUCT_DEFINITION('design','',#6,#9);
+#6 = PRODUCT_DEFINITION_FORMATION('','',#7);
+#7 = PRODUCT('ASSEMBLY','ASSEMBLY','',(#8));
+#8 = MECHANICAL_CONTEXT('',#2,'mechanical');
+#9 = PRODUCT_DEFINITION_CONTEXT('part definition',#2,'design');
+#10 = SHAPE_REPRESENTATION('',(#11,#15,#19),#23);
+#11 = AXIS2_PLACEMENT_3D('',#12,#13,#14);
+#12 = CARTESIAN_POINT('',(0.,0.,0.));
+#13 = DIRECTION('',(0.,0.,1.));
+#14 = DIRECTION('',(1.,0.,-0.));
+#15 = AXIS2_PLACEMENT_3D('',#16,#17,#18);
+#16 = CARTESIAN_POINT('',(0.,0.,0.));
+#17 = DIRECTION('',(0.,-1.,2.22044604925E-16));
+#18 = DIRECTION('',(1.,0.,0.));
+#19 = AXIS2_PLACEMENT_3D('',#20,#21,#22);
+#20 = CARTESIAN_POINT('',(0.,0.,0.));
+#21 = DIRECTION('',(0.,-1.,2.22044604925E-16));
+#22 = DIRECTION('',(1.,0.,0.));
+#23 = ( GEOMETRIC_REPRESENTATION_CONTEXT(3) 
+GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#27)) GLOBAL_UNIT_ASSIGNED_CONTEXT(
+(#24,#25,#26)) REPRESENTATION_CONTEXT('Context #1',
+  '3D Context with UNIT and UNCERTAINTY') );
+#24 = ( LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.) );
+#25 = ( NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.) );
+#26 = ( NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT() );
+#27 = UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(2.E-02),#24,
+  'distance_accuracy_value','confusion accuracy');
+#28 = PRODUCT_TYPE('part',$,(#7));
+#29 = ADVANCED_BREP_SHAPE_REPRESENTATION('',(#11,#30),#609);
+#30 = MANIFOLD_SOLID_BREP('',#31);
+#31 = CLOSED_SHELL('',(#32,#186,#264,#319,#437,#472,#552,#580));
+#32 = ADVANCED_FACE('',(#33),#48,.F.);
+#33 = FACE_BOUND('',#34,.T.);
+#34 = EDGE_LOOP('',(#35,#66,#158,#159));
+#35 = ORIENTED_EDGE('',*,*,#36,.F.);
+#36 = EDGE_CURVE('',#37,#39,#41,.T.);
+#37 = VERTEX_POINT('',#38);
+#38 = CARTESIAN_POINT('',(4.744760917289,7.549449272452E-02,
+    3.030571662883E-15));
+#39 = VERTEX_POINT('',#40);
+#40 = CARTESIAN_POINT('',(1.225,0.7,-3.10862446895E-16));
+#41 = SEAM_CURVE('',#42,(#47,#59),.PCURVE_S1.);
+#42 = CIRCLE('',#43,17.178999666338);
+#43 = AXIS2_PLACEMENT_3D('',#44,#45,#46);
+#44 = CARTESIAN_POINT('',(4.680626862051E-34,-16.43526785714,
+    7.298725116353E-15));
+#45 = DIRECTION('',(-0.,4.440892098501E-16,1.));
+#46 = DIRECTION('',(1.,0.,0.));
+#47 = PCURVE('',#48,#53);
+#48 = SPHERICAL_SURFACE('',#49,17.178999666338);
+#49 = AXIS2_PLACEMENT_3D('',#50,#51,#52);
+#50 = CARTESIAN_POINT('',(4.680626862051E-34,-16.43526785714,
+    7.298725116353E-15));
+#51 = DIRECTION('',(0.,1.,-2.22044604925E-16));
+#52 = DIRECTION('',(1.,-2.817360375789E-32,-1.268826313857E-16));
+#53 = DEFINITIONAL_REPRESENTATION('',(#54),#58);
+#54 = LINE('',#55,#56);
+#55 = CARTESIAN_POINT('',(-0.,0.));
+#56 = VECTOR('',#57,1.);
+#57 = DIRECTION('',(-0.,1.));
+#58 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#59 = PCURVE('',#48,#60);
+#60 = DEFINITIONAL_REPRESENTATION('',(#61),#65);
+#61 = LINE('',#62,#63);
+#62 = CARTESIAN_POINT('',(-6.28318530718,0.));
+#63 = VECTOR('',#64,1.);
+#64 = DIRECTION('',(-0.,1.));
+#65 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#66 = ORIENTED_EDGE('',*,*,#67,.T.);
+#67 = EDGE_CURVE('',#37,#37,#68,.T.);
+#68 = SURFACE_CURVE('',#69,(#84,#108),.PCURVE_S1.);
+#69 = ( BOUNDED_CURVE() B_SPLINE_CURVE(13,(#70,#71,#72,#73,#74,#75,#76,
+    #77,#78,#79,#80,#81,#82,#83),.UNSPECIFIED.,.T.,.F.) 
+B_SPLINE_CURVE_WITH_KNOTS((14,14),(2.465629140226E-15,31.415926535898),
+.PIECEWISE_BEZIER_KNOTS.) CURVE() GEOMETRIC_REPRESENTATION_ITEM() 
+RATIONAL_B_SPLINE_CURVE((1.,1.,1.000000000001,0.999999999997,
+    1.000000000007,0.99999999999,1.000000000012,0.999999999989,
+    1.000000000008,0.999999999995,1.000000000002,0.999999999999,1.,1.)) 
+REPRESENTATION_ITEM('') );
+#70 = CARTESIAN_POINT('',(4.744760917289,7.549449272452E-02,
+    4.922277863084E-15));
+#71 = CARTESIAN_POINT('',(4.744760917291,7.549449272452E-02,
+    2.260073650726));
+#72 = CARTESIAN_POINT('',(3.576680287026,7.549449272452E-02,
+    4.572266303003));
+#73 = CARTESIAN_POINT('',(1.172933909782,7.549449272453E-02,
+    6.225582429542));
+#74 = CARTESIAN_POINT('',(-2.134926213756,7.54944927245E-02,
+    6.479500278105));
+#75 = CARTESIAN_POINT('',(-4.992523638822,7.549449272457E-02,
+    4.717326996325));
+#76 = CARTESIAN_POINT('',(-7.08827117352,7.549449272444E-02,
+    2.144947690303));
+#77 = CARTESIAN_POINT('',(-7.088271173604,7.549449272462E-02,
+    -2.144947690353));
+#78 = CARTESIAN_POINT('',(-4.992523638793,7.549449272444E-02,
+    -4.717326996236));
+#79 = CARTESIAN_POINT('',(-2.13492621374,7.549449272457E-02,
+    -6.479500278184));
+#80 = CARTESIAN_POINT('',(1.172933909755,7.54944927245E-02,
+    -6.225582429503));
+#81 = CARTESIAN_POINT('',(3.576680287041,7.549449272453E-02,
+    -4.572266303013));
+#82 = CARTESIAN_POINT('',(4.744760917288,7.549449272452E-02,
+    -2.260073650725));
+#83 = CARTESIAN_POINT('',(4.744760917289,7.549449272452E-02,
+    -8.126312123213E-15));
+#84 = PCURVE('',#48,#85);
+#85 = DEFINITIONAL_REPRESENTATION('',(#86),#107);
+#86 = B_SPLINE_CURVE_WITH_KNOTS('',10,(#87,#88,#89,#90,#91,#92,#93,#94,
+    #95,#96,#97,#98,#99,#100,#101,#102,#103,#104,#105,#106),
+  .UNSPECIFIED.,.F.,.F.,(11,9,11),(2.465629140226E-15,15.707963267949,
+    31.415926535898),.UNSPECIFIED.);
+#87 = CARTESIAN_POINT('',(8.881784197001E-16,1.290963050964));
+#88 = CARTESIAN_POINT('',(-0.309614730559,1.290963050964));
+#89 = CARTESIAN_POINT('',(-0.624015126699,1.290963050965));
+#90 = CARTESIAN_POINT('',(-0.939675481414,1.290963050964));
+#91 = CARTESIAN_POINT('',(-1.256500312754,1.290963050964));
+#92 = CARTESIAN_POINT('',(-1.570046847089,1.290963050965));
+#93 = CARTESIAN_POINT('',(-1.885252848916,1.290963050964));
+#94 = CARTESIAN_POINT('',(-2.199042564114,1.290963050965));
+#95 = CARTESIAN_POINT('',(-2.513286371135,1.290963050964));
+#96 = CARTESIAN_POINT('',(-2.827433730038,1.290963050965));
+#97 = CARTESIAN_POINT('',(-3.455751577142,1.290963050964));
+#98 = CARTESIAN_POINT('',(-3.769898936049,1.290963050965));
+#99 = CARTESIAN_POINT('',(-4.084142743043,1.290963050964));
+#100 = CARTESIAN_POINT('',(-4.397932458321,1.290963050965));
+#101 = CARTESIAN_POINT('',(-4.713138460002,1.290963050964));
+#102 = CARTESIAN_POINT('',(-5.026684994514,1.290963050965));
+#103 = CARTESIAN_POINT('',(-5.343509825708,1.290963050965));
+#104 = CARTESIAN_POINT('',(-5.659170180503,1.290963050964));
+#105 = CARTESIAN_POINT('',(-5.97357057662,1.290963050965));
+#106 = CARTESIAN_POINT('',(-6.28318530718,1.290963050964));
+#107 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#108 = PCURVE('',#109,#152);
+#109 = ( BOUNDED_SURFACE() B_SPLINE_SURFACE(2,13,(
+    (#110,#111,#112,#113,#114,#115,#116,#117,#118,#119,#120,#121,#122
+      ,#123)
+    ,(#124,#125,#126,#127,#128,#129,#130,#131,#132,#133,#134,#135,#136
+      ,#137)
+    ,(#138,#139,#140,#141,#142,#143,#144,#145,#146,#147,#148,#149,#150
+,#151
+    )),.UNSPECIFIED.,.F.,.T.,.F.) B_SPLINE_SURFACE_WITH_KNOTS((3,3),(14,
+    14),(0.,31.415926535898),(2.465629140226E-15,31.415926535898),
+.PIECEWISE_BEZIER_KNOTS.) GEOMETRIC_REPRESENTATION_ITEM() 
+RATIONAL_B_SPLINE_SURFACE((
+    (1.,1.,1.000000000001,0.999999999997,1.000000000007,0.99999999999
+      ,1.000000000012,0.999999999989,1.000000000008,0.999999999995
+      ,1.000000000002,0.999999999999,1.,1.)
+    ,(0.601583155701,0.601583155701,0.601583155702,0.601583155698
+      ,0.601583155706,0.601583155693,0.60158315571,0.601583155692
+      ,0.601583155707,0.601583155697,0.601583155703,0.6015831557
+      ,0.601583155701,0.601583155701)
+    ,(1.,1.,1.000000000001,0.999999999997,1.000000000007,0.99999999999
+      ,1.000000000012,0.999999999989,1.000000000008,0.999999999995
+,1.000000000002,0.999999999999,1.,1.
+  ))) REPRESENTATION_ITEM('') SURFACE() );
+#110 = CARTESIAN_POINT('',(4.744760917289,7.549449272452E-02,
+    4.922277863084E-15));
+#111 = CARTESIAN_POINT('',(4.744760917291,7.549449272452E-02,
+    2.260073650726));
+#112 = CARTESIAN_POINT('',(3.576680287026,7.549449272452E-02,
+    4.572266303003));
+#113 = CARTESIAN_POINT('',(1.172933909782,7.549449272453E-02,
+    6.225582429542));
+#114 = CARTESIAN_POINT('',(-2.134926213756,7.54944927245E-02,
+    6.479500278105));
+#115 = CARTESIAN_POINT('',(-4.992523638822,7.549449272457E-02,
+    4.717326996325));
+#116 = CARTESIAN_POINT('',(-7.08827117352,7.549449272444E-02,
+    2.144947690303));
+#117 = CARTESIAN_POINT('',(-7.088271173604,7.549449272462E-02,
+    -2.144947690353));
+#118 = CARTESIAN_POINT('',(-4.992523638793,7.549449272444E-02,
+    -4.717326996236));
+#119 = CARTESIAN_POINT('',(-2.13492621374,7.549449272457E-02,
+    -6.479500278184));
+#120 = CARTESIAN_POINT('',(1.172933909755,7.54944927245E-02,
+    -6.225582429503));
+#121 = CARTESIAN_POINT('',(3.576680287041,7.549449272453E-02,
+    -4.572266303013));
+#122 = CARTESIAN_POINT('',(4.744760917288,7.549449272452E-02,
+    -2.260073650725));
+#123 = CARTESIAN_POINT('',(4.744760917289,7.549449272452E-02,
+    -8.126312123213E-15));
+#124 = CARTESIAN_POINT('',(5.,2.1454614352E-03,-6.617970060852E-16));
+#125 = CARTESIAN_POINT('',(5.000000000003,2.145461435185E-03,
+    2.381651773529));
+#126 = CARTESIAN_POINT('',(3.76908378459,2.145461435278E-03,
+    4.818226231737));
+#127 = CARTESIAN_POINT('',(1.236030571652,2.145461434947E-03,
+    6.560480641777));
+#128 = CARTESIAN_POINT('',(-2.249772170802,2.145461435915E-03,
+    6.828057715703));
+#129 = CARTESIAN_POINT('',(-5.261090838763,2.145461433679E-03,
+    4.971090302097));
+#130 = CARTESIAN_POINT('',(-7.469576757485,2.145461437519E-03,
+    2.260332741397));
+#131 = CARTESIAN_POINT('',(-7.469576757572,2.145461432695E-03,
+    -2.260332741462));
+#132 = CARTESIAN_POINT('',(-5.261090838746,2.145461437111E-03,
+    -4.971090301981));
+#133 = CARTESIAN_POINT('',(-2.249772170767,2.14546143419E-03,
+    -6.828057715804));
+#134 = CARTESIAN_POINT('',(1.236030571608,2.145461435546E-03,
+    -6.560480641729));
+#135 = CARTESIAN_POINT('',(3.769083784613,2.145461435114E-03,
+    -4.81822623175));
+#136 = CARTESIAN_POINT('',(4.999999999998,2.145461435215E-03,
+    -2.381651773527));
+#137 = CARTESIAN_POINT('',(5.,2.1454614352E-03,3.305515583474E-15));
+#138 = CARTESIAN_POINT('',(5.,0.267714792748,1.169637303677E-14));
+#139 = CARTESIAN_POINT('',(5.000000000003,0.267714792748,2.381651773529)
+  );
+#140 = CARTESIAN_POINT('',(3.769083784591,0.267714792748,4.818226231738)
+  );
+#141 = CARTESIAN_POINT('',(1.236030571652,0.267714792748,6.560480641775)
+  );
+#142 = CARTESIAN_POINT('',(-2.249772170808,0.267714792748,6.828057715707
+    ));
+#143 = CARTESIAN_POINT('',(-5.261090838747,0.267714792748,4.971090302094
+    ));
+#144 = CARTESIAN_POINT('',(-7.469576757511,0.267714792749,2.260332741394
+    ));
+#145 = CARTESIAN_POINT('',(-7.469576757546,0.267714792748,
+    -2.260332741446));
+#146 = CARTESIAN_POINT('',(-5.261090838761,0.267714792749,
+    -4.971090302001));
+#147 = CARTESIAN_POINT('',(-2.249772170763,0.267714792748,
+    -6.828057715789));
+#148 = CARTESIAN_POINT('',(1.236030571609,0.267714792748,-6.560480641736
+    ));
+#149 = CARTESIAN_POINT('',(3.769083784612,0.267714792748,-4.818226231748
+    ));
+#150 = CARTESIAN_POINT('',(4.999999999998,0.267714792748,-2.381651773527
+    ));
+#151 = CARTESIAN_POINT('',(5.,0.267714792748,-5.606626274357E-15));
+#152 = DEFINITIONAL_REPRESENTATION('',(#153),#157);
+#153 = LINE('',#154,#155);
+#154 = CARTESIAN_POINT('',(0.,0.));
+#155 = VECTOR('',#156,1.);
+#156 = DIRECTION('',(0.,1.));
+#157 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#158 = ORIENTED_EDGE('',*,*,#36,.T.);
+#159 = ORIENTED_EDGE('',*,*,#160,.F.);
+#160 = EDGE_CURVE('',#39,#39,#161,.T.);
+#161 = SURFACE_CURVE('',#162,(#167,#174),.PCURVE_S1.);
+#162 = CIRCLE('',#163,1.225);
+#163 = AXIS2_PLACEMENT_3D('',#164,#165,#166);
+#164 = CARTESIAN_POINT('',(0.,0.7,-1.554312234475E-16));
+#165 = DIRECTION('',(0.,-1.,2.22044604925E-16));
+#166 = DIRECTION('',(1.,-2.817360375789E-32,-1.268826313857E-16));
+#167 = PCURVE('',#48,#168);
+#168 = DEFINITIONAL_REPRESENTATION('',(#169),#173);
+#169 = LINE('',#170,#171);
+#170 = CARTESIAN_POINT('',(-0.,1.499427762892));
+#171 = VECTOR('',#172,1.);
+#172 = DIRECTION('',(-1.,0.));
+#173 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#174 = PCURVE('',#175,#180);
+#175 = CONICAL_SURFACE('',#176,0.62,0.986617796385);
+#176 = AXIS2_PLACEMENT_3D('',#177,#178,#179);
+#177 = CARTESIAN_POINT('',(0.,0.3,-6.661338147751E-17));
+#178 = DIRECTION('',(0.,1.,-2.22044604925E-16));
+#179 = DIRECTION('',(1.,-2.385668060144E-32,-1.07440937867E-16));
+#180 = DEFINITIONAL_REPRESENTATION('',(#181),#185);
+#181 = LINE('',#182,#183);
+#182 = CARTESIAN_POINT('',(-0.,0.4));
+#183 = VECTOR('',#184,1.);
+#184 = DIRECTION('',(-1.,0.));
+#185 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#186 = ADVANCED_FACE('',(#187),#109,.T.);
+#187 = FACE_BOUND('',#188,.T.);
+#188 = EDGE_LOOP('',(#189,#210,#262,#263));
+#189 = ORIENTED_EDGE('',*,*,#190,.T.);
+#190 = EDGE_CURVE('',#37,#191,#193,.T.);
+#191 = VERTEX_POINT('',#192);
+#192 = CARTESIAN_POINT('',(5.,0.267714792748,-5.94446253884E-17));
+#193 = SEAM_CURVE('',#194,(#198,#204),.PCURVE_S1.);
+#194 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#195,#196,#197),
+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(0.,
+31.415926535898),.PIECEWISE_BEZIER_KNOTS.) CURVE() 
+GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,
+0.601583155701,1.)) REPRESENTATION_ITEM('') );
+#195 = CARTESIAN_POINT('',(4.744760917289,7.549449272452E-02,
+    4.922277863084E-15));
+#196 = CARTESIAN_POINT('',(5.,2.1454614352E-03,-6.617970060852E-16));
+#197 = CARTESIAN_POINT('',(5.,0.267714792748,1.169637303677E-14));
+#198 = PCURVE('',#109,#199);
+#199 = DEFINITIONAL_REPRESENTATION('',(#200),#203);
+#200 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#201,#202),.UNSPECIFIED.,.F.,.F.,
+  (2,2),(0.,31.415926535898),.PIECEWISE_BEZIER_KNOTS.);
+#201 = CARTESIAN_POINT('',(0.,2.465629140226E-15));
+#202 = CARTESIAN_POINT('',(31.415926535898,2.465629140226E-15));
+#203 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#204 = PCURVE('',#109,#205);
+#205 = DEFINITIONAL_REPRESENTATION('',(#206),#209);
+#206 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#207,#208),.UNSPECIFIED.,.F.,.F.,
+  (2,2),(0.,31.415926535898),.PIECEWISE_BEZIER_KNOTS.);
+#207 = CARTESIAN_POINT('',(0.,31.415926535898));
+#208 = CARTESIAN_POINT('',(31.415926535898,31.415926535898));
+#209 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#210 = ORIENTED_EDGE('',*,*,#211,.T.);
+#211 = EDGE_CURVE('',#191,#191,#212,.T.);
+#212 = SURFACE_CURVE('',#213,(#228,#235),.PCURVE_S1.);
+#213 = ( BOUNDED_CURVE() B_SPLINE_CURVE(13,(#214,#215,#216,#217,#218,
+    #219,#220,#221,#222,#223,#224,#225,#226,#227),.UNSPECIFIED.,.T.,.F.)
+ B_SPLINE_CURVE_WITH_KNOTS((14,14),(2.465629140226E-15,31.415926535898),
+.PIECEWISE_BEZIER_KNOTS.) CURVE() GEOMETRIC_REPRESENTATION_ITEM() 
+RATIONAL_B_SPLINE_CURVE((1.,1.,1.000000000001,0.999999999997,
+    1.000000000007,0.99999999999,1.000000000012,0.999999999989,
+    1.000000000008,0.999999999995,1.000000000002,0.999999999999,1.,1.)) 
+REPRESENTATION_ITEM('') );
+#214 = CARTESIAN_POINT('',(5.,0.267714792748,1.169637303677E-14));
+#215 = CARTESIAN_POINT('',(5.000000000003,0.267714792748,2.381651773529)
+  );
+#216 = CARTESIAN_POINT('',(3.769083784591,0.267714792748,4.818226231738)
+  );
+#217 = CARTESIAN_POINT('',(1.236030571652,0.267714792748,6.560480641775)
+  );
+#218 = CARTESIAN_POINT('',(-2.249772170808,0.267714792748,6.828057715707
+    ));
+#219 = CARTESIAN_POINT('',(-5.261090838747,0.267714792748,4.971090302094
+    ));
+#220 = CARTESIAN_POINT('',(-7.469576757511,0.267714792749,2.260332741394
+    ));
+#221 = CARTESIAN_POINT('',(-7.469576757546,0.267714792748,
+    -2.260332741446));
+#222 = CARTESIAN_POINT('',(-5.261090838761,0.267714792749,
+    -4.971090302001));
+#223 = CARTESIAN_POINT('',(-2.249772170763,0.267714792748,
+    -6.828057715789));
+#224 = CARTESIAN_POINT('',(1.236030571609,0.267714792748,-6.560480641736
+    ));
+#225 = CARTESIAN_POINT('',(3.769083784612,0.267714792748,-4.818226231748
+    ));
+#226 = CARTESIAN_POINT('',(4.999999999998,0.267714792748,-2.381651773527
+    ));
+#227 = CARTESIAN_POINT('',(5.,0.267714792748,-5.606626274357E-15));
+#228 = PCURVE('',#109,#229);
+#229 = DEFINITIONAL_REPRESENTATION('',(#230),#234);
+#230 = LINE('',#231,#232);
+#231 = CARTESIAN_POINT('',(31.415926535898,0.));
+#232 = VECTOR('',#233,1.);
+#233 = DIRECTION('',(0.,1.));
+#234 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#235 = PCURVE('',#236,#241);
+#236 = CYLINDRICAL_SURFACE('',#237,5.);
+#237 = AXIS2_PLACEMENT_3D('',#238,#239,#240);
+#238 = CARTESIAN_POINT('',(0.,5.070318672914E-35,-1.125836906571E-50));
+#239 = DIRECTION('',(0.,1.,-2.22044604925E-16));
+#240 = DIRECTION('',(1.,-4.999720222592E-67,-2.251673813142E-51));
+#241 = DEFINITIONAL_REPRESENTATION('',(#242),#261);
+#242 = B_SPLINE_CURVE_WITH_KNOTS('',9,(#243,#244,#245,#246,#247,#248,
+    #249,#250,#251,#252,#253,#254,#255,#256,#257,#258,#259,#260),
+  .UNSPECIFIED.,.F.,.F.,(10,8,10),(2.465629140226E-15,15.707963267949,
+    31.415926535898),.UNSPECIFIED.);
+#243 = CARTESIAN_POINT('',(2.22044604925E-16,0.267714792748));
+#244 = CARTESIAN_POINT('',(-0.344016367287,0.267714792748));
+#245 = CARTESIAN_POINT('',(-0.693951626852,0.267714792749));
+#246 = CARTESIAN_POINT('',(-1.045310680394,0.267714792748));
+#247 = CARTESIAN_POINT('',(-1.396480962002,0.267714792749));
+#248 = CARTESIAN_POINT('',(-1.74485073445,0.267714792748));
+#249 = CARTESIAN_POINT('',(-2.094637362127,0.267714792748));
+#250 = CARTESIAN_POINT('',(-2.443412978475,0.267714792748));
+#251 = CARTESIAN_POINT('',(-2.792527182977,0.267714792748));
+#252 = CARTESIAN_POINT('',(-3.490658124203,0.267714792748));
+#253 = CARTESIAN_POINT('',(-3.839772328701,0.267714792748));
+#254 = CARTESIAN_POINT('',(-4.188547945068,0.267714792748));
+#255 = CARTESIAN_POINT('',(-4.538334572697,0.267714792748));
+#256 = CARTESIAN_POINT('',(-4.886704345219,0.267714792748));
+#257 = CARTESIAN_POINT('',(-5.237874626753,0.267714792748));
+#258 = CARTESIAN_POINT('',(-5.589233680342,0.267714792748));
+#259 = CARTESIAN_POINT('',(-5.939168939892,0.267714792748));
+#260 = CARTESIAN_POINT('',(-6.28318530718,0.267714792748));
+#261 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#262 = ORIENTED_EDGE('',*,*,#190,.F.);
+#263 = ORIENTED_EDGE('',*,*,#67,.F.);
+#264 = ADVANCED_FACE('',(#265),#175,.T.);
+#265 = FACE_BOUND('',#266,.F.);
+#266 = EDGE_LOOP('',(#267,#296,#317,#318));
+#267 = ORIENTED_EDGE('',*,*,#268,.T.);
+#268 = EDGE_CURVE('',#269,#269,#271,.T.);
+#269 = VERTEX_POINT('',#270);
+#270 = CARTESIAN_POINT('',(0.62,0.3,-1.33226762955E-16));
+#271 = SURFACE_CURVE('',#272,(#277,#284),.PCURVE_S1.);
+#272 = CIRCLE('',#273,0.62);
+#273 = AXIS2_PLACEMENT_3D('',#274,#275,#276);
+#274 = CARTESIAN_POINT('',(0.,0.3,-6.661338147751E-17));
+#275 = DIRECTION('',(0.,-1.,2.22044604925E-16));
+#276 = DIRECTION('',(1.,-2.385668060144E-32,-1.07440937867E-16));
+#277 = PCURVE('',#175,#278);
+#278 = DEFINITIONAL_REPRESENTATION('',(#279),#283);
+#279 = LINE('',#280,#281);
+#280 = CARTESIAN_POINT('',(-0.,0.));
+#281 = VECTOR('',#282,1.);
+#282 = DIRECTION('',(-1.,0.));
+#283 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#284 = PCURVE('',#285,#290);
+#285 = PLANE('',#286);
+#286 = AXIS2_PLACEMENT_3D('',#287,#288,#289);
+#287 = CARTESIAN_POINT('',(0.,0.3,-6.661338147751E-17));
+#288 = DIRECTION('',(0.,-1.,2.22044604925E-16));
+#289 = DIRECTION('',(1.,-2.385668060144E-32,-1.07440937867E-16));
+#290 = DEFINITIONAL_REPRESENTATION('',(#291),#295);
+#291 = CIRCLE('',#292,0.62);
+#292 = AXIS2_PLACEMENT_2D('',#293,#294);
+#293 = CARTESIAN_POINT('',(0.,0.));
+#294 = DIRECTION('',(1.,-3.976113433574E-32));
+#295 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#296 = ORIENTED_EDGE('',*,*,#297,.T.);
+#297 = EDGE_CURVE('',#269,#39,#298,.T.);
+#298 = SEAM_CURVE('',#299,(#303,#310),.PCURVE_S1.);
+#299 = LINE('',#300,#301);
+#300 = CARTESIAN_POINT('',(0.62,0.3,-1.33226762955E-16));
+#301 = VECTOR('',#302,1.);
+#302 = DIRECTION('',(0.834165419537,0.551514326966,-2.449215616835E-16)
+  );
+#303 = PCURVE('',#175,#304);
+#304 = DEFINITIONAL_REPRESENTATION('',(#305),#309);
+#305 = LINE('',#306,#307);
+#306 = CARTESIAN_POINT('',(-0.,0.));
+#307 = VECTOR('',#308,1.);
+#308 = DIRECTION('',(-0.,1.));
+#309 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#310 = PCURVE('',#175,#311);
+#311 = DEFINITIONAL_REPRESENTATION('',(#312),#316);
+#312 = LINE('',#313,#314);
+#313 = CARTESIAN_POINT('',(-6.28318530718,0.));
+#314 = VECTOR('',#315,1.);
+#315 = DIRECTION('',(-0.,1.));
+#316 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#317 = ORIENTED_EDGE('',*,*,#160,.F.);
+#318 = ORIENTED_EDGE('',*,*,#297,.F.);
+#319 = ADVANCED_FACE('',(#320),#236,.T.);
+#320 = FACE_BOUND('',#321,.F.);
+#321 = EDGE_LOOP('',(#322,#345,#346,#347));
+#322 = ORIENTED_EDGE('',*,*,#323,.F.);
+#323 = EDGE_CURVE('',#191,#324,#326,.T.);
+#324 = VERTEX_POINT('',#325);
+#325 = CARTESIAN_POINT('',(5.,0.548467010492,-1.217841406592E-16));
+#326 = SEAM_CURVE('',#327,(#331,#338),.PCURVE_S1.);
+#327 = LINE('',#328,#329);
+#328 = CARTESIAN_POINT('',(5.,5.070318672914E-35,-2.251673813142E-50));
+#329 = VECTOR('',#330,1.);
+#330 = DIRECTION('',(0.,1.,-4.440892098501E-16));
+#331 = PCURVE('',#236,#332);
+#332 = DEFINITIONAL_REPRESENTATION('',(#333),#337);
+#333 = LINE('',#334,#335);
+#334 = CARTESIAN_POINT('',(-0.,0.));
+#335 = VECTOR('',#336,1.);
+#336 = DIRECTION('',(-0.,1.));
+#337 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#338 = PCURVE('',#236,#339);
+#339 = DEFINITIONAL_REPRESENTATION('',(#340),#344);
+#340 = LINE('',#341,#342);
+#341 = CARTESIAN_POINT('',(-6.28318530718,0.));
+#342 = VECTOR('',#343,1.);
+#343 = DIRECTION('',(-0.,1.));
+#344 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#345 = ORIENTED_EDGE('',*,*,#211,.T.);
+#346 = ORIENTED_EDGE('',*,*,#323,.T.);
+#347 = ORIENTED_EDGE('',*,*,#348,.F.);
+#348 = EDGE_CURVE('',#324,#324,#349,.T.);
+#349 = SURFACE_CURVE('',#350,(#365,#387),.PCURVE_S1.);
+#350 = ( BOUNDED_CURVE() B_SPLINE_CURVE(13,(#351,#352,#353,#354,#355,
+    #356,#357,#358,#359,#360,#361,#362,#363,#364),.UNSPECIFIED.,.T.,.F.)
+ B_SPLINE_CURVE_WITH_KNOTS((14,14),(2.572978865027E-15,31.415926535898),
+.PIECEWISE_BEZIER_KNOTS.) CURVE() GEOMETRIC_REPRESENTATION_ITEM() 
+RATIONAL_B_SPLINE_CURVE((1.,1.,1.000000000001,0.999999999998,
+    1.000000000005,0.999999999993,1.000000000009,0.999999999992,
+    1.000000000006,0.999999999996,1.000000000002,0.999999999999,1.,1.)) 
+REPRESENTATION_ITEM('') );
+#351 = CARTESIAN_POINT('',(5.,0.548467010492,-8.552186736566E-16));
+#352 = CARTESIAN_POINT('',(5.000000000002,0.548467010492,2.381651773529)
+  );
+#353 = CARTESIAN_POINT('',(3.769083784595,0.548467010492,4.81822623174)
+  );
+#354 = CARTESIAN_POINT('',(1.236030571644,0.548467010492,6.560480641767)
+  );
+#355 = CARTESIAN_POINT('',(-2.249772170801,0.548467010492,6.828057715725
+    ));
+#356 = CARTESIAN_POINT('',(-5.261090838748,0.548467010493,4.971090302073
+    ));
+#357 = CARTESIAN_POINT('',(-7.469576757516,0.548467010492,2.260332741409
+    ));
+#358 = CARTESIAN_POINT('',(-7.469576757544,0.548467010493,
+    -2.260332741449));
+#359 = CARTESIAN_POINT('',(-5.261090838756,0.548467010492,
+    -4.971090302003));
+#360 = CARTESIAN_POINT('',(-2.24977217077,0.548467010492,-6.828057715785
+    ));
+#361 = CARTESIAN_POINT('',(1.236030571615,0.548467010492,-6.560480641738
+    ));
+#362 = CARTESIAN_POINT('',(3.769083784609,0.548467010492,-4.818226231748
+    ));
+#363 = CARTESIAN_POINT('',(4.999999999999,0.548467010492,-2.381651773528
+    ));
+#364 = CARTESIAN_POINT('',(5.,0.548467010492,8.487134606217E-15));
+#365 = PCURVE('',#236,#366);
+#366 = DEFINITIONAL_REPRESENTATION('',(#367),#386);
+#367 = B_SPLINE_CURVE_WITH_KNOTS('',9,(#368,#369,#370,#371,#372,#373,
+    #374,#375,#376,#377,#378,#379,#380,#381,#382,#383,#384,#385),
+  .UNSPECIFIED.,.F.,.F.,(10,8,10),(2.572978865027E-15,15.707963267949,
+    31.415926535898),.UNSPECIFIED.);
+#368 = CARTESIAN_POINT('',(2.22044604925E-16,0.548467010492));
+#369 = CARTESIAN_POINT('',(-0.344016367287,0.548467010492));
+#370 = CARTESIAN_POINT('',(-0.693951626852,0.548467010492));
+#371 = CARTESIAN_POINT('',(-1.045310680394,0.548467010492));
+#372 = CARTESIAN_POINT('',(-1.396480962002,0.548467010493));
+#373 = CARTESIAN_POINT('',(-1.74485073445,0.548467010492));
+#374 = CARTESIAN_POINT('',(-2.094637362127,0.548467010492));
+#375 = CARTESIAN_POINT('',(-2.443412978475,0.548467010492));
+#376 = CARTESIAN_POINT('',(-2.792527182977,0.548467010492));
+#377 = CARTESIAN_POINT('',(-3.490658124203,0.548467010492));
+#378 = CARTESIAN_POINT('',(-3.839772328705,0.548467010492));
+#379 = CARTESIAN_POINT('',(-4.188547945051,0.548467010492));
+#380 = CARTESIAN_POINT('',(-4.538334572734,0.548467010492));
+#381 = CARTESIAN_POINT('',(-4.886704345173,0.548467010492));
+#382 = CARTESIAN_POINT('',(-5.237874626789,0.548467010492));
+#383 = CARTESIAN_POINT('',(-5.589233680327,0.548467010492));
+#384 = CARTESIAN_POINT('',(-5.939168939892,0.548467010492));
+#385 = CARTESIAN_POINT('',(-6.28318530718,0.548467010492));
+#386 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#387 = PCURVE('',#388,#431);
+#388 = ( BOUNDED_SURFACE() B_SPLINE_SURFACE(2,13,(
+    (#389,#390,#391,#392,#393,#394,#395,#396,#397,#398,#399,#400,#401
+      ,#402)
+    ,(#403,#404,#405,#406,#407,#408,#409,#410,#411,#412,#413,#414,#415
+      ,#416)
+    ,(#417,#418,#419,#420,#421,#422,#423,#424,#425,#426,#427,#428,#429
+,#430
+    )),.UNSPECIFIED.,.F.,.T.,.F.) B_SPLINE_SURFACE_WITH_KNOTS((3,3),(14,
+    14),(0.,31.415926535898),(2.572978865027E-15,31.415926535898),
+.PIECEWISE_BEZIER_KNOTS.) GEOMETRIC_REPRESENTATION_ITEM() 
+RATIONAL_B_SPLINE_SURFACE((
+    (1.,1.,1.000000000001,0.999999999998,1.000000000005,0.999999999993
+      ,1.000000000009,0.999999999992,1.000000000006,0.999999999996
+      ,1.000000000002,0.999999999999,1.,1.)
+    ,(0.795789195873,0.795789195873,0.795789195873,0.795789195872
+      ,0.795789195876,0.795789195868,0.795789195879,0.795789195867
+      ,0.795789195878,0.79578919587,0.795789195874,0.795789195872
+      ,0.795789195873,0.795789195873)
+    ,(1.,1.,1.000000000001,0.999999999998,1.000000000005,0.999999999993
+      ,1.000000000009,0.999999999992,1.000000000006,0.999999999996
+,1.000000000002,0.999999999999,1.,1.
+  ))) REPRESENTATION_ITEM('') SURFACE() );
+#389 = CARTESIAN_POINT('',(5.,0.548467010492,-8.552186736566E-16));
+#390 = CARTESIAN_POINT('',(5.000000000002,0.548467010492,2.381651773529)
+  );
+#391 = CARTESIAN_POINT('',(3.769083784595,0.548467010492,4.81822623174)
+  );
+#392 = CARTESIAN_POINT('',(1.236030571644,0.548467010492,6.560480641767)
+  );
+#393 = CARTESIAN_POINT('',(-2.249772170801,0.548467010492,6.828057715725
+    ));
+#394 = CARTESIAN_POINT('',(-5.261090838748,0.548467010493,4.971090302073
+    ));
+#395 = CARTESIAN_POINT('',(-7.469576757516,0.548467010492,2.260332741409
+    ));
+#396 = CARTESIAN_POINT('',(-7.469576757544,0.548467010493,
+    -2.260332741449));
+#397 = CARTESIAN_POINT('',(-5.261090838756,0.548467010492,
+    -4.971090302003));
+#398 = CARTESIAN_POINT('',(-2.24977217077,0.548467010492,-6.828057715785
+    ));
+#399 = CARTESIAN_POINT('',(1.236030571615,0.548467010492,-6.560480641738
+    ));
+#400 = CARTESIAN_POINT('',(3.769083784609,0.548467010492,-4.818226231748
+    ));
+#401 = CARTESIAN_POINT('',(4.999999999999,0.548467010492,-2.381651773528
+    ));
+#402 = CARTESIAN_POINT('',(5.,0.548467010492,8.487134606217E-15));
+#403 = CARTESIAN_POINT('',(5.,0.700661522329,4.584006785269E-15));
+#404 = CARTESIAN_POINT('',(5.000000000001,0.700661522329,2.381651773528)
+  );
+#405 = CARTESIAN_POINT('',(3.769083784597,0.700661522329,4.818226231742)
+  );
+#406 = CARTESIAN_POINT('',(1.236030571641,0.700661522329,6.560480641762)
+  );
+#407 = CARTESIAN_POINT('',(-2.249772170798,0.700661522329,6.828057715734
+    ));
+#408 = CARTESIAN_POINT('',(-5.261090838749,0.700661522328,4.971090302063
+    ));
+#409 = CARTESIAN_POINT('',(-7.469576757516,0.70066152233,2.260332741416)
+  );
+#410 = CARTESIAN_POINT('',(-7.469576757547,0.700661522328,-2.26033274145
+    ));
+#411 = CARTESIAN_POINT('',(-5.261090838749,0.700661522329,
+    -4.971090302003));
+#412 = CARTESIAN_POINT('',(-2.249772170776,0.700661522328,
+    -6.828057715787));
+#413 = CARTESIAN_POINT('',(1.236030571618,0.700661522329,-6.560480641736
+    ));
+#414 = CARTESIAN_POINT('',(3.769083784608,0.700661522329,-4.818226231749
+    ));
+#415 = CARTESIAN_POINT('',(4.999999999999,0.700661522329,-2.381651773527
+    ));
+#416 = CARTESIAN_POINT('',(5.,0.700661522329,-2.367897544708E-16));
+#417 = CARTESIAN_POINT('',(4.853312177707,0.741230626634,
+    1.000068083901E-15));
+#418 = CARTESIAN_POINT('',(4.853312177709,0.741230626634,2.311779911105)
+  );
+#419 = CARTESIAN_POINT('',(3.658508046117,0.741230626634,4.67687120909)
+  );
+#420 = CARTESIAN_POINT('',(1.199768445072,0.741230626634,6.36801211806)
+  );
+#421 = CARTESIAN_POINT('',(-2.183769334715,0.741230626634,6.627739132361
+    ));
+#422 = CARTESIAN_POINT('',(-5.106743247157,0.741230626634,4.82525061991)
+  );
+#423 = CARTESIAN_POINT('',(-7.250437567899,0.741230626635,2.194020083906
+    ));
+#424 = CARTESIAN_POINT('',(-7.250437567956,0.741230626634,
+    -2.194020083944));
+#425 = CARTESIAN_POINT('',(-5.10674324714,0.741230626634,-4.825250619843
+    ));
+#426 = CARTESIAN_POINT('',(-2.183769334701,0.741230626634,
+    -6.627739132419));
+#427 = CARTESIAN_POINT('',(1.199768445051,0.741230626634,-6.368012118033
+    ));
+#428 = CARTESIAN_POINT('',(3.658508046127,0.741230626634,-4.676871209098
+    ));
+#429 = CARTESIAN_POINT('',(4.853312177706,0.741230626634,-2.311779911104
+    ));
+#430 = CARTESIAN_POINT('',(4.853312177707,0.741230626634,
+    1.863960374937E-15));
+#431 = DEFINITIONAL_REPRESENTATION('',(#432),#436);
+#432 = LINE('',#433,#434);
+#433 = CARTESIAN_POINT('',(0.,0.));
+#434 = VECTOR('',#435,1.);
+#435 = DIRECTION('',(0.,1.));
+#436 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#437 = ADVANCED_FACE('',(#438,#441),#285,.T.);
+#438 = FACE_BOUND('',#439,.T.);
+#439 = EDGE_LOOP('',(#440));
+#440 = ORIENTED_EDGE('',*,*,#268,.T.);
+#441 = FACE_BOUND('',#442,.T.);
+#442 = EDGE_LOOP('',(#443));
+#443 = ORIENTED_EDGE('',*,*,#444,.F.);
+#444 = EDGE_CURVE('',#445,#445,#447,.T.);
+#445 = VERTEX_POINT('',#446);
+#446 = CARTESIAN_POINT('',(0.52,0.3,-1.33226762955E-16));
+#447 = SURFACE_CURVE('',#448,(#453,#460),.PCURVE_S1.);
+#448 = CIRCLE('',#449,0.52);
+#449 = AXIS2_PLACEMENT_3D('',#450,#451,#452);
+#450 = CARTESIAN_POINT('',(0.,0.3,-6.661338147751E-17));
+#451 = DIRECTION('',(0.,-1.,2.22044604925E-16));
+#452 = DIRECTION('',(1.,-2.844450379403E-32,-1.281026566875E-16));
+#453 = PCURVE('',#285,#454);
+#454 = DEFINITIONAL_REPRESENTATION('',(#455),#459);
+#455 = CIRCLE('',#456,0.52);
+#456 = AXIS2_PLACEMENT_2D('',#457,#458);
+#457 = CARTESIAN_POINT('',(0.,0.));
+#458 = DIRECTION('',(1.,-2.066171882057E-17));
+#459 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#460 = PCURVE('',#461,#466);
+#461 = CYLINDRICAL_SURFACE('',#462,0.52);
+#462 = AXIS2_PLACEMENT_3D('',#463,#464,#465);
+#463 = CARTESIAN_POINT('',(0.,0.3,-6.661338147751E-17));
+#464 = DIRECTION('',(0.,1.,-2.22044604925E-16));
+#465 = DIRECTION('',(1.,-2.844450379403E-32,-1.281026566875E-16));
+#466 = DEFINITIONAL_REPRESENTATION('',(#467),#471);
+#467 = LINE('',#468,#469);
+#468 = CARTESIAN_POINT('',(-0.,0.));
+#469 = VECTOR('',#470,1.);
+#470 = DIRECTION('',(-1.,0.));
+#471 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#472 = ADVANCED_FACE('',(#473),#388,.T.);
+#473 = FACE_BOUND('',#474,.T.);
+#474 = EDGE_LOOP('',(#475,#496,#550,#551));
+#475 = ORIENTED_EDGE('',*,*,#476,.T.);
+#476 = EDGE_CURVE('',#324,#477,#479,.T.);
+#477 = VERTEX_POINT('',#478);
+#478 = CARTESIAN_POINT('',(4.853312177707,0.741230626634,
+    3.044762314382E-15));
+#479 = SEAM_CURVE('',#480,(#484,#490),.PCURVE_S1.);
+#480 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#481,#482,#483),
+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(0.,
+31.415926535898),.PIECEWISE_BEZIER_KNOTS.) CURVE() 
+GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,
+0.795789195873,1.)) REPRESENTATION_ITEM('') );
+#481 = CARTESIAN_POINT('',(5.,0.548467010492,-8.552186736566E-16));
+#482 = CARTESIAN_POINT('',(5.,0.700661522329,4.584006785269E-15));
+#483 = CARTESIAN_POINT('',(4.853312177707,0.741230626634,
+    1.000068083901E-15));
+#484 = PCURVE('',#388,#485);
+#485 = DEFINITIONAL_REPRESENTATION('',(#486),#489);
+#486 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#487,#488),.UNSPECIFIED.,.F.,.F.,
+  (2,2),(0.,31.415926535898),.PIECEWISE_BEZIER_KNOTS.);
+#487 = CARTESIAN_POINT('',(0.,2.572978865027E-15));
+#488 = CARTESIAN_POINT('',(31.415926535898,2.572978865027E-15));
+#489 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#490 = PCURVE('',#388,#491);
+#491 = DEFINITIONAL_REPRESENTATION('',(#492),#495);
+#492 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#493,#494),.UNSPECIFIED.,.F.,.F.,
+  (2,2),(0.,31.415926535898),.PIECEWISE_BEZIER_KNOTS.);
+#493 = CARTESIAN_POINT('',(0.,31.415926535898));
+#494 = CARTESIAN_POINT('',(31.415926535898,31.415926535898));
+#495 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#496 = ORIENTED_EDGE('',*,*,#497,.T.);
+#497 = EDGE_CURVE('',#477,#477,#498,.T.);
+#498 = SURFACE_CURVE('',#499,(#514,#521),.PCURVE_S1.);
+#499 = ( BOUNDED_CURVE() B_SPLINE_CURVE(13,(#500,#501,#502,#503,#504,
+    #505,#506,#507,#508,#509,#510,#511,#512,#513),.UNSPECIFIED.,.T.,.F.)
+ B_SPLINE_CURVE_WITH_KNOTS((14,14),(2.572978865027E-15,31.415926535898),
+.PIECEWISE_BEZIER_KNOTS.) CURVE() GEOMETRIC_REPRESENTATION_ITEM() 
+RATIONAL_B_SPLINE_CURVE((1.,1.,1.000000000001,0.999999999998,
+    1.000000000005,0.999999999993,1.000000000009,0.999999999992,
+    1.000000000006,0.999999999996,1.000000000002,0.999999999999,1.,1.)) 
+REPRESENTATION_ITEM('') );
+#500 = CARTESIAN_POINT('',(4.853312177707,0.741230626634,
+    1.000068083901E-15));
+#501 = CARTESIAN_POINT('',(4.853312177709,0.741230626634,2.311779911105)
+  );
+#502 = CARTESIAN_POINT('',(3.658508046117,0.741230626634,4.67687120909)
+  );
+#503 = CARTESIAN_POINT('',(1.199768445072,0.741230626634,6.36801211806)
+  );
+#504 = CARTESIAN_POINT('',(-2.183769334715,0.741230626634,6.627739132361
+    ));
+#505 = CARTESIAN_POINT('',(-5.106743247157,0.741230626634,4.82525061991)
+  );
+#506 = CARTESIAN_POINT('',(-7.250437567899,0.741230626635,2.194020083906
+    ));
+#507 = CARTESIAN_POINT('',(-7.250437567956,0.741230626634,
+    -2.194020083944));
+#508 = CARTESIAN_POINT('',(-5.10674324714,0.741230626634,-4.825250619843
+    ));
+#509 = CARTESIAN_POINT('',(-2.183769334701,0.741230626634,
+    -6.627739132419));
+#510 = CARTESIAN_POINT('',(1.199768445051,0.741230626634,-6.368012118033
+    ));
+#511 = CARTESIAN_POINT('',(3.658508046127,0.741230626634,-4.676871209098
+    ));
+#512 = CARTESIAN_POINT('',(4.853312177706,0.741230626634,-2.311779911104
+    ));
+#513 = CARTESIAN_POINT('',(4.853312177707,0.741230626634,
+    1.863960374937E-15));
+#514 = PCURVE('',#388,#515);
+#515 = DEFINITIONAL_REPRESENTATION('',(#516),#520);
+#516 = LINE('',#517,#518);
+#517 = CARTESIAN_POINT('',(31.415926535898,0.));
+#518 = VECTOR('',#519,1.);
+#519 = DIRECTION('',(0.,1.));
+#520 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#521 = PCURVE('',#522,#527);
+#522 = SPHERICAL_SURFACE('',#523,18.207142857143);
+#523 = AXIS2_PLACEMENT_3D('',#524,#525,#526);
+#524 = CARTESIAN_POINT('',(4.216318296224E-35,-16.80714285714,
+    7.463870791266E-15));
+#525 = DIRECTION('',(0.,1.,-2.22044604925E-16));
+#526 = DIRECTION('',(1.,-2.390894705483E-32,-1.076763250469E-16));
+#527 = DEFINITIONAL_REPRESENTATION('',(#528),#549);
+#528 = B_SPLINE_CURVE_WITH_KNOTS('',10,(#529,#530,#531,#532,#533,#534,
+    #535,#536,#537,#538,#539,#540,#541,#542,#543,#544,#545,#546,#547,
+    #548),.UNSPECIFIED.,.F.,.F.,(11,9,11),(2.572978865027E-15,
+    15.707963267949,31.415926535898),.UNSPECIFIED.);
+#529 = CARTESIAN_POINT('',(6.661338147751E-16,1.300973281689));
+#530 = CARTESIAN_POINT('',(-0.309614730559,1.300973281689));
+#531 = CARTESIAN_POINT('',(-0.624015126698,1.30097328169));
+#532 = CARTESIAN_POINT('',(-0.939675481414,1.30097328169));
+#533 = CARTESIAN_POINT('',(-1.256500312754,1.300973281689));
+#534 = CARTESIAN_POINT('',(-1.570046847089,1.30097328169));
+#535 = CARTESIAN_POINT('',(-1.885252848916,1.300973281689));
+#536 = CARTESIAN_POINT('',(-2.199042564114,1.30097328169));
+#537 = CARTESIAN_POINT('',(-2.513286371135,1.300973281689));
+#538 = CARTESIAN_POINT('',(-2.827433730038,1.300973281689));
+#539 = CARTESIAN_POINT('',(-3.455751577142,1.300973281689));
+#540 = CARTESIAN_POINT('',(-3.769898936047,1.30097328169));
+#541 = CARTESIAN_POINT('',(-4.084142743056,1.300973281689));
+#542 = CARTESIAN_POINT('',(-4.397932458289,1.30097328169));
+#543 = CARTESIAN_POINT('',(-4.713138460049,1.300973281689));
+#544 = CARTESIAN_POINT('',(-5.026684994468,1.300973281689));
+#545 = CARTESIAN_POINT('',(-5.343509825736,1.30097328169));
+#546 = CARTESIAN_POINT('',(-5.659170180493,1.300973281689));
+#547 = CARTESIAN_POINT('',(-5.973570576621,1.30097328169));
+#548 = CARTESIAN_POINT('',(-6.28318530718,1.300973281689));
+#549 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#550 = ORIENTED_EDGE('',*,*,#476,.F.);
+#551 = ORIENTED_EDGE('',*,*,#348,.F.);
+#552 = ADVANCED_FACE('',(#553),#461,.F.);
+#553 = FACE_BOUND('',#554,.T.);
+#554 = EDGE_LOOP('',(#555,#578,#579));
+#555 = ORIENTED_EDGE('',*,*,#556,.F.);
+#556 = EDGE_CURVE('',#445,#557,#559,.T.);
+#557 = VERTEX_POINT('',#558);
+#558 = CARTESIAN_POINT('',(1.110223024625E-15,0.7,-3.10862446895E-16));
+#559 = SEAM_CURVE('',#560,(#564,#571),.PCURVE_S1.);
+#560 = LINE('',#561,#562);
+#561 = CARTESIAN_POINT('',(0.52,0.3,-1.33226762955E-16));
+#562 = VECTOR('',#563,1.);
+#563 = DIRECTION('',(0.,1.,-4.440892098501E-16));
+#564 = PCURVE('',#461,#565);
+#565 = DEFINITIONAL_REPRESENTATION('',(#566),#570);
+#566 = LINE('',#567,#568);
+#567 = CARTESIAN_POINT('',(-0.,0.));
+#568 = VECTOR('',#569,1.);
+#569 = DIRECTION('',(-0.,1.));
+#570 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#571 = PCURVE('',#461,#572);
+#572 = DEFINITIONAL_REPRESENTATION('',(#573),#577);
+#573 = LINE('',#574,#575);
+#574 = CARTESIAN_POINT('',(-6.28318530718,0.));
+#575 = VECTOR('',#576,1.);
+#576 = DIRECTION('',(-0.,1.));
+#577 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#578 = ORIENTED_EDGE('',*,*,#444,.T.);
+#579 = ORIENTED_EDGE('',*,*,#556,.T.);
+#580 = ADVANCED_FACE('',(#581),#522,.T.);
+#581 = FACE_BOUND('',#582,.F.);
+#582 = EDGE_LOOP('',(#583,#607,#608));
+#583 = ORIENTED_EDGE('',*,*,#584,.F.);
+#584 = EDGE_CURVE('',#477,#585,#587,.T.);
+#585 = VERTEX_POINT('',#586);
+#586 = CARTESIAN_POINT('',(1.112544490471E-15,1.4,-6.217248937901E-16));
+#587 = SEAM_CURVE('',#588,(#593,#600),.PCURVE_S1.);
+#588 = CIRCLE('',#589,18.207142857143);
+#589 = AXIS2_PLACEMENT_3D('',#590,#591,#592);
+#590 = CARTESIAN_POINT('',(4.216318296224E-35,-16.80714285714,
+    7.463870791266E-15));
+#591 = DIRECTION('',(-0.,4.440892098501E-16,1.));
+#592 = DIRECTION('',(1.,0.,0.));
+#593 = PCURVE('',#522,#594);
+#594 = DEFINITIONAL_REPRESENTATION('',(#595),#599);
+#595 = LINE('',#596,#597);
+#596 = CARTESIAN_POINT('',(-0.,0.));
+#597 = VECTOR('',#598,1.);
+#598 = DIRECTION('',(-0.,1.));
+#599 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#600 = PCURVE('',#522,#601);
+#601 = DEFINITIONAL_REPRESENTATION('',(#602),#606);
+#602 = LINE('',#603,#604);
+#603 = CARTESIAN_POINT('',(-6.28318530718,0.));
+#604 = VECTOR('',#605,1.);
+#605 = DIRECTION('',(-0.,1.));
+#606 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#607 = ORIENTED_EDGE('',*,*,#497,.T.);
+#608 = ORIENTED_EDGE('',*,*,#584,.T.);
+#609 = ( GEOMETRIC_REPRESENTATION_CONTEXT(3) 
+GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#613)) GLOBAL_UNIT_ASSIGNED_CONTEXT
+((#610,#611,#612)) REPRESENTATION_CONTEXT('Context #1',
+  '3D Context with UNIT and UNCERTAINTY') );
+#610 = ( LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.) );
+#611 = ( NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.) );
+#612 = ( NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT() );
+#613 = UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(2.E-02),#610,
+  'distance_accuracy_value','confusion accuracy');
+#614 = SHAPE_DEFINITION_REPRESENTATION(#615,#29);
+#615 = PRODUCT_DEFINITION_SHAPE('','',#616);
+#616 = PRODUCT_DEFINITION('design','',#617,#620);
+#617 = PRODUCT_DEFINITION_FORMATION('','',#618);
+#618 = PRODUCT('Handle','Handle','',(#619));
+#619 = MECHANICAL_CONTEXT('',#2,'mechanical');
+#620 = PRODUCT_DEFINITION_CONTEXT('part definition',#2,'design');
+#621 = CONTEXT_DEPENDENT_SHAPE_REPRESENTATION(#622,#624);
+#622 = ( REPRESENTATION_RELATIONSHIP('','',#29,#10) 
+REPRESENTATION_RELATIONSHIP_WITH_TRANSFORMATION(#623) 
+SHAPE_REPRESENTATION_RELATIONSHIP() );
+#623 = ITEM_DEFINED_TRANSFORMATION('','',#11,#15);
+#624 = PRODUCT_DEFINITION_SHAPE('Placement','Placement of an item',#625
+  );
+#625 = NEXT_ASSEMBLY_USAGE_OCCURRENCE('1','=>[0:1:1:2]','',#5,#616,$);
+#626 = PRODUCT_TYPE('part',$,(#618));
+#627 = ADVANCED_BREP_SHAPE_REPRESENTATION('',(#11,#628),#781);
+#628 = MANIFOLD_SOLID_BREP('',#629);
+#629 = CLOSED_SHELL('',(#630,#667,#722,#777));
+#630 = ADVANCED_FACE('',(#631),#644,.F.);
+#631 = FACE_BOUND('',#632,.T.);
+#632 = EDGE_LOOP('',(#633));
+#633 = ORIENTED_EDGE('',*,*,#634,.F.);
+#634 = EDGE_CURVE('',#635,#635,#637,.T.);
+#635 = VERTEX_POINT('',#636);
+#636 = CARTESIAN_POINT('',(0.5,0.9,-3.996802888651E-16));
+#637 = SURFACE_CURVE('',#638,(#643,#655),.PCURVE_S1.);
+#638 = CIRCLE('',#639,0.5);
+#639 = AXIS2_PLACEMENT_3D('',#640,#641,#642);
+#640 = CARTESIAN_POINT('',(0.,0.9,-1.998401444325E-16));
+#641 = DIRECTION('',(0.,-1.,2.22044604925E-16));
+#642 = DIRECTION('',(1.,-8.874685183736E-32,-3.996802888651E-16));
+#643 = PCURVE('',#644,#649);
+#644 = PLANE('',#645);
+#645 = AXIS2_PLACEMENT_3D('',#646,#647,#648);
+#646 = CARTESIAN_POINT('',(0.,0.9,-1.998401444325E-16));
+#647 = DIRECTION('',(-0.,-1.,2.22044604925E-16));
+#648 = DIRECTION('',(1.,-8.874685183736E-32,-3.996802888651E-16));
+#649 = DEFINITIONAL_REPRESENTATION('',(#650),#654);
+#650 = CIRCLE('',#651,0.5);
+#651 = AXIS2_PLACEMENT_2D('',#652,#653);
+#652 = CARTESIAN_POINT('',(0.,0.));
+#653 = DIRECTION('',(1.,-9.860761315263E-32));
+#654 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#655 = PCURVE('',#656,#661);
+#656 = CYLINDRICAL_SURFACE('',#657,0.5);
+#657 = AXIS2_PLACEMENT_3D('',#658,#659,#660);
+#658 = CARTESIAN_POINT('',(0.,0.9,-1.998401444325E-16));
+#659 = DIRECTION('',(-0.,-1.,2.22044604925E-16));
+#660 = DIRECTION('',(1.,-8.874685183736E-32,-3.996802888651E-16));
+#661 = DEFINITIONAL_REPRESENTATION('',(#662),#666);
+#662 = LINE('',#663,#664);
+#663 = CARTESIAN_POINT('',(0.,0.));
+#664 = VECTOR('',#665,1.);
+#665 = DIRECTION('',(1.,0.));
+#666 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#667 = ADVANCED_FACE('',(#668),#656,.T.);
+#668 = FACE_BOUND('',#669,.T.);
+#669 = EDGE_LOOP('',(#670,#671,#694,#721));
+#670 = ORIENTED_EDGE('',*,*,#634,.T.);
+#671 = ORIENTED_EDGE('',*,*,#672,.T.);
+#672 = EDGE_CURVE('',#635,#673,#675,.T.);
+#673 = VERTEX_POINT('',#674);
+#674 = CARTESIAN_POINT('',(0.5,-6.,2.6645352591E-15));
+#675 = SEAM_CURVE('',#676,(#680,#687),.PCURVE_S1.);
+#676 = LINE('',#677,#678);
+#677 = CARTESIAN_POINT('',(0.5,0.9,-3.996802888651E-16));
+#678 = VECTOR('',#679,1.);
+#679 = DIRECTION('',(0.,-1.,4.440892098501E-16));
+#680 = PCURVE('',#656,#681);
+#681 = DEFINITIONAL_REPRESENTATION('',(#682),#686);
+#682 = LINE('',#683,#684);
+#683 = CARTESIAN_POINT('',(0.,0.));
+#684 = VECTOR('',#685,1.);
+#685 = DIRECTION('',(0.,1.));
+#686 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#687 = PCURVE('',#656,#688);
+#688 = DEFINITIONAL_REPRESENTATION('',(#689),#693);
+#689 = LINE('',#690,#691);
+#690 = CARTESIAN_POINT('',(6.28318530718,0.));
+#691 = VECTOR('',#692,1.);
+#692 = DIRECTION('',(0.,1.));
+#693 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#694 = ORIENTED_EDGE('',*,*,#695,.F.);
+#695 = EDGE_CURVE('',#673,#673,#696,.T.);
+#696 = SURFACE_CURVE('',#697,(#702,#709),.PCURVE_S1.);
+#697 = CIRCLE('',#698,0.5);
+#698 = AXIS2_PLACEMENT_3D('',#699,#700,#701);
+#699 = CARTESIAN_POINT('',(0.,-6.,1.33226762955E-15));
+#700 = DIRECTION('',(0.,-1.,2.22044604925E-16));
+#701 = DIRECTION('',(1.,5.916456789158E-31,2.6645352591E-15));
+#702 = PCURVE('',#656,#703);
+#703 = DEFINITIONAL_REPRESENTATION('',(#704),#708);
+#704 = LINE('',#705,#706);
+#705 = CARTESIAN_POINT('',(0.,6.9));
+#706 = VECTOR('',#707,1.);
+#707 = DIRECTION('',(1.,0.));
+#708 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#709 = PCURVE('',#710,#715);
+#710 = CONICAL_SURFACE('',#711,0.5,0.278299659005);
+#711 = AXIS2_PLACEMENT_3D('',#712,#713,#714);
+#712 = CARTESIAN_POINT('',(0.,-6.,1.33226762955E-15));
+#713 = DIRECTION('',(0.,1.,-2.22044604925E-16));
+#714 = DIRECTION('',(1.,5.916456789158E-31,2.6645352591E-15));
+#715 = DEFINITIONAL_REPRESENTATION('',(#716),#720);
+#716 = LINE('',#717,#718);
+#717 = CARTESIAN_POINT('',(-0.,-0.));
+#718 = VECTOR('',#719,1.);
+#719 = DIRECTION('',(-1.,-0.));
+#720 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#721 = ORIENTED_EDGE('',*,*,#672,.F.);
+#722 = ADVANCED_FACE('',(#723),#710,.T.);
+#723 = FACE_BOUND('',#724,.T.);
+#724 = EDGE_LOOP('',(#725,#726,#749,#776));
+#725 = ORIENTED_EDGE('',*,*,#695,.T.);
+#726 = ORIENTED_EDGE('',*,*,#727,.T.);
+#727 = EDGE_CURVE('',#673,#728,#730,.T.);
+#728 = VERTEX_POINT('',#729);
+#729 = CARTESIAN_POINT('',(0.1,-7.4,3.28626015289E-15));
+#730 = SEAM_CURVE('',#731,(#735,#742),.PCURVE_S1.);
+#731 = LINE('',#732,#733);
+#732 = CARTESIAN_POINT('',(0.5,-6.,2.6645352591E-15));
+#733 = VECTOR('',#734,1.);
+#734 = DIRECTION('',(-0.274721127897,-0.961523947641,4.270024101597E-16)
+  );
+#735 = PCURVE('',#710,#736);
+#736 = DEFINITIONAL_REPRESENTATION('',(#737),#741);
+#737 = LINE('',#738,#739);
+#738 = CARTESIAN_POINT('',(-0.,-0.));
+#739 = VECTOR('',#740,1.);
+#740 = DIRECTION('',(-0.,-1.));
+#741 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#742 = PCURVE('',#710,#743);
+#743 = DEFINITIONAL_REPRESENTATION('',(#744),#748);
+#744 = LINE('',#745,#746);
+#745 = CARTESIAN_POINT('',(-6.28318530718,-0.));
+#746 = VECTOR('',#747,1.);
+#747 = DIRECTION('',(-0.,-1.));
+#748 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#749 = ORIENTED_EDGE('',*,*,#750,.F.);
+#750 = EDGE_CURVE('',#728,#728,#751,.T.);
+#751 = SURFACE_CURVE('',#752,(#757,#764),.PCURVE_S1.);
+#752 = CIRCLE('',#753,0.1);
+#753 = AXIS2_PLACEMENT_3D('',#754,#755,#756);
+#754 = CARTESIAN_POINT('',(0.,-7.4,1.643130076445E-15));
+#755 = DIRECTION('',(0.,-1.,2.22044604925E-16));
+#756 = DIRECTION('',(1.,3.648481686647E-30,1.643130076445E-14));
+#757 = PCURVE('',#710,#758);
+#758 = DEFINITIONAL_REPRESENTATION('',(#759),#763);
+#759 = LINE('',#760,#761);
+#760 = CARTESIAN_POINT('',(-0.,-1.4));
+#761 = VECTOR('',#762,1.);
+#762 = DIRECTION('',(-1.,-0.));
+#763 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#764 = PCURVE('',#765,#770);
+#765 = PLANE('',#766);
+#766 = AXIS2_PLACEMENT_3D('',#767,#768,#769);
+#767 = CARTESIAN_POINT('',(0.,-7.4,1.643130076445E-15));
+#768 = DIRECTION('',(-0.,-1.,2.22044604925E-16));
+#769 = DIRECTION('',(1.,3.648481686647E-30,1.643130076445E-14));
+#770 = DEFINITIONAL_REPRESENTATION('',(#771),#775);
+#771 = CIRCLE('',#772,0.1);
+#772 = AXIS2_PLACEMENT_2D('',#773,#774);
+#773 = CARTESIAN_POINT('',(0.,0.));
+#774 = DIRECTION('',(1.,0.));
+#775 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#776 = ORIENTED_EDGE('',*,*,#727,.F.);
+#777 = ADVANCED_FACE('',(#778),#765,.T.);
+#778 = FACE_BOUND('',#779,.T.);
+#779 = EDGE_LOOP('',(#780));
+#780 = ORIENTED_EDGE('',*,*,#750,.T.);
+#781 = ( GEOMETRIC_REPRESENTATION_CONTEXT(3) 
+GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#785)) GLOBAL_UNIT_ASSIGNED_CONTEXT
+((#782,#783,#784)) REPRESENTATION_CONTEXT('Context #1',
+  '3D Context with UNIT and UNCERTAINTY') );
+#782 = ( LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.) );
+#783 = ( NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.) );
+#784 = ( NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT() );
+#785 = UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(1.E-07),#782,
+  'distance_accuracy_value','confusion accuracy');
+#786 = SHAPE_DEFINITION_REPRESENTATION(#787,#627);
+#787 = PRODUCT_DEFINITION_SHAPE('','',#788);
+#788 = PRODUCT_DEFINITION('design','',#789,#792);
+#789 = PRODUCT_DEFINITION_FORMATION('','',#790);
+#790 = PRODUCT('Pin','Pin','',(#791));
+#791 = MECHANICAL_CONTEXT('',#2,'mechanical');
+#792 = PRODUCT_DEFINITION_CONTEXT('part definition',#2,'design');
+#793 = CONTEXT_DEPENDENT_SHAPE_REPRESENTATION(#794,#796);
+#794 = ( REPRESENTATION_RELATIONSHIP('','',#627,#10) 
+REPRESENTATION_RELATIONSHIP_WITH_TRANSFORMATION(#795) 
+SHAPE_REPRESENTATION_RELATIONSHIP() );
+#795 = ITEM_DEFINED_TRANSFORMATION('','',#11,#19);
+#796 = PRODUCT_DEFINITION_SHAPE('Placement','Placement of an item',#797
+  );
+#797 = NEXT_ASSEMBLY_USAGE_OCCURRENCE('2','=>[0:1:1:3]','',#5,#788,$);
+#798 = PRODUCT_TYPE('part',$,(#790));
+#799 = MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION('',(#800)
+  ,#609);
+#800 = STYLED_ITEM('color',(#801),#30);
+#801 = PRESENTATION_STYLE_ASSIGNMENT((#802,#808));
+#802 = SURFACE_STYLE_USAGE(.BOTH.,#803);
+#803 = SURFACE_SIDE_STYLE('',(#804));
+#804 = SURFACE_STYLE_FILL_AREA(#805);
+#805 = FILL_AREA_STYLE('',(#806));
+#806 = FILL_AREA_STYLE_COLOUR('',#807);
+#807 = COLOUR_RGB('',0.800000011921,0.600000023842,0.270588248968);
+#808 = CURVE_STYLE('',#809,POSITIVE_LENGTH_MEASURE(0.1),#807);
+#809 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
+#810 = MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION('',(#811)
+  ,#781);
+#811 = STYLED_ITEM('color',(#812),#628);
+#812 = PRESENTATION_STYLE_ASSIGNMENT((#813,#818));
+#813 = SURFACE_STYLE_USAGE(.BOTH.,#814);
+#814 = SURFACE_SIDE_STYLE('',(#815));
+#815 = SURFACE_STYLE_FILL_AREA(#816);
+#816 = FILL_AREA_STYLE('',(#817));
+#817 = FILL_AREA_STYLE_COLOUR('',#807);
+#818 = CURVE_STYLE('',#819,POSITIVE_LENGTH_MEASURE(0.1),#807);
+#819 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
+ENDSEC;
+END-ISO-10303-21;
diff --git a/Generic objects/pushpins/pushpin-model-II.stl b/Generic objects/pushpins/pushpin-model-II.stl
new file mode 100644
index 00000000..cbd6562d
Binary files /dev/null and b/Generic objects/pushpins/pushpin-model-II.stl differ