← Commit history
CHANGES.mdadded+61
@@ -0,0 +1,61 @@+# IN-S42ATR: coloured-lens pass (2026-09-30)++Prepared locally for review. Nothing here has been pushed or published.++## Files++Changed:++- `IN-S42ATR.glb`+- `IN-S42ATR.insertion.glb`+- `IN-S42ATR.step`+- `README.md`+- `page.json`+- `screenshots/hero.png`++Added:++- `IN-S42ATR-uncoloured.step`+- `in-s42atr-hero.glb`+- `provenance/` (provenance JSON, colour report, hero pin map, the scripts used)++`IN-S42ATR-uncoloured.step` is the STEP the page shipped before this pass, byte for byte (renamed only). `IN-S42ATR.step` is now the coloured model, so anything that fetches the page STEP by its usual name gets colour by default.++## Colour++- Datasheet: IN-S42AT series V1.1 p.3, lambda_D typ: dominant wavelength (typical) 631 nm.+- Lens colour: sRGB #C34235 (0.7657, 0.2589, 0.2074), OKLCh L 0.56 C 0.1674 h 29.2 deg.+- Why: red: lambda_d 631 nm is beyond the sRGB red primary; hue = red primary 29.2 deg (lambda_d-exact edge colour would be 19.4 deg, rose).+- Method (all LEDs): hue from the datasheet dominant wavelength, chroma 65 % of the most saturated sRGB colour at that hue, lightness chosen so the lens reads as tinted epoxy rather than paint (John, 2026-09-30: less saturated, match the nm). Details in `provenance/tools/led_colour.py`.++## What was coloured++STEP family `template`, 50 faces: lens 5, substrate 7, terminal 34, cathode_mark 4; 50 faces recoloured (XCAF ColorSurf and ColorGen).+This page's STEP is the KiCad 0402 LED model scaled to 0.45 mm in Z and re-exported without any colours. Face classes were copied from the KiCad 0402 model by face index (every face's X/Y extent checked), so the lens gets the LED colour and the substrate, terminals and cathode mark get the KiCad library colours they were missing.+Geometry, face count, volume, centroid and the product name are unchanged (checked with `verify_geom.py`); the KiCad licence comment block is carried into the new file header.++## GLBs++| File | Triangles before | after | Bytes before | after |+|---|---|---|---|---|+| `IN-S42ATR.glb` | 3010 | 1018 | 263160 | 81960 |+| `IN-S42ATR.insertion.glb` | 3034 | 1042 | 264668 | 81828 |+| `in-s42atr-hero.glb` (new) | | 200 | | 40124 |++The composites are the page's own LED scenes (board, pads, silk, solder fillets, LED, glow skin, FOV cone, point light); `.insertion.glb` is the one the README viewer loads and animates as the pick-and-place insertion. Only the LED mesh and its four materials were replaced, with geometry from `step2glb convert` of the coloured STEP (same frame and units: metres, Z-up, seated on z = 0) and the node's existing Z scale kept so the rendered height stays at the datasheet package height. The triangle drop is the LED alone: the old LED mesh was a finer tessellation of the same KiCad solid; step2glb tessellates the planar faces with fewer triangles. The lens material is now roughness 0.35 with a clear coat.++## Hero++- `in-s42atr-hero.glb`: built like john/eee-fk1v470p's hero: the coloured LED (Z scale 1.0) plus nonphysical footprint reference art from the page's current `IN-S42ATR.kicad_mod` (Colby's cathode bracket): teal dashed pad outlines 50 %, silkscreen 30 %, K / A pad labels 50 %, each a declared viewer layer. No laser etch. `page.json` `component.parts.model_3d` now points at it (the composite `IN-S42ATR.glb` stays as `model_3d_plain`).+- `screenshots/hero.png`: Ray layout from the shared basic-part hero template (COMPONENT kicker, page title, MPN, brief, manufacturer and package, ADOM BASIC PART pill), the coloured LED rendered iso on the right, no footprint art. Old hero kept at `../before/in-s42atr/before-hero.png`.++## page.json and README++- `page.json` `component.parts`: `step` / `model_3d_step` = `IN-S42ATR.step` (coloured, default), `model_3d_step_plain` = `IN-S42ATR-uncoloured.step` (optional), `model_3d` = `in-s42atr-hero.glb`, `model_3d_plain` = `IN-S42ATR.glb`, plus `viewer_3d.tooltips: authored`.+- `README.md` Downloads table: the STEP row now says coloured/default, plus a row for the optional uncoloured STEP and one for the hero GLB.+- Not changed: `README.html` (generated; it has no STEP link, and its inline viewer loads `IN-S42ATR.insertion.glb`, which was rebuilt under the same name), `IN-S42ATR.html` (its "3D Model (.step)" button points at a legacy static host by the unchanged file name), `.kicad_mod`, `.kicad_sym`, `.lbr`, `.adom-lbr.json`, the fpview/symview HTML (none of them reference a 3D model).++## Open issues seen (not fixed here, other owners)++- The KiCad chip-LED STEP height differs from the datasheet: matches (0.45 mm). The page GLBs and the hero scale it in Z (as the composites already did); the STEP itself is left unchanged.+- `IN-S42ATR.adom-lbr.json` footprint pads (0.6 x 0.5 mm) and silk do not match the current `IN-S42ATR.kicad_mod` (0.4 x 0.6 mm pads, Colby's bracket); the hero uses the `.kicad_mod`.
IN-S42ATR-fpview.html+1−1
@@ -323,7 +323,7 @@   <button onclick="zoomFit()">Fit</button>   <button onclick="zoomReset()">1:1</button>   <button onclick="toggleGrid()" id="grid-btn" class="active">Grid</button>-  <button onclick="toggleSolder()" id="solder-btn" class="active" title="250µm solder jet blobs for Adom InstaPCB paste jetting. Adom uses this placement data for its jetting sequence. Blob count, position, and size (250–600µm) are adjustable. Placement accuracy: ±50µm.">Solder</button>+  <button onclick="toggleSolder()" id="solder-btn" class="active" title="250µm solder jet blobs for paste jetting at the 3rd party fab, which uses this placement data for its jetting sequence. Blob count, position, and size (250–600µm) are adjustable. Placement accuracy: ±50µm.">Solder</button>   <button onclick="toggleLabels()" id="labels-btn">Labels</button>   <div class="sep"></div>   <button onclick="showRegenPrompt()" id="regen-btn" title="Show regeneration prompt to paste into Claude Code">Regen</button>
IN-S42ATR-uncoloured.stepadded+4522
@@ -0,0 +1,4522 @@+ISO-10303-21;+HEADER;+FILE_DESCRIPTION(('Open CASCADE Model'),'2;1');+FILE_NAME('Open CASCADE Shape Model','2026-07-20T23:06:05',('Author'),(+    'Open CASCADE'),'Open CASCADE STEP processor 7.9','Open CASCADE 7.9'+  ,'Unknown');+FILE_SCHEMA(('AUTOMOTIVE_DESIGN { 1 0 10303 214 1 1 1 1 }'));+ENDSEC;+DATA;+#1 = APPLICATION_PROTOCOL_DEFINITION('international standard',+  'automotive_design',2000,#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('Open CASCADE STEP translator 7.9 1',+  'Open CASCADE STEP translator 7.9 1','',(#8));+#8 = PRODUCT_CONTEXT('',#2,'mechanical');+#9 = PRODUCT_DEFINITION_CONTEXT('part definition',#2,'design');+#10 = ADVANCED_BREP_SHAPE_REPRESENTATION('',(#11,#15),#3198);+#11 = AXIS2_PLACEMENT_3D('',#12,#13,#14);+#12 = CARTESIAN_POINT('',(0.,0.,0.));+#13 = DIRECTION('',(0.,0.,1.));+#14 = DIRECTION('',(1.,0.,-0.));+#15 = MANIFOLD_SOLID_BREP('',#16);+#16 = CLOSED_SHELL('',(#17,#125,#250,#452,#495,#591,#668,#692,#771,#819,+    #998,#1348,#1532,#1580,#1652,#1721,#1854,#1897,#1940,#1983,#2048,+    #2055,#2199,#2246,#2270,#2314,#2341,#2368,#2395,#2419,#2443,#2505,+    #2551,#2598,#2641,#2665,#2732,#2775,#2799,#2847,#2894,#2938,#2985,+    #3087,#3111,#3118,#3159,#3166,#3179,#3192));+#17 = ADVANCED_FACE('',(#18),#31,.F.);+#18 = FACE_BOUND('',#19,.F.);+#19 = EDGE_LOOP('',(#20,#52,#77,#102));+#20 = ORIENTED_EDGE('',*,*,#21,.T.);+#21 = EDGE_CURVE('',#22,#24,#26,.T.);+#22 = VERTEX_POINT('',#23);+#23 = CARTESIAN_POINT('',(-0.35,-0.25,0.1665));+#24 = VERTEX_POINT('',#25);+#25 = CARTESIAN_POINT('',(-0.315,-0.25,0.45));+#26 = SURFACE_CURVE('',#27,(#30,#41),.PCURVE_S1.);+#27 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#28,#29),.UNSPECIFIED.,.F.,.F.,(2,+    2),(0.,0.316938479835),.PIECEWISE_BEZIER_KNOTS.);+#28 = CARTESIAN_POINT('',(-0.35,-0.25,0.1665));+#29 = CARTESIAN_POINT('',(-0.315,-0.25,0.45));+#30 = PCURVE('',#31,#36);+#31 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#32,#33)+    ,(#34,#35+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(-0.151886104513,+    0.163113895487),(-0.35,0.35),.PIECEWISE_BEZIER_KNOTS.);+#32 = CARTESIAN_POINT('',(-0.35,-0.25,0.1665));+#33 = CARTESIAN_POINT('',(0.35,-0.25,0.1665));+#34 = CARTESIAN_POINT('',(-0.35,-0.25,0.45));+#35 = CARTESIAN_POINT('',(0.35,-0.25,0.45));+#36 = DEFINITIONAL_REPRESENTATION('',(#37),#40);+#37 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#38,#39),.UNSPECIFIED.,.F.,.F.,(2,+    2),(0.,0.316938479835),.PIECEWISE_BEZIER_KNOTS.);+#38 = CARTESIAN_POINT('',(-0.151886104513,-0.35));+#39 = CARTESIAN_POINT('',(0.163113895487,-0.315));+#40 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#41 = PCURVE('',#42,#47);+#42 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#43,#44)+    ,(#45,#46+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,0.316938479835),(-0.5,+    0.),.PIECEWISE_BEZIER_KNOTS.);+#43 = CARTESIAN_POINT('',(-0.35,-0.25,0.1665));+#44 = CARTESIAN_POINT('',(-0.35,0.25,0.1665));+#45 = CARTESIAN_POINT('',(-0.315,-0.25,0.45));+#46 = CARTESIAN_POINT('',(-0.315,0.25,0.45));+#47 = DEFINITIONAL_REPRESENTATION('',(#48),#51);+#48 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#49,#50),.UNSPECIFIED.,.F.,.F.,(2,+    2),(0.,0.316938479835),.PIECEWISE_BEZIER_KNOTS.);+#49 = CARTESIAN_POINT('',(0.,-0.5));+#50 = CARTESIAN_POINT('',(0.316938479835,-0.5));+#51 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#52 = ORIENTED_EDGE('',*,*,#53,.T.);+#53 = EDGE_CURVE('',#24,#54,#56,.T.);+#54 = VERTEX_POINT('',#55);+#55 = CARTESIAN_POINT('',(0.315,-0.25,0.45));+#56 = SURFACE_CURVE('',#57,(#60,#66),.PCURVE_S1.);+#57 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#58,#59),.UNSPECIFIED.,.F.,.F.,(2,+    2),(0.,0.63),.PIECEWISE_BEZIER_KNOTS.);+#58 = CARTESIAN_POINT('',(-0.315,-0.25,0.45));+#59 = CARTESIAN_POINT('',(0.315,-0.25,0.45));+#60 = PCURVE('',#31,#61);+#61 = DEFINITIONAL_REPRESENTATION('',(#62),#65);+#62 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#63,#64),.UNSPECIFIED.,.F.,.F.,(2,+    2),(0.,0.63),.PIECEWISE_BEZIER_KNOTS.);+#63 = CARTESIAN_POINT('',(0.163113895487,-0.315));+#64 = CARTESIAN_POINT('',(0.163113895487,0.315));+#65 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#66 = PCURVE('',#67,#72);+#67 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#68,#69)+    ,(#70,#71+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,0.63),(-0.5,0.),+  .PIECEWISE_BEZIER_KNOTS.);+#68 = CARTESIAN_POINT('',(-0.315,-0.25,0.45));+#69 = CARTESIAN_POINT('',(-0.315,0.25,0.45));+#70 = CARTESIAN_POINT('',(0.315,-0.25,0.45));+#71 = CARTESIAN_POINT('',(0.315,0.25,0.45));+#72 = DEFINITIONAL_REPRESENTATION('',(#73),#76);+#73 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#74,#75),.UNSPECIFIED.,.F.,.F.,(2,+    2),(0.,0.63),.PIECEWISE_BEZIER_KNOTS.);+#74 = CARTESIAN_POINT('',(0.,-0.5));+#75 = CARTESIAN_POINT('',(0.63,-0.5));+#76 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#77 = ORIENTED_EDGE('',*,*,#78,.T.);+#78 = EDGE_CURVE('',#54,#79,#81,.T.);+#79 = VERTEX_POINT('',#80);+#80 = CARTESIAN_POINT('',(0.35,-0.25,0.1665));+#81 = SURFACE_CURVE('',#82,(#85,#91),.PCURVE_S1.);+#82 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#83,#84),.UNSPECIFIED.,.F.,.F.,(2,+    2),(0.,0.316938479835),.PIECEWISE_BEZIER_KNOTS.);+#83 = CARTESIAN_POINT('',(0.315,-0.25,0.45));+#84 = CARTESIAN_POINT('',(0.35,-0.25,0.1665));+#85 = PCURVE('',#31,#86);+#86 = DEFINITIONAL_REPRESENTATION('',(#87),#90);+#87 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#88,#89),.UNSPECIFIED.,.F.,.F.,(2,+    2),(0.,0.316938479835),.PIECEWISE_BEZIER_KNOTS.);+#88 = CARTESIAN_POINT('',(0.163113895487,0.315));+#89 = CARTESIAN_POINT('',(-0.151886104513,0.35));+#90 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#91 = PCURVE('',#92,#97);+#92 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#93,#94)+    ,(#95,#96+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,0.316938479835),(-0.5,+    0.),.PIECEWISE_BEZIER_KNOTS.);+#93 = CARTESIAN_POINT('',(0.315,-0.25,0.45));+#94 = CARTESIAN_POINT('',(0.315,0.25,0.45));+#95 = CARTESIAN_POINT('',(0.35,-0.25,0.1665));+#96 = CARTESIAN_POINT('',(0.35,0.25,0.1665));+#97 = DEFINITIONAL_REPRESENTATION('',(#98),#101);+#98 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#99,#100),.UNSPECIFIED.,.F.,.F.,(2+    ,2),(0.,0.316938479835),.PIECEWISE_BEZIER_KNOTS.);+#99 = CARTESIAN_POINT('',(0.,-0.5));+#100 = CARTESIAN_POINT('',(0.316938479835,-0.5));+#101 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#102 = ORIENTED_EDGE('',*,*,#103,.T.);+#103 = EDGE_CURVE('',#79,#22,#104,.T.);+#104 = SURFACE_CURVE('',#105,(#108,#114),.PCURVE_S1.);+#105 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#106,#107),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.7),.PIECEWISE_BEZIER_KNOTS.);+#106 = CARTESIAN_POINT('',(0.35,-0.25,0.1665));+#107 = CARTESIAN_POINT('',(-0.35,-0.25,0.1665));+#108 = PCURVE('',#31,#109);+#109 = DEFINITIONAL_REPRESENTATION('',(#110),#113);+#110 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#111,#112),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.7),.PIECEWISE_BEZIER_KNOTS.);+#111 = CARTESIAN_POINT('',(-0.151886104513,0.35));+#112 = CARTESIAN_POINT('',(-0.151886104513,-0.35));+#113 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#114 = PCURVE('',#115,#120);+#115 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#116,#117)+    ,(#118,#119+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,0.17),(0.,0.97),+  .PIECEWISE_BEZIER_KNOTS.);+#116 = CARTESIAN_POINT('',(-0.485,-0.25,1.35E-02));+#117 = CARTESIAN_POINT('',(0.485,-0.25,1.35E-02));+#118 = CARTESIAN_POINT('',(-0.485,-0.25,0.1665));+#119 = CARTESIAN_POINT('',(0.485,-0.25,0.1665));+#120 = DEFINITIONAL_REPRESENTATION('',(#121),#124);+#121 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#122,#123),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.7),.PIECEWISE_BEZIER_KNOTS.);+#122 = CARTESIAN_POINT('',(0.17,0.835));+#123 = CARTESIAN_POINT('',(0.17,0.135));+#124 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#125 = ADVANCED_FACE('',(#126),#42,.T.);+#126 = FACE_BOUND('',#127,.T.);+#127 = EDGE_LOOP('',(#128,#155,#183,#206,#207,#227));+#128 = ORIENTED_EDGE('',*,*,#129,.T.);+#129 = EDGE_CURVE('',#130,#132,#134,.T.);+#130 = VERTEX_POINT('',#131);+#131 = CARTESIAN_POINT('',(-0.35,0.25,0.1665));+#132 = VERTEX_POINT('',#133);+#133 = CARTESIAN_POINT('',(-0.35,0.1875,0.1665));+#134 = SURFACE_CURVE('',#135,(#138,#144),.PCURVE_S1.);+#135 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#136,#137),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,6.25E-02),.PIECEWISE_BEZIER_KNOTS.);+#136 = CARTESIAN_POINT('',(-0.35,0.25,0.1665));+#137 = CARTESIAN_POINT('',(-0.35,0.1875,0.1665));+#138 = PCURVE('',#42,#139);+#139 = DEFINITIONAL_REPRESENTATION('',(#140),#143);+#140 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#141,#142),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,6.25E-02),.PIECEWISE_BEZIER_KNOTS.);+#141 = CARTESIAN_POINT('',(0.,0.));+#142 = CARTESIAN_POINT('',(0.,-6.25E-02));+#143 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#144 = PCURVE('',#145,#150);+#145 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#146,#147)+    ,(#148,#149+  )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(2.25E-02,0.135),(0.4375,0.5)+  ,.PIECEWISE_BEZIER_KNOTS.);+#146 = CARTESIAN_POINT('',(-0.4625,0.1875,0.1665));+#147 = CARTESIAN_POINT('',(-0.4625,0.25,0.1665));+#148 = CARTESIAN_POINT('',(-0.35,0.1875,0.1665));+#149 = CARTESIAN_POINT('',(-0.35,0.25,0.1665));+#150 = DEFINITIONAL_REPRESENTATION('',(#151),#154);+#151 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#152,#153),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,6.25E-02),.PIECEWISE_BEZIER_KNOTS.);+#152 = CARTESIAN_POINT('',(0.135,0.5));+#153 = CARTESIAN_POINT('',(0.135,0.4375));+#154 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#155 = ORIENTED_EDGE('',*,*,#156,.F.);+#156 = EDGE_CURVE('',#157,#132,#159,.T.);+#157 = VERTEX_POINT('',#158);+#158 = CARTESIAN_POINT('',(-0.35,-0.1875,0.1665));+#159 = SURFACE_CURVE('',#160,(#163,#169),.PCURVE_S1.);+#160 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#161,#162),.UNSPECIFIED.,.F.,.F.,+  (2,2),(6.25E-02,0.4375),.PIECEWISE_BEZIER_KNOTS.);+#161 = CARTESIAN_POINT('',(-0.35,-0.1875,0.1665));+#162 = CARTESIAN_POINT('',(-0.35,0.1875,0.1665));+#163 = PCURVE('',#42,#164);+#164 = DEFINITIONAL_REPRESENTATION('',(#165),#168);+#165 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#166,#167),.UNSPECIFIED.,.F.,.F.,+  (2,2),(6.25E-02,0.4375),.PIECEWISE_BEZIER_KNOTS.);+#166 = CARTESIAN_POINT('',(0.,-0.4375));+#167 = CARTESIAN_POINT('',(0.,-6.25E-02));+#168 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#169 = PCURVE('',#170,#177);+#170 = ( BOUNDED_SURFACE() B_SPLINE_SURFACE(2,1,(+    (#171,#172)+    ,(#173,#174)+,(#175,#176+    )),.UNSPECIFIED.,.F.,.F.,.F.) B_SPLINE_SURFACE_WITH_KNOTS((3,3),(2,2+    ),(4.712388980385,6.28318530718),(6.25E-02,0.4375),+.PIECEWISE_BEZIER_KNOTS.) GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_SURFACE((+    (1.,1.)+    ,(0.707106781187,0.707106781187)+,(1.,1.))) REPRESENTATION_ITEM('') SURFACE() );+#171 = CARTESIAN_POINT('',(-0.365,-0.1875,0.18));+#172 = CARTESIAN_POINT('',(-0.365,0.1875,0.18));+#173 = CARTESIAN_POINT('',(-0.35,-0.1875,0.18));+#174 = CARTESIAN_POINT('',(-0.35,0.1875,0.18));+#175 = CARTESIAN_POINT('',(-0.35,-0.1875,0.1665));+#176 = CARTESIAN_POINT('',(-0.35,0.1875,0.1665));+#177 = DEFINITIONAL_REPRESENTATION('',(#178),#182);+#178 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#179,#180,#181),.UNSPECIFIED.,.F.+  ,.F.,(3,3),(6.25E-02,0.4375),.PIECEWISE_BEZIER_KNOTS.);+#179 = CARTESIAN_POINT('',(6.28318530718,6.25E-02));+#180 = CARTESIAN_POINT('',(6.28318530718,0.25));+#181 = CARTESIAN_POINT('',(6.28318530718,0.4375));+#182 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#183 = ORIENTED_EDGE('',*,*,#184,.T.);+#184 = EDGE_CURVE('',#157,#22,#185,.T.);+#185 = SURFACE_CURVE('',#186,(#189,#195),.PCURVE_S1.);+#186 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#187,#188),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.4375,0.5),.PIECEWISE_BEZIER_KNOTS.);+#187 = CARTESIAN_POINT('',(-0.35,-0.1875,0.1665));+#188 = CARTESIAN_POINT('',(-0.35,-0.25,0.1665));+#189 = PCURVE('',#42,#190);+#190 = DEFINITIONAL_REPRESENTATION('',(#191),#194);+#191 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#192,#193),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.4375,0.5),.PIECEWISE_BEZIER_KNOTS.);+#192 = CARTESIAN_POINT('',(0.,-0.4375));+#193 = CARTESIAN_POINT('',(0.,-0.5));+#194 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#195 = PCURVE('',#196,#201);+#196 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#197,#198)+    ,(#199,#200+  )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(2.25E-02,0.135),(0.,6.25E-02+    ),.PIECEWISE_BEZIER_KNOTS.);+#197 = CARTESIAN_POINT('',(-0.4625,-0.25,0.1665));+#198 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.1665));+#199 = CARTESIAN_POINT('',(-0.35,-0.25,0.1665));+#200 = CARTESIAN_POINT('',(-0.35,-0.1875,0.1665));+#201 = DEFINITIONAL_REPRESENTATION('',(#202),#205);+#202 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#203,#204),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.4375,0.5),.PIECEWISE_BEZIER_KNOTS.);+#203 = CARTESIAN_POINT('',(0.135,6.25E-02));+#204 = CARTESIAN_POINT('',(0.135,0.));+#205 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#206 = ORIENTED_EDGE('',*,*,#21,.T.);+#207 = ORIENTED_EDGE('',*,*,#208,.F.);+#208 = EDGE_CURVE('',#209,#24,#211,.T.);+#209 = VERTEX_POINT('',#210);+#210 = CARTESIAN_POINT('',(-0.315,0.25,0.45));+#211 = SURFACE_CURVE('',#212,(#215,#221),.PCURVE_S1.);+#212 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#213,#214),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#213 = CARTESIAN_POINT('',(-0.315,0.25,0.45));+#214 = CARTESIAN_POINT('',(-0.315,-0.25,0.45));+#215 = PCURVE('',#42,#216);+#216 = DEFINITIONAL_REPRESENTATION('',(#217),#220);+#217 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#218,#219),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#218 = CARTESIAN_POINT('',(0.316938479835,0.));+#219 = CARTESIAN_POINT('',(0.316938479835,-0.5));+#220 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#221 = PCURVE('',#67,#222);+#222 = DEFINITIONAL_REPRESENTATION('',(#223),#226);+#223 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#224,#225),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#224 = CARTESIAN_POINT('',(0.,0.));+#225 = CARTESIAN_POINT('',(0.,-0.5));+#226 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#227 = ORIENTED_EDGE('',*,*,#228,.F.);+#228 = EDGE_CURVE('',#130,#209,#229,.T.);+#229 = SURFACE_CURVE('',#230,(#233,#239),.PCURVE_S1.);+#230 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#231,#232),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.316938479835),.PIECEWISE_BEZIER_KNOTS.);+#231 = CARTESIAN_POINT('',(-0.35,0.25,0.1665));+#232 = CARTESIAN_POINT('',(-0.315,0.25,0.45));+#233 = PCURVE('',#42,#234);+#234 = DEFINITIONAL_REPRESENTATION('',(#235),#238);+#235 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#236,#237),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.316938479835),.PIECEWISE_BEZIER_KNOTS.);+#236 = CARTESIAN_POINT('',(0.,0.));+#237 = CARTESIAN_POINT('',(0.316938479835,0.));+#238 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#239 = PCURVE('',#240,#245);+#240 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#241,#242)+    ,(#243,#244+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(-0.151886104513,+    0.163113895487),(-0.35,0.35),.PIECEWISE_BEZIER_KNOTS.);+#241 = CARTESIAN_POINT('',(-0.35,0.25,0.1665));+#242 = CARTESIAN_POINT('',(0.35,0.25,0.1665));+#243 = CARTESIAN_POINT('',(-0.35,0.25,0.45));+#244 = CARTESIAN_POINT('',(0.35,0.25,0.45));+#245 = DEFINITIONAL_REPRESENTATION('',(#246),#249);+#246 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#247,#248),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.316938479835),.PIECEWISE_BEZIER_KNOTS.);+#247 = CARTESIAN_POINT('',(-0.151886104513,-0.35));+#248 = CARTESIAN_POINT('',(0.163113895487,-0.315));+#249 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#250 = ADVANCED_FACE('',(#251),#115,.F.);+#251 = FACE_BOUND('',#252,.F.);+#252 = EDGE_LOOP('',(#253,#280,#300,#320,#338,#339,#364,#389,#409,#429)+  );+#253 = ORIENTED_EDGE('',*,*,#254,.F.);+#254 = EDGE_CURVE('',#255,#257,#259,.T.);+#255 = VERTEX_POINT('',#256);+#256 = CARTESIAN_POINT('',(-0.485,-0.25,1.35E-02));+#257 = VERTEX_POINT('',#258);+#258 = CARTESIAN_POINT('',(-0.4625,-0.25,1.35E-02));+#259 = SURFACE_CURVE('',#260,(#263,#269),.PCURVE_S1.);+#260 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#261,#262),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,2.25E-02),.PIECEWISE_BEZIER_KNOTS.);+#261 = CARTESIAN_POINT('',(-0.485,-0.25,1.35E-02));+#262 = CARTESIAN_POINT('',(-0.4625,-0.25,1.35E-02));+#263 = PCURVE('',#115,#264);+#264 = DEFINITIONAL_REPRESENTATION('',(#265),#268);+#265 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#266,#267),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,2.25E-02),.PIECEWISE_BEZIER_KNOTS.);+#266 = CARTESIAN_POINT('',(0.,0.));+#267 = CARTESIAN_POINT('',(0.,2.25E-02));+#268 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#269 = PCURVE('',#270,#275);+#270 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#271,#272)+    ,(#273,#274+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,0.2),(0.,3.75E-02),+  .PIECEWISE_BEZIER_KNOTS.);+#271 = CARTESIAN_POINT('',(-0.5,-0.25,0.));+#272 = CARTESIAN_POINT('',(-0.4625,-0.25,0.));+#273 = CARTESIAN_POINT('',(-0.5,-0.25,0.18));+#274 = CARTESIAN_POINT('',(-0.4625,-0.25,0.18));+#275 = DEFINITIONAL_REPRESENTATION('',(#276),#279);+#276 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#277,#278),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,2.25E-02),.PIECEWISE_BEZIER_KNOTS.);+#277 = CARTESIAN_POINT('',(1.5E-02,1.5E-02));+#278 = CARTESIAN_POINT('',(1.5E-02,3.75E-02));+#279 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#280 = ORIENTED_EDGE('',*,*,#281,.T.);+#281 = EDGE_CURVE('',#255,#282,#284,.T.);+#282 = VERTEX_POINT('',#283);+#283 = CARTESIAN_POINT('',(-0.485,-0.25,0.1665));+#284 = SURFACE_CURVE('',#285,(#288,#294),.PCURVE_S1.);+#285 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#286,#287),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.17),.PIECEWISE_BEZIER_KNOTS.);+#286 = CARTESIAN_POINT('',(-0.485,-0.25,1.35E-02));+#287 = CARTESIAN_POINT('',(-0.485,-0.25,0.1665));+#288 = PCURVE('',#115,#289);+#289 = DEFINITIONAL_REPRESENTATION('',(#290),#293);+#290 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#291,#292),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.17),.PIECEWISE_BEZIER_KNOTS.);+#291 = CARTESIAN_POINT('',(0.,0.));+#292 = CARTESIAN_POINT('',(0.17,0.));+#293 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#294 = PCURVE('',#270,#295);+#295 = DEFINITIONAL_REPRESENTATION('',(#296),#299);+#296 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#297,#298),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.17),.PIECEWISE_BEZIER_KNOTS.);+#297 = CARTESIAN_POINT('',(1.5E-02,1.5E-02));+#298 = CARTESIAN_POINT('',(0.185,1.5E-02));+#299 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#300 = ORIENTED_EDGE('',*,*,#301,.T.);+#301 = EDGE_CURVE('',#282,#302,#304,.T.);+#302 = VERTEX_POINT('',#303);+#303 = CARTESIAN_POINT('',(-0.4625,-0.25,0.1665));+#304 = SURFACE_CURVE('',#305,(#308,#314),.PCURVE_S1.);+#305 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#306,#307),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,2.25E-02),.PIECEWISE_BEZIER_KNOTS.);+#306 = CARTESIAN_POINT('',(-0.485,-0.25,0.1665));+#307 = CARTESIAN_POINT('',(-0.4625,-0.25,0.1665));+#308 = PCURVE('',#115,#309);+#309 = DEFINITIONAL_REPRESENTATION('',(#310),#313);+#310 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#311,#312),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,2.25E-02),.PIECEWISE_BEZIER_KNOTS.);+#311 = CARTESIAN_POINT('',(0.17,0.));+#312 = CARTESIAN_POINT('',(0.17,2.25E-02));+#313 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#314 = PCURVE('',#270,#315);+#315 = DEFINITIONAL_REPRESENTATION('',(#316),#319);+#316 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#317,#318),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,2.25E-02),.PIECEWISE_BEZIER_KNOTS.);+#317 = CARTESIAN_POINT('',(0.185,1.5E-02));+#318 = CARTESIAN_POINT('',(0.185,3.75E-02));+#319 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#320 = ORIENTED_EDGE('',*,*,#321,.T.);+#321 = EDGE_CURVE('',#302,#22,#322,.T.);+#322 = SURFACE_CURVE('',#323,(#326,#332),.PCURVE_S1.);+#323 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#324,#325),.UNSPECIFIED.,.F.,.F.,+  (2,2),(2.25E-02,0.135),.PIECEWISE_BEZIER_KNOTS.);+#324 = CARTESIAN_POINT('',(-0.4625,-0.25,0.1665));+#325 = CARTESIAN_POINT('',(-0.35,-0.25,0.1665));+#326 = PCURVE('',#115,#327);+#327 = DEFINITIONAL_REPRESENTATION('',(#328),#331);+#328 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#329,#330),.UNSPECIFIED.,.F.,.F.,+  (2,2),(2.25E-02,0.135),.PIECEWISE_BEZIER_KNOTS.);+#329 = CARTESIAN_POINT('',(0.17,2.25E-02));+#330 = CARTESIAN_POINT('',(0.17,0.135));+#331 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#332 = PCURVE('',#196,#333);+#333 = DEFINITIONAL_REPRESENTATION('',(#334),#337);+#334 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#335,#336),.UNSPECIFIED.,.F.,.F.,+  (2,2),(2.25E-02,0.135),.PIECEWISE_BEZIER_KNOTS.);+#335 = CARTESIAN_POINT('',(2.25E-02,0.));+#336 = CARTESIAN_POINT('',(0.135,0.));+#337 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#338 = ORIENTED_EDGE('',*,*,#103,.F.);+#339 = ORIENTED_EDGE('',*,*,#340,.T.);+#340 = EDGE_CURVE('',#79,#341,#343,.T.);+#341 = VERTEX_POINT('',#342);+#342 = CARTESIAN_POINT('',(0.4625,-0.25,0.1665));+#343 = SURFACE_CURVE('',#344,(#347,#353),.PCURVE_S1.);+#344 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#345,#346),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.835,0.9475),.PIECEWISE_BEZIER_KNOTS.);+#345 = CARTESIAN_POINT('',(0.35,-0.25,0.1665));+#346 = CARTESIAN_POINT('',(0.4625,-0.25,0.1665));+#347 = PCURVE('',#115,#348);+#348 = DEFINITIONAL_REPRESENTATION('',(#349),#352);+#349 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#350,#351),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.835,0.9475),.PIECEWISE_BEZIER_KNOTS.);+#350 = CARTESIAN_POINT('',(0.17,0.835));+#351 = CARTESIAN_POINT('',(0.17,0.9475));+#352 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#353 = PCURVE('',#354,#359);+#354 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#355,#356)+    ,(#357,#358+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.835,0.9475),(0.,6.25E-02+    ),.PIECEWISE_BEZIER_KNOTS.);+#355 = CARTESIAN_POINT('',(0.35,-0.25,0.1665));+#356 = CARTESIAN_POINT('',(0.35,-0.1875,0.1665));+#357 = CARTESIAN_POINT('',(0.4625,-0.25,0.1665));+#358 = CARTESIAN_POINT('',(0.4625,-0.1875,0.1665));+#359 = DEFINITIONAL_REPRESENTATION('',(#360),#363);+#360 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#361,#362),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.835,0.9475),.PIECEWISE_BEZIER_KNOTS.);+#361 = CARTESIAN_POINT('',(0.835,0.));+#362 = CARTESIAN_POINT('',(0.9475,0.));+#363 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#364 = ORIENTED_EDGE('',*,*,#365,.T.);+#365 = EDGE_CURVE('',#341,#366,#368,.T.);+#366 = VERTEX_POINT('',#367);+#367 = CARTESIAN_POINT('',(0.485,-0.25,0.1665));+#368 = SURFACE_CURVE('',#369,(#372,#378),.PCURVE_S1.);+#369 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#370,#371),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.9475,0.97),.PIECEWISE_BEZIER_KNOTS.);+#370 = CARTESIAN_POINT('',(0.4625,-0.25,0.1665));+#371 = CARTESIAN_POINT('',(0.485,-0.25,0.1665));+#372 = PCURVE('',#115,#373);+#373 = DEFINITIONAL_REPRESENTATION('',(#374),#377);+#374 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#375,#376),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.9475,0.97),.PIECEWISE_BEZIER_KNOTS.);+#375 = CARTESIAN_POINT('',(0.17,0.9475));+#376 = CARTESIAN_POINT('',(0.17,0.97));+#377 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#378 = PCURVE('',#379,#384);+#379 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#380,#381)+    ,(#382,#383+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,0.2),(0.1125,0.15),+  .PIECEWISE_BEZIER_KNOTS.);+#380 = CARTESIAN_POINT('',(0.4625,-0.25,0.));+#381 = CARTESIAN_POINT('',(0.5,-0.25,0.));+#382 = CARTESIAN_POINT('',(0.4625,-0.25,0.18));+#383 = CARTESIAN_POINT('',(0.5,-0.25,0.18));+#384 = DEFINITIONAL_REPRESENTATION('',(#385),#388);+#385 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#386,#387),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.9475,0.97),.PIECEWISE_BEZIER_KNOTS.);+#386 = CARTESIAN_POINT('',(0.185,0.1125));+#387 = CARTESIAN_POINT('',(0.185,0.135));+#388 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#389 = ORIENTED_EDGE('',*,*,#390,.F.);+#390 = EDGE_CURVE('',#391,#366,#393,.T.);+#391 = VERTEX_POINT('',#392);+#392 = CARTESIAN_POINT('',(0.485,-0.25,1.35E-02));+#393 = SURFACE_CURVE('',#394,(#397,#403),.PCURVE_S1.);+#394 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#395,#396),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.17),.PIECEWISE_BEZIER_KNOTS.);+#395 = CARTESIAN_POINT('',(0.485,-0.25,1.35E-02));+#396 = CARTESIAN_POINT('',(0.485,-0.25,0.1665));+#397 = PCURVE('',#115,#398);+#398 = DEFINITIONAL_REPRESENTATION('',(#399),#402);+#399 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#400,#401),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.17),.PIECEWISE_BEZIER_KNOTS.);+#400 = CARTESIAN_POINT('',(0.,0.97));+#401 = CARTESIAN_POINT('',(0.17,0.97));+#402 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#403 = PCURVE('',#379,#404);+#404 = DEFINITIONAL_REPRESENTATION('',(#405),#408);+#405 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#406,#407),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.17),.PIECEWISE_BEZIER_KNOTS.);+#406 = CARTESIAN_POINT('',(1.5E-02,0.135));+#407 = CARTESIAN_POINT('',(0.185,0.135));+#408 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#409 = ORIENTED_EDGE('',*,*,#410,.F.);+#410 = EDGE_CURVE('',#411,#391,#413,.T.);+#411 = VERTEX_POINT('',#412);+#412 = CARTESIAN_POINT('',(0.4625,-0.25,1.35E-02));+#413 = SURFACE_CURVE('',#414,(#417,#423),.PCURVE_S1.);+#414 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#415,#416),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.9475,0.97),.PIECEWISE_BEZIER_KNOTS.);+#415 = CARTESIAN_POINT('',(0.4625,-0.25,1.35E-02));+#416 = CARTESIAN_POINT('',(0.485,-0.25,1.35E-02));+#417 = PCURVE('',#115,#418);+#418 = DEFINITIONAL_REPRESENTATION('',(#419),#422);+#419 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#420,#421),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.9475,0.97),.PIECEWISE_BEZIER_KNOTS.);+#420 = CARTESIAN_POINT('',(0.,0.9475));+#421 = CARTESIAN_POINT('',(0.,0.97));+#422 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#423 = PCURVE('',#379,#424);+#424 = DEFINITIONAL_REPRESENTATION('',(#425),#428);+#425 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#426,#427),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.9475,0.97),.PIECEWISE_BEZIER_KNOTS.);+#426 = CARTESIAN_POINT('',(1.5E-02,0.1125));+#427 = CARTESIAN_POINT('',(1.5E-02,0.135));+#428 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#429 = ORIENTED_EDGE('',*,*,#430,.F.);+#430 = EDGE_CURVE('',#257,#411,#431,.T.);+#431 = SURFACE_CURVE('',#432,(#435,#441),.PCURVE_S1.);+#432 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#433,#434),.UNSPECIFIED.,.F.,.F.,+  (2,2),(2.25E-02,0.9475),.PIECEWISE_BEZIER_KNOTS.);+#433 = CARTESIAN_POINT('',(-0.4625,-0.25,1.35E-02));+#434 = CARTESIAN_POINT('',(0.4625,-0.25,1.35E-02));+#435 = PCURVE('',#115,#436);+#436 = DEFINITIONAL_REPRESENTATION('',(#437),#440);+#437 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#438,#439),.UNSPECIFIED.,.F.,.F.,+  (2,2),(2.25E-02,0.9475),.PIECEWISE_BEZIER_KNOTS.);+#438 = CARTESIAN_POINT('',(0.,2.25E-02));+#439 = CARTESIAN_POINT('',(0.,0.9475));+#440 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#441 = PCURVE('',#442,#447);+#442 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#443,#444)+    ,(#445,#446+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(2.25E-02,0.9475),(0.,0.5),+  .PIECEWISE_BEZIER_KNOTS.);+#443 = CARTESIAN_POINT('',(-0.4625,-0.25,1.35E-02));+#444 = CARTESIAN_POINT('',(-0.4625,0.25,1.35E-02));+#445 = CARTESIAN_POINT('',(0.4625,-0.25,1.35E-02));+#446 = CARTESIAN_POINT('',(0.4625,0.25,1.35E-02));+#447 = DEFINITIONAL_REPRESENTATION('',(#448),#451);+#448 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#449,#450),.UNSPECIFIED.,.F.,.F.,+  (2,2),(2.25E-02,0.9475),.PIECEWISE_BEZIER_KNOTS.);+#449 = CARTESIAN_POINT('',(2.25E-02,0.));+#450 = CARTESIAN_POINT('',(0.9475,0.));+#451 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#452 = ADVANCED_FACE('',(#453),#67,.T.);+#453 = FACE_BOUND('',#454,.T.);+#454 = EDGE_LOOP('',(#455,#456,#457,#477));+#455 = ORIENTED_EDGE('',*,*,#208,.T.);+#456 = ORIENTED_EDGE('',*,*,#53,.T.);+#457 = ORIENTED_EDGE('',*,*,#458,.F.);+#458 = EDGE_CURVE('',#459,#54,#461,.T.);+#459 = VERTEX_POINT('',#460);+#460 = CARTESIAN_POINT('',(0.315,0.25,0.45));+#461 = SURFACE_CURVE('',#462,(#465,#471),.PCURVE_S1.);+#462 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#463,#464),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#463 = CARTESIAN_POINT('',(0.315,0.25,0.45));+#464 = CARTESIAN_POINT('',(0.315,-0.25,0.45));+#465 = PCURVE('',#67,#466);+#466 = DEFINITIONAL_REPRESENTATION('',(#467),#470);+#467 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#468,#469),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#468 = CARTESIAN_POINT('',(0.63,0.));+#469 = CARTESIAN_POINT('',(0.63,-0.5));+#470 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#471 = PCURVE('',#92,#472);+#472 = DEFINITIONAL_REPRESENTATION('',(#473),#476);+#473 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#474,#475),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#474 = CARTESIAN_POINT('',(0.,0.));+#475 = CARTESIAN_POINT('',(0.,-0.5));+#476 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#477 = ORIENTED_EDGE('',*,*,#478,.F.);+#478 = EDGE_CURVE('',#209,#459,#479,.T.);+#479 = SURFACE_CURVE('',#480,(#483,#489),.PCURVE_S1.);+#480 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#481,#482),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.63),.PIECEWISE_BEZIER_KNOTS.);+#481 = CARTESIAN_POINT('',(-0.315,0.25,0.45));+#482 = CARTESIAN_POINT('',(0.315,0.25,0.45));+#483 = PCURVE('',#67,#484);+#484 = DEFINITIONAL_REPRESENTATION('',(#485),#488);+#485 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#486,#487),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.63),.PIECEWISE_BEZIER_KNOTS.);+#486 = CARTESIAN_POINT('',(0.,0.));+#487 = CARTESIAN_POINT('',(0.63,0.));+#488 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#489 = PCURVE('',#240,#490);+#490 = DEFINITIONAL_REPRESENTATION('',(#491),#494);+#491 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#492,#493),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.63),.PIECEWISE_BEZIER_KNOTS.);+#492 = CARTESIAN_POINT('',(0.163113895487,-0.315));+#493 = CARTESIAN_POINT('',(0.163113895487,0.315));+#494 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#495 = ADVANCED_FACE('',(#496),#92,.T.);+#496 = FACE_BOUND('',#497,.T.);+#497 = EDGE_LOOP('',(#498,#499,#500,#520,#548,#573));+#498 = ORIENTED_EDGE('',*,*,#458,.T.);+#499 = ORIENTED_EDGE('',*,*,#78,.T.);+#500 = ORIENTED_EDGE('',*,*,#501,.F.);+#501 = EDGE_CURVE('',#502,#79,#504,.T.);+#502 = VERTEX_POINT('',#503);+#503 = CARTESIAN_POINT('',(0.35,-0.1875,0.1665));+#504 = SURFACE_CURVE('',#505,(#508,#514),.PCURVE_S1.);+#505 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#506,#507),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.4375,0.5),.PIECEWISE_BEZIER_KNOTS.);+#506 = CARTESIAN_POINT('',(0.35,-0.1875,0.1665));+#507 = CARTESIAN_POINT('',(0.35,-0.25,0.1665));+#508 = PCURVE('',#92,#509);+#509 = DEFINITIONAL_REPRESENTATION('',(#510),#513);+#510 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#511,#512),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.4375,0.5),.PIECEWISE_BEZIER_KNOTS.);+#511 = CARTESIAN_POINT('',(0.316938479835,-0.4375));+#512 = CARTESIAN_POINT('',(0.316938479835,-0.5));+#513 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#514 = PCURVE('',#354,#515);+#515 = DEFINITIONAL_REPRESENTATION('',(#516),#519);+#516 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#517,#518),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.4375,0.5),.PIECEWISE_BEZIER_KNOTS.);+#517 = CARTESIAN_POINT('',(0.835,6.25E-02));+#518 = CARTESIAN_POINT('',(0.835,0.));+#519 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#520 = ORIENTED_EDGE('',*,*,#521,.T.);+#521 = EDGE_CURVE('',#502,#522,#524,.T.);+#522 = VERTEX_POINT('',#523);+#523 = CARTESIAN_POINT('',(0.35,0.1875,0.1665));+#524 = SURFACE_CURVE('',#525,(#528,#534),.PCURVE_S1.);+#525 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#526,#527),.UNSPECIFIED.,.F.,.F.,+  (2,2),(6.25E-02,0.4375),.PIECEWISE_BEZIER_KNOTS.);+#526 = CARTESIAN_POINT('',(0.35,-0.1875,0.1665));+#527 = CARTESIAN_POINT('',(0.35,0.1875,0.1665));+#528 = PCURVE('',#92,#529);+#529 = DEFINITIONAL_REPRESENTATION('',(#530),#533);+#530 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#531,#532),.UNSPECIFIED.,.F.,.F.,+  (2,2),(6.25E-02,0.4375),.PIECEWISE_BEZIER_KNOTS.);+#531 = CARTESIAN_POINT('',(0.316938479835,-0.4375));+#532 = CARTESIAN_POINT('',(0.316938479835,-6.25E-02));+#533 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#534 = PCURVE('',#535,#542);+#535 = ( BOUNDED_SURFACE() B_SPLINE_SURFACE(2,1,(+    (#536,#537)+    ,(#538,#539)+,(#540,#541+    )),.UNSPECIFIED.,.F.,.F.,.F.) B_SPLINE_SURFACE_WITH_KNOTS((3,3),(2,2+    ),(0.,1.570796326795),(6.25E-02,0.4375),.PIECEWISE_BEZIER_KNOTS.) +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_SURFACE((+    (1.,1.)+    ,(0.707106781187,0.707106781187)+,(1.,1.))) REPRESENTATION_ITEM('') SURFACE() );+#536 = CARTESIAN_POINT('',(0.35,-0.1875,0.1665));+#537 = CARTESIAN_POINT('',(0.35,0.1875,0.1665));+#538 = CARTESIAN_POINT('',(0.35,-0.1875,0.18));+#539 = CARTESIAN_POINT('',(0.35,0.1875,0.18));+#540 = CARTESIAN_POINT('',(0.365,-0.1875,0.18));+#541 = CARTESIAN_POINT('',(0.365,0.1875,0.18));+#542 = DEFINITIONAL_REPRESENTATION('',(#543),#547);+#543 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#544,#545,#546),.UNSPECIFIED.,.F.+  ,.F.,(3,3),(6.25E-02,0.4375),.PIECEWISE_BEZIER_KNOTS.);+#544 = CARTESIAN_POINT('',(0.,6.25E-02));+#545 = CARTESIAN_POINT('',(0.,0.25));+#546 = CARTESIAN_POINT('',(0.,0.4375));+#547 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#548 = ORIENTED_EDGE('',*,*,#549,.F.);+#549 = EDGE_CURVE('',#550,#522,#552,.T.);+#550 = VERTEX_POINT('',#551);+#551 = CARTESIAN_POINT('',(0.35,0.25,0.1665));+#552 = SURFACE_CURVE('',#553,(#556,#562),.PCURVE_S1.);+#553 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#554,#555),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,6.25E-02),.PIECEWISE_BEZIER_KNOTS.);+#554 = CARTESIAN_POINT('',(0.35,0.25,0.1665));+#555 = CARTESIAN_POINT('',(0.35,0.1875,0.1665));+#556 = PCURVE('',#92,#557);+#557 = DEFINITIONAL_REPRESENTATION('',(#558),#561);+#558 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#559,#560),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,6.25E-02),.PIECEWISE_BEZIER_KNOTS.);+#559 = CARTESIAN_POINT('',(0.316938479835,0.));+#560 = CARTESIAN_POINT('',(0.316938479835,-6.25E-02));+#561 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#562 = PCURVE('',#563,#568);+#563 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#564,#565)+    ,(#566,#567+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.835,0.9475),(0.4375,0.5)+  ,.PIECEWISE_BEZIER_KNOTS.);+#564 = CARTESIAN_POINT('',(0.35,0.1875,0.1665));+#565 = CARTESIAN_POINT('',(0.35,0.25,0.1665));+#566 = CARTESIAN_POINT('',(0.4625,0.1875,0.1665));+#567 = CARTESIAN_POINT('',(0.4625,0.25,0.1665));+#568 = DEFINITIONAL_REPRESENTATION('',(#569),#572);+#569 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#570,#571),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,6.25E-02),.PIECEWISE_BEZIER_KNOTS.);+#570 = CARTESIAN_POINT('',(0.835,0.5));+#571 = CARTESIAN_POINT('',(0.835,0.4375));+#572 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#573 = ORIENTED_EDGE('',*,*,#574,.F.);+#574 = EDGE_CURVE('',#459,#550,#575,.T.);+#575 = SURFACE_CURVE('',#576,(#579,#585),.PCURVE_S1.);+#576 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#577,#578),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.316938479835),.PIECEWISE_BEZIER_KNOTS.);+#577 = CARTESIAN_POINT('',(0.315,0.25,0.45));+#578 = CARTESIAN_POINT('',(0.35,0.25,0.1665));+#579 = PCURVE('',#92,#580);+#580 = DEFINITIONAL_REPRESENTATION('',(#581),#584);+#581 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#582,#583),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.316938479835),.PIECEWISE_BEZIER_KNOTS.);+#582 = CARTESIAN_POINT('',(0.,0.));+#583 = CARTESIAN_POINT('',(0.316938479835,0.));+#584 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#585 = PCURVE('',#240,#586);+#586 = DEFINITIONAL_REPRESENTATION('',(#587),#590);+#587 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#588,#589),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.316938479835),.PIECEWISE_BEZIER_KNOTS.);+#588 = CARTESIAN_POINT('',(0.163113895487,0.315));+#589 = CARTESIAN_POINT('',(-0.151886104513,0.35));+#590 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#591 = ADVANCED_FACE('',(#592),#145,.T.);+#592 = FACE_BOUND('',#593,.T.);+#593 = EDGE_LOOP('',(#594,#619,#644,#667));+#594 = ORIENTED_EDGE('',*,*,#595,.F.);+#595 = EDGE_CURVE('',#596,#130,#598,.T.);+#596 = VERTEX_POINT('',#597);+#597 = CARTESIAN_POINT('',(-0.4625,0.25,0.1665));+#598 = SURFACE_CURVE('',#599,(#602,#608),.PCURVE_S1.);+#599 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#600,#601),.UNSPECIFIED.,.F.,.F.,+  (2,2),(2.25E-02,0.135),.PIECEWISE_BEZIER_KNOTS.);+#600 = CARTESIAN_POINT('',(-0.4625,0.25,0.1665));+#601 = CARTESIAN_POINT('',(-0.35,0.25,0.1665));+#602 = PCURVE('',#145,#603);+#603 = DEFINITIONAL_REPRESENTATION('',(#604),#607);+#604 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#605,#606),.UNSPECIFIED.,.F.,.F.,+  (2,2),(2.25E-02,0.135),.PIECEWISE_BEZIER_KNOTS.);+#605 = CARTESIAN_POINT('',(2.25E-02,0.5));+#606 = CARTESIAN_POINT('',(0.135,0.5));+#607 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#608 = PCURVE('',#609,#614);+#609 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#610,#611)+    ,(#612,#613+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,0.17),(0.,0.97),+  .PIECEWISE_BEZIER_KNOTS.);+#610 = CARTESIAN_POINT('',(-0.485,0.25,1.35E-02));+#611 = CARTESIAN_POINT('',(0.485,0.25,1.35E-02));+#612 = CARTESIAN_POINT('',(-0.485,0.25,0.1665));+#613 = CARTESIAN_POINT('',(0.485,0.25,0.1665));+#614 = DEFINITIONAL_REPRESENTATION('',(#615),#618);+#615 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#616,#617),.UNSPECIFIED.,.F.,.F.,+  (2,2),(2.25E-02,0.135),.PIECEWISE_BEZIER_KNOTS.);+#616 = CARTESIAN_POINT('',(0.17,2.25E-02));+#617 = CARTESIAN_POINT('',(0.17,0.135));+#618 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#619 = ORIENTED_EDGE('',*,*,#620,.F.);+#620 = EDGE_CURVE('',#621,#596,#623,.T.);+#621 = VERTEX_POINT('',#622);+#622 = CARTESIAN_POINT('',(-0.4625,0.1875,0.1665));+#623 = SURFACE_CURVE('',#624,(#627,#633),.PCURVE_S1.);+#624 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#625,#626),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.15625,0.21875),.PIECEWISE_BEZIER_KNOTS.);+#625 = CARTESIAN_POINT('',(-0.4625,0.1875,0.1665));+#626 = CARTESIAN_POINT('',(-0.4625,0.25,0.1665));+#627 = PCURVE('',#145,#628);+#628 = DEFINITIONAL_REPRESENTATION('',(#629),#632);+#629 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#630,#631),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.15625,0.21875),.PIECEWISE_BEZIER_KNOTS.);+#630 = CARTESIAN_POINT('',(2.25E-02,0.4375));+#631 = CARTESIAN_POINT('',(2.25E-02,0.5));+#632 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#633 = PCURVE('',#634,#639);+#634 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#635,#636)+    ,(#637,#638+  )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(6.25E-02,0.125),(-0.115,+    -1.E-01),.PIECEWISE_BEZIER_KNOTS.);+#635 = CARTESIAN_POINT('',(-0.4625,0.25,0.1665));+#636 = CARTESIAN_POINT('',(-0.4625,0.25,0.18));+#637 = CARTESIAN_POINT('',(-0.4625,0.1875,0.1665));+#638 = CARTESIAN_POINT('',(-0.4625,0.1875,0.18));+#639 = DEFINITIONAL_REPRESENTATION('',(#640),#643);+#640 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#641,#642),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.15625,0.21875),.PIECEWISE_BEZIER_KNOTS.);+#641 = CARTESIAN_POINT('',(0.125,-0.115));+#642 = CARTESIAN_POINT('',(6.25E-02,-0.115));+#643 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#644 = ORIENTED_EDGE('',*,*,#645,.F.);+#645 = EDGE_CURVE('',#132,#621,#646,.T.);+#646 = SURFACE_CURVE('',#647,(#650,#656),.PCURVE_S1.);+#647 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#648,#649),.UNSPECIFIED.,.F.,.F.,+  (2,2),(-0.12375,-1.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#648 = CARTESIAN_POINT('',(-0.35,0.1875,0.1665));+#649 = CARTESIAN_POINT('',(-0.4625,0.1875,0.1665));+#650 = PCURVE('',#145,#651);+#651 = DEFINITIONAL_REPRESENTATION('',(#652),#655);+#652 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#653,#654),.UNSPECIFIED.,.F.,.F.,+  (2,2),(-0.12375,-1.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#653 = CARTESIAN_POINT('',(0.135,0.4375));+#654 = CARTESIAN_POINT('',(2.25E-02,0.4375));+#655 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#656 = PCURVE('',#657,#662);+#657 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#658,#659)+    ,(#660,#661+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,0.1125),(-0.115,-1.E-01+    ),.PIECEWISE_BEZIER_KNOTS.);+#658 = CARTESIAN_POINT('',(-0.4625,0.1875,0.1665));+#659 = CARTESIAN_POINT('',(-0.4625,0.1875,0.18));+#660 = CARTESIAN_POINT('',(-0.35,0.1875,0.1665));+#661 = CARTESIAN_POINT('',(-0.35,0.1875,0.18));+#662 = DEFINITIONAL_REPRESENTATION('',(#663),#666);+#663 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#664,#665),.UNSPECIFIED.,.F.,.F.,+  (2,2),(-0.12375,-1.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#664 = CARTESIAN_POINT('',(0.1125,-0.115));+#665 = CARTESIAN_POINT('',(0.,-0.115));+#666 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#667 = ORIENTED_EDGE('',*,*,#129,.F.);+#668 = ADVANCED_FACE('',(#669),#240,.T.);+#669 = FACE_BOUND('',#670,.T.);+#670 = EDGE_LOOP('',(#671,#672,#673,#674));+#671 = ORIENTED_EDGE('',*,*,#228,.T.);+#672 = ORIENTED_EDGE('',*,*,#478,.T.);+#673 = ORIENTED_EDGE('',*,*,#574,.T.);+#674 = ORIENTED_EDGE('',*,*,#675,.T.);+#675 = EDGE_CURVE('',#550,#130,#676,.T.);+#676 = SURFACE_CURVE('',#677,(#680,#686),.PCURVE_S1.);+#677 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#678,#679),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.7),.PIECEWISE_BEZIER_KNOTS.);+#678 = CARTESIAN_POINT('',(0.35,0.25,0.1665));+#679 = CARTESIAN_POINT('',(-0.35,0.25,0.1665));+#680 = PCURVE('',#240,#681);+#681 = DEFINITIONAL_REPRESENTATION('',(#682),#685);+#682 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#683,#684),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.7),.PIECEWISE_BEZIER_KNOTS.);+#683 = CARTESIAN_POINT('',(-0.151886104513,0.35));+#684 = CARTESIAN_POINT('',(-0.151886104513,-0.35));+#685 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#686 = PCURVE('',#609,#687);+#687 = DEFINITIONAL_REPRESENTATION('',(#688),#691);+#688 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#689,#690),.UNSPECIFIED.,.F.,.F.,+  (2,2),(0.,0.7),.PIECEWISE_BEZIER_KNOTS.);+#689 = CARTESIAN_POINT('',(0.17,0.835));+#690 = CARTESIAN_POINT('',(0.17,0.135));+#691 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#692 = ADVANCED_FACE('',(#693),#170,.T.);+#693 = FACE_BOUND('',#694,.T.);+#694 = EDGE_LOOP('',(#695,#718,#744,#770));+#695 = ORIENTED_EDGE('',*,*,#696,.F.);+#696 = EDGE_CURVE('',#697,#132,#699,.T.);+#697 = VERTEX_POINT('',#698);+#698 = CARTESIAN_POINT('',(-0.365,0.1875,0.18));+#699 = SURFACE_CURVE('',#700,(#704,#711),.PCURVE_S1.);+#700 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#701,#702,#703),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(4.712388980385,+6.28318530718),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#701 = CARTESIAN_POINT('',(-0.365,0.1875,0.18));+#702 = CARTESIAN_POINT('',(-0.35,0.1875,0.18));+#703 = CARTESIAN_POINT('',(-0.35,0.1875,0.1665));+#704 = PCURVE('',#170,#705);+#705 = DEFINITIONAL_REPRESENTATION('',(#706),#710);+#706 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#707,#708,#709),.UNSPECIFIED.,.F.+  ,.F.,(3,3),(4.712388980385,6.28318530718),.PIECEWISE_BEZIER_KNOTS.);+#707 = CARTESIAN_POINT('',(4.712388980385,0.4375));+#708 = CARTESIAN_POINT('',(5.497787143782,0.4375));+#709 = CARTESIAN_POINT('',(6.28318530718,0.4375));+#710 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#711 = PCURVE('',#657,#712);+#712 = DEFINITIONAL_REPRESENTATION('',(#713),#717);+#713 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#714,#715,#716),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(4.712388980385,+6.28318530718),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#714 = CARTESIAN_POINT('',(9.75E-02,-1.E-01));+#715 = CARTESIAN_POINT('',(0.1125,-1.E-01));+#716 = CARTESIAN_POINT('',(0.1125,-0.115));+#717 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#718 = ORIENTED_EDGE('',*,*,#719,.F.);+#719 = EDGE_CURVE('',#720,#697,#722,.T.);+#720 = VERTEX_POINT('',#721);+#721 = CARTESIAN_POINT('',(-0.365,-0.1875,0.18));+#722 = SURFACE_CURVE('',#723,(#726,#733),.PCURVE_S1.);+#723 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#724,#725),.UNSPECIFIED.,.F.,.F.,+  (2,2),(6.25E-02,0.4375),.PIECEWISE_BEZIER_KNOTS.);+#724 = CARTESIAN_POINT('',(-0.365,-0.1875,0.18));+#725 = CARTESIAN_POINT('',(-0.365,0.1875,0.18));+#726 = PCURVE('',#170,#727);+#727 = DEFINITIONAL_REPRESENTATION('',(#728),#732);+#728 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#729,#730,#731),.UNSPECIFIED.,.F.+  ,.F.,(3,3),(6.25E-02,0.4375),.PIECEWISE_BEZIER_KNOTS.);+#729 = CARTESIAN_POINT('',(4.712388980385,6.25E-02));+#730 = CARTESIAN_POINT('',(4.712388980385,0.25));+#731 = CARTESIAN_POINT('',(4.712388980385,0.4375));+#732 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#733 = PCURVE('',#734,#739);+#734 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#735,#736)+    ,(#737,#738+  )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(1.5E-02,0.135),(0.,0.5),+  .PIECEWISE_BEZIER_KNOTS.);+#735 = CARTESIAN_POINT('',(-0.485,-0.25,0.18));+#736 = CARTESIAN_POINT('',(-0.485,0.25,0.18));+#737 = CARTESIAN_POINT('',(-0.365,-0.25,0.18));+#738 = CARTESIAN_POINT('',(-0.365,0.25,0.18));+#739 = DEFINITIONAL_REPRESENTATION('',(#740),#743);+#740 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#741,#742),.UNSPECIFIED.,.F.,.F.,+  (2,2),(6.25E-02,0.4375),.PIECEWISE_BEZIER_KNOTS.);+#741 = CARTESIAN_POINT('',(0.135,6.25E-02));+#742 = CARTESIAN_POINT('',(0.135,0.4375));+#743 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#744 = ORIENTED_EDGE('',*,*,#745,.T.);+#745 = EDGE_CURVE('',#720,#157,#746,.T.);+#746 = SURFACE_CURVE('',#747,(#751,#758),.PCURVE_S1.);+#747 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#748,#749,#750),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(4.712388980385,+6.28318530718),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#748 = CARTESIAN_POINT('',(-0.365,-0.1875,0.18));+#749 = CARTESIAN_POINT('',(-0.35,-0.1875,0.18));+#750 = CARTESIAN_POINT('',(-0.35,-0.1875,0.1665));+#751 = PCURVE('',#170,#752);+#752 = DEFINITIONAL_REPRESENTATION('',(#753),#757);+#753 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#754,#755,#756),.UNSPECIFIED.,.F.+  ,.F.,(3,3),(4.712388980385,6.28318530718),.PIECEWISE_BEZIER_KNOTS.);+#754 = CARTESIAN_POINT('',(4.712388980385,6.25E-02));+#755 = CARTESIAN_POINT('',(5.497787143782,6.25E-02));+#756 = CARTESIAN_POINT('',(6.28318530718,6.25E-02));+#757 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#758 = PCURVE('',#759,#764);+#759 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#760,#761)+    ,(#762,#763+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.8125,0.925),(-0.115,+    -1.E-01),.PIECEWISE_BEZIER_KNOTS.);+#760 = CARTESIAN_POINT('',(-0.35,-0.1875,0.1665));+#761 = CARTESIAN_POINT('',(-0.35,-0.1875,0.18));+#762 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.1665));+#763 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.18));+#764 = DEFINITIONAL_REPRESENTATION('',(#765),#769);+#765 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#766,#767,#768),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(4.712388980385,+6.28318530718),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#766 = CARTESIAN_POINT('',(0.8275,-1.E-01));+#767 = CARTESIAN_POINT('',(0.8125,-1.E-01));+#768 = CARTESIAN_POINT('',(0.8125,-0.115));+#769 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#770 = ORIENTED_EDGE('',*,*,#156,.T.);+#771 = ADVANCED_FACE('',(#772),#196,.T.);+#772 = FACE_BOUND('',#773,.T.);+#773 = EDGE_LOOP('',(#774,#799,#800,#801));+#774 = ORIENTED_EDGE('',*,*,#775,.F.);+#775 = EDGE_CURVE('',#302,#776,#778,.T.);+#776 = VERTEX_POINT('',#777);+#777 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.1665));+#778 = SURFACE_CURVE('',#779,(#782,#788),.PCURVE_S1.);+#779 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#780,#781),.UNSPECIFIED.,.F.,.F.,+  (2,2),(-3.125E-02,3.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#780 = CARTESIAN_POINT('',(-0.4625,-0.25,0.1665));+#781 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.1665));+#782 = PCURVE('',#196,#783);+#783 = DEFINITIONAL_REPRESENTATION('',(#784),#787);+#784 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#785,#786),.UNSPECIFIED.,.F.,.F.,+  (2,2),(-3.125E-02,3.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#785 = CARTESIAN_POINT('',(2.25E-02,0.));+#786 = CARTESIAN_POINT('',(2.25E-02,6.25E-02));+#787 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#788 = PCURVE('',#789,#794);+#789 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#790,#791)+    ,(#792,#793+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,6.25E-02),(-0.115,+    -1.E-01),.PIECEWISE_BEZIER_KNOTS.);+#790 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.1665));+#791 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.18));+#792 = CARTESIAN_POINT('',(-0.4625,-0.25,0.1665));+#793 = CARTESIAN_POINT('',(-0.4625,-0.25,0.18));+#794 = DEFINITIONAL_REPRESENTATION('',(#795),#798);+#795 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#796,#797),.UNSPECIFIED.,.F.,.F.,+  (2,2),(-3.125E-02,3.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#796 = CARTESIAN_POINT('',(6.25E-02,-0.115));+#797 = CARTESIAN_POINT('',(0.,-0.115));+#798 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#799 = ORIENTED_EDGE('',*,*,#321,.T.);+#800 = ORIENTED_EDGE('',*,*,#184,.F.);+#801 = ORIENTED_EDGE('',*,*,#802,.F.);+#802 = EDGE_CURVE('',#776,#157,#803,.T.);+#803 = SURFACE_CURVE('',#804,(#807,#813),.PCURVE_S1.);+#804 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#805,#806),.UNSPECIFIED.,.F.,.F.,+  (2,2),(-0.45125,-0.33875),.PIECEWISE_BEZIER_KNOTS.);+#805 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.1665));+#806 = CARTESIAN_POINT('',(-0.35,-0.1875,0.1665));+#807 = PCURVE('',#196,#808);+#808 = DEFINITIONAL_REPRESENTATION('',(#809),#812);+#809 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#810,#811),.UNSPECIFIED.,.F.,.F.,+  (2,2),(-0.45125,-0.33875),.PIECEWISE_BEZIER_KNOTS.);+#810 = CARTESIAN_POINT('',(2.25E-02,6.25E-02));+#811 = CARTESIAN_POINT('',(0.135,6.25E-02));+#812 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#813 = PCURVE('',#759,#814);+#814 = DEFINITIONAL_REPRESENTATION('',(#815),#818);+#815 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#816,#817),.UNSPECIFIED.,.F.,.F.,+  (2,2),(-0.45125,-0.33875),.PIECEWISE_BEZIER_KNOTS.);+#816 = CARTESIAN_POINT('',(0.925,-0.115));+#817 = CARTESIAN_POINT('',(0.8125,-0.115));+#818 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#819 = ADVANCED_FACE('',(#820),#270,.F.);+#820 = FACE_BOUND('',#821,.F.);+#821 = EDGE_LOOP('',(#822,#849,#879,#904,#934,#954,#972,#973,#974,#975)+  );+#822 = ORIENTED_EDGE('',*,*,#823,.F.);+#823 = EDGE_CURVE('',#824,#826,#828,.T.);+#824 = VERTEX_POINT('',#825);+#825 = CARTESIAN_POINT('',(-0.485,-0.25,-1.561251128379E-18));+#826 = VERTEX_POINT('',#827);+#827 = CARTESIAN_POINT('',(-0.4625,-0.25,0.));+#828 = SURFACE_CURVE('',#829,(#832,#838),.PCURVE_S1.);+#829 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#830,#831),.UNSPECIFIED.,.F.,.F.,+  (2,2),(1.5E-02,3.75E-02),.PIECEWISE_BEZIER_KNOTS.);+#830 = CARTESIAN_POINT('',(-0.485,-0.25,0.));+#831 = CARTESIAN_POINT('',(-0.4625,-0.25,0.));+#832 = PCURVE('',#270,#833);+#833 = DEFINITIONAL_REPRESENTATION('',(#834),#837);+#834 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#835,#836),.UNSPECIFIED.,.F.,.F.,+  (2,2),(1.5E-02,3.75E-02),.PIECEWISE_BEZIER_KNOTS.);+#835 = CARTESIAN_POINT('',(0.,1.5E-02));+#836 = CARTESIAN_POINT('',(0.,3.75E-02));+#837 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#838 = PCURVE('',#839,#844);+#839 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#840,#841)+    ,(#842,#843+  )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(1.5E-02,0.135),(0.,0.5),+  .PIECEWISE_BEZIER_KNOTS.);+#840 = CARTESIAN_POINT('',(-0.485,-0.25,0.));+#841 = CARTESIAN_POINT('',(-0.485,0.25,0.));+#842 = CARTESIAN_POINT('',(-0.365,-0.25,0.));+#843 = CARTESIAN_POINT('',(-0.365,0.25,0.));+#844 = DEFINITIONAL_REPRESENTATION('',(#845),#848);+#845 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#846,#847),.UNSPECIFIED.,.F.,.F.,+  (2,2),(1.5E-02,3.75E-02),.PIECEWISE_BEZIER_KNOTS.);+#846 = CARTESIAN_POINT('',(1.5E-02,0.));+#847 = CARTESIAN_POINT('',(3.75E-02,0.));+#848 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#849 = ORIENTED_EDGE('',*,*,#850,.F.);+#850 = EDGE_CURVE('',#851,#824,#853,.T.);+#851 = VERTEX_POINT('',#852);+#852 = CARTESIAN_POINT('',(-0.5,-0.25,1.35E-02));+#853 = SURFACE_CURVE('',#854,(#858,#865),.PCURVE_S1.);+#854 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#855,#856,#857),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(1.570796326795,+3.14159265359),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#855 = CARTESIAN_POINT('',(-0.5,-0.25,1.35E-02));+#856 = CARTESIAN_POINT('',(-0.5,-0.25,3.122502256758E-18));+#857 = CARTESIAN_POINT('',(-0.485,-0.25,0.));+#858 = PCURVE('',#270,#859);+#859 = DEFINITIONAL_REPRESENTATION('',(#860),#864);+#860 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#861,#862,#863),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(1.570796326795,+3.14159265359),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#861 = CARTESIAN_POINT('',(1.5E-02,0.));+#862 = CARTESIAN_POINT('',(3.469446951954E-18,0.));+#863 = CARTESIAN_POINT('',(0.,1.5E-02));+#864 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#865 = PCURVE('',#866,#873);+#866 = ( BOUNDED_SURFACE() B_SPLINE_SURFACE(2,1,(+    (#867,#868)+    ,(#869,#870)+,(#871,#872+    )),.UNSPECIFIED.,.F.,.F.,.F.) B_SPLINE_SURFACE_WITH_KNOTS((3,3),(2,2+    ),(4.712388980385,6.28318530718),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.) +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_SURFACE((+    (1.,1.)+    ,(0.707106781187,0.707106781187)+,(1.,1.))) REPRESENTATION_ITEM('') SURFACE() );+#867 = CARTESIAN_POINT('',(-0.485,-0.25,0.));+#868 = CARTESIAN_POINT('',(-0.485,0.25,0.));+#869 = CARTESIAN_POINT('',(-0.5,-0.25,-3.122502256758E-18));+#870 = CARTESIAN_POINT('',(-0.5,0.25,-3.122502256758E-18));+#871 = CARTESIAN_POINT('',(-0.5,-0.25,1.35E-02));+#872 = CARTESIAN_POINT('',(-0.5,0.25,1.35E-02));+#873 = DEFINITIONAL_REPRESENTATION('',(#874),#878);+#874 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#875,#876,#877),.UNSPECIFIED.,.F.+  ,.F.,(3,3),(1.570796326795,3.14159265359),.PIECEWISE_BEZIER_KNOTS.);+#875 = CARTESIAN_POINT('',(6.28318530718,0.));+#876 = CARTESIAN_POINT('',(5.497787143782,0.));+#877 = CARTESIAN_POINT('',(4.712388980385,0.));+#878 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#879 = ORIENTED_EDGE('',*,*,#880,.T.);+#880 = EDGE_CURVE('',#851,#881,#883,.T.);+#881 = VERTEX_POINT('',#882);+#882 = CARTESIAN_POINT('',(-0.5,-0.25,0.1665));+#883 = SURFACE_CURVE('',#884,(#887,#893),.PCURVE_S1.);+#884 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#885,#886),.UNSPECIFIED.,.F.,.F.,+  (2,2),(1.5E-02,0.185),.PIECEWISE_BEZIER_KNOTS.);+#885 = CARTESIAN_POINT('',(-0.5,-0.25,1.35E-02));+#886 = CARTESIAN_POINT('',(-0.5,-0.25,0.1665));+#887 = PCURVE('',#270,#888);+#888 = DEFINITIONAL_REPRESENTATION('',(#889),#892);+#889 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#890,#891),.UNSPECIFIED.,.F.,.F.,+  (2,2),(1.5E-02,0.185),.PIECEWISE_BEZIER_KNOTS.);+#890 = CARTESIAN_POINT('',(1.5E-02,0.));+#891 = CARTESIAN_POINT('',(0.185,0.));+#892 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#893 = PCURVE('',#894,#899);+#894 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#895,#896)+    ,(#897,#898+  )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(1.5E-02,0.185),(-0.5,0.),+  .PIECEWISE_BEZIER_KNOTS.);+#895 = CARTESIAN_POINT('',(-0.5,0.25,1.35E-02));+#896 = CARTESIAN_POINT('',(-0.5,-0.25,1.35E-02));+#897 = CARTESIAN_POINT('',(-0.5,0.25,0.1665));+#898 = CARTESIAN_POINT('',(-0.5,-0.25,0.1665));+#899 = DEFINITIONAL_REPRESENTATION('',(#900),#903);+#900 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#901,#902),.UNSPECIFIED.,.F.,.F.,+  (2,2),(1.5E-02,0.185),.PIECEWISE_BEZIER_KNOTS.);+#901 = CARTESIAN_POINT('',(1.5E-02,0.));+#902 = CARTESIAN_POINT('',(0.185,0.));+#903 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#904 = ORIENTED_EDGE('',*,*,#905,.T.);+#905 = EDGE_CURVE('',#881,#906,#908,.T.);+#906 = VERTEX_POINT('',#907);+#907 = CARTESIAN_POINT('',(-0.485,-0.25,0.18));+#908 = SURFACE_CURVE('',#909,(#913,#920),.PCURVE_S1.);+#909 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#910,#911,#912),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(4.712388980385,+6.28318530718),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#910 = CARTESIAN_POINT('',(-0.5,-0.25,0.1665));+#911 = CARTESIAN_POINT('',(-0.5,-0.25,0.18));+#912 = CARTESIAN_POINT('',(-0.485,-0.25,0.18));+#913 = PCURVE('',#270,#914);+#914 = DEFINITIONAL_REPRESENTATION('',(#915),#919);+#915 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#916,#917,#918),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(4.712388980385,+6.28318530718),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#916 = CARTESIAN_POINT('',(0.185,0.));+#917 = CARTESIAN_POINT('',(0.2,0.));+#918 = CARTESIAN_POINT('',(0.2,1.5E-02));+#919 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#920 = PCURVE('',#921,#928);+#921 = ( BOUNDED_SURFACE() B_SPLINE_SURFACE(2,1,(+    (#922,#923)+    ,(#924,#925)+,(#926,#927+    )),.UNSPECIFIED.,.F.,.F.,.F.) B_SPLINE_SURFACE_WITH_KNOTS((3,3),(2,2+    ),(0.,1.570796326795),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.) +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_SURFACE((+    (1.,1.)+    ,(0.707106781187,0.707106781187)+,(1.,1.))) REPRESENTATION_ITEM('') SURFACE() );+#922 = CARTESIAN_POINT('',(-0.5,-0.25,0.1665));+#923 = CARTESIAN_POINT('',(-0.5,0.25,0.1665));+#924 = CARTESIAN_POINT('',(-0.5,-0.25,0.18));+#925 = CARTESIAN_POINT('',(-0.5,0.25,0.18));+#926 = CARTESIAN_POINT('',(-0.485,-0.25,0.18));+#927 = CARTESIAN_POINT('',(-0.485,0.25,0.18));+#928 = DEFINITIONAL_REPRESENTATION('',(#929),#933);+#929 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#930,#931,#932),.UNSPECIFIED.,.F.+  ,.F.,(3,3),(4.712388980385,6.28318530718),.PIECEWISE_BEZIER_KNOTS.);+#930 = CARTESIAN_POINT('',(0.,0.));+#931 = CARTESIAN_POINT('',(0.785398163397,0.));+#932 = CARTESIAN_POINT('',(1.570796326795,0.));+#933 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#934 = ORIENTED_EDGE('',*,*,#935,.T.);+#935 = EDGE_CURVE('',#906,#936,#938,.T.);+#936 = VERTEX_POINT('',#937);+#937 = CARTESIAN_POINT('',(-0.4625,-0.25,0.18));+#938 = SURFACE_CURVE('',#939,(#942,#948),.PCURVE_S1.);+#939 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#940,#941),.UNSPECIFIED.,.F.,.F.,+  (2,2),(1.5E-02,3.75E-02),.PIECEWISE_BEZIER_KNOTS.);+#940 = CARTESIAN_POINT('',(-0.485,-0.25,0.18));+#941 = CARTESIAN_POINT('',(-0.4625,-0.25,0.18));+#942 = PCURVE('',#270,#943);+#943 = DEFINITIONAL_REPRESENTATION('',(#944),#947);+#944 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#945,#946),.UNSPECIFIED.,.F.,.F.,+  (2,2),(1.5E-02,3.75E-02),.PIECEWISE_BEZIER_KNOTS.);+#945 = CARTESIAN_POINT('',(0.2,1.5E-02));+#946 = CARTESIAN_POINT('',(0.2,3.75E-02));+#947 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#948 = PCURVE('',#734,#949);+#949 = DEFINITIONAL_REPRESENTATION('',(#950),#953);+#950 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#951,#952),.UNSPECIFIED.,.F.,.F.,+  (2,2),(1.5E-02,3.75E-02),.PIECEWISE_BEZIER_KNOTS.);+#951 = CARTESIAN_POINT('',(1.5E-02,0.));+#952 = CARTESIAN_POINT('',(3.75E-02,0.));+#953 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#954 = ORIENTED_EDGE('',*,*,#955,.F.);+#955 = EDGE_CURVE('',#302,#936,#956,.T.);+#956 = SURFACE_CURVE('',#957,(#960,#966),.PCURVE_S1.);+#957 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#958,#959),.UNSPECIFIED.,.F.,.F.,+  (2,2),(3.5E-02,5.E-02),.PIECEWISE_BEZIER_KNOTS.);+#958 = CARTESIAN_POINT('',(-0.4625,-0.25,0.1665));+#959 = CARTESIAN_POINT('',(-0.4625,-0.25,0.18));+#960 = PCURVE('',#270,#961);+#961 = DEFINITIONAL_REPRESENTATION('',(#962),#965);+#962 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#963,#964),.UNSPECIFIED.,.F.,.F.,+  (2,2),(3.5E-02,5.E-02),.PIECEWISE_BEZIER_KNOTS.);+#963 = CARTESIAN_POINT('',(0.185,3.75E-02));+#964 = CARTESIAN_POINT('',(0.2,3.75E-02));+#965 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#966 = PCURVE('',#789,#967);+#967 = DEFINITIONAL_REPRESENTATION('',(#968),#971);+#968 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#969,#970),.UNSPECIFIED.,.F.,.F.,+  (2,2),(3.5E-02,5.E-02),.PIECEWISE_BEZIER_KNOTS.);+#969 = CARTESIAN_POINT('',(6.25E-02,-0.115));+#970 = CARTESIAN_POINT('',(6.25E-02,-1.E-01));+#971 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#972 = ORIENTED_EDGE('',*,*,#301,.F.);+#973 = ORIENTED_EDGE('',*,*,#281,.F.);+#974 = ORIENTED_EDGE('',*,*,#254,.T.);+#975 = ORIENTED_EDGE('',*,*,#976,.F.);+#976 = EDGE_CURVE('',#826,#257,#977,.T.);+#977 = SURFACE_CURVE('',#978,(#981,#987),.PCURVE_S1.);+#978 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#979,#980),.UNSPECIFIED.,.F.,.F.,+  (2,2),(-0.15,-0.135),.PIECEWISE_BEZIER_KNOTS.);+#979 = CARTESIAN_POINT('',(-0.4625,-0.25,0.));+#980 = CARTESIAN_POINT('',(-0.4625,-0.25,1.35E-02));+#981 = PCURVE('',#270,#982);+#982 = DEFINITIONAL_REPRESENTATION('',(#983),#986);+#983 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#984,#985),.UNSPECIFIED.,.F.,.F.,+  (2,2),(-0.15,-0.135),.PIECEWISE_BEZIER_KNOTS.);+#984 = CARTESIAN_POINT('',(0.,3.75E-02));+#985 = CARTESIAN_POINT('',(1.5E-02,3.75E-02));+#986 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#987 = PCURVE('',#988,#993);+#988 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#989,#990)+    ,(#991,#992+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,6.25E-02),(-0.3,-0.285)+  ,.PIECEWISE_BEZIER_KNOTS.);+#989 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.));+#990 = CARTESIAN_POINT('',(-0.4625,-0.1875,1.35E-02));+#991 = CARTESIAN_POINT('',(-0.4625,-0.25,0.));+#992 = CARTESIAN_POINT('',(-0.4625,-0.25,1.35E-02));+#993 = DEFINITIONAL_REPRESENTATION('',(#994),#997);+#994 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#995,#996),.UNSPECIFIED.,.F.,.F.,+  (2,2),(-0.15,-0.135),.PIECEWISE_BEZIER_KNOTS.);+#995 = CARTESIAN_POINT('',(6.25E-02,-0.3));+#996 = CARTESIAN_POINT('',(6.25E-02,-0.285));+#997 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#998 = ADVANCED_FACE('',(#999,#1271),#442,.F.);+#999 = FACE_BOUND('',#1000,.F.);+#1000 = EDGE_LOOP('',(#1001,#1021,#1022,#1047,#1072,#1100,#1125,#1150,+    #1170,#1195,#1220,#1248));+#1001 = ORIENTED_EDGE('',*,*,#1002,.F.);+#1002 = EDGE_CURVE('',#257,#1003,#1005,.T.);+#1003 = VERTEX_POINT('',#1004);+#1004 = CARTESIAN_POINT('',(-0.4625,-0.1875,1.35E-02));+#1005 = SURFACE_CURVE('',#1006,(#1009,#1015),.PCURVE_S1.);+#1006 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1007,#1008),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-3.125E-02,3.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#1007 = CARTESIAN_POINT('',(-0.4625,-0.25,1.35E-02));+#1008 = CARTESIAN_POINT('',(-0.4625,-0.1875,1.35E-02));+#1009 = PCURVE('',#442,#1010);+#1010 = DEFINITIONAL_REPRESENTATION('',(#1011),#1014);+#1011 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1012,#1013),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-3.125E-02,3.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#1012 = CARTESIAN_POINT('',(2.25E-02,0.));+#1013 = CARTESIAN_POINT('',(2.25E-02,6.25E-02));+#1014 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1015 = PCURVE('',#988,#1016);+#1016 = DEFINITIONAL_REPRESENTATION('',(#1017),#1020);+#1017 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1018,#1019),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-3.125E-02,3.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#1018 = CARTESIAN_POINT('',(6.25E-02,-0.285));+#1019 = CARTESIAN_POINT('',(0.,-0.285));+#1020 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1021 = ORIENTED_EDGE('',*,*,#430,.T.);+#1022 = ORIENTED_EDGE('',*,*,#1023,.F.);+#1023 = EDGE_CURVE('',#1024,#411,#1026,.T.);+#1024 = VERTEX_POINT('',#1025);+#1025 = CARTESIAN_POINT('',(0.4625,-0.1875,1.35E-02));+#1026 = SURFACE_CURVE('',#1027,(#1030,#1036),.PCURVE_S1.);+#1027 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1028,#1029),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-9.375E-02,-3.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#1028 = CARTESIAN_POINT('',(0.4625,-0.1875,1.35E-02));+#1029 = CARTESIAN_POINT('',(0.4625,-0.25,1.35E-02));+#1030 = PCURVE('',#442,#1031);+#1031 = DEFINITIONAL_REPRESENTATION('',(#1032),#1035);+#1032 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1033,#1034),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-9.375E-02,-3.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#1033 = CARTESIAN_POINT('',(0.9475,6.25E-02));+#1034 = CARTESIAN_POINT('',(0.9475,0.));+#1035 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1036 = PCURVE('',#1037,#1042);+#1037 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#1038,#1039)+    ,(#1040,#1041+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(6.25E-02,0.125),(-0.3,+    -0.285),.PIECEWISE_BEZIER_KNOTS.);+#1038 = CARTESIAN_POINT('',(0.4625,-0.25,0.));+#1039 = CARTESIAN_POINT('',(0.4625,-0.25,1.35E-02));+#1040 = CARTESIAN_POINT('',(0.4625,-0.1875,0.));+#1041 = CARTESIAN_POINT('',(0.4625,-0.1875,1.35E-02));+#1042 = DEFINITIONAL_REPRESENTATION('',(#1043),#1046);+#1043 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1044,#1045),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-9.375E-02,-3.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#1044 = CARTESIAN_POINT('',(0.125,-0.285));+#1045 = CARTESIAN_POINT('',(6.25E-02,-0.285));+#1046 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1047 = ORIENTED_EDGE('',*,*,#1048,.F.);+#1048 = EDGE_CURVE('',#1049,#1024,#1051,.T.);+#1049 = VERTEX_POINT('',#1050);+#1050 = CARTESIAN_POINT('',(0.35,-0.1875,1.35E-02));+#1051 = SURFACE_CURVE('',#1052,(#1055,#1061),.PCURVE_S1.);+#1052 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1053,#1054),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.36125,0.47375),.PIECEWISE_BEZIER_KNOTS.);+#1053 = CARTESIAN_POINT('',(0.35,-0.1875,1.35E-02));+#1054 = CARTESIAN_POINT('',(0.4625,-0.1875,1.35E-02));+#1055 = PCURVE('',#442,#1056);+#1056 = DEFINITIONAL_REPRESENTATION('',(#1057),#1060);+#1057 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1058,#1059),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.36125,0.47375),.PIECEWISE_BEZIER_KNOTS.);+#1058 = CARTESIAN_POINT('',(0.835,6.25E-02));+#1059 = CARTESIAN_POINT('',(0.9475,6.25E-02));+#1060 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1061 = PCURVE('',#1062,#1067);+#1062 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#1063,#1064)+    ,(#1065,#1066+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,0.1125),(-0.3,-0.285),+  .PIECEWISE_BEZIER_KNOTS.);+#1063 = CARTESIAN_POINT('',(0.4625,-0.1875,0.));+#1064 = CARTESIAN_POINT('',(0.4625,-0.1875,1.35E-02));+#1065 = CARTESIAN_POINT('',(0.35,-0.1875,0.));+#1066 = CARTESIAN_POINT('',(0.35,-0.1875,1.35E-02));+#1067 = DEFINITIONAL_REPRESENTATION('',(#1068),#1071);+#1068 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1069,#1070),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.36125,0.47375),.PIECEWISE_BEZIER_KNOTS.);+#1069 = CARTESIAN_POINT('',(0.1125,-0.285));+#1070 = CARTESIAN_POINT('',(0.,-0.285));+#1071 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1072 = ORIENTED_EDGE('',*,*,#1073,.T.);+#1073 = EDGE_CURVE('',#1049,#1074,#1076,.T.);+#1074 = VERTEX_POINT('',#1075);+#1075 = CARTESIAN_POINT('',(0.35,0.1875,1.35E-02));+#1076 = SURFACE_CURVE('',#1077,(#1080,#1086),.PCURVE_S1.);+#1077 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1078,#1079),.UNSPECIFIED.,.F.,+  .F.,(2,2),(6.25E-02,0.4375),.PIECEWISE_BEZIER_KNOTS.);+#1078 = CARTESIAN_POINT('',(0.35,-0.1875,1.35E-02));+#1079 = CARTESIAN_POINT('',(0.35,0.1875,1.35E-02));+#1080 = PCURVE('',#442,#1081);+#1081 = DEFINITIONAL_REPRESENTATION('',(#1082),#1085);+#1082 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1083,#1084),.UNSPECIFIED.,.F.,+  .F.,(2,2),(6.25E-02,0.4375),.PIECEWISE_BEZIER_KNOTS.);+#1083 = CARTESIAN_POINT('',(0.835,6.25E-02));+#1084 = CARTESIAN_POINT('',(0.835,0.4375));+#1085 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1086 = PCURVE('',#1087,#1094);+#1087 = ( BOUNDED_SURFACE() B_SPLINE_SURFACE(2,1,(+    (#1088,#1089)+    ,(#1090,#1091)+    ,(#1092,#1093+)),.UNSPECIFIED.,.F.,.F.,.F.) B_SPLINE_SURFACE_WITH_KNOTS((3,3),(2,2),(+    4.712388980385,6.28318530718),(6.25E-02,0.4375),+.PIECEWISE_BEZIER_KNOTS.) GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_SURFACE((+    (1.,1.)+    ,(0.707106781187,0.707106781187)+,(1.,1.))) REPRESENTATION_ITEM('') SURFACE() );+#1088 = CARTESIAN_POINT('',(0.365,-0.1875,0.));+#1089 = CARTESIAN_POINT('',(0.365,0.1875,0.));+#1090 = CARTESIAN_POINT('',(0.35,-0.1875,-3.122502256758E-18));+#1091 = CARTESIAN_POINT('',(0.35,0.1875,-3.122502256758E-18));+#1092 = CARTESIAN_POINT('',(0.35,-0.1875,1.35E-02));+#1093 = CARTESIAN_POINT('',(0.35,0.1875,1.35E-02));+#1094 = DEFINITIONAL_REPRESENTATION('',(#1095),#1099);+#1095 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#1096,#1097,#1098),+  .UNSPECIFIED.,.F.,.F.,(3,3),(6.25E-02,0.4375),+  .PIECEWISE_BEZIER_KNOTS.);+#1096 = CARTESIAN_POINT('',(6.28318530718,6.25E-02));+#1097 = CARTESIAN_POINT('',(6.28318530718,0.25));+#1098 = CARTESIAN_POINT('',(6.28318530718,0.4375));+#1099 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1100 = ORIENTED_EDGE('',*,*,#1101,.F.);+#1101 = EDGE_CURVE('',#1102,#1074,#1104,.T.);+#1102 = VERTEX_POINT('',#1103);+#1103 = CARTESIAN_POINT('',(0.4625,0.1875,1.35E-02));+#1104 = SURFACE_CURVE('',#1105,(#1108,#1114),.PCURVE_S1.);+#1105 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1106,#1107),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.93625,-0.82375),.PIECEWISE_BEZIER_KNOTS.);+#1106 = CARTESIAN_POINT('',(0.4625,0.1875,1.35E-02));+#1107 = CARTESIAN_POINT('',(0.35,0.1875,1.35E-02));+#1108 = PCURVE('',#442,#1109);+#1109 = DEFINITIONAL_REPRESENTATION('',(#1110),#1113);+#1110 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1111,#1112),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.93625,-0.82375),.PIECEWISE_BEZIER_KNOTS.);+#1111 = CARTESIAN_POINT('',(0.9475,0.4375));+#1112 = CARTESIAN_POINT('',(0.835,0.4375));+#1113 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1114 = PCURVE('',#1115,#1120);+#1115 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#1116,#1117)+    ,(#1118,#1119+  )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.8125,0.925),(-0.3,-0.285),+  .PIECEWISE_BEZIER_KNOTS.);+#1116 = CARTESIAN_POINT('',(0.35,0.1875,0.));+#1117 = CARTESIAN_POINT('',(0.35,0.1875,1.35E-02));+#1118 = CARTESIAN_POINT('',(0.4625,0.1875,0.));+#1119 = CARTESIAN_POINT('',(0.4625,0.1875,1.35E-02));+#1120 = DEFINITIONAL_REPRESENTATION('',(#1121),#1124);+#1121 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1122,#1123),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.93625,-0.82375),.PIECEWISE_BEZIER_KNOTS.);+#1122 = CARTESIAN_POINT('',(0.925,-0.285));+#1123 = CARTESIAN_POINT('',(0.8125,-0.285));+#1124 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1125 = ORIENTED_EDGE('',*,*,#1126,.F.);+#1126 = EDGE_CURVE('',#1127,#1102,#1129,.T.);+#1127 = VERTEX_POINT('',#1128);+#1128 = CARTESIAN_POINT('',(0.4625,0.25,1.35E-02));+#1129 = SURFACE_CURVE('',#1130,(#1133,#1139),.PCURVE_S1.);+#1130 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1131,#1132),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.28125,-0.21875),.PIECEWISE_BEZIER_KNOTS.);+#1131 = CARTESIAN_POINT('',(0.4625,0.25,1.35E-02));+#1132 = CARTESIAN_POINT('',(0.4625,0.1875,1.35E-02));+#1133 = PCURVE('',#442,#1134);+#1134 = DEFINITIONAL_REPRESENTATION('',(#1135),#1138);+#1135 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1136,#1137),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.28125,-0.21875),.PIECEWISE_BEZIER_KNOTS.);+#1136 = CARTESIAN_POINT('',(0.9475,0.5));+#1137 = CARTESIAN_POINT('',(0.9475,0.4375));+#1138 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1139 = PCURVE('',#1140,#1145);+#1140 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#1141,#1142)+    ,(#1143,#1144+  )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,6.25E-02),(-0.3,-0.285),+  .PIECEWISE_BEZIER_KNOTS.);+#1141 = CARTESIAN_POINT('',(0.4625,0.1875,0.));+#1142 = CARTESIAN_POINT('',(0.4625,0.1875,1.35E-02));+#1143 = CARTESIAN_POINT('',(0.4625,0.25,0.));+#1144 = CARTESIAN_POINT('',(0.4625,0.25,1.35E-02));+#1145 = DEFINITIONAL_REPRESENTATION('',(#1146),#1149);+#1146 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1147,#1148),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.28125,-0.21875),.PIECEWISE_BEZIER_KNOTS.);+#1147 = CARTESIAN_POINT('',(6.25E-02,-0.285));+#1148 = CARTESIAN_POINT('',(0.,-0.285));+#1149 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1150 = ORIENTED_EDGE('',*,*,#1151,.F.);+#1151 = EDGE_CURVE('',#1152,#1127,#1154,.T.);+#1152 = VERTEX_POINT('',#1153);+#1153 = CARTESIAN_POINT('',(-0.4625,0.25,1.35E-02));+#1154 = SURFACE_CURVE('',#1155,(#1158,#1164),.PCURVE_S1.);+#1155 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1156,#1157),.UNSPECIFIED.,.F.,+  .F.,(2,2),(2.25E-02,0.9475),.PIECEWISE_BEZIER_KNOTS.);+#1156 = CARTESIAN_POINT('',(-0.4625,0.25,1.35E-02));+#1157 = CARTESIAN_POINT('',(0.4625,0.25,1.35E-02));+#1158 = PCURVE('',#442,#1159);+#1159 = DEFINITIONAL_REPRESENTATION('',(#1160),#1163);+#1160 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1161,#1162),.UNSPECIFIED.,.F.,+  .F.,(2,2),(2.25E-02,0.9475),.PIECEWISE_BEZIER_KNOTS.);+#1161 = CARTESIAN_POINT('',(2.25E-02,0.5));+#1162 = CARTESIAN_POINT('',(0.9475,0.5));+#1163 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1164 = PCURVE('',#609,#1165);+#1165 = DEFINITIONAL_REPRESENTATION('',(#1166),#1169);+#1166 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1167,#1168),.UNSPECIFIED.,.F.,+  .F.,(2,2),(2.25E-02,0.9475),.PIECEWISE_BEZIER_KNOTS.);+#1167 = CARTESIAN_POINT('',(0.,2.25E-02));+#1168 = CARTESIAN_POINT('',(0.,0.9475));+#1169 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1170 = ORIENTED_EDGE('',*,*,#1171,.F.);+#1171 = EDGE_CURVE('',#1172,#1152,#1174,.T.);+#1172 = VERTEX_POINT('',#1173);+#1173 = CARTESIAN_POINT('',(-0.4625,0.1875,1.35E-02));+#1174 = SURFACE_CURVE('',#1175,(#1178,#1184),.PCURVE_S1.);+#1175 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1176,#1177),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.15625,0.21875),.PIECEWISE_BEZIER_KNOTS.);+#1176 = CARTESIAN_POINT('',(-0.4625,0.1875,1.35E-02));+#1177 = CARTESIAN_POINT('',(-0.4625,0.25,1.35E-02));+#1178 = PCURVE('',#442,#1179);+#1179 = DEFINITIONAL_REPRESENTATION('',(#1180),#1183);+#1180 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1181,#1182),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.15625,0.21875),.PIECEWISE_BEZIER_KNOTS.);+#1181 = CARTESIAN_POINT('',(2.25E-02,0.4375));+#1182 = CARTESIAN_POINT('',(2.25E-02,0.5));+#1183 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1184 = PCURVE('',#1185,#1190);+#1185 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#1186,#1187)+    ,(#1188,#1189+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(6.25E-02,0.125),(-0.3,+    -0.285),.PIECEWISE_BEZIER_KNOTS.);+#1186 = CARTESIAN_POINT('',(-0.4625,0.25,0.));+#1187 = CARTESIAN_POINT('',(-0.4625,0.25,1.35E-02));+#1188 = CARTESIAN_POINT('',(-0.4625,0.1875,0.));+#1189 = CARTESIAN_POINT('',(-0.4625,0.1875,1.35E-02));+#1190 = DEFINITIONAL_REPRESENTATION('',(#1191),#1194);+#1191 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1192,#1193),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.15625,0.21875),.PIECEWISE_BEZIER_KNOTS.);+#1192 = CARTESIAN_POINT('',(0.125,-0.285));+#1193 = CARTESIAN_POINT('',(6.25E-02,-0.285));+#1194 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1195 = ORIENTED_EDGE('',*,*,#1196,.F.);+#1196 = EDGE_CURVE('',#1197,#1172,#1199,.T.);+#1197 = VERTEX_POINT('',#1198);+#1198 = CARTESIAN_POINT('',(-0.35,0.1875,1.35E-02));+#1199 = SURFACE_CURVE('',#1200,(#1203,#1209),.PCURVE_S1.);+#1200 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1201,#1202),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.12375,-1.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#1201 = CARTESIAN_POINT('',(-0.35,0.1875,1.35E-02));+#1202 = CARTESIAN_POINT('',(-0.4625,0.1875,1.35E-02));+#1203 = PCURVE('',#442,#1204);+#1204 = DEFINITIONAL_REPRESENTATION('',(#1205),#1208);+#1205 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1206,#1207),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.12375,-1.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#1206 = CARTESIAN_POINT('',(0.135,0.4375));+#1207 = CARTESIAN_POINT('',(2.25E-02,0.4375));+#1208 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1209 = PCURVE('',#1210,#1215);+#1210 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#1211,#1212)+    ,(#1213,#1214+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,0.1125),(-0.3,-0.285),+  .PIECEWISE_BEZIER_KNOTS.);+#1211 = CARTESIAN_POINT('',(-0.4625,0.1875,0.));+#1212 = CARTESIAN_POINT('',(-0.4625,0.1875,1.35E-02));+#1213 = CARTESIAN_POINT('',(-0.35,0.1875,0.));+#1214 = CARTESIAN_POINT('',(-0.35,0.1875,1.35E-02));+#1215 = DEFINITIONAL_REPRESENTATION('',(#1216),#1219);+#1216 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1217,#1218),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.12375,-1.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#1217 = CARTESIAN_POINT('',(0.1125,-0.285));+#1218 = CARTESIAN_POINT('',(0.,-0.285));+#1219 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1220 = ORIENTED_EDGE('',*,*,#1221,.F.);+#1221 = EDGE_CURVE('',#1222,#1197,#1224,.T.);+#1222 = VERTEX_POINT('',#1223);+#1223 = CARTESIAN_POINT('',(-0.35,-0.1875,1.35E-02));+#1224 = SURFACE_CURVE('',#1225,(#1228,#1234),.PCURVE_S1.);+#1225 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1226,#1227),.UNSPECIFIED.,.F.,+  .F.,(2,2),(6.25E-02,0.4375),.PIECEWISE_BEZIER_KNOTS.);+#1226 = CARTESIAN_POINT('',(-0.35,-0.1875,1.35E-02));+#1227 = CARTESIAN_POINT('',(-0.35,0.1875,1.35E-02));+#1228 = PCURVE('',#442,#1229);+#1229 = DEFINITIONAL_REPRESENTATION('',(#1230),#1233);+#1230 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1231,#1232),.UNSPECIFIED.,.F.,+  .F.,(2,2),(6.25E-02,0.4375),.PIECEWISE_BEZIER_KNOTS.);+#1231 = CARTESIAN_POINT('',(0.135,6.25E-02));+#1232 = CARTESIAN_POINT('',(0.135,0.4375));+#1233 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1234 = PCURVE('',#1235,#1242);+#1235 = ( BOUNDED_SURFACE() B_SPLINE_SURFACE(2,1,(+    (#1236,#1237)+    ,(#1238,#1239)+    ,(#1240,#1241+)),.UNSPECIFIED.,.F.,.F.,.F.) B_SPLINE_SURFACE_WITH_KNOTS((3,3),(2,2),(+    0.,1.570796326795),(6.25E-02,0.4375),.PIECEWISE_BEZIER_KNOTS.) +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_SURFACE((+    (1.,1.)+    ,(0.707106781187,0.707106781187)+,(1.,1.))) REPRESENTATION_ITEM('') SURFACE() );+#1236 = CARTESIAN_POINT('',(-0.35,-0.1875,1.35E-02));+#1237 = CARTESIAN_POINT('',(-0.35,0.1875,1.35E-02));+#1238 = CARTESIAN_POINT('',(-0.35,-0.1875,1.561251128379E-18));+#1239 = CARTESIAN_POINT('',(-0.35,0.1875,1.561251128379E-18));+#1240 = CARTESIAN_POINT('',(-0.365,-0.1875,0.));+#1241 = CARTESIAN_POINT('',(-0.365,0.1875,0.));+#1242 = DEFINITIONAL_REPRESENTATION('',(#1243),#1247);+#1243 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#1244,#1245,#1246),+  .UNSPECIFIED.,.F.,.F.,(3,3),(6.25E-02,0.4375),+  .PIECEWISE_BEZIER_KNOTS.);+#1244 = CARTESIAN_POINT('',(0.,6.25E-02));+#1245 = CARTESIAN_POINT('',(0.,0.25));+#1246 = CARTESIAN_POINT('',(0.,0.4375));+#1247 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1248 = ORIENTED_EDGE('',*,*,#1249,.F.);+#1249 = EDGE_CURVE('',#1003,#1222,#1250,.T.);+#1250 = SURFACE_CURVE('',#1251,(#1254,#1260),.PCURVE_S1.);+#1251 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1252,#1253),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.45125,-0.33875),.PIECEWISE_BEZIER_KNOTS.);+#1252 = CARTESIAN_POINT('',(-0.4625,-0.1875,1.35E-02));+#1253 = CARTESIAN_POINT('',(-0.35,-0.1875,1.35E-02));+#1254 = PCURVE('',#442,#1255);+#1255 = DEFINITIONAL_REPRESENTATION('',(#1256),#1259);+#1256 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1257,#1258),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.45125,-0.33875),.PIECEWISE_BEZIER_KNOTS.);+#1257 = CARTESIAN_POINT('',(2.25E-02,6.25E-02));+#1258 = CARTESIAN_POINT('',(0.135,6.25E-02));+#1259 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1260 = PCURVE('',#1261,#1266);+#1261 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#1262,#1263)+    ,(#1264,#1265+  )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.8125,0.925),(-0.3,-0.285),+  .PIECEWISE_BEZIER_KNOTS.);+#1262 = CARTESIAN_POINT('',(-0.35,-0.1875,0.));+#1263 = CARTESIAN_POINT('',(-0.35,-0.1875,1.35E-02));+#1264 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.));+#1265 = CARTESIAN_POINT('',(-0.4625,-0.1875,1.35E-02));+#1266 = DEFINITIONAL_REPRESENTATION('',(#1267),#1270);+#1267 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1268,#1269),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.45125,-0.33875),.PIECEWISE_BEZIER_KNOTS.);+#1268 = CARTESIAN_POINT('',(0.925,-0.285));+#1269 = CARTESIAN_POINT('',(0.8125,-0.285));+#1270 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1271 = FACE_BOUND('',#1272,.F.);+#1272 = EDGE_LOOP('',(#1273,#1300,#1325));+#1273 = ORIENTED_EDGE('',*,*,#1274,.T.);+#1274 = EDGE_CURVE('',#1275,#1277,#1279,.T.);+#1275 = VERTEX_POINT('',#1276);+#1276 = CARTESIAN_POINT('',(0.173205080757,0.2,1.35E-02));+#1277 = VERTEX_POINT('',#1278);+#1278 = CARTESIAN_POINT('',(0.173205080757,-0.2,1.35E-02));+#1279 = SURFACE_CURVE('',#1280,(#1283,#1289),.PCURVE_S1.);+#1280 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1281,#1282),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.4),.PIECEWISE_BEZIER_KNOTS.);+#1281 = CARTESIAN_POINT('',(0.173205080757,0.2,1.35E-02));+#1282 = CARTESIAN_POINT('',(0.173205080757,-0.2,1.35E-02));+#1283 = PCURVE('',#442,#1284);+#1284 = DEFINITIONAL_REPRESENTATION('',(#1285),#1288);+#1285 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1286,#1287),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.4),.PIECEWISE_BEZIER_KNOTS.);+#1286 = CARTESIAN_POINT('',(0.658205080757,0.45));+#1287 = CARTESIAN_POINT('',(0.658205080757,5.E-02));+#1288 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1289 = PCURVE('',#1290,#1295);+#1290 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#1291,#1292)+    ,(#1293,#1294+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,0.4),(-7.5E-03,0.),+  .PIECEWISE_BEZIER_KNOTS.);+#1291 = CARTESIAN_POINT('',(0.173205080757,0.2,1.35E-02));+#1292 = CARTESIAN_POINT('',(0.173205080757,0.2,6.75E-03));+#1293 = CARTESIAN_POINT('',(0.173205080757,-0.2,1.35E-02));+#1294 = CARTESIAN_POINT('',(0.173205080757,-0.2,6.75E-03));+#1295 = DEFINITIONAL_REPRESENTATION('',(#1296),#1299);+#1296 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1297,#1298),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.4),.PIECEWISE_BEZIER_KNOTS.);+#1297 = CARTESIAN_POINT('',(0.,-7.5E-03));+#1298 = CARTESIAN_POINT('',(0.4,-7.5E-03));+#1299 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1300 = ORIENTED_EDGE('',*,*,#1301,.T.);+#1301 = EDGE_CURVE('',#1277,#1302,#1304,.T.);+#1302 = VERTEX_POINT('',#1303);+#1303 = CARTESIAN_POINT('',(-0.173205080757,0.,1.35E-02));+#1304 = SURFACE_CURVE('',#1305,(#1308,#1314),.PCURVE_S1.);+#1305 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1306,#1307),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.4),.PIECEWISE_BEZIER_KNOTS.);+#1306 = CARTESIAN_POINT('',(0.173205080757,-0.2,1.35E-02));+#1307 = CARTESIAN_POINT('',(-0.173205080757,1.732225474171E-13,1.35E-02)+  );+#1308 = PCURVE('',#442,#1309);+#1309 = DEFINITIONAL_REPRESENTATION('',(#1310),#1313);+#1310 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1311,#1312),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.4),.PIECEWISE_BEZIER_KNOTS.);+#1311 = CARTESIAN_POINT('',(0.658205080757,5.E-02));+#1312 = CARTESIAN_POINT('',(0.311794919243,0.25));+#1313 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1314 = PCURVE('',#1315,#1320);+#1315 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#1316,#1317)+    ,(#1318,#1319+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,0.4),(-7.5E-03,0.),+  .PIECEWISE_BEZIER_KNOTS.);+#1316 = CARTESIAN_POINT('',(0.173205080757,-0.2,1.35E-02));+#1317 = CARTESIAN_POINT('',(0.173205080757,-0.2,6.75E-03));+#1318 = CARTESIAN_POINT('',(-0.173205080757,1.732225474171E-13,1.35E-02)+  );+#1319 = CARTESIAN_POINT('',(-0.173205080757,1.732225474171E-13,6.75E-03)+  );+#1320 = DEFINITIONAL_REPRESENTATION('',(#1321),#1324);+#1321 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1322,#1323),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.4),.PIECEWISE_BEZIER_KNOTS.);+#1322 = CARTESIAN_POINT('',(0.,-7.5E-03));+#1323 = CARTESIAN_POINT('',(0.4,-7.5E-03));+#1324 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1325 = ORIENTED_EDGE('',*,*,#1326,.T.);+#1326 = EDGE_CURVE('',#1302,#1275,#1327,.T.);+#1327 = SURFACE_CURVE('',#1328,(#1331,#1337),.PCURVE_S1.);+#1328 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1329,#1330),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.4),.PIECEWISE_BEZIER_KNOTS.);+#1329 = CARTESIAN_POINT('',(-0.173205080757,0.,1.35E-02));+#1330 = CARTESIAN_POINT('',(0.173205080757,0.2,1.35E-02));+#1331 = PCURVE('',#442,#1332);+#1332 = DEFINITIONAL_REPRESENTATION('',(#1333),#1336);+#1333 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1334,#1335),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.4),.PIECEWISE_BEZIER_KNOTS.);+#1334 = CARTESIAN_POINT('',(0.311794919243,0.25));+#1335 = CARTESIAN_POINT('',(0.658205080757,0.45));+#1336 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1337 = PCURVE('',#1338,#1343);+#1338 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#1339,#1340)+    ,(#1341,#1342+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,0.4),(-7.5E-03,0.),+  .PIECEWISE_BEZIER_KNOTS.);+#1339 = CARTESIAN_POINT('',(-0.173205080757,0.,1.35E-02));+#1340 = CARTESIAN_POINT('',(-0.173205080757,0.,6.75E-03));+#1341 = CARTESIAN_POINT('',(0.173205080757,0.2,1.35E-02));+#1342 = CARTESIAN_POINT('',(0.173205080757,0.2,6.75E-03));+#1343 = DEFINITIONAL_REPRESENTATION('',(#1344),#1347);+#1344 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1345,#1346),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.4),.PIECEWISE_BEZIER_KNOTS.);+#1345 = CARTESIAN_POINT('',(0.,-7.5E-03));+#1346 = CARTESIAN_POINT('',(0.4,-7.5E-03));+#1347 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1348 = ADVANCED_FACE('',(#1349),#379,.F.);+#1349 = FACE_BOUND('',#1350,.F.);+#1350 = EDGE_LOOP('',(#1351,#1378,#1396,#1397,#1398,#1399,#1424,#1449,+    #1479,#1504));+#1351 = ORIENTED_EDGE('',*,*,#1352,.F.);+#1352 = EDGE_CURVE('',#1353,#1355,#1357,.T.);+#1353 = VERTEX_POINT('',#1354);+#1354 = CARTESIAN_POINT('',(0.4625,-0.25,0.));+#1355 = VERTEX_POINT('',#1356);+#1356 = CARTESIAN_POINT('',(0.485,-0.25,-1.561251128379E-18));+#1357 = SURFACE_CURVE('',#1358,(#1361,#1367),.PCURVE_S1.);+#1358 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1359,#1360),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.1125,0.135),.PIECEWISE_BEZIER_KNOTS.);+#1359 = CARTESIAN_POINT('',(0.4625,-0.25,0.));+#1360 = CARTESIAN_POINT('',(0.485,-0.25,0.));+#1361 = PCURVE('',#379,#1362);+#1362 = DEFINITIONAL_REPRESENTATION('',(#1363),#1366);+#1363 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1364,#1365),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.1125,0.135),.PIECEWISE_BEZIER_KNOTS.);+#1364 = CARTESIAN_POINT('',(0.,0.1125));+#1365 = CARTESIAN_POINT('',(0.,0.135));+#1366 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1367 = PCURVE('',#1368,#1373);+#1368 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#1369,#1370)+    ,(#1371,#1372+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(1.5E-02,0.135),(0.,0.5),+  .PIECEWISE_BEZIER_KNOTS.);+#1369 = CARTESIAN_POINT('',(0.365,-0.25,0.));+#1370 = CARTESIAN_POINT('',(0.365,0.25,0.));+#1371 = CARTESIAN_POINT('',(0.485,-0.25,0.));+#1372 = CARTESIAN_POINT('',(0.485,0.25,0.));+#1373 = DEFINITIONAL_REPRESENTATION('',(#1374),#1377);+#1374 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1375,#1376),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.1125,0.135),.PIECEWISE_BEZIER_KNOTS.);+#1375 = CARTESIAN_POINT('',(0.1125,0.));+#1376 = CARTESIAN_POINT('',(0.135,0.));+#1377 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1378 = ORIENTED_EDGE('',*,*,#1379,.F.);+#1379 = EDGE_CURVE('',#411,#1353,#1380,.T.);+#1380 = SURFACE_CURVE('',#1381,(#1384,#1390),.PCURVE_S1.);+#1381 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1382,#1383),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.135,0.15),.PIECEWISE_BEZIER_KNOTS.);+#1382 = CARTESIAN_POINT('',(0.4625,-0.25,1.35E-02));+#1383 = CARTESIAN_POINT('',(0.4625,-0.25,0.));+#1384 = PCURVE('',#379,#1385);+#1385 = DEFINITIONAL_REPRESENTATION('',(#1386),#1389);+#1386 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1387,#1388),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.135,0.15),.PIECEWISE_BEZIER_KNOTS.);+#1387 = CARTESIAN_POINT('',(1.5E-02,0.1125));+#1388 = CARTESIAN_POINT('',(0.,0.1125));+#1389 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1390 = PCURVE('',#1037,#1391);+#1391 = DEFINITIONAL_REPRESENTATION('',(#1392),#1395);+#1392 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1393,#1394),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.135,0.15),.PIECEWISE_BEZIER_KNOTS.);+#1393 = CARTESIAN_POINT('',(6.25E-02,-0.285));+#1394 = CARTESIAN_POINT('',(6.25E-02,-0.3));+#1395 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1396 = ORIENTED_EDGE('',*,*,#410,.T.);+#1397 = ORIENTED_EDGE('',*,*,#390,.T.);+#1398 = ORIENTED_EDGE('',*,*,#365,.F.);+#1399 = ORIENTED_EDGE('',*,*,#1400,.F.);+#1400 = EDGE_CURVE('',#1401,#341,#1403,.T.);+#1401 = VERTEX_POINT('',#1402);+#1402 = CARTESIAN_POINT('',(0.4625,-0.25,0.18));+#1403 = SURFACE_CURVE('',#1404,(#1407,#1413),.PCURVE_S1.);+#1404 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1405,#1406),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-5.E-02,-3.5E-02),.PIECEWISE_BEZIER_KNOTS.);+#1405 = CARTESIAN_POINT('',(0.4625,-0.25,0.18));+#1406 = CARTESIAN_POINT('',(0.4625,-0.25,0.1665));+#1407 = PCURVE('',#379,#1408);+#1408 = DEFINITIONAL_REPRESENTATION('',(#1409),#1412);+#1409 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1410,#1411),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-5.E-02,-3.5E-02),.PIECEWISE_BEZIER_KNOTS.);+#1410 = CARTESIAN_POINT('',(0.2,0.1125));+#1411 = CARTESIAN_POINT('',(0.185,0.1125));+#1412 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1413 = PCURVE('',#1414,#1419);+#1414 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#1415,#1416)+    ,(#1417,#1418+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(6.25E-02,0.125),(-0.115,+    -1.E-01),.PIECEWISE_BEZIER_KNOTS.);+#1415 = CARTESIAN_POINT('',(0.4625,-0.25,0.1665));+#1416 = CARTESIAN_POINT('',(0.4625,-0.25,0.18));+#1417 = CARTESIAN_POINT('',(0.4625,-0.1875,0.1665));+#1418 = CARTESIAN_POINT('',(0.4625,-0.1875,0.18));+#1419 = DEFINITIONAL_REPRESENTATION('',(#1420),#1423);+#1420 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1421,#1422),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-5.E-02,-3.5E-02),.PIECEWISE_BEZIER_KNOTS.);+#1421 = CARTESIAN_POINT('',(6.25E-02,-1.E-01));+#1422 = CARTESIAN_POINT('',(6.25E-02,-0.115));+#1423 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1424 = ORIENTED_EDGE('',*,*,#1425,.T.);+#1425 = EDGE_CURVE('',#1401,#1426,#1428,.T.);+#1426 = VERTEX_POINT('',#1427);+#1427 = CARTESIAN_POINT('',(0.485,-0.25,0.18));+#1428 = SURFACE_CURVE('',#1429,(#1432,#1438),.PCURVE_S1.);+#1429 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1430,#1431),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.1125,0.135),.PIECEWISE_BEZIER_KNOTS.);+#1430 = CARTESIAN_POINT('',(0.4625,-0.25,0.18));+#1431 = CARTESIAN_POINT('',(0.485,-0.25,0.18));+#1432 = PCURVE('',#379,#1433);+#1433 = DEFINITIONAL_REPRESENTATION('',(#1434),#1437);+#1434 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1435,#1436),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.1125,0.135),.PIECEWISE_BEZIER_KNOTS.);+#1435 = CARTESIAN_POINT('',(0.2,0.1125));+#1436 = CARTESIAN_POINT('',(0.2,0.135));+#1437 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1438 = PCURVE('',#1439,#1444);+#1439 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#1440,#1441)+    ,(#1442,#1443+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(1.5E-02,0.135),(0.,0.5),+  .PIECEWISE_BEZIER_KNOTS.);+#1440 = CARTESIAN_POINT('',(0.365,-0.25,0.18));+#1441 = CARTESIAN_POINT('',(0.365,0.25,0.18));+#1442 = CARTESIAN_POINT('',(0.485,-0.25,0.18));+#1443 = CARTESIAN_POINT('',(0.485,0.25,0.18));+#1444 = DEFINITIONAL_REPRESENTATION('',(#1445),#1448);+#1445 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1446,#1447),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.1125,0.135),.PIECEWISE_BEZIER_KNOTS.);+#1446 = CARTESIAN_POINT('',(0.1125,0.));+#1447 = CARTESIAN_POINT('',(0.135,0.));+#1448 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1449 = ORIENTED_EDGE('',*,*,#1450,.F.);+#1450 = EDGE_CURVE('',#1451,#1426,#1453,.T.);+#1451 = VERTEX_POINT('',#1452);+#1452 = CARTESIAN_POINT('',(0.5,-0.25,0.1665));+#1453 = SURFACE_CURVE('',#1454,(#1458,#1465),.PCURVE_S1.);+#1454 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#1455,#1456,#1457),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(4.712388980385,+6.28318530718),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#1455 = CARTESIAN_POINT('',(0.5,-0.25,0.1665));+#1456 = CARTESIAN_POINT('',(0.5,-0.25,0.18));+#1457 = CARTESIAN_POINT('',(0.485,-0.25,0.18));+#1458 = PCURVE('',#379,#1459);+#1459 = DEFINITIONAL_REPRESENTATION('',(#1460),#1464);+#1460 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#1461,#1462,#1463),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(4.712388980385,+6.28318530718),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#1461 = CARTESIAN_POINT('',(0.185,0.15));+#1462 = CARTESIAN_POINT('',(0.2,0.15));+#1463 = CARTESIAN_POINT('',(0.2,0.135));+#1464 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1465 = PCURVE('',#1466,#1473);+#1466 = ( BOUNDED_SURFACE() B_SPLINE_SURFACE(2,1,(+    (#1467,#1468)+    ,(#1469,#1470)+    ,(#1471,#1472+)),.UNSPECIFIED.,.F.,.F.,.F.) B_SPLINE_SURFACE_WITH_KNOTS((3,3),(2,2),(+    4.712388980385,6.28318530718),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.) +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_SURFACE((+    (1.,1.)+    ,(0.707106781187,0.707106781187)+,(1.,1.))) REPRESENTATION_ITEM('') SURFACE() );+#1467 = CARTESIAN_POINT('',(0.485,-0.25,0.18));+#1468 = CARTESIAN_POINT('',(0.485,0.25,0.18));+#1469 = CARTESIAN_POINT('',(0.5,-0.25,0.18));+#1470 = CARTESIAN_POINT('',(0.5,0.25,0.18));+#1471 = CARTESIAN_POINT('',(0.5,-0.25,0.1665));+#1472 = CARTESIAN_POINT('',(0.5,0.25,0.1665));+#1473 = DEFINITIONAL_REPRESENTATION('',(#1474),#1478);+#1474 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#1475,#1476,#1477),+  .UNSPECIFIED.,.F.,.F.,(3,3),(4.712388980385,6.28318530718),+  .PIECEWISE_BEZIER_KNOTS.);+#1475 = CARTESIAN_POINT('',(6.28318530718,0.));+#1476 = CARTESIAN_POINT('',(5.497787143782,0.));+#1477 = CARTESIAN_POINT('',(4.712388980385,0.));+#1478 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1479 = ORIENTED_EDGE('',*,*,#1480,.F.);+#1480 = EDGE_CURVE('',#1481,#1451,#1483,.T.);+#1481 = VERTEX_POINT('',#1482);+#1482 = CARTESIAN_POINT('',(0.5,-0.25,1.35E-02));+#1483 = SURFACE_CURVE('',#1484,(#1487,#1493),.PCURVE_S1.);+#1484 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1485,#1486),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.5E-02,0.185),.PIECEWISE_BEZIER_KNOTS.);+#1485 = CARTESIAN_POINT('',(0.5,-0.25,1.35E-02));+#1486 = CARTESIAN_POINT('',(0.5,-0.25,0.1665));+#1487 = PCURVE('',#379,#1488);+#1488 = DEFINITIONAL_REPRESENTATION('',(#1489),#1492);+#1489 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1490,#1491),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.5E-02,0.185),.PIECEWISE_BEZIER_KNOTS.);+#1490 = CARTESIAN_POINT('',(1.5E-02,0.15));+#1491 = CARTESIAN_POINT('',(0.185,0.15));+#1492 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1493 = PCURVE('',#1494,#1499);+#1494 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#1495,#1496)+    ,(#1497,#1498+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(1.5E-02,0.185),(-0.5,0.),+  .PIECEWISE_BEZIER_KNOTS.);+#1495 = CARTESIAN_POINT('',(0.5,0.25,1.35E-02));+#1496 = CARTESIAN_POINT('',(0.5,-0.25,1.35E-02));+#1497 = CARTESIAN_POINT('',(0.5,0.25,0.1665));+#1498 = CARTESIAN_POINT('',(0.5,-0.25,0.1665));+#1499 = DEFINITIONAL_REPRESENTATION('',(#1500),#1503);+#1500 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1501,#1502),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.5E-02,0.185),.PIECEWISE_BEZIER_KNOTS.);+#1501 = CARTESIAN_POINT('',(1.5E-02,0.));+#1502 = CARTESIAN_POINT('',(0.185,0.));+#1503 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1504 = ORIENTED_EDGE('',*,*,#1505,.T.);+#1505 = EDGE_CURVE('',#1481,#1355,#1506,.T.);+#1506 = SURFACE_CURVE('',#1507,(#1511,#1518),.PCURVE_S1.);+#1507 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#1508,#1509,#1510),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(1.570796326795,+3.14159265359),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#1508 = CARTESIAN_POINT('',(0.5,-0.25,1.35E-02));+#1509 = CARTESIAN_POINT('',(0.5,-0.25,3.122502256758E-18));+#1510 = CARTESIAN_POINT('',(0.485,-0.25,0.));+#1511 = PCURVE('',#379,#1512);+#1512 = DEFINITIONAL_REPRESENTATION('',(#1513),#1517);+#1513 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#1514,#1515,#1516),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(1.570796326795,+3.14159265359),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#1514 = CARTESIAN_POINT('',(1.5E-02,0.15));+#1515 = CARTESIAN_POINT('',(3.469446951954E-18,0.15));+#1516 = CARTESIAN_POINT('',(0.,0.135));+#1517 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1518 = PCURVE('',#1519,#1526);+#1519 = ( BOUNDED_SURFACE() B_SPLINE_SURFACE(2,1,(+    (#1520,#1521)+    ,(#1522,#1523)+    ,(#1524,#1525+)),.UNSPECIFIED.,.F.,.F.,.F.) B_SPLINE_SURFACE_WITH_KNOTS((3,3),(2,2),(+    0.,1.570796326795),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.) +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_SURFACE((+    (1.,1.)+    ,(0.707106781187,0.707106781187)+,(1.,1.))) REPRESENTATION_ITEM('') SURFACE() );+#1520 = CARTESIAN_POINT('',(0.5,-0.25,1.35E-02));+#1521 = CARTESIAN_POINT('',(0.5,0.25,1.35E-02));+#1522 = CARTESIAN_POINT('',(0.5,-0.25,1.561251128379E-18));+#1523 = CARTESIAN_POINT('',(0.5,0.25,1.561251128379E-18));+#1524 = CARTESIAN_POINT('',(0.485,-0.25,0.));+#1525 = CARTESIAN_POINT('',(0.485,0.25,0.));+#1526 = DEFINITIONAL_REPRESENTATION('',(#1527),#1531);+#1527 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#1528,#1529,#1530),+  .UNSPECIFIED.,.F.,.F.,(3,3),(1.570796326795,3.14159265359),+  .PIECEWISE_BEZIER_KNOTS.);+#1528 = CARTESIAN_POINT('',(0.,0.));+#1529 = CARTESIAN_POINT('',(0.785398163397,0.));+#1530 = CARTESIAN_POINT('',(1.570796326795,0.));+#1531 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1532 = ADVANCED_FACE('',(#1533),#354,.T.);+#1533 = FACE_BOUND('',#1534,.T.);+#1534 = EDGE_LOOP('',(#1535,#1560,#1561,#1562));+#1535 = ORIENTED_EDGE('',*,*,#1536,.F.);+#1536 = EDGE_CURVE('',#502,#1537,#1539,.T.);+#1537 = VERTEX_POINT('',#1538);+#1538 = CARTESIAN_POINT('',(0.4625,-0.1875,0.1665));+#1539 = SURFACE_CURVE('',#1540,(#1543,#1549),.PCURVE_S1.);+#1540 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1541,#1542),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.36125,0.47375),.PIECEWISE_BEZIER_KNOTS.);+#1541 = CARTESIAN_POINT('',(0.35,-0.1875,0.1665));+#1542 = CARTESIAN_POINT('',(0.4625,-0.1875,0.1665));+#1543 = PCURVE('',#354,#1544);+#1544 = DEFINITIONAL_REPRESENTATION('',(#1545),#1548);+#1545 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1546,#1547),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.36125,0.47375),.PIECEWISE_BEZIER_KNOTS.);+#1546 = CARTESIAN_POINT('',(0.835,6.25E-02));+#1547 = CARTESIAN_POINT('',(0.9475,6.25E-02));+#1548 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1549 = PCURVE('',#1550,#1555);+#1550 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#1551,#1552)+    ,(#1553,#1554+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,0.1125),(-0.115,-1.E-01+    ),.PIECEWISE_BEZIER_KNOTS.);+#1551 = CARTESIAN_POINT('',(0.4625,-0.1875,0.1665));+#1552 = CARTESIAN_POINT('',(0.4625,-0.1875,0.18));+#1553 = CARTESIAN_POINT('',(0.35,-0.1875,0.1665));+#1554 = CARTESIAN_POINT('',(0.35,-0.1875,0.18));+#1555 = DEFINITIONAL_REPRESENTATION('',(#1556),#1559);+#1556 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1557,#1558),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.36125,0.47375),.PIECEWISE_BEZIER_KNOTS.);+#1557 = CARTESIAN_POINT('',(0.1125,-0.115));+#1558 = CARTESIAN_POINT('',(0.,-0.115));+#1559 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1560 = ORIENTED_EDGE('',*,*,#501,.T.);+#1561 = ORIENTED_EDGE('',*,*,#340,.T.);+#1562 = ORIENTED_EDGE('',*,*,#1563,.F.);+#1563 = EDGE_CURVE('',#1537,#341,#1564,.T.);+#1564 = SURFACE_CURVE('',#1565,(#1568,#1574),.PCURVE_S1.);+#1565 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1566,#1567),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-9.375E-02,-3.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#1566 = CARTESIAN_POINT('',(0.4625,-0.1875,0.1665));+#1567 = CARTESIAN_POINT('',(0.4625,-0.25,0.1665));+#1568 = PCURVE('',#354,#1569);+#1569 = DEFINITIONAL_REPRESENTATION('',(#1570),#1573);+#1570 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1571,#1572),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-9.375E-02,-3.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#1571 = CARTESIAN_POINT('',(0.9475,6.25E-02));+#1572 = CARTESIAN_POINT('',(0.9475,0.));+#1573 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1574 = PCURVE('',#1414,#1575);+#1575 = DEFINITIONAL_REPRESENTATION('',(#1576),#1579);+#1576 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1577,#1578),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-9.375E-02,-3.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#1577 = CARTESIAN_POINT('',(0.125,-0.115));+#1578 = CARTESIAN_POINT('',(6.25E-02,-0.115));+#1579 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1580 = ADVANCED_FACE('',(#1581),#563,.T.);+#1581 = FACE_BOUND('',#1582,.T.);+#1582 = EDGE_LOOP('',(#1583,#1603,#1604,#1629));+#1583 = ORIENTED_EDGE('',*,*,#1584,.F.);+#1584 = EDGE_CURVE('',#550,#1585,#1587,.T.);+#1585 = VERTEX_POINT('',#1586);+#1586 = CARTESIAN_POINT('',(0.4625,0.25,0.1665));+#1587 = SURFACE_CURVE('',#1588,(#1591,#1597),.PCURVE_S1.);+#1588 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1589,#1590),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.835,0.9475),.PIECEWISE_BEZIER_KNOTS.);+#1589 = CARTESIAN_POINT('',(0.35,0.25,0.1665));+#1590 = CARTESIAN_POINT('',(0.4625,0.25,0.1665));+#1591 = PCURVE('',#563,#1592);+#1592 = DEFINITIONAL_REPRESENTATION('',(#1593),#1596);+#1593 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1594,#1595),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.835,0.9475),.PIECEWISE_BEZIER_KNOTS.);+#1594 = CARTESIAN_POINT('',(0.835,0.5));+#1595 = CARTESIAN_POINT('',(0.9475,0.5));+#1596 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1597 = PCURVE('',#609,#1598);+#1598 = DEFINITIONAL_REPRESENTATION('',(#1599),#1602);+#1599 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1600,#1601),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.835,0.9475),.PIECEWISE_BEZIER_KNOTS.);+#1600 = CARTESIAN_POINT('',(0.17,0.835));+#1601 = CARTESIAN_POINT('',(0.17,0.9475));+#1602 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1603 = ORIENTED_EDGE('',*,*,#549,.T.);+#1604 = ORIENTED_EDGE('',*,*,#1605,.F.);+#1605 = EDGE_CURVE('',#1606,#522,#1608,.T.);+#1606 = VERTEX_POINT('',#1607);+#1607 = CARTESIAN_POINT('',(0.4625,0.1875,0.1665));+#1608 = SURFACE_CURVE('',#1609,(#1612,#1618),.PCURVE_S1.);+#1609 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1610,#1611),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.93625,-0.82375),.PIECEWISE_BEZIER_KNOTS.);+#1610 = CARTESIAN_POINT('',(0.4625,0.1875,0.1665));+#1611 = CARTESIAN_POINT('',(0.35,0.1875,0.1665));+#1612 = PCURVE('',#563,#1613);+#1613 = DEFINITIONAL_REPRESENTATION('',(#1614),#1617);+#1614 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1615,#1616),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.93625,-0.82375),.PIECEWISE_BEZIER_KNOTS.);+#1615 = CARTESIAN_POINT('',(0.9475,0.4375));+#1616 = CARTESIAN_POINT('',(0.835,0.4375));+#1617 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1618 = PCURVE('',#1619,#1624);+#1619 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#1620,#1621)+    ,(#1622,#1623+  )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.8125,0.925),(-0.115,+    -1.E-01),.PIECEWISE_BEZIER_KNOTS.);+#1620 = CARTESIAN_POINT('',(0.35,0.1875,0.1665));+#1621 = CARTESIAN_POINT('',(0.35,0.1875,0.18));+#1622 = CARTESIAN_POINT('',(0.4625,0.1875,0.1665));+#1623 = CARTESIAN_POINT('',(0.4625,0.1875,0.18));+#1624 = DEFINITIONAL_REPRESENTATION('',(#1625),#1628);+#1625 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1626,#1627),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.93625,-0.82375),.PIECEWISE_BEZIER_KNOTS.);+#1626 = CARTESIAN_POINT('',(0.925,-0.115));+#1627 = CARTESIAN_POINT('',(0.8125,-0.115));+#1628 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1629 = ORIENTED_EDGE('',*,*,#1630,.F.);+#1630 = EDGE_CURVE('',#1585,#1606,#1631,.T.);+#1631 = SURFACE_CURVE('',#1632,(#1635,#1641),.PCURVE_S1.);+#1632 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1633,#1634),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.28125,-0.21875),.PIECEWISE_BEZIER_KNOTS.);+#1633 = CARTESIAN_POINT('',(0.4625,0.25,0.1665));+#1634 = CARTESIAN_POINT('',(0.4625,0.1875,0.1665));+#1635 = PCURVE('',#563,#1636);+#1636 = DEFINITIONAL_REPRESENTATION('',(#1637),#1640);+#1637 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1638,#1639),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.28125,-0.21875),.PIECEWISE_BEZIER_KNOTS.);+#1638 = CARTESIAN_POINT('',(0.9475,0.5));+#1639 = CARTESIAN_POINT('',(0.9475,0.4375));+#1640 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1641 = PCURVE('',#1642,#1647);+#1642 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#1643,#1644)+    ,(#1645,#1646+  )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,6.25E-02),(-0.115,-1.E-01+    ),.PIECEWISE_BEZIER_KNOTS.);+#1643 = CARTESIAN_POINT('',(0.4625,0.1875,0.1665));+#1644 = CARTESIAN_POINT('',(0.4625,0.1875,0.18));+#1645 = CARTESIAN_POINT('',(0.4625,0.25,0.1665));+#1646 = CARTESIAN_POINT('',(0.4625,0.25,0.18));+#1647 = DEFINITIONAL_REPRESENTATION('',(#1648),#1651);+#1648 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1649,#1650),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.28125,-0.21875),.PIECEWISE_BEZIER_KNOTS.);+#1649 = CARTESIAN_POINT('',(6.25E-02,-0.115));+#1650 = CARTESIAN_POINT('',(0.,-0.115));+#1651 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1652 = ADVANCED_FACE('',(#1653),#535,.T.);+#1653 = FACE_BOUND('',#1654,.T.);+#1654 = EDGE_LOOP('',(#1655,#1656,#1679,#1700));+#1655 = ORIENTED_EDGE('',*,*,#521,.F.);+#1656 = ORIENTED_EDGE('',*,*,#1657,.T.);+#1657 = EDGE_CURVE('',#502,#1658,#1660,.T.);+#1658 = VERTEX_POINT('',#1659);+#1659 = CARTESIAN_POINT('',(0.365,-0.1875,0.18));+#1660 = SURFACE_CURVE('',#1661,(#1665,#1672),.PCURVE_S1.);+#1661 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#1662,#1663,#1664),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(0.,+1.570796326795),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#1662 = CARTESIAN_POINT('',(0.35,-0.1875,0.1665));+#1663 = CARTESIAN_POINT('',(0.35,-0.1875,0.18));+#1664 = CARTESIAN_POINT('',(0.365,-0.1875,0.18));+#1665 = PCURVE('',#535,#1666);+#1666 = DEFINITIONAL_REPRESENTATION('',(#1667),#1671);+#1667 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#1668,#1669,#1670),+  .UNSPECIFIED.,.F.,.F.,(3,3),(0.,1.570796326795),+  .PIECEWISE_BEZIER_KNOTS.);+#1668 = CARTESIAN_POINT('',(0.,6.25E-02));+#1669 = CARTESIAN_POINT('',(0.785398163397,6.25E-02));+#1670 = CARTESIAN_POINT('',(1.570796326795,6.25E-02));+#1671 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1672 = PCURVE('',#1550,#1673);+#1673 = DEFINITIONAL_REPRESENTATION('',(#1674),#1678);+#1674 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#1675,#1676,#1677),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(0.,+1.570796326795),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#1675 = CARTESIAN_POINT('',(0.1125,-0.115));+#1676 = CARTESIAN_POINT('',(0.1125,-0.1));+#1677 = CARTESIAN_POINT('',(9.75E-02,-1.E-01));+#1678 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1679 = ORIENTED_EDGE('',*,*,#1680,.T.);+#1680 = EDGE_CURVE('',#1658,#1681,#1683,.T.);+#1681 = VERTEX_POINT('',#1682);+#1682 = CARTESIAN_POINT('',(0.365,0.1875,0.18));+#1683 = SURFACE_CURVE('',#1684,(#1687,#1694),.PCURVE_S1.);+#1684 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1685,#1686),.UNSPECIFIED.,.F.,+  .F.,(2,2),(6.25E-02,0.4375),.PIECEWISE_BEZIER_KNOTS.);+#1685 = CARTESIAN_POINT('',(0.365,-0.1875,0.18));+#1686 = CARTESIAN_POINT('',(0.365,0.1875,0.18));+#1687 = PCURVE('',#535,#1688);+#1688 = DEFINITIONAL_REPRESENTATION('',(#1689),#1693);+#1689 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#1690,#1691,#1692),+  .UNSPECIFIED.,.F.,.F.,(3,3),(6.25E-02,0.4375),+  .PIECEWISE_BEZIER_KNOTS.);+#1690 = CARTESIAN_POINT('',(1.570796326795,6.25E-02));+#1691 = CARTESIAN_POINT('',(1.570796326795,0.25));+#1692 = CARTESIAN_POINT('',(1.570796326795,0.4375));+#1693 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1694 = PCURVE('',#1439,#1695);+#1695 = DEFINITIONAL_REPRESENTATION('',(#1696),#1699);+#1696 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1697,#1698),.UNSPECIFIED.,.F.,+  .F.,(2,2),(6.25E-02,0.4375),.PIECEWISE_BEZIER_KNOTS.);+#1697 = CARTESIAN_POINT('',(1.5E-02,6.25E-02));+#1698 = CARTESIAN_POINT('',(1.5E-02,0.4375));+#1699 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1700 = ORIENTED_EDGE('',*,*,#1701,.F.);+#1701 = EDGE_CURVE('',#522,#1681,#1702,.T.);+#1702 = SURFACE_CURVE('',#1703,(#1707,#1714),.PCURVE_S1.);+#1703 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#1704,#1705,#1706),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(0.,+1.570796326795),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#1704 = CARTESIAN_POINT('',(0.35,0.1875,0.1665));+#1705 = CARTESIAN_POINT('',(0.35,0.1875,0.18));+#1706 = CARTESIAN_POINT('',(0.365,0.1875,0.18));+#1707 = PCURVE('',#535,#1708);+#1708 = DEFINITIONAL_REPRESENTATION('',(#1709),#1713);+#1709 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#1710,#1711,#1712),+  .UNSPECIFIED.,.F.,.F.,(3,3),(0.,1.570796326795),+  .PIECEWISE_BEZIER_KNOTS.);+#1710 = CARTESIAN_POINT('',(0.,0.4375));+#1711 = CARTESIAN_POINT('',(0.785398163397,0.4375));+#1712 = CARTESIAN_POINT('',(1.570796326795,0.4375));+#1713 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1714 = PCURVE('',#1619,#1715);+#1715 = DEFINITIONAL_REPRESENTATION('',(#1716),#1720);+#1716 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#1717,#1718,#1719),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(0.,+1.570796326795),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#1717 = CARTESIAN_POINT('',(0.8125,-0.115));+#1718 = CARTESIAN_POINT('',(0.8125,-0.1));+#1719 = CARTESIAN_POINT('',(0.8275,-1.E-01));+#1720 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1721 = ADVANCED_FACE('',(#1722),#609,.T.);+#1722 = FACE_BOUND('',#1723,.T.);+#1723 = EDGE_LOOP('',(#1724,#1749,#1769,#1787,#1788,#1789,#1790,#1815,+    #1835,#1853));+#1724 = ORIENTED_EDGE('',*,*,#1725,.F.);+#1725 = EDGE_CURVE('',#1726,#1152,#1728,.T.);+#1726 = VERTEX_POINT('',#1727);+#1727 = CARTESIAN_POINT('',(-0.485,0.25,1.35E-02));+#1728 = SURFACE_CURVE('',#1729,(#1732,#1738),.PCURVE_S1.);+#1729 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1730,#1731),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,2.25E-02),.PIECEWISE_BEZIER_KNOTS.);+#1730 = CARTESIAN_POINT('',(-0.485,0.25,1.35E-02));+#1731 = CARTESIAN_POINT('',(-0.4625,0.25,1.35E-02));+#1732 = PCURVE('',#609,#1733);+#1733 = DEFINITIONAL_REPRESENTATION('',(#1734),#1737);+#1734 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1735,#1736),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,2.25E-02),.PIECEWISE_BEZIER_KNOTS.);+#1735 = CARTESIAN_POINT('',(0.,0.));+#1736 = CARTESIAN_POINT('',(0.,2.25E-02));+#1737 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1738 = PCURVE('',#1739,#1744);+#1739 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#1740,#1741)+    ,(#1742,#1743+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,0.2),(0.,3.75E-02),+  .PIECEWISE_BEZIER_KNOTS.);+#1740 = CARTESIAN_POINT('',(-0.5,0.25,0.));+#1741 = CARTESIAN_POINT('',(-0.4625,0.25,0.));+#1742 = CARTESIAN_POINT('',(-0.5,0.25,0.18));+#1743 = CARTESIAN_POINT('',(-0.4625,0.25,0.18));+#1744 = DEFINITIONAL_REPRESENTATION('',(#1745),#1748);+#1745 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1746,#1747),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,2.25E-02),.PIECEWISE_BEZIER_KNOTS.);+#1746 = CARTESIAN_POINT('',(1.5E-02,1.5E-02));+#1747 = CARTESIAN_POINT('',(1.5E-02,3.75E-02));+#1748 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1749 = ORIENTED_EDGE('',*,*,#1750,.T.);+#1750 = EDGE_CURVE('',#1726,#1751,#1753,.T.);+#1751 = VERTEX_POINT('',#1752);+#1752 = CARTESIAN_POINT('',(-0.485,0.25,0.1665));+#1753 = SURFACE_CURVE('',#1754,(#1757,#1763),.PCURVE_S1.);+#1754 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1755,#1756),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.17),.PIECEWISE_BEZIER_KNOTS.);+#1755 = CARTESIAN_POINT('',(-0.485,0.25,1.35E-02));+#1756 = CARTESIAN_POINT('',(-0.485,0.25,0.1665));+#1757 = PCURVE('',#609,#1758);+#1758 = DEFINITIONAL_REPRESENTATION('',(#1759),#1762);+#1759 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1760,#1761),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.17),.PIECEWISE_BEZIER_KNOTS.);+#1760 = CARTESIAN_POINT('',(0.,0.));+#1761 = CARTESIAN_POINT('',(0.17,0.));+#1762 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1763 = PCURVE('',#1739,#1764);+#1764 = DEFINITIONAL_REPRESENTATION('',(#1765),#1768);+#1765 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1766,#1767),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.17),.PIECEWISE_BEZIER_KNOTS.);+#1766 = CARTESIAN_POINT('',(1.5E-02,1.5E-02));+#1767 = CARTESIAN_POINT('',(0.185,1.5E-02));+#1768 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1769 = ORIENTED_EDGE('',*,*,#1770,.T.);+#1770 = EDGE_CURVE('',#1751,#596,#1771,.T.);+#1771 = SURFACE_CURVE('',#1772,(#1775,#1781),.PCURVE_S1.);+#1772 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1773,#1774),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,2.25E-02),.PIECEWISE_BEZIER_KNOTS.);+#1773 = CARTESIAN_POINT('',(-0.485,0.25,0.1665));+#1774 = CARTESIAN_POINT('',(-0.4625,0.25,0.1665));+#1775 = PCURVE('',#609,#1776);+#1776 = DEFINITIONAL_REPRESENTATION('',(#1777),#1780);+#1777 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1778,#1779),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,2.25E-02),.PIECEWISE_BEZIER_KNOTS.);+#1778 = CARTESIAN_POINT('',(0.17,0.));+#1779 = CARTESIAN_POINT('',(0.17,2.25E-02));+#1780 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1781 = PCURVE('',#1739,#1782);+#1782 = DEFINITIONAL_REPRESENTATION('',(#1783),#1786);+#1783 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1784,#1785),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,2.25E-02),.PIECEWISE_BEZIER_KNOTS.);+#1784 = CARTESIAN_POINT('',(0.185,1.5E-02));+#1785 = CARTESIAN_POINT('',(0.185,3.75E-02));+#1786 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1787 = ORIENTED_EDGE('',*,*,#595,.T.);+#1788 = ORIENTED_EDGE('',*,*,#675,.F.);+#1789 = ORIENTED_EDGE('',*,*,#1584,.T.);+#1790 = ORIENTED_EDGE('',*,*,#1791,.T.);+#1791 = EDGE_CURVE('',#1585,#1792,#1794,.T.);+#1792 = VERTEX_POINT('',#1793);+#1793 = CARTESIAN_POINT('',(0.485,0.25,0.1665));+#1794 = SURFACE_CURVE('',#1795,(#1798,#1804),.PCURVE_S1.);+#1795 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1796,#1797),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.9475,0.97),.PIECEWISE_BEZIER_KNOTS.);+#1796 = CARTESIAN_POINT('',(0.4625,0.25,0.1665));+#1797 = CARTESIAN_POINT('',(0.485,0.25,0.1665));+#1798 = PCURVE('',#609,#1799);+#1799 = DEFINITIONAL_REPRESENTATION('',(#1800),#1803);+#1800 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1801,#1802),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.9475,0.97),.PIECEWISE_BEZIER_KNOTS.);+#1801 = CARTESIAN_POINT('',(0.17,0.9475));+#1802 = CARTESIAN_POINT('',(0.17,0.97));+#1803 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1804 = PCURVE('',#1805,#1810);+#1805 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#1806,#1807)+    ,(#1808,#1809+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,0.2),(0.1125,0.15),+  .PIECEWISE_BEZIER_KNOTS.);+#1806 = CARTESIAN_POINT('',(0.4625,0.25,0.));+#1807 = CARTESIAN_POINT('',(0.5,0.25,0.));+#1808 = CARTESIAN_POINT('',(0.4625,0.25,0.18));+#1809 = CARTESIAN_POINT('',(0.5,0.25,0.18));+#1810 = DEFINITIONAL_REPRESENTATION('',(#1811),#1814);+#1811 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1812,#1813),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.9475,0.97),.PIECEWISE_BEZIER_KNOTS.);+#1812 = CARTESIAN_POINT('',(0.185,0.1125));+#1813 = CARTESIAN_POINT('',(0.185,0.135));+#1814 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1815 = ORIENTED_EDGE('',*,*,#1816,.F.);+#1816 = EDGE_CURVE('',#1817,#1792,#1819,.T.);+#1817 = VERTEX_POINT('',#1818);+#1818 = CARTESIAN_POINT('',(0.485,0.25,1.35E-02));+#1819 = SURFACE_CURVE('',#1820,(#1823,#1829),.PCURVE_S1.);+#1820 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1821,#1822),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.17),.PIECEWISE_BEZIER_KNOTS.);+#1821 = CARTESIAN_POINT('',(0.485,0.25,1.35E-02));+#1822 = CARTESIAN_POINT('',(0.485,0.25,0.1665));+#1823 = PCURVE('',#609,#1824);+#1824 = DEFINITIONAL_REPRESENTATION('',(#1825),#1828);+#1825 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1826,#1827),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.17),.PIECEWISE_BEZIER_KNOTS.);+#1826 = CARTESIAN_POINT('',(0.,0.97));+#1827 = CARTESIAN_POINT('',(0.17,0.97));+#1828 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1829 = PCURVE('',#1805,#1830);+#1830 = DEFINITIONAL_REPRESENTATION('',(#1831),#1834);+#1831 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1832,#1833),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.17),.PIECEWISE_BEZIER_KNOTS.);+#1832 = CARTESIAN_POINT('',(1.5E-02,0.135));+#1833 = CARTESIAN_POINT('',(0.185,0.135));+#1834 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1835 = ORIENTED_EDGE('',*,*,#1836,.F.);+#1836 = EDGE_CURVE('',#1127,#1817,#1837,.T.);+#1837 = SURFACE_CURVE('',#1838,(#1841,#1847),.PCURVE_S1.);+#1838 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1839,#1840),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.9475,0.97),.PIECEWISE_BEZIER_KNOTS.);+#1839 = CARTESIAN_POINT('',(0.4625,0.25,1.35E-02));+#1840 = CARTESIAN_POINT('',(0.485,0.25,1.35E-02));+#1841 = PCURVE('',#609,#1842);+#1842 = DEFINITIONAL_REPRESENTATION('',(#1843),#1846);+#1843 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1844,#1845),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.9475,0.97),.PIECEWISE_BEZIER_KNOTS.);+#1844 = CARTESIAN_POINT('',(0.,0.9475));+#1845 = CARTESIAN_POINT('',(0.,0.97));+#1846 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1847 = PCURVE('',#1805,#1848);+#1848 = DEFINITIONAL_REPRESENTATION('',(#1849),#1852);+#1849 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1850,#1851),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.9475,0.97),.PIECEWISE_BEZIER_KNOTS.);+#1850 = CARTESIAN_POINT('',(1.5E-02,0.1125));+#1851 = CARTESIAN_POINT('',(1.5E-02,0.135));+#1852 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1853 = ORIENTED_EDGE('',*,*,#1151,.F.);+#1854 = ADVANCED_FACE('',(#1855),#657,.F.);+#1855 = FACE_BOUND('',#1856,.F.);+#1856 = EDGE_LOOP('',(#1857,#1877,#1895,#1896));+#1857 = ORIENTED_EDGE('',*,*,#1858,.F.);+#1858 = EDGE_CURVE('',#1859,#697,#1861,.T.);+#1859 = VERTEX_POINT('',#1860);+#1860 = CARTESIAN_POINT('',(-0.4625,0.1875,0.18));+#1861 = SURFACE_CURVE('',#1862,(#1865,#1871),.PCURVE_S1.);+#1862 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1863,#1864),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.875E-02,0.11625),.PIECEWISE_BEZIER_KNOTS.);+#1863 = CARTESIAN_POINT('',(-0.4625,0.1875,0.18));+#1864 = CARTESIAN_POINT('',(-0.365,0.1875,0.18));+#1865 = PCURVE('',#657,#1866);+#1866 = DEFINITIONAL_REPRESENTATION('',(#1867),#1870);+#1867 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1868,#1869),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.875E-02,0.11625),.PIECEWISE_BEZIER_KNOTS.);+#1868 = CARTESIAN_POINT('',(0.,-1.E-01));+#1869 = CARTESIAN_POINT('',(9.75E-02,-1.E-01));+#1870 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1871 = PCURVE('',#734,#1872);+#1872 = DEFINITIONAL_REPRESENTATION('',(#1873),#1876);+#1873 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1874,#1875),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.875E-02,0.11625),.PIECEWISE_BEZIER_KNOTS.);+#1874 = CARTESIAN_POINT('',(3.75E-02,0.4375));+#1875 = CARTESIAN_POINT('',(0.135,0.4375));+#1876 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1877 = ORIENTED_EDGE('',*,*,#1878,.T.);+#1878 = EDGE_CURVE('',#1859,#621,#1879,.T.);+#1879 = SURFACE_CURVE('',#1880,(#1883,#1889),.PCURVE_S1.);+#1880 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1881,#1882),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);+#1881 = CARTESIAN_POINT('',(-0.4625,0.1875,0.18));+#1882 = CARTESIAN_POINT('',(-0.4625,0.1875,0.1665));+#1883 = PCURVE('',#657,#1884);+#1884 = DEFINITIONAL_REPRESENTATION('',(#1885),#1888);+#1885 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1886,#1887),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);+#1886 = CARTESIAN_POINT('',(0.,-1.E-01));+#1887 = CARTESIAN_POINT('',(0.,-0.115));+#1888 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1889 = PCURVE('',#634,#1890);+#1890 = DEFINITIONAL_REPRESENTATION('',(#1891),#1894);+#1891 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1892,#1893),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);+#1892 = CARTESIAN_POINT('',(0.125,-1.E-01));+#1893 = CARTESIAN_POINT('',(0.125,-0.115));+#1894 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1895 = ORIENTED_EDGE('',*,*,#645,.F.);+#1896 = ORIENTED_EDGE('',*,*,#696,.F.);+#1897 = ADVANCED_FACE('',(#1898),#634,.F.);+#1898 = FACE_BOUND('',#1899,.F.);+#1899 = EDGE_LOOP('',(#1900,#1901,#1921,#1939));+#1900 = ORIENTED_EDGE('',*,*,#1878,.F.);+#1901 = ORIENTED_EDGE('',*,*,#1902,.F.);+#1902 = EDGE_CURVE('',#1903,#1859,#1905,.T.);+#1903 = VERTEX_POINT('',#1904);+#1904 = CARTESIAN_POINT('',(-0.4625,0.25,0.18));+#1905 = SURFACE_CURVE('',#1906,(#1909,#1915),.PCURVE_S1.);+#1906 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1907,#1908),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.21875,-0.15625),.PIECEWISE_BEZIER_KNOTS.);+#1907 = CARTESIAN_POINT('',(-0.4625,0.25,0.18));+#1908 = CARTESIAN_POINT('',(-0.4625,0.1875,0.18));+#1909 = PCURVE('',#634,#1910);+#1910 = DEFINITIONAL_REPRESENTATION('',(#1911),#1914);+#1911 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1912,#1913),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.21875,-0.15625),.PIECEWISE_BEZIER_KNOTS.);+#1912 = CARTESIAN_POINT('',(6.25E-02,-1.E-01));+#1913 = CARTESIAN_POINT('',(0.125,-1.E-01));+#1914 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1915 = PCURVE('',#734,#1916);+#1916 = DEFINITIONAL_REPRESENTATION('',(#1917),#1920);+#1917 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1918,#1919),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.21875,-0.15625),.PIECEWISE_BEZIER_KNOTS.);+#1918 = CARTESIAN_POINT('',(3.75E-02,0.5));+#1919 = CARTESIAN_POINT('',(3.75E-02,0.4375));+#1920 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1921 = ORIENTED_EDGE('',*,*,#1922,.F.);+#1922 = EDGE_CURVE('',#596,#1903,#1923,.T.);+#1923 = SURFACE_CURVE('',#1924,(#1927,#1933),.PCURVE_S1.);+#1924 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1925,#1926),.UNSPECIFIED.,.F.,+  .F.,(2,2),(3.5E-02,5.E-02),.PIECEWISE_BEZIER_KNOTS.);+#1925 = CARTESIAN_POINT('',(-0.4625,0.25,0.1665));+#1926 = CARTESIAN_POINT('',(-0.4625,0.25,0.18));+#1927 = PCURVE('',#634,#1928);+#1928 = DEFINITIONAL_REPRESENTATION('',(#1929),#1932);+#1929 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1930,#1931),.UNSPECIFIED.,.F.,+  .F.,(2,2),(3.5E-02,5.E-02),.PIECEWISE_BEZIER_KNOTS.);+#1930 = CARTESIAN_POINT('',(6.25E-02,-0.115));+#1931 = CARTESIAN_POINT('',(6.25E-02,-1.E-01));+#1932 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1933 = PCURVE('',#1739,#1934);+#1934 = DEFINITIONAL_REPRESENTATION('',(#1935),#1938);+#1935 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1936,#1937),.UNSPECIFIED.,.F.,+  .F.,(2,2),(3.5E-02,5.E-02),.PIECEWISE_BEZIER_KNOTS.);+#1936 = CARTESIAN_POINT('',(0.185,3.75E-02));+#1937 = CARTESIAN_POINT('',(0.2,3.75E-02));+#1938 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1939 = ORIENTED_EDGE('',*,*,#620,.F.);+#1940 = ADVANCED_FACE('',(#1941),#759,.F.);+#1941 = FACE_BOUND('',#1942,.F.);+#1942 = EDGE_LOOP('',(#1943,#1963,#1981,#1982));+#1943 = ORIENTED_EDGE('',*,*,#1944,.F.);+#1944 = EDGE_CURVE('',#1945,#776,#1947,.T.);+#1945 = VERTEX_POINT('',#1946);+#1946 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.18));+#1947 = SURFACE_CURVE('',#1948,(#1951,#1957),.PCURVE_S1.);+#1948 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1949,#1950),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);+#1949 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.18));+#1950 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.1665));+#1951 = PCURVE('',#759,#1952);+#1952 = DEFINITIONAL_REPRESENTATION('',(#1953),#1956);+#1953 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1954,#1955),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);+#1954 = CARTESIAN_POINT('',(0.925,-1.E-01));+#1955 = CARTESIAN_POINT('',(0.925,-0.115));+#1956 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1957 = PCURVE('',#789,#1958);+#1958 = DEFINITIONAL_REPRESENTATION('',(#1959),#1962);+#1959 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1960,#1961),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);+#1960 = CARTESIAN_POINT('',(0.,-1.E-01));+#1961 = CARTESIAN_POINT('',(0.,-0.115));+#1962 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1963 = ORIENTED_EDGE('',*,*,#1964,.F.);+#1964 = EDGE_CURVE('',#720,#1945,#1965,.T.);+#1965 = SURFACE_CURVE('',#1966,(#1969,#1975),.PCURVE_S1.);+#1966 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1967,#1968),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.34625,0.44375),.PIECEWISE_BEZIER_KNOTS.);+#1967 = CARTESIAN_POINT('',(-0.365,-0.1875,0.18));+#1968 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.18));+#1969 = PCURVE('',#759,#1970);+#1970 = DEFINITIONAL_REPRESENTATION('',(#1971),#1974);+#1971 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1972,#1973),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.34625,0.44375),.PIECEWISE_BEZIER_KNOTS.);+#1972 = CARTESIAN_POINT('',(0.8275,-1.E-01));+#1973 = CARTESIAN_POINT('',(0.925,-1.E-01));+#1974 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1975 = PCURVE('',#734,#1976);+#1976 = DEFINITIONAL_REPRESENTATION('',(#1977),#1980);+#1977 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1978,#1979),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.34625,0.44375),.PIECEWISE_BEZIER_KNOTS.);+#1978 = CARTESIAN_POINT('',(0.135,6.25E-02));+#1979 = CARTESIAN_POINT('',(3.75E-02,6.25E-02));+#1980 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1981 = ORIENTED_EDGE('',*,*,#745,.T.);+#1982 = ORIENTED_EDGE('',*,*,#802,.F.);+#1983 = ADVANCED_FACE('',(#1984),#734,.T.);+#1984 = FACE_BOUND('',#1985,.T.);+#1985 = EDGE_LOOP('',(#1986,#2006,#2025,#2026,#2044,#2045,#2046,#2047));+#1986 = ORIENTED_EDGE('',*,*,#1987,.F.);+#1987 = EDGE_CURVE('',#1988,#1903,#1990,.T.);+#1988 = VERTEX_POINT('',#1989);+#1989 = CARTESIAN_POINT('',(-0.485,0.25,0.18));+#1990 = SURFACE_CURVE('',#1991,(#1994,#2000),.PCURVE_S1.);+#1991 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1992,#1993),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.5E-02,3.75E-02),.PIECEWISE_BEZIER_KNOTS.);+#1992 = CARTESIAN_POINT('',(-0.485,0.25,0.18));+#1993 = CARTESIAN_POINT('',(-0.4625,0.25,0.18));+#1994 = PCURVE('',#734,#1995);+#1995 = DEFINITIONAL_REPRESENTATION('',(#1996),#1999);+#1996 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1997,#1998),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.5E-02,3.75E-02),.PIECEWISE_BEZIER_KNOTS.);+#1997 = CARTESIAN_POINT('',(1.5E-02,0.5));+#1998 = CARTESIAN_POINT('',(3.75E-02,0.5));+#1999 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2000 = PCURVE('',#1739,#2001);+#2001 = DEFINITIONAL_REPRESENTATION('',(#2002),#2005);+#2002 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2003,#2004),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.5E-02,3.75E-02),.PIECEWISE_BEZIER_KNOTS.);+#2003 = CARTESIAN_POINT('',(0.2,1.5E-02));+#2004 = CARTESIAN_POINT('',(0.2,3.75E-02));+#2005 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2006 = ORIENTED_EDGE('',*,*,#2007,.F.);+#2007 = EDGE_CURVE('',#906,#1988,#2008,.T.);+#2008 = SURFACE_CURVE('',#2009,(#2012,#2018),.PCURVE_S1.);+#2009 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2010,#2011),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2010 = CARTESIAN_POINT('',(-0.485,-0.25,0.18));+#2011 = CARTESIAN_POINT('',(-0.485,0.25,0.18));+#2012 = PCURVE('',#734,#2013);+#2013 = DEFINITIONAL_REPRESENTATION('',(#2014),#2017);+#2014 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2015,#2016),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2015 = CARTESIAN_POINT('',(1.5E-02,0.));+#2016 = CARTESIAN_POINT('',(1.5E-02,0.5));+#2017 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2018 = PCURVE('',#921,#2019);+#2019 = DEFINITIONAL_REPRESENTATION('',(#2020),#2024);+#2020 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#2021,#2022,#2023),+  .UNSPECIFIED.,.F.,.F.,(3,3),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2021 = CARTESIAN_POINT('',(1.570796326795,0.));+#2022 = CARTESIAN_POINT('',(1.570796326795,0.25));+#2023 = CARTESIAN_POINT('',(1.570796326795,0.5));+#2024 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2025 = ORIENTED_EDGE('',*,*,#935,.T.);+#2026 = ORIENTED_EDGE('',*,*,#2027,.F.);+#2027 = EDGE_CURVE('',#1945,#936,#2028,.T.);+#2028 = SURFACE_CURVE('',#2029,(#2032,#2038),.PCURVE_S1.);+#2029 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2030,#2031),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-3.125E-02,3.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#2030 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.18));+#2031 = CARTESIAN_POINT('',(-0.4625,-0.25,0.18));+#2032 = PCURVE('',#734,#2033);+#2033 = DEFINITIONAL_REPRESENTATION('',(#2034),#2037);+#2034 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2035,#2036),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-3.125E-02,3.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#2035 = CARTESIAN_POINT('',(3.75E-02,6.25E-02));+#2036 = CARTESIAN_POINT('',(3.75E-02,0.));+#2037 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2038 = PCURVE('',#789,#2039);+#2039 = DEFINITIONAL_REPRESENTATION('',(#2040),#2043);+#2040 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2041,#2042),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-3.125E-02,3.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#2041 = CARTESIAN_POINT('',(0.,-1.E-01));+#2042 = CARTESIAN_POINT('',(6.25E-02,-1.E-01));+#2043 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2044 = ORIENTED_EDGE('',*,*,#1964,.F.);+#2045 = ORIENTED_EDGE('',*,*,#719,.T.);+#2046 = ORIENTED_EDGE('',*,*,#1858,.F.);+#2047 = ORIENTED_EDGE('',*,*,#1902,.F.);+#2048 = ADVANCED_FACE('',(#2049),#789,.F.);+#2049 = FACE_BOUND('',#2050,.F.);+#2050 = EDGE_LOOP('',(#2051,#2052,#2053,#2054));+#2051 = ORIENTED_EDGE('',*,*,#2027,.F.);+#2052 = ORIENTED_EDGE('',*,*,#1944,.T.);+#2053 = ORIENTED_EDGE('',*,*,#775,.F.);+#2054 = ORIENTED_EDGE('',*,*,#955,.T.);+#2055 = ADVANCED_FACE('',(#2056),#839,.F.);+#2056 = FACE_BOUND('',#2057,.F.);+#2057 = EDGE_LOOP('',(#2058,#2080,#2099,#2100,#2120,#2140,#2161,#2181));+#2058 = ORIENTED_EDGE('',*,*,#2059,.F.);+#2059 = EDGE_CURVE('',#2060,#2062,#2064,.T.);+#2060 = VERTEX_POINT('',#2061);+#2061 = CARTESIAN_POINT('',(-0.485,0.25,-1.561251128379E-18));+#2062 = VERTEX_POINT('',#2063);+#2063 = CARTESIAN_POINT('',(-0.4625,0.25,0.));+#2064 = SURFACE_CURVE('',#2065,(#2068,#2074),.PCURVE_S1.);+#2065 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2066,#2067),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.5E-02,3.75E-02),.PIECEWISE_BEZIER_KNOTS.);+#2066 = CARTESIAN_POINT('',(-0.485,0.25,0.));+#2067 = CARTESIAN_POINT('',(-0.4625,0.25,0.));+#2068 = PCURVE('',#839,#2069);+#2069 = DEFINITIONAL_REPRESENTATION('',(#2070),#2073);+#2070 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2071,#2072),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.5E-02,3.75E-02),.PIECEWISE_BEZIER_KNOTS.);+#2071 = CARTESIAN_POINT('',(1.5E-02,0.5));+#2072 = CARTESIAN_POINT('',(3.75E-02,0.5));+#2073 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2074 = PCURVE('',#1739,#2075);+#2075 = DEFINITIONAL_REPRESENTATION('',(#2076),#2079);+#2076 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2077,#2078),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.5E-02,3.75E-02),.PIECEWISE_BEZIER_KNOTS.);+#2077 = CARTESIAN_POINT('',(0.,1.5E-02));+#2078 = CARTESIAN_POINT('',(0.,3.75E-02));+#2079 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2080 = ORIENTED_EDGE('',*,*,#2081,.F.);+#2081 = EDGE_CURVE('',#824,#2060,#2082,.T.);+#2082 = SURFACE_CURVE('',#2083,(#2086,#2092),.PCURVE_S1.);+#2083 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2084,#2085),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2084 = CARTESIAN_POINT('',(-0.485,-0.25,-1.561251128379E-18));+#2085 = CARTESIAN_POINT('',(-0.485,0.25,-1.561251128379E-18));+#2086 = PCURVE('',#839,#2087);+#2087 = DEFINITIONAL_REPRESENTATION('',(#2088),#2091);+#2088 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2089,#2090),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2089 = CARTESIAN_POINT('',(1.5E-02,0.));+#2090 = CARTESIAN_POINT('',(1.5E-02,0.5));+#2091 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2092 = PCURVE('',#866,#2093);+#2093 = DEFINITIONAL_REPRESENTATION('',(#2094),#2098);+#2094 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#2095,#2096,#2097),+  .UNSPECIFIED.,.F.,.F.,(3,3),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2095 = CARTESIAN_POINT('',(4.712388980385,0.));+#2096 = CARTESIAN_POINT('',(4.712388980385,0.25));+#2097 = CARTESIAN_POINT('',(4.712388980385,0.5));+#2098 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2099 = ORIENTED_EDGE('',*,*,#823,.T.);+#2100 = ORIENTED_EDGE('',*,*,#2101,.F.);+#2101 = EDGE_CURVE('',#2102,#826,#2104,.T.);+#2102 = VERTEX_POINT('',#2103);+#2103 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.));+#2104 = SURFACE_CURVE('',#2105,(#2108,#2114),.PCURVE_S1.);+#2105 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2106,#2107),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-3.125E-02,3.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#2106 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.));+#2107 = CARTESIAN_POINT('',(-0.4625,-0.25,0.));+#2108 = PCURVE('',#839,#2109);+#2109 = DEFINITIONAL_REPRESENTATION('',(#2110),#2113);+#2110 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2111,#2112),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-3.125E-02,3.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#2111 = CARTESIAN_POINT('',(3.75E-02,6.25E-02));+#2112 = CARTESIAN_POINT('',(3.75E-02,0.));+#2113 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2114 = PCURVE('',#988,#2115);+#2115 = DEFINITIONAL_REPRESENTATION('',(#2116),#2119);+#2116 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2117,#2118),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-3.125E-02,3.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#2117 = CARTESIAN_POINT('',(0.,-0.3));+#2118 = CARTESIAN_POINT('',(6.25E-02,-0.3));+#2119 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2120 = ORIENTED_EDGE('',*,*,#2121,.F.);+#2121 = EDGE_CURVE('',#2122,#2102,#2124,.T.);+#2122 = VERTEX_POINT('',#2123);+#2123 = CARTESIAN_POINT('',(-0.365,-0.1875,-1.561251128379E-18));+#2124 = SURFACE_CURVE('',#2125,(#2128,#2134),.PCURVE_S1.);+#2125 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2126,#2127),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.34625,0.44375),.PIECEWISE_BEZIER_KNOTS.);+#2126 = CARTESIAN_POINT('',(-0.365,-0.1875,0.));+#2127 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.));+#2128 = PCURVE('',#839,#2129);+#2129 = DEFINITIONAL_REPRESENTATION('',(#2130),#2133);+#2130 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2131,#2132),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.34625,0.44375),.PIECEWISE_BEZIER_KNOTS.);+#2131 = CARTESIAN_POINT('',(0.135,6.25E-02));+#2132 = CARTESIAN_POINT('',(3.75E-02,6.25E-02));+#2133 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2134 = PCURVE('',#1261,#2135);+#2135 = DEFINITIONAL_REPRESENTATION('',(#2136),#2139);+#2136 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2137,#2138),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.34625,0.44375),.PIECEWISE_BEZIER_KNOTS.);+#2137 = CARTESIAN_POINT('',(0.8275,-0.3));+#2138 = CARTESIAN_POINT('',(0.925,-0.3));+#2139 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2140 = ORIENTED_EDGE('',*,*,#2141,.T.);+#2141 = EDGE_CURVE('',#2122,#2142,#2144,.T.);+#2142 = VERTEX_POINT('',#2143);+#2143 = CARTESIAN_POINT('',(-0.365,0.1875,-1.561251128379E-18));+#2144 = SURFACE_CURVE('',#2145,(#2148,#2154),.PCURVE_S1.);+#2145 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2146,#2147),.UNSPECIFIED.,.F.,+  .F.,(2,2),(6.25E-02,0.4375),.PIECEWISE_BEZIER_KNOTS.);+#2146 = CARTESIAN_POINT('',(-0.365,-0.1875,-1.561251128379E-18));+#2147 = CARTESIAN_POINT('',(-0.365,0.1875,-1.561251128379E-18));+#2148 = PCURVE('',#839,#2149);+#2149 = DEFINITIONAL_REPRESENTATION('',(#2150),#2153);+#2150 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2151,#2152),.UNSPECIFIED.,.F.,+  .F.,(2,2),(6.25E-02,0.4375),.PIECEWISE_BEZIER_KNOTS.);+#2151 = CARTESIAN_POINT('',(0.135,6.25E-02));+#2152 = CARTESIAN_POINT('',(0.135,0.4375));+#2153 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2154 = PCURVE('',#1235,#2155);+#2155 = DEFINITIONAL_REPRESENTATION('',(#2156),#2160);+#2156 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#2157,#2158,#2159),+  .UNSPECIFIED.,.F.,.F.,(3,3),(6.25E-02,0.4375),+  .PIECEWISE_BEZIER_KNOTS.);+#2157 = CARTESIAN_POINT('',(1.570796326795,6.25E-02));+#2158 = CARTESIAN_POINT('',(1.570796326795,0.25));+#2159 = CARTESIAN_POINT('',(1.570796326795,0.4375));+#2160 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2161 = ORIENTED_EDGE('',*,*,#2162,.F.);+#2162 = EDGE_CURVE('',#2163,#2142,#2165,.T.);+#2163 = VERTEX_POINT('',#2164);+#2164 = CARTESIAN_POINT('',(-0.4625,0.1875,0.));+#2165 = SURFACE_CURVE('',#2166,(#2169,#2175),.PCURVE_S1.);+#2166 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2167,#2168),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.875E-02,0.11625),.PIECEWISE_BEZIER_KNOTS.);+#2167 = CARTESIAN_POINT('',(-0.4625,0.1875,0.));+#2168 = CARTESIAN_POINT('',(-0.365,0.1875,0.));+#2169 = PCURVE('',#839,#2170);+#2170 = DEFINITIONAL_REPRESENTATION('',(#2171),#2174);+#2171 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2172,#2173),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.875E-02,0.11625),.PIECEWISE_BEZIER_KNOTS.);+#2172 = CARTESIAN_POINT('',(3.75E-02,0.4375));+#2173 = CARTESIAN_POINT('',(0.135,0.4375));+#2174 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2175 = PCURVE('',#1210,#2176);+#2176 = DEFINITIONAL_REPRESENTATION('',(#2177),#2180);+#2177 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2178,#2179),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.875E-02,0.11625),.PIECEWISE_BEZIER_KNOTS.);+#2178 = CARTESIAN_POINT('',(0.,-0.3));+#2179 = CARTESIAN_POINT('',(9.75E-02,-0.3));+#2180 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2181 = ORIENTED_EDGE('',*,*,#2182,.F.);+#2182 = EDGE_CURVE('',#2062,#2163,#2183,.T.);+#2183 = SURFACE_CURVE('',#2184,(#2187,#2193),.PCURVE_S1.);+#2184 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2185,#2186),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.21875,-0.15625),.PIECEWISE_BEZIER_KNOTS.);+#2185 = CARTESIAN_POINT('',(-0.4625,0.25,0.));+#2186 = CARTESIAN_POINT('',(-0.4625,0.1875,0.));+#2187 = PCURVE('',#839,#2188);+#2188 = DEFINITIONAL_REPRESENTATION('',(#2189),#2192);+#2189 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2190,#2191),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.21875,-0.15625),.PIECEWISE_BEZIER_KNOTS.);+#2190 = CARTESIAN_POINT('',(3.75E-02,0.5));+#2191 = CARTESIAN_POINT('',(3.75E-02,0.4375));+#2192 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2193 = PCURVE('',#1185,#2194);+#2194 = DEFINITIONAL_REPRESENTATION('',(#2195),#2198);+#2195 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2196,#2197),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.21875,-0.15625),.PIECEWISE_BEZIER_KNOTS.);+#2196 = CARTESIAN_POINT('',(6.25E-02,-0.3));+#2197 = CARTESIAN_POINT('',(0.125,-0.3));+#2198 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2199 = ADVANCED_FACE('',(#2200),#866,.T.);+#2200 = FACE_BOUND('',#2201,.T.);+#2201 = EDGE_LOOP('',(#2202,#2223,#2244,#2245));+#2202 = ORIENTED_EDGE('',*,*,#2203,.T.);+#2203 = EDGE_CURVE('',#851,#2204,#2206,.T.);+#2204 = VERTEX_POINT('',#2205);+#2205 = CARTESIAN_POINT('',(-0.5,0.25,1.35E-02));+#2206 = SURFACE_CURVE('',#2207,(#2210,#2217),.PCURVE_S1.);+#2207 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2208,#2209),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2208 = CARTESIAN_POINT('',(-0.5,-0.25,1.35E-02));+#2209 = CARTESIAN_POINT('',(-0.5,0.25,1.35E-02));+#2210 = PCURVE('',#866,#2211);+#2211 = DEFINITIONAL_REPRESENTATION('',(#2212),#2216);+#2212 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#2213,#2214,#2215),+  .UNSPECIFIED.,.F.,.F.,(3,3),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2213 = CARTESIAN_POINT('',(6.28318530718,0.));+#2214 = CARTESIAN_POINT('',(6.28318530718,0.25));+#2215 = CARTESIAN_POINT('',(6.28318530718,0.5));+#2216 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2217 = PCURVE('',#894,#2218);+#2218 = DEFINITIONAL_REPRESENTATION('',(#2219),#2222);+#2219 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2220,#2221),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2220 = CARTESIAN_POINT('',(1.5E-02,0.));+#2221 = CARTESIAN_POINT('',(1.5E-02,-0.5));+#2222 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2223 = ORIENTED_EDGE('',*,*,#2224,.T.);+#2224 = EDGE_CURVE('',#2204,#2060,#2225,.T.);+#2225 = SURFACE_CURVE('',#2226,(#2230,#2237),.PCURVE_S1.);+#2226 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#2227,#2228,#2229),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(1.570796326795,+3.14159265359),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#2227 = CARTESIAN_POINT('',(-0.5,0.25,1.35E-02));+#2228 = CARTESIAN_POINT('',(-0.5,0.25,3.122502256758E-18));+#2229 = CARTESIAN_POINT('',(-0.485,0.25,0.));+#2230 = PCURVE('',#866,#2231);+#2231 = DEFINITIONAL_REPRESENTATION('',(#2232),#2236);+#2232 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#2233,#2234,#2235),+  .UNSPECIFIED.,.F.,.F.,(3,3),(1.570796326795,3.14159265359),+  .PIECEWISE_BEZIER_KNOTS.);+#2233 = CARTESIAN_POINT('',(6.28318530718,0.5));+#2234 = CARTESIAN_POINT('',(5.497787143782,0.5));+#2235 = CARTESIAN_POINT('',(4.712388980385,0.5));+#2236 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2237 = PCURVE('',#1739,#2238);+#2238 = DEFINITIONAL_REPRESENTATION('',(#2239),#2243);+#2239 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#2240,#2241,#2242),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(1.570796326795,+3.14159265359),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#2240 = CARTESIAN_POINT('',(1.5E-02,0.));+#2241 = CARTESIAN_POINT('',(3.469446951954E-18,0.));+#2242 = CARTESIAN_POINT('',(0.,1.5E-02));+#2243 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2244 = ORIENTED_EDGE('',*,*,#2081,.F.);+#2245 = ORIENTED_EDGE('',*,*,#850,.F.);+#2246 = ADVANCED_FACE('',(#2247),#988,.F.);+#2247 = FACE_BOUND('',#2248,.F.);+#2248 = EDGE_LOOP('',(#2249,#2250,#2268,#2269));+#2249 = ORIENTED_EDGE('',*,*,#1002,.T.);+#2250 = ORIENTED_EDGE('',*,*,#2251,.T.);+#2251 = EDGE_CURVE('',#1003,#2102,#2252,.T.);+#2252 = SURFACE_CURVE('',#2253,(#2256,#2262),.PCURVE_S1.);+#2253 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2254,#2255),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.285,0.3),.PIECEWISE_BEZIER_KNOTS.);+#2254 = CARTESIAN_POINT('',(-0.4625,-0.1875,1.35E-02));+#2255 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.));+#2256 = PCURVE('',#988,#2257);+#2257 = DEFINITIONAL_REPRESENTATION('',(#2258),#2261);+#2258 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2259,#2260),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.285,0.3),.PIECEWISE_BEZIER_KNOTS.);+#2259 = CARTESIAN_POINT('',(0.,-0.285));+#2260 = CARTESIAN_POINT('',(0.,-0.3));+#2261 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2262 = PCURVE('',#1261,#2263);+#2263 = DEFINITIONAL_REPRESENTATION('',(#2264),#2267);+#2264 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2265,#2266),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.285,0.3),.PIECEWISE_BEZIER_KNOTS.);+#2265 = CARTESIAN_POINT('',(0.925,-0.285));+#2266 = CARTESIAN_POINT('',(0.925,-0.3));+#2267 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2268 = ORIENTED_EDGE('',*,*,#2101,.T.);+#2269 = ORIENTED_EDGE('',*,*,#976,.T.);+#2270 = ADVANCED_FACE('',(#2271),#894,.F.);+#2271 = FACE_BOUND('',#2272,.F.);+#2272 = EDGE_LOOP('',(#2273,#2274,#2275,#2295));+#2273 = ORIENTED_EDGE('',*,*,#880,.F.);+#2274 = ORIENTED_EDGE('',*,*,#2203,.T.);+#2275 = ORIENTED_EDGE('',*,*,#2276,.T.);+#2276 = EDGE_CURVE('',#2204,#2277,#2279,.T.);+#2277 = VERTEX_POINT('',#2278);+#2278 = CARTESIAN_POINT('',(-0.5,0.25,0.1665));+#2279 = SURFACE_CURVE('',#2280,(#2283,#2289),.PCURVE_S1.);+#2280 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2281,#2282),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.5E-02,0.185),.PIECEWISE_BEZIER_KNOTS.);+#2281 = CARTESIAN_POINT('',(-0.5,0.25,1.35E-02));+#2282 = CARTESIAN_POINT('',(-0.5,0.25,0.1665));+#2283 = PCURVE('',#894,#2284);+#2284 = DEFINITIONAL_REPRESENTATION('',(#2285),#2288);+#2285 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2286,#2287),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.5E-02,0.185),.PIECEWISE_BEZIER_KNOTS.);+#2286 = CARTESIAN_POINT('',(1.5E-02,-0.5));+#2287 = CARTESIAN_POINT('',(0.185,-0.5));+#2288 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2289 = PCURVE('',#1739,#2290);+#2290 = DEFINITIONAL_REPRESENTATION('',(#2291),#2294);+#2291 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2292,#2293),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.5E-02,0.185),.PIECEWISE_BEZIER_KNOTS.);+#2292 = CARTESIAN_POINT('',(1.5E-02,0.));+#2293 = CARTESIAN_POINT('',(0.185,0.));+#2294 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2295 = ORIENTED_EDGE('',*,*,#2296,.F.);+#2296 = EDGE_CURVE('',#881,#2277,#2297,.T.);+#2297 = SURFACE_CURVE('',#2298,(#2301,#2307),.PCURVE_S1.);+#2298 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2299,#2300),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2299 = CARTESIAN_POINT('',(-0.5,-0.25,0.1665));+#2300 = CARTESIAN_POINT('',(-0.5,0.25,0.1665));+#2301 = PCURVE('',#894,#2302);+#2302 = DEFINITIONAL_REPRESENTATION('',(#2303),#2306);+#2303 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2304,#2305),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2304 = CARTESIAN_POINT('',(0.185,0.));+#2305 = CARTESIAN_POINT('',(0.185,-0.5));+#2306 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2307 = PCURVE('',#921,#2308);+#2308 = DEFINITIONAL_REPRESENTATION('',(#2309),#2313);+#2309 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#2310,#2311,#2312),+  .UNSPECIFIED.,.F.,.F.,(3,3),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2310 = CARTESIAN_POINT('',(0.,0.));+#2311 = CARTESIAN_POINT('',(0.,0.25));+#2312 = CARTESIAN_POINT('',(0.,0.5));+#2313 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2314 = ADVANCED_FACE('',(#2315),#921,.T.);+#2315 = FACE_BOUND('',#2316,.T.);+#2316 = EDGE_LOOP('',(#2317,#2318,#2319,#2340));+#2317 = ORIENTED_EDGE('',*,*,#905,.T.);+#2318 = ORIENTED_EDGE('',*,*,#2007,.T.);+#2319 = ORIENTED_EDGE('',*,*,#2320,.F.);+#2320 = EDGE_CURVE('',#2277,#1988,#2321,.T.);+#2321 = SURFACE_CURVE('',#2322,(#2326,#2333),.PCURVE_S1.);+#2322 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#2323,#2324,#2325),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(4.712388980385,+6.28318530718),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#2323 = CARTESIAN_POINT('',(-0.5,0.25,0.1665));+#2324 = CARTESIAN_POINT('',(-0.5,0.25,0.18));+#2325 = CARTESIAN_POINT('',(-0.485,0.25,0.18));+#2326 = PCURVE('',#921,#2327);+#2327 = DEFINITIONAL_REPRESENTATION('',(#2328),#2332);+#2328 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#2329,#2330,#2331),+  .UNSPECIFIED.,.F.,.F.,(3,3),(4.712388980385,6.28318530718),+  .PIECEWISE_BEZIER_KNOTS.);+#2329 = CARTESIAN_POINT('',(0.,0.5));+#2330 = CARTESIAN_POINT('',(0.785398163397,0.5));+#2331 = CARTESIAN_POINT('',(1.570796326795,0.5));+#2332 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2333 = PCURVE('',#1739,#2334);+#2334 = DEFINITIONAL_REPRESENTATION('',(#2335),#2339);+#2335 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#2336,#2337,#2338),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(4.712388980385,+6.28318530718),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#2336 = CARTESIAN_POINT('',(0.185,0.));+#2337 = CARTESIAN_POINT('',(0.2,0.));+#2338 = CARTESIAN_POINT('',(0.2,1.5E-02));+#2339 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2340 = ORIENTED_EDGE('',*,*,#2296,.F.);+#2341 = ADVANCED_FACE('',(#2342),#1261,.F.);+#2342 = FACE_BOUND('',#2343,.F.);+#2343 = EDGE_LOOP('',(#2344,#2345,#2346,#2367));+#2344 = ORIENTED_EDGE('',*,*,#2251,.F.);+#2345 = ORIENTED_EDGE('',*,*,#1249,.T.);+#2346 = ORIENTED_EDGE('',*,*,#2347,.T.);+#2347 = EDGE_CURVE('',#1222,#2122,#2348,.T.);+#2348 = SURFACE_CURVE('',#2349,(#2353,#2360),.PCURVE_S1.);+#2349 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#2350,#2351,#2352),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(0.,+1.570796326795),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#2350 = CARTESIAN_POINT('',(-0.35,-0.1875,1.35E-02));+#2351 = CARTESIAN_POINT('',(-0.35,-0.1875,3.122502256758E-18));+#2352 = CARTESIAN_POINT('',(-0.365,-0.1875,0.));+#2353 = PCURVE('',#1261,#2354);+#2354 = DEFINITIONAL_REPRESENTATION('',(#2355),#2359);+#2355 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#2356,#2357,#2358),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(0.,+1.570796326795),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#2356 = CARTESIAN_POINT('',(0.8125,-0.285));+#2357 = CARTESIAN_POINT('',(0.8125,-0.3));+#2358 = CARTESIAN_POINT('',(0.8275,-0.3));+#2359 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2360 = PCURVE('',#1235,#2361);+#2361 = DEFINITIONAL_REPRESENTATION('',(#2362),#2366);+#2362 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#2363,#2364,#2365),+  .UNSPECIFIED.,.F.,.F.,(3,3),(0.,1.570796326795),+  .PIECEWISE_BEZIER_KNOTS.);+#2363 = CARTESIAN_POINT('',(0.,6.25E-02));+#2364 = CARTESIAN_POINT('',(0.785398163397,6.25E-02));+#2365 = CARTESIAN_POINT('',(1.570796326795,6.25E-02));+#2366 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2367 = ORIENTED_EDGE('',*,*,#2121,.T.);+#2368 = ADVANCED_FACE('',(#2369),#1235,.T.);+#2369 = FACE_BOUND('',#2370,.T.);+#2370 = EDGE_LOOP('',(#2371,#2372,#2373,#2374));+#2371 = ORIENTED_EDGE('',*,*,#1221,.F.);+#2372 = ORIENTED_EDGE('',*,*,#2347,.T.);+#2373 = ORIENTED_EDGE('',*,*,#2141,.T.);+#2374 = ORIENTED_EDGE('',*,*,#2375,.F.);+#2375 = EDGE_CURVE('',#1197,#2142,#2376,.T.);+#2376 = SURFACE_CURVE('',#2377,(#2381,#2388),.PCURVE_S1.);+#2377 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#2378,#2379,#2380),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(0.,+1.570796326795),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#2378 = CARTESIAN_POINT('',(-0.35,0.1875,1.35E-02));+#2379 = CARTESIAN_POINT('',(-0.35,0.1875,3.122502256758E-18));+#2380 = CARTESIAN_POINT('',(-0.365,0.1875,0.));+#2381 = PCURVE('',#1235,#2382);+#2382 = DEFINITIONAL_REPRESENTATION('',(#2383),#2387);+#2383 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#2384,#2385,#2386),+  .UNSPECIFIED.,.F.,.F.,(3,3),(0.,1.570796326795),+  .PIECEWISE_BEZIER_KNOTS.);+#2384 = CARTESIAN_POINT('',(0.,0.4375));+#2385 = CARTESIAN_POINT('',(0.785398163397,0.4375));+#2386 = CARTESIAN_POINT('',(1.570796326795,0.4375));+#2387 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2388 = PCURVE('',#1210,#2389);+#2389 = DEFINITIONAL_REPRESENTATION('',(#2390),#2394);+#2390 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#2391,#2392,#2393),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(0.,+1.570796326795),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#2391 = CARTESIAN_POINT('',(0.1125,-0.285));+#2392 = CARTESIAN_POINT('',(0.1125,-0.3));+#2393 = CARTESIAN_POINT('',(9.75E-02,-0.3));+#2394 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2395 = ADVANCED_FACE('',(#2396),#1210,.F.);+#2396 = FACE_BOUND('',#2397,.F.);+#2397 = EDGE_LOOP('',(#2398,#2399,#2417,#2418));+#2398 = ORIENTED_EDGE('',*,*,#1196,.T.);+#2399 = ORIENTED_EDGE('',*,*,#2400,.T.);+#2400 = EDGE_CURVE('',#1172,#2163,#2401,.T.);+#2401 = SURFACE_CURVE('',#2402,(#2405,#2411),.PCURVE_S1.);+#2402 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2403,#2404),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.285,0.3),.PIECEWISE_BEZIER_KNOTS.);+#2403 = CARTESIAN_POINT('',(-0.4625,0.1875,1.35E-02));+#2404 = CARTESIAN_POINT('',(-0.4625,0.1875,0.));+#2405 = PCURVE('',#1210,#2406);+#2406 = DEFINITIONAL_REPRESENTATION('',(#2407),#2410);+#2407 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2408,#2409),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.285,0.3),.PIECEWISE_BEZIER_KNOTS.);+#2408 = CARTESIAN_POINT('',(0.,-0.285));+#2409 = CARTESIAN_POINT('',(0.,-0.3));+#2410 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2411 = PCURVE('',#1185,#2412);+#2412 = DEFINITIONAL_REPRESENTATION('',(#2413),#2416);+#2413 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2414,#2415),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.285,0.3),.PIECEWISE_BEZIER_KNOTS.);+#2414 = CARTESIAN_POINT('',(0.125,-0.285));+#2415 = CARTESIAN_POINT('',(0.125,-0.3));+#2416 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2417 = ORIENTED_EDGE('',*,*,#2162,.T.);+#2418 = ORIENTED_EDGE('',*,*,#2375,.F.);+#2419 = ADVANCED_FACE('',(#2420),#1185,.F.);+#2420 = FACE_BOUND('',#2421,.F.);+#2421 = EDGE_LOOP('',(#2422,#2423,#2424,#2442));+#2422 = ORIENTED_EDGE('',*,*,#2400,.F.);+#2423 = ORIENTED_EDGE('',*,*,#1171,.T.);+#2424 = ORIENTED_EDGE('',*,*,#2425,.F.);+#2425 = EDGE_CURVE('',#2062,#1152,#2426,.T.);+#2426 = SURFACE_CURVE('',#2427,(#2430,#2436),.PCURVE_S1.);+#2427 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2428,#2429),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.15,-0.135),.PIECEWISE_BEZIER_KNOTS.);+#2428 = CARTESIAN_POINT('',(-0.4625,0.25,0.));+#2429 = CARTESIAN_POINT('',(-0.4625,0.25,1.35E-02));+#2430 = PCURVE('',#1185,#2431);+#2431 = DEFINITIONAL_REPRESENTATION('',(#2432),#2435);+#2432 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2433,#2434),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.15,-0.135),.PIECEWISE_BEZIER_KNOTS.);+#2433 = CARTESIAN_POINT('',(6.25E-02,-0.3));+#2434 = CARTESIAN_POINT('',(6.25E-02,-0.285));+#2435 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2436 = PCURVE('',#1739,#2437);+#2437 = DEFINITIONAL_REPRESENTATION('',(#2438),#2441);+#2438 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2439,#2440),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-0.15,-0.135),.PIECEWISE_BEZIER_KNOTS.);+#2439 = CARTESIAN_POINT('',(0.,3.75E-02));+#2440 = CARTESIAN_POINT('',(1.5E-02,3.75E-02));+#2441 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2442 = ORIENTED_EDGE('',*,*,#2182,.T.);+#2443 = ADVANCED_FACE('',(#2444),#1140,.F.);+#2444 = FACE_BOUND('',#2445,.F.);+#2445 = EDGE_LOOP('',(#2446,#2447,#2467,#2487));+#2446 = ORIENTED_EDGE('',*,*,#1126,.T.);+#2447 = ORIENTED_EDGE('',*,*,#2448,.T.);+#2448 = EDGE_CURVE('',#1102,#2449,#2451,.T.);+#2449 = VERTEX_POINT('',#2450);+#2450 = CARTESIAN_POINT('',(0.4625,0.1875,0.));+#2451 = SURFACE_CURVE('',#2452,(#2455,#2461),.PCURVE_S1.);+#2452 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2453,#2454),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.285,0.3),.PIECEWISE_BEZIER_KNOTS.);+#2453 = CARTESIAN_POINT('',(0.4625,0.1875,1.35E-02));+#2454 = CARTESIAN_POINT('',(0.4625,0.1875,0.));+#2455 = PCURVE('',#1140,#2456);+#2456 = DEFINITIONAL_REPRESENTATION('',(#2457),#2460);+#2457 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2458,#2459),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.285,0.3),.PIECEWISE_BEZIER_KNOTS.);+#2458 = CARTESIAN_POINT('',(0.,-0.285));+#2459 = CARTESIAN_POINT('',(0.,-0.3));+#2460 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2461 = PCURVE('',#1115,#2462);+#2462 = DEFINITIONAL_REPRESENTATION('',(#2463),#2466);+#2463 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2464,#2465),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.285,0.3),.PIECEWISE_BEZIER_KNOTS.);+#2464 = CARTESIAN_POINT('',(0.925,-0.285));+#2465 = CARTESIAN_POINT('',(0.925,-0.3));+#2466 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2467 = ORIENTED_EDGE('',*,*,#2468,.T.);+#2468 = EDGE_CURVE('',#2449,#2469,#2471,.T.);+#2469 = VERTEX_POINT('',#2470);+#2470 = CARTESIAN_POINT('',(0.4625,0.25,0.));+#2471 = SURFACE_CURVE('',#2472,(#2475,#2481),.PCURVE_S1.);+#2472 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2473,#2474),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.21875,0.28125),.PIECEWISE_BEZIER_KNOTS.);+#2473 = CARTESIAN_POINT('',(0.4625,0.1875,0.));+#2474 = CARTESIAN_POINT('',(0.4625,0.25,0.));+#2475 = PCURVE('',#1140,#2476);+#2476 = DEFINITIONAL_REPRESENTATION('',(#2477),#2480);+#2477 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2478,#2479),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.21875,0.28125),.PIECEWISE_BEZIER_KNOTS.);+#2478 = CARTESIAN_POINT('',(0.,-0.3));+#2479 = CARTESIAN_POINT('',(6.25E-02,-0.3));+#2480 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2481 = PCURVE('',#1368,#2482);+#2482 = DEFINITIONAL_REPRESENTATION('',(#2483),#2486);+#2483 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2484,#2485),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.21875,0.28125),.PIECEWISE_BEZIER_KNOTS.);+#2484 = CARTESIAN_POINT('',(0.1125,0.4375));+#2485 = CARTESIAN_POINT('',(0.1125,0.5));+#2486 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2487 = ORIENTED_EDGE('',*,*,#2488,.F.);+#2488 = EDGE_CURVE('',#1127,#2469,#2489,.T.);+#2489 = SURFACE_CURVE('',#2490,(#2493,#2499),.PCURVE_S1.);+#2490 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2491,#2492),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.135,0.15),.PIECEWISE_BEZIER_KNOTS.);+#2491 = CARTESIAN_POINT('',(0.4625,0.25,1.35E-02));+#2492 = CARTESIAN_POINT('',(0.4625,0.25,0.));+#2493 = PCURVE('',#1140,#2494);+#2494 = DEFINITIONAL_REPRESENTATION('',(#2495),#2498);+#2495 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2496,#2497),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.135,0.15),.PIECEWISE_BEZIER_KNOTS.);+#2496 = CARTESIAN_POINT('',(6.25E-02,-0.285));+#2497 = CARTESIAN_POINT('',(6.25E-02,-0.3));+#2498 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2499 = PCURVE('',#1805,#2500);+#2500 = DEFINITIONAL_REPRESENTATION('',(#2501),#2504);+#2501 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2502,#2503),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.135,0.15),.PIECEWISE_BEZIER_KNOTS.);+#2502 = CARTESIAN_POINT('',(1.5E-02,0.1125));+#2503 = CARTESIAN_POINT('',(0.,0.1125));+#2504 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2505 = ADVANCED_FACE('',(#2506),#1115,.F.);+#2506 = FACE_BOUND('',#2507,.F.);+#2507 = EDGE_LOOP('',(#2508,#2509,#2510,#2533));+#2508 = ORIENTED_EDGE('',*,*,#2448,.F.);+#2509 = ORIENTED_EDGE('',*,*,#1101,.T.);+#2510 = ORIENTED_EDGE('',*,*,#2511,.F.);+#2511 = EDGE_CURVE('',#2512,#1074,#2514,.T.);+#2512 = VERTEX_POINT('',#2513);+#2513 = CARTESIAN_POINT('',(0.365,0.1875,-1.561251128379E-18));+#2514 = SURFACE_CURVE('',#2515,(#2519,#2526),.PCURVE_S1.);+#2515 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#2516,#2517,#2518),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(4.712388980385,+6.28318530718),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#2516 = CARTESIAN_POINT('',(0.365,0.1875,0.));+#2517 = CARTESIAN_POINT('',(0.35,0.1875,-3.122502256758E-18));+#2518 = CARTESIAN_POINT('',(0.35,0.1875,1.35E-02));+#2519 = PCURVE('',#1115,#2520);+#2520 = DEFINITIONAL_REPRESENTATION('',(#2521),#2525);+#2521 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#2522,#2523,#2524),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(4.712388980385,+6.28318530718),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#2522 = CARTESIAN_POINT('',(0.8275,-0.3));+#2523 = CARTESIAN_POINT('',(0.8125,-0.3));+#2524 = CARTESIAN_POINT('',(0.8125,-0.285));+#2525 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2526 = PCURVE('',#1087,#2527);+#2527 = DEFINITIONAL_REPRESENTATION('',(#2528),#2532);+#2528 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#2529,#2530,#2531),+  .UNSPECIFIED.,.F.,.F.,(3,3),(4.712388980385,6.28318530718),+  .PIECEWISE_BEZIER_KNOTS.);+#2529 = CARTESIAN_POINT('',(4.712388980385,0.4375));+#2530 = CARTESIAN_POINT('',(5.497787143782,0.4375));+#2531 = CARTESIAN_POINT('',(6.28318530718,0.4375));+#2532 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2533 = ORIENTED_EDGE('',*,*,#2534,.T.);+#2534 = EDGE_CURVE('',#2512,#2449,#2535,.T.);+#2535 = SURFACE_CURVE('',#2536,(#2539,#2545),.PCURVE_S1.);+#2536 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2537,#2538),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.42125,0.51875),.PIECEWISE_BEZIER_KNOTS.);+#2537 = CARTESIAN_POINT('',(0.365,0.1875,0.));+#2538 = CARTESIAN_POINT('',(0.4625,0.1875,0.));+#2539 = PCURVE('',#1115,#2540);+#2540 = DEFINITIONAL_REPRESENTATION('',(#2541),#2544);+#2541 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2542,#2543),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.42125,0.51875),.PIECEWISE_BEZIER_KNOTS.);+#2542 = CARTESIAN_POINT('',(0.8275,-0.3));+#2543 = CARTESIAN_POINT('',(0.925,-0.3));+#2544 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2545 = PCURVE('',#1368,#2546);+#2546 = DEFINITIONAL_REPRESENTATION('',(#2547),#2550);+#2547 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2548,#2549),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.42125,0.51875),.PIECEWISE_BEZIER_KNOTS.);+#2548 = CARTESIAN_POINT('',(1.5E-02,0.4375));+#2549 = CARTESIAN_POINT('',(0.1125,0.4375));+#2550 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2551 = ADVANCED_FACE('',(#2552),#1087,.T.);+#2552 = FACE_BOUND('',#2553,.T.);+#2553 = EDGE_LOOP('',(#2554,#2555,#2576,#2597));+#2554 = ORIENTED_EDGE('',*,*,#2511,.F.);+#2555 = ORIENTED_EDGE('',*,*,#2556,.F.);+#2556 = EDGE_CURVE('',#2557,#2512,#2559,.T.);+#2557 = VERTEX_POINT('',#2558);+#2558 = CARTESIAN_POINT('',(0.365,-0.1875,-1.561251128379E-18));+#2559 = SURFACE_CURVE('',#2560,(#2563,#2570),.PCURVE_S1.);+#2560 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2561,#2562),.UNSPECIFIED.,.F.,+  .F.,(2,2),(6.25E-02,0.4375),.PIECEWISE_BEZIER_KNOTS.);+#2561 = CARTESIAN_POINT('',(0.365,-0.1875,-1.561251128379E-18));+#2562 = CARTESIAN_POINT('',(0.365,0.1875,-1.561251128379E-18));+#2563 = PCURVE('',#1087,#2564);+#2564 = DEFINITIONAL_REPRESENTATION('',(#2565),#2569);+#2565 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#2566,#2567,#2568),+  .UNSPECIFIED.,.F.,.F.,(3,3),(6.25E-02,0.4375),+  .PIECEWISE_BEZIER_KNOTS.);+#2566 = CARTESIAN_POINT('',(4.712388980385,6.25E-02));+#2567 = CARTESIAN_POINT('',(4.712388980385,0.25));+#2568 = CARTESIAN_POINT('',(4.712388980385,0.4375));+#2569 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2570 = PCURVE('',#1368,#2571);+#2571 = DEFINITIONAL_REPRESENTATION('',(#2572),#2575);+#2572 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2573,#2574),.UNSPECIFIED.,.F.,+  .F.,(2,2),(6.25E-02,0.4375),.PIECEWISE_BEZIER_KNOTS.);+#2573 = CARTESIAN_POINT('',(1.5E-02,6.25E-02));+#2574 = CARTESIAN_POINT('',(1.5E-02,0.4375));+#2575 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2576 = ORIENTED_EDGE('',*,*,#2577,.T.);+#2577 = EDGE_CURVE('',#2557,#1049,#2578,.T.);+#2578 = SURFACE_CURVE('',#2579,(#2583,#2590),.PCURVE_S1.);+#2579 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#2580,#2581,#2582),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(4.712388980385,+6.28318530718),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#2580 = CARTESIAN_POINT('',(0.365,-0.1875,0.));+#2581 = CARTESIAN_POINT('',(0.35,-0.1875,-3.122502256758E-18));+#2582 = CARTESIAN_POINT('',(0.35,-0.1875,1.35E-02));+#2583 = PCURVE('',#1087,#2584);+#2584 = DEFINITIONAL_REPRESENTATION('',(#2585),#2589);+#2585 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#2586,#2587,#2588),+  .UNSPECIFIED.,.F.,.F.,(3,3),(4.712388980385,6.28318530718),+  .PIECEWISE_BEZIER_KNOTS.);+#2586 = CARTESIAN_POINT('',(4.712388980385,6.25E-02));+#2587 = CARTESIAN_POINT('',(5.497787143782,6.25E-02));+#2588 = CARTESIAN_POINT('',(6.28318530718,6.25E-02));+#2589 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2590 = PCURVE('',#1062,#2591);+#2591 = DEFINITIONAL_REPRESENTATION('',(#2592),#2596);+#2592 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#2593,#2594,#2595),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(4.712388980385,+6.28318530718),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#2593 = CARTESIAN_POINT('',(9.75E-02,-0.3));+#2594 = CARTESIAN_POINT('',(0.1125,-0.3));+#2595 = CARTESIAN_POINT('',(0.1125,-0.285));+#2596 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2597 = ORIENTED_EDGE('',*,*,#1073,.T.);+#2598 = ADVANCED_FACE('',(#2599),#1062,.F.);+#2599 = FACE_BOUND('',#2600,.F.);+#2600 = EDGE_LOOP('',(#2601,#2602,#2622,#2640));+#2601 = ORIENTED_EDGE('',*,*,#1048,.T.);+#2602 = ORIENTED_EDGE('',*,*,#2603,.T.);+#2603 = EDGE_CURVE('',#1024,#2604,#2606,.T.);+#2604 = VERTEX_POINT('',#2605);+#2605 = CARTESIAN_POINT('',(0.4625,-0.1875,0.));+#2606 = SURFACE_CURVE('',#2607,(#2610,#2616),.PCURVE_S1.);+#2607 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2608,#2609),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.285,0.3),.PIECEWISE_BEZIER_KNOTS.);+#2608 = CARTESIAN_POINT('',(0.4625,-0.1875,1.35E-02));+#2609 = CARTESIAN_POINT('',(0.4625,-0.1875,0.));+#2610 = PCURVE('',#1062,#2611);+#2611 = DEFINITIONAL_REPRESENTATION('',(#2612),#2615);+#2612 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2613,#2614),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.285,0.3),.PIECEWISE_BEZIER_KNOTS.);+#2613 = CARTESIAN_POINT('',(0.,-0.285));+#2614 = CARTESIAN_POINT('',(0.,-0.3));+#2615 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2616 = PCURVE('',#1037,#2617);+#2617 = DEFINITIONAL_REPRESENTATION('',(#2618),#2621);+#2618 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2619,#2620),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.285,0.3),.PIECEWISE_BEZIER_KNOTS.);+#2619 = CARTESIAN_POINT('',(0.125,-0.285));+#2620 = CARTESIAN_POINT('',(0.125,-0.3));+#2621 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2622 = ORIENTED_EDGE('',*,*,#2623,.T.);+#2623 = EDGE_CURVE('',#2604,#2557,#2624,.T.);+#2624 = SURFACE_CURVE('',#2625,(#2628,#2634),.PCURVE_S1.);+#2625 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2626,#2627),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-5.625E-02,4.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#2626 = CARTESIAN_POINT('',(0.4625,-0.1875,0.));+#2627 = CARTESIAN_POINT('',(0.365,-0.1875,0.));+#2628 = PCURVE('',#1062,#2629);+#2629 = DEFINITIONAL_REPRESENTATION('',(#2630),#2633);+#2630 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2631,#2632),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-5.625E-02,4.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#2631 = CARTESIAN_POINT('',(0.,-0.3));+#2632 = CARTESIAN_POINT('',(9.75E-02,-0.3));+#2633 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2634 = PCURVE('',#1368,#2635);+#2635 = DEFINITIONAL_REPRESENTATION('',(#2636),#2639);+#2636 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2637,#2638),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-5.625E-02,4.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#2637 = CARTESIAN_POINT('',(0.1125,6.25E-02));+#2638 = CARTESIAN_POINT('',(1.5E-02,6.25E-02));+#2639 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2640 = ORIENTED_EDGE('',*,*,#2577,.T.);+#2641 = ADVANCED_FACE('',(#2642),#1037,.F.);+#2642 = FACE_BOUND('',#2643,.F.);+#2643 = EDGE_LOOP('',(#2644,#2645,#2646,#2647));+#2644 = ORIENTED_EDGE('',*,*,#2603,.F.);+#2645 = ORIENTED_EDGE('',*,*,#1023,.T.);+#2646 = ORIENTED_EDGE('',*,*,#1379,.T.);+#2647 = ORIENTED_EDGE('',*,*,#2648,.T.);+#2648 = EDGE_CURVE('',#1353,#2604,#2649,.T.);+#2649 = SURFACE_CURVE('',#2650,(#2653,#2659),.PCURVE_S1.);+#2650 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2651,#2652),.UNSPECIFIED.,.F.,+  .F.,(2,2),(3.125E-02,9.375E-02),.PIECEWISE_BEZIER_KNOTS.);+#2651 = CARTESIAN_POINT('',(0.4625,-0.25,0.));+#2652 = CARTESIAN_POINT('',(0.4625,-0.1875,0.));+#2653 = PCURVE('',#1037,#2654);+#2654 = DEFINITIONAL_REPRESENTATION('',(#2655),#2658);+#2655 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2656,#2657),.UNSPECIFIED.,.F.,+  .F.,(2,2),(3.125E-02,9.375E-02),.PIECEWISE_BEZIER_KNOTS.);+#2656 = CARTESIAN_POINT('',(6.25E-02,-0.3));+#2657 = CARTESIAN_POINT('',(0.125,-0.3));+#2658 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2659 = PCURVE('',#1368,#2660);+#2660 = DEFINITIONAL_REPRESENTATION('',(#2661),#2664);+#2661 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2662,#2663),.UNSPECIFIED.,.F.,+  .F.,(2,2),(3.125E-02,9.375E-02),.PIECEWISE_BEZIER_KNOTS.);+#2662 = CARTESIAN_POINT('',(0.1125,0.));+#2663 = CARTESIAN_POINT('',(0.1125,6.25E-02));+#2664 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2665 = ADVANCED_FACE('',(#2666),#1290,.T.);+#2666 = FACE_BOUND('',#2667,.T.);+#2667 = EDGE_LOOP('',(#2668,#2688,#2689,#2709));+#2668 = ORIENTED_EDGE('',*,*,#2669,.T.);+#2669 = EDGE_CURVE('',#2670,#1275,#2672,.T.);+#2670 = VERTEX_POINT('',#2671);+#2671 = CARTESIAN_POINT('',(0.173205080757,0.2,6.75E-03));+#2672 = SURFACE_CURVE('',#2673,(#2676,#2682),.PCURVE_S1.);+#2673 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2674,#2675),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,7.5E-03),.PIECEWISE_BEZIER_KNOTS.);+#2674 = CARTESIAN_POINT('',(0.173205080757,0.2,6.75E-03));+#2675 = CARTESIAN_POINT('',(0.173205080757,0.2,1.35E-02));+#2676 = PCURVE('',#1290,#2677);+#2677 = DEFINITIONAL_REPRESENTATION('',(#2678),#2681);+#2678 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2679,#2680),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,7.5E-03),.PIECEWISE_BEZIER_KNOTS.);+#2679 = CARTESIAN_POINT('',(0.,0.));+#2680 = CARTESIAN_POINT('',(0.,-7.5E-03));+#2681 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2682 = PCURVE('',#1338,#2683);+#2683 = DEFINITIONAL_REPRESENTATION('',(#2684),#2687);+#2684 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2685,#2686),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,7.5E-03),.PIECEWISE_BEZIER_KNOTS.);+#2685 = CARTESIAN_POINT('',(0.4,0.));+#2686 = CARTESIAN_POINT('',(0.4,-7.5E-03));+#2687 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2688 = ORIENTED_EDGE('',*,*,#1274,.T.);+#2689 = ORIENTED_EDGE('',*,*,#2690,.F.);+#2690 = EDGE_CURVE('',#2691,#1277,#2693,.T.);+#2691 = VERTEX_POINT('',#2692);+#2692 = CARTESIAN_POINT('',(0.173205080757,-0.2,6.75E-03));+#2693 = SURFACE_CURVE('',#2694,(#2697,#2703),.PCURVE_S1.);+#2694 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2695,#2696),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,7.5E-03),.PIECEWISE_BEZIER_KNOTS.);+#2695 = CARTESIAN_POINT('',(0.173205080757,-0.2,6.75E-03));+#2696 = CARTESIAN_POINT('',(0.173205080757,-0.2,1.35E-02));+#2697 = PCURVE('',#1290,#2698);+#2698 = DEFINITIONAL_REPRESENTATION('',(#2699),#2702);+#2699 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2700,#2701),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,7.5E-03),.PIECEWISE_BEZIER_KNOTS.);+#2700 = CARTESIAN_POINT('',(0.4,0.));+#2701 = CARTESIAN_POINT('',(0.4,-7.5E-03));+#2702 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2703 = PCURVE('',#1315,#2704);+#2704 = DEFINITIONAL_REPRESENTATION('',(#2705),#2708);+#2705 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2706,#2707),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,7.5E-03),.PIECEWISE_BEZIER_KNOTS.);+#2706 = CARTESIAN_POINT('',(0.,0.));+#2707 = CARTESIAN_POINT('',(0.,-7.5E-03));+#2708 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2709 = ORIENTED_EDGE('',*,*,#2710,.F.);+#2710 = EDGE_CURVE('',#2670,#2691,#2711,.T.);+#2711 = SURFACE_CURVE('',#2712,(#2715,#2721),.PCURVE_S1.);+#2712 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2713,#2714),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.4),.PIECEWISE_BEZIER_KNOTS.);+#2713 = CARTESIAN_POINT('',(0.173205080757,0.2,6.75E-03));+#2714 = CARTESIAN_POINT('',(0.173205080757,-0.2,6.75E-03));+#2715 = PCURVE('',#1290,#2716);+#2716 = DEFINITIONAL_REPRESENTATION('',(#2717),#2720);+#2717 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2718,#2719),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.4),.PIECEWISE_BEZIER_KNOTS.);+#2718 = CARTESIAN_POINT('',(0.,0.));+#2719 = CARTESIAN_POINT('',(0.4,0.));+#2720 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2721 = PCURVE('',#2722,#2727);+#2722 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(+    (#2723,#2724)+    ,(#2725,#2726+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(-0.115470053838,+    0.230940107676),(-0.2,0.2),.PIECEWISE_BEZIER_KNOTS.);+#2723 = CARTESIAN_POINT('',(0.173205080757,-0.2,6.75E-03));+#2724 = CARTESIAN_POINT('',(0.173205080757,0.2,6.75E-03));+#2725 = CARTESIAN_POINT('',(-0.173205080757,-0.2,6.75E-03));+#2726 = CARTESIAN_POINT('',(-0.173205080757,0.2,6.75E-03));+#2727 = DEFINITIONAL_REPRESENTATION('',(#2728),#2731);+#2728 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2729,#2730),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.4),.PIECEWISE_BEZIER_KNOTS.);+#2729 = CARTESIAN_POINT('',(-0.115470053838,0.2));+#2730 = CARTESIAN_POINT('',(-0.115470053838,-0.2));+#2731 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2732 = ADVANCED_FACE('',(#2733),#1338,.T.);+#2733 = FACE_BOUND('',#2734,.T.);+#2734 = EDGE_LOOP('',(#2735,#2755,#2756,#2757));+#2735 = ORIENTED_EDGE('',*,*,#2736,.T.);+#2736 = EDGE_CURVE('',#2737,#1302,#2739,.T.);+#2737 = VERTEX_POINT('',#2738);+#2738 = CARTESIAN_POINT('',(-0.173205080757,0.,6.75E-03));+#2739 = SURFACE_CURVE('',#2740,(#2743,#2749),.PCURVE_S1.);+#2740 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2741,#2742),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,7.5E-03),.PIECEWISE_BEZIER_KNOTS.);+#2741 = CARTESIAN_POINT('',(-0.173205080757,0.,6.75E-03));+#2742 = CARTESIAN_POINT('',(-0.173205080757,0.,1.35E-02));+#2743 = PCURVE('',#1338,#2744);+#2744 = DEFINITIONAL_REPRESENTATION('',(#2745),#2748);+#2745 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2746,#2747),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,7.5E-03),.PIECEWISE_BEZIER_KNOTS.);+#2746 = CARTESIAN_POINT('',(0.,0.));+#2747 = CARTESIAN_POINT('',(0.,-7.5E-03));+#2748 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2749 = PCURVE('',#1315,#2750);+#2750 = DEFINITIONAL_REPRESENTATION('',(#2751),#2754);+#2751 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2752,#2753),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,7.5E-03),.PIECEWISE_BEZIER_KNOTS.);+#2752 = CARTESIAN_POINT('',(0.4,0.));+#2753 = CARTESIAN_POINT('',(0.4,-7.5E-03));+#2754 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2755 = ORIENTED_EDGE('',*,*,#1326,.T.);+#2756 = ORIENTED_EDGE('',*,*,#2669,.F.);+#2757 = ORIENTED_EDGE('',*,*,#2758,.F.);+#2758 = EDGE_CURVE('',#2737,#2670,#2759,.T.);+#2759 = SURFACE_CURVE('',#2760,(#2763,#2769),.PCURVE_S1.);+#2760 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2761,#2762),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.4),.PIECEWISE_BEZIER_KNOTS.);+#2761 = CARTESIAN_POINT('',(-0.173205080757,0.,6.75E-03));+#2762 = CARTESIAN_POINT('',(0.173205080757,0.2,6.75E-03));+#2763 = PCURVE('',#1338,#2764);+#2764 = DEFINITIONAL_REPRESENTATION('',(#2765),#2768);+#2765 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2766,#2767),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.4),.PIECEWISE_BEZIER_KNOTS.);+#2766 = CARTESIAN_POINT('',(0.,0.));+#2767 = CARTESIAN_POINT('',(0.4,0.));+#2768 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2769 = PCURVE('',#2722,#2770);+#2770 = DEFINITIONAL_REPRESENTATION('',(#2771),#2774);+#2771 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2772,#2773),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.4),.PIECEWISE_BEZIER_KNOTS.);+#2772 = CARTESIAN_POINT('',(0.230940107676,0.));+#2773 = CARTESIAN_POINT('',(-0.115470053838,0.2));+#2774 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2775 = ADVANCED_FACE('',(#2776),#1315,.T.);+#2776 = FACE_BOUND('',#2777,.T.);+#2777 = EDGE_LOOP('',(#2778,#2779,#2780,#2781));+#2778 = ORIENTED_EDGE('',*,*,#2690,.T.);+#2779 = ORIENTED_EDGE('',*,*,#1301,.T.);+#2780 = ORIENTED_EDGE('',*,*,#2736,.F.);+#2781 = ORIENTED_EDGE('',*,*,#2782,.F.);+#2782 = EDGE_CURVE('',#2691,#2737,#2783,.T.);+#2783 = SURFACE_CURVE('',#2784,(#2787,#2793),.PCURVE_S1.);+#2784 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2785,#2786),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.4),.PIECEWISE_BEZIER_KNOTS.);+#2785 = CARTESIAN_POINT('',(0.173205080757,-0.2,6.75E-03));+#2786 = CARTESIAN_POINT('',(-0.173205080757,1.732225474171E-13,6.75E-03)+  );+#2787 = PCURVE('',#1315,#2788);+#2788 = DEFINITIONAL_REPRESENTATION('',(#2789),#2792);+#2789 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2790,#2791),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.4),.PIECEWISE_BEZIER_KNOTS.);+#2790 = CARTESIAN_POINT('',(0.,0.));+#2791 = CARTESIAN_POINT('',(0.4,0.));+#2792 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2793 = PCURVE('',#2722,#2794);+#2794 = DEFINITIONAL_REPRESENTATION('',(#2795),#2798);+#2795 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2796,#2797),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.4),.PIECEWISE_BEZIER_KNOTS.);+#2796 = CARTESIAN_POINT('',(-0.115470053838,-0.2));+#2797 = CARTESIAN_POINT('',(0.230940107676,1.732225474171E-13));+#2798 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2799 = ADVANCED_FACE('',(#2800),#1368,.F.);+#2800 = FACE_BOUND('',#2801,.F.);+#2801 = EDGE_LOOP('',(#2802,#2822,#2823,#2824,#2825,#2826,#2827,#2828));+#2802 = ORIENTED_EDGE('',*,*,#2803,.F.);+#2803 = EDGE_CURVE('',#2469,#2804,#2806,.T.);+#2804 = VERTEX_POINT('',#2805);+#2805 = CARTESIAN_POINT('',(0.485,0.25,-1.561251128379E-18));+#2806 = SURFACE_CURVE('',#2807,(#2810,#2816),.PCURVE_S1.);+#2807 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2808,#2809),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.1125,0.135),.PIECEWISE_BEZIER_KNOTS.);+#2808 = CARTESIAN_POINT('',(0.4625,0.25,0.));+#2809 = CARTESIAN_POINT('',(0.485,0.25,0.));+#2810 = PCURVE('',#1368,#2811);+#2811 = DEFINITIONAL_REPRESENTATION('',(#2812),#2815);+#2812 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2813,#2814),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.1125,0.135),.PIECEWISE_BEZIER_KNOTS.);+#2813 = CARTESIAN_POINT('',(0.1125,0.5));+#2814 = CARTESIAN_POINT('',(0.135,0.5));+#2815 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2816 = PCURVE('',#1805,#2817);+#2817 = DEFINITIONAL_REPRESENTATION('',(#2818),#2821);+#2818 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2819,#2820),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.1125,0.135),.PIECEWISE_BEZIER_KNOTS.);+#2819 = CARTESIAN_POINT('',(0.,0.1125));+#2820 = CARTESIAN_POINT('',(0.,0.135));+#2821 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2822 = ORIENTED_EDGE('',*,*,#2468,.F.);+#2823 = ORIENTED_EDGE('',*,*,#2534,.F.);+#2824 = ORIENTED_EDGE('',*,*,#2556,.F.);+#2825 = ORIENTED_EDGE('',*,*,#2623,.F.);+#2826 = ORIENTED_EDGE('',*,*,#2648,.F.);+#2827 = ORIENTED_EDGE('',*,*,#1352,.T.);+#2828 = ORIENTED_EDGE('',*,*,#2829,.T.);+#2829 = EDGE_CURVE('',#1355,#2804,#2830,.T.);+#2830 = SURFACE_CURVE('',#2831,(#2834,#2840),.PCURVE_S1.);+#2831 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2832,#2833),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2832 = CARTESIAN_POINT('',(0.485,-0.25,-1.561251128379E-18));+#2833 = CARTESIAN_POINT('',(0.485,0.25,-1.561251128379E-18));+#2834 = PCURVE('',#1368,#2835);+#2835 = DEFINITIONAL_REPRESENTATION('',(#2836),#2839);+#2836 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2837,#2838),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2837 = CARTESIAN_POINT('',(0.135,0.));+#2838 = CARTESIAN_POINT('',(0.135,0.5));+#2839 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2840 = PCURVE('',#1519,#2841);+#2841 = DEFINITIONAL_REPRESENTATION('',(#2842),#2846);+#2842 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#2843,#2844,#2845),+  .UNSPECIFIED.,.F.,.F.,(3,3),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2843 = CARTESIAN_POINT('',(1.570796326795,0.));+#2844 = CARTESIAN_POINT('',(1.570796326795,0.25));+#2845 = CARTESIAN_POINT('',(1.570796326795,0.5));+#2846 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2847 = ADVANCED_FACE('',(#2848),#1519,.T.);+#2848 = FACE_BOUND('',#2849,.T.);+#2849 = EDGE_LOOP('',(#2850,#2851,#2852,#2875));+#2850 = ORIENTED_EDGE('',*,*,#1505,.T.);+#2851 = ORIENTED_EDGE('',*,*,#2829,.T.);+#2852 = ORIENTED_EDGE('',*,*,#2853,.F.);+#2853 = EDGE_CURVE('',#2854,#2804,#2856,.T.);+#2854 = VERTEX_POINT('',#2855);+#2855 = CARTESIAN_POINT('',(0.5,0.25,1.35E-02));+#2856 = SURFACE_CURVE('',#2857,(#2861,#2868),.PCURVE_S1.);+#2857 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#2858,#2859,#2860),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(1.570796326795,+3.14159265359),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#2858 = CARTESIAN_POINT('',(0.5,0.25,1.35E-02));+#2859 = CARTESIAN_POINT('',(0.5,0.25,3.122502256758E-18));+#2860 = CARTESIAN_POINT('',(0.485,0.25,0.));+#2861 = PCURVE('',#1519,#2862);+#2862 = DEFINITIONAL_REPRESENTATION('',(#2863),#2867);+#2863 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#2864,#2865,#2866),+  .UNSPECIFIED.,.F.,.F.,(3,3),(1.570796326795,3.14159265359),+  .PIECEWISE_BEZIER_KNOTS.);+#2864 = CARTESIAN_POINT('',(0.,0.5));+#2865 = CARTESIAN_POINT('',(0.785398163397,0.5));+#2866 = CARTESIAN_POINT('',(1.570796326795,0.5));+#2867 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2868 = PCURVE('',#1805,#2869);+#2869 = DEFINITIONAL_REPRESENTATION('',(#2870),#2874);+#2870 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#2871,#2872,#2873),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(1.570796326795,+3.14159265359),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#2871 = CARTESIAN_POINT('',(1.5E-02,0.15));+#2872 = CARTESIAN_POINT('',(3.469446951954E-18,0.15));+#2873 = CARTESIAN_POINT('',(0.,0.135));+#2874 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2875 = ORIENTED_EDGE('',*,*,#2876,.F.);+#2876 = EDGE_CURVE('',#1481,#2854,#2877,.T.);+#2877 = SURFACE_CURVE('',#2878,(#2881,#2888),.PCURVE_S1.);+#2878 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2879,#2880),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2879 = CARTESIAN_POINT('',(0.5,-0.25,1.35E-02));+#2880 = CARTESIAN_POINT('',(0.5,0.25,1.35E-02));+#2881 = PCURVE('',#1519,#2882);+#2882 = DEFINITIONAL_REPRESENTATION('',(#2883),#2887);+#2883 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#2884,#2885,#2886),+  .UNSPECIFIED.,.F.,.F.,(3,3),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2884 = CARTESIAN_POINT('',(0.,0.));+#2885 = CARTESIAN_POINT('',(0.,0.25));+#2886 = CARTESIAN_POINT('',(0.,0.5));+#2887 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2888 = PCURVE('',#1494,#2889);+#2889 = DEFINITIONAL_REPRESENTATION('',(#2890),#2893);+#2890 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2891,#2892),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2891 = CARTESIAN_POINT('',(1.5E-02,0.));+#2892 = CARTESIAN_POINT('',(1.5E-02,-0.5));+#2893 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2894 = ADVANCED_FACE('',(#2895),#1494,.T.);+#2895 = FACE_BOUND('',#2896,.T.);+#2896 = EDGE_LOOP('',(#2897,#2898,#2899,#2919));+#2897 = ORIENTED_EDGE('',*,*,#1480,.F.);+#2898 = ORIENTED_EDGE('',*,*,#2876,.T.);+#2899 = ORIENTED_EDGE('',*,*,#2900,.T.);+#2900 = EDGE_CURVE('',#2854,#2901,#2903,.T.);+#2901 = VERTEX_POINT('',#2902);+#2902 = CARTESIAN_POINT('',(0.5,0.25,0.1665));+#2903 = SURFACE_CURVE('',#2904,(#2907,#2913),.PCURVE_S1.);+#2904 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2905,#2906),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.5E-02,0.185),.PIECEWISE_BEZIER_KNOTS.);+#2905 = CARTESIAN_POINT('',(0.5,0.25,1.35E-02));+#2906 = CARTESIAN_POINT('',(0.5,0.25,0.1665));+#2907 = PCURVE('',#1494,#2908);+#2908 = DEFINITIONAL_REPRESENTATION('',(#2909),#2912);+#2909 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2910,#2911),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.5E-02,0.185),.PIECEWISE_BEZIER_KNOTS.);+#2910 = CARTESIAN_POINT('',(1.5E-02,-0.5));+#2911 = CARTESIAN_POINT('',(0.185,-0.5));+#2912 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2913 = PCURVE('',#1805,#2914);+#2914 = DEFINITIONAL_REPRESENTATION('',(#2915),#2918);+#2915 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2916,#2917),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.5E-02,0.185),.PIECEWISE_BEZIER_KNOTS.);+#2916 = CARTESIAN_POINT('',(1.5E-02,0.15));+#2917 = CARTESIAN_POINT('',(0.185,0.15));+#2918 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2919 = ORIENTED_EDGE('',*,*,#2920,.F.);+#2920 = EDGE_CURVE('',#1451,#2901,#2921,.T.);+#2921 = SURFACE_CURVE('',#2922,(#2925,#2931),.PCURVE_S1.);+#2922 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2923,#2924),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2923 = CARTESIAN_POINT('',(0.5,-0.25,0.1665));+#2924 = CARTESIAN_POINT('',(0.5,0.25,0.1665));+#2925 = PCURVE('',#1494,#2926);+#2926 = DEFINITIONAL_REPRESENTATION('',(#2927),#2930);+#2927 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2928,#2929),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2928 = CARTESIAN_POINT('',(0.185,0.));+#2929 = CARTESIAN_POINT('',(0.185,-0.5));+#2930 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2931 = PCURVE('',#1466,#2932);+#2932 = DEFINITIONAL_REPRESENTATION('',(#2933),#2937);+#2933 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#2934,#2935,#2936),+  .UNSPECIFIED.,.F.,.F.,(3,3),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2934 = CARTESIAN_POINT('',(6.28318530718,0.));+#2935 = CARTESIAN_POINT('',(6.28318530718,0.25));+#2936 = CARTESIAN_POINT('',(6.28318530718,0.5));+#2937 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2938 = ADVANCED_FACE('',(#2939),#1466,.T.);+#2939 = FACE_BOUND('',#2940,.T.);+#2940 = EDGE_LOOP('',(#2941,#2942,#2965,#2984));+#2941 = ORIENTED_EDGE('',*,*,#2920,.T.);+#2942 = ORIENTED_EDGE('',*,*,#2943,.T.);+#2943 = EDGE_CURVE('',#2901,#2944,#2946,.T.);+#2944 = VERTEX_POINT('',#2945);+#2945 = CARTESIAN_POINT('',(0.485,0.25,0.18));+#2946 = SURFACE_CURVE('',#2947,(#2951,#2958),.PCURVE_S1.);+#2947 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#2948,#2949,#2950),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(4.712388980385,+6.28318530718),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#2948 = CARTESIAN_POINT('',(0.5,0.25,0.1665));+#2949 = CARTESIAN_POINT('',(0.5,0.25,0.18));+#2950 = CARTESIAN_POINT('',(0.485,0.25,0.18));+#2951 = PCURVE('',#1466,#2952);+#2952 = DEFINITIONAL_REPRESENTATION('',(#2953),#2957);+#2953 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#2954,#2955,#2956),+  .UNSPECIFIED.,.F.,.F.,(3,3),(4.712388980385,6.28318530718),+  .PIECEWISE_BEZIER_KNOTS.);+#2954 = CARTESIAN_POINT('',(6.28318530718,0.5));+#2955 = CARTESIAN_POINT('',(5.497787143782,0.5));+#2956 = CARTESIAN_POINT('',(4.712388980385,0.5));+#2957 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2958 = PCURVE('',#1805,#2959);+#2959 = DEFINITIONAL_REPRESENTATION('',(#2960),#2964);+#2960 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#2961,#2962,#2963),+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((3,3),(4.712388980385,+6.28318530718),.PIECEWISE_BEZIER_KNOTS.) CURVE() +GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1.,+0.707106781187,1.)) REPRESENTATION_ITEM('') );+#2961 = CARTESIAN_POINT('',(0.185,0.15));+#2962 = CARTESIAN_POINT('',(0.2,0.15));+#2963 = CARTESIAN_POINT('',(0.2,0.135));+#2964 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2965 = ORIENTED_EDGE('',*,*,#2966,.F.);+#2966 = EDGE_CURVE('',#1426,#2944,#2967,.T.);+#2967 = SURFACE_CURVE('',#2968,(#2971,#2978),.PCURVE_S1.);+#2968 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2969,#2970),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2969 = CARTESIAN_POINT('',(0.485,-0.25,0.18));+#2970 = CARTESIAN_POINT('',(0.485,0.25,0.18));+#2971 = PCURVE('',#1466,#2972);+#2972 = DEFINITIONAL_REPRESENTATION('',(#2973),#2977);+#2973 = B_SPLINE_CURVE_WITH_KNOTS('',2,(#2974,#2975,#2976),+  .UNSPECIFIED.,.F.,.F.,(3,3),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2974 = CARTESIAN_POINT('',(4.712388980385,0.));+#2975 = CARTESIAN_POINT('',(4.712388980385,0.25));+#2976 = CARTESIAN_POINT('',(4.712388980385,0.5));+#2977 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2978 = PCURVE('',#1439,#2979);+#2979 = DEFINITIONAL_REPRESENTATION('',(#2980),#2983);+#2980 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2981,#2982),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.,0.5),.PIECEWISE_BEZIER_KNOTS.);+#2981 = CARTESIAN_POINT('',(0.135,0.));+#2982 = CARTESIAN_POINT('',(0.135,0.5));+#2983 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2984 = ORIENTED_EDGE('',*,*,#1450,.F.);+#2985 = ADVANCED_FACE('',(#2986),#1439,.T.);+#2986 = FACE_BOUND('',#2987,.T.);+#2987 = EDGE_LOOP('',(#2988,#3008,#3028,#3046,#3047,#3067,#3085,#3086));+#2988 = ORIENTED_EDGE('',*,*,#2989,.F.);+#2989 = EDGE_CURVE('',#2990,#2944,#2992,.T.);+#2990 = VERTEX_POINT('',#2991);+#2991 = CARTESIAN_POINT('',(0.4625,0.25,0.18));+#2992 = SURFACE_CURVE('',#2993,(#2996,#3002),.PCURVE_S1.);+#2993 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2994,#2995),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.1125,0.135),.PIECEWISE_BEZIER_KNOTS.);+#2994 = CARTESIAN_POINT('',(0.4625,0.25,0.18));+#2995 = CARTESIAN_POINT('',(0.485,0.25,0.18));+#2996 = PCURVE('',#1439,#2997);+#2997 = DEFINITIONAL_REPRESENTATION('',(#2998),#3001);+#2998 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2999,#3000),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.1125,0.135),.PIECEWISE_BEZIER_KNOTS.);+#2999 = CARTESIAN_POINT('',(0.1125,0.5));+#3000 = CARTESIAN_POINT('',(0.135,0.5));+#3001 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#3002 = PCURVE('',#1805,#3003);+#3003 = DEFINITIONAL_REPRESENTATION('',(#3004),#3007);+#3004 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3005,#3006),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.1125,0.135),.PIECEWISE_BEZIER_KNOTS.);+#3005 = CARTESIAN_POINT('',(0.2,0.1125));+#3006 = CARTESIAN_POINT('',(0.2,0.135));+#3007 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#3008 = ORIENTED_EDGE('',*,*,#3009,.F.);+#3009 = EDGE_CURVE('',#3010,#2990,#3012,.T.);+#3010 = VERTEX_POINT('',#3011);+#3011 = CARTESIAN_POINT('',(0.4625,0.1875,0.18));+#3012 = SURFACE_CURVE('',#3013,(#3016,#3022),.PCURVE_S1.);+#3013 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3014,#3015),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.21875,0.28125),.PIECEWISE_BEZIER_KNOTS.);+#3014 = CARTESIAN_POINT('',(0.4625,0.1875,0.18));+#3015 = CARTESIAN_POINT('',(0.4625,0.25,0.18));+#3016 = PCURVE('',#1439,#3017);+#3017 = DEFINITIONAL_REPRESENTATION('',(#3018),#3021);+#3018 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3019,#3020),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.21875,0.28125),.PIECEWISE_BEZIER_KNOTS.);+#3019 = CARTESIAN_POINT('',(0.1125,0.4375));+#3020 = CARTESIAN_POINT('',(0.1125,0.5));+#3021 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#3022 = PCURVE('',#1642,#3023);+#3023 = DEFINITIONAL_REPRESENTATION('',(#3024),#3027);+#3024 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3025,#3026),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.21875,0.28125),.PIECEWISE_BEZIER_KNOTS.);+#3025 = CARTESIAN_POINT('',(0.,-1.E-01));+#3026 = CARTESIAN_POINT('',(6.25E-02,-1.E-01));+#3027 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#3028 = ORIENTED_EDGE('',*,*,#3029,.F.);+#3029 = EDGE_CURVE('',#1681,#3010,#3030,.T.);+#3030 = SURFACE_CURVE('',#3031,(#3034,#3040),.PCURVE_S1.);+#3031 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3032,#3033),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.42125,0.51875),.PIECEWISE_BEZIER_KNOTS.);+#3032 = CARTESIAN_POINT('',(0.365,0.1875,0.18));+#3033 = CARTESIAN_POINT('',(0.4625,0.1875,0.18));+#3034 = PCURVE('',#1439,#3035);+#3035 = DEFINITIONAL_REPRESENTATION('',(#3036),#3039);+#3036 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3037,#3038),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.42125,0.51875),.PIECEWISE_BEZIER_KNOTS.);+#3037 = CARTESIAN_POINT('',(1.5E-02,0.4375));+#3038 = CARTESIAN_POINT('',(0.1125,0.4375));+#3039 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#3040 = PCURVE('',#1619,#3041);+#3041 = DEFINITIONAL_REPRESENTATION('',(#3042),#3045);+#3042 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3043,#3044),.UNSPECIFIED.,.F.,+  .F.,(2,2),(0.42125,0.51875),.PIECEWISE_BEZIER_KNOTS.);+#3043 = CARTESIAN_POINT('',(0.8275,-1.E-01));+#3044 = CARTESIAN_POINT('',(0.925,-1.E-01));+#3045 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#3046 = ORIENTED_EDGE('',*,*,#1680,.F.);+#3047 = ORIENTED_EDGE('',*,*,#3048,.F.);+#3048 = EDGE_CURVE('',#3049,#1658,#3051,.T.);+#3049 = VERTEX_POINT('',#3050);+#3050 = CARTESIAN_POINT('',(0.4625,-0.1875,0.18));+#3051 = SURFACE_CURVE('',#3052,(#3055,#3061),.PCURVE_S1.);+#3052 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3053,#3054),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-5.625E-02,4.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#3053 = CARTESIAN_POINT('',(0.4625,-0.1875,0.18));+#3054 = CARTESIAN_POINT('',(0.365,-0.1875,0.18));+#3055 = PCURVE('',#1439,#3056);+#3056 = DEFINITIONAL_REPRESENTATION('',(#3057),#3060);+#3057 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3058,#3059),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-5.625E-02,4.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#3058 = CARTESIAN_POINT('',(0.1125,6.25E-02));+#3059 = CARTESIAN_POINT('',(1.5E-02,6.25E-02));+#3060 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#3061 = PCURVE('',#1550,#3062);+#3062 = DEFINITIONAL_REPRESENTATION('',(#3063),#3066);+#3063 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3064,#3065),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-5.625E-02,4.125E-02),.PIECEWISE_BEZIER_KNOTS.);+#3064 = CARTESIAN_POINT('',(0.,-1.E-01));+#3065 = CARTESIAN_POINT('',(9.75E-02,-1.E-01));+#3066 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#3067 = ORIENTED_EDGE('',*,*,#3068,.F.);+#3068 = EDGE_CURVE('',#1401,#3049,#3069,.T.);+#3069 = SURFACE_CURVE('',#3070,(#3073,#3079),.PCURVE_S1.);+#3070 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3071,#3072),.UNSPECIFIED.,.F.,+  .F.,(2,2),(3.125E-02,9.375E-02),.PIECEWISE_BEZIER_KNOTS.);+#3071 = CARTESIAN_POINT('',(0.4625,-0.25,0.18));+#3072 = CARTESIAN_POINT('',(0.4625,-0.1875,0.18));+#3073 = PCURVE('',#1439,#3074);+#3074 = DEFINITIONAL_REPRESENTATION('',(#3075),#3078);+#3075 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3076,#3077),.UNSPECIFIED.,.F.,+  .F.,(2,2),(3.125E-02,9.375E-02),.PIECEWISE_BEZIER_KNOTS.);+#3076 = CARTESIAN_POINT('',(0.1125,0.));+#3077 = CARTESIAN_POINT('',(0.1125,6.25E-02));+#3078 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#3079 = PCURVE('',#1414,#3080);+#3080 = DEFINITIONAL_REPRESENTATION('',(#3081),#3084);+#3081 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3082,#3083),.UNSPECIFIED.,.F.,+  .F.,(2,2),(3.125E-02,9.375E-02),.PIECEWISE_BEZIER_KNOTS.);+#3082 = CARTESIAN_POINT('',(6.25E-02,-1.E-01));+#3083 = CARTESIAN_POINT('',(0.125,-1.E-01));+#3084 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#3085 = ORIENTED_EDGE('',*,*,#1425,.T.);+#3086 = ORIENTED_EDGE('',*,*,#2966,.T.);+#3087 = ADVANCED_FACE('',(#3088),#1414,.F.);+#3088 = FACE_BOUND('',#3089,.F.);+#3089 = EDGE_LOOP('',(#3090,#3108,#3109,#3110));+#3090 = ORIENTED_EDGE('',*,*,#3091,.F.);+#3091 = EDGE_CURVE('',#3049,#1537,#3092,.T.);+#3092 = SURFACE_CURVE('',#3093,(#3096,#3102),.PCURVE_S1.);+#3093 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3094,#3095),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);+#3094 = CARTESIAN_POINT('',(0.4625,-0.1875,0.18));+#3095 = CARTESIAN_POINT('',(0.4625,-0.1875,0.1665));+#3096 = PCURVE('',#1414,#3097);+#3097 = DEFINITIONAL_REPRESENTATION('',(#3098),#3101);+#3098 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3099,#3100),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);+#3099 = CARTESIAN_POINT('',(0.125,-1.E-01));+#3100 = CARTESIAN_POINT('',(0.125,-0.115));+#3101 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#3102 = PCURVE('',#1550,#3103);+#3103 = DEFINITIONAL_REPRESENTATION('',(#3104),#3107);+#3104 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3105,#3106),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);+#3105 = CARTESIAN_POINT('',(0.,-1.E-01));+#3106 = CARTESIAN_POINT('',(0.,-0.115));+#3107 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#3108 = ORIENTED_EDGE('',*,*,#3068,.F.);+#3109 = ORIENTED_EDGE('',*,*,#1400,.T.);+#3110 = ORIENTED_EDGE('',*,*,#1563,.F.);+#3111 = ADVANCED_FACE('',(#3112),#1550,.F.);+#3112 = FACE_BOUND('',#3113,.F.);+#3113 = EDGE_LOOP('',(#3114,#3115,#3116,#3117));+#3114 = ORIENTED_EDGE('',*,*,#3048,.F.);+#3115 = ORIENTED_EDGE('',*,*,#3091,.T.);+#3116 = ORIENTED_EDGE('',*,*,#1536,.F.);+#3117 = ORIENTED_EDGE('',*,*,#1657,.T.);+#3118 = ADVANCED_FACE('',(#3119),#1642,.F.);+#3119 = FACE_BOUND('',#3120,.F.);+#3120 = EDGE_LOOP('',(#3121,#3122,#3140,#3141));+#3121 = ORIENTED_EDGE('',*,*,#3009,.F.);+#3122 = ORIENTED_EDGE('',*,*,#3123,.T.);+#3123 = EDGE_CURVE('',#3010,#1606,#3124,.T.);+#3124 = SURFACE_CURVE('',#3125,(#3128,#3134),.PCURVE_S1.);+#3125 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3126,#3127),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);+#3126 = CARTESIAN_POINT('',(0.4625,0.1875,0.18));+#3127 = CARTESIAN_POINT('',(0.4625,0.1875,0.1665));+#3128 = PCURVE('',#1642,#3129);+#3129 = DEFINITIONAL_REPRESENTATION('',(#3130),#3133);+#3130 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3131,#3132),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);+#3131 = CARTESIAN_POINT('',(0.,-1.E-01));+#3132 = CARTESIAN_POINT('',(0.,-0.115));+#3133 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#3134 = PCURVE('',#1619,#3135);+#3135 = DEFINITIONAL_REPRESENTATION('',(#3136),#3139);+#3136 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3137,#3138),.UNSPECIFIED.,.F.,+  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);+#3137 = CARTESIAN_POINT('',(0.925,-1.E-01));+#3138 = CARTESIAN_POINT('',(0.925,-0.115));+#3139 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#3140 = ORIENTED_EDGE('',*,*,#1630,.F.);+#3141 = ORIENTED_EDGE('',*,*,#3142,.F.);+#3142 = EDGE_CURVE('',#2990,#1585,#3143,.T.);+#3143 = SURFACE_CURVE('',#3144,(#3147,#3153),.PCURVE_S1.);+#3144 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3145,#3146),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-5.E-02,-3.5E-02),.PIECEWISE_BEZIER_KNOTS.);+#3145 = CARTESIAN_POINT('',(0.4625,0.25,0.18));+#3146 = CARTESIAN_POINT('',(0.4625,0.25,0.1665));+#3147 = PCURVE('',#1642,#3148);+#3148 = DEFINITIONAL_REPRESENTATION('',(#3149),#3152);+#3149 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3150,#3151),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-5.E-02,-3.5E-02),.PIECEWISE_BEZIER_KNOTS.);+#3150 = CARTESIAN_POINT('',(6.25E-02,-1.E-01));+#3151 = CARTESIAN_POINT('',(6.25E-02,-0.115));+#3152 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#3153 = PCURVE('',#1805,#3154);+#3154 = DEFINITIONAL_REPRESENTATION('',(#3155),#3158);+#3155 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3156,#3157),.UNSPECIFIED.,.F.,+  .F.,(2,2),(-5.E-02,-3.5E-02),.PIECEWISE_BEZIER_KNOTS.);+#3156 = CARTESIAN_POINT('',(0.2,0.1125));+#3157 = CARTESIAN_POINT('',(0.185,0.1125));+#3158 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#3159 = ADVANCED_FACE('',(#3160),#1619,.F.);+#3160 = FACE_BOUND('',#3161,.F.);+#3161 = EDGE_LOOP('',(#3162,#3163,#3164,#3165));+#3162 = ORIENTED_EDGE('',*,*,#3123,.F.);+#3163 = ORIENTED_EDGE('',*,*,#3029,.F.);+#3164 = ORIENTED_EDGE('',*,*,#1701,.F.);+#3165 = ORIENTED_EDGE('',*,*,#1605,.F.);+#3166 = ADVANCED_FACE('',(#3167),#1739,.T.);+#3167 = FACE_BOUND('',#3168,.T.);+#3168 = EDGE_LOOP('',(#3169,#3170,#3171,#3172,#3173,#3174,#3175,#3176,+    #3177,#3178));+#3169 = ORIENTED_EDGE('',*,*,#2059,.F.);+#3170 = ORIENTED_EDGE('',*,*,#2224,.F.);+#3171 = ORIENTED_EDGE('',*,*,#2276,.T.);+#3172 = ORIENTED_EDGE('',*,*,#2320,.T.);+#3173 = ORIENTED_EDGE('',*,*,#1987,.T.);+#3174 = ORIENTED_EDGE('',*,*,#1922,.F.);+#3175 = ORIENTED_EDGE('',*,*,#1770,.F.);+#3176 = ORIENTED_EDGE('',*,*,#1750,.F.);+#3177 = ORIENTED_EDGE('',*,*,#1725,.T.);+#3178 = ORIENTED_EDGE('',*,*,#2425,.F.);+#3179 = ADVANCED_FACE('',(#3180),#1805,.T.);+#3180 = FACE_BOUND('',#3181,.T.);+#3181 = EDGE_LOOP('',(#3182,#3183,#3184,#3185,#3186,#3187,#3188,#3189,+    #3190,#3191));+#3182 = ORIENTED_EDGE('',*,*,#2803,.F.);+#3183 = ORIENTED_EDGE('',*,*,#2488,.F.);+#3184 = ORIENTED_EDGE('',*,*,#1836,.T.);+#3185 = ORIENTED_EDGE('',*,*,#1816,.T.);+#3186 = ORIENTED_EDGE('',*,*,#1791,.F.);+#3187 = ORIENTED_EDGE('',*,*,#3142,.F.);+#3188 = ORIENTED_EDGE('',*,*,#2989,.T.);+#3189 = ORIENTED_EDGE('',*,*,#2943,.F.);+#3190 = ORIENTED_EDGE('',*,*,#2900,.F.);+#3191 = ORIENTED_EDGE('',*,*,#2853,.T.);+#3192 = ADVANCED_FACE('',(#3193),#2722,.T.);+#3193 = FACE_BOUND('',#3194,.T.);+#3194 = EDGE_LOOP('',(#3195,#3196,#3197));+#3195 = ORIENTED_EDGE('',*,*,#2758,.T.);+#3196 = ORIENTED_EDGE('',*,*,#2710,.T.);+#3197 = ORIENTED_EDGE('',*,*,#2782,.T.);+#3198 = ( GEOMETRIC_REPRESENTATION_CONTEXT(3) +GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#3202)) +GLOBAL_UNIT_ASSIGNED_CONTEXT((#3199,#3200,#3201)) REPRESENTATION_CONTEXT+('Context #1','3D Context with UNIT and UNCERTAINTY') );+#3199 = ( LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.) );+#3200 = ( NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.) );+#3201 = ( NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT() );+#3202 = UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(1.E-07),#3199,+  'distance_accuracy_value','confusion accuracy');+#3203 = PRODUCT_RELATED_PRODUCT_CATEGORY('part',$,(#7));+ENDSEC;+END-ISO-10303-21;
IN-S42ATR.glb
⋯ 1 unchanged line ⋯
IN-S42ATR.insertion.glb
⋯ 1 unchanged line ⋯
IN-S42ATR.step+523−63
@@ -1,8 +1,8 @@ ISO-10303-21; HEADER; FILE_DESCRIPTION(('Open CASCADE Model'),'2;1');-FILE_NAME('Open CASCADE Shape Model','2026-07-20T23:06:05',('Author'),(-    'Open CASCADE'),'Open CASCADE STEP processor 7.9','Open CASCADE 7.9'+FILE_NAME('Open CASCADE Shape Model','2026-09-30T08:16:51',('Author'),(+    'Open CASCADE'),'Open CASCADE STEP processor 8.0','Open CASCADE 8.0'   ,'Unknown'); FILE_SCHEMA(('AUTOMOTIVE_DESIGN { 1 0 10303 214 1 1 1 1 }')); ENDSEC;@@ -905,8 +905,8 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #634 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(     (#635,#636)     ,(#637,#638-  )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(6.25E-02,0.125),(-0.115,-    -1.E-01),.PIECEWISE_BEZIER_KNOTS.);+  )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(6.25E-02,0.125),(-0.115,-0.1+    ),.PIECEWISE_BEZIER_KNOTS.); #635 = CARTESIAN_POINT('',(-0.4625,0.25,0.1665)); #636 = CARTESIAN_POINT('',(-0.4625,0.25,0.18)); #637 = CARTESIAN_POINT('',(-0.4625,0.1875,0.1665));@@ -939,8 +939,8 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #657 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(     (#658,#659)     ,(#660,#661-    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,0.1125),(-0.115,-1.E-01-    ),.PIECEWISE_BEZIER_KNOTS.);+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,0.1125),(-0.115,-0.1),+  .PIECEWISE_BEZIER_KNOTS.); #658 = CARTESIAN_POINT('',(-0.4625,0.1875,0.1665)); #659 = CARTESIAN_POINT('',(-0.4625,0.1875,0.18)); #660 = CARTESIAN_POINT('',(-0.35,0.1875,0.1665));@@ -1018,8 +1018,8 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' 6.28318530718),.PIECEWISE_BEZIER_KNOTS.) CURVE()  GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1., 0.707106781187,1.)) REPRESENTATION_ITEM('') );-#714 = CARTESIAN_POINT('',(9.75E-02,-1.E-01));-#715 = CARTESIAN_POINT('',(0.1125,-1.E-01));+#714 = CARTESIAN_POINT('',(9.75E-02,-0.1));+#715 = CARTESIAN_POINT('',(0.1125,-0.1)); #716 = CARTESIAN_POINT('',(0.1125,-0.115)); #717 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''@@ -1086,8 +1086,8 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #759 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(     (#760,#761)     ,(#762,#763-    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.8125,0.925),(-0.115,-    -1.E-01),.PIECEWISE_BEZIER_KNOTS.);+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.8125,0.925),(-0.115,-0.1+    ),.PIECEWISE_BEZIER_KNOTS.); #760 = CARTESIAN_POINT('',(-0.35,-0.1875,0.1665)); #761 = CARTESIAN_POINT('',(-0.35,-0.1875,0.18)); #762 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.1665));@@ -1098,8 +1098,8 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' 6.28318530718),.PIECEWISE_BEZIER_KNOTS.) CURVE()  GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1., 0.707106781187,1.)) REPRESENTATION_ITEM('') );-#766 = CARTESIAN_POINT('',(0.8275,-1.E-01));-#767 = CARTESIAN_POINT('',(0.8125,-1.E-01));+#766 = CARTESIAN_POINT('',(0.8275,-0.1));+#767 = CARTESIAN_POINT('',(0.8125,-0.1)); #768 = CARTESIAN_POINT('',(0.8125,-0.115)); #769 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''@@ -1130,8 +1130,8 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #789 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(     (#790,#791)     ,(#792,#793-    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,6.25E-02),(-0.115,-    -1.E-01),.PIECEWISE_BEZIER_KNOTS.);+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,6.25E-02),(-0.115,-0.1)+  ,.PIECEWISE_BEZIER_KNOTS.); #790 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.1665)); #791 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.18)); #792 = CARTESIAN_POINT('',(-0.4625,-0.25,0.1665));@@ -1401,7 +1401,7 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #968 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#969,#970),.UNSPECIFIED.,.F.,.F.,   (2,2),(3.5E-02,5.E-02),.PIECEWISE_BEZIER_KNOTS.); #969 = CARTESIAN_POINT('',(6.25E-02,-0.115));-#970 = CARTESIAN_POINT('',(6.25E-02,-1.E-01));+#970 = CARTESIAN_POINT('',(6.25E-02,-0.1)); #971 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''   ) );@@ -2048,7 +2048,7 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''     (#1415,#1416)     ,(#1417,#1418     )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(6.25E-02,0.125),(-0.115,-    -1.E-01),.PIECEWISE_BEZIER_KNOTS.);+    -0.1),.PIECEWISE_BEZIER_KNOTS.); #1415 = CARTESIAN_POINT('',(0.4625,-0.25,0.1665)); #1416 = CARTESIAN_POINT('',(0.4625,-0.25,0.18)); #1417 = CARTESIAN_POINT('',(0.4625,-0.1875,0.1665));@@ -2056,7 +2056,7 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #1419 = DEFINITIONAL_REPRESENTATION('',(#1420),#1423); #1420 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1421,#1422),.UNSPECIFIED.,.F.,   .F.,(2,2),(-5.E-02,-3.5E-02),.PIECEWISE_BEZIER_KNOTS.);-#1421 = CARTESIAN_POINT('',(6.25E-02,-1.E-01));+#1421 = CARTESIAN_POINT('',(6.25E-02,-0.1)); #1422 = CARTESIAN_POINT('',(6.25E-02,-0.115)); #1423 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''@@ -2262,8 +2262,8 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #1550 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(     (#1551,#1552)     ,(#1553,#1554-    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,0.1125),(-0.115,-1.E-01-    ),.PIECEWISE_BEZIER_KNOTS.);+    )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,0.1125),(-0.115,-0.1),+  .PIECEWISE_BEZIER_KNOTS.); #1551 = CARTESIAN_POINT('',(0.4625,-0.1875,0.1665)); #1552 = CARTESIAN_POINT('',(0.4625,-0.1875,0.18)); #1553 = CARTESIAN_POINT('',(0.35,-0.1875,0.1665));@@ -2356,8 +2356,8 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #1619 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(     (#1620,#1621)     ,(#1622,#1623-  )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.8125,0.925),(-0.115,-    -1.E-01),.PIECEWISE_BEZIER_KNOTS.);+  )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.8125,0.925),(-0.115,-0.1),+  .PIECEWISE_BEZIER_KNOTS.); #1620 = CARTESIAN_POINT('',(0.35,0.1875,0.1665)); #1621 = CARTESIAN_POINT('',(0.35,0.1875,0.18)); #1622 = CARTESIAN_POINT('',(0.4625,0.1875,0.1665));@@ -2390,8 +2390,8 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #1642 = B_SPLINE_SURFACE_WITH_KNOTS('',1,1,(     (#1643,#1644)     ,(#1645,#1646-  )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,6.25E-02),(-0.115,-1.E-01-    ),.PIECEWISE_BEZIER_KNOTS.);+  )),.UNSPECIFIED.,.F.,.F.,.F.,(2,2),(2,2),(0.,6.25E-02),(-0.115,-0.1),+  .PIECEWISE_BEZIER_KNOTS.); #1643 = CARTESIAN_POINT('',(0.4625,0.1875,0.1665)); #1644 = CARTESIAN_POINT('',(0.4625,0.1875,0.18)); #1645 = CARTESIAN_POINT('',(0.4625,0.25,0.1665));@@ -2441,7 +2441,7 @@ GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1., 0.707106781187,1.)) REPRESENTATION_ITEM('') ); #1675 = CARTESIAN_POINT('',(0.1125,-0.115)); #1676 = CARTESIAN_POINT('',(0.1125,-0.1));-#1677 = CARTESIAN_POINT('',(9.75E-02,-1.E-01));+#1677 = CARTESIAN_POINT('',(9.75E-02,-0.1)); #1678 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''   ) );@@ -2505,7 +2505,7 @@ GEOMETRIC_REPRESENTATION_ITEM() RATIONAL_B_SPLINE_CURVE((1., 0.707106781187,1.)) REPRESENTATION_ITEM('') ); #1717 = CARTESIAN_POINT('',(0.8125,-0.115)); #1718 = CARTESIAN_POINT('',(0.8125,-0.1));-#1719 = CARTESIAN_POINT('',(0.8275,-1.E-01));+#1719 = CARTESIAN_POINT('',(0.8275,-0.1)); #1720 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''   ) );@@ -2709,8 +2709,8 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #1866 = DEFINITIONAL_REPRESENTATION('',(#1867),#1870); #1867 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1868,#1869),.UNSPECIFIED.,.F.,   .F.,(2,2),(1.875E-02,0.11625),.PIECEWISE_BEZIER_KNOTS.);-#1868 = CARTESIAN_POINT('',(0.,-1.E-01));-#1869 = CARTESIAN_POINT('',(9.75E-02,-1.E-01));+#1868 = CARTESIAN_POINT('',(0.,-0.1));+#1869 = CARTESIAN_POINT('',(9.75E-02,-0.1)); #1870 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''   ) );@@ -2727,14 +2727,14 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #1878 = EDGE_CURVE('',#1859,#621,#1879,.T.); #1879 = SURFACE_CURVE('',#1880,(#1883,#1889),.PCURVE_S1.); #1880 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1881,#1882),.UNSPECIFIED.,.F.,-  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);+  .F.,(2,2),(0.1,0.115),.PIECEWISE_BEZIER_KNOTS.); #1881 = CARTESIAN_POINT('',(-0.4625,0.1875,0.18)); #1882 = CARTESIAN_POINT('',(-0.4625,0.1875,0.1665)); #1883 = PCURVE('',#657,#1884); #1884 = DEFINITIONAL_REPRESENTATION('',(#1885),#1888); #1885 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1886,#1887),.UNSPECIFIED.,.F.,-  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);-#1886 = CARTESIAN_POINT('',(0.,-1.E-01));+  .F.,(2,2),(0.1,0.115),.PIECEWISE_BEZIER_KNOTS.);+#1886 = CARTESIAN_POINT('',(0.,-0.1)); #1887 = CARTESIAN_POINT('',(0.,-0.115)); #1888 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''@@ -2742,8 +2742,8 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #1889 = PCURVE('',#634,#1890); #1890 = DEFINITIONAL_REPRESENTATION('',(#1891),#1894); #1891 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1892,#1893),.UNSPECIFIED.,.F.,-  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);-#1892 = CARTESIAN_POINT('',(0.125,-1.E-01));+  .F.,(2,2),(0.1,0.115),.PIECEWISE_BEZIER_KNOTS.);+#1892 = CARTESIAN_POINT('',(0.125,-0.1)); #1893 = CARTESIAN_POINT('',(0.125,-0.115)); #1894 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''@@ -2767,8 +2767,8 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #1910 = DEFINITIONAL_REPRESENTATION('',(#1911),#1914); #1911 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1912,#1913),.UNSPECIFIED.,.F.,   .F.,(2,2),(-0.21875,-0.15625),.PIECEWISE_BEZIER_KNOTS.);-#1912 = CARTESIAN_POINT('',(6.25E-02,-1.E-01));-#1913 = CARTESIAN_POINT('',(0.125,-1.E-01));+#1912 = CARTESIAN_POINT('',(6.25E-02,-0.1));+#1913 = CARTESIAN_POINT('',(0.125,-0.1)); #1914 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''   ) );@@ -2793,7 +2793,7 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #1929 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1930,#1931),.UNSPECIFIED.,.F.,   .F.,(2,2),(3.5E-02,5.E-02),.PIECEWISE_BEZIER_KNOTS.); #1930 = CARTESIAN_POINT('',(6.25E-02,-0.115));-#1931 = CARTESIAN_POINT('',(6.25E-02,-1.E-01));+#1931 = CARTESIAN_POINT('',(6.25E-02,-0.1)); #1932 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''   ) );@@ -2816,14 +2816,14 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #1946 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.18)); #1947 = SURFACE_CURVE('',#1948,(#1951,#1957),.PCURVE_S1.); #1948 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1949,#1950),.UNSPECIFIED.,.F.,-  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);+  .F.,(2,2),(0.1,0.115),.PIECEWISE_BEZIER_KNOTS.); #1949 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.18)); #1950 = CARTESIAN_POINT('',(-0.4625,-0.1875,0.1665)); #1951 = PCURVE('',#759,#1952); #1952 = DEFINITIONAL_REPRESENTATION('',(#1953),#1956); #1953 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1954,#1955),.UNSPECIFIED.,.F.,-  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);-#1954 = CARTESIAN_POINT('',(0.925,-1.E-01));+  .F.,(2,2),(0.1,0.115),.PIECEWISE_BEZIER_KNOTS.);+#1954 = CARTESIAN_POINT('',(0.925,-0.1)); #1955 = CARTESIAN_POINT('',(0.925,-0.115)); #1956 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''@@ -2831,8 +2831,8 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #1957 = PCURVE('',#789,#1958); #1958 = DEFINITIONAL_REPRESENTATION('',(#1959),#1962); #1959 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1960,#1961),.UNSPECIFIED.,.F.,-  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);-#1960 = CARTESIAN_POINT('',(0.,-1.E-01));+  .F.,(2,2),(0.1,0.115),.PIECEWISE_BEZIER_KNOTS.);+#1960 = CARTESIAN_POINT('',(0.,-0.1)); #1961 = CARTESIAN_POINT('',(0.,-0.115)); #1962 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''@@ -2848,8 +2848,8 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #1970 = DEFINITIONAL_REPRESENTATION('',(#1971),#1974); #1971 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#1972,#1973),.UNSPECIFIED.,.F.,   .F.,(2,2),(0.34625,0.44375),.PIECEWISE_BEZIER_KNOTS.);-#1972 = CARTESIAN_POINT('',(0.8275,-1.E-01));-#1973 = CARTESIAN_POINT('',(0.925,-1.E-01));+#1972 = CARTESIAN_POINT('',(0.8275,-0.1));+#1973 = CARTESIAN_POINT('',(0.925,-0.1)); #1974 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''   ) );@@ -2941,8 +2941,8 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #2039 = DEFINITIONAL_REPRESENTATION('',(#2040),#2043); #2040 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#2041,#2042),.UNSPECIFIED.,.F.,   .F.,(2,2),(-3.125E-02,3.125E-02),.PIECEWISE_BEZIER_KNOTS.);-#2041 = CARTESIAN_POINT('',(0.,-1.E-01));-#2042 = CARTESIAN_POINT('',(6.25E-02,-1.E-01));+#2041 = CARTESIAN_POINT('',(0.,-0.1));+#2042 = CARTESIAN_POINT('',(6.25E-02,-0.1)); #2043 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''   ) );@@ -4289,8 +4289,8 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #3023 = DEFINITIONAL_REPRESENTATION('',(#3024),#3027); #3024 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3025,#3026),.UNSPECIFIED.,.F.,   .F.,(2,2),(0.21875,0.28125),.PIECEWISE_BEZIER_KNOTS.);-#3025 = CARTESIAN_POINT('',(0.,-1.E-01));-#3026 = CARTESIAN_POINT('',(6.25E-02,-1.E-01));+#3025 = CARTESIAN_POINT('',(0.,-0.1));+#3026 = CARTESIAN_POINT('',(6.25E-02,-0.1)); #3027 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''   ) );@@ -4314,8 +4314,8 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #3041 = DEFINITIONAL_REPRESENTATION('',(#3042),#3045); #3042 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3043,#3044),.UNSPECIFIED.,.F.,   .F.,(2,2),(0.42125,0.51875),.PIECEWISE_BEZIER_KNOTS.);-#3043 = CARTESIAN_POINT('',(0.8275,-1.E-01));-#3044 = CARTESIAN_POINT('',(0.925,-1.E-01));+#3043 = CARTESIAN_POINT('',(0.8275,-0.1));+#3044 = CARTESIAN_POINT('',(0.925,-0.1)); #3045 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''   ) );@@ -4342,8 +4342,8 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #3062 = DEFINITIONAL_REPRESENTATION('',(#3063),#3066); #3063 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3064,#3065),.UNSPECIFIED.,.F.,   .F.,(2,2),(-5.625E-02,4.125E-02),.PIECEWISE_BEZIER_KNOTS.);-#3064 = CARTESIAN_POINT('',(0.,-1.E-01));-#3065 = CARTESIAN_POINT('',(9.75E-02,-1.E-01));+#3064 = CARTESIAN_POINT('',(0.,-0.1));+#3065 = CARTESIAN_POINT('',(9.75E-02,-0.1)); #3066 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''   ) );@@ -4367,8 +4367,8 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #3080 = DEFINITIONAL_REPRESENTATION('',(#3081),#3084); #3081 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3082,#3083),.UNSPECIFIED.,.F.,   .F.,(2,2),(3.125E-02,9.375E-02),.PIECEWISE_BEZIER_KNOTS.);-#3082 = CARTESIAN_POINT('',(6.25E-02,-1.E-01));-#3083 = CARTESIAN_POINT('',(0.125,-1.E-01));+#3082 = CARTESIAN_POINT('',(6.25E-02,-0.1));+#3083 = CARTESIAN_POINT('',(0.125,-0.1)); #3084 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''   ) );@@ -4381,14 +4381,14 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #3091 = EDGE_CURVE('',#3049,#1537,#3092,.T.); #3092 = SURFACE_CURVE('',#3093,(#3096,#3102),.PCURVE_S1.); #3093 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3094,#3095),.UNSPECIFIED.,.F.,-  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);+  .F.,(2,2),(0.1,0.115),.PIECEWISE_BEZIER_KNOTS.); #3094 = CARTESIAN_POINT('',(0.4625,-0.1875,0.18)); #3095 = CARTESIAN_POINT('',(0.4625,-0.1875,0.1665)); #3096 = PCURVE('',#1414,#3097); #3097 = DEFINITIONAL_REPRESENTATION('',(#3098),#3101); #3098 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3099,#3100),.UNSPECIFIED.,.F.,-  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);-#3099 = CARTESIAN_POINT('',(0.125,-1.E-01));+  .F.,(2,2),(0.1,0.115),.PIECEWISE_BEZIER_KNOTS.);+#3099 = CARTESIAN_POINT('',(0.125,-0.1)); #3100 = CARTESIAN_POINT('',(0.125,-0.115)); #3101 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''@@ -4396,8 +4396,8 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #3102 = PCURVE('',#1550,#3103); #3103 = DEFINITIONAL_REPRESENTATION('',(#3104),#3107); #3104 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3105,#3106),.UNSPECIFIED.,.F.,-  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);-#3105 = CARTESIAN_POINT('',(0.,-1.E-01));+  .F.,(2,2),(0.1,0.115),.PIECEWISE_BEZIER_KNOTS.);+#3105 = CARTESIAN_POINT('',(0.,-0.1)); #3106 = CARTESIAN_POINT('',(0.,-0.115)); #3107 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''@@ -4420,14 +4420,14 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #3123 = EDGE_CURVE('',#3010,#1606,#3124,.T.); #3124 = SURFACE_CURVE('',#3125,(#3128,#3134),.PCURVE_S1.); #3125 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3126,#3127),.UNSPECIFIED.,.F.,-  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);+  .F.,(2,2),(0.1,0.115),.PIECEWISE_BEZIER_KNOTS.); #3126 = CARTESIAN_POINT('',(0.4625,0.1875,0.18)); #3127 = CARTESIAN_POINT('',(0.4625,0.1875,0.1665)); #3128 = PCURVE('',#1642,#3129); #3129 = DEFINITIONAL_REPRESENTATION('',(#3130),#3133); #3130 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3131,#3132),.UNSPECIFIED.,.F.,-  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);-#3131 = CARTESIAN_POINT('',(0.,-1.E-01));+  .F.,(2,2),(0.1,0.115),.PIECEWISE_BEZIER_KNOTS.);+#3131 = CARTESIAN_POINT('',(0.,-0.1)); #3132 = CARTESIAN_POINT('',(0.,-0.115)); #3133 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''@@ -4435,8 +4435,8 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #3134 = PCURVE('',#1619,#3135); #3135 = DEFINITIONAL_REPRESENTATION('',(#3136),#3139); #3136 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3137,#3138),.UNSPECIFIED.,.F.,-  .F.,(2,2),(1.E-01,0.115),.PIECEWISE_BEZIER_KNOTS.);-#3137 = CARTESIAN_POINT('',(0.925,-1.E-01));+  .F.,(2,2),(0.1,0.115),.PIECEWISE_BEZIER_KNOTS.);+#3137 = CARTESIAN_POINT('',(0.925,-0.1)); #3138 = CARTESIAN_POINT('',(0.925,-0.115)); #3139 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''@@ -4453,7 +4453,7 @@ PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE','' #3148 = DEFINITIONAL_REPRESENTATION('',(#3149),#3152); #3149 = B_SPLINE_CURVE_WITH_KNOTS('',1,(#3150,#3151),.UNSPECIFIED.,.F.,   .F.,(2,2),(-5.E-02,-3.5E-02),.PIECEWISE_BEZIER_KNOTS.);-#3150 = CARTESIAN_POINT('',(6.25E-02,-1.E-01));+#3150 = CARTESIAN_POINT('',(6.25E-02,-0.1)); #3151 = CARTESIAN_POINT('',(6.25E-02,-0.115)); #3152 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2)  PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''@@ -4518,5 +4518,465 @@ GLOBAL_UNIT_ASSIGNED_CONTEXT((#3199,#3200,#3201)) REPRESENTATION_CONTEXT #3202 = UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(1.E-07),#3199,   'distance_accuracy_value','confusion accuracy'); #3203 = PRODUCT_RELATED_PRODUCT_CATEGORY('part',$,(#7));+#3204 = MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION('',(+    #3205,#3215,#3224,#3234,#3243,#3252,#3261,#3270,#3280,#3289,#3298,+    #3307,#3316,#3325,#3334,#3343,#3352,#3361,#3370,#3379,#3388,#3397,+    #3406,#3415,#3424,#3433,#3442,#3451,#3460,#3469,#3478,#3487,#3496,+    #3505,#3514,#3523,#3533,#3542,#3551,#3560,#3569,#3578,#3587,#3596,+    #3605,#3614,#3623,#3632,#3641,#3650),#3198);+#3205 = STYLED_ITEM('color',(#3206),#17);+#3206 = PRESENTATION_STYLE_ASSIGNMENT((#3207,#3213));+#3207 = SURFACE_STYLE_USAGE(.BOTH.,#3208);+#3208 = SURFACE_SIDE_STYLE('',(#3209));+#3209 = SURFACE_STYLE_FILL_AREA(#3210);+#3210 = FILL_AREA_STYLE('',(#3211));+#3211 = FILL_AREA_STYLE_COLOUR('',#3212);+#3212 = COLOUR_RGB('',0.765700000031,0.258900000606,0.20739999784);+#3213 = CURVE_STYLE('',#3214,POSITIVE_LENGTH_MEASURE(0.1),#3212);+#3214 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3215 = STYLED_ITEM('color',(#3216),#125);+#3216 = PRESENTATION_STYLE_ASSIGNMENT((#3217,#3222));+#3217 = SURFACE_STYLE_USAGE(.BOTH.,#3218);+#3218 = SURFACE_SIDE_STYLE('',(#3219));+#3219 = SURFACE_STYLE_FILL_AREA(#3220);+#3220 = FILL_AREA_STYLE('',(#3221));+#3221 = FILL_AREA_STYLE_COLOUR('',#3212);+#3222 = CURVE_STYLE('',#3223,POSITIVE_LENGTH_MEASURE(0.1),#3212);+#3223 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3224 = STYLED_ITEM('color',(#3225),#250);+#3225 = PRESENTATION_STYLE_ASSIGNMENT((#3226,#3232));+#3226 = SURFACE_STYLE_USAGE(.BOTH.,#3227);+#3227 = SURFACE_SIDE_STYLE('',(#3228));+#3228 = SURFACE_STYLE_FILL_AREA(#3229);+#3229 = FILL_AREA_STYLE('',(#3230));+#3230 = FILL_AREA_STYLE_COLOUR('',#3231);+#3231 = COLOUR_RGB('',0.894999996726,0.890999991539,0.812999995914);+#3232 = CURVE_STYLE('',#3233,POSITIVE_LENGTH_MEASURE(0.1),#3231);+#3233 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3234 = STYLED_ITEM('color',(#3235),#452);+#3235 = PRESENTATION_STYLE_ASSIGNMENT((#3236,#3241));+#3236 = SURFACE_STYLE_USAGE(.BOTH.,#3237);+#3237 = SURFACE_SIDE_STYLE('',(#3238));+#3238 = SURFACE_STYLE_FILL_AREA(#3239);+#3239 = FILL_AREA_STYLE('',(#3240));+#3240 = FILL_AREA_STYLE_COLOUR('',#3212);+#3241 = CURVE_STYLE('',#3242,POSITIVE_LENGTH_MEASURE(0.1),#3212);+#3242 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3243 = STYLED_ITEM('color',(#3244),#495);+#3244 = PRESENTATION_STYLE_ASSIGNMENT((#3245,#3250));+#3245 = SURFACE_STYLE_USAGE(.BOTH.,#3246);+#3246 = SURFACE_SIDE_STYLE('',(#3247));+#3247 = SURFACE_STYLE_FILL_AREA(#3248);+#3248 = FILL_AREA_STYLE('',(#3249));+#3249 = FILL_AREA_STYLE_COLOUR('',#3212);+#3250 = CURVE_STYLE('',#3251,POSITIVE_LENGTH_MEASURE(0.1),#3212);+#3251 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3252 = STYLED_ITEM('color',(#3253),#591);+#3253 = PRESENTATION_STYLE_ASSIGNMENT((#3254,#3259));+#3254 = SURFACE_STYLE_USAGE(.BOTH.,#3255);+#3255 = SURFACE_SIDE_STYLE('',(#3256));+#3256 = SURFACE_STYLE_FILL_AREA(#3257);+#3257 = FILL_AREA_STYLE('',(#3258));+#3258 = FILL_AREA_STYLE_COLOUR('',#3231);+#3259 = CURVE_STYLE('',#3260,POSITIVE_LENGTH_MEASURE(0.1),#3231);+#3260 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3261 = STYLED_ITEM('color',(#3262),#668);+#3262 = PRESENTATION_STYLE_ASSIGNMENT((#3263,#3268));+#3263 = SURFACE_STYLE_USAGE(.BOTH.,#3264);+#3264 = SURFACE_SIDE_STYLE('',(#3265));+#3265 = SURFACE_STYLE_FILL_AREA(#3266);+#3266 = FILL_AREA_STYLE('',(#3267));+#3267 = FILL_AREA_STYLE_COLOUR('',#3212);+#3268 = CURVE_STYLE('',#3269,POSITIVE_LENGTH_MEASURE(0.1),#3212);+#3269 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3270 = STYLED_ITEM('color',(#3271),#692);+#3271 = PRESENTATION_STYLE_ASSIGNMENT((#3272,#3278));+#3272 = SURFACE_STYLE_USAGE(.BOTH.,#3273);+#3273 = SURFACE_SIDE_STYLE('',(#3274));+#3274 = SURFACE_STYLE_FILL_AREA(#3275);+#3275 = FILL_AREA_STYLE('',(#3276));+#3276 = FILL_AREA_STYLE_COLOUR('',#3277);+#3277 = COLOUR_RGB('',0.858999988747,0.738000004258,0.496000005009);+#3278 = CURVE_STYLE('',#3279,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3279 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3280 = STYLED_ITEM('color',(#3281),#771);+#3281 = PRESENTATION_STYLE_ASSIGNMENT((#3282,#3287));+#3282 = SURFACE_STYLE_USAGE(.BOTH.,#3283);+#3283 = SURFACE_SIDE_STYLE('',(#3284));+#3284 = SURFACE_STYLE_FILL_AREA(#3285);+#3285 = FILL_AREA_STYLE('',(#3286));+#3286 = FILL_AREA_STYLE_COLOUR('',#3231);+#3287 = CURVE_STYLE('',#3288,POSITIVE_LENGTH_MEASURE(0.1),#3231);+#3288 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3289 = STYLED_ITEM('color',(#3290),#819);+#3290 = PRESENTATION_STYLE_ASSIGNMENT((#3291,#3296));+#3291 = SURFACE_STYLE_USAGE(.BOTH.,#3292);+#3292 = SURFACE_SIDE_STYLE('',(#3293));+#3293 = SURFACE_STYLE_FILL_AREA(#3294);+#3294 = FILL_AREA_STYLE('',(#3295));+#3295 = FILL_AREA_STYLE_COLOUR('',#3277);+#3296 = CURVE_STYLE('',#3297,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3297 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3298 = STYLED_ITEM('color',(#3299),#998);+#3299 = PRESENTATION_STYLE_ASSIGNMENT((#3300,#3305));+#3300 = SURFACE_STYLE_USAGE(.BOTH.,#3301);+#3301 = SURFACE_SIDE_STYLE('',(#3302));+#3302 = SURFACE_STYLE_FILL_AREA(#3303);+#3303 = FILL_AREA_STYLE('',(#3304));+#3304 = FILL_AREA_STYLE_COLOUR('',#3231);+#3305 = CURVE_STYLE('',#3306,POSITIVE_LENGTH_MEASURE(0.1),#3231);+#3306 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3307 = STYLED_ITEM('color',(#3308),#1348);+#3308 = PRESENTATION_STYLE_ASSIGNMENT((#3309,#3314));+#3309 = SURFACE_STYLE_USAGE(.BOTH.,#3310);+#3310 = SURFACE_SIDE_STYLE('',(#3311));+#3311 = SURFACE_STYLE_FILL_AREA(#3312);+#3312 = FILL_AREA_STYLE('',(#3313));+#3313 = FILL_AREA_STYLE_COLOUR('',#3277);+#3314 = CURVE_STYLE('',#3315,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3315 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3316 = STYLED_ITEM('color',(#3317),#1532);+#3317 = PRESENTATION_STYLE_ASSIGNMENT((#3318,#3323));+#3318 = SURFACE_STYLE_USAGE(.BOTH.,#3319);+#3319 = SURFACE_SIDE_STYLE('',(#3320));+#3320 = SURFACE_STYLE_FILL_AREA(#3321);+#3321 = FILL_AREA_STYLE('',(#3322));+#3322 = FILL_AREA_STYLE_COLOUR('',#3231);+#3323 = CURVE_STYLE('',#3324,POSITIVE_LENGTH_MEASURE(0.1),#3231);+#3324 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3325 = STYLED_ITEM('color',(#3326),#1580);+#3326 = PRESENTATION_STYLE_ASSIGNMENT((#3327,#3332));+#3327 = SURFACE_STYLE_USAGE(.BOTH.,#3328);+#3328 = SURFACE_SIDE_STYLE('',(#3329));+#3329 = SURFACE_STYLE_FILL_AREA(#3330);+#3330 = FILL_AREA_STYLE('',(#3331));+#3331 = FILL_AREA_STYLE_COLOUR('',#3231);+#3332 = CURVE_STYLE('',#3333,POSITIVE_LENGTH_MEASURE(0.1),#3231);+#3333 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3334 = STYLED_ITEM('color',(#3335),#1652);+#3335 = PRESENTATION_STYLE_ASSIGNMENT((#3336,#3341));+#3336 = SURFACE_STYLE_USAGE(.BOTH.,#3337);+#3337 = SURFACE_SIDE_STYLE('',(#3338));+#3338 = SURFACE_STYLE_FILL_AREA(#3339);+#3339 = FILL_AREA_STYLE('',(#3340));+#3340 = FILL_AREA_STYLE_COLOUR('',#3277);+#3341 = CURVE_STYLE('',#3342,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3342 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3343 = STYLED_ITEM('color',(#3344),#1721);+#3344 = PRESENTATION_STYLE_ASSIGNMENT((#3345,#3350));+#3345 = SURFACE_STYLE_USAGE(.BOTH.,#3346);+#3346 = SURFACE_SIDE_STYLE('',(#3347));+#3347 = SURFACE_STYLE_FILL_AREA(#3348);+#3348 = FILL_AREA_STYLE('',(#3349));+#3349 = FILL_AREA_STYLE_COLOUR('',#3231);+#3350 = CURVE_STYLE('',#3351,POSITIVE_LENGTH_MEASURE(0.1),#3231);+#3351 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3352 = STYLED_ITEM('color',(#3353),#1854);+#3353 = PRESENTATION_STYLE_ASSIGNMENT((#3354,#3359));+#3354 = SURFACE_STYLE_USAGE(.BOTH.,#3355);+#3355 = SURFACE_SIDE_STYLE('',(#3356));+#3356 = SURFACE_STYLE_FILL_AREA(#3357);+#3357 = FILL_AREA_STYLE('',(#3358));+#3358 = FILL_AREA_STYLE_COLOUR('',#3277);+#3359 = CURVE_STYLE('',#3360,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3360 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3361 = STYLED_ITEM('color',(#3362),#1897);+#3362 = PRESENTATION_STYLE_ASSIGNMENT((#3363,#3368));+#3363 = SURFACE_STYLE_USAGE(.BOTH.,#3364);+#3364 = SURFACE_SIDE_STYLE('',(#3365));+#3365 = SURFACE_STYLE_FILL_AREA(#3366);+#3366 = FILL_AREA_STYLE('',(#3367));+#3367 = FILL_AREA_STYLE_COLOUR('',#3277);+#3368 = CURVE_STYLE('',#3369,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3369 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3370 = STYLED_ITEM('color',(#3371),#1940);+#3371 = PRESENTATION_STYLE_ASSIGNMENT((#3372,#3377));+#3372 = SURFACE_STYLE_USAGE(.BOTH.,#3373);+#3373 = SURFACE_SIDE_STYLE('',(#3374));+#3374 = SURFACE_STYLE_FILL_AREA(#3375);+#3375 = FILL_AREA_STYLE('',(#3376));+#3376 = FILL_AREA_STYLE_COLOUR('',#3277);+#3377 = CURVE_STYLE('',#3378,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3378 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3379 = STYLED_ITEM('color',(#3380),#1983);+#3380 = PRESENTATION_STYLE_ASSIGNMENT((#3381,#3386));+#3381 = SURFACE_STYLE_USAGE(.BOTH.,#3382);+#3382 = SURFACE_SIDE_STYLE('',(#3383));+#3383 = SURFACE_STYLE_FILL_AREA(#3384);+#3384 = FILL_AREA_STYLE('',(#3385));+#3385 = FILL_AREA_STYLE_COLOUR('',#3277);+#3386 = CURVE_STYLE('',#3387,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3387 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3388 = STYLED_ITEM('color',(#3389),#2048);+#3389 = PRESENTATION_STYLE_ASSIGNMENT((#3390,#3395));+#3390 = SURFACE_STYLE_USAGE(.BOTH.,#3391);+#3391 = SURFACE_SIDE_STYLE('',(#3392));+#3392 = SURFACE_STYLE_FILL_AREA(#3393);+#3393 = FILL_AREA_STYLE('',(#3394));+#3394 = FILL_AREA_STYLE_COLOUR('',#3277);+#3395 = CURVE_STYLE('',#3396,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3396 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3397 = STYLED_ITEM('color',(#3398),#2055);+#3398 = PRESENTATION_STYLE_ASSIGNMENT((#3399,#3404));+#3399 = SURFACE_STYLE_USAGE(.BOTH.,#3400);+#3400 = SURFACE_SIDE_STYLE('',(#3401));+#3401 = SURFACE_STYLE_FILL_AREA(#3402);+#3402 = FILL_AREA_STYLE('',(#3403));+#3403 = FILL_AREA_STYLE_COLOUR('',#3277);+#3404 = CURVE_STYLE('',#3405,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3405 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3406 = STYLED_ITEM('color',(#3407),#2199);+#3407 = PRESENTATION_STYLE_ASSIGNMENT((#3408,#3413));+#3408 = SURFACE_STYLE_USAGE(.BOTH.,#3409);+#3409 = SURFACE_SIDE_STYLE('',(#3410));+#3410 = SURFACE_STYLE_FILL_AREA(#3411);+#3411 = FILL_AREA_STYLE('',(#3412));+#3412 = FILL_AREA_STYLE_COLOUR('',#3277);+#3413 = CURVE_STYLE('',#3414,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3414 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3415 = STYLED_ITEM('color',(#3416),#2246);+#3416 = PRESENTATION_STYLE_ASSIGNMENT((#3417,#3422));+#3417 = SURFACE_STYLE_USAGE(.BOTH.,#3418);+#3418 = SURFACE_SIDE_STYLE('',(#3419));+#3419 = SURFACE_STYLE_FILL_AREA(#3420);+#3420 = FILL_AREA_STYLE('',(#3421));+#3421 = FILL_AREA_STYLE_COLOUR('',#3277);+#3422 = CURVE_STYLE('',#3423,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3423 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3424 = STYLED_ITEM('color',(#3425),#2270);+#3425 = PRESENTATION_STYLE_ASSIGNMENT((#3426,#3431));+#3426 = SURFACE_STYLE_USAGE(.BOTH.,#3427);+#3427 = SURFACE_SIDE_STYLE('',(#3428));+#3428 = SURFACE_STYLE_FILL_AREA(#3429);+#3429 = FILL_AREA_STYLE('',(#3430));+#3430 = FILL_AREA_STYLE_COLOUR('',#3277);+#3431 = CURVE_STYLE('',#3432,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3432 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3433 = STYLED_ITEM('color',(#3434),#2314);+#3434 = PRESENTATION_STYLE_ASSIGNMENT((#3435,#3440));+#3435 = SURFACE_STYLE_USAGE(.BOTH.,#3436);+#3436 = SURFACE_SIDE_STYLE('',(#3437));+#3437 = SURFACE_STYLE_FILL_AREA(#3438);+#3438 = FILL_AREA_STYLE('',(#3439));+#3439 = FILL_AREA_STYLE_COLOUR('',#3277);+#3440 = CURVE_STYLE('',#3441,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3441 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3442 = STYLED_ITEM('color',(#3443),#2341);+#3443 = PRESENTATION_STYLE_ASSIGNMENT((#3444,#3449));+#3444 = SURFACE_STYLE_USAGE(.BOTH.,#3445);+#3445 = SURFACE_SIDE_STYLE('',(#3446));+#3446 = SURFACE_STYLE_FILL_AREA(#3447);+#3447 = FILL_AREA_STYLE('',(#3448));+#3448 = FILL_AREA_STYLE_COLOUR('',#3277);+#3449 = CURVE_STYLE('',#3450,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3450 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3451 = STYLED_ITEM('color',(#3452),#2368);+#3452 = PRESENTATION_STYLE_ASSIGNMENT((#3453,#3458));+#3453 = SURFACE_STYLE_USAGE(.BOTH.,#3454);+#3454 = SURFACE_SIDE_STYLE('',(#3455));+#3455 = SURFACE_STYLE_FILL_AREA(#3456);+#3456 = FILL_AREA_STYLE('',(#3457));+#3457 = FILL_AREA_STYLE_COLOUR('',#3277);+#3458 = CURVE_STYLE('',#3459,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3459 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3460 = STYLED_ITEM('color',(#3461),#2395);+#3461 = PRESENTATION_STYLE_ASSIGNMENT((#3462,#3467));+#3462 = SURFACE_STYLE_USAGE(.BOTH.,#3463);+#3463 = SURFACE_SIDE_STYLE('',(#3464));+#3464 = SURFACE_STYLE_FILL_AREA(#3465);+#3465 = FILL_AREA_STYLE('',(#3466));+#3466 = FILL_AREA_STYLE_COLOUR('',#3277);+#3467 = CURVE_STYLE('',#3468,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3468 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3469 = STYLED_ITEM('color',(#3470),#2419);+#3470 = PRESENTATION_STYLE_ASSIGNMENT((#3471,#3476));+#3471 = SURFACE_STYLE_USAGE(.BOTH.,#3472);+#3472 = SURFACE_SIDE_STYLE('',(#3473));+#3473 = SURFACE_STYLE_FILL_AREA(#3474);+#3474 = FILL_AREA_STYLE('',(#3475));+#3475 = FILL_AREA_STYLE_COLOUR('',#3277);+#3476 = CURVE_STYLE('',#3477,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3477 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3478 = STYLED_ITEM('color',(#3479),#2443);+#3479 = PRESENTATION_STYLE_ASSIGNMENT((#3480,#3485));+#3480 = SURFACE_STYLE_USAGE(.BOTH.,#3481);+#3481 = SURFACE_SIDE_STYLE('',(#3482));+#3482 = SURFACE_STYLE_FILL_AREA(#3483);+#3483 = FILL_AREA_STYLE('',(#3484));+#3484 = FILL_AREA_STYLE_COLOUR('',#3277);+#3485 = CURVE_STYLE('',#3486,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3486 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3487 = STYLED_ITEM('color',(#3488),#2505);+#3488 = PRESENTATION_STYLE_ASSIGNMENT((#3489,#3494));+#3489 = SURFACE_STYLE_USAGE(.BOTH.,#3490);+#3490 = SURFACE_SIDE_STYLE('',(#3491));+#3491 = SURFACE_STYLE_FILL_AREA(#3492);+#3492 = FILL_AREA_STYLE('',(#3493));+#3493 = FILL_AREA_STYLE_COLOUR('',#3277);+#3494 = CURVE_STYLE('',#3495,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3495 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3496 = STYLED_ITEM('color',(#3497),#2551);+#3497 = PRESENTATION_STYLE_ASSIGNMENT((#3498,#3503));+#3498 = SURFACE_STYLE_USAGE(.BOTH.,#3499);+#3499 = SURFACE_SIDE_STYLE('',(#3500));+#3500 = SURFACE_STYLE_FILL_AREA(#3501);+#3501 = FILL_AREA_STYLE('',(#3502));+#3502 = FILL_AREA_STYLE_COLOUR('',#3277);+#3503 = CURVE_STYLE('',#3504,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3504 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3505 = STYLED_ITEM('color',(#3506),#2598);+#3506 = PRESENTATION_STYLE_ASSIGNMENT((#3507,#3512));+#3507 = SURFACE_STYLE_USAGE(.BOTH.,#3508);+#3508 = SURFACE_SIDE_STYLE('',(#3509));+#3509 = SURFACE_STYLE_FILL_AREA(#3510);+#3510 = FILL_AREA_STYLE('',(#3511));+#3511 = FILL_AREA_STYLE_COLOUR('',#3277);+#3512 = CURVE_STYLE('',#3513,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3513 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3514 = STYLED_ITEM('color',(#3515),#2641);+#3515 = PRESENTATION_STYLE_ASSIGNMENT((#3516,#3521));+#3516 = SURFACE_STYLE_USAGE(.BOTH.,#3517);+#3517 = SURFACE_SIDE_STYLE('',(#3518));+#3518 = SURFACE_STYLE_FILL_AREA(#3519);+#3519 = FILL_AREA_STYLE('',(#3520));+#3520 = FILL_AREA_STYLE_COLOUR('',#3277);+#3521 = CURVE_STYLE('',#3522,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3522 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3523 = STYLED_ITEM('color',(#3524),#2665);+#3524 = PRESENTATION_STYLE_ASSIGNMENT((#3525,#3531));+#3525 = SURFACE_STYLE_USAGE(.BOTH.,#3526);+#3526 = SURFACE_SIDE_STYLE('',(#3527));+#3527 = SURFACE_STYLE_FILL_AREA(#3528);+#3528 = FILL_AREA_STYLE('',(#3529));+#3529 = FILL_AREA_STYLE_COLOUR('',#3530);+#3530 = COLOUR_RGB('',0.339999993741,0.679999990811,0.445000007484);+#3531 = CURVE_STYLE('',#3532,POSITIVE_LENGTH_MEASURE(0.1),#3530);+#3532 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3533 = STYLED_ITEM('color',(#3534),#2732);+#3534 = PRESENTATION_STYLE_ASSIGNMENT((#3535,#3540));+#3535 = SURFACE_STYLE_USAGE(.BOTH.,#3536);+#3536 = SURFACE_SIDE_STYLE('',(#3537));+#3537 = SURFACE_STYLE_FILL_AREA(#3538);+#3538 = FILL_AREA_STYLE('',(#3539));+#3539 = FILL_AREA_STYLE_COLOUR('',#3530);+#3540 = CURVE_STYLE('',#3541,POSITIVE_LENGTH_MEASURE(0.1),#3530);+#3541 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3542 = STYLED_ITEM('color',(#3543),#2775);+#3543 = PRESENTATION_STYLE_ASSIGNMENT((#3544,#3549));+#3544 = SURFACE_STYLE_USAGE(.BOTH.,#3545);+#3545 = SURFACE_SIDE_STYLE('',(#3546));+#3546 = SURFACE_STYLE_FILL_AREA(#3547);+#3547 = FILL_AREA_STYLE('',(#3548));+#3548 = FILL_AREA_STYLE_COLOUR('',#3530);+#3549 = CURVE_STYLE('',#3550,POSITIVE_LENGTH_MEASURE(0.1),#3530);+#3550 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3551 = STYLED_ITEM('color',(#3552),#2799);+#3552 = PRESENTATION_STYLE_ASSIGNMENT((#3553,#3558));+#3553 = SURFACE_STYLE_USAGE(.BOTH.,#3554);+#3554 = SURFACE_SIDE_STYLE('',(#3555));+#3555 = SURFACE_STYLE_FILL_AREA(#3556);+#3556 = FILL_AREA_STYLE('',(#3557));+#3557 = FILL_AREA_STYLE_COLOUR('',#3277);+#3558 = CURVE_STYLE('',#3559,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3559 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3560 = STYLED_ITEM('color',(#3561),#2847);+#3561 = PRESENTATION_STYLE_ASSIGNMENT((#3562,#3567));+#3562 = SURFACE_STYLE_USAGE(.BOTH.,#3563);+#3563 = SURFACE_SIDE_STYLE('',(#3564));+#3564 = SURFACE_STYLE_FILL_AREA(#3565);+#3565 = FILL_AREA_STYLE('',(#3566));+#3566 = FILL_AREA_STYLE_COLOUR('',#3277);+#3567 = CURVE_STYLE('',#3568,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3568 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3569 = STYLED_ITEM('color',(#3570),#2894);+#3570 = PRESENTATION_STYLE_ASSIGNMENT((#3571,#3576));+#3571 = SURFACE_STYLE_USAGE(.BOTH.,#3572);+#3572 = SURFACE_SIDE_STYLE('',(#3573));+#3573 = SURFACE_STYLE_FILL_AREA(#3574);+#3574 = FILL_AREA_STYLE('',(#3575));+#3575 = FILL_AREA_STYLE_COLOUR('',#3277);+#3576 = CURVE_STYLE('',#3577,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3577 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3578 = STYLED_ITEM('color',(#3579),#2938);+#3579 = PRESENTATION_STYLE_ASSIGNMENT((#3580,#3585));+#3580 = SURFACE_STYLE_USAGE(.BOTH.,#3581);+#3581 = SURFACE_SIDE_STYLE('',(#3582));+#3582 = SURFACE_STYLE_FILL_AREA(#3583);+#3583 = FILL_AREA_STYLE('',(#3584));+#3584 = FILL_AREA_STYLE_COLOUR('',#3277);+#3585 = CURVE_STYLE('',#3586,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3586 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3587 = STYLED_ITEM('color',(#3588),#2985);+#3588 = PRESENTATION_STYLE_ASSIGNMENT((#3589,#3594));+#3589 = SURFACE_STYLE_USAGE(.BOTH.,#3590);+#3590 = SURFACE_SIDE_STYLE('',(#3591));+#3591 = SURFACE_STYLE_FILL_AREA(#3592);+#3592 = FILL_AREA_STYLE('',(#3593));+#3593 = FILL_AREA_STYLE_COLOUR('',#3277);+#3594 = CURVE_STYLE('',#3595,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3595 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3596 = STYLED_ITEM('color',(#3597),#3087);+#3597 = PRESENTATION_STYLE_ASSIGNMENT((#3598,#3603));+#3598 = SURFACE_STYLE_USAGE(.BOTH.,#3599);+#3599 = SURFACE_SIDE_STYLE('',(#3600));+#3600 = SURFACE_STYLE_FILL_AREA(#3601);+#3601 = FILL_AREA_STYLE('',(#3602));+#3602 = FILL_AREA_STYLE_COLOUR('',#3277);+#3603 = CURVE_STYLE('',#3604,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3604 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3605 = STYLED_ITEM('color',(#3606),#3111);+#3606 = PRESENTATION_STYLE_ASSIGNMENT((#3607,#3612));+#3607 = SURFACE_STYLE_USAGE(.BOTH.,#3608);+#3608 = SURFACE_SIDE_STYLE('',(#3609));+#3609 = SURFACE_STYLE_FILL_AREA(#3610);+#3610 = FILL_AREA_STYLE('',(#3611));+#3611 = FILL_AREA_STYLE_COLOUR('',#3277);+#3612 = CURVE_STYLE('',#3613,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3613 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3614 = STYLED_ITEM('color',(#3615),#3118);+#3615 = PRESENTATION_STYLE_ASSIGNMENT((#3616,#3621));+#3616 = SURFACE_STYLE_USAGE(.BOTH.,#3617);+#3617 = SURFACE_SIDE_STYLE('',(#3618));+#3618 = SURFACE_STYLE_FILL_AREA(#3619);+#3619 = FILL_AREA_STYLE('',(#3620));+#3620 = FILL_AREA_STYLE_COLOUR('',#3277);+#3621 = CURVE_STYLE('',#3622,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3622 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3623 = STYLED_ITEM('color',(#3624),#3159);+#3624 = PRESENTATION_STYLE_ASSIGNMENT((#3625,#3630));+#3625 = SURFACE_STYLE_USAGE(.BOTH.,#3626);+#3626 = SURFACE_SIDE_STYLE('',(#3627));+#3627 = SURFACE_STYLE_FILL_AREA(#3628);+#3628 = FILL_AREA_STYLE('',(#3629));+#3629 = FILL_AREA_STYLE_COLOUR('',#3277);+#3630 = CURVE_STYLE('',#3631,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3631 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3632 = STYLED_ITEM('color',(#3633),#3166);+#3633 = PRESENTATION_STYLE_ASSIGNMENT((#3634,#3639));+#3634 = SURFACE_STYLE_USAGE(.BOTH.,#3635);+#3635 = SURFACE_SIDE_STYLE('',(#3636));+#3636 = SURFACE_STYLE_FILL_AREA(#3637);+#3637 = FILL_AREA_STYLE('',(#3638));+#3638 = FILL_AREA_STYLE_COLOUR('',#3277);+#3639 = CURVE_STYLE('',#3640,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3640 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3641 = STYLED_ITEM('color',(#3642),#3179);+#3642 = PRESENTATION_STYLE_ASSIGNMENT((#3643,#3648));+#3643 = SURFACE_STYLE_USAGE(.BOTH.,#3644);+#3644 = SURFACE_SIDE_STYLE('',(#3645));+#3645 = SURFACE_STYLE_FILL_AREA(#3646);+#3646 = FILL_AREA_STYLE('',(#3647));+#3647 = FILL_AREA_STYLE_COLOUR('',#3277);+#3648 = CURVE_STYLE('',#3649,POSITIVE_LENGTH_MEASURE(0.1),#3277);+#3649 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#3650 = STYLED_ITEM('color',(#3651),#3192);+#3651 = PRESENTATION_STYLE_ASSIGNMENT((#3652,#3657));+#3652 = SURFACE_STYLE_USAGE(.BOTH.,#3653);+#3653 = SURFACE_SIDE_STYLE('',(#3654));+#3654 = SURFACE_STYLE_FILL_AREA(#3655);+#3655 = FILL_AREA_STYLE('',(#3656));+#3656 = FILL_AREA_STYLE_COLOUR('',#3530);+#3657 = CURVE_STYLE('',#3658,POSITIVE_LENGTH_MEASURE(0.1),#3530);+#3658 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous'); ENDSEC; END-ISO-10303-21;
README.md+3−1
@@ -106,6 +106,8 @@ python3 gen/render_datasheet_pages.py IN-S42ATR-datasheet.pdf ds | [IN-S42ATR-datasheet.pdf](https://wiki.adom.inc/download/aravk/in-s42atr/1.0.0/IN-S42ATR-datasheet.pdf) | Datasheet (V1.1) — release asset | | [IN-S42ATR.kicad_sym](/blob/component/in-s42atr/IN-S42ATR.kicad_sym) | KiCad Symbol | | [IN-S42ATR.kicad_mod](/blob/component/in-s42atr/IN-S42ATR.kicad_mod) | KiCad Footprint |-| [IN-S42ATR.step](/blob/component/in-s42atr/IN-S42ATR.step) | 3D STEP Model |+| [IN-S42ATR.step](/blob/component/in-s42atr/IN-S42ATR.step) | 3D STEP model with the lens in the LED colour (#C34235, dominant wavelength 631 nm) — default |+| [IN-S42ATR-uncoloured.step](/blob/component/in-s42atr/IN-S42ATR-uncoloured.step) | Optional: the same STEP as originally shipped, library colours only (uncoloured lens) |+| [in-s42atr-hero.glb](/blob/component/in-s42atr/in-s42atr-hero.glb) | Wiki hero 3D: the coloured LED plus footprint reference art (pad outlines, silkscreen, K/A labels). Page viewer only, not for boards | | [IN-S42ATR.glb](/blob/component/in-s42atr/IN-S42ATR.glb) | 3D model (wiki viewer) | | [IN-S42ATR.lbr](/blob/component/in-s42atr/IN-S42ATR.lbr) | Fusion 360 / EAGLE library |
in-s42atr-hero.glbadded
⋯ 1 unchanged line ⋯
page.json+14−2
@@ -13,9 +13,21 @@     "category": "LED",     "subcategory": "",     "body_size": null,-    "parts": {},+    "parts": {+      "symbol": "IN-S42ATR.kicad_sym",+      "footprint": "IN-S42ATR.kicad_mod",+      "lbr": "IN-S42ATR.lbr",+      "step": "IN-S42ATR.step",+      "model_3d_step": "IN-S42ATR.step",+      "model_3d_step_plain": "IN-S42ATR-uncoloured.step",+      "model_3d": "in-s42atr-hero.glb",+      "model_3d_plain": "IN-S42ATR.glb"+    },     "distributor_links": {},-    "value": "Red"+    "value": "Red",+    "viewer_3d": {+      "tooltips": "authored"+    }   },   "author": {     "name": "AravK",
provenance/IN-S42ATR-colour.report.jsonadded+42
@@ -0,0 +1,42 @@+{+ "src": "IN-S42ATR-uncoloured.step",+ "out": "IN-S42ATR.step",+ "family": "template",+ "faces": 50,+ "faces_by_class": {+  "lens": 5,+  "substrate": 7,+  "terminal": 34,+  "cathode_mark": 4+ },+ "faces_recoloured": 50,+ "colours_srgb": {+  "lens": [+   0.7657,+   0.2589,+   0.2074+  ],+  "substrate": [+   0.895,+   0.891,+   0.813+  ],+  "terminal": [+   0.859,+   0.738,+   0.496+  ],+  "cathode_mark": [+   0.34,+   0.68,+   0.445+  ]+ },+ "classification": {+  "z_top_mm": 0.5,+  "z_substrate_top_mm": 0.185,+  "template": "IN-S42ATA-uncoloured.step",+  "z_scale_vs_template": 0.9+ },+ "kept_comment_block": false+}\ No newline at end of file
provenance/in-s42atr-hero.pinmap.jsonadded+41
@@ -0,0 +1,41 @@+{+ "schema": "adom/hero-pinmap@1",+ "mpn": "IN-S42ATR",+ "derived_from": {+  "file": "IN-S42ATR.adom-lbr.json",+  "sha256": "40cd38852d9e4d7bc1a5a1d1d506f641d098083cdbb5478a9616ec269d41882a"+ },+ "note": "Pin names and pin-to-pad connects copied from the adom-lbr part; electrical_type added (passive) for the hero only so the overlay labels pads by signal name. The library files are unchanged.",+ "symbol": {+  "pins": [+   {+    "number": "1",+    "name": "K",+    "x": -150,+    "y": 0,+    "length": 100,+    "rotation": 0,+    "electrical_type": "passive"+   },+   {+    "number": "2",+    "name": "A",+    "x": 150,+    "y": 0,+    "length": 100,+    "rotation": 180,+    "electrical_type": "passive"+   }+  ]+ },+ "connect": [+  {+   "pin": "1",+   "pad": "1"+  },+  {+   "pin": "2",+   "pad": "2"+  }+ ]+}\ No newline at end of file
provenance/in-s42atr-led-pass.provenance.jsonadded+307
@@ -0,0 +1,307 @@+{+ "schema": "adom/led-colour-pass@1",+ "mpn": "IN-S42ATR",+ "date": "2026-09-30",+ "purpose": "Coloured-lens STEP as the default model the AI retrieves; the originally shipped STEP kept as the optional -uncoloured file; page GLBs and hero rebuilt from the coloured STEP.",+ "colour": {+  "slug": "in-s42atr",+  "mpn": "IN-S42ATR",+  "family": "template",+  "dominant_wavelength_nm": 631,+  "cie_xy": null,+  "datasheet": "IN-S42AT series V1.1 p.3, lambda_D typ",+  "spectral_oklab_hue_deg": 19.4,+  "oklch": [+   0.56,+   0.1674,+   29.2+  ],+  "srgb": [+   0.7657,+   0.2589,+   0.2074+  ],+  "hex": "#C34235",+  "note": "red: lambda_d 631 nm is beyond the sRGB red primary; hue = red primary 29.2 deg (lambda_d-exact edge colour would be 19.4 deg, rose)"+ },+ "colour_method_doc": "tools/led_colour.py docstring (OKLCh, 65 % of gamut-cusp chroma, datasheet typical lambda_d)",+ "step": {+  "coloured": {+   "file": "IN-S42ATR.step",+   "sha256": "d6e246035e8c83cb99869e648f4babaa7a2ad93aa1fb9fe0e255f6aa19242f4c",+   "bytes": 236064+  },+  "uncoloured": {+   "file": "IN-S42ATR-uncoloured.step",+   "sha256": "034bb8b142b1989f5719c1d39dde9b14c36187f6e4b76fdd7f1a8318acb4e257",+   "bytes": 214421,+   "note": "byte-identical to the STEP the page shipped before this pass (renamed only)",+   "matches_published_original": true+  },+  "colouring": {+   "src": "IN-S42ATR-uncoloured.step",+   "out": "IN-S42ATR.step",+   "family": "template",+   "faces": 50,+   "faces_by_class": {+    "lens": 5,+    "substrate": 7,+    "terminal": 34,+    "cathode_mark": 4+   },+   "faces_recoloured": 50,+   "colours_srgb": {+    "lens": [+     0.7657,+     0.2589,+     0.2074+    ],+    "substrate": [+     0.895,+     0.891,+     0.813+    ],+    "terminal": [+     0.859,+     0.738,+     0.496+    ],+    "cathode_mark": [+     0.34,+     0.68,+     0.445+    ]+   },+   "classification": {+    "z_top_mm": 0.5,+    "z_substrate_top_mm": 0.185,+    "template": "IN-S42ATA-uncoloured.step",+    "z_scale_vs_template": 0.9+   },+   "kept_comment_block": false+  },+  "geometry_check": "verify_geom.py: same product name, face count, volume and centroid in both files; only XCAF face colours differ (ColorSurf + ColorGen set on every recoloured face)"+ },+ "page_glbs": {+  "meaning": "<MPN>.glb and <MPN>.insertion.glb are the page's composite LED scenes (FR4 board, pads, silk, solder fillets, the LED, an emissive LED_lit skin, FOV cone and a point light). The README's inline viewer (Colby's viewer + Static / Pick&Place additions) loads <MPN>.insertion.glb and animates the LED being inserted (placed) into its footprint; <MPN>.glb is the older static composite with the earlier silkscreen. Only the LED geometry/colours were replaced; every other node is copied unchanged.",+  "files": {+   "IN-S42ATR.glb": {+    "sha256": "a25ac4525e799ce01efe076daa3e6fdcac6fe113a91362daa95c9b1cd3e74c9f",+    "bytes": 81960,+    "bytes_before": 263160,+    "tris_before": 3010,+    "tris_after": 1018,+    "build": {+     "out": "IN-S42ATR.glb",+     "bytes": 81960,+     "sha256": "a25ac4525e799ce01efe076daa3e6fdcac6fe113a91362daa95c9b1cd3e74c9f",+     "led_node": "IN-S42ATR",+     "old_led_tris": 2192,+     "new_led_tris": 200,+     "old_mesh_top_m": 0.0005000000237487257,+     "new_mesh_top_m": 0.0004499977179336184,+     "old_node_scale_z": 0.9,+     "new_node_scale_z": 1.0000051187820358,+     "rendered_height_mm": 0.45,+     "lens_material": {+      "name": "lens_red",+      "baseColor_linear": [+       0.5473,+       0.0545,+       0.0355,+       1+      ],+      "replaced": "lens_red",+      "old_baseColor": [+       0.4,+       0.02,+       0.02,+       1+      ]+     }+    }+   },+   "IN-S42ATR.insertion.glb": {+    "sha256": "1e114cf09a1296f737365cb72444fe99a93004441d18aeb0542b53f3b716493e",+    "bytes": 81828,+    "bytes_before": 264668,+    "tris_before": 3034,+    "tris_after": 1042,+    "build": {+     "out": "IN-S42ATR.insertion.glb",+     "bytes": 81828,+     "sha256": "1e114cf09a1296f737365cb72444fe99a93004441d18aeb0542b53f3b716493e",+     "led_node": "IN-S42ATR",+     "old_led_tris": 2192,+     "new_led_tris": 200,+     "old_mesh_top_m": 0.0005000000237487257,+     "new_mesh_top_m": 0.0004499977179336184,+     "old_node_scale_z": 0.9,+     "new_node_scale_z": 1.0000051187820358,+     "rendered_height_mm": 0.45,+     "lens_material": {+      "name": "lens_red",+      "baseColor_linear": [+       0.5473,+       0.0545,+       0.0355,+       1+      ],+      "replaced": "lens_red",+      "old_baseColor": [+       0.4,+       0.02,+       0.02,+       1+      ]+     }+    }+   }+  }+ },+ "hero_glb": {+  "file": "in-s42atr-hero.glb",+  "sha256": "c5ffb6f01e2976925de3bef84b0b5008746711c7d13d18ca3cb85ccccf8019d4",+  "bytes": 40124,+  "built_like": "john/eee-fk1v470p hero (component-reference-overlay.py + finalize.py), no laser etch (real parts are unmarked and too small)",+  "base": "step2glb convert of IN-S42ATR.step, wrapped in one root node IN-S42ATR with Z scale 1.0 (package height 0.45 mm, the same factor the page composites apply to this KiCad model); materials given a PBR finish (lens roughness 0.35 + clear coat)",+  "footprint": {+   "file": "IN-S42ATR.kicad_mod",+   "sha256": "51a0d8cfca22087f827757f4413e5de9f103d7ff15bc0eb9d11e39f7b006e4a4",+   "note": "the page's current footprint, with the cathode silkscreen bracket on pad 1 (K)"+  },+  "overlay_report": {+   "font_file": "JetBrainsMono-Regular.ttf",+   "font_sha256": "c1bfaf2ccf7c56dc25af0cc595c4c6a064a8ebf88930d4543805a9d90692e581",+   "generator_sha256": "aad792e4550350dc175c098711cc77e6574a2b1191191bcf57865fa882580e18",+   "source_glb_sha256": "c0443a97206bea7fc044b3e0399e8db132e421014f6f970208d100fecb59ebd1",+   "footprint_sha256": "51a0d8cfca22087f827757f4413e5de9f103d7ff15bc0eb9d11e39f7b006e4a4",+   "derivative_sha256": "3709640b7bcf862c224239e9b708fab2d1ccbe5d6d8e58a56243e727300418b1",+   "manufacturer_geometry_buffer_prefix_unchanged": true,+   "units": "metre",+   "upAxis": "Z",+   "plane_z_mm": -0.02,+   "pad_outline": "copper perimeter, not solder mask or paste",+   "dash_mm": 0.07,+   "gap_mm": 0.045,+   "silkscreen_path_count": 3,+   "silkscreen_opacity": 0.3,+   "pad_outline_opacity": 0.5,+   "pad_outline_color": "teal #00E6DC",+   "uninstantiated_reference_placeholder": "omitted from component display",+   "pad_name_opacity": 0.5,+   "pad_label_height_mm": 0.2,+   "pad_names": "signal names resolved through canonical pin-to-pad mapping; active-low overbars preserved",+   "library_sha256": "ef4ed1f5124dff0c21bb8d7928b183ed73dcfd94637cfe8443fb8fe91bb6e1a9",+   "pads": [+    {+     "number": "1",+     "drill_boundary_drawn": false,+     "signal_name": "K",+     "display_name": "K",+     "pad_number_fallback": false,+     "active_low_overbar": false,+     "center_mm": [+      -0.5,+      -0.0+     ],+     "copper_size_mm": [+      0.4,+      0.6+     ],+     "copper_outline_bounds_mm": [+      [+       -0.7,+       -0.3+      ],+      [+       -0.3,+       0.3+      ]+     ],+     "label_position_mm": [+      -1.0893333333333333,+      -0.0+     ]+    },+    {+     "number": "2",+     "drill_boundary_drawn": false,+     "signal_name": "A",+     "display_name": "A",+     "pad_number_fallback": false,+     "active_low_overbar": false,+     "center_mm": [+      0.5,+      -0.0+     ],+     "copper_size_mm": [+      0.4,+      0.6+     ],+     "copper_outline_bounds_mm": [+      [+       0.3,+       -0.3+      ],+      [+       0.7,+       0.3+      ]+     ],+     "label_position_mm": [+      1.0866666666666667,+      -0.0+     ]+    }+   ],+   "overlay_nodes": 3,+   "limitations": [+    "Nonphysical reference lines, not a manufacturing layer or manufacturer STEP geometry.",+    "Silkscreen text follows source text/placement but uses the supplied display font.",+    "Physical body can occlude artwork on the seating plane; inspect underside or hide the body."+   ]+  },+  "finalize_spec": {+   "component_label": "IN-S42ATR (coloured model)",+   "component_tooltip": "IN-S42ATR\nRed lens colour (dominant wavelength 631 nm); the real lens is clear",+   "label_tooltip": "Pad labels (signal names)\nreference art, not part of the component",+   "tooltips": {+    "IN-S42ATR (STEP body)": "IN-S42ATR\nRed lens colour (dominant wavelength 631 nm); the real lens is clear"+   },+   "asset_extras": {+    "adomHero": {+     "mpn": "IN-S42ATR",+     "kind": "component + footprint reference art",+     "board_use": false+    }+   }+  }+ },+ "hero_png": {+  "file": "screenshots/hero.png",+  "sha256": "d5736d4b4ebd5c50da01557e1923a3f439cb9b72d710c2d99eff498f41469931",+  "template": "hero-proposals/_tools/hero_template.html (Ray layout, shared with the other basic-part heroes), LED copy tools/hero_template_led.html (optional lens-reflection control only)",+  "render": {+   "glb": "/work/IN-S42ATR.hero-base.glb",+   "dir": [+    -0.9,+    -1.3,+    1.1+   ],+   "dist": 7.6,+   "title": "Red SMD LED 0402",+   "mpn": "IN-S42ATR",+   "cat": "0402 SMD Red LED · 2.1 V drop · 25 mA max",+   "mfr": "Inolux Corporation  •  0402",+   "pill": "ADOM BASIC PART",+   "foot": "Manufacturer datasheet   ·   KiCad library CAD, coloured lens   ·   Adom Wiki",+   "lens": "#C34235",+   "emis": 0.0,+   "lensEnv": 0.25,+   "noToneMap": false,+   "exposure": 0.62+  },+  "before": "../before/in-s42atr/before-hero.png (outside the page copy)"+ }+}\ No newline at end of file
provenance/tools/build_hero.pyadded+68
@@ -0,0 +1,68 @@+#!/usr/bin/env python3+"""Build <slug>-hero.glb for an LED page, the same way john/eee-fk1v470p's hero was built:+  1. base = `step2glb convert` of the coloured <MPN>.step (Z-up, metres), wrapped (JSON chunk only, the+     binary buffer untouched) in one root node named <MPN> whose Z scale gives the datasheet package height+     (the same factor the page's own composite GLBs already apply to this KiCad model);+  2. component-reference-overlay.py: teal dashed copper-pad outlines 50 %, the page's CURRENT F.SilkS+     (Colby's cathode bracket) 30 %, pad labels 50 %, from <MPN>.kicad_mod + a hero pin map;+  3. finalize.py: extras.adomLayer on component + the three reference layers, authored tooltips.+No laser etch (real parts are unmarked and far too small).+Usage: build_hero.py SLUG MPN S2G.glb --zscale Z --height-mm H --label-height MM --colour-note TEXT"""+import sys, os, json, struct, hashlib, subprocess, argparse+T = os.path.dirname(os.path.abspath(__file__))+ap = argparse.ArgumentParser(); ap.add_argument('slug'); ap.add_argument('mpn'); ap.add_argument('s2g')+ap.add_argument('--zscale', type=float, required=True); ap.add_argument('--height-mm', type=float, required=True)+ap.add_argument('--label-height', type=float, required=True); ap.add_argument('--colour-note', required=True)+ap.add_argument('--outdir'); ap.add_argument('--lens', required=True, help='lens sRGB r,g,b as in the STEP'); a = ap.parse_args()+page = os.path.join(os.path.dirname(T), a.slug); out_dir = a.outdir or page; prov = os.path.join(out_dir, 'provenance'); os.makedirs(prov, exist_ok=True)+work = os.path.join(os.path.dirname(T), 'work'); sha = lambda p: hashlib.sha256(open(p, 'rb').read()).hexdigest()++# 1. wrap+b = open(a.s2g, 'rb').read(); jn = struct.unpack_from('<I', b, 12)[0]; d = json.loads(b[20:20 + jn]); rest = b[20 + jn:]+sc = d['scenes'][d.get('scene', 0)]; kids = sc['nodes']+d['nodes'][kids[0]]['name'] = a.mpn + ' (STEP body)'+d['nodes'].append({'name': a.mpn, 'children': kids, 'scale': [1, 1, a.zscale]}); sc['nodes'] = [len(d['nodes']) - 1]+# PBR finish (step2glb materials carry only a base colour, so glTF defaults them to metallic 1 / roughness 1):+# lens = tinted epoxy (roughness 0.35 + clear coat), substrate matte, terminals gold-plated, cathode mark matte.+def lin(c): return c / 12.92 if c <= 0.04045 else ((c + 0.055) / 1.055) ** 2.4+LENS = [lin(float(v)) for v in a.lens.split(',')]+ROLES = {'lens': LENS, 'substrate': [0.7776, 0.7697, 0.6261], 'terminal': [0.7087, 0.5040, 0.2104], 'cathode_mark': [0.0946, 0.4200, 0.1666]}+FINISH = {'lens': (0, 0.35), 'substrate': (0, 0.6), 'terminal': (0.7, 0.35), 'cathode_mark': (0, 0.6)}+for m in d['materials']:+    bc = m['pbrMetallicRoughness']['baseColorFactor'][:3]+    role = next((r for r, k in ROLES.items() if max(abs(x - y) for x, y in zip(bc, k)) < 3e-3), None)+    assert role, bc+    m['name'] = role if role != 'lens' else 'lens'; mt, rg = FINISH[role]+    m['pbrMetallicRoughness'].update(metallicFactor=mt, roughnessFactor=rg)+    if role == 'lens':+        m.setdefault('extensions', {})['KHR_materials_clearcoat'] = {'clearcoatFactor': 1.0, 'clearcoatRoughnessFactor': 0.08}+        d.setdefault('extensionsUsed', []).append('KHR_materials_clearcoat')+j = json.dumps(d, separators=(',', ':')).encode(); j += b' ' * ((-len(j)) % 4)+base = os.path.join(work, f'{a.mpn}.hero-base.glb')+open(base, 'wb').write(struct.pack('<III', 0x46546C67, 2, 20 + len(j) + len(rest)) + struct.pack('<II', len(j), 0x4E4F534A) + j + rest)++# 2. pin map + overlay+lbr = json.load(open(os.path.join(page, f'{a.mpn}.adom-lbr.json')))+pins = [dict(p, electrical_type='passive') for p in lbr['symbol']['pins']]+pinmap = {'schema': 'adom/hero-pinmap@1', 'mpn': a.mpn, 'derived_from': {'file': f'{a.mpn}.adom-lbr.json', 'sha256': sha(os.path.join(page, f'{a.mpn}.adom-lbr.json'))},+          'note': 'Pin names and pin-to-pad connects copied from the adom-lbr part; electrical_type added (passive) for the hero only so the overlay labels pads by signal name. The library files are unchanged.',+          'symbol': {'pins': pins}, 'connect': lbr['connect']}+pm = os.path.join(prov, f'{a.slug}-hero.pinmap.json'); json.dump(pinmap, open(pm, 'w'), indent=1)+ov = os.path.join(work, f'{a.slug}-hero.overlay.glb')+r = subprocess.run([sys.executable, os.path.join(T, 'component-reference-overlay.py'), '--glb', base, '--footprint', os.path.join(page, f'{a.mpn}.kicad_mod'),+                    '--library', pm, '--font', os.path.join(T, 'JetBrainsMono-Regular.ttf'), '--out', ov, '--label-height', str(a.label_height)], capture_output=True, text=True)+assert r.returncode == 0, r.stderr+overlay_report = json.loads(open(ov[:-4] + '.overlay.json').read())++# 3. finalize+names = {p['number']: p['name'] for p in lbr['symbol']['pins']}+spec = {'component_label': f'{a.mpn} (coloured model)', 'component_tooltip': f'{a.mpn}\n{a.colour_note}',+        'label_tooltip': 'Pad labels (signal names)\nreference art, not part of the component',+        'tooltips': {a.mpn + ' (STEP body)': f'{a.mpn}\n{a.colour_note}'},+        'asset_extras': {'adomHero': {'mpn': a.mpn, 'kind': 'component + footprint reference art', 'board_use': False}}}+sp = os.path.join(work, f'{a.slug}-hero.finalize.json'); json.dump(spec, open(sp, 'w'))+hero = os.path.join(out_dir, f'{a.slug}-hero.glb')+r = subprocess.run([sys.executable, os.path.join(T, 'finalize.py'), ov, hero, sp], capture_output=True, text=True); assert r.returncode == 0, r.stderr+print(r.stdout.strip())+json.dump({'overlay_report': overlay_report, 'base_glb_sha256': sha(base), 'finalize_spec': spec, 'hero_sha256': sha(hero), 'hero_bytes': os.path.getsize(hero),+           'zscale': a.zscale, 'height_mm': a.height_mm}, open(os.path.join(work, f'{a.slug}-hero.build.json'), 'w'), indent=1)
provenance/tools/colour_led.pyadded+130
@@ -0,0 +1,130 @@+#!/usr/bin/env python3+"""Colour an LED STEP's lens (and give body/terminals colours where they have none) with XCAF.+Geometry, topology, product names and the file's leading comment block are kept; only face colours+change. Every coloured face gets BOTH XCAFDoc_ColorSurf and XCAFDoc_ColorGen. Colours are given in+sRGB (as written to COLOUR_RGB in the file) and passed to OCCT as Quantity_TOC_sRGB.++Families (classification is by the source model's own colours + geometry, never by guesswork):+  kicad-chip  KiCad LED_0402_1005Metric / LED_0603_1608Metric: one solid; ivory faces above the+              substrate top form the moulded lens block (the clear lens); ivory faces at/below it are+              the PCB substrate; gold = terminals; green = underside cathode mark.+  template    a colourless copy of a kicad-chip model with the same face order (IN-S42ATR is the KiCad+              0402 model scaled to 0.45 mm in Z and re-exported as B-splines): classes are copied from+              --template by face index after checking every face's X/Y extent matches.+  ws5050      KiCad LED_WS2812B_PLCC4_5.0x5.0mm: ivory = body, blue disc = cavity/die window, grey = leads.++Usage: colour_led.py SRC OUT --family F --lens R,G,B [--body R,G,B] [--term R,G,B] [--mark R,G,B]+                     [--template TEMPLATE.step] [--report report.json]"""+import sys, json, argparse, re+from OCP.STEPCAFControl import STEPCAFControl_Reader, STEPCAFControl_Writer+from OCP.STEPControl import STEPControl_AsIs+from OCP.TDocStd import TDocStd_Document+from OCP.TCollection import TCollection_ExtendedString+from OCP.XCAFDoc import XCAFDoc_DocumentTool, XCAFDoc_ColorType+from OCP.TDF import TDF_ChildIterator, TDF_Label+from OCP.Quantity import Quantity_Color, Quantity_TOC_sRGB+from OCP.Bnd import Bnd_Box+from OCP.BRepBndLib import BRepBndLib+from OCP.TopExp import TopExp_Explorer+from OCP.TopAbs import TopAbs_FACE++SURF, GEN = XCAFDoc_ColorType.XCAFDoc_ColorSurf, XCAFDoc_ColorType.XCAFDoc_ColorGen+KICAD_IVORY, KICAD_GOLD, KICAD_GREEN = (0.895, 0.891, 0.813), (0.859, 0.738, 0.496), (0.34, 0.68, 0.445)++def load(path):+    doc = TDocStd_Document(TCollection_ExtendedString("d"))+    r = STEPCAFControl_Reader(); r.SetColorMode(True); r.SetNameMode(True); r.SetLayerMode(True)+    assert r.ReadFile(path) == 1, path+    r.Transfer(doc)+    st = XCAFDoc_DocumentTool.ShapeTool_s(doc.Main()); ct = XCAFDoc_DocumentTool.ColorTool_s(doc.Main())+    free = []+    it = TDF_ChildIterator(st.Label(), False)+    while it.More():+        l = it.Value(); it.Next()+        if st.IsFree_s(l) and st.IsTopLevel(l): free.append(l)+    assert len(free) == 1 and not st.IsAssembly_s(free[0]), 'expected one simple part'+    return doc, st, ct, free[0]++def faces(st, ct, lab):+    out = []; ex = TopExp_Explorer(st.GetShape_s(lab), TopAbs_FACE)+    while ex.More():+        f = ex.Current(); ex.Next()+        b = Bnd_Box(); BRepBndLib.Add_s(f, b); mn, mx = b.CornerMin(), b.CornerMax()+        c = Quantity_Color(); col = None+        for t in (SURF, GEN):+            if ct.GetColor(f, t, c):+                r, g, bb = c.Values(Quantity_TOC_sRGB); col = (round(r, 3), round(g, 3), round(bb, 3)); break+        out.append(dict(face=f, col=col, mn=(mn.X(), mn.Y(), mn.Z()), mx=(mx.X(), mx.Y(), mx.Z())))+    return out++def near(a, b, tol=0.02): return a is not None and all(abs(x - y) < tol for x, y in zip(a, b))++def classify_kicad_chip(fs):+    ivory = [f for f in fs if near(f['col'], KICAD_IVORY)]+    ztop = max(f['mx'][2] for f in fs)+    # substrate top = the z of the small horizontal ivory faces beside the lens block+    zsub = min(f['mn'][2] for f in ivory if f['mn'][2] > 0.05 * ztop)+    cls = []+    for f in fs:+        if near(f['col'], KICAD_IVORY):+            lens = f['mn'][2] >= zsub - 1e-4 and f['mx'][2] > zsub + 0.02 * ztop+            cls.append('lens' if lens else 'substrate')+        elif near(f['col'], KICAD_GOLD): cls.append('terminal')+        elif near(f['col'], KICAD_GREEN): cls.append('cathode_mark')+        else: raise SystemExit(f'unexpected colour {f["col"]}')+    return cls, dict(z_top_mm=round(ztop, 4), z_substrate_top_mm=round(zsub, 4))++def classify_ws5050(fs):+    cls = []+    for f in fs:+        if near(f['col'], KICAD_IVORY): cls.append('body')+        elif near(f['col'], (0.15, 0.4, 0.73), 0.08) or near(f['col'], (0.02, 0.13, 0.49), 0.05): cls.append('window')+        else: cls.append('terminal')+    return cls, {}++def main():+    ap = argparse.ArgumentParser(); ap.add_argument('src'); ap.add_argument('out')+    ap.add_argument('--family', required=True, choices=['kicad-chip', 'template', 'ws5050'])+    ap.add_argument('--template'); ap.add_argument('--report')+    for k in ('lens', 'body', 'term', 'mark'): ap.add_argument('--' + k)+    a = ap.parse_args()+    rgb = lambda s: tuple(float(v) for v in s.split(',')) if s else None+    doc, st, ct, lab = load(a.src); fs = faces(st, ct, lab)+    info = {}+    if a.family == 'kicad-chip': cls, info = classify_kicad_chip(fs)+    elif a.family == 'ws5050': cls, info = classify_ws5050(fs)+    else:+        _, st2, ct2, lab2 = load(a.template); tf = faces(st2, ct2, lab2)+        assert len(tf) == len(fs), (len(tf), len(fs))+        for i, (f, t) in enumerate(zip(fs, tf)):   # same face order: X/Y extents must agree+            assert all(abs(f['mn'][k] - t['mn'][k]) < 2e-3 and abs(f['mx'][k] - t['mx'][k]) < 2e-3 for k in (0, 1)), i+        cls, info = classify_kicad_chip(tf); info['template'] = a.template.split('/')[-1]+        info['z_scale_vs_template'] = round(max(f['mx'][2] for f in fs) / max(f['mx'][2] for f in tf), 4)+    colours = {'lens': rgb(a.lens)}+    if a.family == 'ws5050':+        colours.update(body=rgb(a.body), window=rgb(a.lens), terminal=rgb(a.term)); colours.pop('lens')+    else:+        colours.update(substrate=rgb(a.body) or KICAD_IVORY, terminal=rgb(a.term) or KICAD_GOLD,+                       cathode_mark=rgb(a.mark) or KICAD_GREEN)+    counts = {}; changed = 0+    for f, c in zip(fs, cls):+        want = colours[c]; counts[c] = counts.get(c, 0) + 1+        if want is None or (f['col'] is not None and near(f['col'], want, 1e-3)): continue+        sub = TDF_Label()+        if not st.FindSubShape(lab, f['face'], sub): sub = st.AddSubShape(lab, f['face'])+        q = Quantity_Color(want[0], want[1], want[2], Quantity_TOC_sRGB)+        ct.SetColor(sub, q, SURF); ct.SetColor(sub, q, GEN); changed += 1+    w = STEPCAFControl_Writer(); w.SetColorMode(True); w.SetNameMode(True); w.SetLayerMode(True)+    w.Transfer(doc, STEPControl_AsIs); assert w.Write(a.out) == 1+    # keep the source's leading /* ... */ comment block (KiCad licence/attribution) in the HEADER+    src_txt = open(a.src, encoding='latin-1').read(); m = re.search(r'HEADER;\s*(/\*.*?\*/)', src_txt, re.S)+    if m:+        t = open(a.out, encoding='latin-1').read().replace('HEADER;', 'HEADER;\n' + m.group(1), 1)+        open(a.out, 'w', encoding='latin-1').write(t)+    rep = dict(src=a.src.split('/')[-1], out=a.out.split('/')[-1], family=a.family, faces=len(fs),+               faces_by_class=counts, faces_recoloured=changed,+               colours_srgb={k: v for k, v in colours.items()}, classification=info, kept_comment_block=bool(m))+    if a.report: json.dump(rep, open(a.report, 'w'), indent=1)+    print(json.dumps(rep))++if __name__ == '__main__': main()
provenance/tools/component-reference-overlay.pyadded+184
@@ -0,0 +1,184 @@+#!/usr/bin/env python3+"""Add nonphysical footprint reference artwork to a Z-up component GLB.+Original geometry buffers and source files are preserved. Units: GLB metres,+KiCad footprint millimetres with Y down. Glyph outlines use a supplied TrueType font.+"""+import argparse,json,re,math,struct,hashlib+from pathlib import Path+from fontTools.ttLib import TTFont+from fontTools.pens.basePen import BasePen+class Atom(str):pass++def parse(s):+ stack=[];root=None+ for t in re.findall(r'"(?:\\.|[^"\\])*"|[()]|[^\s()]+',s):+  if t=='(':+   a=[]+   if stack:stack[-1].append(a)+   else:root=a+   stack.append(a)+  elif t==')':stack.pop()+  else:stack[-1].append(json.loads(t) if t.startswith('"') else Atom(t))+ assert not stack+ return root+def dump(n):+ return '('+' '.join(map(dump,n))+')' if isinstance(n,list) else str(n) if isinstance(n,Atom) else json.dumps(n,ensure_ascii=False)+def fields(n,key):return [x for x in n if isinstance(x,list) and x and x[0]==key]+def field(n,key,default=None):return next(iter(fields(n,key)),default)+def xy(n,key):return tuple(map(float,field(n,key)[1:3]))+def circle(c,r,start=0,span=2*math.pi,count=48):return [(c[0]+r*math.cos(start+span*i/count),c[1]+r*math.sin(start+span*i/count)) for i in range(count+1)]+def rounded(w,h,r):+ out=[]+ for cx,cy,a in [(w/2-r,h/2-r,0),(-w/2+r,h/2-r,math.pi/2),(-w/2+r,-h/2+r,math.pi),(w/2-r,-h/2+r,math.pi*1.5)]:out+=circle((cx,cy),r,a,math.pi/2,8)+ return out+[out[0]]+def dashed(points,on=.07,off=.045):+ out=[];distance=0+ for a,b in zip(points,points[1:]):+  length=math.dist(a,b);pos=0+  while pos<length-1e-12:+   phase=distance%(on+off);take=min(length-pos,(on-phase) if phase<on else (on+off-phase))+   if take<1e-10:distance+=1e-9;continue+   if phase<on:+    out.append([(a[0]+(b[0]-a[0])*u/length,a[1]+(b[1]-a[1])*u/length) for u in [pos,pos+take]])+   distance+=take;pos+=take+ return out+class Flatten(BasePen):+ def __init__(self,g):super().__init__(g);self.paths=[];self.path=[]+ def _moveTo(self,p):self.path=[p]+ def _lineTo(self,p):self.path.append(p)+ def _curveToOne(self,a,b,c):+  p=self._getCurrentPoint()+  for i in range(1,9):+   t=i/8;self.path.append(tuple((1-t)**3*p[j]+3*(1-t)**2*t*a[j]+3*(1-t)*t*t*b[j]+t**3*c[j] for j in range(2)))+ def _qCurveToOne(self,a,b):+  p=self._getCurrentPoint()+  for i in range(1,9):+   t=i/8;self.path.append(tuple((1-t)**2*p[j]+2*(1-t)*t*a[j]+t*t*b[j] for j in range(2)))+ def _closePath(self):self.path.append(self.path[0]);self.paths.append(self.path);self.path=[]+ def _endPath(self):self.paths.append(self.path);self.path=[]+def main():+ ap=argparse.ArgumentParser();ap.add_argument('--glb',type=Path,required=True);ap.add_argument('--footprint',type=Path,required=True);ap.add_argument('--library',type=Path,required=True);ap.add_argument('--font',type=Path,required=True);ap.add_argument('--out',type=Path,required=True);ap.add_argument('--label-height',type=float,default=.17,help='pad label glyph height in mm (default .17, sized for fine-pitch ICs)');args=ap.parse_args()+ fp=parse(args.footprint.read_text());library=json.loads(args.library.read_text());pin_names={p['number']:p['name'] for p in library['symbol']['pins']};pad_names={}+ for c in library['connect']:+  name=pin_names[c['pin']]+  if c['pad'] in pad_names:assert pad_names[c['pad']]==name,'Ambiguous pad name mapping'+  pad_names[c['pad']]=name+ font=TTFont(args.font);glyphs=font.getGlyphSet();cmap=font.getBestCmap();em=font['head'].unitsPerEm+ def textpaths(text,at,height):+  paths=[];cursor=0+  for ch in text:+   name=cmap.get(ord(ch));assert name,repr(ch)+   pen=Flatten(glyphs);glyphs[name].draw(pen);paths.extend([[(x+cursor,y) for x,y in line] for line in pen.paths]);cursor+=glyphs[name].width+  scale=height/(em*.75)+  return [[(at[0]+(x-cursor/2)*scale,at[1]+(y-em*.35)*scale) for x,y in line] for line in paths]+ pads=[];padlines=[];silk=[];labels=[]+ for p in fields(fp,'pad'):+  if not any(x in field(p,'layers')[1:] for x in ['F.Cu','*.Cu']):continue+  number=p[1];at=xy(p,'at');size=xy(p,'size');angle=math.radians(-float(field(p,'at')[3]) if len(field(p,'at'))>3 else 0);shape=p[3]+  if shape=='roundrect':r=min(size)*float(field(p,'roundrect_rratio')[1]);outline=rounded(*size,r)+  elif shape=='rect':outline=rounded(*size,0)+  elif shape=='circle':outline=circle((0,0),size[0]/2)+  elif shape=='oval':outline=rounded(*size,min(size)/2)+  elif shape=='custom':+   from shapely.geometry import Polygon,Point,LineString,box+   from shapely.ops import unary_union+   shapes=[]+   anchor=field(field(p,'options',[]),'anchor',['anchor','rect'])[1]+   shapes.append(Point(0,0).buffer(size[0]/2) if anchor=='circle' else box(-size[0]/2,-size[1]/2,size[0]/2,size[1]/2))+   for pr in field(p,'primitives',[])[1:]:+    width=float(field(pr,'width',['width',0])[1])+    if pr[0]=='gr_poly':+     pts=[tuple(map(float,q[1:3])) for q in field(pr,'pts')[1:]];shapes.append(Polygon(pts).buffer(width/2))+    elif pr[0]=='gr_line':shapes.append(LineString([xy(pr,'start'),xy(pr,'end')]).buffer(width/2))+    elif pr[0]=='gr_circle':shapes.append(Point(*xy(pr,'center')).buffer(math.dist(xy(pr,'center'),xy(pr,'end'))+width/2))+    else:raise ValueError('Unsupported custom copper primitive '+pr[0])+   merged=unary_union(shapes);assert merged.geom_type=='Polygon','Disconnected custom copper pad requires explicit review';outline=list(merged.exterior.coords)+  else:raise ValueError('Unsupported pad shape '+shape)+  def transform(q):return (at[0]+q[0]*math.cos(angle)-q[1]*math.sin(angle),-(at[1]+q[0]*math.sin(angle)+q[1]*math.cos(angle)))+  outline=list(map(transform,outline));padlines+=dashed(outline)+  drill=field(p,'drill',[])+  if drill:+   dims=[float(v) for v in drill[1:] if not isinstance(v,list) and v!='oval'];off=field(drill,'offset',['offset',0,0]);center=(float(off[1]),float(off[2]))+   hole=rounded(dims[0],dims[1],min(dims)/2) if drill[1]=='oval' else circle((0,0),dims[0]/2)+   hole=[transform((x+center[0],y+center[1])) for x,y in hole];padlines+=dashed(hole)+  bounds=([min(q[i] for q in outline) for i in range(2)],[max(q[i] for q in outline) for i in range(2)])+  raw_name=pad_names.get(number,number) or number;+  if not raw_name:raise ValueError('No electrical mapping for copper pad '+number)+  active_low=bool(re.fullmatch(r'~\{[^}]+\}',raw_name));display_name=raw_name[2:-1] if active_low else raw_name+  unnamed_passive=len(library['symbol']['pins'])==2 and all(q['electrical_type']=='passive' for q in library['symbol']['pins']) and raw_name in ['', '~', number]+  if unnamed_passive:display_name=number+  if not display_name:raise ValueError('Missing signal name for pad '+number)+  glyphs_local=textpaths(display_name,(0,0),args.label_height);points=[q for line in glyphs_local for q in line];xlo=min(q[0] for q in points);xhi=max(q[0] for q in points)+  if active_low:+   bar_y=max(q[1] for q in points)+.025;glyphs_local.append([(xlo,bar_y),(xhi,bar_y)])+  padcenters=[xy(q,'at') for q in fields(fp,'pad') if any(v in field(q,'layers')[1:] for v in ['F.Cu','*.Cu'])]+  maxx=max(abs(v[0]) for v in padcenters) or 1;maxy=max(abs(v[1]) for v in padcenters) or 1+  vertical=abs(at[1])/maxy > abs(at[0])/maxx+.05+  if vertical:+   # Radial labels outside top/bottom rows, with text along the outward axis.+   glyphs_local=[[(-y,x) for x,y in line] for line in glyphs_local];points=[q for line in glyphs_local for q in line];xlo=min(q[0] for q in points);xhi=max(q[0] for q in points)+   dx=at[0];label_y=(bounds[1][1]+.32-min(q[1] for q in points)) if at[1]<0 else bounds[0][1]-.32-max(q[1] for q in points)+  else:+   dx=(bounds[0][0]-.32-xhi) if at[0]<0 else (bounds[1][0]+.32-xlo);label_y=-at[1]+  if abs(at[0])<.01 and abs(at[1])<.01:+   ys=[-xy(q,'at')[1]+sign*xy(q,'size')[1]/2 for q in fields(fp,'pad') for sign in [-1,1]];dx=0;label_y=min(ys)-.65+  labelat=(dx,label_y);labels += [[(x+dx,y+label_y) for x,y in line] for line in glyphs_local]+  pads.append({'number':number,'drill_boundary_drawn':bool(drill),'signal_name':raw_name,'display_name':display_name,'pad_number_fallback':unnamed_passive,'active_low_overbar':active_low,'center_mm':[at[0],-at[1]],'copper_size_mm':size,'copper_outline_bounds_mm':bounds,'label_position_mm':labelat})+ for p in fp:+  if not isinstance(p,list) or field(p,'layer')!=['layer','F.SilkS']:continue+  kind=p[0]+  if kind=='fp_line':silk.append([(x,-y) for x,y in [xy(p,'start'),xy(p,'end')]])+  elif kind=='fp_circle':+   c=xy(p,'center');e=xy(p,'end');silk.append([(x,-y) for x,y in circle(c,math.dist(c,e))])+  elif kind=='fp_rect':+   a,b=xy(p,'start'),xy(p,'end');silk.append([(x,-y) for x,y in [a,(b[0],a[1]),b,(a[0],b[1]),a]])+  elif kind=='fp_poly':+   points=[tuple(map(float,q[1:3])) for q in field(p,'pts')[1:]];silk.append([(x,-y) for x,y in points+[points[0]]])+  elif kind=='fp_arc':+   import numpy as np+   a,m,z=[np.array(xy(p,k)) for k in ['start','mid','end']];center=np.linalg.solve(2*np.array([m-a,z-a]),np.array([m@m-a@a,z@z-a@a]));rad=float(np.linalg.norm(a-center));t0,t1,t2=[math.atan2(*(v-center)[::-1]) for v in [a,m,z]];span=(t2-t0)%(2*math.pi)+   if (t1-t0)%(2*math.pi)>span:span-=2*math.pi+   silk.append([(x,-y) for x,y in circle(center,rad,t0,span,48)])+  elif kind=='property':+   # Identity placeholders/hidden properties are not physical footprint silk.+   if field(p,'hide') or 'hide' in p or p[1]=='Reference' or p[2] in ['REF**','REF*','${REFERENCE}']:continue+   at=xy(p,'at');effects=field(p,'effects');height=float(field(field(effects,'font'),'size')[2]);silk+=textpaths(p[2],(at[0],-at[1]),height)+  elif kind=='fp_text':+   if 'hide' in p or (p[1]=='reference' and p[2] in ['REF**','REF*','${REFERENCE}']):continue+   at=xy(p,'at');effects=field(p,'effects');height=float(field(field(effects,'font'),'size')[2]);silk+=textpaths(p[2],(at[0],-at[1]),height)+  else:raise ValueError('Unsupported silk primitive '+kind)+ b=args.glb.read_bytes();jn,jt=struct.unpack_from('<II',b,12);d=json.loads(b[20:20+jn]);bn,bt=struct.unpack_from('<II',b,20+jn);assert bt==0x004e4942+ original=b[28+jn:28+jn+bn];binary=bytearray(original);assert len(d['buffers'])==1 and 'uri' not in d['buffers'][0]+ ext=d.setdefault('extensionsUsed',[])+ if 'KHR_materials_unlit' not in ext:ext.append('KHR_materials_unlit')+ parent={'name':'Adom reference artwork (nonphysical)','children':[],'extras':{'physical':False,'purpose':'footprint copper outlines, silkscreen and pad identifiers','sourceFootprint':args.footprint.name,'units':'metre','upAxis':'Z'}}+ parentid=len(d['nodes']);d['nodes'].append(parent)+ roots=d['scenes'][d.get('scene',0)]['nodes'];poses=[i for i in roots if d['nodes'][i].get('name','').startswith('Adom.Hero.')]+ if len(poses)==1:d['nodes'][poses[0]].setdefault('children',[]).append(parentid)+ elif not poses:roots.append(parentid)+ else:raise ValueError('Ambiguous hero presentation transform')+ def add(name,paths,color,alpha,width):+  vertices=[];z=-.00002+  for path in paths:+   for a,c in zip(path,path[1:]):+    length=math.dist(a,c)+    if length<1e-10:continue+    nx=-(c[1]-a[1])/length*width/2;ny=(c[0]-a[0])/length*width/2+    quad=[(a[0]+nx,a[1]+ny),(a[0]-nx,a[1]-ny),(c[0]-nx,c[1]-ny),(c[0]+nx,c[1]+ny)]+    for i in [0,1,2,0,2,3]:vertices.append((quad[i][0]/1000,quad[i][1]/1000,z))+  if not vertices:return+  binary.extend(b'\0'*((-len(binary))%4));offset=len(binary);raw=b''.join(struct.pack('<fff',*v) for v in vertices);binary.extend(raw)+  bv=len(d['bufferViews']);d['bufferViews'].append({'buffer':0,'byteOffset':offset,'byteLength':len(raw),'target':34962})+  ac=len(d['accessors']);d['accessors'].append({'bufferView':bv,'componentType':5126,'count':len(vertices),'type':'VEC3','min':[min(v[i] for v in vertices) for i in range(3)],'max':[max(v[i] for v in vertices) for i in range(3)]})+  material=len(d['materials']);d['materials'].append({'name':name,'pbrMetallicRoughness':{'baseColorFactor':color+[alpha],'metallicFactor':0,'roughnessFactor':1},'alphaMode':'BLEND' if alpha<1 else 'OPAQUE','doubleSided':True,'extensions':{'KHR_materials_unlit':{}},'extras':{'referenceArtwork':True,'opacity':alpha}})+  mesh=len(d['meshes']);d['meshes'].append({'name':name,'primitives':[{'attributes':{'POSITION':ac},'material':material,'mode':4}]})+  node=len(d['nodes']);d['nodes'].append({'name':name,'mesh':mesh,'extras':{'physical':False}});parent['children'].append(node)+ add('Footprint pads - teal dashed outlines - 50 percent opacity',padlines,[0,.902,.863],.5,.015)+ add('Silkscreen reference lines - 30 percent opacity',silk,[.92,.96,1],.3,.012)+ add('Signal names - 50 percent opacity',labels,[.92,.96,1],.5,.009)+ d['buffers'][0]['byteLength']=len(binary);assert binary[:len(original)]==original+ j=json.dumps(d,separators=(',',':')).encode();j+=b' '*((-len(j))%4);binary.extend(b'\0'*((-len(binary))%4))+ out=struct.pack('<III',0x46546c67,2,28+len(j)+len(binary))+struct.pack('<II',len(j),0x4e4f534a)+j+struct.pack('<II',len(binary),0x004e4942)+binary;args.out.write_bytes(out)+ report={'font_file':args.font.name,'font_sha256':hashlib.sha256(args.font.read_bytes()).hexdigest(),'generator_sha256':hashlib.sha256(Path(__file__).read_bytes()).hexdigest(),'source_glb_sha256':hashlib.sha256(b).hexdigest(),'footprint_sha256':hashlib.sha256(args.footprint.read_bytes()).hexdigest(),'derivative_sha256':hashlib.sha256(out).hexdigest(),'manufacturer_geometry_buffer_prefix_unchanged':True,'units':'metre','upAxis':'Z','plane_z_mm':-.02,'pad_outline':'copper perimeter, not solder mask or paste','dash_mm':.07,'gap_mm':.045,'silkscreen_path_count':len(silk),'silkscreen_opacity':.3,'pad_outline_opacity':.5,'pad_outline_color':'teal #00E6DC','uninstantiated_reference_placeholder':'omitted from component display','pad_name_opacity':.5,'pad_label_height_mm':args.label_height,'pad_names':'signal names resolved through canonical pin-to-pad mapping; active-low overbars preserved','library_sha256':hashlib.sha256(args.library.read_bytes()).hexdigest(),'pads':pads,'overlay_nodes':len(parent['children']),'limitations':['Nonphysical reference lines, not a manufacturing layer or manufacturer STEP geometry.','Silkscreen text follows source text/placement but uses the supplied display font.','Physical body can occlude artwork on the seating plane; inspect underside or hide the body.']}+ args.out.with_suffix('.overlay.json').write_text(json.dumps(report,indent=2)+'\n');print(json.dumps(report))+if __name__=='__main__':main()
provenance/tools/finalize.pyadded+31
@@ -0,0 +1,31 @@+#!/usr/bin/env python3+"""Hero GLB finishing pass (JSON chunk only; the binary buffer is untouched):+- the adom-chip-laser inlay node (found by its material colour) becomes Adom.LaserEtch.MPN with provenance extras+- the physical model root, pad outlines, silkscreen and pad labels are declared as extras.adomLayer+- authored extras.tooltip on physical meshes (vendor CAD names such as NAUO3 are not reader-facing)+Usage: finalize.py in.glb out.glb spec.json"""+import json, struct, sys, hashlib+src, dst, spec = sys.argv[1], sys.argv[2], json.load(open(sys.argv[3]))+b = open(src, 'rb').read(); jn = struct.unpack_from('<I', b, 12)[0]; d = json.loads(b[20:20+jn]); rest = b[20+jn:]+nodes = d['nodes']; roots = d['scenes'][d.get('scene', 0)]['nodes']+def near(c, t): return all(abs(x-y) < 2e-3 for x, y in zip(c, t))+etch_mats = [i for i, m in enumerate(d['materials']) if spec.get('etch_rgb') and near(m.get('pbrMetallicRoughness', {}).get('baseColorFactor', [9])[:3], spec['etch_rgb'])]+found = []+for n in nodes:+    if 'mesh' in n and etch_mats and all(p.get('material') in etch_mats for p in d['meshes'][n['mesh']]['primitives']):+        n['name'] = 'Adom.LaserEtch.MPN'; n['extras'] = dict(n.get('extras', {}), **spec['etch_extras']); found.append(n)+if spec.get('etch_rgb'): assert len(found) == 1, f'etch node match {len(found)}'+for i, n in enumerate(nodes):+    nm = n.get('name', '')+    if nm.startswith('Footprint pads'): n['extras'].update(adomLayer={'key': 'fp_pad_outlines', 'label': 'Pad outlines', 'group': 'Footprint (reference art)'}, tooltip='Footprint copper pad outline\nreference art, not part of the component')+    elif nm.startswith('Silkscreen reference'): n['extras'].update(adomLayer={'key': 'fp_silkscreen', 'label': 'Silkscreen', 'group': 'Footprint (reference art)'}, tooltip='Footprint silkscreen\nreference art, not part of the component')+    elif nm.startswith('Signal names'): n['extras'].update(adomLayer={'key': 'fp_pad_labels', 'label': 'Pad labels', 'group': 'Footprint (reference art)'}, tooltip=spec['label_tooltip'])+    for key, tip in spec.get('tooltips', {}).items():+        if nm == key: n.setdefault('extras', {})['tooltip'] = tip+phys = [r for r in roots if not nodes[r].get('name', '').startswith(('Adom reference artwork', 'Adom.LaserEtch'))]+assert len(phys) == 1, phys+nodes[phys[0]].setdefault('extras', {}).update(adomLayer={'key': 'component', 'label': spec['component_label'], 'group': 'Component'}, tooltip=spec['component_tooltip'])+d.setdefault('asset', {}).setdefault('extras', {}).update(spec.get('asset_extras', {}))+j = json.dumps(d, separators=(',', ':')).encode(); j += b' ' * ((-len(j)) % 4)+out = struct.pack('<III', 0x46546c67, 2, 20 + len(j) + len(rest)) + struct.pack('<II', len(j), 0x4e4f534a) + j + rest+open(dst, 'wb').write(out); print(dst, len(out), hashlib.sha256(out).hexdigest()[:16], 'etch nodes', len(found))
provenance/tools/gltfio.pyadded+74
@@ -0,0 +1,74 @@+"""Minimal GLB reader/writer (numpy only): read accessors to float/int arrays (dequantizing normalized+types, honouring byteStride), and re-pack a document whose primitives carry numpy arrays."""+import json, struct+import numpy as np++CT = {5120: np.int8, 5121: np.uint8, 5122: np.int16, 5123: np.uint16, 5125: np.uint32, 5126: np.float32}+NC = {'SCALAR': 1, 'VEC2': 2, 'VEC3': 3, 'VEC4': 4, 'MAT4': 16}++def load(path):+    b = open(path, 'rb').read(); assert b[:4] == b'glTF'+    jn = struct.unpack_from('<I', b, 12)[0]; d = json.loads(b[20:20 + jn])+    off = 20 + jn; binc = b''+    if off < len(b):+        bl = struct.unpack_from('<I', b, off)[0]; binc = b[off + 8: off + 8 + bl]+    return d, binc++def accessor(d, binc, i):+    a = d['accessors'][i]; bv = d['bufferViews'][a['bufferView']]; dt = np.dtype(CT[a['componentType']])+    n, k = a['count'], NC[a['type']]; start = bv.get('byteOffset', 0) + a.get('byteOffset', 0)+    stride = bv.get('byteStride', dt.itemsize * k)+    raw = np.frombuffer(binc, dtype=np.uint8, count=stride * (n - 1) + dt.itemsize * k, offset=start)+    arr = np.lib.stride_tricks.as_strided(raw, shape=(n, dt.itemsize * k), strides=(stride, 1)).copy()+    arr = arr.view(dt).reshape(n, k)+    if a.get('normalized'):+        arr = np.maximum(arr.astype(np.float64) / np.iinfo(dt).max, -1.0)+    return arr if k > 1 else arr[:, 0]++def node_matrix(n):+    if 'matrix' in n: return np.array(n['matrix'], dtype=np.float64).reshape(4, 4).T+    t = np.array(n.get('translation', [0, 0, 0])); s = np.array(n.get('scale', [1, 1, 1])); x, y, z, w = n.get('rotation', [0, 0, 0, 1])+    R = np.array([[1-2*(y*y+z*z), 2*(x*y-z*w), 2*(x*z+y*w)], [2*(x*y+z*w), 1-2*(x*x+z*z), 2*(y*z-x*w)], [2*(x*z-y*w), 2*(y*z+x*w), 1-2*(x*x+y*y)]])+    M = np.eye(4); M[:3, :3] = R * s; M[:3, 3] = t; return M++def save(path, d, arrays):+    """d: glTF json WITHOUT accessors/bufferViews/buffers; primitives reference keys into `arrays`+    (dict key -> (np.ndarray, target)); keys are replaced with accessor indices."""+    blob = bytearray(); d['accessors'] = []; d['bufferViews'] = []; idx = {}+    def add(key):+        if key in idx: return idx[key]+        arr, target = arrays[key]+        if arr.dtype.kind == 'f': arr = arr.astype(np.float32); ct = 5126+        else:+            arr = arr.astype(np.uint32 if arr.max() > 65535 else np.uint16); ct = 5125 if arr.dtype == np.uint32 else 5123+        while len(blob) % 4: blob.append(0)+        off = len(blob); blob.extend(arr.tobytes())+        bv = {'buffer': 0, 'byteOffset': off, 'byteLength': arr.nbytes}+        if target: bv['target'] = target+        d['bufferViews'].append(bv)+        k = 1 if arr.ndim == 1 else arr.shape[1]+        acc = {'bufferView': len(d['bufferViews']) - 1, 'componentType': ct, 'count': int(arr.shape[0]),+               'type': {1: 'SCALAR', 2: 'VEC2', 3: 'VEC3', 4: 'VEC4'}[k]}+        if key.endswith('POSITION'): acc['min'] = [float(v) for v in arr.min(0)]; acc['max'] = [float(v) for v in arr.max(0)]+        d['accessors'].append(acc); idx[key] = len(d['accessors']) - 1; return idx[key]+    for m in d['meshes']:+        for p in m['primitives']:+            p['attributes'] = {k: add(v) for k, v in p['attributes'].items()}+            if 'indices' in p: p['indices'] = add(p['indices'])+    while len(blob) % 4: blob.append(0)+    d['buffers'] = [{'byteLength': len(blob)}]+    j = json.dumps(d, separators=(',', ':')).encode(); j += b' ' * ((-len(j)) % 4)+    out = struct.pack('<III', 0x46546C67, 2, 28 + len(j) + len(blob)) + struct.pack('<II', len(j), 0x4E4F534A) + j + struct.pack('<II', len(blob), 0x004E4942) + bytes(blob)+    open(path, 'wb').write(out); return len(out)++def explode(d, binc):+    """Turn every primitive's accessors into keys of an arrays dict (for re-saving unchanged meshes)."""+    arrays = {}+    for mi, m in enumerate(d['meshes']):+        for p in m['primitives']:+            for k, a in list(p['attributes'].items()):+                key = f'a{a}_{k}'; arrays[key] = (accessor(d, binc, a), 34962); p['attributes'][k] = key+            if 'indices' in p:+                key = f'a{p["indices"]}_IDX'; arrays[key] = (accessor(d, binc, p['indices']), 34963); p['indices'] = key+    for k in ('accessors', 'bufferViews', 'buffers'): d.pop(k, None)+    return arrays
provenance/tools/hero_template_led.htmladded+68
@@ -0,0 +1,68 @@+<!doctype html><html><head><meta charset="utf-8"><title>Hero</title>+<style>+@font-face{font-family:FG;src:url(/_tools/fonts/FamiljenGrotesk-Variable.woff2) format('woff2');font-weight:400 700}+@font-face{font-family:JBM;src:url(/_tools/fonts/JetBrainsMono-Regular.woff2) format('woff2');font-weight:400}+@font-face{font-family:JBM;src:url(/_tools/fonts/JetBrainsMono-Bold.woff2) format('woff2');font-weight:700}+html,body{margin:0;width:1920px;height:1200px;overflow:hidden;background:#0c1117}+body{position:relative;font-family:FG,sans-serif;color:#eef2f6;background:radial-gradient(ellipse 60% 70% at 18% 30%,#121a22 0%,#0c1117 70%)}+.bar{position:absolute;left:0;top:0;right:0;height:8px;background:linear-gradient(90deg,#1fd6c9,#3aa0ff)}+.glow{position:absolute;left:880px;top:80px;width:1100px;height:1060px;border-radius:50%;background:radial-gradient(closest-side,rgba(40,200,190,.20),rgba(40,160,190,.08) 55%,rgba(12,17,23,0) 100%)}+canvas{position:absolute;right:0;top:0;width:1100px;height:1200px;z-index:1}+.left{position:absolute;left:124px;top:150px;width:800px;z-index:2}+.kicker{font-family:JBM;font-size:28px;letter-spacing:.24em;color:#27d3c6;margin-bottom:40px}+h1{font-weight:700;margin:0 0 30px;line-height:1.02;letter-spacing:-.01em;white-space:nowrap}+.mpn{font-family:JBM;font-weight:700;font-size:44px;color:#cfe0ea;margin:-6px 0 26px;letter-spacing:.02em}+.cat{font-size:40px;line-height:1.25;white-space:nowrap;color:#dfe6ec;margin-bottom:22px}+.mfr{font-size:38px;color:#98a4b0}+.pill{display:inline-block;margin-top:44px;padding:14px 30px;border:2px solid rgba(39,211,198,.55);border-radius:999px;font-family:JBM;font-size:24px;letter-spacing:.18em;color:#27d3c6}+.foot{position:absolute;z-index:2;left:124px;bottom:78px;font-family:JBM;font-size:27px;color:#5f6b77;letter-spacing:.02em}+</style>+<script type="importmap">{"imports":{"three":"https://cdn.jsdelivr.net/npm/[email protected]/build/three.module.js","three/addons/":"https://cdn.jsdelivr.net/npm/[email protected]/examples/jsm/"}}</script>+</head><body>+<div class="bar"></div><div class="glow"></div>+<div class="left">+ <div class="kicker">COMPONENT</div>+ <h1 id="title"></h1>+ <div class="mpn" id="mpn"></div>+ <div class="cat" id="cat"></div>+ <div class="mfr" id="mfr"></div>+ <div id="pillwrap"></div>+</div>+<div class="foot" id="foot"></div>+<script type="module">+import * as THREE from 'three';+import {GLTFLoader} from 'three/addons/loaders/GLTFLoader.js';+import {RoomEnvironment} from 'three/addons/environments/RoomEnvironment.js';+const C = __CFG__;+const t = document.getElementById('title'); t.textContent = C.title;+document.getElementById('mpn').textContent = C.mpn || ''; if (!C.mpn) document.getElementById('mpn').remove();+document.getElementById('cat').textContent = C.cat; document.getElementById('mfr').textContent = C.mfr;+if (C.pill) document.getElementById('pillwrap').innerHTML = '<div class="pill">' + C.pill + '</div>';+document.getElementById('foot').textContent = C.foot;+await document.fonts.ready;+let fs = 128; t.style.fontSize = fs + 'px'; while (t.scrollWidth > 800 && fs > 60) { fs -= 2; t.style.fontSize = fs + 'px'; }+// led-pass: the spec line is nowrap too; shrink it to the same 800 px column so it never runs under the part+const ct = document.getElementById('cat'); let cs = 40; while (ct.scrollWidth > 800 && cs > 26) { cs -= 1; ct.style.fontSize = cs + 'px'; }+const W = 1100, H = 1200;+const r = new THREE.WebGLRenderer({antialias: true, alpha: true, preserveDrawingBuffer: true}); r.setPixelRatio(1); r.setSize(W, H);+r.toneMapping = C.noToneMap ? THREE.NoToneMapping : THREE.NeutralToneMapping; r.toneMappingExposure = C.exposure || 1.0; r.setClearColor(0x000000, 0);+document.body.appendChild(r.domElement);+const scene = new THREE.Scene();+scene.environment = new THREE.PMREMGenerator(r).fromScene(new RoomEnvironment(), 0.04).texture;+const key = new THREE.DirectionalLight(0xffffff, 1.6); key.position.set(-2, -3, 6); scene.add(key);+const rim = new THREE.DirectionalLight(0x9fe8ff, 0.6); rim.position.set(3, 4, 2); scene.add(rim);+const g = await new GLTFLoader().loadAsync(C.glb); scene.add(g.scene); g.scene.updateMatrixWorld(true);+// led-pass addition (off unless C.lens is set): the LED lens material (matched by its base colour) gets a slight+// self-glow in its own colour and a weaker environment reflection, so the lens hue is not washed toward white.+let lensMats = 0;+if (C.lens) { const L = new THREE.Color(C.lens); g.scene.traverse(o => { if (o.isMesh) for (const m of [].concat(o.material)) {+  if (Math.abs(m.color.r-L.r)+Math.abs(m.color.g-L.g)+Math.abs(m.color.b-L.b) < 0.02) { m.emissive = L.clone(); m.emissiveIntensity = C.emis ?? 0.35; m.envMapIntensity = C.lensEnv ?? 0.3; lensMats++; } } }); }+document.body.dataset.lensMats = lensMats;+const box = new THREE.Box3().setFromObject(g.scene); const c = box.getCenter(new THREE.Vector3()); const s = box.getSize(new THREE.Vector3());+const R = s.length() / 2;+const cam = new THREE.PerspectiveCamera(22, W / H, R / 50, R * 50); cam.up.set(0, 0, 1);+const dir = new THREE.Vector3(...C.dir).normalize();+cam.position.copy(c).addScaledVector(dir, R * (C.dist || 3.3)); cam.lookAt(c);+r.render(scene, cam);+document.body.dataset.ready = 1;+</script></body></html>
provenance/tools/led_colour.pyadded+79
@@ -0,0 +1,79 @@+#!/usr/bin/env python3+"""Lens colours for the Adom basic-part LEDs (second pass, after John's review on 2026-09-30:+"a bit less saturated so they feel a bit more real", "match the nanometer wavelength", "amber looks super red").++Method (OKLCh, sRGB D65):+  1. hue    = OKLab hue of the in-gamut sRGB colour whose dominant wavelength is EXACTLY the part's typical+              lambda_d from the datasheet table (page recorded below): the D65 white -> spectral-locus line+              (CIE 1931 2-deg) clipped at the sRGB gamut edge. (The OKLab hue of the raw spectral colour is not+              used: OKLab is unreliable that far outside sRGB and turns 470 nm cyan.) Reds whose lambda_d lies+              beyond the sRGB red primary (lambda_d ~611 nm) take the red primary's hue, 29.2 deg: sRGB cannot+              show a redder hue, and clipping along the white line would drift them toward rose.+  2. chroma = SAT x the gamut-cusp chroma at that hue (the most saturated sRGB colour of that hue), SAT = 0.65,+              then reduced further only if needed to stay inside sRGB at the chosen lightness.+  3. lightness L: red 0.60 (631 nm 0.56, darker, since sRGB cannot separate 622 and 631 by hue), amber 0.72, green 0.74, blue 0.55, so the lens reads as tinted epoxy, not paint.+  Amber exception: the OKLab hue of 605 nm (35.6 deg) sits only ~10 deg from the red parts (24-26 deg) and+  renders as coral-red. John asked for amber to read clearly amber-orange, between red and yellow, so the+  amber DISPLAY hue is 60 deg at L 0.76: midway between the red parts (29.2 deg) and how a yellow LED reads on+  screen (~90 deg; note the lambda_d-exact colour of the series' 591 nm yellow sibling is itself only 52.7 deg,+  i.e. sRGB orange, which is the whole problem with long-wave colours on sRGB). First try (47 deg, L 0.72)+  still rendered terracotta next to the red part. lambda_d 605 nm is still what is recorded; the hue shift is a display choice, stated.+  White (phosphor-converted InGaN): the lens is the YAG phosphor, drawn as a pale warm yellow, low chroma+  (OKLCh L 0.90, C 0.075, h 95); the emission chromaticity is recorded, not drawn.+Writes colours.tsv (slug, MPN, family, lambda_d, sRGB) and colours.json (full provenance)."""+import json, math+import wl2srgb as w+w.LOC.update({570: (.4441, .5547), 575: (.4788, .5202), 580: (.5125, .4866), 585: (.5448, .4544), 590: (.5752, .4242)})+SAT = 0.65+PARTS = [  # slug, MPN, family, lambda_d (typ) or CIE xy, datasheet page, table+    ('in-s42ata', 'IN-S42ATA', 'kicad-chip', 605, 'IN-S42AT series V1.1 p.3 Electrical Characteristics, lambda_D typ'),+    ('in-s42atb', 'IN-S42ATB', 'kicad-chip', 470, 'IN-S42AT series V1.1 p.3, lambda_D typ'),+    ('in-s42atg', 'IN-S42ATG', 'kicad-chip', 525, 'IN-S42AT series V1.1 p.3, lambda_D typ'),+    ('in-s42atr', 'IN-S42ATR', 'template', 631, 'IN-S42AT series V1.1 p.3, lambda_D typ'),+    ('in-s42atuw', 'IN-S42ATUW', 'kicad-chip', (0.295, 0.30), 'IN-S42AT series V1.1 p.3, CIE x/y (white, no lambda_D)'),+    ('in-s63bta', 'IN-S63BTA', 'kicad-chip', 605, 'IN-S63BT series (2022-03-10) p.3 Electrical Characteristics, lambda_D typ'),+    ('in-s63bt5b', 'IN-S63BT5B', 'kicad-chip', 468, 'IN-S63BT series p.3, lambda_D typ (5 mA test)'),+    ('in-s63btg', 'IN-S63BTG', 'kicad-chip', 527, 'IN-S63BT series p.3, lambda_D typ'),+    ('in-s63btr', 'IN-S63BTR', 'kicad-chip', 622, 'IN-S63BT series p.3, lambda_D typ'),+    ('in-s63bt5uw', 'IN-S63BT5UW', 'kicad-chip', (0.27, 0.255), 'IN-S63BT series p.3, CIE x/y (white, 5 mA, no lambda_D)'),+]+def ok2srgb(L, C, h):+    a, b = C * math.cos(math.radians(h)), C * math.sin(math.radians(h)); return w.ok2lin([L, a, b])+def inside(lin): return all(-1e-7 <= c <= 1 + 1e-7 for c in lin)+def max_c(L, h):+    lo, hi = 0.0, 0.5+    for _ in range(50):+        m = (lo + hi) / 2+        if inside(ok2srgb(L, m, h)): lo = m+        else: hi = m+    return lo+def cusp(h): return max((max_c(0.2 + 0.78 * i / 399, h), 0.2 + 0.78 * i / 399) for i in range(400))+out = []+for slug, mpn, fam, lam, src in PARTS:+    if isinstance(lam, tuple):+        L, C, h = 0.90, 0.075, 95.0; note = 'white: pale warm YAG-phosphor yellow, low chroma (emission CIE x/y recorded, not drawn)'+        spectral_h = None+    else:+        s_edge = w.along_white(w.xy2lin(*w.locus(lam)))+        dec = lambda c: c / 12.92 if c <= 0.04045 else ((c + 0.055) / 1.055) ** 2.4+        Lk, a, b = w.lin2ok([dec(c) for c in s_edge]); spectral_h = math.degrees(math.atan2(b, a)) % 360; h = spectral_h+        L = {'B': 0.55, 'G': 0.74, 'A': 0.76, 'R': 0.60}[mpn[-1]]+        note = f'hue = OKLab hue ({h:.1f} deg) of the lambda_d-exact gamut-edge colour for {lam} nm'+        if mpn.endswith('R') and lam > 625: L = 0.56  # 631 nm: same displayable hue as 622 nm, drawn darker (lower luminous efficacy)+        if mpn.endswith('R') and lam > 611: h = 29.2; note = f'red: lambda_d {lam} nm is beyond the sRGB red primary; hue = red primary 29.2 deg (lambda_d-exact edge colour would be {spectral_h:.1f} deg, rose)'+        if mpn.endswith('A'): h = 60.0; note = f'amber: display hue 60 deg, midway between red (29.2) and on-screen yellow (~90) (lambda_d-exact hue for 605 nm is {spectral_h:.1f} deg, reads red); see docstring'+        Cc, Lc = cusp(h); C = min(SAT * Cc, max_c(L, h))+        Cc, Lc = cusp(h); C = min(SAT * Cc, max_c(L, h))+    lin = [min(1, max(0, c)) for c in ok2srgb(L, C, h)]; srgb = [round(w.enc(c), 4) for c in lin]+    hexs = '#%02X%02X%02X' % tuple(round(c * 255) for c in srgb)+    out.append(dict(slug=slug, mpn=mpn, family=fam, dominant_wavelength_nm=None if isinstance(lam, tuple) else lam,+                    cie_xy=list(lam) if isinstance(lam, tuple) else None, datasheet=src,+                    spectral_oklab_hue_deg=None if spectral_h is None else round(spectral_h, 1),+                    oklch=[round(L, 3), round(C, 4), round(h, 1)], srgb=srgb, hex=hexs, note=note))+    print(f'{mpn:12s} {str(lam):14s} oklch({L:.2f} {C:.3f} {h:5.1f}) {hexs}  {note}')+json.dump(dict(method=__doc__, saturation_of_cusp=SAT, parts=out), open('colours.json', 'w'), indent=1, ensure_ascii=False)+with open('colours.tsv', 'w') as f:+    for o in out:+        wl = o['dominant_wavelength_nm'] or ','.join(str(v) for v in o['cie_xy'])+        f.write('\t'.join([o['slug'], o['mpn'], o['family'], str(wl), ','.join(str(v) for v in o['srgb'])]) + '\n')+    f.write('ws2812b-2020\tWS2812B-2020\tws5050\tRGB\t0.82,0.84,0.86\n')
provenance/tools/make_led_hero.pyadded+18
@@ -0,0 +1,18 @@+#!/usr/bin/env python3+"""Hero PNG for an LED page with the shared Ray-layout template (hero-proposals/_tools/hero_template.html, LED copy+hero_template_led.html adds the optional lens glow). Usage: make_led_hero.py SLUG MPN LENS_R,G,B GLB OUT [json-extra]"""+import json, sys, os, subprocess+LP = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))+slug, mpn, lens, glb, out = sys.argv[1:6]; extra = json.loads(sys.argv[6]) if len(sys.argv) > 6 else {}+p = json.load(open(f'{LP}/{slug}/page.json')); comp = p['component']+hexs = '#%02X%02X%02X' % tuple(round(float(v) * 255) for v in lens.split(','))+cfg = dict(glb=glb, dir=[-0.9, -1.3, 1.1], dist=7.6, title=p['title'].split(' - ')[0], mpn=mpn, cat=p['brief'],+           mfr=f"{comp['manufacturer']}  •  {comp['package']}", pill='ADOM BASIC PART',+           foot='Manufacturer datasheet   ·   KiCad library CAD, coloured lens   ·   Adom Wiki',+           lens=hexs, emis=0.0, lensEnv=0.25, noToneMap=False, exposure=0.62)+cfg.update(extra)+html = open(f'{LP}/tools/hero_template_led.html').read().replace('__CFG__', json.dumps(cfg, ensure_ascii=False))+open(f'{LP}/work/{slug}.hero.html', 'w').write(html)+json.dump(cfg, open(f'{LP}/work/{slug}.hero.cfg.json', 'w'), indent=1, ensure_ascii=False)+r = subprocess.run(['node', f'{LP}/_tools/shoot_hero.js', f'http://127.0.0.1:8792/work/{slug}.hero.html', out], capture_output=True, text=True, timeout=200)+print(slug, r.returncode, r.stdout[-300:], r.stderr[-300:])
provenance/tools/rebuild_all.shadded+20
@@ -0,0 +1,20 @@+#!/bin/bash+# Rebuild every Inolux LED output from tools/colours.tsv (serial; run from led-pass/). WS2812B-2020 is held.+set -e+P=~/.local/share/adom-aiflow/occ/bin/python+SRC=/tmp/claude-1001/-home-adom-project/0a736c0e-0cd6-4308-915d-67b05c9b563f/scratchpad/leds   # read-only clones (original composites)+while IFS=$'\t' read slug mpn fam wl lens; do+  [ $slug = ws2812b-2020 ] && continue+  case $mpn in *UW) c=white_phosphor;; *A) c=amber;; *B) c=blue;; *G) c=green;; *R) c=red;; esac+  extra=""; [ $fam = template ] && extra="--template in-s42ata/IN-S42ATA-uncoloured.step"+  $P tools/colour_led.py $slug/$mpn-uncoloured.step $slug/$mpn.step --family $fam --lens $lens $extra --report $slug/provenance/$mpn-colour.report.json > /dev/null 2>&1+  step2glb convert $slug/$mpn.step -o work/$mpn.s2g.glb 2>&1 | grep '^OK' | cut -c1-80+  step2glb convert $slug/$mpn-uncoloured.step -o work/$mpn-uncoloured.s2g.glb > /dev/null 2>&1+  for kind in glb insertion.glb; do+    if [ $mpn = IN-S63BT5B ] && [ $kind = glb ]; then cp work/$mpn.s2g.glb $slug/$mpn.glb; continue; fi+    python3 tools/rebuild_composite.py $SRC/$slug/$mpn.$kind work/$mpn.s2g.glb $slug/$mpn.$kind --mpn $mpn --colour $c --lens $lens > work/reports/$mpn.$kind.json+  done+  case $mpn in IN-S42ATR) z=1.0; h=0.45; lh=0.2;; IN-S42*) z=0.9; h=0.45; lh=0.2;; *) z=0.5454545; h=0.6; lh=0.25;; esac+  case $mpn in *UW) note="White LED: lens drawn as the pale yellow phosphor (emission CIE x/y $wl)";; *A) note="Amber lens colour (dominant wavelength $wl nm); the real lens is clear";; *B) note="Blue lens colour (dominant wavelength $wl nm); the real lens is clear";; *G) note="Green lens colour (dominant wavelength $wl nm); the real lens is clear";; *R) note="Red lens colour (dominant wavelength $wl nm); the real lens is clear";; esac+  python3 tools/build_hero.py $slug $mpn work/$mpn.s2g.glb --lens $lens --zscale $z --height-mm $h --label-height $lh --colour-note "$note"+done < tools/colours.tsv
provenance/tools/rebuild_composite.pyadded+88
@@ -0,0 +1,88 @@+#!/usr/bin/env python3+"""Rebuild a page's composite LED scene GLB (<MPN>.glb / <MPN>.insertion.glb: fr4_board, pad_top, silk,+solder_top, the LED, LED_lit glow, fov_cone, LED_light) with the LED geometry and colours taken from the+coloured STEP's step2glb conversion. Everything else in the scene (board, pads, silk, solder, glow, FOV+cone, light, node names, node order, the LED node's name/children) is copied unchanged.++- LED geometry: every step2glb primitive is dequantized, the step2glb node transform is baked in (metres,+  Z-up, same frame as the old mesh), and primitives are merged per material (like the old composite).+- LED node Z scale is set so the part keeps the old composite's rendered height+  (new_scale = old_scale * old_mesh_top / new_mesh_top); a child light keeps its world position.+- Materials: the old slots keep their names/PBR settings; baseColor comes from the STEP colour+  (linear, as step2glb emits it). The lens slot is renamed lens_<colour>, baseColor = STEP lens colour,+  emissiveFactor = 0.35 x that colour (old slots used a similar dim self-glow), emissive strength kept,+  roughness 0.35 + KHR_materials_clearcoat (1.0, roughness 0.08) so it reads as tinted epoxy.+Usage: rebuild_composite.py COMPOSITE.glb STEP2GLB.glb OUT.glb --mpn MPN --colour red --lens R,G,B(srgb)"""+import sys, json, argparse, hashlib+import numpy as np+sys.path.insert(0, __import__('os').path.dirname(__file__))+import gltfio++def lin(c): return c / 12.92 if c <= 0.04045 else ((c + 0.055) / 1.055) ** 2.4+KNOWN = {'body': (0.7776, 0.7697, 0.6261), 'terminal': (0.7087, 0.5040, 0.2104), 'cathode_mark': (0.0946, 0.4200, 0.1666)}++def main():+    ap = argparse.ArgumentParser(); ap.add_argument('composite'); ap.add_argument('s2g'); ap.add_argument('out')+    ap.add_argument('--mpn', required=True); ap.add_argument('--colour', required=True); ap.add_argument('--lens', required=True)+    a = ap.parse_args()+    lens_lin = tuple(lin(float(v)) for v in a.lens.split(','))+    d, binc = gltfio.load(a.composite); arrays = gltfio.explode(d, binc)+    ni = next(i for i, n in enumerate(d['nodes']) if n.get('name') == a.mpn); node = d['nodes'][ni]+    mold = node['mesh']; old_prims = d['meshes'][mold]['primitives']+    old_top = max(arrays[p['attributes']['POSITION']][0][:, 2].max() for p in old_prims)+    old_tris = sum(len(arrays[p['indices']][0]) // 3 for p in old_prims)+    # role of each old material slot+    slot = {}+    for p in old_prims:+        nm = d['materials'][p['material']]['name']+        role = 'lens' if nm.startswith('lens') else {'mat_0': 'body', 'mat_1': 'terminal', 'mat_2': 'cathode_mark'}[nm]+        slot[role] = p['material']+    # new LED geometry from step2glb+    s, sb = gltfio.load(a.s2g); sn = s['nodes'][s['scenes'][0]['nodes'][0]]; M = gltfio.node_matrix(sn)+    assert len(s['nodes']) == 1, 'expected the single-node step2glb output'+    groups = {}+    for p in s['meshes'][sn['mesh']]['primitives']:+        P = gltfio.accessor(s, sb, p['attributes']['POSITION']).astype(np.float64)+        N = gltfio.accessor(s, sb, p['attributes']['NORMAL']).astype(np.float64)+        I = gltfio.accessor(s, sb, p['indices']).astype(np.int64)+        P = P @ M[:3, :3].T + M[:3, 3]; N = N @ M[:3, :3].T; N /= np.linalg.norm(N, axis=1, keepdims=True)+        c = s['materials'][p['material']]['pbrMetallicRoughness']['baseColorFactor'][:3]+        role = next((r for r, k in KNOWN.items() if max(abs(x - y) for x, y in zip(c, k)) < 2e-3), None)+        if role is None:+            assert max(abs(x - y) for x, y in zip(c, lens_lin)) < 2e-3, (c, lens_lin); role = 'lens'+        g = groups.setdefault(role, [[], [], [], 0]); g[0].append(P); g[1].append(N); g[2].append(I + g[3]); g[3] += len(P)+    prims = []+    for role in ('body', 'terminal', 'cathode_mark', 'lens'):+        g = groups[role]; key = f'led_{role}'+        arrays[key + '_POSITION'] = (np.concatenate(g[0]).astype(np.float32), 34962)+        arrays[key + '_NORMAL'] = (np.concatenate(g[1]).astype(np.float32), 34962)+        arrays[key + '_IDX'] = (np.concatenate(g[2]), 34963)+        prims.append({'attributes': {'POSITION': key + '_POSITION', 'NORMAL': key + '_NORMAL'}, 'indices': key + '_IDX', 'material': slot[role], 'mode': 4})+    d['meshes'][mold]['primitives'] = prims+    new_top = float(max(np.concatenate(groups[r][0])[:, 2].max() for r in groups))+    new_tris = sum(len(np.concatenate(groups[r][2])) // 3 for r in groups)+    # materials+    for role in ('body', 'terminal', 'cathode_mark'):+        m = d['materials'][slot[role]]; m['pbrMetallicRoughness']['baseColorFactor'] = [round(v, 4) for v in KNOWN[role]] + [1]+    m = d['materials'][slot['lens']]; old_lens = json.loads(json.dumps(m))+    m['name'] = 'lens_' + a.colour; m['pbrMetallicRoughness']['baseColorFactor'] = [round(v, 4) for v in lens_lin] + [1]+    m['emissiveFactor'] = [round(0.35 * v, 4) for v in lens_lin]+    # tinted epoxy, not paint: smoother lens with a clear coat+    m['pbrMetallicRoughness'].update(metallicFactor=0, roughnessFactor=0.35)+    m.setdefault('extensions', {})['KHR_materials_clearcoat'] = {'clearcoatFactor': 1.0, 'clearcoatRoughnessFactor': 0.08}+    if 'KHR_materials_clearcoat' not in d.setdefault('extensionsUsed', []): d['extensionsUsed'].append('KHR_materials_clearcoat')+    # keep rendered height: node Z scale, child light world position+    sc = node.get('scale', [1, 1, 1]); old_sz = sc[2]; new_sz = old_sz * float(old_top) / new_top+    node['scale'] = [sc[0], sc[1], new_sz]+    for ci in node.get('children', []):+        c = d['nodes'][ci]+        if 'translation' in c: c['translation'] = [c['translation'][0], c['translation'][1], c['translation'][2] * old_sz / new_sz]+    d.setdefault('asset', {})['generator'] = 'adom led-pass rebuild_composite.py (scene from ' + a.composite.split('/')[-1] + ', LED from step2glb)'+    n = gltfio.save(a.out, d, arrays)+    rep = dict(out=a.out.split('/')[-1], bytes=n, sha256=hashlib.sha256(open(a.out, 'rb').read()).hexdigest(),+               led_node=a.mpn, old_led_tris=old_tris, new_led_tris=new_tris, old_mesh_top_m=float(old_top), new_mesh_top_m=new_top,+               old_node_scale_z=old_sz, new_node_scale_z=new_sz, rendered_height_mm=round(new_top * new_sz * 1000, 4),+               lens_material={'name': m['name'], 'baseColor_linear': m['pbrMetallicRoughness']['baseColorFactor'], 'replaced': old_lens['name'], 'old_baseColor': old_lens['pbrMetallicRoughness']['baseColorFactor']})+    print(json.dumps(rep))++if __name__ == '__main__': main()
provenance/tools/stepfaces.pyadded+48
@@ -0,0 +1,48 @@+#!/usr/bin/env python3+"""Dump every face of a STEP: index, colour (surf/gen), surface type, bbox, area. For picking lens faces."""+import sys+from OCP.STEPCAFControl import STEPCAFControl_Reader+from OCP.TDocStd import TDocStd_Document+from OCP.TCollection import TCollection_ExtendedString+from OCP.XCAFDoc import XCAFDoc_DocumentTool, XCAFDoc_ColorType+from OCP.TDF import TDF_ChildIterator+from OCP.Quantity import Quantity_Color+from OCP.Bnd import Bnd_Box+from OCP.BRepBndLib import BRepBndLib+from OCP.TopExp import TopExp_Explorer+from OCP.TopAbs import TopAbs_FACE, TopAbs_SOLID+from OCP.BRepAdaptor import BRepAdaptor_Surface+from OCP.GProp import GProp_GProps+from OCP.TopoDS import TopoDS+from OCP.BRepGProp import BRepGProp+doc = TDocStd_Document(TCollection_ExtendedString("d"))+r = STEPCAFControl_Reader(); r.SetColorMode(True); r.SetNameMode(True); r.ReadFile(sys.argv[1]); r.Transfer(doc)+st = XCAFDoc_DocumentTool.ShapeTool_s(doc.Main()); ct = XCAFDoc_DocumentTool.ColorTool_s(doc.Main())+free=[]+it=TDF_ChildIterator(st.Label(),False)+while it.More():+    l=it.Value(); it.Next()+    if st.IsFree_s(l) and st.IsTopLevel(l): free.append(l)+for i,l in enumerate(free,1):+    s = st.GetShape_s(l)+    ex = TopExp_Explorer(s, TopAbs_SOLID); ns=0+    while ex.More(): ns+=1; ex.Next()+    print('free shape', i, 'solids', ns)+    ex = TopExp_Explorer(s, TopAbs_SOLID); si=0+    while ex.More():+        sol = ex.Current(); ex.Next(); si+=1+        b = Bnd_Box(); BRepBndLib.Add_s(sol, b); mn, mx = b.CornerMin(), b.CornerMax()+        c = Quantity_Color(); sc = ''+        for t in (XCAFDoc_ColorType.XCAFDoc_ColorSurf, XCAFDoc_ColorType.XCAFDoc_ColorGen):+            if ct.GetColor(sol, t, c): sc = f"{c.Red():.2f},{c.Green():.2f},{c.Blue():.2f}"; break+        print(f' solid {si} col={sc} x {mn.X():.3f}..{mx.X():.3f} y {mn.Y():.3f}..{mx.Y():.3f} z {mn.Z():.3f}..{mx.Z():.3f}')+        fx = TopExp_Explorer(sol, TopAbs_FACE); fi=0+        while fx.More():+            f = fx.Current(); fx.Next(); fi+=1+            col = ''+            for t in (XCAFDoc_ColorType.XCAFDoc_ColorSurf, XCAFDoc_ColorType.XCAFDoc_ColorGen):+                if ct.GetColor(f, t, c): col = f"{c.Red():.2f},{c.Green():.2f},{c.Blue():.2f}"; break+            b = Bnd_Box(); BRepBndLib.Add_s(f, b); mn, mx = b.CornerMin(), b.CornerMax()+            g = GProp_GProps(); BRepGProp.SurfaceProperties_s(f, g)+            ty = BRepAdaptor_Surface(TopoDS.Face(f)).GetType()+            print(f'   f{fi:3d} {str(ty).split(".")[-1]:22s} col={col:15s} area={g.Mass():.4f} x {mn.X():.3f}..{mx.X():.3f} y {mn.Y():.3f}..{mx.Y():.3f} z {mn.Z():.3f}..{mx.Z():.3f}')
provenance/tools/verify_geom.pyadded+25
@@ -0,0 +1,25 @@+import sys+from OCP.STEPCAFControl import STEPCAFControl_Reader+from OCP.TDocStd import TDocStd_Document+from OCP.TCollection import TCollection_ExtendedString+from OCP.XCAFDoc import XCAFDoc_DocumentTool+from OCP.TDF import TDF_ChildIterator+from OCP.TDataStd import TDataStd_Name+from OCP.GProp import GProp_GProps+from OCP.BRepGProp import BRepGProp+from OCP.TopExp import TopExp_Explorer+from OCP.TopAbs import TopAbs_FACE+def info(p):+    doc = TDocStd_Document(TCollection_ExtendedString("d")); r = STEPCAFControl_Reader(); r.SetColorMode(True); r.SetNameMode(True); r.ReadFile(p); r.Transfer(doc)+    st = XCAFDoc_DocumentTool.ShapeTool_s(doc.Main()); it = TDF_ChildIterator(st.Label(), False); out=[]+    while it.More():+        l = it.Value(); it.Next()+        if st.IsFree_s(l) and st.IsTopLevel(l):+            s = st.GetShape_s(l); g = GProp_GProps(); BRepGProp.VolumeProperties_s(s, g); nm = TDataStd_Name()+            n = nm.Get().ToExtString() if l.FindAttribute(TDataStd_Name.GetID_s(), nm) else ''+            ex = TopExp_Explorer(s, TopAbs_FACE); nf = 0+            while ex.More(): nf += 1; ex.Next()+            c = g.CentreOfMass(); out.append((n, nf, round(g.Mass(), 6), (round(c.X(),5), round(c.Y(),5), round(c.Z(),5))))+    return out+a, b = info(sys.argv[1]), info(sys.argv[2])+print('SAME' if a == b else 'DIFF', a, b)
provenance/tools/wl2srgb.pyadded+66
@@ -0,0 +1,66 @@+#!/usr/bin/env python3+"""Dominant wavelength (or CIE xy) -> sRGB. CIE 1931 2-degree spectral-locus chromaticities (5 nm table),+linear interpolation, XYZ->linear sRGB (IEC 61966-2-1), primary result = along_white()+(keeps lambda_d exactly); the OKLCh gamut cusp at the same hue is printed for reference only."""+import sys, json+LOC = {460:(.1440,.0297),465:(.1355,.0399),470:(.1241,.0578),475:(.1096,.0868),480:(.0913,.1327),+       515:(.0389,.8120),520:(.0743,.8338),525:(.1142,.8262),530:(.1547,.8059),535:(.1929,.7816),+       595:(.6029,.3965),600:(.6270,.3725),605:(.6482,.3514),610:(.6658,.3340),615:(.6801,.3197),+       620:(.6915,.3083),625:(.7006,.2993),630:(.7079,.2920),635:(.7140,.2859),640:(.7190,.2809)}+def locus(wl):+    lo = max(k for k in LOC if k <= wl); hi = min(k for k in LOC if k >= wl)+    if lo == hi: return LOC[lo]+    t = (wl-lo)/(hi-lo); return tuple(LOC[lo][i]+(LOC[hi][i]-LOC[lo][i])*t for i in (0,1))+M = [[3.2406,-1.5372,-0.4986],[-0.9689,1.8758,0.0415],[0.0557,-0.2040,1.0570]]+def xy2lin(x, y):+    X, Y, Z = x/y, 1.0, (1-x-y)/y+    return [M[i][0]*X+M[i][1]*Y+M[i][2]*Z for i in range(3)]+def enc(c): return 12.92*c if c <= 0.0031308 else 1.055*c**(1/2.4)-0.055+def along_white(lin):+    """Intersection of the white->spectral line (in xy) with the sRGB gamut: adds the least D65 white that+    makes every channel >= 0, so the result keeps the dominant wavelength EXACTLY (the definition of lambda_d)."""+    w = xy2lin(.3127, .3290)+    if min(lin) < 0:+        k = max(-lin[i]/w[i] for i in range(3) if lin[i] < 0); lin = [lin[i]+k*w[i] for i in range(3)]+    mx = max(lin); lin = [max(0, c/mx) for c in lin]+    return [round(enc(c), 4) for c in lin]+def cbrt(v): return v**(1/3) if v >= 0 else -((-v)**(1/3))+def lin2ok(c):+    r,g,b = c+    l = cbrt(.4122214708*r+.5363325363*g+.0514459929*b); m = cbrt(.2119034982*r+.6806995451*g+.1073969566*b); s = cbrt(.0883024619*r+.2817188376*g+.6299787005*b)+    return [.2104542553*l+.7936177850*m-.0040720468*s, 1.9779984951*l-2.4285922050*m+.4505937099*s, .0259040371*l+.7827717662*m-.8086757660*s]+def ok2lin(o):+    L,a,b = o+    l = (L+.3963377774*a+.2158037573*b)**3; m = (L-.1055613458*a-.0638541728*b)**3; s = (L-.0894841775*a-1.2914855480*b)**3+    return [4.0767416621*l-3.3077115913*m+.2309699292*s, -1.2684380046*l+2.6097574011*m-.3413193965*s, -.0041960863*l-.7034186147*m+1.7076147010*s]+def to_srgb(lin):+    mx = max(lin); lin = [c/mx for c in lin]+    L, a, b = lin2ok(lin); lo, hi = 0.0, 1.0+    ok = lambda k: all(-1e-6 <= c <= 1+1e-6 for c in ok2lin([L, a*k, b*k]))+    if not ok(1.0):+        for _ in range(40):+            mid = (lo+hi)/2+            if ok(mid): lo = mid+            else: hi = mid+        lin = [min(1, max(0, c)) for c in ok2lin([L, a*lo, b*lo])]+    return [round(enc(c), 4) for c in lin], [round(c, 4) for c in lin]+def cusp(lin):+    """Most chromatic in-gamut sRGB colour at the spectral colour's OKLab hue (the gamut cusp)."""+    import math+    L0, a, b = lin2ok(lin); h = math.atan2(b, a); best = (0, None)+    for i in range(200):+        L = 0.2 + 0.78*i/199; lo, hi = 0.0, 0.5+        for _ in range(40):+            mid = (lo+hi)/2+            if all(-1e-7 <= c <= 1+1e-7 for c in ok2lin([L, mid*math.cos(h), mid*math.sin(h)])): lo = mid+            else: hi = mid+        if lo > best[0]: best = (lo, L)+        C, L = best+    out = [min(1, max(0, c)) for c in ok2lin([best[1], best[0]*math.cos(h), best[0]*math.sin(h)])]+    return [round(enc(c), 4) for c in out], round(math.degrees(h) % 360, 1)+if __name__ == '__main__':+    a = sys.argv[1]+    x, y = (map(float, a.split(','))) if ',' in a else locus(float(a))+    d = along_white(xy2lin(x, y)); c, h = cusp(xy2lin(x, y))+    hx = lambda s: '#%02X%02X%02X' % tuple(round(v*255) for v in s)+    print(json.dumps({'input': a, 'xy': [round(x,4), round(y,4)], 'srgb': d, 'hex': hx(d), 'method': 'lambda_d-preserving: white-point line to spectral locus, clipped at the sRGB gamut edge, max channel 1', 'reference_oklch_cusp_hex': hx(c), 'oklab_hue_deg': h}))
screenshots/hero.png
⋯ 1 unchanged line ⋯