← Commit history
LICENSEadded+9
@@ -0,0 +1,9 @@+MIT License++Copyright (c) 2026 Adom Industries Inc.++Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:++The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
README.mdadded+32
@@ -0,0 +1,32 @@+# IXYS IXTP15N50L2++The IXTP15N50L2 is a silicon N-channel LinearL2 MOSFET in a TO-220AB package, designed for linear operation in programmable loads, current regulators and related circuits. The exposed mounting tab is electrically connected to Drain.++| Pin | Function |+|---|---|+| 1 | Gate |+| 2 | Drain, including metal tab |+| 3 | Source |++The manufacturer lists a 500 V drain-source rating, 15 A continuous drain current at a 25 °C case, and 0.42 °C/W maximum junction-to-case thermal resistance. These are device ratings under specified conditions, not a simultaneous operating envelope or an electronic-load power rating. Use the full safe-operating-area curves, case temperature and thermal design for the intended operating point. The 300 W datasheet dissipation rating assumes a case held at 25 °C.++Source: [IXYS DS100054B (12/11), pages 1–2 and SOA plots](datasheet.pdf). [Manufacturer-hosted datasheet](https://www.littelfuse.com/~/media/electronics/datasheets/discrete_mosfets/littelfuse_discrete_mosfets_n-channel_linear_ixt_15n50_datasheet.pdf.pdf).++## Library and model status++**Provisional, not fabrication-qualified.** The symbol maps Gate/Drain/Source to pins 1/2/3. The footprint is an original straight-lead candidate at 2.54 mm pitch with 1.4 mm nominal finished holes and 2.2 mm copper pads. Confirm the fabrication tolerance and assembly clearance; a 1.3 mm minimum finished hole is a proposed engineering constraint, not a manufacturer recommendation. The maximum rectangular lead section in the drawing is 1.02 × 0.56 mm, approximately 1.164 mm diagonally.++The 3D assets are an independently generated nominal envelope based on the exact package drawing. They are **not manufacturer CAD**. Mold taper, small edge radii and shoulder transitions are simplified. Straight, untrimmed leads are represented; the board-use pose assumes a 3 mm body standoff. Different mounting orientations require their own lead-forming and model-binding review. Neither the model nor this footprint defines a qualified heatsink clamp or insulator.++The clean model is separate from the hero's nonphysical reference artwork. Source dimensions, assumptions and generation method are in [provenance.json](provenance.json), [dimensions.json](dimensions.json) and [build_model.py](build_model.py). Manufacturer markings and internal die geometry are not reconstructed.++## Files and reuse++- [KiCad symbol](ixtp15n50l2.kicad_sym) · [interactive symbol](symbol.html)+- [Candidate footprint](ixtp15n50l2.kicad_mod) · [interactive footprint](footprint.html)+- [Canonical Adom library](ixtp15n50l2.adom-lbr.json)+- [Original nominal STEP](ixtp15n50l2-ai-nominal.step) · [clean board-use GLB](ixtp15n50l2-board-use.glb)++Original Adom files are MIT licensed. The KiCad-derived symbol and the manufacturer datasheet retain their own terms; see [third-party attribution](THIRD_PARTY.md).++Related application: [Adom custom electronic load](https://wiki.adom.inc/adom/adom-custom-electronic-load). Its horizontal mounting, cooling and board qualification are separate from this reusable catalog record.
THIRD_PARTY.mdadded+7
@@ -0,0 +1,7 @@+# Attribution and license scope++The conventional Q_NMOS_GDS schematic graphics derive from KiCad's Transistor_FET library, as embedded in the project's power.kicad_sch. KiCad libraries are licensed under CC-BY-SA 4.0 with the KiCad library exception. Preserve those terms for the derived symbol. Upstream: https://gitlab.com/kicad/libraries/kicad-symbols and https://www.kicad.org/libraries/license/ .++The unchanged IXYS DS100054B datasheet retains the copyright and terms printed by IXYS / Littelfuse. It is provided as manufacturer reference documentation, not relicensed as MIT. No distributor CAD was copied into this page.++The original reconstruction script, nominal geometry, footprint design, metadata and prose authored for this page are MIT licensed. Their dimensional assumptions and limitations remain part of their provenance.
build_library.pyadded+26
@@ -0,0 +1,26 @@+import json,re,hashlib+from pathlib import Path+root=Path(__file__).resolve().parents[2];out=Path(__file__).parent+src=(root/'kicad/power.kicad_sch').read_text();start=src.index('(symbol "Transistor_FET:Q_NMOS_GDS"');depth=0;quote=False;esc=False+for end in range(start,len(src)):+ c=src[end]+ if esc:esc=False;continue+ if c=='\\' and quote:esc=True;continue+ if c=='"':quote=not quote+ if not quote:+  if c=='(':depth+=1+  elif c==')':+   depth-=1+   if depth==0:break+sym=src[start:end+1].replace('Transistor_FET:Q_NMOS_GDS','IXTP15N50L2').replace('Q_NMOS_GDS','IXTP15N50L2')+datasheet='https://www.littelfuse.com/~/media/electronics/datasheets/discrete_mosfets/littelfuse_discrete_mosfets_n-channel_linear_ixt_15n50_datasheet.pdf.pdf'+# Replace metadata, preserve the conventional MOSFET graphics and G/D/S pins.+sym=re.sub(r'\(property "Datasheet" "[^"]*"', '(property "Datasheet" "'+datasheet+'"',sym)+sym=re.sub(r'\(property "Description" "[^"]*"','(property "Description" "IXYS LinearL2 N-channel MOSFET, TO-220AB, G-D-S; tab is Drain"',sym)+sym=re.sub(r'\(property "Footprint" "[^"]*"','(property "Footprint" "IXTP15N50L2:IXTP15N50L2_TO220_Straight_Drill1p4"',sym)+for key,val in [('MPN','IXTP15N50L2'),('Manufacturer','IXYS / Littelfuse'),('Adom Wiki','https://wiki.adom.inc/adom/ixtp15n50l2'),('Mouser','747-IXTP15N50L2')]:+ sym=sym[:-1]+f'\n(property "{key}" "{val}" (at 0 0 0) (effects (font (size 1.27 1.27)) (hide yes)))\n)'+(out/'ixtp15n50l2.kicad_sym').write_text('(kicad_symbol_lib (version 20231120) (generator "adom-component-audit")\n'+sym+'\n)\n')+fp={'footprintName':'IXTP15N50L2_TO220_Straight_Drill1p4','description':'Original straight-lead candidate from DS100054B page 2. 1.4 mm finished holes; production tolerances require approval. Not the electronic-load horizontal forming variant.','pads':[{'number':str(i+1),'x':i*2.54,'y':0,'dx':2.2,'dy':2.2,'shape':'rect' if i==0 else 'circle','type':'thru_hole','drill':1.4} for i in range(3)],'body':{'x1':-2.79,'y1':-2.79,'x2':7.87,'y2':2.54},'courtyard':{'x1':-3.04,'y1':-3.04,'x2':8.12,'y2':2.79}}+(out/'footprint-input.json').write_text(json.dumps(fp,indent=2)+'\n')+(root/'design/component-catalog-audit/q1-lead-hole-finding.json').write_text(json.dumps({'part':'IXTP15N50L2','source':datasheet,'drawing':'DS100054B (12/11) page 2 TO-220 outline','leadMaxWidthMm':1.02,'leadMaxThicknessMm':.56,'leadMaxDiagonalMm':(1.02**2+.56**2)**.5,'currentLibraryDrillMm':1.1,'verdict':'fails worst-case rectangular lead-envelope clearance before fabrication tolerances','candidateFinishedHoleMm':1.4,'candidateCopperPadMm':2.2,'unresolved':['Verify native saved-board Q1 drills independently','Confirm minimum finished-hole tolerance and required assembly clearance','Reconcile horizontal lead forming, mounting-hole alignment and current/thermal impact before adopting board change']},indent=2)+'\n')
build_model.pyadded+46
@@ -0,0 +1,46 @@+"""Original nominal envelope reconstruction from IXYS DS100054B page 2.+Run with the existing OCP environment on the shared step2glb host, not chipsmith.+"""+import json,sys+from pathlib import Path+from OCP.gp import gp_Pnt,gp_Dir,gp_Ax2+from OCP.BRepPrimAPI import BRepPrimAPI_MakeBox,BRepPrimAPI_MakeCylinder+from OCP.BRepAlgoAPI import BRepAlgoAPI_Cut+from OCP.TDocStd import TDocStd_Document+from OCP.TCollection import TCollection_ExtendedString+from OCP.XCAFDoc import XCAFDoc_DocumentTool,XCAFDoc_ColorType+from OCP.TDataStd import TDataStd_Name+from OCP.Quantity import Quantity_Color,Quantity_TOC_RGB+from OCP.STEPCAFControl import STEPCAFControl_Writer+from OCP.STEPControl import STEPControl_AsIs+from OCP.IFSelect import IFSelect_RetDone+out=Path(sys.argv[1]);out.mkdir(parents=True,exist_ok=True)+# Millimeter dimension intervals transcribed from the TO-220 outline only.+limits={'A':[4.32,4.83],'b':[.64,1.02],'b1':[1.15,1.65],'c':[.35,.56],+'D':[14.73,16.00],'E':[9.91,10.66],'e':[2.54,2.54],'F':[1.14,1.40],+'H1':[5.85,6.85],'J1':[2.29,2.79],'k':[0,.38],'L':[12.70,13.97],+'L1':[2.79,5.84],'P':[3.53,4.08],'Q':[2.54,3.18]}+n={k:sum(v)/2 for k,v in limits.items()}+# Supplied straight leads; body bottom at Z=0. No undocumented formed-lead claim.+# X pad centres 0,2.54,5.08. Y=0 is lead centre. Rear tab plane derives from J1.+back=-n['J1'];x0=n['e']-n['E']/2+parts=[]+def box(x,y,z,dx,dy,dz):return BRepPrimAPI_MakeBox(gp_Pnt(x,y,z),dx,dy,dz).Shape()+tab=box(x0,back,0,n['E'],n['F'],n['D'])+hole=BRepPrimAPI_MakeCylinder(gp_Ax2(gp_Pnt(n['e'],back-1,n['D']-n['Q']),gp_Dir(0,1,0)),n['P']/2,n['A']+2).Shape()+tab=BRepAlgoAPI_Cut(tab,hole).Shape();parts.append(('DrainTab',tab,(.65,.66,.68)))+# Undimensioned taper, edge radii, mold split and shoulder transition simplified.+body=box(x0,back+n['F'],0,n['E'],n['A']-n['F'],n['D']-n['H1'])+parts.append(('MoldedBody_Nominal',body,(.08,.085,.09)))+for i,name in enumerate(['Gate','Drain','Source']):+ x=i*n['e']+ parts.append((f'Lead{i+1}_{name}',box(x-n['b']/2,-n['c']/2,-n['L'],n['b'],n['c'],n['L']-n['L1']),(.7,.71,.73)))+ parts.append((f'Lead{i+1}_Shoulder',box(x-n['b1']/2,-n['c']/2,-n['L1'],n['b1'],n['c'],n['L1']),(.7,.71,.73)))+doc=TDocStd_Document(TCollection_ExtendedString('BinXCAF'))+st=XCAFDoc_DocumentTool.ShapeTool_s(doc.Main());ct=XCAFDoc_DocumentTool.ColorTool_s(doc.Main())+for name,shape,color in parts:+ label=st.AddShape(shape,False);TDataStd_Name.Set_s(label,TCollection_ExtendedString(name));ct.SetColor(label,Quantity_Color(*color,Quantity_TOC_RGB),XCAFDoc_ColorType.XCAFDoc_ColorGen)+writer=STEPCAFControl_Writer();writer.SetColorMode(True);writer.SetNameMode(True);writer.Transfer(doc,STEPControl_AsIs)+assert writer.Write(str(out/'ixtp15n50l2-ai-nominal.step'))==IFSelect_RetDone+(out/'dimensions.json').write_text(json.dumps({'units':'mm','source':'IXYS DS100054B (12/11), page 2, TO-220 Outline','limits':limits,'nominalMidpoints':n,'coordinateFrame':'Z upward along straight package; body bottom Z=0; full untrimmed leads below Z=0; pin centres X=0,2.54,5.08 Y=0','limitations':['Original independent nominal envelope, not manufacturer CAD','Unspecified mold taper, edge radii and mold split omitted','Lead shoulders are simplified rectangular envelopes','No lead bend or board seating height is prescribed by this model','No manufacturer markings or internal die represented','Horizontal formed-lead footprint requires a separate pose and forming verification']},indent=2)+'\n')+print('WROTE',out)
datasheet.pdfadded
⋯ 1 unchanged line ⋯
dimensions.jsonadded+92
@@ -0,0 +1,92 @@+{+  "units": "mm",+  "source": "IXYS DS100054B (12/11), page 2, TO-220 Outline",+  "limits": {+    "A": [+      4.32,+      4.83+    ],+    "b": [+      0.64,+      1.02+    ],+    "b1": [+      1.15,+      1.65+    ],+    "c": [+      0.35,+      0.56+    ],+    "D": [+      14.73,+      16.0+    ],+    "E": [+      9.91,+      10.66+    ],+    "e": [+      2.54,+      2.54+    ],+    "F": [+      1.14,+      1.4+    ],+    "H1": [+      5.85,+      6.85+    ],+    "J1": [+      2.29,+      2.79+    ],+    "k": [+      0,+      0.38+    ],+    "L": [+      12.7,+      13.97+    ],+    "L1": [+      2.79,+      5.84+    ],+    "P": [+      3.53,+      4.08+    ],+    "Q": [+      2.54,+      3.18+    ]+  },+  "nominalMidpoints": {+    "A": 4.575,+    "b": 0.8300000000000001,+    "b1": 1.4,+    "c": 0.455,+    "D": 15.365,+    "E": 10.285,+    "e": 2.54,+    "F": 1.27,+    "H1": 6.35,+    "J1": 2.54,+    "k": 0.19,+    "L": 13.335,+    "L1": 4.3149999999999995,+    "P": 3.8049999999999997,+    "Q": 2.8600000000000003+  },+  "coordinateFrame": "Z upward along straight package; body bottom Z=0; full untrimmed leads below Z=0; pin centres X=0,2.54,5.08 Y=0",+  "limitations": [+    "Original independent nominal envelope, not manufacturer CAD",+    "Unspecified mold taper, edge radii and mold split omitted",+    "Lead shoulders are simplified rectangular envelopes",+    "No lead bend or board seating height is prescribed by this model",+    "No manufacturer markings or internal die represented",+    "Horizontal formed-lead footprint requires a separate pose and forming verification"+  ]+}
features.jsonadded+2
@@ -0,0 +1,2 @@+OK: features written → components/ixtp15n50l2/ixtp15n50l2-ai-nominal-features.json+bbox x=-2.6025..7.6825 y=-2.54..2.035 z=-13.335..15.365  floor_z=-13.335  axis=x pin1=unknown
footprint-input.jsonadded+48
@@ -0,0 +1,48 @@+{+  "footprintName": "IXTP15N50L2_TO220_Straight_Drill1p4",+  "description": "Original straight-lead candidate from DS100054B page 2. 1.4 mm finished holes; production tolerances require approval. Not the electronic-load horizontal forming variant.",+  "pads": [+    {+      "number": "1",+      "x": 0.0,+      "y": 0,+      "dx": 2.2,+      "dy": 2.2,+      "shape": "rect",+      "type": "thru_hole",+      "drill": 1.4+    },+    {+      "number": "2",+      "x": 2.54,+      "y": 0,+      "dx": 2.2,+      "dy": 2.2,+      "shape": "circle",+      "type": "thru_hole",+      "drill": 1.4+    },+    {+      "number": "3",+      "x": 5.08,+      "y": 0,+      "dx": 2.2,+      "dy": 2.2,+      "shape": "circle",+      "type": "thru_hole",+      "drill": 1.4+    }+  ],+  "body": {+    "x1": -2.79,+    "y1": -2.79,+    "x2": 7.87,+    "y2": 2.54+  },+  "courtyard": {+    "x1": -3.04,+    "y1": -3.04,+    "x2": 8.12,+    "y2": 2.79+  }+}
footprint.htmladded+210
@@ -0,0 +1,210 @@+<!doctype html><html><head><meta charset="utf-8">+<title>IXTP15N50L2_TO220_Straight_Drill1p4 - adom-footprint</title>+<meta name="viewport" content="width=device-width,initial-scale=1">+<style>+/* ── adom-footprint shared viewer core (CSS) ───────────────────────────────+   Included VERBATIM by both the live app (app.html) and the static embed+   (embed.html) so the canvas, zoom toolbar and layer-panel rows look identical+   and cannot drift. Self-contained literal colours (no dependency on either+   file's CSS vars). Class prefix: av- */++.av-vp{position:absolute;inset:0;overflow:hidden;cursor:grab;background:radial-gradient(circle at 50% 42%,#121a26 0%,#0d1117 72%)}+.av-vp.grab{cursor:grabbing}+/* DIRECT child only — the zoom-toolbar button icons (.av-tools svg) also live+   inside .av-vp; without '>' they'd inherit position:absolute and stack at 0,0. */+.av-vp > svg{position:absolute;left:0;top:0;width:100%;height:100%;transform-origin:0 0;display:block}++/* zoom toolbar */+/* Grouped translucent toolbar (matches adom-symbol's .tools): one container, borderless+   buttons that highlight on hover — instead of individually-boxed buttons. */+.av-tools{position:absolute;left:10px;top:10px;display:flex;gap:3px;padding:3px;z-index:5;background:rgba(22,27,34,.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid #222b38;border-radius:9px}+.av-tools button{width:30px;height:30px;border-radius:6px;border:none;background:transparent;color:#cfd8e2;cursor:pointer;display:grid;place-items:center;transition:background .15s ease,color .15s ease}+.av-tools button svg{width:16px;height:16px;display:block}+.av-tools button:hover{background:#222b38;color:#37c8a6}+.av-tools button:focus,.av-tools button:focus-visible{outline:none}+.av-panhint{position:absolute;right:10px;bottom:9px;color:#8b949e;font-size:11px;z-index:5;pointer-events:none;user-select:none;-webkit-user-select:none}++/* layer panel rows */+.av-lrow{display:flex;align-items:center;gap:9px;padding:8px 9px;border-radius:8px;cursor:pointer}+.av-lrow:hover{background:#161c27}+.av-lrow .sw{width:13px;height:13px;border-radius:3px;border:1px solid rgba(255,255,255,.15);flex:0 0 13px}+.av-lrow .sw.ring{background:transparent!important}+.av-lrow .ln{flex:1;font-size:13px}+.av-lrow .meta{font-size:10px;color:#8b949e}+.av-lrow .chk{width:16px;height:16px;border-radius:4px;border:1.5px solid #3a4757;display:grid;place-items:center;color:#0b0f17;font-size:11px}+.av-lrow.on .chk{background:#37c8a6;border-color:#37c8a6}+.av-lrow.off .ln,.av-lrow.off .sw{opacity:.4}+.av-lrow.special{background:linear-gradient(100deg,rgba(55,200,166,.10),transparent);border:1px solid rgba(55,200,166,.25);margin-top:4px}+.av-lrow.special .ln{color:#7ef0d2;font-weight:600}++:root{--bg:#0d1117;--panel:#11161f;--border:#222b38;--text:#e6edf3;--muted:#8b949e;--accent:#37c8a6}+*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}+body{background:var(--bg);color:var(--text);font-family:'Satoshi','Segoe UI',system-ui,sans-serif;display:flex;flex-direction:column;overflow:hidden}+header{display:flex;align-items:center;gap:9px;padding:9px 14px;border-bottom:1px solid var(--border);flex:0 0 auto}+header .dot{width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px var(--accent)}+header .b{font-weight:700;font-size:14px}header .b span{color:var(--muted);font-weight:400}+header .nm{margin-left:auto;font-weight:600;font-size:13px;color:#cfd8e2}+main{flex:1;display:flex;min-height:0}+.vpwrap{flex:1;position:relative;min-width:0}+aside{flex:0 0 248px;border-left:1px solid var(--border);background:var(--panel);display:flex;flex-direction:column;min-height:0}+aside .ah{padding:9px 12px;border-bottom:1px solid var(--border);font-size:12px;color:var(--muted)}+.layers{padding:6px}+.note{font-size:11px;color:var(--muted);line-height:1.45;padding:8px 11px}+.note b{color:#7ef0d2}+</style></head>+<body>+  <header><span class="dot"></span><span class="b">adom-footprint <span>· interactive</span></span><span class="nm">IXTP15N50L2_TO220_Straight_Drill1p4</span></header>+  <main>+    <div class="vpwrap">+      <div class="av-vp" id="vp">+        <svg xmlns="http://www.w3.org/2000/svg" viewBox="-4.090 -4.090 13.210 7.880" preserveAspectRatio="xMidYMid meet"><g class="adom-layer-courtyard"><rect x="-3.040" y="-3.040" width="11.160" height="5.830" fill="none" stroke="#FF26E2" stroke-width="0.05" stroke-dasharray="0.2,0.1"/></g><g class="adom-layer-fab"><rect x="-2.790" y="-2.790" width="10.660" height="5.330" fill="none" stroke="#6e7681" stroke-width="0.1"/></g><g class="adom-layer-copper"><g data-pad="1" data-shape="rect" data-size="2.200x2.200" data-mount="thru_hole"><rect x="-1.100" y="-1.100" width="2.200" height="2.200" fill="#C83434" stroke="#ef5350" stroke-width="0.04"/></g><g data-pad="2" data-shape="circle" data-size="2.200x2.200" data-mount="thru_hole"><circle cx="2.540" cy="0.000" r="1.100" fill="#C83434" stroke="#ef5350" stroke-width="0.04"/></g><g data-pad="3" data-shape="circle" data-size="2.200x2.200" data-mount="thru_hole"><circle cx="5.080" cy="0.000" r="1.100" fill="#C83434" stroke="#ef5350" stroke-width="0.04"/></g></g><g class="adom-layer-heatsink"></g><g class="adom-layer-drill"><circle cx="0.000" cy="0.000" r="0.700" fill="#0d1117" stroke="#666" stroke-width="0.05"/><circle cx="2.540" cy="0.000" r="0.700" fill="#0d1117" stroke="#666" stroke-width="0.05"/><circle cx="5.080" cy="0.000" r="0.700" fill="#0d1117" stroke="#666" stroke-width="0.05"/></g><g class="adom-layer-silk"><line x1="-2.910" y1="-2.910" x2="7.990" y2="-2.910" stroke="#00cccc" stroke-width="0.12" stroke-linecap="round"/><line x1="7.990" y1="-2.910" x2="7.990" y2="2.660" stroke="#00cccc" stroke-width="0.12" stroke-linecap="round"/><line x1="7.990" y1="2.660" x2="-2.910" y2="2.660" stroke="#00cccc" stroke-width="0.12" stroke-linecap="round"/><line x1="-2.910" y1="2.660" x2="-2.910" y2="-2.910" stroke="#00cccc" stroke-width="0.12" stroke-linecap="round"/><line x1="-3.090" y1="-3.090" x2="-2.490" y2="-3.090" stroke="#00cccc" stroke-width="0.12" stroke-linecap="round"/></g><g class="adom-layer-padnum"><text x="0.000" y="0.000" text-anchor="middle" dominant-baseline="central" font-size="0.924" fill="#fff" font-family="sans-serif" style="pointer-events:none">1</text><text x="2.540" y="0.000" text-anchor="middle" dominant-baseline="central" font-size="0.924" fill="#fff" font-family="sans-serif" style="pointer-events:none">2</text><text x="5.080" y="0.000" text-anchor="middle" dominant-baseline="central" font-size="0.924" fill="#fff" font-family="sans-serif" style="pointer-events:none">3</text></g><g class="adom-layer-paste-apertures"></g><g class="adom-layer-paste-dots"></g></svg>+      </div>+    </div>+    <aside>+      <div class="ah">Layers</div>+      <div class="layers" id="layers"></div>+      <div class="note">The <b>solder paste jet</b> layer shows the 300µm paste-dispensing dots that travel with the footprint. Off by default — toggle it on.</div>+    </aside>+  </main>+<script>/* ── adom-footprint shared viewer core (window.AV) ─────────────────────────+   Single source of truth for the layer list, toggle behaviour, defaults,+   pan/zoom and toolbar icons. Included VERBATIM by both app.html (live) and+   embed.html (static) so the two viewers cannot drift. Pure client-side; works+   on any SVG that carries the <g class="adom-layer-*"> groups. */+(function(){+  var ICON_ZIN='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="10.5" cy="10.5" r="6.5"/><path d="M20 20l-4.5-4.5M10.5 8v5M8 10.5h5"/></svg>';+  var ICON_ZOUT='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="10.5" cy="10.5" r="6.5"/><path d="M20 20l-4.5-4.5M8 10.5h5"/></svg>';+  // Zoom-to-FIT = a magnifier with a small square inside (fit content to view).+  // Deliberately NOT the four-corner expand/"fullscreen" glyph.+  var ICON_FIT='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="10.5" cy="10.5" r="6.5"/><path d="M20 20l-4.5-4.5"/><rect x="7.6" y="7.6" width="5.8" height="5.8" rx="1.2"/></svg>';++  // The canonical layer list. Every layer is a <g class="adom-layer-*"> in the+  // self-rendered SVG, so toggling is group-based (robust) — never colour-match.+  // `kind:'group'` on every entry: all layers are toggled by their <g> group+  // (robust), never by colour-match. (app.html still reads def.kind.)+  var LAYER_DEFS=[+    {key:'copper',    name:'Copper',           kind:'group', sel:'.adom-layer-copper',          sw:'#C83434'},+    // Auto-generated thermal-via array under the exposed pad — only present (and+    // listed) when the footprint has an exposed thermal pad.+    {key:'heatsink',  name:'Heatsink vias',    kind:'group', sel:'.adom-layer-heatsink',        sw:'#e8a13a'},+    {key:'padnum',    name:'Pad numbers',      kind:'group', sel:'.adom-layer-padnum',          sw:'#ffffff', ring:true},+    {key:'silk',      name:'Silkscreen',       kind:'group', sel:'.adom-layer-silk',            sw:'#00cccc'},+    {key:'fab',       name:'Fab (F.Fab)',      kind:'group', sel:'.adom-layer-fab',             sw:'#6e7681', ring:true},+    {key:'courtyard', name:'Courtyard',        kind:'group', sel:'.adom-layer-courtyard',       sw:'#FF26E2', ring:true},+    {key:'drill',     name:'Drill',            kind:'group', sel:'.adom-layer-drill',           sw:'#888888', ring:true},+    {key:'paste-ap',  name:'Paste apertures',  kind:'group', sel:'.adom-layer-paste-apertures', sw:'#8aa0b8', ring:true},+    // Generic name — the 300µm solder-paste dispensing dots. Off by default.+    {key:'paste-dots',name:'Solder paste jet', kind:'group', sel:'.adom-layer-paste-dots',      sw:'#37c8a6', special:true},+  ];++  // True only if the group actually holds drawn geometry (not an empty <g>) — so+  // layers with nothing in THIS footprint aren't listed as dead, dim rows.+  function groupHasGeo(svg,def){+    if(!svg) return false; var n=0,g=svg.querySelectorAll(def.sel);+    for(var i=0;i<g.length;i++){ n+=g[i].querySelectorAll('path,rect,circle,line,polygon,polyline,text').length; }+    return n>0;+  }+  function layerPresent(svg,def){ return groupHasGeo(svg,def); }+  function applyLayer(svg,def,on){+    if(!svg) return; var g=svg.querySelectorAll(def.sel);+    for(var i=0;i<g.length;i++) g[i].style.display=on?'':'none';+  }++  // Build layer rows into a container. opts:+  //   svg, container, state {key:bool}, meta {pasteDots,pasteApertures},+  //   onToggle(key,on). Missing state key -> special OFF, others ON. Skips empty+  //   non-special groups. Returns the keys actually shown.+  function buildLayers(opts){+    var svg=opts.svg, box=opts.container, state=opts.state||{}, meta=opts.meta||{}, shown=[];+    box.innerHTML='';+    LAYER_DEFS.forEach(function(def){+      if(!def.special && !groupHasGeo(svg,def)) return;+      var on = def.special ? (state[def.key]===true) : (state[def.key]!==false);+      var m = def.key==='paste-dots' ? ((meta.pasteDots||0)+' @ 300µm')+            : def.key==='paste-ap'   ? ((meta.pasteApertures||0)+' openings') : '';+      var row=document.createElement('div');+      row.className='av-lrow '+(on?'on':'off')+(def.special?' special':'');+      row.innerHTML='<span class="sw'+(def.ring?' ring':'')+'" style="'+(def.ring?('border-color:'+def.sw):('background:'+def.sw))+'"></span>'+        +'<span class="ln">'+def.name+'</span>'+(m?'<span class="meta">'+m+'</span>':'')+        +'<span class="chk">'+(on?'✓':'')+'</span>';+      row.onclick=function(){+        var nv=!row.classList.contains('on');+        row.classList.toggle('on',nv); row.classList.toggle('off',!nv);+        row.querySelector('.chk').textContent=nv?'✓':'';+        state[def.key]=nv; applyLayer(svg,def,nv);+        if(opts.onToggle) opts.onToggle(def.key,nv);+      };+      box.appendChild(row); applyLayer(svg,def,on); shown.push(def.key);+    });+    return shown;+  }++  // Wire pan + zoom on a viewport element (the box that contains the <svg>).+  // Returns a controller {fit, zoomIn, zoomOut, apply}.+  function initViewport(vp){+    var svg=vp.querySelector('svg');+    if(svg){ svg.removeAttribute('width'); svg.removeAttribute('height'); }+    var s=1,tx=0,ty=0;+    function apply(){ var el=vp.querySelector('svg'); if(el) el.style.transform='translate('+tx+'px,'+ty+'px) scale('+s+')'; }+    function zoomAt(cx,cy,f){ tx=cx-(cx-tx)*f; ty=cy-(cy-ty)*f; s*=f; apply(); }+    function fit(){ s=1;tx=0;ty=0;apply(); }+    // Smooth, delta-PROPORTIONAL zoom (matches adom-symbol). A fixed per-event+    // factor makes the trackpad leap — one gentle two-finger nudge fires a burst+    // of tiny wheel events and a fixed 1.12× compounds. Instead derive the factor+    // from how much actually scrolled (exp → smooth + reversible), normalise+    // device units, and clamp one event so a chunky mouse notch can't jump.+    var ZOOM_K=0.0022; // sensitivity: lower = gentler+    vp.addEventListener('wheel',function(e){+      e.preventDefault();+      var d=e.deltaY;+      if(e.deltaMode===1) d*=16; else if(e.deltaMode===2) d*=vp.clientHeight;+      d=Math.max(-50,Math.min(50,d));+      var r=vp.getBoundingClientRect();+      zoomAt(e.clientX-r.left,e.clientY-r.top,Math.exp(-d*ZOOM_K));+    },{passive:false});+    var drag=false,lx=0,ly=0;+    vp.addEventListener('pointerdown',function(e){ if(e.target.closest('.av-tools'))return; drag=true;lx=e.clientX;ly=e.clientY;vp.classList.add('grab');vp.setPointerCapture(e.pointerId); });+    vp.addEventListener('pointermove',function(e){ if(!drag)return; tx+=e.clientX-lx;ty+=e.clientY-ly;lx=e.clientX;ly=e.clientY;apply(); });+    vp.addEventListener('pointerup',function(){ drag=false;vp.classList.remove('grab'); });+    fit();+    return {+      fit:fit,+      zoomIn:function(){ var r=vp.getBoundingClientRect(); zoomAt(r.width/2,r.height/2,1.2); },+      zoomOut:function(){ var r=vp.getBoundingClientRect(); zoomAt(r.width/2,r.height/2,1/1.2); },+      apply:apply+    };+  }++  // Inject the standard zoom toolbar (+ / − / fit) + pan hint into a viewport,+  // wired to a controller from initViewport. Idempotent.+  function addToolbar(vp,ctl){+    if(vp.querySelector('.av-tools')) return;+    var t=document.createElement('div'); t.className='av-tools';+    t.innerHTML='<button data-z="in" title="Zoom in">'+ICON_ZIN+'</button>'+      +'<button data-z="out" title="Zoom out">'+ICON_ZOUT+'</button>'+      +'<button data-z="fit" title="Zoom to fit">'+ICON_FIT+'</button>';+    vp.appendChild(t);+    t.querySelector('[data-z="in"]').onclick=ctl.zoomIn;+    t.querySelector('[data-z="out"]').onclick=ctl.zoomOut;+    t.querySelector('[data-z="fit"]').onclick=ctl.fit;+    var h=document.createElement('div'); h.className='av-panhint'; h.textContent='drag to pan · scroll to zoom'; vp.appendChild(h);+  }++  window.AV={+    LAYER_DEFS:LAYER_DEFS, groupHasGeo:groupHasGeo, layerPresent:layerPresent,+    applyLayer:applyLayer, buildLayers:buildLayers, initViewport:initViewport,+    addToolbar:addToolbar, ICON_FIT:ICON_FIT, ICON_ZIN:ICON_ZIN, ICON_ZOUT:ICON_ZOUT+  };+})();+</script>+<script>+var META={"pasteApertures":0,"pasteDots":0};+(function(){+  var vp=document.getElementById('vp');+  var svg=vp.querySelector('svg');+  var ctl=AV.initViewport(vp);+  AV.addToolbar(vp,ctl);+  AV.buildLayers({ svg:svg, container:document.getElementById('layers'), state:{}, meta:META });+})();+</script>+</body></html>
hero-review.pngadded
⋯ 1 unchanged line ⋯
hero.pngadded
⋯ 1 unchanged line ⋯
ixtp15n50l2-ai-nominal-features.jsonadded+26
@@ -0,0 +1,26 @@+{+  "extracted_by": "service-step2glb 0.2.0",+  "extracted_at": "2026-10-11T15:05:00Z",+  "bbox_mm": {+    "x": [+      -2.6025,+      7.6825+    ],+    "y": [+      -2.54,+      2.035+    ],+    "z": [+      -13.335,+      15.365+    ]+  },+  "floor_z_mm": -13.335,+  "top_z_mm": 15.365,+  "longest_axis": "x",+  "pin1": {+    "source": "unknown"+  },+  "duration_ms": 117,+  "warnings": []+}\ No newline at end of file
ixtp15n50l2-ai-nominal.glbadded
⋯ 1 unchanged line ⋯
ixtp15n50l2-ai-nominal.stepadded+3374
@@ -0,0 +1,3374 @@+ISO-10303-21;+HEADER;+FILE_DESCRIPTION(('Open CASCADE Model'),'2;1');+FILE_NAME('Open CASCADE Shape Model','2026-10-11T15:04:56',('Author'),(+    'Open CASCADE'),'Open CASCADE STEP processor 7.8','Open CASCADE 7.8'+  ,'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('DrainTab','DrainTab','',(#8));+#8 = PRODUCT_CONTEXT('',#2,'mechanical');+#9 = PRODUCT_DEFINITION_CONTEXT('part definition',#2,'design');+#10 = ADVANCED_BREP_SHAPE_REPRESENTATION('',(#11,#15),#429);+#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,#137,#244,#293,#368,#395,#402));+#17 = ADVANCED_FACE('',(#18),#32,.F.);+#18 = FACE_BOUND('',#19,.F.);+#19 = EDGE_LOOP('',(#20,#55,#83,#111));+#20 = ORIENTED_EDGE('',*,*,#21,.F.);+#21 = EDGE_CURVE('',#22,#24,#26,.T.);+#22 = VERTEX_POINT('',#23);+#23 = CARTESIAN_POINT('',(-2.6025,-2.54,0.));+#24 = VERTEX_POINT('',#25);+#25 = CARTESIAN_POINT('',(-2.6025,-2.54,15.365));+#26 = SURFACE_CURVE('',#27,(#31,#43),.PCURVE_S1.);+#27 = LINE('',#28,#29);+#28 = CARTESIAN_POINT('',(-2.6025,-2.54,0.));+#29 = VECTOR('',#30,1.);+#30 = DIRECTION('',(0.,0.,1.));+#31 = PCURVE('',#32,#37);+#32 = PLANE('',#33);+#33 = AXIS2_PLACEMENT_3D('',#34,#35,#36);+#34 = CARTESIAN_POINT('',(-2.6025,-2.54,0.));+#35 = DIRECTION('',(1.,0.,-0.));+#36 = DIRECTION('',(0.,0.,1.));+#37 = DEFINITIONAL_REPRESENTATION('',(#38),#42);+#38 = LINE('',#39,#40);+#39 = CARTESIAN_POINT('',(0.,0.));+#40 = VECTOR('',#41,1.);+#41 = DIRECTION('',(1.,0.));+#42 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#43 = PCURVE('',#44,#49);+#44 = PLANE('',#45);+#45 = AXIS2_PLACEMENT_3D('',#46,#47,#48);+#46 = CARTESIAN_POINT('',(-2.6025,-2.54,0.));+#47 = DIRECTION('',(-0.,1.,0.));+#48 = DIRECTION('',(0.,0.,1.));+#49 = DEFINITIONAL_REPRESENTATION('',(#50),#54);+#50 = LINE('',#51,#52);+#51 = CARTESIAN_POINT('',(0.,0.));+#52 = VECTOR('',#53,1.);+#53 = DIRECTION('',(1.,0.));+#54 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#55 = ORIENTED_EDGE('',*,*,#56,.T.);+#56 = EDGE_CURVE('',#22,#57,#59,.T.);+#57 = VERTEX_POINT('',#58);+#58 = CARTESIAN_POINT('',(-2.6025,-1.27,0.));+#59 = SURFACE_CURVE('',#60,(#64,#71),.PCURVE_S1.);+#60 = LINE('',#61,#62);+#61 = CARTESIAN_POINT('',(-2.6025,-2.54,0.));+#62 = VECTOR('',#63,1.);+#63 = DIRECTION('',(-0.,1.,0.));+#64 = PCURVE('',#32,#65);+#65 = DEFINITIONAL_REPRESENTATION('',(#66),#70);+#66 = LINE('',#67,#68);+#67 = CARTESIAN_POINT('',(0.,0.));+#68 = VECTOR('',#69,1.);+#69 = DIRECTION('',(0.,-1.));+#70 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#71 = PCURVE('',#72,#77);+#72 = PLANE('',#73);+#73 = AXIS2_PLACEMENT_3D('',#74,#75,#76);+#74 = CARTESIAN_POINT('',(-2.6025,-2.54,0.));+#75 = DIRECTION('',(0.,0.,1.));+#76 = DIRECTION('',(1.,0.,-0.));+#77 = DEFINITIONAL_REPRESENTATION('',(#78),#82);+#78 = LINE('',#79,#80);+#79 = CARTESIAN_POINT('',(0.,0.));+#80 = VECTOR('',#81,1.);+#81 = DIRECTION('',(0.,1.));+#82 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#83 = ORIENTED_EDGE('',*,*,#84,.T.);+#84 = EDGE_CURVE('',#57,#85,#87,.T.);+#85 = VERTEX_POINT('',#86);+#86 = CARTESIAN_POINT('',(-2.6025,-1.27,15.365));+#87 = SURFACE_CURVE('',#88,(#92,#99),.PCURVE_S1.);+#88 = LINE('',#89,#90);+#89 = CARTESIAN_POINT('',(-2.6025,-1.27,0.));+#90 = VECTOR('',#91,1.);+#91 = DIRECTION('',(0.,0.,1.));+#92 = PCURVE('',#32,#93);+#93 = DEFINITIONAL_REPRESENTATION('',(#94),#98);+#94 = LINE('',#95,#96);+#95 = CARTESIAN_POINT('',(0.,-1.27));+#96 = VECTOR('',#97,1.);+#97 = DIRECTION('',(1.,0.));+#98 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#99 = PCURVE('',#100,#105);+#100 = PLANE('',#101);+#101 = AXIS2_PLACEMENT_3D('',#102,#103,#104);+#102 = CARTESIAN_POINT('',(-2.6025,-1.27,0.));+#103 = DIRECTION('',(-0.,1.,0.));+#104 = DIRECTION('',(0.,0.,1.));+#105 = DEFINITIONAL_REPRESENTATION('',(#106),#110);+#106 = LINE('',#107,#108);+#107 = CARTESIAN_POINT('',(0.,0.));+#108 = VECTOR('',#109,1.);+#109 = DIRECTION('',(1.,0.));+#110 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#111 = ORIENTED_EDGE('',*,*,#112,.F.);+#112 = EDGE_CURVE('',#24,#85,#113,.T.);+#113 = SURFACE_CURVE('',#114,(#118,#125),.PCURVE_S1.);+#114 = LINE('',#115,#116);+#115 = CARTESIAN_POINT('',(-2.6025,-2.54,15.365));+#116 = VECTOR('',#117,1.);+#117 = DIRECTION('',(-0.,1.,0.));+#118 = PCURVE('',#32,#119);+#119 = DEFINITIONAL_REPRESENTATION('',(#120),#124);+#120 = LINE('',#121,#122);+#121 = CARTESIAN_POINT('',(15.365,0.));+#122 = VECTOR('',#123,1.);+#123 = DIRECTION('',(0.,-1.));+#124 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#125 = PCURVE('',#126,#131);+#126 = PLANE('',#127);+#127 = AXIS2_PLACEMENT_3D('',#128,#129,#130);+#128 = CARTESIAN_POINT('',(-2.6025,-2.54,15.365));+#129 = DIRECTION('',(0.,0.,1.));+#130 = DIRECTION('',(1.,0.,-0.));+#131 = DEFINITIONAL_REPRESENTATION('',(#132),#136);+#132 = LINE('',#133,#134);+#133 = CARTESIAN_POINT('',(0.,0.));+#134 = VECTOR('',#135,1.);+#135 = DIRECTION('',(0.,1.));+#136 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#137 = ADVANCED_FACE('',(#138,#213),#44,.F.);+#138 = FACE_BOUND('',#139,.F.);+#139 = EDGE_LOOP('',(#140,#163,#164,#187));+#140 = ORIENTED_EDGE('',*,*,#141,.F.);+#141 = EDGE_CURVE('',#22,#142,#144,.T.);+#142 = VERTEX_POINT('',#143);+#143 = CARTESIAN_POINT('',(7.6825,-2.54,0.));+#144 = SURFACE_CURVE('',#145,(#149,#156),.PCURVE_S1.);+#145 = LINE('',#146,#147);+#146 = CARTESIAN_POINT('',(-2.6025,-2.54,0.));+#147 = VECTOR('',#148,1.);+#148 = DIRECTION('',(1.,0.,-0.));+#149 = PCURVE('',#44,#150);+#150 = DEFINITIONAL_REPRESENTATION('',(#151),#155);+#151 = LINE('',#152,#153);+#152 = CARTESIAN_POINT('',(0.,0.));+#153 = VECTOR('',#154,1.);+#154 = DIRECTION('',(0.,1.));+#155 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#156 = PCURVE('',#72,#157);+#157 = DEFINITIONAL_REPRESENTATION('',(#158),#162);+#158 = LINE('',#159,#160);+#159 = CARTESIAN_POINT('',(0.,0.));+#160 = VECTOR('',#161,1.);+#161 = DIRECTION('',(1.,0.));+#162 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#163 = ORIENTED_EDGE('',*,*,#21,.T.);+#164 = ORIENTED_EDGE('',*,*,#165,.T.);+#165 = EDGE_CURVE('',#24,#166,#168,.T.);+#166 = VERTEX_POINT('',#167);+#167 = CARTESIAN_POINT('',(7.6825,-2.54,15.365));+#168 = SURFACE_CURVE('',#169,(#173,#180),.PCURVE_S1.);+#169 = LINE('',#170,#171);+#170 = CARTESIAN_POINT('',(-2.6025,-2.54,15.365));+#171 = VECTOR('',#172,1.);+#172 = DIRECTION('',(1.,0.,-0.));+#173 = PCURVE('',#44,#174);+#174 = DEFINITIONAL_REPRESENTATION('',(#175),#179);+#175 = LINE('',#176,#177);+#176 = CARTESIAN_POINT('',(15.365,0.));+#177 = VECTOR('',#178,1.);+#178 = DIRECTION('',(0.,1.));+#179 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#180 = PCURVE('',#126,#181);+#181 = DEFINITIONAL_REPRESENTATION('',(#182),#186);+#182 = LINE('',#183,#184);+#183 = CARTESIAN_POINT('',(0.,0.));+#184 = VECTOR('',#185,1.);+#185 = DIRECTION('',(1.,0.));+#186 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#187 = ORIENTED_EDGE('',*,*,#188,.F.);+#188 = EDGE_CURVE('',#142,#166,#189,.T.);+#189 = SURFACE_CURVE('',#190,(#194,#201),.PCURVE_S1.);+#190 = LINE('',#191,#192);+#191 = CARTESIAN_POINT('',(7.6825,-2.54,0.));+#192 = VECTOR('',#193,1.);+#193 = DIRECTION('',(0.,0.,1.));+#194 = PCURVE('',#44,#195);+#195 = DEFINITIONAL_REPRESENTATION('',(#196),#200);+#196 = LINE('',#197,#198);+#197 = CARTESIAN_POINT('',(0.,10.285));+#198 = VECTOR('',#199,1.);+#199 = DIRECTION('',(1.,0.));+#200 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#201 = PCURVE('',#202,#207);+#202 = PLANE('',#203);+#203 = AXIS2_PLACEMENT_3D('',#204,#205,#206);+#204 = CARTESIAN_POINT('',(7.6825,-2.54,0.));+#205 = DIRECTION('',(1.,0.,-0.));+#206 = DIRECTION('',(0.,0.,1.));+#207 = DEFINITIONAL_REPRESENTATION('',(#208),#212);+#208 = LINE('',#209,#210);+#209 = CARTESIAN_POINT('',(0.,0.));+#210 = VECTOR('',#211,1.);+#211 = DIRECTION('',(1.,0.));+#212 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#213 = FACE_BOUND('',#214,.F.);+#214 = EDGE_LOOP('',(#215));+#215 = ORIENTED_EDGE('',*,*,#216,.F.);+#216 = EDGE_CURVE('',#217,#217,#219,.T.);+#217 = VERTEX_POINT('',#218);+#218 = CARTESIAN_POINT('',(2.54,-2.54,14.4075));+#219 = SURFACE_CURVE('',#220,(#225,#232),.PCURVE_S1.);+#220 = CIRCLE('',#221,1.9025);+#221 = AXIS2_PLACEMENT_3D('',#222,#223,#224);+#222 = CARTESIAN_POINT('',(2.54,-2.54,12.505));+#223 = DIRECTION('',(0.,1.,0.));+#224 = DIRECTION('',(0.,-0.,1.));+#225 = PCURVE('',#44,#226);+#226 = DEFINITIONAL_REPRESENTATION('',(#227),#231);+#227 = CIRCLE('',#228,1.9025);+#228 = AXIS2_PLACEMENT_2D('',#229,#230);+#229 = CARTESIAN_POINT('',(12.505,5.1425));+#230 = DIRECTION('',(1.,0.));+#231 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#232 = PCURVE('',#233,#238);+#233 = CYLINDRICAL_SURFACE('',#234,1.9025);+#234 = AXIS2_PLACEMENT_3D('',#235,#236,#237);+#235 = CARTESIAN_POINT('',(2.54,-3.54,12.505));+#236 = DIRECTION('',(0.,1.,0.));+#237 = DIRECTION('',(0.,-0.,1.));+#238 = DEFINITIONAL_REPRESENTATION('',(#239),#243);+#239 = LINE('',#240,#241);+#240 = CARTESIAN_POINT('',(0.,1.));+#241 = VECTOR('',#242,1.);+#242 = DIRECTION('',(1.,0.));+#243 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#244 = ADVANCED_FACE('',(#245),#126,.T.);+#245 = FACE_BOUND('',#246,.T.);+#246 = EDGE_LOOP('',(#247,#248,#249,#272));+#247 = ORIENTED_EDGE('',*,*,#112,.F.);+#248 = ORIENTED_EDGE('',*,*,#165,.T.);+#249 = ORIENTED_EDGE('',*,*,#250,.T.);+#250 = EDGE_CURVE('',#166,#251,#253,.T.);+#251 = VERTEX_POINT('',#252);+#252 = CARTESIAN_POINT('',(7.6825,-1.27,15.365));+#253 = SURFACE_CURVE('',#254,(#258,#265),.PCURVE_S1.);+#254 = LINE('',#255,#256);+#255 = CARTESIAN_POINT('',(7.6825,-2.54,15.365));+#256 = VECTOR('',#257,1.);+#257 = DIRECTION('',(-0.,1.,0.));+#258 = PCURVE('',#126,#259);+#259 = DEFINITIONAL_REPRESENTATION('',(#260),#264);+#260 = LINE('',#261,#262);+#261 = CARTESIAN_POINT('',(10.285,0.));+#262 = VECTOR('',#263,1.);+#263 = DIRECTION('',(0.,1.));+#264 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#265 = PCURVE('',#202,#266);+#266 = DEFINITIONAL_REPRESENTATION('',(#267),#271);+#267 = LINE('',#268,#269);+#268 = CARTESIAN_POINT('',(15.365,0.));+#269 = VECTOR('',#270,1.);+#270 = DIRECTION('',(0.,-1.));+#271 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#272 = ORIENTED_EDGE('',*,*,#273,.F.);+#273 = EDGE_CURVE('',#85,#251,#274,.T.);+#274 = SURFACE_CURVE('',#275,(#279,#286),.PCURVE_S1.);+#275 = LINE('',#276,#277);+#276 = CARTESIAN_POINT('',(-2.6025,-1.27,15.365));+#277 = VECTOR('',#278,1.);+#278 = DIRECTION('',(1.,0.,-0.));+#279 = PCURVE('',#126,#280);+#280 = DEFINITIONAL_REPRESENTATION('',(#281),#285);+#281 = LINE('',#282,#283);+#282 = CARTESIAN_POINT('',(0.,1.27));+#283 = VECTOR('',#284,1.);+#284 = DIRECTION('',(1.,0.));+#285 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#286 = PCURVE('',#100,#287);+#287 = DEFINITIONAL_REPRESENTATION('',(#288),#292);+#288 = LINE('',#289,#290);+#289 = CARTESIAN_POINT('',(15.365,0.));+#290 = VECTOR('',#291,1.);+#291 = DIRECTION('',(0.,1.));+#292 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#293 = ADVANCED_FACE('',(#294,#342),#100,.T.);+#294 = FACE_BOUND('',#295,.T.);+#295 = EDGE_LOOP('',(#296,#319,#320,#321));+#296 = ORIENTED_EDGE('',*,*,#297,.F.);+#297 = EDGE_CURVE('',#57,#298,#300,.T.);+#298 = VERTEX_POINT('',#299);+#299 = CARTESIAN_POINT('',(7.6825,-1.27,0.));+#300 = SURFACE_CURVE('',#301,(#305,#312),.PCURVE_S1.);+#301 = LINE('',#302,#303);+#302 = CARTESIAN_POINT('',(-2.6025,-1.27,0.));+#303 = VECTOR('',#304,1.);+#304 = DIRECTION('',(1.,0.,-0.));+#305 = PCURVE('',#100,#306);+#306 = DEFINITIONAL_REPRESENTATION('',(#307),#311);+#307 = LINE('',#308,#309);+#308 = CARTESIAN_POINT('',(0.,0.));+#309 = VECTOR('',#310,1.);+#310 = DIRECTION('',(0.,1.));+#311 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#312 = PCURVE('',#72,#313);+#313 = DEFINITIONAL_REPRESENTATION('',(#314),#318);+#314 = LINE('',#315,#316);+#315 = CARTESIAN_POINT('',(0.,1.27));+#316 = VECTOR('',#317,1.);+#317 = DIRECTION('',(1.,0.));+#318 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#319 = ORIENTED_EDGE('',*,*,#84,.T.);+#320 = ORIENTED_EDGE('',*,*,#273,.T.);+#321 = ORIENTED_EDGE('',*,*,#322,.F.);+#322 = EDGE_CURVE('',#298,#251,#323,.T.);+#323 = SURFACE_CURVE('',#324,(#328,#335),.PCURVE_S1.);+#324 = LINE('',#325,#326);+#325 = CARTESIAN_POINT('',(7.6825,-1.27,0.));+#326 = VECTOR('',#327,1.);+#327 = DIRECTION('',(0.,0.,1.));+#328 = PCURVE('',#100,#329);+#329 = DEFINITIONAL_REPRESENTATION('',(#330),#334);+#330 = LINE('',#331,#332);+#331 = CARTESIAN_POINT('',(0.,10.285));+#332 = VECTOR('',#333,1.);+#333 = DIRECTION('',(1.,0.));+#334 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#335 = PCURVE('',#202,#336);+#336 = DEFINITIONAL_REPRESENTATION('',(#337),#341);+#337 = LINE('',#338,#339);+#338 = CARTESIAN_POINT('',(0.,-1.27));+#339 = VECTOR('',#340,1.);+#340 = DIRECTION('',(1.,0.));+#341 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#342 = FACE_BOUND('',#343,.T.);+#343 = EDGE_LOOP('',(#344));+#344 = ORIENTED_EDGE('',*,*,#345,.F.);+#345 = EDGE_CURVE('',#346,#346,#348,.T.);+#346 = VERTEX_POINT('',#347);+#347 = CARTESIAN_POINT('',(2.54,-1.27,14.4075));+#348 = SURFACE_CURVE('',#349,(#354,#361),.PCURVE_S1.);+#349 = CIRCLE('',#350,1.9025);+#350 = AXIS2_PLACEMENT_3D('',#351,#352,#353);+#351 = CARTESIAN_POINT('',(2.54,-1.27,12.505));+#352 = DIRECTION('',(0.,1.,0.));+#353 = DIRECTION('',(0.,-0.,1.));+#354 = PCURVE('',#100,#355);+#355 = DEFINITIONAL_REPRESENTATION('',(#356),#360);+#356 = CIRCLE('',#357,1.9025);+#357 = AXIS2_PLACEMENT_2D('',#358,#359);+#358 = CARTESIAN_POINT('',(12.505,5.1425));+#359 = DIRECTION('',(1.,0.));+#360 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#361 = PCURVE('',#233,#362);+#362 = DEFINITIONAL_REPRESENTATION('',(#363),#367);+#363 = LINE('',#364,#365);+#364 = CARTESIAN_POINT('',(0.,2.27));+#365 = VECTOR('',#366,1.);+#366 = DIRECTION('',(1.,0.));+#367 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#368 = ADVANCED_FACE('',(#369),#72,.F.);+#369 = FACE_BOUND('',#370,.F.);+#370 = EDGE_LOOP('',(#371,#372,#373,#394));+#371 = ORIENTED_EDGE('',*,*,#56,.F.);+#372 = ORIENTED_EDGE('',*,*,#141,.T.);+#373 = ORIENTED_EDGE('',*,*,#374,.T.);+#374 = EDGE_CURVE('',#142,#298,#375,.T.);+#375 = SURFACE_CURVE('',#376,(#380,#387),.PCURVE_S1.);+#376 = LINE('',#377,#378);+#377 = CARTESIAN_POINT('',(7.6825,-2.54,0.));+#378 = VECTOR('',#379,1.);+#379 = DIRECTION('',(-0.,1.,0.));+#380 = PCURVE('',#72,#381);+#381 = DEFINITIONAL_REPRESENTATION('',(#382),#386);+#382 = LINE('',#383,#384);+#383 = CARTESIAN_POINT('',(10.285,0.));+#384 = VECTOR('',#385,1.);+#385 = DIRECTION('',(0.,1.));+#386 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#387 = PCURVE('',#202,#388);+#388 = DEFINITIONAL_REPRESENTATION('',(#389),#393);+#389 = LINE('',#390,#391);+#390 = CARTESIAN_POINT('',(0.,0.));+#391 = VECTOR('',#392,1.);+#392 = DIRECTION('',(0.,-1.));+#393 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#394 = ORIENTED_EDGE('',*,*,#297,.F.);+#395 = ADVANCED_FACE('',(#396),#202,.T.);+#396 = FACE_BOUND('',#397,.T.);+#397 = EDGE_LOOP('',(#398,#399,#400,#401));+#398 = ORIENTED_EDGE('',*,*,#188,.F.);+#399 = ORIENTED_EDGE('',*,*,#374,.T.);+#400 = ORIENTED_EDGE('',*,*,#322,.T.);+#401 = ORIENTED_EDGE('',*,*,#250,.F.);+#402 = ADVANCED_FACE('',(#403),#233,.F.);+#403 = FACE_BOUND('',#404,.F.);+#404 = EDGE_LOOP('',(#405,#406,#427,#428));+#405 = ORIENTED_EDGE('',*,*,#345,.F.);+#406 = ORIENTED_EDGE('',*,*,#407,.F.);+#407 = EDGE_CURVE('',#217,#346,#408,.T.);+#408 = SEAM_CURVE('',#409,(#413,#420),.PCURVE_S1.);+#409 = LINE('',#410,#411);+#410 = CARTESIAN_POINT('',(2.54,-3.54,14.4075));+#411 = VECTOR('',#412,1.);+#412 = DIRECTION('',(0.,1.,0.));+#413 = PCURVE('',#233,#414);+#414 = DEFINITIONAL_REPRESENTATION('',(#415),#419);+#415 = LINE('',#416,#417);+#416 = CARTESIAN_POINT('',(6.28318530718,-0.));+#417 = VECTOR('',#418,1.);+#418 = DIRECTION('',(0.,1.));+#419 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#420 = PCURVE('',#233,#421);+#421 = DEFINITIONAL_REPRESENTATION('',(#422),#426);+#422 = LINE('',#423,#424);+#423 = CARTESIAN_POINT('',(0.,-0.));+#424 = VECTOR('',#425,1.);+#425 = DIRECTION('',(0.,1.));+#426 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#427 = ORIENTED_EDGE('',*,*,#216,.T.);+#428 = ORIENTED_EDGE('',*,*,#407,.T.);+#429 = ( GEOMETRIC_REPRESENTATION_CONTEXT(3) +GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#433)) GLOBAL_UNIT_ASSIGNED_CONTEXT+((#430,#431,#432)) REPRESENTATION_CONTEXT('Context #1',+  '3D Context with UNIT and UNCERTAINTY') );+#430 = ( LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.) );+#431 = ( NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.) );+#432 = ( NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT() );+#433 = UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(1.E-07),#430,+  'distance_accuracy_value','confusion accuracy');+#434 = PRODUCT_RELATED_PRODUCT_CATEGORY('part',$,(#7));+#435 = SHAPE_DEFINITION_REPRESENTATION(#436,#442);+#436 = PRODUCT_DEFINITION_SHAPE('','',#437);+#437 = PRODUCT_DEFINITION('design','',#438,#441);+#438 = PRODUCT_DEFINITION_FORMATION('','',#439);+#439 = PRODUCT('MoldedBody_Nominal','MoldedBody_Nominal','',(#440));+#440 = PRODUCT_CONTEXT('',#2,'mechanical');+#441 = PRODUCT_DEFINITION_CONTEXT('part definition',#2,'design');+#442 = ADVANCED_BREP_SHAPE_REPRESENTATION('',(#11,#443),#773);+#443 = MANIFOLD_SOLID_BREP('',#444);+#444 = CLOSED_SHELL('',(#445,#565,#665,#712,#759,#766));+#445 = ADVANCED_FACE('',(#446),#460,.F.);+#446 = FACE_BOUND('',#447,.F.);+#447 = EDGE_LOOP('',(#448,#483,#511,#539));+#448 = ORIENTED_EDGE('',*,*,#449,.F.);+#449 = EDGE_CURVE('',#450,#452,#454,.T.);+#450 = VERTEX_POINT('',#451);+#451 = CARTESIAN_POINT('',(-2.6025,-1.27,0.));+#452 = VERTEX_POINT('',#453);+#453 = CARTESIAN_POINT('',(-2.6025,-1.27,9.015));+#454 = SURFACE_CURVE('',#455,(#459,#471),.PCURVE_S1.);+#455 = LINE('',#456,#457);+#456 = CARTESIAN_POINT('',(-2.6025,-1.27,0.));+#457 = VECTOR('',#458,1.);+#458 = DIRECTION('',(0.,0.,1.));+#459 = PCURVE('',#460,#465);+#460 = PLANE('',#461);+#461 = AXIS2_PLACEMENT_3D('',#462,#463,#464);+#462 = CARTESIAN_POINT('',(-2.6025,-1.27,0.));+#463 = DIRECTION('',(1.,0.,-0.));+#464 = DIRECTION('',(0.,0.,1.));+#465 = DEFINITIONAL_REPRESENTATION('',(#466),#470);+#466 = LINE('',#467,#468);+#467 = CARTESIAN_POINT('',(0.,0.));+#468 = VECTOR('',#469,1.);+#469 = DIRECTION('',(1.,0.));+#470 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#471 = PCURVE('',#472,#477);+#472 = PLANE('',#473);+#473 = AXIS2_PLACEMENT_3D('',#474,#475,#476);+#474 = CARTESIAN_POINT('',(-2.6025,-1.27,0.));+#475 = DIRECTION('',(-0.,1.,0.));+#476 = DIRECTION('',(0.,0.,1.));+#477 = DEFINITIONAL_REPRESENTATION('',(#478),#482);+#478 = LINE('',#479,#480);+#479 = CARTESIAN_POINT('',(0.,0.));+#480 = VECTOR('',#481,1.);+#481 = DIRECTION('',(1.,0.));+#482 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#483 = ORIENTED_EDGE('',*,*,#484,.T.);+#484 = EDGE_CURVE('',#450,#485,#487,.T.);+#485 = VERTEX_POINT('',#486);+#486 = CARTESIAN_POINT('',(-2.6025,2.035,0.));+#487 = SURFACE_CURVE('',#488,(#492,#499),.PCURVE_S1.);+#488 = LINE('',#489,#490);+#489 = CARTESIAN_POINT('',(-2.6025,-1.27,0.));+#490 = VECTOR('',#491,1.);+#491 = DIRECTION('',(-0.,1.,0.));+#492 = PCURVE('',#460,#493);+#493 = DEFINITIONAL_REPRESENTATION('',(#494),#498);+#494 = LINE('',#495,#496);+#495 = CARTESIAN_POINT('',(0.,0.));+#496 = VECTOR('',#497,1.);+#497 = DIRECTION('',(0.,-1.));+#498 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#499 = PCURVE('',#500,#505);+#500 = PLANE('',#501);+#501 = AXIS2_PLACEMENT_3D('',#502,#503,#504);+#502 = CARTESIAN_POINT('',(-2.6025,-1.27,0.));+#503 = DIRECTION('',(0.,0.,1.));+#504 = DIRECTION('',(1.,0.,-0.));+#505 = DEFINITIONAL_REPRESENTATION('',(#506),#510);+#506 = LINE('',#507,#508);+#507 = CARTESIAN_POINT('',(0.,0.));+#508 = VECTOR('',#509,1.);+#509 = DIRECTION('',(0.,1.));+#510 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#511 = ORIENTED_EDGE('',*,*,#512,.T.);+#512 = EDGE_CURVE('',#485,#513,#515,.T.);+#513 = VERTEX_POINT('',#514);+#514 = CARTESIAN_POINT('',(-2.6025,2.035,9.015));+#515 = SURFACE_CURVE('',#516,(#520,#527),.PCURVE_S1.);+#516 = LINE('',#517,#518);+#517 = CARTESIAN_POINT('',(-2.6025,2.035,0.));+#518 = VECTOR('',#519,1.);+#519 = DIRECTION('',(0.,0.,1.));+#520 = PCURVE('',#460,#521);+#521 = DEFINITIONAL_REPRESENTATION('',(#522),#526);+#522 = LINE('',#523,#524);+#523 = CARTESIAN_POINT('',(0.,-3.305));+#524 = VECTOR('',#525,1.);+#525 = DIRECTION('',(1.,0.));+#526 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#527 = PCURVE('',#528,#533);+#528 = PLANE('',#529);+#529 = AXIS2_PLACEMENT_3D('',#530,#531,#532);+#530 = CARTESIAN_POINT('',(-2.6025,2.035,0.));+#531 = DIRECTION('',(-0.,1.,0.));+#532 = DIRECTION('',(0.,0.,1.));+#533 = DEFINITIONAL_REPRESENTATION('',(#534),#538);+#534 = LINE('',#535,#536);+#535 = CARTESIAN_POINT('',(0.,0.));+#536 = VECTOR('',#537,1.);+#537 = DIRECTION('',(1.,0.));+#538 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#539 = ORIENTED_EDGE('',*,*,#540,.F.);+#540 = EDGE_CURVE('',#452,#513,#541,.T.);+#541 = SURFACE_CURVE('',#542,(#546,#553),.PCURVE_S1.);+#542 = LINE('',#543,#544);+#543 = CARTESIAN_POINT('',(-2.6025,-1.27,9.015));+#544 = VECTOR('',#545,1.);+#545 = DIRECTION('',(-0.,1.,0.));+#546 = PCURVE('',#460,#547);+#547 = DEFINITIONAL_REPRESENTATION('',(#548),#552);+#548 = LINE('',#549,#550);+#549 = CARTESIAN_POINT('',(9.015,0.));+#550 = VECTOR('',#551,1.);+#551 = DIRECTION('',(0.,-1.));+#552 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#553 = PCURVE('',#554,#559);+#554 = PLANE('',#555);+#555 = AXIS2_PLACEMENT_3D('',#556,#557,#558);+#556 = CARTESIAN_POINT('',(-2.6025,-1.27,9.015));+#557 = DIRECTION('',(0.,0.,1.));+#558 = DIRECTION('',(1.,0.,-0.));+#559 = DEFINITIONAL_REPRESENTATION('',(#560),#564);+#560 = LINE('',#561,#562);+#561 = CARTESIAN_POINT('',(0.,0.));+#562 = VECTOR('',#563,1.);+#563 = DIRECTION('',(0.,1.));+#564 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#565 = ADVANCED_FACE('',(#566),#580,.T.);+#566 = FACE_BOUND('',#567,.T.);+#567 = EDGE_LOOP('',(#568,#598,#621,#644));+#568 = ORIENTED_EDGE('',*,*,#569,.F.);+#569 = EDGE_CURVE('',#570,#572,#574,.T.);+#570 = VERTEX_POINT('',#571);+#571 = CARTESIAN_POINT('',(7.6825,-1.27,0.));+#572 = VERTEX_POINT('',#573);+#573 = CARTESIAN_POINT('',(7.6825,-1.27,9.015));+#574 = SURFACE_CURVE('',#575,(#579,#591),.PCURVE_S1.);+#575 = LINE('',#576,#577);+#576 = CARTESIAN_POINT('',(7.6825,-1.27,0.));+#577 = VECTOR('',#578,1.);+#578 = DIRECTION('',(0.,0.,1.));+#579 = PCURVE('',#580,#585);+#580 = PLANE('',#581);+#581 = AXIS2_PLACEMENT_3D('',#582,#583,#584);+#582 = CARTESIAN_POINT('',(7.6825,-1.27,0.));+#583 = DIRECTION('',(1.,0.,-0.));+#584 = DIRECTION('',(0.,0.,1.));+#585 = DEFINITIONAL_REPRESENTATION('',(#586),#590);+#586 = LINE('',#587,#588);+#587 = CARTESIAN_POINT('',(0.,0.));+#588 = VECTOR('',#589,1.);+#589 = DIRECTION('',(1.,0.));+#590 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#591 = PCURVE('',#472,#592);+#592 = DEFINITIONAL_REPRESENTATION('',(#593),#597);+#593 = LINE('',#594,#595);+#594 = CARTESIAN_POINT('',(0.,10.285));+#595 = VECTOR('',#596,1.);+#596 = DIRECTION('',(1.,0.));+#597 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#598 = ORIENTED_EDGE('',*,*,#599,.T.);+#599 = EDGE_CURVE('',#570,#600,#602,.T.);+#600 = VERTEX_POINT('',#601);+#601 = CARTESIAN_POINT('',(7.6825,2.035,0.));+#602 = SURFACE_CURVE('',#603,(#607,#614),.PCURVE_S1.);+#603 = LINE('',#604,#605);+#604 = CARTESIAN_POINT('',(7.6825,-1.27,0.));+#605 = VECTOR('',#606,1.);+#606 = DIRECTION('',(-0.,1.,0.));+#607 = PCURVE('',#580,#608);+#608 = DEFINITIONAL_REPRESENTATION('',(#609),#613);+#609 = LINE('',#610,#611);+#610 = CARTESIAN_POINT('',(0.,0.));+#611 = VECTOR('',#612,1.);+#612 = DIRECTION('',(0.,-1.));+#613 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#614 = PCURVE('',#500,#615);+#615 = DEFINITIONAL_REPRESENTATION('',(#616),#620);+#616 = LINE('',#617,#618);+#617 = CARTESIAN_POINT('',(10.285,0.));+#618 = VECTOR('',#619,1.);+#619 = DIRECTION('',(0.,1.));+#620 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#621 = ORIENTED_EDGE('',*,*,#622,.T.);+#622 = EDGE_CURVE('',#600,#623,#625,.T.);+#623 = VERTEX_POINT('',#624);+#624 = CARTESIAN_POINT('',(7.6825,2.035,9.015));+#625 = SURFACE_CURVE('',#626,(#630,#637),.PCURVE_S1.);+#626 = LINE('',#627,#628);+#627 = CARTESIAN_POINT('',(7.6825,2.035,0.));+#628 = VECTOR('',#629,1.);+#629 = DIRECTION('',(0.,0.,1.));+#630 = PCURVE('',#580,#631);+#631 = DEFINITIONAL_REPRESENTATION('',(#632),#636);+#632 = LINE('',#633,#634);+#633 = CARTESIAN_POINT('',(0.,-3.305));+#634 = VECTOR('',#635,1.);+#635 = DIRECTION('',(1.,0.));+#636 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#637 = PCURVE('',#528,#638);+#638 = DEFINITIONAL_REPRESENTATION('',(#639),#643);+#639 = LINE('',#640,#641);+#640 = CARTESIAN_POINT('',(0.,10.285));+#641 = VECTOR('',#642,1.);+#642 = DIRECTION('',(1.,0.));+#643 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#644 = ORIENTED_EDGE('',*,*,#645,.F.);+#645 = EDGE_CURVE('',#572,#623,#646,.T.);+#646 = SURFACE_CURVE('',#647,(#651,#658),.PCURVE_S1.);+#647 = LINE('',#648,#649);+#648 = CARTESIAN_POINT('',(7.6825,-1.27,9.015));+#649 = VECTOR('',#650,1.);+#650 = DIRECTION('',(-0.,1.,0.));+#651 = PCURVE('',#580,#652);+#652 = DEFINITIONAL_REPRESENTATION('',(#653),#657);+#653 = LINE('',#654,#655);+#654 = CARTESIAN_POINT('',(9.015,0.));+#655 = VECTOR('',#656,1.);+#656 = DIRECTION('',(0.,-1.));+#657 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#658 = PCURVE('',#554,#659);+#659 = DEFINITIONAL_REPRESENTATION('',(#660),#664);+#660 = LINE('',#661,#662);+#661 = CARTESIAN_POINT('',(10.285,0.));+#662 = VECTOR('',#663,1.);+#663 = DIRECTION('',(0.,1.));+#664 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#665 = ADVANCED_FACE('',(#666),#472,.F.);+#666 = FACE_BOUND('',#667,.F.);+#667 = EDGE_LOOP('',(#668,#689,#690,#711));+#668 = ORIENTED_EDGE('',*,*,#669,.F.);+#669 = EDGE_CURVE('',#450,#570,#670,.T.);+#670 = SURFACE_CURVE('',#671,(#675,#682),.PCURVE_S1.);+#671 = LINE('',#672,#673);+#672 = CARTESIAN_POINT('',(-2.6025,-1.27,0.));+#673 = VECTOR('',#674,1.);+#674 = DIRECTION('',(1.,0.,-0.));+#675 = PCURVE('',#472,#676);+#676 = DEFINITIONAL_REPRESENTATION('',(#677),#681);+#677 = LINE('',#678,#679);+#678 = CARTESIAN_POINT('',(0.,0.));+#679 = VECTOR('',#680,1.);+#680 = DIRECTION('',(0.,1.));+#681 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#682 = PCURVE('',#500,#683);+#683 = DEFINITIONAL_REPRESENTATION('',(#684),#688);+#684 = LINE('',#685,#686);+#685 = CARTESIAN_POINT('',(0.,0.));+#686 = VECTOR('',#687,1.);+#687 = DIRECTION('',(1.,0.));+#688 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#689 = ORIENTED_EDGE('',*,*,#449,.T.);+#690 = ORIENTED_EDGE('',*,*,#691,.T.);+#691 = EDGE_CURVE('',#452,#572,#692,.T.);+#692 = SURFACE_CURVE('',#693,(#697,#704),.PCURVE_S1.);+#693 = LINE('',#694,#695);+#694 = CARTESIAN_POINT('',(-2.6025,-1.27,9.015));+#695 = VECTOR('',#696,1.);+#696 = DIRECTION('',(1.,0.,-0.));+#697 = PCURVE('',#472,#698);+#698 = DEFINITIONAL_REPRESENTATION('',(#699),#703);+#699 = LINE('',#700,#701);+#700 = CARTESIAN_POINT('',(9.015,0.));+#701 = VECTOR('',#702,1.);+#702 = DIRECTION('',(0.,1.));+#703 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#704 = PCURVE('',#554,#705);+#705 = DEFINITIONAL_REPRESENTATION('',(#706),#710);+#706 = LINE('',#707,#708);+#707 = CARTESIAN_POINT('',(0.,0.));+#708 = VECTOR('',#709,1.);+#709 = DIRECTION('',(1.,0.));+#710 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#711 = ORIENTED_EDGE('',*,*,#569,.F.);+#712 = ADVANCED_FACE('',(#713),#528,.T.);+#713 = FACE_BOUND('',#714,.T.);+#714 = EDGE_LOOP('',(#715,#736,#737,#758));+#715 = ORIENTED_EDGE('',*,*,#716,.F.);+#716 = EDGE_CURVE('',#485,#600,#717,.T.);+#717 = SURFACE_CURVE('',#718,(#722,#729),.PCURVE_S1.);+#718 = LINE('',#719,#720);+#719 = CARTESIAN_POINT('',(-2.6025,2.035,0.));+#720 = VECTOR('',#721,1.);+#721 = DIRECTION('',(1.,0.,-0.));+#722 = PCURVE('',#528,#723);+#723 = DEFINITIONAL_REPRESENTATION('',(#724),#728);+#724 = LINE('',#725,#726);+#725 = CARTESIAN_POINT('',(0.,0.));+#726 = VECTOR('',#727,1.);+#727 = DIRECTION('',(0.,1.));+#728 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#729 = PCURVE('',#500,#730);+#730 = DEFINITIONAL_REPRESENTATION('',(#731),#735);+#731 = LINE('',#732,#733);+#732 = CARTESIAN_POINT('',(0.,3.305));+#733 = VECTOR('',#734,1.);+#734 = DIRECTION('',(1.,0.));+#735 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#736 = ORIENTED_EDGE('',*,*,#512,.T.);+#737 = ORIENTED_EDGE('',*,*,#738,.T.);+#738 = EDGE_CURVE('',#513,#623,#739,.T.);+#739 = SURFACE_CURVE('',#740,(#744,#751),.PCURVE_S1.);+#740 = LINE('',#741,#742);+#741 = CARTESIAN_POINT('',(-2.6025,2.035,9.015));+#742 = VECTOR('',#743,1.);+#743 = DIRECTION('',(1.,0.,-0.));+#744 = PCURVE('',#528,#745);+#745 = DEFINITIONAL_REPRESENTATION('',(#746),#750);+#746 = LINE('',#747,#748);+#747 = CARTESIAN_POINT('',(9.015,0.));+#748 = VECTOR('',#749,1.);+#749 = DIRECTION('',(0.,1.));+#750 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#751 = PCURVE('',#554,#752);+#752 = DEFINITIONAL_REPRESENTATION('',(#753),#757);+#753 = LINE('',#754,#755);+#754 = CARTESIAN_POINT('',(0.,3.305));+#755 = VECTOR('',#756,1.);+#756 = DIRECTION('',(1.,0.));+#757 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#758 = ORIENTED_EDGE('',*,*,#622,.F.);+#759 = ADVANCED_FACE('',(#760),#500,.F.);+#760 = FACE_BOUND('',#761,.F.);+#761 = EDGE_LOOP('',(#762,#763,#764,#765));+#762 = ORIENTED_EDGE('',*,*,#484,.F.);+#763 = ORIENTED_EDGE('',*,*,#669,.T.);+#764 = ORIENTED_EDGE('',*,*,#599,.T.);+#765 = ORIENTED_EDGE('',*,*,#716,.F.);+#766 = ADVANCED_FACE('',(#767),#554,.T.);+#767 = FACE_BOUND('',#768,.T.);+#768 = EDGE_LOOP('',(#769,#770,#771,#772));+#769 = ORIENTED_EDGE('',*,*,#540,.F.);+#770 = ORIENTED_EDGE('',*,*,#691,.T.);+#771 = ORIENTED_EDGE('',*,*,#645,.T.);+#772 = ORIENTED_EDGE('',*,*,#738,.F.);+#773 = ( GEOMETRIC_REPRESENTATION_CONTEXT(3) +GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#777)) GLOBAL_UNIT_ASSIGNED_CONTEXT+((#774,#775,#776)) REPRESENTATION_CONTEXT('Context #1',+  '3D Context with UNIT and UNCERTAINTY') );+#774 = ( LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.) );+#775 = ( NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.) );+#776 = ( NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT() );+#777 = UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(1.E-07),#774,+  'distance_accuracy_value','confusion accuracy');+#778 = PRODUCT_RELATED_PRODUCT_CATEGORY('part',$,(#439));+#779 = SHAPE_DEFINITION_REPRESENTATION(#780,#786);+#780 = PRODUCT_DEFINITION_SHAPE('','',#781);+#781 = PRODUCT_DEFINITION('design','',#782,#785);+#782 = PRODUCT_DEFINITION_FORMATION('','',#783);+#783 = PRODUCT('Lead1_Gate','Lead1_Gate','',(#784));+#784 = PRODUCT_CONTEXT('',#2,'mechanical');+#785 = PRODUCT_DEFINITION_CONTEXT('part definition',#2,'design');+#786 = ADVANCED_BREP_SHAPE_REPRESENTATION('',(#11,#787),#1117);+#787 = MANIFOLD_SOLID_BREP('',#788);+#788 = CLOSED_SHELL('',(#789,#909,#1009,#1056,#1103,#1110));+#789 = ADVANCED_FACE('',(#790),#804,.F.);+#790 = FACE_BOUND('',#791,.F.);+#791 = EDGE_LOOP('',(#792,#827,#855,#883));+#792 = ORIENTED_EDGE('',*,*,#793,.F.);+#793 = EDGE_CURVE('',#794,#796,#798,.T.);+#794 = VERTEX_POINT('',#795);+#795 = CARTESIAN_POINT('',(-0.415,-0.2275,-13.335));+#796 = VERTEX_POINT('',#797);+#797 = CARTESIAN_POINT('',(-0.415,-0.2275,-4.315));+#798 = SURFACE_CURVE('',#799,(#803,#815),.PCURVE_S1.);+#799 = LINE('',#800,#801);+#800 = CARTESIAN_POINT('',(-0.415,-0.2275,-13.335));+#801 = VECTOR('',#802,1.);+#802 = DIRECTION('',(0.,0.,1.));+#803 = PCURVE('',#804,#809);+#804 = PLANE('',#805);+#805 = AXIS2_PLACEMENT_3D('',#806,#807,#808);+#806 = CARTESIAN_POINT('',(-0.415,-0.2275,-13.335));+#807 = DIRECTION('',(1.,0.,-0.));+#808 = DIRECTION('',(0.,0.,1.));+#809 = DEFINITIONAL_REPRESENTATION('',(#810),#814);+#810 = LINE('',#811,#812);+#811 = CARTESIAN_POINT('',(0.,0.));+#812 = VECTOR('',#813,1.);+#813 = DIRECTION('',(1.,0.));+#814 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#815 = PCURVE('',#816,#821);+#816 = PLANE('',#817);+#817 = AXIS2_PLACEMENT_3D('',#818,#819,#820);+#818 = CARTESIAN_POINT('',(-0.415,-0.2275,-13.335));+#819 = DIRECTION('',(-0.,1.,0.));+#820 = DIRECTION('',(0.,0.,1.));+#821 = DEFINITIONAL_REPRESENTATION('',(#822),#826);+#822 = LINE('',#823,#824);+#823 = CARTESIAN_POINT('',(0.,0.));+#824 = VECTOR('',#825,1.);+#825 = DIRECTION('',(1.,0.));+#826 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#827 = ORIENTED_EDGE('',*,*,#828,.T.);+#828 = EDGE_CURVE('',#794,#829,#831,.T.);+#829 = VERTEX_POINT('',#830);+#830 = CARTESIAN_POINT('',(-0.415,0.2275,-13.335));+#831 = SURFACE_CURVE('',#832,(#836,#843),.PCURVE_S1.);+#832 = LINE('',#833,#834);+#833 = CARTESIAN_POINT('',(-0.415,-0.2275,-13.335));+#834 = VECTOR('',#835,1.);+#835 = DIRECTION('',(-0.,1.,0.));+#836 = PCURVE('',#804,#837);+#837 = DEFINITIONAL_REPRESENTATION('',(#838),#842);+#838 = LINE('',#839,#840);+#839 = CARTESIAN_POINT('',(0.,0.));+#840 = VECTOR('',#841,1.);+#841 = DIRECTION('',(0.,-1.));+#842 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#843 = PCURVE('',#844,#849);+#844 = PLANE('',#845);+#845 = AXIS2_PLACEMENT_3D('',#846,#847,#848);+#846 = CARTESIAN_POINT('',(-0.415,-0.2275,-13.335));+#847 = DIRECTION('',(0.,0.,1.));+#848 = DIRECTION('',(1.,0.,-0.));+#849 = DEFINITIONAL_REPRESENTATION('',(#850),#854);+#850 = LINE('',#851,#852);+#851 = CARTESIAN_POINT('',(0.,0.));+#852 = VECTOR('',#853,1.);+#853 = DIRECTION('',(0.,1.));+#854 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#855 = ORIENTED_EDGE('',*,*,#856,.T.);+#856 = EDGE_CURVE('',#829,#857,#859,.T.);+#857 = VERTEX_POINT('',#858);+#858 = CARTESIAN_POINT('',(-0.415,0.2275,-4.315));+#859 = SURFACE_CURVE('',#860,(#864,#871),.PCURVE_S1.);+#860 = LINE('',#861,#862);+#861 = CARTESIAN_POINT('',(-0.415,0.2275,-13.335));+#862 = VECTOR('',#863,1.);+#863 = DIRECTION('',(0.,0.,1.));+#864 = PCURVE('',#804,#865);+#865 = DEFINITIONAL_REPRESENTATION('',(#866),#870);+#866 = LINE('',#867,#868);+#867 = CARTESIAN_POINT('',(0.,-0.455));+#868 = VECTOR('',#869,1.);+#869 = DIRECTION('',(1.,0.));+#870 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#871 = PCURVE('',#872,#877);+#872 = PLANE('',#873);+#873 = AXIS2_PLACEMENT_3D('',#874,#875,#876);+#874 = CARTESIAN_POINT('',(-0.415,0.2275,-13.335));+#875 = DIRECTION('',(-0.,1.,0.));+#876 = DIRECTION('',(0.,0.,1.));+#877 = DEFINITIONAL_REPRESENTATION('',(#878),#882);+#878 = LINE('',#879,#880);+#879 = CARTESIAN_POINT('',(0.,0.));+#880 = VECTOR('',#881,1.);+#881 = DIRECTION('',(1.,0.));+#882 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#883 = ORIENTED_EDGE('',*,*,#884,.F.);+#884 = EDGE_CURVE('',#796,#857,#885,.T.);+#885 = SURFACE_CURVE('',#886,(#890,#897),.PCURVE_S1.);+#886 = LINE('',#887,#888);+#887 = CARTESIAN_POINT('',(-0.415,-0.2275,-4.315));+#888 = VECTOR('',#889,1.);+#889 = DIRECTION('',(-0.,1.,0.));+#890 = PCURVE('',#804,#891);+#891 = DEFINITIONAL_REPRESENTATION('',(#892),#896);+#892 = LINE('',#893,#894);+#893 = CARTESIAN_POINT('',(9.02,0.));+#894 = VECTOR('',#895,1.);+#895 = DIRECTION('',(0.,-1.));+#896 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#897 = PCURVE('',#898,#903);+#898 = PLANE('',#899);+#899 = AXIS2_PLACEMENT_3D('',#900,#901,#902);+#900 = CARTESIAN_POINT('',(-0.415,-0.2275,-4.315));+#901 = DIRECTION('',(0.,0.,1.));+#902 = DIRECTION('',(1.,0.,-0.));+#903 = DEFINITIONAL_REPRESENTATION('',(#904),#908);+#904 = LINE('',#905,#906);+#905 = CARTESIAN_POINT('',(0.,0.));+#906 = VECTOR('',#907,1.);+#907 = DIRECTION('',(0.,1.));+#908 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#909 = ADVANCED_FACE('',(#910),#924,.T.);+#910 = FACE_BOUND('',#911,.T.);+#911 = EDGE_LOOP('',(#912,#942,#965,#988));+#912 = ORIENTED_EDGE('',*,*,#913,.F.);+#913 = EDGE_CURVE('',#914,#916,#918,.T.);+#914 = VERTEX_POINT('',#915);+#915 = CARTESIAN_POINT('',(0.415,-0.2275,-13.335));+#916 = VERTEX_POINT('',#917);+#917 = CARTESIAN_POINT('',(0.415,-0.2275,-4.315));+#918 = SURFACE_CURVE('',#919,(#923,#935),.PCURVE_S1.);+#919 = LINE('',#920,#921);+#920 = CARTESIAN_POINT('',(0.415,-0.2275,-13.335));+#921 = VECTOR('',#922,1.);+#922 = DIRECTION('',(0.,0.,1.));+#923 = PCURVE('',#924,#929);+#924 = PLANE('',#925);+#925 = AXIS2_PLACEMENT_3D('',#926,#927,#928);+#926 = CARTESIAN_POINT('',(0.415,-0.2275,-13.335));+#927 = DIRECTION('',(1.,0.,-0.));+#928 = DIRECTION('',(0.,0.,1.));+#929 = DEFINITIONAL_REPRESENTATION('',(#930),#934);+#930 = LINE('',#931,#932);+#931 = CARTESIAN_POINT('',(0.,0.));+#932 = VECTOR('',#933,1.);+#933 = DIRECTION('',(1.,0.));+#934 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#935 = PCURVE('',#816,#936);+#936 = DEFINITIONAL_REPRESENTATION('',(#937),#941);+#937 = LINE('',#938,#939);+#938 = CARTESIAN_POINT('',(0.,0.83));+#939 = VECTOR('',#940,1.);+#940 = DIRECTION('',(1.,0.));+#941 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#942 = ORIENTED_EDGE('',*,*,#943,.T.);+#943 = EDGE_CURVE('',#914,#944,#946,.T.);+#944 = VERTEX_POINT('',#945);+#945 = CARTESIAN_POINT('',(0.415,0.2275,-13.335));+#946 = SURFACE_CURVE('',#947,(#951,#958),.PCURVE_S1.);+#947 = LINE('',#948,#949);+#948 = CARTESIAN_POINT('',(0.415,-0.2275,-13.335));+#949 = VECTOR('',#950,1.);+#950 = DIRECTION('',(-0.,1.,0.));+#951 = PCURVE('',#924,#952);+#952 = DEFINITIONAL_REPRESENTATION('',(#953),#957);+#953 = LINE('',#954,#955);+#954 = CARTESIAN_POINT('',(0.,0.));+#955 = VECTOR('',#956,1.);+#956 = DIRECTION('',(0.,-1.));+#957 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#958 = PCURVE('',#844,#959);+#959 = DEFINITIONAL_REPRESENTATION('',(#960),#964);+#960 = LINE('',#961,#962);+#961 = CARTESIAN_POINT('',(0.83,0.));+#962 = VECTOR('',#963,1.);+#963 = DIRECTION('',(0.,1.));+#964 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#965 = ORIENTED_EDGE('',*,*,#966,.T.);+#966 = EDGE_CURVE('',#944,#967,#969,.T.);+#967 = VERTEX_POINT('',#968);+#968 = CARTESIAN_POINT('',(0.415,0.2275,-4.315));+#969 = SURFACE_CURVE('',#970,(#974,#981),.PCURVE_S1.);+#970 = LINE('',#971,#972);+#971 = CARTESIAN_POINT('',(0.415,0.2275,-13.335));+#972 = VECTOR('',#973,1.);+#973 = DIRECTION('',(0.,0.,1.));+#974 = PCURVE('',#924,#975);+#975 = DEFINITIONAL_REPRESENTATION('',(#976),#980);+#976 = LINE('',#977,#978);+#977 = CARTESIAN_POINT('',(0.,-0.455));+#978 = VECTOR('',#979,1.);+#979 = DIRECTION('',(1.,0.));+#980 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#981 = PCURVE('',#872,#982);+#982 = DEFINITIONAL_REPRESENTATION('',(#983),#987);+#983 = LINE('',#984,#985);+#984 = CARTESIAN_POINT('',(0.,0.83));+#985 = VECTOR('',#986,1.);+#986 = DIRECTION('',(1.,0.));+#987 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#988 = ORIENTED_EDGE('',*,*,#989,.F.);+#989 = EDGE_CURVE('',#916,#967,#990,.T.);+#990 = SURFACE_CURVE('',#991,(#995,#1002),.PCURVE_S1.);+#991 = LINE('',#992,#993);+#992 = CARTESIAN_POINT('',(0.415,-0.2275,-4.315));+#993 = VECTOR('',#994,1.);+#994 = DIRECTION('',(-0.,1.,0.));+#995 = PCURVE('',#924,#996);+#996 = DEFINITIONAL_REPRESENTATION('',(#997),#1001);+#997 = LINE('',#998,#999);+#998 = CARTESIAN_POINT('',(9.02,0.));+#999 = VECTOR('',#1000,1.);+#1000 = DIRECTION('',(0.,-1.));+#1001 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1002 = PCURVE('',#898,#1003);+#1003 = DEFINITIONAL_REPRESENTATION('',(#1004),#1008);+#1004 = LINE('',#1005,#1006);+#1005 = CARTESIAN_POINT('',(0.83,0.));+#1006 = VECTOR('',#1007,1.);+#1007 = DIRECTION('',(0.,1.));+#1008 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1009 = ADVANCED_FACE('',(#1010),#816,.F.);+#1010 = FACE_BOUND('',#1011,.F.);+#1011 = EDGE_LOOP('',(#1012,#1033,#1034,#1055));+#1012 = ORIENTED_EDGE('',*,*,#1013,.F.);+#1013 = EDGE_CURVE('',#794,#914,#1014,.T.);+#1014 = SURFACE_CURVE('',#1015,(#1019,#1026),.PCURVE_S1.);+#1015 = LINE('',#1016,#1017);+#1016 = CARTESIAN_POINT('',(-0.415,-0.2275,-13.335));+#1017 = VECTOR('',#1018,1.);+#1018 = DIRECTION('',(1.,0.,-0.));+#1019 = PCURVE('',#816,#1020);+#1020 = DEFINITIONAL_REPRESENTATION('',(#1021),#1025);+#1021 = LINE('',#1022,#1023);+#1022 = CARTESIAN_POINT('',(0.,0.));+#1023 = VECTOR('',#1024,1.);+#1024 = DIRECTION('',(0.,1.));+#1025 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1026 = PCURVE('',#844,#1027);+#1027 = DEFINITIONAL_REPRESENTATION('',(#1028),#1032);+#1028 = LINE('',#1029,#1030);+#1029 = CARTESIAN_POINT('',(0.,0.));+#1030 = VECTOR('',#1031,1.);+#1031 = DIRECTION('',(1.,0.));+#1032 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1033 = ORIENTED_EDGE('',*,*,#793,.T.);+#1034 = ORIENTED_EDGE('',*,*,#1035,.T.);+#1035 = EDGE_CURVE('',#796,#916,#1036,.T.);+#1036 = SURFACE_CURVE('',#1037,(#1041,#1048),.PCURVE_S1.);+#1037 = LINE('',#1038,#1039);+#1038 = CARTESIAN_POINT('',(-0.415,-0.2275,-4.315));+#1039 = VECTOR('',#1040,1.);+#1040 = DIRECTION('',(1.,0.,-0.));+#1041 = PCURVE('',#816,#1042);+#1042 = DEFINITIONAL_REPRESENTATION('',(#1043),#1047);+#1043 = LINE('',#1044,#1045);+#1044 = CARTESIAN_POINT('',(9.02,0.));+#1045 = VECTOR('',#1046,1.);+#1046 = DIRECTION('',(0.,1.));+#1047 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1048 = PCURVE('',#898,#1049);+#1049 = DEFINITIONAL_REPRESENTATION('',(#1050),#1054);+#1050 = LINE('',#1051,#1052);+#1051 = CARTESIAN_POINT('',(0.,0.));+#1052 = VECTOR('',#1053,1.);+#1053 = DIRECTION('',(1.,0.));+#1054 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1055 = ORIENTED_EDGE('',*,*,#913,.F.);+#1056 = ADVANCED_FACE('',(#1057),#872,.T.);+#1057 = FACE_BOUND('',#1058,.T.);+#1058 = EDGE_LOOP('',(#1059,#1080,#1081,#1102));+#1059 = ORIENTED_EDGE('',*,*,#1060,.F.);+#1060 = EDGE_CURVE('',#829,#944,#1061,.T.);+#1061 = SURFACE_CURVE('',#1062,(#1066,#1073),.PCURVE_S1.);+#1062 = LINE('',#1063,#1064);+#1063 = CARTESIAN_POINT('',(-0.415,0.2275,-13.335));+#1064 = VECTOR('',#1065,1.);+#1065 = DIRECTION('',(1.,0.,-0.));+#1066 = PCURVE('',#872,#1067);+#1067 = DEFINITIONAL_REPRESENTATION('',(#1068),#1072);+#1068 = LINE('',#1069,#1070);+#1069 = CARTESIAN_POINT('',(0.,0.));+#1070 = VECTOR('',#1071,1.);+#1071 = DIRECTION('',(0.,1.));+#1072 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1073 = PCURVE('',#844,#1074);+#1074 = DEFINITIONAL_REPRESENTATION('',(#1075),#1079);+#1075 = LINE('',#1076,#1077);+#1076 = CARTESIAN_POINT('',(0.,0.455));+#1077 = VECTOR('',#1078,1.);+#1078 = DIRECTION('',(1.,0.));+#1079 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1080 = ORIENTED_EDGE('',*,*,#856,.T.);+#1081 = ORIENTED_EDGE('',*,*,#1082,.T.);+#1082 = EDGE_CURVE('',#857,#967,#1083,.T.);+#1083 = SURFACE_CURVE('',#1084,(#1088,#1095),.PCURVE_S1.);+#1084 = LINE('',#1085,#1086);+#1085 = CARTESIAN_POINT('',(-0.415,0.2275,-4.315));+#1086 = VECTOR('',#1087,1.);+#1087 = DIRECTION('',(1.,0.,-0.));+#1088 = PCURVE('',#872,#1089);+#1089 = DEFINITIONAL_REPRESENTATION('',(#1090),#1094);+#1090 = LINE('',#1091,#1092);+#1091 = CARTESIAN_POINT('',(9.02,0.));+#1092 = VECTOR('',#1093,1.);+#1093 = DIRECTION('',(0.,1.));+#1094 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1095 = PCURVE('',#898,#1096);+#1096 = DEFINITIONAL_REPRESENTATION('',(#1097),#1101);+#1097 = LINE('',#1098,#1099);+#1098 = CARTESIAN_POINT('',(0.,0.455));+#1099 = VECTOR('',#1100,1.);+#1100 = DIRECTION('',(1.,0.));+#1101 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1102 = ORIENTED_EDGE('',*,*,#966,.F.);+#1103 = ADVANCED_FACE('',(#1104),#844,.F.);+#1104 = FACE_BOUND('',#1105,.F.);+#1105 = EDGE_LOOP('',(#1106,#1107,#1108,#1109));+#1106 = ORIENTED_EDGE('',*,*,#828,.F.);+#1107 = ORIENTED_EDGE('',*,*,#1013,.T.);+#1108 = ORIENTED_EDGE('',*,*,#943,.T.);+#1109 = ORIENTED_EDGE('',*,*,#1060,.F.);+#1110 = ADVANCED_FACE('',(#1111),#898,.T.);+#1111 = FACE_BOUND('',#1112,.T.);+#1112 = EDGE_LOOP('',(#1113,#1114,#1115,#1116));+#1113 = ORIENTED_EDGE('',*,*,#884,.F.);+#1114 = ORIENTED_EDGE('',*,*,#1035,.T.);+#1115 = ORIENTED_EDGE('',*,*,#989,.T.);+#1116 = ORIENTED_EDGE('',*,*,#1082,.F.);+#1117 = ( GEOMETRIC_REPRESENTATION_CONTEXT(3) +GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#1121)) +GLOBAL_UNIT_ASSIGNED_CONTEXT((#1118,#1119,#1120)) REPRESENTATION_CONTEXT+('Context #1','3D Context with UNIT and UNCERTAINTY') );+#1118 = ( LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.) );+#1119 = ( NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.) );+#1120 = ( NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT() );+#1121 = UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(1.E-07),#1118,+  'distance_accuracy_value','confusion accuracy');+#1122 = PRODUCT_RELATED_PRODUCT_CATEGORY('part',$,(#783));+#1123 = SHAPE_DEFINITION_REPRESENTATION(#1124,#1130);+#1124 = PRODUCT_DEFINITION_SHAPE('','',#1125);+#1125 = PRODUCT_DEFINITION('design','',#1126,#1129);+#1126 = PRODUCT_DEFINITION_FORMATION('','',#1127);+#1127 = PRODUCT('Lead1_Shoulder','Lead1_Shoulder','',(#1128));+#1128 = PRODUCT_CONTEXT('',#2,'mechanical');+#1129 = PRODUCT_DEFINITION_CONTEXT('part definition',#2,'design');+#1130 = ADVANCED_BREP_SHAPE_REPRESENTATION('',(#11,#1131),#1461);+#1131 = MANIFOLD_SOLID_BREP('',#1132);+#1132 = CLOSED_SHELL('',(#1133,#1253,#1353,#1400,#1447,#1454));+#1133 = ADVANCED_FACE('',(#1134),#1148,.F.);+#1134 = FACE_BOUND('',#1135,.F.);+#1135 = EDGE_LOOP('',(#1136,#1171,#1199,#1227));+#1136 = ORIENTED_EDGE('',*,*,#1137,.F.);+#1137 = EDGE_CURVE('',#1138,#1140,#1142,.T.);+#1138 = VERTEX_POINT('',#1139);+#1139 = CARTESIAN_POINT('',(-0.7,-0.2275,-4.315));+#1140 = VERTEX_POINT('',#1141);+#1141 = CARTESIAN_POINT('',(-0.7,-0.2275,0.));+#1142 = SURFACE_CURVE('',#1143,(#1147,#1159),.PCURVE_S1.);+#1143 = LINE('',#1144,#1145);+#1144 = CARTESIAN_POINT('',(-0.7,-0.2275,-4.315));+#1145 = VECTOR('',#1146,1.);+#1146 = DIRECTION('',(0.,0.,1.));+#1147 = PCURVE('',#1148,#1153);+#1148 = PLANE('',#1149);+#1149 = AXIS2_PLACEMENT_3D('',#1150,#1151,#1152);+#1150 = CARTESIAN_POINT('',(-0.7,-0.2275,-4.315));+#1151 = DIRECTION('',(1.,0.,-0.));+#1152 = DIRECTION('',(0.,0.,1.));+#1153 = DEFINITIONAL_REPRESENTATION('',(#1154),#1158);+#1154 = LINE('',#1155,#1156);+#1155 = CARTESIAN_POINT('',(0.,0.));+#1156 = VECTOR('',#1157,1.);+#1157 = DIRECTION('',(1.,0.));+#1158 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1159 = PCURVE('',#1160,#1165);+#1160 = PLANE('',#1161);+#1161 = AXIS2_PLACEMENT_3D('',#1162,#1163,#1164);+#1162 = CARTESIAN_POINT('',(-0.7,-0.2275,-4.315));+#1163 = DIRECTION('',(-0.,1.,0.));+#1164 = DIRECTION('',(0.,0.,1.));+#1165 = DEFINITIONAL_REPRESENTATION('',(#1166),#1170);+#1166 = LINE('',#1167,#1168);+#1167 = CARTESIAN_POINT('',(0.,0.));+#1168 = VECTOR('',#1169,1.);+#1169 = DIRECTION('',(1.,0.));+#1170 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1171 = ORIENTED_EDGE('',*,*,#1172,.T.);+#1172 = EDGE_CURVE('',#1138,#1173,#1175,.T.);+#1173 = VERTEX_POINT('',#1174);+#1174 = CARTESIAN_POINT('',(-0.7,0.2275,-4.315));+#1175 = SURFACE_CURVE('',#1176,(#1180,#1187),.PCURVE_S1.);+#1176 = LINE('',#1177,#1178);+#1177 = CARTESIAN_POINT('',(-0.7,-0.2275,-4.315));+#1178 = VECTOR('',#1179,1.);+#1179 = DIRECTION('',(-0.,1.,0.));+#1180 = PCURVE('',#1148,#1181);+#1181 = DEFINITIONAL_REPRESENTATION('',(#1182),#1186);+#1182 = LINE('',#1183,#1184);+#1183 = CARTESIAN_POINT('',(0.,0.));+#1184 = VECTOR('',#1185,1.);+#1185 = DIRECTION('',(0.,-1.));+#1186 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1187 = PCURVE('',#1188,#1193);+#1188 = PLANE('',#1189);+#1189 = AXIS2_PLACEMENT_3D('',#1190,#1191,#1192);+#1190 = CARTESIAN_POINT('',(-0.7,-0.2275,-4.315));+#1191 = DIRECTION('',(0.,0.,1.));+#1192 = DIRECTION('',(1.,0.,-0.));+#1193 = DEFINITIONAL_REPRESENTATION('',(#1194),#1198);+#1194 = LINE('',#1195,#1196);+#1195 = CARTESIAN_POINT('',(0.,0.));+#1196 = VECTOR('',#1197,1.);+#1197 = DIRECTION('',(0.,1.));+#1198 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1199 = ORIENTED_EDGE('',*,*,#1200,.T.);+#1200 = EDGE_CURVE('',#1173,#1201,#1203,.T.);+#1201 = VERTEX_POINT('',#1202);+#1202 = CARTESIAN_POINT('',(-0.7,0.2275,0.));+#1203 = SURFACE_CURVE('',#1204,(#1208,#1215),.PCURVE_S1.);+#1204 = LINE('',#1205,#1206);+#1205 = CARTESIAN_POINT('',(-0.7,0.2275,-4.315));+#1206 = VECTOR('',#1207,1.);+#1207 = DIRECTION('',(0.,0.,1.));+#1208 = PCURVE('',#1148,#1209);+#1209 = DEFINITIONAL_REPRESENTATION('',(#1210),#1214);+#1210 = LINE('',#1211,#1212);+#1211 = CARTESIAN_POINT('',(0.,-0.455));+#1212 = VECTOR('',#1213,1.);+#1213 = DIRECTION('',(1.,0.));+#1214 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1215 = PCURVE('',#1216,#1221);+#1216 = PLANE('',#1217);+#1217 = AXIS2_PLACEMENT_3D('',#1218,#1219,#1220);+#1218 = CARTESIAN_POINT('',(-0.7,0.2275,-4.315));+#1219 = DIRECTION('',(-0.,1.,0.));+#1220 = DIRECTION('',(0.,0.,1.));+#1221 = DEFINITIONAL_REPRESENTATION('',(#1222),#1226);+#1222 = LINE('',#1223,#1224);+#1223 = CARTESIAN_POINT('',(0.,0.));+#1224 = VECTOR('',#1225,1.);+#1225 = DIRECTION('',(1.,0.));+#1226 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1227 = ORIENTED_EDGE('',*,*,#1228,.F.);+#1228 = EDGE_CURVE('',#1140,#1201,#1229,.T.);+#1229 = SURFACE_CURVE('',#1230,(#1234,#1241),.PCURVE_S1.);+#1230 = LINE('',#1231,#1232);+#1231 = CARTESIAN_POINT('',(-0.7,-0.2275,0.));+#1232 = VECTOR('',#1233,1.);+#1233 = DIRECTION('',(-0.,1.,0.));+#1234 = PCURVE('',#1148,#1235);+#1235 = DEFINITIONAL_REPRESENTATION('',(#1236),#1240);+#1236 = LINE('',#1237,#1238);+#1237 = CARTESIAN_POINT('',(4.315,0.));+#1238 = VECTOR('',#1239,1.);+#1239 = DIRECTION('',(0.,-1.));+#1240 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1241 = PCURVE('',#1242,#1247);+#1242 = PLANE('',#1243);+#1243 = AXIS2_PLACEMENT_3D('',#1244,#1245,#1246);+#1244 = CARTESIAN_POINT('',(-0.7,-0.2275,0.));+#1245 = DIRECTION('',(0.,0.,1.));+#1246 = DIRECTION('',(1.,0.,-0.));+#1247 = DEFINITIONAL_REPRESENTATION('',(#1248),#1252);+#1248 = LINE('',#1249,#1250);+#1249 = CARTESIAN_POINT('',(0.,0.));+#1250 = VECTOR('',#1251,1.);+#1251 = DIRECTION('',(0.,1.));+#1252 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1253 = ADVANCED_FACE('',(#1254),#1268,.T.);+#1254 = FACE_BOUND('',#1255,.T.);+#1255 = EDGE_LOOP('',(#1256,#1286,#1309,#1332));+#1256 = ORIENTED_EDGE('',*,*,#1257,.F.);+#1257 = EDGE_CURVE('',#1258,#1260,#1262,.T.);+#1258 = VERTEX_POINT('',#1259);+#1259 = CARTESIAN_POINT('',(0.7,-0.2275,-4.315));+#1260 = VERTEX_POINT('',#1261);+#1261 = CARTESIAN_POINT('',(0.7,-0.2275,0.));+#1262 = SURFACE_CURVE('',#1263,(#1267,#1279),.PCURVE_S1.);+#1263 = LINE('',#1264,#1265);+#1264 = CARTESIAN_POINT('',(0.7,-0.2275,-4.315));+#1265 = VECTOR('',#1266,1.);+#1266 = DIRECTION('',(0.,0.,1.));+#1267 = PCURVE('',#1268,#1273);+#1268 = PLANE('',#1269);+#1269 = AXIS2_PLACEMENT_3D('',#1270,#1271,#1272);+#1270 = CARTESIAN_POINT('',(0.7,-0.2275,-4.315));+#1271 = DIRECTION('',(1.,0.,-0.));+#1272 = DIRECTION('',(0.,0.,1.));+#1273 = DEFINITIONAL_REPRESENTATION('',(#1274),#1278);+#1274 = LINE('',#1275,#1276);+#1275 = CARTESIAN_POINT('',(0.,0.));+#1276 = VECTOR('',#1277,1.);+#1277 = DIRECTION('',(1.,0.));+#1278 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1279 = PCURVE('',#1160,#1280);+#1280 = DEFINITIONAL_REPRESENTATION('',(#1281),#1285);+#1281 = LINE('',#1282,#1283);+#1282 = CARTESIAN_POINT('',(0.,1.4));+#1283 = VECTOR('',#1284,1.);+#1284 = DIRECTION('',(1.,0.));+#1285 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1286 = ORIENTED_EDGE('',*,*,#1287,.T.);+#1287 = EDGE_CURVE('',#1258,#1288,#1290,.T.);+#1288 = VERTEX_POINT('',#1289);+#1289 = CARTESIAN_POINT('',(0.7,0.2275,-4.315));+#1290 = SURFACE_CURVE('',#1291,(#1295,#1302),.PCURVE_S1.);+#1291 = LINE('',#1292,#1293);+#1292 = CARTESIAN_POINT('',(0.7,-0.2275,-4.315));+#1293 = VECTOR('',#1294,1.);+#1294 = DIRECTION('',(-0.,1.,0.));+#1295 = PCURVE('',#1268,#1296);+#1296 = DEFINITIONAL_REPRESENTATION('',(#1297),#1301);+#1297 = LINE('',#1298,#1299);+#1298 = CARTESIAN_POINT('',(0.,0.));+#1299 = VECTOR('',#1300,1.);+#1300 = DIRECTION('',(0.,-1.));+#1301 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1302 = PCURVE('',#1188,#1303);+#1303 = DEFINITIONAL_REPRESENTATION('',(#1304),#1308);+#1304 = LINE('',#1305,#1306);+#1305 = CARTESIAN_POINT('',(1.4,0.));+#1306 = VECTOR('',#1307,1.);+#1307 = DIRECTION('',(0.,1.));+#1308 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1309 = ORIENTED_EDGE('',*,*,#1310,.T.);+#1310 = EDGE_CURVE('',#1288,#1311,#1313,.T.);+#1311 = VERTEX_POINT('',#1312);+#1312 = CARTESIAN_POINT('',(0.7,0.2275,0.));+#1313 = SURFACE_CURVE('',#1314,(#1318,#1325),.PCURVE_S1.);+#1314 = LINE('',#1315,#1316);+#1315 = CARTESIAN_POINT('',(0.7,0.2275,-4.315));+#1316 = VECTOR('',#1317,1.);+#1317 = DIRECTION('',(0.,0.,1.));+#1318 = PCURVE('',#1268,#1319);+#1319 = DEFINITIONAL_REPRESENTATION('',(#1320),#1324);+#1320 = LINE('',#1321,#1322);+#1321 = CARTESIAN_POINT('',(0.,-0.455));+#1322 = VECTOR('',#1323,1.);+#1323 = DIRECTION('',(1.,0.));+#1324 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1325 = PCURVE('',#1216,#1326);+#1326 = DEFINITIONAL_REPRESENTATION('',(#1327),#1331);+#1327 = LINE('',#1328,#1329);+#1328 = CARTESIAN_POINT('',(0.,1.4));+#1329 = VECTOR('',#1330,1.);+#1330 = DIRECTION('',(1.,0.));+#1331 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1332 = ORIENTED_EDGE('',*,*,#1333,.F.);+#1333 = EDGE_CURVE('',#1260,#1311,#1334,.T.);+#1334 = SURFACE_CURVE('',#1335,(#1339,#1346),.PCURVE_S1.);+#1335 = LINE('',#1336,#1337);+#1336 = CARTESIAN_POINT('',(0.7,-0.2275,0.));+#1337 = VECTOR('',#1338,1.);+#1338 = DIRECTION('',(-0.,1.,0.));+#1339 = PCURVE('',#1268,#1340);+#1340 = DEFINITIONAL_REPRESENTATION('',(#1341),#1345);+#1341 = LINE('',#1342,#1343);+#1342 = CARTESIAN_POINT('',(4.315,0.));+#1343 = VECTOR('',#1344,1.);+#1344 = DIRECTION('',(0.,-1.));+#1345 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1346 = PCURVE('',#1242,#1347);+#1347 = DEFINITIONAL_REPRESENTATION('',(#1348),#1352);+#1348 = LINE('',#1349,#1350);+#1349 = CARTESIAN_POINT('',(1.4,0.));+#1350 = VECTOR('',#1351,1.);+#1351 = DIRECTION('',(0.,1.));+#1352 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1353 = ADVANCED_FACE('',(#1354),#1160,.F.);+#1354 = FACE_BOUND('',#1355,.F.);+#1355 = EDGE_LOOP('',(#1356,#1377,#1378,#1399));+#1356 = ORIENTED_EDGE('',*,*,#1357,.F.);+#1357 = EDGE_CURVE('',#1138,#1258,#1358,.T.);+#1358 = SURFACE_CURVE('',#1359,(#1363,#1370),.PCURVE_S1.);+#1359 = LINE('',#1360,#1361);+#1360 = CARTESIAN_POINT('',(-0.7,-0.2275,-4.315));+#1361 = VECTOR('',#1362,1.);+#1362 = DIRECTION('',(1.,0.,-0.));+#1363 = PCURVE('',#1160,#1364);+#1364 = DEFINITIONAL_REPRESENTATION('',(#1365),#1369);+#1365 = LINE('',#1366,#1367);+#1366 = CARTESIAN_POINT('',(0.,0.));+#1367 = VECTOR('',#1368,1.);+#1368 = DIRECTION('',(0.,1.));+#1369 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1370 = PCURVE('',#1188,#1371);+#1371 = DEFINITIONAL_REPRESENTATION('',(#1372),#1376);+#1372 = LINE('',#1373,#1374);+#1373 = CARTESIAN_POINT('',(0.,0.));+#1374 = VECTOR('',#1375,1.);+#1375 = DIRECTION('',(1.,0.));+#1376 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1377 = ORIENTED_EDGE('',*,*,#1137,.T.);+#1378 = ORIENTED_EDGE('',*,*,#1379,.T.);+#1379 = EDGE_CURVE('',#1140,#1260,#1380,.T.);+#1380 = SURFACE_CURVE('',#1381,(#1385,#1392),.PCURVE_S1.);+#1381 = LINE('',#1382,#1383);+#1382 = CARTESIAN_POINT('',(-0.7,-0.2275,0.));+#1383 = VECTOR('',#1384,1.);+#1384 = DIRECTION('',(1.,0.,-0.));+#1385 = PCURVE('',#1160,#1386);+#1386 = DEFINITIONAL_REPRESENTATION('',(#1387),#1391);+#1387 = LINE('',#1388,#1389);+#1388 = CARTESIAN_POINT('',(4.315,0.));+#1389 = VECTOR('',#1390,1.);+#1390 = DIRECTION('',(0.,1.));+#1391 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1392 = PCURVE('',#1242,#1393);+#1393 = DEFINITIONAL_REPRESENTATION('',(#1394),#1398);+#1394 = LINE('',#1395,#1396);+#1395 = CARTESIAN_POINT('',(0.,0.));+#1396 = VECTOR('',#1397,1.);+#1397 = DIRECTION('',(1.,0.));+#1398 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1399 = ORIENTED_EDGE('',*,*,#1257,.F.);+#1400 = ADVANCED_FACE('',(#1401),#1216,.T.);+#1401 = FACE_BOUND('',#1402,.T.);+#1402 = EDGE_LOOP('',(#1403,#1424,#1425,#1446));+#1403 = ORIENTED_EDGE('',*,*,#1404,.F.);+#1404 = EDGE_CURVE('',#1173,#1288,#1405,.T.);+#1405 = SURFACE_CURVE('',#1406,(#1410,#1417),.PCURVE_S1.);+#1406 = LINE('',#1407,#1408);+#1407 = CARTESIAN_POINT('',(-0.7,0.2275,-4.315));+#1408 = VECTOR('',#1409,1.);+#1409 = DIRECTION('',(1.,0.,-0.));+#1410 = PCURVE('',#1216,#1411);+#1411 = DEFINITIONAL_REPRESENTATION('',(#1412),#1416);+#1412 = LINE('',#1413,#1414);+#1413 = CARTESIAN_POINT('',(0.,0.));+#1414 = VECTOR('',#1415,1.);+#1415 = DIRECTION('',(0.,1.));+#1416 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1417 = PCURVE('',#1188,#1418);+#1418 = DEFINITIONAL_REPRESENTATION('',(#1419),#1423);+#1419 = LINE('',#1420,#1421);+#1420 = CARTESIAN_POINT('',(0.,0.455));+#1421 = VECTOR('',#1422,1.);+#1422 = DIRECTION('',(1.,0.));+#1423 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1424 = ORIENTED_EDGE('',*,*,#1200,.T.);+#1425 = ORIENTED_EDGE('',*,*,#1426,.T.);+#1426 = EDGE_CURVE('',#1201,#1311,#1427,.T.);+#1427 = SURFACE_CURVE('',#1428,(#1432,#1439),.PCURVE_S1.);+#1428 = LINE('',#1429,#1430);+#1429 = CARTESIAN_POINT('',(-0.7,0.2275,0.));+#1430 = VECTOR('',#1431,1.);+#1431 = DIRECTION('',(1.,0.,-0.));+#1432 = PCURVE('',#1216,#1433);+#1433 = DEFINITIONAL_REPRESENTATION('',(#1434),#1438);+#1434 = LINE('',#1435,#1436);+#1435 = CARTESIAN_POINT('',(4.315,0.));+#1436 = VECTOR('',#1437,1.);+#1437 = DIRECTION('',(0.,1.));+#1438 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1439 = PCURVE('',#1242,#1440);+#1440 = DEFINITIONAL_REPRESENTATION('',(#1441),#1445);+#1441 = LINE('',#1442,#1443);+#1442 = CARTESIAN_POINT('',(0.,0.455));+#1443 = VECTOR('',#1444,1.);+#1444 = DIRECTION('',(1.,0.));+#1445 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1446 = ORIENTED_EDGE('',*,*,#1310,.F.);+#1447 = ADVANCED_FACE('',(#1448),#1188,.F.);+#1448 = FACE_BOUND('',#1449,.F.);+#1449 = EDGE_LOOP('',(#1450,#1451,#1452,#1453));+#1450 = ORIENTED_EDGE('',*,*,#1172,.F.);+#1451 = ORIENTED_EDGE('',*,*,#1357,.T.);+#1452 = ORIENTED_EDGE('',*,*,#1287,.T.);+#1453 = ORIENTED_EDGE('',*,*,#1404,.F.);+#1454 = ADVANCED_FACE('',(#1455),#1242,.T.);+#1455 = FACE_BOUND('',#1456,.T.);+#1456 = EDGE_LOOP('',(#1457,#1458,#1459,#1460));+#1457 = ORIENTED_EDGE('',*,*,#1228,.F.);+#1458 = ORIENTED_EDGE('',*,*,#1379,.T.);+#1459 = ORIENTED_EDGE('',*,*,#1333,.T.);+#1460 = ORIENTED_EDGE('',*,*,#1426,.F.);+#1461 = ( GEOMETRIC_REPRESENTATION_CONTEXT(3) +GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#1465)) +GLOBAL_UNIT_ASSIGNED_CONTEXT((#1462,#1463,#1464)) REPRESENTATION_CONTEXT+('Context #1','3D Context with UNIT and UNCERTAINTY') );+#1462 = ( LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.) );+#1463 = ( NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.) );+#1464 = ( NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT() );+#1465 = UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(1.E-07),#1462,+  'distance_accuracy_value','confusion accuracy');+#1466 = PRODUCT_RELATED_PRODUCT_CATEGORY('part',$,(#1127));+#1467 = SHAPE_DEFINITION_REPRESENTATION(#1468,#1474);+#1468 = PRODUCT_DEFINITION_SHAPE('','',#1469);+#1469 = PRODUCT_DEFINITION('design','',#1470,#1473);+#1470 = PRODUCT_DEFINITION_FORMATION('','',#1471);+#1471 = PRODUCT('Lead2_Drain','Lead2_Drain','',(#1472));+#1472 = PRODUCT_CONTEXT('',#2,'mechanical');+#1473 = PRODUCT_DEFINITION_CONTEXT('part definition',#2,'design');+#1474 = ADVANCED_BREP_SHAPE_REPRESENTATION('',(#11,#1475),#1805);+#1475 = MANIFOLD_SOLID_BREP('',#1476);+#1476 = CLOSED_SHELL('',(#1477,#1597,#1697,#1744,#1791,#1798));+#1477 = ADVANCED_FACE('',(#1478),#1492,.F.);+#1478 = FACE_BOUND('',#1479,.F.);+#1479 = EDGE_LOOP('',(#1480,#1515,#1543,#1571));+#1480 = ORIENTED_EDGE('',*,*,#1481,.F.);+#1481 = EDGE_CURVE('',#1482,#1484,#1486,.T.);+#1482 = VERTEX_POINT('',#1483);+#1483 = CARTESIAN_POINT('',(2.125,-0.2275,-13.335));+#1484 = VERTEX_POINT('',#1485);+#1485 = CARTESIAN_POINT('',(2.125,-0.2275,-4.315));+#1486 = SURFACE_CURVE('',#1487,(#1491,#1503),.PCURVE_S1.);+#1487 = LINE('',#1488,#1489);+#1488 = CARTESIAN_POINT('',(2.125,-0.2275,-13.335));+#1489 = VECTOR('',#1490,1.);+#1490 = DIRECTION('',(0.,0.,1.));+#1491 = PCURVE('',#1492,#1497);+#1492 = PLANE('',#1493);+#1493 = AXIS2_PLACEMENT_3D('',#1494,#1495,#1496);+#1494 = CARTESIAN_POINT('',(2.125,-0.2275,-13.335));+#1495 = DIRECTION('',(1.,0.,-0.));+#1496 = DIRECTION('',(0.,0.,1.));+#1497 = DEFINITIONAL_REPRESENTATION('',(#1498),#1502);+#1498 = LINE('',#1499,#1500);+#1499 = CARTESIAN_POINT('',(0.,0.));+#1500 = VECTOR('',#1501,1.);+#1501 = DIRECTION('',(1.,0.));+#1502 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1503 = PCURVE('',#1504,#1509);+#1504 = PLANE('',#1505);+#1505 = AXIS2_PLACEMENT_3D('',#1506,#1507,#1508);+#1506 = CARTESIAN_POINT('',(2.125,-0.2275,-13.335));+#1507 = DIRECTION('',(-0.,1.,0.));+#1508 = DIRECTION('',(0.,0.,1.));+#1509 = DEFINITIONAL_REPRESENTATION('',(#1510),#1514);+#1510 = LINE('',#1511,#1512);+#1511 = CARTESIAN_POINT('',(0.,0.));+#1512 = VECTOR('',#1513,1.);+#1513 = DIRECTION('',(1.,0.));+#1514 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1515 = ORIENTED_EDGE('',*,*,#1516,.T.);+#1516 = EDGE_CURVE('',#1482,#1517,#1519,.T.);+#1517 = VERTEX_POINT('',#1518);+#1518 = CARTESIAN_POINT('',(2.125,0.2275,-13.335));+#1519 = SURFACE_CURVE('',#1520,(#1524,#1531),.PCURVE_S1.);+#1520 = LINE('',#1521,#1522);+#1521 = CARTESIAN_POINT('',(2.125,-0.2275,-13.335));+#1522 = VECTOR('',#1523,1.);+#1523 = DIRECTION('',(-0.,1.,0.));+#1524 = PCURVE('',#1492,#1525);+#1525 = DEFINITIONAL_REPRESENTATION('',(#1526),#1530);+#1526 = LINE('',#1527,#1528);+#1527 = CARTESIAN_POINT('',(0.,0.));+#1528 = VECTOR('',#1529,1.);+#1529 = DIRECTION('',(0.,-1.));+#1530 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1531 = PCURVE('',#1532,#1537);+#1532 = PLANE('',#1533);+#1533 = AXIS2_PLACEMENT_3D('',#1534,#1535,#1536);+#1534 = CARTESIAN_POINT('',(2.125,-0.2275,-13.335));+#1535 = DIRECTION('',(0.,0.,1.));+#1536 = DIRECTION('',(1.,0.,-0.));+#1537 = DEFINITIONAL_REPRESENTATION('',(#1538),#1542);+#1538 = LINE('',#1539,#1540);+#1539 = CARTESIAN_POINT('',(0.,0.));+#1540 = VECTOR('',#1541,1.);+#1541 = DIRECTION('',(0.,1.));+#1542 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1543 = ORIENTED_EDGE('',*,*,#1544,.T.);+#1544 = EDGE_CURVE('',#1517,#1545,#1547,.T.);+#1545 = VERTEX_POINT('',#1546);+#1546 = CARTESIAN_POINT('',(2.125,0.2275,-4.315));+#1547 = SURFACE_CURVE('',#1548,(#1552,#1559),.PCURVE_S1.);+#1548 = LINE('',#1549,#1550);+#1549 = CARTESIAN_POINT('',(2.125,0.2275,-13.335));+#1550 = VECTOR('',#1551,1.);+#1551 = DIRECTION('',(0.,0.,1.));+#1552 = PCURVE('',#1492,#1553);+#1553 = DEFINITIONAL_REPRESENTATION('',(#1554),#1558);+#1554 = LINE('',#1555,#1556);+#1555 = CARTESIAN_POINT('',(0.,-0.455));+#1556 = VECTOR('',#1557,1.);+#1557 = DIRECTION('',(1.,0.));+#1558 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1559 = PCURVE('',#1560,#1565);+#1560 = PLANE('',#1561);+#1561 = AXIS2_PLACEMENT_3D('',#1562,#1563,#1564);+#1562 = CARTESIAN_POINT('',(2.125,0.2275,-13.335));+#1563 = DIRECTION('',(-0.,1.,0.));+#1564 = DIRECTION('',(0.,0.,1.));+#1565 = DEFINITIONAL_REPRESENTATION('',(#1566),#1570);+#1566 = LINE('',#1567,#1568);+#1567 = CARTESIAN_POINT('',(0.,0.));+#1568 = VECTOR('',#1569,1.);+#1569 = DIRECTION('',(1.,0.));+#1570 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1571 = ORIENTED_EDGE('',*,*,#1572,.F.);+#1572 = EDGE_CURVE('',#1484,#1545,#1573,.T.);+#1573 = SURFACE_CURVE('',#1574,(#1578,#1585),.PCURVE_S1.);+#1574 = LINE('',#1575,#1576);+#1575 = CARTESIAN_POINT('',(2.125,-0.2275,-4.315));+#1576 = VECTOR('',#1577,1.);+#1577 = DIRECTION('',(-0.,1.,0.));+#1578 = PCURVE('',#1492,#1579);+#1579 = DEFINITIONAL_REPRESENTATION('',(#1580),#1584);+#1580 = LINE('',#1581,#1582);+#1581 = CARTESIAN_POINT('',(9.02,0.));+#1582 = VECTOR('',#1583,1.);+#1583 = DIRECTION('',(0.,-1.));+#1584 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1585 = PCURVE('',#1586,#1591);+#1586 = PLANE('',#1587);+#1587 = AXIS2_PLACEMENT_3D('',#1588,#1589,#1590);+#1588 = CARTESIAN_POINT('',(2.125,-0.2275,-4.315));+#1589 = DIRECTION('',(0.,0.,1.));+#1590 = DIRECTION('',(1.,0.,-0.));+#1591 = DEFINITIONAL_REPRESENTATION('',(#1592),#1596);+#1592 = LINE('',#1593,#1594);+#1593 = CARTESIAN_POINT('',(0.,0.));+#1594 = VECTOR('',#1595,1.);+#1595 = DIRECTION('',(0.,1.));+#1596 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1597 = ADVANCED_FACE('',(#1598),#1612,.T.);+#1598 = FACE_BOUND('',#1599,.T.);+#1599 = EDGE_LOOP('',(#1600,#1630,#1653,#1676));+#1600 = ORIENTED_EDGE('',*,*,#1601,.F.);+#1601 = EDGE_CURVE('',#1602,#1604,#1606,.T.);+#1602 = VERTEX_POINT('',#1603);+#1603 = CARTESIAN_POINT('',(2.955,-0.2275,-13.335));+#1604 = VERTEX_POINT('',#1605);+#1605 = CARTESIAN_POINT('',(2.955,-0.2275,-4.315));+#1606 = SURFACE_CURVE('',#1607,(#1611,#1623),.PCURVE_S1.);+#1607 = LINE('',#1608,#1609);+#1608 = CARTESIAN_POINT('',(2.955,-0.2275,-13.335));+#1609 = VECTOR('',#1610,1.);+#1610 = DIRECTION('',(0.,0.,1.));+#1611 = PCURVE('',#1612,#1617);+#1612 = PLANE('',#1613);+#1613 = AXIS2_PLACEMENT_3D('',#1614,#1615,#1616);+#1614 = CARTESIAN_POINT('',(2.955,-0.2275,-13.335));+#1615 = DIRECTION('',(1.,0.,-0.));+#1616 = DIRECTION('',(0.,0.,1.));+#1617 = DEFINITIONAL_REPRESENTATION('',(#1618),#1622);+#1618 = LINE('',#1619,#1620);+#1619 = CARTESIAN_POINT('',(0.,0.));+#1620 = VECTOR('',#1621,1.);+#1621 = DIRECTION('',(1.,0.));+#1622 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1623 = PCURVE('',#1504,#1624);+#1624 = DEFINITIONAL_REPRESENTATION('',(#1625),#1629);+#1625 = LINE('',#1626,#1627);+#1626 = CARTESIAN_POINT('',(0.,0.83));+#1627 = VECTOR('',#1628,1.);+#1628 = DIRECTION('',(1.,0.));+#1629 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1630 = ORIENTED_EDGE('',*,*,#1631,.T.);+#1631 = EDGE_CURVE('',#1602,#1632,#1634,.T.);+#1632 = VERTEX_POINT('',#1633);+#1633 = CARTESIAN_POINT('',(2.955,0.2275,-13.335));+#1634 = SURFACE_CURVE('',#1635,(#1639,#1646),.PCURVE_S1.);+#1635 = LINE('',#1636,#1637);+#1636 = CARTESIAN_POINT('',(2.955,-0.2275,-13.335));+#1637 = VECTOR('',#1638,1.);+#1638 = DIRECTION('',(-0.,1.,0.));+#1639 = PCURVE('',#1612,#1640);+#1640 = DEFINITIONAL_REPRESENTATION('',(#1641),#1645);+#1641 = LINE('',#1642,#1643);+#1642 = CARTESIAN_POINT('',(0.,0.));+#1643 = VECTOR('',#1644,1.);+#1644 = DIRECTION('',(0.,-1.));+#1645 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1646 = PCURVE('',#1532,#1647);+#1647 = DEFINITIONAL_REPRESENTATION('',(#1648),#1652);+#1648 = LINE('',#1649,#1650);+#1649 = CARTESIAN_POINT('',(0.83,0.));+#1650 = VECTOR('',#1651,1.);+#1651 = DIRECTION('',(0.,1.));+#1652 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1653 = ORIENTED_EDGE('',*,*,#1654,.T.);+#1654 = EDGE_CURVE('',#1632,#1655,#1657,.T.);+#1655 = VERTEX_POINT('',#1656);+#1656 = CARTESIAN_POINT('',(2.955,0.2275,-4.315));+#1657 = SURFACE_CURVE('',#1658,(#1662,#1669),.PCURVE_S1.);+#1658 = LINE('',#1659,#1660);+#1659 = CARTESIAN_POINT('',(2.955,0.2275,-13.335));+#1660 = VECTOR('',#1661,1.);+#1661 = DIRECTION('',(0.,0.,1.));+#1662 = PCURVE('',#1612,#1663);+#1663 = DEFINITIONAL_REPRESENTATION('',(#1664),#1668);+#1664 = LINE('',#1665,#1666);+#1665 = CARTESIAN_POINT('',(0.,-0.455));+#1666 = VECTOR('',#1667,1.);+#1667 = DIRECTION('',(1.,0.));+#1668 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1669 = PCURVE('',#1560,#1670);+#1670 = DEFINITIONAL_REPRESENTATION('',(#1671),#1675);+#1671 = LINE('',#1672,#1673);+#1672 = CARTESIAN_POINT('',(0.,0.83));+#1673 = VECTOR('',#1674,1.);+#1674 = DIRECTION('',(1.,0.));+#1675 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1676 = ORIENTED_EDGE('',*,*,#1677,.F.);+#1677 = EDGE_CURVE('',#1604,#1655,#1678,.T.);+#1678 = SURFACE_CURVE('',#1679,(#1683,#1690),.PCURVE_S1.);+#1679 = LINE('',#1680,#1681);+#1680 = CARTESIAN_POINT('',(2.955,-0.2275,-4.315));+#1681 = VECTOR('',#1682,1.);+#1682 = DIRECTION('',(-0.,1.,0.));+#1683 = PCURVE('',#1612,#1684);+#1684 = DEFINITIONAL_REPRESENTATION('',(#1685),#1689);+#1685 = LINE('',#1686,#1687);+#1686 = CARTESIAN_POINT('',(9.02,0.));+#1687 = VECTOR('',#1688,1.);+#1688 = DIRECTION('',(0.,-1.));+#1689 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1690 = PCURVE('',#1586,#1691);+#1691 = DEFINITIONAL_REPRESENTATION('',(#1692),#1696);+#1692 = LINE('',#1693,#1694);+#1693 = CARTESIAN_POINT('',(0.83,0.));+#1694 = VECTOR('',#1695,1.);+#1695 = DIRECTION('',(0.,1.));+#1696 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1697 = ADVANCED_FACE('',(#1698),#1504,.F.);+#1698 = FACE_BOUND('',#1699,.F.);+#1699 = EDGE_LOOP('',(#1700,#1721,#1722,#1743));+#1700 = ORIENTED_EDGE('',*,*,#1701,.F.);+#1701 = EDGE_CURVE('',#1482,#1602,#1702,.T.);+#1702 = SURFACE_CURVE('',#1703,(#1707,#1714),.PCURVE_S1.);+#1703 = LINE('',#1704,#1705);+#1704 = CARTESIAN_POINT('',(2.125,-0.2275,-13.335));+#1705 = VECTOR('',#1706,1.);+#1706 = DIRECTION('',(1.,0.,-0.));+#1707 = PCURVE('',#1504,#1708);+#1708 = DEFINITIONAL_REPRESENTATION('',(#1709),#1713);+#1709 = LINE('',#1710,#1711);+#1710 = CARTESIAN_POINT('',(0.,0.));+#1711 = VECTOR('',#1712,1.);+#1712 = DIRECTION('',(0.,1.));+#1713 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1714 = PCURVE('',#1532,#1715);+#1715 = DEFINITIONAL_REPRESENTATION('',(#1716),#1720);+#1716 = LINE('',#1717,#1718);+#1717 = CARTESIAN_POINT('',(0.,0.));+#1718 = VECTOR('',#1719,1.);+#1719 = DIRECTION('',(1.,0.));+#1720 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1721 = ORIENTED_EDGE('',*,*,#1481,.T.);+#1722 = ORIENTED_EDGE('',*,*,#1723,.T.);+#1723 = EDGE_CURVE('',#1484,#1604,#1724,.T.);+#1724 = SURFACE_CURVE('',#1725,(#1729,#1736),.PCURVE_S1.);+#1725 = LINE('',#1726,#1727);+#1726 = CARTESIAN_POINT('',(2.125,-0.2275,-4.315));+#1727 = VECTOR('',#1728,1.);+#1728 = DIRECTION('',(1.,0.,-0.));+#1729 = PCURVE('',#1504,#1730);+#1730 = DEFINITIONAL_REPRESENTATION('',(#1731),#1735);+#1731 = LINE('',#1732,#1733);+#1732 = CARTESIAN_POINT('',(9.02,0.));+#1733 = VECTOR('',#1734,1.);+#1734 = DIRECTION('',(0.,1.));+#1735 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1736 = PCURVE('',#1586,#1737);+#1737 = DEFINITIONAL_REPRESENTATION('',(#1738),#1742);+#1738 = LINE('',#1739,#1740);+#1739 = CARTESIAN_POINT('',(0.,0.));+#1740 = VECTOR('',#1741,1.);+#1741 = DIRECTION('',(1.,0.));+#1742 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1743 = ORIENTED_EDGE('',*,*,#1601,.F.);+#1744 = ADVANCED_FACE('',(#1745),#1560,.T.);+#1745 = FACE_BOUND('',#1746,.T.);+#1746 = EDGE_LOOP('',(#1747,#1768,#1769,#1790));+#1747 = ORIENTED_EDGE('',*,*,#1748,.F.);+#1748 = EDGE_CURVE('',#1517,#1632,#1749,.T.);+#1749 = SURFACE_CURVE('',#1750,(#1754,#1761),.PCURVE_S1.);+#1750 = LINE('',#1751,#1752);+#1751 = CARTESIAN_POINT('',(2.125,0.2275,-13.335));+#1752 = VECTOR('',#1753,1.);+#1753 = DIRECTION('',(1.,0.,-0.));+#1754 = PCURVE('',#1560,#1755);+#1755 = DEFINITIONAL_REPRESENTATION('',(#1756),#1760);+#1756 = LINE('',#1757,#1758);+#1757 = CARTESIAN_POINT('',(0.,0.));+#1758 = VECTOR('',#1759,1.);+#1759 = DIRECTION('',(0.,1.));+#1760 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1761 = PCURVE('',#1532,#1762);+#1762 = DEFINITIONAL_REPRESENTATION('',(#1763),#1767);+#1763 = LINE('',#1764,#1765);+#1764 = CARTESIAN_POINT('',(0.,0.455));+#1765 = VECTOR('',#1766,1.);+#1766 = DIRECTION('',(1.,0.));+#1767 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1768 = ORIENTED_EDGE('',*,*,#1544,.T.);+#1769 = ORIENTED_EDGE('',*,*,#1770,.T.);+#1770 = EDGE_CURVE('',#1545,#1655,#1771,.T.);+#1771 = SURFACE_CURVE('',#1772,(#1776,#1783),.PCURVE_S1.);+#1772 = LINE('',#1773,#1774);+#1773 = CARTESIAN_POINT('',(2.125,0.2275,-4.315));+#1774 = VECTOR('',#1775,1.);+#1775 = DIRECTION('',(1.,0.,-0.));+#1776 = PCURVE('',#1560,#1777);+#1777 = DEFINITIONAL_REPRESENTATION('',(#1778),#1782);+#1778 = LINE('',#1779,#1780);+#1779 = CARTESIAN_POINT('',(9.02,0.));+#1780 = VECTOR('',#1781,1.);+#1781 = DIRECTION('',(0.,1.));+#1782 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1783 = PCURVE('',#1586,#1784);+#1784 = DEFINITIONAL_REPRESENTATION('',(#1785),#1789);+#1785 = LINE('',#1786,#1787);+#1786 = CARTESIAN_POINT('',(0.,0.455));+#1787 = VECTOR('',#1788,1.);+#1788 = DIRECTION('',(1.,0.));+#1789 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1790 = ORIENTED_EDGE('',*,*,#1654,.F.);+#1791 = ADVANCED_FACE('',(#1792),#1532,.F.);+#1792 = FACE_BOUND('',#1793,.F.);+#1793 = EDGE_LOOP('',(#1794,#1795,#1796,#1797));+#1794 = ORIENTED_EDGE('',*,*,#1516,.F.);+#1795 = ORIENTED_EDGE('',*,*,#1701,.T.);+#1796 = ORIENTED_EDGE('',*,*,#1631,.T.);+#1797 = ORIENTED_EDGE('',*,*,#1748,.F.);+#1798 = ADVANCED_FACE('',(#1799),#1586,.T.);+#1799 = FACE_BOUND('',#1800,.T.);+#1800 = EDGE_LOOP('',(#1801,#1802,#1803,#1804));+#1801 = ORIENTED_EDGE('',*,*,#1572,.F.);+#1802 = ORIENTED_EDGE('',*,*,#1723,.T.);+#1803 = ORIENTED_EDGE('',*,*,#1677,.T.);+#1804 = ORIENTED_EDGE('',*,*,#1770,.F.);+#1805 = ( GEOMETRIC_REPRESENTATION_CONTEXT(3) +GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#1809)) +GLOBAL_UNIT_ASSIGNED_CONTEXT((#1806,#1807,#1808)) REPRESENTATION_CONTEXT+('Context #1','3D Context with UNIT and UNCERTAINTY') );+#1806 = ( LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.) );+#1807 = ( NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.) );+#1808 = ( NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT() );+#1809 = UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(1.E-07),#1806,+  'distance_accuracy_value','confusion accuracy');+#1810 = PRODUCT_RELATED_PRODUCT_CATEGORY('part',$,(#1471));+#1811 = SHAPE_DEFINITION_REPRESENTATION(#1812,#1818);+#1812 = PRODUCT_DEFINITION_SHAPE('','',#1813);+#1813 = PRODUCT_DEFINITION('design','',#1814,#1817);+#1814 = PRODUCT_DEFINITION_FORMATION('','',#1815);+#1815 = PRODUCT('Lead2_Shoulder','Lead2_Shoulder','',(#1816));+#1816 = PRODUCT_CONTEXT('',#2,'mechanical');+#1817 = PRODUCT_DEFINITION_CONTEXT('part definition',#2,'design');+#1818 = ADVANCED_BREP_SHAPE_REPRESENTATION('',(#11,#1819),#2149);+#1819 = MANIFOLD_SOLID_BREP('',#1820);+#1820 = CLOSED_SHELL('',(#1821,#1941,#2041,#2088,#2135,#2142));+#1821 = ADVANCED_FACE('',(#1822),#1836,.F.);+#1822 = FACE_BOUND('',#1823,.F.);+#1823 = EDGE_LOOP('',(#1824,#1859,#1887,#1915));+#1824 = ORIENTED_EDGE('',*,*,#1825,.F.);+#1825 = EDGE_CURVE('',#1826,#1828,#1830,.T.);+#1826 = VERTEX_POINT('',#1827);+#1827 = CARTESIAN_POINT('',(1.84,-0.2275,-4.315));+#1828 = VERTEX_POINT('',#1829);+#1829 = CARTESIAN_POINT('',(1.84,-0.2275,0.));+#1830 = SURFACE_CURVE('',#1831,(#1835,#1847),.PCURVE_S1.);+#1831 = LINE('',#1832,#1833);+#1832 = CARTESIAN_POINT('',(1.84,-0.2275,-4.315));+#1833 = VECTOR('',#1834,1.);+#1834 = DIRECTION('',(0.,0.,1.));+#1835 = PCURVE('',#1836,#1841);+#1836 = PLANE('',#1837);+#1837 = AXIS2_PLACEMENT_3D('',#1838,#1839,#1840);+#1838 = CARTESIAN_POINT('',(1.84,-0.2275,-4.315));+#1839 = DIRECTION('',(1.,0.,-0.));+#1840 = DIRECTION('',(0.,0.,1.));+#1841 = DEFINITIONAL_REPRESENTATION('',(#1842),#1846);+#1842 = LINE('',#1843,#1844);+#1843 = CARTESIAN_POINT('',(0.,0.));+#1844 = VECTOR('',#1845,1.);+#1845 = DIRECTION('',(1.,0.));+#1846 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1847 = PCURVE('',#1848,#1853);+#1848 = PLANE('',#1849);+#1849 = AXIS2_PLACEMENT_3D('',#1850,#1851,#1852);+#1850 = CARTESIAN_POINT('',(1.84,-0.2275,-4.315));+#1851 = DIRECTION('',(-0.,1.,0.));+#1852 = DIRECTION('',(0.,0.,1.));+#1853 = DEFINITIONAL_REPRESENTATION('',(#1854),#1858);+#1854 = LINE('',#1855,#1856);+#1855 = CARTESIAN_POINT('',(0.,0.));+#1856 = VECTOR('',#1857,1.);+#1857 = DIRECTION('',(1.,0.));+#1858 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1859 = ORIENTED_EDGE('',*,*,#1860,.T.);+#1860 = EDGE_CURVE('',#1826,#1861,#1863,.T.);+#1861 = VERTEX_POINT('',#1862);+#1862 = CARTESIAN_POINT('',(1.84,0.2275,-4.315));+#1863 = SURFACE_CURVE('',#1864,(#1868,#1875),.PCURVE_S1.);+#1864 = LINE('',#1865,#1866);+#1865 = CARTESIAN_POINT('',(1.84,-0.2275,-4.315));+#1866 = VECTOR('',#1867,1.);+#1867 = DIRECTION('',(-0.,1.,0.));+#1868 = PCURVE('',#1836,#1869);+#1869 = DEFINITIONAL_REPRESENTATION('',(#1870),#1874);+#1870 = LINE('',#1871,#1872);+#1871 = CARTESIAN_POINT('',(0.,0.));+#1872 = VECTOR('',#1873,1.);+#1873 = DIRECTION('',(0.,-1.));+#1874 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1875 = PCURVE('',#1876,#1881);+#1876 = PLANE('',#1877);+#1877 = AXIS2_PLACEMENT_3D('',#1878,#1879,#1880);+#1878 = CARTESIAN_POINT('',(1.84,-0.2275,-4.315));+#1879 = DIRECTION('',(0.,0.,1.));+#1880 = DIRECTION('',(1.,0.,-0.));+#1881 = DEFINITIONAL_REPRESENTATION('',(#1882),#1886);+#1882 = LINE('',#1883,#1884);+#1883 = CARTESIAN_POINT('',(0.,0.));+#1884 = VECTOR('',#1885,1.);+#1885 = DIRECTION('',(0.,1.));+#1886 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1887 = ORIENTED_EDGE('',*,*,#1888,.T.);+#1888 = EDGE_CURVE('',#1861,#1889,#1891,.T.);+#1889 = VERTEX_POINT('',#1890);+#1890 = CARTESIAN_POINT('',(1.84,0.2275,0.));+#1891 = SURFACE_CURVE('',#1892,(#1896,#1903),.PCURVE_S1.);+#1892 = LINE('',#1893,#1894);+#1893 = CARTESIAN_POINT('',(1.84,0.2275,-4.315));+#1894 = VECTOR('',#1895,1.);+#1895 = DIRECTION('',(0.,0.,1.));+#1896 = PCURVE('',#1836,#1897);+#1897 = DEFINITIONAL_REPRESENTATION('',(#1898),#1902);+#1898 = LINE('',#1899,#1900);+#1899 = CARTESIAN_POINT('',(0.,-0.455));+#1900 = VECTOR('',#1901,1.);+#1901 = DIRECTION('',(1.,0.));+#1902 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1903 = PCURVE('',#1904,#1909);+#1904 = PLANE('',#1905);+#1905 = AXIS2_PLACEMENT_3D('',#1906,#1907,#1908);+#1906 = CARTESIAN_POINT('',(1.84,0.2275,-4.315));+#1907 = DIRECTION('',(-0.,1.,0.));+#1908 = DIRECTION('',(0.,0.,1.));+#1909 = DEFINITIONAL_REPRESENTATION('',(#1910),#1914);+#1910 = LINE('',#1911,#1912);+#1911 = CARTESIAN_POINT('',(0.,0.));+#1912 = VECTOR('',#1913,1.);+#1913 = DIRECTION('',(1.,0.));+#1914 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1915 = ORIENTED_EDGE('',*,*,#1916,.F.);+#1916 = EDGE_CURVE('',#1828,#1889,#1917,.T.);+#1917 = SURFACE_CURVE('',#1918,(#1922,#1929),.PCURVE_S1.);+#1918 = LINE('',#1919,#1920);+#1919 = CARTESIAN_POINT('',(1.84,-0.2275,0.));+#1920 = VECTOR('',#1921,1.);+#1921 = DIRECTION('',(-0.,1.,0.));+#1922 = PCURVE('',#1836,#1923);+#1923 = DEFINITIONAL_REPRESENTATION('',(#1924),#1928);+#1924 = LINE('',#1925,#1926);+#1925 = CARTESIAN_POINT('',(4.315,0.));+#1926 = VECTOR('',#1927,1.);+#1927 = DIRECTION('',(0.,-1.));+#1928 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1929 = PCURVE('',#1930,#1935);+#1930 = PLANE('',#1931);+#1931 = AXIS2_PLACEMENT_3D('',#1932,#1933,#1934);+#1932 = CARTESIAN_POINT('',(1.84,-0.2275,0.));+#1933 = DIRECTION('',(0.,0.,1.));+#1934 = DIRECTION('',(1.,0.,-0.));+#1935 = DEFINITIONAL_REPRESENTATION('',(#1936),#1940);+#1936 = LINE('',#1937,#1938);+#1937 = CARTESIAN_POINT('',(0.,0.));+#1938 = VECTOR('',#1939,1.);+#1939 = DIRECTION('',(0.,1.));+#1940 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1941 = ADVANCED_FACE('',(#1942),#1956,.T.);+#1942 = FACE_BOUND('',#1943,.T.);+#1943 = EDGE_LOOP('',(#1944,#1974,#1997,#2020));+#1944 = ORIENTED_EDGE('',*,*,#1945,.F.);+#1945 = EDGE_CURVE('',#1946,#1948,#1950,.T.);+#1946 = VERTEX_POINT('',#1947);+#1947 = CARTESIAN_POINT('',(3.24,-0.2275,-4.315));+#1948 = VERTEX_POINT('',#1949);+#1949 = CARTESIAN_POINT('',(3.24,-0.2275,0.));+#1950 = SURFACE_CURVE('',#1951,(#1955,#1967),.PCURVE_S1.);+#1951 = LINE('',#1952,#1953);+#1952 = CARTESIAN_POINT('',(3.24,-0.2275,-4.315));+#1953 = VECTOR('',#1954,1.);+#1954 = DIRECTION('',(0.,0.,1.));+#1955 = PCURVE('',#1956,#1961);+#1956 = PLANE('',#1957);+#1957 = AXIS2_PLACEMENT_3D('',#1958,#1959,#1960);+#1958 = CARTESIAN_POINT('',(3.24,-0.2275,-4.315));+#1959 = DIRECTION('',(1.,0.,-0.));+#1960 = DIRECTION('',(0.,0.,1.));+#1961 = DEFINITIONAL_REPRESENTATION('',(#1962),#1966);+#1962 = LINE('',#1963,#1964);+#1963 = CARTESIAN_POINT('',(0.,0.));+#1964 = VECTOR('',#1965,1.);+#1965 = DIRECTION('',(1.,0.));+#1966 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1967 = PCURVE('',#1848,#1968);+#1968 = DEFINITIONAL_REPRESENTATION('',(#1969),#1973);+#1969 = LINE('',#1970,#1971);+#1970 = CARTESIAN_POINT('',(0.,1.4));+#1971 = VECTOR('',#1972,1.);+#1972 = DIRECTION('',(1.,0.));+#1973 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1974 = ORIENTED_EDGE('',*,*,#1975,.T.);+#1975 = EDGE_CURVE('',#1946,#1976,#1978,.T.);+#1976 = VERTEX_POINT('',#1977);+#1977 = CARTESIAN_POINT('',(3.24,0.2275,-4.315));+#1978 = SURFACE_CURVE('',#1979,(#1983,#1990),.PCURVE_S1.);+#1979 = LINE('',#1980,#1981);+#1980 = CARTESIAN_POINT('',(3.24,-0.2275,-4.315));+#1981 = VECTOR('',#1982,1.);+#1982 = DIRECTION('',(-0.,1.,0.));+#1983 = PCURVE('',#1956,#1984);+#1984 = DEFINITIONAL_REPRESENTATION('',(#1985),#1989);+#1985 = LINE('',#1986,#1987);+#1986 = CARTESIAN_POINT('',(0.,0.));+#1987 = VECTOR('',#1988,1.);+#1988 = DIRECTION('',(0.,-1.));+#1989 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1990 = PCURVE('',#1876,#1991);+#1991 = DEFINITIONAL_REPRESENTATION('',(#1992),#1996);+#1992 = LINE('',#1993,#1994);+#1993 = CARTESIAN_POINT('',(1.4,0.));+#1994 = VECTOR('',#1995,1.);+#1995 = DIRECTION('',(0.,1.));+#1996 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#1997 = ORIENTED_EDGE('',*,*,#1998,.T.);+#1998 = EDGE_CURVE('',#1976,#1999,#2001,.T.);+#1999 = VERTEX_POINT('',#2000);+#2000 = CARTESIAN_POINT('',(3.24,0.2275,0.));+#2001 = SURFACE_CURVE('',#2002,(#2006,#2013),.PCURVE_S1.);+#2002 = LINE('',#2003,#2004);+#2003 = CARTESIAN_POINT('',(3.24,0.2275,-4.315));+#2004 = VECTOR('',#2005,1.);+#2005 = DIRECTION('',(0.,0.,1.));+#2006 = PCURVE('',#1956,#2007);+#2007 = DEFINITIONAL_REPRESENTATION('',(#2008),#2012);+#2008 = LINE('',#2009,#2010);+#2009 = CARTESIAN_POINT('',(0.,-0.455));+#2010 = VECTOR('',#2011,1.);+#2011 = DIRECTION('',(1.,0.));+#2012 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2013 = PCURVE('',#1904,#2014);+#2014 = DEFINITIONAL_REPRESENTATION('',(#2015),#2019);+#2015 = LINE('',#2016,#2017);+#2016 = CARTESIAN_POINT('',(0.,1.4));+#2017 = VECTOR('',#2018,1.);+#2018 = DIRECTION('',(1.,0.));+#2019 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2020 = ORIENTED_EDGE('',*,*,#2021,.F.);+#2021 = EDGE_CURVE('',#1948,#1999,#2022,.T.);+#2022 = SURFACE_CURVE('',#2023,(#2027,#2034),.PCURVE_S1.);+#2023 = LINE('',#2024,#2025);+#2024 = CARTESIAN_POINT('',(3.24,-0.2275,0.));+#2025 = VECTOR('',#2026,1.);+#2026 = DIRECTION('',(-0.,1.,0.));+#2027 = PCURVE('',#1956,#2028);+#2028 = DEFINITIONAL_REPRESENTATION('',(#2029),#2033);+#2029 = LINE('',#2030,#2031);+#2030 = CARTESIAN_POINT('',(4.315,0.));+#2031 = VECTOR('',#2032,1.);+#2032 = DIRECTION('',(0.,-1.));+#2033 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2034 = PCURVE('',#1930,#2035);+#2035 = DEFINITIONAL_REPRESENTATION('',(#2036),#2040);+#2036 = LINE('',#2037,#2038);+#2037 = CARTESIAN_POINT('',(1.4,0.));+#2038 = VECTOR('',#2039,1.);+#2039 = DIRECTION('',(0.,1.));+#2040 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2041 = ADVANCED_FACE('',(#2042),#1848,.F.);+#2042 = FACE_BOUND('',#2043,.F.);+#2043 = EDGE_LOOP('',(#2044,#2065,#2066,#2087));+#2044 = ORIENTED_EDGE('',*,*,#2045,.F.);+#2045 = EDGE_CURVE('',#1826,#1946,#2046,.T.);+#2046 = SURFACE_CURVE('',#2047,(#2051,#2058),.PCURVE_S1.);+#2047 = LINE('',#2048,#2049);+#2048 = CARTESIAN_POINT('',(1.84,-0.2275,-4.315));+#2049 = VECTOR('',#2050,1.);+#2050 = DIRECTION('',(1.,0.,-0.));+#2051 = PCURVE('',#1848,#2052);+#2052 = DEFINITIONAL_REPRESENTATION('',(#2053),#2057);+#2053 = LINE('',#2054,#2055);+#2054 = CARTESIAN_POINT('',(0.,0.));+#2055 = VECTOR('',#2056,1.);+#2056 = DIRECTION('',(0.,1.));+#2057 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2058 = PCURVE('',#1876,#2059);+#2059 = DEFINITIONAL_REPRESENTATION('',(#2060),#2064);+#2060 = LINE('',#2061,#2062);+#2061 = CARTESIAN_POINT('',(0.,0.));+#2062 = VECTOR('',#2063,1.);+#2063 = DIRECTION('',(1.,0.));+#2064 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2065 = ORIENTED_EDGE('',*,*,#1825,.T.);+#2066 = ORIENTED_EDGE('',*,*,#2067,.T.);+#2067 = EDGE_CURVE('',#1828,#1948,#2068,.T.);+#2068 = SURFACE_CURVE('',#2069,(#2073,#2080),.PCURVE_S1.);+#2069 = LINE('',#2070,#2071);+#2070 = CARTESIAN_POINT('',(1.84,-0.2275,0.));+#2071 = VECTOR('',#2072,1.);+#2072 = DIRECTION('',(1.,0.,-0.));+#2073 = PCURVE('',#1848,#2074);+#2074 = DEFINITIONAL_REPRESENTATION('',(#2075),#2079);+#2075 = LINE('',#2076,#2077);+#2076 = CARTESIAN_POINT('',(4.315,0.));+#2077 = VECTOR('',#2078,1.);+#2078 = DIRECTION('',(0.,1.));+#2079 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2080 = PCURVE('',#1930,#2081);+#2081 = DEFINITIONAL_REPRESENTATION('',(#2082),#2086);+#2082 = LINE('',#2083,#2084);+#2083 = CARTESIAN_POINT('',(0.,0.));+#2084 = VECTOR('',#2085,1.);+#2085 = DIRECTION('',(1.,0.));+#2086 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2087 = ORIENTED_EDGE('',*,*,#1945,.F.);+#2088 = ADVANCED_FACE('',(#2089),#1904,.T.);+#2089 = FACE_BOUND('',#2090,.T.);+#2090 = EDGE_LOOP('',(#2091,#2112,#2113,#2134));+#2091 = ORIENTED_EDGE('',*,*,#2092,.F.);+#2092 = EDGE_CURVE('',#1861,#1976,#2093,.T.);+#2093 = SURFACE_CURVE('',#2094,(#2098,#2105),.PCURVE_S1.);+#2094 = LINE('',#2095,#2096);+#2095 = CARTESIAN_POINT('',(1.84,0.2275,-4.315));+#2096 = VECTOR('',#2097,1.);+#2097 = DIRECTION('',(1.,0.,-0.));+#2098 = PCURVE('',#1904,#2099);+#2099 = DEFINITIONAL_REPRESENTATION('',(#2100),#2104);+#2100 = LINE('',#2101,#2102);+#2101 = CARTESIAN_POINT('',(0.,0.));+#2102 = VECTOR('',#2103,1.);+#2103 = DIRECTION('',(0.,1.));+#2104 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2105 = PCURVE('',#1876,#2106);+#2106 = DEFINITIONAL_REPRESENTATION('',(#2107),#2111);+#2107 = LINE('',#2108,#2109);+#2108 = CARTESIAN_POINT('',(0.,0.455));+#2109 = VECTOR('',#2110,1.);+#2110 = DIRECTION('',(1.,0.));+#2111 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2112 = ORIENTED_EDGE('',*,*,#1888,.T.);+#2113 = ORIENTED_EDGE('',*,*,#2114,.T.);+#2114 = EDGE_CURVE('',#1889,#1999,#2115,.T.);+#2115 = SURFACE_CURVE('',#2116,(#2120,#2127),.PCURVE_S1.);+#2116 = LINE('',#2117,#2118);+#2117 = CARTESIAN_POINT('',(1.84,0.2275,0.));+#2118 = VECTOR('',#2119,1.);+#2119 = DIRECTION('',(1.,0.,-0.));+#2120 = PCURVE('',#1904,#2121);+#2121 = DEFINITIONAL_REPRESENTATION('',(#2122),#2126);+#2122 = LINE('',#2123,#2124);+#2123 = CARTESIAN_POINT('',(4.315,0.));+#2124 = VECTOR('',#2125,1.);+#2125 = DIRECTION('',(0.,1.));+#2126 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2127 = PCURVE('',#1930,#2128);+#2128 = DEFINITIONAL_REPRESENTATION('',(#2129),#2133);+#2129 = LINE('',#2130,#2131);+#2130 = CARTESIAN_POINT('',(0.,0.455));+#2131 = VECTOR('',#2132,1.);+#2132 = DIRECTION('',(1.,0.));+#2133 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2134 = ORIENTED_EDGE('',*,*,#1998,.F.);+#2135 = ADVANCED_FACE('',(#2136),#1876,.F.);+#2136 = FACE_BOUND('',#2137,.F.);+#2137 = EDGE_LOOP('',(#2138,#2139,#2140,#2141));+#2138 = ORIENTED_EDGE('',*,*,#1860,.F.);+#2139 = ORIENTED_EDGE('',*,*,#2045,.T.);+#2140 = ORIENTED_EDGE('',*,*,#1975,.T.);+#2141 = ORIENTED_EDGE('',*,*,#2092,.F.);+#2142 = ADVANCED_FACE('',(#2143),#1930,.T.);+#2143 = FACE_BOUND('',#2144,.T.);+#2144 = EDGE_LOOP('',(#2145,#2146,#2147,#2148));+#2145 = ORIENTED_EDGE('',*,*,#1916,.F.);+#2146 = ORIENTED_EDGE('',*,*,#2067,.T.);+#2147 = ORIENTED_EDGE('',*,*,#2021,.T.);+#2148 = ORIENTED_EDGE('',*,*,#2114,.F.);+#2149 = ( GEOMETRIC_REPRESENTATION_CONTEXT(3) +GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#2153)) +GLOBAL_UNIT_ASSIGNED_CONTEXT((#2150,#2151,#2152)) REPRESENTATION_CONTEXT+('Context #1','3D Context with UNIT and UNCERTAINTY') );+#2150 = ( LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.) );+#2151 = ( NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.) );+#2152 = ( NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT() );+#2153 = UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(1.E-07),#2150,+  'distance_accuracy_value','confusion accuracy');+#2154 = PRODUCT_RELATED_PRODUCT_CATEGORY('part',$,(#1815));+#2155 = SHAPE_DEFINITION_REPRESENTATION(#2156,#2162);+#2156 = PRODUCT_DEFINITION_SHAPE('','',#2157);+#2157 = PRODUCT_DEFINITION('design','',#2158,#2161);+#2158 = PRODUCT_DEFINITION_FORMATION('','',#2159);+#2159 = PRODUCT('Lead3_Source','Lead3_Source','',(#2160));+#2160 = PRODUCT_CONTEXT('',#2,'mechanical');+#2161 = PRODUCT_DEFINITION_CONTEXT('part definition',#2,'design');+#2162 = ADVANCED_BREP_SHAPE_REPRESENTATION('',(#11,#2163),#2493);+#2163 = MANIFOLD_SOLID_BREP('',#2164);+#2164 = CLOSED_SHELL('',(#2165,#2285,#2385,#2432,#2479,#2486));+#2165 = ADVANCED_FACE('',(#2166),#2180,.F.);+#2166 = FACE_BOUND('',#2167,.F.);+#2167 = EDGE_LOOP('',(#2168,#2203,#2231,#2259));+#2168 = ORIENTED_EDGE('',*,*,#2169,.F.);+#2169 = EDGE_CURVE('',#2170,#2172,#2174,.T.);+#2170 = VERTEX_POINT('',#2171);+#2171 = CARTESIAN_POINT('',(4.665,-0.2275,-13.335));+#2172 = VERTEX_POINT('',#2173);+#2173 = CARTESIAN_POINT('',(4.665,-0.2275,-4.315));+#2174 = SURFACE_CURVE('',#2175,(#2179,#2191),.PCURVE_S1.);+#2175 = LINE('',#2176,#2177);+#2176 = CARTESIAN_POINT('',(4.665,-0.2275,-13.335));+#2177 = VECTOR('',#2178,1.);+#2178 = DIRECTION('',(0.,0.,1.));+#2179 = PCURVE('',#2180,#2185);+#2180 = PLANE('',#2181);+#2181 = AXIS2_PLACEMENT_3D('',#2182,#2183,#2184);+#2182 = CARTESIAN_POINT('',(4.665,-0.2275,-13.335));+#2183 = DIRECTION('',(1.,0.,-0.));+#2184 = DIRECTION('',(0.,0.,1.));+#2185 = DEFINITIONAL_REPRESENTATION('',(#2186),#2190);+#2186 = LINE('',#2187,#2188);+#2187 = CARTESIAN_POINT('',(0.,0.));+#2188 = VECTOR('',#2189,1.);+#2189 = DIRECTION('',(1.,0.));+#2190 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2191 = PCURVE('',#2192,#2197);+#2192 = PLANE('',#2193);+#2193 = AXIS2_PLACEMENT_3D('',#2194,#2195,#2196);+#2194 = CARTESIAN_POINT('',(4.665,-0.2275,-13.335));+#2195 = DIRECTION('',(-0.,1.,0.));+#2196 = DIRECTION('',(0.,0.,1.));+#2197 = DEFINITIONAL_REPRESENTATION('',(#2198),#2202);+#2198 = LINE('',#2199,#2200);+#2199 = CARTESIAN_POINT('',(0.,0.));+#2200 = VECTOR('',#2201,1.);+#2201 = DIRECTION('',(1.,0.));+#2202 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2203 = ORIENTED_EDGE('',*,*,#2204,.T.);+#2204 = EDGE_CURVE('',#2170,#2205,#2207,.T.);+#2205 = VERTEX_POINT('',#2206);+#2206 = CARTESIAN_POINT('',(4.665,0.2275,-13.335));+#2207 = SURFACE_CURVE('',#2208,(#2212,#2219),.PCURVE_S1.);+#2208 = LINE('',#2209,#2210);+#2209 = CARTESIAN_POINT('',(4.665,-0.2275,-13.335));+#2210 = VECTOR('',#2211,1.);+#2211 = DIRECTION('',(-0.,1.,0.));+#2212 = PCURVE('',#2180,#2213);+#2213 = DEFINITIONAL_REPRESENTATION('',(#2214),#2218);+#2214 = LINE('',#2215,#2216);+#2215 = CARTESIAN_POINT('',(0.,0.));+#2216 = VECTOR('',#2217,1.);+#2217 = DIRECTION('',(0.,-1.));+#2218 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2219 = PCURVE('',#2220,#2225);+#2220 = PLANE('',#2221);+#2221 = AXIS2_PLACEMENT_3D('',#2222,#2223,#2224);+#2222 = CARTESIAN_POINT('',(4.665,-0.2275,-13.335));+#2223 = DIRECTION('',(0.,0.,1.));+#2224 = DIRECTION('',(1.,0.,-0.));+#2225 = DEFINITIONAL_REPRESENTATION('',(#2226),#2230);+#2226 = LINE('',#2227,#2228);+#2227 = CARTESIAN_POINT('',(0.,0.));+#2228 = VECTOR('',#2229,1.);+#2229 = DIRECTION('',(0.,1.));+#2230 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2231 = ORIENTED_EDGE('',*,*,#2232,.T.);+#2232 = EDGE_CURVE('',#2205,#2233,#2235,.T.);+#2233 = VERTEX_POINT('',#2234);+#2234 = CARTESIAN_POINT('',(4.665,0.2275,-4.315));+#2235 = SURFACE_CURVE('',#2236,(#2240,#2247),.PCURVE_S1.);+#2236 = LINE('',#2237,#2238);+#2237 = CARTESIAN_POINT('',(4.665,0.2275,-13.335));+#2238 = VECTOR('',#2239,1.);+#2239 = DIRECTION('',(0.,0.,1.));+#2240 = PCURVE('',#2180,#2241);+#2241 = DEFINITIONAL_REPRESENTATION('',(#2242),#2246);+#2242 = LINE('',#2243,#2244);+#2243 = CARTESIAN_POINT('',(0.,-0.455));+#2244 = VECTOR('',#2245,1.);+#2245 = DIRECTION('',(1.,0.));+#2246 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2247 = PCURVE('',#2248,#2253);+#2248 = PLANE('',#2249);+#2249 = AXIS2_PLACEMENT_3D('',#2250,#2251,#2252);+#2250 = CARTESIAN_POINT('',(4.665,0.2275,-13.335));+#2251 = DIRECTION('',(-0.,1.,0.));+#2252 = DIRECTION('',(0.,0.,1.));+#2253 = DEFINITIONAL_REPRESENTATION('',(#2254),#2258);+#2254 = LINE('',#2255,#2256);+#2255 = CARTESIAN_POINT('',(0.,0.));+#2256 = VECTOR('',#2257,1.);+#2257 = DIRECTION('',(1.,0.));+#2258 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2259 = ORIENTED_EDGE('',*,*,#2260,.F.);+#2260 = EDGE_CURVE('',#2172,#2233,#2261,.T.);+#2261 = SURFACE_CURVE('',#2262,(#2266,#2273),.PCURVE_S1.);+#2262 = LINE('',#2263,#2264);+#2263 = CARTESIAN_POINT('',(4.665,-0.2275,-4.315));+#2264 = VECTOR('',#2265,1.);+#2265 = DIRECTION('',(-0.,1.,0.));+#2266 = PCURVE('',#2180,#2267);+#2267 = DEFINITIONAL_REPRESENTATION('',(#2268),#2272);+#2268 = LINE('',#2269,#2270);+#2269 = CARTESIAN_POINT('',(9.02,0.));+#2270 = VECTOR('',#2271,1.);+#2271 = DIRECTION('',(0.,-1.));+#2272 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2273 = PCURVE('',#2274,#2279);+#2274 = PLANE('',#2275);+#2275 = AXIS2_PLACEMENT_3D('',#2276,#2277,#2278);+#2276 = CARTESIAN_POINT('',(4.665,-0.2275,-4.315));+#2277 = DIRECTION('',(0.,0.,1.));+#2278 = DIRECTION('',(1.,0.,-0.));+#2279 = DEFINITIONAL_REPRESENTATION('',(#2280),#2284);+#2280 = LINE('',#2281,#2282);+#2281 = CARTESIAN_POINT('',(0.,0.));+#2282 = VECTOR('',#2283,1.);+#2283 = DIRECTION('',(0.,1.));+#2284 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2285 = ADVANCED_FACE('',(#2286),#2300,.T.);+#2286 = FACE_BOUND('',#2287,.T.);+#2287 = EDGE_LOOP('',(#2288,#2318,#2341,#2364));+#2288 = ORIENTED_EDGE('',*,*,#2289,.F.);+#2289 = EDGE_CURVE('',#2290,#2292,#2294,.T.);+#2290 = VERTEX_POINT('',#2291);+#2291 = CARTESIAN_POINT('',(5.495,-0.2275,-13.335));+#2292 = VERTEX_POINT('',#2293);+#2293 = CARTESIAN_POINT('',(5.495,-0.2275,-4.315));+#2294 = SURFACE_CURVE('',#2295,(#2299,#2311),.PCURVE_S1.);+#2295 = LINE('',#2296,#2297);+#2296 = CARTESIAN_POINT('',(5.495,-0.2275,-13.335));+#2297 = VECTOR('',#2298,1.);+#2298 = DIRECTION('',(0.,0.,1.));+#2299 = PCURVE('',#2300,#2305);+#2300 = PLANE('',#2301);+#2301 = AXIS2_PLACEMENT_3D('',#2302,#2303,#2304);+#2302 = CARTESIAN_POINT('',(5.495,-0.2275,-13.335));+#2303 = DIRECTION('',(1.,0.,-0.));+#2304 = DIRECTION('',(0.,0.,1.));+#2305 = DEFINITIONAL_REPRESENTATION('',(#2306),#2310);+#2306 = LINE('',#2307,#2308);+#2307 = CARTESIAN_POINT('',(0.,0.));+#2308 = VECTOR('',#2309,1.);+#2309 = DIRECTION('',(1.,0.));+#2310 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2311 = PCURVE('',#2192,#2312);+#2312 = DEFINITIONAL_REPRESENTATION('',(#2313),#2317);+#2313 = LINE('',#2314,#2315);+#2314 = CARTESIAN_POINT('',(0.,0.83));+#2315 = VECTOR('',#2316,1.);+#2316 = DIRECTION('',(1.,0.));+#2317 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2318 = ORIENTED_EDGE('',*,*,#2319,.T.);+#2319 = EDGE_CURVE('',#2290,#2320,#2322,.T.);+#2320 = VERTEX_POINT('',#2321);+#2321 = CARTESIAN_POINT('',(5.495,0.2275,-13.335));+#2322 = SURFACE_CURVE('',#2323,(#2327,#2334),.PCURVE_S1.);+#2323 = LINE('',#2324,#2325);+#2324 = CARTESIAN_POINT('',(5.495,-0.2275,-13.335));+#2325 = VECTOR('',#2326,1.);+#2326 = DIRECTION('',(-0.,1.,0.));+#2327 = PCURVE('',#2300,#2328);+#2328 = DEFINITIONAL_REPRESENTATION('',(#2329),#2333);+#2329 = LINE('',#2330,#2331);+#2330 = CARTESIAN_POINT('',(0.,0.));+#2331 = VECTOR('',#2332,1.);+#2332 = DIRECTION('',(0.,-1.));+#2333 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2334 = PCURVE('',#2220,#2335);+#2335 = DEFINITIONAL_REPRESENTATION('',(#2336),#2340);+#2336 = LINE('',#2337,#2338);+#2337 = CARTESIAN_POINT('',(0.83,0.));+#2338 = VECTOR('',#2339,1.);+#2339 = DIRECTION('',(0.,1.));+#2340 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2341 = ORIENTED_EDGE('',*,*,#2342,.T.);+#2342 = EDGE_CURVE('',#2320,#2343,#2345,.T.);+#2343 = VERTEX_POINT('',#2344);+#2344 = CARTESIAN_POINT('',(5.495,0.2275,-4.315));+#2345 = SURFACE_CURVE('',#2346,(#2350,#2357),.PCURVE_S1.);+#2346 = LINE('',#2347,#2348);+#2347 = CARTESIAN_POINT('',(5.495,0.2275,-13.335));+#2348 = VECTOR('',#2349,1.);+#2349 = DIRECTION('',(0.,0.,1.));+#2350 = PCURVE('',#2300,#2351);+#2351 = DEFINITIONAL_REPRESENTATION('',(#2352),#2356);+#2352 = LINE('',#2353,#2354);+#2353 = CARTESIAN_POINT('',(0.,-0.455));+#2354 = VECTOR('',#2355,1.);+#2355 = DIRECTION('',(1.,0.));+#2356 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2357 = PCURVE('',#2248,#2358);+#2358 = DEFINITIONAL_REPRESENTATION('',(#2359),#2363);+#2359 = LINE('',#2360,#2361);+#2360 = CARTESIAN_POINT('',(0.,0.83));+#2361 = VECTOR('',#2362,1.);+#2362 = DIRECTION('',(1.,0.));+#2363 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2364 = ORIENTED_EDGE('',*,*,#2365,.F.);+#2365 = EDGE_CURVE('',#2292,#2343,#2366,.T.);+#2366 = SURFACE_CURVE('',#2367,(#2371,#2378),.PCURVE_S1.);+#2367 = LINE('',#2368,#2369);+#2368 = CARTESIAN_POINT('',(5.495,-0.2275,-4.315));+#2369 = VECTOR('',#2370,1.);+#2370 = DIRECTION('',(-0.,1.,0.));+#2371 = PCURVE('',#2300,#2372);+#2372 = DEFINITIONAL_REPRESENTATION('',(#2373),#2377);+#2373 = LINE('',#2374,#2375);+#2374 = CARTESIAN_POINT('',(9.02,0.));+#2375 = VECTOR('',#2376,1.);+#2376 = DIRECTION('',(0.,-1.));+#2377 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2378 = PCURVE('',#2274,#2379);+#2379 = DEFINITIONAL_REPRESENTATION('',(#2380),#2384);+#2380 = LINE('',#2381,#2382);+#2381 = CARTESIAN_POINT('',(0.83,0.));+#2382 = VECTOR('',#2383,1.);+#2383 = DIRECTION('',(0.,1.));+#2384 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2385 = ADVANCED_FACE('',(#2386),#2192,.F.);+#2386 = FACE_BOUND('',#2387,.F.);+#2387 = EDGE_LOOP('',(#2388,#2409,#2410,#2431));+#2388 = ORIENTED_EDGE('',*,*,#2389,.F.);+#2389 = EDGE_CURVE('',#2170,#2290,#2390,.T.);+#2390 = SURFACE_CURVE('',#2391,(#2395,#2402),.PCURVE_S1.);+#2391 = LINE('',#2392,#2393);+#2392 = CARTESIAN_POINT('',(4.665,-0.2275,-13.335));+#2393 = VECTOR('',#2394,1.);+#2394 = DIRECTION('',(1.,0.,-0.));+#2395 = PCURVE('',#2192,#2396);+#2396 = DEFINITIONAL_REPRESENTATION('',(#2397),#2401);+#2397 = LINE('',#2398,#2399);+#2398 = CARTESIAN_POINT('',(0.,0.));+#2399 = VECTOR('',#2400,1.);+#2400 = DIRECTION('',(0.,1.));+#2401 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2402 = PCURVE('',#2220,#2403);+#2403 = DEFINITIONAL_REPRESENTATION('',(#2404),#2408);+#2404 = LINE('',#2405,#2406);+#2405 = CARTESIAN_POINT('',(0.,0.));+#2406 = VECTOR('',#2407,1.);+#2407 = DIRECTION('',(1.,0.));+#2408 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2409 = ORIENTED_EDGE('',*,*,#2169,.T.);+#2410 = ORIENTED_EDGE('',*,*,#2411,.T.);+#2411 = EDGE_CURVE('',#2172,#2292,#2412,.T.);+#2412 = SURFACE_CURVE('',#2413,(#2417,#2424),.PCURVE_S1.);+#2413 = LINE('',#2414,#2415);+#2414 = CARTESIAN_POINT('',(4.665,-0.2275,-4.315));+#2415 = VECTOR('',#2416,1.);+#2416 = DIRECTION('',(1.,0.,-0.));+#2417 = PCURVE('',#2192,#2418);+#2418 = DEFINITIONAL_REPRESENTATION('',(#2419),#2423);+#2419 = LINE('',#2420,#2421);+#2420 = CARTESIAN_POINT('',(9.02,0.));+#2421 = VECTOR('',#2422,1.);+#2422 = DIRECTION('',(0.,1.));+#2423 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2424 = PCURVE('',#2274,#2425);+#2425 = DEFINITIONAL_REPRESENTATION('',(#2426),#2430);+#2426 = LINE('',#2427,#2428);+#2427 = CARTESIAN_POINT('',(0.,0.));+#2428 = VECTOR('',#2429,1.);+#2429 = DIRECTION('',(1.,0.));+#2430 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2431 = ORIENTED_EDGE('',*,*,#2289,.F.);+#2432 = ADVANCED_FACE('',(#2433),#2248,.T.);+#2433 = FACE_BOUND('',#2434,.T.);+#2434 = EDGE_LOOP('',(#2435,#2456,#2457,#2478));+#2435 = ORIENTED_EDGE('',*,*,#2436,.F.);+#2436 = EDGE_CURVE('',#2205,#2320,#2437,.T.);+#2437 = SURFACE_CURVE('',#2438,(#2442,#2449),.PCURVE_S1.);+#2438 = LINE('',#2439,#2440);+#2439 = CARTESIAN_POINT('',(4.665,0.2275,-13.335));+#2440 = VECTOR('',#2441,1.);+#2441 = DIRECTION('',(1.,0.,-0.));+#2442 = PCURVE('',#2248,#2443);+#2443 = DEFINITIONAL_REPRESENTATION('',(#2444),#2448);+#2444 = LINE('',#2445,#2446);+#2445 = CARTESIAN_POINT('',(0.,0.));+#2446 = VECTOR('',#2447,1.);+#2447 = DIRECTION('',(0.,1.));+#2448 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2449 = PCURVE('',#2220,#2450);+#2450 = DEFINITIONAL_REPRESENTATION('',(#2451),#2455);+#2451 = LINE('',#2452,#2453);+#2452 = CARTESIAN_POINT('',(0.,0.455));+#2453 = VECTOR('',#2454,1.);+#2454 = DIRECTION('',(1.,0.));+#2455 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2456 = ORIENTED_EDGE('',*,*,#2232,.T.);+#2457 = ORIENTED_EDGE('',*,*,#2458,.T.);+#2458 = EDGE_CURVE('',#2233,#2343,#2459,.T.);+#2459 = SURFACE_CURVE('',#2460,(#2464,#2471),.PCURVE_S1.);+#2460 = LINE('',#2461,#2462);+#2461 = CARTESIAN_POINT('',(4.665,0.2275,-4.315));+#2462 = VECTOR('',#2463,1.);+#2463 = DIRECTION('',(1.,0.,-0.));+#2464 = PCURVE('',#2248,#2465);+#2465 = DEFINITIONAL_REPRESENTATION('',(#2466),#2470);+#2466 = LINE('',#2467,#2468);+#2467 = CARTESIAN_POINT('',(9.02,0.));+#2468 = VECTOR('',#2469,1.);+#2469 = DIRECTION('',(0.,1.));+#2470 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2471 = PCURVE('',#2274,#2472);+#2472 = DEFINITIONAL_REPRESENTATION('',(#2473),#2477);+#2473 = LINE('',#2474,#2475);+#2474 = CARTESIAN_POINT('',(0.,0.455));+#2475 = VECTOR('',#2476,1.);+#2476 = DIRECTION('',(1.,0.));+#2477 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2478 = ORIENTED_EDGE('',*,*,#2342,.F.);+#2479 = ADVANCED_FACE('',(#2480),#2220,.F.);+#2480 = FACE_BOUND('',#2481,.F.);+#2481 = EDGE_LOOP('',(#2482,#2483,#2484,#2485));+#2482 = ORIENTED_EDGE('',*,*,#2204,.F.);+#2483 = ORIENTED_EDGE('',*,*,#2389,.T.);+#2484 = ORIENTED_EDGE('',*,*,#2319,.T.);+#2485 = ORIENTED_EDGE('',*,*,#2436,.F.);+#2486 = ADVANCED_FACE('',(#2487),#2274,.T.);+#2487 = FACE_BOUND('',#2488,.T.);+#2488 = EDGE_LOOP('',(#2489,#2490,#2491,#2492));+#2489 = ORIENTED_EDGE('',*,*,#2260,.F.);+#2490 = ORIENTED_EDGE('',*,*,#2411,.T.);+#2491 = ORIENTED_EDGE('',*,*,#2365,.T.);+#2492 = ORIENTED_EDGE('',*,*,#2458,.F.);+#2493 = ( GEOMETRIC_REPRESENTATION_CONTEXT(3) +GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#2497)) +GLOBAL_UNIT_ASSIGNED_CONTEXT((#2494,#2495,#2496)) REPRESENTATION_CONTEXT+('Context #1','3D Context with UNIT and UNCERTAINTY') );+#2494 = ( LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.) );+#2495 = ( NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.) );+#2496 = ( NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT() );+#2497 = UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(1.E-07),#2494,+  'distance_accuracy_value','confusion accuracy');+#2498 = PRODUCT_RELATED_PRODUCT_CATEGORY('part',$,(#2159));+#2499 = SHAPE_DEFINITION_REPRESENTATION(#2500,#2506);+#2500 = PRODUCT_DEFINITION_SHAPE('','',#2501);+#2501 = PRODUCT_DEFINITION('design','',#2502,#2505);+#2502 = PRODUCT_DEFINITION_FORMATION('','',#2503);+#2503 = PRODUCT('Lead3_Shoulder','Lead3_Shoulder','',(#2504));+#2504 = PRODUCT_CONTEXT('',#2,'mechanical');+#2505 = PRODUCT_DEFINITION_CONTEXT('part definition',#2,'design');+#2506 = ADVANCED_BREP_SHAPE_REPRESENTATION('',(#11,#2507),#2837);+#2507 = MANIFOLD_SOLID_BREP('',#2508);+#2508 = CLOSED_SHELL('',(#2509,#2629,#2729,#2776,#2823,#2830));+#2509 = ADVANCED_FACE('',(#2510),#2524,.F.);+#2510 = FACE_BOUND('',#2511,.F.);+#2511 = EDGE_LOOP('',(#2512,#2547,#2575,#2603));+#2512 = ORIENTED_EDGE('',*,*,#2513,.F.);+#2513 = EDGE_CURVE('',#2514,#2516,#2518,.T.);+#2514 = VERTEX_POINT('',#2515);+#2515 = CARTESIAN_POINT('',(4.38,-0.2275,-4.315));+#2516 = VERTEX_POINT('',#2517);+#2517 = CARTESIAN_POINT('',(4.38,-0.2275,0.));+#2518 = SURFACE_CURVE('',#2519,(#2523,#2535),.PCURVE_S1.);+#2519 = LINE('',#2520,#2521);+#2520 = CARTESIAN_POINT('',(4.38,-0.2275,-4.315));+#2521 = VECTOR('',#2522,1.);+#2522 = DIRECTION('',(0.,0.,1.));+#2523 = PCURVE('',#2524,#2529);+#2524 = PLANE('',#2525);+#2525 = AXIS2_PLACEMENT_3D('',#2526,#2527,#2528);+#2526 = CARTESIAN_POINT('',(4.38,-0.2275,-4.315));+#2527 = DIRECTION('',(1.,0.,-0.));+#2528 = DIRECTION('',(0.,0.,1.));+#2529 = DEFINITIONAL_REPRESENTATION('',(#2530),#2534);+#2530 = LINE('',#2531,#2532);+#2531 = CARTESIAN_POINT('',(0.,0.));+#2532 = VECTOR('',#2533,1.);+#2533 = DIRECTION('',(1.,0.));+#2534 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2535 = PCURVE('',#2536,#2541);+#2536 = PLANE('',#2537);+#2537 = AXIS2_PLACEMENT_3D('',#2538,#2539,#2540);+#2538 = CARTESIAN_POINT('',(4.38,-0.2275,-4.315));+#2539 = DIRECTION('',(-0.,1.,0.));+#2540 = DIRECTION('',(0.,0.,1.));+#2541 = DEFINITIONAL_REPRESENTATION('',(#2542),#2546);+#2542 = LINE('',#2543,#2544);+#2543 = CARTESIAN_POINT('',(0.,0.));+#2544 = VECTOR('',#2545,1.);+#2545 = DIRECTION('',(1.,0.));+#2546 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2547 = ORIENTED_EDGE('',*,*,#2548,.T.);+#2548 = EDGE_CURVE('',#2514,#2549,#2551,.T.);+#2549 = VERTEX_POINT('',#2550);+#2550 = CARTESIAN_POINT('',(4.38,0.2275,-4.315));+#2551 = SURFACE_CURVE('',#2552,(#2556,#2563),.PCURVE_S1.);+#2552 = LINE('',#2553,#2554);+#2553 = CARTESIAN_POINT('',(4.38,-0.2275,-4.315));+#2554 = VECTOR('',#2555,1.);+#2555 = DIRECTION('',(-0.,1.,0.));+#2556 = PCURVE('',#2524,#2557);+#2557 = DEFINITIONAL_REPRESENTATION('',(#2558),#2562);+#2558 = LINE('',#2559,#2560);+#2559 = CARTESIAN_POINT('',(0.,0.));+#2560 = VECTOR('',#2561,1.);+#2561 = DIRECTION('',(0.,-1.));+#2562 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2563 = PCURVE('',#2564,#2569);+#2564 = PLANE('',#2565);+#2565 = AXIS2_PLACEMENT_3D('',#2566,#2567,#2568);+#2566 = CARTESIAN_POINT('',(4.38,-0.2275,-4.315));+#2567 = DIRECTION('',(0.,0.,1.));+#2568 = DIRECTION('',(1.,0.,-0.));+#2569 = DEFINITIONAL_REPRESENTATION('',(#2570),#2574);+#2570 = LINE('',#2571,#2572);+#2571 = CARTESIAN_POINT('',(0.,0.));+#2572 = VECTOR('',#2573,1.);+#2573 = DIRECTION('',(0.,1.));+#2574 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2575 = ORIENTED_EDGE('',*,*,#2576,.T.);+#2576 = EDGE_CURVE('',#2549,#2577,#2579,.T.);+#2577 = VERTEX_POINT('',#2578);+#2578 = CARTESIAN_POINT('',(4.38,0.2275,0.));+#2579 = SURFACE_CURVE('',#2580,(#2584,#2591),.PCURVE_S1.);+#2580 = LINE('',#2581,#2582);+#2581 = CARTESIAN_POINT('',(4.38,0.2275,-4.315));+#2582 = VECTOR('',#2583,1.);+#2583 = DIRECTION('',(0.,0.,1.));+#2584 = PCURVE('',#2524,#2585);+#2585 = DEFINITIONAL_REPRESENTATION('',(#2586),#2590);+#2586 = LINE('',#2587,#2588);+#2587 = CARTESIAN_POINT('',(0.,-0.455));+#2588 = VECTOR('',#2589,1.);+#2589 = DIRECTION('',(1.,0.));+#2590 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2591 = PCURVE('',#2592,#2597);+#2592 = PLANE('',#2593);+#2593 = AXIS2_PLACEMENT_3D('',#2594,#2595,#2596);+#2594 = CARTESIAN_POINT('',(4.38,0.2275,-4.315));+#2595 = DIRECTION('',(-0.,1.,0.));+#2596 = DIRECTION('',(0.,0.,1.));+#2597 = DEFINITIONAL_REPRESENTATION('',(#2598),#2602);+#2598 = LINE('',#2599,#2600);+#2599 = CARTESIAN_POINT('',(0.,0.));+#2600 = VECTOR('',#2601,1.);+#2601 = DIRECTION('',(1.,0.));+#2602 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2603 = ORIENTED_EDGE('',*,*,#2604,.F.);+#2604 = EDGE_CURVE('',#2516,#2577,#2605,.T.);+#2605 = SURFACE_CURVE('',#2606,(#2610,#2617),.PCURVE_S1.);+#2606 = LINE('',#2607,#2608);+#2607 = CARTESIAN_POINT('',(4.38,-0.2275,0.));+#2608 = VECTOR('',#2609,1.);+#2609 = DIRECTION('',(-0.,1.,0.));+#2610 = PCURVE('',#2524,#2611);+#2611 = DEFINITIONAL_REPRESENTATION('',(#2612),#2616);+#2612 = LINE('',#2613,#2614);+#2613 = CARTESIAN_POINT('',(4.315,0.));+#2614 = VECTOR('',#2615,1.);+#2615 = DIRECTION('',(0.,-1.));+#2616 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2617 = PCURVE('',#2618,#2623);+#2618 = PLANE('',#2619);+#2619 = AXIS2_PLACEMENT_3D('',#2620,#2621,#2622);+#2620 = CARTESIAN_POINT('',(4.38,-0.2275,0.));+#2621 = DIRECTION('',(0.,0.,1.));+#2622 = DIRECTION('',(1.,0.,-0.));+#2623 = DEFINITIONAL_REPRESENTATION('',(#2624),#2628);+#2624 = LINE('',#2625,#2626);+#2625 = CARTESIAN_POINT('',(0.,0.));+#2626 = VECTOR('',#2627,1.);+#2627 = DIRECTION('',(0.,1.));+#2628 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2629 = ADVANCED_FACE('',(#2630),#2644,.T.);+#2630 = FACE_BOUND('',#2631,.T.);+#2631 = EDGE_LOOP('',(#2632,#2662,#2685,#2708));+#2632 = ORIENTED_EDGE('',*,*,#2633,.F.);+#2633 = EDGE_CURVE('',#2634,#2636,#2638,.T.);+#2634 = VERTEX_POINT('',#2635);+#2635 = CARTESIAN_POINT('',(5.78,-0.2275,-4.315));+#2636 = VERTEX_POINT('',#2637);+#2637 = CARTESIAN_POINT('',(5.78,-0.2275,0.));+#2638 = SURFACE_CURVE('',#2639,(#2643,#2655),.PCURVE_S1.);+#2639 = LINE('',#2640,#2641);+#2640 = CARTESIAN_POINT('',(5.78,-0.2275,-4.315));+#2641 = VECTOR('',#2642,1.);+#2642 = DIRECTION('',(0.,0.,1.));+#2643 = PCURVE('',#2644,#2649);+#2644 = PLANE('',#2645);+#2645 = AXIS2_PLACEMENT_3D('',#2646,#2647,#2648);+#2646 = CARTESIAN_POINT('',(5.78,-0.2275,-4.315));+#2647 = DIRECTION('',(1.,0.,-0.));+#2648 = DIRECTION('',(0.,0.,1.));+#2649 = DEFINITIONAL_REPRESENTATION('',(#2650),#2654);+#2650 = LINE('',#2651,#2652);+#2651 = CARTESIAN_POINT('',(0.,0.));+#2652 = VECTOR('',#2653,1.);+#2653 = DIRECTION('',(1.,0.));+#2654 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2655 = PCURVE('',#2536,#2656);+#2656 = DEFINITIONAL_REPRESENTATION('',(#2657),#2661);+#2657 = LINE('',#2658,#2659);+#2658 = CARTESIAN_POINT('',(0.,1.4));+#2659 = VECTOR('',#2660,1.);+#2660 = DIRECTION('',(1.,0.));+#2661 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2662 = ORIENTED_EDGE('',*,*,#2663,.T.);+#2663 = EDGE_CURVE('',#2634,#2664,#2666,.T.);+#2664 = VERTEX_POINT('',#2665);+#2665 = CARTESIAN_POINT('',(5.78,0.2275,-4.315));+#2666 = SURFACE_CURVE('',#2667,(#2671,#2678),.PCURVE_S1.);+#2667 = LINE('',#2668,#2669);+#2668 = CARTESIAN_POINT('',(5.78,-0.2275,-4.315));+#2669 = VECTOR('',#2670,1.);+#2670 = DIRECTION('',(-0.,1.,0.));+#2671 = PCURVE('',#2644,#2672);+#2672 = DEFINITIONAL_REPRESENTATION('',(#2673),#2677);+#2673 = LINE('',#2674,#2675);+#2674 = CARTESIAN_POINT('',(0.,0.));+#2675 = VECTOR('',#2676,1.);+#2676 = DIRECTION('',(0.,-1.));+#2677 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2678 = PCURVE('',#2564,#2679);+#2679 = DEFINITIONAL_REPRESENTATION('',(#2680),#2684);+#2680 = LINE('',#2681,#2682);+#2681 = CARTESIAN_POINT('',(1.4,0.));+#2682 = VECTOR('',#2683,1.);+#2683 = DIRECTION('',(0.,1.));+#2684 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2685 = ORIENTED_EDGE('',*,*,#2686,.T.);+#2686 = EDGE_CURVE('',#2664,#2687,#2689,.T.);+#2687 = VERTEX_POINT('',#2688);+#2688 = CARTESIAN_POINT('',(5.78,0.2275,0.));+#2689 = SURFACE_CURVE('',#2690,(#2694,#2701),.PCURVE_S1.);+#2690 = LINE('',#2691,#2692);+#2691 = CARTESIAN_POINT('',(5.78,0.2275,-4.315));+#2692 = VECTOR('',#2693,1.);+#2693 = DIRECTION('',(0.,0.,1.));+#2694 = PCURVE('',#2644,#2695);+#2695 = DEFINITIONAL_REPRESENTATION('',(#2696),#2700);+#2696 = LINE('',#2697,#2698);+#2697 = CARTESIAN_POINT('',(0.,-0.455));+#2698 = VECTOR('',#2699,1.);+#2699 = DIRECTION('',(1.,0.));+#2700 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2701 = PCURVE('',#2592,#2702);+#2702 = DEFINITIONAL_REPRESENTATION('',(#2703),#2707);+#2703 = LINE('',#2704,#2705);+#2704 = CARTESIAN_POINT('',(0.,1.4));+#2705 = VECTOR('',#2706,1.);+#2706 = DIRECTION('',(1.,0.));+#2707 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2708 = ORIENTED_EDGE('',*,*,#2709,.F.);+#2709 = EDGE_CURVE('',#2636,#2687,#2710,.T.);+#2710 = SURFACE_CURVE('',#2711,(#2715,#2722),.PCURVE_S1.);+#2711 = LINE('',#2712,#2713);+#2712 = CARTESIAN_POINT('',(5.78,-0.2275,0.));+#2713 = VECTOR('',#2714,1.);+#2714 = DIRECTION('',(-0.,1.,0.));+#2715 = PCURVE('',#2644,#2716);+#2716 = DEFINITIONAL_REPRESENTATION('',(#2717),#2721);+#2717 = LINE('',#2718,#2719);+#2718 = CARTESIAN_POINT('',(4.315,0.));+#2719 = VECTOR('',#2720,1.);+#2720 = DIRECTION('',(0.,-1.));+#2721 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2722 = PCURVE('',#2618,#2723);+#2723 = DEFINITIONAL_REPRESENTATION('',(#2724),#2728);+#2724 = LINE('',#2725,#2726);+#2725 = CARTESIAN_POINT('',(1.4,0.));+#2726 = VECTOR('',#2727,1.);+#2727 = DIRECTION('',(0.,1.));+#2728 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2729 = ADVANCED_FACE('',(#2730),#2536,.F.);+#2730 = FACE_BOUND('',#2731,.F.);+#2731 = EDGE_LOOP('',(#2732,#2753,#2754,#2775));+#2732 = ORIENTED_EDGE('',*,*,#2733,.F.);+#2733 = EDGE_CURVE('',#2514,#2634,#2734,.T.);+#2734 = SURFACE_CURVE('',#2735,(#2739,#2746),.PCURVE_S1.);+#2735 = LINE('',#2736,#2737);+#2736 = CARTESIAN_POINT('',(4.38,-0.2275,-4.315));+#2737 = VECTOR('',#2738,1.);+#2738 = DIRECTION('',(1.,0.,-0.));+#2739 = PCURVE('',#2536,#2740);+#2740 = DEFINITIONAL_REPRESENTATION('',(#2741),#2745);+#2741 = LINE('',#2742,#2743);+#2742 = CARTESIAN_POINT('',(0.,0.));+#2743 = VECTOR('',#2744,1.);+#2744 = DIRECTION('',(0.,1.));+#2745 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2746 = PCURVE('',#2564,#2747);+#2747 = DEFINITIONAL_REPRESENTATION('',(#2748),#2752);+#2748 = LINE('',#2749,#2750);+#2749 = CARTESIAN_POINT('',(0.,0.));+#2750 = VECTOR('',#2751,1.);+#2751 = DIRECTION('',(1.,0.));+#2752 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2753 = ORIENTED_EDGE('',*,*,#2513,.T.);+#2754 = ORIENTED_EDGE('',*,*,#2755,.T.);+#2755 = EDGE_CURVE('',#2516,#2636,#2756,.T.);+#2756 = SURFACE_CURVE('',#2757,(#2761,#2768),.PCURVE_S1.);+#2757 = LINE('',#2758,#2759);+#2758 = CARTESIAN_POINT('',(4.38,-0.2275,0.));+#2759 = VECTOR('',#2760,1.);+#2760 = DIRECTION('',(1.,0.,-0.));+#2761 = PCURVE('',#2536,#2762);+#2762 = DEFINITIONAL_REPRESENTATION('',(#2763),#2767);+#2763 = LINE('',#2764,#2765);+#2764 = CARTESIAN_POINT('',(4.315,0.));+#2765 = VECTOR('',#2766,1.);+#2766 = DIRECTION('',(0.,1.));+#2767 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2768 = PCURVE('',#2618,#2769);+#2769 = DEFINITIONAL_REPRESENTATION('',(#2770),#2774);+#2770 = LINE('',#2771,#2772);+#2771 = CARTESIAN_POINT('',(0.,0.));+#2772 = VECTOR('',#2773,1.);+#2773 = DIRECTION('',(1.,0.));+#2774 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2775 = ORIENTED_EDGE('',*,*,#2633,.F.);+#2776 = ADVANCED_FACE('',(#2777),#2592,.T.);+#2777 = FACE_BOUND('',#2778,.T.);+#2778 = EDGE_LOOP('',(#2779,#2800,#2801,#2822));+#2779 = ORIENTED_EDGE('',*,*,#2780,.F.);+#2780 = EDGE_CURVE('',#2549,#2664,#2781,.T.);+#2781 = SURFACE_CURVE('',#2782,(#2786,#2793),.PCURVE_S1.);+#2782 = LINE('',#2783,#2784);+#2783 = CARTESIAN_POINT('',(4.38,0.2275,-4.315));+#2784 = VECTOR('',#2785,1.);+#2785 = DIRECTION('',(1.,0.,-0.));+#2786 = PCURVE('',#2592,#2787);+#2787 = DEFINITIONAL_REPRESENTATION('',(#2788),#2792);+#2788 = LINE('',#2789,#2790);+#2789 = CARTESIAN_POINT('',(0.,0.));+#2790 = VECTOR('',#2791,1.);+#2791 = DIRECTION('',(0.,1.));+#2792 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2793 = PCURVE('',#2564,#2794);+#2794 = DEFINITIONAL_REPRESENTATION('',(#2795),#2799);+#2795 = LINE('',#2796,#2797);+#2796 = CARTESIAN_POINT('',(0.,0.455));+#2797 = VECTOR('',#2798,1.);+#2798 = DIRECTION('',(1.,0.));+#2799 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2800 = ORIENTED_EDGE('',*,*,#2576,.T.);+#2801 = ORIENTED_EDGE('',*,*,#2802,.T.);+#2802 = EDGE_CURVE('',#2577,#2687,#2803,.T.);+#2803 = SURFACE_CURVE('',#2804,(#2808,#2815),.PCURVE_S1.);+#2804 = LINE('',#2805,#2806);+#2805 = CARTESIAN_POINT('',(4.38,0.2275,0.));+#2806 = VECTOR('',#2807,1.);+#2807 = DIRECTION('',(1.,0.,-0.));+#2808 = PCURVE('',#2592,#2809);+#2809 = DEFINITIONAL_REPRESENTATION('',(#2810),#2814);+#2810 = LINE('',#2811,#2812);+#2811 = CARTESIAN_POINT('',(4.315,0.));+#2812 = VECTOR('',#2813,1.);+#2813 = DIRECTION('',(0.,1.));+#2814 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2815 = PCURVE('',#2618,#2816);+#2816 = DEFINITIONAL_REPRESENTATION('',(#2817),#2821);+#2817 = LINE('',#2818,#2819);+#2818 = CARTESIAN_POINT('',(0.,0.455));+#2819 = VECTOR('',#2820,1.);+#2820 = DIRECTION('',(1.,0.));+#2821 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) +PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''+  ) );+#2822 = ORIENTED_EDGE('',*,*,#2686,.F.);+#2823 = ADVANCED_FACE('',(#2824),#2564,.F.);+#2824 = FACE_BOUND('',#2825,.F.);+#2825 = EDGE_LOOP('',(#2826,#2827,#2828,#2829));+#2826 = ORIENTED_EDGE('',*,*,#2548,.F.);+#2827 = ORIENTED_EDGE('',*,*,#2733,.T.);+#2828 = ORIENTED_EDGE('',*,*,#2663,.T.);+#2829 = ORIENTED_EDGE('',*,*,#2780,.F.);+#2830 = ADVANCED_FACE('',(#2831),#2618,.T.);+#2831 = FACE_BOUND('',#2832,.T.);+#2832 = EDGE_LOOP('',(#2833,#2834,#2835,#2836));+#2833 = ORIENTED_EDGE('',*,*,#2604,.F.);+#2834 = ORIENTED_EDGE('',*,*,#2755,.T.);+#2835 = ORIENTED_EDGE('',*,*,#2709,.T.);+#2836 = ORIENTED_EDGE('',*,*,#2802,.F.);+#2837 = ( GEOMETRIC_REPRESENTATION_CONTEXT(3) +GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#2841)) +GLOBAL_UNIT_ASSIGNED_CONTEXT((#2838,#2839,#2840)) REPRESENTATION_CONTEXT+('Context #1','3D Context with UNIT and UNCERTAINTY') );+#2838 = ( LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.) );+#2839 = ( NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.) );+#2840 = ( NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT() );+#2841 = UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(1.E-07),#2838,+  'distance_accuracy_value','confusion accuracy');+#2842 = PRODUCT_RELATED_PRODUCT_CATEGORY('part',$,(#2503));+#2843 = MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION('',(+    #2844),#429);+#2844 = STYLED_ITEM('color',(#2845),#15);+#2845 = PRESENTATION_STYLE_ASSIGNMENT((#2846,#2852));+#2846 = SURFACE_STYLE_USAGE(.BOTH.,#2847);+#2847 = SURFACE_SIDE_STYLE('',(#2848));+#2848 = SURFACE_STYLE_FILL_AREA(#2849);+#2849 = FILL_AREA_STYLE('',(#2850));+#2850 = FILL_AREA_STYLE_COLOUR('',#2851);+#2851 = COLOUR_RGB('',0.826657050643,0.832283570587,0.843389171228);+#2852 = CURVE_STYLE('',#2853,POSITIVE_LENGTH_MEASURE(0.1),#2851);+#2853 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#2854 = MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION('',(+    #2855),#2149);+#2855 = STYLED_ITEM('color',(#2856),#1819);+#2856 = PRESENTATION_STYLE_ASSIGNMENT((#2857,#2863));+#2857 = SURFACE_STYLE_USAGE(.BOTH.,#2858);+#2858 = SURFACE_SIDE_STYLE('',(#2859));+#2859 = SURFACE_STYLE_FILL_AREA(#2860);+#2860 = FILL_AREA_STYLE('',(#2861));+#2861 = FILL_AREA_STYLE_COLOUR('',#2862);+#2862 = COLOUR_RGB('',0.854305825093,0.859695970994,0.870344943399);+#2863 = CURVE_STYLE('',#2864,POSITIVE_LENGTH_MEASURE(0.1),#2862);+#2864 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#2865 = MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION('',(+    #2866),#1117);+#2866 = STYLED_ITEM('color',(#2867),#787);+#2867 = PRESENTATION_STYLE_ASSIGNMENT((#2868,#2873));+#2868 = SURFACE_STYLE_USAGE(.BOTH.,#2869);+#2869 = SURFACE_SIDE_STYLE('',(#2870));+#2870 = SURFACE_STYLE_FILL_AREA(#2871);+#2871 = FILL_AREA_STYLE('',(#2872));+#2872 = FILL_AREA_STYLE_COLOUR('',#2862);+#2873 = CURVE_STYLE('',#2874,POSITIVE_LENGTH_MEASURE(0.1),#2862);+#2874 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#2875 = MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION('',(+    #2876),#773);+#2876 = STYLED_ITEM('color',(#2877),#443);+#2877 = PRESENTATION_STYLE_ASSIGNMENT((#2878,#2884));+#2878 = SURFACE_STYLE_USAGE(.BOTH.,#2879);+#2879 = SURFACE_SIDE_STYLE('',(#2880));+#2880 = SURFACE_STYLE_FILL_AREA(#2881);+#2881 = FILL_AREA_STYLE('',(#2882));+#2882 = FILL_AREA_STYLE_COLOUR('',#2883);+#2883 = COLOUR_RGB('',0.313304153717,0.322726116794,0.331830027914);+#2884 = CURVE_STYLE('',#2885,POSITIVE_LENGTH_MEASURE(0.1),#2883);+#2885 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#2886 = MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION('',(+    #2887),#2837);+#2887 = STYLED_ITEM('color',(#2888),#2507);+#2888 = PRESENTATION_STYLE_ASSIGNMENT((#2889,#2894));+#2889 = SURFACE_STYLE_USAGE(.BOTH.,#2890);+#2890 = SURFACE_SIDE_STYLE('',(#2891));+#2891 = SURFACE_STYLE_FILL_AREA(#2892);+#2892 = FILL_AREA_STYLE('',(#2893));+#2893 = FILL_AREA_STYLE_COLOUR('',#2862);+#2894 = CURVE_STYLE('',#2895,POSITIVE_LENGTH_MEASURE(0.1),#2862);+#2895 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#2896 = MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION('',(+    #2897),#2493);+#2897 = STYLED_ITEM('color',(#2898),#2163);+#2898 = PRESENTATION_STYLE_ASSIGNMENT((#2899,#2904));+#2899 = SURFACE_STYLE_USAGE(.BOTH.,#2900);+#2900 = SURFACE_SIDE_STYLE('',(#2901));+#2901 = SURFACE_STYLE_FILL_AREA(#2902);+#2902 = FILL_AREA_STYLE('',(#2903));+#2903 = FILL_AREA_STYLE_COLOUR('',#2862);+#2904 = CURVE_STYLE('',#2905,POSITIVE_LENGTH_MEASURE(0.1),#2862);+#2905 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#2906 = MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION('',(+    #2907),#1805);+#2907 = STYLED_ITEM('color',(#2908),#1475);+#2908 = PRESENTATION_STYLE_ASSIGNMENT((#2909,#2914));+#2909 = SURFACE_STYLE_USAGE(.BOTH.,#2910);+#2910 = SURFACE_SIDE_STYLE('',(#2911));+#2911 = SURFACE_STYLE_FILL_AREA(#2912);+#2912 = FILL_AREA_STYLE('',(#2913));+#2913 = FILL_AREA_STYLE_COLOUR('',#2862);+#2914 = CURVE_STYLE('',#2915,POSITIVE_LENGTH_MEASURE(0.1),#2862);+#2915 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+#2916 = MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION('',(+    #2917),#1461);+#2917 = STYLED_ITEM('color',(#2918),#1131);+#2918 = PRESENTATION_STYLE_ASSIGNMENT((#2919,#2924));+#2919 = SURFACE_STYLE_USAGE(.BOTH.,#2920);+#2920 = SURFACE_SIDE_STYLE('',(#2921));+#2921 = SURFACE_STYLE_FILL_AREA(#2922);+#2922 = FILL_AREA_STYLE('',(#2923));+#2923 = FILL_AREA_STYLE_COLOUR('',#2862);+#2924 = CURVE_STYLE('',#2925,POSITIVE_LENGTH_MEASURE(0.1),#2862);+#2925 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');+ENDSEC;+END-ISO-10303-21;
ixtp15n50l2-board-use.glbadded
⋯ 1 unchanged line ⋯
ixtp15n50l2-hero.glbadded
⋯ 1 unchanged line ⋯
ixtp15n50l2-hero.overlay.jsonadded+167
@@ -0,0 +1,167 @@+{+ "spec": "adom-hero 1.4",+ "mpn": "IXTP15N50L2",+ "kind": "component + footprint reference art",+ "board_use": false,+ "plane_z_mm": -0.02,+ "units": "metre",+ "upAxis": "Z",+ "layers": {+  "pad_outlines": {+   "material": "Footprint pads - teal dashed outlines - 50 percent opacity",+   "rgba": [+    0.0,+    0.902,+    0.863,+    0.5+   ],+   "pads": 3,+   "span_mm": 7.28,+   "dash_mm": 0.182,+   "gap_mm": 0.1092,+   "pad_stroke_mm": 0.0437+  },+  "silkscreen": {+   "material": "Silkscreen reference lines - 30 percent opacity",+   "rgba": [+    0.92,+    0.96,+    1.0,+    0.3+   ],+   "footprint_items": 5,+   "pin1": {+    "source": "added dot (AI)",+    "pad": "1",+    "center_mm": [+     -1.65,+     0.0+    ],+    "r_mm": 0.35+   }+  },+  "signal_names": {+   "material": "Signal names - 50 percent opacity",+   "rgba": [+    0.92,+    0.96,+    1.0,+    0.5+   ],+   "font": "DejaVu Sans Mono",+   "labels": 3,+   "sides": "top + mirrored underside (single-sided)",+   "omitted": null,+   "fallback_to_pad_number": 0+  }+ },+ "align": {+  "ok": true,+  "centre_offset_mm": 0.0,+  "tolerance_mm": 0.582,+  "orientation_flipped": false,+  "contacts_bbox_mm": [+   -0.415,+   5.495,+   -0.227,+   0.227+  ],+  "pads_bbox_mm": [+   -1.1,+   6.18,+   -1.1,+   1.1+  ],+  "seating_z_mm": -10.335,+  "model_transform_in_footprint": {+   "offset": [+    0.0,+    0.0,+    3.0+   ],+   "rotate": [+    0.0,+    0.0,+    0.0+   ]+  }+ },+ "sources": {+  "glb": "ixtp15n50l2-board-use.glb",+  "glb_sha256": "a9e3c0ad5ad11b440204219e8ee829370ae7e728e7629d52eb642cac2c869632",+  "footprint": "ixtp15n50l2.kicad_mod",+  "footprint_sha256": "15a60d3e2ada647266f5b3ab5d27a76a7cacfb968df19726fc713c4c5d4fa831",+  "pins": "page.json component.pins"+ },+ "generator": "factory/hero_glb.py",+ "labels": [+  {+   "pad": "1",+   "text": "Gate",+   "x": -2.15,+   "y": 0.0,+   "align": "right",+   "vertical": false,+   "h": 0.6+  },+  {+   "pad": "2",+   "text": "Drain",+   "x": 3.79,+   "y": 0.0,+   "align": "left",+   "vertical": false,+   "h": 0.6+  },+  {+   "pad": "3",+   "text": "Source",+   "x": 6.33,+   "y": 0.0,+   "align": "left",+   "vertical": false,+   "h": 0.6+  }+ ],+ "pads": [+  {+   "number": "1",+   "shape": "rect",+   "center_mm": [+    0.0,+    0.0+   ],+   "size_mm": [+    2.2,+    2.2+   ],+   "rot": 0.0+  },+  {+   "number": "2",+   "shape": "circle",+   "center_mm": [+    2.54,+    0.0+   ],+   "size_mm": [+    2.2,+    2.2+   ],+   "rot": 0.0+  },+  {+   "number": "3",+   "shape": "circle",+   "center_mm": [+    5.08,+    0.0+   ],+   "size_mm": [+    2.2,+    2.2+   ],+   "rot": 0.0+  }+ ]+}\ No newline at end of file
ixtp15n50l2.adom-lbr.jsonadded+441
@@ -0,0 +1,441 @@+{+  "schema_version": 2,+  "mpn": "IXTP15N50L2",+  "manufacturer": "IXYS / Littelfuse",+  "package": "",+  "value": "",+  "category": "",+  "symbol": {+    "name": "IXTP15N50L2",+    "pins": [+      {+        "number": "1",+        "name": "G",+        "x": -200,+        "y": 0,+        "length": 100,+        "rotation": 0,+        "electrical_type": "input"+      },+      {+        "number": "2",+        "name": "D",+        "x": 100,+        "y": 200,+        "length": 100,+        "rotation": 270,+        "electrical_type": "passive"+      },+      {+        "number": "3",+        "name": "S",+        "x": 100,+        "y": -200,+        "length": 100,+        "rotation": 90,+        "electrical_type": "passive"+      }+    ],+    "body": null,+    "graphics": [+      {+        "kind": "polyline",+        "points": [+          [+            10.0,+            75.0+          ],+          [+            10.0,+            -75.0+          ]+        ],+        "width": 10.0+      },+      {+        "kind": "polyline",+        "points": [+          [+            10.0,+            0.0+          ],+          [+            -100.0,+            0.0+          ]+        ],+        "width": 0.0+      },+      {+        "kind": "polyline",+        "points": [+          [+            30.0,+            90.0+          ],+          [+            30.0,+            50.0+          ]+        ],+        "width": 10.0+      },+      {+        "kind": "polyline",+        "points": [+          [+            30.0,+            20.0+          ],+          [+            30.0,+            -20.0+          ]+        ],+        "width": 10.0+      },+      {+        "kind": "polyline",+        "points": [+          [+            30.0,+            -50.0+          ],+          [+            30.0,+            -90.0+          ]+        ],+        "width": 10.0+      },+      {+        "kind": "polyline",+        "points": [+          [+            30.0,+            -70.0+          ],+          [+            130.0,+            -70.0+          ],+          [+            130.0,+            70.0+          ],+          [+            30.0,+            70.0+          ]+        ],+        "width": 0.0+      },+      {+        "kind": "polyline",+        "points": [+          [+            40.0,+            0.0+          ],+          [+            80.0,+            15.0+          ],+          [+            80.0,+            -15.0+          ],+          [+            40.0,+            0.0+          ]+        ],+        "width": 0.0+      },+      {+        "kind": "polyline",+        "points": [+          [+            100.0,+            100.0+          ],+          [+            100.0,+            70.0+          ]+        ],+        "width": 0.0+      },+      {+        "kind": "polyline",+        "points": [+          [+            100.0,+            -100.0+          ],+          [+            100.0,+            0.0+          ],+          [+            30.0,+            0.0+          ]+        ],+        "width": 0.0+      },+      {+        "kind": "polyline",+        "points": [+          [+            115.0,+            15.0+          ],+          [+            145.0,+            15.0+          ]+        ],+        "width": 0.0+      },+      {+        "kind": "polyline",+        "points": [+          [+            130.0,+            15.0+          ],+          [+            115.0,+            -10.0+          ],+          [+            145.0,+            -10.0+          ],+          [+            130.0,+            15.0+          ]+        ],+        "width": 0.0+      },+      {+        "kind": "circle",+        "cx": 65.0,+        "cy": 0.0,+        "r": 110.0,+        "width": 10.0+      },+      {+        "kind": "circle",+        "cx": 100.0,+        "cy": 70.0,+        "r": 10.0,+        "width": 0.0+      },+      {+        "kind": "circle",+        "cx": 100.0,+        "cy": -70.0,+        "r": 10.0,+        "width": 0.0+      }+    ],+    "designator_prefix": "Q",+    "footprint": "IXTP15N50L2_TO220_Straight_Drill1p4",+    "parameters": [+      {+        "name": "Value",+        "value": "IXTP15N50L2",+        "visible": true+      },+      {+        "name": "Datasheet",+        "value": "https://www.littelfuse.com/~/media/electronics/datasheets/discrete_mosfets/littelfuse_discrete_mosfets_n-channel_linear_ixt_15n50_datasheet.pdf.pdf",+        "visible": true+      },+      {+        "name": "Description",+        "value": "IXYS LinearL2 N-channel MOSFET, TO-220AB, G-D-S; tab is Drain",+        "visible": true+      },+      {+        "name": "ki_keywords",+        "value": "transistor NMOS N-MOS N-MOSFET",+        "visible": true+      },+      {+        "name": "MPN",+        "value": "IXTP15N50L2",+        "visible": false+      },+      {+        "name": "Manufacturer",+        "value": "IXYS / Littelfuse",+        "visible": false+      },+      {+        "name": "Adom Wiki",+        "value": "https://wiki.adom.inc/adom/ixtp15n50l2",+        "visible": false+      },+      {+        "name": "Mouser",+        "value": "747-IXTP15N50L2",+        "visible": false+      },+      {+        "name": "Supplier 1",+        "value": "Mouser",+        "visible": false+      },+      {+        "name": "Supplier Part Number 1",+        "value": "747-IXTP15N50L2",+        "visible": false+      },+      {+        "name": "Manufacturer Part Number",+        "value": "IXTP15N50L2",+        "visible": false+      }+    ],+    "pin_numbers_hidden": false,+    "pin_names_hidden": true+  },+  "footprint": {+    "name": "IXTP15N50L2_TO220_Straight_Drill1p4",+    "pads": [+      {+        "number": "1",+        "x_mm": 0.0,+        "y_mm": 0.0,+        "w_mm": 2.2,+        "h_mm": 2.2,+        "drill_mm": 1.4,+        "rotation": 0.0,+        "shape": "rect",+        "plated": true+      },+      {+        "number": "2",+        "x_mm": 2.54,+        "y_mm": 0.0,+        "w_mm": 2.2,+        "h_mm": 2.2,+        "drill_mm": 1.4,+        "rotation": 0.0,+        "shape": "circle",+        "plated": true+      },+      {+        "number": "3",+        "x_mm": 5.08,+        "y_mm": 0.0,+        "w_mm": 2.2,+        "h_mm": 2.2,+        "drill_mm": 1.4,+        "rotation": 0.0,+        "shape": "circle",+        "plated": true+      }+    ],+    "graphics": [+      {+        "kind": "line",+        "layer": {+          "role": "silk"+        },+        "x1": -2.91,+        "y1": -2.91,+        "x2": 7.99,+        "y2": -2.91,+        "width": 0.12+      },+      {+        "kind": "line",+        "layer": {+          "role": "silk"+        },+        "x1": 7.99,+        "y1": -2.91,+        "x2": 7.99,+        "y2": 2.66,+        "width": 0.12+      },+      {+        "kind": "line",+        "layer": {+          "role": "silk"+        },+        "x1": 7.99,+        "y1": 2.66,+        "x2": -2.91,+        "y2": 2.66,+        "width": 0.12+      },+      {+        "kind": "line",+        "layer": {+          "role": "silk"+        },+        "x1": -2.91,+        "y1": 2.66,+        "x2": -2.91,+        "y2": -2.91,+        "width": 0.12+      },+      {+        "kind": "line",+        "layer": {+          "role": "silk"+        },+        "x1": -3.09,+        "y1": -3.09,+        "x2": -2.49,+        "y2": -3.09,+        "width": 0.12+      },+      {+        "kind": "rect",+        "layer": {+          "role": "courtyard"+        },+        "x1": -3.04,+        "y1": -3.04,+        "x2": 8.12,+        "y2": 2.79,+        "width": 0.05+      },+      {+        "kind": "rect",+        "layer": {+          "role": "fab"+        },+        "x1": -2.79,+        "y1": -2.79,+        "x2": 7.87,+        "y2": 2.54,+        "width": 0.1+      }+    ]+  },+  "connect": [+    {+      "pin": "1",+      "pad": "1"+    },+    {+      "pin": "2",+      "pad": "2"+    },+    {+      "pin": "3",+      "pad": "3"+    }+  ],+  "provenance": {+    "source": "kicad_import"+  }+}\ No newline at end of file
ixtp15n50l2.kicad_modadded+33
@@ -0,0 +1,33 @@+(footprint "IXTP15N50L2_TO220_Straight_Drill1p4"+  (version 20240108)+  (generator "adom-footprint")+  (layer "F.Cu")+  (descr "Original straight-lead candidate from DS100054B page 2. 1.4 mm finished holes; production tolerances require approval. Not the electronic-load horizontal forming variant.")+  (attr through_hole)+  (fp_rect (start -3.04 -3.04) (end 8.12 2.79)+    (stroke (width 0.05) (type default)) (fill none) (layer "F.CrtYd"))+  (fp_rect (start -2.79 -2.79) (end 7.87 2.54)+    (stroke (width 0.1) (type default)) (fill none) (layer "F.Fab"))+  (fp_line (start -2.91 -2.91) (end 7.99 -2.91)+    (stroke (width 0.12) (type default)) (layer "F.SilkS"))+  (fp_line (start 7.99 -2.91) (end 7.99 2.66)+    (stroke (width 0.12) (type default)) (layer "F.SilkS"))+  (fp_line (start 7.99 2.66) (end -2.91 2.66)+    (stroke (width 0.12) (type default)) (layer "F.SilkS"))+  (fp_line (start -2.91 2.66) (end -2.91 -2.91)+    (stroke (width 0.12) (type default)) (layer "F.SilkS"))+  (fp_line (start -3.09 -3.09) (end -2.49 -3.09)+    (stroke (width 0.12) (type default)) (layer "F.SilkS"))+  (fp_text reference "REF**" (at 0 -4.04)+    (layer "F.SilkS") (effects (font (size 1 1) (thickness 0.15))))+  (fp_text value "IXTP15N50L2_TO220_Straight_Drill1p4" (at 0 3.79)+    (layer "F.Fab") (effects (font (size 1 1) (thickness 0.15))))+  (pad "1" thru_hole rect (at 0 0) (size 2.2 2.2) (drill 1.4)+    (layers "*.Cu" "*.Mask"))+  (pad "2" thru_hole circle (at 2.54 0) (size 2.2 2.2) (drill 1.4)+    (layers "*.Cu" "*.Mask"))+  (pad "3" thru_hole circle (at 5.08 0) (size 2.2 2.2) (drill 1.4)+    (layers "*.Cu" "*.Mask"))++  (model "${KIPRJMOD}/ixtp15n50l2-ai-nominal.step" (offset (xyz 0 0 3)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)))+)
ixtp15n50l2.kicad_symadded+329
@@ -0,0 +1,329 @@+(kicad_symbol_lib (version 20231120) (generator "adom-component-audit")+(symbol "IXTP15N50L2"+			(pin_names+				(offset 0)+				(hide yes)+			)+			(exclude_from_sim no)+			(in_bom yes)+			(on_board yes)+			(in_pos_files yes)+			(duplicate_pin_numbers_are_jumpers no)+			(property "Reference" "Q"+				(at 5.08 1.905 0)+				(show_name no)+				(do_not_autoplace no)+				(effects+					(font+						(size 1.27 1.27)+					)+					(justify left)+				)+			)+			(property "Value" "IXTP15N50L2"+				(at 5.08 0 0)+				(show_name no)+				(do_not_autoplace no)+				(effects+					(font+						(size 1.27 1.27)+					)+					(justify left)+				)+			)+			(property "Footprint" "IXTP15N50L2:IXTP15N50L2_TO220_Straight_Drill1p4"+				(at 5.08 2.54 0)+				(show_name no)+				(do_not_autoplace no)+				(hide yes)+				(effects+					(font+						(size 1.27 1.27)+					)+				)+			)+			(property "Datasheet" "https://www.littelfuse.com/~/media/electronics/datasheets/discrete_mosfets/littelfuse_discrete_mosfets_n-channel_linear_ixt_15n50_datasheet.pdf.pdf"+				(at 0 0 0)+				(show_name no)+				(do_not_autoplace no)+				(hide yes)+				(effects+					(font+						(size 1.27 1.27)+					)+				)+			)+			(property "Description" "IXYS LinearL2 N-channel MOSFET, TO-220AB, G-D-S; tab is Drain"+				(at 0 0 0)+				(show_name no)+				(do_not_autoplace no)+				(hide yes)+				(effects+					(font+						(size 1.27 1.27)+					)+				)+			)+			(property "ki_keywords" "transistor NMOS N-MOS N-MOSFET"+				(at 0 0 0)+				(show_name no)+				(do_not_autoplace no)+				(hide yes)+				(effects+					(font+						(size 1.27 1.27)+					)+				)+			)+			(symbol "IXTP15N50L2_0_1"+				(polyline+					(pts+						(xy 0.254 1.905)+						(xy 0.254 -1.905)+					)+					(stroke+						(width 0.254)+						(type default)+					)+					(fill+						(type none)+					)+				)+				(polyline+					(pts+						(xy 0.254 0)+						(xy -2.54 0)+					)+					(stroke+						(width 0)+						(type default)+					)+					(fill+						(type none)+					)+				)+				(polyline+					(pts+						(xy 0.762 2.286)+						(xy 0.762 1.27)+					)+					(stroke+						(width 0.254)+						(type default)+					)+					(fill+						(type none)+					)+				)+				(polyline+					(pts+						(xy 0.762 0.508)+						(xy 0.762 -0.508)+					)+					(stroke+						(width 0.254)+						(type default)+					)+					(fill+						(type none)+					)+				)+				(polyline+					(pts+						(xy 0.762 -1.27)+						(xy 0.762 -2.286)+					)+					(stroke+						(width 0.254)+						(type default)+					)+					(fill+						(type none)+					)+				)+				(polyline+					(pts+						(xy 0.762 -1.778)+						(xy 3.302 -1.778)+						(xy 3.302 1.778)+						(xy 0.762 1.778)+					)+					(stroke+						(width 0)+						(type default)+					)+					(fill+						(type none)+					)+				)+				(polyline+					(pts+						(xy 1.016 0)+						(xy 2.032 0.381)+						(xy 2.032 -0.381)+						(xy 1.016 0)+					)+					(stroke+						(width 0)+						(type default)+					)+					(fill+						(type outline)+					)+				)+				(circle+					(center 1.651 0)+					(radius 2.794)+					(stroke+						(width 0.254)+						(type default)+					)+					(fill+						(type none)+					)+				)+				(polyline+					(pts+						(xy 2.54 2.54)+						(xy 2.54 1.778)+					)+					(stroke+						(width 0)+						(type default)+					)+					(fill+						(type none)+					)+				)+				(circle+					(center 2.54 1.778)+					(radius 0.254)+					(stroke+						(width 0)+						(type default)+					)+					(fill+						(type outline)+					)+				)+				(circle+					(center 2.54 -1.778)+					(radius 0.254)+					(stroke+						(width 0)+						(type default)+					)+					(fill+						(type outline)+					)+				)+				(polyline+					(pts+						(xy 2.54 -2.54)+						(xy 2.54 0)+						(xy 0.762 0)+					)+					(stroke+						(width 0)+						(type default)+					)+					(fill+						(type none)+					)+				)+				(polyline+					(pts+						(xy 2.921 0.381)+						(xy 3.683 0.381)+					)+					(stroke+						(width 0)+						(type default)+					)+					(fill+						(type none)+					)+				)+				(polyline+					(pts+						(xy 3.302 0.381)+						(xy 2.921 -0.254)+						(xy 3.683 -0.254)+						(xy 3.302 0.381)+					)+					(stroke+						(width 0)+						(type default)+					)+					(fill+						(type none)+					)+				)+			)+			(symbol "IXTP15N50L2_1_1"+				(pin input line+					(at -5.08 0 0)+					(length 2.54)+					(name "G"+						(effects+							(font+								(size 1.27 1.27)+							)+						)+					)+					(number "1"+						(effects+							(font+								(size 1.27 1.27)+							)+						)+					)+				)+				(pin passive line+					(at 2.54 5.08 270)+					(length 2.54)+					(name "D"+						(effects+							(font+								(size 1.27 1.27)+							)+						)+					)+					(number "2"+						(effects+							(font+								(size 1.27 1.27)+							)+						)+					)+				)+				(pin passive line+					(at 2.54 -5.08 90)+					(length 2.54)+					(name "S"+						(effects+							(font+								(size 1.27 1.27)+							)+						)+					)+					(number "3"+						(effects+							(font+								(size 1.27 1.27)+							)+						)+					)+				)+			)+			(embedded_fonts no)+		+(property "MPN" "IXTP15N50L2" (at 0 0 0) (effects (font (size 1.27 1.27)) (hide yes)))++(property "Manufacturer" "IXYS / Littelfuse" (at 0 0 0) (effects (font (size 1.27 1.27)) (hide yes)))++(property "Adom Wiki" "https://wiki.adom.inc/adom/ixtp15n50l2" (at 0 0 0) (effects (font (size 1.27 1.27)) (hide yes)))++(property "Mouser" "747-IXTP15N50L2" (at 0 0 0) (effects (font (size 1.27 1.27)) (hide yes)))+)+)
package.jsonadded+92
@@ -0,0 +1,92 @@+{+  "slug": "ixtp15n50l2",+  "type": "hardware",+  "kind": "component",+  "version": "0.1.0",+  "title": "IXYS IXTP15N50L2 LinearL2 N-channel MOSFET",+  "description": "500 V LinearL2 silicon MOSFET in TO-220AB, with extended forward-biased safe operating area for linear applications. Original nominal CAD and candidate straight-lead library; dimensional and mounting limitations documented.",+  "brief": "500 V LinearL2 MOSFET, TO-220AB. Source-backed pin map and nominal CAD; mounting qualification pending.",+  "license": "MIT",+  "source": {+    "name": "IXYS / Littelfuse",+    "url": "https://www.littelfuse.com/~/media/electronics/datasheets/discrete_mosfets/littelfuse_discrete_mosfets_n-channel_linear_ixt_15n50_datasheet.pdf.pdf"+  },+  "component": {+    "mpn": "IXTP15N50L2",+    "manufacturer": "IXYS / Littelfuse",+    "package": "TO-220AB",+    "pin_count": 3,+    "category": "MOSFET (N-channel, linear operation)",+    "datasheet": "https://www.littelfuse.com/~/media/electronics/datasheets/discrete_mosfets/littelfuse_discrete_mosfets_n-channel_linear_ixt_15n50_datasheet.pdf.pdf",+    "wiki_url": "https://wiki.adom.inc/adom/ixtp15n50l2",+    "parts": {+      "symbol": "ixtp15n50l2.kicad_sym",+      "footprint": "ixtp15n50l2.kicad_mod",+      "model_3d": "ixtp15n50l2-hero.glb",+      "model_3d_plain": "ixtp15n50l2-board-use.glb",+      "model_3d_step": "ixtp15n50l2-ai-nominal.step",+      "adom_lbr": "ixtp15n50l2.adom-lbr.json",+      "datasheet": "datasheet.pdf"+    },+    "distributor_links": {+      "mouser": "747-IXTP15N50L2"+    },+    "pins": [+      {+        "number": "1",+        "name": "Gate",+        "type": "input",+        "description": "Gate; datasheet page 2."+      },+      {+        "number": "2",+        "name": "Drain",+        "type": "passive",+        "description": "Drain, also connected to exposed metal tab; datasheet pages 1-2."+      },+      {+        "number": "3",+        "name": "Source",+        "type": "passive",+        "description": "Source; datasheet page 2."+      }+    ],+    "qualification": {+      "status": "provisional",+      "model": "Independent nominal envelope, not manufacturer CAD",+      "footprint": "Straight-lead candidate, not a qualified horizontal formed-lead assembly"+    }+  },+  "hero": {+    "type": "image",+    "path": "hero.png"+  },+  "tags": [+    "MOSFET",+    "linear load",+    "TO-220",+    "IXYS",+    "Littelfuse"+  ],+  "name": "@adom/ixtp15n50l2",+  "files": [+    "README.md",+    "LICENSE",+    "THIRD_PARTY.md",+    "*.json",+    "*.step",+    "*.glb",+    "*.kicad_sym",+    "*.kicad_mod",+    "*.html",+    "*.png",+    "datasheet.pdf",+    "build_model.py",+    "build_library.py",+    "ixtp15n50l2-hero.glb",+    "ixtp15n50l2-hero.overlay.json",+    "ixtp15n50l2-board-use.glb"+  ],+  "because": "No exact-MPN component record existed in two catalog searches; electronic-load project documentation is not a reusable part page.",+  "dependencies": {}+}
page.jsonadded+97
@@ -0,0 +1,97 @@+{+  "slug": "ixtp15n50l2",+  "type": "component",+  "kind": "component",+  "version": "0.1.0",+  "title": "IXYS IXTP15N50L2 LinearL2 N-channel MOSFET",+  "description": "500 V LinearL2 silicon MOSFET in TO-220AB, with extended forward-biased safe operating area for linear applications. Original nominal CAD and candidate straight-lead library; dimensional and mounting limitations documented.",+  "brief": "500 V LinearL2 MOSFET, TO-220AB. Source-backed pin map and nominal CAD; mounting qualification pending.",+  "license": "MIT",+  "source": {+    "name": "IXYS / Littelfuse",+    "url": "https://www.littelfuse.com/~/media/electronics/datasheets/discrete_mosfets/littelfuse_discrete_mosfets_n-channel_linear_ixt_15n50_datasheet.pdf.pdf"+  },+  "component": {+    "mpn": "IXTP15N50L2",+    "manufacturer": "IXYS / Littelfuse",+    "package": "TO-220AB",+    "pin_count": 3,+    "category": "MOSFET (N-channel, linear operation)",+    "datasheet": "https://www.littelfuse.com/~/media/electronics/datasheets/discrete_mosfets/littelfuse_discrete_mosfets_n-channel_linear_ixt_15n50_datasheet.pdf.pdf",+    "wiki_url": "https://wiki.adom.inc/adom/ixtp15n50l2",+    "parts": {+      "symbol": "ixtp15n50l2.kicad_sym",+      "footprint": "ixtp15n50l2.kicad_mod",+      "model_3d": "ixtp15n50l2-hero.glb",+      "model_3d_plain": "ixtp15n50l2-board-use.glb",+      "model_3d_step": "ixtp15n50l2-ai-nominal.step",+      "adom_lbr": "ixtp15n50l2.adom-lbr.json",+      "datasheet": "datasheet.pdf"+    },+    "distributor_links": {+      "mouser": "747-IXTP15N50L2"+    },+    "pins": [+      {+        "number": "1",+        "name": "Gate",+        "type": "input",+        "description": "Gate; datasheet page 2."+      },+      {+        "number": "2",+        "name": "Drain",+        "type": "passive",+        "description": "Drain, also connected to exposed metal tab; datasheet pages 1-2."+      },+      {+        "number": "3",+        "name": "Source",+        "type": "passive",+        "description": "Source; datasheet page 2."+      }+    ],+    "qualification": {+      "status": "provisional",+      "model": "Independent nominal envelope, not manufacturer CAD",+      "footprint": "Straight-lead candidate, not a qualified horizontal formed-lead assembly"+    }+  },+  "hero": {+    "type": "image",+    "path": "hero.png"+  },+  "tags": [+    "MOSFET",+    "linear load",+    "TO-220",+    "IXYS",+    "Littelfuse"+  ],+  "name": "@adom/ixtp15n50l2",+  "files": [+    "README.md",+    "LICENSE",+    "THIRD_PARTY.md",+    "*.json",+    "*.step",+    "*.glb",+    "*.kicad_sym",+    "*.kicad_mod",+    "*.html",+    "*.png",+    "datasheet.pdf",+    "build_model.py",+    "build_library.py",+    "ixtp15n50l2-hero.glb",+    "ixtp15n50l2-hero.overlay.json",+    "ixtp15n50l2-board-use.glb"+  ],+  "because": "No exact-MPN component record existed in two catalog searches; electronic-load project documentation is not a reusable part page.",+  "dependencies": {},+  "org": "adom",+  "author": {+    "name": "John Lauer",+    "email": "[email protected]"+  }+}\ No newline at end of file
preview.pngadded
⋯ 1 unchanged line ⋯
provenance.jsonadded+47
@@ -0,0 +1,47 @@+{+  "part": "IXTP15N50L2",+  "sourceAuthority": "IXYS / Littelfuse",+  "datasheet": {+    "url": "https://www.littelfuse.com/~/media/electronics/datasheets/discrete_mosfets/littelfuse_discrete_mosfets_n-channel_linear_ixt_15n50_datasheet.pdf.pdf",+    "revision": "DS100054B (12/11)",+    "sha256": "15f357e1d434d98460b5df7401dfa08bf93e3c26c4436379f101e516ca85ea2d",+    "pages": {+      "pinout": 2,+      "dimensions": 2,+      "ratings": 1+    }+  },+  "research": {+    "checkedAt": "2026-10-11T15:09:39.055953+00:00",+    "manufacturerCad": "No publicly downloadable exact-part manufacturer STEP located in the searched resources",+    "distributorCad": "ComponentSearchEngine lists exact-part reference CAD; redistribution permission not established, not reused",+    "distributorUrl": "https://componentsearchengine.com/part-view/IXTP15N50L2/LITTELFUSE"+  },+  "model": {+    "authorship": "Original Adom nominal reconstruction from published drawing; not manufacturer-supplied CAD",+    "generator": "build_model.py",+    "kernel": "OCP in existing shared step2glb service environment",+    "kernelHost": "john-service-step2glb-gm21g865swdl",+    "path": "/home/adom/service-step2glb/.venv/bin/python3",+    "conversion": "step2glb 1.6.1 service",+    "dimensions": "dimensions.json",+    "simplifications": "See dimensions.json; no physical sample inspected"+  },+  "symbol": {+    "source": "KiCad Q_NMOS_GDS embedded in project power.kicad_sch",+    "license": "CC-BY-SA-4.0 with KiCad library exception; see THIRD_PARTY.md",+    "pinMapVerifiedAgainst": "DS100054B page 2"+  },+  "footprint": {+    "generator": "adom-footprint create from footprint-input.json",+    "postprocess": [+      "Corrected generated smd attribute to through_hole; pads were already plated through-hole",+      "Added STEP binding with assumed 3 mm body standoff"+    ],+    "status": "Candidate; finished-hole and mounting tolerance qualification pending",+    "drillNominalMm": 1.4,+    "minimumRequiredFinishedHoleMm": 1.3,+    "minimumFinishedHoleAssumption": "Engineering assumption requiring fabrication confirmation; maximum lead diagonal 1.164 mm"+  },+  "licenseScope": "MIT applies only to original Adom-authored files; manufacturer datasheet and derived KiCad symbol retain upstream terms"+}
symbol.htmladded+1997
@@ -0,0 +1,1997 @@+<!doctype html><html><head><meta charset="utf-8">+<title>IXTP15N50L2 - adom-symbol</title>+<meta name="viewport" content="width=device-width,initial-scale=1">+<style>+@font-face{font-family:'Satoshi';font-weight:400;font-display:swap;src:url(data:font/woff2;base64,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) format('woff2')}@font-face{font-family:'Satoshi';font-weight:500;font-display:swap;src:url(data:font/woff2;base64,d09GMgABAAAAAGP8AA8AAAABIBQAAGOaAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP0ZGVE0cGnobgYNwHKAiBmAAiE4RCAqCxyCB+28Lh3YAATYCJAOPaAQgBZJXB5xgG2X1B9g2DW4eaidQKePr1ia2YhybErcNiDr3xzacFcHGAVDA/6Jn//9nJZUxtl3dLyAQiFmQKcFFcSbkctWEdDWqccq7EZHRKLqaoc/VheFl3igRlDXhlDyCxcOUTMlIcDe7ubhSPMP6Ot9vBDWKQCDYVyC/T0JKb16LUjHzg5rfSZ9l6ngnGosl0i03BG0TiyU1uQTRqMv82j/8Ldn9MG17+/kBCrSpNqE75X/C4oliiGRpv7mH28OWDrIKjF0eI2olp16iaKwqsnqADwAVoCN6soCewAGB+vevXj2rkw+sVj0rQsU/z8/tz30LRo3B5qgxR4hj4IBR+Rki0R9t9hGQT45UQJtyVEi0hQWoxMzAolIlRMFIQLQZ4uf0j1JBtEgSPCmiIUAEYkTsRfRFiLyEBBLMG6yGFrEa0lEqo+Yzo521/X9AlU466UbnHdSmjAMWYz0D/w+/H7/WPvdLiNAKiWiaPWkP9AYzj/6fP2CduY8sjCCBLEijBdbl7wA8m3ED87+mBgCuV+AwK3EEveu2n7ZGJcZM6BLbqQlfCuLzf3g7/ZfW1/DiK4i7DyVpJ0j/r2C8fzjyElfSnmH7uv93aj8jWQszus0CUgqIF2RfJ4qbtE6r7ct5p+X8yH1/dvsHAEkJtwAg2Y/xG/93av4gJnadtyZy5nRusX+2LKuRJVf6Oj2nE8ACuAgpgAuWsG7Aom66w28iFIQEyWwUugQI+Pc/Vcvqmv6a0kVReXp1DpKdaWdhQ4KDdAoXtEOch9II3EBTeLMiD/pglIglF3fn/3Pv3vnvjr9WY2scUYZRGFOAAaZRnZmsdCjgX7fWMt/ufSfZ28c8lQgUs/+psGx0O56FAVelgChYsLsHTEQyTSCCtb94P9sI10hVU5C/P+BI8Qsl0xJtupY1bRkzLFmas2IOaGT0s7B7CSxXoCtgOvh7Va0WnyAsOc0Yq9vRhqSZ5cXQk3burOuuS3F68P0PgsAnRAogJVGUlrJW3rVMy0FykjaBBMUFgzSkSPHMTSFpvSmG8lIORXlz1ZUur6vvqlzUzVVXtud/3eKOC7t5KVrwAB9gJNEC7XzhxS7bicIHGOBqE3zP79fq3n/W5A1+4w+lgr9BNKmUSNscKZnSKldrpe0O3gYAHJEwJBSgkHGJm5mDX3iY2yeau9Be8JFtkCygEQtPG0JS0TEqFeEihI6xEVKE56G1StvvcCZh4VIJyxYuYWlne+fgbx1RZ4Lu6ijpcAdQsoyQMRbZod87Lekq6XBhYBA/Cm6/JM/z6nxOKw1KmtHFO/ZuWkUgYaUDGMjyAigLfK7G65vA92IPMpRQ7FaWEHLqbvh9vdhd9zeFDqXIYyileBJyXvCCBBER8X7fZblqAgFqVEjNgGZYOX+877BNe8BKLROj4mgQ7RGYPj5LjrSbpFvyMn418nEdMmfFYru1P5ZdSlhhKOwEMu4yvlcLAXz4SNsN+PzBbbv7q/uQ6wQEzICbAQoFjgOEjw/HUSgkTBiccFEQISGcaDsgiRLhJEUPxcbacFmnI5Q0aWFJ1xhKk6awNJuHstAPOHiggAAjwfbCTnwNYyBf+0MaGPCA/4cBYYx09LvFYPyYHVubmn/CvuWfKYb8a8WIvvXwb9UDI7I3ds2v1UD+sdKBdlFR1FghIsfhQ+HeJMGGGZ+fgPoL9wVJDBjJ4J9T1xK0twJoZ+9uwClQfP96url7VrVv3G/vY9DUs7A8fuI7vQNEtKZTALoC09VCagAGhk1BD2IHiIx4AnbhTbDBiQrUGUzClq80ZAUUBJTC1TgCeBLN3IbLp+4m7ld4su3DSATG8XL13xr+jEUz/ia2DJLY6zRGBMhibaYD8pgrtuQ560ol+jqaAwMhlFXncJNg/Z0X3s+Mk+SwyIXLWctjPM1z9yzmVTPd5gN28QDHgCc5A/iec+N3/lUhvGoVoijcZQgXEBuYK2IQW4pl0ElS9JUBBSEKvnzyw40eo6ag3TZFImV5XKJKuKsnmDdIo1pce1HX/bv37SP1mCHDz/QC7Gt9/KzqR/10a6J/rGB0wEzHn2qOCWxqelDrYFFek6fh1U22KcQV93EGU3fA39wZSNz2eaj8AqmsQCKBDYRyKpCkeY5jiumeKvtKZwv3KrAFDlm57jbblL3npDjMnIS9OoJL6UZSTYhdGAqwyes8yli/NZYQt8hEheVSSVdpDvIAgtjlBNaR1qZ5JOV0vg5kRzImrIMJw8qvrvJIhoMvBPtWqurbE5eCv3n4ZoMX/8KAJXmLHK8jkIaXyGbkoHvmLnBtirZJte8/0/woKDp4VPFHlHoU0r+QvJbXEF5s39KxA/UY0ZbidqbtbfNlOt5Y64U6ml2fUV+9Ddhe38LEW93uJ/GamgRjrvVzuN5TU6rN0IqkKGse+MCFNstEQFK/ssiwX73i1W2KJ2jZv8FjqqxnPar6XtrQa7lsX/YY3R4BOY/3IvA2EqJxWFc25iuk2r76OirNZfVD1txGeW9OHhyvF3KsLn3z4rPoQX5C+zuyloJ6gS9otohjZya3x9MIvVxQ/SLKcS2xdBs1/ihcSerHmq7y9M5jOMZ51xjclExZ2rAb+X9rMQL2s0RhzQadI2dKXLlT42kDlk386UqTRl+pUgZq1DB0zDE877xjFCCwL2vWmdSsJdPaXMkKhoiPD1wlDCIkhEmUCBcba8NnoR/UaAJPAs8DL0DqgZeAl4FXgLeAs3DuAu8DnwJzwGfAN8C3wM/An8BfIEB6AJkAZGGQ5aEwQ9GKEE7EGITFNHysI8QhQpwjxjNC/IJcGnJ6/SEP1h9ycf0h65EgZ5fdg+sK34euhsdmgCDfJ+HMEw7ofqK3Ie7tUyyLQgm9DSR7BKh3vmVP/RkJ+GMEt62F17aOIF2r/oj42qP+Zf1HeJAD27G2qWmvRzhSLuBlQOdMsr/+WNJKZ3mk/FnpVcbqbs2szR8Te32k4TXKltnydOxtSX+iv9hf73ta7/7XURSuERAhIYqiOTLn8ER4O7JLQgbqIUYPZvAeP+nLmP8MGWdFupIjBUzgXqYtwUoSOere/qGzKSNYQiWo6OVBqLW3zPDBZMoOk2iB8P6UmGTUSxNH9UHrn9pnjQKKFwjkIR7k+9gl8c4c1oY072tJwlvciWGecXo340uRgTQuLr++h9pj9WvJSguvCXfvXcbO0MvClY4wbQAFXUKYEL+PuD2KuBfKzJElgLfIUieJDYw9I2XkAQIdP8N8uy+cr/1fBW7mywWZcxyntZyDlZCX86aE6GHv6d6C77w/JEG65GGHEfvL8ZwUfZu/rbg2Bz4Jay1s8T07MMHiCcLSNwST41qnIMLchx0vsRCkwuri1vMmxaklOVr6qawstZyWb6Qgv7wQU4TD9D2ucHDDQ7nKVO9aHai3xkjxIR/xyWdffPPdDz/96sv0KVkqahpaOvpiUDMyMbOwsnNwcnEbKuNgskyzZs1ngSxiybIVq9as27Rt175Dx06duXDlpu9hU8E6NQ0tHX2xQ5uTm7f4jEKgZUvdjj0Hjr48gBeEQvqFUyTZSfIqBXXFlJ9WMQrrwUMkEoUO0w9L7iIP8pFP+fLtR0tbR1dP38DQqBv/Td5xuvhyayg5O781mj8x5Jjus+ywKcj/D3YQYqvQt+r8roEDxcboZhipAI5tHGrbEp0IdZ8P+xRVeS5z37fE9CtWZSszuaNGYvALIR7qaBbVmKrzHY5x8folhkr5ylJOKlKlqldXm6slNXq0QafzJpn3OL4JCImISYoU+eCjTz774ltflk+bPCpqGlo6egZGJmYW1mbjs0cccHJxGyrDpBGjxg5quU3hpqvMhFlz5ssCsmjJshWr1qxnM2zbte/QsdOc1e3c0IVcunLtxm08tN98f6P7v0w5V0FKDb00oqWjP2zUMjNrs8N5TnHzFl80BFq2yXbtO3S8rf8bUlvRYrISkppn8LK8csiXAqr4wrJ5lagchlJYl8GNKdS8Hg1BCCHE4/F4PB5vZSPjMjFsatbNe6Dc1ih/DlZi6CCKRLITfnI6Dagk0gLz1VsbFouD5C0CT0Iw0SiB3BctC0kzj6KYh0JBhlIFhEH3EMLSQnQGqLgD+aGiLlkGl7TzFaSs6KEZprlz5DBvGjQNOteAkSnkY/QBkmdcOD4cqMelZ7EgliqVZDeKp+3cdNuljw5/9oCtgIiESA2gBCLRJHIDdp3vvvgvKJtEdrSsDENVSDfiOG6X+6ygYMvd1cB2NfCqkoDkITDhKJuWZZebyb5bHxlH+TXYr6gKtFwFdEJa/9kC2xZSeQkaIWGt5bbgL4+68oqMw+OPIpQ5kUS+CPQ7rxddfClKbgdkDiWehFGCR6soRzvOYxOnyitAtTKJHDA5TlLVaqjt3FJhO3XYLKQxBrMokAL92BquOkvkBipv0IaN2vfjr5PllIzMrEWIJ5I6+V+WUaZEPqmQUCSEAgx3R1Hd874KXwSERMQkkXUyJTPd3CQfGSJoPyAshBcpUUVxyWSUHKkQrA5BqDjM8Bf5hyw4LJ0SLVFo0Dy+tKYfoVlhJCZuGlmDkuDEaJ6aqkahUCnazVE5TKpun/rQ6D0+ASERMUlkPeMmTZkxN/fkM58iBOjFgLJgTApJC6eITHJKpYLBQwiJQofpYHHhCWDelPSoa2JTs25+mo+qhiSCtg4349BFDJcUXJM917YkBSnQk3YsjR7SM+2CHyXcj+skcdzgGq+UUEqVpXxVkcpUVaoZta1Oql4aNL6xSaU1LiqnQCAQCAQripKkoqahpaMvBjeMTMwsrM1GsUcccHJxGyrDlBGjxsq41OR8SmCaNINZc+az2M+yrFq3aduufYeOnZZzyqVrt81D+K38pfu/TFnU8CYtfTFClZm12KHJyc1btql27Tt0XINaWVFiqhJS84ygLFku5OdFN5WZ8E5IVVov0o6GGrgofln8473OVfFsxD3026O7Wpm2dXT19A0MjYwz6WWKWTf/Gt758lYn1dhuXPVR0xSOyuBTl4WpESApnLz1S92Vww81thsMFgZfSogRSfXGYzUOjWs8JcpVtmrOQNWexS11wxcBIRExSVEiKmoaWjr6YqAZmZhZWNk5OLm4DbUpkelJZtKsOfNZxLJV6zZt27WfQxw7de7StdvbPN6kPpnW9MUOXU5u3nlGVBaVQz7FWvlgg98Ag0baGtH2sM+jtbR1dPX0DQyNjE1Mzbp5T0aWBoRQSfUAsZud/Ar7Z2JFUigNc+1O2FKEHwSERMQkkdWZkplubpJPEiJoPyAt5LpIiYaLS5aMXblUBAsBKkznScGmnxpV0rPuqahKNW7jG7YCpOUqtb+xFLCfSzAuiqs7uYx2woFjUrOwYi7tk2RXn/cf+Rb37fRIqKUwX45iRet1OhAnlkRL9ZusTA6bPG4caZ0YDrh4Y7EajCAwAiOmMzWs2md7JFlzPABTGDD1rMqrp703wDcBIRExSZGKffDRJ5998a0oMSpqGlo6egZGJmYW1mYj2OGIEy5uQ2WYMGLU2LtGEwPMADPAxJgYE2NiDMMwDMMwMSbGxJgY8xtBeIQYE2NijFjBOrdBlx3OciQnFzcP7zCqFD8bkg2gNrM9y67tO3S8CQpHlsSQkJpnDMpi5VK+FMQVxxKn3bNWZcNngyZDx7Ac7DVzQk49B77t3LSLfRrddqnuSq7duO3fiXvAesxT7dlLXpU3ec+H8okv337SirTR0dXTNzA0MjYxNTMvi41tadWtv4Vf6A3YokDqUsWXGxjfe7cpvuQ8toV3t0JckryeM8FVuF/yXAlghGJaCVL+pFLrEjluug6NaZ1cjpKezZsAAAA+DmZLAAAAAACwchlmjBg1dqDbeL9ZEwAAAAAAAABM4Ry5SJeuXLtxu549AQBAhV4Hra51yjAMc9x0G++aL0GFDj+gu7A9uh1X97rmOicFLMuyLByFBtkHswAAAAAAAAAfDs25dCHFLepN7xJ8KTYF7+llrWsbo+TXrm4ZUYCO2XY17PPdcLyqtfqFjcs7+1tYA8Itc/VIVFxDmonFUBkPCbaRcVsKhUYgeg4WyzTEDasnqBrTQWtZnc80xAiVAyuqyFjKhBgKp4vUy2eio+ro6tzAxI2sXsyLaiVuh71DXjWwcfQc9Gf3PBQh+R05EaUdZrqwsJLf7i4ERT57VAqzcMfGYyXZnaE296ozC8ssoJ+maZqmHwu9V+/Vj6V+MKVdmZu3+IQh0BqY1o6LIpSoTXHJdQe3V+/Vq5lKsAgRqDAKV4fXy4HfO1d1dI9WIpFIaqIK0aCsGmZu0xCpK13b+1ZIHHIomWhLXedaODUwNzgKV3jKVQ7d97wmbipqhhaVkvUYGJmYWWKFnYOTi9tQGQ/qMMdYtmrdpm279h3mGKd9D5camrT079sxD/ko/nhINhJqcydQ5WbRQm4KI5Lie+imhzykWsPgIRKJQhfGTWy4TnhXUO12UhFP9lC3p2h7DW/eS4upraOrp29gaGRcFkDb0qpbH8oVc3/cmvDeaW62ljEQ9DNaRa7Yz5PcUhc4WSgTUcHYCFSY6rJXIYosuPPHiH/sLToB4R+bKXT6XauR/Whk3cEHvbQa5qJoSj0qR9L4aIpsZ/zwpN+vPl0IC1aLQovCJ4tkYmsSltquXVs1PEQiUegwvcss5c4o8vlAbhyZzpCjvHEVlooRaCXG/9OV6nSTNtWmczYTdXE2xTAMwzDMamLcYY7WzHhnTlMLhd6Cm3etHdqKvnVVZienn7Np3ezVezVt1elFtMVGEI0wkZJ8GZjVqMpzJTJLATJCIWlQ1m3p+IvplAaNml75DHklm0YtCm5PmhKzhBQcicZWYUo6bpOSHBBXL2Q1hqjXeqdKKb3KpVd1Wdn5qmkYuf+0rrBut55MvehLP0MzyUJlo2xFaDs7slsOCuyknEXowpWbcldgD568ePPRfS1XIxBJ5MvNkN3PrQqnC76c6RILfnZIfK3a7sB0HpSfRHdo7S2E+9UYgppod32Xj+YEUV205KNhsOS1K7j9J7hOlYXJqiuV2piG37sy+3GUzshQHrwGPvffU/+Wps5/0XCKMCRSiUwKSmxshMS+EU96WgbWAaMR3H0r6PYRSdIwskz9X7cEcpiINHDQraJvOR5bGhw50efME483AQuBAjmLEMFFlCiukiVzs0cmd3nybFSgxCal2vxHrMtePaaUmTbtlFdeOW3WrDPeeKPRO581mTOn1YJFbb777oJffrnojz8uWbLkcggZdCUe6961gavFRCi3HglV24Bi1fJGqVJJoXTppFGTZjLonHPIqMUVcuiOO5R16KDikUdUderE0KOXmmHDlntuEssL82mFLfmDECow95SllxVI40P83UvI7PApUsZ3c1xu8W339ekJ6NAGEsToEPnGiYLo08qYkOwD6PsLTGTArdh/PPtAgpSXrg1f/yaDXk3YJm9yQ+bK0z7y5V17dc4HzWsbgG9Oa30gebMvYq8haS7vEDCQLgN6pRelBXxVYeciwyNIYtfsL5XzxIwGQDZnemTqzPG21aGJIkqgWLOhJKcvab/47H8vDUB8IMN//Mu/FGYUZ0xJ2LicAakKOKEq7nYYozzr0vG3tvqWjJi33UMDb21C6V4dsYsXz2jVgl4m8dsjSy2R6Lxa8VT+9k44By7GISAbBpPldzYoyZosL/SY+q2I5CnCJ6zv7sXn000PuSP39G6Z0cyitOihk1SqUGaNeqVIq94HRLm4rBIlxeQJoth1/meAPKz7J5fMu/ePi0lE9JTbQ8pLomlZmxruWcLTGDBUnbea1RF74JgrEOVkU/JYHWG9/e0b4JOo/CiHtWJm2d01W2sZZ5de8w1/9kVb5Y/++Kf3L15VtA9X3kMAcg5IDy1idtuHhz57/leAjE+3wCKfbfyCr/y2FcZRRceGUixCRH4NQDcAkCkt8vTzfICwH7CT/901TAUEbKOEN8NwB0yTCSBY8UhwZUHxikLs+iNbPUgOyKxG/Zy3r5pAwc4APAbVOLpEjETitJOw8uKSycx+xBR+nvvSsg/r65cIgay1dNLJxecJxC8Hta4uWVWkvU0CGY8okqsU/yAg978/bywl4KO67r4RrVj94QZYkLNS20ZqOIqewP5ffQAAfGJukPM0umxnd340wrvPF/OvYX1o7anvCUARalDEKsIMajxKYyCj2Xqw3ud7aDgJxlcWhkPHovxkgVab9FyfVFV1gS7D8C4fpGIgkbiYPACHpUdsshESWiedgrqjSpfhy+KQfMKJnDWez9QB8tQ3lTDTLQmNsFAr3ed+ByCw4MQCyxuzV8JOnj2we0GtcH8flP5ujjUHYyOvtwcKIbaieO0XSdMMnWVVE8x6TLbqHC7/VWxJblZuUPUtwGWR+ozP0CgxVCKcu9hYkKu7bICasy7r5CLh5Q6imakTq/WVx1bkFlQ+qjjjjjVYbcVVdjAV/LSfS67d84vBltwDtSqSl0VF9xMdkTbIjRtSDTW3g4ubHd3qyzoqYfLg8icROB+Wg6DwIn/uKsg+6noBDLuI/RTowzEVWHFDMydI//pTPpGxHKoA7ZXBOmUvJccbcUVgRWKzGQOyJdbc4GyjsylYHnyN4DB6DIfnbSnEAYjw9qeAxDm0SnPqeRSRYmfBZ6z1XP2eym/l3jhg6PoLNg9EV7W2n5CCFB3eUI5F/SLWCAJtdMML9TWpdo6tH4DkFJmyTK2PhyI1oI0KUpR/bwN62KU48u7qSYhLHhSgHhRQprSv69DZm/+VCSrHq45YVqZ2ZqPKx2mDGzmWlHeV4J2uj/CK28nIEf8JWUSUWFZdEBHrqikRTWpGLm5N8h8RMseM0YJlqUDpqLLL5VK9RmmrEgimGz0VZxJgOfKN/7Y+JSckKk81gjwG0nFQJVwAiK8PUjUJN9q1lqlPwmFaqT4NPKBdw7vnwgPQrs4YM/6usiqmdop67ZF/wQmdRat1caYhPYmi/Esb0MMuxZEXFw01IXIQ8K/aVIq2dWjrzZ8/Uuog0qNOVJlZiypOS7ieo+roh3lFIEpEuTCl6dG2gjiX4xUFN2mi1z8viq8q1V+bravLrW/IY04gyppcrDONRA8Gqb6M8P4Q2ZL0RYjAEyWKkWTJjO2VyUSeEv8oVcVZjTaexLqE6DFln2nTCr3ySpFZs4q98UaJdz47ZM6cKgsWVfvuuzo/Y1B9PNYNt4GrF0Uoby5C1c0nXXpf06S5xZxzru9pcaUfE2gW98FKAAJG2b/rf9ZDlTWrEMHB67dOmgzZy5NDIU8BFc0y9D8Lgg1gA9gANosVsy9sARMJsp06KOpUsZAIJTtcEmEzizSzJKdPqrfix0JFkPPnh9wIKPmcFCVUflFSQP0XbQpo+GYxgcY/20V48N0kCroOdoAdW33ypy8szPyy7TC8//2rFeZuoTv777eE6Qz+3hK/W4EPvkqKr6FU1tH/1xLVtSimbMT9G6xSSw5UzaX6hsVYNpIB/lAuMaplFPuXsdUsp04TCJ2FJbBEVoIlsdLsClab5fAGOLwuNq9Hm19Fi+cCVpKVUlf+wOQY1XtHA0PBIiXYK0OeUrUaNBO77r4uQ8bN+GjR3xARGdExaeMyZcuJnA7CqUqTLbrlKVWrQTOx6+7rMmTczPe3YVY4wXJu8l319si3ocZznDXnxLlyWzghF8ft5BpqmiP6xI9gd+A8uTvCzdl/TuqxJvfY3CYukKvnTopYrjep7x3qbwDusv32pIHB5IE512K/PGloP3noXBMZnktQMxYuTy11690Nt/EIIPa3k8cGnBO3hQv4wyMME0y/FlOeeqZNu1ZiY2a88NI7r7wxa9pr4z547r1Jn0z4yJwFS1/63FvzLfS1b30vvz6UKFPp90D1/+lzGLNlz5Erd+tFqVWn3mFHHHXDLXeMeeqZ58ZNmDSVAio6ZaqMWPGiAdN6yzXX3XDTLbfdcde9kErSGNiM2XO3QbAYu4mUIOSqZB/qERch1+z0kd6SEHLdLh/rKxYhN+z2if7iEHLTHp8aEB8ht+x1zaCECLltn+uGbI+QO/brNGxHhNx1QJcRiRFyT4puo5LCYmUOBkPFAFlGMSk4IBQgKhDQIBh3HjAoqykDDQgaDIMWBHQCwO01vrSBZOCLvsvab3LpjxDzfwhaZCxUfOZ6rELwEueoeBuPhRcfEoZTugkKk0ziShIrrnoNGjXZzK0maEFiiHzo5qXYU2m88zU4p7fSXXUKOm10GLADgijAYBQcPMQrHL+OFBnwFEnkmOtGfA4JMRlzZlZlmwL1ml31wIBxr5OGnqRLRXKLd/eAESoXKZv70GaXtLkObDaSza1vM0vYXHo2E9Fm79p0gs3WsVa8zdysH2czlSXnDHAjWcMzAmaKUf/TgKGkWEb6fGXtIkqs3owFVsPETl+ovsOD0mMUKdOTsuoaYKexODUkYynB06DHlP2naSxNNeHYKgi0cJlz4P5pOpennvwSGIi0GbDkyFPLy7py3fkjwTgxNhuPNSfeNgleZ+Lq1EdtZyG1r+0687VFiJh1lqxNPYN2DZL6GMuVH4FQcXavs3h96tlEtUhpK7ZOgPCukYr4TNfGP35mpAqQ4aYSbOahYL/y6BQHeVt3qPG0B626bheftHB8yX9SDIP4/z7AhrnqHqBcT1Fu46W0Vb4I3TJbouRfHepeGnvjm1/f67w71NfFeohtrKtLREbHpIXDoPPhuPDqnIu49yoKnW316gx2YqcVIC6bNmq9Fed/683PBlsECBYqUowESXbbL41Izq/3+vFy1eodc1Kjc1BabEqbdmJjZrzw0juvvDFr2mvjPnjuvUmfTPhozhefvTWvgVnQqJUT9IOpsBbFTvAjJAybfC3aOlUYxpWJSMcJeRyO1PfOM+MmMwpDQUi7D9775GMIgaunnpsw5YmIzfW6dB7U9UyolQL4phA1nrGruD64DcH1q4n7pUvulKEFBFCPbkPgPHfUuTJeem2veTc4DcQP6Dlv2xO4ifVXg5u7yILPHz6vB3gOkO/WH1hPZipPGmGPOhGuTv6zgC924EH7ERHtdUqjS2nSZciMM5lyW4yxaqnWBaX4qHie+CyzzTmTkpS5eTxvXtP3vFeWCovJ0mBpswxYPJYly8GOjnGyM914FNU11LnqglNxMZxwA27WUNFgauhqON+Au60OV2s9ru6fu5L6HSf8fbO0BKx32BnNrqSNy5gFV0pVxvyc0sx2fyMHmhUx65wzMUlJ4bC2/XvOC0uJxWCx3jgLPsH7WTq/+RQgOk8vG1z11VLm3Gb8vwD8x4/+93/+66svPv/sk4/+6k8890zgwsfDxRS1Y/uXL0u2w3azXvSr+URc9a0RN+3k8IOqB0UPCh5kfPX3RMlE0UTWROZEysS+r+q/0n/F+orxuef9lafP7y/db1saJ51ef3rOwLahLcHIgs36gjNCJFZMjHbFCzMb83ERZof/mxsSFhEVE5eQlJKWkZWTV1BUUlZRVVPX0NTS1tHV0zcwNDLGxsHFwycgJAIRk5CSkVNQUlHTgGnp6BkUMDIxs0BYpcEAW4F7pUp3UL4SlerUqnfEYUcdd0KDk04547RGTc4675wWbVpddMEllwstWpBgoZW1XY0o4XUXL6yZ0pRWU0wHHSlEQntVqrDedEAu7BixPQJFtp+hOuVFSK48cKcDiiMiCRSgUDEnO0ftnehaHLE6CFU746ywdlTEpaL9RPbJlCFbjlxZChXVWIFyFcq8ywY/YfnssUuMh4MZyP9LMED+ArQ/Qfs02P0H4PhjAMj8ADVFflM4BDgr5hB2NNYWO3mcA351z6Uig2mILsXKcRpiAVDxBOQCXt0IcU+DT5DkUr+GbmcR1uD8SQIGxy0w3DMOpFVDZ4JUXlp581YEneP0uzjC1M+6NIH0miMHrYMevA7oQSDOd14aPnhCK/GeKMrgWB23iBfzs3hkSGYi5fRqMEPoLIImp5xxqTKsSq8aMpiqKxW6CxQ9/69ApvsJ12aCyJPcx/EmKohgWo76flFoB6mIZDXANv7M2Qb3xT24BWqkQrnyNI5+m4vmKZiRDVhYuBTvNq/RCI2B68ZcWHx3H01LFF7iclZeX855AN5JUmcppZwHA3Ngf0ITuCQS7jo36HvC/gh95yWyGTCoPII8lDHhEyFzWYgBKdtWWhiGSsgtGNRgiIyeM4oWVqQmdwz5EQslGFQeAZyi3C/GT3QTYJwBfn6lA+eqDcwCDKoupVMlR7eGZo1sKIUR5UeklnLkAcRij9wRo1inBjDg7nHuQ6SsI9BNoXioynm8NQvr/bCbrTFsQxdu7LLVYnQcKzoEkXzWkNOqjVHjDElJ95hEIsIGwTCvLRahtb7+DVia2TudxKKj7cTo2BGvuzCxtrbDLe7t1u5//x0Ft9uq2Zh6LbWhoFGFWqgiyvb62mZbLKyE4hhKkRQ8xzQIXJFTLuDFiD8JeznhbbmvuUYdzeRUSb1slu50MgeppSyXPBcdM5YXQ5qlUo24YutjWnQijSQghad0I0pDoe+nSfaUDIcq0v60y5/FHQc5y/Kwj2BWPvYS1zxu6PTHrm3yHEU952QcA35G7/PcDTUufxciIdNbwAw/EuDi7w9cHvW8CsVfyHm95diPJEWmj9veIy6m/bHEOoV15QljHEAl6JO7htyW0GrrWrhCCMUjDQpVGp7TNucmtNDrXeiFNMICwYqQ8Drj4Jr1D1X+b0i4vhqqIjLEQfl86QJXzsVnQ0l63Zq0X40Ny4YMtWfZXpJExnvqOVEBq1XNG9MR2HMOSzWDDGmqaNPjkdBjBXEiofFlvPoQYvUJ3KhhKYoTKvuyqKTN82hhU+lxWT5njEdcefLjzN+LkU8IJtRpSN1cfhnPFWxW6ihyLNXs+PAAq+nzVD4bxClXpukk4T29QFVWIpwkEN8pNV/hquYU5A91tzHH+2wS+76/9UOvcfXyWPe9Xw/pPfTANxu+Gtx32MF+1y0jAwMBIZk4GY67L+AKKp9HHeW7ZFBAelW5cg5ipogtY4xTwtXTCiXHchIScobamtCQlumSJakmQYNSWELjowCZ/qQjz9m8SxsB8VcpssO+cAu9yhYxbO8zbQX48gGWmDUsT55FrdK0C1CrhQJaKfLN1TJOd6HRt4p5bebBZgnO3c2SzDEXCZbqZxif/xcC+396MjxmdpSktUFjVWniVIaXS25rwubpWGgmLNUu9Ov44Si1EBCZnRy6eOqzsxdBuqK3+bbDGCzFubtRgFgDCrATNPUCS6rXdGeX1opoKO1yEbNI+zbg3Lo3VrAn2lQWa2skwNMQHBsKs6iiqrzgPm2CPNwC356J1PmeQLDpKvoO3dCII0y2L6FwSB/iTMJ3bZg8doTLGXL9MEOeQYaNeJyxx1mGTpGDLOUkkBftFOB78FpD2Otd+jBPjVvhbvwsLzr73yLUStbXwIBakRjBjEZy5PhAwRytnzapcnBCtdI4PU3VGLTILOUh19GtGjLs26bmkFIO06Z5qxNektbVEOuAMuRZlx0R4HiBybKqmM3Zw6pmLLdyo+HT9zfDA9PtnPLUmC/mWKX1Vsql9GUdkK3mZVd+/e1dL4fqfIwi4ka0CsVATzNQOItmK2SPkJ+yZDmArM6uHJJmVa66B5f0BYd0Z6JN757Te/q2HAxNS9e+auTzbzI0etc9l5xA/rqZwIJqFdofv5wH0JQCeIY35wtIEdEtzy/pY6DyWQAGcsgli6LSsKM5ih5qNfFsMSy6w2BZ/L+Jqp68y04YEV5QLYvMzrnhoL9g4VoMS6tpeVnI5PL7WCwKlfK4Lx3hYwZFh9Z4BFTKz1XjtgLKi1uOqmyXvnFsX6s3DimGmvhcLwIRwI02dxiO79WrPMDSvp46BJRN2Rq8KXjtUb+HySVMtlqRTQcvsB+BagKcK/n07c1ysO6jDr+/3Zg90+0qBJSrvrNGBkxGszIslV8ICRv88O63ja2W88HXKXwsetPFtgiLFcTSE2ag8h5IAhGI917Lj48uo57mpxQFlTu2Gk31VdtH83N+BBAzlAHih0VmFzKD3vmWr4ED0NAiChnnLCSnAIQlhXFDRWhIVQM4SSQIHxfH6ANCPoIxNo+BNtq0d9YRppvSpu9SeaKcai5jaZieph5UJpgp8lI8WGkrKKB0iBxQTBNQedWI/HK+7Q65T7nsFOOke+BWbzyHLmBTZOlnj7WmsnS/fBfie5UH7a4Xjc/yKfSvZcWjS3+7PAUTV0h7X0K6xaaKNgbZaXOdqkz5S6gKz/T4t96lJbGiQW9L91akyZSAgSXtyBDVA04mKZ0vn43PVUrjgQ4KKPpoaiHfdBHKUwHHc2gj2zXcI7Ku5XzPVe2SjCLPoRTXx9yWMjTHLeCnyCXm88+gp7lWftzvSeURxApPXwSAvu9HbxiG7zwuw3epzNwBibdRtSMPOyi2UtRAaHgUfFPBeU+wdKCCIUVhViPj2bKGfqDENMPq8XjIPBeRHFW9x7/c7vPH79lzqNpQudTvd/TKD19euILtPjMsqvJA7oT3Au4zK9JA2aZIIT+lyFsvUrlK5bfgBmIKsvIlcRFiulicVCsHm2e71Anx5604qqs8P0DwkaRllwoKL6VbtSJull/ZAeS0Li6HYRF/SxbxAHOMe/7KOQE8o1sz5OGBg/g7ABPJcVuR1V87spsovWQ9jQnw5s/M6ZMqb9Dp+1MFDrr8K8cHCxgSLISE+76fFft6qMwUqSZrOdXoufWqI/3JfP6UGsQy/T5WxfvEu6VQ0i33mPhbNecbARBCb33iFgwgZhK+elvxdfONhY80E5DHwDUe1LOqGmHTu2k9+sSObD7f8wSrwWnEcWEDoo6SKy2yEkpVDPKmmrfhC0nkFTPPRmPpL8G8hZ6ah1Pt67oPmlPhUL5ari6+J0rVf37e22/7rjatELqb31I+CXXYYWBD7crqX/jO6136dVSb6irFydE5d67DRHHw6AFEZsBrK/M/mFLVsqs5P5BXDjD1o/8LoQvG+D35Ohm0of+yXgYl6H994RnTfwoYKtxnPuz0P8J0i2JebxLgq/80K/CZPt1Ydr4ydjCZqomH2F3pYTww2GmiHtW4gyzcMz/lQGTEyMlQwQdImuoiSbBpE2X30tOydiuFKFF/5rNDPsmtZHV4Lp1Ke9tZJtEqWfdFrP4v47wXcgmc9uCOTuAefhV2qNuPXelFi9eKnthxNq5mqoWWEmm/aMZBLaqS5+WylL4ThwX7uJ1lObT/6GVhHZz8LwwcqSxrVtNndMFrEbL8oz4oXPajLC1qNxldEqMoETywkzKjtn2EzFQydKJj0pT9/xd1FhCxwa6Ir8CQ4/Thp0iObvpR8K2bXqz7KN67oTOPBFbiEVaubVM7QgAvyjmdmotpyZ84Y9mO1Ku12RUBTQ/m44c9cWfHmys8o32jjhP7o3jPNjpww5MecP2t1afF7C3nCJM3eFfFAL7b9VGgb07hswLLFiOLQnrmRJ5bXXbakWE/apzC4gkIQ8kwqgwQolDE41d6iY0oouZ4JWEy+Jo7mkFQEtBNX9xqCb6iK4LTEgDUWd1jwgvhOwEN5oRLeEohSxL+uE+rf5qW0/hUNztJDxk0MsZBkMC52WVyR+O406FxMLr0SLcAy+ZEipYjexqqx8TVszEqLkk0qhnMpDxUKPds5DOIszMJ33gqTuhbqdx1g4uNgcDrIhMfI4zgUmsmNnGITrNyUrCfXh+CQvvUDglnoabl5AXdWtOkXi+j8gcsglDxoChAbAAnYnohB6QNzPcAn5vvjlzJqOe8LbiuHTXl0J2fY/MGOfpZtwb7WaUYpDR6sZxYpyjEHKUaiG/RuZsuxcVbcBCAZ1rgPMIxUlIMh3YdclUvl+2wF+J0o3i1nS1Nl2WPyzggkfCD4cl5hZ1h0Jz8jSmaV8uxY5Pximc2Ja+espT8lM6XXM11Lrlik2lSNJkUmoiPP5kVphJxWWtGE41qETjtsyWQhZ8IjGIhgGe6QTq7xJCNBOfcNuDb8SoYRUcrZxzLjaMohh/J0c5kMcumVkPGG9+TQ2uQ0EPXD29a4nZt4W3EMfuMbyDt/6bDcGhEHBOpIKFx++Krn2kzDb/u5hHirBZihgwqCzt858IiYDPUWSgWVnQGq8oO2j6mzODYedfeDVNgDzERMDyGNvPVWprdJoR0KeKIA07sZqMq4VEMisbhDByJWcs04SCeGQl4CbyKpZjF2lVkKNTU1mBeEakU8QwSSrQZVXMnCeN/IgJ8iwaiVooEIRtID8JAeMfIHBnDLk/t5cQjRsAxS1HEJQdkN2cE7tvkdlDzJDK4ZZKBOTaTBI0kENQkuVKB5juoeOLd6gafZ/BFIdqod20U7DgLq4ekweDPHhj5nPlkkiGDCoCceGNRG/v5oZqN1S6aWezKp4FhRlhSSkuRQAhFcwAJB+2j4i/880QJ6G/eYD8UpkPdawPDZqKSorF+J/Z3Or480aLDzzn9+bbZOvpN3vdN9fVmoJB0AMPZ+guXCKMi5yvaBxXrWBJhtLxIecJNB3w10jCQ7LghWpIAQbn7nehV0vAINT+vKCBLKGzpSq8VoG308UtpGn5hcRM2JbAiCgtzf4W7RUlmR3sSnxLmMWmmHHZXklrbWfaCmW96TXrh7Kb32+k09uJM+nI6m70FTz9NyOuw9OYIF9A5Bm6TBrEM+Gsgfl3A0rVkHCT/j3UYg2ZFF8OTuFX2U9ZHYUJd7SwRAlfQyOFlayAgJWtHhh1CSdpBqfWlLkAl0q1H4gHUCQIv3xgslT350oVPz5hAw6N3nhPYvk/3MlB5X3Xcx6crP5TOlG2Xg89D4a2XVFzfVVL5sy6Kq42Ft4aAPUM5gDMohGBrHt8QPnSFyTOLU2QddLFTizMm6wx50bQZLVNNF2ybO6Vl5jTlccYakAZZaVQSTRNKBQX9lhqD8t2nM4ZDAU3zJy9wKELhkDtv6sK5ypmOYsG0+W3Sd9lZOGWekTZAjTExBSwulLUcKpBUmyHuqDyzQVV5RuNu7vG0rguG3DAzELl1r6xYw+TVZcjzhY82hwL8bCCsAJ9znA0ZKN/XearmwEH1s2IGuGzK9oeFdFKIHg+yy8Z+EaCSm7s5ZFVHFNPvMBPBPRBBO/jS7WtRgALmunwpLfVq9eoyP5Zu7JKp42iWvrrPmbqZcwPKWc7mguy/llV/UlueLm1qkW2WJUvTT54/q/0orjduksyJXCXtqKPfp8plp1YbZvQ0VZzC3bRPyJDdyJISeOaYuunAxifuLUhiOqPCacTwigp63lVGpi1lhSfxh6VtOU66OjXIGbJJs1A2hS00tcigMTXJ8GT0nsEZmuolFIIpyGOo5WVYZX2fzVKt71XJzlfJx4eMzmcGpccrEHMTLxVU3RjWVlCRMto2iGvJQAG9+3jn3W9zrYXOeqQKf9SsqBXyJW2l8juJXtxnKaPakzq0jrJ8gFuXuV4Gmj11nIkMg4/3f87Fq7hQuR0YAzEUcHAh6TpqPok8g73kWR6zC9eS6TTpxq0kZ8V64dppdd5RFSt41nLazIbLmi8VwCgtK9ZG5hBkx3lZfnFZnlEnLkUpdZpJtxc13XbaIQ7tYa0tXZm7985LEHJypFM24C6HKs2LNLawiS60LYbcfK/3IB7t71TdYRvJo7p2Qs7oi3WjgS3znnA3OVnMOBjVNDJXyHN8Ys708Un+pE5vHqbYT2JCESbwaqM0kkDxx87yQZgU+oyU0nsiA0ERp1SDCLW2AFZPFdKEDjiTJawaWOT4V7fqM3di6FsdrkQXN/Grq7QwfDLbPkQKjNHpYdKK4bFHKPPRrHKIbl35dJXbhYSt9jpLXorTphE+bYzX8mtmjzTM3YosLQrAeD5ksV9ZHSCxwWdzq1L6Z4ZLtBGaJSv9TjoQ33UJ2rJ4LPLYDZPymAnqREx0/zegao/i/8iY/zGBMv33OubrCObAYBVFjjQE6xsSP7ZUMAGIcAXpS2761wTpa7XJ/dMoWtBPRI1MAth0jnXuMk9dUSCH1vWC0pI8pW2oKdygZ+mMGypK1+oKM1vWPy85n7S3wF6Tw0uv8Fx5lPgzQf9Jv+YPm1n0TD0oTVI6XUoFCVWxayY32gzx87bCpfR41ilkfxbhFD7zFEEaVmdCj9O5wilTZu0//oc0nwLOuSydbGfDQKWp49ymhwniZJ5NLxWb1VwyvYCHP3Ulx9vUQtZXb13gRv1wYCNZuelYQuKn6iM0A1dR9OmnDznxVElLXB2EN8r5evXzrgNeL0QFcjoMPetNd3oO5KcU+fqpZFem81OGn0JYELn/29N9ngMTmRWec/M0vQvPz+Wn9bppD3nscPqtP4NdXzlrN3w4tuM3V53feqBwLywovz+9ReXiAuhJJAsVgtTvilB7gjFZkTGCmLjzwHYczoJBgy/1eFT0cepEdBTwt2DmEWAQevxgl+gg/ec6dbr2cVZ27aOAE91h+94J3dctCt33Ttg4uNwybni6KADLYBa4LX+slzDMVB4kZXOVRuBu96jv6RdWbmspkSrbC+E92z3Bkhexr1/h699XXH1L4Ot2WytGdsRUdm+pKhQo5HyhRi3gGmXAbVQ3how16eFHW3/Uvee3A2hKR3dujywUKBR8SG8QC7VGcYYiYVgdqq8rM27KfHfKt7KzJ7x2dBByfjn5Mu7Sb4LE6v6hyNo9o7E1E7uFrLRSim232QqJTNbdJkQEAYmFF5uC3c5Q917AfcAW2C+XpNdpO0sqyneUanPJqk1zQgfXOtrgbh5pqL9AUub3KhgkooLO46roIe0Ms3DSJGTQTQK5zCQAg98Vd6Komr1jMbXje4T5aWWUE5KrlrbCZgScK6Mea9tNUg40c81ja6vslxz8GvPKuUBnsWWsC7zeXFWtbqd0wL36iRgaeHDAaNZjkjfx4NQfAm7H0oRiBk2uYhYW9XRsK23bXJggO+h75bMjmom35t9TjTpOPQ6wLxh6sWLdgI9/cRn5ZIpUUKLRF9gt2jPUPHyuC94zd62i9NGT8cqHnfuSbdCTctXQxc+/t7fQO9za/nbqrNCxU1keoEfpM3MhjUjXPbCZyReyUHXeoM65YaHSa8HFukjo3xGV8USY0RuHB36LoWXu4oK28nR3YoexxVke2HpqucWGzcwl86hZ9DeWL9txGdvV0MA+n6k3H588cbNrauepLmpVaQi/Vqmo6tj3t/j2hIpGeQinJLz8fAfwf1v86VBHx6HD9zpOJO2I6W4eHN29ZWgUZF9fvLRJ/w1JT3qoB73ZUTn2xUub1L9EgcwdCV1TKQdERXH21pKSsD/Wy4fV6ws/a6PJJ999fKLhTu+BxKPtwa6SEE6FAIjti3aKk5IbbCdoX1DnvgioD+Kt8RQ6h0rPY9M2BPoWNtUVFtc0RFwq/5lofJz9tS7uirRjtuEZOZsmMU0zi9BmW7Q9t3YEnGwxZ8wLXub59baDdNNr8Zm/3jiYCBB/8Nlkxc2el4/d6p2o3NS4pXv8WXr5766KZxmVEOnx6hr7IqZsy5ZS59Ydze5Z7CGRXNYrE4PcTJkezilJJd+aih/2L5FoYWtqGyFfgZS9sJbniYv71yG4YUd9sUTk4oSNESq7o1+3rD/HE/OZ+RIOD+jI+ffW1bjay9dZHCQhjcFT5ZO0RaimyPPJ44V99Q3VPeWe5qIQJZ0ngplknSO8KeJCMpB1G8OM95rtzcAT9Nmv681mndZk0V13LLTtGoGSYVBTWCg9eyOfKgzlozlnrocELoCZ2wvOjtepkr3Tipre18N7XtfzXx0Abeh8I/jeAnKGdo4GJEqeljbWzKSz/35nee3jktXShqrp0iTe+9H14O+KhUbhTFy559YDceV/nNK2A82lho7oLcbnhu7YXlAADojv1N6RbAf+85h5S8Q8wIvF2z8/4HanFlQM/9vJMXdyNNbfgNVm8aQYPPyPp+00gz5fuUHZjSh16yd8A6rraaysdLW0zmxFKhy2HKW3PMVMiBVxJUp+RJt3g48skQIqtA8QyRZzNsPlHq2vbRsopRlzatbsl6uRIZVVJlVZh9RWoDkf3zkcYXbb/FTI2zwCgatGpuUWbraAcA3xV7TbDBU7+kHCt7RloK6+baQ8z5A5ILA8gDcYakw51fCQxiqTaqxDSmQS0KUjuwfj6juHw0vaOyo3NQO8VK4W1KC1hmB5I4xcZEj4XqwIBgQBuWWRXKdRC7EdqtQ0dJq8QdEwiUyKgBaEb+kvoRmyK9er4VsNnT0xRVtL/c1Il4zG4KvVAnuLMZPqbOuzlAmVZp5AbYREygIhX2kCh4HgK4Tj1mbmms3ltjQkvL+RA8FskG0mEjEROcScCEz59keCRyDO/E7m5g+G58elBfrNbsTeTk1GssQyWJgAjiEPkC/uPmx644NLKyqGvvbVbTk4knR/4OFN0pTsumS7v4aYB1sLtSxzSt7ZbBKLT8VZUvNeyibn86ix7LTe4lIdnohYygrrYN7EhrQioJn6TX5+dBXR3ExYTZBNGqxDBtt4YT8E+EtXtOv1NRYiraR9Td2jZTRTZlsa6JKq42GVVSrrI0Ca/RbXOlBCMxNrNujhK5a0gdKKVto8irw56Y0MaQxocoDNP+tSueu7IvBElg3roO+FGVnhQDXXmCDOzCrGRXwp0oZsjSnlFivUSpvag28M/ZOjt6phKAzWhv57zZRfrjboijWgC5m0KWwTyMTwFMGhZf9HsDckKMCTYUupiYAEjzayuSo56LyyXFQWFCk51rFcWRFkv7YMmg683qr8J+Lidjpb9Y+tEJ6fXtXFq7HPLm+E14XzW6vRangtaKo48fj4YmXrZfflcnxnZ79UNl8AtDFZfvKLn+S7axyDOwsyt36vGxTn5iWDo+3SDTIvRbvMW+oD0p1kiOIuYSmHIckM1Yfd1ELhEEp7M1wfmilmED8h3FOAXboqSRVwEDPF0WHDb8JitDgcw/7aEmbOEuGuwiKzKO4RPgHfd0qEwgJaij5NmhYZ+wpKIhDqaYnadHlaDBUUPVCbiI6aiI4Zp06sfwgFd944FXl8HhahssC/qud61E6jf6W6Uu7tMPuIrChLFVdlkUs1Fk55hNnqJyoyS70rQILOJGCrcxNWAmXC6qzCHS1lzq1V62wOKkRnssR8Rgpa9Jvs5rXU7HTl9mvONC5wRmorm4C2j0z6p0S2JJd+KZdOQ5Lpjbi2/7GHMGSSs3ubsqtvvsk2mXYYTWyWybjNbATviu9UVF8SXBJU3aoYhk5zTuOwY/5jZ1zOcC4cyNSjHBJHVZGkCLTXpOTw3pVgFflOuarn+xaEvdBtzkQUYAttiSxPyeaeE+NkoVaKDsZ1ILQKa40yVCftr9iflCjPACS4QWigpLgRj8Nj+/5dBTCWNb95b7pmcGSqenCYvlKNP3MpI725NeUA3cX0jB0dhrIajcACnZUF8+VEFkSlMUU5yhC+dH+hhKd1VYC/g/ODCwlImrj9181BWlCQ8Z1BX+DJP9fUeEaYnGtoOBemHrPadr/4mC2/S+0JCd8bE29is37n+aekaSg2KCGDKCVmANwcnv+CD6QcZAG/DIaQSQJBWa48NZ1P5VN54HVs4az32QWfzWe5QbWqAquhVNJL2x3IdFieNJPB9RAqNFyeTMLVFkA2+XsgNz4G31zxfn4Io97pFAipbIOsUyPncJOuJSX+pa3RVz8DZA53ru2AuB2gaklwZY7UWHTN1AngtfwOO1CVbJ4F5XBHrKafAJdWXH3BZeHBtROe44nJvUp3ciLQbCMERYYfCsaloPtO6SFx0TVrA2JfxqX0p6WApHeL8o9ddgTVDS3TpDb/71sOiqdgykgB/ZFk4aris6sBO84YTX/r8iCNksalljdXTJKeBfvufdWNMb6fFfN1VLSHGoPIY1exmCRIw0keAdRZRjRQYwSoxtQmbkrWK4Yo94la+V5yOonLIJN4TFvIwlXlfP4v6vwgnZLOzQsyJ9WlqzCZO+n9lh6TR5EIl/+ZWU4TQqIdw2C62bINZqKuvPfhBvR+LxHcafLdNSiAfQQw4ge1nRC3M/Aw6dMtT/XyUO0sVe+U51r8dznJ38bkxTC6MJ2dGqekbMTlMtK+SN8kpwSob2iVxe0ndxGNDkajNjovarb23e96aAg68TnSWj2ILHZONodTxL3+dEsoxMcMlTXKEY9VGd7zpufbJoFdyDZqv8nR5zzUml6deyn5oCJ8zp4HbNsIhIh+P45Tc6VOfFwnVK4cVnJse8Jaj7GxMBnQ5kkSQkWQZ65EeUpUigfXdYo4nX7HeuRyvDzVLVcR4Ok8HpOdQ6M9pvMKKDT2ID74ULEuiJpgoFSHFwR3mhWvi5qdFOqgtgAa+E7Hz9G1qTTC2KeRcZpG1XD4UCPzohbLsdQ8lnC80synf/4cn7n9Zu3e8X05yPPDGJQ0dipWQdm4KZdO+yI9Xk4JYK2blkmmukp8bUpuaRdQgyxcLXOnJsijtda+ZJMuUadCUBi9WpPjlDRjdJX8OiNFKVR+U5S8QnperZp86lRTo6ipZ5rYJuE0DyZKX+ZvNwIm+/zHN1tdmZaOhnOjLALL4eYoDteSxbwTPV5VXeOv99SQxdyTe92ruidBKWigFF/tF4SDTNyAyYEYladwdOAUDy2Kzpc3GkCWvkPx1vC4QZU7XTKiyikxP+UiB17NDVy0974atrXVbtu21V08G3BIqJC0yIXgCLLW6W4sRqrsGgJesp0TBtl5js7WespVJQwpZUyOVqjMkmeRPs3OPEGkCoRMwFNnN2WNviBD6zmzfGh4kVRbDWPlDKqsjP6Uegt+XImcaxLtl7LG1tEo5WYWSyvry4z9fqGo5LB5XVk99z9fmK5IYBWrPfZ7RpMeUfIeP/3Nv8ZspuszhCxtY2lbZ8WmVkAQK2BBbbi2IFjWqDXxSmm3GkrofLVRQXUwZdBgNEMkjnjsbSCwJCJGTLdnoSKzvJ+41qpa+5hddkylJr8bulgM6nAQLhU1uT/O5lW/E5iMjbLgLqgwSv6Y2GM4nVGxm0exC1Z51vSn8Gdx4HwXtuvKUsTIPOAQFoI7TQGzuo/+cXaaUcWbgIU6W99ZUhcNv/VDThrjRNubFfVYaX6JGB3833ogrkBmrCY2WdKNXVVNWmXC5s9HmzpSC8riaoeGBOWQ3jJWgIhFerNIXICA+3jWPSkEd5zIKIGseKeWpDli2VJpX+J0Jb12dp9jDLH5NXZf2r9/JQjexUsGUp1wUNrMN7GL92YxtNKKTz9eVZdTUc7IKGdUZFNUxOZQeFW1+uIpw0X+sAx5M9BciH2rP211ypek00PtuxskJK9ha/MsBUJkm2TmvNpSrNBgzZeKp8+oNmN1xAbMB2cp02+rY76isZgTQrI8a5OStuwlG0Zaczv2UIpPeFzfjqG0G4Lqd6hvi4wW490jymwT8iYQ0TZoqQMeOqQyta3aTTZwesjthtBv/WmeepkVyurn/DANRcBqLFEGyvq6mRutpjQ9tIYNibe5Y88WirqD5wQ5D/z3qJAFSfJZ4gRHKC8ubNtoGSLm+EX0+OkJTSPB7xg3HJP4y6YoVkzq4yDAnpaf1oekcf77yuRHh2ywrMNAu38Ndxyl9GVNq9H6XICDPttprd5ydW+pqleeawb8WtqWgcE32h/76S9Q4qMxOMdvwqD3P87jzqbn1hWGhBQBQg6OOsF2EUvPk3x2yvLM+niXq3d6doTcN45iCzH5aGMySuihUL18e5/2Q++aei9AOCmU7WTWOh5Vhc6e+4S1DUZoTpTPh/NonfUBh8XBpDPZwJ0mHTKZKtZzKSK+UjaHyuI2rzG9FHF5QpZ4WpyMhCUSdXsvCnIKrjsaQWZWWfLLKUZpfHRfVvj8S9vlUw2HxvCEroV5PW3ZNdNfE1CaRMkCmIsiG6uxHgmZkqNDJ/6jafCfP6CZ1+E1HCp85rwqmTeOHV1lIWQ8bGeZprenqrdUPb2G64U9oGkyeU3fU8yrnXBqhDE9zOTGs6ET1KYELIf7QfGa/5meljjknhKf21eHz1FKrRgMNhuHQW8i4NB7rvspm2M2ojE4Qsp7ws+s5NTZYa50xM9ZE3Maozdp9b5hb4ahf0FFroLMivp1+viibnjiomZRmsMv7K3k+nqcjdgepYJVDrvDSULal406ys52mpzbnOAwELCYdKYDcUzTpw8j4MWxeh1VG2rWvQtp3NOijqHhncLeANhF4b/gSxxJGknKVTupPNaYnHBKsPokRtnTPUg7jCLEAJIGjdk4ifVstN6vOFLaZlm8t2yIl9C232xlsVg1dslnDkHszYxaY4XsYmQdv6gxehNn74fqL9AmwH5o32pnTXT4XQI68jtA0ezUdYg4HYHnrGJtciH9iF7jdP+7HmPZLlA0jHQqivYug1QxPU+KPqUNJ3zDZuPIOSsTKh4dS/YAHotCB6FRwXjC6jvOKmPRGBwG7S4AhQNy/525sQ478YRK+ZJXuXLcg3MXTAmnNEjiSeFJwOxXnSv85wbREF+dWFbCoQYhO96wV2S1vMLJmDH0yxWNOuUKzcFcQ7+0Qkg/27PlHlS1M9DTi+oa4BP2eCmvqNfjUhZmVpUHaV6L5KryGkmEtPsUKZbBNVDq+zqUuNz3qjajRkkdoSV/mQSdKMdHbmkt18V0hSEmfYTzBZ33BZ0Ceeev4FCL/yz8jOPnWKaDXAV2+OG53inPnfm6sleN2m+IeiLed60bX/Q5wVMf9DmPbBmcGsuu3NvePyGsHBi3Dx3LboGT7epYFgKm7ttFfFdvNVgejjKSIYaqi4uKqFIHR+nu8PEcNKDqNqclwiLNbxuKBmF6LZL8Xb+bmZuK7TFPKQ0nKSYS0Wd3+OZ4107LSVhGeUuupUhxbhWDykeHe9lD20zB+pZXL72c3+kYxaJkjZeuXPYVbalNDdksbI80X/EoWXt2CawQ0eFjGmdfv7nUU5d7jtMVWgXZVlux9nfkI0UmwVXYhSqF52OU2fouRr2TOGi9TgXIh2e+MJU96Vmb5J3J7utyPj/yiEal6mzdqdy8ZOhvjjRXdwSwlWgwbeZPohLkk7nCWxNzyF1A+67Hpgtc6RbRWLJJXXWtjMC1quX8zHYz6EK+FULCqmi56rCvgBIUhi8Uf0UCgRa9iDdVlPJ5u9qtkes5XvEREh2lUmovZY0rXSed70EE8Rguw3HlFF8qyK00ukriUl7rL2JN5flcJpnDNig5zYeR5rIRtkjss3HUxfYuffj9h9LFyRP+C4x354MYlVYywCWSVEKq/fg+I9t9wSFOP49mJ2zcUS9utXHnB9abQDLmY9qWW6DbbghwmOCNUsieNoIRxx/nFVROtZQJddqgi4kvQJUveKnBhh4KviOBgb5UETCPjm35pTUX7IBTbBtQ76Wa3hX+OV6B9awWXLBT/fEeEu26rHTRiwdLhAVGG6kMdfbchrcy5EGdQ5uNZrSvTjr3OGAkxNmNlj8S5/zrnD4HV16YzcT9fR5y0duxQ0zmYXP6e6DIh0PJKEfdzMtvXrcrHx1ZIZehqNuaRqMn/WxVah8A04JZY1zg4VppqnwfIglypptut8TPDVrmfBxUbR07pAZXR5bf6ZY1y50facWRgNBhPQ8jpt6JSku+v/bnaVLl6dR6lhRZPS+TS65ZRVzfKE9xnihFvD0F7hEpzzWBvO3/gVLtO/8rlziEY39AoXYJWWJxPgE20QuQQoIIWJ3ysOUQQNUzs8beQCz9J5X/GjFYgHjYjy5M56TGKXM34vLotC/59KUBmZxOuIMv6Lgv6BDIOry2JKeAuFoll554LSRdz2ScL5KufsJKxTdJRPIipQ8U9V7psGPqfHANUG5SVlvDUL9Kb0l7JjwdeTFUBhVQTQQLRQIwHeHkaUt4QG1EbC2QNhYPdkVV9XcFbzZJbOK74jtsJ12EGERCa4GIySt+GURPIgqKwhmSg42TXU6klrBxr02CerEpd/cFhgyyZe0INtGoL85y5GCSkVlzqCE0fb+n1dBXHkMRQdZOwqelw+5DdaALKa5vmG7U1KxC9TCjRsocbDalagafUvwcoHyjwxf/QQ2/mIAr3MGMJsbEDiWTuXJh6i0u+pUg9O/w0U6z/RRB6s3qPRspg9gKOrC3k9JukiPmaZdpUY3mRccVLK8a9XJ2kN/8CyspvGBKMBpABvMiIJZXJte8okEF/feExrporiJm0SDHHrobi2nFiA43MhvFFwcppZU2goduul7bpNe7tTo6Tad1GtcOpDh40Rhfr/HfWwpeYUm1i33hiPKt5UuP++YR/cNSIP2EwuvZ7qApb4aEnnR1MrjzPFSgynvG65/W7srkUXiZjYlD3/HZqKgnpcMbvnJ+fL61Ycdv7iOfDEbUs1DEh/MLPQx+Lj+z4dv3nOi3SH9y6t76s6yKODSbMRH64VHtGz6MF8m5WaEfSOLnPnsyB/1h7zuz2mDt1Xlnnr9DgKr4elC7RmtrczntLbA26oGMpqWQqVqZgqojU2g6EPkSEebA3zJv4PTxRL/SO0Ad5iZlJqcEwxtTcn54RP7mQf5pjP1qJksDs3l6rYBfoAHrWx3dsrKhcBQfhrkCU8EAYuIlRXBS2bAgNVmQmiJITgUWN8a386YaH+WnAuWbyW+Z7wpIMuY2GZMkeFTwTnKegSeCDDw5lnoxKfFQdMy5hEQy0FwBJ2zCkVNTEoFGr6NHVjmiD+NrYY7AbBywmHlJEezUstQQfP9wqAXg+vWgNo3W1npRSNulBUnBXlWjWO1w/pqxppEiA9tniBbhjN6okh/monAGNf9gdvh2v5PJbJFBHIw/GcOB5LHN7/Zn8VVmFru4RxehCoPiUYFkTDwUFqHq1hXyd1nZQcDtA9OnvRn/F/f3BhX1dYe4KAtfQz5f4aifUTkw3KmFOSy9nsXW6vJpZzRnfPiqd3JuvCHxUXzi/aScdmN2Jj49EyQeQ1IfpSK/ZtxNRac6fyz6cfzR97bqrST168AqYPq1+4XF7efKtQO4l1QNM7Jtor8s8dAu2DLxRkeQ/ZVrDzibySKoieP39rMNqzM285MnpjoLRe+n5nqOZMbh+aQ8Kp/Ee5C6HBX5KCz0uYpq0slsCZ2WTaN7wpnnOJGax9xFLyaoqrREx0j6ey8mGpTUkwQsMiMGGx1DioklxaYwe9MvvWY2tFFYGE/J5+aQBbzLqnmqttiub7Kz5rcdGQJyHTBcdnkzL5XIxE8hHdyevGC+ar4vjvnMbb5S5hnzjJPCG3t5PR8SQRDvl1+PuB0BsUNaiUAi4D/+ebe4DXyx4/tton6uhwFMBBFFxzuO9+svb7m9Bawk5lejHPaHAD34BgQVVq6szC0K7fb3APoBBDsqgP4Zs3qk3QFmvgIv7LBgZWVxPgq9x8UNrwRWfQsSFVijIopUKgmwOShZmJeq1GqeWg1uL4rBwQtCf08oVVylEpAh4LqwIFVpNFwNDEx+xI6NhRdSORHi0i6jzH3/w9XcspqEyl0j/vVyi2MMKVLITDZIbLWDMt9djmKN9Gu9gmFrOfjxwL5DQU69Yt6kZiCtBz8ZGN+uS+CPVgrFVTWjB9BE7diBPQXx7NFKAQT2qOCVLa4n24x+e+NT7rVPAelrDwKxfXHDor2ZC36NBd9df9ezaMlY/mXAVwEVwMu9qlwFV6/8YB+p/sa0qN/1pA3wVDVlZTDdTEtjpbHMNDoENGrp0DCMtPQrVF6mVxEmCGpyKalUk9VbRCCWwtprg8vVgig/pVaMPh31P5ZcyVQcouD7iOMym87ybWnF1kQ4NcNpJv2sQdpGUdcW1Qn+tt9VUUua8R4zJ+DPm1dOBbrl/mPbAjSusJyPEylbxrYb2X/i8zlWrAL6/db7M0XcQgABrBuuqvOA6Y9n73u18zTJfwAh8Jrdcm0TLrdPBAWFwFYK59tvtw6dE6kXLqSmXLyIv6p9uvab5t6dcTj97zFKk++hC9ub3Qf734x/0N8nmszdmppe/2BeMGd9LVcDfhCHl/srG/idq8Dw1t2rer9dv3s97be3Rq/q7g6587xz5MZXDbAevOR7B1AjLvDFg3TL5L0vH0Tn/1EU3DSVmkf0pCxbUB7hbREbszdGYHoOXj6MnY8BSgnbAXf3Ov/Mv5AY1a7KC44n5ZFlcuk5/O0NTDCtfcdhIoIrx6hywQN23HwFfyl2yNEPeg/sPN4cUVOKElQLFXU9kymp6UWxRc01nq4VvZE7cvFiac2NBxCXpedrAvedi7+9rHmk22AYNpHopc2j9bXtgyU0K9G+bvILId7/JPiOEGBipG2qNLNNOJbcn6Ws9cNL2TJNoxMhzaxJTGbPnEpx26lu31xNY2M70rpoQlkYn2g0E7nMKi6zhMcmU7isxLcTBXGaE/JczYzSAyT5+MqQNDZfDAVLFdIJZKJOUbdWlo8669qtHPMQk0tHJh+eJ7cZYxRO8vkR0HCxorlrNZH6pTgLAX3aoDyq/tDWNSqmk5LCbBojT3tU5r0BXciUTf42dL/Cf2LJO2WZug+dliP0dIrFPFG+aOv3ujZxHjV5orCSl/KA8/+JiU4pN+R0Y9lD8jABJ3sC9r4xpEcUsO+Nnwp018W/YcC0vaH/Qg/swcz/E87XQ1oI4nu7ewCdmeTp35taQT9735qOIXKFANINEsEFkpHLjfH4dyZ9YASPTxx76fd8neq+wSgcHyW1LLdwtyliRMaAO0IQhqDdaR1XEsgqirar5HZHqI5CUV/pv4+GqOLMEtR6Q7C0NEoyOX7wF0WB7xkDCsjCk/IIspKcJjQ3AKg1KhV2rkBuP6Sw8QSyQpqC9n84g0Wl0znD6SywDQdTRox0QPVKf50FQszjLURqbvKwXWhXQUqGVLWnFVzh+KOzLiw1r2TdGrtBbIwgZu6e9MsM5QYCtxVxsVBVfjGQwuOQKJCoRgqRsTlJ2rieuFiX69sUE9cNbmOX1INjmUBFsJiy+YIoyvtKcpg/Fywuypdhv4AYqpFAlCm6uKaOzcym2GkVoDZwyKuwSbqDf2lKZ6F7aEpLFVrOBSgkP0mLKVgkRDfIeiQeixGilOSFEwhq3mrm2cjIPTjBAwKlstbWssAnCuRuCDA3I9PDTqK4VxiOjftk1UxnfjPKygjL9iC8nPoMq+civPQmQDUJyzhVNyARQ27dzNwcCuasgP5gzb69z8pLx0sHwV2AMM3c2ma2tLaakZaWt173FR7O8AtNlyaSknLLcwhWZrkujZhryEW/BiJRLspsd4OZCxDnCIc1VIOGvU0OEKh7YJxj6tRityabuhzQvxlSxJFHrliJoOWhjPwbylJ4vrSD5XWgzT5fqTwlSWWXzCkTwtxpr3F6Gtkc9ba7XL8g6Ixn2+7mIO0pmmaTfZx3t/ng/tixnlx0MArZXgMf3HcYdZ4ipeaQ7AE59PfP5fg+puc/5ydUxSsyionepfUFGqtBIS44RTGWOt7GeDC/j/b+WIkSjl24F0q4vF7czsFM420tq2bj33+zvON/6LpwKj79Xm+TzuU6iaNfmdzR/icpOpFD1joUl7bkG32d16EvJPnqQgMi2YXNnpiDKP+C3gymUo93LFuHnvzJedsYXUaVFLTjKiWklMnyUW4BaaGRAd6l+YnksiQy+Ytw2KNGTe4/sTncTfLkMt8DrQ009CYne83f0JI1YcwHjw230usmum6GdwlQ7dVMNZCM0P5PC6grlcoZJVizEL9gTVwAxF20iGwiMQLDc8fCBfg4kLDjA3Ddk+AHhNz+FubX+fFN0GEf2PxgXx3sd9tJVV+7zpW+e5toxcWawkbeDmTd5b9RkCl2Kr/KiN1iToSb3+RZagGsJI3MYJbiqHSEvhkMAovh2mIFa6jKJmMo1UIyaiKlKe5S4h4ZtPV6zIVyDoKq0xz7wlRcb3H7ImNTHJ16NpnqxZwk1otF49tBQIF/bjkrNpD+3yCNex3w+UNei8m3Mb6Yd2tE6z6AQXz/LIXg3bUCcnYP2T6Q/NUCHiAXBFkQZGtuNWS8i+ntn1jnWJzdiauHcYoZpBjkxVRXknehOXQ2O3e/3EG9nmGRac4u3ZnH3O405pXBgtIZCUgVm/4rHDv3neGjwD0s9VOd3kqTqX357Ye+0peKUJgW/c9ZyjcSHG2pGuoDfseMXyreVUwsQB7jfc3jRa6OvPZSUu1DcpUeZYKkak1aKWb1fxWQGyEL1mxj1r7SG92pG3IEtQjADGYzMVvXitnlaIYx41yv+s3J2+EOkuPy0/lpARgsismx92Jke9wPs2z7g9QApnmRVOaQ8jDtbFsVv90xI6TOJD/hsuIuIeaqM110NJ/bUlplZnWMYi8vNs6r+zl2sVnHjIpLtabi5css0o11wrnFiJupeVreWYaJ5KSwJp176Hw0mSExa063Q0nIbtbEsC1fkBr5bV36e+3X+qJInoVTKynIQfbEAJCf3eNI26u3bDlxdlGYcNLM9YhxrIlr7+aWluRZgBxwkCFZIDvyA4c0EStvxrPpLE0LegwGWE+BNHPGAJQLu8CPzPhVX7iyixjppXdmrnDaCpLGjoy2YhrXqSPugT1gH/gD/vd768xY7e7OATUFpjLNhKoSmWgqVFdlbLlJ2nJuQoyAZW9stJhaihbwLTIgdsB+1gAG0AxFBkQV4gIAVCILsck7xzxa1XTALvBTFSGbFSu2hwWxX36/OyP9uJm3Uj9O+duh/en0ARAjuOPQipn3BzGEX/iB20n3cEhFZYvZZY2WkR9okwH2RK1eZfJFiHLqKlKOdiH+zR4a3HqwnfTSUKsUsz6f4kw3lcMtKY523Cpjj05xRKnKuow7FqNEdTFK70ol1yglSbZJOx6jDwj0EdvQHj9ltjfFm/f59S03vJRUjjRY73IKm4i2jynvWDKtKetDydoBKc/NP8EFbYo9oTu6gscFLTnTYxJzp9LbufyWnLpIOn0ctOsz6lDM3ZpG/8PMGu9Dh2dRvU9KLhtI4+5xG1YfZfov4CRcnm3ZCn/uLx0zzLcprTFSzSfKwvxUYy2yY7NyLEkXhFrPmQaPow4O+7LvGoeKYuqlkE70mNGyjBxuytnFSAZkYpqqkRI/ynASHsUlhZDNOMA4RZsGDfUYqb6dVkfJZ+BWIwuJts8ZJRmH/yks3dVPFwL5SxgJgAICAUcAYHszIQAO2g0BBNkIBFAkfIMAGuWMQgAdhGwMAXTJZlcIoIeQQyGAPt4QIIAB6raEAIZkKisEMKa2/hDAhPoxCQFMfbzdOGZU77Y45pPoibZcgNirfYmAdfc+joB0n8DU5N4Uamu/Fg7qSAK4FYwcCMNlB4Zs1oHDs+TAk4oHJYgTAQeRVDIdEoKbcpBoz9ghSWkxDmmWK3PIcNhjh2ye3XoHmemdloOC3EvaUp5Mr+AlEMChe3kHAvrd8fIvNO4WOjd3Jy6jVLEkIUeYfbv2nHg6lvfh5jI9WkpCGhOrlDimzfCn66zKdjiiOivjRt2OzCfE5Xt9kNQ2UAgQlGZUnpLnFGlagjKDWAexIVtdbWL3owZ3K/GvDsACIoaTk5gRz0uQvAIsRsbl8uaDXjrAHCd4CrJAX1J9AfZt2336UF3oibVNXDxM5amyP0zFIOeNepHAuKexDFJ5pEDOMAJwmV/ZpVFTaoakVKBlinmZmCa5k+XCMxgmdqpLcUW3tcI4NDu5R+V4XUmlZLxKiAZ9moh6YzGti+GAiLNBwG6AJq7qJCaSRUcxJzcKmteSRVoItAiQI6TknNsBq3xQaZwpG8vJsaIA1/iCyrhlQl9mfQ8UZ2S4hvC08G3uoA8pSSDEzdW4EgG3g8xiMVkIpuHOdXvJMoe55O1IiiU42YwNKaDt1MQ2CbIHH0aup6Bx4hAGDPH4oDB9SYuvFYTQesNNgeEziCzCHhMTJK+gE3kzU2ENYhNYZTW6vYc7V2QFGU8Sbqwo6RQ6bIW6bAS6SA73SoltvmDDnQ0XI527qRAuOLegObe2EcYp7ysyl9XLzjaghQmS19XtFiIVUC190krHGhn6lCRi9jRRJz2lMGxro9dqrKqio36oF7ep5Z927K4aKg5fSBTGFc96t8o4Iu9SXH53R4Z4Wbp9yJLuYSxWoVvxxk+YtBdDDfvyy1hqF+rOpbhGwbURSC9WFxP/RwwSdWxSF5QBullPn1oZURiHxo/OALntHGbuLjQd5CKmQ4Q7ngwsQl6pEFrsg4iqhCIjn710njAckhuoXkn+nkPbDEw9dtY6AH/KZTL6T/2TTl3etteyDEP6HXdEnyWpdvnDvNyQyJxxX5z2xIJFR5z2iQ7N7BLvFPlumy8e6fZEpy5vhPihR6+zXP4rdNuAQaF++SBTGWmloGjvVXuuZDkeuRf8lGSt8sIrL3120FavvbXdzz4ChcvhEB4REBFJIBL88TeSSApJIxlYCpoiMpJDCFHIU0BFswydIiXKVKj23Y8wqGFajkWdBk1aVtC2sp+GY9PBoUvPKlz6DBjiMeqF6YyZMGUm29+jyJoNW3adcz57bBxcPHwCQiJQv/z20qtcSUjJyCkoqahlMLxqOnoGBYxMzCxdScAqh1KvZsxqsHVFMildmkuJUmXKVTRiSp6vvpNGTRQlodI+1KglN+DfwmYtWrVpr05Ve221zQEpUqVJr0UrsQvuatPunhS3HXTG/TK67kYHu5pIpizZcuTKk69AoSLFShxSqky5CpWqyqlajVp16h12xFHHHNfghJNOOV15ZzRWqcInxxWpdkK+Eodk1WfObtilztNWyRk/neJuutUFF11y2RVJFa+W+zo88NAjjz3RqUu3NPsX36ffgEFDho0YNSaPY//nxk2YNKX5aS/RjKDr3njrXfiDj9DzuS/NyeCoLNoX349+9qvf/elvSxgCzdp5Px4SdfHY1hN02iFKrjiSDghCRBlUpGUaYhSKxsBaeq5gSp5INr15IxswTnWp6E+sTmimcXQ0fXcfBJwfI2nFxnF7i+V5vBVJFRf4YhrsXADCjfL3fNFJkbNw6lSJJtnROqW45SyWDbpJPAd5v13ooW2zHKQZIr3MqtJRexlRZYk4952eFchBIs6rAAxlbMUclFUgh35cFSkiq5YNhtmAgeqDMA5r1y5jF20fs3qB3+pLX7SXZFIEn3E61KRaPUL0ZNaujVdUZicI80Ts1mXuYu1z1gZhEYJ1+WJRNU4uQOOkFTPbtjGlZRDioD4qqhI3hY3sS7vnlnavhUvVebXQvxWqZTFcvJAiNhnnna+sYeN841QF4XbBrvP4LbKq1hqPMkDO+nHdRqKjMxHz5cVkaeOlmrOGVK3LIs3NXWJn6qTpgGR7C2umkXA59+oJiwhWFp1xfBSqDoOPP+Aj0Oow+NUDPOxdpjbXcDNMFVoMWKZtKhMHxc0EQA8ZInSH2+Jk4EfNEQNTRT3j0wGHjd7k6vzijOJKkLZZFWyHWHW4KloQwrvvqhnY0MSustnEwioIN5581T1Rx1ij+J1ICGidolfs0X65oogLG3dq7TnfVjp7taimbGywsRrGhkBzaduT6GusLhqluZe28ugyo1pRYmJL2YC5BGBKQGYSiKYEwCSQdpRAyy9+0AEn1RSNpS/jfkY8OcAMG0egVTI94kZbRPwiUJmcOO/FcJ6Hi4rFlKwi68gdEiV+APLFxATljVXmJZj1nkNv/479OO5b/6eKKe99yZENJzlW6tnHVHfuSoarII2MyR1TomWjjcp1NIG+DAoNPqXCAKH6xDtWBZmGyifTUO3k/n7v59XPTkVI+snanS107v7CbR6Xn10UDzQQ7+s9AcnP78hIdTefThahfiP1HMYM/sHwDnUrAKUV6LYKqU9woBLBzf0vBMAlCUtcmnDW/Q8DoIwX/DFdmVqyBAZAOcOMMoZnwIgfYBgwI2vMiCdgGAiDv7QLQJYAACIAIwAzAgAAeCYCMBEACMDMYn6F4EocsE9snDY54sXTRtTDISBGmuui0yHhANbNRzveS9t+euO5xXzKk8ayzSIvAnsG2DCPRm5Ti5s09hiiP1gQUOV3InGLfGpgIH07XrAmLiboZMWNX8Q699OmhD1mmyAf9Z+M0J7YZx++6HziExFvGtSnJWbMNo4DuEkd8iHdxQoPfSzoUd23P0K6Vmkmdb4SsLt4L36TPjxTLAAA) format('woff2')}@font-face{font-family:'Familjen Grotesk';font-weight:700;font-display:swap;src:url(data:font/woff2;base64,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) format('woff2')}+  /* Canonical Adom dark-theme tokens (adom/guides/brand.md) */+  :root{+    --bg:#0d1117;--surface:#161b22;--elevated:#1c2128;--overlay:#21262d;+    --border:#30363d;--border-muted:#21262d;+    --text:#e6edf3;--text2:#8b949e;--text3:#484f58;+    --accent:#00b8b0;--accent-bright:#00e6dc;--purple:#8c6bf7;+    /* aliases used by the viewport + pin-list rules further down */+    --panel:#161b22;--panel2:#1c2128;--muted:#8b949e;+  }+  *{box-sizing:border-box;margin:0;padding:0}+  html,body{height:100%}+  body{background:var(--bg);color:var(--text);font:13px/1.4 'Satoshi','Segoe UI',system-ui,sans-serif;display:flex;flex-direction:column;overflow:hidden}+  /* ── Canonical Adom app header (adom/guides/adom-app-header.md) ── */+  header{display:flex;align-items:center;gap:12px;padding:0 16px;height:44px;flex:0 0 44px;border-bottom:1px solid var(--border-muted);background:var(--surface);position:relative;font-family:'Familjen Grotesk',sans-serif}+  header .brand{display:flex;align-items:center;gap:8px;color:var(--accent);font-size:13px;font-weight:600;letter-spacing:.01em;cursor:default;flex-shrink:0;outline:none}+  header .brand svg.logo{width:16px;height:16px;flex-shrink:0}+  header .brand:hover .app-name{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px}+  header .brand .app-name{color:var(--accent)}+  header .brand .app-subtitle{color:var(--text2);font-weight:500}+  header .brand .sep{color:var(--text3);font-weight:400}+  header .vsep{width:1px;height:18px;background:var(--border);flex-shrink:0}+  header .subject{display:flex;align-items:center;gap:8px;min-width:0;flex:1;cursor:default}+  header .subject-name{color:var(--text);font-family:'Familjen Grotesk',sans-serif;font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}+  header .subject-meta{display:flex;align-items:center;gap:6px;color:var(--text2);font-family:'JetBrains Mono',ui-monospace,monospace;font-size:11px;white-space:nowrap}+  header .subject-meta .sep{color:var(--text3)}+  @media(max-width:720px){header .subject-meta{display:none}}+  /* Floating in-canvas viewer toolbar (frosted, matches the app's glass cards) */+  .tools{position:absolute;left:12px;top:12px;z-index:5;display:flex;gap:3px;padding:3px;background:rgba(22,27,34,.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:9px}+  .tools button{width:30px;height:30px;display:grid;place-items:center;background:transparent;border:none;border-radius:6px;color:var(--text2);cursor:pointer;transition:background .15s ease,color .15s ease}+  .tools button:hover{background:var(--elevated);color:var(--accent-bright)}+  .tools button svg{width:16px;height:16px;display:block}+  header .hover-popover{position:absolute;top:calc(100% + 6px);left:16px;background:var(--elevated);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.5);padding:12px 14px;min-width:300px;max-width:420px;font-family:'Satoshi',sans-serif;font-size:12px;color:var(--text);z-index:99999;opacity:0;transform:translateY(-2px);pointer-events:none;transition:opacity .12s ease,transform .12s ease}+  header .hover-popover.show{opacity:1;transform:none;pointer-events:auto}+  header .hover-popover .popover-title{font-family:'Familjen Grotesk',sans-serif;font-size:14px;font-weight:700;color:var(--text);margin-bottom:8px}+  header .hover-popover .popover-row{display:flex;gap:12px;padding:3px 0;align-items:baseline}+  header .hover-popover .popover-row .k{color:var(--text3);font-family:'JetBrains Mono',ui-monospace,monospace;font-size:10px;text-transform:lowercase;width:64px;flex-shrink:0}+  header .hover-popover .popover-row .v{color:var(--text);font-family:'Satoshi',sans-serif;font-size:12px;flex:1}+  header .hover-popover .popover-actions{margin-top:10px;padding-top:10px;border-top:1px solid var(--border-muted);display:flex;gap:12px}+  header .hover-popover .popover-link{color:var(--accent);text-decoration:none;font-family:'Familjen Grotesk',sans-serif;font-size:12px;font-weight:600}+  header .hover-popover .popover-link:hover{text-decoration:underline}+  main{flex:1;display:flex;min-height:0}+  .vpwrap{flex:1;position:relative;min-width:0}+  /* Schematic-workbench grid, identical to the main app's #stage. */+  .vp{position:absolute;inset:0;overflow:hidden;cursor:grab;background:+      radial-gradient(120% 120% at 50% 30%,rgba(0,184,177,.05),transparent 60%),+      linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px) 0 0/22px 22px,+      linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px) 0 0/22px 22px}+  .vp.grab{cursor:grabbing}+  /* Only the DIRECT-CHILD symbol svg gets the pan/zoom transform — scoping to+     `.vp > svg` (not `.vp svg`) keeps it off any nested icon svgs. */+  .vp > svg{position:absolute;left:0;top:0;width:100%;height:100%;transform-origin:0 0;display:block}+  .hint{position:absolute;right:10px;bottom:9px;color:var(--muted);font-size:11px;z-index:5;pointer-events:none;user-select:none;-webkit-user-select:none}+  aside{flex:0 0 268px;border-left:1px solid var(--border);background:var(--panel);display:flex;flex-direction:column;min-height:0}+  aside .ah{padding:9px 12px;border-bottom:1px solid var(--border);font-size:12px;color:var(--muted);display:flex;align-items:center;gap:8px}+  aside input{flex:1;background:var(--panel2);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:12px;padding:5px 8px;outline:none}+  aside input:focus{border-color:var(--accent)}+  .pins{flex:1;overflow:auto}+  .pin{padding:7px 12px;border-bottom:1px solid #1a212c;cursor:pointer}+  .pin:hover{background:var(--panel2)}+  .pin.on{background:#15202e}+  .pin .row{display:flex;align-items:center;gap:8px}+  .pin .num{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:11px;color:#8fa0b4;min-width:22px;text-align:right}+  .pin .nme{font-weight:600;font-size:13px}+  .pin .ty{margin-left:auto;font-size:10px;padding:1px 6px;border-radius:5px;border:1px solid;white-space:nowrap}+  .pin .d{font-size:11.5px;color:#aeb6c2;line-height:1.45;margin:5px 0 1px 30px;display:none}+  .pin.on .d{display:block}+  .empty{color:var(--muted);font-size:12px;padding:14px}+  @media(max-width:620px){aside{flex-basis:200px}}+  /* pin panel header — reads like a studio section */+  aside .ah .atitle{font-family:'Familjen Grotesk',sans-serif;font-weight:600;font-size:12px;color:var(--text);white-space:nowrap}+  aside .ah .acount{margin-left:5px;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:11px;color:var(--text3)}+  /* bottom info bar — mirrors the main app footer */+  footer{flex:0 0 auto;display:flex;align-items:center;height:26px;border-top:1px solid var(--border);background:var(--surface);font-size:11px;color:var(--text2);padding:0 14px;overflow:hidden}+  footer .it{display:flex;align-items:center;gap:6px;white-space:nowrap;min-width:0}+  footer .it+.it::before{content:"";width:1px;height:13px;background:var(--border);margin:0 12px;flex:0 0 1px}+  footer .k{color:var(--text3);text-transform:uppercase;font-size:9px;letter-spacing:.4px;flex:0 0 auto}+  footer .v{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}+  footer .descit{min-width:0;overflow:hidden}+  /* pin hover — highlight + tooltip, parity with the live SymView */+  .vp > svg text,.vp > svg g.stroked-text{pointer-events:none}+  .hit{fill:rgba(0,230,220,0);stroke:none;cursor:pointer}+  .vp > svg g.stroked-text.hl path{stroke:var(--accent-bright)!important;fill:var(--accent-bright)!important}+  .vp > svg path.hl{stroke:var(--accent-bright)!important;stroke-width:.22!important}+  #pinmark{pointer-events:none;fill:rgba(0,230,220,.18);stroke:var(--accent-bright);stroke-width:.12;opacity:0;transition:opacity .1s}+  #tip{position:fixed;z-index:9999;max-width:300px;background:rgba(22,27,34,.97);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(0,184,177,.34);border-radius:10px;padding:9px 12px;color:var(--text);font-size:12px;line-height:1.5;pointer-events:none;opacity:0;transition:opacity .12s;box-shadow:0 12px 40px rgba(0,0,0,.55)}+  #tip.show{opacity:1}+  #tip .r1{display:flex;align-items:baseline;gap:8px;justify-content:space-between}+  #tip .nm{font-weight:700;font-size:13px}+  #tip .pn{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:11px;color:var(--muted);white-space:nowrap}+  #tip .badge{display:inline-block;margin-top:5px;font-size:10px;font-weight:700;padding:2px 7px;border-radius:5px;letter-spacing:.2px}+  #tip .desc{margin-top:6px;color:#aeb6c2;font-size:11.5px}+</style></head>+<body>+  <header>+    <div class="brand" data-tooltip-target="app-info" tabindex="0">+      <svg class="logo" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="7" y="4" width="10" height="16" rx="1.5"/><path d="M7 8H3M7 12H3M7 16H3M21 8h-4M21 12h-4M21 16h-4"/></svg>+      <span class="app-name">adom-symbol</span>+      <span class="sep">·</span>+      <span class="app-subtitle">symbol viewer</span>+    </div>+    <div class="vsep" aria-hidden="true"></div>+    <div class="subject">+      <span class="subject-name">IXTP15N50L2</span>+      <span class="subject-meta"><span class="sep">·</span><span>3 pins</span><span class="sep">·</span><span>IXTP15N50L2_TO220_Straight_Drill1p4</span></span>+    </div>+    <div class="hover-popover" id="app-info" role="dialog" aria-label="About adom-symbol">+      <div class="popover-title">adom-symbol</div>+      <div class="popover-row"><span class="k">about</span><span class="v">Interactive KiCad schematic-symbol viewer: pan/zoom, per-pin hover, and a filterable pin list.</span></div>+      <div class="popover-row"><span class="k">version</span><span class="v">v1.2.6</span></div>+      <div class="popover-row"><span class="k">engine</span><span class="v">service-kicad</span></div>+      <div class="popover-row"><span class="k">mfr</span><span class="v">IXYS / Littelfuse</span></div>+      <div class="popover-row"><span class="k">author</span><span class="v">Adom Inc · adom.inc</span></div>+      <div class="popover-actions">+        <a class="popover-link" href="https://wiki.adom.inc/adom/adom-symbol" target="_blank" rel="noopener">Open wiki ↗</a>+      </div>+    </div>+  </header>+  <main>+    <div class="vpwrap">+      <div class="vp" id="vp">+        <div class="tools">+          <button id="zout" title="Zoom out" aria-label="Zoom out"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="10.5" cy="10.5" r="6.5"/><path d="M20 20l-4.5-4.5M8 10.5h5"/></svg></button>+          <button id="zin" title="Zoom in" aria-label="Zoom in"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="10.5" cy="10.5" r="6.5"/><path d="M20 20l-4.5-4.5M10.5 8v5M8 10.5h5"/></svg></button>+          <button id="fit" title="Fit to window" aria-label="Fit to window"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.9" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="5" width="18" height="14" rx="2"/><rect x="8" y="9" width="8" height="6" rx="1"/></svg></button>+        </div>+        <div class="hint">drag to pan · scroll to zoom</div>+        <svg+  xmlns:svg="http://www.w3.org/2000/svg"+  xmlns="http://www.w3.org/2000/svg"+  xmlns:xlink="http://www.w3.org/1999/xlink"+  xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"+  version="1.1"+  width="23.700mm" height="23.240mm" viewBox="88.3800 88.3800 23.7000 23.2400">++<defs>+  <linearGradient id="adom-body-grad" x1="0" y1="0" x2="0" y2="1">+    <stop offset="0%" stop-color="#1a2332"/>+    <stop offset="100%" stop-color="#141c27"/>+  </linearGradient>+</defs>+<style><![CDATA[+  /* Stroked text groups (KiCad renders text as paths in <g class="stroked-text">) */+  g.stroked-text path {+    stroke: #ffffff !important;+    fill: #ffffff !important;+  }+  text[opacity="0"] {+    fill: #ffffff !important;+  }+  .pin-highlight path {+    stroke: #00e6dc !important;+  }+  .pin-highlight g.stroked-text path {+    stroke: #00e6dc !important;+  }+  .group-highlight g.stroked-text path {+    stroke: #FFD180 !important;+  }+]]></style>+<defs>+  <radialGradient id="adom-canvas-glow" cx="100.22999999999999" cy="100" r="16.59" gradientUnits="userSpaceOnUse">+    <stop offset="0%"  stop-color="#00b8b0" stop-opacity="0.06"/>+    <stop offset="70%" stop-color="#00b8b0" stop-opacity="0"/>+  </radialGradient>+  <pattern id="adom-canvas-grid" x="0" y="0" width="2.54" height="2.54" patternUnits="userSpaceOnUse">+    <line x1="0" y1="0" x2="2.54" y2="0" stroke="rgba(255,255,255,0.025)" stroke-width="0.06"/>+    <line x1="0" y1="0" x2="0" y2="2.54" stroke="rgba(255,255,255,0.025)" stroke-width="0.06"/>+  </pattern>+</defs>+<rect x="88.38" y="88.38" width="23.7" height="23.24" fill="#0d1117"/>+<rect x="88.38" y="88.38" width="23.7" height="23.24" fill="url(#adom-canvas-grid)"/>+<rect x="88.38" y="88.38" width="23.7" height="23.24" fill="url(#adom-canvas-glow)"/>++  +<g style="fill:none; fill-opacity:1.0000;stroke:#000000; stroke-opacity:1.0000;+stroke-linecap:round; stroke-linejoin:round;"+ transform="translate(0 0) scale(1 1)">+</g>+<g style="fill:none; fill-opacity:1.0000; +stroke:none; stroke-width:0.0001; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;">+<rect x="0.000000" y="0.000000" width="297.002200" height="210.007200" rx="0.000000" />+</g>+<g style="fill:none; +stroke:#4a5568; stroke-width:0.1524; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;">++++++++++<g class="stroked-text">++++++</g>+<g class="stroked-text">+++++++++++</g>+<g class="stroked-text">++++++++++++++</g>+<g class="stroked-text">++++</g>+<g class="stroked-text">++++++++++++++++</g>+<g class="stroked-text">++++++++++++++++++++++</g>++++++<g class="stroked-text">++++++</g>+<g class="stroked-text">+++++++++++</g>+<g class="stroked-text">++++++++++++++</g>+<g class="stroked-text">++++</g>+<g class="stroked-text">++++++++++++++++</g>+<g class="stroked-text">++++++++++++++++++++++</g>++++<g class="stroked-text">++++</g>+<g class="stroked-text">+++++++++++++++++++</g>+<g class="stroked-text">++++++++++++++++</g>+<g class="stroked-text">+++++++++++++</g>++++<g class="stroked-text">++++</g>+<g class="stroked-text">+++++++++++++++++++</g>+<g class="stroked-text">++++++++++++++++</g>+<g class="stroked-text">+++++++++++++</g>+<g class="stroked-text">++++++++++++++++++++++++++++++++++++++++++++++++++++++</g>++<g class="stroked-text">++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++</g>+</g>+<g style="fill:none; +stroke:#4a5568; stroke-width:0.3000; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;">++<g class="stroked-text">++++++++++++++++++++++++++++++++++++</g></g>+<g style="fill:none; +stroke:#4a5568; stroke-width:0.1524; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;">++<g class="stroked-text">+++++++++++++++++++++++++++++++++++++++++++++++++++++++++</g>+<g class="stroked-text">+++++++++++++++++++++++++++++++++++</g>+</g>+<g style="fill:none; +stroke:#4a5568; stroke-width:0.4000; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;">++<g class="stroked-text">+++++++++++++++++++++++++++++++++++++++</g></g>+<g style="fill:none; +stroke:#4a5568; stroke-width:0.1524; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;">++<g class="stroked-text">+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++</g>++<g class="stroked-text">+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++</g></g>+<g style="fill:none; +stroke:#4a5568; stroke-width:0.3000; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;">++<g class="stroked-text">+</g></g>+<g style="fill:none; +stroke:#4a5568; stroke-width:0.1524; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;">++<g class="stroked-text">+</g>+<g class="stroked-text">+</g>+<g class="stroked-text">+</g>+<g class="stroked-text">+</g>++<path style="fill:none; +stroke:#4a5568; stroke-width:0.2540; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;fill:none"+d="M 100.2540,98.0950+100.2540,101.9050+" /> +<path style="fill:none; +stroke:#4a5568; stroke-width:0.1524; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;fill:none"+d="M 100.2540,100.0000+97.4600,100.0000+" /> +<path style="fill:none; +stroke:#4a5568; stroke-width:0.2540; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;fill:none"+d="M 100.7620,97.7140+100.7620,98.7300+" /> +<path style="fill:none; +stroke:#4a5568; stroke-width:0.2540; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;fill:none"+d="M 100.7620,99.4920+100.7620,100.5080+" /> +<path style="fill:none; +stroke:#4a5568; stroke-width:0.2540; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;fill:none"+d="M 100.7620,101.2700+100.7620,102.2860+" /> +<path style="fill:none; +stroke:#4a5568; stroke-width:0.1524; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;fill:none"+d="M 100.7620,101.7780+103.3020,101.7780+103.3020,98.2220+100.7620,98.2220+" /> +<path style="fill:#4a5568; fill-opacity:1.0000; +stroke:#4a5568; stroke-width:0.1524; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;fill-rule:evenodd;"+d="M 101.0160,100.0000+102.0320,99.6190+102.0320,100.3810+Z" /> +</g>+<g style="fill:none; +stroke:#4a5568; stroke-width:0.2540; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;">+<circle cx="101.6510" cy="100.0000" r="2.7940" /> +<path style="fill:none; +stroke:#4a5568; stroke-width:0.1524; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;fill:none"+d="M 102.5400,97.4600+102.5400,98.2220+" /> +</g>+<g style="fill:#4a5568; fill-opacity:1.0000; +stroke:#4a5568; stroke-width:0.1524; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;">+<circle cx="102.5400" cy="98.2220" r="0.2540" /> +<circle cx="102.5400" cy="101.7780" r="0.2540" /> +<path style="fill:none; +stroke:#4a5568; stroke-width:0.1524; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;fill:none"+d="M 102.5400,102.5400+102.5400,100.0000+100.7620,100.0000+" /> +<path style="fill:none; +stroke:#4a5568; stroke-width:0.1524; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;fill:none"+d="M 102.9210,99.6190+103.6830,99.6190+" /> +<path style="fill:none; +stroke:#4a5568; stroke-width:0.1524; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;fill:none"+d="M 103.3020,99.6190+102.9210,100.2540+103.6830,100.2540+Z" /> +</g>+<g style="fill:none; +stroke:#4a5568; stroke-width:0.1524; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;">+<path d="M97.4600 100.0000+L94.9200 100.0000+" />+</g>+<g style="fill:none; +stroke:#ffffff; stroke-width:0.1524; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;">+<text x="96.1900" y="99.7460"+textLength="1.4127" font-size="1.6933" lengthAdjust="spacingAndGlyphs"+text-anchor="middle" opacity="0" stroke-opacity="0">1</text>+<g class="stroked-text">+<path d="M96.5529 99.5825+L95.8272 99.5825+" />+<path d="M96.1900 99.5825+L96.1900 98.3125+" />+<path d="M96.1900 98.3125+L96.0691 98.4940+" />+<path d="M96.0691 98.4940+L95.9481 98.6149+" />+<path d="M95.9481 98.6149+L95.8272 98.6754+" />+</g></g>+<g style="fill:none; +stroke:#4a5568; stroke-width:0.1524; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;">+<path d="M102.5400 97.4600+L102.5400 94.9200+" />+</g>+<g style="fill:none; +stroke:#ffffff; stroke-width:0.1524; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;">+<g transform="rotate(-90.000000 102.2860 96.1900)">+<text x="102.2860" y="96.1900"+textLength="1.4127" font-size="1.6933" lengthAdjust="spacingAndGlyphs"+text-anchor="middle" opacity="0" stroke-opacity="0">2</text>+</g>+<g class="stroked-text">+<path d="M100.9735 96.5527+L100.9130 96.4923+" />+<path d="M100.9130 96.4923+L100.8525 96.3713+" />+<path d="M100.8525 96.3713+L100.8525 96.0689+" />+<path d="M100.8525 96.0689+L100.9130 95.9480+" />+<path d="M100.9130 95.9480+L100.9735 95.8875+" />+<path d="M100.9735 95.8875+L101.0944 95.8270+" />+<path d="M101.0944 95.8270+L101.2154 95.8270+" />+<path d="M101.2154 95.8270+L101.3968 95.8875+" />+<path d="M101.3968 95.8875+L102.1225 96.6132+" />+<path d="M102.1225 96.6132+L102.1225 95.8270+" />+</g></g>+<g style="fill:none; +stroke:#4a5568; stroke-width:0.1524; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;">+<path d="M102.5400 102.5400+L102.5400 105.0800+" />+</g>+<g style="fill:none; +stroke:#ffffff; stroke-width:0.1524; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;">+<g transform="rotate(-90.000000 102.2860 103.8100)">+<text x="102.2860" y="103.8100"+textLength="1.4127" font-size="1.6933" lengthAdjust="spacingAndGlyphs"+text-anchor="middle" opacity="0" stroke-opacity="0">3</text>+</g>+<g class="stroked-text">+<path d="M100.8525 104.2332+L100.8525 103.4470+" />+<path d="M100.8525 103.4470+L101.3363 103.8704+" />+<path d="M101.3363 103.8704+L101.3363 103.6889+" />+<path d="M101.3363 103.6889+L101.3968 103.5680+" />+<path d="M101.3968 103.5680+L101.4573 103.5075+" />+<path d="M101.4573 103.5075+L101.5782 103.4470+" />+<path d="M101.5782 103.4470+L101.8806 103.4470+" />+<path d="M101.8806 103.4470+L102.0016 103.5075+" />+<path d="M102.0016 103.5075+L102.0621 103.5680+" />+<path d="M102.0621 103.5680+L102.1225 103.6889+" />+<path d="M102.1225 103.6889+L102.1225 104.0518+" />+<path d="M102.1225 104.0518+L102.0621 104.1727+" />+<path d="M102.0621 104.1727+L102.0016 104.2332+" />+</g></g>+<g style="fill:none; +stroke:#484f58; stroke-width:0.1524; stroke-opacity:1; +stroke-linecap:round; stroke-linejoin:round;">+<text x="105.0800" y="98.7300"+textLength="2.6223" font-size="1.6933" lengthAdjust="spacingAndGlyphs"+text-anchor="middle" opacity="0" stroke-opacity="0">Q?</text>+<g class="stroked-text">+<path d="M105.0195 98.7955+L104.8985 98.7350+" />+<path d="M104.8985 98.7350+L104.7776 98.6141+" />+<path d="M104.7776 98.6141+L104.5962 98.4326+" />+<path d="M104.5962 98.4326+L104.4752 98.3721+" />+<path d="M104.4752 98.3721+L104.3543 98.3721+" />+<path d="M104.4147 98.6745+L104.2938 98.6141+" />+<path d="M104.2938 98.6141+L104.1728 98.4931+" />+<path d="M104.1728 98.4931+L104.1124 98.2512+" />+<path d="M104.1124 98.2512+L104.1124 97.8279+" />+<path d="M104.1124 97.8279+L104.1728 97.5860+" />+<path d="M104.1728 97.5860+L104.2938 97.4650+" />+<path d="M104.2938 97.4650+L104.4147 97.4045+" />+<path d="M104.4147 97.4045+L104.6566 97.4045+" />+<path d="M104.6566 97.4045+L104.7776 97.4650+" />+<path d="M104.7776 97.4650+L104.8985 97.5860+" />+<path d="M104.8985 97.5860+L104.9590 97.8279+" />+<path d="M104.9590 97.8279+L104.9590 98.2512+" />+<path d="M104.9590 98.2512+L104.8985 98.4931+" />+<path d="M104.8985 98.4931+L104.7776 98.6141+" />+<path d="M104.7776 98.6141+L104.6566 98.6745+" />+<path d="M104.6566 98.6745+L104.4147 98.6745+" />+<path d="M105.6848 98.5536+L105.7452 98.6141+" />+<path d="M105.7452 98.6141+L105.6848 98.6745+" />+<path d="M105.6848 98.6745+L105.6243 98.6141+" />+<path d="M105.6243 98.6141+L105.6848 98.5536+" />+<path d="M105.6848 98.5536+L105.6848 98.6745+" />+<path d="M105.4429 97.4650+L105.5638 97.4045+" />+<path d="M105.5638 97.4045+L105.8662 97.4045+" />+<path d="M105.8662 97.4045+L105.9871 97.4650+" />+<path d="M105.9871 97.4650+L106.0476 97.5860+" />+<path d="M106.0476 97.5860+L106.0476 97.7069+" />+<path d="M106.0476 97.7069+L105.9871 97.8279+" />+<path d="M105.9871 97.8279+L105.9267 97.8883+" />+<path d="M105.9267 97.8883+L105.8057 97.9488+" />+<path d="M105.8057 97.9488+L105.7452 98.0093+" />+<path d="M105.7452 98.0093+L105.6848 98.1302+" />+<path d="M105.6848 98.1302+L105.6848 98.1907+" />+</g><text x="105.0800" y="100.6350"+textLength="12.6612" font-size="1.6933" lengthAdjust="spacingAndGlyphs"+text-anchor="middle" opacity="0" stroke-opacity="0">IXTP15N50L2</text>+<g class="stroked-text">+<path d="M99.1533 100.5795+L99.1533 99.3095+" />+<path d="M99.6372 99.3095+L100.4838 100.5795+" />+<path d="M100.4838 99.3095+L99.6372 100.5795+" />+<path d="M100.7862 99.3095+L101.5119 99.3095+" />+<path d="M101.1491 100.5795+L101.1491 99.3095+" />+<path d="M101.9352 100.5795+L101.9352 99.3095+" />+<path d="M101.9352 99.3095+L102.4190 99.3095+" />+<path d="M102.4190 99.3095+L102.5400 99.3700+" />+<path d="M102.5400 99.3700+L102.6005 99.4305+" />+<path d="M102.6005 99.4305+L102.6609 99.5514+" />+<path d="M102.6609 99.5514+L102.6609 99.7329+" />+<path d="M102.6609 99.7329+L102.6005 99.8538+" />+<path d="M102.6005 99.8538+L102.5400 99.9143+" />+<path d="M102.5400 99.9143+L102.4190 99.9748+" />+<path d="M102.4190 99.9748+L101.9352 99.9748+" />+<path d="M103.8705 100.5795+L103.1448 100.5795+" />+<path d="M103.5076 100.5795+L103.5076 99.3095+" />+<path d="M103.5076 99.3095+L103.3867 99.4910+" />+<path d="M103.3867 99.4910+L103.2657 99.6119+" />+<path d="M103.2657 99.6119+L103.1448 99.6724+" />+<path d="M105.0195 99.3095+L104.4147 99.3095+" />+<path d="M104.4147 99.3095+L104.3543 99.9143+" />+<path d="M104.3543 99.9143+L104.4147 99.8538+" />+<path d="M104.4147 99.8538+L104.5357 99.7933+" />+<path d="M104.5357 99.7933+L104.8381 99.7933+" />+<path d="M104.8381 99.7933+L104.9590 99.8538+" />+<path d="M104.9590 99.8538+L105.0195 99.9143+" />+<path d="M105.0195 99.9143+L105.0800 100.0352+" />+<path d="M105.0800 100.0352+L105.0800 100.3376+" />+<path d="M105.0800 100.3376+L105.0195 100.4586+" />+<path d="M105.0195 100.4586+L104.9590 100.5191+" />+<path d="M104.9590 100.5191+L104.8381 100.5795+" />+<path d="M104.8381 100.5795+L104.5357 100.5795+" />+<path d="M104.5357 100.5795+L104.4147 100.5191+" />+<path d="M104.4147 100.5191+L104.3543 100.4586+" />+<path d="M105.6242 100.5795+L105.6242 99.3095+" />+<path d="M105.6242 99.3095+L106.3499 100.5795+" />+<path d="M106.3499 100.5795+L106.3499 99.3095+" />+<path d="M107.5595 99.3095+L106.9547 99.3095+" />+<path d="M106.9547 99.3095+L106.8943 99.9143+" />+<path d="M106.8943 99.9143+L106.9547 99.8538+" />+<path d="M106.9547 99.8538+L107.0757 99.7933+" />+<path d="M107.0757 99.7933+L107.3781 99.7933+" />+<path d="M107.3781 99.7933+L107.4990 99.8538+" />+<path d="M107.4990 99.8538+L107.5595 99.9143+" />+<path d="M107.5595 99.9143+L107.6200 100.0352+" />+<path d="M107.6200 100.0352+L107.6200 100.3376+" />+<path d="M107.6200 100.3376+L107.5595 100.4586+" />+<path d="M107.5595 100.4586+L107.4990 100.5191+" />+<path d="M107.4990 100.5191+L107.3781 100.5795+" />+<path d="M107.3781 100.5795+L107.0757 100.5795+" />+<path d="M107.0757 100.5795+L106.9547 100.5191+" />+<path d="M106.9547 100.5191+L106.8943 100.4586+" />+<path d="M108.4061 99.3095+L108.5271 99.3095+" />+<path d="M108.5271 99.3095+L108.6480 99.3700+" />+<path d="M108.6480 99.3700+L108.7085 99.4305+" />+<path d="M108.7085 99.4305+L108.7690 99.5514+" />+<path d="M108.7690 99.5514+L108.8295 99.7933+" />+<path d="M108.8295 99.7933+L108.8295 100.0957+" />+<path d="M108.8295 100.0957+L108.7690 100.3376+" />+<path d="M108.7690 100.3376+L108.7085 100.4586+" />+<path d="M108.7085 100.4586+L108.6480 100.5191+" />+<path d="M108.6480 100.5191+L108.5271 100.5795+" />+<path d="M108.5271 100.5795+L108.4061 100.5795+" />+<path d="M108.4061 100.5795+L108.2852 100.5191+" />+<path d="M108.2852 100.5191+L108.2247 100.4586+" />+<path d="M108.2247 100.4586+L108.1642 100.3376+" />+<path d="M108.1642 100.3376+L108.1038 100.0957+" />+<path d="M108.1038 100.0957+L108.1038 99.7933+" />+<path d="M108.1038 99.7933+L108.1642 99.5514+" />+<path d="M108.1642 99.5514+L108.2247 99.4305+" />+<path d="M108.2247 99.4305+L108.2852 99.3700+" />+<path d="M108.2852 99.3700+L108.4061 99.3095+" />+<path d="M109.9785 100.5795+L109.3737 100.5795+" />+<path d="M109.3737 100.5795+L109.3737 99.3095+" />+<path d="M110.3414 99.4305+L110.4018 99.3700+" />+<path d="M110.4018 99.3700+L110.5228 99.3095+" />+<path d="M110.5228 99.3095+L110.8252 99.3095+" />+<path d="M110.8252 99.3095+L110.9461 99.3700+" />+<path d="M110.9461 99.3700+L111.0066 99.4305+" />+<path d="M111.0066 99.4305+L111.0671 99.5514+" />+<path d="M111.0671 99.5514+L111.0671 99.6724+" />+<path d="M111.0671 99.6724+L111.0066 99.8538+" />+<path d="M111.0066 99.8538+L110.2809 100.5795+" />+<path d="M110.2809 100.5795+L111.0671 100.5795+" />+</g></g> +</svg>+      </div>+    </div>+    <aside>+      <div class="ah"><span class="atitle">Pins <span class="acount">3</span></span><input id="q" placeholder="Filter…"></div>+      <div class="pins" id="pins"></div>+    </aside>+  </main>+  <footer><span class="it"><span class="k">MFR</span><span class="v">IXYS / Littelfuse</span></span><span class="it"><span class="k">PKG</span><span class="v">IXTP15N50L2_TO220_Straight_Drill1p4</span></span><span class="it"><span class="k">PINS</span><span class="v">3</span></span><span class="it descit"><span class="k">DESC</span><span class="v">IXYS LinearL2 N-channel MOSFET, TO-220AB, G-D-S; tab is Drain</span></span></footer>+  <div id="tip"></div>+<script>// viewer_core.js — the ONE symbol-viewer engine, compiled into BOTH the live+// adom-symbol app (SymView) AND the standalone embed export. Neither file should+// reimplement pan/zoom or pin-hover; they call into here so they can never drift.+window.AdomSymViewer = (function(){+  var ZOOM_K = 0.0022;            // wheel sensitivity (lower = gentler). The feel.+  var MIN_SCALE = 0.05, MAX_SCALE = 60;++  function clampScale(s){ return Math.max(MIN_SCALE, Math.min(s, MAX_SCALE)); }++  // Device-independent wheel zoom: normalize deltaMode + cap one notch, then hand+  // the pointer-anchored factor to the host's zoomAt(cx, cy, factor). This is the+  // exact math the app has always used — the embed now shares it verbatim.+  function attachWheelZoom(el, zoomAt){+    el.addEventListener('wheel', function(e){+      e.preventDefault();+      var d = e.deltaY;+      if(e.deltaMode === 1) d *= 16;                  // lines  -> px+      else if(e.deltaMode === 2) d *= el.clientHeight; // pages -> px+      d = Math.max(-50, Math.min(50, d));              // cap one event's contribution+      var r = el.getBoundingClientRect();+      zoomAt(e.clientX - r.left, e.clientY - r.top, Math.exp(-d * ZOOM_K));+    }, { passive: false });+  }++  // ---- shared pin-hover engine (glyph pairing + hit-box geometry) ----+  function norm(s){ return String(s || '').replace(/[~{}]/g, '').trim(); }++  // Pair each invisible <text opacity="0"> with the visible <g class="stroked-text">+  // glyph that follows it in document order (handles rotated top/bottom pins).+  function glyphLabels(svg){+    var out = [], pending = null;+    if(!svg) return out;+    svg.querySelectorAll('text, g.stroked-text').forEach(function(n){+      if(n.classList && n.classList.contains('stroked-text')){+        if(pending){ var k = norm(pending.textContent); if(k) out.push({ k: k, group: n }); pending = null; }+      } else if(n.getAttribute && n.getAttribute('opacity') === '0'){ pending = n; }+    });+    return out;+  }++  // Build one transparent hit-rect per pin label (number + name), matched to each+  // pin's glyph by proximity to the pin tip (so duplicate names resolve to the+  // right pin). Rects are appended to `svg` in user space so they pan/zoom with it.+  //   pins:   [{number,name,x,y,angle,length,...}]+  //   offset: {x,y} symbol->svg-unit origin (state.offset)+  //   NS:     the svg namespace+  //   cb:     { enter(pin,ev), move(ev), leave(), click(pin,ev)? }+  // Returns { textMap } so the host can highlight a pin's glyphs on demand.+  function buildPinHits(svg, pins, offset, NS, cb){+    var textMap = new Map();+    if(!svg || !offset || !pins || !pins.length) return { textMap: textMap };+    cb = cb || {};+    var gl = glyphLabels(svg);+    gl.forEach(function(o){ if(!textMap.has(o.k)) textMap.set(o.k, []); textMap.get(o.k).push(o.group); });+    var labels = [];+    gl.forEach(function(o){ var b; try { b = o.group.getBBox(); } catch(e){ return; }+      if(!b || !b.width) return;+      labels.push({ k: o.k, box: b, cx: b.x + b.width/2, cy: b.y + b.height/2, used: false }); });+    function pick(k, ax, ay){ k = norm(k); var best = null, bd = 1e9;+      labels.forEach(function(l){ if(l.used || l.k !== k) return; var d = Math.hypot(l.cx - ax, l.cy - ay); if(d < bd){ bd = d; best = l; } });+      if(best) best.used = true; return best; }+    function addBox(b, p){+      var pad = 0.45, r = document.createElementNS(NS, 'rect');+      r.setAttribute('class', 'hit');+      r.setAttribute('x', b.x - pad); r.setAttribute('y', b.y - pad);+      r.setAttribute('width', b.width + pad*2); r.setAttribute('height', b.height + pad*2); r.setAttribute('rx', .3);+      r.addEventListener('mouseenter', function(ev){ if(cb.enter) cb.enter(p, ev); });+      r.addEventListener('mousemove', function(ev){ if(cb.move) cb.move(ev); });+      r.addEventListener('mouseleave', function(){ if(cb.leave) cb.leave(); });+      if(cb.click) r.addEventListener('click', function(ev){ cb.click(p, ev); });+      svg.appendChild(r);+    }+    pins.forEach(function(p){+      var tipX = offset.x + p.x, tipY = offset.y - p.y, L = p.length || 2.54, dx = 0, dy = 0;+      if(p.angle === 0) dx = 1; else if(p.angle === 180) dx = -1; else if(p.angle === 90) dy = -1; else if(p.angle === 270) dy = 1;+      var nl = pick(p.number, tipX + dx*L*0.5, tipY + dy*L*0.5 - (dx !== 0 ? 0.9 : 0));  // number: over the wire+      var ml = pick(p.name,   tipX + dx*(L+2), tipY + dy*(L+2));                          // name: inside the body+      if(nl) addBox(nl.box, p);+      if(ml) addBox(ml.box, p);+      if(!nl && !ml){                                                                      // discrete parts: no glyphs+        var ex = tipX + dx*L, ey = tipY + dy*L, HT = 1.0;+        addBox({ x: Math.min(tipX, ex) - (dx === 0 ? HT : 0.3), y: Math.min(tipY, ey) - (dy === 0 ? HT : 0.3),+                 width: Math.abs(ex - tipX) + (dx === 0 ? HT*2 : 0.6), height: Math.abs(ey - tipY) + (dy === 0 ? HT*2 : 0.6) }, p);+      }+    });+    return { textMap: textMap };+  }++  return {+    ZOOM_K: ZOOM_K, clampScale: clampScale, attachWheelZoom: attachWheelZoom,+    norm: norm, glyphLabels: glyphLabels, buildPinHits: buildPinHits+  };+})();+</script>+<script>+var PINS=[{"angle":0,"color":"#66bb6a","desc":"","length":2.54,"name":"G","number":"1","type":"Input","x":-5.08,"y":0.0},{"angle":270,"color":"#78909c","desc":"","length":2.54,"name":"D","number":"2","type":"Passive","x":2.54,"y":5.08},{"angle":90,"color":"#78909c","desc":"","length":2.54,"name":"S","number":"3","type":"Passive","x":2.54,"y":-5.08}], OFF={"x":100,"y":100};+(function(){+  // The symbol svg is the DIRECT child of #vp; querySelector('svg') alone would+  // grab a toolbar button's zoom icon (also broke pan/zoom before this fix).+  var vp=document.getElementById('vp'), svg=vp.querySelector(':scope > svg')||vp.querySelector('svg');+  if(svg){ svg.removeAttribute('width'); svg.removeAttribute('height'); }+  var scale=1,tx=0,ty=0;+  function apply(){ if(svg) svg.style.transform='translate('+tx+'px,'+ty+'px) scale('+scale+')'; }+  // pointer-anchored zoom with the SHARED scale clamp (same limits as the app).+  function zoomAt(cx,cy,f){ var ns=AdomSymViewer.clampScale(scale*f); var r=ns/scale; tx=cx-(cx-tx)*r; ty=cy-(cy-ty)*r; scale=ns; apply(); }+  function fit(){ scale=1;tx=0;ty=0;apply(); }+  // Wheel/trackpad zoom feel comes from the SHARED engine — identical to SymView.+  AdomSymViewer.attachWheelZoom(vp, zoomAt);+  var drag=false,lx=0,ly=0;+  vp.addEventListener('pointerdown',function(e){ if(e.target.closest('.tools'))return; /* let toolbar buttons receive their click */ drag=true;lx=e.clientX;ly=e.clientY;vp.classList.add('grab');vp.setPointerCapture(e.pointerId); });+  vp.addEventListener('pointermove',function(e){ if(!drag)return; tx+=e.clientX-lx;ty+=e.clientY-ly;lx=e.clientX;ly=e.clientY;apply(); });+  vp.addEventListener('pointerup',function(e){ drag=false;vp.classList.remove('grab'); });+  document.getElementById('zin').onclick=function(){ var r=vp.getBoundingClientRect();zoomAt(r.width/2,r.height/2,1.2); };+  document.getElementById('zout').onclick=function(){ var r=vp.getBoundingClientRect();zoomAt(r.width/2,r.height/2,1/1.2); };+  document.getElementById('fit').onclick=fit;+  // pin panel+  var box=document.getElementById('pins');+  function render(filter){+    box.innerHTML='';+    var f=(filter||'').toLowerCase();+    var shown=PINS.filter(function(p){ return !f || (p.name+' '+p.number+' '+p.type).toLowerCase().indexOf(f)>=0; });+    if(!shown.length){ box.innerHTML='<div class="empty">No pins match.</div>'; return; }+    shown.forEach(function(p){+      var el=document.createElement('div'); el.className='pin';+      var col=p.color||'#8b949e';+      el.innerHTML='<div class="row"><span class="num">'+esc(p.number)+'</span>'+        +'<span class="nme">'+esc(p.name)+'</span>'+        +'<span class="ty" style="color:'+col+';border-color:'+col+'66">'+esc(p.type||'')+'</span></div>'+        +(p.desc?'<div class="d">'+esc(p.desc)+'</div>':'');+      el.onclick=function(){ el.classList.toggle('on'); };+      el.addEventListener('mouseenter',function(){ highlightPin(p); });+      el.addEventListener('mouseleave',function(){ clearHL(); });+      box.appendChild(el);+    });+  }+  function esc(s){ return String(s==null?'':s).replace(/[&<>"]/g,function(c){return{'&':'&amp;','<':'&lt;','>':'&gt;','"':'&quot;'}[c];}); }+  document.getElementById('q').addEventListener('input',function(e){ render(e.target.value); });+  render('');++  // ── pin hover: highlight + tooltip on the SVG, parity with the live SymView ──+  var NS='http://www.w3.org/2000/svg';+  var tip=document.getElementById('tip');+  var textMap=new Map();+  function highlightPin(p){+    clearHL();+    [p.name,p.number].forEach(function(k){ var a=textMap.get(AdomSymViewer.norm(k)); if(a) a.forEach(function(g){ g.classList.add('hl'); }); });+    var m=document.getElementById('pinmark');+    if(m && OFF){ m.setAttribute('cx',OFF.x+p.x); m.setAttribute('cy',OFF.y-p.y); m.setAttribute('r',0.7); m.style.opacity='1'; }+  }+  function clearHL(){+    if(svg) svg.querySelectorAll('.hl').forEach(function(e){ e.classList.remove('hl'); });+    var m=document.getElementById('pinmark'); if(m) m.style.opacity='0';+  }+  function showTip(p,x,y){+    var col=p.color||'#8b949e';+    var h='<div class="r1"><span class="nm">'+esc(p.name||'(unnamed)')+'</span><span class="pn">Pin '+esc(p.number)+'</span></div>';+    if(p.type) h+='<span class="badge" style="background:'+col+'22;color:'+col+';border:1px solid '+col+'44">'+esc(p.type)+'</span>';+    if(p.desc) h+='<div class="desc">'+esc(p.desc)+'</div>';+    tip.innerHTML=h; tip.classList.add('show'); posTip(x,y);+  }+  function posTip(x,y){+    var w=tip.offsetWidth||260, hh=tip.offsetHeight||110, tx=x+14, ty=y+14;+    if(tx+w>innerWidth-14) tx=x-w-14;+    if(ty+hh>innerHeight-14) ty=y-hh-14;+    tip.style.left=Math.max(8,tx)+'px'; tip.style.top=Math.max(8,ty)+'px';+  }+  function hideTip(){ tip.classList.remove('show'); clearHL(); }+  // Build the pin hit-zones with the SHARED engine — the exact glyph-pairing ++  // hit-box code the app's SymView uses. The embed only supplies the tooltip.+  if(svg && OFF){+    if(!document.getElementById('pinmark')){ var pm=document.createElementNS(NS,'circle'); pm.id='pinmark'; svg.appendChild(pm); }+    var hideT=null;+    var hits=AdomSymViewer.buildPinHits(svg, PINS, OFF, NS, {+      enter:function(p,ev){ clearTimeout(hideT); showTip(p,ev.clientX,ev.clientY); highlightPin(p); },+      move:function(ev){ if(tip.classList.contains('show')) posTip(ev.clientX,ev.clientY); },+      leave:function(){ clearTimeout(hideT); hideT=setTimeout(hideTip,45); }+    });+    textMap=hits.textMap;+  }++  apply();+})();++// ── app-info header popover: interactive hover you can move into (600ms show,+//    220ms hide-grace) so the wiki link stays reachable. Per adom-app-header.md. ──+(function(){+  var SHOW_DELAY=600, HIDE_GRACE=220;+  document.querySelectorAll('header [data-tooltip-target]').forEach(function(trigger){+    var target=document.getElementById(trigger.dataset.tooltipTarget);+    if(!target) return;+    var showTimer=null, hideTimer=null;+    function show(){ clearTimeout(hideTimer); if(target.classList.contains('show')) return; clearTimeout(showTimer); showTimer=setTimeout(function(){ target.classList.add('show'); }, SHOW_DELAY); }+    function queueHide(){ clearTimeout(showTimer); clearTimeout(hideTimer); hideTimer=setTimeout(function(){ target.classList.remove('show'); }, HIDE_GRACE); }+    trigger.addEventListener('mouseenter',show); trigger.addEventListener('mouseleave',queueHide);+    trigger.addEventListener('focus',show);      trigger.addEventListener('blur',queueHide);+    target.addEventListener('mouseenter',show);  target.addEventListener('mouseleave',queueHide);+    trigger.addEventListener('click',function(e){ clearTimeout(showTimer); target.classList.toggle('show'); e.stopPropagation(); });+    document.addEventListener('click',function(e){ if(!target.contains(e.target) && !trigger.contains(e.target)) target.classList.remove('show'); });+  });+})();+</script>+</body></html>